 ADB connection is fine. Power on and input changes, as well as the Control Center remote all work perfectly.
Expected behavior
TV should turn off and be reflected in HomeKit/Homebridge.
Log output
[12/1/2022, 3:47:29 PM] [HomebridgeADB] Playroom TV - 🐞 Alive: Thu Dec 01 2022 15:47:29 GMT-0500 (Eastern Standard Time)
[12/1/2022, 3:48:33 PM] [HomebridgeADB] Playroom TV - 🐞 Trying to turn ON accessory. This will take awhile, please wait...
[12/1/2022, 3:48:33 PM] [HomebridgeADB] Playroom TV - 🐞 Turning power on
[12/1/2022, 3:48:34 PM] [HomebridgeADB] Playroom TV - 🐞 Turning power on: true, 10
[12/1/2022, 3:48:34 PM] [HomebridgeADB] Playroom TV - 🐞 Turning power on: Success
[12/1/2022, 3:48:35 PM] [HomebridgeADB] Playroom TV - 🐞 Power On - Success
[12/1/2022, 3:48:54 PM] [HomebridgeADB] Playroom TV - 🤖 Current app: YouTube Kids
[12/1/2022, 3:48:58 PM] [HomebridgeADB] Playroom TV - 🤖 Current app: Disney+
[12/1/2022, 3:48:58 PM] [HomebridgeADB] Playroom TV - 🤖 Current app id - com.google.android.youtube.tvkids
[12/1/2022, 3:48:58 PM] [HomebridgeADB] Playroom TV - 🤖 Current app id - com.disney.disneyplus
[12/1/2022, 3:49:05 PM] [HomebridgeADB] Playroom TV - 🤖 Current app: Other
[12/1/2022, 3:49:06 PM] [HomebridgeADB] Playroom TV - 🤖 Current app id - home
[12/1/2022, 3:49:21 PM] [HomebridgeADB] Playroom TV - 🐞 Trying to turn OFF accessory
[12/1/2022, 3:49:21 PM] [HomebridgeADB] Playroom TV - 🐞 Turning power off
[12/1/2022, 3:49:22 PM] [HomebridgeADB] Playroom TV - 🐞 Turning power off: true, 10
[12/1/2022, 3:49:23 PM] [HomebridgeADB] Playroom TV - 🐞 Turning power off: true, 9
[12/1/2022, 3:49:23 PM] [HomebridgeADB] Playroom TV - 🐞 Turning power off: true, 8
[12/1/2022, 3:49:24 PM] [HomebridgeADB] Playroom TV - 🐞 Turning power off: true, 7
[12/1/2022, 3:49:25 PM] [HomebridgeADB] Playroom TV - 🐞 Turning power off: true, 6
[12/1/2022, 3:49:25 PM] [HomebridgeADB] Playroom TV - 🐞 Turning power off: true, 5
[12/1/2022, 3:49:26 PM] [HomebridgeADB] Playroom TV - 🐞 Turning power off: true, 4
[12/1/2022, 3:49:26 PM] [HomebridgeADB] Playroom TV - 🐞 Turning power off: true, 3
[12/1/2022, 3:49:27 PM] [HomebridgeADB] Playroom TV - 🐞 Turning power off: true, 2
[12/1/2022, 3:49:28 PM] [HomebridgeADB] Playroom TV - 🐞 Turning power off: true, 1
[12/1/2022, 3:49:28 PM] [HomebridgeADB] Playroom TV - 🐞 Turning power off: Failed
[12/1/2022, 3:49:28 PM] [HomebridgeADB] Playroom TV - 🤖 Power Off - Failed
[12/1/2022, 3:49:28 PM] [HomebridgeADB] Playroom TV - 🐞 Power off error message: Failed
[12/1/2022, 3:49:49 PM] [HomebridgeADB] Playroom TV - 🐞 Trying to turn OFF accessory
[12/1/2022, 3:49:49 PM] [HomebridgeADB] Playroom TV - 🐞 Turning power off
[12/1/2022, 3:49:50 PM] [HomebridgeADB] Playroom TV - 🐞 Turning power off: true, 10
[12/1/2022, 3:49:50 PM] [HomebridgeADB] Playroom TV - 🐞 Turning power off: true, 9
[12/1/2022, 3:49:51 PM] [HomebridgeADB] Playroom TV - 🐞 Turning power off: true, 8
[12/1/2022, 3:49:52 PM] [HomebridgeADB] Playroom TV - 🐞 Turning power off: true, 7
[12/1/2022, 3:49:52 PM] [HomebridgeADB] Playroom TV - 🐞 Turning power off: true, 6
[12/1/2022, 3:49:53 PM] [HomebridgeADB] Playroom TV - 🐞 Turning power off: true, 5
[12/1/2022, 3:49:54 PM] [HomebridgeADB] Playroom TV - 🐞 Turning power off: true, 4
[12/1/2022, 3:49:55 PM] [HomebridgeADB] Playroom TV - 🐞 Turning power off: true, 3
[12/1/2022, 3:49:56 PM] [HomebridgeADB] Playroom TV - 🐞 Turning power off: true, 2
[12/1/2022, 3:49:56 PM] [HomebridgeADB] Playroom TV - 🐞 Turning power off: true, 1
[12/1/2022, 3:49:56 PM] [HomebridgeADB] Playroom TV - 🐞 Turning power off: Failed
[12/1/2022, 3:49:57 PM] [HomebridgeADB] Playroom TV - 🤖 Power Off - Failed
[12/1/2022, 3:49:57 PM] [HomebridgeADB] Playroom TV - 🐞 Power off error message: Failed
Device (please complete the following information):
Chromecast with Google TV

Hello @bravesfan171,
I've Chromecast with Google TV and was having same problem.
I took a look of key code list and try some key codes.
After few attempts, I found solution for this.
To Power ON: use KEYCODE_WAKEUP instead of KEYCODE_POWER
To Power OFF: use KEYCODE_SLEEP instead of KEYCODE_POWER
Also, there's KEYCODE_TV_POWER, KEYCODE_STB_POWER, KEYCODE_AVR_POWER keycodes.
I think those key codes are worth a try.
Here's my config entry for example:
        {
            "accessories": [
                {
                    "name": "Google TV",
                    "ip": "192.168.X.X",
                    "path": "/usr/bin/adb",
                    "category": "APPLE_TV",
                    "inputs": [
                        {
                            "name": "YouTube",
                            "id": "com.google.android.youtube.tv"
                        },
                        {
                            "name": "Netflix",
                            "id": "com.netflix.ninja"
                        },
                        {
                            "name": "テレビ放送",
                            "id": "com.google.android.tv"
                        }
                    ],
                    "hidenumber": true,
                    "hideother": true,
                    "playbacksensor": false,
                    "debug": false,
                    "upbutton": "KEYCODE_DPAD_UP",
                    "downbutton": "KEYCODE_DPAD_DOWN",
                    "leftbutton": "KEYCODE_DPAD_LEFT",
                    "rightbutton": "KEYCODE_DPAD_RIGHT",
                    "selectbutton": "KEYCODE_ENTER",
                    "backbutton": "KEYCODE_BACK",
                    "playpausebutton": "KEYCODE_MEDIA_PLAY_PAUSE",
                    "infobutton": "KEYCODE_HOME",
                    "poweron": "KEYCODE_WAKEUP",
                    "poweroff": "KEYCODE_SLEEP",
                    "volumeup": "KEYCODE_VOLUME_UP",
                    "volumedown": "KEYCODE_VOLUME_DOWN"
                }
            ],
            "_bridge": {
                "username": "XX:XX:XX:XX:XX:XX",
                "port": XXXXX
            },
            "platform": "HomebridgeADB"
        }

@katabame brilliant! That fixed my issue as well. Thanks for passing along that fix.
I wonder if there is some way they can address that in the plugin to correct Power On and Off behavior based on what the device uses by default.


CDK deployment failing: repository does not exist in the registry

Hello all,
I've faced an error in Workshop on Step 6: cdk deploy
CdkStackALBEksBg stack failed with the following logs:
CdkStackALBEksBg: deploying...
[0%] start: Publishing 26ac61b4195cccf80ff73f332788ad7ffaab36d81ce570340a583a8364901665:current
[10%] success: Published 26ac61b4195cccf80ff73f332788ad7ffaab36d81ce570340a583a8364901665:current
[10%] start: Publishing 3144c5280df58e5cdbad2fdc0464c2dc114b48bdc883d5964c0f7cf329e191fa:current
[20%] success: Published 3144c5280df58e5cdbad2fdc0464c2dc114b48bdc883d5964c0f7cf329e191fa:current
[20%] start: Publishing c691172cdeefa2c91b5a2907f9d81118e47597634943344795f1a844192dd49c:current
[30%] success: Published c691172cdeefa2c91b5a2907f9d81118e47597634943344795f1a844192dd49c:current
[30%] start: Publishing 4129bbca38164ecb28fee8e5b674f0d05e5957b4b8ed97d9c950527b5cc4ce10:current
[40%] success: Published 4129bbca38164ecb28fee8e5b674f0d05e5957b4b8ed97d9c950527b5cc4ce10:current
[40%] start: Publishing e9882ab123687399f934da0d45effe675ecc8ce13b40cb946f3e1d6141fe8d68:current
[50%] success: Published e9882ab123687399f934da0d45effe675ecc8ce13b40cb946f3e1d6141fe8d68:current
[50%] start: Publishing ea17febe6d04c66048f3e8e060c71685c0cb53122abceff44842d27bc0d4a03e:current
[60%] success: Published ea17febe6d04c66048f3e8e060c71685c0cb53122abceff44842d27bc0d4a03e:current
[60%] start: Publishing 540c42bf93221d226e9892dca8f369ca800db0f340fb22015b9723dd093760e1:current
[70%] success: Published 540c42bf93221d226e9892dca8f369ca800db0f340fb22015b9723dd093760e1:current
[70%] start: Publishing 81cf0917f6b2b41f4037af7e72c7c75993aa9f419a182bc27d6e30e2d55bcf94:current
[80%] success: Published 81cf0917f6b2b41f4037af7e72c7c75993aa9f419a182bc27d6e30e2d55bcf94:current
[80%] start: Publishing 587eec5f7189189557b02f86a2f8dd746bb63d0b11a488ee97d629d2eeb72336:current
[90%] success: Published 587eec5f7189189557b02f86a2f8dd746bb63d0b11a488ee97d629d2eeb72336:current
[90%] start: Publishing f49a00e629119a89acb65cce47bbf091d7dab3ec26220bca4923d04c4d3f4cd2:current
Sending build context to Docker daemon   5.12kB
Step 1/10 : FROM public.ecr.aws/p8v8e7e5/myartifacts:alpine-jan2021
repository public.ecr.aws/p8v8e7e5/myartifacts not found: name unknown: The repository with name 'myartifacts' does not exist in the registry with id 'p8v8e7e5'
[100%] fail: docker build --tag cdkasset-f49a00e629119a89acb65cce47bbf091d7dab3ec26220bca4923d04c4d3f4cd2 . exited with error code 1: repository public.ecr.aws/p8v8e7e5/myartifacts not found: name unknown: The repository with name 'myartifacts' does not exist in the registry with id 'p8v8e7e5'

Environment:
cdk version - 1.134.0 (build dd5e12d)
aws version - aws-cli/1.19.112 Python/2.7.18 Linux/4.14.301-224.520.amzn2.x86_64 botocore/1.20.112
npm version - 6.14.17

Could you suggest if I missed something or public repository has been deleted recently?
Thank you.

Just adding to this, the issue is still appearing as well for me as of this post 17 Feb 2023. I did follow the pre-setup on the README here in addition to the workshop steps, so it seems like something changed. Seems the this public registry doesn't exist anymore perhaps?  public.ecr.aws/p8v8e7e5/myartifacts:alpine-jan2021

@danny-kirby Thank you for providing a fix.


Minor image upload bug

I happened to be testing an upload with a white image that had a transparent background.  At least in light mode, this obviously was invisible.  Not sure a possible solution at the moment, and it's a very niche case, but I want to open this as a reminder to myself to sort it out at some point

Not sure of a good way to deal with this. Perhaps a way to toggle night mode, but how would the user know what they can't see? A checkerboard is also not ideal, since there's sometimes value to having transparency in images. Can you think of any, @kn0wmad ?
There is one possible way to do this, however:

Draw a checkerboard background (generated, not as an image, unless we implement unscaled tiling, which at that point, just draw it via an Iced Canvas).
Only make the checkerboard background button appear when there's an image with a transparency channel (the image crate should help with this)
Scan through any image to be rendered to tell if there are only two colors: alpha, and also, either white or black.
If there's a two-color image with alpha that is the same color as our background, then the checkerboard button would be enabled automatically, to better provide information to the user that they wouldn't have known to see before.

Not sure of a good way to deal with this. Perhaps a way to toggle night mode, but how would the user know what they can't see? A checkerboard is also not ideal, since there's sometimes value to having transparency in images. Can you think of any, @kn0wmad ?
There is one possible way to do this, however:

Draw a checkerboard background (generated, not as an image, unless we implement unscaled tiling, which at that point, just draw it via an Iced Canvas).
Only make the checkerboard background button appear when there's an image with a transparency channel (the image crate should help with this)
Scan through any image to be rendered to tell if there are only two colors: alpha, and also, either white or black.
If there's a two-color image with alpha that is the same color as our background, then the checkerboard button would be enabled automatically, to better provide information to the user that they wouldn't have known to see before.

Cool, sounds good.  Obviously not a pressing feature, but will investigate this.

Cool, sounds good.  Obviously not a pressing feature, but will investigate this.

Yeah. Honestly, I don't mind if this issue is solved in this way, it's a really elegant solution that no other browser or viewer I've seen other than image editing software that's simpler to use than GIMP or PS has solved. Like, seriously, most of them probably "solve" it by having off-white or off-black be the background color.
For small, quality of life features like this, the approach I suggested poses few technical challenges, would stress the implementer's knowledge of Rust so that good knowledge is gained, and it could potentially someday impress an early adopter with an eye for this.
@kn0wmad What I'm saying is, go to town, my man. I'm not gonna say no.

Yeah. Honestly, I don't mind if this issue is solved in this way, it's a really elegant solution that no other browser or viewer I've seen other than image editing software that's simpler to use than GIMP or PS has solved. Like, seriously, most of them probably "solve" it by having off-white or off-black be the background color.
For small, quality of life features like this, the approach I suggested poses few technical challenges, would stress the implementer's knowledge of Rust so that good knowledge is gained, and it could potentially someday impress an early adopter with an eye for this.
@kn0wmad What I'm saying is, go to town, my man. I'm not gonna say no.

Okay, what I was saying is "I will do this, after some in progress stuff gets done."

Okay, what I was saying is "I will do this, after some in progress stuff gets done."


Create org-giantswarm-namespace-cluster-block.yaml

This policy is designed to blocks the creation of all Workload Clusters in the org-giantswarm namespace.
Checklist

[ ] Update changelog in CHANGELOG.md.

LGTM don't forget to update CHANGELOG.md


Add note about only supporting HTTP basic auth

The current implementation of the Casbin middleware does indeed onyl allow retrieving the username via basic auth. So adding a note is helpful here.
From labstack/echo-contrib/casbin/casbin.go:
// GetUserName gets the user name from the request.
// Currently, only HTTP basic authentication is supported
func (a *Config) GetUserName(c echo.Context) string {
	username, _, _ := c.Request().BasicAuth()
	return username
}

Thanks @jrobchin. Merging.


Remove unnecessary UI elements

Some UI elements do not work and do not make sense.
This requires digging into the DevTools code.
Things to remove:

[ ] preserve log
[ ] disable cache
[ ] capture screenshots
[ ] "Clear browser cache" - context menu
[ ] "Clear browser cookies" - context menu
[ ] hide data URLs

right now as we were talking about this is going to be a hack job into dev tools, would be nice to be able to problematically disable these features in devtools ... however this might just add too much noise to devtools to enable this functionality so a patch commit that we can manually apply will prob be best here
cc @paulirish

konrad, you're speaking the protocol into the frontend?
well actually
based on the animation it appears that you're already hacking the frontend. so applying some display none's is easy. and context menu.... iunno that will be harder. :)

I kinda hoped that I'll keep DT easy to update by relying on config files as much as possible (this worked out for the main tabs). However, as Sam mentioned, it looks like it will be impossible very hard going on. Anyway, I still want to check what's possible to turn off using config files, for everything else, we'll do display:none thing.

konrad, you're speaking the protocol into the frontend?

do I use remote debugging protocol to communicate with the frontend? if so :arrow_right:  yes.


How to add functions that need charm libraries to chisme?

Context
We've had times where we'd like to move a function that depends on a charm library to chisme (for example, in canonical/envoy-operator#87 and canonical/kfp-operators#436, which both have the same K8sServiceInfoComponent).
Because these depend on a charm library, chisme would then need that charm library.
An option could do a simple vendoring of the charm libraries in chisme, but then chisme would:

always include all the libraries (say prometheus, grafana, etc, even if the charm using chisme doesn't need these libraries)
the version of these libraries would be set by chisme directly (can't charmcraft fetch-lib within the charm to update libraries)

This likely is not manageable, at least not without some advanced stuff.
Some possible solutions:

Can we refactor our reusable tools to use dependency injection, where they accept as args the things they need from the libs rather than hard-code their dependency on the libs?
Can we use optional dependencies and somehow support multiple library versions?  Chisme would then only ship with library-specific code when someone asks for it (pip install chisme[k8s-service-lib]).  I think then in the chisme repo we'd still install the charm lib (somehow manually?) and use it for testing (maybe installing several versions in a matrix of tests) but the charm lib wouldn't ship those
Or maybe Chisme can ship without the libs, but still include all the lib-specific code?  Which would only work if the charm also installed the necessary lib?

To me, (1) is probably the easiest
What needs to get done

prototype how this could be done and design a solution
implement at least one working example

Definition of Done

an approach is in place, with at least one example, of how to put code that uses charm libs in chisme

My quick experience on this, I had played around with possible solution 3 (point 1 described in that spec section). AFAIR, this was working properly (example function) and the function was acting like it lived inside the charm's code.
Also, I had tried adding the libs to chisme and having them delivered with the code (by default) but I couldn't get the charm to locate those (not saying it's impossible). Example implementation here and here.

What I tried to do is fetch-lib in root directory, like this:
$ charmcraft fetch-lib charms.prometheus_k8s.v0.prometheus_scrape
Library charms.prometheus_k8s.v0.prometheus_scrape version 0.47 downloaded.
$ ll lib/charms
total 4.0K
drwxrwxr-x 3 rgildein rgildein 4.0K May 22 16:10 prometheus_k8s

then I changed the setup.cfg to include package_data, like this:
[options]
...
include_package_data = True

[options.package_data]
* = charms/*.py

With these changes, we can use libs directly in chisme, like this:
from lib.charms.prometheus_k8s.v0.prometheus_scrape import MetricsEndpointProvider

With this approach it should be possible to have different version of lib in charm and different version in chisme, so if chisme using lib smartly and charm will never import from lib.charms, it will be possible to do easy bump version of any lib in chisme. e.g. charm can keep using same function from chisme (foo(self, port)) and all logic to use new version of lib will be done on chisme side (foo change inside).


How to integrate Langchain RAG pipeline

I am looking for a solution to integrate langchain so they can talk to specific Vector DB.
Also build special flow if user ask for specific things to LLM.

Did you look into openAI tools? You need to create retrieval tool and pass it to likevkit agent function context. Check livekit function calling example.

I am also working on something similar where I am trying to use function calling feature in livekit. Did you find anything on integrating Langchain here?

We're generating context using a custom mini model instead of LangChain. Function calling will interact with our microservice, which handles embeddings, vector DB, context truncation (max 2000 tokens), and business logic. We're currently in pre-production, with lots of work ahead.

We've talked a little about LangChain internally. We're looking into creating a langchain LLM subclass that would have full compatibility with the VoiceAssistant class but we haven't scoped it out or prioritized it yet.
For simpler RAG use cases, we've added an example: https://github.com/livekit/agents/blob/main/examples/voice-assistant/simple-rag/assistant.py

what is the raw.txt file doing in the repo

@keepingitneil any update on the above? Is this still not prioritised?

Hey any update on langchain integration or endpoints that can be configured for this? Thanks

The Simple Rag example doesn't work and I am stuck waiting for Langchain 😢 is there an update about this?

also waiting for that

The RAG example is gone by now …

thanks a lot Tom <3

We also have some llama-index examples: https://github.com/livekit/agents/tree/main/examples/voice-pipeline-agent/llamaindex-rag

Thanks Theo <3

I now tried the following, which works for my toy example, but should also work for any other Langchain Runnable
# plugin_langchain/llm.py

from typing import Any

from langchain_core.messages import BaseMessage
from langchain_core.runnables import RunnableSerializable

from livekit.agents import llm

class LLM(llm.LLM):
    def __init__(self, *, runnable: RunnableSerializable) -> None:
        """
        Create a new instance of Langchain Runnable.
        """
        super().__init__()
        self._runnable = runnable

    def chat(
        self,
        *,
        chat_ctx: llm.ChatContext,
        **kwargs: Any,
    ) -> "LLMStream":
        return LLMStream(runnable=self._runnable, chat_ctx=chat_ctx)

class LLMStream(llm.LLMStream):
    def __init__(
        self,
        *,
        runnable: RunnableSerializable[dict, BaseMessage],
        chat_ctx: llm.ChatContext,
    ) -> None:
        super().__init__(chat_ctx=chat_ctx, fnc_ctx=None)
        # All messages except the system message fill the placeholder
        messages = [(m.role, m.content) for m in chat_ctx.messages[1:]]
        self._stream = runnable.astream({"messages": messages})

    async def __anext__(self) -> llm.ChatChunk | None:
        index = 0
        async for chunk in self._stream:
            index += 1
            if chunk.content:
                return llm.ChatChunk(
                    choices=[
                        llm.Choice(
                            delta=llm.ChoiceDelta(
                                content=chunk.content, role="assistant"
                            ),
                            index=index,
                        )
                    ],
                )
        raise StopAsyncIteration

I use this as follows in the agent.py
import plugin_langchain as lc
# ...
prompt = ChatPromptTemplate.from_messages(
    [
        ("system", "You are a creative storyteller."),
        ("placeholder", "{messages}"),
    ]
)

chain = prompt | ChatOpenAI(temperature=0.7, streaming=True, model="gpt-4o-mini")

# ...

    assistant = VoicePipelineAgent(
        vad=ctx.proc.userdata["vad"],
        stt=deepgram.STT(language="de-DE"),
        llm=lc.LLM(runnable=chain),
        tts=elevenlabs.TTS(voice=voice),
        chat_ctx=initial_ctx,
        fnc_ctx=fnc_ctx,
    )

I haven't really thought about how the fairly generic "messages"-as-input approach would work when trying to run a pure RAG chain, that would expect some {"question": "<the user question>"} as input, but maybe it's a starting point for some.

I’m looking forward to get more information regarding the RAG pipeline with LangChain.


Is it possible to get the group's 'info' field/attribute?

Laravel Version: 5
Adldap2-Laravel Version: 3.0.9
PHP Version: 7.1
LDAP Type: ActiveDirectory

Description:
So I need to retrieve the groups from AD that have a specific word in the 'info' field.
I have no problem retrieving the groups and looping through them, but I haven't found anywhere how to access that extra field or attribute that groups can have.
Is that possible to achieve?
Thanks in advance!

Hi @xotik,
You can retrieve attributes in a number of ways:
$groups = Adldap::search()->groups()->get();

foreach($groups as $group) {
        // Using `getFirstAttribute()`
        $info = $group->getFirstAttribute('info');

        // Using `getAttribute()`
        $info = $group->getAttribute('info', 0);

        // Using dynamic property:
        $info = $group->info;
 }

// Query for info field:
$groups = Adldap::search()->groups()->where('info', 'contains', 'MyInfo')->get();

Let me know if you run into issues, thanks!


Adding preference to enable/disable type details in js hinting

Adding preference jscodehints.typedetails to enable/disable type details in js hinting. Default value is true.
.
Styling changes to make the addition UI more subtle ( snapshots attached for light and dark theme for reference )

Looks Better now :+1:
Merging.
Thanks @swmitra


OCPBUGS-26547: remove LoadBalancer filter from external-dns

This is causing the oauth private route to not be registered

/lgtm
/hold


libqalculate: 3.4.0 -> 3.5.0

Semi-automatic update generated by https://github.com/ryantm/nixpkgs-update tools. This update was made based on information from https://repology.org/metapackage/libqalculate/versions.
meta.description for libqalculate is: '"An advanced calculator library"'.
meta.homepage for libqalculate is: '"http://qalculate.github.io"
Release on GitHub
Compare changes on GitHub

Checks done (click to expand)

built on NixOS

The tests defined in passthru.tests, if any, passed

0 of 0 passed binary check by having a zero exit code.

0 of 0 passed binary check by having the new version present in output.

found 3.5.0 with grep in /nix/store/vznvrflxm2ych6lv4mqmrv1vbggv981c-libqalculate-3.5.0

directory tree listing: https://gist.github.com/d46ce2d0fdffb8735729dd42d0d771aa

du listing: https://gist.github.com/43cd7d075d91f597ffd47465b3c09b47

Rebuild report (if merged into master) (click to expand)

81 total rebuild path(s)
27 package rebuild(s)
27 x86_64-linux rebuild(s)
26 i686-linux rebuild(s)
2 x86_64-darwin rebuild(s)
26 aarch64-linux rebuild(s)
First fifty rebuilds by attrpath
kde-cli-tools
kdeplasma-addons
kdev-php
kdev-python
kdevelop
kdevelop-unwrapped
kmenuedit
kwin-tiling
libqalculate
libsForQt5.khotkeys
libsForQt511.khotkeys
libsForQt512.khotkeys
nasc
plasma-desktop
plasma-workspace
plasma5.kde-cli-tools
plasma5.kdeplasma-addons
plasma5.khotkeys
plasma5.kmenuedit
plasma5.plasma-desktop
plasma5.plasma-workspace
plasma5.powerdevil
plasma5.systemsettings
powerdevil
qalculate-gtk
systemsettings
wacomtablet

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/vznvrflxm2ych6lv4mqmrv1vbggv981c-libqalculate-3.5.0 \
  --option binary-caches 'https://cache.nixos.org/ https://r-ryantm.cachix.org/' \
  --option trusted-public-keys '
  r-ryantm.cachix.org-1:gkUbLkouDAyvBdpBX0JOdIiD2/DP1ldF3Z3Y6Gqcc4c=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

(r-ryantm's Cachix cache is only trusted for this store-path realization.)
Or, build yourself:
nix-build -A libqalculate https://github.com/r-ryantm/nixpkgs/archive/618405d19623039e33c8ef2b54a03005ef156837.tar.gz

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/vznvrflxm2ych6lv4mqmrv1vbggv981c-libqalculate-3.5.0
ls -la /nix/store/vznvrflxm2ych6lv4mqmrv1vbggv981c-libqalculate-3.5.0/bin

cc @gebner for testing.

Also updated qalculate-gtk.


Models that are disabled still fail compilation if they are missing vars

To reproduce:

create a model that requires a variable
disable that model in dbt_project.yml
do not supply the variable to the model

If models are disabled they shouldn't impact compilation in any way. Currently this is causing builds to fail to run that should succeed.

^ this is still an issue


Support font-stretch

I want to use the third character of FVD, the font-stretch. For example Din:n4c, which is normal style, normal weight, condensed. At present I get an error saying that this is not a valid font description.

Hi @tremby
FontLoader does not support the font-stretch and font-variant CSS properties.
Does your condensed font defined in a separate font file that the normal font?
If not, then you don't need to specify the condensed font-stretch value, because as soon as the font will be loaded, all possible font stretches will be loaded altogether.

Yes, I know; that's why I'm asking for the feature.
The condensed version is a separate font.


Inventree not using the reports after 12 time upload

Please verify that this bug has NOT been raised before.

[X] I checked and didn't find a similar issue

Describe the bug*
Hi i am playing around with customizing reports. so i took a default report and started modifying this but after 12 uploads (The revision counter is 12 or higher) then it no longer takes my changes. when i rename the same report from test.html to test1.html then it outputs the report with the new markup.
i have testted this several times for buid orders (BOM reports) as well as sales invoices. and for each it was the same result.
Br Martijn
Steps to Reproduce

create a template and upload
change the template and upload.
repeat step 2 over and over

Expected behaviour
it should just load and execute
Deployment Method

[ ] Docker
[X] Bare metal

Version Information
Version Information:
InvenTree-Version: 0.10.0
Django Version: 3.2.16
Database: sqlite3
Debug-Mode: False
Deployed using Docker: False
Active plugins: [{'name': 'InvenTreeBarcode', 'slug': 'inventreebarcode', 'version': '2.0.0'}, {'name': 'InvenTreeCoreNotificationsPlugin', 'slug': 'inventreecorenotificationsplugin', 'version': '1.0.0'}]
Relevant log output
No response

Can you try restarting the server and see if the new report is loaded correctly? There have been reports of a potential cache issue with reports which I haven't been able to isolate yet. Lmk if restarting the server addresses this for you

Hi Oliver,
yes restarting the PC solves the issue. i have created a feature request to add a restart service button to the user pulldown menu (upper richt corner).
we can close this one or reach out if you need my assitence for testing

yes restarting the PC solves the issue.

The entire PC or just the InvenTree application?
What proxy are you using to host / serve the static and media files?

sorry here i'm over asked. i do not know what you are looking for here.
im runnig inventree on a small linux (ubuntu 20 lts) machine.
if you want me to type in any commands feel free to pass them on an i will.
br martijn

during the installation process you would have had to setup some sort of webserver to host the "static" and "media" files - which includes the uploaded report templates. Something like apache, or nginx, etc

@SchrodingersGat I encountered this issue myself when iterating on a report template design.
The even more funky part is that you can even be served different cached templates between refreshes.
Our production setup is bare metal on a VM
Nginx for hosting
Running InvenTree within the standard supervisor systemd service, not "supervisord" command.
To ensure I always had the freshest template loaded, I just systemctl-restarted the supervisor service after each upload.

@LavissaWoW thanks for adding your report. Clearly requiring a server restart is not a good solution, we will need to look into this one further.

Without looking into the code, just thinking about the architecture: The rendering is happening in the Django template engine. So it should not be any external proxies. It could be that the compiled template is cached in production in the configured cache or that the process that is rendering the report is working with a precached version (specific to the worker so that behaviour might be hard to reproduce with fresh worker nodes).
The dev settings run without template caching, production has it enabled. I really think the problem is this particular area. Caching makes generation significantly faster; it would be great to keep that.

Here is some info on caching in Django: https://django.readthedocs.io/en/stable/topics/performance.html#the-cached-template-loader

@mabroens @LavissaWoW can you please update and check that the fix provided in #4706 has indeed addressed the issue?

Okay so there's definitely something between debug enabled or not.
when i switch it on my pages format is gone no longer A4 colors are gone. no comp img is loaded. when switching it back off my report is how i would think i was.


Hierarchical Container returns partial result

Bug in query for Hierarchical containers, when a partial partition key is specifed in query text as filter.
For example, if my container is partitioned with [/Tenant, /User, /Session]. Queries like 'SELECT * from c where c.Tenant = <>' or 'SELECT * from c where c.Tenant = <> and c.User = <>' returns partial results.
This however seems to only happen for a few value of tenant or {tenant and user} combinations.
Example code:
QueryDefinition query1 = new QueryDefinition(
    "SELECT * from c WHERE c.Tenant = @TenantIdInput AND c.User = @UserIdInput")
    .WithParameter("@TenantIdInput", "Contoso")
    .WithParameter("@UserIdInput", "Alice");

using (FeedIterator<dynamic> resultSet = container.GetItemQueryIterator<dynamic>(query1)
{
    while (resultSet.HasMoreResults)
    {
        FeedResponse<dynamic> response = await resultSet.ReadNextAsync();
        PaymentEvent resultEvent = response.First();
        Console.WriteLine($"\nFound item with TenantId: {resultEvent.Tenant}; UserId: {resultEvent.User};");
    }
}

SDK Version: <3.35.0
OS Version (e.g. Windows, Linux, MacOSX)

This issue has been fixed in SDK version 3.35.0.
Workaround: Specify the partition key value in the query request options to get the correct results.
QueryDefinition query1 = new QueryDefinition(
    "SELECT * from c");
PartitionKey partitionKey =  new PartitionKeyBuilder()
            .Add("<TenantId>")
            .Build();
QueryRequestOptions requestOptions = new QueryRequestOptions(){PartitionKey = partitionKey};

using (FeedIterator resultSet = container.GetItemQueryStreamIterator(query1, requestOptions: new() { PartitionKey = partitionKey }))
{
    while (resultSet.HasMoreResults)
    {
        FeedResponse<dynamic> response = await resultSet.ReadNextAsync();
    }
}


fix(client): Fix #4906

Closes https://github.com/prisma/prisma/issues/4906

I ran into this on postgresql specifically when the column is an email address. Something like prisma.$executeRawUPDATE "USER" SET age = age + 1 WHERE "userEmail" = '${userEmail}'
Updating to prisma version 2.15.0 still doesn't work in this case.  I get this warning about "nexus-plugin-prisma": "^0.28.0" - Warning<EMAIL_ADDRESS>does not support<EMAIL_ADDRESS>The supported range is: 2.14.x. This could lead to undefined behaviors and bugs.
Upon running after updating to prisma 2.15.0, I get this exception in the same line of code:
  "message": "\nInvalid `prisma.executeRaw()` invocation:\n\n\n  PANIC in C:\\Users\\runneradmin\\.cargo\\git\\checkouts\\rust-postgres-dc0fca9be721a90f\\87316f0\\tokio-postgres\\src\\query.rs:142:5\nexpected 0 parameters but got 1\n\nThis is a non-recoverable error which probably happens when the Prisma Query Engine has a panic.\n\nhttps://github.com/prisma/prisma/issues/new?body=Hi+Prisma+Team%21+My+Prisma+Client+just+crashed.+This+is+the+report%3A%0A%23%23+Versions%0A%0A%7C+Name++++++++++++%7C+Version++++++++++++%7C%0A%7C-----------------%7C--------------------

Please open an issue about this @kebeney if you think this is something we should look into to possibly fix.


Updated portuguese (PT) translation

Details of Changes

Updated pt-PT strings

Thank you for the retroactive changes! Looks good to me @yaichenbaum

@afonsojramos @veryprofessionaldodo thank you for helping review these pull requests, it's a major help to have issues ironed out so that when we're ready, someone from the team can just take a quick look and approve since all required changes have already been made 🚀

@yaichenbaum you got it! I'll try to get a bit more involved in this project with time! 🚀

Sorry @esibruti , been a little busy and I didn't see I had another PR waiting for review. I will check this not later than tomorrow (hopefully today).

That way, I updated the pr with changes from the last few days and that's how new strings are translated.

@yaichenbaum you got it! I'll try to get a bit more involved in this project with time! 🚀

@afonsojramos looking forward!


[FEATURE] (sources) Split dataset reader into specific types

The current reader uses if blocks to be a virtual/sample reader, function reader, and blob reader. Rather than branching, these variations should be different classes.

partial implementation for sample dataset and sets defined by functions - currently not passing regression suite due to how relations are gathered when defining JOINs


adding the possibility to get the id from a datastore query 2

This is very useful when you need to use the entity id, recovered from a query, as a filter in another request.

I signed it!

@dhermes ok I will write them, maybe tonight
Thank you for the feedback 👍

@alexmnt I don't see those additional tests.

See #4640


Pods cannot reach services

After updating my on-premis cluster to 1.23 and updating calico plugin to 3.24.1 I started facing issues with connecting to pods through services.
Expected Behavior
Pods should be able to connect to other pods through services.
Current Behavior
Currently no connection through services is working, both through DN and IP address.
However, pods are capable of connecting with each other directly through assigned IPs.
I also noticed error on kube-proxy side:
proxier.go:1484] "Failed to execute iptables-restore" err="exit status 1 (iptables-restore: line 1183 failed\n)"

Possible Solution
I wish I knew
Steps to Reproduce (for bugs)
I wish I knew
Context

Your Environment

Calico version - 3.24.1
Orchestrator version (e.g. kubernetes, mesos, rkt): 1.23
Operating System and version: Ubuntu 20.04 LTS on all nodes

i have same problem, is any solution?


Add init support for --target wasm32-wasi

Closes: https://github.com/sodiumoxide/sodiumoxide/issues/347
Linked issues: https://github.com/jedisct1/libsodium/issues/872

@sodiumoxide/owners I am confused.
#[cfg(target_arch = "wasm32")]
fn build_libsodium() {
   std::compile_error!("wasm32")
}

#[cfg(target_arch = "")] // or comment out fn build_libsodium
fn build_libsodium() {
...

Then try to compile cargo build --target wasm32-wasi:
error[E0425]: cannot find function `build_libsodium` in this scope
  --> libsodium-sys/build.rs:64:9
   |
64 |         build_libsodium();
   |         ^^^^^^^^^^^^^^^ not found in this scope

Does anybody have an idea why?

Alright. Good news. I managed to make all tests pass except for these three:

https://github.com/sodiumoxide/sodiumoxide/blob/fbfe0392ed569d8da8f17af5bbad2905e2518449/src/utils.rs#L242
https://github.com/sodiumoxide/sodiumoxide/blob/fbfe0392ed569d8da8f17af5bbad2905e2518449/src/crypto/sign/ed25519.rs#L356
https://github.com/sodiumoxide/sodiumoxide/blob/fbfe0392ed569d8da8f17af5bbad2905e2518449/src/crypto/sign/ed25519.rs#L387

If someone wants to help me to debug ed25519::test tests, here is how you can run them:
cargo test --target wasm32-wasi -- -- crypto::sign::ed25519::test::test_vectors --nocapture

@jedisct1 mlock does not work for wasm32. Is it an intended behavior?

Memory protection doesn't exist in WebAssembly.
It's just one big, linear, MSDOS-like memory region with absolutely zero protection, even against reading/writing to NULL.

Wontfix

Wontfix


task_cls

Hi there. I'm working with a repository where we've overridden the default task class and added some methods, and we're using task_cls to initialize Celery with this as the default class. I'm seeing lots of errors about these custom methods not existing, and I think this is because celery-types doesn't support task_cls.
Is this something you'd be open to supporting in the future?

Here's the Celery documentation we used to make these changes, in case it's useful: https://docs.celeryq.dev/en/latest/userguide/tasks.html#custom-task-classes

yeah totally open to it, seems a little tricky, might have to add an explicit generic to param to Celery
https://docs.celeryq.dev/en/latest/userguide/tasks.html#app-wide-usage

any workaround available? My current solution is disabling the typing check there
@app.task(name="handle_request", bind=True)  # type: ignore
def handle_request(self: SessionTask):
    ...

My workaround: define a custom CustomCelery subclass of Celery that uses your CustomTask everywhere that Task would be used.
_Task = TypeVar("_Task", bound=CustomTask[Any, Any])

class CustomCelery(Celery):
    """
    HACK: Required until https://github.com/sbdchd/celery-types/issues/95 is resolved.
    """

    @overload  # type: ignore[override, no-overload-impl]
    def task(self, fun: Callable[Params, Return]) -> CustomTask[Params, Return]:
        ...

    @overload
    def task(
        self,
        *,
        name: str = ...,
        serializer: str = ...,
        bind: bool = ...,
        autoretry_for: tuple[type[Exception], ...] = ...,
        max_retries: int = ...,
        default_retry_delay: int = ...,
        acks_late: bool = ...,
        ignore_result: bool = ...,
        soft_time_limit: int = ...,
        time_limit: int = ...,
        base: type[_Task],
        retry_kwargs: dict[str, Any] = ...,
        retry_backoff: bool | int = ...,
        retry_backoff_max: int = ...,
        retry_jitter: bool = ...,
        typing: bool = ...,
        rate_limit: str | None = ...,
        trail: bool = ...,
        send_events: bool = ...,
        store_errors_even_if_ignored: bool = ...,
        autoregister: bool = ...,
        track_started: bool = ...,
        acks_on_failure_or_timeout: bool = ...,
        reject_on_worker_lost: bool = ...,
        throws: tuple[type[Exception], ...] = ...,
        expires: float | datetime.datetime | None = ...,
        priority: int | None = ...,
        resultrepr_maxsize: int = ...,
        request_stack: _LocalStack = ...,
        abstract: bool = ...,
        queue: str = ...,
    ) -> Callable[[Callable[..., Any]], _Task]:
        ...

    @overload
    def task(
        self,
        *,
        name: str = ...,
        serializer: str = ...,
        bind: Literal[False] = ...,
        autoretry_for: tuple[type[Exception], ...] = ...,
        max_retries: int = ...,
        default_retry_delay: int = ...,
        acks_late: bool = ...,
        ignore_result: bool = ...,
        soft_time_limit: int = ...,
        time_limit: int = ...,
        base: None = ...,
        retry_kwargs: dict[str, Any] = ...,
        retry_backoff: bool | int = ...,
        retry_backoff_max: int = ...,
        retry_jitter: bool = ...,
        typing: bool = ...,
        rate_limit: str | None = ...,
        trail: bool = ...,
        send_events: bool = ...,
        store_errors_even_if_ignored: bool = ...,
        autoregister: bool = ...,
        track_started: bool = ...,
        acks_on_failure_or_timeout: bool = ...,
        reject_on_worker_lost: bool = ...,
        throws: tuple[type[Exception], ...] = ...,
        expires: float | datetime.datetime | None = ...,
        priority: int | None = ...,
        resultrepr_maxsize: int = ...,
        request_stack: _LocalStack = ...,
        abstract: bool = ...,
        queue: str = ...,
    ) -> Callable[[Callable[Params, Return]], CustomTask[Params, Return]]:
        ...

    @overload
    def task(
        self,
        *,
        name: str = ...,
        serializer: str = ...,
        bind: Literal[True],
        autoretry_for: tuple[type[Exception], ...] = ...,
        max_retries: int = ...,
        default_retry_delay: int = ...,
        acks_late: bool = ...,
        ignore_result: bool = ...,
        soft_time_limit: int = ...,
        time_limit: int = ...,
        base: None = ...,
        retry_kwargs: dict[str, Any] = ...,
        retry_backoff: bool | int = ...,
        retry_backoff_max: int = ...,
        retry_jitter: bool = ...,
        typing: bool = ...,
        rate_limit: str | None = ...,
        trail: bool = ...,
        send_events: bool = ...,
        store_errors_even_if_ignored: bool = ...,
        autoregister: bool = ...,
        track_started: bool = ...,
        acks_on_failure_or_timeout: bool = ...,
        reject_on_worker_lost: bool = ...,
        throws: tuple[type[Exception], ...] = ...,
        expires: float | datetime.datetime | None = ...,
        priority: int | None = ...,
        resultrepr_maxsize: int = ...,
        request_stack: _LocalStack = ...,
        abstract: bool = ...,
        queue: str = ...,
    ) -> Callable[
        [Callable[Concatenate[CustomTask[Params, Return], Params], Return]],
        CustomTask[Params, Return],
    ]:
        ...

And then use that annotation:
celery_app: CustomCelery = celery.Celery("foo", task_cls=CustomTask)  # type: ignore[assignment]

This is hacky and brittle and I'm unhappy with it, but it only requires two type ignores rather than one per task.

Yep, same as yours. I have some custom init / methods / etc, but the important bits are the same:
Params = ParamSpec("Params")
Return = TypeVar("Return")

class CustomTask(Task[Params, Return]):
   ...


docs: correct syntax of a sentence from the long-term-retention

Hi there,
I found one sentence to be very confusing, and I corrected it.
I let the final call to your appreciation.
All the best

@fbraza : Thanks for your contribution! The author(s) have been notified to review your proposed change.

Looks like a good fix and the intended meaning. We'll merge the PR. Thanks @fbraza.


Getting error in Parameter Encoding after the update to the latest release

Hi,
I am getting an error after updating to the latest release. Error message

ParameterEncoding has no member JSON

My code
public var parameterEncoding: Moya.ParameterEncoding {
        switch self {
        case .Search(_):
            println("parameterEncoding for .Search: JSON")
            return .JSON
        default:
            println("default parameterEncoding: URL")
            return .URL
        }
    }

I am using  this version of Moya 'Moya', '8.0.0-beta.2'
Please help

Hey there @kanishkatn. There was an update for ParameterEncoding type in Alamofire, so we had to adapt as well. Everything should be clean when you read it here. Basically there is no enum anymore, just a protocol that you have to implement. There are also 3 predefined types that you can use: URLEncoding, JSONEncoding, PropertyListEncoding. These you can use by .default property, like: JSONEncoding.default in your case.
Hope it helps! 👊

Closing this for now, please reopen if you run into any issues with @sunshinejr's explanation.


Request: LinkedIn

Would it be possible to add the LinkedIn logo? I can fake with text and a clipping shape, but it would be nice to have a symbol I can use.
Thanks for your hard work on this repo. Definitely came in clutch for me 🙂

Good idea

Delivered in 1.0.8 release


Added feature flags for the old webchat and new genesys web message

Issue #: /bcgov/entity#15183
Description of changes:

Added feature flags for the old webchat and the new Genesys web message component.
Similar to Namerequest UI: https://github.com/bcgov/namerequest/pull/589

By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of the bcrs-entities-create-ui license (Apache 2.0).

~LGTM~
I spoke too soon -- some unit tests are broken. Look for other places where getFeatureFlag is used for the work-around.

Unit tests saved me. Apparently, the get feature flag method in this repo is GetFeatureFlag() while in the Namerequest UI repo, it's getFeatureFlag().

Looks good. Thanks Karim

Thanks Jonathan!


Update Run Events Tags

We've decided to simply keep these region tags together.

@jskeet It'd be nice to get this merged for more samples I'm working on. Do all reviewers need to approve or only one and do we need to assign to you or Amanda for merge (just trying to understand the process)?

@meteatamel: Amanda "owns" this repo - I couldn't tell you exactly what process she wants on that front. I also don't know whether the two Kokoro failures are a problem or not.

Force merging, CI failures are unrelated.

Awesome, thanks @amanda-tarafa!


Exceptions for plus-lighter workaround to fix white grid

The current workaround for tile gaps in Chrome has the unfortunate side effect of creating a white grid at certain browser zoom levels, see https://github.com/Leaflet/Leaflet/issues/3575#issuecomment-1881642439, likely fixes #9399.
This grid can however be removed with a few exceptions in CSS for specific pixel ratios. A few very thin black lines still remain but are far less distracting. I made extensive tests here.
currently at 110%

with CSS exceptions

Unfortunately this doesn't fix everything, most notably 90%, but still I think this improvement is worth 1.9.5.

 I think it's due to their sub-pixel translation. It's only an issue on Chrome, Firefox is perfect no matter what.

After further testing with non-standard pixel ratios, I found that the plus-lighter trick only works with zoom levels that are multiples of 25 (75%, 100%, 125%...)
So instead of adding a few exceptions, I changed it to apply only to those specific pixel ratios where it’s been confirmed to work.
The blurring issue isn’t always present and is much less noticeable than the gaps anyway.


Setting an overlay dynamically in an Ionic app

Hi there!
I'm creating an Ionic App and using the angular-openlayer-directive. So far it works but one problem still remains: On a click event on the map I fetch some properties of a feature and want to show them in an overlay. Depending on how I navigate (ui-route) to that view it works ... or not. A reload often helps. I even can see the overlay's html code in the page source but it is not visible.
To avoid race conditions, I added the html element in javascript not loading it from the html. I already spent a lot of time in that issue.
Does anybody have some experience in that frame work combination - angular, ionic, openlayers? I think you should.
Best and thanks in advance.
Thomas

Done something like this with angular, openlayers and phonegap. Started from this OL3 example http://openlayers.org/en/v3.4.0/examples/popup.html and it worked just fine. I plugged it with the directive like this (simplified version because my code is far more complicated):
...
olData.getMap().then( function(map) {
            // Create the overlaay
            var popup = new ol.Overlay({ element: $window.document.getElementById('popup') });
            map.addOverlay(this.popup);

            $scope.on('openlayers.map.pointerdown', function(event, data) {
              var feature = map.forEachFeatureAtPixel(data.event.pixel, function(feature) {
                  return feature;
              });
              // Show/Hide popup
              if ( feature ) {
                  var html = '
popup
';
                  $window.document.getElementById('popup-content').innerHTML = html;
                  popup.setPosition(data.coord);
              } else {
                  popup.setPosition(undefined);
                  return;
             }});
}
...

Hey @claustres - thank you for that snippet of code. Works like a dream!

Awesome guys :smile: . May I close this issue?

Yes, but before I might add a usefull tip, if you want to have some AnuglarJS code in your popup content then you will have to compile it like this:
        var popupContent = $window.document.getElementById('popup-content');
        // Update popup content
        popupContent.innerHTML = html;
        // As we have an angular directive in generated HTML we need to compile it
        $compile(popupContent)($scope);

:+1:

https://github.com/souly1/ng-walkthrough


support < and > in addition to <= and >=

apparently right now we dont :facepalm:

this is now done


Failure to load texture atlas in load.multiatlas()

Hi,
I attempted to load using load.multiatlas() and tried to load with texturepacker,
but a prefix that I do not remember setting, "MA0_", is added to the image path, causing the image load to fail.
It seems that loading works fine when not using vite. Please provide a solution.
code:
this.load.multiatlas("sprites", "spritesheets/sprites.json");

error:
main.ts:30 Failed to process file: image "MA0_sprites-0.png"
main.ts:30 File failed: multiatlas "sprites" (via image "MA0_sprites-0.png")
main.ts:30 Failed to process file: image "MA0_sprites-1.png"
main.ts:30 File failed: multiatlas "sprites" (via image "MA0_sprites-1.png")

It seemed to be caused by load.setPath(). I will close this for now.


Change Package Assignment

Previously, if an object was assigned to another package (but not changed otherwise), AG would delete and re-create the object. This was also visible in the "Selective Pull" popups:

The new process is smarter and detects such changes. It re-assigns the package (via a TADIR change) and avoids dropping and re-creating, which is much faster. The package overwrite popup is also avoided (it will still appear if the object itself was changed, too):

Closes #4274 and #4974

can this PR be merged? will it mess up the other open PRs regarding package change?

good to go from my side. @sbcgua?


Improvement in UI

Hey, I would like to improve the UI of homepage I would like to add some animations and change some font-color and font-style. It would be nice if you could assign this issue to me.

@Adimaniac31
we belive the ui for homepage is already good and we do not wish to bring any changes in it. if you wish to improve the UI, can you help in the admin panel and student panel.
they can be accessed by the adding /student and /admin in the base url

Yeah, sure I can work on that

Okay thanks, can you assign me this issue?

Go Ahead! I have assigned the issue to you @Adimaniac31  .
Work on a new branch with the feature as the branch name.
When you create a pull request, request review from @rohitagr0310 , @jain-anshika or , @qaidjoharj53

can you also specify which panel you wish to work upon

Sure, I will be working on student panel.

Great


Low aura README

Rizzify the readme to
This ain't your regular Neovim config update – we straight up maxed out the brainrot, infused that sigma energy, and turned LazyVim into a skibidi rizz banger. Here's what's poppin' in this pull:

✅ Rizzified all features for full meme-optimized clarity.

Happy coding, and remember – with LazyVim, you're not just coding, you're leveling up!

close by #684ca3147591cee004c4ad9c95706da4e2e7ceb7


Can I receive notifications in android when app is running without an UI interface?

Hello
Can I receive notifications in android when app is running without the need of writing an UI interface?
Just like in iOS, on the top of the screen, like a banner with sound...
#51

You mean on background?

no, on foreground

Just release support for this on:
https://www.nuget.org/packages/Plugin.FirebasePushNotification/2.1.2-beta
Depending on the value of "priority" key in your data payload. It will set the notification priority. Posible values are: "max", "high","default","low","min".
The behaviour for these values:
MAX Use for critical and urgent notifications that alert the user to a condition that is time-critical or needs to be resolved before they can continue with a particular task.
HIGH Use primarily for important communication, such as message or chat events with content that is particularly interesting for the user. High-priority notifications trigger the heads-up notification display.
DEFAULT Use for all notifications that don't fall into any of the other priorities described here and if the application does not prioritize its own notifications
LOW Use for notifications that you want the user to be informed about, but that are less urgent. Low-priority notifications tend to show up at the bottom of the list, which makes them a good choice for things like public or undirected social updates: The user has asked to be notified about them, but these notifications should never take precedence over urgent or direct communication.
MIN Use for contextual or background information such as weather information or contextual location information. Minimum-priority notifications do not appear in the status bar. The user discovers them on expanding the notification shade.
If no priority is set then "priority" is default.
For heads-up notification send inside your payload data key "priority" : "high" within your other keys:
{
   "data" : {
     "priority":"high"
  }
}

Note: This is an exclusive Android feature, doesn't do nothing on iOS.

I will try it today, thanks

Ok, I installed version 2.1.2-beta
Priority only works with "high"
"max", "default", "low" and "min" give this error:
Error on the remote server: (400) Incorrect request.
  "data" : {
      "priority": "max",
      "notification" : {
          "body"   : "test",
          "title"     : "title",
          "sound" : "Default",
       },
      "condition": "'t_android' in topics && 't_en' in topics",
  },

Your payload should be:
"data" : {
             "priority": "max",
              "body"   : "test",
              "title"     : "title",
              "sound" : "default",
              "condition": "'t_android' in topics && 't_en' in topics",
      },

Ok, now I don't get an error but  I don't receive the notifications with any priority assigned:
{
    "data" : {
        "priority": "high",
        "body"    : "body",
        "title"   : "title",
        "sound"   : "default",
    },
    "condition": "'t_android' in topics && 't_en' in topics",
},

It says message sent:
{"message_id":6545698582888474852}

Ok
Now I receive the notifications in android with the app in the foreground with any priority, I don't see a difference though.
But in the background or with the app killed, I don't receive any notifications with any priority

Check 3 and 4 on the FAQ section to see if your issue is related to one of those.

Not related

if I use notification messages on android I receive all notifications, back and foreground and killed, when I use data messages instead I only receive notifications in foreground (without any code change)

Code block is same as your tutorial, haven't change anything, it was working on  1-1-beta, I installed 1-2-beta and change the payload as you suggested and now I don't receive notifications in background or when killed

This is on iOS, android or both?

I have only tested on Android

Try on latest version

helo

when clicking notification is not redirecting to page when app is background or killed


ENH: check alphabet compatibility in SeqView coercion

[NEW] new_sequence._coerce_to_seqview provided a SeqView instance
checks that the alphabet is compatible with the provided one
by confirming the shared states have the same indexes.
Summary by Sourcery
Enhance SeqView coercion to check for alphabet compatibility by verifying that shared state indexes are the same, and add tests to ensure correct behavior and error handling for incompatible alphabets.
Enhancements:

Ensure SeqView coercion checks for alphabet compatibility by verifying shared state indexes.

Tests:

Add tests for SeqView coercion to verify alphabet compatibility and handle incompatible alphabets.

Pull Request Test Coverage Report for Build<PHONE_NUMBER>4
Details

4 of 4 (100.0%)  changed or added relevant lines in 1 file are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+0.009%) to 91.94%

Totals

Change from base Build<PHONE_NUMBER>0:
0.009%

Covered Lines:
32385

Relevant Lines:
35224

💛  - Coveralls


phantom video restarts in background tabs

Had this happen to me and heard complaints from other users in various browsers - paused videos will just start to play back randomly in a background tab. Not sure if it's the browser reloading something, but should try to prevent this in some way.

How do I reproduce this? I haven't experienced that behavior before. Which browsers?

How do I reproduce this? I haven't experienced that behavior before. Which browsers?

Okay I experienced this last night. Seems like something is triggering a reload of the site on it's own. Not sure what / where right now though

Okay I experienced this last night. Seems like something is triggering a reload of the site on it's own. Not sure what / where right now though

It happends for me in this scenario. Disconnect from network or lose internet connection. After a while you get a
"There is a bug... Somewhere
Try refreshing"..  message on screen with a Update button.
When the networks connection comes back to life it will reload by itself and autoplay any paused video.


Bluetooth examples

Now that Pico W has support for Bluetooth (yey!), is there any plan to port the C/C++ examples to Micropython?

That's probably a question for https://github.com/orgs/micropython/discussions/categories/ports-rp2040-pico ?

MicroPython has its own set of BLE examples.  There are the standard ones at https://github.com/micropython/micropython/tree/master/examples/bluetooth, and then the aioble ones at https://github.com/micropython/micropython-lib/tree/master/micropython/bluetooth/aioble/examples


Add MultiQuery transformation

Relates to #155
See also https://python.langchain.com/v0.1/docs/modules/data_connection/retrievers/MultiQueryRetriever/

Nice @f-lombardo , I didn't know this


The readme.md in grpc_service

In README.md the inference_server.py and inference_client.py shouldn't be predict_server.py and predict_client.py?

Thanks @burness . That's right and I'm gonna refactor the code of inference services.

@tobegit3hub  Nice!!! can't wait for it

I have updated the code for gRPC and HTTP inference services.
You can find out the gRPC server in https://github.com/tobegit3hub/deep_recommend_system/tree/master/cpp_predict_server and the gRPC client in https://github.com/tobegit3hub/deep_recommend_system/tree/master/python_predict_client .
Hope it helps 😃


Patch fails with OpenSSL 1.0.2i

Unfortunately I cannot patch the new OpenSSL 1.0.2i.

$ wget "https://raw.githubusercontent.com/cloudflare/sslconfig/master/patches/openssl__chacha20_poly1305_draft_and_rfc_ossl102g.patch"

$ patch -p1 < openssl__chacha20_poly1305_draft_and_rfc_ossl102g.patch
patching file Configure
Hunk #1 succeeded at 150 (offset 4 lines).
Hunk #2 succeeded at 714 (offset 4 lines).
Hunk #3 succeeded at 757 (offset 4 lines).
Hunk #4 succeeded at 1213 (offset 1 line).
Hunk #5 succeeded at 1242 (offset 1 line).
Hunk #6 succeeded at 1410 (offset 2 lines).
Hunk #7 FAILED at 1561.
Hunk #8 succeeded at 1754 (offset 11 lines).
Hunk #9 succeeded at 1817 (offset 11 lines).
Hunk #10 succeeded at 2216 (offset 11 lines).
Hunk #11 succeeded at 2247 (offset 11 lines).
1 out of 11 hunks FAILED -- saving rejects to file Configure.rej
patching file Makefile.org
Hunk #1 succeeded at 92 (offset 1 line).
Hunk #2 succeeded at 150 (offset 1 line).
Hunk #3 succeeded at 237 (offset 2 lines).
patching file apps/speed.c
patching file crypto/chacha20poly1305/Makefile
patching file crypto/chacha20poly1305/asm/chacha20_avx.pl
patching file crypto/chacha20poly1305/asm/chacha20_avx2.pl
patching file crypto/chacha20poly1305/asm/poly1305_avx.pl
patching file crypto/chacha20poly1305/asm/poly1305_avx2.pl
patching file crypto/chacha20poly1305/asm/poly1305_x64.pl
patching file crypto/chacha20poly1305/chacha20.c
patching file crypto/chacha20poly1305/chacha20poly1305.h
patching file crypto/chacha20poly1305/chapolytest.c
patching file crypto/chacha20poly1305/poly1305.c
patching file crypto/cryptlib.c
patching file crypto/evp/Makefile
Hunk #3 succeeded at 266 (offset 1 line).
patching file crypto/evp/e_chacha20poly1305.c
patching file crypto/evp/evp.h
patching file ssl/s3_lib.c
Hunk #1 succeeded at 2945 (offset 54 lines).
Hunk #2 succeeded at 4195 (offset 54 lines).
Hunk #3 succeeded at 4229 (offset 54 lines).
Hunk #4 succeeded at 4251 (offset 54 lines).
patching file ssl/ssl.h
patching file ssl/ssl_ciph.c
Hunk #2 succeeded at 364 (offset -1 lines).
Hunk #3 succeeded at 436 (offset -1 lines).
Hunk #4 succeeded at 591 (offset -1 lines).
Hunk #5 succeeded at 812 (offset -1 lines).
patching file ssl/ssl_locl.h
patching file ssl/tls1.h
patching file test/Makefile
Hunk #1 FAILED at 71.
Hunk #2 FAILED at 84.
Hunk #3 FAILED at 98.
Hunk #4 FAILED at 109.
Hunk #5 succeeded at 150 (offset 5 lines).
Hunk #6 succeeded at 380 with fuzz 2 (offset 14 lines).
Hunk #7 succeeded at 570 with fuzz 2 (offset 20 lines).
Hunk #8 succeeded at 660 (offset 39 lines).
4 out of 8 hunks FAILED -- saving rejects to file test/Makefile.rej

$ cat Configure.rej
--- Configure
+++ Configure
@@ -1561,6 +1564,14 @@ $bf_obj=$bf_enc		unless ($bf_obj =~ /\.o$/);
 $cast_obj=$cast_enc	unless ($cast_obj =~ /\.o$/);
 $rc4_obj=$rc4_enc	unless ($rc4_obj =~ /\.o$/);
 $rc5_obj=$rc5_enc	unless ($rc5_obj =~ /\.o$/);
+if ($chapoly_obj =~ /\.o$/)
+	{
+	$cflags.=" -DCHAPOLY_x86_64_ASM";
+	}
+else
+	{
+	$chapoly_obj=$chapoly_enc;
+	}
 if ($sha1_obj =~ /\.o$/)
 	{
 #	$sha1_obj=$sha1_enc;

yup same here https://community.centminmod.com/posts/36691/
ccache gcc -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include  -fPIC -DOPENSSL_PIC -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -Wa,--noexecstack -m64 -DL_ENDIAN -O3 -Wall -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DRC4_ASM -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DWHIRLPOOL_ASM -DGHASH_ASM -DECP_NISTZ256_ASM   -c -o e_rc4_hmac_md5.o e_rc4_hmac_md5.c
ccache gcc -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include  -fPIC -DOPENSSL_PIC -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -Wa,--noexecstack -m64 -DL_ENDIAN -O3 -Wall -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DRC4_ASM -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DWHIRLPOOL_ASM -DGHASH_ASM -DECP_NISTZ256_ASM   -c -o e_chacha20poly1305.o e_chacha20poly1305.c
e_chacha20poly1305.c: In function 'EVP_chacha20_poly1305_cipher':
e_chacha20poly1305.c:82:57: error: 'EVP_CHACHA20_POLY1305_CTX' has no member named 'poly_state'
     #define poly_update(c,i,l) CRYPTO_poly1305_update(&c->poly_state,i,l)
                                                         ^
e_chacha20poly1305.c:228:9: note: in expansion of macro 'poly_update'
         poly_update(aead_ctx, in, inl);
         ^
e_chacha20poly1305.c:251:9: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
         ((uint64_t *)(aead_ctx->nonce))[4]--;

@HansVanEijsden @centminmod You could easily fix the patch for OpenSSL 1.0.2i yourself.
Because the OpenSSL 1.0.2i code changed the < OpenSSL 1.0.2i based patch can't find the requested code (via the @@ position and location) and fails.
View the rejected code in the affected .rej files and reinsert it
into the OpenSSL 1.0.2i base in the right place.
Then diff the old vs new and update your patch.
Easy Peasy.
No reason to ask Cloudflare every time for an up-to-date patch 123456.
They have better things to do.
Their task is accomplished with the release of the source.
Desired own efforts, not dependent on another.

@xetorixik Come on, be a bit friendly to this community here. Do you have a working patch?

Apply Cloudflare's patch, then re-add the reject 8 lines back in. If you need a patch for it, you can use: https://gist.github.com/charlesportwoodii/9e95c6a4ecde31ea23c17f6823bdb320.

I backported the complete patch for 1.0.2i: https://github.com/Whissi/openssl/commit/5f22ddce5c2f301e9e6b2d38315e44388cefce5d

@rugk it is friendly intended.
@HansVanEijsden linkedin profile, writes about Gymnasium (type of school).
He is more than smart enough to adapt to 5 to 10 lines in the code.
Get out of your own strength :)
Separately, hours or a day or so after the release of a new
Openssl version there are more than enough up-to-date (fork) patches on github.
No reason thereby to bother Cloudflare time after time for 8 lines changed patches.

Hi everyone,
I am very excited to see so much interest in this patch, and thank you for the support @xetorixik :) I will try to update it next week.

writes about Gymnasium (type of school).

Ah, ehm, that's the secondary school, or high school or grammar school. School systems are sometimes different. :smiley:

@rugk rugk Highest achievable in the Netherlands regarding high school.
@vkrasnov Your chacha patch is awesome so thank you, next stop if you ask me, releasing Cloudflare's Nginx http/2 server push patch :)

Thanks Wissi.

Updated to 1.0.2j.


[GetConnect] ADD HTTP PATCH REQUEST

I need to send a PATCH request to the server.
I have resources on the server that implement the PATCH verb to modify parts of a document.
Could you add this feature in the same way as POST and PUT?
Example:
PATCH / groups / {group id} {"attributes": {"status": "active"}} response: 200 OK
PATCH / groups / {group id} {"attributes": {"status": "deleted"}} response: 406 Not Acceptable
MDN PATCH reference
Thanks.

Added on 3.24


'read.utc-timezone=false' has no effect on writes

Tips before filing an issue
hudi 0.14.0 hudi-flink-bundle The COW/MOR table type writes timestamp data, and the time zone for writing data when read.utc-timezone=false is set is still the UTC time zone.
AvroToRowDataConverters and RowDataToAvroConverters timestamp time zone conversion is hardcoded to UTC time zone.
Describe the problem you faced

hudi-flink1.13-bundle-0.14.0-rc1 write timestamp does not support configuration time zone type
The read.utc-timezone attribute only takes effect when the data is read

To Reproduce
Steps to reproduce the behavior:

./bin/sql-client.sh embedded -j hudi-flink1.13-bundle-0.14.0-rc1.jar shell
When setting read.utc-timezone=true, it is normal to write query timestamp data
When setting read.utc-timezone= false to write data, the query time will be -8 hours

Flink SQL> select LOCALTIMESTAMP as tm, timestamph from hudi_mor_all_datatype_2 where inth=44;
+----+-------------------------+-------------------------+
| op |                      tm |              timestamph |
+----+-------------------------+-------------------------+
| +I | 2023-08-11 10:36:38.793 | 2023-08-11 03:10:17.267 |
+----+-------------------------+-------------------------+

Expected behavior
hudi-flink1.13-bundle supports writing timestamps in non-UTC time zones in a configurable way
Environment Description

Hudi version : 0.14.0

Spark version : 3.2.0

Flink version: 1.13.2

Hive version : 1.11.1

Hadoop version : 3.x

Storage (HDFS/S3/GCS..) : HDFS

Running on Docker? (yes/no) : no

Related code location
public class AvroToRowDataConverters {
// ...
  private static AvroToRowDataConverter createTimestampConverter(int precision) {
    // ...
    return avroObject -> {
      final Instant instant;
      if (avroObject instanceof Long) {
        instant = Instant.EPOCH.plus((Long) avroObject, chronoUnit);
      } else if (avroObject instanceof Instant) {
        instant = (Instant) avroObject;
      } else {
        JodaConverter jodaConverter = JodaConverter.getConverter();
        if (jodaConverter != null) {
          // joda time has only millisecond precision
          instant = Instant.ofEpochMilli(jodaConverter.convertTimestamp(avroObject));
        } else {
          throw new IllegalArgumentException(
              "Unexpected object type for TIMESTAMP logical type. Received: " + avroObject);
        }
      }
      // TODO：Hardcoded to UTC here
      return TimestampData.fromInstant(instant);
    };
  }
// ...
}

public class RowDataToAvroConverters {
// ...
  public static RowDataToAvroConverter createConverter(LogicalType type) {
  // ...
          case TIMESTAMP_WITHOUT_TIME_ZONE:
        final int precision = DataTypeUtils.precision(type);
        if (precision <= 3) {
          converter =
              new RowDataToAvroConverter() {
                private static final long serialVersionUID = 1L;

                @Override
                public Object convert(Schema schema, Object object) {
                  // TODO：Hardcoded to UTC here
                  return ((TimestampData) object).toInstant().toEpochMilli();
                }
              };
        } else if (precision <= 6) {
          converter =
              new RowDataToAvroConverter() {
                private static final long serialVersionUID = 1L;

                @Override
                public Object convert(Schema schema, Object object) {
                  // TODO：Hardcoded to UTC here
                  Instant instant = ((TimestampData) object).toInstant();
                  return  Math.addExact(Math.multiplyExact(instant.getEpochSecond(), 1000_000), instant.getNano() / 1000);
                }
              };
        } else {
          throw new UnsupportedOperationException("Unsupported timestamp precision: " + precision);
        }
        break;
  // ...
  }
// ...
}

You are right, the write now only supports UTC timezone, cc @SteNicholas Do you think we should support the local timezone write ?
@JingFengWang Did you try to set up the timestamp of table as type TIMESTAMP_LTZ type ?

@JingFengWang, you could use TIMESTAMP_LTZ type to solve the above problem. I have tested that uses TIMESTAMP_LTZ type and worked well.

You are right, the write now only supports UTC timezone, cc @SteNicholas Do you think we should support the local timezone write ?
@JingFengWang Did you try to set up the timestamp of table as type TIMESTAMP_LTZ type ?

@danny0405 can fix it in https://github.com/apache/flink/pull/23220，support time function with timezone cc @JingFengWang

You are right, the write now only supports UTC timezone, cc @SteNicholas Do you think we should support the local timezone write ?
@JingFengWang Did you try to set up the timestamp of table as type TIMESTAMP_LTZ type ?

yes

We use spark for batch computing, because the batch computing capability of flink-1.13.2 is unstable
Spark needs to read and write hive and hudi tables at the same time, spark.sql.session.timeZone is configured as local timezone
Due to the status of spark+hive, 'spark.sql.session.timeZone=UTC' cannot be configured on the platform side

You are right, the write now only supports UTC timezone, cc @SteNicholas Do you think we should support the local timezone write ?
@JingFengWang Did you try to set up the timestamp of table as type TIMESTAMP_LTZ type ?

flink upsert to hudi with timestamp type would use utc timezone，currently we can use udf or expand it like https://github.com/apache/flink/pull/23220；so we can keep hudi timezone consistent with hive @danny0405

@JingFengWang, you could use TIMESTAMP_LTZ type to solve the above problem. I have tested that uses TIMESTAMP_LTZ type and worked well. Meanwhile, I think we could support the local timezone write to help users to avoid this problem.

This solution is not applicable in our usage scenario

We use flink and spark to implement streaming batch computing
We have unified metadata and used spark to build tables

Fine, we may need to consider a general solution for both Flink read/writer of timestamp.

Fine, we may need to consider a general solution for both Flink read/writer of timestamp.

OK, thanks!


Migrate to ReCaptcha v2.0

outdated recaptcha-client replaced with django-nocaptcha-recaptcha that allows to keep things simpler. Just add NoReCaptchaField to the form.
recaptcha_size field added to the model and also recaptcha_theme updated with new values
RECAPTCHA_PUBLIC_KEY and RECAPTCHA_PRIVATE_KEY left for backward compatibility
DB migration included
all locales updated, russian translation updated also
some PEP8ing

Oh, my fault. Next commit fix it :)  can you cherrypick it or should i rework PR?14:16, 5 июля 2018 г., "Marc-Stefan Cassola" notifications@github.com:@maccesch requested changes on this pull request.
Awesome pull request, thanks! Just the accidental w 😀
In README.rst:

@@ -1,4 +1,4 @@
-==============================
+w==============================

Could you remove the "w" please?
—You are receiving this because you authored the thread.Reply to this email directly, view it on GitHub, or mute the thread.
Отправлено из мобильной Яндекс.Почты: http://m.ya.ru/ymail


Hi @Wayne-pw,
We currently do not have the support for Deconvolution layer. If you could comment about the model you're using I can make sure that information is made available to the development team.
You can also check the below documentation which mentions the layers supported by ArmNN.
https://github.com/ARM-software/armnn/blob/master/src/armnnCaffeParser/CaffeSupport.md
https://github.com/ARM-software/armnn/blob/master/src/armnnTfParser/TensorFlowSupport.md
Thanks,
Surabhi

Hi @Wayne-pw,
It would be great if you could provide us with the model information. If not, I completely understand.
Thanks,
Surabhi


unable to remove member; unable to setup cluster

On etcd-2.2.0 I'm trying to setup cluster for the very first time (I'm new to etcd). It is so incredibly hard that after 5+ hours of continuous effort I still can't bootstrap second node. Could someone please point out clear setup instructions or better update documentation (particularly "Add New Member" section) with working example please?
Anyway, local etcd works fine and responds to ls, set, and get commands.
But when I etcdctl member add node2 http://node2:2380 cluster becomes unhealthy and cluster-health report unreachable member (node2, because it is not bootstraped yet). I fail to initialise node2: suggested ETCD_INITIAL_CLUSTER="node2=http://node2:2380,deblab=http://localhost:2380,deblab=http://localhost:7001 (where localhost comes from?) does not work and alterations to ETCD_INITIAL_CLUSTER cause failure of  etcd to start on node2 due to "error validating peerURLs", "unmatched member while checking PeerURLs".
I'm giving up and trying to remove "[unstarted]" member with etcdctl member remove and getting "Recieved an error trying to remove member 69d73025e8d31e13: client: etcd cluster is unavailable or misconfigured" at which point etcd on first node seems broken beyond recovery... :(
Is there a way to remove uninitialised member i.e. revert etcdctl member add??
Thanks.

@onlyjob could you provide much more information? how you setup your first node and setup the initial cluster?

@AdoHe, I believe details of my "wrongdoings" won't be much of help...
After some more hours I believe I found number of problems with static clustering setup:
Clustering instructions imply non-default configuration.
This is the main reason why it is so hard to setup a new member.
I found that member add command uses value of ETCD_INITIAL_ADVERTISE_PEER_URLS for initialisation of new member.
Invalid defaults
When ETCD_INITIAL_ADVERTISE_PEER_URLS is not explicitly given its default value is used (!) to initialise new member which is meaningless since defaults refer to localhost hence new member is doomed to fail without explicitly defined ETCD_INITIAL_ADVERTISE_PEER_URLS where externally connectable URL of this node is expected.
Counter-intuitive procedure
ETCD_INITIAL_ADVERTISE_PEER_URLS has to be defined prior to etcdctl member add.
Once new member is added, its setup cannot(?) be changed
New member will fail to connect with error validating peerURLs, unmatched member while checking PeerURLs if its ETCD_INITIAL_CLUSTER is not matches exactly the value as it is printed on member add.
However it seems to be impossible(?) to re-initialise new member once it is added with default (or incorrect) value of ETCD_INITIAL_ADVERTISE_PEER_URLS (which is embedded to printed ETCD_INITIAL_CLUSTER).
This is extraordinary counter-intuitive; too easy to make mistake and recovery is hard: apparently "unstarted" member can't be removed until it is started #3505 but it may be not possible to start if it was added incorrectly...
Conflict between documentation and behaviour
Clustering Flags documentation says:

-initial prefix flags are used in bootstrapping a new member, and ignored when restarting an existing member.

However value of ETCD_INITIAL_ADVERTISE_PEER_URLS (or its default value) is used to configure new member on already bootstrapped node. According to documentation, INITIAL values should be ignored unless node is bootstrapping...

Conflict between documentation and behaviour

I have no idea what do you mean actually. After reading through your reply, I think etcd does the correct thing.
Can you pleas point out where do you think we can improve?

Also I really suggest you to read our doc here https://github.com/coreos/etcd/blob/master/Documentation/clustering.md#static and https://github.com/coreos/etcd/blob/master/Documentation/runtime-configuration.md.
I agree some of the stuff is not intuitive enough. But actually, most of them are by design.

On etcd-2.2.0 I'm trying to setup cluster for the very first time (I'm new to etcd). It is so incredibly hard that after 5+ hours of continuous effort I still can't bootstrap second node.

I talked with a few etcd first users. Most of them can set up an etcd cluster within one hour when following the doc.
Let me know how we can improve our doc and reduce the time for you to set up a cluster.

Also if you do not want to read any doc and just want to give etcd a try. You can run goreman start instead of reading and doing all these yourself.

Can you pleas point out where do you think we can improve?

I don't have enough eloquence to express it any better than I already did. :(
https://github.com/coreos/etcd/issues/3491#issuecomment-139794858

Let me know how we can improve our doc and reduce the time for you to set up a cluster.

The above link to my summary explains it all.

Also if you do not want to read any doc

Why wouldn't I want to read docs and what my supposed (un-)willingness to read docs have to do with reported problems?

@onlyjob Can you please do not cross link between your multiple issues. Or you can please combine into one? You made me confused.

I don't have enough eloquence to express it any better than I already did. :( #3491 (comment)

Our doc already covered what you wrote about. I do not think that is useful.
Have you successfully setup the cluster?

Have you successfully setup the cluster?

Yeah, I figured it out in the end but it was a very frustrating experience...
FYI I have experience setting up Ceph clusters where minimum quorum of 3 is also required. Ceph configuration is more sophisticated but easier than etcd to set up.

Yeah

Glad to hear that.
Thanks for your patient and information.

@xiang90, It was not a support bug to close once I succeed with my set-up.
I wish you'd consider addressing at least some of 5 issues that I highlighted in my report. I fail to comprehend how could you just close this without any action...
I feel discouraged from reporting any further issues... :(

@onlyjob
This issue is about unable to remove member; unable to setup cluster. And clearly it is resolved.
Can you please file separate issues for other stuff you wish to discuss? I strongly dislike having 5 issues in one issue. Sorry.

@onlyjob

I feel discouraged from reporting any further issues... :(

I would encourage you to report bug following this https://github.com/coreos/etcd/blob/master/Documentation/reporting_bugs.md.
We want the isolation since:

it is easier for the community to track the one problem per issues than a lot of problems per issue

it is easier for the community to send a pull request to close an issue than sending a lot of pull requests to fix different issues mentioned in one github issue.

the discussion is more focused and easy to follow.

@onlyjob I cannot understand 5 issues that you reported too. A better way is to ask them separately and provide more details, or it is hard to help.


Replace Heroku builds with GitHub Actions

Context: since https://github.blog/changelog/2020-04-14-private-repositories-with-unlimited-collaborators-available-to-all-github-accounts-and-changes-to-github-paid-plans/, we have access to github actions \o/
We need to run an hourly schedule that re-generates the composer.json for roave/security-advisories


Fresh firmware-1.0 build in VSCode fails with "No prj.conf file(s) was found"

Describe the bug
A fresh firmware-1.0 build in VSCode with nRF Toolchain v2.7.0 and SDK v2.7.0 fails with "No prj.conf file(s) was found".
Copying prj_xiao_ble_sense_devkitv1.conf to prj.conf fixes the issue.
This seems like either the README file is unclear or missing a configuration step, or something has changed in how the VS Code nRF Connect Extension, toolchain etc works.
To Reproduce
Steps to reproduce the behavior:

Install nRF Connect for Visual Studio Code on a Mac using the instructions at https://docs.nordicsemi.com/bundle/ncs-latest/page/nrf/installation/install_ncs.html (setting git config --global http.postBuffer 104857600 to avoid git errors when checking out Zephyr), roughly:

Install nRF Command Line Tools from https://www.nordicsemi.com/Products/Development-tools/nrf-command-line-tools
Install VS Code from https://code.visualstudio.com/
In VSCode, install the "nRF Connect for VS Code Extension Pack"
Click on the nRF Connect icon in the VSCode sidebar
Manage Toolchains > Install Toolchain > nRF Connect SDK Toolchain v2.7.0
Manager SDKs > Install SDK > v2.7.0

Clone the Omi repo:

git clone https://github.com/BasedHardware/omi.git

Open Friend/firmware/firmware_v1.0 in VSCode
Click on the nRF Connect icon in the VSCode sidebar
Under Applications > firmware_v1.0, click on Add build configuration
Under CMake Preset, select "Devkit V1 (build_xiao_ble_sense_devkitv1)"
Under Board, select xiao_ble/nrf52840/sense
Click on "Build configuration" at the bottom
See error: No prj.conf file(s) was found in the /Users/bjorn/src/omi/Friend/firmware/firmware_v1.0 folder(s)

Building firmware_v1.0
west build --build-dir /Users/bjorn/src/omi/Friend/firmware/firmware_v1.0/build/build_xiao_ble_sense_devkitv1 /Users/bjorn/src/omi/Friend/firmware/firmware_v1.0 --pristine --board xiao_ble/nrf52840/sense -- -DNCS_TOOLCHAIN_VERSION=NONE -DCMAKE_EXPORT_COMPILE_COMMANDS=YES -DCMAKE_BUILD_TYPE=Debug -DPLATFORM=nrf52840 -DCACHED_CONF_FILE=/Users/bjorn/src/omi/Friend/firmware/firmware_v1.0/prj_xiao_ble_sense_devkitv1.conf -DBOARD_ROOT=/Users/bjorn/src/omi/Friend/firmware/firmware_v1.0

-- west build: generating a build system
Loading Zephyr default modules (Zephyr base).
-- Application: /Users/bjorn/src/omi/Friend/firmware/firmware_v1.0
-- CMake version: 3.21.0
-- Found Python3<EMAIL_ADDRESS>(found suitable version "3.9.6", minimum required is "3.8") found components: Interpreter
-- Cache files will be written to: /Users/bjorn/Library/Caches/zephyr
-- Zephyr version: 3.6.99 (/opt/nordic/ncs/v2.7.0/zephyr)
-- Found west (found suitable version "1.2.0", minimum required is "0.14.0")
-- Board: xiao_ble, qualifiers: nrf52840/sense
CMake Error at /opt/nordic/ncs/v2.7.0/zephyr/cmake/modules/extensions.cmake:2802 (message):
  No prj.conf file(s) was found in the
  /Users/bjorn/src/omi/Friend/firmware/firmware_v1.0 folder(s), please read
  the Zephyr documentation on application development.
Call Stack (most recent call first):
  /opt/nordic/ncs/v2.7.0/zephyr/cmake/modules/configuration_files.cmake:47 (zephyr_file)
  /opt/nordic/ncs/v2.7.0/zephyr/cmake/modules/zephyr_default.cmake:132 (include)
  /opt/nordic/ncs/v2.7.0/zephyr/share/zephyr-package/cmake/ZephyrConfig.cmake:66 (include)
  /opt/nordic/ncs/v2.7.0/zephyr/share/zephyr-package/cmake/ZephyrConfig.cmake:92 (include_boilerplate)
  CMakeLists.txt:4 (find_package)

-- Configuring incomplete, errors occurred!
FATAL ERROR: command exited with status 1: /opt/nordic/ncs/toolchains/f8037e9b83/bin/cmake<EMAIL_ADDRESS>-B/Users/bjorn/src/omi/Friend/firmware/firmware_v1.0/build/build_xiao_ble_sense_devkitv1 -GNinja -DBOARD=xiao_ble/nrf52840/sense -DNCS_TOOLCHAIN_VERSION=NONE -DCMAKE_EXPORT_COMPILE_COMMANDS=YES -DCMAKE_BUILD_TYPE=Debug -DPLATFORM=nrf52840 -DCACHED_CONF_FILE=/Users/bjorn/src/omi/Friend/firmware/firmware_v1.0/prj_xiao_ble_sense_devkitv1.conf -DBOARD_ROOT=/Users/bjorn/src/omi/Friend/firmware/firmware_v1.0 -S/Users/bjorn/src/omi/Friend/firmware/firmware_v1.0

Expected behavior
The build works when following the instructions in the README
Desktop (please complete the following information):

OS: MacOS 14.6.1
Version: 14.6.1

Additional context
Add any other context about the problem here.

It looks like the firmware-1.0/README.md file is just incomplete or out of date.
The instructions in docs/_assembly/Compile_firmware.md are better. Maybe the README should just link to that?

Actually, docs/_assembly/Compile_firmware.md is also a bit out of date. It seems to predate the addition of CMakePresets.json.

@bringert this issue should've fixed; pls try the latest main branch. happy coding!
find us here if you want more help https://discord.gg/based-hardware-1192313062041067520


V2 - Observed that Enter Company Name accepts any number characters and appropriate error message is not displayed when create company fails

Prerequisite

Create a CLA group with CCLA enabled
Add github repository for the CLA group
Generate template

Steps to Follow

Login to Github as individual contributor
Navigate to the repository used in prerequisite
Create PR
CLA check fails
Click on CLA NOT SIGNED
Contributor is redirected to Contributor Console
Click on Proceed as a Corporate Contributor
Click on + Click Here button
Add company with below details. Observed that appropriate error message is not displayed. However API returns appropriate response
Name The mission of the Academy Software Foundation The mission of the Academy Software Foundation The mission of the Academy Software Foundation The mission of the Academy Software Foundation The mission of the Academy Software Foundation The mission of the Academy Software Foundation The mission of the Academy Software Foundation The mission of the Academy Software Foundation The mission of the Academy Software Foundation The mission of the Academy Software Foundation The mission of the Academy Software Foundation The mission of the Academy Software Foundation The mission of the Academy Software Foundation The mission of the Academy Software Foundation The mission of the Academy Software Foundation The mission of the Academy Software Foundation The mission of the Academy Software Foundation The mission of the Academy Software Foundation The mission of the Academy Software Foundation The mission of the Academy Software Foundation The mission of the Academy Software Foundation The mission of the Academy Software Foundation The mission of the Academy Software Foundation The mission of the Academy Software Foundation The mission of the Academy Software Foundation The mission of the Academy Software Foundation The mission of the Academy Software Foundation The mission of the Academy Software Foundation The mission of the Academy Software Foundation The mission of the Academy Software Foundation The mission of the Academy Software Foundation The mission of the Academy Software Foundation The mission of the Academy Software Foundation The mission of the Academy Software Foundation The mission of the Academy Software Foundation The mission of the Academy Software Foundation The mission of the Academy Software Foundation The mission of the Academy Software Foundation The mission of the Academy Software Foundation The mission of the Academy Software Foundation The mission of the Academy Software Foundation The mission of the Academy Software Foundation The mission of the Academy Software Foundation The mission of the Academy Software Foundation The mission of the Academy Software Foundation The mission of the Academy Software Foundation The mission of the Academy Software Foundation The mission of the Academy Software Foundation The mission of the Academy Software Foundation The mission of the Academy Software Foundation The mission of the Academy Software Foundation The mission of the Academy Software Foundation The mission of the Academy Software Foundation The mission of the Academy Software Foundation The mission of the Academy Software Foundation The mission of the Academy Software Foundation The mission of the Academy Software Foundation The mission of the Academy Software Foundation The mission of the Academy Software Foundation The mission of the Academy Software Foundation The mission of the Academy Software Foundation The mission of the Academy Software Foundation The mission of the Academy Software Foundation The mission of the Academy Software Foundation The mission of the Academy Software Foundation The mission of the Academy Software Foundation The mission of the Academy Software Foundation The mission of the Academy Software Foundation The mission of the Academy Software Foundation The mission of the Academy Software Foundation The mission of the Academy Software Foundation The mission of the Academy Software Foundation The mission of the Academy Software Foundation The mission of the Academy Software Foundation The mission of the Academy Software Foundation The mission of the Academy Software Foundation
URL https://test.com

@amolsontakke3576
Could you please let me know the min and max length that you set for the company name

@nirupamav As per organization-service, max length capacity is 255 characters but It is creating problem on DocuSign page. So I kept max length 60 characters and minimum length now is 1 but just cross verified from organization service and it should be 2. I will update length.

@pranab-bajpai
As per above comments org service accepts 255 characters to create company but since we have issue displaying long company in docusign @amolsontakke3576 has kept the length to 60 characters. Could you please confirm if this is fine

As discussed with @pranab-bajpai max length for company is 60 characters

Min length is 2 characters


Update bang-bang.coffee to be user specific

bang-bang.coffee does not currently function.  Update it to be functional and to remember each user's last command so !! will repeat a user specific last command.

We are actually moving away from adding scripts to repository in favor of separate npm packages per scripts. See #1113 for details, and let us know if you have any questions about getting going with that!


Library attributions in README

You README says:

This library is a polyfill for the PECL::AMQP Extension, using Vadim Zaliva's php-amqplib.

In the last five years the library hasn't received a single commit by Vadim Zaliva's, even more the library has been completely refactored, we added support for AMQP 0.9.1 plus improved performance, added tests and many more things. I think having that wording in your README is a bit disrespectful for current maintainers and contributors: https://github.com/videlalvaro/php-amqplib/graphs/contributors

Hey, sorry about that - it was an honest mistake as to what I thought the origin of the library was (had seen it referred to as that before).  Will update asap.

I think just having the name of the library is enough, since there are many contributors

Sorted.

thanks


Develop

Will Add the code for the backend in a while

Lots of changes in the UI looks like it... Will test it out 💪

XDK can't configure the Bower packages... Revert?

Don't revert,
Do bower install
On Thu, Jun 30, 2016, 15:03 Arthur Kennedy Otieno<EMAIL_ADDRESS>wrote:

XDK can't configure the Bower packages... Revert?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/hackrush/grama/pull/1#issuecomment-229638825, or mute
the thread
https://github.com/notifications/unsubscribe/AGOuF0rCvXheuGsx5h2yBQoKwDwmAJxuks5qQ7CsgaJpZM4JBeX3
.

If you don't have bower install, just install it
On Thu, Jun 30, 2016, 15:14 denzel joseph<EMAIL_ADDRESS>wrote:

Don't revert,
Do bower install
On Thu, Jun 30, 2016, 15:03 Arthur Kennedy Otieno <
<EMAIL_ADDRESS>wrote:

XDK can't configure the Bower packages... Revert?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/hackrush/grama/pull/1#issuecomment-229638825, or mute
the thread
https://github.com/notifications/unsubscribe/AGOuF0rCvXheuGsx5h2yBQoKwDwmAJxuks5qQ7CsgaJpZM4JBeX3
.

Ayayayaya.... Installed Bower... and stuff still messed up.... ati bower.json is not available.... And just cd'ed to that dir.... Damn it :(

Intel XDK just removed the .xdk files... So, we're pretty much screwed thus far


Add sanitizer suppression file support [UTF-177]

See this patch in use at https://github.com/swift-nav/albatross/pull/373.


Upgrade dependencies

Found latest versions using go-mod-upgrade.
Kind
/kind cleanup
Release Note
NONE

/approve

/retest


refactor: replace $e->getMessage() with $e in log_message()

Description
Depending on exception classes, but generally (string) $e has more info than $e->getMessage().
If this is not BC, then I would change the base branch to develop.
$e->getMessage():
ERROR - 2022-06-23 19:09:15 --> Cookie object with name "unknown" and prefix "" was not found in the collection.

$e:
ERROR - 2022-06-23 19:09:31 --> CodeIgniter\Cookie\Exceptions\CookieException: Cookie object with name "unknown" and prefix "" was not found in the collection. in /Users/kenji/work/codeigniter/CodeIgniter4/system/Cookie/CookieStore.php:114
Stack trace:
#0 /Users/kenji/work/codeigniter/CodeIgniter4/system/Cookie/CookieStore.php(114): CodeIgniter\Cookie\Exceptions\CookieException::forUnknownCookieInstance(Array)
#1 /Users/kenji/work/codeigniter/CodeIgniter4/system/HTTP/ResponseTrait.php(635): CodeIgniter\Cookie\CookieStore->get('unknown', '')
#2 /Users/kenji/work/codeigniter/CodeIgniter4/app/Controllers/Home.php(14): CodeIgniter\HTTP\Response->getCookie('unknown')
#3 /Users/kenji/work/codeigniter/CodeIgniter4/system/CodeIgniter.php(862): App\Controllers\Home->index()
#4 /Users/kenji/work/codeigniter/CodeIgniter4/system/CodeIgniter.php(452): CodeIgniter\CodeIgniter->runController(Object(App\Controllers\Home))
#5 /Users/kenji/work/codeigniter/CodeIgniter4/system/CodeIgniter.php(346): CodeIgniter\CodeIgniter->handleRequest(NULL, Object(Config\Cache), false)
#6 /Users/kenji/work/codeigniter/CodeIgniter4/public/index.php(55): CodeIgniter\CodeIgniter->run()
#7 /Users/kenji/work/codeigniter/CodeIgniter4/system/Commands/Server/rewrite.php(43): require_once('/Users/kenji/wo...')
#8 {main}

Checklist:

[x] Securely signed commits
[ ] Component(s) with PHPDoc blocks, only if necessary or adds value
[ ] Unit testing, with >80% coverage
[ ] User guide updated
[x] Conforms to style guide

Exceptions are already Stringable: https://www.php.net/manual/en/exception.tostring.php
... so are allowed without casting.

Nope, you were right @paulbalandan:

If strict typing is enforced (with declare(strict_types=1) at the top of the file), an explicit string cast is required

I didn't realize that difference in behavior - unfortunate.


DNN-8125 - Update Newtonsoft to the latest version - revert

Why's this getting reverted?

There is no need to revert this as all the Packages are working pretty good with the latest Newtonsoft. @bdukes we have multiple issues in merging with latest Newtonsoft. The purpose of this PR was to keep the option of reverting handy in case we needed to bail out. This is no longer needed.


Update exporters.md

We created an exporter for the ManticoreSearch database and I wanted to add it to the exporters page.

Thanks for this!
Could you sign the DCO and attach sample output from your exporter, please?


feat: add new package create-wdi5

@vobu you want to merge that?

yessir

👌 https://bestofui5.org/#/packages/create-wdi5