text:
Rewrite tests in Go

The current test suite is written in bash and perl, but we should rewrite tests in Go

Am looking into taking this up. To support tests for both vz and qemu drivers and also try to make it more stable (tests passing in first run and not via retries). Also github actions now supports macos-13 runner in beta.
Is there any specific approach we need to take here ??
The plan i was thinking is to have it more of a integration tests. Tests run on top of limactl built binary.

FWIW, I agree with rewriting the Perl bits, but I don't think Go is an appropriate language for integration tests (obviously it is the correct choice for unit tests).
I think using a framework like BATS (combined with jq) lets you write integration tests that are much easier to maintain and debug.
Having said that, whoever is going to spend the time on implementing this should have the final word on how it is done. 😄

As an example of using BATS, creds.bats is a Rancher Desktop integration test that makes sure you can access a registry.
It uses some helper scripts, so it runs on macOS, Linux, and Windows (in WSL) and can test both moby and containerd configurations (and on Windows can test both Linux and Windows binaries to talk to moby/containerd).
I very much like the brevity and simplicity of the test code, making it easy to write and change the tests once you understand how the helper functions make it work in the different environments. E.g. ctrctl is running either docker or nerdctl depending on which container engine has been configured.

authors: AkihiroSuda balajiv113 jandubois

repo: lima-vm/lima


text:
Add option to show messages in limactl list

Closes #614

Maybe we should rather have limactl describe or limactl inspect?

Maybe we should have limactl describe or limactl inspect rather than overloading limactl list?

I'm fine having this as an alternative output format for list (as implemented by this PR), but maybe I'm biased as that was my original suggestion. But really, it is just formatting a subset of the information in a slightly different way.

Maybe we should have limactl describe or limactl inspect rather than overloading limactl list?

I'm fine having this as an alternative output format for list (as implemented by this PR), but maybe I'm biased as that was my original suggestion. But really, it is just formatting a subset of the information in a slightly different way.

I'm feeling that this PR is too much overloading the list command.

Okay, let's do another name.

Okay, let's do another name.

Well, I disagree with creating another command, only to present the data in a slightly different format.
In that case I would rather not include the functionality at all and maybe just show in the docs how users can easily build variations of this themselves:
$ cat message
#!/bin/sh
for INSTANCE in $(limactl ls --quiet); do
    MESSAGE="<no message>"
    FORMAT=$(limactl ls --format '{{.Message}}' $INSTANCE)
    if [ -n "$FORMAT" ]; then
        MESSAGE=$(limactl ls --format "$FORMAT" $INSTANCE)
    fi
    echo "$INSTANCE"
    echo "$MESSAGE" | sed 's/^/  /'
done

$ ./message
default
  <no message>
docker
  To run `docker` on the host (assumes docker-cli is installed), run the following commands:
  ------
  docker context create lima --docker "host=unix:///Users/jan/.lima/docker/sock/docker.sock"
  docker context use lima
  docker run hello-world
  ------
riscv64
  <no message>

FWIW I still disagree that this is overloading the list command. To me this is not much different than having --label-columns, --output, and --template option in kubectl get. They just allow you to format the output different ways. But then, maybe this functionality isn't really that important.

Seems to me like we are back to hacking scripts and reading comments hidden in the yaml.
I just wanted a simple command to show the message/README, with paths expanded etc.

I just wanted a simple command to show the message/README, with paths expanded etc.

I think this PR does provide exactly that. I don't see how adding top-level commands for slight variations really help usability. Anyways, I've stated my opinion; in the end I will go with whatever @AkihiroSuda decides.

If it helps, I can split the cmd and the pkg.

Then again, I also wanted the client command installed and the configuration set up for you.

That's essentially how colima was started.

Seems a bit much to fork it just for that.

But I thought the minikube kubectl cmd was quite handy, even if I just "borrowed" it from k3s.

You lost me here. How is this related to limactl ls --message?

Maybe we should have limactl ls --format '{{.MessageExpanded}}' docker to expand variables in the message?

Maybe we should have limactl ls --format '{{.MessageExpanded}}' docker to expand variables in the message?
Or add a template function like limactl ls --format '{{expand .Message}}' docker

As I wrote before I would also be fine with just storing only the expanded message; why would you ever need the original template again?
I understand that this would be an incompatible change, but I honestly can see anybody relying on the current behaviour. Adding .MessageExpanded is probably the prudent choice though.

But I thought the minikube kubectl cmd was quite handy, even if I just "borrowed" it from k3s.

You lost me here. How is this related to limactl ls --message?

The end goal of the current message, is to show the user what command to run and how to set up the config.
Commands like nerdctl.lima or minikube kubectl instead run it for you...
Other than that, no relation

Also the feature is not so important, just trying to mimic some of the old docker-machine and podman-machine behavior.

I would also be fine with just storing only the expanded message;

SGTM too

So with #903 merged, what is the plan for this PR?
@afbjorklund should it be closed now? Since @AkihiroSuda objects to adding more special-purpose output formats to list, I don't see a way forward, and with #903 merged, the need is also less (although not completely gone).

We can close it

source: gharchive/pull-request

authors: AkihiroSuda afbjorklund jandubois

license_type: permissive

license_source: github-api


text:
add support for nested virtualization

Which issue(s) this PR fixes:
This PR adds support for nested virtualization, added in macOS 15 for m3 devices.
Additional documentation
Sample usage
platformConfig, err := vz.NewGenericPlatformConfiguration(vz.WithGenericMachineIdentifier(machineIdentifier))
if err != nil {
	return err
}

// nested virt
platformConfig.SetNestedVirtualizationEnabled(true)

CI not running?

CI not running?

I have no idea why.

Format check is failing

Format check is failing

I've figured how to resolve it.
Can you kindly enable the workflow again? @AkihiroSuda.

FYI I have been having experience same issue of builds terminating abruptly (on other projects) with GIthub actions for some days now.

authors: AkihiroSuda abiosoft

repo: lima-vm/vz

license: MIT


text:
Clicking outside of alert running cancelled function.

The demo on the site allows you to click outside the buttons and close the alert with no second function. When I use this inside of a web app, clicking outside of the alert runs the cancel function.

What I'd like to be able to do is - 1 button to call 'confirm' function - 1 button to call 'cancel' function - and clicking outside to close the SWAL without invoking the cancel function.

^ Wait, you closed this? How did you resolve it? Gah..

source: gharchive/issue

license: mit

license_source: bigquery


text:
run python project template

run python project template on koffi

closes #5

repo: lincc-frameworks/koffi


text:
Support GraphQL

https://en.wikipedia.org/wiki/GraphQL
https://graphql.org/learn/serving-over-http/
https://www.graphql-java.com/documentation/master/

I've written tests while writing simple prototyping code.
How about that skeleton? 🤔
@RegisterExtension
static ServerExtension server = new ServerExtension() {
    @Override
    protected void configure(ServerBuilder sb) throws Exception {
        sb.service(GraphQLService.builder()
                                 .path("/graphql") // optional
                                 .config(GraphQLConfig.ofDefault()) // optional
                                 .config(GraphQLConfig.builder() // optional
                                                      .schemaPath("/schema.graphqls")
                                                      .build())
                                 .runtimeWiringConfigure(c -> {
                                     final StaticDataFetcher bar = new StaticDataFetcher("bar");
                                     c.type(newTypeWiring("Query").dataFetcher("foo", bar));
                                 })
                                 .build());
    }
};

@Test
void get() throws Exception {
    final AggregatedHttpResponse response = WebClient.of(server.httpUri())
                                                     .get("/graphql?query={foo}")
                                                     .aggregate().get();

    assertThat(response.status()).isEqualTo(HttpStatus.OK);
    assertThat(response.contentUtf8()).isEqualTo("{\"data\":{\"foo\":\"bar\"}}");
}

@Test
void post() throws Exception {
    final AggregatedHttpResponse response = WebClient.of(server.httpUri())
                                                     .post("/graphql", "{foo}", Charsets.UTF_8)
                                                     .aggregate().get();

    assertThat(response.status()).isEqualTo(HttpStatus.OK);
    assertThat(response.contentUtf8()).isEqualTo("{\"data\":{\"foo\":\"bar\"}}");
}

Thanks, @heowc!
Yeah, that looks good. 😄
Probably, we can just parse the request in GraphQLService and hand it to the corresponding data fetcher that is implemented using graphql-java. 😄
So are you going to handle this issue?

We should refer to this.
For example, there is a roadmap to add a media type.
See  https://github.com/graphql/graphql-over-http

We might want to add client-side support as well in the future.

authors: heowc minwoox trustin

repo: line/armeria


text:
Provide a way to configure per-service settings fluently

Motivations:

Per-service setting

It will be nice if we have an API to configure per-service settings fluently. See #1649, #1619

Removing VirtualHost setters in ServerBuilder

We could set up a VirtualHost in two ways using:

ChainedVirtualHostBuilder that provides fluent APIs.
The setter which takes a VirtualHost already built as an argument.

Our users can choose to suit their taste for building VirtualHosts, however, it made the code more complex.

Modifications:

Per-service setting

Add AbstractRouteBuilder and it's children which are RouteBuilder and VirtualHostRouteBuilder.
Add package-local ServiceConfigBuilder and change the constructor of ServiceConfig as package-local.

You have to use ServerBuilder to create ServiceConfig in tests.

Removing VirtualHost setters in ServerBuilder

Remove setters in ServerBuilder which are defaultVirtualHost(virtualHost) and virtualHost(virtualHost).
Remove VirtualHostBuilder and integrate AbstractVirtualHostBuilder and ChainedVirtualHostBuilder into one:

Name the integrated one as VirtualHostBuilder.

Deprecated

ServerBuilder.defaultRequestTimeoutMillis(). Use ServerBuilder.requestTimeoutMillis().
ServerBuilder.defaultMaxRequestLength(). Use ServerBuilder.maxRequestLength().
ClientBuilder.defaultResponseTimeoutMillis(). Use ServerBuilder.responseTimeoutMillis().
ClientBuilder.defaultMaxResponseLength(). Use ServerBuilder.maxResponseLength().

Result:

Close #1649, #1619
Hopefully, the less complex code in ServerBuilder.
You can now configure per-service settings fluently

To-dos:

Add documentation.
Add another building method with ServiceWithPathMappings to RoutBuilder. (I'm not sure if it's a good idea though.)
Add RouteBuilder.apply(Consumer<RouteBuilder>)( which might be used, for example, to set the POST method and produceTypes for Thrift automatically).

 Thank you for your submission, we really appreciate it. Like many open source projects, we ask that you all sign our Contributor License Agreement before we can accept your contribution.1 out of 2 committers have signed the CLA.:white_check_mark: minwoox:x: minu-songminu-song seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.You have signed the CLA already but the status is still pending? Let us recheck it.

How about updating the examples in server-basics.rst to leverage the new API? I guess we could use the new API for all non-RPC service examples.

Please fix the compilation errors and address the last comment, then we're good to go!

@anuraaga Any comments just in case you are interested? :-)

:tada: Nice job, @minwoox!

Thanks a lot, for reviewing. 😉  Will send the follow-up PR soon.

authors: CLAassistant minwoox trustin


text:
Ensure response body is not sent for a HEAD request

Motivation:
AbstractHttpResponseHandler writes the response body generated by a service as it is, even if the method it handles always has empty response body, such as HEAD.
Modification:

Fixed AbstractHttpResponseHandler so it doesn't write the response body when the request method is HEAD.

Also, explicitly released the body which was unnecessarily generated by a service.

Result:

Armeria doesn't send a bad response with non-empty body anymore when:

a service's ExchangeType is UNARY; and
a service generates non-empty body for a HEAD request.

Fixes #4511

Thanks, @trustin! 😄

authors: minwoox trustin


text:
Add Prometheus request metrics to armeria-core

Motivation:
We would like Armeria to record and export Prometheus metrics.
Modifications:

Add Prometheus dependencies
Add service and client decorator (combined)
Add wrapper for registry for concurrent access
Add Prometheus HTTP exporter

@anuraaga @trustin So should I create a sub project or just change the package?

So should I create a sub project or just change the package?

+1 for using armeria-core since we will have the core depend on Prometheus Java simpleclient API, as discussed yesterday at the Slack channel.
Given that Dropwizard metric collecting classes are in the logging package already, we would need to:

move them (and yours) to metric package or
keep them (and yours) in logging package.

I'm not strong on this, but moving to metric sounds better.

@jmostella, regarding PrometheusRegistry, how about:

Making PrometheusRegistry extend CollectorRegistry
Renaming PrometheusRegistry.create() to register() (overload with CollectorRegistry.register())
Changing our decorators accept CollectorRegistry and letting them use the duplicate-safe version if the specified registry is PrometheusRegistry?

@trustin @kojilin @anuraaga Sorry for not bringing this up earlier. But Prometheus has an http exporter, as opposed to the one I've written PrometheusExporterHttpService. The only possible issue is that it uses the Servlet api.
Does any one have an opinion on which is better?

@jmostella Armeria is independent of servlet API aside from optional integration with Tomcat/Jetty - PrometheusExporterHttpService looks like the right pattern to me. But when looking at the prometheus client version, I did notice that you should probably also implement POST in yours
https://github.com/prometheus/client_java/blob/master/simpleclient_servlet/src/main/java/io/prometheus/client/exporter/MetricsServlet.java

I think keep urs is better, then we don't need servlet engine in armeria when only using servlet for exporting.

updated

@trustin Since we can get the name information from CollectorRegistry.metricFamilySamples maybe we should go back to wrapping the (a given) registry, and justprovide some convenience methods?

@trustin Since we can get the name information from CollectorRegistry.metricFamilySamples maybe we should go back to wrapping the (a given) registry, and just provide some convenience methods?

SGTM. Sorry about all the ping-pong going on here. :sob:

I realized we still can't get the actual Collector out of CollectorRegistry

@jmostella If it's getting too rabbit-hole-ish we can just keep it simple and revisit in a follow-up PR.

Waiting for @kojilin 's approval or change request.

Thanks for the great job and your patience, @jmostella!

@jmostella Let me send a follow-up PR that improves PrometheusRegistry. Please stay tuned.

hmm maybe fixed label related thing may make things easier? Then we can pre-create metricAdapter so we don't need to allow customizable registry(not sure).

@kojilin I imagine it'd compromise the user-friendliness of the API since a user has to prepare all labels before constructing any services, right?

yeah, maybe fixed one is ok.

Hmm.. I'm not sure I understood your point. 😭 Example code?

ah maybe I misunderstood ur point, I just think let armeria side decide all labels maybe ok?  like current naming in test code.

I think a user decides that. He or she may use labels for something completely different. e.g. O/S.

@trustin No problem! I may try to submit a PR to the Prometheus guys to add features to the registry.

authors: anuraaga jmostella kojilin trustin


text:
Use strict versions for SFL4J and Logback

Motivation:
There was an issue with slf4j 2.0 being used by a transitive dependency. Due to Gradle's resolution strategy, we didn't get any notices that a higher version was picked when our declaration.
I propose to use strict for SLF4J and Logback to avoid unexpected resolution. If a strict version is declared in dependencies.toml, it overrides non-strict versions. If two strict versions are detected, it fails to resolve dependencies. We need to resolve the conflicts by overriding Gradle resolutionStrategy.
Modifications:

Use strict version scheme for SLF4J and Logback
Fore Spring Boot 3 integrations to use SLF4J 2.x and Logback 1.4.x

Result:
Prevent unwanted versions through strict version control.

This doesn't prevent the use of a third party that uses Slf4j 2.x. For example, if we use cron-utils with 9.2.1, the build succeeds. Can we prevent that?

A strict version takes precedence over other versions. When I tested, SLF4J 1.7.x was picked when cron-utils with 9.2.1 was used.
$ ./gradlew :server:dependencies -q
...
+--- com.cronutils:cron-utils:9.2.1
|    \--- org.slf4j:slf4j-api:2.0.7 -> 1.7.36

Oops, what I meant was preventing from using the third-party library that uses the incompatible transitive dependency.
Let's assume that the cron-utils uses logger.atInfo().log.. API that is introduced after Slf4J 2.+.
If we force to use SLF4J 1.X and the logger.atInfo().log.. is invoked with SLF4J 1.x, NoSuchMethodError will be raised in runtime.
So what I was suggesting was printing or recording somewhere if a dependency resolution happens, so that we can check if there's an unexpected library was introduced. Let me think about this more if we have a better solution. 🤔

If we force to use SLF4J 1.X and the logger.atInfo().log.. is invoked with SLF4J 1.x, NoSuchMethodError will be raised in runtime.

I think it should be checked by test suites. If a third-party library uses an API that only exists in SLFJ 2.x, we can't use the library. Even if version conflicts are logged, it might be difficult to check if a library uses an incompatible API.

I think it should be checked by test suites.

Yeah, probably. One thing we have to keep in mind is that the test runtime classpath is different from the runtime classpath.
Anyway, we can also fix it later if we find any problem regarding the dependency conflict. So I'm okay with this change. 👍

I understood. It is non-trivial to fully control the dependencies without auto resolution.
failOnVersionConflict() is enabled in resolutionStrategy, I had no idea how to resolve all conflicts.
Speaking of tests, strictly version set to implemetation overrides the dependencies in test classpath since test elements extend api or implementation

authors: ikhoon minwoox

repo: line/centraldogma


text:
refactor: remove useless DenomMetadata key function

Make DenomMetadata substore only with DenomMetadataPrefix

Description

closes: #714
Motivation and context

How has this been tested?

Screenshots (if appropriate):
Checklist:

[x] I followed the contributing guidelines and code of conduct.
[ ] I have added a relevant changelog to CHANGELOG.md
[ ] I have added tests to cover my changes.
[ ] I have updated the documentation accordingly.
[ ] I have updated API documentation client/docs/swagger-ui/swagger.yaml

Changes in https://github.com/cosmos/cosmos-sdk/pull/9890/files x/bank/migrations/v043/keys.go does not reflected here. I'm not sure about this, is it okay not reflect this?

yeah, it's legacy migration. So we don't need it

repo: line/lbm-sdk


text:
Merge sync 202401

Summary
Sync to latest upstream #a9162b0

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you all sign our Contributor License Agreement before we can accept your contribution.1 out of 17 committers have signed the CLA.:white_check_mark: dkstyle:x: ross-u:x: slav-getov:x: emdash-ie:x: sokra:x: josephfrazier:x: Christian24:x: dkdk225:x: hex2dec:x: evenstensberg:x: chenxsan:x: WhyINeedToFillUsername:x: xiaoxiaojx:x: wheezyturbo:x: Aghassi:x: snitin315:x: burhanudayYou have signed the CLA already but the status is still pending? Let us recheck it.

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you all sign our Contributor License Agreement before we can accept your contribution.1 out of 17 committers have signed the CLA.:white_check_mark: dkstyle:x: ross-u:x: sokra:x: dkdk225:x: josephfrazier:x: slav-getov:x: chenxsan:x: evenstensberg:x: hex2dec:x: WhyINeedToFillUsername:x: wheezyturbo:x: xiaoxiaojx:x: burhanuday:x: emdash-ie:x: snitin315:x: Christian24:x: AghassiYou have signed the CLA already but the status is still pending? Let us recheck it.

authors: CLAassistant dkstyle


text:
Prepare for publish

This is the first PR which requires a review.
I would also ask for someone to skim the rest of the repository.
There are a few things I am aware of which need changing:

linebender/vello#531 needs backporting
We need our standard copyright headers

I started by looking at parts of the repo and making #5, #6, and #7.

authors: DJMcNab xStrom


text:
[draw_leaf] Don't write past the end of the draw_monoids buffer

The number of global invocations for draw_leaf can exceed the size of the draw_monoids buffer which gets conservatively set to the number of draw objects. Added an explicit bounds check to prevent the invalid write.
This is not an issue when targeting wgpu as the WGSL compiler emits implicit bounds checking. When targeting Metal, we disable implicit bounds checks as that requires an extra buffer binding containing buffer sizes.
This was caught by Xcode's Metal shader validation and resulted in visual artifacts in native rendering.

There is the concern that we're doing the same bounds check twice here when using wgpu
Not sure how to resolve it though - gating this check would be ridiculously noisy

I agree that I don't think the cost of the extra branch is important. I also agree with Raph's comment that I don't think the additional branch can be optimized away.
In the long term I think it's probably best to have the robustness transform turned on even if the extra metadata buffer binding is annoying when targeting Metal (when targeting Vulkan, the codegen uses the SPIR-V  OpArrayLength built-in). For now I'm going to move forward with the branch conditional here as it fixes the bug and satisfies shader validation but I'll file an issue about robustness in native backends and mention it in a comment that this needs work.

P.S.:
The robustness transform turns any unsized buffer access expression of the form buffer[index] into
buffer[min(index, arrayLength(buffer) - 1)]

When targeting Metal, arrayLength is implemented by storing buffer sizes in a special uniform (i.e. constant) buffer binding. Example output from Tint looks like this:
(*(buffer_ptr))[min(index, (((*(buffer_sizes_uniform)).buffer_size[0u][1u] / 4u) - 1u))]

When targeting SPIR-V you get the following (where %20 is the index and %19 = OpExtInstImport "GLSL.std.450"):
%21 = OpArrayLength %uint %buffer 0
%23 = OpISub %uint %21 %uint_1
%18 = OpExtInst %uint %19 UMin %20 %23
%25 = OpAccessChain %_ptr_StorageBuffer_uint %buffer %uint_0 %18

Regardless of whether the access is gated with a branch conditional, or with an explicitly authored call to min, if the array size comes from a uniform binding other than arrayLength it's safe to assume that it won't get optimized away.
Interestingly, spirv-opt doesn't seem to eliminate an extra call to min when I actually gate the write on the result of arrayLength, such that the following WGSL
buffer[min(index, arrayLength(&buffer) - 1)] = 5;

gets reduced by spirv-opt to the following (where %36 corresponds to index):
%37 = OpArrayLength %uint %buffer 0
%38 = OpISub %uint %37 %uint_1
%39 = OpExtInst %uint %19 UMin %36 %38
%42 = OpExtInst %uint %19 UMin %39 %38
%43 = OpAccessChain %_ptr_StorageBuffer_uint %buffer %uint_0 %42
      OpStore %43 %uint_5

in which UMin is chained with the same identical upper bound (%38). It could be possible that the driver compiler could eliminate the additional UMin but I haven't looked at an ISA to confirm this (though it would be interesting to do so).

I decided to fix several other shader validation errors by clamping the buffer indices by the object counts stored in config. I actually think that these additional checks are useful even when the robustness transform is enabled during WGSL translation (such as when running on wgpu or Dawn), because the implicit checks are against the buffer object sizes which won't catch overruns that can occur if the buffer bindings are sub-allocations from a buffer object.
Vello doesn't run into this since the wgpu renderer allocates a new buffer object for each binding, whereas Skia sub-allocates from a buffer object pool (though I was triggering shader validation errors because the buffers in my test run happened to be large enough to span an entire object).
There could be more invalid accesses that I missed. These two changes fix several visual artifacts and I haven't run into any new validation errors (yet).

authors: DJMcNab armansito

repo: linebender/vello


text:
fix #332 set filter

closes #332
prerequisites:

[x] branch is up-to-date with the branch to be merged with, i.e. develop
[x] build is successful
[x] code is cleaned up and formatted
[ ] tested with Firefox 52, Firefox 57+, Chrome 64+, MS Edge 16+

Summary

Thanks for the lightning fast implementation! That looks already good. Just three things:

Could you add a bit padding/spacing between the last radio button and the missing values checkbox?
Would be possible to make the some use case the default use case? Or if that is not possible, provide column configuration option to define/pre-select the mode in advance?
I've found a bug...

Steps to reproduce

Filter Set column by a single category and select some
Confirm filter
Click on a different filter in the column histogram or side panel

Observed behavior

With a click on the histogram the mode is reset to every even though some was selected in the first place.
Expected behavior
The mode should be fixed when filtering categories using the histogram.

Could you add a bit padding/spacing between the last radio button and the missing values checkbox?

Would be possible to make the some use case the default use case? Or if that is not possible, provide column configuration option to define/pre-select the mode in advance?

I've found a bug...

done

authors: sgratzl thinkh

repo: lineupjs/lineupjs


text:
Feature Request - Support tabs in hashrocket alignment

The first version of the hashrocket alignment feature only supported space based indentation.
Need to add support for tab-based indentation.

Won't do.  Puppet lint syntax is two space indentation

repo: lingua-pupuli/puppet-editor-services


text:
Update format validator to permit vhd and vhdx, update conversion logic to treat .vhd files as qemu-img vpc type

Referencing this issue, this correction enables output to legacy .vhd and the new(er?) .vhdx formats.
Changes were tested by building two VM images: One adopting .vhd and the other .vhdx.  Both images were bootable under Hyper-V as well as an ESXi 6.5 box (after converting to VMDK and importiing with ESX' CLI)

I am closing this pull request in favor of #50.
Thank you for your contribution !

authors: Adphi vsysio-bgould


text:
Add blacklist for query parameters

Add a configurable blacklist for query parameters. This stops these query parameters from showing up in NettyRequest.getArgs().

Codecov Report

Merging #748 into master will decrease coverage by 0.03%.
The diff coverage is 93.75%.

@@             Coverage Diff              @@
##             master     #748      +/-   ##
============================================
- Coverage     65.78%   65.74%   -0.04%
+ Complexity     3861     3860       -1
============================================
  Files           334      334
  Lines         25636    25642       +6
  Branches       3203     3204       +1
============================================
- Hits          16864    16858       -6
- Misses         7880     7890      +10
- Partials        892      894       +2

Impacted Files
Coverage Δ
Complexity Δ

...a/com.github.ambry.rest/NettyMessageProcessor.java
74.39% <100%> (+0.15%)
33 <0> (ø)
:arrow_down:

...a/com.github.ambry.rest/NettyMultipartRequest.java
87.91% <100%> (ø)
21 <0> (ø)
:arrow_down:

...main/java/com.github.ambry/config/NettyConfig.java
100% <100%> (ø)
1 <0> (ø)
:arrow_down:

.../main/java/com.github.ambry.rest/NettyRequest.java
94.67% <90%> (+0.06%)
78 <0> (+1)
:arrow_up:

...github.ambry.rest/AsyncRequestResponseHandler.java
88.52% <0%> (-2.3%)
23% <0%> (ø)

...b.ambry.network/BlockingChannelConnectionPool.java
64.03% <0%> (-2.2%)
8% <0%> (ø)

.../main/java/com.github.ambry.store/HardDeleter.java
81.93% <0%> (-0.65%)
42% <0%> (-1%)

...in/java/com.github.ambry.store/BlobStoreStats.java
85.16% <0%> (+0.47%)
92% <0%> (ø)
:arrow_down:

Continue to review full report at Codecov.

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

@pnarayanan fixed

authors: cgtz codecov-io

repo: linkedin/ambry


text:
Update Dockerfile to point to current nginx.conf file

I discovered that the Docker build fails from following the Azure quickstart guide. The error stems from incorrect nginx.conf path:

I verified that the docker build works correctly after the fix.

Hello @donegjookim, thanks for fixing this. This error was not caught earlier because docker image publishing was only tested on windows.
I spent some time test this image on linux and observed one more fix is required, otherwise when you perform docker run with build image, you will experience error /bin/sh: 1: ./start.sh: Permission denied
Would you mind to include this as part of PR? Its one line change, adding following before line 29
RUN ["chmod", "+x", "./start.sh"]

authors: blrchen donegjookim

repo: linkedin/feathr


text:
How to use cassandra as index storage and index recovery.

First of all, thank for sharing this amazing project.
I am having issues though with the settings of the cassandra as a index storage and recovery.
It seems to me that the interface for cassandra storage has not been implemented.
Am I wrong ?
Thanks in advance.

You're right.
We did some internal testing with cassandra but there isn't an appropriate implementation right now.

Thanks for the info.
Do you have any experience about your internal testing to share ? Pros and cons you have seen during the testing period ?
I was thinking to implement it, but I wanted to know first the corner cases if any, and if you guys already hit a wall with that or not.

authors: adrnai silenteh

repo: linkedin/indextank-engine


text:
[LI-HOTFIX] Log lastCaughtUpTime on ISR shrinkage

TICKET = N/A
LI_DESCRIPTION = This is for better observability on URPs for troubleshooting.
EXIT_CRITERIA = When upstream also logs similar info.

Also raised an upstream PR
https://github.com/apache/kafka/pull/13187

repo: linkedin/kafka


text:
Reduce the table level broker metrics emitted

Change RESOURCE_MISSING_EXCEPTIONS to a global meter so that random table name does not create a new metric
First check if any resource gets hit, so that random table name does not create a new metric
If multiple tables might be hit (hybrid case), use raw table name for the metrics
If only one table can be hit, use table name with type for the metrics

By doing this, metrics for a single table/resource will not split into multiple set of metrics
e.g. For offline use case, metircs for tableName and tableName_OFFLINE should be the same set of metrics

Codecov Report

Merging #1571 into master will decrease coverage by 18.99%.
The diff coverage is 81.15%.

@@            Coverage Diff            @@
##           master    #1571     +/-   ##
=========================================
- Coverage   68.09%   49.09%    -19%
=========================================
  Files         818      818
  Lines       39542    39552     +10
  Branches     5182     5186      +4
=========================================
- Hits        26926    19418   -7508
- Misses      10860    18452   +7592
+ Partials     1756     1682     -74

Impacted Files
Coverage Δ

...com/linkedin/pinot/common/metrics/BrokerMeter.java
100% <100%> (ø)
:arrow_up:

...ot/broker/requesthandler/BrokerRequestHandler.java
84.78% <80%> (-1.55%)
:arrow_down:

...n/pinot/core/query/reduce/BrokerReduceService.java
82.92% <80%> (-4.81%)
:arrow_down:

.../broker/routing/HelixExternalViewBasedRouting.java
89.89% <84.61%> (ø)
:arrow_up:

...core/query/planner/SequentialQueryPlannerImpl.java
0% <0%> (-100%)
:arrow_down:

...core/io/reader/impl/v2/BitUnpackResultWrapper.java
0% <0%> (-100%)
:arrow_down:

...aggregation/function/MaxMVAggregationFunction.java
0% <0%> (-100%)
:arrow_down:

...harding/ReplicaGroupSegmentAssignmentStrategy.java
0% <0%> (-100%)
:arrow_down:

...linkedin/pinot/server/api/resources/ErrorInfo.java
0% <0%> (-100%)
:arrow_down:

...aggregation/function/MinMVAggregationFunction.java
0% <0%> (-100%)
:arrow_down:

... and 403 more

Continue to review full report at Codecov.

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

@mayankshriv Currently went through some local manual tests. All queries work as expected, will check the metrics when deployed.

authors: Jackie-Jiang codecov-io

repo: linkedin/pinot


text:
Fix incorrect read of history on restart.

On restart, we read the existing file in the disk, and end up setting _isFull to false, and the cursor to 0
effectively dropping the history so far.
Fixed and added a unit test

Codecov Report

Merging #1850 into master will decrease coverage by <.01%.
The diff coverage is 14.28%.

@@            Coverage Diff             @@
##           master    #1850      +/-   ##
==========================================
- Coverage   69.01%   69.01%   -0.01%
==========================================
  Files         842      842
  Lines       39885    39890       +5
  Branches     5235     5236       +1
==========================================
+ Hits        27528    27529       +1
- Misses      10529    10538       +9
+ Partials     1828     1823       -5

Impacted Files
Coverage Δ

...ore/realtime/impl/RealtimeSegmentStatsHistory.java
84% <14.28%> (-4.34%)
:arrow_down:

.../impl/dictionary/FloatOnHeapMutableDictionary.java
82.22% <0%> (-6.67%)
:arrow_down:

.../impl/dictionary/LongOffHeapMutableDictionary.java
87.27% <0%> (-5.46%)
:arrow_down:

...mpl/dictionary/DoubleOffHeapMutableDictionary.java
72.72% <0%> (-3.64%)
:arrow_down:

...not/broker/broker/helix/ClusterChangeMediator.java
62.71% <0%> (-3.39%)
:arrow_down:

...manager/realtime/HLRealtimeSegmentDataManager.java
75% <0%> (-2.66%)
:arrow_down:

...om/linkedin/pinot/transport/netty/NettyServer.java
81.05% <0%> (-2.11%)
:arrow_down:

...regation/function/customobject/QuantileDigest.java
49.14% <0%> (-0.43%)
:arrow_down:

.../pinot/core/realtime/impl/RealtimeSegmentImpl.java
65.83% <0%> (-0.28%)
:arrow_down:

.../filter/predicate/InPredicateEvaluatorFactory.java
78.35% <0%> (ø)
:arrow_up:

... and 13 more

Continue to review full report at Codecov.

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

authors: codecov-io mcvsubbu


text:
Adding mkdir to PinotFS

In order to support a move in pluggable storage during segment upload, we want to configure baseDataDirs with different schemes. Therefore, we need FileUploadPathProvider, which creates the base data directory, to use PinotFS for making a directory.

Codecov Report

Merging #3112 into master will decrease coverage by 24.08%.
The diff coverage is 0%.

@@              Coverage Diff              @@
##             master    #3112       +/-   ##
=============================================
- Coverage     70.07%   45.99%   -24.09%
=============================================
  Files           936      936
  Lines         43523    43529        +6
  Branches       5904     5904
=============================================
- Hits          30500    20019    -10481
- Misses        10969    21837    +10868
+ Partials       2054     1673      -381

Impacted Files
Coverage Δ
Complexity Δ

...in/java/com/linkedin/pinot/filesystem/PinotFS.java
0% <ø> (-100%)
0 <0> (ø)

...a/com/linkedin/pinot/filesystem/HadoopPinotFS.java
0% <0%> (ø)
0 <0> (ø)
:arrow_down:

...va/com/linkedin/pinot/filesystem/AzurePinotFS.java
0% <0%> (-23.41%)
0 <0> (-4)

...va/com/linkedin/pinot/filesystem/LocalPinotFS.java
0% <0%> (-80.49%)
0 <0> (ø)

...edin/pinot/broker/queryquota/QueryQuotaConfig.java
0% <0%> (-100%)
0% <0%> (ø)

...aggregation/function/AvgMVAggregationFunction.java
0% <0%> (-100%)
0% <0%> (ø)

.../com/linkedin/pinot/transport/common/NoneType.java
0% <0%> (-100%)
0% <0%> (ø)

...linkedin/pinot/common/config/OfflineTagConfig.java
0% <0%> (-100%)
0% <0%> (ø)

...rm/transformer/datetime/SDFToEpochTransformer.java
0% <0%> (-100%)
0% <0%> (ø)

...ore/segment/memory/PinotNonNativeOrderLBuffer.java
0% <0%> (-100%)
0% <0%> (ø)

... and 489 more

Continue to review full report at Codecov.

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

authors: codecov-io jenniferdai


text:
Any plans to support 0x v2?

Hi, Any plans to support 0x v2?

@alejoloaiza I started porting the CLI parts over to v2: https://github.com/linki/0x-go/pull/19

Slowly progressing. I removed the contract related code of the v1 version, e.g. filling orders, when merging the v2 branch. Now, the project is merely an API client to a relayer which can sign and validate orders.

authors: alejoloaiza linki


text:
🛑 Open Source Hosting is down

In 8fa91ec, Open Source Hosting ($OSSERVER) was down:

HTTP code: 0
Response time: 0 ms

Open Source Hosting is down because of a server problem, as we do not have anyone using it, we WILL NOT fix it for now, but in the near future, we will.
O Open Source Hosting está fora do ar por causa de um problema no servidor, como não temos ninguém usando ele, NÃO VAMOS consertar por enquanto, mas num futuro próximo o faremos.

Resolved: Open Source Hosting is back up in c98c3c0 after 52 minutes.

repo: linkwaveconnect/status


text:
富文本编辑器边距

你好，请问富文本编辑器边距在哪个文件里面调整，找了半天没有找到，目前的问题是，富文本编辑器插入图片，然后发现两边都自动留了边距，我想把边距设置为0.
thx

你好，前端不太熟悉，只是简单地引入这个组件 https://github.com/tinymce/tinymce-vue

authors: linlinjava mengzhihoing

repo: linlinjava/litemall


text:
feat: [M3-8178] - Add SelectableTableRow Story

Description 📝
Add SelectableTableRow Story to Storybook
Changes  🔄

Add SelectableTableRow Story

Target release date 🗓
N/A
How to test 🧪
Verification steps

Run yarn storybook to test locally

As an Author I have considered 🤔
Check all that apply

[ ] 👀 Doing a self review
[x] ❔ Our contribution guidelines
[x] 🤏 Splitting feature into small PRs
[x] ➕ Adding a changeset
[ ] 🧪 Providing/Improving test coverage
[ ] 🔐 Removing all sensitive information from the code and PR description
[ ] 🚩 Using a feature flag to protect the release
[ ] 👣 Providing comprehensive reproduction steps
[ ] 📑 Providing or updating our documentation
[ ] 🕛 Scheduling a pair reviewing session
[ ] 📱 Providing mobile support
[ ] ♿  Providing accessibility support

great work! 🎉
Here or in another ticket, could we add unit tests for the SelectableTableRow component?

Thanks, @coliu-akamai 🙂.
We will have another ticket for adding unit test cases for this component.

repo: linode/manager


text:
Add create linode page skeleton

Also rips out most of the old code for this flow, and some other unused components. Also makes the card+tabs styles from the details page generic.
Closes #175.

Coverage increased (+10.7%) to 90.933% when pulling 43eb8bd021052f8e207b748e6731f56581a7f8fa on feature/create-page into 5eff3fc93f5416eee5f33a6d10ecdd73ccaf85d1 on master.

SirCmpwn sets the record for most test coverage added by one pull request!

Holy test coverage, Batman!

Cool. Looks good.

Coverage increased (+13.0%) to 93.264% when pulling d8e0984da141f5a45107c56c3278f6b407f95922 on feature/create-page into 5eff3fc93f5416eee5f33a6d10ecdd73ccaf85d1 on master.

Ready for merge?

Yep.

Thanks!

authors: SirCmpwn coveralls eatonphil


text:
small fix for stackscripts e2e

Description
This change was needed because of some recent ui changes to this page
What does this PR do?
just a small stackscripts e2e test update
How to test

yarn up in one terminal
yarn cy:e2e -s ./cypress/integration/stackscripts/stackscripts.spec.ts in another
Result should be ✔  All specs passed!

Make sure your .env contains:
REACT_APP_LOGIN_ROOT
REACT_APP_API_ROOT
REACT_APP_APP_ROOT
REACT_APP_LAUNCH_DARKLY_ID
REACT_APP_CLIENT_ID
MANAGER_OAUTH

@DevDW @johnwcallahan which accounts are you using?

@DevDW @johnwcallahan which accounts are you using?

I observed it when running it under my personal account

Okay, that should be fixed now. The issue was with accounts with multiple account stackscripts. Even though only one action menu was open, the elements from all of the closed action menus are still visible.

authors: DevDW ndukatz


text:
M3-5514: Dynamically-shown warning for raw disks in Capture Image tab

Description
Replace the static Linode Images cannot be created if you are using raw disks or disks that have been formatted using custom filesystems. text on the Capture Image tab in the Image Create flow with a warning notice that displays only if the chosen disk is a raw disk. If the warning notice is being displayed, the estimated price also does not display.
How to test
From the "Capture Image" tab in the Image Create flow, choose a Linode that you have a raw disk added to. Then select that raw disk. The warning notice should display. If you choose a different, non-raw disk, or choose a different Linode, the warning should disappear.

this was accidentally closed


text:
[regexp] Disable notification

Hi,
is there a way to disable notification on activation? For main branch there is notify_user_on_activate but that looks like not working with the new branch.
Thanks!

Not yet but that's easy to add, will do it this weekend. Thanks for the feedback! Let me know anything else you think can be improved. Always nice.

Thank you!
A handy addition would be to have the notification only when the venv changes. So if I open a file I see the notification and if I open another file using the same venv I do not see it. Don't know if it's feasible.

I added the config option notify_user_on_venv_activation that can be set to false to avoid the message. :)
In theory its possible to keep a list of previous opened venvs and just notify if its a new venv, but not sure if its worth the extra code. Also I suspect some people will probably report it as a bug if it only notifies sometimes and they didnt read about all the options.... :)

Just tested. Thank you very much :D

authors: linux-cultist steakhutzeee


text:
rename clean to remove

clean is unclear and should be changed to remove to be consistent with LVM

completed.

repo: linux-system-roles/snapshot


text:
markdown rendering of talk info

pretalx allows markdown. the info for talks is not rendered properly.

e.g.: https://pretalx.linuxtage.at/glt19/talk/XJJKWF/

Implement one of these libs:
https://stackoverflow.com/questions/31656836/markdown-support-in-android-textview

repo: linuxtage/glt-companion


text:
可以出一个整合包吗？

这个东西非常好啊！希望能解说整个视频！最好出个整合包！一键启动

感谢反馈，这个项目会持续迭代，之后版本会出整合包的，敬请期待✌

感谢反馈，这个项目会持续迭代，之后版本会出整合包的，敬请期待✌

我已经部署好了，目前在使用过程中，就是视频剪辑分片太多，做解说的话，就很麻烦，还没试能不能直接一整个长视频来进行解说！希望可以！或者可以批量上传分片视频来处理和整个视频来处理，这样的话我觉得应该没啥大问题了，目前操作应该会很繁琐！

File "D:\ProgramData\anaconda3\lib\site-packages\streamlit\runtime\scriptrunner\script_runner.py", line 584, in _run_script
exec(code, module.dict)
File "E:\NetworkTools\AINarratoAI-main\webui\Main.py", line 301, in
script = llm.gemini_video2json(
File "E:\NetworkTools\AINarratoAI-main\app\services\llm.py", line 449, in gemini_video2json
raise TimeoutError("上传视频至 Google cloud 失败, 请检查 VPN 配置")
出现了这个问题，我看VPN很正常啊！不知道是什么情况？

我已经部署好了，目前在使用过程中，就是视频剪辑分片太多，做解说的话，就很麻烦，还没试能不能直接一整个长视频来进行解说！希望可以！或者可以批量上传分片视频来处理和整个视频来处理，这样的话我觉得应该没啥大问题了，目前操作应该会很繁琐！

Gemini 支持视频长度最大1小时，来源：https://ai.google.dev/gemini-api/docs/models/gemini?hl=zh-cn
针对常见的40分钟电视剧，需要配合上剧情，效果会好一些

 File "D:\ProgramData\anaconda3\lib\site-packages\streamlit\runtime\scriptrunner\script_runner.py", line 584, in _run_script exec(code, module.dict) File "E:\NetworkTools\AINarratoAI-main\webui\Main.py", line 301, in script = llm.gemini_video2json( File "E:\NetworkTools\AINarratoAI-main\app\services\llm.py", line 449, in gemini_video2json raise TimeoutError("上传视频至 Google cloud 失败, 请检查 VPN 配置") 出现了这个问题，我看VPN很正常啊！不知道是什么情况？

检查一下，gemini api key 是否配置正确呢？

repo: linyqh/NarratoAI


text:
sftp dependency

meshblock fetching is done over sftp using the python paramiko library that only works on newer linux installations

paramiko > 1.11-1 is not currently available on trusty, where this is to be deployed so have had to revert to pexpect sftp script which is less secure but more reliable. (twisted.conch and subprocess options also proved to be problematic)


text:
Run production bootstrap before cdk diff

Bug Description
The cdk diff command in our deploy pipeline runs before bootstrapping CDK, resulting in warnings like the following:

[+] Unknown Rules: {"CheckBootstrapVersion":{"Assertions":[{"Assert":{"Fn::Not":[{"Fn::Contains":[["1","2","3"],{"Ref":"BootstrapVersion"}]}]},"AssertDescription":"CDK bootstrap stack version 4 required. Please run 'cdk bootstrap' with a recent version of the CDK CLI."}]}}

How to Reproduce

Push a release branch with a new major CDK version

What did you expect to happen? cdk bootstrap should run before cdk diff to avoid any misleading diff output.
What actually happened? See warning above.
Software Context
Environment: Production
Relevant software versions:

AWS CLI: aws-cli/1.19.72 Python/3.9.5 Linux/5.10.39-1-lts botocore/1.20.72
Poetry: Poetry version 1.1.6
CDK: 1.106.0 (build fe32f1c)

Additional context

This was not enough to fix CheckBootstrapVersion - reopening.

repo: linz/geostore


text:
支持rtmp协议吗？要做直播啊。

一行代码切换播放引擎能说的详细点吗？

参考demo的customMediaPlayerAcrtivity，一看就明白了，可以做直播，ui不一样肯定需要自定义的

authors: linxizheng lipangit

repo: lipangit/JiaoZiVideoPlayer


text:
java.lang.IllegalArgumentException: Receiver not registered: cn.jzvd.JZVideoPlayerStandard$1@ea503b8

java.lang.RuntimeException: Error receiving broadcast Intent { act=android.intent.action.BATTERY_CHANGED flg=0x60000010 (has extras) } in cn.jzvd.JZVideoPlayerStandard$1@ea503b8
at android.app.LoadedApk$ReceiverDispatcher$Args.run(LoadedApk.java:974)
at android.os.Handler.handleCallback(Handler.java:739)
at android.os.Handler.dispatchMessage(Handler.java:95)
at android.os.Looper.loop(Looper.java:179)
at android.app.ActivityThread.main(ActivityThread.java:5769)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:784)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:674)
Caused by: java.lang.IllegalArgumentException: Receiver not registered: cn.jzvd.JZVideoPlayerStandard$1@ea503b8
at android.app.LoadedApk.forgetReceiverDispatcher(LoadedApk.java:821)
at android.app.ContextImpl.unregisterReceiver(ContextImpl.java:1230)
at android.content.ContextWrapper.unregisterReceiver(ContextWrapper.java:587)
at cn.jzvd.JZVideoPlayerStandard$1.onReceive(JZVideoPlayerStandard.java:80)
at android.app.LoadedApk$ReceiverDispatcher$Args.run(LoadedApk.java:957)
... 7 more
java.lang.IllegalArgumentException: Receiver not registered: cn.jzvd.JZVideoPlayerStandard$1@ea503b8
at android.app.LoadedApk.forgetReceiverDispatcher(LoadedApk.java:821)
at android.app.ContextImpl.unregisterReceiver(ContextImpl.java:1230)
at android.content.ContextWrapper.unregisterReceiver(ContextWrapper.java:587)
at cn.jzvd.JZVideoPlayerStandard$1.onReceive(JZVideoPlayerStandard.java:80)
at android.app.LoadedApk$ReceiverDispatcher$Args.run(LoadedApk.java:957)
at android.os.Handler.handleCallback(Handler.java:739)
at android.os.Handler.dispatchMessage(Handler.java:95)
at android.os.Looper.loop(Looper.java:179)
at android.app.ActivityThread.main(ActivityThread.java:5769)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:784)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:674)

用的什么版本？ 新版不会频繁取得电量，然后这个log是什么现象的，ui上显示的什么

我是前天在你github上下载下来的源码的，然后替换源码的，这个log是友盟收集的，我的版本已经发出去了

保持关注先

我也遇到了这个问题，希望能解决下

同遇到这个问题, 次数还不少

已经修复

今天看到线上也报了这个crash，来github上一看确实存在这个问题（其它issue还有： #1809 #1515 ，但这两个issue都被挂起了）
@lipangit 看到你19天前的回复说是已经修复了，但我并没有找到相关的commit，最新的源码上也没有这方面的修改，可能跟我理解的方式不一样吧。下面说一下我的思路，仅供参考：
看了下日志，再对照源码查了下，感觉问题应该是出在注销broadcastReceiver上
//在老版本上，所在的类名为：JZVideoPlayerStandard
//6.3版重构后，目前最新代码类名为：JzvdStd
    private BroadcastReceiver battertReceiver = new BroadcastReceiver() {
        public void onReceive(Context context, Intent intent) {
            String action = intent.getAction();
            if (Intent.ACTION_BATTERY_CHANGED.equals(action)) {
                int level = intent.getIntExtra("level", 0);
                int scale = intent.getIntExtra("scale", 100);
                int percent = level * 100 / scale;
                LAST_GET_BATTERYLEVEL_PERCENT = percent;
                setBatteryLevel();
                getContext().unregisterReceiver(battertReceiver);
            }
        }
    };

问题原因推测：
Intent.ACTION_BATTERY_CHANGED是系统发出的粘性广播，所以我们一开始registerReceiver后马上就能收到当前电量信息，get到电量信息后再注销广播接收器，一般情况下没有问题。
但如果注册receiver到注销receiver期间电量发生了变化导致receiver.onReceive会被执行不止1次，第2次执行unregisterReceiver时将会报这个错
PS: 这大概也是线上偶尔crash但数量非常少的原因吧
我们假设有以下这种情况：

注册广播接收器
获得粘性广播里的值，在LoadedApk$ReceiverDispatcher.performReceive(...)方法中将执行receiver.onReceive(context, intent)的一个Runnable给post到了名为mActivityThread的Handler中
在等待这个runnable在主线程中执行期间，设备电量发生变化，再发送了一个系统粘性广播（Intent.ACTION_BATTERY_CHANGED）
再次出发步骤2
receiver.onRecive(context, intent)方法执行第1次时，调用了getContext().unregisterReceiver(battertReceiver);
receiver.onRecive(context, intent)方法执行第2次时，再次调用getContext().unregisterReceiver(battertReceiver);将会报错

修复方式：

作者可以通过在battertReceiver中添加成员变量，在onReceive中判断battertReceiver是否已注销
简单粗暴一点就是给注销battertReceiver的那行代码加上try-catch

在作者修复问题发布新版本之前我们使用者可用的临时修复方式：
由于battertReceiver是private的，我们不方便给它赋值（当然反射也是可以的），可以按如下步骤解决：

创建一个JZVideoPlayerStandard的子类
在子类中重新定义一个BroadcastReceiver，将battertReceiver的代码copy过来改一下
重写setSystemTimeAndBattery()方法，这个方法里所用到的变量及方法都是public的，可以直接copy到子类中并用子类中的定义的BroadcastReceiver替换原来的battertReceiver
在使用到视频播放器的地方使用这个子类代替JZVideoPlayerStandard

最后，非常感谢作者提供这么棒的开源库给我们使用，感恩作者的付出！
以上！

LAST_GET_BATTERYLEVEL_PERCENT 之前没有这个变量，每次setup都会取得一次电量，修复之后30秒取得一次电量，并缓存起来，30秒之内不取得电量直接用这个变量。

2.你说的两个解决办法都能解决问题，我个人更倾向于第二个，try catch之后亲测多次调用getContext().unregisterReceiver(battertReceiver);不会报错。
如果还有问题随时沟通

authors: lipangit liu1070832898 luckybilly mhaiyue msrlin


text:
你好，请教下，为什么我的rtsp流不能用？

rtsp://admin:admin@192.168.2.180:10554/udp/av0_0 vlc中是能正常播放的，但是在jz中无法播放

切换播放器引擎试试，参考demo的customMediaPlayer

貌似是解码器的问题发自我的iPhone------------------ 原始邮件 ------------------发件人: Nathen  notifications@github.com发送时间: 2018年6月6日 16:41收件人: lipangit/JiaoZiVideoPlayer JiaoZiVideoPlayer@noreply.github.com抄送: wjy591416 wujianye88@gmail.com, Author author@noreply.github.com主题: 回复：[lipangit/JiaoZiVideoPlayer] 你好，请教下，为什么我的rtsp流不能用？ (#1917)切换播放器引擎试试，参考demo的customMediaPlayer
—You are receiving this because you authored the thread.Reply to this email directly, view it on GitHub, or mute the thread.
{"@context":"http://schema.org","@type":"EmailMessage","potentialAction":{"@type":"ViewAction","target":"https://github.com/lipangit/JiaoZiVideoPlayer/issues/1917#issuecomment-394990610","url":"https://github.com/lipangit/JiaoZiVideoPlayer/issues/1917#issuecomment-394990610","name":"View Issue"},"description":"View this Issue on GitHub","publisher":{"@type":"Organization","name":"GitHub","url":"https://github.com"}}
{"api_version":"1.0","publisher":{"api_key":"05dde50f1d1a384dd78767c55493e4bb","name":"GitHub"},"entity":{"external_key":"github/lipangit/JiaoZiVideoPlayer","title":"lipangit/JiaoZiVideoPlayer","subtitle":"GitHub repository","main_image_url":"https://assets-cdn.github.com/images/email/message_cards/header.png","avatar_image_url":"https://assets-cdn.github.com/images/email/message_cards/avatar.png","action":{"name":"Open in GitHub","url":"https://github.com/lipangit/JiaoZiVideoPlayer"}},"updates":{"snippets":[{"icon":"PERSON","message":"@lipangit in #1917: 切换播放器引擎试试，参考demo的customMediaPlayer"}],"action":{"name":"View Issue","url":"https://github.com/lipangit/JiaoZiVideoPlayer/issues/1917#issuecomment-394990610"}}}
{
"@type": "MessageCard",
"@context": "http://schema.org/extensions",
"hideOriginalBody": "false",
"originator": "37567f93-e2a7-4e2a-ad37-a9160fc62647",
"title": "Re: [lipangit/JiaoZiVideoPlayer] 你好，请教下，为什么我的rtsp流不能用？ (#1917)",
"sections": [
{
"text": "",
"activityTitle": "Nathen",
"activityImage": "https://assets-cdn.github.com/images/email/message_cards/avatar.png",
"activitySubtitle": "@lipangit",
"facts": [
]
}
],
"potentialAction": [
{
"name": "Add a comment",
"@type": "ActionCard",
"inputs": [
{
"isMultiLine": true,
"@type": "TextInput",
"id": "IssueComment",
"isRequired": false
}
],
"actions": [
{
"name": "Comment",
"@type": "HttpPOST",
"target": "https://api.github.com",
"body": "{\n"commandName": "IssueComment",\n"repositoryFullName": "lipangit/JiaoZiVideoPlayer",\n"issueId": 1917,\n"IssueComment": "{{IssueComment.value}}"\n}"
}
]
},
{
"name": "Close issue",
"@type": "HttpPOST",
"target": "https://api.github.com",
"body": "{\n"commandName": "IssueClose",\n"repositoryFullName": "lipangit/JiaoZiVideoPlayer",\n"issueId": 1917\n}"
},
{
"targets": [
{
"os": "default",
"uri": "https://github.com/lipangit/JiaoZiVideoPlayer/issues/1917#issuecomment-394990610"
}
],
"@type": "OpenUri",
"name": "View on GitHub"
},
{
"name": "Unsubscribe",
"@type": "HttpPOST",
"target": "https://api.github.com",
"body": "{\n"commandName": "MuteNotification",\n"threadId": 341934181\n}"
}
],
"themeColor": "26292E"
}

请教，我切换成ijkplayer，ijkplayer也重新编译，支持我的rtsp流，但是一直卡在第一帧，无声音，这个需要从什么地方入手？

新建个项目，单纯的用你编译的ijkplayer，试试是不是有这个问题


text:
请问都有神马版本的啊

我现在工程里面直接导入导入不进去
Error:(44, 13) Failed to resolve: fm.jiecao:jiecaovideoplayer:4.6.5_preview
Show in FileShow in Project Structure dialog
是不是我的版本低啊》？

这里有所有的版本，稳定版本看readme

authors: lipangit qweawdqq

repo: lipangit/JieCaoVideoPlayer


text:
在RecyclerView 中使用 JCVideoPlayerStandard.startFullscreen

第一次点击没有问题 可以正常播放
java.lang.IllegalStateException
at android.media.MediaPlayer.isPlaying(Native Method)
at fm.jiecao.jcvideoplayer_lib.JCVideoPlayer$1.onAudioFocusChange(JCVideoPlayer.java:740)
at android.media.AudioManager$ServiceEventHandlerDelegate$1.handleMessage(AudioManager.java:2364)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:156)
at android.app.ActivityThread.main(ActivityThread.java:6524)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:941)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:831)
点击返回按钮以后在进行播放列表中的视频出现

用新版试试，这块try catch住了。
onAudioFocusChange 是手机上有其他声音播放的消息

v5.5.4还是有这个问题：
07-07 15:14:56.128 25183-25183/com.jsfengling.qipai W/System.err: java.lang.IllegalStateException
07-07 15:14:56.128 25183-25183/com.jsfengling.qipai W/System.err:     at android.media.MediaPlayer.isPlaying(Native Method)
07-07 15:14:56.128 25183-25183/com.jsfengling.qipai W/System.err:     at fm.jiecao.jcvideoplayer_lib.JCVideoPlayer$1.onAudioFocusChange(JCVideoPlayer.java:777)
07-07 15:14:56.128 25183-25183/com.jsfengling.qipai W/System.err:     at android.media.AudioManager$FocusEventHandlerDelegate$1.handleMessage(AudioManager.java:2018)
07-07 15:14:56.128 25183-25183/com.jsfengling.qipai W/System.err:     at android.os.Handler.dispatchMessage(Handler.java:102)
07-07 15:14:56.128 25183-25183/com.jsfengling.qipai W/System.err:     at android.os.Looper.loop(Looper.java:136)
07-07 15:14:56.128 25183-25183/com.jsfengling.qipai W/System.err:     at android.app.ActivityThread.main(ActivityThread.java:5052)
07-07 15:14:56.128 25183-25183/com.jsfengling.qipai W/System.err:     at java.lang.reflect.Method.invokeNative(Native Method)
07-07 15:14:56.128 25183-25183/com.jsfengling.qipai W/System.err:     at java.lang.reflect.Method.invoke(Method.java:515)
07-07 15:14:56.128 25183-25183/com.jsfengling.qipai W/System.err:     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:796)
07-07 15:14:56.128 25183-25183/com.jsfengling.qipai W/System.err:     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:612)
07-07 15:14:56.128 25183-25183/com.jsfengling.qipai W/System.err:     at dalvik.system.NativeStart.main(Native Method)

authors: CodeToxicant lipangit tangnuo


text:
求教，小米note在系统4.4.4下onError -38 - 0 [1118573208] 无法播放问题

06-06 18:01:43.356 31856-31856/com.xcar.activity I/JCResizeTextureView: onMeasure  [1119758608]
06-06 18:01:43.356 31856-31856/com.xcar.activity I/JCResizeTextureView: videoWidth = 0, videoHeight = 0
06-06 18:01:43.356 31856-31856/com.xcar.activity I/JCResizeTextureView: viewRotation = 0
06-06 18:01:43.356 31856-31856/com.xcar.activity I/JCResizeTextureView: onMeasure  [1119758608]
06-06 18:01:43.356 31856-31856/com.xcar.activity I/JCResizeTextureView: videoWidth = 0, videoHeight = 0
06-06 18:01:43.366 31856-31856/com.xcar.activity I/JCResizeTextureView: viewRotation = 0
06-06 18:01:43.366 31856-31856/com.xcar.activity I/JCResizeTextureView: onMeasure  [1119758608]
06-06 18:01:43.366 31856-31856/com.xcar.activity I/JCResizeTextureView: videoWidth = 0, videoHeight = 0
06-06 18:01:43.366 31856-31856/com.xcar.activity I/JCResizeTextureView: viewRotation = 0
06-06 18:01:43.366 31856-31856/com.xcar.activity I/JCResizeTextureView: onMeasure  [1119758608]
06-06 18:01:43.366 31856-31856/com.xcar.activity I/JCResizeTextureView: videoWidth = 0, videoHeight = 0
06-06 18:01:43.366 31856-31856/com.xcar.activity I/JCResizeTextureView: viewRotation = 0
06-06 18:01:43.366 31856-31856/com.xcar.activity I/JieCaoVideoPlayer: onSurfaceTextureAvailable [1119987416]
以下是错误
06-06 18:01:43.366 31856-32522/com.xcar.activity E/MediaPlayer-JNI: QCMediaPlayer mediaplayer NOT present
06-06 18:01:43.376 31856-32522/com.xcar.activity E/MediaPlayer: error (-38, 0)
06-06 18:01:43.376 31856-32522/com.xcar.activity W/MediaPlayer: setScreenOnWhilePlaying(true) is ineffective without a SurfaceHolder
06-06 18:01:43.376 31856-32522/com.xcar.activity E/MediaPlayer: prepareAsync called in state 0
06-06 18:01:43.376 31856-32522/com.xcar.activity W/System.err: java.lang.IllegalStateException
06-06 18:01:43.376 31856-32522/com.xcar.activity W/System.err:     at android.media.MediaPlayer.prepareAsync(Native Method)
06-06 18:01:43.376 31856-32522/com.xcar.activity W/System.err:     at fm.jiecao.jcvideoplayer_lib.JCMediaManager$MediaHandler.handleMessage(JCMediaManager.java:98)
06-06 18:01:43.376 31856-32522/com.xcar.activity W/System.err:     at android.os.Handler.dispatchMessage(Handler.java:102)
06-06 18:01:43.376 31856-32522/com.xcar.activity W/System.err:     at android.os.Looper.loop(Looper.java:136)
06-06 18:01:43.376 31856-32522/com.xcar.activity W/System.err:     at android.os.HandlerThread.run(HandlerThread.java:61)
06-06 18:01:43.376 31856-32522/com.xcar.activity E/MediaPlayer: Error (-38,0)
06-06 18:01:43.386 31856-31856/com.xcar.activity E/JieCaoVideoPlayer: onError -38 - 0 [1118573208]
小米note，系统4.4.4，在recyclerview中，无法播放

@lipangit  作者你好，我发现4.x的系统，播放m3u8都有问题，这是因为surfaceholder没有被及时创建的问题么

应该不是

我后来确定了一下，5.0系统以下的m3u8都播放不了，不单是小米的问题

系统的坑，超出老臣解决范围

authors: lipangit lvbell


text:
service account secret reflection

Description
This PR adds the reflection of ServiceAccount Secrets, we have to change the type to Opaque and to set a label with ServiceAccount name to easily retrieve them after

Hi @aleoli, thanks for this. May be is it worth to add this scenario to the existing test at https://github.com/liqotech/liqo/blob/master/test/unit/reflection/secrets_test.go ?

Pull Request Test Coverage Report for Build 337504151

6 of 7 (85.71%)  changed or added relevant lines in 1 file are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+0.09%) to 47.962%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

pkg/virtualKubelet/apiReflection/reflectors/outgoing/secrets.go
6
7
85.71%

Totals

Change from base Build 336363286:
0.09%

Covered Lines:
6342

Relevant Lines:
13223

💛  - Coveralls

authors: aleoli coveralls palexster

repo: liqotech/liqo


text:
#4227 fix for BOOLEAN with precision like BOOLEAN(1)

Impact

[ x] Bug fix (non-breaking change which fixes expected existing functionality)
[ ] Enhancement/New feature (adds functionality without impacting existing logic)
[ ] Breaking change (fix or feature that would cause existing functionality to change)

Description
Handle Boolean with precision for H2 database like
<column name="COLUMNNAME" type="BOOLEAN(1)">
    <constraints nullable="false"/>
</column>

Initial/Pre-Review Thoughts
Fix is isolated to h2
Questions I have:

None

Potential risks:

None

What could make the full review difficult:

Nothing

authors: nvoxland sfrevel

repo: liquibase/liquibase


text:
Implement help option

Overview
Overall and command specific

Work for this issue will begin begin on branch work-liquid-labs/cloudsite/129.

repo: liquid-labs/cloudsite


text:
the different between FetchMarkets method on public API and LoadMarkets

MAIL-FROM: Andrew Tollervey andrew.tollervey@hotmail.co.uk
Hi there,

Firstly, good work on your ccxt.net. It must have taken you a good while.

Quick question regarding - https://github.com/lisa3907/ccxt.net

Can you explain the different between FetchMarkets method on public API and LoadMarkets in your base library, and why I would use one over the other in various scenarios…

Many thanks,

Andrew
p.s. I added a possible fix to a bug - kraten publicApi.cs file:

added following within FetchMarkets method:

if ((_market.baseId.Substring(0, 1) == "X" || _market.baseId.Substring(0, 1) == "Z") && _market.baseId.Length > 3)

if ((_market.baseId.Substring(0, 1) == "X" || _market.baseId.Substring(0, 1) == "Z") &&  arket.baseId.Length > 3)

Bug FIX: reason Tezos (XTZ) coin

Can you explain the different between FetchMarkets method on public API and LoadMarkets in your base library, and why I would use one over the other in various scenarios…
'''
The difference between FetchMarkets and LoadMarkets is the difference between caching and downloading information directly. When LoadMarkets is called for the first time after execution, it calls FetchMarkets and stores it in the cache.

Good idea for doing caching.
I think I may have found another bug.
file: privateApi.cs
Namespace: CCXT.NET.Bithumb.Private
If you look at various methods with the following "IF" statement:
if (!nameResult1.success)
looking at it, I think the ! should be removed from the above line of code, otherwise whenever success == true, "Not supported yet" will always be returned.

I don’t understand your found bug. My coding style do not write like “if (!result)”.
What is line number in privateApi.cs.

You can close this as it appears my local code doesn't match your latest version so will update myside based upon latest code. Regards...


text:
你好  请问下我们的这个服务器如何加一层 https 服务

如题  因为我们这个服务器是直接使用 node 自己的 server  我想加一层 auth 之后再暴露到外面  想问下有木有办法
感谢

使用nginx做loadbalance

感谢回复  如果我想用 node 自己实现可以嘛   不借助 nginx 的前提下

不建议在应用server端做这个，毕竟如果你的业务增长，需要加server实例的，加一层loadbalance并非画蛇添足。而且nginx配置多个code-push-server实例，可以保证高可用性

感谢  明白了

authors: L-Jovi lisong

repo: lisong/code-push-server


text:
windows11通知栏bug

在通知栏切换歌曲，就会导致该窗口消失

失

我的根本就不显示


text:
🦺[Tech Debt]  Need to polish Firebase Custom Events

Goal
Describe the work to be done
Currently the clients write to Firebase using custom events.

Note Custom Events on the upper Left

Most events are simple strings embedded into the code.  Others pass valuable analytical data to us.
But, it's broken...😥
Will you propose a fix?
Definition of Done

[ ] Review the docs on Custom Events: https://firebase.google.com/docs/analytics/events?platform=web
[ ] Review a custom event with its current config:
[ ] Action N

cc: @lshpaner
@remihoh  will you assist Leon with understanding the Swift code?

Done in #139

repo: litecoin-foundation/litewallet-ios


text:
Unable to create the helper pod when specifying multiple TARGET_NODES for experiment.

BUG REPORT

What happened:
While running chaos experiment, for node cpu hog, sometimes it's not able to bring up some helper pod if I specify multiple TARGET_NODES in the comma separated format. In my case I have 4 nodes, and If I specify all 4 nodes, it's able to bring up 2 helper pods, then fails to bring up the other 2. And I see the error bellow inside de node-cpu-xxxx-xxx pod:
CPU hog failed, err: unable to create the helper pod, err: Post "https://10.96.0.1:443/api/v1/namespaces/default/pods\": read tcp 192.168.230.167:50174->10.96.0.1:443: read: connection reset by peer"
time="2023-03-09T15:43:36Z" level=info msg="Experiment Name: node-cpu-hog"
time="2023-03-09T15:43:36Z" level=info msg="[PreReq]: Getting the ENV for the node-cpu-hog experiment"
time="2023-03-09T15:43:38Z" level=info msg="[PreReq]: Updating the chaos result of node-cpu-hog experiment (SOT)"
time="2023-03-09T15:43:42Z" level=info msg="The application information is as follows" Node Label= Chaos Duration=60 Target Nodes="node-10-120-127-170,node-10-120-127-171,node-10-120-127-172,node-10-120-127-173" Node CPU Cores=1
time="2023-03-09T15:43:42Z" level=info msg="[Status]: Verify that the AUT (Application Under Test) is running (pre-chaos)"
time="2023-03-09T15:43:42Z" level=info msg="[Status]: No appLabels provided, skipping the application status checks"
time="2023-03-09T15:43:42Z" level=info msg="[Status]: Getting the status of target nodes"
time="2023-03-09T15:43:42Z" level=info msg="The Node status are as follows" Ready=true Node=node-10-120-127-170
time="2023-03-09T15:43:42Z" level=info msg="The Node status are as follows" Node=node-10-120-127-171 Ready=true
time="2023-03-09T15:43:42Z" level=info msg="The Node status are as follows" Node=node-10-120-127-172 Ready=true
time="2023-03-09T15:43:42Z" level=info msg="The Node status are as follows" Ready=true Node=node-10-120-127-173
time="2023-03-09T15:43:44Z" level=info msg="[Info]: The chaos tunables are:" Sequence=parallel Node CPU Cores=1 CPU Load=0 Node Affce Perc=0
time="2023-03-09T15:43:44Z" level=info msg="[Info]: Details of Nodes under chaos injection" No. Of Nodes=4 Node Names="[node-10-120-127-170 node-10-120-127-171 node-10-120-127-172 node-10-120-127-173]"
time="2023-03-09T15:43:44Z" level=info msg="[Info]: Details of Node under chaos injection" NodeName=node-10-120-127-170 NodeCPUcores=1
time="2023-03-09T15:43:44Z" level=info msg="[Info]: Details of Node under chaos injection" NodeName=node-10-120-127-171 NodeCPUcores=1
time="2023-03-09T15:43:44Z" level=info msg="[Info]: Details of Node under chaos injection" NodeName=node-10-120-127-172 NodeCPUcores=1
time="2023-03-09T15:43:45Z" level=error msg="[Error]: CPU hog failed, err: unable to create the helper pod, err: Post \"https://10.96.0.1:443/api/v1/namespaces/default/pods\": read tcp 192.168.230.167:50174->10.96.0.1:443: read: connection reset by peer"

And this fails the experiment at the end:
kubectl describe chaosresults.litmuschaos.io nginx-chaos-node-cpu-hog
Name:         nginx-chaos-node-cpu-hog
Namespace:    default
Labels:       app.kubernetes.io/component=experiment-job
              app.kubernetes.io/part-of=litmus
              app.kubernetes.io/version=2.14.0
              chaosUID=9c104680-26c3-49a6-801c-2ee3f9f96505
              controller-uid=f20544d9-b90a-4f08-9438-fbfbdf3c74e5
              job-name=node-cpu-hog-i0wu3z
              name=node-cpu-hog
Annotations:  <none>
API Version:  litmuschaos.io/v1alpha1
Kind:         ChaosResult
Metadata:
  Creation Timestamp:  2023-03-08T16:17:17Z
  Generation:          4
  Managed Fields:
    API Version:  litmuschaos.io/v1alpha1
    Fields Type:  FieldsV1
    fieldsV1:
      f:metadata:
        f:labels:
          .:
          f:app.kubernetes.io/component:
          f:app.kubernetes.io/part-of:
          f:app.kubernetes.io/version:
          f:chaosUID:
          f:controller-uid:
          f:job-name:
          f:name:
      f:spec:
        .:
        f:engine:
        f:experiment:
      f:status:
        .:
        f:experimentStatus:
        f:history:
    Manager:         experiments
    Operation:       Update
    Time:            2023-03-08T16:17:17Z
  Resource Version:  5704800
  UID:               d53abe6b-e176-4769-9b72-4af35cd7d2ee
Spec:
  Engine:      nginx-chaos
  Experiment:  node-cpu-hog
Status:
  Experiment Status:
    Fail Step:                 [chaos]: Failed inside the chaoslib, err: unable to create the helper pod, err: Post "https://10.96.0.1:443/api/v1/namespaces/default/pods": read tcp 192.168.230.167:50174->10.96.0.1:443: read: connection reset by peer
    Phase:                     Completed
    Probe Success Percentage:  0
    Verdict:                   Fail
  History:
    Failed Runs:   1
    Passed Runs:   1
    Stopped Runs:  0
Events:
  Type     Reason   Age    From                       Message
  ----     ------   ----   ----                       -------
  Normal   Awaited  3m26s  node-cpu-hog-i0wu3z-h7q5j  experiment: node-cpu-hog, Result: Awaited
  Warning  Fail     3m19s  node-cpu-hog-i0wu3z-h7q5j  experiment: node-cpu-hog, Result: Fail

What you expected to happen:
I expect all the helper pods able to be up and Running and the experiment successful.
How to reproduce it (as minimally and precisely as possible):

Install Litmus Operator

kubectl apply -f https://litmuschaos.github.io/litmus/litmus-operator-v1.13.8.yaml

Install the experiment engine

kubectl apply -f https://github.com/litmuschaos/chaos-charts/raw/v2.14.x/experiments/generic/node-cpu-hog/experiment.yaml

Install the rbac yaml file

 kubectl https://github.com/litmuschaos/chaos-charts/raw/v2.14.x/experiments/generic/node-cpu-hog/rbac.yaml

Apply the node-cpu-hog-engine.yaml file below

kubectl apply -f node-cpu-hog-engine.yaml

Anything else we need to know?:
Environment:
kubectl get nodes
NAME                  STATUS   ROLES       AGE   VERSION
node-10-120-127-170   Ready    edge,node   8d    v1.22.17
node-10-120-127-171   Ready    edge,node   8d    v1.22.17
node-10-120-127-172   Ready    node        8d    v1.22.17
node-10-120-127-173   Ready    node        8d    v1.22.17

node-cpu-hog-engine YAML File:
cat node-cpu-hog-engine.yaml
apiVersion: litmuschaos.io/v1alpha1
kind: ChaosEngine
metadata:
  name: nginx-chaos
  namespace: default
spec:
  # It can be active/stop
  engineState: 'active'
  #ex. values: ns1:name=percona,ns2:run=nginx
  auxiliaryAppInfo: ''
  chaosServiceAccount: node-cpu-hog-sa
  experiments:
    - name: node-cpu-hog
      spec:
        components:
          env:
            # set chaos duration (in sec) as desired
            - name: TOTAL_CHAOS_DURATION
              value: '60'

            ## ENTER THE NUMBER OF CORES OF CPU FOR CPU HOGGING
            ## OPTIONAL VALUE IN CASE OF EMPTY VALUE IT WILL TAKE NODE CPU CAPACITY
            - name: NODE_CPU_CORE
              value: '1'

            ## LOAD CPU WITH GIVEN PERCENT LOADING FOR THE CPU STRESS WORKERS.
            ## 0 IS EFFECTIVELY A SLEEP (NO LOAD) AND 100 IS FULL LOADING
            - name: CPU_LOAD
              value: '0'

            ## percentage of total nodes to target
            - name: NODES_AFFECTED_PERC
              value: ''

            # provide the comma separated target node names
            - name: TARGET_NODES
              value: 'node-10-120-127-170,node-10-120-127-171,node-10-120-127-172,node-10-120-127-173'

Can you please specify in which k8s environment you're facing this?

repo: litmuschaos/chaos-operator


text:
chore(log-mgmt): Refactoring code for better log/error mgmt

Signed-off-by: shubhamchaudhary shubham.chaudhary@mayadata.io

What this PR does / why we need it:
Which issue this PR fixes (optional, in fixes #<issue number>(, fixes #<issue_number>, ...) format, will close that issue when PR gets merged): fixes #
Special notes for your reviewer:
Checklist:

[ ] Fixes #
[ ] Labelled this PR & related issue with documentation tag
[ ] PR messages has document related information
[ ] Labelled this PR & related issue with breaking-changes tag
[ ] PR messages has breaking changes related information
[ ] Labelled this PR & related issue with requires-upgrade tag
[ ] PR messages has upgrade related information
[ ] Commit has unit tests
[ ] Commit has integration tests

time="2020-09-21T07:47:45Z" level=info msg="Experiments details are as follows" Engine Namespace=shubham Experiments List="[pod-delete]" Engine Name=engine2 appLabels="run=nginx" appKind= Service Account Name=litmus
time="2020-09-21T07:47:45Z" level=info msg="Getting the ENV Variables"
time="2020-09-21T07:47:45Z" level=info msg="Preparing to run Chaos Experiment: pod-delete"
time="2020-09-21T07:47:45Z" level=info msg="Validating configmaps specified in the ChaosExperiment & ChaosEngine"
time="2020-09-21T07:47:46Z" level=info msg="Validating secrets specified in the ChaosExperiment & ChaosEngine"
time="2020-09-21T07:47:46Z" level=info msg="Validating HostFileVolumes details specified in the ChaosExperiment"
time="2020-09-21T07:47:56Z" level=info msg="Started Chaos Experiment Name: pod-delete, with Job Name: pod-delete-4s81i8"
time="2020-09-21T07:48:36Z" level=info msg="Chaos Pod Completed, Experiment Name: pod-delete, with Job Name: pod-delete-4s81i8"
time="2020-09-21T07:48:36Z" level=info msg="Chaos Engine has been updated with result, Experiment Name: pod-delete"

repo: litmuschaos/chaos-runner


text:
refactor: replace strings with constant values

Replaced all strings to constant values. String constants values are located in io/litmuschaos/constants directory

@jemlog I realized I missed the invitation api. Made commit to reflect it

LGTM!

authors: jemlog seedspirit

repo: litmuschaos/litmus-java-sdk


text:
🛑 USTC Mirrors (Cernet) is down

In 0373fc5, USTC Mirrors (Cernet) (https://cernet.mirrors.ustc.edu.cn) was down:

HTTP code: 0
Response time: 0 ms

Resolved: USTC Mirrors (Cernet) is back up in ed6931b after 36 minutes.

repo: littlekud/sites-status


text:
🛑 USTCLUG is down

In 870663b, USTCLUG (https://lug.ustc.edu.cn) was down:

HTTP code: 0
Response time: 0 ms

Resolved: USTCLUG is back up in 0672b4b.


text:
Open actions for buffers

Is your feature request related to a problem? Please describe.
It would be useful if the buffers provider supported open actions (like the files or grep providers, for example).
Describe the solution you'd like
When using the buffers provider, I would like to be able to use the usual ctrl-t, ctrl-x, ctrl-v, etc. keybindings to show an open buffer in a new tab, split, or vsplit (respectively), as in other providers.
This is currently impossible because the buffers provider does not set support_open_action to true; naively changing this to true also does not work (it just makes all the keybindings switch to the buffer in question).
Describe alternatives you've considered
N/A
Additional context
N/A

Thanks!

repo: liuchengxu/vim-clap


text:
下载任务减少传参

可否默认采用下载地址的文件名及后缀名，设置保存的文件夹。
不必须设置保存的全路径

RxHttp v2.3.4版本支持标准Java占位符替代文件名 ,如：.../test/%s，此是内部会截取url中的文件名与之替代，并在下载介绍时返回。

 DownloadTask task = new DownloadTask(downloadUrl[i % downloadUrl.length]);
            task.setLocalPath(getExternalCacheDir() + "/%s");

authors: Reginer liujingxing

repo: liujingxing/okhttp-RxHttp


text:
调用SVM训练的时候报错，不知道什么原因

OpenCV Error : Assertion failed(data) in cv::Mat::at, file C : \buildslave64\win64_amdocl\master_PackSlave - win64 - vc14 - shared\opencv\modules\core\include\opencv2 / core / mat.inl.hpp, line 960
在下面的位置报错，不知道为什么，识别功能是可以正常执行的
tdata()方法里的
return cv::ml::TrainData::create(samples_, cv::ml::SampleTypes::ROW_SAMPLE,
responses_);

弄好了，是训练文件目录不对

repo: liuruoze/EasyPR


text:
谢谢。正在用。如果可靠可用，我愿意做些小额捐赠。给谁？

rt

谢谢支持~
不过本项目只是做着玩的，并非盈利性质，目前不接受捐赠~

authors: liuwons pinbanr

repo: liuwons/wxBot


text:
🛑 blog.korabli.su is down

In cc4c461, blog.korabli.su (https://warehouse.korabli.su) was down:

HTTP code: 0
Response time: 0 ms

Resolved: blog.korabli.su is back up in cb767c0.


text:
🛑 armory.korabli.su is down

In f176e6f, armory.korabli.su (https://armory.korabli.su) was down:

HTTP code: 503
Response time: 1061 ms

Resolved: armory.korabli.su is back up in 5f05c2b after 2 hours, 14 minutes.


text:
Set all package targets to ES2015

This explicitly sets all TypeScript compile targets to es2015 (= alias of es6). In the case of @liveblocks/react, this means an upgrade from es5 to es2015. This upgrade is necessary to avoid TypeScript errors like the one below:

To avoid errors like above, the targeted version of @liveblocks/react (and other secondary packages) should never be higher than the targeted ES version of @liveblocks/client.
In most other packages, the targeted version wasn't specified explicitly, i.e. esnext, which may make the compiled code not useable for developers that cannot use the latest ES version yet. This PR effectively “downgrades” the targeted ES version in those packages.
Whether we pick es2015, or perhaps want to target a higher runtime is a trade-off between compiled bundle size and support in more code bases.
I therefore think es2015 is a good pick for now, but lmk if you think we should aim higher here!

Targeting es2015 makes sense! Thanks for adjusting that everywhere.
I didn't verify but does it impact the bundle size? We're using babel for cjs and esbuild for esm and I don't think they're using tsconfig target option.
I didn't find great best practices for modern library bundling so most of it is inspired by https://github.com/pmndrs/zustand/blob/main/rollup.config.js
It's still not clear to me if our bundle should include some polyfills or we should assume that developers will setup global polyfill based on their target.

Oh wow, you're right, this change doesn't have any impact on the build output at all. Seems like this setting is completely ignored from the bundle's perspective. However, the TypeScript error above goes away for me locally, more of an editor setting when interpreting the compiled client/lib/index.d.ts files when working inside react/src/index.ts locally then, I guess.

I didn't find great best practices for modern library bundling so most of it is inspired by https://github.com/pmndrs/zustand/blob/main/rollup.config.js

Yeah, there are just too many options for bundling NPM packages. Each with so many settings and config files that it's dazzling.

I guess it's fine to merge this in then, since there is no impact on the produced bundle here at all. It just fixes TypeScript errors in my local editor.

authors: GuillaumeSalles nvie

repo: liveblocks/liveblocks


text:
Drop support for React 17

Drops support for React 17 in the next version.
There was a lot of internal complexity necessary to support batch updates and avoiding the dreaded zombie child problem). The issue is that these bugs are subtle, and it's hard to garantee we correctly wrap the provided batch wrapper around every possible state update we do. I don't even think we have been doing this correctly with all new APIs we have introduced since 0.18.
Rather than trying to meticulously track and wrap all state updates, dropping support for React 17 is much easier path. If users are stuck on React 17 or lower, they can still decide not to upgrade Liveblocks and keep using 2.14.0, which is the last version that supports React 17.
After upgrading to React 18, users should not experience subtle state update bugs, and should also notice a performance improvement.
It also allows us to drop the shims for useSyncExternalStore, useId, useLayoutEffect, etc, shrinking our bundle size and removing a dependency.

Thanks for polishing the upgrade guide, @CTNicholas!


text:
Notebook does not respond to key-presses after waking from sleep

Environment

Elixir & Erlang/OTP versions (elixir --version): 1.13.3, Erlang/OTP 24 [erts-12.2.1] [source] [64-bit] [smp:12:12] [ds:12:12:10] [async-threads:1] [jit] [win32]
Operating system: Windows 11
How have you started Livebook (mix phx.server, livebook CLI, Docker, etc): livebook server
Livebook version (use git rev-parse HEAD if running with mix): 0.5.2
Browsers that reproduce this bug (the more the merrier): Edge
Include what is logged in the browser console:

Uncaught Error: Unexpected server acknowledgement.
    at e.value (app.js:2:2884292)
    at e.value (app.js:2:2883250)
    at e._onAcknowledgement (app.js:2:2882800)
    at app.js:2:2891420
    at i (app.js:2:2847866)
    at Object.dispatchEvent (app.js:2:2825597)
    at If.constructor.dispatchEvent (app.js:2:3392280)
    at app.js:2:3392358
    at Array.forEach (<anonymous>)
    at If.constructor.dispatchEvents (app.js:2:3392335)

Include what is logged to the server console:

Current behavior
Start app with iex.bat --sname myname --cookie mycookie -S mix phx.server
Start livebook with livebook server
Connect to node (same thing happens with Elixir Standalone though)
Create a notebook, type some stuff, save it.
Put computer to sleep.
Wake computer.
(I think you have to reconnect to the node at this point)
Type in notebook -> typing does nothing, autosave still triggers.  Above error seen in browser console.  Can create new sections, but can't type in them.
If I close and then open the notebook, I see all the random stuff I was typing in the notebook.
Expected behavior
Things I type would appear in the notebook.

Thank you @simonmcconnell! Can you please check if this issue happens in other browsers? Also, for how long does Livebook sleep? Is it a matter of a few seconds or close to a minute or more?

Initially I had the laptop closed overnight, but if I sleep and wake it up straight away it does it.
Firefox seems fine.  Chrome has same issue.  Do you want me to try Opera, Brave, Vivaldi...?

@simonmcconnell Firefox and Chrome is enough, thank you!

@simonmcconnell does it help if you just refresh the page, or do you need to re-open the notebook to fix it?

The problem is that we don't handle reconnection properly, this can be reproduced with liveSocket.disconnect() followed by liveSocket.connect().
Apparently, Firefox keeps the connection on Windows hibernation, while Chrome/Edge don't, thanks @wojtekmach for helping to debug this!

authors: jonatanklosko josevalim simonmcconnell

repo: livebook-dev/livebook


text:
Rails 5 migration error

The first line of the migration file it generate when you run rails g draftsman:install looks like this:
class CreateDrafts < ActiveRecord::Migration

If you run rake db:migrate rails throws an error:
rake aborted!
StandardError: An error has occurred, this and all later migrations canceled:

Directly inheriting from ActiveRecord::Migration is not supported. Please specify the Rails release the migration was written for:

class CreateDrafts < ActiveRecord::Migration[4.2]

I think the error message says it all! The code outputted by the generator should not directly inherit from ActiveRecord::Migration.

class CreateDrafts < ActiveRecord::Migrationchangesclass CreateDrafts < ActiveRecord::Migration[5.1]

class CreateDrafts < ActiveRecord::Migration
changes
class CreateDrafts < ActiveRecord::Migration[5.1]

Actually, migrations were created for version 4.2, so you should change it to:
class CreateDrafts < ActiveRecord::Migration[4.2]

authors: huskylengcb jmfederico nbashaw

repo: liveeditor/draftsman


text:
Created echo example project

When I was trying to use the Go SDK for implementing audio subscription and publication requirements, I couldn't find any examples showcasing how to work with audio packet payloads that can be then used for different purposes like transcoding into different codecs, sending/receiving as multicast packets etc.
I got great help from @Sean-Der through Slack on how to implement some of my requirements, and my goal with this simple example project is to show a very basic implementation of how to access audio packets from a track, as well as how to write audio packets into a track. I believe this example can be used as starter code for anyone with audio processing requirements that deals with subscribing tracks from and/or publishing tracks into LiveKit.

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

@s-hamdananwar Could you add a video track example?
Thanks.

authors: ATtendev CLAassistant s-hamdananwar

repo: livekit/server-sdk-go


text:
mac 上滑动很快的时候会出现白屏问题

建议修复

电脑问题 浏览器问题 是是正常的，换个win试试，因为你拖动快了，渲染机制慢 就会出现白屏下  然后才显示出来   你在拖动的时候自己去加个加载效果吧    这个没法修复

authors: livelyPeng vmanas

repo: livelyPeng/pl-table


text:
add methods to shell-out with a schedule

Periodic shell scripts will be used to handle work that will happen
out-of-band at the system level. The first use-case here is to call
the mist-cleanup script which will clean leftover Mist resources from
/dev/shm.

Updates:

addressed comments
a few minor changes in the logging syntax so that we can grep it easily on loki

repo: livepeer/catalyst-api


text:
Remove non ascii characters that break JSON parsers

Fix #22

Thank you!

authors: CloCkWeRX sax

repo: livinginthepast/smf


text:
RX data was wrong

Hello Bro,
I have try your project but when i send buffer: 0xF8 0x04 0x00 0x00 0x00 0x0A 0x64 0x64  then data i recieved is : 0xF8 0x21 0x04  0x21 0x00  0x21 0x00  0x21 0x00  0x0A  0x21  0x64  0x21  0x64
Have even you see the same issue?Thanks

@nhatnamnguyengtvthcm  Most likely the problem is with your terminal software. Which adds the code 0x21 after each character!
I tried the code but I did not encounter the problem you are talking about!
Code by default set PinA4 as RX & PinB3 as TX with baud rate 9600 and echo any RX data to TX pin.

@nhatnamnguyengtvthcm Are that error fixed?


text:
Missing dependency on package.json

Error: Cannot find module 'functions-have-names'
Require stack:

/home/nolddor/gems-steam-bot/node_modules/set-function-name/index.js

+1

+1

+1

+1

+1

Same problem, package is a dependency of Quill and can't build my app.

As a quick workaround you can just run npm i -D functions-have-names (or equivalent yarn command).
In this way the dependency is fulfilled locally.

Yes, we did the same on our project.

+1

+1 broke production release flow

+1

As a quick workaround you can just run npm i -D functions-have-names (or equivalent yarn command).
In this way the dependency is fulfilled locally.

@madpilot78 I tried and didn't work for me, I don't know too much about npm. It allows me to install a tool (cdktf) that uses this, but when I try to run it says it doens't found the module. Do I need to do another thing?
npm i -D functions-have-names
npm install --global cdktf-cli@latest
cdktf get --language java #Fails

As a quick workaround you can just run npm i -D functions-have-names (or equivalent yarn command).
In this way the dependency is fulfilled locally.

@madpilot78 I tried and didn't work for me, I don't know too much about npm. It allows me to install a tool (cdktf) that uses this, but when I try to run it says it doens't found the module. Do I need to do another thing?
npm i -D functions-have-names
npm install --global cdktf-cli@latest
cdktf get --language java #Fails

Yours is a completely different situation. You're installing your tool with the --global npm flag, so you should also install functions-have-names using --global, I guess. But yours is a different situation and I cannot be sure it will be solved this easily.
So, try with --global, but I'm not sure this can fix it in your use case. You'd better ask the cdktf people though.

It worked! Thank you!

@ljharb man, this is breaking a lot of builds that use @testing-library/cypress and @testing-library/dom Could you please issue a patch asap?

This is the commit that broke things:
https://github.com/ljharb/set-function-name/commit/f5e4771266c95567d87f6dc2cff94c986bc7e074

@ljharb man, this is breaking a lot of builds that use @testing-library/cypress and @testing-library/dom Could you please issue a patch asap?

He is sleeping. Its 4:40 AM at his location. I bet he merged it and went to sleep without testing it much :smile:

@micreas i tested it plenty; all of the places I'm using it already had functions-have-names in node_modules, so I didn't notice this.
I was indeed sleeping; v2.0.1 is now published, which should fix this issue.
For everyone freaking out overnight, don't you people use lockfiles?

For everyone freaking out overnight, don't you people use lockfiles?

At least some people (including me) were affected when installing CLI tools, such as cdktf-cli, with npm i --global. A good learning experience though, not a good idea to install tools from npm without a lockfile!

Indeed, virtually nothing should be globally installed :-) CLI tools should be in package.json and invoked with npx.

For everyone freaking out overnight, don't you people use lockfiles?

For us, this was somewhat deep dependency chain: pdfkit -> fontkit -> deep-equal -> regexp.prototype.flags -- not sure why our lockfile didn't help there though 🤔
But oh well, anyway, thanks for the quick fix ❤

FWIW, eslint-plugin-import has a no-extraneous-dependencies rule that catches dev deps being used at runtime.

@akx yes, thanks, i'm aware since i'm the maintainer for eslint-plugin-import. i haven't included it in my shared config yet because eslint v8.9 broke parsing for my use case, and I can't update.

@micreas i tested it plenty; all of the places I'm using it already had functions-have-names in node_modules, so I didn't notice this.
I was indeed sleeping; v2.0.1 is now published, which should fix this issue.
For everyone freaking out overnight, don't you people use lockfiles?

We have a monorepo setup that uses Lerna. We have one lockfile for the monorepo that works locally but for production, the services are being deployed individually without a lockfile because Lerna does not generate individual lockfiles for each service/package. We found out about it when our services started failing in production after deployment because the module was missing and our instances could not start.

authors: AmirHussain93 IhorShmidt OverPa1n akx greguz jmustonen kenkku ljharb madpilot78 micreas ndelangen nolddor rus-tech-ae snapeuh sneridagh timhuebner tiparega

repo: ljharb/set-function-name


text:
Separated all tests by different files.

Changes:

Changed the tests structure to be more readable and clear.
Changed the travis task to actually run tests.
Added .editorconfig file
Changed some classifiers

Please, squash my commits on merge.

@sobolevn Thanks!

authors: lk-geimfari sobolevn

repo: lk-geimfari/church


text:
Meals List

User Story

As a user
I want to have a list of meals
so that I can see which meals I already planned

AC

list of planned meals on homepage
meal card which displays recipe title and categor: breakfast, lunch or dinner

Design/Wireframe

Tasks

[ ] create new branch
[ ] create new Component MealCard
[ ] create function for saving meal in local storage on submit (adds to submit function in Create Recipe Form: https://github.com/lkk95/capstone-project/issues/4#issue-1276960516)
[ ] render list of meals with component MealCard

Complexity
medium

Nice one 👍
Just a typo in AC: […] title and categor_y_ breakfast, lunch or dinner


text:
🛑 까사미아 www.guud.com is down

In 41fe695, 까사미아 www.guud.com (http://www.guud.com) was down:

HTTP code: 0
Response time: 0 ms

Resolved: 까사미아 www.guud.com is back up in 39d034d after 9 minutes.

repo: lksjames/monitoring


text:
.push and .cover interactive transitions start abruptly.

Instead of starting at the edge of the screen they start a bit off the edge. Issue happens only with interactive transitions (I was using a pan gesture recognizer).

I have to look into this. Did you use Hero.shared.apply(...) to control the interactive behaviour? or just Hero.shared.update?

@lkzhao Just update, I used exactly the same code that was in the example article on interactive transitions using Hero that you've wrote.

Ok, let me look.

Should be fixed in the latest master. I have added a left edge pan gesture recognizer to that screen that you showed.

@lkzhao Just tried it and can confirm that it works now. Thank you for taking the time to make a fix!

authors: capt-hook lkzhao

repo: lkzhao/Hero


text:
Unable to connect to the server

Hello,
I'm running the container docker on Synology and after update, it's doesn't work.
I can see the server in the server list (with the same version than the game : 202.19), the Supervisor is all green, but connexion isn'possible.
There is many lines like "DEBUG - [148] - Waiting for server to listen on UDP port 2456".

Rename .txt to .html to see the log.
valheim.txt
Thanks!

Are you running firewall on Synology? If yes please add corresponding rules to allow port 2456/UDP and 2457/UDP

The logfile you attached contains the following error:
Sep 19 09:32:17 supervisord: valheim-updater ERROR - 1.71 GiB is not enough memory - read https://github.com/lloesche/valheim-server-docker#system-requirements

You'll want to assign at least 4GB of RAM to Valheim server.

Are you running firewall on Synology? If yes please add corresponding rules to allow port 2456/UDP and 2457/UDP

The firewall is not enable.

You'll want to assign at least 4GB of RAM to Valheim server.

It's seems the failure come frome the updater. Is it possible to disable it to run Valheim ? Because it worked this summer with an old version.

The firewall is not enable.

This very likely has nothing to do with the firewall or anything networking related.

It's seems the failure come frome the updater

No, I'm affraid the failure comes from not having enough RAM which causes your host OS kernel to semi randomly kill a process to free up some RAM. It usually starts with the biggest consumer of memory which most likely is the valheim-server process.
If you execute dmesg on our host you'll see messages about the OOM (out of memory) killer killing processes.
The reason this happens during updates is because that's likely when the steam client consumes a couple of extra megabytes. It will just as likely happen when entering a dungeon or building a large house or any other activity that causes anything inside the container to consume a couple extra megabytes.
Your best bet for a smooth gameplay experience is providing the container with the system resources described in the link above. Anything else will likely just be a bandaid. You can try disabling any additional services but in comparison to valheim-server itself they consume next to no memory. With only 2GB instead of 4GB RAM assigned you will see random crashes and server shutdowns even with all the other processes disabled.
If your system does not have that much memory but you absolutely want to use the hardware, you could try adding 2GB of swap and overcommitting the container. In most situations the swap won't be used but during those spikes it'll help alleviate the situation.

authors: Garikover kraaijmakers lloesche

repo: lloesche/valheim-server-docker