OrbitDB error

This unhandled exception caused the app to crash. This is the helia branch.
Error: stream ended before 1 bytes became available
    at file:///home/trout/work/psf/code/ipfs-p2wdb-service/node_modules/it-reader/dist/src/index.js:54:33
    at runMicrotasks (<anonymous>)
    at processTicksAndRejections (node:internal/process/task_queues:96:5)
    at async abortable (file:///home/trout/work/psf/code/ipfs-p2wdb-service/node_modules/abortable-iterator/dist/src/index.js:75:26)
    at async file:///home/trout/work/psf/code/ipfs-p2wdb-service/node_modules/it-length-prefixed/dist/src/decode.js:74:30
    at async file:///home/trout/work/psf/code/ipfs-p2wdb-service/node_modules/it-first/dist/src/index.js:7:30
    at async read (file:///home/trout/work/psf/code/ipfs-p2wdb-service/node_modules/@libp2p/multistream-select/dist/src/multistream.js:60:17)
    at async Module.readString (file:///home/trout/work/psf/code/ipfs-p2wdb-service/node_modules/@libp2p/multistream-select/dist/src/multistream.js:71:17)
    at async Module.select (file:///home/trout/work/psf/code/ipfs-p2wdb-service/node_modules/@libp2p/multistream-select/dist/src/select.js:23:20)
    at async ConnectionImpl.newStream [as _newStream] (file:///home/trout/work/psf/code/ipfs-p2wdb-service/node_modules/libp2p/dist/src/upgrader.js:319:50)
    at async ConnectionImpl.newStream (file:///home/trout/work/psf/code/ipfs-p2wdb-service/node_modules/libp2p/dist/src/connection/index.js:93:24)
    at async task (file:///home/trout/work/psf/code/ipfs-p2wdb-service/node_modules/@chris.troutner/orbitdb-helia/src/sync.js:197:26)
    at async file:///home/trout/work/psf/code/ipfs-p2wdb-service/node_modules/p-queue/dist/index.js:118:36 {
  code: 'ERR_UNDER_READ',
  buffer: Uint8ArrayList { bufs: [], length: 0 }
}
node:internal/process/promises:279
            triggerUncaughtException(err, true /* fromPromise */);
            ^

Error: stream ended before 1 bytes became available
    at file:///home/trout/work/psf/code/ipfs-p2wdb-service/node_modules/it-reader/dist/src/index.js:54:33
    at runMicrotasks (<anonymous>)
    at processTicksAndRejections (node:internal/process/task_queues:96:5)
    at async abortable (file:///home/trout/work/psf/code/ipfs-p2wdb-service/node_modules/abortable-iterator/dist/src/index.js:75:26)
    at async file:///home/trout/work/psf/code/ipfs-p2wdb-service/node_modules/it-length-prefixed/dist/src/decode.js:74:30
    at async file:///home/trout/work/psf/code/ipfs-p2wdb-service/node_modules/it-first/dist/src/index.js:7:30
    at async read (file:///home/trout/work/psf/code/ipfs-p2wdb-service/node_modules/@libp2p/multistream-select/dist/src/multistream.js:60:17)
    at async Module.readString (file:///home/trout/work/psf/code/ipfs-p2wdb-service/node_modules/@libp2p/multistream-select/dist/src/multistream.js:71:17)
    at async Module.select (file:///home/trout/work/psf/code/ipfs-p2wdb-service/node_modules/@libp2p/multistream-select/dist/src/select.js:23:20)
    at async ConnectionImpl.newStream [as _newStream] (file:///home/trout/work/psf/code/ipfs-p2wdb-service/node_modules/libp2p/dist/src/upgrader.js:319:50)
    at async ConnectionImpl.newStream (file:///home/trout/work/psf/code/ipfs-p2wdb-service/node_modules/libp2p/dist/src/connection/index.js:93:24)
    at async task (file:///home/trout/work/psf/code/ipfs-p2wdb-service/node_modules/@chris.troutner/orbitdb-helia/src/sync.js:197:26)
    at async file:///home/trout/work/psf/code/ipfs-p2wdb-service/node_modules/p-queue/dist/index.js:118:36
Emitted 'error' event at:
    at task (file:///home/trout/work/psf/code/ipfs-p2wdb-service/node_modules/@chris.troutner/orbitdb-helia/src/sync.js:205:20)
    at runMicrotasks (<anonymous>)
    at processTicksAndRejections (node:internal/process/task_queues:96:5)
    at async file:///home/trout/work/psf/code/ipfs-p2wdb-service/node_modules/p-queue/dist/index.js:118:36 {
  code: 'ERR_UNDER_READ',
  buffer: Uint8ArrayList { bufs: [], length: 0 }
}

A similar error that popped up:
CodeError: Cannot open protocol stream on transient connection
    at ConnectionImpl.newStream (file:///home/safeuser/ipfs-p2wdb-service/node_modules/libp2p/dist/src/connection/index.js:91:19)
    at EventTarget.dialProtocol (file:///home/safeuser/ipfs-p2wdb-service/node_modules/libp2p/dist/src/libp2p.js:235:27)
    at runMicrotasks (<anonymous>)
    at processTicksAndRejections (node:internal/process/task_queues:96:5)
    at async task (file:///home/safeuser/ipfs-p2wdb-service/node_modules/@chris.troutner/orbitdb-helia/src/sync.js:197:26)
    at async file:///home/safeuser/ipfs-p2wdb-service/node_modules/p-queue/dist/index.js:118:36 {
  code: 'ERR_TRANSIENT_CONNECTION',
  props: {}
}
node:internal/process/promises:279
            triggerUncaughtException(err, true /* fromPromise */);
            ^

CodeError: Cannot open protocol stream on transient connection
    at ConnectionImpl.newStream (file:///home/safeuser/ipfs-p2wdb-service/node_modules/libp2p/dist/src/connection/index.js:91:19)
    at EventTarget.dialProtocol (file:///home/safeuser/ipfs-p2wdb-service/node_modules/libp2p/dist/src/libp2p.js:235:27)
    at runMicrotasks (<anonymous>)
    at processTicksAndRejections (node:internal/process/task_queues:96:5)
    at async task (file:///home/safeuser/ipfs-p2wdb-service/node_modules/@chris.troutner/orbitdb-helia/src/sync.js:197:26)
    at async file:///home/safeuser/ipfs-p2wdb-service/node_modules/p-queue/dist/index.js:118:36
Emitted 'error' event at:
    at task (file:///home/safeuser/ipfs-p2wdb-service/node_modules/@chris.troutner/orbitdb-helia/src/sync.js:205:20)
    at runMicrotasks (<anonymous>)
    at processTicksAndRejections (node:internal/process/task_queues:96:5)
    at async file:///home/safeuser/ipfs-p2wdb-service/node_modules/p-queue/dist/index.js:118:36 {
  code: 'ERR_TRANSIENT_CONNECTION',
  props: {}
}

Both errors above seem to happen shortly after startup, when the new node is trying to reach out to other P2WDB (OrbitDB) instances.

https://github.com/libp2p/js-libp2p/discussions/2179

Getting this error after updating to libp2p v0.46.19:
file:///home/trout/work/ipfs-p2wdb-service/node_modules/@libp2p/webrtc/dist/src/private-to-private/signaling-stream-handler.js:17
            connectedPromise.reject(new CodeError('Timed out while trying to connect', 'ERR_TIMEOUT'));
                                    ^

CodeError: Timed out while trying to connect
    at AbortSignal.signal.onabort (file:///home/trout/work/ipfs-p2wdb-service/node_modules/@libp2p/webrtc/dist/src/private-to-private/signaling-stream-handler.js:17:37)
    at AbortSignal.eventHandler (node:internal/event_target:1021:12)
    at AbortSignal.[nodejs.internal.kHybridDispatch] (node:internal/event_target:736:20)
    at AbortSignal.dispatchEvent (node:internal/event_target:678:26)
    at abortSignal (node:internal/abort_controller:292:10)
    at Timeout._onTimeout (node:internal/abort_controller:112:7)
    at listOnTimeout (node:internal/timers:559:17)
    at processTimers (node:internal/timers:502:7) {
  code: 'ERR_TIMEOUT',
  props: {}
}

file:///home/trout/work/psf/code/ipfs-p2wdb-service/node_modules/@libp2p/webrtc/dist/src/private-to-private/initiate-connection.js:44
connectedPromise.reject(new CodeError('SDP handshake aborted', 'ERR_SDP_HANDSHAKE_ABORTED'));
^
CodeError: SDP handshake aborted
at AbortSignal.sdpAbortedListener (file:///home/trout/work/psf/code/ipfs-p2wdb-service/node_modules/@libp2p/webrtc/dist/src/private-to-private/initiate-connection.js:44:37)
at AbortSignal.[nodejs.internal.kHybridDispatch] (node:internal/event_target:736:20)
at AbortSignal.dispatchEvent (node:internal/event_target:678:26)
at abortSignal (node:internal/abort_controller:292:10)
at AbortController.abort (node:internal/abort_controller:323:5)
at AbortSignal.onAbort (file:///home/trout/work/psf/code/ipfs-p2wdb-service/node_modules/any-signal/dist/src/index.js:8:20)
at AbortSignal.[nodejs.internal.kHybridDispatch] (node:internal/event_target:736:20)
at AbortSignal.dispatchEvent (node:internal/event_target:678:26)
at abortSignal (node:internal/abort_controller:292:10)
at AbortController.abort (node:internal/abort_controller:323:5)
at AbortSignal.onAbort (file:///home/trout/work/psf/code/ipfs-p2wdb-service/node_modules/any-signal/dist/src/index.js:8:20)
at AbortSignal.[nodejs.internal.kHybridDispatch] (node:internal/event_target:736:20)
at AbortSignal.dispatchEvent (node:internal/event_target:678:26)
at abortSignal (node:internal/abort_controller:292:10)
at Timeout._onTimeout (node:internal/abort_controller:112:7)
at listOnTimeout (node:internal/timers:559:17)
at processTimers (node:internal/timers:502:7) {
code: 'ERR_SDP_HANDSHAKE_ABORTED',
props: {}
}

Today I upgraded the sync-manager branch to libp2p v1.0.10. I got this error while trying to update one of the helia dev servers:
status: Trying a direct connecto to peer 12D3KooWEKu47t2EuXoDbfQbVFBpSXLAaDR9GH8yCTPss32Q3bZV with this multiaddr: /ip4/<IP_ADDRESS>/tcp/4001/p2p/12D3KooWEKu47t2EuXoDbfQbVFBpSXLAaDR9GH8yCTPss32Q3bZV.
file:///home/safeuser/ipfs-p2wdb-service/node_modules/it-byte-stream/dist/src/index.js:45
        for await (const buf of source) {
                                ^

TypeError: source is not async iterable
    at duplex.sink (file:///home/safeuser/ipfs-p2wdb-service/node_modules/it-byte-stream/dist/src/index.js:45:33)
    at rawPipe (file:///home/safeuser/ipfs-p2wdb-service/node_modules/it-pipe/dist/src/index.js:37:26)
    at pipe (file:///home/safeuser/ipfs-p2wdb-service/node_modules/it-pipe/dist/src/index.js:32:12)
    at handleReceiveHeads (file:///home/safeuser/ipfs-p2wdb-service/node_modules/@chris.troutner/orbitdb-helia/src/sync.js:174:13)
    at DefaultUpgrader._onStream (file:///home/safeuser/ipfs-p2wdb-service/node_modules/libp2p/dist/src/upgrader.js:468:9)
    at file:///home/safeuser/ipfs-p2wdb-service/node_modules/libp2p/dist/src/upgrader.js:302:30
Emitted 'error' event at:
    at handleReceiveHeads (file:///home/safeuser/ipfs-p2wdb-service/node_modules/@chris.troutner/orbitdb-helia/src/sync.js:177:14)


⚠ ClamAV has degraded performance

In 03d90f7, ClamAV (https://spamassassin.apache.org/) experienced degraded performance:

HTTP code: 200
Response time: 234 ms

Resolved: ClamAV performance has improved in c1855ee after 5 minutes.


FeatureRequest: recipe override

hey,
in the current basement, the gcc version 9 is used. this is a show-stopper for our projects.
we use CUDA for AGX embedded targets. currently cuda 10.2 is supported.
this cuda version is limited to gcc version 8.
https://gist.github.com/ax3l/9489132
the embedded targets are currently limited to ubuntu 18 lts.
so the libc version is older than the one used in basement.
that is also net the best situation.
but i also won't fork everything, just because of one recipe?!

this feature is not necessary so far :D
this one works for me:
scmOverrides:
  - match:
      url: "*gcc*9.2.0*"
    replace:
      url:
        pattern: "9.2.0"
        replacement: "8.4.0"
    set:
      digestSHA256: e30a6e52d10e1f27ed55104ad233c30bd1e99cfb5ff98ab022dc941edd1b2dd4

this feature is not necessary so far :D
this one works for me:
scmOverrides:
  - match:
      url: "*gcc*9.2.0*"
    replace:
      url:
        pattern: "9.2.0"
        replacement: "8.4.0"
    set:
      digestSHA256: e30a6e52d10e1f27ed55104ad233c30bd1e99cfb5ff98ab022dc941edd1b2dd4

TBH, this is feature will most probably never be added to Bob. I absolutely despise this monkey patching approach that was taken by Bitbake to the gold standard. It leads to hard to read projects if people are careful and to absolute maintenance nightmares if people are not very careful.
If you need to patch the recipes then what's wrong with doing that? Maintain a "patch" branch internally with your patches and use it instead. Overriding recipes is nothing else except that the "patch" is not done in git but at runtime.

TBH, this is feature will most probably never be added to Bob. I absolutely despise this monkey patching approach that was taken by Bitbake to the gold standard. It leads to hard to read projects if people are careful and to absolute maintenance nightmares if people are not very careful.
If you need to patch the recipes then what's wrong with doing that? Maintain a "patch" branch internally with your patches and use it instead. Overriding recipes is nothing else except that the "patch" is not done in git but at runtime.


Wrong supports-version in ZIP file

https://github.com/levito/tt-rss-feedly-theme/archive/master.zip contains a feedly.css that has following first line: /* supports-version:17.1 */
It should be /* supports-version:17.4 */

Just checked zip, it already has 17.4. Clear your cache?

Hmm strange. You are right. I don't know what was going on my machine :🤔
Thank you for the response.


⚠ PrivateHD has degraded performance

In 9a6b5ca, PrivateHD ($PHD) experienced degraded performance:

HTTP code: 200
Response time: 2260 ms

Resolved: PrivateHD performance has improved in c855158.


Non-PCL version of assembly?

I attempted to add [Serializable] and ISerializable to the types and then I realized it was a PCL. Are you open to creating a second project that is a .NET 4.5 class library, referencing the same files and using #if directives for PCL vs non-PCL?

Yeah, I saw the same thing, so I left it off for now.  Ultimately, it needs to compile under the same build as the rest of corefx/coreclr.  We should see how they have their project configuration and align to that.

The CoreCLR project doesn't handle PCL at all it looks like: https://github.com/dotnet/coreclr/blob/master/src/mscorlib/src/System/DateTime.cs

I must say, I'm a bit confused about this.  All the projects in corefx are PCL, but with some non-standard project configuration.  I think we'll need to align to that.  I'm still not 100% up to speed on how corefx and coreclr hook together.
I'd be glad for a PR to pull this into alignment.  I don't want to address [Serializable] until we figure that out.

@tarekgh - Any advice here?  CoreFx stuff is PCL, but the existing DateTime struct is in CoreClr, which isn't PCL.  If our work here will go OOB, wouldn't it all need to be PCL, and then how would we support [Serializable], [IConvertable], etc. ?
Also, we had to make our unit tests non-PCL in order to be able to set the current culture during the test.  Is there a workaround for that?
Thanks.

Hi @mj1856, for serialization we can use data contract instead. this should good for this library. eventually if we need to bring this library to the core we'll may need to change that again as we cannot depend on data contract in the core.
For IConvertable, it is added to the new PCL support but talking to some people, it is not really recommended anymore. so you can just not support it and we can support the type conversion in different ways (implicit/explicit cast operators, exposing specific APIs for interesting types FromType/ToType.
for the test, I am not sure if we have PCL specific test. but anyway whatever test you have should be good enough I think. in the latest version of the System.Globalization contract we have exposed CultureInfo.CurrenCulture setter property. so if you are using the latest version you may use this property to set the culture.
Thanks

@tarekgh  - Thanks!


Use DeepPartial<App.Stuff> for LoadOutput.stuff

Describe the problem
It's not unthinkable to want your stuff to have more than one level of depth, for example:
app.d.ts:
/// <reference types="@sveltejs/kit" />

// See https://kit.svelte.dev/docs#typescript
// for information about these interfaces
declare namespace App {
    interface Session {}

    interface Locals {}

    interface Platform {}

    interface Stuff {
        footer: {
            show: boolean;
            bottomMargin: boolean;
        }
        header: {
            layoutType: string;
            highlightedButton: string;
        }
    }
}

The type of the stuff property on LoadOutput is Partial<App.Stuff>, and that makes sense, since you shouldn't have to specify every single stuff property in every load function. However, this fails to cover cases like above where the stuff object is more than one level deep.
Describe the proposed solution
I think it would be better if you used DeepPartial<App.Stuff> instead. There's no DeepPartial type in the TypeScript standard library, but it exists in most popular TypeScript libraries such as type-fest or ts-essentials.
Alternatives considered
No response
Importance
nice to have
Additional Information
No response

The same way as discussed in #3788, I believe this should be handled in the user-defined interfaces itself as well. We can opt-in to have properties be optional, but having it be Partial recursively would make it really hard to opt out of the optionality.
You can always mark individual properties as optional, say foo may or may not be defined, but when it is, it will certainly have the certainly_defined property, so right now we can do an approach like the example below, but it would not be possible as is if we were to have Partial recursively
declare namespace App {
    interface Stuff {
        foo: {
            maybe?: boolean;
            certainly_defined: string;
            not_really?: number;
        }
    }
}

Agree, this needs to belong in userland. I'll close this as there's no action for SvelteKit to take


[Bug]: Cannot execute the defineConfig function in a Jest test

Version
System:
    OS: Windows 11 10.0.22631
    CPU: (20) x64 13th Gen Intel(R) Core(TM) i7-13700H
    Memory: 9.70 GB / 31.62 GB
  Browsers:
    Edge: Chromium (127.0.2651.74)
    Internet Explorer: 11.0.22621.3527
  npmPackages:
    @rsbuild/core: 1.1.8 => 1.1.8

Details
When executing the defineConfig function in a Jest test, I get the following error:
TypeError: The argument 'filename' must be a file URL object, file URL string, or absolute path string. Received 'http://localhost/main.js'

The code under test:
import { defineConfig } from "@rsbuild/core";

export function myDefineConfig() {
    return defineConfig({});
}

The test:
import { myDefineConfig } from "../src/myDefineConfig.ts";

test("my test", () => {
    const config = myDefineConfig();

    expect(config).toMatchSnapshot();
});

I found this example which inspired most of my reproduction configs. It seems like something changed since this example has been created.
Reproduce link
https://github.com/patricklafrance/rsbuild-jest
Reproduce Steps

pnpm install
pnpm test

@patricklafrance I think you should remove testEnvironment: "jsdom" from your Jest config file because you are testing a Node.js library, not a client library.

@chenjiahan oh that's embarrassing, indeed removing testEnvironment: "jsdom" fix the issue. Too much copy paste 😓
Should I leave this issue open since it doesn't work with testEnvironment: "jsdom" and the other issue you mentionned?

Never mind 😄
We should check whether the output of Rslib is reasonable and then decide whether to close this issue.


add oxygen icons for .exe / .dll / .dylib plus a few others

This is a kind of a "safe subset" of my feature request #7067

I only pull in new icons from Oxygen, which is one of the main sources of Ghidra icon resources already
Oxygen redirects application-x-executable.png to application-x-desktop.png so I've used that icon for .exe, .dll, and .dylib
I associated the same icon we already use for .obj with .o
While testing I noted a few other common files in my zips and checked if Oxygen had icons for those filetypes. The ones I found and included are: .bat and .sh, .js, and .py

I didn't change any current icons or any current icon associations. I didn't create any icons. I didn't get icons from any other sources than Oxygen. I didn't change any code or logic.
So it still only applies to the FileSystem browser, not to the regular file/directory browser, and it still only works by filename extension.

It is against our policy to accept binary files in a PR.

Makes sense. Is there a way to proceed? Such as just dropping the PR and leaving the feature request linked to it as a kind of proof of concept?


Add tools/generate-fixtures.js

The tool reads the js and json fixtures and builds two fixture files.
I added two npm packages as devDependencies lodash and glob. They're
both pretty minor and I don't feel strongly about either.
Here are the two resulting gists:
https://gist.github.com/50f41ee3d919b4d76759
https://gist.github.com/7c16f3f107ab805f0993

I assume that test/dist is ephemeral? Should this directory be added to .gitignore?

Yes. I'll add dist to .gitignore.

updated.

:+1:

@jasonLaster I've landed it with ammended commit message to refer the issue. You may want to keep that in mind for your future commits.
Thank you!

Thanks. will do @ariya


Customizing IP Address for eShop sample

Hi, I'm able to build and run the eShop sample using the default launchSetting.json file.

However, to do some local tests, I've been trying to customize the launchSetting.json to use my own ip addresses instead of localhost.

But in this case I cannot run the sample.

Am I missing anything here?
Thanks,

I think this would be more on the .NET Aspire side of things and not on this project.


Regression:  Topics truncated at random lengths

Issue:  Regression:  Topics truncated at random lengths
Environment:  iPhone 13 Mini + iOS 16.0.3 + IRCCloud 4.25 client
Repro:

Login using iOS client
Join various channels with topics set, ex:  on Libera.chat:  #gnucash , #MacOS;  on irccloud:  #feedback

Expected:  full topic is shown (or a way to view full topic is always provided)
Actual:  topics are randomly truncated, ex:  #gnucash is truncated at “please” (51 chars), #MacOSX is truncated at “Security Updates:  http://“ (207 chars).  #feedback truncated at “email” (261 chars)
Troubleshooting:  IRCCloud desktop client on MacOS 12.5.1 + Chrome v107 doesn’t exhibit issue (even with window size set at minimum possible size)

Fixed in the next release


Change options to pass-in custom terrific module (fallback is window.…

…T) will fix #9
PR Checklist
Does please check if your PR fulfills the following requirements:

[x] Tests for the changes have been added (for bug fixes / features)
[ ] Docs have been added / updated (for bug fixes / features)

PR Type
What kind of change does this PR introduce?

[ ] Bugfix
[x] Feature
[ ] Code style update (formatting, local variables)
[ ] Refactoring (no functional changes, no api changes)
[ ] Build related changes
[ ] Documentation content changes
[ ] Other... Please describe:

What is the current behavior?

Issue Number: N/A
What is the new behavior?
Does this PR introduce a breaking change?
[x] Yes
[ ] No

Other information

Coverage increased (+0.9%) to 87.097% when pulling c727464aad735d76021bf86153a808731be52bc7 on feature/dynamic-terrific-ref into 3686159acde96de8918257d28006bc3d85428c53 on develop.


GKE: Max pods per Node field needs to be immutable

Setup
Rancher - v2.9-023781e52103c45a9bbdf3cb47d60b9336321daa-head
Dashboard - release-2.9 ce96804
Describe the bug
Under Nodepools, Max pods per Node field needs to be immutable while editing.
As per GKE documentation, "You can configure the maximum number of Pods per node when creating a cluster or when creating a node pool. You cannot change this setting after the cluster or node pool is created."
To Reproduce

Provision GKE cluster from Rancher UI
Edit the cluster in Nodepool section, change Max pods per Node

Screenshots

/backport v2.10.1


[2.0_beta] No result for shell net localgroup and whoami /groups

Empire Version
2.0_beta
OS Information (Linux flavor, Python version)
Empire : Debian 8.6, Python 2.7.9
Agents : Windows 7 (French), Windows 2012 R2 (English)
Expected behavior and description of the error, including any actions taken immediately prior to the error. The more detail the better.
There is no return from the agent for commands net localgroup and whoami /groups (maybe others commands are impacted, these are just examples).
For the moment, I can reproduce the bug simply by typing shell net localgroup, the task is created but the agent never returns the output. However, if I type shell net localgroup 2>&1 the result is POSTed by the agent as expected.
Commands such as net user, ipconfig... are not impacted by this bug.
Screenshot of error, embedded text output, or Pastebin link to the error
Empire output
 (Empire: M7KAP4W1) > sysinfo
0|http://X.X.X.19:80|TESTOFFICE|user|TESTOFFICE|<IP_ADDRESS>|Microsoft Windows 7 Professionnel |False|powershell|2732|powershell|2

Listener:         http://X.X.X.19:80
Internal IP:    <IP_ADDRESS>
Username:         TESTOFFICE\user
Hostname:       TESTOFFICE
OS:               Microsoft Windows 7 Professionnel
High Integrity:   0
Process Name:     powershell
Process ID:       2732
Language:         powershell
Language Version: 2

(Empire: M7KAP4W1) >
(Empire: M7KAP4W1) > shell net localgroup
(Empire: M7KAP4W1) >
(Empire: M7KAP4W1) >
(Empire: M7KAP4W1) > shell net localgroup 2>&1
(Empire: M7KAP4W1) >

Alias de \\TESTOFFICE
-------------------------------------------------------------------------------
*Administrateurs
*Duplicateurs
*HomeUsers
*IIS_IUSRS
*Invités
*Lecteurs des journaux d'événements
*Opérateurs de chiffrement
*Opérateurs de configuration réseau
*Opérateurs de sauvegarde
*Utilisateurs
*Utilisateurs avec pouvoir
*Utilisateurs de l'Analyseur de performances
*Utilisateurs du Bureau à distance
*Utilisateurs du journal de performances
*Utilisateurs du modèle COM distribué
La commande s'est terminée correctement.
..Command execution completed.

(Empire: M7KAP4W1) >
(Empire: M7KAP4W1) >
(Empire: M7KAP4W1) >

Empire debug
2017-02-21 17:45:02 listeners/http : [*] GET request for X.X.X.19/foo.php from X.X.X.68
2017-02-21 17:45:02 listeners/http : [*] GET cookie value from X.X.X.68 : session=AWklWvM1dO/Yiv6ZvYfgSD8tE8M=
2017-02-21 17:45:02 Agents : [*] handle_agent_data(): sessionID BPNA9WF7 issued a TASKING_REQUEST
2017-02-21 17:45:07 listeners/http : [*] GET request for X.X.X.19/info.php from X.X.X.68
2017-02-21 17:45:07 listeners/http : [*] GET cookie value from X.X.X.68 : session=q2VrBIkJhgUHtXTK8vZfHdjk1QE=
2017-02-21 17:45:07 Agents : [*] handle_agent_data(): sessionID BPNA9WF7 issued a TASKING_REQUEST
2017-02-21 17:45:10 Agents : [*] Tasked BPNA9WF7 to run TASK_SHELL
2017-02-21 17:45:12 listeners/http : [*] GET request for X.X.X.19/info.php from X.X.X.68
2017-02-21 17:45:12 listeners/http : [*] GET cookie value from X.X.X.68 : session=Ti2uXtqUEUctc8QKM9Xve3Ij96k=
2017-02-21 17:45:12 Agents : [*] handle_agent_data(): sessionID BPNA9WF7 issued a TASKING_REQUEST
2017-02-21 17:45:12 listeners/http : [*] Agent from X.X.X.68 retrieved taskings
2017-02-21 17:45:17 listeners/http : [*] GET request for X.X.X.19/contact.php from X.X.X.68
2017-02-21 17:45:17 listeners/http : [*] GET cookie value from X.X.X.68 : session=2YDOFO+aw+oFe7zYv0ZRM2A/ZnE=
2017-02-21 17:45:17 Agents : [*] handle_agent_data(): sessionID BPNA9WF7 issued a TASKING_REQUEST
2017-02-21 17:45:22 listeners/http : [*] GET request for X.X.X.19/info.php from X.X.X.68
2017-02-21 17:45:22 listeners/http : [*] GET cookie value from X.X.X.68 : session=zmzYIS78Y02zOldpZ+z6moFWa7k=
2017-02-21 17:45:22 Agents : [*] handle_agent_data(): sessionID BPNA9WF7 issued a TASKING_REQUEST
2017-02-21 17:45:27 listeners/http : [*] GET request for X.X.X.19/contact.php from X.X.X.68
2017-02-21 17:45:27 listeners/http : [*] GET cookie value from X.X.X.68 : session=C0LTC/ZdizjaxqwCxfbS3ZUWRXw=
2017-02-21 17:45:27 Agents : [*] handle_agent_data(): sessionID BPNA9WF7 issued a TASKING_REQUEST
2017-02-21 17:45:32 listeners/http : [*] GET request for X.X.X.19/contact.php from X.X.X.68
2017-02-21 17:45:32 listeners/http : [*] GET cookie value from X.X.X.68 : session=KxA5J5tcYHxfzS9aXVB9HacKSRE=
2017-02-21 17:45:32 Agents : [*] handle_agent_data(): sessionID BPNA9WF7 issued a TASKING_REQUEST
2017-02-21 17:45:38 listeners/http : [*] GET request for X.X.X.19/contact.php from X.X.X.68
2017-02-21 17:45:38 listeners/http : [*] GET cookie value from X.X.X.68 : session=V+ZfX8RV5ns0niz/9SK/nTEzyRc=
2017-02-21 17:45:38 Agents : [*] handle_agent_data(): sessionID BPNA9WF7 issued a TASKING_REQUEST
2017-02-21 17:45:39 Agents : [*] Tasked BPNA9WF7 to run TASK_SHELL
2017-02-21 17:45:43 listeners/http : [*] GET request for X.X.X.19/info.php from X.X.X.68
2017-02-21 17:45:43 listeners/http : [*] GET cookie value from X.X.X.68 : session=zLDPA81LSwOFbu94fSpJH4nhneA=
2017-02-21 17:45:43 Agents : [*] handle_agent_data(): sessionID BPNA9WF7 issued a TASKING_REQUEST
2017-02-21 17:45:43 listeners/http : [*] Agent from X.X.X.68 retrieved taskings
2017-02-21 17:45:43 listeners/http : [*] POST request data length from X.X.X.68 : 862
2017-02-21 17:45:43 Agents : [*] handle_agent_data(): sessionID BPNA9WF7 issued a RESULT_POST
2017-02-21 17:45:43 Agents : [*] Agent BPNA9WF7 returned results.
2017-02-21 17:45:43 listeners/http : [*] Valid results return by X.X.X.68
2017-02-21 17:45:48 listeners/http : [*] GET request for X.X.X.19/contact.php from X.X.X.68
2017-02-21 17:45:48 listeners/http : [*] GET cookie value from X.X.X.68 : session=9DSVDSJApeS/lLNabEWlMK3G3v4=
2017-02-21 17:45:48 Agents : [*] handle_agent_data(): sessionID BPNA9WF7 issued a TASKING_REQUEST

Sorry for the delay. Just getting to this issue. We have confirmed your issue and are working on a resolution.

No problem. I've tried to debug it too, but without success. Maybe you should add a debug mode on agent's side in the future, it might be really helpful.

I'll take a crack at this.

Hi guys
Just few things, I have been able to perform some debug on my test instance.

Unlike my first message, the problem is not linked to net localgroup and whoami /groups commands. In fact, the string's length after shell is the problem. Every 14 characters long string after shell will be ignored. To reproduce it, just type shell<PHONE_NUMBER>8945 on a empire command
If you follow the functions call, the root cause of the problem is here. With a 14 characters long argument, Decrypt-Bytes returns a empty string.
Thus, I suspect a padding or a off by one problem to be the source of this issue.

If I find more time, maybe i will look at the code but I'm not really good with crypto implementation and Powershell.
Cheers :taco:
TPOSOS

@ThePirateWhoSmellsOfSunflowers Thanks for troubleshooting! We really appreciate it. I'll have time to dig into some issues again soon

@xorrior :tada: Victory :tada:, I've just found the root cause of the issue. I will submit a PR soon.

fixed https://github.com/EmpireProject/Empire/pull/492

Thanks again @ThePirateWhoSmellsOfSunflowers !


Implement /health for Article and Product endpoints

Implement a /health that makes a simple query on the database to check whether the service is OK.
Returns:

204: OK - query runs successfully in less than 100ms.
404: Degraded - if some issue happen in this database simple query

@tiagostutz Can i work on this issue?

Sure! Just assigned to you.!

@tiagostutz i was trying to setup code locally but i am unable to fetch any data from database locally just an empty list. Could you please help on that.

@tiagostutz Hi! If this is still open , can I work on this?

Yep, this is.!
Go ageah, assigning the issue to you.
Nice 🤠


external grabber won't be reactivated after effects

Hey there,
i found out, that Hyperion.ng after deactivating the external grabber for playing effects won't reactivate the external grabber again.
So if i have set a effect on boot, the grabber is deactivated from beginning, grabbing won't work.
If i deactivate the effect on boot the grabber works fine, until i play a effect. After playing a effect i have to restart Hyperion.ng.
Well, i see in the log that the grabber was deactivated, the effect was player an the grabber never gets startet again.

Hello i have the same problem here. I'm trying to understand why it is nog reenabled. i am no programmer but i tested the following scenario's.
on boot v4l device stops for rainbow swirl and does not restart.
if i go to the remote page and stop the grabber service and restart it is working fine again.
the v4l device is stopped when any other input is selected, it also stops when i'm using kodi grabber.
So any other input will stop but not start the grabber. can anyone point me in a direction where to look ?
is it possible to start the v4l service with a external request like a http request ?
See log attached for some info i know my leds were unrespoinsive, i still need to update the firmware in de arduino
[hyperiond MAIN]  Selected configuration file: /home/pi/.hyperion/config/hyperion_main.json
[hyperiond LOGGER]  Logger settings overridden by command line argument
[hyperiond ChannelAdjust_BLACK]  RgbChannelAdjustment.cpp:24:resetInitialized() initialize mapping with 0,0,0
[hyperiond ChannelAdjust_WHITE]  RgbChannelAdjustment.cpp:24:resetInitialized() initialize mapping with 255,255,255
[hyperiond ChannelAdjust_RED]  RgbChannelAdjustment.cpp:24:resetInitialized() initialize mapping with 255,0,0
[hyperiond ChannelAdjust_GREEN]  RgbChannelAdjustment.cpp:24:resetInitialized() initialize mapping with 0,255,0
[hyperiond ChannelAdjust_BLUE]  RgbChannelAdjustment.cpp:24:resetInitialized() initialize mapping with 0,0,255
[hyperiond ChannelAdjust_CYAN]  RgbChannelAdjustment.cpp:24:resetInitialized() initialize mapping with 0,255,255
[hyperiond ChannelAdjust_MAGENTA]  RgbChannelAdjustment.cpp:24:resetInitialized() initialize mapping with 255,0,255
[hyperiond ChannelAdjust_YELLOW]  RgbChannelAdjustment.cpp:24:resetInitialized() initialize mapping with 255,255,0
[hyperiond ]  RgbChannelAdjustment.cpp:24:resetInitialized() initialize mapping with 0,0,0
[hyperiond ]  RgbChannelAdjustment.cpp:24:resetInitialized() initialize mapping with 0,0,0
[hyperiond ]  RgbChannelAdjustment.cpp:24:resetInitialized() initialize mapping with 0,0,0
[hyperiond ]  RgbChannelAdjustment.cpp:24:resetInitialized() initialize mapping with 0,0,0
[hyperiond ]  RgbChannelAdjustment.cpp:24:resetInitialized() initialize mapping with 0,0,0
[hyperiond ]  RgbChannelAdjustment.cpp:24:resetInitialized() initialize mapping with 0,0,0
[hyperiond ]  RgbChannelAdjustment.cpp:24:resetInitialized() initialize mapping with 0,0,0
[hyperiond ]  RgbChannelAdjustment.cpp:24:resetInitialized() initialize mapping with 0,0,0
[hyperiond Core]  ColorAdjustment 'default' => [0; 104]
[hyperiond Core]  Hyperion.cpp:315:getLedLayoutGridSize() led layout grid: 36x39
[hyperiond ComponentRegister]  Json/Proto forwarder: off
[hyperiond LedDevice]  LedDeviceAdalight.cpp:37:init() Adalight driver with activated LightBerry APA102 mode
[hyperiond LedDevice]  LedDeviceAdalight.cpp:53:init() Adalight header for 105 leds: Ada 0x00 0x69 0x3c
[hyperiond LedDevice]  LedDevice 'adalight' configured.
[hyperiond LedDevice]  Opening UART: /dev/ttyACM0
[hyperiond LedDevice]  ProviderRs232.cpp:182:tryOpen() Setting baud rate to 500000
[hyperiond LedDevice]  ProviderRs232.cpp:198:tryOpen() Device blocked for 1500 ms
[hyperiond Core]  Creating linear smoothing
[hyperiond Smoothing]  smoothing cfg 0: interval: 4501504 ms, settlingTime: 40 ms, updateDelay: 0 frames
[hyperiond Smoothing]  smoothing cfg 1: pause
[hyperiond ComponentRegister]  Smoothing: activated
[hyperiond ComponentRegister]  LED device: activated
[hyperiond Smoothing]  smoothing cfg 2: interval: 124 ms, settlingTime: 40 ms, updateDelay: 0 frames
[hyperiond Smoothing]  smoothing cfg 3: interval: 17758342 ms, settlingTime: 40 ms, updateDelay: 0 frames
[hyperiond Smoothing]  smoothing cfg 4: interval: 17762310 ms, settlingTime: 40 ms, updateDelay: 0 frames
[hyperiond Smoothing]  smoothing cfg 5: interval: 17763130 ms, settlingTime: 50 ms, updateDelay: 0 frames
[hyperiond Smoothing]  smoothing cfg 6: interval: 17764726 ms, settlingTime: 40 ms, updateDelay: 0 frames
[hyperiond Smoothing]  smoothing cfg 7: interval: 17765938 ms, settlingTime: 40 ms, updateDelay: 0 frames
[hyperiond Smoothing]  smoothing cfg 8: interval: 17765486 ms, settlingTime: 40 ms, updateDelay: 0 frames
[hyperiond Smoothing]  smoothing cfg 9: interval: 17765526 ms, settlingTime: 40 ms, updateDelay: 0 frames
[hyperiond Smoothing]  smoothing cfg 10: interval: 17766226 ms, settlingTime: 40 ms, updateDelay: 0 frames
[hyperiond Smoothing]  smoothing cfg 11: interval: 17765350 ms, settlingTime: 40 ms, updateDelay: 0 frames
[hyperiond Smoothing]  smoothing cfg 12: interval: 17772018 ms, settlingTime: 40 ms, updateDelay: 0 frames
[hyperiond Smoothing]  smoothing cfg 13: interval: 17771762 ms, settlingTime: 40 ms, updateDelay: 0 frames
[hyperiond Smoothing]  smoothing cfg 14: interval: 17771438 ms, settlingTime: 40 ms, updateDelay: 0 frames
[hyperiond Smoothing]  smoothing cfg 15: interval: 17775510 ms, settlingTime: 40 ms, updateDelay: 0 frames
[hyperiond Smoothing]  smoothing cfg 16: interval: 17776546 ms, settlingTime: 40 ms, updateDelay: 0 frames
[hyperiond Smoothing]  smoothing cfg 17: interval: 17771438 ms, settlingTime: 40 ms, updateDelay: 0 frames
[hyperiond Smoothing]  smoothing cfg 18: interval: 17771434 ms, settlingTime: 40 ms, updateDelay: 0 frames
[hyperiond Smoothing]  smoothing cfg 19: interval: 17779994 ms, settlingTime: 40 ms, updateDelay: 0 frames
[hyperiond Smoothing]  smoothing cfg 20: interval: 17782006 ms, settlingTime: 40 ms, updateDelay: 0 frames
[hyperiond Smoothing]  smoothing cfg 21: interval: 17781346 ms, settlingTime: 40 ms, updateDelay: 0 frames
[hyperiond Smoothing]  smoothing cfg 22: interval: 17782678 ms, settlingTime: 40 ms, updateDelay: 0 frames
[hyperiond Smoothing]  smoothing cfg 23: interval: 17783446 ms, settlingTime: 40 ms, updateDelay: 0 frames
[hyperiond Smoothing]  smoothing cfg 24: interval: 17783974 ms, settlingTime: 40 ms, updateDelay: 0 frames
[hyperiond Smoothing]  smoothing cfg 25: interval: 17786018 ms, settlingTime: 40 ms, updateDelay: 0 frames
[hyperiond Smoothing]  smoothing cfg 26: interval: 17787538 ms, settlingTime: 40 ms, updateDelay: 0 frames
[hyperiond Smoothing]  smoothing cfg 27: interval: 17785490 ms, settlingTime: 50 ms, updateDelay: 0 frames
[hyperiond Smoothing]  smoothing cfg 28: interval: 17749070 ms, settlingTime: 40 ms, updateDelay: 0 frames
[hyperiond Smoothing]  smoothing cfg 29: interval: 17793150 ms, settlingTime: 40 ms, updateDelay: 0 frames
[hyperiond Smoothing]  smoothing cfg 30: interval: 17786294 ms, settlingTime: 40 ms, updateDelay: 0 frames
[hyperiond Smoothing]  smoothing cfg 31: interval: 17793698 ms, settlingTime: 40 ms, updateDelay: 0 frames
[hyperiond Smoothing]  smoothing cfg 32: interval: 17797458 ms, settlingTime: 40 ms, updateDelay: 0 frames
[hyperiond Smoothing]  smoothing cfg 33: interval: 17798022 ms, settlingTime: 40 ms, updateDelay: 0 frames
[hyperiond Smoothing]  smoothing cfg 34: interval: 17797606 ms, settlingTime: 40 ms, updateDelay: 0 frames
[hyperiond Smoothing]  smoothing cfg 35: interval: 17797574 ms, settlingTime: 40 ms, updateDelay: 0 frames
[hyperiond Smoothing]  smoothing cfg 36: interval: 17797078 ms, settlingTime: 40 ms, updateDelay: 0 frames
[hyperiond Smoothing]  smoothing cfg 37: interval: 17800590 ms, settlingTime: 40 ms, updateDelay: 0 frames
[hyperiond EFFECTENGINE]  35 effects loaded from directory :/effects/
[hyperiond EFFECTENGINE]  19 effect schemas loaded from directory :/effects/schema/
[hyperiond EFFECTENGINE]  0 effects loaded from directory /home/pi/.hyperion/custom-effects
[hyperiond EFFECTENGINE]  EffectEngine.cpp:43:EffectEngine() Initializing Python interpreter
[hyperiond Core]  Hyperion.cpp:447:Hyperion() configured leds: 105 hw leds: 105
[hyperiond ChannelAdjust_BLACK]  RgbChannelAdjustment.cpp:24:resetInitialized() initialize mapping with 0,0,0
[hyperiond ChannelAdjust_RED]  RgbChannelAdjustment.cpp:24:resetInitialized() initialize mapping with 255,0,0
[hyperiond ChannelAdjust_GREEN]  RgbChannelAdjustment.cpp:24:resetInitialized() initialize mapping with 0,255,0
[hyperiond ChannelAdjust_BLUE]  RgbChannelAdjustment.cpp:24:resetInitialized() initialize mapping with 0,0,255
[hyperiond ChannelAdjust_CYAN]  RgbChannelAdjustment.cpp:24:resetInitialized() initialize mapping with 0,255,255
[hyperiond ChannelAdjust_MAGENTA]  RgbChannelAdjustment.cpp:24:resetInitialized() initialize mapping with 255,0,255
[hyperiond ChannelAdjust_YELLOW]  RgbChannelAdjustment.cpp:24:resetInitialized() initialize mapping with 255,255,0
[hyperiond ChannelAdjust_WHITE]  RgbChannelAdjustment.cpp:24:resetInitialized() initialize mapping with 255,255,255
[hyperiond MAIN]  Hyperion initialized
[hyperiond MAIN]  Json server created and started on port 19444
QObject::connect: No such slot ProtoServer::setVideoMode(VideoMode)
[hyperiond MAIN]  Proto server created and started on port 19445
[hyperiond MAIN]  hyperiond.cpp:301:startNetworkServices() Boblight server created
[hyperiond ComponentRegister]  Boblight server: off
[hyperiond Core]  Register new input source named 'UDPLISTENER' for priority channel '202'
[hyperiond MAIN]  hyperiond.cpp:320:startNetworkServices() UDP listener created
[hyperiond ComponentRegister]  UDP listener: off
[hyperiond MAIN]  hyperiond.cpp:343:startNetworkServices() UDP LIstener mDNS responder started
[hyperiond MAIN]  hyperiond.cpp:350:startNetworkServices() Json mDNS responder started
[hyperiond MAIN]  hyperiond.cpp:356:startNetworkServices() Proto mDNS responder started
[hyperiond BLACKBORDER]  BlackBorderDetector.cpp:26:calculateThreshold() threshold set to 0.050000 (13)
[hyperiond BLACKBORDER]  BlackBorderProcessor.cpp:26:BlackBorderProcessor() mode: default
[hyperiond BLACKBORDER]  ImageProcessor.cpp:62:setLedMappingType() set led mapping to type 0
[hyperiond ComponentRegister]  Blackborder detector: activated
[hyperiond V4L2:/dev/video0]  Grabber.cpp:33:setVideoMode() setvideomode 0
[hyperiond V4L2:/dev/video0]  Signal threshold set to: {12, 12, 12}
[hyperiond V4L2:/dev/video0]  Signal detection area set to: 0.250000,0.250000 x 0.750000,0.750000
[hyperiond MAIN]  hyperiond.cpp:564:createGrabberV4L2() V4L2 grabber created
[hyperiond V4L2:/dev/video0]  configured v4l device: /dev/video0
[hyperiond V4L2:/dev/video0]  V4L2Grabber.cpp:543:init_device() width=720 height=576
[hyperiond V4L2:/dev/video0]  V4L2Grabber.cpp:557:init_device() Pixel format=YUYV
[hyperiond V4L2:/dev/video0]  Started
[hyperiond Core]  Register new input source named 'V4L2:/dev/video0' for priority channel '200'
[hyperiond MAIN]  V4L2 grabber started
[hyperiond ComponentRegister]  V4L capture device: activated
[hyperiond MAIN]  set screen capture device to 'dispmanx'
[hyperiond BLACKBORDER]  BlackBorderDetector.cpp:26:calculateThreshold() threshold set to 0.050000 (13)
[hyperiond BLACKBORDER]  BlackBorderProcessor.cpp:26:BlackBorderProcessor() mode: default
[hyperiond BLACKBORDER]  ImageProcessor.cpp:62:setLedMappingType() set led mapping to type 0
[hyperiond ComponentRegister]  Blackborder detector: activated
[hyperiond DISPMANXGRABBER]  Grabber.cpp:33:setVideoMode() setvideomode 0
[hyperiond DISPMANXGRABBER]  Display opened with resolution: 720x480
[hyperiond Core]  Register new input source named 'Dispmanx' for priority channel '250'
[hyperiond MAIN]  DISPMANX frame grabber created and started
[hyperiond Core]  Unregister input source named 'Dispmanx' from priority register
[hyperiond Dispmanx]  grabber change state to disabled
[hyperiond ComponentRegister]  Framegrabber: off
[hyperiond MAIN]  Hyperion started
[hyperiond EFFECTENGINE]  run effect Rainbow swirl fast on channel 0
[hyperiond BLACKBORDER]  BlackBorderDetector.cpp:26:calculateThreshold() threshold set to 0.050000 (13)
[hyperiond BLACKBORDER]  BlackBorderProcessor.cpp:26:BlackBorderProcessor() mode: default
[hyperiond BLACKBORDER]  ImageProcessor.cpp:62:setLedMappingType() set led mapping to type 0
[hyperiond Core]  Register new input source named 'Rainbow swirl fast' for priority channel '0'
[hyperiond MAIN]  Inital foreground effect 'Rainbow swirl fast' started
[hyperiond WEBSERVER]  WebConfig.cpp:38:WebConfig() WebUI initialized, document root: :/webconfig
[hyperiond WEBSERVER]  started on port 8090 name 'Hyperion WebConfig'
[hyperiond WEBSERVER]  StaticFileServing.cpp:61:onServerStarted() Web Config mDNS responder started
[hyperiond Smoothing]  set smoothing cfg: 25, interval: 16777216 ms, settlingTime: 40 ms, updateDelay: 0 frames
[hyperiond V4L2:/dev/video0]  Stopped
[hyperiond LedDevice]  ProviderRs232.cpp:216:writeBytes() 16 frames dropped
[hyperiond Core]  Hyperion.cpp:536:bonjourRecordResolved() found hyperion session: raspberrypi.local.:8090
[hyperiond BLACKBORDER]  BlackBorderDetector.cpp:26:calculateThreshold() threshold set to 0.050000 (13)
[hyperiond BLACKBORDER]  BlackBorderProcessor.cpp:26:BlackBorderProcessor() mode: default
[hyperiond BLACKBORDER]  ImageProcessor.cpp:62:setLedMappingType() set led mapping to type 0
[hyperiond WEBSOCKET]  WebSocketClient.cpp:29:WebSocketClient() New connection from ::ffff:<IP_ADDRESS>
[hyperiond BLACKBORDER]  BlackBorderDetector.cpp:26:calculateThreshold() threshold set to 0.050000 (13)
[hyperiond BLACKBORDER]  BlackBorderProcessor.cpp:26:BlackBorderProcessor() mode: default
[hyperiond BLACKBORDER]  ImageProcessor.cpp:62:setLedMappingType() set led mapping to type 0
[hyperiond WEBSOCKET]  WebSocketClient.cpp:29:WebSocketClient() New connection from ::ffff:<IP_ADDRESS>
[hyperiond BLACKBORDER]  BlackBorderDetector.cpp:26:calculateThreshold() threshold set to 0.050000 (13)
[hyperiond BLACKBORDER]  BlackBorderProcessor.cpp:26:BlackBorderProcessor() mode: default
[hyperiond BLACKBORDER]  ImageProcessor.cpp:62:setLedMappingType() set led mapping to type 0
[hyperiond WEBSOCKET]  WebSocketClient.cpp:29:WebSocketClient() New connection from ::ffff:<IP_ADDRESS>
[hyperiond WEBSOCKET]  JsonProcessor.cpp:1023:handleLoggingCommand() log streaming activated for client ::ffff:<IP_ADDRESS>
[hyperiond WEBSOCKET]  JsonProcessor.cpp:1032:handleLoggingCommand() log streaming deactivated for client  ::ffff:<IP_ADDRESS>
[hyperiond Smoothing]  set smoothing cfg: 0, interval: 0 ms, settlingTime: 40 ms, updateDelay: 0 frames
[hyperiond EFFECTENGINE]  effect finished
[hyperiond Core]  Unregister input source named 'Rainbow swirl fast' from priority register
[hyperiond LedDevice]  ProviderRs232.cpp:216:writeBytes() 114 frames dropped
[hyperiond LedDevice]  ProviderRs232.cpp:216:writeBytes() 124 frames dropped
[hyperiond LedDevice]  ProviderRs232.cpp:216:writeBytes() 124 frames dropped
[hyperiond LedDevice]  ProviderRs232.cpp:216:writeBytes() 56 frames dropped
[hyperiond LedDevice]  An I/O error occurred while reading the data.
[hyperiond LedDevice]  ProviderRs232.cpp:138:closeDevice() Close UART: /dev/ttyACM0
[hyperiond LedDevice]  ProviderRs232.cpp:182:tryOpen() Setting baud rate to 500000
[hyperiond LedDevice]  ProviderRs232.cpp:198:tryOpen() Device blocked for 5000 ms
[hyperiond LedDevice]  ProviderRs232.cpp:216:writeBytes() 29 frames dropped
[hyperiond LedDevice]  LedDeviceAdalight.cpp:80:receivedData() >>received 4 bytes data
---------------- manual rebooting v4l grabber in webinterface remote tab --------------------
[hyperiond Core]  Unregister input source named 'V4L2:/dev/video0' from priority register
[hyperiond V4L2:/dev/video0]  grabber change state to disabled
[hyperiond ComponentRegister]  V4L capture device: off
[hyperiond V4L2:/dev/video0]  Started
[hyperiond Core]  Register new input source named 'V4L2:/dev/video0' for priority channel '200'
[hyperiond V4L2:/dev/video0]  grabber change state to enabled
[hyperiond ComponentRegister]  V4L capture device: activated
----- starting kodi playback  ------------
[hyperiond PROTOSERVER]  ProtoServer.cpp:64:newConnection() New connection
[hyperiond BLACKBORDER]  BlackBorderDetector.cpp:26:calculateThreshold() threshold set to 0.050000 (13)
[hyperiond BLACKBORDER]  BlackBorderProcessor.cpp:26:BlackBorderProcessor() mode: default
[hyperiond BLACKBORDER]  ImageProcessor.cpp:62:setLedMappingType() set led mapping to type 0
[hyperiond Core]  Unregister input source named 'Proto-Server' from priority register
[hyperiond Core]  Register new input source named 'Proto-Server' for priority channel '150'
[hyperiond Core]  Unregister input source named 'Proto-Server' from priority register
[hyperiond Core]  Unregister input source named 'Proto-Server' from priority register
[hyperiond Core]  Unregister input source named 'Proto-Server' from priority register
[hyperiond BLACKBORDER]  BlackBorderDetector.cpp:26:calculateThreshold() threshold set to 0.050000 (13)
[hyperiond BLACKBORDER]  BlackBorderProcessor.cpp:26:BlackBorderProcessor() mode: default
[hyperiond BLACKBORDER]  ImageProcessor.cpp:62:setLedMappingType() set led mapping to type 0
[hyperiond BOBLIGHT]  Boblight server started on port 19333
[hyperiond Core]  Register new input source named 'Boblight' for priority channel '201'
[hyperiond BOBLIGHT]  change state to enabled
[hyperiond ComponentRegister]  Boblight server: activated
[hyperiond Core]  Unregister input source named 'Proto-Server' from priority register
[hyperiond Core]  Unregister input source named 'Proto-Server' from priority register
[hyperiond Core]  Unregister input source named 'Proto-Server' from priority register
[hyperiond Core]  Unregister input source named 'Proto-Server' from priority register
[hyperiond Core]  Unregister input source named 'Proto-Server' from priority register
[hyperiond Core]  Unregister input source named 'Proto-Server' from priority register
[hyperiond Core]  Unregister input source named 'Proto-Server' from priority register
[hyperiond Core]  Unregister input source named 'Proto-Server' from priority register
[hyperiond Core]  Unregister input source named 'Proto-Server' from priority register
[hyperiond Core]  Unregister input source named 'Proto-Server' from priority register
[hyperiond Core]  Unregister input source named 'Proto-Server' from priority register
[hyperiond Core]  Unregister input source named 'Proto-Server' from priority register
[hyperiond V4L2:/dev/video0]  Stopped
------------------ pause kodi playback ------------------------------
[hyperiond Core]  Unregister input source named 'Boblight' from priority register
[hyperiond BOBLIGHT]  change state to disabled
[hyperiond ComponentRegister]  Boblight server: off
------------------ play kodi playback -------------------------------
[hyperiond BOBLIGHT]  Boblight server started on port 19333
[hyperiond Core]  Register new input source named 'Boblight' for priority channel '201'
[hyperiond BOBLIGHT]  change state to enabled
[hyperiond ComponentRegister]  Boblight server: activated
------------------ pause kodi playback ------------------------------
[hyperiond Core]  Unregister input source named 'Boblight' from priority register
[hyperiond BOBLIGHT]  change state to disabled
[hyperiond ComponentRegister]  Boblight server: off
[hyperiond Core]  Unregister input source named 'Proto-Server' from priority register
[hyperiond Core]  Unregister input source named 'Proto-Server' from priority register
[hyperiond Core]  Unregister input source named 'Proto-Server' from priority register
----------------- closing kodi ---------------------------------------
[hyperiond PROTOSERVER]  ProtoServer.cpp:107:closedConnection() Connection closed
[hyperiond Core]  Unregister input source named 'V4L2:/dev/video0' from priority register
---------------- manual rebooting v4l grabber in webinterface remote tab --------------------
[hyperiond V4L2:/dev/video0]  grabber change state to disabled
[hyperiond ComponentRegister]  V4L capture device: off
[hyperiond V4L2:/dev/video0]  Started
[hyperiond Core]  Register new input source named 'V4L2:/dev/video0' for priority channel '200'
[hyperiond V4L2:/dev/video0]  grabber change state to enabled
[hyperiond ComponentRegister]  V4L capture device: activated
^C[hyperiond MAIN]  Application closed with code 0
[hyperiond WEBSERVER]  stopped Hyperion WebConfig
[hyperiond Core]  set current input source to auto select
[hyperiond MAIN]  hyperiond.cpp:92:freeObjects() destroy grabbers and network stuff
[hyperiond Core]  Unregister input source named 'Dispmanx' from priority register
[hyperiond Dispmanx]  GrabberWrapper.cpp:46:~GrabberWrapper() Close grabber: Dispmanx
[hyperiond V4L2:/dev/video0]  V4L2Grabber.cpp:75:uninit() uninit grabber: /dev/video0
[hyperiond V4L2:/dev/video0]  Stopped
[hyperiond Core]  Unregister input source named 'V4L2:/dev/video0' from priority register
[hyperiond V4L2:/dev/video0]  GrabberWrapper.cpp:46:~GrabberWrapper() Close grabber: V4L2:/dev/video0
[hyperiond Core]  set current input source to auto select
[hyperiond EFFECTENGINE]  EffectEngine.cpp:53:~EffectEngine() Cleaning up Python interpreter
[hyperiond LedDevice]  ProviderRs232.cpp:138:closeDevice() Close UART: /dev/ttyACM0


Add backplate to CommandBarFlyout in high contrast.

Previously we only showed pointer over states by varying the foreground color of the app bar button.  Now we show a backplate on these items instead which matches the MenuFlyout behavior.

/azp run


tests: test_node_apply_new_version_snapshot failed

hi,
test_node_apply_new_version_snapshot  failed randomly on the CI with the following detailes(https://travis-ci.org/pingcap/tikv/jobs/241986570):
thread 'raftstore::test_split_region::test_node_apply_new_version_snapshot' panicked at 'can't get value Some("v1") for key "k1"', tests/raftstore/util.rs:55
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
stack backtrace:
   0: std::sys::imp::backtrace::tracing::imp::unwind_backtrace
             at /checkout/src/libstd/sys/unix/backtrace/tracing/gcc_s.rs:49
   1: std::sys_common::backtrace::_print
             at /checkout/src/libstd/sys_common/backtrace.rs:71
   2: std::panicking::default_hook::{{closure}}
             at /checkout/src/libstd/sys_common/backtrace.rs:60
             at /checkout/src/libstd/panicking.rs:355
   3: std::panicking::default_hook
             at /checkout/src/libstd/panicking.rs:371
   4: tikv::util::panic_hook::track_hook::{{closure}}
             at src/util/panic_hook.rs:61
   5: <std::thread::local::LocalKey<T>>::with
             at /checkout/src/libstd/thread/local.rs:265
   6: tikv::util::panic_hook::track_hook
             at src/util/panic_hook.rs:55
   7: core::ops::Fn::call
             at /checkout/src/libcore/ops.rs:2588
   8: std::panicking::rust_panic_with_hook
             at /checkout/src/libstd/panicking.rs:550
   9: std::panicking::begin_panic
             at /checkout/src/libstd/panicking.rs:511
  10: std::panicking::begin_panic_fmt
             at /checkout/src/libstd/panicking.rs:495
  11: tests::raftstore::util::must_get
             at tests/raftstore/util.rs:55
  12: tests::raftstore::util::must_get_equal
             at tests/raftstore/util.rs:61
  13: tests::raftstore::test_split_region::test_apply_new_version_snapshot
             at tests/raftstore/test_split_region.rs:394
  14: tests::raftstore::test_split_region::test_node_apply_new_version_snapshot
             at tests/raftstore/test_split_region.rs:401
  15: <F as test::FnBox<T>>::call_box
             at /checkout/src/libtest/lib.rs:1451
             at /checkout/src/libcore/ops.rs:2683
             at /checkout/src/libtest/lib.rs:140
  16: __rust_maybe_catch_panic
             at /checkout/src/libpanic_unwind/lib.rs:98
test raftstore::test_split_region::test_node_apply_new_version_snapshot ... FAILED

@zhangjinpeng1987 @hhkbp2 @BusyJay PTAL

From the log, the generating snapshot thread hangs for a long time. Maybe related to #1922.

Seen from the log:
After 2 became leader and the net filter to  store 3 is cleared, a snapshot is requested but didn't finished generation:
2017/06/12 11:57:20.381 peer_storage.rs:511: [INFO] [region 1] 2 requesting snapshot...
2017/06/12 11:57:20.381 raft.rs:439: [DEBUG] [region 1] 2 failed to send snapshot to 3 because snapshot is termporarily unavailable
2017/06/12 11:57:20.383 peer_storage.rs:849: [DEBUG] [region 1] begin to generate a snapshot
2017/06/12 11:57:20.384 snap.rs:1194: [INFO] [region 1] scan snapshot /tmp/test_cluster.kxl9uTVnpSEa/gen_1_7_12_(default|lock|write).sst, cf default, key count 1, size 5
2017/06/12 11:57:20.385 snap.rs:1194: [INFO] [region 1] scan snapshot /tmp/test_cluster.kxl9uTVnpSEa/gen_1_7_12_(default|lock|write).sst, cf lock, key count 0, size 0
2017/06/12 11:57:20.385 snap.rs:1194: [INFO] [region 1] scan snapshot /tmp/test_cluster.kxl9uTVnpSEa/gen_1_7_12_(default|lock|write).sst, cf write, key count 0, size 0
2017/06/12 11:57:20.388 raft.rs:439: [DEBUG] [region 1] 2 failed to send snapshot to 3 because snapshot is termporarily unavailable
2017/06/12 11:57:20.400 raft.rs:439: [DEBUG] [region 1] 2 failed to send snapshot to 3 because snapshot is termporarily unavailable
2017/06/12 11:57:20.425 raft.rs:439: [DEBUG] [region 1] 2 failed to send snapshot to 3 because snapshot is termporarily unavailable
2017/06/12 11:57:20.451 raft.rs:439: [DEBUG] [region 1] 2 failed to send snapshot to 3 because snapshot is termporarily unavailable
2017/06/12 11:57:20.479 raft.rs:439: [DEBUG] [region 1] 2 failed to send snapshot to 3 because snapshot is termporarily unavailable
2017/06/12 11:57:20.498 raft.rs:439: [DEBUG] [region 1] 2 failed to send snapshot to 3 because snapshot is termporarily unavailable
2017/06/12 11:57:20.517 raft.rs:439: [DEBUG] [region 1] 2 failed to send snapshot to 3 because snapshot is termporarily unavailable
2017/06/12 11:57:20.541 raft.rs:439: [DEBUG] [region 1] 2 failed to send snapshot to 3 because snapshot is termporarily unavailable

There should be log message in
https://github.com/pingcap/tikv/blob/master/src/raftstore/store/snap.rs#L1232
if the generation was successfully done. Or
https://github.com/pingcap/tikv/blob/master/src/raftstore/store/worker/region.rs#L115
if it failed.
Neither are seen in the log, the only possible reason is that it hangs somewhere after it successfully scan sst files before the whole process is done. But the code involved here only related to file operations, but no locking.
https://github.com/pingcap/tikv/blob/master/src/raftstore/store/snap.rs#L1202
(from line 1202 - 1239)
Odd. No clue for that.


Add Rust Support for MLC-LLM

This PR introduces Rust language support for the MLC-LLM project, specifically targeting supporting the ChatModule interface. It utilizes the existing C++ implementation of MLC-LLM and leverages both TVM's C API and its Rust bindings. The rust/examples/mlc_chat.rs gives an example of how to create a chat_module and serve user prompts in Rust.
The primary goal of this PR is to enrich the MLC-LLM ecosystem by offering a Rust interface that aligns with the current Python API. This enhancement will empower Rust developers to integrate MLC-LLM into their codebase and applications.
Followup PRs:

Extend the feature set to achieve parity with the C++/Python interface.
Refine the Rust API, ensuring robustness.
Set up Rust CI if needed.

cc: @tqchen @junrushao

Wow this is amazing to have rust in MLC! Thanks for the contribution!

It will be quite nice if we have a CI for Rust :))


Exchange rate as value object should contain the CurrencyPair

The exchange rate and any exchange rate in order to have a meaning it must have a date.. and correctly the implementation in your package does...
In the same way the exchange rate in order to have a meaning it must contain the CurrencyPair.

@gmponos I agree that we should be able to get the currency pair from the rate.


Allow more permissive cell types, Number, Buffer, etc. as long as the object passed in implements a toString() method

Closes #32

Hi!
Hmm, I don’t think that’s a good idea.
It is correct that any value is accepted. But “Accepted” here means: turned into a string.
There are other functions in JavaScript (DOM APIs, Node APIs) that turn anything into a string, but that are still typed by TypeScript so that you have to do that explicitly yourself.
A similar case exists where we don’t need arrays: you can pass anything that has a length field. But you probably shouldn’t do that.
Allowing any would result in the exact bugs that TS tries to prevent. You might accidentally pass a function, where you meant to call it, and TS wouldn’t catch it.
Types are supposed to help users prevent bugs, and I think the result of this would be opposing that. So, thanks, but no thanks!

@wooorm asked my opinion on this. I agree with his previous comment. As can be seen in this playground, almost anything is assignable to Stringer.
Even the last value would coerce to a pretty string, so effectively the desired type as proposed here would be any.
I do think it could be nice to support number | boolean, as they are known commonly used values that result in pretty string representations.

You guys realize what you're opposed to is accurately documenting the nature of the library, correct? Functions have a toString method. Users might conceivably want to output a table of their source code. This works fine using this library in untyped JavaScript. What we have instead is an artificial limitation on just the typescript functionality. An untyped representation will print just fine. Typescript users instead wind up having to double stringify everything in the matrix. A needless performance penalty and more complexity to maintain at the call site, especially given the fact that this library does the work anyway.

That, or type cast and when you know for a fact you can always use as safely when passing input to a library, that's a symptom that the types might not be as accurate as they could be. I think that's definitely what we're seeing in this case.

Neither the readme nor the jsdoc describes how this library behaves for non-string values. How this should behave is undefined. The intended usage is to pass a matrix of strings.
At runtime values are coerced. An alternative approach could have been to throw. Both approaches could be acceptable to handle invalid usage.
The types signal intended usage: pass a matrix of strings. I don't think it's either right or wrong to loosen these types, it's subjective. In such a case the maintainer is right.

My PR documents the coercion. I think to throw is a bit silly because the usage is in no way invalid. The language authors intended for objects to be converted to strings this way the same way that toJSON controls serialization to that format. To pretend otherwise just imposes an artificial restriction, leaving functionality on the table users could otherwise benefit from.

Docs are restrictions of behavior. Types are docs.
You are supposed to pass strings. That's documented. That's typed.

I get that. My point is that it isn't reflective of the actual functionality the library provides. If you pass numbers, it works just fine. Same for buffers and whatnot. The documentation as it exists today is inaccurate

Correct, because you shouldn't do that. As remco pointed out earlier, it's undocumented behavior that you shouldn't depend on. Of course, I like this behavior better than throwing, but you still shouldn't depend on it.
Types are supposed to catch bugs. This PR prevents that. If you don't want to follow our recommendations, do your thing, but you are on your own!

There is so much precedence with how TS works. One example:
const node = document.body

node.textContent = 1

TS will throw. JS thinks its fine. It works in the DOM, but it’s not recommended.

There's also a ton of precedent for empowering developers with the ability to define how their objects convert to strings. Eventually obtaining a string value seems unavoidable by this library due to the need to calculate cell width. The Options format allows for customizing width calculation behavior by passing in a custom (string) => number function. The return value of the function itself is string so even some hypothetical alternative intermediate format would eventually have toString() called on it. The benefit that it seems you're hesitant to forgo is documentation of the fact that the string constructor gets called on a per-cell basis. To not do so would be a breaking change with little tangible benefit. We could argue that the best way to go about handling string conversion would be better served by passing in a function in the options to maintain consistency with width calculations. That's non-canonical however. As we've seen in your playground example, the string conversion process for objects in JavaScript is well defined and ubiquitous. To go against that pattern would afford users less flexibility, a single function would have to handle all cell conversions instead of objects providing their own implementation as is standard. The point about other APIs that accept numbers not being accurately reflected in their typescript types, while true, would suggest the need to me to have those updated to reflect their actual functionality, not serve as motivation to emulate their shortcomings.

Sounds like you have a problem with typescript. You don't have to use it. Or, you can raise issues with them.
I don't understand your reasoning above.
Perhaps you can share examples where typescript types accept anything that has a valueOf or toString function.

I'm not sure what I said that gave you the impression I "have a problem with Typescript". Typescript is amazing. What's ironic about your request for examples is that this library, despite your insistence otherwise, is a perfect example of where the toString interface makes a lot of sense. I find your comment hostile though, so I'll discontinue our discussion and seek to contribute in the future where interactions with the community focus on the merits of a given argument vs. devolving into personal attacks. I wish you the best of luck with your library in the future.


Hi, i try to implement this model myself, i use transe embeding i train myself, but i find that i can not reach the result you claim in your paper, i try many many times, help!

I used TransE from https://github.com/datquocnguyen/STransE


Update README with new demo site

Rename
react-webpack-node (old name) to demo-reactgo for the heroku deploy

Self 👊


Add hook after org.eclipse.jetty.server.Server creation in ServerCommand#run

I've already posted here https://groups.google.com/forum/#!topic/dropwizard-dev/G6N5rzUEKnI the reasons that I think such capability would be useful. Since Dropwizard exposes the Server through environment.getApplicationContext().getServer() I think that it would be reasonable to be able to access the Server before it is started in order to enable features like Distributed Session Clustering.
What do you think?

any news on this issue?

Would you mind submitting a pull request for this functionality?

@jplock I am currently working on the hooks. In the meantime I solved the reported problem by using subclassing the default server factory like the following:
@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, property = "type")
public class MyServerFactory extends DefaultServerFactory {

	private Server server;

	@Override
	protected Server buildServer(LifecycleEnvironment lifecycle,
			ThreadPool threadPool) {
		if (this.server == null) {
			this.server = super.buildServer(lifecycle, threadPool);
		}
		return this.server;
	}
	public Server getServer() {
		return this.server;
	}
}

Obviously this solution is not clean and leaks too much. I will come back with a PR on the hooks

After some thinking on how should the hooks be implemented, I realized that they should be similar to lifecycle listeners. Actually, I found a response to my answer at StackOverflow (http://stackoverflow.com/questions/26054748/dropwizard-session-clustering).
Although lifecycle listeners seem to solve this particular problem, I believe that there should be either a more explicit way to install hooks or a more flexible way to manipulate the objects created (a bit more dependency-injection friendly). I believe that the latter may be better since it provides more flexibility in case somebody wants to do some customizations (in my case the biggest problem was that ServerCommand was created by Application and I couldn't change it or subclass it).
What are your thoughts?


DPL-168-1 Moved print swipecard call from AJAX to use PMB rails client

Closes #3464
Changes proposed in this pull request:

Moved PMB swipecard print request to rails
added users controller request tests

Although you probably should add a bit of documentation for the new Label::Swipecard class, obviously doesn't have to be anythign substantial, but possibly just explain that it is used to print of swipecards in barcode format for users who don't have access to a proximity reader.


[Docs] Add a link in the v1 docs about the v2 version with Nuxt 3 support

Is your feature request related to a problem? Please describe.

Describe the solution you'd like

Describe alternatives you've considered

Additional context

Added with https://github.com/nuxt-modules/cloudinary/commit/fed3ac986052562fdd88a9186b2469abd0618481


Using Azure MSSQL  Database takes too long to update

We started using database mirror for dependency check and both the initial load and updates are very slow .
We are using Gradle task running from Jenkins to update Azure Managed MSSQL data base. The initial load took around 5 days to complete , but then we increased the IOPS and CPU , it is now relatively faster. Still, the updates takes more than an hour timing out our builds.
Is there a known solution for this and any recommendations around it ? Which database is proven to be quicker among all ? Any suggestions would be really helpful.
Gradle version : 5.2.1
Database : Azure MSSQL
Driver : 'mssql-jdbc', version: '7.2.1.jre8'
OWASP DB version : 3.0
OWASP Gradle Plugin version : 4.0.2

We have not optimized the import/update when using a different database than the embedded H2 - PRs are more than welcome.
That being said, most organizations that use a centralized database like this have the scanning nodes configured so that they do not update the database.  They then setup a specific job to run the updates on a periodic basis (every four to 24 hours).

@jeremylong Thanks for your quick response.Yes, we have setup a separate job configured to update the database and all our application builds have autoupdate set to false . So, is it usual to have DB updates for more than an hour  for databases other than H2?

Unfortunately - I think the answer is yes.  I don't run ODC using a centralized database myself so I don't have a lot of experience with how long updates normally take.  But I have seen the initial load take a VERY long time.  We have not had anyone submit a PR to enhance how we handle the initial load and updates for centralized databases - but I bet a lot could be done to improve the load time.

Thanks, we have moved to postgresql on Azure and it is relatively faster compared to MSSQL. The initial setup took for around 2.5 hours but the daily updates completed in less than 10 minutes from Jenkins.


Use new i18naddress API

Depends on https://github.com/mirumee/google-i18n-address/pull/16

We need to add unsupported countries list to documentation as well.

Current coverage is 60.51% (diff: 83.81%)

Merging #583 into master will increase coverage by 0.92%

@@             master       #583   diff @@
==========================================
  Files            94         96     +2
  Lines          4267       4359    +92
  Methods           0          0
  Messages          0          0
  Branches        445        451     +6
==========================================
+ Hits           2543       2638    +95
+ Misses         1626       1625     -1
+ Partials         98         96     -2

Powered by Codecov. Last update f8d8fc9...0a7077e


Tiny refactor: to keep code style consistent

The other CLI commands about tuf are all begin with cmdTufXXX
which I think verify should be the same too.
Signed-off-by: Hu Keping<EMAIL_ADDRESS>

Can one of the admins verify this patch?

test this please

LGTM!  Thanks @HuKeping

thanks, LGTM!


Explicitly set vm image to avoid using ubuntu16

VM image is not set for prepare pipeline and devops uses implicit image name ubuntu16. Job is failing due to incorrect image name when ubuntu16 is used by pipeline. This PR is to set image name to windows 2019

I know it's going to be a pain to update all the repo references, but since you're changing it to jobs it probably doesn't belong in the steps directory anymore.

I know it's going to be a pain to update all the repo references, but since you're changing it to jobs it probably doesn't belong in the steps directory anymore.

I think this will need to be done as multiple steps. First add new template under jobs without purging current one, update each language reference to new job template and then purge common steps template.

The following pipelines have been queued for testing:java - templatejava - template - testsjs - templatenet - templatenet - template - testspython - templatepython - template - tests You can sign off on the approval gate to test the release stage of each pipeline. See eng/common workflow

I have found that this change is not required and image name is set directly on devops for this. Closing this PR since it is not required anymore.


Summary
Hi! I love your plugins and was just wondering if you could add in scheduled sounds to be played, even if the app is terminated.  I am currently scheduling notifications, and I think it would be nice to be able to schedule an alarm sound, for my timer app!
API Changes
Im not sure what all would be needed, but it might be able to be completed, through the jobs scheduler.  Or even a duration parameter for the sound setting in the notification class.
Intended Use Case
This would be for timer apps or alarm clock apps.  Anything where the user wants to play a sound at a specific time!

This already exists as a configuration value you can pass to a notification

@aritchie Thanks aritchie! I am a huge fan of your plugins.  Do you have any documentation where I can reference this?  Thank you for everything!


Adding noop migrator for kafkasources

Signed-off-by: Matthias Wessendorf<EMAIL_ADDRESS>Similar to #903
Proposed Changes

:broom: Adding noop migrator for the kafkasources.sources.knative.dev to always have a migrator manifest on each release.

Release Note

storage version migrator for kafka source is now always part of the release

Docs

/retest
quay.io outage seems to be solved

/retest

Can you add a release note?

@lionelvillard trhanks for the feedback - I'dve added the requested subresources

/lgtm


Switch from namedtuple to dataclasses

Is your feature request related to a problem? Please describe.
Libraries relying using ir_datasets might need to include extra information into the data objects (e.g. GenericDoc). NamedTuple prevents any inheritence.
Describe the solution you'd like
Switch to dataclasses
Describe alternatives you've considered
No real alternative apart from trying to use ugly Python constructions or wrappers (but those are not really nice).

Hey Benjamin! We've got the reasoning for namedtuple over dataclass detailed here: https://ir-datasets.com/design.
I understand that NamedTuples are not very conducive to inheritance, but I don't think inheritance adds very much in most cases, and it doesn't seem worth it above the considerations detailed in the link. Can you give some specific case where you'd find inheritance of the fields helpful?

Hi, sorry I did not see this page; OK, this makes sense even though slotted dataclasses should be quite close performance-wise in recent python versions. Maybe to be reconsidered in the future?

I'm potentially open to it!

BTW, in the potential use cases:

factorize some common properties (so that libraries can decide with isinstance what to do with one object)
allow adding some extra information (e.g. an internal document ID)

Also, a good alternative would be attrs, see e.g. for a full comparison
https://towardsdatascience.com/battle-of-the-data-containers-which-python-typed-structure-is-the-best-6d28fde824e


DOC: documentation updates

(@ericdill or @danielballan) any thoughts on getting the restructured text in the dynamic device component dynamic default docstring displaying as intended? It comes out as squashed, unformatted text.
I think overall this is an improvement...

Fixed default component docstrings to render well with sphinx, with help from @ericdill

Lgtm. I'll add auto building ophyd docs to my to-do list


Neovim .10 nightly: template literal comments are no longer parsed

Much like #1
Let me know if you need me to try anything.
Thanks for the plugin!

@bennypowers  would you be able to take a look at this pretty please :1st_place_medal:


Feature identification using online databases

Basic information

My operating system and version: Windows 10, 64 bit
My MZmine version: 2.53

What happened
I've been trying to identify some features once my data had undergone mass detection, chromatogram building and deconvolution, filtering, alignment, row filtering and gap-filling. I tried to use the online database search function in the identification menu, using the following parameters: Database: MassBank.eu, Ionization type: [M]-, number of results: 20, m/z tolerance 0.05 or 10ppm. I've tried running this process using a few of the different databases listed in the dropdown menu, but everytime it fails, and I get a pop-up message saying something similar to the screenshot attached here.

Please describe what happened and how it differs from what you expected to happen.
Please include all parameter values for the MZmine modules you used.
Please upload screenshots of any errors and your log/mzmine.log file.
Please upload a standalone MZmine project file (or a batch + raw files) that demonstrates the problem you are reporting. You can use Google Drive, Dropbox, or a similar repository to upload the project.
Issues opened without an example project are unlikely to be processed

Hi, I have just tried the NIST library with .msp format and it works. If I am not mistaken, I ran the [aligned feature list gap-filled] with only NIST library, which is a long way after I resolved/deconvoluted, deisotoped, aligned feature list of all the samples, and finally the aligned feature gap-filled then run it for online database for only the [aligned feature list gap-filled] file. But, you have to wait around 1-2 hours until the work is done. Then, you can check again the file. Maybe you can try the library one at the time and how it works

We will actually deactivate the online database search. Its unmaintained and uses old APIs and entry points for the different libraries.
The best way is to either download spectral libraries and perform spectral library matching (see documentation).
Or create a compound library as CSV with RT and m/z values to identify compounds.

This is usually the best way you can see results in the feature table and also export to file.

closing this issue as we removed the online DB search


Unrecognized arguments --user_name for Oracle connection

Based on Oracle connection documentation, I can use the next command to add a new Oracle connection:
data-validation connections add -c CONNECTION_NAME Oracle --host HOST_NAME --port POST --user_name USERNAME --password PASSWORD --database DATABASE
However, this gives me the next error:
data-validation: error: unrecognized arguments: --user_name USERNAME
The parameter --user seems to work though. Can this be fixed?

Thanks for the issue. It should be updated to 'user' for Oracle.
This issue should also standardize the Connections guide as the underscores in the JSON config (Oracle example, Spanner example) should be hyphens when used in the CLI.

I have also faced this issue and I thought the documentation was wrong about the username part. But I tried multiple things and if you try --user in the command instead of --user-name, it will work.


567 bls provider and bls signer release

What is this PR doing?

Removes BlsProvider & BlsSigner from Experimental namespace
Publishes new client module release - v0.8.3

I've manually tested the new release against testnet and a local aggregator. I did this by adding the provider to the browser wallet and sending a tx to and from the wallet.
How can these changes be manually tested?

test provider on testnet with browser wallet (I've already done this)

Does this PR resolve or contribute to any issues?
Resolves #567
Checklist

[x] I have manually tested these changes
[x] Post a link to the PR in the group chat

Guidelines

If your PR is not ready, mark it as a draft
The resolve conversation button is for reviewers, not authors

(But add a 'done' comment or similar)

Note on testing:
I was not able to get transactions to work out of the box with the deployed aggregator OR a local aggregator. This was the case with just using the client module as normal, or the provider, so it wasn't an issue specific to the provider changes.
I can't say with confidence what the issue was with the deployed aggregator, as I'm not sure how recently that was updated. But the issue with the local aggregator was that the code failed in the AggregationStrategy.ts file. This if statement evaluated to true, and thus the bundle row never got added on this line.
I was able to get around the issue by manually updating this env var like so:
# old value - this value is provided in .env.example
MAX_GAS_PER_BUNDLE=2000000

# new value
MAX_GAS_PER_BUNDLE=10000000

Made the decision to publish these changes regardless as appears to be an issue with aggregator logic/aggregator config, as opposed to being related to an issue with the client module. If it is worth another issue to look into, then would deem it out of scope. Feel free to disagree!

@JohnGuilding Hmm. MAX_GAS_PER_BUNDLE should be higher anyway, so all good with 8m.
However, that's A LOT of gas... could you provide some more detail on how you tested?

test provider on testnet with browser wallet (I've already done this)

I would have tested with an ETH transfer using Quill, but I can't tell from your description whether this is what you did.
Could you also confirm which network you used? testnet doesn't mean very much, because we've only ever used testnets so far. ie, do you mean geth? hardhat? arbitrum-goerli?

@voltrevo yeah 8m does seem quite high.

could you provide some more detail on how you tested?

Testing method: Sending transactions using the browser wallet pointing at a local aggregator (didn't test using quill)
Testnet: arbitrum-goerli


Clean up build

@matejvasek is this still a work in progress?

@lance I think it's good enough.

I was thinking of some more improvements but I rather leave it for latter.
There is still some redundancy I believe we could get rid off some *.tomls and generate them instead.
I also tired to use Go client instead of pack but it let me down a little bit: I thought I could keep all config as Go literals and not use toml completely, but how wrong I was! Some members of XYZOptions struct (passed to the client) cannot be populated in Go code because some of the types are internal, so toml is needed :disappointed: .


koord-scheduler: fix ElasticQuota plugin failover panic

Signed-off-by: xulinfei.xlf<EMAIL_ADDRESS>Ⅰ. Describe what this PR does
fix the panic when failover, because the child is loaded before the parent.

Ⅱ. Does this pull request fix one issue?

Ⅲ. Describe how to verify it
Ⅳ. Special notes for reviews
V. Checklist

[ ] I have written necessary docs and comments
[ ] I have added necessary unit tests and integration tests
[ ] All checks passed in make test

/milestone v1.1


The security token included in the request is invalid

I am trying to use localstack cognito with amplify.
I can login to cognito successful.
I also want to implement Social sign-in too.
First I create a profile locastack with key and secret
aws configure --profile localstack
then
export AWS_ACCESS_KEY_ID=dummy
export AWS_SECRET_ACCESS_KEY=dummy
aws --endpointurl http://localhost:4566 kinesis list-streams
and I run
amplifylocal init
Note: It is recommended to run this command from the root of your app directory
? Enter a name for the project localstack
The following configuration will be applied:
Project information
| Name: localstack
| Environment: dev
| Default editor: Visual Studio Code
| App type: javascript
| Javascript framework: none
| Source Directory Path: src
| Distribution Directory Path: dist
| Build Command: npm run-script build
| Start Command: npm run-script start
? Initialize the project with the above configuration? Yes
Using default provider  awscloudformation
? Select the authentication method you want to use: AWS profile
For more information on AWS Profiles, see:
https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-profiles.html
? Please choose the profile you want to use localstack
🛑 The security token included in the request is invalid.
Learn more at: https://docs.amplify.aws/cli/project/troubleshooting/
I also try to run docker-compose with
environment:
- HOSTNAME=localhost
- DEBUG=1
- PERSISTENCE="disabled"
- LAMBDA_EXECUTOR=docker
- LOCALSTACK_API_KEY=4pwo1o14g2
- DOCKER_HOST=unix:///var/run/docker.sock
- USE_SSL=false
- DISABLE_CORS_CHECKS=1
- SKIP_SSL_CERT_DOWNLOAD=1
- DEFAULT_REGION=us-east-1
- AWS_ACCESS_KEY_ID=dummy
- AWS_SECRET_ACCESS_KEY=dummy
- AWS_DEFAULT_REGION=us-east-1
I got the same result.
Any advices
Thanks

Hey @luong12g :wave: thanks for raising this! Would you mind porting this over to our bug template? By doing so this will help us get a better understanding of the context of the issue in order to effectively diagnose.


Dynamic contextAttributeName

Hi all,
got another issue that I'm struggling with and I want to know if this is supported in Synapse. We currently have a workflow that is started from a schedule (every 15 minutes). We first call an API to trigger some async logic. The logic will gather data from multiple sources and then aggregate them and return them. For this we are using an event that is being returned by the API.
What we want to do now is to setup the correct correlation since, in theory, there can be multiple workflow instances running at the same time. My idea was that we setup a contextAttributeValue in the workflow definition which uses the workflow instance ID; so something like this:
"correlation": [         {           "contextAttributeName": "wfid",           "contextAttributeValue": "${ $WORKFLOW.workflow.instanceId }"         }       ]
The API also receives this workflow instance ID and will then include that when generating the event. When trying this out, it seems like the contextAttributeValue is empty in the workflow instance so my guess is that this this not supported?
Any other ways of doing this or will this be foreseen in the future?
Thanks,
Bram

AFAIR, runtime expressions in correlation attributes are indeed supported by Synapse, but will only get populated when consuming an event of the source/type defined in the correlations parent

On a side note, you'd probably be better off using the correlationid extension attribute defined for such use cases by the CloudEvent spec.
In case that does not apply and/or is not ubiquitous in your domain, I'd then use causationid, which is a commonly used event driven term to identify causation.

Thanks for that tip! I’ll have a look at it.

So it's a bit funky what's happening and I'm not 100% sure if I understand the UI correctly neither.
I'm doing this in the workflow definition file:
  "events": [     {       "name": "dc21fe53-c154-4710-8a7c-66bfc0875caa",       "source": "https://workflow-service.com",       "type": "readFiles",       "correlation": [         {           "contextAttributeName": "wfid",           "contextAttributeValue": "${ $WORKFLOW.workflow.instanceId }"         }       ]     }   ]
So basically, I'm first calling an API in the operation. Then transition to an event in the workflow. The API will return an event with that workflow instance ID as an extension attribute in the Cloud Event; here is an example:
{     "id": "test-1234",     "specversion" : "1.0",     "subject": "readFiles",     "type" : "readFiles",     "source" : "https://workflow-service.com",     "wfid": "6fd0debf-f957-4e36-b1bb-e1642d584a0b-7mqrecyebe2guk8bwfh6gg",     "data" : {       "status": 200,       "data": "Completed"     } }
However the error is thrown in the synapse server that it couldn't determine the correlation. If I look at the correlation in the UI, I do see this:

How should I read this screen? Because it seems the wfid is passed and should be correlated, no?

You are right indeed, the mapping exists and is set to what seems a correct value, so it should now consume and correlate any events with the specified source/type/wfid.
What is the error/stack that the server is throwing?
It's the bit difficult to understand what's happening without a simple, concrete example that I can test/debug on my own.

Ohh it seems to be a different error now; there was one related to a wrong correlation before but now I'm getting this one:
An error occured while processing an incoming cloud event: Synapse.OperationResultException: The operation was executed with a non-success result code 'NOT_FOUND'. Errors: : Failed to find a 'V1WorkflowInstance' with the specified id '6fd0debf-f957-4e36-b1bb-e1642d584a0b-7mqrecyebe2guk8bwfh6gg' at Synapse.IMediatorExtensions.ExecuteAndUnwrapAsync[TResult,T](IMediator mediator, ICommand2 request, CancellationToken cancellationToken) in /src/src/core/Synapse.Application/Extensions/IMediatorExtensions.cs:line 61
at Synapse.Application.Commands.Correlations.V1CorrelateEventCommandHandler.CorrelateAsync(V1Correlation correlation, V1CorrelationContext correlationContext, V1Event e, V1EventFilter filter, CancellationToken cancellationToken) in /src/src/core/Synapse.Application/Commands/Correlations/v1/V1CorrelateEventCommand.cs:line 178
at Synapse.Application.Commands.Correlations.V1CorrelateEventCommandHandler.HandleAsync(V1CorrelateEventCommand command, CancellationToken cancellationToken) in /src/src/core/Synapse.Application/Commands/Correlations/v1/V1CorrelateEventCommand.cs:line 120
at Synapse.Application.Commands.Correlations.V1CorrelateEventCommandHandler.HandleAsync(V1CorrelateEventCommand command, CancellationToken cancellationToken) in /src/src/core/Synapse.Application/Commands/Correlations/v1/V1CorrelateEventCommand.cs:line 95
at Neuroglia.Mediation.FluentValidationMiddleware2.HandleAsync(TRequest request, RequestHandlerDelegate1 next, CancellationToken cancellationToken)
at Neuroglia.Mediation.DomainExceptionHandlingMiddleware2.HandleAsync(TRequest request, RequestHandlerDelegate1 next, CancellationToken cancellationToken)
at Neuroglia.Mediation.RequestPipeline2.HandleAsync(IRequest1 request, IServiceProvider serviceProvider, CancellationToken cancellationToken)
at Neuroglia.Mediation.Mediator.ExecuteAsync[TResult](IRequest1 request, CancellationToken cancellationToken) at Synapse.IMediatorExtensions.ExecuteAndUnwrapAsync[TResult](IMediator mediator, ICommand1 request, CancellationToken cancellationToken) in /src/src/core/Synapse.Application/Extensions/IMediatorExtensions.cs:line 42
at Synapse.Application.Services.CloudEventCorrelator.CorrelateAsync(IServiceProvider serviceProvider, CloudEvent e, CancellationToken cancellationToken) in /src/src/core/Synapse.Application/Services/CloudEventCorrelator.cs:line 92`
I'll see if I can setup a working example.

This is the error I'm getting:
 [10/23/2023 13:22:48] fail: Synapse.Application.Services.CloudEventCorrelator[0] An error occured while processing an incoming cloud event: System.Exception: Failed to correlate event at Synapse.Application.Commands.Correlations.V1CorrelateEventCommandHandler.HandleAsync(V1CorrelateEventCommand command, CancellationToken cancellationToken) in /src/src/core/Synapse.Application/Commands/Correlations/v1/V1CorrelateEventCommand.cs:line 111 at Synapse.Application.Commands.Correlations.V1CorrelateEventCommandHandler.HandleAsync(V1CorrelateEventCommand command, CancellationToken cancellationToken) in /src/src/core/Synapse.Application/Commands/Correlations/v1/V1CorrelateEventCommand.cs:line 95 at Neuroglia.Mediation.FluentValidationMiddleware2.HandleAsync(TRequest request, RequestHandlerDelegate1 next, CancellationToken cancellationToken) at Neuroglia.Mediation.DomainExceptionHandlingMiddleware2.HandleAsync(TRequest request, RequestHandlerDelegate1 next, CancellationToken cancellationToken) at Neuroglia.Mediation.RequestPipeline2.HandleAsync(IRequest1 request, IServiceProvider serviceProvider, CancellationToken cancellationToken) at Neuroglia.Mediation.Mediator.ExecuteAsync[TResult](IRequest1 request, CancellationToken cancellationToken)
at Synapse.IMediatorExtensions.ExecuteAndUnwrapAsync[TResult](IMediator mediator, ICommand1 request, CancellationToken cancellationToken) in /src/src/core/Synapse.Application/Extensions/IMediatorExtensions.cs:line 42 at Synapse.Application.Services.CloudEventCorrelator.CorrelateAsync(IServiceProvider serviceProvider, CloudEvent e, CancellationToken cancellationToken) in /src/src/core/Synapse.Application/Services/CloudEventCorrelator.cs:line 92 [10/23/2023 13:22:48] info: Microsoft.AspNetCore.Hosting.Diagnostics[2] Request finished HTTP/1.1 POST http://synapse.bcb5a7d.kyma.ondemand.com/events/publish application/cloudevents+json 297 - 202 0 - 11.7331ms
I'll see if I can send over an example.

Sorry for the delay. Here is an example workflow. As you can see, I'm calling the HttpMock endpoint and pass in the uniqueId ($WORKFLOW.workflow.instanceId).
In the HttpMock API, I'm waiting for 5 seconds before I generate an event and I'm adding the uniqueId as the wfid. Let me know if this works or you need additional inputs.
test-workflow.json

@brampurnot I'm closing this as it is stale in 1.0.0-alpha.
Correlation engine has been refactored to use the new correlation key definitions defined in the DSL v1.0.0-alpha*.


Error on npm run development

Even if I extract the mailConfig code into separated file,
App still runs with errors, none of the routes is working.
odule.js:442
throw err;
^
Error: Cannot find module './mailConfig'
at Function.Module._resolveFilename (module.js:440:15)
at Function.Module._load (module.js:388:25)
at Module.require (module.js:468:17)
at require (internal/module.js:20:19)
FYI

I just checked it on my machine, there was a problem with a missing asset.
I've also added the default mailConfig.jsx for clarity.
Can you update the project and see if this has solved your problem?
If not, maybe you can tell me which version of node you are using.
Remember to run "development" twice or run "dev-client" and then run "development"... I'm still trying to figure out how to make isomorphic-tools wait for webpack to finish....

I'll close this issue as I'm unable to replicate it.
Please let me know if there are any further issues, then we can reopen it.


Add offence.rule to the Pronto message

We would like to see which ESLint rule has been broken when running pronto. This would allow the developer to quickly disable the rule or read up about the rule online at a glance.
Example output with rule added.:
Foobar.ts:96 W: @typescript-eslint/no-unused-vars: 'foo' is assigned a value but never used. Allowed unused vars must match /^_/u.

Hi @ashkulz ,
Is it possible to get a new release of [pronto-eslint](https://github.com/prontolabs/pronto-eslint) published to rubygems with this change included?
Thanks

Pushed to RubyGems, sorry for the delay!


missing get_chaintips endpoint

we require a web socket (pubsub). which would send a notification whenever anything changes in the chaintips table.

There is this pubsub endpoint as well: https://github.com/twilight-project/forkscanner/blob/main/src/service.rs#L312
That will give you active chaintips, is that what you're looking for?

this gives a collection of chaintips, we need one source of truth


multiline comment even works inside string

In JavaScript, "/* hoge */" is "/* hoge */" but in hdytto, "/* hoge */" is "". It should be fixed.

fixed in the latest commit.

Fixed in v0.2.1


getFolders() gives Maximum execution time exceeded

I am getting "Maximum execution time exceeded" when i try to do $mail->getFolders().

Could be related to #191 and #240

This repository has been closed and moved to laminas/laminas-mail; a new issue has been opened at https://github.com/laminas/laminas-mail/issues/29.


Update aes.c

I noticed that the inverse mix column function was very complex and wanted to simplify it while tailoring the new function towards the constraints of the project, which is to keep it as condensed as possible.  The benefits of the new Multiply function I have suggested are that it is significantly easier for a user to understand how the finite field multiplication works, it eliminates the need for the xtime() function, and that it operates under close to identical speeds as the original Multiply function.
From my observation, the Inverse Mix Columns function is the most complex function in AES and is not particularly well documented online.  A simpler function may be beneficial towards those who may want to contribute toward Tiny-AES but may
not be all too familiar with the operations.

First of all, thank you for your suggestion.
I have had deep thoughts about having two versions: One optimized for clarity and one optimized for small code size.
However it looks like this pull request will break the code, since the function/macro RecursiveMultiply is not defined. I will close this request, but you are welcome to have another go that includes the definition of RecursiveMultiply :)
Did you intend to rename Multiply to RecursiveMultiply as well ?

Hey!
Thanks for getting back to me.  That is completely my mistake - my fault for not testing it!  Anyways, if you think that it may be a good idea to create a separate directory focused for clarity, I would be happy to submit another pull request to possibly assist with that.  I'll look into this a bit more over the weekend and see what other changes can be made as well.

@andrewtong I've long wanted to have two different versions of the same library: one for clarity and one for small size.
I would love if you gave it another shot :)


export wallet feature creates failed wallets

I'm using testnet 6.37 and when I manually copy the wallets in a file and then later paste them back in NEM it works, but if I use the export wallet feature and then try to paste them back into my wallet, then I get error 121.
I have also tested this on 6.31 on the mainnet and got this same error.  I do have a lead.  On mac the files that were manually copied and pasted looked one way, but the files that came out of the export zipped folder looked a different way.  The corrupted wallet file was labeled "exec" and had a different icon.

by changing the wallet name of the failed wallets by putting a "+" in the space, I was able to get the wallet to work again on testnet

hopefully fixed in 6f9351723cdf730b93a6abad41958c0c0e16113d

Working fine 0.6.29


DO NOT MERGE run time stack check

@dagar This restores the per call run-time stack checking to the build.
the NXPlite comint must be dropped before this can come

We could do something like nuttx_nxphlite-v3_stackcheck with some of the px4 modules disabled and the modified defconfig.


Make a helper function getRadicandNode

e.g. cuberoot(5) is represented in mathjs as nthRoot(5, 3) and it has root 3 and radicand 5
there's an existing function getRootNode which is a helper function for the getting the root number
but then you see:
const radicandNode = node.args[0];
const rootNode = getRootNode(node);

It'd be nice to use a getRadicandNode(node)  function which returns node.args[0];
(that's it! a great small first change)

I can do this one!

done! Thanks @lexiross 🎉