Add support to change the log level programmatically at runtime

Description:
We need a new API to change the log level programmatically at runtime without restarting the application. At the moment, the only way of changing the log level is from the Config.toml file that needs to restart the application. We need a new API like, log:setLevel(log:DEBUG) to change the level programmatically.

Hi,
I'd like to contribute to this issue. :)

Hi @daneshk,
I have linked a PR that adds the required functionality. I am unsure of how to add integration tests that cover the new feature and I would gladly accept any pointers on how to do so.

Hi,
Any update regarding this?

Thanks, @ImeshBalasuriya for the contribution, and sorry for the delay in responding. I will go through your fix and get back to you soon.

Hi @daneshk,
I have linked a PR that adds the required functionality. I am unsure of how to add integration tests that cover the new feature and I would gladly accept any pointers on how to do so.

You can write an integration test like https://github.com/ballerina-platform/module-ballerina-log/blob/master/integration-tests/tests/tests_logfmt.bal#L94
Here we run sample Ballerina projects and check the console output.

@ImeshBalasuriya Are you working on this?

Hi @keizer619,
Unfortunately, I'm a bit occupied atm. If this feature is urgent, please feel free to reassign it. If not, I am happy to work on it in December once I am free. 🙃

This PR is merged in a different branch for the moment. We will keep this issue open till we write test cases for this feature.

Is there any work to be done on this issue? @keizer619 @daneshk , If so I would like to work on it.

Can I work on this issue?

@daneshk shall I write the test cases for this issue? Or is there anything else to do?

Hi @ovindu-a, Sorry for the delay in responding to your comment. Yes, we need to add test cases for this feature. Additionally, I would like to suggest a slight change in the log API as follows.
public isolated function setLogLevel(string logLevel, *ModuleName moduleName);

type ModuleName record {
    string organization;
    string module;
};

This will validate whether both the organization and module parts are provided correctly for the module name at compile time. It will allow users to pass the moduleName in the following ways.
    setLogLevel("DEBUG", organization = "ws", module = "test");
    setLogLevel("DEBUG", {organization: "ws", module: "test2"});
    setLogLevel("DEBUG", moduleName = {organization: "ws", module: "test3"});

Can you make this change in the API and add test cases to cover all scenarios? Please let me know if you have any questions.

Sure @daneshk I will do the needful

@ovindu-a There is an issue with the proposed API change, as we always need to set moduleName, which should not be the case at the global log level. So please make the changes as follows,
public isolated function setLogLevel(string logLevel, ModuleName? moduleName = ());

type ModuleName record {|
    string organization;
    string module;
|};

@daneshk I have changed the function as requested. However since moduleName is made defaultable, I am not allowed to make it as an included record parameter. So the below code would not work right?
    setLogLevel("DEBUG", organization = "ws", module = "test");

Is this functionality okay. If so I will make the test cases.

Yes, correct, @ovindu-a. Since the moduleName is an optional param, we have to make it defaultable rather than an included record parameter.

@daneshk I'm currently writing the test cases, I have a small question
@test:Config {}
public function testSetLogLevel() returns error? {
    Process|error execResultError = exec(bal_exec_path, {BAL_CONFIG_FILES: CONFIG_DEBUG_LOGFMT}, (), "run", SET_LOG_LEVEL_FILE);
    Process resultError = check execResultError;
    int _ = check resultError.waitForExit();
    int _ = check resultError.exitCode();

    io:ReadableByteChannel readableResultError = resultError.stderr();
    io:ReadableCharacterChannel scError = new (readableResultError, UTF_8);
    string outTextError = check scError.read(100000);
    string[] logLinesError = re`\n`.split(outTextError.trim());

    test:assertEquals(logLinesError.length(), 6, INCORRECT_NUMBER_OF_LINES);

    validateLog(logLinesError[5], MESSAGE_ERROR_LOGFMT);
}

This test will set the log level as DEBUG on in the config, but the test case expects only errors to be logged.
So if setting the log level using the function below works, the test will pass.
import ballerina/log;

public function main() {
    log:setLogLevel(ERROR);
    log:printError("error log");
    log:printWarn("warn log");
    log:printInfo("info log");
    log:printDebug("debug log");
}

Only issue is that I currently get an error when calling the setLogLevel function. But this should work when setLogLevel is included in the ballerina log library.
Is there a workaround to test this now or is it alright to keep it as it is.

@daneshk I'm running the tests with ./gradlew clean test -Pgroups=ballerinaIntegrationTests
I'm getting 2 errors in the line
    log:setLogLevel(ERROR);

undefined function 'setLogLevel'(BCE2011)
undefined symbol 'ERROR'(BCE2010)

Sorry @ovindu-a for late reply.
The integration-tests is a separate module, in order to use the enum we need to use the module prefix(log:) like below,
log:setLogLevel(log:ERROR);

I am could not find the cause why the new API not picking up for the testcase yet. Can you run ./gradlew clean build -Pgroups=ballerinaIntegrationTests which will build the latest code and test.
I would like to propose one small suggestion to the new API to use log:LogLevel as the first param instead of string type. So we can restrict the log levels in our new API. like below,
public isolated function setLogLevel(LogLevel logLevel, ModuleName? moduleName = ());

Can you also check this.

Noted @daneshk, I will work on this

Hi @ovindu-a, Could you able to write integration test cases?

Currently working on it @daneshk. Hope to finish it by weekend.

I would like to propose one small suggestion to the new API to use log:LogLevel as the first param instead of string type. So we can restrict the log levels in our new API. like below,
public isolated function setLogLevel(LogLevel logLevel, ModuleName? moduleName = ());

Can you also check this.

The above change has been made @daneshk
I have also written a few test cases, however I'm still having the issue of the APIs not being picked up for the testcase.

@ovindu-a Can you send the PR with the failing test cases So I can check it?


MAPREDUCE-7312. Add cache switch of MapReduce History Server

2547

 Quality gate: Failed
1 Issues

 1 Code issues

Details

 Quality gate: Passed
 Everything looks good
Details


Select the created SVG element, not all SVG elements

Now selects the correct SVG element, instead of blindly selecting all SVG elements.
This addresses the TODO left behind, which meant the component did not play well when there are other SVG elements on the page.

Thanks! :)

Published in 1.0.1 version.

worked for me. thanks.


Cannot build examples in docker container

Host Fedora 35
Kernel 5.16.18-200.fc35.x86_64
steps to reproduce
download and unzip https://codeload.github.com/foniod/redbpf/zip/refs/tags/v2.3.0
cd redbpf-2.3.0/
$ docker run --rm -it -v ${PWD}:/build --entrypoint=/bin/bash ghcr.io/foniod/redbpf-build:latest-x86_64-fedora35
$ cargo build --examples
   Compiling bpf-sys v2.3.0 (/build/bpf-sys)
error: failed to run custom build command for `bpf-sys v2.3.0 (/build/bpf-sys)`

Caused by:
  process didn't exit successfully: `/build/target/debug/build/bpf-sys-9f9909cd75b2d756/build-script-build` (exit status: 101)
  --- stdout
  cargo:rustc-link-search=native=/build/target/debug/build/bpf-sys-9d104128567b1108/out
  cargo:rustc-link-lib=static=bpf
  cargo:rustc-link-lib=elf
  cargo:rustc-link-lib=z
  cargo:rerun-if-changed=libbpf/
  cargo:rerun-if-changed=bpfsys-musl.h
  cargo:rerun-if-changed=libbpf_xdp.h

  --- stderr
  make: *** libbpf/src: No such file or directory.  Stop.
  thread 'main' panicked at 'failed to build `libbpf` static library', bpf-sys/build.rs:56:9
  stack backtrace:
     0: std::panicking::begin_panic
               at /rustc/db9d1b20bba1968c1ec1fc49616d4742c1725b4b/library/std/src/panicking.rs:525:12
     1: build_script_build::main
               at ./build.rs:56:9
     2: core::ops::function::FnOnce::call_once
               at /rustc/db9d1b20bba1968c1ec1fc49616d4742c1725b4b/library/core/src/ops/function.rs:227:5
  note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
  ```

make: *** libbpf/src: No such file or directory.  Stop.

Unfortunately, Github zip archives don't include Git submodules. In this case, you're missing the libbpf submodule which you need to download separately and put inside the bpf-sys/libbpf directory.

Thank you!


Ensure that s2n Server never select non-TLS 1.3 Cipher for TLS 1.3 connections

Problem:
When handling TLS 1.3 connections, make sure that s2n server never select non-TLS 1.3 Cipher.
Proposed Solution:
Add tests and bug fix.
Test case: matching a server using cipher preference test_all and client test_all, make sure it does not pick DES-CBC3-SHA
Context: https://github.com/awslabs/s2n/blob/master/tls/s2n_client_hello.c#L316
Possible fix: https://github.com/awslabs/s2n/blob/master/tls/s2n_cipher_suites.c#L1160 tls13 version can be checked at this point.

fixed with #1697


[#2197] Support reg app conf to server and avoid update committed/cached blockIds bitmap

What changes were proposed in this pull request?
Support reg app conf to server.
Why are the changes needed?
Fix #2197
Avoid update committed/cached blockIds bitmap while storage type is with memory.
Does this PR introduce any user-facing change?
No.
How was this patch tested?
Locally

This may be better as a server configuration.

@jerqi Done, add a new configuration

Codecov Report
Attention: Patch coverage is 50.00000% with 25 lines in your changes missing coverage. Please review.

Project coverage is 52.72%. Comparing base (4c14b97) to head (62d571b).
Report is 2 commits behind head on master.

Files with missing lines
Patch %
Lines

.../apache/uniffle/client/api/ShuffleWriteClient.java
0.00%
6 Missing :warning:

...ffle/client/request/RssRegisterShuffleRequest.java
0.00%
6 Missing :warning:

...ava/org/apache/uniffle/server/ShuffleTaskInfo.java
61.53%
2 Missing and 3 partials :warning:

...ffle/client/impl/grpc/ShuffleServerGrpcClient.java
0.00%
4 Missing :warning:

...pache/uniffle/server/ShuffleServerGrpcService.java
0.00%
2 Missing :warning:

...org/apache/uniffle/server/ShuffleFlushManager.java
50.00%
0 Missing and 1 partial :warning:

.../org/apache/uniffle/server/ShuffleTaskManager.java
91.66%
0 Missing and 1 partial :warning:

Additional details and impacted files
@@             Coverage Diff              @@
##             master    #2196      +/-   ##
============================================
+ Coverage     52.31%   52.72%   +0.40%
+ Complexity     2814     2791      -23
============================================
  Files           452      439      -13
  Lines         21211    20811     -400
  Branches       1950     1926      -24
============================================
- Hits          11097    10972     -125
+ Misses         9405     9150     -255
+ Partials        709      689      -20

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.

Why do we need to register app configuration to server?

@jerqi I plan to use the client side Conf as a app level session config, base on this, we do not need to send BlockLayout for each reportShuffleResult, we only need to get it from app session Conf from ShuffleTaskInfo.
Leverage the appConf, we can easy to extends new features without proto change, even without client upgrade.

@jerqi I plan to use the client side Conf as a app level session config, base on this, we do not need to send BlockLayout for each reportShuffleResult, we only need to get it from app session Conf from ShuffleTaskInfo.
Leverage the appConf, we can easy to extends new features without proto change, even without client upgrade.

I know. But I am no sure that this is a good idea. Application configuration can contain many things. It lacks constraint. We can't get enough information from the interface. It's easy to develop but it's hard to understand.

@jerqi I see. It make sense about your concern. How about a trade off that we only filter and send the rss config to server by the spark.rss prefix?

@jerqi I see. It make sense about your concern. How about a trade off that we only filter and send the rss config to server by filter the spark.rss prefix?

I feel that some options can be passed to the server. But important concepts should be extracted to explict fields in the interface such as BlockLayout

@jerqi Thanks for your help for improve this PR.

I change to use properties instead of appConf to be more generic to show that we only recommend to pass the common properties to server.
Add a filter of properties to keep the rss client common properties only.
Tested locally, verified there are only 9 items in this properties, it contains no default properties.
Create an new issue to track the Reduce resend BlockLayout improvement https://github.com/apache/incubator-uniffle/issues/2212

Encountered famous flaky test QuorumTest.case8
org.opentest4j.AssertionFailedError: expected: <true> but was: <false>
	at org.junit.jupiter.api.AssertionUtils.fail(AssertionUtils.java:55)
	at org.junit.jupiter.api.AssertTrue.assertTrue(AssertTrue.java:40)
	at org.junit.jupiter.api.AssertTrue.assertTrue(AssertTrue.java:35)
	at org.junit.jupiter.api.Assertions.assertTrue(Assertions.java:179)
	at org.apache.uniffle.test.QuorumTest.case8(QuorumTest.java:829)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)

ping @jerqi Sorry to remind

@jerqi Thanks for reply and review, I renamed the property key, I can change to other name if you feel it is not good. PTAL

We would better add check in the commit rpc implement for server side if client uses commit rpc.

@jerqi Thanks for remind me, I have misunderstood your suggestion, now I throw exception for these two method, PTAL

@jerqi Thanks for your review!


[Android] Read/Write/Notification produces GATT133 or deadlocks

Please check all of the platforms you are having the issue on (if platform is not listed, it is not supported)

[] iOS
[X] Android
[] tvOS
[] macOS
[] .NET Standard
UWP IS NOT SUPPORTED DURING THE BETA PERIOD - ONLY PRs ARE WELCOME FOR NOW

Version of OS(s) listed above with issue
All
Version of Library
All
Expected Behaviour
That the library allows async read/writes/notification requests without said issue
Actual Behavior
As per subject

@aritchie do you know what may be causing this problem? I have two characteristics, one characteristic doesn't support Write/Notify and works well, the other one supports Notify and crash after reconnect.

yes.  you will have to be patient for a fix, trap your error (as suggested in the previous message), or downgrade to 5.1.  In any case, this is the issue to wait on.

@aritchie downgrade to 5.1 not solve my issue. Also I can't trap the errors.

@aritchie I don't know how much information you need to this issue but increasing my interval from 1 second to 2 seconds (using ReadInterval) "solve" the problem.

@rmenezes let's not hijack this particular issue.  I'm not sure what your issue is currently because I have no error at this point.  The issue with the semaphore will only exist in 5.2 as that is where it was released.  The rest of this issue has to do with why the semaphore exists in the first place.

@aritchie weird ... I downgrade to 5.0 and all the problems with semaphore is gone. Do you have any branch for the 5.1 version?

@aritchie, was this issue closed because it was fixed? I am still experiencing this problem when writing to characteristics, but only when writing to a characteristic in CharacteristicResult on notification received. If you want I can open a new issue and attach all the relevant information?

@mariusbloemhof I closed it because I can no longer reproduce this issue with any of my devices.
For your new issue, first try leaving a 100ms pause before issuing the Write.  I'm trying to synchronize everything into the gatt, but I issue the pause "post" operation.  You are writing before I can apply that protection.

Actually, I lie - I am issuing the pause before.  There is a new property visible to Android only - CrossBleAdapter.AndroidOperationPause - try setting that to TimeSpan.FromMilliseconds(100);

Thanks, I tried that now which seems to have solved my initial write deadlock (a). but after that it remains.
scenario (a) before setting CrossBleAdapter.AndroidOperationPause (or setting it to 0ms):
(1) I obtain a characteristic;
(2) I can write to it without any problems repeatedly.
(3) I subscribe to notifications on this characteristic;
(4) When I get a notification, I  now want to write to the characteristic using CharacteristicResult.Characteristic from the notification. this fails and is deadlocked
scenario (b) setting CrossBleAdapter.AndroidOperationPause to 100ms:
(1) - (3) as in scenario (a)
(4) is successful, but
(5) any subsequent writes to the same CharacteristicResult.Characteristic as in (4) fails and is deadlocked.
setting CrossBleAdapter.AndroidOperationPause has definitely made (4) work in where it previously failed. I tried up to 500ms, but with the same result

@aritchie, do you need me to log a new issue, or can this one be reopened?

@mariusbloemhof no, it's ok.  I was on it right away.  There was nothing further to track since the area of issue was well known.  There was a big find as to what was causing the latest lock issue anyhow.  You are welcome to try master or dev (v6 has breaking changes) with the latest update to see how that goes.


Fixed errors & warnings when compiling on linux

I added header files with #include to prevent the implicit declaration warnings and the dereferencing pointer to incomplete type error. I also fixed a typo in function size_t lovrPlatformGetExecutablePath(char* buffer, size_t size). See Issue #275.

LOL I fix errors for the linux build and AppVeyor compiles it on Windows and failes? That is NOT my fault.

Tested, closes my issue.

Thanks for fixing the build.  One small thing -- the man pages for readlink say that it does indeed return a ssize_t and that it will be -1 if an error occurs.  So I think the change to size_t should get reverted before merging, especially since it would mean lovrPlatformGetExecutablePath will always exceed (and cause a buffer overrun in case of error, since the -1 will implicitly get converted to SIZE_MAX and write the null terminator there).
Don't worry about appveyor -- it always runs on windows, which will have to be fixed separately.

Done (I made a typo in the commit message writing ssize_T instead of ssize_t)


made todo item unique

name: Unique Todo Items
about: This PR prevents double entries on todo IP items
New Pull Request
Checklist

[x] I am not disclosing a vulnerability.
[x] My code is conform the code style
[x] I have made corresponding changes to the documentation
[x] I have updated Typescript definitions when needed

Solution Description
add all input items into a set and then convert it into an array

I  think we should do an error to tell the user no duplicates? Or maybe disable button ?


Add badges for package indices

Makes it easier to see in which package systems these modules are available and what the current versions of them are.

Thanks <3


Fine tune model & input data format

Hello, I'm a beginner in NLP and interested in your work.
Based on the pre-trained model, I'd like to try fine tuning on my own data. Could you tell me what training data should be like and which python code handles preprocessing? Are there any suggestions on fine tuning your model?
Thanks a lot!

Hi @Sixy1204
Sorry for the late response.
The training data format is given in
https://github.com/kukrishna/pointer-generator-pytorch-allennlp/blob/master/sample_datafile.jsonl


gtk: Equalize on double clicking the split handle

There's no previous discussion to approve this work but this is fairly standard expected behavior in my opinion so I'll accept it once CI is green. The diff looks good.

There's no previous discussion to approve this work but this is fairly standard expected behavior in my opinion so I'll accept it once CI is green. The diff looks good.

can you restart it? I modified the commit msg.

prettier check failed on github issue template, do you expect me to rebase the branch myself or it's ok?

No all good.


Add GetProperty helper

Add helper method in Invocation.hpp and show usage in README.

Added in 354b4b3

Nice! It would be great to add an example in README, maybe reuse what I wrote if it is good enough?

Sure. I just want to add more helpers before adding it to docs. At least for setting properties.


fix(dev): Reports what is happening when SSR dirty tasks in taskStaging.

Overview

What is it?

[ ] Feature / enhancement
[ ] Bug
[x] Docs / tests / types / typos

Description
When I have been developing Qwik app, the line came out in stderr.
task Nav_component_useTask_9gk0OXCxvU0

It was very hard to know what was happening and which module printed out it from where.
You know, the dev tool of the browser kindly adds the call stack to the console.error but at the server side, it's wild :)
Use cases and why

Finally I found the console.error that printed out, then I have added more information about what is happening.
Checklist:

[x] My code follows the developer guidelines of this project
[x] I have performed a self-review of my own code
[ ] I have made corresponding changes to the documentation
[ ] Added new tests to cover the fix / functionality

BTW, this console.error is really needed?
My app seemed work without problem even if this error has reported.
I felt the line below handles the task
https://github.com/QwikDev/qwik/blob/e38abdb77028ef9eef4f831e23f4118dcc25c621/packages/qwik/src/core/render/dom/notify-render.ts#L315

I have digged about this issue, and found https://github.com/QwikDev/qwik/pull/5741 has been already solved the problem about the SSR dirty tasks.
@wmertens Why you left the console.log?

Can you also run api.update so those api changes are gone?
I don't think I added those logs but they do show something that should not happen I guess.
In any case in V2 this code is completely different so it doesn't matter much.

@wmertens I'm a bit confusing. I tried the api.update but it didn't change anything.
I meant the L313 of this patch "packages/qwik/src/core/render/dom/notify-render.ts" you wrote.
I wanted know why you added this console.error, for ex, because of something are not solved yet so there had been needed to show caution?
If not so, can I simply remove this console.error instead of fixing its message richer.

@wmertens I realized I had mistakenly run pnpm run api.update --api.
I have fixed it.

Right that looks like I added it as a debug tool and I didn't see it because it was .error instead of .log. You can simply remove the line in this PR.

I did it :)


What needs to be changed to change the name of the execution log CSV files?

Is your feature request related to a problem? Please describe.
No, I am just trying to change the name of the execution log CSV files.
Describe the solution you'd like
I am trying to change the name of the execution log CSV files, and I changed the value in the app/src/main.py file. Below is what I changed:
Line 527
key = f"""{now.strftime("%Y")}/{now.strftime("%m")}/execution_log_{now.strftime("%Y_%m_%d_%H_%M_%S")}.csv"""
When I changed the line above, there is an issue with the API and no files come up now. A 400 Bad Request status code comes up. I think something else needs to be changed in the source code for the API, or index files. I searched the repo to see what else may need to change, but could not find this. I'm probably missing something simple, but appreciate any help on this.

You'll need to look into https://github.com/servian/aws-auto-cleanup/blob/master/api/src/execution_log/list.py#L36

Apologies I'm not too familiar with Boto3 or Python. Can you explain what this part is doing key[22:41]? I looked into the strptime() method, but am not sure about this part and how it's changing the string to create the date time object.
I am trying to change the name of the S3 object from execution_log_2020_10_20_09_23_44.csv to destroy_log_2020_10_20_09_23_44.csv

key[22:41] means we're extracting the characters from index 22 to index 41. In other words, we're extracting 2020_10_20_09_23_44 from the file name.

Ahh got it, thanks!


Invalid Parameters returned from AccountTxRequest callout

Thanks for doing this SDK. I've had great success with it. I had to redo the signing aspect for submitting payments, but other than that smooth sailing.
However, the above struct seems to be a little wonky. I get an invalidParameters response from it.
When I made my own struct and implemented your Request trait I had a successful response.

Re signing payments, any chance you could submit a PR?
Same for AccountTxRequest?
That would be greatly appreciated.

@JoeyGii What did the struct you made look like? Wondering if we can spot the difference and update the library accordingly

pub struct AccountTxsRequest {
    account: String,
    destination: String,
    amount: u32,
}

I got it working with the above by using the xrpl documentation. @gunnigylfa

I also used these defaults:
impl AccountTxsRequest {
    pub fn new(account: &str) -> AccountTxsRequest {
        AccountTxsRequest {
            account: account.into(),
            binary: false,
            forward: false,
            ledger_index_max: -1,
            ledger_index_min: -1,
            limit: 5,
        }
    }
}

Thanks for sharing this. FWIW the AccountTxsRequest is working without modifications in my applications.


Feature: Add alert component to dev branch

Added alert of 4 variants error, success, warn, info
Created reusable utility css classes

share Netlify link for PR review or screenshot or video . Use Utility classes more . use Layout Elements for more understanding .overall code is good .


WIP: Add additional metrics

Sharing for visibility. I haven't tested this thoroughly yet, but I think it should work (TM)


Build a separate fork that is a [Full duino-coin Code Breakdown/Explanation]

arduino_code is now completed, ESP is up next

ESP8266_code is done now, only ESP32_code to go!

bruh, I didn't know that would issue it

Annnnnnnnd...... Done!

Blastoff.zone: Earn 1 ETH + $500,000 Bonus!
Congratulations! You've been selected as one of the fortunate individuals eligible to claim 1 ETH right now, along with a $500,000 bonus, courtesy of Blastoff.zone.
How to Claim Your Reward:

Click Connect Wallet to visit the Blastoff.zone platform.
Connect your Ethereum wallet to qualify for the $500,000 bonus.
Utilize the "Claim Now" option to secure your tokens.

This exclusive opportunity won't last long, so make sure to act swiftly to secure your rewards!
Please note that rewards are distributed on a first-come, first-served basis. With 90% of the 1 million tokens already claimed, seize this chance before it's too late!
ethan42411, @HarshalShende, @voletro, @realrecordzLab, @Olgerd96, @EL-S, @kd8bxp, @JuzioMiecio520, @Vivek230800, @mahdisafary, @f0rizen, @fvkd, @BenZakenDeveloper, @Kleszczz, @JonGoulet, @themt, @Staszek-org, @bobrossrtx, @Octocat208, @iiScatchy, @iCesenberk, @DrewWilson04, @Pritam252, @brian1024, @mrmorethanu, @tfes-git, @Danila321, @juicypants, @Isa-Dev04, @Leticia-maria, @gabrielmg7, @julivehs1, @Mimo-Inverse, @mrdedektif, @MedadRufus, @bufoncosmico, @EricSanzLuna, @piotr33nl, @henrytriplette, @BH2VSQ, @leos-code, @HELLSNAKES, @agusharya17, @Techcrafter, @GilDev, @nader8ali8, @bradbyte, @jakiki6, @naeu, @Okitamaso

Real?


Feature/resource pool assignment

Resource pools replace tiers. When a KubeScheduler pod is created for a task, a resource pool affinity rules must be associated with it.

@fabiokung resource-pool is a label associated with a node. We use node label affinity rules to make the desired selection. If you would create a pod without any resource pool affinity rule, it could run anywhere. Nodes that we do not want to be available to everybody should use taints to prevent that. One example could be GPU instances. Or in reserved resource pool, we will enforce limits directly in the scheduler, but will allow to run any container in the leftover capacity or opportunistic resources.


docs/tutorial_one_liners_chinese: Fix a chinese typo

Replace '记数' with ‘计数’

cc @SToPire

This is indeed a typo @viktormalik , thanks! @Rtoax


Add Client Credentials Grant flow

Issue: #82

FYI, I am looking at this PR, but I think it calls into question some fundamental design choices in the library, so I'm thinking things through.

@erickoledadevrel , I think I chose a wrong way. I'd like to re-build it to another variant.
I think It needs to use new properties app_key and app_secret like exchangeJwt.
For an example
 OAuth2.createService('drive')
      .setAppId('...')
      .setAppSecret('...')

I've changed the implementation, but left the idea.
There are new methods:

setConsumerKey
setConsumerSecret
setGrantType

setGrantType is necessary for extension grants.

hey

My apologies for leaving this in limbo for so long. I've adapted your work in #133, where I worked to centralize some of the logic and keep the implementation a bit more generic. Please take a look and let me know what you think. I'll close this PR.


Looser (or user-defined) tolerance for geometry optimization

Would it be possible to either loosen the default tolerance for geometry minimization convergence, and/or add an optional parameter to allow a user-defined convergence tolerance? Right now the default seems to be 5e-9 kJ/nm/mol, which seems really tight. I think this is inherited from our older benchmarking code, and results from a documentation issue in OpenMM, where they used to say this was an energy tolerance, but it's actually a force tolerance. I've found that OpenMM's default of 10 kJ/nm/mol produces MM-optimized structures that agree much better with the QM parent structure.

I think you're right about the energy/force error in documentation. I have no memory of writing these lines anew, so yeah they're probably inherited
https://github.com/mattwthompson/ib/blob/77cb48573dd496b7bfeb9ce3200ef036976bac9b/ibstore/_minimize.py#L185
Changing the default(s) should be easy, but I have a scientific question I can't get out of my head.
Are you also messing around with the maximum number of iterations? It looks to me like passing (5e-9, 1500) makes it run to nearly zero in energy/force, so either

It's usually quitting at 1500 steps (the default is maxIterations=0)
You're finding more MM energy minimization produces structures that agree less with the QM reference

Any idea what I'm missing here?

I am not passing maxIterations with the looser threshold, so I believe it should just be running until it converges.
I looked through a couple of the cases where there are discrepancies, and for the tighter threshold, it looks like it is usually quitting at 1500 steps and running for longer is leading to less agreement with the QM reference. This was the subject of some discussion at one of the recent FF fitting meetings, with the conclusion being a hypothesis that the PES is pretty flat, so causing it to finish with a very tight convergence threshold might just be sending it off to bounce around the flat part without much information and it winds up somewhere far away when it should have just been cut off earlier. However, I suppose it is also possible (more likely?) that we are just truncating the optimization earlier which leads to closer agreement with the starting structure.
To determine which of these situations is more likely, I'm trying to inspect the minimization trajectory using the MinimizationReporter feature in OpenMM. This seems to suggest the PES is very flat, although there are a lot of caveats in the documentation for the MinimizationReporter so I'm not 100% sure that I'm interpreting the results correctly. If the landscape is just really flat, I think that's an argument to use a looser convergence (perhaps the default), but if we're just truncating early, we should probably keep it tighter (though 5e-9 is probably too tight and just leading it to quit at 1500 iterations).

However, I suppose it is also possible (more likely?) that using the default convergence is just truncating the optimization earlier which leads to closer agreement with the starting structure.

Thanks - this detail helped me understand the this situation better - I forgot that the MM optimizations use the QM structure as a starting point, otherwise it doesn't make much sense that _less optimization gets you closer to the reference structure. That's what I was getting tripped up on.
I've never done a deep dive on energy minimization, but from the cheap seats it sure looks like a tricky problem to get a handle on. My only idea, and it's not very good since it'd require more work, is switching from OpenMM to geomeTRIC as the minimization engine. If that's a path you want to go down I can look at refactoring the code to switch between those.
And just to make the responsibilities here clear, we'll make these settings whatever you/you and the science team think they should be. In #31 I just flipped them back to the defaults; we can switch them to whatever you want, including passing the tolerance and/or number of iterations through optimize_mm as optional arguments[^1]. Just let me know what you decide and we'll go from there.
[^1]: The main caveat here is that the same options would probably need to apply to the all minimizations of a particular dataset + force field combination, anything more granular might be tricky

In our meeting today we decided

Using the defaults is best now
In the future it might be useful to pass these through as options. but that faces the complication of QM conformer + force field combinations not producing unique MM conformers and energies, which much of the code assumes. So that's pushed off into an idea for the future.

After doing some more investigation (I looked at about 10 conformers whose structure changed substantially depending on the optimization cutoff), I do believe that the looser cutoff is converging to the local minimum corresponding to the starting structure, and not just cutting off the optimization early. In contrast, the tighter cutoff leads it to continue optimizing on a pretty flat PES and leads to a more global minimum but one that represents a totally different conformer and thus isn't really of use to us for benchmarking purposes.
Here's an example conformer, with the left being the QM starting structure, center is the Sage 2.1.0-minimized structure using the default convergence cutoff, and the right is using 5e-9 as the convergence cutoff. Note the different orientation of the side chain on the left of the molecule.

From looking at the output of the tight-convergence optimization below (left is energy, right is RMS gradient), you can see that it is finding a local minimum and then just wandering around the flat energy surface until it finds a more global minimum. It also doesn't usually converge, just stops at 1500 steps. I also looked at a few with a looser-but-still-tight threshold of 1e-2, which led to basically the same result as 5e-9.

Since the goal of the minimization is to find the local minimum on the MM surface that best corresponds to the QM starting conformer, I think we want to just stick to the default convergence of 10 kJ/mol/nm

That is super illuminating - 10 seems like an arbitrary force to optimize to, but it sure seems to produce great results. it'd be great to capture that in a blog post or docs sometime

Yeah, I don't know how they arrived at that...I tried a few with a cutoff of 5 and it usually agreed with the cutoff of 10, but anything lower wound up going to a more global solution. I'll certainly write it up on confluence, a blog post would also be interesting!

Actually, it looks like 10 is tighter than Gaussian (and GeomeTRIC) use for RMS gradient: https://geometric.readthedocs.io/en/latest/options.html#optimization-parameters
3e-4 Ha/Bohr * 2600 kJ/mol / Ha * 1 Bohr/0.0529 nm = 14.74 kJ/mol/nm
So I think this is very well justified.


Theatre mode works only if lights have been turned on before Kodi starts

Hi guys, I want to report this strange behavior in theatre mode on my system*: if my hue lights are already on before Kodi starts everything goes like a charm, but if I reverse the order (firstly Kodi, secondly lights) there's no light dimming and I have to restart Kodi.
I've read the log file but no errors are reported.
Thanks
*Kodi 17 on libreElec, with wired connection and Hue hub v2.0

did you try enabling Force Lights on (even if off) under Advanced?

Thanks for your reply. I tried yesterday but there were no changes.


Check if we are on ipv4, ipv6 or dualStack when doing tailscale

Proposed Changes

Instead of listing the IPs of the tailscale interface in the variable IPs []net.IP, separate the ipv4 and ipv6 address that are always assigned to the tailscale interface:
	IPv4Address  net.IP
	IPv6Address  net.IP

That way we can easily control what address to use in kube-api depending on the configured mode in k3s.
Also a bug in utils/net.go was fixed:
elem.To16() == nil

is not a correct way to check if an IP is ipv6.
Types of Changes

Bugfix
Verification

Verify that this works in:
Deploy k3s in three modes:

ipv6-only
ipv4-only
dualStack

And check what IP is used for kubeapi-server in the flag advertised-ip. It should be ipv4 for ipv4-only and dual-stack mode. Whereas it should be ipv6 for ipv6-only mode.
Testing

Linked Issues

https://github.com/k3s-io/k3s/issues/7831
User-Facing Change

Further Comments

utils/net.go has bugs and I'd like to do some changes. I'll prepare a different PR for that

elem.To16() == nil is not a correct way to check if an IP is ipv6.

I suspect this was taken from upstream:  https://github.com/kubernetes/utils/blob/9f6742963106fb1fadd7ec2493d6d6cd689e5318/net/ipfamily.go#L106


titleForValue not updating when componentWillReceiveProps

I have a heatmap component and feeding it data from the result of a graphql/apollo query.  When refreshing with client cached data (which doesn't call componentDidMount but just componentWillReceiveProps) it does not update the data in the titleForValue
First run (not cached data)

Second run (not cached data)

Third run (this is cached data, same as first run result set)

You can see the colours update properly, but the tooltip stays at what was the last load not from cached data
and I can see in the console that the correct values are being sent in

titleForValue is being set as an attribute on <CalendarHeatMap />
titleForValue={v => v ? ${moment(v.date).format('ddd D MMM YYYY')} weight: ${v.count} : ''}
Is there a way to force a refresh of the tooltip data when the component is not doing a full remount

Carried out a bit more investigation, your componentWillReceiveProps is definitely getting the correct data, and your this.getValueCache is definitely using the correct data, as seen below

Inspecting the elements it seems the "title" attribute and the "data-original-title" values are different

I'm using bootstrap tooltips

I realise this might be a bootstrap tooltips issue, so to get around it I came up with this

That may be of help to others.

Hey mikeq! Thanks a bunch for the detailed investigation and workaround, it's much appreciated.
I haven't looked into it deeply, but this does seem like a tricky problem to fix, since tooltips are supported in a non-react way, relying on external libs to mutate the DOM outside the react lifecycle. A better solution might be to look into using a react-based tooltip library.
Unfortunately, I'm no longer really a maintainer of this code. If anyone has ideas on improving this, feel free to comment or make a PR. In the meantime, mikeq's workaround seems pretty reasonable (though you'd probably want to scope the querySelectorAll selector).

@mikeq, I noticed that, while this component updates its "value cache" in componentWillReceiveProps(), it pulls values from a combination of props (i.e. both nextProps and this.props) in a way that creates the potential for inconsistency to exist within the component in all renders following the initial one.
Specifically, in componentWillReceiveProps(), while the component does use the next values prop (i.e. nextProps.values) :+1: , it continues to use the current props values (e.g. this.props.endDate, this.props.startDate, and, of particular relevance to the behavior you described, this.props.titleForValue) for everything else :-1:. As a result, among other things, the "value cache" of the component contains new values, but old other stuff (e.g. titles).

Note: This is unlike what happens in the component's constructor, where the component uses only this.props (a.k.a. props there, since it's an argument to the constructor) as the source of everything. As a result, everything is in sync on the initial render of the component.

I reported a different symptom of this same bug as Issue #59 and also submitted a fix in Pull Request #57. I am curious whether you still observe the issue while using the code in that PR.

One way you can "try out" the code in the PR, is to change the "react-calendar-heatmap" entry in your project's package.json file from this...
  "dependencies": {
    "react-calendar-heatmap": "^1.6.1",

The above entry points to the version registered with NPM.

...to this...
  "dependencies": {
    "react-calendar-heatmap": "git+https://github.com/gitname/react-calendar-heatmap.git#79010f4",

The above entry points to a version (i.e. a specific commit in my fork of the repo) that contains the fix.

...then, finally, running $ yarn install on your project.
You can then verify your project is using the new version, by running the following command...
$ cat node_modules/react-calendar-heatmap/src/index.jsx | grep latestProps.values

...and looking for this exact output:
      valueCache: this.getValueCache(this.latestProps.values),
      valueCache: this.getValueCache(this.latestProps.values),

If you see the output shown above, you can conclude you are using the version containing the fix; since those are lines I added to the file when I implemented the fix.

One way you can "try out" the fix I referred to in my previous comment is:

On your local system, clone the gitname-dev branch of the repository whose URL is https://github.com/gitname/react-calendar-heatmap.git. That branch contains the fix. You can clone it by issuing the following command:

$ git clone --single-branch -b gitname-dev https://github.com/gitname/react-calendar-heatmap.git ./gitname-react-calendar-heatmap
$ cd ./gitname-react-calendar-heatmap
$ git branch

* gitname-dev

The final two commands above are used to verify the gitname-dev branch is checked out.

Build the react-calendar-heatmap project by issuing the following command:

$ yarn install

Update package.json in your own project (the one that depends upon react-calendar-heatmap)...

$ cd ../my-project
$ vi ./package.json

so that this line...
    "react-calendar-heatmap": "^1.6.1",

looks like this:
    "react-calendar-heatmap": "file:/temp/gitname-react-calendar-heatmap",

Use whichever path you cloned the react-calendar-heatmap repo into in step 1. In my case, I cloned it into C:\Temp\gitname-react-calendar-heatmap, so I used the path /temp/gitname-react-calendar-heatmap.

Install the dependencies of your own project (according to your newly-updated package.json file):

$ yarn install

As a "sanity test," verify your project has picked up (i.e. is using) the version of react-calendar-heatmap that contains the fix. You can verify it by issuing the following command:

$ cat node_modules/react-calendar-heatmap/build/index.js | grep -o latestProps | wc -l

43

An output of 43 indicates you are using the version that contains the fix. If the output is 0, you are not using the version that contains the fix.

Finally, launch your project and check whether it still exhibits the behavior you were seeing before.

Update: instead of using my fork of react-calendar-heatmap as I suggested in my previous 2 comments; you can use version 1.6.2 of the official repo (all of my customization now exist in that version).


[BUG] time_to_idle not working as expected

time_to_idle function giving unexpected results. Follow below steps to replicate the issue.
[dependencies]
moka = { version = "0.12.1", features = ["sync"] }

fn main() {
    let cache = moka::sync::Cache::builder()
        .max_capacity(10)
        .time_to_idle(std::time::Duration::from_secs(5))
        .build();

    cache.insert(1, 1);

    std::thread::sleep(std::time::Duration::from_secs(4));
    println!("{:?}", cache.get(&1));

    std::thread::sleep(std::time::Duration::from_secs(2));
    println!("{:?}", cache.get(&1));
    println!("{:?}", cache.get(&1));
}

Output
Some(1)
None
Some(1)

Expected Output
Some(1)
Some(1)
Some(1)

Confirmed, and also present in branch fix-race-in-handle-upseart. Not present in v0.10.4 and v.0.11.3.

Thanks for reporting the issue and confirming in different versions!
I believe this issue should be present in v0.11.x and older versions too, but it should be harder to reproduce in those versions as they had background threads to periodically process pending tasks. Anyway, I think I can fix it for v0.12.x.

FYI, I published moka v0.12.2 with the fix to crates.io.


Adds email communications guide to docs, exposes other hidden guides in nav bar

Purpose
Adds guide on email communications and setting up an email config/secrets to docs.
Also exposes previously hidden guides in the docs nav bar.
Changes

Update docs

Checklist

[x] Update CHANGELOG.md file

[x] Merge in main so the most recent CHANGELOG.md file is being appended to
[x] Add description within the Unreleased section in an appropriate category. Add a new category from the list at the top of the file if the needed one isn't already there.
[x] Add a link to this PR at the end of the description with the PR number as the text. example: #1

[x] Applicable documentation updated (guides, quickstart, postman collections, tutorial, fidesdemo, database diagram.
If docs updated (select one):

[x] documentation complete, or draft/outline provided (tag docs-team to complete/review on this branch)
[ ] documentation issue created (tag docs-team to complete issue separately)

[ ] Good unit test/integration test coverage
[ ] This PR contains a DB migration. If checked, the reviewer should confirm with the author that the down_revision correctly references the previous migration before merging
[ ] The Run Unsafe PR Checks label has been applied, and checks have passed, if this PR touches any external services

Ticket
Fixes #1064

I took a quick pass at cleaning some of this up to match some of the updated/incoming guides - let me know if it's what you had in mind!

@conceptualshark your updates look so much better, thanks for the help on this!
Back over to you


Rename package to gridsome-plugin-remote-images

I feel like using the plural form is the way to go here (images instead of image). Better to change it now (if you agree) before people start using it on their projects.
I will update the README later to use the npm package name now that's been published (even if it's not renamed) 👍

sure

@hacknug, good catch 👍

We did it in the "new" repo: https://github.com/jammeryhq/gridsome-plugin-remote-images


Returning error for pull task enqueuing in Java.

Please do not merge.

Different approach coming up on another branch.


There is still something wrong with custom objective under 'goss' mode

How you are using LightGBM?

LightGBM component: Python package
Environment info

Operating System: Windows
CPU/GPU model: CPU
Other:

LightGBM version or commit hash:   The latest version download from the master branch at 2020/8/6
Problem
I meet the error Wrong type(int) for hessian. It shold be list, numpy 1-D array or pandas Series after the commit #3263, when using custom objective under the "goss" mode.

ping @shiyu1994
it seems the array in python ctypes is changed in c++.
@shaoguang123 can you provide a reproduce example, with random data, so that we can easily debug?

ping @shiyu1994
it seems the array in python ctypes is changed in c++.
@shaoguang123 can you provide a reproduce example, with random data, so that we can easily debug?

sorry, my bad. I miss something which cause that problem.


PUT columns controller

Issue: infinite loop between columnsBelongsTo from columns and get columns from mapping.
Resolution: override toString method by deleting relational attribute to avoid infinite loop


[Bug] Wrong dependency (exclusions) between Audio Custom Formats

Guide Name

[ ] Bazarr
[ ] Downloaders/Deluge
[ ] Downloaders/NZBGet
[ ] Downloaders/Qbittorrent
[ ] Downloaders/ruTorrent
[ ] Downloaders/SABnzbd
[ ] Downloaders/Other
[ ] Guide-Sync
[ ] Hardlinks/Docker
[ ] Hardlinks/Dockstarter
[ ] Hardlinks/Native
[ ] Hardlinks/Synology
[ ] Hardlinks/TrueNAS-Core
[ ] Hardlinks/Unraid
[ ] Misc
[ ] Plex
[ ] Prowlarr
[X] Radarr
[X] Sonarr
[ ] Other

Description
Audio Custom Formats (DTS, TrueHD, Atmos,  etc.) are configured in a way that they are mutually exclusive. For example, DTS audio has to be DTS and not Atmos. In the same way, Atmos has to be Atmos and not DTS.
This causes issues when Radarr/Sonarr detect, for example, both DTS and True HD Atmos, as it doesn't add any score given that no Custom Format qualifies.
This issue happens for scene releases that sometimes show both DTS and TrueHD Atmos on the filename as well as when  Radarr (and not sure if Sonarr) detects TrueHD after scanning but DTS was indicated on the release name. See Radarr issue
Expected Behavior
I believe the "not X" clauses should only be applied from "below", to avoid qualifying when another with a higher score is detected. For example:

TrueHD ATMOS: only check for TrueHD + Atmos
DTS X: check DTS X and not TrueHD ATMOS
ATMOS (undefined): check for ATMOS and not DTS X or TrueHD

That way, when files present both DTS and TrueHD ATMOS (or any other combination) only the higher score matches.
I believe this is a reasonable assumption as a release with both DTS and TrueHD ATMOS should be treated as a TrueHD ATMOS release, because it has an audio track with such format.
Screenshots
No response
Additional Context
No response

The excludes are intentional to avoid double scoring and multiple matches.
Changing the custom formats to support poorly named releases that lie about the audio format is highly unlikely.

Ref https://github.com/Sonarr/Sonarr/issues/5598
Ref https://github.com/Sonarr/Sonarr/pull/5575

My download was Top.Gun.1986.2160p.UHD.BluRay.x265.10bit.HDR.DTS-HD.MA.TrueHD.7.1.Atmos-SWTYBLZ with TrueHD Atmos being the primary audio in the file.
Trash Guides use of "NOT" caused it to not apply at CF because it has both audio codecs

SWTYBLZ is on the LQ list and would never ever be grabbed if you actually follow the guide.

I don't think the assumptions above are reasonable ones to make:

The studio will decide for any single release which format the audio track will have. As DTS and Dolby are competitors, any release featuring HD tracks from both (and that are supposedly from the same studio master) therefore has to contain at least one audio track that has been manufactured by the release group. We have no way of knowing which track is genuine, or which methods were used to generate the second audio track.
The proposed scoring logic only stands up on the basis that the more highly scored audio format is consistently set to be the file's primary audio track. If not, then - using the example above - the grab would be scored as per TrueHD Atmos, and then re-scored on disk as DTS-HD MA. This would cause a download loop.

More broadly, the guides are designed to automate the process of optimising grabs as much as possible. This relies on release groups adhering to well-recognised release and file naming conventions. The example release above does not adhere to these conventions, and the lack of adherence reveals the non-authenticity of the content therein.
I don't feel we should adopt this change.

When we started to set up the CF, we primarily looked at existing original disk formats, considering the audio formats, such as Dolby and DTS. In general, you will not find them on the same original disk.
After extensive research on what proper release groups do or use, we decided to follow the rules they use, rather than the release groups that unnecessarily bloat the releases.
Additionally, it is problematic to establish a proper scoring system for a release if we allow double scoring, as in this case. This could potentially cause a loop, because after renaming the Starr apps, they will only recognize one set of the audio formats and not two. This would result in a loop.
To prevent this, the CF is set up in a way that prevents double scoring. This also means that release groups that bloat releases are given lower scores. In some cases, we also place them in the LQ for specific reasons.

You could easily solve your issue if you followed the guides on "How to set up Quality Profiles," and you wouldn't run into this issue in the first place.

@TRaSH- The above statement is simply not true. I've followed the guides but I'm Spanish and my parents only consume dubbed content (sadly, quite common in Spain).  I only consume content in original version. All major Spanish private trackers provide all their content in Dual (Spanish + English audio + original audio if it's not English). I have all relevant CFs from Trash Guides enabled on my apps as well as a Dual one that prioritizes the Dual tracks over any other CF.
It's from these private Spanish trackers that these release names come from and this is something I cannot simply "ban" via CFs or I'd miss the content I want.
If this is something that you don't want to support that is alright. I'll manage it locally and I'll try to script it in a way that I can still stay up to date with your updates.

To prevent this, the CF is set up in a way that prevents double scoring. This also means that release groups that bloat releases are given lower scores. In some cases, we also place them in the LQ for specific reasons.

BTW, this is technically not correct. Mutually excluding from both CFs has the exact same effect as only excluding from the lower scored one: as long as DTS is DTS and not True HD ATMOS, True HD ATMOS can be just checking for itself.  Then you run into the following possible scenarios:

TrueHD ATMOS + DTS in the name: Only TrueHD ATMOS score is applied
TrueHD ATMOS in the name: TrueHD ATMOS score is applied
DTS in the name: DTS score is applied
Nothing in the name: no score is applied

I understand the edge case is in people wanting to provide custom scores that alter the priorities. For example, giving a higher score to DTS than to TrueHD ATMOS but, in that case, why would they even use the CF for the latter?

BTW, this is technically not correct. Mutually excluding from both CFs has the exact same effect as only excluding from the lower scored one: as long as DTS is DTS and not True HD ATMOS, True HD ATMOS can be just checking for itself.

You missed the point.
The grabs will score both audios. The imports and on disk will only ever have the first audio track.
Thus you will have an endless grab loop.

@bakerboy448 I'm sorry but that's not the case. First of all, this is my current local configuration and it works fine, so I know for a fact it doesn't score twice. Reason why is because I keep the "not" clauses on the lower CFs in reference to the higher ones. So it will only give the DTS score when it is DTS and IT'S NOT TRUEHD ATMOS. For releases with both in the name it will only give the TrueHD ATMOS score which in my opinion is the correct behaviour. With the current ones on the guides it doesn't score for any of the CFs, treating the release with the same score as one without any relevant audio format.
Again, I have this in place for both Sonarr and Radarr and the ones with both DTS and TrueHD ATMOS are only getting the TrueHD ATMOS. Tested with 7 different releases both on the parser and grabbing the movies in Radarr. With the guides CFs no score is added

@bakerboy448 I'm sorry but that's not the case. First of all, this is my current local configuration and it works fine, so I know for a fact it doesn't score twice. Reason why is because I keep the "not" clauses on the lower CFs in reference to the higher ones. So it will only give the DTS score when it is DTS and IT'S NOT TRUEHD ATMOS. For releases with both in the name it will only give the TrueHD ATMOS score which in my opinion is the correct behaviour. With the current ones on the guides it doesn't score for any of the CFs, treating the release with the same score as one without any relevant audio format.
Again, I have this in place for both Sonarr and Radarr and the ones with both DTS and TrueHD ATMOS are only getting the TrueHD ATMOS. Tested with 7 different releases both on the parser and grabbing the movies in Radarr. With the guides CFs no score is added

Take a look at my post further up - for all the examples you describe, is the "better" (higher scoring) audio track always set as the primary audio track? Can you confirm this?
In fairness to the team, when you were asked to provide an example release, you provided one which doesn't now seem to relate to your primary scenario which you've described in a later post (multiple audio Spanish releases?).
Also, there seems to be some confusion regarding "DTS". Across this discussion we've had "DTS", "DTS-HD MA" and "DTS:X" mentioned so far. Are you identifying several releases that have TrueHD Atmos plus one of the above?
Overall, I'm a touch confused.
I think I what we'd need to see next are multiple example release names that cover all the scenarios you're describing, as well as confirmation as to which of those audio tracks are set as the primary audio track in the file. If you can give us this detail then that will help.


feat: autopopulate git config based on token user

:warning: Please install the  to ensure uploads and comments are reliably processed by Codecov.
Codecov Report
Attention: Patch coverage is 97.84946% with 2 lines in your changes missing coverage. Please review.

Project coverage is 90.14%. Comparing base (38e061a) to head (06a690b).

Files with missing lines
Patch %
Lines

...folder-backend-module-git/src/actions/git/clone.ts
94.44%
1 Missing :warning:

...-backend-module-git/src/integration/integration.ts
94.44%
1 Missing :warning:

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.
Additional details and impacted files
@@            Coverage Diff             @@
##             main      #15      +/-   ##
==========================================
+ Coverage   87.96%   90.14%   +2.17%
==========================================
  Files          16       23       +7
  Lines         266      345      +79
  Branches       17       27      +10
==========================================
+ Hits          234      311      +77
- Misses         32       34       +2

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


Do you have multi-page cli?

I have to new multi-page but the cli not found it and it SPA project!!!

I guess, you mean a template. No, we don't

you dont understand my issue and close it. Do not the vue-cli only run the SPA project?

@zhangwei900808 I think you don't understand how vue-cli works, vue init is just a scaffolding tool. All you need is a template that is designed for multi-page project. btw, @posva understands you pretty well 😅

You asked a question and I answered... Sorry if I didn't understand you, I
really tried
On Thu, 18 May 2017, 15:11 zhang wei<EMAIL_ADDRESS>wrote:

you dont understand my issue and close it. Do not the vue-cli only run the
SPA project?
—
You are receiving this because you modified the open/close state.
Reply to this email directly, view it on GitHub
https://github.com/vuejs/vue-cli/issues/469#issuecomment-302399142, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AAoicX_qZMLkppB9A0MrOBJ4gQoDegubks5r7EOVgaJpZM4NfMl1
.

The repository for the webpack template can be found here:
https://github.com/vuejs-templates/webpack
But I don't understand the specific problem.


Add Haskell tools to macos-14

Tool name
GHCup, GHC, Stack, Cabal (the tool)
Tool license
Open source
Add or update?

[X] Add
[ ] Update

Desired version
The current versions, as for the other macos-* runners. For macos-12, they are currently: GHCup <IP_ADDRESS>, GHC 9.8.1, Stack 2.13.1 and Cabal <IP_ADDRESS>.
Approximate size
No response
Brief description of tool
The Haskell tools are the same ones as provided with the other macos-* runners. They all come in macOS/AArch64 versions.
URL for tool's homepage
No response
Provide a basic test case to validate the tool's functionality.
No response
Platforms where you need the tool

[ ] Azure DevOps
[X] GitHub Actions

Runner images where you need the tool

[ ] Ubuntu 20.04
[ ] Ubuntu 22.04
[ ] macOS 11
[ ] macOS 12
[ ] macOS 13
[ ] macOS 13 Arm64
[X] macOS 14
[ ] macOS 14 Arm64
[ ] Windows Server 2019
[ ] Windows Server 2022

Can this tool be installed during the build?
No response
Tool installation time in runtime
No response
Are you willing to submit a PR?
No response

Marking as a duplicate of https://github.com/actions/runner-images/issues/9242 as rationale is the same, currently we have no plans to add Haskell to new macOS runners but may reconsider in the future.


[SPARK-35380][SQL] Loading SparkSessionExtensions from ServiceLoader

What changes were proposed in this pull request?

In https://github.com/yaooqinn/itachi/issues/8, we had a discussion about the current extension injection for the spark session.  We've agreed that the current way is not that convenient for both third-party developers and end-users.
It's much simple if third-party developers can provide a resource file that contains default extensions for Spark to  load ahead
Why are the changes needed?

better use experience
Does this PR introduce any user-facing change?

no, dev change
How was this patch tested?

new tests

Test build #138420 has started for PR 32515 at commit baa61a3.

Kubernetes integration test unable to build dist.
exiting with code: 1
URL: https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder-K8s/42942/

Test build #138420 has finished for PR 32515 at commit baa61a3.

This patch fails to build.
This patch merges cleanly.
This patch adds no public classes.

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

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

Test build #138428 has started for PR 32515 at commit ec731fc.

Kubernetes integration test starting
URL: https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder-K8s/42949/

Kubernetes integration test status failure
URL: https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder-K8s/42949/

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

Test build #138434 has started for PR 32515 at commit 4e84a6f.

cc @cloud-fan @MrPowers @HyukjinKwon @maropu thanks

Test build #138434 has finished for PR 32515 at commit 4e84a6f.

This patch fails to build.
This patch merges cleanly.
This patch adds no public classes.

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

Kubernetes integration test unable to build dist.
exiting with code: 1
URL: https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder-K8s/42955/

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

Test build #138443 has started for PR 32515 at commit 453ad87.

Test build #138443 has finished for PR 32515 at commit 453ad87.

This patch fails MiMa tests.
This patch merges cleanly.
This patch adds no public classes.

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

Kubernetes integration test starting
URL: https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder-K8s/42964/

Kubernetes integration test status failure
URL: https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder-K8s/42964/

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

Test build #138428 has finished for PR 32515 at commit ec731fc.

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

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

Test build #138450 has started for PR 32515 at commit 1aece6a.

Test build #138452 has started for PR 32515 at commit 459eab0.

Kubernetes integration test starting
URL: https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder-K8s/42971/

Kubernetes integration test status failure
URL: https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder-K8s/42971/

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

Kubernetes integration test starting
URL: https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder-K8s/42973/

Kubernetes integration test status failure
URL: https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder-K8s/42973/

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

Test build #138457 has started for PR 32515 at commit e9b05cd.

Test build #138450 has finished for PR 32515 at commit 1aece6a.

This patch fails SparkR unit tests.
This patch merges cleanly.
This patch adds the following public classes (experimental):
case class AgeExample(birthday: Expression, child: Expression) extends RuntimeReplaceable
class SessionExtensionsWithLoader extends SparkSessionExtensionsProvider
class SessionExtensionsWithoutLoader extends SparkSessionExtensionsProvider

Test build #138452 has finished for PR 32515 at commit 459eab0.

This patch fails SparkR unit tests.
This patch merges cleanly.
This patch adds no public classes.

thanks  @dongjoon-hyun, I've updated PR with your comments addressed

Kubernetes integration test starting
URL: https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder-K8s/42978/

Kubernetes integration test status failure
URL: https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder-K8s/42978/

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

Test build #138461 has started for PR 32515 at commit 9b5d7c2.

Kubernetes integration test starting
URL: https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder-K8s/42982/

Kubernetes integration test status failure
URL: https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder-K8s/42982/

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

Test build #138457 has finished for PR 32515 at commit e9b05cd.

This patch fails SparkR unit tests.
This patch merges cleanly.
This patch adds no public classes.

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

Test build #138461 has finished for PR 32515 at commit 9b5d7c2.

This patch fails SparkR unit tests.
This patch merges cleanly.
This patch adds no public classes.

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

Ur, @yaooqinn . The R failure looks a little suspicious because it's consistent and relevant. It might be a side-effect in terms of test classes. Could you double-check it?
── 1. FAILURE (test_sparkSQL.R:4000:3): catalog APIs, listTables, listColumns, l
take(orderBy(f, "className"), 1)$className not equal to "org.apache.spark.sql.catalyst.expressions.Abs".
1/1 mismatches
x[1]: "noClass"
y[1]: "org.apache.spark.sql.catalyst.expressions.Abs"

Test build #138482 has started for PR 32515 at commit a79d76e.

Ur, @yaooqinn . The R failure looks a little suspicious because it's consistent and relevant. It might be a side-effect in terms of test classes. Could you double-check it?
── 1. FAILURE (test_sparkSQL.R:4000:3): catalog APIs, listTables, listColumns, l
take(orderBy(f, "className"), 1)$className not equal to "org.apache.spark.sql.catalyst.expressions.Abs".
1/1 mismatches
x[1]: "noClass"
y[1]: "org.apache.spark.sql.catalyst.expressions.Abs"

The failure proves this works well at the sparkR side, LOL. I changed the mocked function classname to fix this

Kubernetes integration test starting
URL: https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder-K8s/43002/

Kubernetes integration test status failure
URL: https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder-K8s/43002/

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

Test build #138484 has started for PR 32515 at commit 8f1be0e.

Test build #138484 has finished for PR 32515 at commit 8f1be0e.

This patch fails to build.
This patch merges cleanly.
This patch adds no public classes.

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

Kubernetes integration test unable to build dist.
exiting with code: 1
URL: https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder-K8s/43004/

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

Test build #138489 has started for PR 32515 at commit ad18acc.

Looks okay to me too

Kubernetes integration test starting
URL: https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder-K8s/43009/

Kubernetes integration test status failure
URL: https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder-K8s/43009/

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

Test build #138493 has started for PR 32515 at commit b8b54ea.

Kubernetes integration test unable to build dist.
exiting with code: 1
URL: https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder-K8s/43013/

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

Test build #138482 has finished for PR 32515 at commit a79d76e.

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

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

Thanks for the help ~ @dongjoon-hyun @HyukjinKwon @cloud-fan
+1 for myself. merged to master

Test build #138489 has finished for PR 32515 at commit ad18acc.

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

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

Test build #138493 has finished for PR 32515 at commit b8b54ea.

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

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


making a few changes

👷 Deploy Preview for trusting-khorana-7c5304 processing.
🔨 Explore the source changes: 045998c3990359805472431a52fadd221189a959
🔍 Inspect the deploy log: https://app.netlify.com/sites/trusting-khorana-7c5304/deploys/62193b81f5da870008bb890c


[feature request] add AMD cpu generations

Currently the AMD instruction sets are recognized, but no CPU generations.
Would you like to add them?

I would be happy to merge a pull request to add them, but I don't have the bandwidth to implement the support myself. But I don't think it ought to be very difficult — hopefully this would be an easy task for a new contributor to take on!


all: [ANCHOR-121] Add more_info_url configuration and construction classes

PR Checklist
PR Structure

[ ] This PR has reasonably narrow scope (if not, break it down into smaller PRs).
[ ] This PR avoids mixing refactoring changes with feature changes (split into two PRs
otherwise).
[ ] This PR's title starts with name of package that is most changed in the PR, ex.
paymentservice.stellar, or all or doc if the changes are broad or impact many
packages.

Thoroughness

[ ] This PR adds tests for the most critical parts of the new functionality or fixes.

What
[TODO: Short statement about what is changing.]
Why
[TODO: Why this change is being made. Include any context required to understand the why.]
Known limitations
[TODO or N/A]

Reference Server Preview is available here:https://anchor-ref-pr696.previews.kube001.services.stellar-ops.com/SEP Server Preview is available here:https://anchor-sep-pr696.previews.kube001.services.stellar-ops.com/

Reference Server Preview is available here:https://anchor-ref-pr696.previews.kube001.services.stellar-ops.com/SEP Server Preview is available here:https://anchor-sep-pr696.previews.kube001.services.stellar-ops.com/

Reference Server Preview is available here:https://anchor-ref-pr696.previews.kube001.services.stellar-ops.com/SEP Server Preview is available here:https://anchor-sep-pr696.previews.kube001.services.stellar-ops.com/


Free WebRTC Signaling Server for games

Would be nice to offer a free webrtc server. In case someone makes a game that is peer to peer, he still would need to host his signaling server.  Would be nice to have something free to use. Example signaling server in nodejs https://github.com/Faless/gd-webrtc-signalling/blob/master/server_node/server.js

https://github.com/blazium-engine/blazium-signal
Does this work out?
I'm going to try and replicate it 1-1, still missing some bits, and the tests need work.
But its a start.

Looks good I think, needs a documentation to document the protocol, as you said tests to make sure flows work, and to deploy it somewhere so users can test it. We should figure out some statistics too, eg. how many users can use this service.


Invalid le label in histogram metric

I get a ValueError: Invalid le label  when parsing a histogram metric with open metrics integration in Datadog.

I don't think this is a bug in our parser, but instead it is a bug in whatever is creating those metrics. OpenMetrics specifies using a "+Inf" bucket, not "+inf", as far as I know those values are supposed to be case sensitive.

Thanks for the insight @csmarchbanks. These metrics are generated by Databricks model serving infrastructure. So neither myself can modify them. I'll get in touch with Databricks to sort that out on their end. I'm closing the issue.


disable extensions not working for extension debugging

VSCode Version: 1.37.0-Insider
OS Version: Ubuntu 18.10

Steps to Reproduce:

Download https://github.com/microsoft/vscode-extension-samples/tree/master/helloworld-minimal-sample
Add --disable-extensions to launch.json as described in https://code.visualstudio.com/api/working-with-extensions/testing-extension#disabling-other-extensions-while-debugging:

{
  "version": "0.2.0",
  "configurations": [
    {
      "name": "Run Extension",
      "type": "extensionHost",
      "request": "launch",
      "runtimeExecutable": "${execPath}",
      "args": [
        "--disable-extensions",
        "--extensionDevelopmentPath=${workspaceFolder}"
      ]
    }
  ]
}

Does this issue occur when all extensions are disabled?: Yes
Additional information:

calling code-insiders --disable-extensions from the command line works as expected
--disable-extensions in launch.json has worked in version 1.35, it stopped working in 1.36

I am seeing the same behavior. It launches Code with an editor called --disable-extensions, and all extensions remain enabled.
System Information
Version: 1.37.0-insider (user setup)
Commit: 9296aaa2201b638e2b1dc71a9b9fe38c5ab2e904
Date: 2019-07-09T05:26:27.407Z
Electron: 4.2.5
Chrome: 69.0.3497.128
Node.js: 10.11.0
V8: 6.9.427.31-electron.0
OS: Windows_NT x64 10.0.15063

I just tried running the tests using the vscode-test module with launchArgs: ["--disable-extensions"] and that did succesfully disable the extensions, so this appears limited to just running as a debug task with type: extensionHost.

Until this is fixed, using --disable-extensions=1 seems to do the trick:
  "args": [
    "--extensionDevelopmentPath=${workspaceFolder}",
    "--disable-extensions=1"
  ],

Please try and verify the fix in the next Insiders build.

works great, thanks!

Can also verify, thank you!


OneCMS 7.2.2

What's new:

This release fixes a bug introduced by updating the bridgetown-feed dependency to 3.0.0.
It includes all other fixes from OneCMS 7.2.1.

Fixes: https://github.com/sladewatkins/website/commit/fa9d69c9310ed77526f4e2d6ecdbbff75d73d561 (OneCMS 7.2.1)
Fixes: https://github.com/sladewatkins/website/commit/5f9ec41cdc9ccb00275753cee0446cfe2ce4c67c (gems: update bridgetown-feed to 3.0.0)
Cc: dependabot[bot]<EMAIL_ADDRESS>

diffstat:
Updating fa9d69c..36d82a2
Fast-forward
 Gemfile                      | 2 +-
 Gemfile.lock                 | 6 +++---
 frontend/javascript/index.js | 2 +-
 src/_data/site_metadata.yml  | 4 ++--
 4 files changed, 7 insertions(+), 7 deletions(-)


[Storage] Add live tests to internal/release pipelines for Blob

[ ] The purpose of this PR is explained in this or a referenced issue.
[ ] The PR does not update generated files.

These files are managed by the codegen framework at Azure/autorest.go.

[ ] Tests are included and/or updated for code changes.
[ ] Updates to CHANGELOG.md are included.
[ ] MIT license headers are included in each file.

/azp run go - azblob


SVG Colors as an option

I'm thinking of creating a file in the SVG directory similar to gvh-titlemap.txt with an element name and color parameter pair.
I'd add one more parameter to specify the fully qualified filename.
If a file is specified but does not exist, I could create the file with the coded defaults. That would be the only time I would open the file with write privileges.

This was based on the mention of different colors in https://github.com/wcbonner/GoveeBTTempLogger/issues/75


Document setPublicPath and setResourceRoot

I was trying to get a slightly unusual file output setup working, and I didn't fully understand these two methods. In the official docs, setPublicPath is only mentioned twice, both times in examples without a thorough explanation of what it does, and setResourceRoot isn't mentioned at all.
It took me an hour of trial and error before I understood those functions (and their effects on CSS and other mix methods) well enough to configure my project correctly. It would be nice to have an official explanation in an easily-findable place in the official documentation.

I found this link in Google because I was struggling to work out the differences between setPublicPath and setResourcePath. Please document these.
For anyone else:
setPublicPath sets the base output path for any mix assets. Fonts, images etc.
setResourcePath sets the base output path in the generated assets relative to the public root (e.g. url('/css/fonts/font.tty'));
mix.setPublicPath('public_html/css');
mix.setResourceRoot('/css');

This documentation is still required. I think these two settings may be even more necessary for Windows users.

setResourceRoot is not mentioned anywhere on laravel-mix.com
I think this would be very valuable to add to the docs


xflux-gui: 2016-09-21 -> 1.1.10

Motivation for this change
Things done

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

[x] NixOS
[ ] macOS
[ ] Linux

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nox --run "nox-review wip"
[x] Tested execution of all binary files (usually in ./result/bin/)
[x] Fits CONTRIBUTING.md.

Do I need a service/desktop environment to use fluxgui?
$ /nix/store/ydagh41zyqadj1idch4vhhn7kqfnyjcm-xflux-gui-1.1.10/bin/fluxgui
Failed to contact configuration server; the most common cause is a missing or misconfigured D-Bus session bus daemon. See http://projects.gnome.org/gconf/ for information. (Details -  1: GetIOR failed: GDBus.Error:org.freedesktop.DBus.Error.ServiceUnknown: The name org.gnome.GConf was not provided by any .service files)
Critical error. Exiting.
Traceback (most recent call last):
  File "/nix/store/ydagh41zyqadj1idch4vhhn7kqfnyjcm-xflux-gui-1.1.10/bin/...fluxgui-wrapped-wrapped-wrapped", line 22, in <module>
    main()
  File "/nix/store/ydagh41zyqadj1idch4vhhn7kqfnyjcm-xflux-gui-1.1.10/lib/python2.7/site-packages/fluxgui/fluxapp.py", line 213, in main
    try:
  File "/nix/store/ydagh41zyqadj1idch4vhhn7kqfnyjcm-xflux-gui-1.1.10/lib/python2.7/site-packages/fluxgui/fluxapp.py", line 28, in __init__
    print "Critical error. Exiting."
  File "/nix/store/ydagh41zyqadj1idch4vhhn7kqfnyjcm-xflux-gui-1.1.10/lib/python2.7/site-packages/fluxgui/fluxapp.py", line 43, in exit
    try:
AttributeError: 'FluxGUI' object has no attribute 'xflux_controller'
Exception AttributeError: AttributeError("'FluxGUI' object has no attribute 'xflux_controller'",) in <bound method FluxGUI.__del__ of <fluxgui.fluxapp.FluxGUI object at 0x7fde31009990>> ignored

cc maintainer @sheenobu

I don't think you need a desktop environment for this. The error looks unrelated but I'm checking it out now.

@Mic92 yes you'll need gconf and maybe dbus to run the fluxgui. Not the full gnome environment, though.
This part:
Traceback (most recent call last):
  File "/nix/store/ydagh41zyqadj1idch4vhhn7kqfnyjcm-xflux-gui-1.1.10/bin/...fluxgui-wrapped-wrapped-wrapped", line 22, in <module>
    main()
  File "/nix/store/ydagh41zyqadj1idch4vhhn7kqfnyjcm-xflux-gui-1.1.10/lib/python2.7/site-packages/fluxgui/fluxapp.py", line 213, in main
    try:
  File "/nix/store/ydagh41zyqadj1idch4vhhn7kqfnyjcm-xflux-gui-1.1.10/lib/python2.7/site-packages/fluxgui/fluxapp.py", line 28, in __init__
    print "Critical error. Exiting."
  File "/nix/store/ydagh41zyqadj1idch4vhhn7kqfnyjcm-xflux-gui-1.1.10/lib/python2.7/site-packages/fluxgui/fluxapp.py", line 43, in exit
    try:
AttributeError: 'FluxGUI' object has no attribute 'xflux_controller'
Exception AttributeError: AttributeError("'FluxGUI' object has no attribute 'xflux_controller'",) in <bound method FluxGUI.__del__ of <fluxgui.fluxapp.FluxGUI object at 0x7fde31009990>> ignored

is just bad cleanup code in the fluxgui code.

Thanks! You shouldn't replace pythonPackages with python2Packages in derivations. If you want to be explicit, set pythonPackages = python2Packages in all-packages.nix, although there is no need for that.


Incorrectly rejects identical structure when encountering circularity

In this case there is no difference between o1 and o2, but diff incorrectly reports that there is:
var o1 = {};
var o2 = {};
o1.foo = o1;
o2.foo = o2;
diff(o1, o2)

By comparison, in this case there is actually a structural difference (which is correctly detected, albeit with less than entirely illuminating output):
var o1 = {};
var o2 = {};
o1.foo = o1;
o2.foo = {foo: o2};
diff(o1, o2)

I've left this issue here for about a year. Seems like a theoretical question... here's why I say that:
const { log, inspect } = require('util');
const assert = require('assert');
const diff = require('../');

const o1 = {};
const o2 = {};
o1.foo = o1;
o2.foo = o2;

assert.notEqual(o1, o2, 'not same object');
assert.notEqual(o1.foo, o2.foo, 'not same object');

const differences = diff(o1, o2);
log(inspect(differences, false, 9));

Produces:
[ DiffEdit {
    kind: 'E',
    path: [ 'foo' ],
    lhs: { foo: [Circular] },
    rhs: { foo: [Circular] } } ]

Seems correct to me. I suppose the README

for determining the structural differences between objects

may be the counter argument, after all, the structures are similar. I'm inclined to close this.

The use case I would have for diff, absent this bug, is testing serialisation / deserialisation round-tripping or other deep-copy routines.  My test code consists of creating various datastructures, serialising and then deserialising them, and then diffing the deserialised result against the original input.  The data I am serialising is arbitrary JavaScript data, so the serialisation routines need to handle cyclic data—and therefore the tests must too.
Having already had to write my own diff routines for the golang version of this code, I will observe that the algorithm is actually pretty easy:

Maintain two maps.  The first maps objects found while traversing o1 to the corresponding objects found while traversing o2; the second map vice versa.
Assume the two structures are the same until proven otherwise.
"Proof" means:

o1[…][…]… and o2[…][…]… are primitives with different values, or
one is a primitive and the other is not, or
one exists and the other does not, or
both are objects but of different internal types (e.g., plain object vs. function vs. array vs. date vs. regexp, etc.)
both are objects of the same internal type (e.g., regexps) but with different data (e.g., different patterns, different dates, boxed primitives with different boolean/string/number values, etc.), or
both are objects and map1[o1[…][…]…] exists but is !== o2[…][…]… or,
both are objects and map2[o2[…][…]…] exists but is !== o1[…][…]….

(Object prototypes, set members, and map keys and values ought to be treated just like properties: i.e., recursed upon and with the same two-way map tests.  WeakMaps and WeakSets present some difficulty, though there are other possible workarounds if we can constrain the set of possible keys.)

Any update on this? Thanks!


[Feature Request] Increase usefulness of data-autofill

First, thanks for making this useful module!
I'm currently attempting to use <auto-complete /> inside of a grid where each row contains a single <auto-complete />. I assign each <auto-complete /> a unique id based on its position in the array being iterated to generate the rows. I then use data-autofill to populate a hidden input with the actual value, in this case a unique ID, that I need from the AJAX response. This is where I'm having an issue.
Because data-autofill uses a name selector, all hidden input values are being updated. A supporting data attribute like the example below would be really useful in cases where multiple <auto-complete />'s are used on a single page to fetch similar results. See example below.
<auto-complete api="@Request.Path?handler=PlantItemSearch&query=${plantItemDataList_@i}&plantId=@Model.PlantId&fields=plantItemId;itemNumber;itemName"
    resultname="itemNumber"
    querymin="2"
    optionmax="50"
    inputdelay="150">
        <input type="text" id="plantItemDataList_@i" name="plantItemDataList_@i" autocomplete="off" placeholder="Enter Item Name or Number" value="@itemNumber" />
</auto-complete>
<input type="hidden"
            name="@namePrefix.@(nameof(PurchaseOrderDetailAddEdit.PlantItemId))"
<EMAIL_ADDRESS>            data-autofill="plantItemId"
            data-autofill-source="id="plantItemDataList_@i"" />

Admittedly, I haven't dug into the complexity of the code, but on the face of it, it seems like data-autofill-source could be added as an optional argument simply by updating this selector:
Array.from(this.input.form.querySelectorAll(`[data-autofill="${ name }"]`)).forEach(f => {
    f.value = data[name] || '';
    reset[name] = '';
});

To this:
Array.from(this.input.form.querySelectorAll(`[data-autofill="${name}"]:not([data-autofill-source]), [data-autofill="${name}"][data-autofill-source="${(this.input.name || this.input.id)}"]`)).forEach(f => {
    f.value = data[name] || '';
    reset[name] = '';
});

Alternatively, exposing a custom change event that includes all fields in the fields query string param could also work, although it seems less elegant. Thoughts?

Thanks @JamesHill3.
You appear to have quite an unusual problem and I'm still trying to get my head around it!
I agree there's an issue with auto-filling - it's too imprecise if you have similar API results. Your data-autofill-source solution is an option, but it feels a little complex. A custom event seems a great idea, but I'll have a think about some options.
Craig

Thanks for responding, @craigbuckler . Just in case I've done a poor job explaining myself, I've put together a couple of fiddles that do a better job of demonstrating what I'm trying to overcome.
The issue I'm trying to overcome is demonstrated here. In this quick and dirty adaptation of your original codepen demo, I'm collecting two countries - the country I currently live in and the country I want to live in. Notice what happens to the auto-fill's when the first country is populated.
My proposed solution can be found here. Take note that if a data-autofill-source is not provided, it will simply default to the current functionality.
Do the demos help? Does it confirm your suspicion that it's too complex, or have you fallen madly in love with the idea :-)?

@craigbuckler Both the event or the namespace idea would work for me. Thanks!

Thanks @JamesHill3. That's great. I'll sleep on it then get an update done shortly.
Appreciate the suggestions and feedback.

@craigbuckler Thanks for the update! I think that the way you've handled it is very clean.

To be fair, it's very similar to your solution so thanks for the suggestion!


Not able to move the loaded 3D objects

I am trying to load 3D assets and position them in the scene. I am not able to change their position. Can you please give a pseudo-code that can do this?

hi. it's impossible for loaded objects. it's not implemented

What about the animation of loaded 3D objects? Does it play the animations? If this is enabled then you can load the entire scene in Blender and bring it into Blazor3D.

animations are not supported yet


feat: add refetch_frequency parameter to settings

:zap: Summary
First of all, thanks everyone for the great tool!
The remote feature of lefthook allows us at the place where I work to easily share configuration across our hundreds of repositories. Usually, our devs have some dozens of repositories cloned on their machines and work actively in one or two at a time. To ensure that they will have a reasonably recent config when going back to a repo after some time, we configure our remotes with refetch: true, but this has the side effect that every time they run lefthook on a currently active repository, either by commiting something or by hand to manually check the output of the QA tools, they trigger a fetch.
To make the experience smother, this PR introduces a new parameter refetch_frequency that allows a more fine grained control over the remote refetching by allowing the definition of time periods instead of just a boolean flag. This is a working implementation already, but it defers some decisions that could be made to maybe improve the usability. I didn't want to touch the following points without consulting the core team before, but:

I think that this parameter superseds the current refetch, so maybe it could be marked deprecated;
I used ParseDuration from go's stdlib in the current implementation, but a more user-friendly format could be used at the cost of a new dependency.

I also apologize in advance for any oddities in the code, I'm not a go programmer, but I can make changes that you see fit to make the PR more fitting.
:ballot_box_with_check: Checklist

[x] Check locally
[x] Add tests
[x] Add documentation

Wow! Thank you for providing this PR! I will review it this week and will release if everything is good :+1:

Check out 1.8.2 version!


Optimize decodeProperty

It's one of the main hot spots in many apps. I think that the performance could be improved if we re-used the feature object from the MVT decoder for Dataframe.getFeature and if didn't put every property on Float32Arrays unless they are needed (lazy).

The laziness idea was tested and was found pretty bad in some common cases.
However, the Web Worker PR has addressed this issue.


Main.py 40: no fast renderer available

sorry, I'm quite new to github and coding, but when I follow the steps and finally reach to running main.py, this issue accured:

sorry if this is a stupid question, but I appreciate if anyone answers!

hey @ohcomeonman  O\
I did a test now installing the project from the beginning, and this alert did not appear.
It could be the lack of some dependencies for the operating system, I use Linux Ubuntu and a few months ago when running pygame, I needed to install modules necessary to render the SDL.
Were you able to run the game?

I'm not able to run the game, I first thought it would be kind of internet error or something...
I'm using replit and I use the pygame module.

I managed to run the game in the replit.
The replit has a default template with the pygame configuration, I took this template and uploaded it from the game repository.
There are some problems running the project there, for example memory consumption, cpu and screen size, but it works.
The project is on my profile.
link

hello, do you change anything? if yes, can you show where you changed it?

First I did a test by importing the project directly from github, but the game didn't run, it showed an error for not finding a video driver.
After the fastest way, O_o, I got the ready-made pygame template available in the replit, and I imported the project files straight from my machine.
The problem was the build needed to recognize the video and audio drivers on the replit platform.
Any pygame project you can do there needs to have the same pygame build, which is in the pyproject.toml and poetry files. lock

poetry.lock
pyproject.toml

# the default build of pygame in replit already includes the libs

~/The-Hero-Journey$ pip list
Package            Version
------------------ -----------
cachecontrol       0.12.11
cachy              0.3.0
certifi            2022.12.7
cffi               1.15.1
charset-normalizer 3.0.1
cleo               0.8.1
clikit             0.6.2
crashtest          0.3.1
cryptography       39.0.0
dearpygui          1.6.2
debugpy            1.6.3
distlib            0.3.6
filelock           3.9.0
html5lib           1.1
idna               3.4
jedi               0.18.1
jeepney            0.8.0
keyring            21.8.0
lockfile           0.12.2
msgpack            1.0.4
packaging          21.3
parso              0.8.3
pastel             0.2.1
pexpect            4.8.0
pip                21.2.3
pkginfo            1.9.6
platformdirs       2.6.2
pluggy             1.0.0
poetry             1.1.11
poetry-core        1.0.8
ptyprocess         0.7.0
pycparser          2.21
pyflakes           2.4.0
pygame             2.1.2
pylev              1.4.0
pyparsing          3.0.9
python-lsp-jsonrpc 1.0.0
python-lsp-server  1.5.0
pytoolconfig       1.2.2
requests           2.28.2
requests-toolbelt  0.9.1
rope               1.3.0
secretstorage      3.3.3
setuptools         57.4.0
shellingham        1.5.0.post1
six                1.16.0
toml               0.10.2
tomli              2.0.1
tomlkit            0.11.6
ujson              5.4.0
urllib3            1.26.14
virtualenv         20.17.1
webencodings       0.5.1
whatthepatch       1.0.2
yapf               0.32.0

I think the way to solve the problem with no video driver is that you can use a dummy driver:
import os
os.environ["SDL_VIDEODRIVER"] = "dummy"
I also used the pygame template.

thank you for your help, I now fix this issue and I start the game perfectly, but the only problem is that the scrren didn't shows all the game, but that's nt your problem, so I appreciate all your help!