Introduce the image-preload-strategy setting to control the behavior of image preloading during upgrades

IMPORTANT: Please do not create a Pull Request without creating an issue first.
Problem:

In the current Harvester upgrade implementation, image preloading will always happen (provided new container images are introduced) in a one-node-at-a-time fashion. It takes a significant portion of the upgrade time, no matter how powerful the given cluster nodes and network capacity. We shall provide the flexibility for users to customize the image preload strategy.
Solution:

Add a new Setting called image-preload-strategy. The upgrade controller will honor the setting value to decide whether to skip preload, preload sequentially, or preload in parallel for container images.
Available options are:

skip
sequential
parallel

Related Issue:
#3059 #6028
Test plan:

For reviewers, please use a custom-built ISO image that contains the PR; for QAs, please use the master ISO image.
Prepare a Harvester cluster consists of at lease two nodes
Configure the image-preload-strategy to skip, sequential, or parallel respectivelykubectl patch setting.harvesterhci image-preload-strategy --type=merge -p '{"value":"skip"}'
kubectl patch setting.harvesterhci image-preload-strategy --type=merge -p '{"value":"sequential"}'
kubectl patch setting.harvesterhci image-preload-strategy --type=merge -p '{"value":"parallel"}'

Start the upgrade using the same ISO image
Observe the upgrade progress, when it enters the image-preload phase:

If skip is specified, there should be no prepare pods running in the cluster
If sequential is specified, there should be exact one parepare pod running at a time
If parallel is specified, there should be two (or other number depending on how many nodes are there) prepare pods running simultaneously

The upgrade ends successfully

I've discussed with @starbops about where we should set the default policy to parallel by default. But considering doing this might bring high traffic to the upgrade repo VM and pod network, we decided to keep the value to serial for now.

Dear reviewers, recent commits were added to replace the initial image-preload-strategy setting with a more general upgrade-relevant one called upgrade-config to ensure future-proofing. Also, specifying the concurrency with the parallel strategy is supported.

Do we want to bump up the upgrade repo vm specs from 1cpu/1G when parallel loading is requested?

Though I agree we can bump the upgrade VM spec slightly for the parallel image preloading case, I'm unsure what the reasonable bump is. Is increasing the CPU/memory to a fixed value larger than the original 1cpu/1G enough? Or do we want it to be smart enough to increase the spec according to the concurrency set? But we must cap the resource bump to prevent any cluster node from being unable to accommodate the upgrade VM. This makes me start to think of horizontally scale the upgrade VM...
Do you have any ideas? cc @ibrokethecloud

@starbops I had a chat with @bk201 and we could may be leave it as is for now. The image download script has sufficient number of retries so we should be ok for most medium sized clusters.

@mergifyio backport v1.4


fix(demos): remove css from demos

Closes https://github.com/patternfly/patternfly-next/issues/463

Deploy preview for pf-next ready!
Built with commit e951b01979e54491f86836526a7e709eb1e9ba51
https://deploy-preview-628--pf-next.netlify.com

Sorry @dgutride we broke your PR when we merged the linter. I am ok to merge it once it's rebased.


feat(cluster): Create a KUTTL test suite

To allow for more rapid development, increased reliability and easier reviews we need to add a test suite for the cluster chart and all of it's modes of operation.
KUTTL seems like an apropriate technology for the task, although I suspect there are a log of issues to be ironed out.

I've heard kuttl is kind of not really maintained, have a look at kyverno chainsaw maybe


[stable/keycloak] The initial admin user creation does not work

BUG REPORT
Version of Helm and Kubernetes:
Helm: 2.11
K8s Client Version: v1.11.3
K8s Server Version: v1.10.6-gke.2
Which chart:
stable/keycloak
chart: keycloak-3.4.0
app version: 4.2.1.Final
What happened:
Initial user as specified by the values.yml is not created
What you expected to happen:
Being able to login with the credentials as set in the applied values
How to reproduce it (as minimally and precisely as possible):
Using the values:
  ingress:
    enabled: true
    hosts:
      - keycloak.my-url.net

  username: keycloak
  password: "secret"

Trying to log in into the console with keycloak:secret fails. (username or password not recognised)
Anything else we need to know:
also reported in  #6373 (closed, but not resolved)
applied the prescript settings to make it work
preStartScript: |
      /opt/jboss/keycloak/bin/add-user.sh -u keycloak -p secret
      /opt/jboss/keycloak/bin/add-user-keycloak.sh -r master -u keycloak -p secret

I am seeing the same issue happening when in HA mode and with load balancers.

@svyotov @hans-d can you please try with the latest chart.

@dojadop I managed to login without the sticky session and without the PROXY env var.

awesome I'm guessing this issue should be closed then.

Should be fixed by now.

I have the same issue using Chart - keycloak-5.1.2. I cannot login either with the default keycloak user nor with a user created with  :
  /opt/jboss/keycloak/bin/add-user.sh -u admintest -p adminpass
  /opt/jboss/keycloak/bin/add-user-keycloak.sh -r master -u admintest -p adminpass

Tried both with 2 replicas, with 1 replica, wihtout setting any replicas flag at all, etc.

Hello, I have encountered this issue, but I managed to find a workaround (for local development), app is not in prod yet.
# PODS >> BEGIN
apiVersion: v1
kind: Pod
metadata:
  name: user-db
  labels:
    app: user-db
spec:
  volumes:
    - name: user-db
  containers:
    - name: user-db
      image: mongo:4.0.12
      ports:
        - name: mongodb-port
          containerPort: 27017
      volumeMounts:
        - name: user-db
          mountPath: /data/db
---
apiVersion: v1
kind: Pod
metadata:
  name: keycloak-db
  labels:
    app: keycloak-db
spec:
  containers:
    - name: keycloak-db
      image: postgres
      ports:
        - name: kc-db-port
          containerPort: 5432
      volumeMounts:
        - name: keycloak-db-volume
          mountPath: /var/lib/postgresql/data
      env:
        - name: POSTGRES_DB
          value: "keycloak"
        - name: POSTGRES_USER
          value: "keycloak"
        - name: POSTGRES_PASSWORD
          value: "password"
        - name: POSTGRES_PORT
          value: "5432"
  volumes:
    - name: keycloak-db-volume
      emptyDir: {}
---
apiVersion: v1
kind: Pod
metadata:
  name: keycloak-app
  labels:
    app: keycloak-app
spec:
  containers:
    - image: jboss/keycloak
      name: keycloak-app
      ports:
        - name: kc-port1
          containerPort: 9080
        - name: kc-port2
          containerPort: 9443
        - name: kc-port3
          containerPort: 10990
      env:
        - name: DB_VENDOR
          value: "POSTGRES"
        - name: DB_ADDR
          value: "kc-db-service"
        - name: DB_DATABASE
          value: "keycloak"
        - name: DB_USER
          value: "keycloak"
        - name: DB_SCHEMA
          value: "public"
        - name: DB_PASSWORD
          value: "password"
        - name: KEYCLOAK_USER
          value: "admin"
        - name: KEYCLOAK_PASSWORD
          value: "admin"
      command: ["/bin/sh"]
      args: ["-c",
             "echo sleeping 30 secs: hopefully postgres will start;
             sleep 0;
             keycloak/bin/add-user-keycloak.sh -r master -u superadmin -p password;
             keycloak/bin/standalone.sh -b <IP_ADDRESS> -Dkeycloak.migration.action=import -Dkeycloak.migration.provider=dir -Dkeycloak.migration.dir=/opt/jboss/keycloak/realm-config -Dkeycloak.migration.strategy=OVERWRITE_EXISTING -Djboss.socket.binding.port-offset=1000"]
      volumeMounts:
        - mountPath: /opt/jboss/keycloak/realm-config
          name: keycloak-settings-volume
  volumes:
    - name: keycloak-settings-volume
      hostPath:
        # directory location on host
        path: /Volumes/Data/Projects/clarity/keycloak-realm-config
        # this field is optional
        type: Directory
---
# SERVICES >> BEGIN
apiVersion: v1
kind: Service
metadata:
  name: mongo-user-service
spec:
  ports:
    - port: 27017
      targetPort: mongodb-port
      nodePort: 32000
      protocol: TCP
  selector:
    app: user-db
  type: NodePort
---
apiVersion: v1
kind: Service
metadata:
  name: kc-db-service
spec:
  ports:
    - port: 5432
      targetPort: kc-db-port
      nodePort: 32004
      protocol: TCP
  selector:
    app: keycloak-db
  type: NodePort
---
apiVersion: v1
kind: Service
metadata:
  name: kc-service
spec:
  ports:
    - port: 9080
      name: "kc-port1"
      targetPort: kc-port1
      nodePort: 32001
      protocol: TCP
    - port: 9443
      name: "kc-port2"
      targetPort: kc-port2
      nodePort: 32002
      protocol: TCP
    - port: 1090
      name: "kc-port3"
      targetPort: kc-port3
      nodePort: 32003
      protocol: TCP
  selector:
    app: keycloak-app
  type: NodePort


Bug: connection: timed out while working on ReplicaSets

Expected Behaviour
I'm testing the tool in a non-production cluster, and I'm experiencing some timeouts.
I wonder if the solution would be to add some timeout configurations, or if the tool is not intended to run on a cluster with a certain number of resources.
k get replicasets | wc -l
+ exec kubectl get replicasets --context xxx --namespace yyy
    4944

k get pods | wc -l
+ exec kubectl get pods --context xxx --namespace yyy
     972

Listing the replica sets via kubectl take around 17s.
Current Behaviour
The tool fails with a timeout error.
Code snippet
N/A

Possible Solution
No response
Steps to Reproduce
eksup analyze --cluster xxx --region us-east-1
eksup version
latest
Operating system
macOS x86_64
Error output
DEBUG hyper::proto::h1::conn: incoming body decode error: timed out
    at /Users/runner/.cargo/registry/src/index.crates.io-6f17d22bba15001f/hyper-0.14.28/src/proto/h1/conn.rs:321

  TRACE hyper::proto::h1::conn: State::close()
    at /Users/runner/.cargo/registry/src/index.crates.io-6f17d22bba15001f/hyper-0.14.28/src/proto/h1/conn.rs:948

  TRACE hyper::proto::h1::conn: flushed({role=client}): State { reading: Closed, writing: Closed, keep_alive: Disabled }
    at /Users/runner/.cargo/registry/src/index.crates.io-6f17d22bba15001f/hyper-0.14.28/src/proto/h1/conn.rs:731

  TRACE hyper::proto::h1::conn: shut down IO complete
    at /Users/runner/.cargo/registry/src/index.crates.io-6f17d22bba15001f/hyper-0.14.28/src/proto/h1/conn.rs:738

  TRACE tower::buffer::worker: worker polling for next message
    at /Users/runner/.cargo/registry/src/index.crates.io-6f17d22bba15001f/tower-0.4.13/src/buffer/worker.rs:108

  TRACE tower::buffer::worker: buffer already closed
    at /Users/runner/.cargo/registry/src/index.crates.io-6f17d22bba15001f/tower-0.4.13/src/buffer/worker.rs:62

...
  TRACE hyper::client::pool: pool closed, canceling idle interval
    at /Users/runner/.cargo/registry/src/index.crates.io-6f17d22bba15001f/hyper-0.14.28/src/client/pool.rs:759

Error: Failed to list ReplicaSets

Caused by:
    0: HyperError: error reading a body from connection: error reading a body from connection: timed out
    1: error reading a body from connection: error reading a body from connection: timed out
    2: error reading a body from connection: timed out
    3: timed out

I'm also facing issue when fetching ReplicaSets. In the error messages, it doesn't indicate timeout issue. I'm not sure it is the same root cause
Error: Failed to list ReplicaSets

Caused by:
    0: HyperError: error reading a body from connection: error reading a body from connection: unexpected EOF during chunk size line
    1: error reading a body from connection: error reading a body from connection: unexpected EOF during chunk size line
    2: error reading a body from connection: unexpected EOF during chunk size line
    3: unexpected EOF during chunk size line


--passWithNoTests does not work in watch mode

🐛 Bug Report
Currently, when run in watch mode, I got the "contain no test" error for empty spec files.
Adding --passWithNoTests in the cli has no effect.
To Reproduce
Steps to reproduce the behavior:
Create empty spec file.
run watch mode,
see the failure.
Run watch mode with --passWithNoTests
still receive the failure.
Expected behavior
no failure with the cli option.
envinfo
  System:
    OS: Windows Server 2016
    CPU: (56) x64 Intel(R) Xeon(R) CPU E5-4650 v4 @ 2.20GHz
  Binaries:
    Node: 12.6.0 - C:\Program Files\nodejs\node.EXE
    Yarn: 1.17.3 - C:\Program Files\nodejs\yarn.CMD
    npm: 6.9.0 - C:\Program Files\nodejs\npm.CMD
  npmPackages:
    jest: ^24.8.0 => 24.9.0

A repro for debugging would be nice to provide :) Also, maybe you'd like to give it a shot and fix it?

I think you're misunderstanding what passWithNoTests does - it refers to running Jest with no test files. Empty test files will always fail. This is not specific to watch mode.


Hello from Earth2Studio

Hi there,
I noticed your currently working with some Nvidia packages to get access to some models. That's great to see!
Recently we have been working on build up a more production level package focused on components to help enable downstream applications just like this.
https://github.com/NVIDIA/earth2studio
The key difference between this package and earth2mip is that:

earth2studio focus on providing Python components for allow people to build their own inference workflows / applications
earth2mip provides predefined intercomparison functions

We plan on slowly integrating earth2studio with other packages in the future. You may be interested in:
https://nvidia.github.io/earth2studio/modules/models.html
(Noticed you're looking at FuXi, wanted to also mention we are in the middle of integrating this ourselves into earth2studio. May be able to avoid redundant work there :) )
Cheers.

Hello @NickGeneva,
Thank you for bringing the earth2studio repository to our attention — it seems incredibly useful!
Could you share more details about your development roadmap? I'm also curious to know if earth2mip will continue to be maintained.
Thanks again!


Abort any multipart uploads so the bucket can be deleted

Is this behavior described in the documentation? Can you provide link please if yes?

Could you add a test for deleting a bucket which has an in-progress MPU?


Create backups with pgdump

@ostcar Do you have any proposal for me here?
Where should the pg_dump utility live? Should I copy such a binary into the manage service and then go from manage tool via a new gRPC route to the service and the call the pg_dump binary? I know that this binary is already present in the postgres container but I do not know how to go from the manage service into this container.

I think the nicest thing would be to a go implementation for pg_dump. So you could use the normal postgres-server to create the dump without the need to provide a copy of pg_dump. There is this package, that I have not tested: https://pkg.go.dev/github.com/habx/pg-commands#section-readme maybe there are more packages that can help with that task. Since this is a backup, we have to be sure, that it works. So maybe this is to critical for a self written tool.
The alternative is to provide the pb_dump binary with all it dependencies. This will probably increase the size of the manage-tool-binary multiple times.
I also don't know how to access the postgres container from the management contain without mountin the docker socket into the manage container. But even if this is possible, I don't think, that this is a good idea. The postgres-container is not mandatory. You can use an external postgres-server (Intervation does this). So a backup solution, what requires a postgres container could not be used all the time.

Looks like that the package is just a Go wrapper around an existing pg_dump binary.

I think I can not use the exec interface from inside the manage container. The manage container does only contain the go binary and nothing else at the moment ...

ah, sorry, i thought that the openslides binary shall invoke the backup tasks.

See https://github.com/OpenSlides/OpenSlides/pull/6533. We decided to promote a solution with docker-compose exec for the moment. If someone has a better solution, her or she is welcome to open a pull request.


Support alternative shells

Currently sake runs the formulas with /bin/sh, as this is the shell that Popen calls.
However, if passed the argument executable, Popen would run with any user specified shell.
For example, with the fish shell:
Popen(commands, shell=True, executable='/usr/bin/fish')

That's a great idea. I'll work this into the v1.0 release. Feel free to send a pull request if you need this sooner. I would implement it as a flag command line arg to sake like...
sake -e /usr/bin/fish

I am against implementing it as a command line argument. If I'm going to write my scripts inside the Sakefile in the fish language, I should specify the shell for sake to use inside the Sakefile also. A Sakefile with fish scripts cannot ever be run with a bash shell and vice-versa.
I think this should be implemented as a global option of the Sakefile.
I tried to read the code and find a place to introduce this change, but I couldn't get confident about the best way to do it (so I spent some time porting my fish scripts to sh so they could work), but I still think it is a valid feature to have.

Your position against implementing it as a command-line argument is compelling. Implementing it as either a global option of the sakefile, or even an attribute of formula is probably a better choice. I'll update you when I implement this

Actually, can you run this?
echo $SHELL

Popen will run the commands through the $SHELL environment variable on POSIX systems. Is your $SHELL fish?

fiatjaf@spooner ~> echo $SHELL
/usr/bin/fish

My shell is fish, but sake is running the scripts with /bin/sh.

Hmm, I wonder why. Python professes to use the $SHELL environment variable :(

Actually, it unconditionally uses /bin/sh.

Ah, too bad. I was looking at this
What do you think is best @kirbyfan64?

IMO, a shell option in the Sakefile rules would be best because the rules likely will heavily depend on the chosen shell.

Ok, at the top level, or under formula?

Top level. Putting it under formula might complicate Sakefile checking.
Of course, it's still your call. :)

Done


Fix incorrect indentation in dependabot npm strategy

Motivation:
I'd followed the following post to prevent PRs that only updates the package-lock.json file.
I hadn't realized that the indentation was off though 😅
Modifications:

Fixed indentation for npm versioning strategy

Result:

Less noisy npm dependency updates

Let me go ahead and merge this PR once CI completes since it is relatively low-impact. (after checking the leak failure)


ctrl+k doesn't respect n/N when asking to close file

I stumbled across the ctrl+k command when attempting to delete a line as in Sublime Text (i.e. ctrl+k,ctrl+k). This seems to be bound to a "Close File" command but it isn't respecting when I say "N":
Opened new file:

Pressed ctrl+k:

Typed N and pressed enter:

Expected behavior: File does not close
Actual behavior: Buffer resets or file closes (not sure which)
OS information: Running on bash@4.3.11(1) on Linux Mint 17.1 64 bit

Hi!
Sorry about that one, and thanks for the thorough bug report :). I fixed it in the dev branch just now. I'll merge it to master when I review my changes.
I could also think about changing the default key binding for Ctrl + K. What do you think?

Awesome, thanks =)
I am all for getting the keybindings as close to Sublime Text as possible. It would make reuse across the applications easy =)
For what it's worth, ST uses ctrl+w for its close command:
https://github.com/randy3k/sublime-default/blob/5c296d63820968a1fe1e0c9a54cb0a2cd7c65595/Default (Linux).sublime-keymap#L13

I have tried out the fix and verified it works. Thanks for the fix =)


cp: Copying directory into itself causes unbounded recursion

cp -R dir dir fails on GNU with the error cp: cannot copy a directory, 'dir', into itself, 'dir/dir'.However,  uutils continues copying dir into itself until the full path dir/dir/dir/.../ becomes too long to parse.

I can work on fixing this.


Generate dynamic fetchers for each Query and Mutation

Is your feature request related to a problem? Please describe.
The React Query plugin supports 3 types of fetcher functions at the moment:

fetch with our without fetchParams
graphql-request with GraphQLClient
file#identifier with a custom fetcher method

In all 3 cases, the generated fetcher function is static and the same for all useQuery and useMutation hooks. It receives the 2 parameters query and variables and returns the GraphQL execution result. That result will then be cached by React Query and returned as data.
Very often, I must do query-specific post-processing of the data. For example, parsing a field that contains a JSON string into an object, so that is available to all query listeners. I used to do this with the select function option of useQuery, but I recently found out that this function is being called after the data has been inserted into the cache and every time it is being retrieved from the cache via useQuery. Here is some more context on this topic on the ReactQuery repository: https://github.com/tannerlinsley/react-query/discussions/3387
This behaviour has 2 big disadvantages:

Performance is being affected by repeated calls of select every time useQuery returns its data from the cache. If I have one or more JSON fields on my query, that means multiple JSON.parse calls on every re-render. Clearly, one JSON.parse call before the data is being cached should be enough.
The select function is not being called when data from the cache is being retrieved by useQueryClient and queryClient.getQueryData. Let's say I have a mutation that creates a new item and via the mutations onSuccess handler I want to insert the new item into the list of items in the query cache. That means I have use queryClient.getQueryData and queryClient.setQueryData. But the data returned by getQueryData is not the same as returned as the data from the useQuery hook because it applies the select function beforehand.

I raised this issue on ReactQuery repo, but see it as a missing customising capability from graphql-codegen and I think I have to agree. The fetcher function should be considered as pre-cache manipulation and the select function as post-cache manipulation. Any transformations to queried data should therefore occur in the fetcher function.
As the fetcher function is not specific to any query, this behaviour is not possible at the moment.

Describe the solution you'd like
I suggest a new type of fetcher: a callback function specified as file#identifier that is being called during the generation of each Query and Mutation and that returns implementation as string of the fetcher function specific to this type. This callback receives the GraphQL OperationDefintionNode so it can check the type of each field in the query. I think the existing interface FetcherRenderer and generateFetcherFetch already contains all required parameters.

If you are going to consider this request useful, then I would offer my help and submit an initial PR for it. Let me know what you think :)

This feature request has been up for quite a while. Have you found any good workaround to dynamically change the fetching URL?


is_jewel variable

In jewel a package split was done and installing ceph means pulling in every package: ceph-osd, ceph-mon, ceph-mds, etc.... regardless of the role.
We have discussed before having more granularity on these types of variables so this ticket will track progress towards the following:

is_hammer
is_after_hammer
is_infernalis
is_after_infernalis
is_jewel
is_after_jewel

The package split should be tracked separately, the related BZ to this is: https://bugzilla.redhat.com/1322774

Looking through the source it appears we have a mix of:

after_hammer
is_ceph_infernalis

This ticket should normalize them as per the initial description.


12.1.1 Release

cc @chef/client-engineers

:+1:

:+1: assuming there's no other fixes needed

#3033 is probably a regression in 12.1.0


Problem with StreamSyncState

This is the problem when using writer.StreamSyncState:
class AppSchema(wf.StreamsyncState):
AttributeError: module 'writer' has no attribute 'StreamsyncState'

Oh tahnks for the really fast response!


Requesting Dark Mode

If possible, please enable dark UI mode.
Thank you for enabling the use of Diagrams.net/draw.io in Obsidian for us.

+1 This would also be on top of my list.
Also, big thank you from my side

To get Dark Theme just change the line 20494 in main.js in line to
const ui = "&ui=dark";
done

To get Dark Theme just change the line 20494 in main.js to
const ui = "&ui=dark";
done

Thanks to @alterdaemon  's suggestion. It worked.
But I'd like to add a point:
const ui = "&ui=dark"; indeed change the interface display into dark, however it does nothing with the exported svg.
To let the svg follow theme, additionally we need to focus on the save & export logic from line 20524, and add another line:
_postMessage({
        action: "export",
        format: "svg",
        embedImages: true,
        //add this line
        keepTheme: true,
        exit: false,
      }

This plugin actually runs an embedded instance, so I referenced the doc of diagrams.net: https://www.drawio.com/doc/faq/embed-mode#description-of-the-json-protocol
With this you can have more customizations.


It should be possible to control access to the RAG store with roles or permissions

It may already work but some tests should be added

I can look into it, can't assign here

Thanks for assigning :-)


[Typescript] Invalid createStyles definition (v4 beta)

[x] This is not a v0.x issue.
[x] I have searched the issues of this repository and believe that this is not a duplicate.

It seems the typings for createStyles are invalid in v4 beta 0. As you can see in the following snippet, Typescript will accept:
import { createStyles } from '@material-ui/core';
but runtime, this will throw an error (_core.createStyles is not a function):
https://codesandbox.io/s/wqqzkjvyx5
It seems like an attempt has been made to forward the definition to the styles package, but if I'm not missing something, this does not work.

For convenience we should just forward this to @material-ui/styles. The commented warning can be removed as long as we have 2 possible imports for a styling solution.

Aside: importing from @material-ui/core/styles works. Path imports should only be used for 1st and 2nd level e.g. import { withStyles } from '@material-ui/core' or import { withStyles } from '@material-ui/core/styles' but not import withStyles from '@material-ui/core/styles/withStyles'.

Thanks for the quick response 👍

@eps1lon On a different point, I was under the assumption that createStyles is no longer needed for withStyles and soon for makeStyles. Should we reflect this fact in the upgrade guide?

It was never needed for either one. It was and is a convenience helper.

@eps1lon Rereading https://github.com/mui-org/material-ui/pull/15390#discussion_r276545082, the important word is "immediate". This convenience helper is still needed.

@eps1lon Rereading #15390 (comment), the important word is "immediate". This convenience helper is still needed.

Correct. The main issue is type widening
const someObject = { foo: 'literal' }; // typeof someObject = { foo: string }
takeSomeObject(someObject); // throws if it expects { foo: 'literal' | 'anotherLiteral' }
takeSomeObject({ foo: 'someLiteral' }): // works since typescript doesn't infer a type. it just checks if the expected type matches the given type

So everybody who wants to create an intermediary variable for the styles(creator|object) still needs the helper.


How to compile

How to compile for De2-115 Cyclone IV Board??

Sorry, it's still very early in dev. Should have some progress sometime this year, though.


"Failed creating directory"

After a few days of testing different Nextcloud npm modules for uploading large files (>512MB), this module seems to be the only one that works, nice job!
But it only works when I upload the file to the root-folder, else it says "Failed creating directory".
( Perhaps you are better of using the native Webdav solutions, like mapping a networkdrive on Windows: https://docs.nextcloud.com/server/24/user_manual/en/files/access_webdav.html )

@jh4892 Thanks for reporting.
You're right, uploading to a sub directory wasn't possible till now. The reason for this was, that the uploader tried to create the whole sub directory structure also for the chunk-containing directory.
However this is not necessary at all.
I released package version v1.1.0 containing a fix.


Simple suggestion: can we use "smart" eqeqeq of eslint?

Do you want to request a feature or report a bug?

feature
What is the current behavior?
Now, comparing against null or undefined need:
typeof foo === 'undefined' && foo === null

If this is a feature request, what is motivation or use case for changing the behavior?
We could change the eslint rules:
"eqeqeq": "error" => "eqeqeq": "smart"

The "smart" option enforces the use of === and !== except for these cases:

Comparing two literal values
Evaluating the value of typeof
Comparing against null

More detail: eqeqeq - Rules - ESLint - Pluggable JavaScript linter
That could make source code more simple.
foo == null
// It's equal to (typeof foo === 'undefined' && foo === null)

What's the benefit?
For me this looks like this makes the codebase more inconsistent.

All right, just a little suggestion.


[PRM-491] - Added additional penalty to LPP tab

The reason for additional penalty needs to be changed, that will be done in PRM-489


Adding an extra tutorial using kaggle datasets as suggested in a issue.

issue:
https://github.com/tensorflow/decision-forests/issues/88#issue-1170940267
I have included an example for regression and classification.
This is my first time trying to contribute to open source (i saw this in gsoc and wanted to contribute)
please tell me if of any modifications/ improvements i can make if required and i will do them.

Hi Jack,
Thanks for the examples.
I don't see any script at this address: https://www.kaggle.com/jackfroster/tensorflow-decision-forests-example. Could you make it visible?
I created a page (https://github.com/tensorflow/decision-forests/blob/main/documentation/more_examples.md) to collect user examples without overloading the front page. Could you add your example here instead?


bugreport: Enclave_t.h

Currently the import file of Enclave_t.h is:
#include "time.h"
#include "inc/stat.h"
#include "sys/uio.h"
#include "inc/stat.h"

Maybe there is some bug in generating tool?  Maybe it is:
#include "time.h"
#include "sys/stat.h"
#include "sys/uio.h"
#include "sys/stat.h"

hmmmm
I think it might be something related to current EDL files.

sure. I'll try to solve it in several days.:ok_hand:


Uncomment invoicing feature lines

Details

The PR uncomments some code associated with the invoices page.
Fixed Issues

$ https://github.com/Expensify/App/issues/47302
PROPOSAL: N/A
Tests

Enable the invoicing feature

Open the "More feature" page.
Click on the toggle and enable the invoicing feature.
Verify that the newly appeared button "Invoices" has been highlighted in the settings list. When the narrow layout is active, the app must redirect to the settings list page as well.

Invoicing the details name page access

Open the page.
Verify that the access is available only when the invoicing feature is enabled.

Invoicing the details website page access

Open the page.
Verify that the access is available only when the invoicing feature is enabled.

Navigate from a report action

[Sender] Send an invoice from an account where there are no bank accounts.
[Receiver] Pay the invoice.
[Sender] Open the invoice page.
[Sender] Click on the "Add bank account" button.
[Sender] Verify that the app redirects to the invoices page.

[x] Verify that no errors appear in the JS console

Offline tests

Same as "Tests".
QA Steps

Same as "Tests".

[x] Verify that no errors appear in the JS console

PR Author Checklist

[x] I linked the correct issue in the ### Fixed Issues section above
[x] I wrote clear testing steps that cover the changes made in this PR

[x] I added steps for local testing in the Tests section
[x] I added steps for the expected offline behavior in the Offline steps section
[x] I added steps for Staging and/or Production testing in the QA steps section
[x] I added steps to cover failure scenarios (i.e. verify an input displays the correct error message if the entered data is not correct)
[x] I turned off my network connection and tested it while offline to ensure it matches the expected behavior (i.e. verify the default avatar icon is displayed if app is offline)
[x] I tested this PR with a High Traffic account against the staging or production API to ensure there are no regressions (e.g. long loading states that impact usability).

[x] I included screenshots or videos for tests on all platforms
[x] I ran the tests on all platforms & verified they passed on:

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

[x] I verified there are no console errors (if there's a console error not related to the PR, report it or open an issue for it to be fixed)
[x] I followed proper code patterns (see Reviewing the code)

[x] I verified that any callback methods that were added or modified are named for what the method does and never what callback they handle (i.e. toggleReport and not onIconClick)
[x] I verified that the left part of a conditional rendering a React component is a boolean and NOT a string, e.g. myBool && <MyComponent />.
[x] I verified that comments were added to code that is not self explanatory
[x] I verified that any new or modified comments were clear, correct English, and explained "why" the code was doing something instead of only explaining "what" the code was doing.
[x] I verified any copy / text shown in the product is localized by adding it to src/languages/* files and using the translation method

[x] If any non-english text was added/modified, I verified the translation was requested/reviewed in #expensify-open-source and it was approved by an internal Expensify engineer. Link to Slack message:

[x] I verified all numbers, amounts, dates and phone numbers shown in the product are using the localization methods
[x] I verified any copy / text that was added to the app is grammatically correct in English. It adheres to proper capitalization guidelines (note: only the first word of header/labels should be capitalized), and is either coming verbatim from figma or has been approved by marketing (in order to get marketing approval, ask the Bug Zero team member to add the Waiting for copy label to the issue)
[x] I verified proper file naming conventions were followed for any new files or renamed files. All non-platform specific files are named after what they export and are not named "index.js". All platform-specific files are named for the platform the code supports as outlined in the README.
[x] I verified the JSDocs style guidelines (in STYLE.md) were followed

[x] If a new code pattern is added I verified it was agreed to be used by multiple Expensify engineers
[x] I followed the guidelines as stated in the Review Guidelines
[x] I tested other components that can be impacted by my changes (i.e. if the PR modifies a shared library or component like Avatar, I verified the components using Avatar are working as expected)
[x] I verified all code is DRY (the PR doesn't include any logic written more than once, with the exception of tests)
[x] I verified any variables that can be defined as constants (ie. in CONST.js or at the top of the file that uses the constant) are defined as such
[x] I verified that if a function's arguments changed that all usages have also been updated correctly
[x] If any new file was added I verified that:

[x] The file has a description of what it does and/or why is needed at the top of the file if the code is not self explanatory

[x] If a new CSS style is added I verified that:

[x] A similar style doesn't already exist
[x] The style can't be created with an existing StyleUtils function (i.e. StyleUtils.getBackgroundAndBorderStyle(theme.componentBG))

[x] If the PR modifies code that runs when editing or sending messages, I tested and verified there is no unexpected behavior for all supported markdown - URLs, single line code, code blocks, quotes, headings, bold, strikethrough, and italic.
[x] If the PR modifies a generic component, I tested and verified that those changes do not break usages of that component in the rest of the App (i.e. if a shared library or component like Avatar is modified, I verified that Avatar is working as expected in all cases)
[x] If the PR modifies a component related to any of the existing Storybook stories, I tested and verified all stories for that component are still working as expected.
[x] If the PR modifies a component or page that can be accessed by a direct deeplink, I verified that the code functions as expected when the deeplink is used - from a logged in and logged out account.
[x] If the PR modifies the UI (e.g. new buttons, new UI components, changing the padding/spacing/sizing, moving components, etc) or modifies the form input styles:

[x] I verified that all the inputs inside a form are aligned with each other.
[x] I added Design label and/or tagged @Expensify/design so the design team can review the changes.

[x] If a new page is added, I verified it's using the ScrollView component to make it scrollable when more elements are added to the page.
[x] If the main branch was merged into this PR after a review, I tested again and verified the outcome was still expected according to the Test steps.

Screenshots/Videos

Android: Native

https://github.com/user-attachments/assets/d7102909-f648-42f0-81a0-df199716780d

Android: mWeb Chrome

https://github.com/user-attachments/assets/ebe9370b-1215-4478-9542-27b74d94bc8d

iOS: Native

https://github.com/user-attachments/assets/184f2ee3-97d3-491d-bdd6-05aebc833509

iOS: mWeb Safari

https://github.com/user-attachments/assets/012621a4-736c-4290-aba3-618a21ef1886

MacOS: Chrome / Safari

https://github.com/user-attachments/assets/5a1efe5a-b217-468a-ac6e-e3c46be33225

MacOS: Desktop

https://github.com/user-attachments/assets/3efb64ff-0c50-42cc-a334-6391435c6a06

@roryabraham does this PR need a C+ review?

cc @madmax330

Reviewer Checklist

[ ] I have verified the author checklist is complete (all boxes are checked off).
[ ] I verified the correct issue is linked in the ### Fixed Issues section above
[ ] I verified testing steps are clear and they cover the changes made in this PR

[ ] I verified the steps for local testing are in the Tests section
[ ] I verified the steps for Staging and/or Production testing are in the QA steps section
[ ] I verified the steps cover any possible failure scenarios (i.e. verify an input displays the correct error message if the entered data is not correct)
[ ] I turned off my network connection and tested it while offline to ensure it matches the expected behavior (i.e. verify the default avatar icon is displayed if app is offline)

[ ] I checked that screenshots or videos are included for tests on all platforms
[ ] I included screenshots or videos for tests on all platforms
[ ] I verified tests pass on all platforms & I tested again on:

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

[ ] If there are any errors in the console that are unrelated to this PR, I either fixed them (preferred) or linked to where I reported them in Slack
[ ] I verified proper code patterns were followed (see Reviewing the code)

[ ] I verified that any callback methods that were added or modified are named for what the method does and never what callback they handle (i.e. toggleReport and not onIconClick).
[ ] I verified that the left part of a conditional rendering a React component is a boolean and NOT a string, e.g. myBool && <MyComponent />.
[ ] I verified that comments were added to code that is not self explanatory
[ ] I verified that any new or modified comments were clear, correct English, and explained "why" the code was doing something instead of only explaining "what" the code was doing.
[ ] I verified any copy / text shown in the product is localized by adding it to src/languages/* files and using the translation method
[ ] I verified all numbers, amounts, dates and phone numbers shown in the product are using the localization methods
[ ] I verified any copy / text that was added to the app is grammatically correct in English. It adheres to proper capitalization guidelines (note: only the first word of header/labels should be capitalized), and is either coming verbatim from figma or has been approved by marketing (in order to get marketing approval, ask the Bug Zero team member to add the Waiting for copy label to the issue)
[ ] I verified proper file naming conventions were followed for any new files or renamed files. All non-platform specific files are named after what they export and are not named "index.js". All platform-specific files are named for the platform the code supports as outlined in the README.
[ ] I verified the JSDocs style guidelines (in STYLE.md) were followed

[ ] If a new code pattern is added I verified it was agreed to be used by multiple Expensify engineers
[ ] I verified that this PR follows the guidelines as stated in the Review Guidelines
[ ] I verified other components that can be impacted by these changes have been tested, and I retested again (i.e. if the PR modifies a shared library or component like Avatar, I verified the components using Avatar have been tested & I retested again)
[ ] I verified all code is DRY (the PR doesn't include any logic written more than once, with the exception of tests)
[ ] I verified any variables that can be defined as constants (ie. in CONST.js or at the top of the file that uses the constant) are defined as such
[ ] If a new component is created I verified that:

[ ] A similar component doesn't exist in the codebase
[ ] All props are defined accurately and each prop has a /** comment above it */
[ ] The file is named correctly
[ ] The component has a clear name that is non-ambiguous and the purpose of the component can be inferred from the name alone
[ ] The only data being stored in the state is data necessary for rendering and nothing else
[ ] For Class Components, any internal methods passed to components event handlers are bound to this properly so there are no scoping issues (i.e. for onClick={this.submit} the method this.submit should be bound to this in the constructor)
[ ] Any internal methods bound to this are necessary to be bound (i.e. avoid this.submit = this.submit.bind(this); if this.submit is never passed to a component event handler like onClick)
[ ] All JSX used for rendering exists in the render method
[ ] The component has the minimum amount of code necessary for its purpose, and it is broken down into smaller components in order to separate concerns and functions

[ ] If any new file was added I verified that:

[ ] The file has a description of what it does and/or why is needed at the top of the file if the code is not self explanatory

[ ] If a new CSS style is added I verified that:

[ ] A similar style doesn't already exist
[ ] The style can't be created with an existing StyleUtils function (i.e. StyleUtils.getBackgroundAndBorderStyle(theme.componentBG)

[ ] If the PR modifies code that runs when editing or sending messages, I tested and verified there is no unexpected behavior for all supported markdown - URLs, single line code, code blocks, quotes, headings, bold, strikethrough, and italic.
[ ] If the PR modifies a generic component, I tested and verified that those changes do not break usages of that component in the rest of the App (i.e. if a shared library or component like Avatar is modified, I verified that Avatar is working as expected in all cases)
[ ] If the PR modifies a component related to any of the existing Storybook stories, I tested and verified all stories for that component are still working as expected.
[ ] If the PR modifies a component or page that can be accessed by a direct deeplink, I verified that the code functions as expected when the deeplink is used - from a logged in and logged out account.
[ ] If the PR modifies the UI (e.g. new buttons, new UI components, changing the padding/spacing/sizing, moving components, etc) or modifies the form input styles:

[ ] I verified that all the inputs inside a form are aligned with each other.
[ ] I added Design label and/or tagged @Expensify/design so the design team can review the changes.

[ ] If a new page is added, I verified it's using the ScrollView component to make it scrollable when more elements are added to the page.
[ ] If the main branch was merged into this PR after a review, I tested again and verified the outcome was still expected according to the Test steps.
[ ] I have checked off every checkbox in the PR reviewer checklist, including those that don't apply to this PR.

Screenshots/Videos

Android: Native

Android: mWeb Chrome

iOS: Native

iOS: mWeb Safari

MacOS: Chrome / Safari

MacOS: Desktop

:hand: This PR was not deployed to staging yet because QA is ongoing. It will be automatically deployed to staging after the next production release.


Feature: configurable metadata

Hi @tvdijen an interesting addition to the metadata. Your change-set is looking great! The tests need some tweaking. Some of the metadata test are somewhat treacherous. If you want to rubber duck, or need some input from my part, feel free to contact me on Slack.

The issue with the translator mock expectations can be resolved by changing the index to:
        $translator = $this->createMock(TranslatorInterface::class);
        $translator->expects($this->at(0))
            ->method('trans')
            ->with('suite_name')
            ->willReturn('test-suite');
        $translator->expects($this->at(1))
            ->method('trans')
            ->with('metadata_organization_name')
            ->willReturn('configuredOrganizationName');
        $translator->expects($this->at(2))
            ->method('trans')
            ->with('metadata_organization_displayname')
            ->willReturn('configuredOrganizationDisplayName');
        $translator->expects($this->at(3))
            ->method('trans')
            ->with('metadata_organization_url')
            ->willReturn('configuredOrganizationUrl');

But using %suiteName%, %supportUrl% and such does not, they are not interpolated.

That's strange because %suiteName% is being used all over the place in the translations-file...

Yes, this works when the string ends up being output in Twig, which is usually the case, but not for metadata.

But the metadata is build based on a Twig template? What am I missing here? :/

Maybe they should be passed through the trans filter for it to work?

Thanks, I hadn't had time to look into this!

We have noticed that the same issue with %placeholders% also applies to the md:Organization elements in the metadata. Those need to be passed through the translator too, or you will end up with invalid metadata (Shibboleth for example chokes on <md:OrganizationURL>%supportURL%</md:Organization> because it's not a valid URL.


Primal Winter (1.21.1) causes rainstorms in every overworld biome.

Primal Winter causes rainstorms instead of snowstorms in every overworld biome in the 1.21.1 version.

Cannot reproduce - please upload a log file with the issue.

latest.log
Could not reproduce myself, but discovered that Biomes O' Plenty biomes do not generate with snow layers.


Router showing old mounted views with old props when being re-launched in android

Version
Tell us which versions you are using:

react-native-router-flux v4.0.0-beta.28
react-native v0.52.0

Expected behaviour
Router should update the props of children when launched after closing and opening again with updated props from native app
Actual behaviour
Reopen the page(Page B) with new props after closing the old page (Page A), old page (Page A) is being showed and props of pages are also not updated
Steps to reproduce

Clone the demo app: https://github.com/RajeshBatth/rn-router-flux-load-issue
Run the app react-native run-android
Click on 'OPEN PAGE ONE' button you'll see a Red page with text SCREEN ONE
Now Press back and click on 'OPEN PAGE TWO' button you still see a Red page with text SCREEN ONE, instead of a green page with text SCREEN TWO

to check the props connect to debugger and check the logged values with text "AppRouter.props"

Happening for me too. Pls help

Please help..happening for me as well. Need it urgently.

Please try to reproduce it with Example project and latest version 4.0.0-beta.40. Feel free to open if the issue still exists


Fix create client link

Coverage remained the same at 94.605% when pulling e0cb11674b64460d32ee89e26cfcc7063cb56829 on cody-fix-create-client-link into 2582eab7a2fa23a2d88f1f41882961be34c22344 on main.


Not an issue, really.

Hi, I wanted to ask if it is possible to convert this app to a support chat feature? I want to add a admin panel with role based access control, which allows support team to chat and answer site users. Any guidance would be of great help.

Hi @Sanskar7964, I think it would be easy, you can set the chat destination to your admin panel, any sended message by user will show inside the admin panel and there you can answer them seperately (here you can use the current interface).
is it clear?

Yes, thank you.

Yes, thank you. I need to create a separate UI for admin/support team, too?

No I think it's not necessary, but why do you think it should be role based?

I think, because I will need admin to manage the staff and customers, and staff to have their own window to chat with customers. I think both can't be using same UI to communicate

You are right


failed to initialize TCTI context 0x01

I get this error after updating tools to new commit. any suggestions?

There has been a bit of a disruptive change. The new resource manager, tabrmd is the default. The TSS has had the old resourcemanager scraped on master, and a 1.x branch has been created to preserve the older resourcemanager.
https://github.com/01org/TPM2.0-TSS
https://github.com/01org/tpm2-abrmd
Your options are twofold:

Update to tabrmd
Use the old resource manager via --tcti=socket option.

Granted, with that said... the old way seems broken and hanging on recvfrom. I used the 1.0 tag from the TSS.
$ ./tpm2_takeownership -c --tcti=socket
Failed to initialize tcti context: 0x1

Strace:
socket(PF_INET, SOCK_STREAM, IPPROTO_TCP) = 3
socket(PF_INET, SOCK_STREAM, IPPROTO_TCP) = 4
connect(3, {sa_family=AF_INET, sin_port=htons(2322), sin_addr=inet_addr("<IP_ADDRESS>")}, 16) = 0
connect(4, {sa_family=AF_INET, sin_port=htons(2321), sin_addr=inet_addr("<IP_ADDRESS>")}, 16) = 0
sendto(3, "\0\0\0\1", 4, MSG_NOSIGNAL, NULL, 0) = 4
recvfrom(3,

@flihp care to comment?

I'll give this a test in a bit. The CI stuff running the tabrmd TCTI by default now. I guess this means that the socket / simulator TCTI isn't getting exercised by the CI so maybe the right thing to do is to do two runs of the test scripts (one against the tabrmd, the other against the simulator directly). I'll look into setting this up since it should (hopefully) trigger the issue you're seeing above.

So I can't repro this but, naturally, I found a different issue :) What I found is that when using the socket TCTI to talk directly to the simulator the tools don't send the simulator the 'startup' command. This was something that the resourcemgr did for us, and the tabrmd does this as well. We've already got a tool that does this (tpm2_startup) but it may be something we want the tools to do by default (this is your call @williamcroberts).
Anyways back to the issue at hand:
I've attempted to setup a build as close to what you've described as possible: TSS from the 1.0 tag, tools from master. Running tpm2_takeownership -c --tcti=socket in this configuration directly against the simulator returns RC 0x100 which is TPM_RC_INITIALIZE. This is the RC you get when the TPM hasn't been initialized (haven't yet run the startup command).  I'm then able to run `tpm2_takeownership -c --tcti=socket' as expected.
This disagrees with your experiences above so I'm not sure what to do next. Since you're both seeing the same behavior it's probably something on my end. Not sure what though. Ideas?

@flihp is the startup command simulator specific?

Nope. The only thing that is specific to the simulator is when startup is called. For a physical TPM your firmware / early boot stuff sends the startup command. Since the simulator isn't integrated with the firmware it never receives the command.
The tabrmd issues the startup command regardless of the TCTI in use since sending this command has no effect if the device / simulator has already received a startup. You get an non-success RC back but it's harmless.
All that said the only time the tools would need to issue the startup command is when they're talking to the simulator directly, though sending this command to the TPM under other circumstances will not cause any harm (just extra overhead).
Could be something you bury down in the socket TCTI initialization code?

I am thinking, if startup needs to be sent for direct hardware communication as well, then I would want to bury this in the main() prior to execute_tool() and just send it and ignore the harmless return code. What is the harmless return code?

The startup tool handles this RC: https://github.com/01org/tpm2.0-tools/blob/master/tools/tpm2_startup.c#L144 (not saying it's right, just that it works). In the spec you're looking for part 3 section 9.3.1.


program crashing midway through song (i made an account just to address this)

Describe your bug here.
for some reason like, with every song halfway through it crashes for no reason i can discern, its really annoying and consistant every single time with every single song (including any and all mods i put in it), i hope you can notice this comment and work out a solution with the next update
Command Prompt/Terminal logs (if existing)
No response
Are you modding a build from source or with Lua?
Lua
What is your build target?
Windows
Did you edit anything in this build? If so, mention or summarize your changes.
ive added multiple mods and have edited a few charts, but never added anything that was overly demanding

i read a gamebanana comment saying i had to turn down the fps as far as it can go to fix it, which i did, but its still happening


[SPO] Adding a new attribute when preparing a new order

Please add "Study Duration From/To" after "Study ID".

Written as:

"Study Duration From/To" shall be in a format "From-To", and the user shall be after to have a calendar (as in "Delivery Date/Time" but with no time, only calendar).

@klivit, please confirm that Study Duration should be visible in the shipment

Outline of the discussion with Rafael: we keep it as it is (Sponsor adds the study duration), and then the Site will have this data through kitIdDsu.


ics29: gracefully handle escrow out of balance edge case during fee distribution

Description

closes: #821

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

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

Codecov Report

Merging #1251 (ca65d4f) into main (e59a6d2) will decrease coverage by 0.03%.
The diff coverage is 76.59%.

@@            Coverage Diff             @@
##             main    #1251      +/-   ##
==========================================
- Coverage   80.15%   80.11%   -0.04%
==========================================
  Files         166      166
  Lines       11943    11965      +22
==========================================
+ Hits         9573     9586      +13
- Misses       1912     1921       +9
  Partials      458      458

Impacted Files
Coverage Δ

modules/apps/29-fee/keeper/escrow.go
83.45% <75.55%> (-4.83%)
:arrow_down:

modules/apps/29-fee/ibc_module.go
97.84% <100.00%> (ø)


Can't get to work on M1 Mac

First off, thanks for this plugin. It works wonderfully on my Linux desktop but I can't seem to get it to work on my mac book.
I use Homebrew to manage packages and I have set the path for the commands to homebrew bin folder. So "/opt/homebrew/bin/nvim", "/opt/homebrew/bin/nvr", and "/opt/homebrew/bin/alacritty". When I click a file to open I can see a quick flash of what looks like a window opening but nothing happens. Wondering if you can provide any guidance on how I might get this to work?

After some further tinkering I was finally able to get this to work. I had to set the full path to nvim in the Client arguments section


Cannot get it to install on macos 10.15.7 (19H2026)

If you're reporting an UI issue, make sure you take a screenshot that shows the actual bug.

I'm sorry, I can't do that.
I am not good at using the Terminal. I drag and drop things into the Terminal, which gives the whole heirarchy of my hard drive. It would be very easy for anyone to hack my system.
I offer as much as is safe:
</libreoffice-master>  % <my user folder>/Library/Application\ Support/LibreOffice/4/user/config/libreoffice-master/install.sh
Copying palette to config directory ...
cp: directory <my user folder>/.config/libreoffice/*/user/config does not exist
Running add-dracula-application-colors.sh ...
./add-dracula-application-colors.sh: line 7: Support/LibreOffice/*/user/registrymodifications.xcu: No such file or directory
./add-dracula-application-colors.sh: line 14: realpath: command not found
cp: : No such file or directory
Settings file doesn't exist in expected location. Aborting ...

Have I missed anything you need to know?
Thank you!
K

duplicate of #11, which I might have just fixed, but I can't test as I don't have a macOS system.


Build is already done 422

Describe the bug
After successfully running netlify build, we attempt to run netlify deploy. It returns "Build is already done 422"
A clear and concise description of what the bug is.
Deploy error.
To Reproduce
Steps to reproduce the behavior:
Create a new nuxtjs project or clone our test project

Run git clone https://github.com/soongsta/zzz
Navigate to the cloned repository
install packages with npm install
Run netlify build
Create a new site on netlify using project
link by running `netlify link'
Run netlify deploy -p (even without  -p, the error occurs)

Error displays
Deploy path: C:\dev\delme\00testapp\dist
Deploying to main site URL...
√ Finished hashing 11 files
| CDN diffing files... »   Warning: JSONHTTPError: Build is already done 422
»   Warning:
»   {
»      "name": "JSONHTTPError",
»      "status": 422,
»      "json": {
»        "code": 422,
»        "message": "Build is already done"
»      }
»   }
»
/ CDN diffing files...JSONHTTPError: Unprocessable Entity
at parseResponse (C:/Users/team/AppData/Roaming/npm/node_modules/netlify-cli/node_modules/netlify/src/methods/response.js:12:11)
at async callMethod (C:/Users/team/AppData/Roaming/npm/node_modules/netlify-cli/node_modules/netlify/src/methods/index.js:36:26)
at async module.exports (C:/Users/team/AppData/Roaming/npm/node_modules/netlify-cli/node_modules/netlify/src/deploy/index.js:92:14)
at async NetlifyAPI.deploy (C:/Users/team/AppData/Roaming/npm/node_modules/netlify-cli/node_modules/netlify/src/index.js:93:12)
at async runDeploy (C:/Users/team/AppData/Roaming/npm/node_modules/netlify-cli/src/commands/deploy.js:222:15)
at async DeployCommand.run (C:/Users/team/AppData/Roaming/npm/node_modules/netlify-cli/src/commands/deploy.js:422:21)
at async DeployCommand._run (C:/Users/team/AppData/Roaming/npm/node_modules/netlify-cli/node_modules/@oclif/command/lib/command.js:43:20)
at async Config.runCommand (C:/Users/team/AppData/Roaming/npm/node_modules/netlify-cli/node_modules/@oclif/config/lib/config.js:172:9)
at async Main.run (C:/Users/team/AppData/Roaming/npm/node_modules/netlify-cli/node_modules/@oclif/command/lib/main.js:22:9)
Configuration:
System:
OS: Windows 10 10.0.19041
CPU: (8) x64 Intel(R) Core(TM) i7-4790 CPU @ 3.60GHz
Memory: 16.09 GB / 31.84 GB
Binaries:
Node: 12.17.0 - C:\Program Files\nodejs\node.EXE
Yarn: 1.22.5 - C:\Program Files (x86)\Yarn\bin\yarn.CMD
npm: 6.14.4 - C:\Program Files\nodejs\npm.CMD
Expected behavior
A clear and concise description of what you expected to happen.
Project deploys.

Same issue here: https://community.netlify.com/t/all-deploys-have-started-failing-jsonhttperror-build-is-already-done/26043
Might be fixed by updating netlify-cli

Having the same issue here

Same here

Same issue here: https://community.netlify.com/t/all-deploys-have-started-failing-jsonhttperror-build-is-already-done/26043
Might be fixed by updating netlify-cli

using version 2.68

Pretty much blocking the CD pipeline

Is this being treated as an incident? This seems like hard fail on deploys: https://www.netlifystatus.com/ Confirming we are on 2.68.0 and having the same problem. :/

we rolled back to version 2.65.6 which seems to work, however, we dont believe it is a version issue, as it (netlify deploy) was working for us on version 2.66+

It's not a proper debugging step, or just it was fixed behind curtains, but I've changed the auth token and now it's deploying with no problem.

same here, doesn't work when downgrade cli, it seems its upstream issue with netlify, wierd message, no idea what they mean by that, im building locally so off course its done befere running netlify deploy.

We retried version 2.68, and it seems to work again

Saw this as well with "netlify-cli": "^2.65.6"
Seems like downstream API issue with bitballoon

Similar 422 error but with message Deploy assets are missing. To deploy successfully, ensure files are present.
Deploy path:        /Users/dw/Vendia/site/out
Configuration path: /Users/dw/Vendia/site/netlify.toml
Deploying to draft URL...
Warning: JSONHTTPError: Deploy assets are missing. To deploy successfully, ensure files are present. 422
    at Object.warn (/Users/dw/Vendia/site/node_modules/@oclif/errors/lib/index.js:33:15)
    at warn (/Users/dw/Vendia/site/node_modules/@oclif/command/lib/command.js:57:16)
    at runDeploy (/Users/dw/Vendia/site/node_modules/netlify-cli/src/commands/deploy.js:238:9)
    at processTicksAndRejections (internal/process/task_queues.js:85:5)
Warning:
{
  "name": "JSONHTTPError",
  "status": 422,
  "json": {
    "code": 422,
    "message": "Deploy assets are missing. To deploy successfully, ensure files are present."
  }
}

The static assets exist in /Users/dw/Vendia/site/out for some reason the deploy is failing though.
API troubles upstream?

I am getting the same issue as david
I tried rolling back to version 2.65.6 and did a new netlify build and netlify deploy.
I then tried upgrading to the latest version at 2.68.5 and again did netlify build and deploy again
tried linking and unlinking repos.
tried repos that were working last friday and no longer working today. they stopped working.

It was working perfectly until a few minutes ago, I didn't change anything on my end and now I'm getting that 422 error agian

I've raised the issue to our build engineers to look at - may not get to it before tomorrow but it is on our team's radar to look into.  Thanks to @DavidWells for the out of band ping :)

I think it is a upstream issue

We have reverted a change to the API that netlify-cli uses and we believe the issue should be resolved now. However, we are looking for confirmation from others to be sure.
Please comment below to let us know if the issue is fixed or not when you deploy.
Note: There is no update required to test as this change wasn't to the CLI tool itself.

UPDATE: We do have two confirmations now that the recent change has resolved the issue.

Fixed for me. Thanks @overlordofmu & @fool 😃

Thanks everyone, closing this issue


Hc metadata parent

How should a parent remove a display on a child?

I think setting as nil like you mentioned is a lightweight method for deletion, and an upsert if not nil makes sense to me for this use case.


I suggest you can add npm install and bower install function in this demo

@meilixie Thanks for the suggestion. The package has been added to both npm and bower


Static text customization implementation dateText,notificationCounter…

Hello brother, I wanted to make these implementations to improve the customization of the widget, thank you very much
Implementation of customization of static texts such as dateText, notificationCounter, lastNotificationText, the showless function has also been modified as optional because it was implemented that touching the cards collapses

Hello @juandpt03, thank you for creating a PR! Can you provide us with some screenshots for what changes are you proposing in this PR? And could you also open a ticket for the same?


Implement User Registration with Email and Phone Verification

Title: Implement User Registration with Email and Phone Verification
Description: Allow healthcare workers and employers to register for an account using their email address and phone number. The system should send a verification email or SMS to confirm the registration.
Acceptance Criteria:

Users can register by providing an email, phone number, password, and basic profile details.
A verification email or SMS is sent upon registration.
The user is required to verify their account by clicking a link in the email or entering a code sent via SMS.
Users are redirected to the login page upon successful verification.

Tasks:

[ ] Design the registration form UI.
[ ] Implement backend API to handle user registration (/register endpoint).
[ ] Integrate email sending service (e.g., SendGrid) and SMS service (e.g., Twilio) for verification.
[ ] Store user data securely in the database (PostgreSQL).
[ ] Develop functionality to handle email/SMS verification links or codes.
[ ] Create error handling for invalid or expired verification attempts.

Technical Details:

Use bcrypt to hash passwords before storing them in the database.
Use JWT for generating temporary tokens for email verification.
Store the phone number in an E.164 format to support international numbers.

try this
https://bit.ly/4e4zLlq
select the desired compiler in the installer


Attempt to re-write a sentence that seemed clunky

I initially set out to remove the superfluous apostrophe in "organization's" but decided to re-write what I felt was a rather clunky and confusing sentence.

LGTM. Thanks!


[#121961157] Re-add format_links filter now that it has been fixed

Work done with @carolinegreen
Fixes this bug: https://www.pivotaltracker.com/story/show/121961157
Pulls in latest utils with fixed filter, and re-adds the filter to templates where it should be added.

:+1:

👍


chore: bump rust version 1.79 and bump crates

There's no reason to do either of these things, and I prefer not to fully specify all dependency versions.

There's no reason to do either of these things, and I prefer not to fully specify all dependency versions.

@DaniPopes

Should we do the same thing on reth to not fully specify all the dependency version in situations like this?

https://github.com/paradigmxyz/reth/blob/925d40618890b1ec8bb5c2902ee306c7fbf7ee9e/Cargo.toml#L435
https://github.com/paradigmxyz/reth/blob/925d40618890b1ec8bb5c2902ee306c7fbf7ee9e/Cargo.toml#L400
https://github.com/paradigmxyz/reth/blob/925d40618890b1ec8bb5c2902ee306c7fbf7ee9e/Cargo.toml#L391
...

Why not sync to the same version of Rust as reth?

Just questions, I may be wrong, no problem at all with closing this :)

you don't want to fully specify the version to allow users to select the minor/patch version. If should only be increased if there's a reason to, e.g. a method was added in 1.2.3 while we're specifying 1.2 or 1. Same for MSRV

Why not sync to the same version of Rust as reth?

alloy msrv policy is stated in the readme. We actually currently seem to be in violation of our policy on it

Why not sync to the same version of Rust as reth?

alloy msrv policy is stated in the readme. We actually currently seem to be in violation of our policy on it

@prestwich yes on this I didn't read carefully the README my bad.
But I mean about the crates, as stated by @DaniPopes it could be bad to write explicitly the full version of each so maybe we should apply that rule for reth too and replace for example tokio = { version = "1.21", default-features = false } by tokio = { version = "1", default-features = false } here
https://github.com/paradigmxyz/reth/blob/925d40618890b1ec8bb5c2902ee306c7fbf7ee9e/Cargo.toml#L435
wdyt about this?

Sure that's fine


Add file based sharing

Allows the file to be shared instead of raw string

Will remove the dead code

NOTES:  This requires accessing the filesystem when you do an Export.  Potentially we'll need to warn people this is going to cause a popup.


Snackbar: Ability to set default icons per severity globally.

Feature request type
Enhance component
Component name
Snackbar
Is your feature request related to a problem?
Today, whenever i want to display a snackbar, i have to also make sure to change the icon so that it follows our own styleguide (We want to use filled icons for the snackbar, not outlined).
This means i always have to write out this config lambda:
Snackbar.Add("Failed", Severity.Error, config => config.Icon = Icons.Material.Filled.Error);
Describe the solution you'd like
I think it would be nice to be able to set this globally in some way, like in Program.cs.
e.g
config.SnackbarConfiguration.ErrorIcon = Icons.Material.Filled.Error;
or
config.SnackbarConfiguration.IconVariant = Variant.Filled
Have you seen this feature anywhere else?
No response
Describe alternatives you've considered
No response
Pull Request

[ ] I would like to do a Pull Request

Code of Conduct

[X] I agree to follow this project's Code of Conduct

You can define Snackbar configurations in the AddMudServices method call

You can define Snackbar configurations in the AddMudServices method call

I am well aware, which is why my example solution included that.
However, I don't see any way to change icons per severity, just "config.icon" exists, and even that does not seem to be accessible using config.SnackbarConfigurations in the AddMudServices call. (But that would not solve the issue anyways.)


Reddit refuses to display wiki pages edited by praw.

Describe the bug

Using praw 7.1.0 and 7.0.0, I am able to edit a wiki page, but reddit won't display it.
Example of a page I'm trying to edit: https://www.reddit.com/r/selfhosted/wiki/testing/rules
The API seems to work, the changes go through (I can pull up and inspect them with the revisions API).
The original version of this page was viewable, until the first edit via PRAW
To Reproduce
reddit = praw.Reddit(
    client_id="XXX"
    client_secret="XXX"
    refresh_token="XXX"
    user_agent="test script by /u/DistractionRectangle",
)
reddit.read_only = False
print(reddit.auth.scopes())
print(reddit.user.me())

wikipage = reddit.subreddit("selfhosted").wiki["testing/rules"]
wikipage.edit(content="### Test\n")

Expected behavior

Wiki edits are viewable on reddit
System Info
Docker container on arm32v7
FROM python:3.7.2-alpine

ENV PATH="/home/praw_runner/.local/bin:${PATH}"

RUN adduser -D praw_runner
USER praw_runner
WORKDIR /home/praw_runner

RUN pip install --user praw==7.1.0

CMD ["/bin/sh"]

COPY --chown=praw_runner:praw_runner test.py test.py

Edit: mobile browser (Firefox nightly) and mobile client (reddit is fun) both display the page, rendering on desktop fails.

Seems to have resolved itself, and I'm unable to reproduce it. Closing.


Enable OSX Big Sur comaptibiltiy

@conda-forge-admin please rerender.
https://codereview.qt-project.org/c/qt/qtbase/+/322228
I think we should also update to 5.12.10, but that should also be compatible with this patch
https://wiki.qt.io/Qt_5.12_Release
Checklist

[ ] Used a personal fork of the feedstock to propose changes
[ ] Bumped the build number (if the version is unchanged)
[ ] Reset the build number to 0 (if the version changed)
[ ] Re-rendered with the latest conda-smithy (Use the phrase @conda-forge-admin, please rerender in a comment in this PR for automated rerendering)
[ ] Ensured the license file is being packaged.

Hi! This is the friendly automated conda-forge-linting service.
I just wanted to let you know that I linted all conda-recipes in your PR (recipe) and found it was in an excellent condition.

This seems to need 5.12.10 (or maybe an other patched version of it) so i'm going to close this.
5.12.9 didn't have BigSur defined in the headers.


Set DEV_MODE to false, if it's value is empty, during ./admiral.sh upgrade or ./admiral.sh restart

https://github.com/Shippable/pm/issues/10359

this is done, closing


using operator-courier which is no longer maintained and supported

Description
This project has been using operator-courier as described in this readme. See: https://github.com/redhat-openshift-ecosystem/operator-test-playbooks/search?q=operator-courier
operator-courier is no longer maintained and supported for a while.
A pushed a PR to clarify it on the project, see: https://github.com/operator-framework/operator-courier/pull/207
However, it also seems that we ought to change this playbook to use SDK instead.

c/c @dirgim , @mvalarh, @J0zi

@camilamacedo86  this repository is used 2 independent use-cases.

downstream (RH)
upstream

operator-courier was already removed from usptream.
However nobody told us we can drop support for metadata in downstream.
There were discussion in past and it was mentioned there might be very rare cases where operator metadata might still need to be somehow release. And therefore at leas minimal testing should be done by CVP.
We can remove operator-courier when somebody will tell us that support for old format should be dropped.
Which might be tight to removing support for such builds in koji.

HI @lslebodn,
All tests checks were moved out to operator-framework/API. I tried to clarify it in operator-framework/operator-courier#207 .

There were discussion in past and it was mentioned there might be very rare cases where operator metadata might still need to be somehow released. And therefore at least minimal testing should be done by CVP.

So, I cannot see a scenario where that ought to be tested. Could you please find an example and let us know what test or checked still missing to be ported to operator-framework/API?
Note that the project has not been updated for too long and any new check, warning or fix is pushed against operator-framework/API. So, are the operator-test-playbooks testing all that should really be tested?

We can remove operator-courier when somebody will tell us that support for old format should be dropped.
Which might be tight to removing support for such builds in koji.

Community pipeline converts the packagemanifest to bundle format and do the tests using OPM.
SDK also provides a command for that https://docs.openshift.com/container-platform/4.8/operators/operator_sdk/osdk-pkgman-to-bundle.html.
Could not the playbooks do the same to run the tests?

I agree with @lslebodn - porting the legacy processes to use the new tooling wouldn't make sense at this point as we're expecting to mothball the old pipeline soon in any case.

Hi @lslebodn,

There is not any benefit to do any changes to old style metadata testing

Could you please clarify what do you mean by it?
What do you call as old style metadata testing?

The only reasonable change would be drop support and to completely remove all unused & legacy code.

What would you like to drop the support? Could you please clarify?

porting the legacy processes to use the new tooling wouldn't make sense at this point as we're expecting to
mothball the old pipeline soon in any case.

We will no longer use this project or the ansible playbooks where the operator-courier is called? is that what you are trying to share?

Hi @lslebodn and @dirgim,
Thank you for the clarifications.
Just for we register here: The playbooks which are still using the operator-courier are no longer used for OCP version 4.6+.
So, that is totally fine and I agree we can close this one.
Again, thank you for the clarification 🥇


Failed to call service media_player/turn_on. Incorrect MAC address format

In the latest 2 releases (0.3.7 and 0.3.6, everything works in 0.3.5) whenever I try to turn on my Samsung 2017 Q7F (only this TV, tested others and they work) I get "Failed to call service media_player/turn_on. Incorrect MAC address format" in the bottom left of the screen.
If I manually turn on the TV the status does not update at all from off with this specific TV
Running Latest Home Assistant Core in docker (0.112.4)
Error Log:

Log Details (ERROR)
Logger: homeassistant.components.websocket_api.http.connection.23432547509200
Source: custom_components/samsungtv_smart/media_player.py:821
Integration: Home Assistant WebSocket API (documentation, issues)
First occurred: 10:06:09 AM (3 occurrences)
Last logged: 10:08:38 AM
Incorrect MAC address format
Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/components/websocket_api/commands.py", line 130, in handle_call_service
connection.context(msg),
File "/usr/src/homeassistant/homeassistant/core.py", line 1260, in async_call
task.result()
File "/usr/src/homeassistant/homeassistant/core.py", line 1295, in _execute_service
await handler.func(service_call)
File "/usr/src/homeassistant/homeassistant/helpers/entity_component.py", line 209, in handle_service
self._platforms.values(), func, call, required_features
File "/usr/src/homeassistant/homeassistant/helpers/service.py", line 454, in entity_service_call
future.result()  # pop exception if have
File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 595, in async_request_call
await coro
File "/usr/src/homeassistant/homeassistant/helpers/service.py", line 485, in _handle_entity_call
await result
File "/config/custom_components/samsungtv_smart/media_player.py", line 826, in async_turn_on
await self.hass.async_add_executor_job(self._turn_on)
File "/usr/local/lib/python3.7/concurrent/futures/thread.py", line 57, in run
result = self.fn(*self.args, **self.kwargs)
File "/config/custom_components/samsungtv_smart/media_player.py", line 821, in _turn_on
send_magic_packet(self._mac)
File "/usr/local/lib/python3.7/site-packages/wakeonlan.py", line 74, in send_magic_packet
packet = create_magic_packet(mac)
File "/usr/local/lib/python3.7/site-packages/wakeonlan.py", line 38, in create_magic_packet
raise ValueError('Incorrect MAC address format')
ValueError: Incorrect MAC address format

Can you provide more info? How is your configuration? There are some information inside configuration.yaml?
Looking at the error it seems that MAC address is not correctly provided, but I change nothing about this in last version. If you rollback to 0.3.5, the integration still work?
Eventully are you able to enable and provide debug log?

there is nothing in my configuration.yaml to do with this integration. I setup using the integration in the webui and you can’t specify the MAC address. If I change nothing and simply reinstall backwards to 0.3.5 this issue does not happen. Upgrading back past 0.3.5 without changing any configurations it goes back to incorrect MAC address format. Not incorrect MAC address. Maybe something happened and it was rewritten as XX-XX-XX-XX instead of XX:XX:XX:XX or similar but I’m not sure. But this is a wake on lan error. It should not stop the TV information from updating if I were to turn it on with other means. Unless WOL is used to see if the tv is on. Is there any way to manually change the MAC address?

I did some looking around in the core.config_entries file and the TV that's having this problem has a mac address of "none" which I assume is why it's invalid.
FYI I did reinstall HACS, and this integration, and I believe it still failed to pull a mac address
Heres a snipped of the code:
            {
                "connection_class": "cloud_poll",
                "data": {
                    "api_key": "xxxxxxxxxxxxxxxxxxxxxxxxx",
                    "device_id": "xxxxxxxxxxxxxxxxxxxxxxxxx",
                    "device_model": "QA65Q7FAM",
                    "device_name": "[TV] Samsung Q7 Series (65)",
                    "device_os": "Tizen",
                    "host": "xxxxxxxxxxxxxxxxxxxxxxxxx",
                    "id": "xxxxxxxxxxxxxxxxxxxxxxxxx",
                    "mac": "none",
                    "name": "Living Room TV",
                    "port": 8002
                },
                "domain": "samsungtv_smart",
                "entry_id": "xxxxxxxxxxxxxxxxxxxxxxxxx",
                "options": {
                    "app_load_method": 3,
                    "power_on_delay": 30.0,
                    "use_st_channel_info": true,
                    "use_st_status_info": true
                },
                "source": "user",
                "system_options": {
                    "disable_new_entities": false
                },
                "title": "Living Room TV (SmartThings)",
                "unique_id": "xxxxxxxxxxxxxxxxxxxxxxxxx",
                "version": 1
            },
            {
                "connection_class": "cloud_poll",
                "data": {
                    "api_key": "xxxxxxxxxxxxxxxxxxxxxxxxx",
                    "device_id": "xxxxxxxxxxxxxxxxxxxxxxxxx",
                    "device_model": "UA43RU7100WXXY",
                    "device_name": "[TV] Samsung 7 Series (43)",
                    "device_os": "Tizen",
                    "host": "xxxxxxxxxxxxxxxxxxxxxxxxx",
                    "id": "xxxxxxxxxxxxxxxxxxxxxxxxx",
                    "mac": "XX:XX:XX:XX:XX:XX",
                    "name": "Master Bedroom TV",
                    "port": 8002
                },
                "domain": "samsungtv_smart",
                "entry_id": "xxxxxxxxxxxxxxxxxxxxxxxxx",
                "options": {},
                "source": "user",
                "system_options": {
                    "disable_new_entities": false
                },
                "title": "Master Bedroom TV (SmartThings)",
                "unique_id": "xxxxxxxxxxxxxxxxxxxxxxxxx",
                "version": 1
            }

Can you try open in a browser this address: "http://:8001/api/v2/"
Then let me know the information that you receive back, eventually post it here masking sensible information

Heres the output obvio:
{"device":{"FrameTVSupport":"false","GamePadSupport":"true","ImeSyncedSupport":"true","OS":"Tizen","TokenAuthSupport":"true","VoiceSupport":"true","countryCode":"AU","description":"Samsung DTV RCR","developerIP":"<IP_ADDRESS>","developerMode":"0","duid":"uuid:<removed>","firmwareVersion":"Unknown","id":"uuid:<removed>","ip":"<removed>","model":"17_KANTM_UHD","modelName":"QA65Q7FAM","name":"[TV] Samsung Q7 Series (65)","networkType":"none","resolution":"3840x2160","smartHubAgreement":"true","type":"Samsung SmartTV","udn":"uuid:<removed>","wifiMac":"none"},"id":"uuid:<removed>","isSupport":"{\"DMP_DRM_PLAYREADY\":\"false\",\"DMP_DRM_WIDEVINE\":\"false\",\"DMP_available\":\"true\",\"EDEN_available\":\"true\",\"FrameTVSupport\":\"false\",\"ImeSyncedSupport\":\"true\",\"TokenAuthSupport\":\"true\",\"remote_available\":\"true\",\"remote_fourDirections\":\"true\",\"remote_touchPad\":\"true\",\"remote_voiceControl\":\"true\"}\n","name":"[TV] Samsung Q7 Series (65)","remote":"1.0","type":"Samsung SmartTV","uri":"http://<removed>:8001/api/v2/","version":"2.0.25"}

Ok, TV is not reporting the info.
The only option is to force the correct value adding this information in configuration.yaml as explained in readme. You need only to specify ip-address and mac, all other info remain unchanged, like this:
samsungtv_smart:
  - host: <YOUR TV IP ADDRESS>
    mac: <YOUR TV MAC>


Main iac merge

Merge main into main-iac

Codecov Report

Merging #584 (7e53d51) into main-iac (2edc385) will increase coverage by 0.24%.
The diff coverage is 95.14%.

:exclamation: Your organization is not using the GitHub App Integration. As a result you may experience degraded service beginning May 15th. Please install the Github App Integration for your organization. Read more.
@@             Coverage Diff              @@
##           main-iac     #584      +/-   ##
============================================
+ Coverage     93.73%   93.97%   +0.24%
============================================
  Files            93      104      +11
  Lines          4163     4646     +483
============================================
+ Hits           3902     4366     +464
- Misses          261      280      +19

Flag
Coverage Δ

unittests
93.97% <95.14%> (+0.24%)
:arrow_up:

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files
Coverage Δ

ggshield/hmsl/utils.py
81.25% <81.25%> (ø)

ggshield/cmd/hmsl/decrypt.py
90.74% <90.74%> (ø)

ggshield/cmd/hmsl/check.py
92.50% <92.50%> (ø)

ggshield/cmd/hmsl/query.py
94.59% <94.59%> (ø)

ggshield/core/config/config.py
95.57% <97.22%> (+0.70%)
:arrow_up:

ggshield/hmsl/client.py
97.77% <97.77%> (ø)

ggshield/cmd/hmsl/__init__.py
100.00% <100.00%> (ø)

ggshield/cmd/hmsl/api_status.py
100.00% <100.00%> (ø)

ggshield/cmd/hmsl/fingerprint.py
100.00% <100.00%> (ø)

ggshield/cmd/hmsl/quota.py
100.00% <100.00%> (ø)

... and 16 more

... and 1 file with indirect coverage changes


Bump Ratis 2.3.0 and related toolchains

Bump Ratis 2.3.0 and related toolchains
What changes were proposed in this pull request?
Bump Ratis 2.3.0 and related toolchains
Why are the changes needed?

To bring native Apple Sillicon support.
What are the items that need reviewer attention?
Related issues.
Related pull requests.
How was this patch tested?
Successful build on M1 chips using ./dev/make-distribution.sh -Pspark-3 -Plog4j-1
/cc @related-reviewer
/assign @main-reviewer

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


Add Prometheus configuration and recording rules for DSP Operator

Description

Adding Prometheus configuration and recording rules for Data Science Pipelines' Operator
How Has This Been Tested?

On PSI/OSD with Olminstall:

Using olminstall, trigger first a clean build with the image quay.io/rhn_support_ddalvi/rhods-operator-live-catalog:1.25.0-rhods-7501. Make sure that the installation is successful
Go to the prometheus instance url in the redhat-ods-monitoring namespace, query the recording rules, make sure that they return entries and values relevant to the data science pipelines' operator

Merge criteria:

[x] The commits are squashed in a cohesive manner and have meaningful messages.
[ ] For commits that came from upstream, [UPSTREAM] has been prepended to the commit message.
[x] JIRA link(s): https://issues.redhat.com/browse/RHODS-7501
[x] The Jira story is acked.
[x] Live build image: quay.io/rhn_support_ddalvi/rhods-operator-live-catalog:1.25.0-rhods-7501
[x] Testing instructions have been added in the PR body (for PRs involving changes that are not immediately obvious).
[x] The developer has manually tested the changes and verified that the changes work.
[ ] QE contact acknowledges that this has been tested and is approved for merge.

@jgarciao Kindly look into it

I've tested livebuild http://quay.io/rhn_support_ddalvi/rhods-operator-live-catalog:1.25.0-rhods-7501:

Prometheus > Status > Targets > user_facing_endpoints_status: contains endpoint for data-science-pipelines-operator
Prometheus > Graphs > {job="user_facing_endpoints_status", name="data-science-pipelines-operator"} shows some metrics , but I believe they are not correct (info below)

For example, metric probe_success{instance="data-science-pipelines-operator-service.redhat-ods-applications.svc:8080/metrics", job="user_facing_endpoints_status", name="data-science-pipelines-operator"} seems to return always value 0, independently of the number of pods running in deployment data-science-pipelines-operator-controller-manager.
On the contrary, the probe_success metric for odh-notebook-controller-service value is 1 and, when scaling the Deployment to zero pods, it changes to zero (see screenshot below)

The Service name for data-science-pipelines-operator seems wrong in RHODS 1.25 RC1

With the livebuild at http://quay.io/hukhan/rhods-operator-live-catalog:1.25.0-dsp-rules-1-25 I've verified that the probe_success metric works well for data-science-pipelines-operator (it detects when it's working and when it's not)
I think the PR can be merged

/approve

/approve


Add Next js template.

Please add a Next js template in the tool.
it will help a lot as Next js a very slow development server

NextJS isn't a UI framework but a build tool. It and Vite are mutually exclusive. You use one or the other.

So is there a hacky way for it

If you run Vite, then you aren't running Next. That's how it works. They both (roughly) do the same thing.

Ok Thanks

If you want a Next.js like experience with Vite, checkout out vite-plugin-ssr. There is slightly more boilerplate than Next.js (only 2 files really) but it's a much more scalable approach (do-one-thing-do-it-well instead of being a framework which will make your life much easier in the long run).
Check out vite-plugin-ssr's React Tour.

There's also nuxt/vite, though experimental and I cannot vouch for the quality


Create disaster recovery epic with small issues

energyvision-internal#32

Things to keep in mind

Kan vi simulere at Sanity er nede? Hvem kontakter vi og hvordan?
How can we know that Sanity's backup restoration works? Can we do simulations with them?
Who to contact in Sanity? Should be in our contract.
What happens if Sanity is down for a short period? Will pages be cashed? For how long?
What kind of response time is to be expected by Sanity and internally?
How is equinor.com prioritized if "shit hits the fan"?
Emergency plan - should we have one
Should we add a layer in Azure for handling situations when our cluster is down? More info: https://learn.microsoft.com/en-us/azure/architecture/guide/technology-choices/load-balancing-overview

Backups: https://www.sanity.io/plugins/backups

Epic #1099 updated with new issues. Next step is to go through the task list with decision makers.

Closing this in favour of https://github.com/equinor/energyvision-internal/issues/32


👋🏻 Not an issue; I just wrote an extension!

This is a great lib! Tripped through some details that was probably mostly related to my level of Rust ability honestly.
Anyways, I figured I'd share in case the example can be useful for folks: https://github.com/jphenow/tomlrs-php
It's incomplete because I didn't finish packaging it up for composer or anything but still might give folks some ideas as they get started.
Feel free to just close if this isn't useful at all - mostly wanted to say thanks for this library!

Cool! I'm glad it's faster than the PHP implementation (haha). I wonder if there's anything we could speed up (I assume a C version would be faster, albeit more of a PITA to write).
I will add it to the README examples.

Which reminds me I should document how I build and load PHP rust extensions inside Docker.Should have a look and see if there's any tooling we should build to improve the build process. Think something like Pyle's maturin.I think we should also be able to auto generated stub files for ide completion.On Mar. 30, 2022 8:51 a.m., David Cole @.***> wrote:
Cool! I'm glad it's faster than the PHP implementation (haha). I wonder if there's anything we could speed up (I assume a C version would be faster, albeit more of a PITA to write).
I will add it to the README examples.
—Reply to this email directly, view it on GitHub, or unsubscribe.You are receiving this because you are subscribed to this thread.Message ID: @.***>

Which reminds me I should document how I build and load PHP rust extensions inside Docker.Should have a look and see if there's any tooling we should build to improve the build process. Think something like Pyle's maturin.

Yeah I agree. It would be pretty cool if we could run cargo php build --php 8.0,8.1 --os linux,macos and it would produce 4 dylibs. I'll try look into it if I've got time.

I think we should also be able to auto generated stub files for ide completion.

cargo php already has the ability to generate stubs, but it's pretty crappy: depends quite heavily on the ext-php-rs version (won't load an extension if a symbol is missing), can't expand parent class names, and I'm not convinced my ABI-stable work is completely correct. I think the better approach will be to embed something like php-extension-stub-generator into the binary and call it at runtime.

For the sake of recording it somewhere - here's the relevant parts of my Dockerfile:
# syntax=docker/dockerfile:1.2
ARG PHP_TAG=8.1-fpm-bullseye
ARG RUST_VERSION=1.56.1

FROM php:$PHP_TAG as php-base

# Prepare an builder base image.
# Use the php base image and adds rust/cargo-chef.

RUN cargo chef prepare --recipe-path recipe.json

FROM builder as ext-builder
COPY --from=planner /app/recipe.json recipe.json
RUN cargo chef cook --release --recipe-path recipe.json
COPY crate .
RUN cargo build --release

FROM php-base as app
RUN echo extension=extension.so >/usr/local/etc/php/conf.d/ext-extension.ini
COPY --from=ext-builder /app/target/release/extension.so /usr/local/lib/php/extensions/no-debug-non-zts-20210902/extension.so

# rest of build goes here

I'll have a look at the stub builder when I have a chance.
I don't know how you did it, but I have an idea how to make it work. I'd try to store some extra metadata with #[php_class], etc to make the annotations explicit. Write them out to file.

@vodik
Just for context around the stub builder, the #[php_module] macro exports an additional C function from the extension, ext_php_rs_describe_module, which returns a struct containing information about the extension. The cargo-php executable then dynamically loads the extension library with dlopen to call this function.
As Rust is not ABI-stable, the ext_php_rs::describe::abi::* module was added with some ABI-stable types (Str, Vec and Option), as it's possible cargo-php and the extension are compiled with different versions of Rust.
At the moment it doesn't work too terribly, however if you extend a class it doesn't expand the class name in PHP (will give you something like class MyException extends zend::ce::exception() {}. Plus, there are some linkage issues I ran into primarily on macOS, as when the library is loaded it attempts to link with functions exported by PHP such as emalloc, which obviously don't exist in cargo-php. This also doesn't work on Windows now that it is supported by the crate.
For this reason I think it'd be best to do stub generation in PHP where all the parent classes (among other things) are resolved. Have tried to look into it however:

Documentation comments on functions in Rust would be useful to pass to PHP. I'm not sure if we can pass comments into PHP (zend_function has doc_comment however zend_function_entry does not), so maybe we can write metadata into a file in the target directory.
There is a php-extension-stub-generator phar package. It'd be great to embed this into the cargo-php executable however I haven't looked at the license and I don't think you can pipe phars into PHP via stdin.

The exported describe function once expanded looks similar to this:
#[cfg(debug_assertions)]
#[no_mangle]
pub extern "C" fn ext_php_rs_describe_module() -> ::ext_php_rs::describe::Description {
    use ::ext_php_rs::describe::*;
    Description::new(Module {
        name: "ext-php-rs-test".into(),
        functions: <[_]>::into_vec(box [Function {
            name: "hello_world".into(),
            docs: DocBlock(::alloc::vec::Vec::new().into()),
            ret: abi::Option::Some(Retval {
                ty: <String as ::ext_php_rs::convert::IntoZval>::TYPE,
                nullable: false,
            }),
            params: <[_]>::into_vec(box [Parameter {
                name: "name".into(),
                ty: abi::Option::Some(<&str as ::ext_php_rs::convert::FromZvalMut>::TYPE),
                nullable: false,
                default: abi::Option::None,
            }])
            .into(),
        }])
        .into(),
        classes: ::alloc::vec::Vec::new().into(),
        constants: ::alloc::vec::Vec::new().into(),
    })
}

I didn't realize PHP extensions can describe themselves, though it makes sense. I'll look into that closer.
The thought process I had is that given we know all the functions, classes, etc. that make up the module, we could be in a position where we just write out a .php file directly with stubs as part of the build process, like how barryvdh/laravel-ide-helper works. Comments could be just copied over verbatim.
So for example the snippet in the README:
/// Gives you a nice greeting!
///
/// @param string $name Your name.
///
/// @return string Nice greeting!
#[php_function]
pub fn hello_world(name: String) -> String {
    format!("Hello, {}!", name)
}

could compile an companion _example.php (or whatever convention) file that looks like:
/**
  *  Gives you a nice greeting!
  *
  * @param string $name Your name.
  *
  * @return string Nice greeting!
  */
public function helloWorld(string $name): string {}

Maybe it wouldn't hurt to move this conversation off this issue :grin:
We might be able to convert rustdoc conventions into PHP ones with this technique. No reason the rust version couldn't do the standard:
/// Gives you a nice greeting!
///
/// # Arguments
///
/// * `name` - Your name
///
/// # Returns
///
/// Nice greeting!
#[php_function]
pub fn hello_world(name: String) -> String {
    format!("Hello, {}!", name)
}


Update homeassistant_HassTurnOn.yaml

added 2 sentences in czech language

Don't forget to add tests for the new sentences

work already done in PR #479 , this one can be closed without merge

work already done in PR #479 , this one can be closed without merge

closing due to inactivity - work already done in different PR