backdooring success messaged printed several times for a single server

Env: 2.2.0 (Steam)
Backdooring servers might take some time and therefore the script to backdoor a single server is run more than once.
This results in several messages showing the success of a backdoor operation.

The master script that kicks off the "background" backdoor scripts
shouldn't be running frequently enough for this to happen.
In what circumstances does it run multiple times?
On Wed, Jan 4, 2023, 7:34 p.m. Stephen Reindl @.***>
wrote:

Env: 2.2.0 (Steam)
Backdooring servers might take some time and therefore the script to
backdoor a single server is run more than once.
This results in several messages showing the success of a backdoor
operation.
—
Reply to this email directly, view it on GitHub
https://github.com/alainbryden/bitburner-scripts/issues/256, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AARN33P2ONTRWCQCWY6HANTWQYCJFANCNFSM6AAAAAATRKSNUU
.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>

see a screenshot right now:

backdoor takes more than 30 secs.
You will see that netlink and computek are there twice, after I've disabled the patch.

BTW: This is not related to the backdoor scripts:
(PID - 12) /Remote/grow-target.js alpha-ent<PHONE_NUMBER>713<PHONE_NUMBER>713 0 prep 0 0
(PID - 13) /Remote/grow-target.js alpha-ent<PHONE_NUMBER>713<PHONE_NUMBER>713 0 prep 0 0

According to discord this is a bug in BB (introduced by https://github.com/bitburner-official/bitburner-src/pull/296).
I would suggest to close this issue or keep it as an enhancement to reduce ns.run executions that will be fail out due to this.

Despite the behaviour being triggered by a regression in the game, I still think it's valid to check in advance.
I was initially worried about the new inclusion of ns.ps adding to the RAM overhead of the script, but it's only 0.2 GB in a script that's already 5GB (clearly hasn't been ram optimized) , so I don't think I have to worry about it.

According to discord this is a bug in BB (introduced by bitburner-official/bitburner-src#296).

no,  #260 caused the bug, [https://github.com/bitburner-official/bitburner-src/pull/296] fixes it


Is it possible to add a position?

In here.

Because the bottom position always show the tool bar or AD.
Is it possible to avoid covering display it？

Hi, do you build locally (have control over iOS sourcecode)?

Yes, same problem.
If the toast showed a little higher position, I think user experience will be better.

Hi guys, while waiting for me to finally make the positions fully configurable I've lowered the top one a bit and moved the bottom one a bit up (iOS only).

Thanks a lot.
Does Andriod can not configurable ?

Yes you can tweak the notification height for Android as well, see this line

Thanks.
Is possible to provide api to configure position by javascript?

Ghehe, absolutely, I should make some time for that..

Thanks a lot.
Alothough I changed the java code.
But I think this not good idea to change native code of plugin,that inconvenient to update.
Thank your plugin, this very useful.

Hi @EddyVerbruggen!
First, thanks for the plugin!
The plugin shows up over the ads when using admob....
When using admob everything goes up... but not this plugin...
I'm using this plugin: https://github.com/floatinghotpot/cordova-admob-pro
Here is a screenshot of how it looks:

Working on this feature right now!

@ctl1690 @rodrigograca31 By popular demand (thanks for asking!) you can now control the vertical position on iOS, Android and WP!
Look for showWithOptions in the updated README and make sure to add addPixelsY. Any number (positive or negative) will be added to the position you pass in. So for example this will show a short toast near the bottom, but a bit more upwards than you were used to:
            window.plugins.toast.showWithOptions(
                  {
                    message: "hey there",
                    duration: "short",
                    position: "bottom",
                    addPixelsY: -60  // default 0
                  }
            );

:beers:

@EddyVerbruggen Thanks! You are the best :smile:
This is why I love open source! ;)
In my case I had to add -150 pixels (ad size)

@EddyVerbruggen Thanks a lot. This plugin is very very useful.


[WIP] Bump hashicorp deps

bump hashicorp/go-memdb v1.0.3
full diff: https://github.com/hashicorp/go-memdb/compare/cb9a474f84cc5e41b273b20c6927680b2a8776ad...v1.0.3
possibly relevant changes:

hashicorp/go-memdb#21 Added a new MultiIndexer for map[string]string fields
hashicorp/go-memdb#23 Adds support for fine-grained watches
hashicorp/go-memdb#25 Delays mutation notifications until after the whole transaction is applied

fixes hashicorp/go-memdb#24 Notify channels close early during a commit

hashicorp/go-memdb#26 Add a uint indexer
hashicorp/go-memdb#31 Fix buffer size when encoding uint fields
hashicorp/go-memdb#35 Add DeletePrefix method that allows faster deletes of objects in the id index
hashicorp/go-memdb#37 Add WatchCtx function
hashicorp/go-memdb#38 WatchCtx returns error
hashicorp/go-memdb#39 Add a FilterIterator that wraps a ResultIterator
hashicorp/go-memdb#42 use ErrNotFound for deleting missing item
hashicorp/go-memdb#50 fix: dereference pointers for String Fields
hashicorp/go-memdb#52 fix: allow nil string pointers
hashicorp/go-memdb#59 Add Int indexing
hashicorp/go-memdb#60 Add CompoundMultiIndexer
hashicorp/go-memdb#61 Add LowerBound to allow for index range scans

bump hashicorp/golang-lru v0.5.3
full diff: https://github.com/hashicorp/golang-lru/compare/v0.5.1...v0.5.3

hashicorp/golang-lru#56 lru.Get(): avoid nil pointer dereference
hashicorp/golang-lru#57 Adds LRU cache resize
hashicorp/golang-lru#58 lru: don't kill the return values of Remove and RemoveOldest

hm.. looks like this needs some work and their latest versions don't play well together?
# github.com/docker/swarmkit/vendor/github.com/hashicorp/go-memdb
vendor/github.com/hashicorp/go-memdb/txn.go:623:11: indexIter.SeekLowerBound undefined (type *iradix.Iterator has no field or method SeekLowerBound)
make: *** [bin/swarmd] Error 2
Exited with code 2

Ah, it's because of our fork of immutable radix

Added a WIP commit to re-vendor immutable radix from my branch; https://github.com/tonistiigi/go-immutable-radix/pull/1

These were updated, so this is no longer needed


[Bug]: azure open ai config

Is there an existing issue for the same bug?

[X] I have checked the troubleshooting document at https://opendevin.github.io/OpenDevin/modules/usage/troubleshooting
[X] I have checked the existing issues.

Describe the bug
Based on the documentation I ran the azure open ai config, I managed to open the ui but i got :
Agent encountered an error.
Would it be possible to give an example of azure openai configuration,
this one is not so clear : https://docs.all-hands.dev/modules/usage/llms/azureLLMs#azure-openai-configs
Current OpenDevin version
ghcr.io/opendevin/opendevin

Installation and Configuration
I ran this command in the terminal:

WORKSPACE_BASE=$(pwd)/workspace
docker run -it \
    --pull=always \
    -e SANDBOX_USER_ID=$(id -u) \
    -e WORKSPACE_MOUNT_PATH=$WORKSPACE_BASE \
    -e LLM_BASE_URL="https://xxx.openai.azure.com/" \
    -v $WORKSPACE_BASE:/opt/workspace_base \
    -v /var/run/docker.sock:/var/run/docker.sock \
    -p 3000:3000 \
    --add-host host.docker.internal:host-gateway \
    --name opendevin-app-$(date +%Y%m%d%H%M%S) \
    ghcr.io/opendevin/opendevin

Model and Agent
No response
Operating System
WSL
Reproduction Steps
No response
Logs, Errors, Screenshots, and Additional Context
File "/app/.venv/lib/python3.12/site-packages/litellm/utils.py", line 7496, in exception_type
raise APIConnectionError(
litellm.exceptions.APIConnectionError: litellm.APIConnectionError: AzureException APIConnectionError - 'NoneType' object has no attribute 'split'

-e LLM_BASE_URL="https://xxx.openai.azure.com/" \

Like this, you need to pass the remaining environment variables.

Could you run this to check whether the API is working properly?
from litellm import completion
from datetime import datetime
import os

if os.path.exists('config.toml'):
    from toml import load
    config = load('config.toml')
else:
    config = {
        'LLM_MODEL': 'gpt-4-turbo-2024-04-09',
        'LLM_API_KEY': 'your-api-key',
        'LLM_BASE_URL': None
    }

messages = [{ "content": "If there are 10 books in a room and I read 2, how many books are still in the room?","role": "user"}]
dt = datetime.now()
response = completion(model=config['LLM_MODEL'],
                        api_key=config['LLM_API_KEY'],
                        base_url=config['LLM_BASE_URL'],
                      messages=messages)

content = response.choices[0].message.content
print(content)

if '8' in content:
    print('--> Correct answer! 🎉')
    print('There are still 10 books in the room; reading them does not reduce the count. Consider exploring more accurate models for better results.')

dt2 = datetime.now()
print('Used model:',config['LLM_MODEL'])
print(f"Time taken: {(dt2-dt).total_seconds():.1f}s")

api version can use the default

I think you need to pass that too.
https://litellm.vercel.app/docs/providers/azure

it's working ,
what is the structure of the command, is it
-e WORKSPACE_MOUNT_PATH=$WORKSPACE_BASE
-e LLM_BASE_URL="https://xx.openai.azure.com/"
-e LLM_MODEL="azure/gpt-4o"
-v $WORKSPACE_BASE:/opt/workspace_base \

Yes

The notebook is working but there's a problem with the command structure i tried various options and it didn't work

@yanivvak can you please send with -e the two variables for api base and api version, as you did, then open the UI and choose the model in the Settings box, same for the key.

@enyst  thanks, I tried it:
WORKSPACE_BASE=$(pwd)/workspace
docker run -it
--pull=always
-e SANDBOX_USER_ID=$(id -u)
-e WORKSPACE_MOUNT_PATH=$WORKSPACE_BASE
-e LLM_BASE_URL="https://xx.openai.azure.com/"
-e LLM_API_VERSION = "2024-02-15-preview"
-v $WORKSPACE_BASE:/opt/workspace_base
-v /var/run/docker.sock:/var/run/docker.sock
-p 3000:3000
--add-host host.docker.internal:host-gateway
--name opendevin-app-$(date +%Y%m%d%H%M%S)
ghcr.io/opendevin/opendevin
docker: invalid reference format.
See 'docker run --help'.

I tried with deployment name as well and it didn't work

Did you run in powershell?
https://stackoverflow.com/a/51379726/5033247

I ran it with wsl(inside power shell), the thing is that I manage to run the docker with the ui, but when I add azure credentials, i get this response

Could you provide a screenshot of the error?

@SmartManoj  "you must be using Linux, Mac OS, or WSL on Windows"(documentation)
When I run this command from WSL the docker and ui is working
WORKSPACE_BASE=$(pwd)/workspace
docker run -it
--pull=always
-e SANDBOX_USER_ID=$(id -u)
-e WORKSPACE_MOUNT_PATH=$WORKSPACE_BASE
-v $WORKSPACE_BASE:/opt/workspace_base
-v /var/run/docker.sock:/var/run/docker.sock
-p 3000:3000
--add-host host.docker.internal:host-gateway
--name opendevin-app-$(date +%Y%m%d%H%M%S)
ghcr.io/opendevin/opendevin
**when i try to add azure credentials I'm getting the above error, I guess it is related to command structure because I managed to run the code snippet of litellm that you sent me

Could you run it in CMD?

You need to type wsl in cmd and enter this command.
Could you provide the screenshot of the error?

Again when I run it with on wsl without api key it's working, the problem is with the structure of the command with the credentials
WORKSPACE_BASE=$(pwd)/workspace
docker run -it
--pull=always
-e SANDBOX_USER_ID=$(id -u)
-e WORKSPACE_MOUNT_PATH=$WORKSPACE_BASE
-e LLM_BASE_URL="https://x.openai.azure.com/"
-e LLM_API_KEY="x"
-e LLM_MODEL="azure/gpt-4o"
-e LLM_API_VERSION = "2024-02-15-preview"
-v $WORKSPACE_BASE:/opt/workspace_base
-v /var/run/docker.sock:/var/run/docker.sock
-p 3000:3000
--add-host host.docker.internal:host-gateway
--name opendevin-app-$(date +%Y%m%d%H%M%S)
ghcr.io/opendevin/opendevin
docker: invalid reference format.
See 'docker run --help'.
-e: command not found

BTW I used open ai key and it did work, but after a while i got a 429 error so it's quota issues, this is why I'm struggling to deploy with azure which I don't have quota issues

Great, it's working, can you please change your documentation, as this space is in the original documentation :(you can add your command as an example)
LLM_BASE_URL=""          # e.g. "https://openai-gpt-4-test-v-1.openai.azure.com/"
LLM_API_KEY=""
LLM_MODEL="azure/"
LLM_API_VERSION = ""          # e.g. "2024-02-15-preview"

@yanivvak now that the docs have been updated with this fix, are we good to close this issue?

Sure, thanks!


Parametrize NotFound

Problem: NotFound response is hardcoded

Solution: add JettyBuilder.withNotFoundResponse(notFoundResponse: Request[F] => Response[F])

Unit test: see NotFoundSpec.scala

Hi Ross, Thank you very much for taking the time to reply.
I looked at how Blaze is used and it looks like it doesn't have a default behavior for NotFound (while Jetty does). If you don't use the .orNotFound syntax when building the HttpApp then the server will throw a scala.MatchError on unspecified endpoints. So if Jetty will have the same style as Blaze in the future, then I can simply compose the HttpRoutes with a NotFoundRoutes that matches all the remaining requests: as in https://github.com/http4s/http4s/pull/3002/files#diff-6b8603ed2bda2b6badb1b19f63335be1 (see case req@_ => NotFound(s"Not Found ${req.uri.path}")).
Then there is no need for a JettyBuilder.withNotFoundResponse(notFoundResponse: Request[F] => Response[F]) and I will delete my PR.

https://github.com/http4s/http4s/pull/3012 was merged, so now there is JettyBuilder.mountHttpApp. It is now convenient to handle all NotFound on endpoints not defined in HttpRoutes: simply handle them when converting HttpRoutes (partial function) into HttpApp (total function).


Openapi tools with jsonb as serializationLibrary generate compilation errors for java-helidon-client

Openapi tools with jsonb as serializationLibrary generate compilation errors for java-helidon-client
Environment Details

Helidon Version: 3.2.0
Helidon SE or Helidon MP: SE
JDK version: 17.0.6 Temurin
OS: Fedora 38 Beta
Docker version (if applicable): No docker.

Problem Description
I'm trying to generate the server and client with the openapi tools.
The server part works without compilation errors. The client part however does not.
It seems like JsonbSupport.create(jsonbConfig)) changed to JsonbSupport.create(JsonbBuilder.create(jsonbConfig))).

Also these two classes are generated which have a dependency on jakarta.ws.rs and I'm not sure how to handle them as the example does not generate these: https://github.com/helidon-io/helidon/tree/main/examples/openapi-tools/quickstart-se/se-client/src/main/java/org/openapitools/client/api

Steps to reproduce
I'm using the gradle plugin of openapi-tools to generate the client.
Do I miss any configuration values maybe?
import kotlin.io.path.div

plugins {
    id("koala.kotlin.lib")
    alias(libs.plugins.openapi.generator)
}

dependencies {
    implementation(platform("io.helidon:helidon-dependencies:${libs.versions.helidon.get()}"))
    implementation("io.helidon.webclient:helidon-webclient")
    implementation("io.helidon.webserver:helidon-webserver")
    implementation("io.helidon.media:helidon-media-jsonb")
    implementation("io.helidon.config:helidon-config")
}

val v1Spec: String = project.file("../openapi/v1.yaml").toString()
val openApiGeneratedSourceSet = buildDir.toPath() / "generated/openapi"

sourceSets {
    val main by getting
    main.java.srcDir(openApiGeneratedSourceSet / "src/main/java")
}

openApiGenerate {
    generatorName.set("java-helidon-client")
    library.set("se")
    inputSpec.set(v1Spec)
    outputDir.set(openApiGeneratedSourceSet.toString())
    packageName.set("xxx.client")
    ignoreFileOverride.set(project.file("../.openapi-generator-ignore").toString())
    configOptions.set(
        mapOf(
            "dateLibrary" to "java8",
            "serializationLibrary" to "jsonb",
            "fullProject" to "false",
            "apiPackage" to "xxx.api",
            "modelPackage" to "xxx.models",
        )
    )
}

openApiValidate {
    inputSpec.set(v1Spec)
}

tasks.compileKotlin.configure {
    inputs.files(tasks.openApiGenerate.get().outputs)
}

tasks.clean.configure {
    delete(openApiGeneratedSourceSet)
}

I could not reproduce the problem related to the dependency on jakarta.ws.rs.
I checked the code of the java-helidon-client and it looks like that these two classes (ApiException and ApiExceptionMapper) are generated if mp library is used for java-helidon-client.

I could not reproduce the problem related to the dependency on jakarta.ws.rs. I checked the code of the java-helidon-client and it looks like that these two classes (ApiException and ApiExceptionMapper) are generated if mp library is used for java-helidon-client.

Thanks for fixing the jsonb problem!
It might be that I switched to mp to check and forgot to clean it automatically on gradle clean. Will check it again later when your PR is released.

I found another compilation error:
When using jsonb as serialization together with openapi's nullable: true, a org.openapitools.jackson.nullable.JsonNullable import is generated (without a usage).

This import is added in java classes when jackson is used as a serializationLibrary. This error could happen if fullProject set to false and project is regenerated several times with serializationLibrary set to jackson or without this parameter at all and then again with jsonb. Therefore, it is not a bug.

Hm, I just tried a clean build with my configOptions above and I do get this generated everytime.
I try to setup a small reproducer project later this week.

I've created a minimal reproducer project.: https://github.com/arturbosch/helidon-openapi-reproducer
Steps:

Run gradle openApiGenerate
Notice that build/generated/openapi/src/main/java/test/models/MetricDescriptor has the jackson annotation

I'm using nullable: truein my v1.yaml.

jackson-databind-nullable

Yes, it is okay to manually add dependencies which I also do with jsonb etc.
What I miss is why 1. a jackson annotation is generated if I use jsonb and 2. why JacksonNullable import is generated which is never used.
I do still think that generating an import which is not used a bug here, don't you agree ?


Unable to run display notification through osascript in tmux

Running the following fails when run under tmux (at least) on OS X 10.10:
osascript -e 'display notification "This is a test message." with title "Test"'

However, when run in a Bash shell without tmux it works fine. Any ideas?
This may very well be out of scope for this project but this was mentioned as a potential solution in a StackOverflow question.

The wrapper program does help this case for me (10.10.3). Of the following two commands (run inside a tmux session), only the second one actually produces a notification:
osascript -e 'display notification "Test (from tmux)"'
reattach-to-user-namespace osascript -e 'display notification "Test (from tmux, reattached)"'

However, I would not be surprised if this is similar to #37, where the wrapper stops helping if the tmux server outlives your GUI login.
If including the wrapper (like the second command above) does not help, you could try this command (from outside any existing tmux session: e.g. a plain Terminal or iTerm window):
tmux -L fresh new "reattach-to-user-namespace osascript -e 'display notification \"Test (from fresh tmux, reattached)\"'"

(where no tmux server is currently running under the name fresh)
If that command works, then restarting your tmux server should help (at least until you logout of you GUI session again), but this means quitting any existing sessions, so you would have to recreate any long-running sessions that you want to have back.
Unfortunately, I do not know of a way to fix this “after GUI relogin” scenario. This stuff has always been almost completely undocumented. Apple fixed pasteboard access (without the wrapper, even after a GUI relogin) but there appear to be several other areas like this remain half broken (i.e. fixable with the wrapper program) before GUI logout and fully broken after GUI relogin).

This is really helpful.
Including the wrapper did the trick.
These issues occasionally end up being the documentation for certain corner cases. Thank you for the detailed answer. I'll head over and update the StackOverflow questions.


By the way, my "God" is Edward Witten inspired, and thus richer in weight space.

Your "deity" is still using real numbers in weight space. Why stop at real numbers when better things exist such as: unitaryRNNs, or Deep Complex Nets or reasonably my "Supersymmetric Artificial Neural Network"?

Your "deity" appears to lack inclusion of reinforcement learning, which has been demonstrated by Deepmind to be pertinent in describing their general learning algorithm "AlphaZero".

Deities as defined within the realm of artificial general intelligence ought not to be worshipped and ought to be atheism compatible!!

Thank you for the insights. The deity will eventually gain enough power simultaneously as I keep gaining the knowledge of this field. :+1:
:)

The idea about black holes as absolute minima is somewhat intriguing.
Anywat, does your deity include considerations for reinforcement learning?

Also, remember to try to get a broad view of machine learning before attempting to "invent" things.
This way you avoid relabelling prominent work.
Examples of ways to observe neural nets as a whole:

Short 4 line deep neural net overview

2.Short 5 line overview of deep neural net in terms of groups ranging from orthogonal to special unitary grouping

closing the issue


Adjust NonZero to the new specs

Can you add a type prop test for i32 output type? A test with i32 for constant folding would also be nice to see if the pattern matcher can find NonZero nodes with i32 attribute value.


New functionality

Here, we should add more screen and functionality to the app.

The new welcome screen has been added.


test: fix unit test double free

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 72.58%. Comparing base (2ea4d70) to head (9b33702).
Report is 2 commits behind head on 3.0.

Additional details and impacted files
@@            Coverage Diff             @@
##              3.0      #93      +/-   ##
==========================================
- Coverage   72.59%   72.58%   -0.02%
==========================================
  Files         103      103
  Lines        4850     4851       +1
  Branches      429      429
==========================================
  Hits         3521     3521
- Misses       1168     1169       +1
  Partials      161      161

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


Rules related to sensitive content in configMaps have documentation broken and produce false positives

Hello, rules avd-ksv-0109 and avd-ksv-0110 recently introduced have a couple of issues:

Documentation links included in the output are broken and I did not success going to the aquasec vulnerability database directly to find the rule details
https://avd.aquasec.com/misconfig/avd-ksv-0110
https://avd.aquasec.com/misconfig/avd-ksv-0109

Seems like those two rules are implemented using partial matching of keywords such as "KEY", "TOKEN" or "EMAIL" in the configMap key names, but that generates false positives since no actual emails or APIKeys or any other sensitive data is stored, in our case, most matches is either URL's to an email-related service or the name of key in some other system but not the actual key value

Examples:
HIGH: ConfigMap 'dev01-config' in 'dev01' namespace stores sensitive contents in key(s) or value(s) '{"PROJECT_KEY",  "EMAIL_VALIDATION_SERVICE_BASE_URL", "SECRET_KEY_ID"}'
Storing sensitive content such as usernames and email addresses in configMaps is unsafe
HIGH: ConfigMap 'dev01-config' in 'dev01' namespace stores secrets in key(s) or value(s) '{"SECRET_CREDENTIALS_KEY", "SECRET_REDIS_CA_CERTIFICATE_KEY", "JWT_GCP_TOKEN_URL"}'
Storing secrets in configMaps is unsafe
This type of implementation is giving us 2 options:
a) rename the secret keys to less meaning names
b) ignore the 2 rules since they produce false positives

Hello, just checking if any additional information was needed.  Thanks

hi @rvillane - thanks for reporting this. I feel this is working as intended. Are you saying that the detected keys/values are being classified as secrets but they aren't?
If so can you share the part of the configMap with us so we can look into it?

Hi @simar7 , exactly, in our case, we have a k8s ConfigMap that only stores key names that corresponds to entries on a separate Secret Manager service that stores the actual sensitive data, the configMap is only used to keep the specific key names.
Error messages like the following feel a bit misleading, because we do not store any secrets or sensitive data in the config map itself but the current implementation of the rule is just trying to find key words such as: "key", "token" or "email":

Storing sensitive content such as usernames and email addresses in configMaps is unsafe
Storing secrets in configMaps is unsafe

Below are some examples of the Key -> Values stored in the config map:
PROJECT_KEY -> project-key-dev
KEY_RING_ID   -> keyring-dev
SECRET_API_CREDENTIALS_KEY -> services-key-dev
REDIS_CA_CERTIFICATE_KEY -> redis-server-ca-key-dev
Can you please confirm is that is the expected behavior of the rule ?

hi again @rvillane - you're right that today the rule only looks at certain keywords to identify it as a secret or otherwise. While it isn't the best and certainly can be improved (ideas & PRs welcome), to design a truly correct secret identifying logic would be hard as we aren't able to tell if "services-key-dev" is an actual secret or not. In your case I understand it isn't but I hope you get the idea.
As you mentioned ignoring them as false positives would be the right way to proceed here. Please reopen if you think otherwise. Thanks.


A Bit Of Repo Cleaning

Summary
This PR attempts to clean the repo a bit with the following:

adding several IDE config files regarding the Java project. I feel like these could be universal. Contrary, we can make these ignored
updating to 1.8 version
updating packaged_files.txt (see #188, we might want to add it to .gitignore lateron)

Has been taken care of with #194. Closing.


Use a config file instead of environment variables

Please don't merge yet.
The idea is to use a config file instead of more and more environment variables. This would depend on the analysis-runner uploading a config file as a blob before launching a batch, which is implemented in https://github.com/populationgenomics/analysis-runner/pull/410. We'd only need to set a single environment variable, CPG_CONFIG_PATH, to point to the blob.
At the moment, this simply passes through the dictionary returned by the TOML parser. We could instead have a config class with more clearly defined methods that map to the dictionary entries instead of allowing arbitrary strings. But I'm not sure that's adding much value apart from catching potential typos in the variable names when using strings. The current structure has the advantage that it nicely reflects the grouping mechanism in TOML (e.g. hail and workflow groups).

Looks good, I can definitely see the benefits. Will the default environment configuration be baked into the Analysis-Runner default image, or in a GCP reference bucket?

Thanks! We can't bake it into the image, as some variables (like the dataset or the output location) depend on the specific run. That's why https://github.com/populationgenomics/analysis-runner/pull/410 will copy a unique config blob for each batch to gs://cpg-config.


Request for clarification on training strategy for bunny-llama-3-8b-v

Hello,
I noticed in the README that it mentions, "We use a better strategy to train Bunny-Llama-3-8B-V, which will be open-sourced soon!" Could you briefly describe this better strategy?
Thank you!

Hi @slchenchn, thank you for your interest in our work.
We are super busy these days but the traing strategy is scheduled to be released. Stay tuned.
Regards
Russell
BAAI

@slchenchn We released all of the training strategy and data of latest Bunny. Check more details about Bunny in Technical Report, Data and Training Tutorial!


Improving Matplotlib Integration with Zeppelin

What is this PR for?
This PR improves the matplotlib integration with zeppelin.
What type of PR is it?
Improvement
What is the Jira issue?
https://issues.apache.org/jira/browse/ZEPPELIN-1428
How should this be tested?
show() functionality in the PyZeppelinContext class should work with matplotlib.
Questions:

Does the licenses files need update? no
Is there breaking changes for older versions? no
Does this needs documentation? no

Tried and working well.
Could you try trigger CI again and see if it goes to green?

Realized that there's a very similar contribution #1422 created few days before.

Thanks @IshmeetKaur. I think i'll try to merge #1422 first because #1422 arrived earlier.


Numpy type annotations result in ValidatorIterator fields

Initial Checks

[X] I confirm that I'm using Pydantic V2 installed directly from the main branch, or equivalent

Description
Hi,
Im currently using pydantic==2.0a4 and something weird is going on when using numpy type annotations. I have the following pydantic model:
import numpy as np
from numpy.typing import NDArray
from pydantic import BaseModel, field_validator

class MyModel(BaseModel):
    x: int
    y: NDArray[np.float64]

    class Config:
        arbitrary_types_allowed=True

model = MyModel2(x='5', y=np.array([4.0]))
print(model)

which outputs
x=5 y=ValidatorIterator(index=0, schema=None)

I'm not sure what this ValidatorIterator is.
I also tried adding a custom validator to the y-field:
class MyModel2(BaseModel):
    x: int
    y: NDArray[np.float64]

    @field_validator("y", mode='before')
    def validate_y(cls, y):
        return y

    class Config:
        arbitrary_types_allowed=True

But this did not solve anything.
Do you know what's going on?
Example Code
No response
Python, Pydantic & OS Version
pydantic version: 2.0a4
        pydantic-core version: 0.30.0 release build profile
                 install path: /home/flaport/.anaconda/envs/pyd/lib/python3.11/site-packages/pydantic
               python version: 3.11.3 | packaged by conda-forge | (main, Apr  6 2023, 08:57:19) [GCC 11.3.0]
                     platform: Linux-6.3.2-arch1-1-x86_64-with-glibc2.37
     optional deps. installed: ['typing-extensions']

ValidatorIterator is a generator which will validate members of the input as it's iterated.
You probably want to customize validation using an argument to annotated. I'm afk but I'll make sure to reply with an example on Monday. Unless someone else can help sooner?

Something like this seems indeed to work, but I'm not 100% sure if this is the recommended way of using this iterator...
class MyModel(BaseModel):
    x: int
    y: NDArray[np.float64]

    @field_validator("y")
    def validate_y(cls, y):
        return np.float64(next(y))

    class Config:
        arbitrary_types_allowed=True

I suspect the issue here is that NDArray is caught as a subclass of Iterable, which we subsequently handle via producing a generator. @samuelcolvin I think this is rather unfortunate behavior to have as the default. I'll look into how we can improve this, given its ubiquity I do think it would be good if we could do a better job of handling NDArray out of the box, even if we don't want to add numpy as even a testing dependency of pydantic.

@flaport I don't think that will have quite the behavior you want.
I think this is closer, though perhaps still not quite ideal, but might get your code behaving closer to what you want:
from typing import Type, Any, Iterable, Tuple, List, Annotated

import numpy as np
import numpy.typing as npt
from pydantic_core import CoreSchema, core_schema

from pydantic.types import TransformSchema

class _NdArrayAnnotation:
    @classmethod
    def __prepare_pydantic_annotations__(
        cls, _source: Type[Any], annotations: Iterable[Any]
    ) -> Tuple[Any, List[Any]]:
        def transform(schema: CoreSchema) -> CoreSchema:
            return core_schema.union_schema(
                [
                    core_schema.is_instance_schema(np.ndarray),
                    core_schema.no_info_after_validator_function(lambda v: np.ndarray(v), schema)
                ]
            )

        return list, list(annotations) + [TransformSchema(transform)]

# Use PydanticNdArray as the annotation in models for fields of type NDArray
PydanticNdArray = Annotated[npt.NDArray, _NdArrayAnnotation]

I will look into getting pydantic to handle this better without needing all of this boilerplate though.

@Sam

Okay, I think the right immediate-term solution to this is to not do this special handling of proper subclasses of Iterable (or Sequence). We've talked about this before and @adriangb did some work in this direction, and I think the behavior is better (especially for NDArray) with the simple change that forces you to add the arbitrary_types_allowed=True thing.
I'll open a PR for it.

@samuelcolvin @adriangb I'm thinking one thing it might make sense for us to do is export pydantic._internal._std_types_schema.schema_function. I know we've talked about this before and rejected it, but this would make it easier to register the schema function for a type, so that you can do something like:

I agree we should have something. I'd lean more towards allowing a callback with the same signature as __get_pydantic_core_schema__ as part of Config. The advantages are:

familiar API w/other usages of custom types
lets you decide if you want to intercept before we look at the type or be a fallback
lets you decided if you want to handle subclasses or only a specific type


How to - syntax - add more ipv4addresses to DNS A record

Hello! Our code to add more than one ipv4Address looks like this, and it works...
var rootDnsZone = azure.DnsZones.GetByResourceGroup(_ResourceGroupName, zoneName);
rootDnsZone = rootDnsZone.Update().DefineARecordSet(request.name)
                            .WithIPv4Address(request.properties.ARecords[0].ipv4Address)
                            .WithIPv4Address(request.properties.ARecords[1].ipv4Address)
                            .Attach()
                            .Apply();

but we would like to add more .WithIPv4Address() inside a loop (or based on conditions) kind of like how you can add more clauses to LINQ statements...
which would then look something like this:
request.properties.ARecords.ForEach(x =>
{
   [what here].WithIPv4Address(x.ipv4Address)
});

I can't find that in the current interfaces - are we doing it wrong?
Thank you, I hope that I am posting this in the right area, Cheers

I tried this, but nowhere to go. no create() on root zone. needs to attach and apply somewhere?
var rzUpdate = rootDnsZone.Update().DefineARecordSet(request.name);
request.properties.ARecords.ForEach(x =>
{
rzUpdate.WithIPv4Address(x.ipv4Address);
});

@gshock here is one way to accomplish what you are looking for
List<string> ipv4Addresses = new List<string>();
ipv4Addresses.Add("<IP_ADDRESS>");
ipv4Addresses.Add("<IP_ADDRESS>");
ipv4Addresses.Add("<IP_ADDRESS>");

// Adding ARecordSet IPv4 addresses in a loop as part of Zone create
var newZoneARecordSetFirstStage = azure.DnsZones.Define(topLevelDomain)
      .WithNewResourceGroup(groupName, region)
      .DefineARecordSet("www");

Microsoft.Azure.Management.Dns.Fluent.DnsRecordSet.Definition.IWithARecordIPv4AddressOrAttachable<Microsoft.Azure.Management.Dns.Fluent.DnsZone.Definition.IWithCreate> newZoneARecordSetNextStage = null;
for (int i = 0; i < ipv4Addresses.Count; i++)
{
    if (i == 0)
    {
        newZoneARecordSetNextStage = newZoneARecordSetFirstStage.WithIPv4Address(ipv4Addresses[i]);
    }
    else
    {
        newZoneARecordSetNextStage.WithIPv4Address(ipv4Addresses[i]);
    }
}
IDnsZone dnsZone = newZoneARecordSetNextStage
    .Attach()
    .Create();

// Adding ARecordSet IPv4 addresses in a loop as part of Zone update
var updateZoneARecordSetFirstStage = dnsZone.Update()
    .DefineARecordSet("www");

Microsoft.Azure.Management.Dns.Fluent.DnsRecordSet.UpdateDefinition.IWithARecordIPv4AddressOrAttachable<Microsoft.Azure.Management.Dns.Fluent.DnsZone.Update.IUpdate> updateZoneARecordSetNextStage = null;
for (int i = 0; i < ipv4Addresses.Count; i++)
{
    if (i == 0)
    {
        updateZoneARecordSetNextStage = updateZoneARecordSetFirstStage.WithIPv4Address(ipv4Addresses[i]);
    }
    else
    {
        updateZoneARecordSetNextStage.WithIPv4Address(ipv4Addresses[i]);
    }
}
dnsZone = updateZoneARecordSetNextStage
     .Attach()
     .Apply();

Hi the second one, for update, works for us. Thanks for the help!


az aks enable-addons fails

This is autogenerated. Please review and update as needed.
Describe the bug
Command Name
az aks enable-addons
Errors:
argument of type 'NoneType' is not iterable
Traceback (most recent call last):
python3.8/site-packages/knack/cli.py, ln 206, in invoke
    cmd_result = self.invocation.execute(args)
cli/core/commands/__init__.py, ln 608, in execute
    raise ex
cli/core/commands/__init__.py, ln 666, in _run_jobs_serially
    results.append(self._run_job(expanded_arg, cmd_copy))
cli/core/commands/__init__.py, ln 659, in _run_job
    six.reraise(*sys.exc_info())
...
cli/command_modules/acs/custom.py, ln 1846, in aks_enable_addons
    _ensure_container_insights_for_monitoring(cmd, instance.addon_profiles['omsagent'])
cli/command_modules/acs/custom.py, ln 2496, in _ensure_container_insights_for_monitoring
    if 'loganalyticsworkspaceresourceid' in addon.config:
TypeError: argument of type 'NoneType' is not iterable

To Reproduce:
Steps to reproduce the behavior. Note that argument values have been redacted, as they may contain sensitive information.

Put any pre-requisite steps here...
az aks enable-addons --addons {} --resource-group {} --name {} --subscription={}

Expected Behavior
Environment Summary
macOS-10.13.6-x86_64-i386-64bit
Python 3.8.1
Shell: bash

azure-cli 2.0.81

Additional Context

@ridgebackdad , thanks for reporting, we are looking at it.

We believe a fix has been made, please reference this issue for the latest tracking. I am going to close this to consolidate info to one thread. If you still hit issues after the S166 milestone release, feel free to recomment.
https://github.com/Azure/azure-cli/issues/11456


Upgrade Dependencies

Fixes #5.
Holding off on semantic-release, since the devDep is in use at 4.3.5 and jumps to 6.2.2 (current); risky upgrade.
[Update]
In actuality, npm/semantic-release cites 4.3.5 as the current version. David-dm must be on crack.
[/Update]

There appears to be a similar issue relating to a memory leak from mocha in the same version level, but rolling gulp-mocha back didn't fix. Will need to revisit.

This road led only to folly. New branch + PR coming soon.


Connectevents

Everything worked great getting your lib working for me. Awesome!
The only thing I needed was events for when the pubsub websocket connects and such.
I also removed the console.log as I prefer to see the connect event and log with my app's logger.
Thanks for contacting me so I could get my stuff working!

Yeah I have a terrible habit of leaving console.logs in. I'm glad that its working for you :) The changes look great!


Documentation is out of sync

I think the tablite library is awesome in terms of handling large data. Thanks for the development efforts!
However, I noticed that rapid changes to the core elements made the documentation out of sync and at this moment completely misleading.
Why?

README.md states, that tablite uses h5py, however, I can't seem to find anything related to it (only in the requirements.txt).
Some of the claims about RAM or disk usage may be outdated. I know tablite now use numpy as data storage.

There might be other things, but the frontpage is definitely the first thing that pops with outdated information.

README updated.
I'm adding API documentation as a github action


20210311 submission

submissions/20210311-ance-d-4.tar.enc seems to be an empty file?

Hi,
I will try to commit again, it might be something wrong during network transition.

Hi, I've changed the encryption process under different OS environment. I think it should work right now


Error: The file is not displayed in the text editor because it is a directory.

Some note types can't be open and I've got this error "The file is not displayed in the text editor because it is a directory."

I think the problem is with card's templates that are ending with "?" sign
The icons next to Front and Back are different.
Non-working icons (problematic card's templates) in VS

Working icons in VS

I've tested this and it does indeed seem to be a problem with the "?" in the name of a card templates.
I'll see if I can fix it.
Interestingly, this problem doesn't occur when you open the note types as a workspace folder using the button in the top right corner of the anki-editor column. So you could use that as a workaround for now.

This has been fixed and published in version 1.0.4 .


Youtube download failed

Here is my from terminal:
dagmar@dagmar-3000-N200 ~ $ youtube-dl -v url https://www.youtube.com/watch?v=E3TONiNn7As&feature=youtu.be
[1] 10425
dagmar@dagmar-3000-N200 ~ $ [debug] System config: []
[debug] User config: []
[debug] Command-line args: ['-v', 'url', 'https://www.youtube.com/watch?v=E3TONiNn7As']
[debug] Encodings: locale 'UTF-8', fs 'UTF-8', out 'UTF-8', pref: 'UTF-8'
[debug] youtube-dl version 2014.02.17
[debug] Python version 2.7.6 - Linux-3.13.0-37-generic-i686-with-LinuxMint-17.1-rebecca
[debug] Proxy map: {}
[youtube:search] query "url": Downloading page 1
ERROR: Unable to download API page: HTTP Error 410: Gone; please report this issue on https://yt-dl.org/bug . Be sure to call youtube-dl with the --verbose flag and include its complete output. Make sure you are using the latest version; type  youtube-dl -U  to update.
File "/usr/lib/python2.7/dist-packages/youtube_dl/extractor/common.py", line 191, in _request_webpage
return self._downloader.urlopen(url_or_request)
File "/usr/lib/python2.7/dist-packages/youtube_dl/YoutubeDL.py", line 1157, in urlopen
return self._opener.open(req)
File "/usr/lib/python2.7/urllib2.py", line 410, in open
response = meth(req, response)
File "/usr/lib/python2.7/urllib2.py", line 523, in http_response
'http', request, response, code, msg, hdrs)
File "/usr/lib/python2.7/urllib2.py", line 448, in error
return self._call_chain(*args)
File "/usr/lib/python2.7/urllib2.py", line 382, in _call_chain
result = func(*args)
File "/usr/lib/python2.7/urllib2.py", line 531, in http_error_default
raise HTTPError(req.get_full_url(), code, msg, hdrs, fp)

You are using an outdated version of youtube-dl. Read our FAQ if you have troubles updating.

Thank you, Sergey!
That has been a fast answer!
Very pleased.
Kind regards
Tomoda

Am 03.11.2015 um 21:30 schrieb Sergey M<EMAIL_ADDRESS>You are using an outdated version of youtube-dl. Read our FAQ if you have troubles updating.
―
Reply to this email directly or view it on GitHub.


SILGen: Correct handling of subscripts with addressors.

Remove improper special-case handling of subscripts in findStorageReferenceExprForMoveOnly. The correct thing to do for any storage decl ref of noncopyable type is to emit it as a borrow if it's implemented using storage, a read accessor, or an addressor. Fixes rdar://127335590.

@swift-ci Please test

@swift-ci Please test source compatibility


Cannot find Azure Maps Licensing and Terms Of Use

The links on the page to the Azure Maps Terms Of Use are broken.
It looks like they rolled out a new licensing and terms website 'https://www.microsoft.com/licensing/docs' and forwarded the request to this new location. Unfortunately, this new site doesn't seem to accept the same deep-linking query params and so the user is landed at a kind of home page where they are supposed to search for the product/documents that they are interested in.
I was similarly unable to find anything about Azure Maps on this new site. Perhaps things have not all been migrated over or are now covered under a broad license, but my searching around was pretty fruitless.

Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: 5d64846e-5e62-33b5-55fd-51beb5abf909
Version Independent ID: c7682958-ac78-354a-23a0-3731c9ed7fe1
Content: Tutorial: Migrate from Bing Maps to Azure Maps - Microsoft Azure Maps
Content Source: articles/azure-maps/migrate-from-bing-maps.md
Service: azure-maps
GitHub Login: @stevemunk
Microsoft Alias: v-munksteve

@hf-farmqa Thanks for the feedback! We are currently investigating and will update you shortly.

@hf-farmqa Since this needs a validation and update, I am adding author @stevemunk for further assistance.

@hf-farmqa thank you for letting us know that this link is no longer working, they moved this information to this site: https://www.microsoft.com/licensing/terms/productoffering/MicrosoftAzure/MCA
Once there, you can navigate down to (or search for) the section titled Azure Maps.
I will update the docs asap.

Thanks, that's what I was looking for.

This has been fixed in the docs, which should be available in the live site soon.

#please-close


Error Login in

Hi people , i have problems when i run the example :sendtextmessage/main.go
in cmd :
error logging in: restoring failed: admin login responded with 401

Check your tmpdir with
echo $TMPDIR
and  remove file whatsappSession.gob on tmpdir
run main.go and  rescan qrcode

Check your tmpdir with
echo $TMPDIR
and remove file whatsappSession.gob on tmpdir
run main.go and rescan qrcode

Perfect @ramacatur  , i have a question,how i can ask for cmd 'number' and 'text' in console?
sorry for my english

Check your tmpdir with
echo $TMPDIR
and remove file whatsappSession.gob on tmpdir
run main.go and rescan qrcode

Perfect @ramacatur , i have a question,how i can ask for cmd 'number' and 'text' in console?
sorry for my english

maybe you can use console ui lib for golang

duplicate of #268 ?

Check your tmpdir with
echo $TMPDIR
and remove file whatsappSession.gob on tmpdir
run main.go and rescan qrcode

My Qr does not appear, What should I do? I get this error: https://github.com/Rhymen/go-whatsapp/issues/376


Now text in toolbar dynamic is visible in dark mode as well

Title - issue #29
I added color inside input of toolbar dynamic now it is visible.

Thank you, it's already fixed!


Master

Here are some visual changes changes.

In default theme it looks as follow:

I use Atom One Dark theme. I this theme it looks as follow:

Oh my, that's amazing!! Everything looks so much more... professional? I love it!
I'll review later in depth, so far I'm mostly worried that changing the background color will break things on some light themes. It used to be as you did it iirc, but was fixed to dark because of that exactly.
Good job on moving the ref-tips too, they do belong in the commit message after all, as discussed in various issues

My two cents:  Never delete code by commenting it.  Once you realized it is not needed, delete for real.  Commented code just litters source codes.

Indeed as I feared, this change breaks light themes: Here's "Default High Contrast Light", such as

The texts could even become invisible in various unforeseseeable places if some theme has a particular background color.
I think setting the bg like you did is a desirable goal, but it needs to be done for all colors in the interface. Because right now we're in some kind of in-between situation now. I think the eventual state in which this can be merged is for all color codes to disappear for the code base and instead exclusively use var(--vscode-*) colors. A quick search for #[a-fA-F0-9]+\b in the code base yields another 34 places where this is still the case, after this PR. Also things are inconsistent now, as in light themes, both the commit right click context menu and the side bar commit details view now has dark background, while everything else doesn't.
So tl;dr unfortunately I don't think this can be merged as is, also accessibility is important after all.
However, most changes here are nice additions which we should definitely add, and all LGTM apart from all changes to colors.
Finally, @webJose is right, the outdated code sections shouldn't be commented out but removed, especially given there's so much of it.

Light theme support was always not great (its basically just a global colors-inversion). Ideally, we'll have two different color sets for dark and light, but this is unrelated to the above. For now, things can stay focused on the dark theme, with the light them hack staying as is, but the question here is: Do we amend all colors and test them in as many themes as possible or revert the color changes here and merge? I personally don't really have time for the former currently

My two cents: Never delete code by commenting it. Once you realized it is not needed, delete for real. Commented code just litters source codes.

Agree, but it's literally the first time I work with Stylus and Coffee Script. The same for VS Code extensions. So, I was unsure in things I do.

Do we amend all colors and test them in as many themes as possible or revert the color changes here and merge? I personally don't really have time for the former currently

I also was too optimistic about the time I can spent on this, but I think replacing the hard coded color with var(--vscode-*) is thing I can do.


Ordinals not loading on account with lots of Stacks NFT's

Is it possible users are getting rate limited because of API use for Stacks NFT"s and that Ordinals API is not even attempted?

ordinal address bc1plpezxyklnvfc5jdfw7aa77uyym2sarag2v8st8djklx80v82xumqxr5crd
stacks nft address SP2RNHHQDTHGHPEVX83291K4AQZVGWEJ7WCQQDA9R
Second time someone is reporting this.

the user also noticed this and asked to add it here (I am not sure if it is relevant).

@314159265359879 I'm closing as stale. Please reopen if still relevant and needs investigation.


google_analytics.html still uses .Site.

Here's the error I'm getting from hugo --minify:
ERROR render of "page" failed: "/var/folders/qs/bv9nbl9n0wq54lsh3b2w9ztm0000gn/T/hugo_cache_kevinlinxc/modules/filecache/modules/pkg/mod/github.com/jpanther/congo/v2@v2.6.1/layouts/_default/baseof.html:17:6": execute of template failed: template: _default/single.html:17:6: executing "_default/single.html" at <partial "head.html" .>: error calling partial: "/Users/kevinlinxc/src/stemformulas.github.io/layouts/partials/head.html:117:7": execute of template failed: template: partials/head.html:117:7: executing "partials/head.html" at <partialCached "analytics.html" .Site>: error calling partialCached: execute of template failed: template: _internal/google_analytics.html:1:16: executing "_internal/google_analytics.html" at <.Site.Config.Privacy.GoogleAnalytics>: can't evaluate field Site in type *page.siteWrapper
Total in 154 ms
Error: error building site: render: failed to render pages: render of "page" failed: "/var/folders/qs/bv9nbl9n0wq54lsh3b2w9ztm0000gn/T/hugo_cache_kevinlinxc/modules/filecache/modules/pkg/mod/github.com/jpanther/congo/v2@v2.6.1/layouts/_default/baseof.html:17:6": execute of template failed: template: _default/single.html:17:6: executing "_default/single.html" at <partial "head.html" .>: error calling partial: "/Users/kevinlinxc/src/stemformulas.github.io/layouts/partials/head.html:117:7": execute of template failed: template: partials/head.html:117:7: executing "partials/head.html" at <partialCached "analytics.html" .Site>: error calling partialCached: execute of template failed: template: _internal/google_analytics.html:1:16: executing "_internal/google_analytics.html" at <.Site.Config.Privacy.GoogleAnalytics>: can't evaluate field Site in type *page.siteWrapper

It is caused by the google_analytics.html file using .Site when that was changed in Hugo 0.112.0
Let me know if I am not understanding anything correctly.

This is not a bug.
https://github.com/stemformulas/stemformulas.github.io/blob/main/layouts/partials/head.html#L117C47-L117C47
Should be:
{{ partialCached "analytics.html" . }}

In the  future, please use the forum (https://discourse.gohugo.io/) for questions and troubleshooting. We prefer to use GitHub for verified bugs and vetted enhancements. Thanks.


feat(applications-service-api): documents v3 endpoint apply search filters

implementation of search filtering for the POST /v3/documents endpoint

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


ccacheStdenv: replaceStdenv = ccacheStdenv cause llvmPackages.stdenv could not find clang

Describe the bug
Once config.nixpkgs.config.replaceStdenv = { pkgs }: pkgs.ccacheStdenv; was set, packages using llvmPackages.stdenv.mkDerivation could not found clang.
Steps To Reproduce

Create a simple clang-hello derivation in nixpkgs:

config.nixpkgs.overlays = [(final: prev:
{
	clang-hello = final.callPackage { llvmPackages }: llvmPackages.stdenv.mkDerivation
	{
		pname = "clang-hello";
		version = "0";
		phases = [ "installPhase" ];
		installPhase = "clang --version > $out";
	}
})];

Build the derivation, it works fine.
Set config.nixpkgs.config.replaceStdenv = { pkgs }: pkgs.ccacheStdenv; in system config, and rebuild the derivation, it fails with:

> /nix/store/b6538j7qiin0zdv8pz2j7yrxa2g6mlk4-stdenv-linux/setup: line 1596: clang: command not found

A flake to demonstrate the issue is available at my github repo. To reproduce:
nix build .#nixosConfigurations.good-config.pkgs.clang-hello # works fine
nix build .#nixosConfigurations.bad-config.pkgs.clang-hello # fails

Expected behavior
clang should be found while running nix build .#nixosConfigurations.bad-config.pkgs.clang-hello. That is, it should cussess or failed with "could not visit /var/cache/ccache" etc, but not "clang: command not found".
Notify maintainers
@kira-bruneau

clang was taken into account by ccache here, but something does not work, makes unwrappedCC there is always gcc instead of clang.

I found a working solution for llvmPackages.stdenv.
Removing:
nixpkgs.config.replaceStdenv = { pkgs }: pkgs.ccacheStdenv;

and directly replace llvmPackages.stdenv in an nixpkgs overlay:
nixpkgs.overlays = [(final: prev: {
	llvmPackages.stdenv = final.ccacheStdenv.override { stdenv = prev.llvmPackages.stdenv; };
})];

However, this trick does not work with stdenv, it will cause infinite loop.
if the line replaceStdenv = ccacheStdenv was not removed, the problem still occurs, even manually replace llvmPackages.stdenv manually.

test.nix
{ pkgs ? import ./. { config.replaceStdenv = ({ pkgs }: pkgs.ccacheStdenv ); } }:
(pkgs.callPackage ({ llvmPackages }: pkgs.llvmPackages.stdenv.mkDerivation
{
  pname = "clang-hello";
  version = "0";
  phases = [ "installPhase" ];
  installPhase = "clang --version > $out";
})) {}

nix build -f test.nix --keep-failed
/tmp/nix-build.../env-vars begins with
declare -x AR="ar"
declare -x AS="as"
declare -x CC="gcc"

so it's not a llvm stdenv
maybe something to do with the stages


Create Convert an integer to binary

Program to convert an integer to binary keep leading zeros.

Title change to Hacktoberfest 2020: Convert an integer to binary


Add missing Observation columns

Stored procedure procedure update to call missing columns ctrl_cd_display_form, processing_decision_cd, cd and shared_ind.

Reopening with updated branch.


False positive CastToNullableType on safe typealias cast

Expected Behavior
No report, it's a valid and equivalent cast.
Observed Behavior
Use the safe cast ('as? Alias') instead of 'as Alias?'. [CastToNullableType]

The cast is very safe, it's so safe in fact, that Kotlin says
> Task :compileKotlin
w: ... No cast needed

This is why the repro suppresses.
Steps to Reproduce
typealias Alias = String

fun f(s: String?) {
	@Suppress("USELESS_CAST") // Casts is useful to convert String to typealias.
	val a = s as Alias?
	val l /*List<Alias?>*/ = listOf(a)
	println(l)
}

The reason for the cast is to get the hint in the comment. This is a trivial example, the benefit is not easily visible, see below for more.
Context
I have some complex logic chain where there's a lot of type changes, because of map/filter logic.
I also use some external types which contain string properties representing different concepts.
I created some private aliases to help understand the code and I'm casting where necessary to see the alias types in the type hints.

Your Environment

Version of detekt used: 1.23.4
Version of Gradle used (if applicable): 8.5
Gradle scan link (add --scan option when running the gradle task): N/A
Operating System and version: any
Link to your project (if it's a public repository): N/A, full repro above

@TWiStErRob fixing this would require converting this rule to @RequiresTypeResolution
Also, I think the below failing TCs should be fixed
// https://github.com/detekt/detekt/issues/6676
@Test
fun `cast to same type in alias form allowed`() {
    val code = """
        typealias Alias = String

        fun test(s: String?) {
            @Suppress("USELESS_CAST") // Casts is useful to convert String to typealias.
            val a = s as Alias?
            print(a)
        }
        """.trimIndent()
    val findings = subject.compileAndLint(code)
    assertThat(findings).isEmpty()
}

@Test
fun `cast to parent type in alias form allowed`() {
    val code = """
        typealias Alias = CharSequence

        fun test(s: String?) {
            val a = s as Alias?
            print(a)
        }
        """.trimIndent()
    val findings = subject.compileAndLint(code)
    assertThat(findings).isEmpty()
}

@Test
fun `cast to different type in alias form not allowed`() {
    val code = """
        typealias Alias = String

        fun test(s: Any?) {
            val a = s as Alias?
            print(a)
        }
        """.trimIndent()
    val findings = subject.compileAndLint(code)
    assertThat(findings).hasSize(1)
}

Re test, agreed.
Re type-resolution: I think that's a fair change. Anything dealing with nullability needs to be aware of the type system.


Possible bug

From Matrix (before we enabled Issues in this fork):
I can't open an issue in the repo, but this looks like a bug. (define unused value, then 0=0)

Yes that looks suspicious... Probably a bad rebase or something like that. Thanks!


Provide and extend Server-Timing header

It would be a great addition if Couper provides the backend timings additionally to the existing log timings as Server-Timing  header. Extending an existing Server-Timing header while chaining multiple gateways is also a valid use-case.

Typically the request’s name is default. That would be boring. We could use the backend’s name to provide more useful info in the browser’s network inspector. Then it would be smth like api or print_service.
If an endpoint issues multiple requests, they need to have different names. Then, we could create a timing name from the backend and the non-default request name:
api  (omit redundant :default)
api:request2

Do we need a config/setting flag for this feature? Or should Couper always send this header if a backend is used?

We need to configure it. I would make it a boolean setting (cli flag, env, settings).

Currently, the metrics may have a suffix (_[0-9a-f]{6}), which is unique, ok. But it's not possible to identify the position in a sequence of couper layers. Better use numbers, again.
Another idea: Instead of suffixes, use prefixes, as Chrome seems to sort Server Timings in the Timing tab.

How can couper know in which position in a sandwich it is in? Or do you mean request sequences in a single endpoint?

The last Couper instance (from client direction) would not have a prefix (or a prefix with the smallest digit).
client <- 2_metric <- 1_metric <- metric

I don't think that we need to have those prefixes. if you have a sandwich with multiple coupers and services inbetween, I would hope that the backend-names are distinguishable.


[Telegram -> Discord] Media content gets posted twice

When someone postes an "GIF" or pictures on Telegram, i can see a link from our media server and also a second time, as it uploads the content to the Discord servers.

And yes we are using Webhooks.

What version of matterbridge ?

Found the issue in v1.16.0, so I guess you're using that one :)

Yes i was running v1.16.0 and yes its fixed now, thanks again! :)

I've got the same problem for WhatsApp to Discord


Get rebooted after creating the one big partition!

Describe the bug
I get rebooted after creating the big one partition
To Reproduce
Start fresh new installation on Odroid m1 SD (os) and ext4 nvme
Debug file
https://l.termbin.com/a58y

Update: i tryed the installation again. This time i got stucked at the provision process:
https: //l.termbin.com/36ri

I have tryed to reinstall several times.. I got the same problem:

But 2 times i managed to advance till here and get stucked:

https://l.termbin.com/v9jr

A reboot should not be triggered there so I presume it has something to do with the hardware.
Try to use the disk with another OS, maybe just your base to see if you can mount and format it without issues,
There could be a problem with the power supply, nvme adapter or something else specific to the Odroid  M1. Might eb worth to search around in the Odroid forums as well.

I had this same hardware running smoothly with another implementation for several months and no issue. The only thing i changed is the SD card i added where i placed the OS. The power adapter is brand new and tested for some days. Don't think it's hardware problem..

I had this same hardware running smoothly with another implementation for several months and no issue. The only thing i changed is the SD card i added where i placed the OS. The power adapter is brand new and tested for some days. Don't think it's hardware problem..

Did you use the disk as well with the previous setup?
The way to test this would be to follow the commands being run and execute them manually to see if any of them causes a reboot.
I can't reproduce it myself as I don;t have the hardware.

I had this same hardware running smoothly with another implementation for several months and no issue. The only thing i changed is the SD card i added where i placed the OS. The power adapter is brand new and tested for some days. Don't think it's hardware problem..

Did you use the disk as well with the previous setup?
The way to test this would be to follow the commands being run and execute them manually to see if any of them causes a reboot.

Yes i did, there's a guide i can follow to test commands manually? I'm not so technically skilled to do it by myself :)

There is no guide, it would involve reading the raspiblitz scripts.
For a manual setup I would recommend following the steps on raspibolt.org,  the resulting system is largely similar.

I've already performed raspibolt on another node (same set up of this one), i would like to try and run raspiblizt explore this implementation's gui and upgradeability..

If you understand what it means (deletes the disk contents) you can try to run this outside of the script with sudo:
https://github.com/raspiblitz/raspiblitz/blob/bf9aaa9076246ec1f517831bf4d4444e7086a67b/home.admin/config.scripts/blitz.datadrive.sh#L729-L731
get the value for $hdd variable with (could help if you post the output of it):
config.scripts/blitz.datadrive.sh status

set it before running the above line with:
hdd=nvme0n1

Can also try wiping the disk mnaually before starting again or running the above with:
sudo fdisk --delete /dev/${hdd}
sudo wipefs -a /dev/${hdd}

As sudo user: i setted the var and deleted the partition, used wipesf then tryed

sudo >&2 echo "# Creating the one big partition"
sudo  parted -s /dev/${hdd} mkpart primary ext4 1024KiB 100% 1>&2

but here i've got "Error: /dev/nvme0n1: unrecognized disc label"
so i ran:  sudo config.scripts/blitz.datadrive.sh status , this is the result:
RASPIBLITZ DATA DRIVE Status
BASICS
isMounted=1
isBTRFS=0
hddRaspiData=1
hddRaspiVersion='1.10.0'
isSMART=0
isSSD=1
datadisk='nvme0n1'
datapartition='nvme0n1p1'
hddCandidate='nvme0n1'
hddPartitionCandidate='nvme0n1p1'
hddBlocksBitcoin=0
hddBytes=2000397795328
hddGigaBytes=1863
ddUsedInfo='100M (1%)'
hddDataFreeBytes=1867784695808
hddDataFreeKB=1824008492
hddDataFreeGB=1739
hddAdapterUSB=''
hddAdapterUSAP=0
RAID
isRaid=0
raidCandidate[0]='mtdblock0 0 GB mtdblock0'
raidCandidate[1]='mtdblock1 0 GB mtdblock1'
raidCandidate[2]='mtdblock2 0 GB mtdblock2'
raidCandidate[3]='mtdblock3 0 GB mtdblock3'
raidCandidates=4
SWAP
isSwapExternal=0

Looks much different from the RPi or amd64 setup.
use the command:
lsblk
to list the devices. Please share that too.

that shows that your SDcard (or MMC) has a lot of partitions, but that shouldn't be a problem.
Try running the parted command with:
hdd=nvme0n1p1
That shouldn't cause a restart.

this didn't work cause unrecognized disc (nvme0n1 nor nvme0n1p1) label like above, i had to:
sudo parted /dev/nvme0n1 mklabel gpt
sudo parted -s /dev/nvme0n1 mkpart primary ext4 1024KiB 100% 1>&2
sudo reboot
at this point i tryed to acces admin but i got a window tells me to start with a fresh sd card image, i logged the main user (which i installed the os) and i ran sudo ./build_sdcard.sh , this is the result:
sudo su - admin
Starting SSH user interface ... (please wait)
setupPhase()
state() FAIL: /home/admin/raspiblitz.info does not exist or missing state.
Check logs & bootstrap.service for errors and report to devs.

Running the build_sdcard.sh repeatedly is not an intended way to reset the system.
What you could do to be able to start clean is

set up your base image new (needs to be Debian or Ubuntu - please share what that is)
run the build_sdcard.sh
once it has finished switch off and make an image of your SDcard/eMMC so you can flash it again to restore this initial state

Unfortunately this so far did not bring us closer why the system reboots, but it is strange to me why it does not even happen all the time.

oh, i didn't know:
i use ubuntu 20.04 cause is the best stable distro on Odroid M1.

Unfortunately this so far did not bring us closer why the system reboots, but it is strange to me why it does not even happen > all the time.

Yeah this is crazy. I'm here to help if you wanna debug this one i will take this node for this purpose. Next step i will reinstall ubuntu, format and partition the nvme disk and make an image of it.. so i'ill retry to build the raspiblitz and update this post. Tell me if you think i have to do something different and have a nice halloween 🎃

Running the build_sdcard.sh repeatedly is not an intended way to reset the system.
What you could do to be able to start clean is

set up your base image new (needs to be Debian or Ubuntu - please share what that is)
run the build_sdcard.sh
once it has finished switch off and make an image of your SDcard/eMMC so you can flash it again to restore this initial state

Unfortunately this so far did not bring us closer why the system reboots, but it is strange to me why it does not even happen all the time.

I did all the process from the start but got no lucky as i said before, have you further suggestion to solve/debug the problem?

as mentioned in https://github.com/raspiblitz/raspiblitz/pull/4238, I got this issue as well with 2 old hdd disks but as well with my new 2TB Kingston XS1000 SSD. It doesn't matter if I format the disks on a Linux system before as ext4 or FAT or on a Windows system as NTFS, the RaspiBlitz reboots either right before "Creating the one big partition" or right after:
Running Format: (ext4) (sda)
# DATA DRIVE - FORMATTING to EXT4 layout (old)
# Unmounting all partitions of this device
# Wiping all partitions (sfdisk/wipefs)

Broadcast message from root@raspberrypi (Thu 2023-11-23 15:19:36 GMT):

The system will reboot now!

Broadcast message from root@raspberrypi (Thu 2023-11-23 15:19:36 GMT):

The system will reboot now!

Connection to <IP_ADDRESS> closed by remote host.
Connection to <IP_ADDRESS> closed.

With "sudo fdisk -l" on the RaspiBlitz 0.10.0 (Bookworm) I see the SSD is recognized as /dev/sda. After the reboot the partitions are gone and RaspiBlitz doesn't recognize the disk anymore and hangs in the "Waiting for HDD/SSD" menu, I have to create a ext4/FAT/NTFS partition on another system again.
admin@<IP_ADDRESS>:~ ₿ lsblk
NAME        MAJ:MIN RM   SIZE RO TYPE MOUNTPOINTS
sda           8:0    0   1.8T  0 disk
mmcblk0     179:0    0 119.4G  0 disk
├─mmcblk0p1 179:1    0   512M  0 part /boot/firmware
└─mmcblk0p2 179:2    0 118.9G  0 part /

The blitz.datadrive.sh script knows nothing about a disk apparently:
admin@<IP_ADDRESS>:~ ₿ sudo /home/admin/config.scripts/blitz.datadrive.sh status
# RASPIBLITZ DATA DRIVE Status

# BASICS
isMounted=0
isBTRFS=0

# SETUP INFO
isSMART=0
isSSD=0
hddCandidate=''
hddBytes=0
hddGigaBytes=0
hddPartitionCandidate=''

# RAID
isRaid=0
raidCandidates=0

# SWAP
isSwapExternal=0

admin@<IP_ADDRESS>:~ ₿

How can I debug this further?

seems simlar to #4290
try if the following RaspberryPi image (Download under Artifacts) fixes this:
https://github.com/raspiblitz/raspiblitz/actions/runs/7201966440

seems simlar to #4290
try if the following RaspberryPi image (Download under Artifacts) fixes this: https://github.com/raspiblitz/raspiblitz/actions/runs/7201966440

i flashed the image on the sd card and rebooted the odroid m1 but it didn't recognize any os. Any clue?

@Backspin7792 the image is just for RaspberryPi odroid might need a special image ... @openoms is there a odroid build?

@Backspin7792 the image is just for RaspberryPi odroid might need a special image ... @openoms is there a odroid build?

there's a way to get the right build_sdcard.sh so i can test it without an image?

@Backspin7792 you can run the build_sdcard.sh on the Odroid once you booted up and connected with a Debian or Ubuntu base image or can try Armbian as described in: https://github.com/raspiblitz/raspiblitz/tree/dev/alternative.platforms#armbian

@Backspin7792 you can run the build_sdcard.sh on the Odroid once you booted up and connected with a Debian or Ubuntu base image or can try Armbian as described in: https://github.com/raspiblitz/raspiblitz/tree/dev/alternative.platforms#armbian

yeah i did it several times but i got the hd error described above.. i'm wondering if the build_sdcard.sh is updated and can solve the issue, or i have to modify something.. ty


Set icon for a task?

Issue Description
I am able to set an icon for my whole extension in the vss-extension.json, however, my two tasks which are contained within the extension do not get this icon. How to set a proper icon for my two tasks? Is there a way to configure it in task.json?
Expected behaviour
Task should have my extension's icon.
Actual behaviour
Task is shown with generic icon:

Any help is appreciated, thank you!
Best regards,
D.R.

You can see a sample folder structure here:
https://github.com/microsoft/azure-pipelines-tasks/tree/master/Tasks/ANTV1
You will want to add icon.png to the root of the task folder.

So I don't have to put the information anywhere, it is just called icon.png by convention?

Correct :)

OK, great, thanks for your quick replies!
PS: maybe I've just overlooked it, if not: would be a great addition to the docs at https://docs.microsoft.com/en-us/azure/devops/extend/develop/add-build-task?view=azure-devops


fix(server+clent): added validitions in both fe and be

Fixes #208
resolved form validation issue in api field

Thanks for putting the time @adityapuri75. I've left some feedback. Please make sure to run npx nx format:write --all at the root of the repo to format it before committing, this way CI will pass.

Thanks for the feedback @arielweinberger, i have updated the branch as you suggested. i don’t have much experience with the fe but i have took reference from the other files and made changes Please Review.

Hello @arielweinberger thanks for the feedback on my commit, can i start working on issue  #238

@adityapuri75 Please comment there so I can assign it to you. Thanks for this contribution!


Extend teams user app list with teamsAppDefinition information

Description
This command is calling this api
https://docs.microsoft.com/en-us/graph/api/userteamwork-list-installedapps?view=graph-rest-1.0&tabs=http
to get list of app installed for a user
This call/command returns only this as response
"id": "YTZiNjMzNjUtMzFhNC00ZjYxUTkyZWMtNzEwYjcxNTU3YWY5IyMwLjk="
Need to somehow pass $expand=teamsAppDefinition to get more details like this
"teamsAppDefinition": {
                "id": "MGQ4MjBlY2QtZGVmMi00Mjk3LWFkYWQtNzgwNTZjZGU3Yzc4IyMxLjAuMA==",
                "teamsAppId": "0d820ecd-def2-4297-adad-78056cde7c78",
                "displayName": "OneNote",
                "version": "1.0.0"
            }

Steps to reproduce
m365 teams user app list --userName<EMAIL_ADDRESS>Expected results
Need to be able to make this api call with CLI
GET https://graph.microsoft.com/v1.0/users/5b649834-7412-4cce-9e69-176e95a394f5/teamwork/installedApps?$expand=teamsAppDefinition
Response
HTTP/1.1 200 OK
Content-type: application/json

{
    "value": [
        {
            "id": "NjRiOWM3NDYtYjE1NS00MDQyLThkNDctOTQxYmQzODE2ODFiIyMwZDgyMGVjZC1kZWYyLTQyOTctYWRhZC03ODA1NmNkZTdjNzg=",
            "teamsAppDefinition": {
                "id": "MGQ4MjBlY2QtZGVmMi00Mjk3LWFkYWQtNzgwNTZjZGU3Yzc4IyMxLjAuMA==",
                "teamsAppId": "0d820ecd-def2-4297-adad-78056cde7c78",
                "displayName": "OneNote",
                "version": "1.0.0"
            }
        },
        {
            "id": "NjRiOWM3NDYtYjE1NS00MDQyLThkNDctOTQxYmQzODE2ODFiIyMwZmQ5MjVhMC0zNTdmLTRkMjUtODQ1Ni1iMzAyMmFhYTQxYTk=",
            "teamsAppDefinition": {
                "id": "MGZkOTI1YTAtMzU3Zi00ZDI1LTg0NTYtYjMwMjJhYWE0MWE5IyMxLjc=",
                "teamsAppId": "0fd925a0-357f-4d25-8456-b3022aaa41a9",
                "displayName": "SurveyMonkey",
                "version": "1.7"
            }
        },
        {
            "id": "NjRiOWM3NDYtYjE1NS00MDQyLThkNDctOTQxYmQzODE2ODFiIyMyYTUyNzcwMy0xZjZmLTQ1NTktYTMzMi1kOGE3ZDI4OGNkODg=",
            "teamsAppDefinition": {
                "id": "MmE1Mjc3MDMtMWY2Zi00NTU5LWEzMzItZDhhN2QyODhjZDg4IyMxLjA=",
                "teamsAppId": "2a527703-1f6f-4559-a332-d8a7d288cd88",
                "displayName": "SharePoint",
                "version": "1.0"
            }
        }
  ]
}

Actual results
"id": "YTZiNjMzNjUtMzFhNC00ZjYxUTkyZWMtNzEwYjcxNTU3YWY5IyMwLjk="
Diagnostics
No response
CLI for Microsoft 365 version
v3.13.0
nodejs version
v10.21.0
Operating system (environment)
Windows
Shell
Windows PowerShell
cli doctor
No response
Additional Info
Need capability to add ?$expand=teamsAppDefinition query string to command m365 teams user app list

Thank you for reaching out! That would be a great addition to the command. 👍

@waldekmastykarz You can assign this one to me 👍
Question: What properties of teamsAppDefinition do we want to show when running the command without output --json? All the properties or just a subset?

Thanks for your help @Abderahman88 its all yours
I would say it would be best to return all of the teamsAppDefinition properties.

For output JSON we should always output all data available to us from the API. In the text output mode, we should trim it so that the output reasonably fits the terminal screen.

I've added displayName and version in text output mode. Is this enough?

@Abderahman88 thats perfect. Thank you so much for taking this one, and thank you @waldekmastykarz @garrytrinder for looking into this.


[HOLD for payment 2023-11-30] Notification - User is navigated to LHN after opening notification when app is closed

If you haven’t already, check out our contributing guidelines for onboarding and email<EMAIL_ADDRESS>to request to join our Slack channel!

Version Number: <IP_ADDRESS>
Reproducible in staging?: Y
Reproducible in production?: N
If this was caught during regression testing, add the test name, ID and link from TestRail:
Email or phone of affected tester (no customers):
Logs: https://stackoverflow.com/c/expensify/questions/4856
Expensify/Expensify Issue URL:
Issue reported by: Applause - Internal Team
Slack conversation:
Action Performed:

Kill the ND app
Wait for about 1 minute
Send a message from the secondary device to the user logged in on the main device
After notification is received, wait 10 seconds and disable the internet
Double-tap the notification

Expected Result:
User is navigated to the correct chat
Actual Result:
User is navigated to the LHN
Workaround:
Unknown
Platforms:

Which of our officially supported platforms is this issue occurring on?

[x] Android: Native
[ ] Android: mWeb Chrome
[x] iOS: Native
[ ] iOS: mWeb Safari
[ ] MacOS: Chrome / Safari
[ ] MacOS: Desktop

Screenshots/Videos
Add any screenshot/video evidence

https://github.com/Expensify/App/assets/78819774/a10060ce-ae9b-4f8b-94d1-9d68abbcf941
View all open jobs on GitHub
Issue OwnerCurrent Issue Owner: @johnmlee101

Production :
https://github.com/Expensify/App/assets/78819774/3af33eb7-91d4-4e0c-9960-79eaf8dc0835

I managed to reproduce on staging even when online
https://github.com/Expensify/App/assets/6474442/f100ed0e-2c3f-4b4a-b1be-b4036e2fe5fe

cc @arosiclair

Keeping some discussion here: https://expensify.slack.com/archives/C07J32337/p1700588638959299?thread_ts=1700588255.529729&cid=C07J32337
But this was logged in some of the requests
829a53ea89181879-EWR | staging-www1.sjc | 2023-11-21 16:32:26 933 |<EMAIL_ADDRESS>| MobilePushNotifications - NewDot notification payload data exceeded the maximum allowable. Deleting onyxData field.

I can reproduce this in dev. It seems like there are no issues with handling the notification click:
DEBUG  [info] Navigating to route - {"path":"/r/34"}
however it looks like there's code navigating back to the home page after we navigate to the chat which is breaking this functionality:
[info] Navigating to route - {"path":"/"}
Maybe one of this deploy's PRs added an extra navigation that's doing this?
DEBUG  Timing:development.new.expensify.trie_initialization 2390
 LOG  Running "NewExpensify" with {"rootTag":11}
 DEBUG  [OnyxUpdateManager] Listening for updates from the server
 DEBUG  [info] [PushNotification] Callback triggered for com.airship.push_received - ""
 DEBUG  [info] [PushNotification] received report comment notification in the foreground - {"reportID":34,"reportActionID":"3096043123628849351"}
 DEBUG  [info] [Onyx] merge() called for key: report_34 properties: reportID,reportName,type,chatType,ownerEmail,ownerAccountID,managerEmail,managerID,policyID,participantAccountIDs,visibleChatMemberList,isPinned,lastReadTime,lastReadSequenceNumber,lastVisibleActionCreated,lastVisibleActionLastModified,lastMessageText,lastActorAccountID,notificationPreference,welcomeMessage,stateNum,statusNum,oldPolicyName,isOwnPolicyExpenseChat,lastMessageHtml,iouReportID,hasOutstandingIOU,hasOutstandingChildRequest,writeCapability,total,currency,submitterPayPalMeAddress,isWaitingOnBankAccount,nonReimbursableTotal,maxSequenceNumber,hasDraft - ""
 DEBUG  [info] [Onyx] merge() called for key: reportActions_34 properties:<PHONE_NUMBER>987116741,1810592943714682823,720260980807411269,5021502884569866715,3096043123628849351 - ""
 DEBUG  [info] [PushNotification] Subscribing to notifications - ""
 DEBUG  [info] Called API write - {"command":"OptInToPushNotifications","deviceID":"sunfish13b96e6e-7517-9667-9384-7d9653abb2b6"}
 DEBUG  [info] [Onyx] set() called for key: networkRequestQueue properties: 0,1,2,3,4 - ""
 DEBUG  [info] [Onyx] merge() called for key: pushNotificationsEnabled - ""
 DEBUG  [info] Found existing deviceID - "sunfish13b96e6e-7517-9667-9384-7d9653abb2b6"
 DEBUG  [info] Making API request - {"command":"ReconnectApp"}
 DEBUG  [info] [PushNotification] Callback triggered for com.airship.notification_response - ""
 DEBUG  [info] [PushNotification] onSelected() - called - {"reportID":34,"reportActionID":"3096043123628849351"}
 DEBUG  [info] [PushNotification] Callback triggered for com.airship.notification_response - ""
 DEBUG  [info] [PushNotification] onSelected() - called - {"reportID":34,"reportActionID":"3096043123628849351"}
 DEBUG  [info] [NetworkConnection] NetInfo state change - {"details":{"isConnectionExpensive":false,"txLinkSpeed":780,"rxLinkSpeed":866,"linkSpeed":780,"subnet":"<IP_ADDRESS>","ipAddress":"<IP_ADDRESS>","frequency":5180,"strength":99,"bssid":"02:00:00:00:00:00"},"isConnected":true,"type":"wifi","isInternetReachable":true,"isWifiEnabled":true}
 DEBUG  [info] [Migrate Onyx] start - ""
 DEBUG  [info] [Onyx] merge() called for key: network properties: isOffline - ""
 DEBUG  [info] [Onyx] set() called for key: demoInfo properties:  - ""
 DEBUG  [info] [Onyx] set() called for key: isCheckingPublicRoom - ""
 DEBUG  [info] [Migrate Onyx] Skipped migration RenameReceiptFilename because there are no transactions - ""
 DEBUG  [info] [Migrate Onyx] Skipped migration KeyReportActionsDraftByReportActionID because there were no reportActionsDrafts - ""
 DEBUG  [info] [Migrate Onyx] Skipped TransactionBackupsToCollection migration because there are no transactions - ""
 DEBUG  [info] [Migrate Onyx] finished in 47ms - ""
 DEBUG  [info] [NetworkConnection] listenForReconnect called - ""
 DEBUG  [info] [PushNotification] onSelected() - Navigation is ready. Navigating... - {"reportID":34,"reportActionID":"3096043123628849351"}
 DEBUG  [info] Navigating to route - {"path":"/?initial=true&screen=Report&params=%5Bobject%20Object%5D&path=%2Fr%2F34"}
 DEBUG  [info] Navigating to route - {"path":"/r/34"}
 DEBUG  [info] [PushNotification] onSelected() - Navigation is ready. Navigating... - {"reportID":34,"reportActionID":"3096043123628849351"}
 DEBUG  Timing:development.new.expensify.homepage_initial_render 641
 DEBUG  [info] Navigating to route - {"path":"/"}
 DEBUG  [info] Navigating to route - {"path":"/"}
 DEBUG  [hmmm] [PusherConnectionManager] state change - {"states":{"previous":"connecting","current":"connected"}}
 DEBUG  [hmmm] [PusherConnectionManager] connected event - ""
 DEBUG  [info] [Pusher] Attempting to subscribe to channel - {"channelName":"private-encrypted-user-accountID-2-f1f0504637ff4702af969520f3c069df","eventName":"multipleEvents"}
 DEBUG  [info] [PusherAuthorizer] Attempting to authorize Pusher - {"channelName":"private-encrypted-user-accountID-2-f1f0504637ff4702af969520f3c069df"}
 DEBUG  [info] Called API makeRequestWithSideEffects - {"command":"AuthenticatePusher","socket_id":"582391.201247","channel_name":"private-encrypted-user-accountID-2-f1f0504637ff4702af969520f3c069df","shouldRetry":false,"forceNetworkRequest":true}
 DEBUG  [info] Making API request - {"command":"AuthenticatePusher"}

Removing the blocker label since we CPed a fix.

This should be all set so closing this out

@laurenreidexpensify can you handle payment for @aimane-chnaif's C+ review? Thanks!

Payment Summary:
C+ Review - $500 @aimane-chnaif Offer sent in Upwork https://www.upwork.com/en-gb/jobs/~01a9cda98c1c4a1734

Payment Summary:
C+ Review - $500 @aimane-chnaif paid in Upwork


Parameterise test buckets and groups

So we can skip creating them for certain collaborators.

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

:exclamation: No coverage uploaded for pull request base (main@9c71f6f). Click here to learn what that means.

Additional details and impacted files
@@           Coverage Diff           @@
##             main     #149   +/-   ##
=======================================
  Coverage        ?   88.13%
=======================================
  Files           ?        4
  Lines           ?      396
  Branches        ?        0
=======================================
  Hits            ?      349
  Misses          ?       47
  Partials        ?        0

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

FWIW, this is the diff:
cloudidentity/group:Group::DATASET-gcp-test-group
cloudidentity/groupMembership:GroupMembership::DATASET-gcp-analysis-group-in-test-full
cloudidentity/groupMembership:GroupMembership::DATASET-gcp-cromwell-test-access-level-group-membership
cloudidentity/groupMembership:GroupMembership::DATASET-gcp-dataproc-test-access-level-group-membership
cloudidentity/groupMembership:GroupMembership::DATASET-gcp-full-in-test-full
cloudidentity/groupMembership:GroupMembership::DATASET-gcp-test-full-in-test-read
cloudidentity/groupMembership:GroupMembership::DATASET-gcp-test-in-images-reader-group-member
cloudidentity/groupMembership:GroupMembership::DATASET-gcp-test-in-test-full
cloudidentity/groupMembership:GroupMembership::DATASET-gcp-transitive-test-full-in-common-test-full
cloudidentity/groupMembership:GroupMembership::DATASET-gcp-transitive-test-read-in-common-test-read
projects/iAMMember:IAMMember::DATASET-gcp-cromwell-service-account-test-workflows-runner
projects/iAMMember:IAMMember::DATASET-gcp-dataproc-service-account-test-dataproc-worker
projects/iAMMember:IAMMember::DATASET-gcp-test-serviceusage-consumer
secretmanager/secret:Secret::DATASET-gcp-cromwell-test-key
secretmanager/secretIamMember:SecretIamMember::DATASET-gcp-cromwell-service-account-test-secret-accessor
secretmanager/secretIamMember:SecretIamMember::DATASET-gcp-git-checkout-token-test-accessor
secretmanager/secretVersion:SecretVersion::DATASET-gcp-cromwell-service-account-test-secret-version
serviceaccount/account:Account::DATASET-gcp-service-account-cromwell-test
serviceaccount/account:Account::DATASET-gcp-service-account-dataproc-test
serviceaccount/iAMMember:IAMMember::DATASET-gcp-cromwell-runner-test-service-account-user
serviceaccount/iAMMember:IAMMember::DATASET-gcp-cromwell-service-account-test-service-account-user
serviceaccount/key:Key::DATASET-gcp-cromwell-service-account-test-key
storage/bucket:Bucket::DATASET-gcp-test-analysis-bucket
storage/bucket:Bucket::DATASET-gcp-test-bucket
storage/bucket:Bucket::DATASET-gcp-test-tmp-bucket
storage/bucket:Bucket::DATASET-gcp-test-upload-bucket
storage/bucket:Bucket::DATASET-gcp-test-web-bucket
storage/bucketIAMMember:BucketIAMMember::DATASET-gcp-test-analysis-runner-config-viewer
storage/bucketIAMMember:BucketIAMMember::DATASET-gcp-test-full-test-admin
storage/bucketIAMMember:BucketIAMMember::DATASET-gcp-test-full-test-analysis-admin
storage/bucketIAMMember:BucketIAMMember::DATASET-gcp-test-full-test-tmp-admin
storage/bucketIAMMember:BucketIAMMember::DATASET-gcp-test-full-test-upload-admin
storage/bucketIAMMember:BucketIAMMember::DATASET-gcp-test-full-test-web-admin
storage/bucketIAMMember:BucketIAMMember::DATASET-gcp-test-hail-wheels-viewer
storage/bucketIAMMember:BucketIAMMember::DATASET-gcp-test-read-test-analysis-read
storage/bucketIAMMember:BucketIAMMember::DATASET-gcp-test-read-test-read
storage/bucketIAMMember:BucketIAMMember::DATASET-gcp-test-read-test-tmp-read
storage/bucketIAMMember:BucketIAMMember::DATASET-gcp-test-read-test-upload-read
storage/bucketIAMMember:BucketIAMMember::DATASET-gcp-test-read-test-web-read
storage/bucketIAMMember:BucketIAMMember::DATASET-gcp-web-server-test-web-bucket-viewer
storage/bucketObject:BucketObject::storage-config-gcp-DATASET-test
Resource::metamist-project-DATASET-test
Resource::DATASET-gcp-test-group-settings


feat(deps): dependencies upgrade

Supercedes #1886

BTW really minor thing now that package-lock is in place, but a bunch of ~ changed to ^.

👍
yeah I had to re-do the package-lock thing so probably dude to that.


Support chain key

New client with ckey

@sirapop-sun We’re going to close this because we don't have any plan to support chain key in this library.


delft: allow deployment through colemena

Provide an output that translates nixosConfigurations to a colmena- compatible output.
Colmena provides a convenient wrapper around building and deploying machines, than the bare nixos-rebuild we had been using up until now.

❯ colmena build
[INFO ] Using flake: git+file:///home/hexa/git/nixos/infra?dir=delft
[INFO ] Enumerating nodes...
[INFO ] Selected all 3 nodes.
       ✅ 3m All done!
 (...) ✅ 24s Evaluated pluto, rhea, and haumea
haumea ✅ 1s Built "/nix/store/6ad5kxcgj7h762kl837jkv0nq3k7yl41-nixos-system-haumea-23.11.20240228.747e63c"
 pluto ✅ 1s Built "/nix/store/c6nrj676rybwbxwccmb3a3szc3csl2qx-nixos-system-pluto-23.11.20240228.747e63c"
  rhea ✅ 2m Built "/nix/store/vh47l0l2fy0wfppw1lhwsk6rwj02qrq7-nixos-system-rhea-23.11.20240228.747e63c"

So you may want to grab a fresh copy of https://github.com/zhaofengli/colmena/pull/198 it's really good.

I think incremental improvements are fine. This looks decent, and I would like to defer to @zhaofengli regarding its integration in colmena.

I think incremental improvements are fine. This looks decent, and I would like to defer to @zhaofengli regarding its integration in colmena.

imo just copy the wrapper to your own repo because it's not obvious how this stuff can be made applicable to all repos with stuff like main vs master and so on, and the way the script works is relatively self-descriptive. It's in a contrib directory and licensed CC0 for that reason: it works perfectly but any properly generalized solution will be much harder to implement and one might want customization anyway, so it seems reasonable to just do an easy fix now and if a nicer feature happens, adopt that.

too bad colmena doesn't work for the macOS boxes, but it at least makes the NixOS boxes easier to deploy.

In theory doesn't colmena only require SSH and a switch-to-configuration
script? It might not be impossible to make it work with nix-darwin.
On Mon, 11 Mar 2024, 17:33 Jonas Chevalier, @.***>
wrote:

too bad colmena doesn't work for the macOS boxes, but it at least makes
the NixOS boxes easier to deploy.
—
Reply to this email directly, view it on GitHub
https://github.com/NixOS/infra/pull/400#issuecomment-1987871251, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AABRQLTMMB46E7J6NAUJXN3YXVT7FAVCNFSM6AAAAABELLRMQSVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTSOBXHA3TCMRVGE
.
You are receiving this because your review was requested.Message ID:
@.***>

In theory doesn't colmena only require SSH and a switch-to-configuration script? It might not be impossible to make it work with nix-darwin.
…
On Mon, 11 Mar 2024, 17:33 Jonas Chevalier, @.> wrote: too bad colmena doesn't work for the macOS boxes, but it at least makes the NixOS boxes easier to deploy. — Reply to this email directly, view it on GitHub <#400 (comment)>, or unsubscribe https://github.com/notifications/unsubscribe-auth/AABRQLTMMB46E7J6NAUJXN3YXVT7FAVCNFSM6AAAAABELLRMQSVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTSOBXHA3TCMRVGE . You are receiving this because your review was requested.Message ID: @.>

Yes, I am planning to introduce generic hooks for "bring your own switch-to-configuration logic" for Liminix and others systems, we discussed it in https://matrix.to/#/!UKDpaKNNsBpOPfLWfX:zhaofeng.li/$DFKVuVYaMjCn1drriPf2xA9w9Qwl4yMB07dxnbQKgHM?via=nixos.org&via=matrix.org&via=nixos.dev FWIW.


Snowplow Lzo S3 Sink ignores AWS region setting for dynamodb table

Snowplow Lzo S3 Sink ignores AWS region setting for dynamodb table and creates the table in us-east-1

Hi @kavehfa ,
This will be fixed in the next release of the sink (which will be going into test soon).
Closing as duplicate of #1582


Review files in data/layout and confirm that they are all necessary.

Files in data/layout are telescope lists for different array definition.

partly duplication of files in tests/resources
different metadata definition (and values for prod5?) for some of them
different metadata format than what we use right now for most telescope list.
might also consider to have one list of all telescopes and tools requiring e.g., a 4 MST array are extracting that from the main array (as long as all of those are subarrays of the main array)

I will remove all those files, as all these layouts are now defined in the model parameter DB (after mergine PR 947)


socket connected, but

as all other bots, this one too connects using the script, no proxies needed, direct and doesn't apear connected on the dashboard.
all bots are missing the bcrypt methods to apear as token making machines.. so why bother, really, to sell proxies?

yeah me too, bot connected and running, but no connection on the dashboard


Version Kubernetes Agent Chart

This PR was manually created to make the initial v2 alpha version of the Kubernetes agent helm chart.
Releases
<EMAIL_ADDRESS>Major Changes

05fa04c Creating Kubernetes Agent v2 alpha prerelease

Changesets is confused because I did the versioning manually, we don't need to add a changeset to this.


Automation options

Is there any way to create / manage roles outside of the UI, for example PowerShell?

Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: 796818f1-67d6-9a20-9498-94baf03276d6
Version Independent ID: a9293050-acc0-7710-52cf-5cf64689d719
Content: Create and manage roles for role-based access control
Content Source: microsoft-365/security/defender-endpoint/user-roles.md
Product: m365-security
Technology: mde
GitHub Login: @mjcaparas
Microsoft Alias: macapara

@pieterhancke Thank you for your feedback. You can use PowerShell to assign basic permissions to access the portal. The document -https://docs.microsoft.com/en-us/microsoft-365/security/defender-endpoint/basic-permissions?view=o365-worldwide talks about this in detail.
We don't have options to assign more granular or RBAC roles via PowerShell yet.
Hope this helps!
Thanks
Sri

@msbemba Thank you very much for the contribution and sharing this explanation. @pieterhancke Hope this comment is helpful for you. If you see a documentation update is required, please feel free to open an issue for the same. We proceed here to close it. Thanks for taking out some time to open the issue. Appreciate and encourage you to do the same in future also.


Typo

error_birthdate_too_young: You are is not old enough (you need to be at least 18 years old).

@kistitan thank you!


Feature Request: Option for Chat Notification on X ticks before teleport while in combat

Would it be possible to add an in-game notification if you're in combat and the crystal is X ticks away from activation, customizable if possible in settings?

Fixed with https://github.com/runelite/plugin-hub/pull/5519


Migrated to new RP, introduced dapr-components

This PR migrates from Microsoft.Web to Microsoft.App@2022-01-01-preview.
Note:

As the Bicep types have not been built with the new rest spec, warnings will be shown for all Microsoft.App resources for the moment.
Dapr Components do not work as of 2022-02-08, this PR implements them, but will require testing once implemented. (This puts this PR in a tricky place, as there is no other way to define Dapr components until this is implemented).
I've tested this passes validation & pre-flight, but until https://github.com/microsoft/azure-container-apps/issues/109 is fully resolved, I can't test end to end.
I tried to keep this to a minimal migration, opting for existing styling rather than refactoring.

Thanks @ScottHolden for your help with this work! I only added a few things:

For all ACA added appProtocol: http
Changed the name of the cron binding to match other bindings
Added dependsOn to all ACA for their respective Dapr components

NOTE: The deployment of this PR will fail due to all dapr components having . in them. Since this requires a larger change to the reddog-code repo, this should be a part of a different PR.

@lynn-orrell @kendallroden


Spherical Harmonics

Has the option for importing Spherical Harmonics been removed? I can see the option available in v 0.10.3 from one of the screenshots, but it appears to have been removed since then?
"IMPORTANT NOTE
the editor viewport does not render the spherical harmonic lighting data (please submit issue if you'd like this to be added)"
.... YES PLEASE!!!!

I believe OPTIONS -> Load all PLY data controls whether spherical harmonics data is loaded.

I believe OPTIONS -> Load all PLY data controls whether spherical harmonics data is loaded.

Ahh, thanks for the tip!


Adds (fixes) filesystem/available metric

Problem
metric filesystem/available was not showing up on the sink side
Solution
Implemented HasLabeledMetric and GetLabeledMetric by adapting the same methods of the filesystem/limit metric
Testing
Tested in our monitoring setup and now getting the desired filesystem/available metric at our sink

This change is

I was invited and joined the LFID group of AltSchool contributors

I also associated my github account with the LFID

looks reasonable.  Can you also add support in the summary source?

@DirectXMan12 thanks for the review and bare with me as I am a novice go programmer. I am using the summary source and didn't have to modify anything else to get the filesystem/available metric.

Ah, my bad.  It's already there.
/ok-to-test

/retest

Apologies for being MIA, I've been relocating across the Atlantic. Was the retest needed for flaky tests? Is the PR ready to merge now?

yep, retest was for flaky infrastructure, actually.  Should be all set now.


How will we handle invalid JSON snippets?

In angular.rst we have
.. code-block:: json

    "scripts": {
    ...
    "update-backend": "plonetheme-upload --enable plonecustom http://whatever.herokuapp.com/Plone"
    }

That generates a warning and doesn't highlight.
This works, but it's less clear about how this snippet fits into the target file, by implying that scripts has no siblings and update-backend has only one key:
{"scripts": {
  "update-backend": "plonetheme-upload --enable plonecustom http://whatever.herokuapp.com/Plone"                                         }}

For a short snippet like that, maybe silencing the warning in that specific case would make sense. Is there a better way?

Related to: https://github.com/plone/training/pull/285.

In this particular case, I think it would make sense to use .. code-block:: js, instead of json.  And for snippets of JSON this might be a good enough workaround, since there probably isn't any text that needs to be highlighted, anyway.
Perhaps .. code-block:: json makes sense when you are using complete json data structures, and you want to lean on the strict checks to ensure you didn't mess it up somehow.


add run-kubectl workflow

Open question: what version of kubectl is used? Should we make it configurable with a modern/sane default?

good question. I added the https://github.com/Azure/setup-kubectl/tree/main action to give us more control, previously it was just using whatever came bundled with ubuntu. Now it will use the latest stable or whichever we configure.


Replace uglify-es to Terser

This PR changes Uglify-ES, what no longer maintainable, to Terser.
Fixes #121
/cc @ForbesLindesay

Coverage remained the same at 91.102% when pulling a3c25684f9bf438c1485d4ebd94230e557a2e7cd on HashimotoYT:terser into 4acba10df581f8ee604fbf7d4be56ce23e7b8706 on ForbesLindesay:master.