Actions - Inconsistency accessing user's variables and secrets

Description
Hello,
I'm trying to implement a CI/CD pipeline using Gitea Actions, and I found an inconsistent behaviour when accessing user variables and secrets.
I set up a variable named USERNAME_VARIABLE with value tester-user, a secret named USERNAME_SECRET  with value tester-user, both on the user, and a simple workflow:
name: Test Secrets and Vars
on:
  push:
    branches: [main]

jobs:
  build:
    runs-on: [ubuntu-latest]
    container:
      image: catthehacker/ubuntu:mod-hosts
    steps:
      - name: Print secret and var
        run: |
          echo "Username var: ${{ vars.USERNAME_VARIABLE }}"
          echo "Username secret: ${{ secrets.USERNAME_SECRET }}"

With a repository owned by an organization, with no variables or secrets on the ORG or REPO level, the output of the workflow is:
Username var: tester-user
Username secret:

Same case, with the USERNAME_SECRET set on the ORG, the output is:
Username var: tester-user
Username secret: ***

The inconsistency is the action being able to access a user's variable, but not a user's secret. I'd expect the action being able to access the user's secrets, the same way it does for variables.
In other words:
The variable is available when requested, because it's found on the user's variables (expected).
The secret is not available (empty string) when requested, even if it's on the user's secrets (not expected). The secret is only available when the owner of the repository (an org or an user) has the required secrets.
Is the expected behaviour, or is it not correct?

Set up job of the workflow:
2024-04-09T08:33:35.9732276Z testRunner(version:v0.2.6) received task 297 of job 316, be triggered by event: push
2024-04-09T08:33:35.9748040Z workflow prepared
2024-04-09T08:33:35.9750946Z evaluating expression 'success()'
2024-04-09T08:33:35.9753135Z expression 'success()' evaluated to 'true'
2024-04-09T08:33:35.9753595Z 🚀  Start image=catthehacker/ubuntu:mod-hosts
2024-04-09T08:33:35.9867221Z   🐳  docker pull image=catthehacker/ubuntu:mod-hosts platform= username= forcePull=false
2024-04-09T08:33:35.9867396Z   🐳  docker pull catthehacker/ubuntu:mod-hosts
2024-04-09T08:33:35.9887351Z Image exists? true
2024-04-09T08:33:36.0954194Z   🐳  docker create image=catthehacker/ubuntu:mod-hosts platform= entrypoint=["/bin/sleep" "10800"] cmd=[]
2024-04-09T08:33:36.1022365Z Common container.Config ==> &{Hostname: Domainname: User: AttachStdin:false AttachStdout:false AttachStderr:false ExposedPorts:map[] Tty:false OpenStdin:false StdinOnce:false Env:[RUNNER_TOOL_CACHE=/opt/hostedtoolcache RUNNER_OS=Linux RUNNER_ARCH=X64 RUNNER_TEMP=/tmp LANG=C.UTF-8] Cmd:[] Healthcheck:<nil> ArgsEscaped:false Image:catthehacker/ubuntu:mod-hosts Volumes:map[] WorkingDir:/workspace/digital/supBack Entrypoint:[] NetworkDisabled:false MacAddress: OnBuild:[] Labels:map[] StopSignal: StopTimeout:<nil> Shell:[]}
2024-04-09T08:33:36.1137538Z Common container.HostConfig ==> &{Binds:[/var/run/docker.sock:/var/run/docker.sock] ContainerIDFile: LogConfig:{Type: Config:map[]} NetworkMode:GITEA-ACTIONS-TASK-297_WORKFLOW-Test-Secrets-and-Vars_JOB-build-network PortBindings:map[] RestartPolicy:{Name: MaximumRetryCount:0} AutoRemove:true VolumeDriver: VolumesFrom:[] ConsoleSize:[0 0] Annotations:map[] CapAdd:[] CapDrop:[] CgroupnsMode: DNS:[] DNSOptions:[] DNSSearch:[] ExtraHosts:[] GroupAdd:[] IpcMode: Cgroup: Links:[] OomScoreAdj:0 PidMode: Privileged:false PublishAllPorts:false ReadonlyRootfs:false SecurityOpt:[] StorageOpt:map[] Tmpfs:map[] UTSMode: UsernsMode: ShmSize:0 Sysctls:map[] Runtime: Isolation: Resources:{CPUShares:0 Memory:0 NanoCPUs:0 CgroupParent: BlkioWeight:0 BlkioWeightDevice:[] BlkioDeviceReadBps:[] BlkioDeviceWriteBps:[] BlkioDeviceReadIOps:[] BlkioDeviceWriteIOps:[] CPUPeriod:0 CPUQuota:0 CPURealtimePeriod:0 CPURealtimeRuntime:0 CpusetCpus: CpusetMems: Devices:[] DeviceCgroupRules:[] DeviceRequests:[] KernelMemory:0 KernelMemoryTCP:0 MemoryReservation:0 MemorySwap:0 MemorySwappiness:<nil> OomKillDisable:<nil> PidsLimit:<nil> Ulimits:[] CPUCount:0 CPUPercent:0 IOMaximumIOps:0 IOMaximumBandwidth:0} Mounts:[{Type:volume Source:GITEA-ACTIONS-TASK-297_WORKFLOW-Test-Secrets-and-Vars_JOB-build Target:/workspace/digital/supBack ReadOnly:false Consistency: BindOptions:<nil> VolumeOptions:<nil> TmpfsOptions:<nil> ClusterOptions:<nil>} {Type:volume Source:act-toolcache Target:/toolcache ReadOnly:false Consistency: BindOptions:<nil> VolumeOptions:<nil> TmpfsOptions:<nil> ClusterOptions:<nil>} {Type:volume Source:GITEA-ACTIONS-TASK-297_WORKFLOW-Test-Secrets-and-Vars_JOB-build-env Target:/var/run/act ReadOnly:false Consistency: BindOptions:<nil> VolumeOptions:<nil> TmpfsOptions:<nil> ClusterOptions:<nil>}] MaskedPaths:[] ReadonlyPaths:[] Init:<nil>}
2024-04-09T08:33:36.2710536Z Created container name=GITEA-ACTIONS-TASK-297_WORKFLOW-Test-Secrets-and-Vars_JOB-build id=669befa3a5a42b5e6bae1067779f191cb142dbe63abc6537ab0d51176d37a077 from image catthehacker/ubuntu:mod-hosts (platform: )
2024-04-09T08:33:36.2710950Z ENV ==> [RUNNER_TOOL_CACHE=/opt/hostedtoolcache RUNNER_OS=Linux RUNNER_ARCH=X64 RUNNER_TEMP=/tmp LANG=C.UTF-8]
2024-04-09T08:33:36.2711117Z   🐳  docker run image=catthehacker/ubuntu:mod-hosts platform= entrypoint=["/bin/sleep" "10800"] cmd=[]
2024-04-09T08:33:36.2711229Z Starting container: 669befa3a5a42b5e6bae1067779f191cb142dbe63abc6537ab0d51176d37a077
2024-04-09T08:33:36.5270495Z Started container: 669befa3a5a42b5e6bae1067779f191cb142dbe63abc6537ab0d51176d37a077
2024-04-09T08:33:36.6712413Z Writing entry to tarball workflow/event.json len:4217
2024-04-09T08:33:36.6713296Z Writing entry to tarball workflow/envs.txt len:0
2024-04-09T08:33:36.6713569Z Extracting content to '/var/run/act/'
2024-04-09T08:33:36.7119767Z setupEnv => map[ACT:true ACTIONS_CACHE_URL:http://<IP_ADDRESS>:41349/ ACTIONS_RUNTIME_TOKEN:*** ACTIONS_RUNTIME_URL:http://REDACTED:3000/api/actions_pipeline/ A_TEST_ENV_NAME_1:a_test_env_value_1 A_TEST_ENV_NAME_2:a_test_env_value_2 CI:true GITEA_ACTIONS:true GITEA_ACTIONS_RUNNER_VERSION:v0.2.6 GITHUB_ACTION:0 GITHUB_ACTIONS:true GITHUB_ACTION_PATH: GITHUB_ACTION_REF: GITHUB_ACTION_REPOSITORY: GITHUB_ACTOR:tester GITHUB_API_URL:http://REDACTED:3000/api/v1 GITHUB_BASE_REF: GITHUB_EVENT_NAME:push GITHUB_EVENT_PATH:/var/run/act/workflow/event.json GITHUB_GRAPHQL_URL: GITHUB_HEAD_REF: GITHUB_JOB:build GITHUB_REF:refs/heads/main GITHUB_REF_NAME:main GITHUB_REF_TYPE:branch GITHUB_REPOSITORY:digital/supBack GITHUB_REPOSITORY_OWNER:digital GITHUB_RETENTION_DAYS: GITHUB_RUN_ID:219 GITHUB_RUN_NUMBER:25 GITHUB_SERVER_URL:http://REDACTED:3000 GITHUB_SHA:7b37b5765defe012936001b3b6e718e47248c01d GITHUB_TOKEN:*** GITHUB_WORKFLOW:Test Secrets and Vars GITHUB_WORKSPACE:/workspace/digital/supBack ImageOS:ubuntu20 JOB_CONTAINER_NAME:GITEA-ACTIONS-TASK-297_WORKFLOW-Test-Secrets-and-Vars_JOB-build RUNNER_PERFLOG:/dev/null RUNNER_TRACKING_ID:]
2024-04-09T08:33:36.7225739Z evaluating expression ''
2024-04-09T08:33:36.7226320Z expression '' evaluated to 'true'
2024-04-09T08:33:36.7226477Z ⭐ Run Main Print secret and var
2024-04-09T08:33:36.7226699Z Writing entry to tarball workflow/outputcmd.txt len:0
2024-04-09T08:33:36.7226885Z Writing entry to tarball workflow/statecmd.txt len:0
2024-04-09T08:33:36.7227024Z Writing entry to tarball workflow/pathcmd.txt len:0
2024-04-09T08:33:36.7227160Z Writing entry to tarball workflow/envs.txt len:0
2024-04-09T08:33:36.7227263Z Writing entry to tarball workflow/SUMMARY.md len:0
2024-04-09T08:33:36.7227390Z Extracting content to '/var/run/act'
2024-04-09T08:33:36.7598506Z expression 'echo "Username var: ${{ vars.USERNAME_VARIABLE }}"\necho "Username secret: ${{ secrets.USERNAME_SECRET }}"' rewritten to 'format('echo "Username var: {0}"\necho "Username secret: {1}"', vars.USERNAME_VARIABLE, secrets.USERNAME_SECRET)'
2024-04-09T08:33:36.7598902Z evaluating expression 'format('echo "Username var: {0}"\necho "Username secret: {1}"', vars.USERNAME_VARIABLE, secrets.USERNAME_SECRET)'
2024-04-09T08:33:36.7599367Z expression 'format('echo "Username var: {0}"\necho "Username secret: {1}"', vars.USERNAME_VARIABLE, secrets.USERNAME_SECRET)' evaluated to '%!t(string=echo "Username var: tester"\necho "Username secret: ")'
2024-04-09T08:33:36.7599498Z Wrote command \n\necho "Username var: tester"\necho "Username secret: "\n\n to 'workflow/0.sh'
2024-04-09T08:33:36.7599696Z Writing entry to tarball workflow/0.sh len:54
2024-04-09T08:33:36.7599905Z Extracting content to '/var/run/act'
2024-04-09T08:33:36.7626815Z   🐳  docker exec cmd=[sh -e /var/run/act/workflow/0.sh] user= workdir=
2024-04-09T08:33:36.7627145Z Exec command '[sh -e /var/run/act/workflow/0.sh]'
2024-04-09T08:33:36.7627518Z Working directory '/workspace/digital/supBack'
2024-04-09T08:33:36.8295547Z Username var: tester
2024-04-09T08:33:36.8296062Z Username secret:
2024-04-09T08:33:36.8451802Z Cleaning up services for job build
2024-04-09T08:33:36.8452363Z Cleaning up container for job build
2024-04-09T08:33:37.0474596Z Removed container: 669befa3a5a42b5e6bae1067779f191cb142dbe63abc6537ab0d51176d37a077
2024-04-09T08:33:37.0489031Z   🐳  docker volume rm GITEA-ACTIONS-TASK-297_WORKFLOW-Test-Secrets-and-Vars_JOB-build
2024-04-09T08:33:37.0519061Z   🐳  docker volume rm GITEA-ACTIONS-TASK-297_WORKFLOW-Test-Secrets-and-Vars_JOB-build-env
2024-04-09T08:33:37.0536361Z Cleaning up network for job build, and network name is: GITEA-ACTIONS-TASK-297_WORKFLOW-Test-Secrets-and-Vars_JOB-build-network
2024-04-09T08:33:37.1731766Z 🏁  Job succeeded

If something is not clear or detailed enough, please let me know so I can add the appropriate information.
Gitea Version
1.21.10
Can you reproduce the bug on the Gitea demo site?
No
Log Gist
No response
Screenshots
No response
Git Version
2.39.2
Operating System
Debian GNU/Linux 12 (bookworm) - Linux 6.1.0-17-amd64
How are you running Gitea?
My Gitea instance is running using the binary downloaded from GitHub. I installed the instance as described in the docs and set it up as a service as described here.
I'm using act-runner v0.2.6 in Docker 26.0.0 build 2ae903e.
Database
PostgreSQL

First of all, if you set a variable or secret for a user, then the repo belonging to an org cannot read it, regardless of whether the user is the creator of the repo or a member of the org.
It is designed that a repository can only read variables and secrets from its own and its owner (user or org).
So what surprised me is:

... I set up a variable named USERNAME_VARIABLE with value tester-user, a secret named USERNAME_SECRET with value tester-user, both on the user ...
With a repository owned by an organization, with no variables or secrets on the ORG or REPO level, the output of the workflow is:
Username var: tester-user
Username secret:

It shouldn't be, and I tried to reproduce it in my local environment. Please point out which step should be adjusted.

Log in with the user "root".
Create a repo for the org "test_org".
Set a variable "USERNAME_VARIABLE" for the user "root."
Run actions for the repo.

This is as expected.

It shouldn't be, if you set a variable or secret for a user, then the repo belonging to an org cannot read it, regardless of whether the user is the creator of the repo or a member of the org.
It is designed that a repo can only read variables and secrets from its own and its owner (user or org).

Thank you for the clarification.
Sorry for going slightly OT: is there a way to use the actor's variables and secrets in this scenario (repo owned by org)? Can they somehow be securely injected into the workflow?

It shouldn't be, and I tried to reproduce it in my local environment. Please point out which step should be adjusted.

I'd say the steps are correct. I tried reproducing it again, and I got the same output (see screenshot).

My steps:

Logged in with my root user, set a variable "USERNAME_VARIABLE" to "tester-user".
With my root user I created a new org "test_org".
Under that org I created a repo "test_repo" and added the .yaml file (same as the one in the orginal post).
Run action.

I also tried running the action with a different user (non-root). I added the user to the collaborators of the "test_repo", set the same variable with value "tester-user2", and I got the same behaviour. Same happens when adding the second user to an org's team with write permissions to the code, instead of the collaborators.

Let me know what I can share to dig deeper into the issue.

is there a way to use the actor's variables and secrets in this scenario (repo owned by org)? Can they somehow be securely injected into the workflow?

TBH, I think there's no way to do that. I don't think it could be supported by Gitea or even GitHub. It could make the workflows very fragile when sometimes the variable/secret is A while sometimes it is B. And it's also unsafe, since the actor could be a collaborator. How can the owner of a repo ask their collaborators to share their secrets? Just a joke: Hi QuantumQuacken, I would like to invite you to my personal project. Please commit to my repo, and it will send all your secrets to my email. 😄

I tried reproducing it again, and I got the same output (see screenshot).

Could you please check:

/test_org/test_repo/settings/actions/variables, is there any variable for the repo?
/org/test_org/settings/actions/variables, is there any variable for the repo?
/admin/actions/variables, is there any variable for the whole Gitea instance? (I almost forgot it since it was just recently supported)

TBH, I think there's no way to do that. And I don't think it could be supported by Gitea or even GitHub. It could make the workflows very fragile when sometimes the variable/secret is A while sometimes it is B. And it's also unsafe, since the actor could be a collaborator. How can the owner of a repo ask their collaborators to share their secrets? Just a joke: Hi QuantumQuacken, I would like to invite you to my personal project. Please commit to my repo, and the scripts will send all your secrets to my email. 😄

It's a new topic for me, so thank you very much for the explanation!
test_repo variables:

test_org variables:

I can't see any variables section in the Admin settings. Was it added in 1.22 or later?

I can't see any variables section in the Admin settings. Was it added in 1.22 or later?

Sorry, I was mistaken. You are right, it was added in v1.22.

Thank you for patiently providing such a detailed troubleshooting process. In the end, I identified this bug.

Closed by #30402


Could not add accessory

After today's git pull I'm unable to add any accessory on my iphone. It show the list of devices, but after entering pin error happens. I can see the following error in log-file:
TypeError: this._advertisement.updateTXTRecord is not a function
    at Advertiser.updateAdvertisement (/home/pi/HAP-NodeJS/lib/Advertiser.js:68:25)
    at Accessory._handlePair (/home/pi/HAP-NodeJS/lib/Accessory.js:460:20)
    at emitThree (events.js:97:13)
    at HAPServer.emit (events.js:175:7)
    at HAPServer._handlePairStepFive (/home/pi/HAP-NodeJS/lib/HAPServer.js:407:8)
    at HAPServer._handlePairStepFour (/home/pi/HAP-NodeJS/lib/HAPServer.js:376:8)
    at HAPServer._handlePairStepThree (/home/pi/HAP-NodeJS/lib/HAPServer.js:350:8)
    at HAPServer._handlePair (/home/pi/HAP-NodeJS/lib/HAPServer.js:252:10)
    at HAPServer.<anonymous> (/home/pi/HAP-NodeJS/lib/HAPServer.js:178:39)
    at emitNone (events.js:67:13)

You need to run npm install to update dependent package
Sent from my iPhone

On Jan 27, 2016, at 2:26 AM, Anton Shtopany<EMAIL_ADDRESS>wrote:
After today's git pull I'm unable to add any accessory I can see the following error in log-file:
TypeError: this_advertisementupdateTXTRecord is not a function
at AdvertiserupdateAdvertisement (/home/pi/HAP-NodeJS/lib/Advertiserjs:68:25)
at Accessory_handlePair (/home/pi/HAP-NodeJS/lib/Accessoryjs:460:20)
at emitThree (eventsjs:97:13)
at HAPServeremit (eventsjs:175:7)
at HAPServer_handlePairStepFive (/home/pi/HAP-NodeJS/lib/HAPServerjs:407:8)
at HAPServer_handlePairStepFour (/home/pi/HAP-NodeJS/lib/HAPServerjs:376:8)
at HAPServer_handlePairStepThree (/home/pi/HAP-NodeJS/lib/HAPServerjs:350:8)
at HAPServer_handlePair (/home/pi/HAP-NodeJS/lib/HAPServerjs:252:10)
at HAPServer (/home/pi/HAP-NodeJS/lib/HAPServerjs:178:39)
at emitNone (eventsjs:67:13)
—
Reply to this email directly or view it on GitHub.

Thanks, that solve problem


feat(tooltip): add error variant, visible on render

Abacus designs have led to a need for an error tooltip. I'm proposing extending the existing Tooltip component to have:

an error variant, borrowing from the text input error state
a "render" trigger so tooltips are always visible, not just on hover

Checklist

[x] I have added or updated unit tests
[x] I have added or updated integration tests (if appropriate)
[x] I have added or updated documentation / readme (if appropriate)
[x] I have verified that my changes have not introduced new lint errors

Testing Instructions

Test the error Tooltip in storybook. All knobs should work in any combination.
Compare with the default Tooltip and ensure no new problems have been introduced. New props should have defaults that preserve existing behavior.

@jrschumacher @suchak1 here's my first attempt at evolving an existing component. Please have a look together. When ready, this should be squash and merged.

:rocket: PR was released in v1.13.0 :rocket:

:rocket: PR was released in v1.13.0 :rocket:

:rocket: PR was released in v1.13.0 :rocket:

:rocket: PR was released in v1.13.0 :rocket:


fix: check all parents for further parameter annotations

see the issue for details
Refs #4002

Thanks!


refactor "gene symbol" term to "gene name"

Refactor method name from "gene symbol" term to "gene name" to more accurately reflect the underlying data attribute and avoid confusion.
The generated gene files (e.g. genes_homo_sapiens.csv.gz appear to contain gene names rather than symbols, as that is what is extracted from the underlying source data (e.g. http://ftp.ebi.ac.uk/pub/databases/gencode/Gencode_human/release_38/gencode.v38.primary_assembly.annotation.gtf.gz).
example row:
chr1	HAVANA	gene	916865	921016	.	-	.	gene_id "ENSG00000223764.2"; gene_type "lncRNA"; gene_name "LINC02593"; level 2; hgnc_id "HGNC:53933"; havana_gene "OTTHUMG00000040718.2";

@atolopko-czi / @pablo-gar : I just noticed this orphaned(?) PR from Sep. Should this get merged and released or closed?

It's way behind main, so I'm going to close it.


Deserializing richer types than in Serde's data model is extremely painful

First of all, thanks for this very useful crate! It is very nice to have a framework like this centralized in one place.
Unfortunately deserializing PDFs is proving to be very annoying in Serde, due to what seem like artificial limitations in its API.
PDF supports not just strings, but also "names". Both are byte strings with some bytes not allowed.
(some string in PDF)
/SomeName

PDF allow allows indirect object references, which are 2-tuples of an object ID and generation ID. These are distinct from PDF arrays.
0 3 R % This references object number 0 in generation 3.
[/Im /An /Array]

Deserializing a string containing a PDF value to a generic PDF value object requires a lot of gymnastics. This is because strings and names are both just strings of bytes in serde's data model, and indirect object references are just arrays. So I had to create a hundred lines of boilerplate so that the Visitor for PDF values could distinguish between them (see the end of this issue).
This is a consequence of Serde's decision to have visit_newtype_struct not take any &'static str as a tag, presumably because most Serde deserializers aren't deserializing a rich syntax like PDF and are fine with ignoring newtypes. It would be really nice if a future version of Serde could avoid this. I really only need a way to indicate to the visitor what newtype struct this is. If visit_newtype_struct instead looked like:
fn visit_newtype_struct<D>(
    self,
    tag: &'static str,
    deserializer: D
) ...

... I could delete the fake deserializer and fake Enum/VariantAccess impls.
I see that there are similar gymnastics in the TOML deserializer for datetimes: https://github.com/alexcrichton/toml-rs/blob/master/src/de.rs#L758
struct AtomDeserializer {
    atom: &'static str,
}

impl<'de> de::Deserializer<'de> for AtomDeserializer {
    type Error = DeserErr;

    fn deserialize_any<V>(self, visitor: V) -> DeserResult<V::Value>
    where
        V: de::Visitor<'de>,
    {
        visitor.visit_borrowed_str(self.atom)
    }

    forward_to_deserialize_any! {
        bool i8 i16 i32 i64 i128 u8 u16 u32 u64 u128 f32 f64 char str string
        bytes byte_buf option unit unit_struct newtype_struct seq tuple
        tuple_struct map struct enum identifier ignored_any
    }
}

impl<'de> de::Deserializer<'de> for ObjectID {
    type Error = DeserErr;

    fn deserialize_any<V>(self, visitor: V) -> DeserResult<V::Value>
    where
        V: de::Visitor<'de>,
    {
        visitor.visit_seq(SeqDeserializer::new(vec![self.0, self.1].into_iter()))
    }

    forward_to_deserialize_any! {
        bool i8 i16 i32 i64 i128 u8 u16 u32 u64 u128 f32 f64 char str string
        bytes byte_buf option unit unit_struct newtype_struct seq tuple
        tuple_struct map struct enum identifier ignored_any
    }
}

impl<'de> de::EnumAccess<'de> for ObjectID {
    type Error = DeserErr;
    type Variant = Self;

    fn variant_seed<V>(self, seed: V) -> DeserResult<(V::Value, Self::Variant)>
    where
        V: de::DeserializeSeed<'de>,
    {
        Ok((
            seed.deserialize(AtomDeserializer { atom: INDIRECT_TAG })?,
            self,
        ))
    }
}

impl<'de> de::VariantAccess<'de> for ObjectID {
    type Error = DeserErr;

    fn unit_variant(self) -> DeserResult<()> {
        Err(DeserErr::Message(
            "this is an ObjectID, not a unit variant".to_string(),
        ))
    }

    fn newtype_variant_seed<T>(self, seed: T) -> DeserResult<T::Value>
    where
        T: de::DeserializeSeed<'de>,
    {
        seed.deserialize(self)
    }

    fn tuple_variant<V>(self, _len: usize, visitor: V) -> DeserResult<V::Value>
    where
        V: de::Visitor<'de>,
    {
        de::Deserializer::deserialize_any(self, visitor)
    }

    fn struct_variant<V>(
        self,
        _fields: &'static [&'static str],
        visitor: V,
    ) -> DeserResult<V::Value>
    where
        V: de::Visitor<'de>,
    {
        de::Deserializer::deserialize_any(self, visitor)
    }
}

enum NameOrString {
    String(PDFString),
    Name(Name),
}

impl<'de> de::Deserializer<'de> for NameOrString {
    type Error = DeserErr;

    fn deserialize_any<V>(self, visitor: V) -> DeserResult<V::Value>
    where
        V: de::Visitor<'de>,
    {
        let bytes = match self {
            NameOrString::String(PDFString(x)) => x,
            NameOrString::Name(Name(x)) => x,
        };
        visitor.visit_byte_buf(bytes)
    }

    forward_to_deserialize_any! {
        bool i8 i16 i32 i64 i128 u8 u16 u32 u64 u128 f32 f64 char str string
        bytes byte_buf option unit unit_struct newtype_struct seq tuple
        tuple_struct map struct enum identifier ignored_any
    }
}

impl<'de> de::EnumAccess<'de> for NameOrString {
    type Error = DeserErr;
    type Variant = Self;

    fn variant_seed<V>(self, seed: V) -> DeserResult<(V::Value, Self::Variant)>
    where
        V: de::DeserializeSeed<'de>,
    {
        let tag = match self {
            NameOrString::String(_) => STRING_TAG,
            NameOrString::Name(_) => NAME_TAG,
        };
        Ok((seed.deserialize(AtomDeserializer { atom: tag })?, self))
    }
}

impl<'de> de::VariantAccess<'de> for NameOrString {
    type Error = DeserErr;

    fn unit_variant(self) -> DeserResult<()> {
        Err(DeserErr::Message(
            "this is a name or a string, not a unit variant".to_string(),
        ))
    }

    fn newtype_variant_seed<T>(self, seed: T) -> DeserResult<T::Value>
    where
        T: de::DeserializeSeed<'de>,
    {
        seed.deserialize(self)
    }

    fn tuple_variant<V>(self, _len: usize, visitor: V) -> DeserResult<V::Value>
    where
        V: de::Visitor<'de>,
    {
        de::Deserializer::deserialize_any(self, visitor)
    }

    fn struct_variant<V>(
        self,
        _fields: &'static [&'static str],
        visitor: V,
    ) -> DeserResult<V::Value>
    where
        V: de::Visitor<'de>,
    {
        de::Deserializer::deserialize_any(self, visitor)
    }
}

Thanks for the writeup! It sounds like you were ultimately able to accomplish what you needed, which I am glad about.
In general we haven't attempted to cater to all features of all formats (i.e. "union" of functionality) but rather an "intersection" of aspects that are found in common across a range of mainstream formats. it's not surprising for many data formats to have pieces that wouldn't map cleanly.


minus total outer flex basis for available width or height, when compute flex basis for children

I put an ImageView and an UILabel in a horizontal flex layout, the label's size is not calculated correctly. The size passed to UILabel's sizeThatFits is not correct. I think it should minus the previous calculated totalOuterFlexBasis.
Thanks.

Thanks @shiyizju for your pull request.
Could you please add a test case for this change, to prevent a possible regression?
Thanks!

Thanks @woehrl01  for reply.
I ran the test cases and it failed with following output:
====STANDARD OUT====
tests/YGPersistenceTest.cpp:208: Failure
Expected: YGNodeGetChild(root2_child1, 0)
Which is: 0x7f8eb9809200
To be equal to: root_child1_0
Which is: 0x7f8eb9808c00
TESTS FAILED: 1 FAILURE
Failed target: //:YogaTests
FAIL //:YogaTests
I don't understand the test case very well referenced in the output, could you please help check if I miss something, or maybe my change is not correct?
Thanks.

I met this problem in iOS environments with YogaKit. Following I upload a demo to reproduce this problem, please take a look. Let me know if there is any problem. Thanks!
https://github.com/shiyizju/YogaTryout

Hi, @davidaurelio , could you please let me know if this issue if being followed up? Thanks.

@SidharthGuglani could you remove me as a reviewer here? Thanks!


[FEATURE] Advanced Templating Functions for Go: Inline Logic, Loops & String Utilities

Feature Description
Expand the set of utilities for Go’s text/template library, adding support for inline conditionals, looping, and advanced string, numeric, and date functions. It should includes a rich set of built-in functions such as string manipulation, number formatting, date and time handling, conditional helpers, and debugging tools—all designed to simplify complex templating.
Use Case

Generate dynamic HTML or Markdown where template content depends on conditional logic
Simplify the creation of personalized email or notification templates, allowing inline conditionals for tailored content
Use templates for auto-generating documentation or configuration files from structured data sources. Advanced templating functions allow formatting fields, adding conditional sections, and iterating over data arrays to produce clean, user-readable files.

Proposed Solution
Go’s text/template allows you to inject custom functions into the template engine. By defining utility functions for conditionals and looping, you can add more expressive logic to the templates 😉

Pseudo Code
tmpl := `
{{ "hello world" | toUpper }}
{{ default "guest" .UserName }}
{{ add 5 10 }}
{{ formatDate now "2006-01-02" }}
{{ range uniq (split "apple,banana,apple,orange" ",") }}
    Unique Item: {{ . }}
{{ end }}
`

result, _ := RenderTemplate(tmpl, data) // Assume RenderTemplate integrates funcMap

I am planning to add this feature in next release.


Update Animated library to latest version (supports React 16) (fixes #6058)

Hello there! This is my first pull request to your repository. It updates the Animated component library in the website directory to the newest version (as seen here: https://github.com/animatedjs/animated), in order to fix an error on the mobile browser.
The Animated library was using some undocumented internals of React that appear to have been changed in the new version, causing weird exceptions deep in the Animated code. I would recommend testing this solution as I was unable to find any test files for the website, and I also had to make some local modifications to get the app running on my Windows machine (not committed!).
Thanks,
tdurtschi

Hey @tdurtschi, thanks for the PR!
Is it possible to make this an actual dependency (install through NPM and exist in node_modules/ instead of the website copying all of the files)? I don't remember what the reasoning was for copying everything, but it would be nice to not keep a local copy of the package.

It does look like the package is available from npm. I can try this tonight.

So interestingly, the animated package was already included in package.json. I guess someone else had the same idea in the past?
Importing the 'animated' module directly was still giving errors, so I left the import from 'animated/lib/targets/react-dom' as it was. Seems like everything is working now, although I'm not too familiar with the site so you might want to do some testing of your own.
Cheers!

Thanks for the PR, @tdurtschi! This is good stuff. I tried for a while to fix #6058, but wasn't successful.
I will go ahead and test this out.

Everything looks good, thanks again @tdurtschi :) I can't believe I didn't think of just using the latest animated from node_modules 🤦♀


Punctuation fix in import_ca_certificate.md

The form "it's" means "it is". In this case you need "its", which means "belonging to it". This is one of those weird oddities of English that everyone gets wrong: https://www.merriam-webster.com/grammar/when-to-use-its-vs-its

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


Sync on connection

Ask the user on first connection if they'd like to sync all the files from device files to Monocle

Sync means uploading all from local to device or from device to local?

from local to device

Actually I'm wondering of #25 covers this. Maybe it's not needed because the user can just do Ctrl-Shift-B on connection and the same thing happens

ctrl+shift+B will be a command. what we can do is check outer level directory if not matched . we can invoke that command automatically

Yeah it could accidentally overwrite the user app if they make a new project let's say. Let's start with #25 and see how it feels. If it's okay then we can skip this issue

No longer needed since we're adding the other features now


Unable to start server with mocks

I am trying to start yoga server with mocks.
Just copy-pasting example from the docs doesn't work:
import { GraphQLServer, MockList } from 'graphql-yoga'

const typeDefs = `
  type Query {
    hello(name: String): String!
    listOfStrings: [String]
  }
`

const mocks = {
  Query: () => ({
    hello: () => 'Hello World',
    listOfStrings: () => new MockList([2, 6]),
  }),
}

const server = new GraphQLServer({ typeDefs, mocks })
server.start()

And got an Error: No schema defined, at /node_modules/graphql-yoga/src/index.ts

I had the same issue, when following the mocking example in the README.

@checkmatez @merelinguist I think there is something missing in docs... you can do mocking like that (it works), but I'm not sure this is yoga's way.
const { GraphQLServer, MockList } = require("graphql-yoga");
const {
  makeExecutableSchema,
  addMockFunctionsToSchema
} = require("graphql-tools");

const typeDefs = `
  type Query {
    hello(name: String): String!
    listOfStrings: [String]
  }
`;

const mocks = {
  Query: () => ({
    hello: () => "Hello World",
    listOfStrings: () => new MockList([2, 6])
  })
};

const schema = makeExecutableSchema({ typeDefs });

addMockFunctionsToSchema({
  schema,
  mocks
});

const server = new GraphQLServer({ schema });
server.start();


[5.5] New Route::view() method does not set route name

Laravel Version: 5.5 (dev-master 3d8ae04)
PHP Version: 7.1

Description:
When creating a named route that immediately returns a view using the built-in ViewController, the name is ignored and not set on the route. This is probably also the case for the new Route::redirect() method.
Not sure if this is a bug or just not supported. The release notes don't mention it, but as it's a regular route, people will suppose it is supported.
Steps To Reproduce:
\Route::view('home', 'pages.home')->name('home');

The following should return the URL to the route:
route('home');

But produces an ErrorException
Route [home] not defined.

Temporary workaround
Passing the name and controller as an array does work.
\Route::match(['GET', 'HEAD'], $uri, ['as' => $name, 'uses' => ViewController::class])
            ->defaults('view', $view)
            ->defaults('data', $data);

I can't reproduce your issue (Laravel 5.5 3d8ae04; PHP 7.1.3 (cli)).
I have the following routes:
\Route::get('/', function() {
    echo route('home');
});

\Route::view('home', 'pages.home')->name('home');

When browsing to /, it displays <IP_ADDRESS>:8000/home.
Same thing when using route('home') from inside a blade template.

Works perfectly for me as well, using your exact "reproduce" steps.
5.5 dev
PHP 7.1.7

Very odd, the most basic example isn't working in my project. It is however shown in the route list (php artisan route:list).
Thanks for the feedback though, will investigate. Closing for now.

Figured it out. My route service provider wasn't registered because I have no need for it, but the parent framework provider does a lot of stuff behinds the scenes (which it didn't do in earlier versions?) to refresh named lookups, etc. Re-added and works flawlessly now!


Nested object creation takes a long time to execute

This seems to be a parsing error, but whenever nested objects are created it causes the BeanShell to a long time to parse and execute the script. Example,
return new CLASS1(
  new CLASS2(x,
    new Class3(
      new CLASS4(
        new CLASS5(x,
          new CLASS6(x,
            new CLASS7(x,
              new CLASS8(x,
                new CLASS9(x,
                  new CLASS10(x,
                    new CLASS11(x,
                      new CLASS12(x,
                        new CLASS13(x,
                          new CLASS14(x,
                            new CLASS15(x,
                              new CLASS16(x), \"payable\")))))))))))))));

This took ~45 seconds to execute. Breaking it apart over several lines speeds up the execution to ~1 second.
import path.to.CLASS1;
import path.to.CLASS2;
...
CLASS 2 secondClass = new CLASS2(...);
CLASS1 firstClass = new CLASS2(secondClass);
...

Can confirm that this works. Thanks!

@daudich was really your good timing =) you're welcome!


Update index.html with a link

Minor stuff to help confusable people like me.

It'd be best to currently note that the webui is a WIP

So leave it like it was? Or add an disclaimer?
Closing for now.

It was fine, it just needed a message stating its still in development


WIP: Adding preProcess support to V2 transformer

Description of changes
This begins to add support for transformer plugins to modify schemas outside the transformation process. Enables codegen to hook into these changes directly and use them
This is only for the purpose of adding support in right now and does not hook into any active workflows

Issue #, if available

Description of how you validated changes
Unit testing
Checklist

[x] PR description included
[x] yarn test passes
[x] Tests are changed or added

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

Outdated, we've transitioned to amplify-category-api


Conditional deployment of Virtual Network Links does not work

Bicep version
0.12.40
Describe the bug
Resource of type Microsoft.Network/privateDnsZones/virtualNetworkLinks does not respect conditional deployment.
To Reproduce
Background: I have a module for creating virtual network links on a Private DNS Zone for various resources, e.g. storage services (blob, file, etc.), Cosmos DB (documents), and Function Apps (sites). Taking just one virtual network link for blob service as an example, the following components should not allow the virtual network link to be deployed, but the deployment is errantly attempted.
// Virtual network of the network to be linked to the Private DNS Zone.
param virtualNetworkName string
param virtualNetworkId string

param blobPrivateDnsZoneName string = ''

var stgAcctPrivateDnsZoneVnetLinkName = 'link-${virtualNetworkName}-to-dns-st'
var blobDnsNameIsNotEmpty = !empty(blobPrivateDnsZoneName)

resource blobPrivateDnsZoneVnetLink 'Microsoft.Network/privateDnsZones/virtualNetworkLinks@2020-06-01' = if (blobDnsNameIsNotEmpty) {
  name: blobDnsNameIsNotEmpty ? '${blobPrivateDnsZoneName}/${stgAcctPrivateDnsZoneVnetLinkName}' : ''
  location: 'global'
  properties: {
    registrationEnabled: false
    virtualNetwork: {
      id: blobDnsNameIsNotEmpty ? virtualNetworkId : ''
    }
  }
}

In the event that I DO NOT pass a name in for blobPrivateDnsZoneName, blobDnsNameIsNotEmpty correctly returns False, but creation of the virtualNetworkLink resource is still attempted with an empty string for the name. The error from Azure/ARM is:
{"code":"DeploymentFailed","message":"At least one resource deployment operation failed. Please list deployment operations for details. Please see https://aka.ms/DeployOperations for usage details.","details":[{"code":"InvalidTemplate","message":"Deployment template validation failed: 'The template resource '' of type 'Microsoft.Network/privateDnsZones/virtualNetworkLinks' at line '1' and column '4016' is not valid. The name property cannot be null or empty. Please see https://aka.ms/arm-template/#resources for usage details.'."}]}

However, the validation pass should not take a look at the virtual network link, as I have it marked conditional AND I have ternary conditional safety on the virtual network ID parameter.
Additional Context
The Private DNS Zones already exist in a separate resource group and this virtual network links module is called within the scope of that other resource group.

The issue that you are bumping into here is that ARM is validating the name of the resource even though you're doing a conditional deployment.
When blobDnsNameIsNotEmpty returns false the name property for the virtualNetworkLinks resource is '' and this is what ARM is rejecting. You can provide a dummy name in your condition instead of '' as a workaround. But since you are deploying a child resource with segmented names and your condition is to check if a parameter with the DNS Zone name is empty you need to use a dummy name for the first segment as well or we would get an error that the number of segments are incorrect.
Here's an example that would work for you:
// Virtual network of the network to be linked to the Private DNS Zone.
param virtualNetworkName string = 'steffes-vnet'
param virtualNetworkId string = '/subscriptions/19a40d9e-404c-4b46-996d-2f88331816f3/resourceGroups/steffes-rg/providers/Microsoft.Network/virtualNetworks/steffes-vnet'

param blobPrivateDnsZoneName string = 'test.com'

var stgAcctPrivateDnsZoneVnetLinkName = 'link-${virtualNetworkName}-to-dns-st'
var blobDnsNameIsNotEmpty = !empty(blobPrivateDnsZoneName)

resource privateDnsZone 'Microsoft.Network/privateDnsZones@2020-06-01' existing = {
  name: blobDnsNameIsNotEmpty ? blobPrivateDnsZoneName : 'dummy.com'
}

resource blobPrivateDnsZoneVnetLink 'Microsoft.Network/privateDnsZones/virtualNetworkLinks@2020-06-01' = if (blobDnsNameIsNotEmpty) {
  name: blobDnsNameIsNotEmpty ? stgAcctPrivateDnsZoneVnetLinkName : 'dummy'
  parent: privateDnsZone
  location: 'global'
  properties: {
    registrationEnabled: false
    virtualNetwork: {
      id: blobDnsNameIsNotEmpty ? virtualNetworkId : ''
    }
  }
}


libc/atomic: decoupling atomic and spinlock to avoid recursion

Summary
libc/atomic: decoupling atomic and spinlock to avoid recursion

use irq save in AMP mode
use mutex lock in SMP mode

Impact
N/A
Testing
gcc14 with sim/smp

[Experimental Bot, please feedback here]
NuttX PR Requirements Review
Meets Requirements? Partially
Breakdown:

Summary:

Adequate: Provides a brief overview of the change (decoupling atomic and spinlock) and the methods used.
Missing: Lacks context on why this change is necessary. What problems were caused by the previous coupling? This is crucial for reviewers to understand the PR's purpose.

Impact:

Insufficient:  "N/A" is rarely accurate for code changes. This section needs careful consideration:

Feature Changes:  Even if no new features are directly exposed, internal changes can impact existing functionality.
Build/Hardware/Documentation: While the impact might be minimal, it's unlikely to be truly "N/A". Be specific.  Does this affect certain architectures more than others?
Security/Compatibility: These are critical and cannot be dismissed outright.  Atomic operations and spinlocks are fundamental to concurrency; any change has potential implications that MUST be addressed, even if the answer is "no impact, and here's why...".

Testing:

Insufficient:

Build Host:  Provide OS and compiler versions for reproducibility.
Targets: "sim/smp" is vague. Specify the exact simulator/emulator and configurations used.
Logs:  "your testing logs here" is unhelpful. Include ACTUAL logs demonstrating the issue BEFORE the change, and the improved behavior AFTER.

Recommendation:
Do not submit this PR in its current state. Address the missing information:

Expand the Summary: Explain the problem the change solves.
Thoroughly Analyze Impact: For each point, either state "No impact" with a brief justification OR describe the specific impact.
Provide Detailed Testing Information: Include full build host details, specific target configurations, and relevant log snippets that demonstrate the change's effect.


cpio: add patch for CVE-2021-38185

Motivation for this change
https://nvd.nist.gov/vuln/detail/CVE-2021-38185
No release yet.
Things done

Built on platform(s)

[x] x86_64-linux
[ ] aarch64-linux
[x] x86_64-darwin
[ ] aarch64-darwin

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
[ ] Tested execution of all binary files (usually in ./result/bin/)
21.11 Release Notes (or backporting 21.05 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[ ] Fits CONTRIBUTING.md.

Result of nixpkgs-review pr 135316 at b2c07a1a run on x86_64-linux 1

49 packages marked as broken and skipped:

airtame
autotrace
cassandra_2_1
cassandra_2_2
clickshare-csc1
dvd-slideshow
electron_3
electron_4
electron_5
epsxe
git-dit
globalplatform
gnash
gnuradio3_7
gnuradio3_7Packages.ais
gnuradio3_7Packages.gsm
gnuradio3_7Packages.osmosdr
googleearth-pro
gppcscconnectionplugin
gpshell
grass
hadoop
hadoop_2_7
hadoop_2_8
hadoop_2_9
haskell.compiler.ghc8104
haskell.compiler.integer-simple.ghc8104
impressive
intecture-cli
invoice2data
jboss
k2pdfopt
linuxKernel.packages.hardkernel_4_14.virtualbox
linuxPackages_hardkernel_latest.virtualbox
natron
obinskit
odpdown
opentsdb
pcsxr
pig
scribus
spark
staruml
terminus
termplay
tvheadend
unifi-video
vdrPlugins.xineliboutput
xorg.libAppleWM

15008 packages skipped due to time constraints:

AusweisApp2
DisnixWebService
EBTKS
Fabric (python39Packages.Fabric)
MIDIVisualizer
R
Sylk
_389-ds-base
abcl
abiword
...

1 package built successfully:

cpio

3 suggestions:

warning: missing-patch-comment
Consider adding a comment explaining the purpose of this patch on the line preceeding.
Near pkgs/tools/archivers/cpio/default.nix:15:5:
   |
15 |     (fetchpatch {
   |     ^

warning: unclear-gpl
gpl3 is a deprecated license, please check if project uses gpl3Plus or gpl3Only and change meta.license accordingly.
Near pkgs/tools/archivers/cpio/default.nix:31:5:
   |
31 |     license = licenses.gpl3;
   |     ^

warning: maintainers-missing
Package does not have a maintainer. Consider adding yourself?
Near pkgs/tools/archivers/cpio/default.nix:28:3:
   |
28 |   meta = with lib; {
   |   ^

https://github.com/NixOS/nixpkgs/issues/139399


Treat convention as setting ignore, rather than select

This PR treats the convention setting as an "ignore" directive, rather than a "select" directive, which leads to confusing settings and behavior.
The new semantics are such that setting a convention force-disables any rules that are incompatible with that convention. You can disable further rules via ignore directives.
The biggest limitation here is that you can't enable rules that aren't compatible with the convention, as long as the convention is set. It's impossible. So for example, if you used pep257 but wanted to enable a few of the checks that pep257 excludes by default, you'd be out of luck. This is a limitation, but I considered a few other models (like letting extend-select override this behavior), but honestly, this felt like the clearest. If you find yourself in that position, you can always avoid setting convention and select codes manually.
See the discussion here: #1569. This approach also would've prevented this issue: #1603.

\cc @stinodego - how does this look?

Thanks @charliermarsh ! Exactly what I had in mind.
Regarding the limitation of this approach: I believe this now matches how flake8-docstrings is normally configured. So even though it is a limitation, it will at least be familiar to people coming from flake8. And it's easy to work around, by creating your 'own' convention as a set of ignores. This is what we previous did (and still do now with Ruff) in Polars.


unify expressions to make sure document consistency

What is changed, added, or deleted? (Required)

Which DM version(s) do your changes apply to? (Required)

[x] master (the latest development version)
[x] v2.0 (TiDB DM 2.0 versions)
[ ] v1.0 (TiDB DM 1.0 versions)

What is the related PR or file link(s)?

This PR is translated from:
Other reference link(s):

Do your changes match any of the following descriptions?

[ ] Delete files
[ ] Change aliases
[ ] Need modification after applied to another branch
[ ] Might cause conflicts after applied to another branch

/merge

/merge

/merge

/merge

/merge


"Signature length not correct: got 512 but was expecting 256" using DEMO environment

I'm using the demo RP and test accounts as documented here https://github.com/SK-EID/smart-id-documentation/wiki/Environment-technical-parameters#demo-parameters
But when validating the response I get:
2022-11-17 16:55:47,561 DEBUG [ee.sk.smartid.AuthenticationResponseValidator] (executor-thread-3) Error verifying signer's certificate: CN="TESTNUMBER,QUALIFIED OK1", SERIALNUMBER=PNOEE-30303039914, GIVENNAME=QUALIFIED OK1, SURNAME=TESTNUMBER, C=EE against CA certificate: CN=sid.demo.sk.ee, O=SK ID Solutions AS, L=Tallinn, C=EE: java.security.SignatureException: Signature length not correct: got 512 but was expecting 256
Is there a way of controlling the sig length?
Thanks

please provide info how hash is generated. In authentication by default SHA512 is used when using method generateRandomHash(), sample #authenticating-with-semantics-identifier
In that example hash type can be controlled with:
generateRandomHash(HashType.SHA256)
Based on error you get I think you have a problem with missing CA certificates. By default this library includes only production certificate chain. Please look into #how-to-use-it-against-demo-environment

That's really helpful, thank you - I was using the wrong certificate (from https://github.com/SK-EID/smart-id-documentation/wiki/Environment-technical-parameters#demo-parameters).  All working now.


Unable to use Kinetic Whip with Tower Shield

Kinetic Whip gets icon goes dark as soon as you equip a tower shield, but it will keep working if you use a light or heavy shield.

The correct behavior would be to always have it dark, when a shield is equipped, right? I think to remember kinetic blade cannot be used with a shield, unless you are kinetic knight. Or at least gathering doesn't work with any shield...

Both hands being free are required for most Kineticists to gather power. Kinetic Knight allows you to use Light or Heavy Shields and still gather power (in tabletop, Elemental Bastion is unfortunately not implemented.)
Kinetic blade and Kinetic whip are both treated as one handed weapons, so off hand should not make a difference for ability to use.

I will take a look at it. Getting late though

Kinetic Whip should probably also be available to a TWF Kinetic Knight while using the weapon for Kinectists in the offhand - whether it should augment just the main hand into having reach or both main and off-hand, would be up to you. I think it should basically only be greyed out if you currently don't have a Blade Infusion equipped (turned on) at all.

Should be fixed with 1.1.4. Let me know if it works satisfactory.


mxgraph is end of life

Hi
drawio repos  have too much override from mxgraph project.
They are looking for new maintainers in this repo.
https://github.com/jsGraph/mxgraph/issues/1
So what about drawio's future?
drawio gonna end life ?

Development is continuing as normal on this repo. No plan to EOL in next 20 years...


Use Helm template to generate image OCI path

Similarly to other projects, we want to use a Helm template to generate the OCI image URL.
See https://github.com/cert-manager/cert-manager/issues/6329 for more info.

/approve


Set ssl-protocols

Hi would like to change the ssl-protocols setting but I found only that this should be changed in "ConfigMap".
How this should be done? Where I can change the current configMap for nginx-ingress?
Thanks

You can make it work in 2 ways:
Interactively:
kubectl edit configmap nginx-configuration -n ingress-nginx

Add the following:
data:
  ssl-protocols: TLSv1

Or via patch:
kubectl patch configmap nginx-configuration -n ingress-nginx -p '{"data": { "ssl-protocols": "TLSv1" } }' --type='merge'

Let me know if it doesn't work for you.

Hi @superseb , I already tried the first command.
When I edit this, it tells "configmap/nginx-configuration edited"
Should nginx works immediately with the new config? Or I have to recreate pods or other stuff?


Some important system commands

Hi,
The issue comes when you try run some commands in order to do some common coding stuff (things like: find the size of directory e.g. .node_modules, dist...), this is very common to try something on webcontainer before run it on a real server or locally, there is no du -sh command to run or something similar AFAIK, I use to run some custom js code in order to do that, is it possible to support more linux command for that kind of tasks? if no, is it possible to support some custom pre-built js code as command line?

Hi @bitsnaps! Thanks for reaching out. It's always good to know which commands our users use. I've created an internal ticket for du.

Hi @bitsnaps! Thanks for reaching out. It's always good to know which commands our users use. I've created an internal ticket for du.

Thanks, in fact there are too many useful missing commands if want (grep,history,zip/unzip, tar,less/more, df, curl,git, whoami... ) and some missing options in other command (like -S and -t in ls...), I'm not sure if there is a generic safe way to allow all these commands.

curl works with some basic flags (might not have everything you wish for though). If you use StackBlitz Codeflow via https://stackblitz.com/~ you can also use git.


Possibility to send errors details

Closes #21

Please add tests. Thank you for PR

@wolfy-j take a look please. Need more or this will be enough.

Changed looks good, I can merge them now. Do you want to do anything with https://github.com/spiral/php-grpc/blob/master/cmd/rr-grpc/grpc/debug.go#L80
(realtime log) or it is not compatible with arbitrary error messages?

I will try to pack new release next week, I want to add support for new Metrics service with exposure to Prometheus.


Can you explain how to use Lapse for partly page caching

Hi there,
As I understand this plugin is multifunctional and useful for many tasks.
I have problem with my site.
I have many GeoIP dependent parts that is changed based on IP (geo) from what user visit site.
The best way is to cache all pages with country as a key, so, for example, I will have a page
news.hungary.cache
news.netherlands.cache
that will have different content
or if this isn't possible explain how for example I can create cache for header and footer (that is similar for all countries).
also, I'm using builder plugin and every block also has Geo dependency, so if it possible to cache it depending on country.
Thanks, for help :) and trust that impossible possible)

just put the name of the country inside the key (or key array).
$country = getCountryNameFromIP($ip);  // you need to figure that part out, can not help you there
$data = Lapse::io(['news-cache-for', $country], function () use ($country) {
        $request = Remote::get('https://api.example.com/country/ . $country); // some api, just an example

        if ($request->code() === 200) {
            $results = $request->json(false)->data; // assuming a json like { data: [...] }
         }
         return $results ;
});


Router Placeholder with filename

 $this->get('/{name}.svg', [$this->getContainer()['controllers.plugin'], 'svg']);

[Sun Mar 17 19:56:34 2019] <IP_ADDRESS>:33764 [404]: /FroshTemplateMailMjml.svg - No such file or directory
It seems so that i can't create a route for a filename. If i remove the .svg it works....

Internal Webserver from php 😆


Lighter images

Hi,
First of all, great library! I would just like to leave an enhancement idea, which I did not find as a suggestion here.
We were going to use this library for our project, we even started porting, but then I found out that the image files need to be either in RAM or in a file system, defined by a driver that we could write.
The problem was only that the binary format for the images is too large, we can't rely on such large files for our embedded device, our current image format solution occupies less than 1/4 of your image format size.
I can think of 2 ways to help in that regard:

A more obvious one is to use other image formats, maybe rely on PNG format, or use palettes to encode pixels with less bits.
Allow users to register other functions to "build" the image, instead of the lv_img_set_src() function, which would make the user have to do more low level stuff, but in our case, would solve the problem easily.

For an embedded library, it would be expected for lightweight resources to be used. If only for that, we would have opted for this library. With that done, it would be the perfect call for our needs.
Cheers. Keep up the good work.

Hi,
Thank you!
It's a very reasonable requirement.
If you could provide a function likeget_image_data(x1,y1,x2,y2, data) then it would be easy to add this functionality to LittlevGL.
What do you think about it?

Besides image decoder interface to enable the use of lighter images I'm planning to add support for indexed images with 1, 2, 4 or 8-bit colors and/or 1, 2, 4, 8-bit alpha.
For example, a 2-bit image (4 colors) has 1/8 size compared to a 16-bit image!

A new image converter tool is added with a lot of new features including 1,2,4,8 bit color formats. For test available here: http://www.test.littlevgl.com/image-to-c-array
It is compatible with the dev-5.2 branch.
If you have questions or remarks please open a new for them!


Calculate MaxInstance fix

Implements #398

Looking at https://ci.appveyor.com/project/SimonCropp/diffengine/builds/48091678 is seems that only the MacOS run failed but the Visual studio 2022 run also failed.
My best guess is that the test fail as multiple test write to the same environment variable. I will look into this or remove these tests.

thanks. very nicely done. i will merge and deploy this in a few hours. i will also bump the reference in Verify so u dont need to explicitly ref diffengine


_.isElement should add a property existing detect

  _.isElement = function(obj) {
    return !!(obj && obj.nodeType === 1);
  };

is it necessary to add !! before obj && obj.nodeType === 1?
and to avoid an exception been thrown,we should add a detection for the property "nodeType" first.
  _.isElement = function(obj) {
    return (obj && "nodeType" in obj && obj.nodeType === 1);
  };

It's to coerce a Boolean return value. Imagine if obj was null.
No need for the in check, though.


BL-270 Bug/upgraded react

Description
upgraded React 17 to React 18.
Video Link
https://www.loom.com/share/eaedaf50970a4e39bbb25b338e675d14
Trello Link
https://trello.com/c/A0ZPbKKx/400-needs-updated-from-react-17-to-react-18
(Example below):
Fix: Refactor sidebar to have icons representing each element in the sidebar
Type of change
Please delete options that are not relevant.

[X] Bug fix (non-breaking change which fixes an issue)
[X] This change requires a documentation update

Checklist:

[x] My code follows the style guidelines of this project
[x] I have performed a self-review of my own code
[x] I have removed unnecessary comments/console logs from my code
[x] My changes generate no new warnings
[x] I have checked my code and corrected any misspellings
[x] No duplicate code left within changed files
[x] Size of pull request kept to a minimum
[x] Pull request description clearly describes changes made & motivations for said changes

2 Story Points!

 Needs updated from React 17 to React 18


[avutil] add method to copy a stream from the first video keyframe

PR Type

[x] Feature
[ ] Bug fix
[ ] Docs

Description
Add CopyFileFromKeyframe() to copy a stream from the first video keyframe (the audio stream is copied straight away.
This allows multiple calls to CopyFileFromKeyframe() with the same source, at different moments in time, without introducing A/V desynchronisation.
Notes for your reviewer
I think this works best with streams with a low Gop (1 or 2 seconds), I have not tested very long gops (but long gops are not desirable for streaming anyway).

I let you do the merges 😉


Make it easy to get an SDK session with the same role/region as a provider

Hello!

Vote on this issue by adding a 👍 reaction
If you want to implement this feature, comment to let us know (we'll work with you on design, scheduling, etc.)

Issue details
Since Pulumi is just code, you have the ability to fall back to the AWS SDK and make direct SDK calls.
However, this may not be straightforward if you're working with multiple accounts/regions.
I have a pulumi application that is orchestrating resources across multiple accounts and had a provider per account.
It would be nice if there was a straightforward method to get an SDK client/session that operates with the same account/role/region/credentials as a provider to ensure that my API calls are happening in the account/region I expect them to.
Partially motivated by https://github.com/pulumi/pulumi/issues/8264
Affected area/feature
AWS Provider

just realized this is a duplicate of https://github.com/pulumi/pulumi-aws/issues/841, closing


Add support for reading accelerometer data from FIFO

Tested working on the T-Watch 2020 V3 S3.
Takes around 40 milliseconds for read+decode for 100 samples at 100 Hz (1 block per second) - so utilizing 4% CPU.
Closes #3

Hi @antirez - any chance for a quick review on this? Is basically all additive, and quite plain/simple stuff (imo)

Hello @jonnor, very interested in this feature, thanks! I need to build a board with the chip again to test and merge. If I fail to do so in a timely fashion, I'll merge it without testing as I guess you tested it. Thank you.

Thanks for having a look!
Yes I tested on the T-Watch. Many other ready-to-run devices from M5Stack
also have this accelerometer, like the M5Stick-C (at 20 USD). So that could
be a good alternative to a custom device for testing!
On Tue, 21 May 2024, 10:42 Salvatore Sanfilippo, @.***>
wrote:

Hello @jonnor https://github.com/jonnor, very interested in this
feature, thanks! I need to build a board with the chip again to test and
merge. If I fail to do so in a timely fashion, I'll merge it without
testing as I guess you tested it. Thank you.
—
Reply to this email directly, view it on GitHub
https://github.com/antirez/bma423-pure-mp/pull/5#issuecomment-2122089205,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAALBALXM3KQ2JTPOKUK2M3ZDMCGRAVCNFSM6AAAAABF2QPX2OVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDCMRSGA4DSMRQGU
.
You are receiving this because you were mentioned.Message ID:
@.***>

It'd be great to get this merged, reading the FIFO is a super-useful feature!

@antirez any chance of a merge for this? I am hoping to make some code examples for the T-Watch (in emlearn-micropython) that would make use of this driver and the FIFO.


Typo in Payment Gateway 'razorpay'

What I'm trying to achieve
…
Typo in Payment razorpay. https://github.com/mirumee/saleor/blob/0cf515b36501f341fda8f3310c6f0f570e6a5350/saleor/payment/gateways/razorpay/forms.py#L13
https://github.com/mirumee/saleor/blob/0cf515b36501f341fda8f3310c6f0f570e6a5350/saleor/payment/gateways/razorpay/forms.py#L16
Steps to reproduce the problem

N/A

What I expected it to be
…
Razorpay instead of Rozorpay
Screenshots

System information
Operating system: N/A
Browser: N/A

Hi!
Thanks for finding the typo. Maybe you could open a PR for it?


TypeError: import_openapi_client_axios.default is not a constructor

Project I am working is in in vite + vue3 + typescript.
I am creating a utilities library that future microfront-ends in my organization can leverage. This includes the OpenAPIAxiosClient. I provide this via a class in the utilities library. I have had no issues in previous POCs leveraging the OpenAPIAxiosClient in a typescript project.
I am wondering if 1) the issue is due to another Axios client that is instantiated in the same app 2) the fact that I return the OpenAPIAxiosClient instance from another class that itself is instantiated as a wrapper for the consuming app to call and retrieve the OpenAPIAxiosClient it spins up (I do this because our APIs can be used for web and native devices and authentication is different but the API endpoints and schemas are the same swagger definitions).
I use rollup to bundle the utilities library I mentioned.

Discovered the issue only happens when I install my package from the repo, it does not happen when I install the package via a file path from my package.json .... "my-package-with-openapi-client": "../../path/to/project";

Solved, documentation is misleading, as for some reason the object OpenApiClientAxios is not the default export. But solved by changing to import { OpenAPIClientAxios } from 'openapi-client-axios';


chore(DEV-8359): Bump url-polyfill version from 1.1.5 to 1.1.8

Strange Travis errors, but they don't seem like an issue with the code. I'll merge into develop and see how the tests run.


first things first

have all the main files in the root of the repo?

Just did that. I added folders to keep it organized, but I put the package code itself in the root, otherwise it wouldn't work (because of paths).


Only 3 invoices are synced

I'm currently facing this issue and I just can't find a solution.
The cron only syncs 3 invoices, but there are ~90 invoices in WHMCS.
Any idea?

Hmm, I've found this in my database.
SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry '800' for key 'mod_moneybird_customer_links_whmcs_customer_id_unique' (SQL: insert into mod_moneybird_customer_links (whmcs_customer_id, moneybird_customer_id) values (800, 16))

I'm sorry for not getting back to you sooner.
The issue is most likely originating from this part of the module.
https://github.com/sensson/whmcs-moneybird/blob/9c6b22194b289c58e9641c3416dcb4f2dc93861d/lib/Models/Client.php#L123-L130
That doesn't make sense though. Because earlier on we fetch the link from the database:
https://github.com/sensson/whmcs-moneybird/blob/9c6b22194b289c58e9641c3416dcb4f2dc93861d/lib/Models/Client.php#L77
We would only create the a new link if the previous one didn't exist.
Can you check if whmcs_customer_id 800 exists in mod_moneybird_customer_links?


cnnModel folder not found

Hi kamnitsask
I'm facing an issue in after training process. In my output folder i can't find  ./examples/output/cnnModels/tinyCnn.initial.DATE+TIME.model.ckpt.[data..., index]  and other three folders are created. Therefore I'm facing issue during training  please help me out.

The files should be there, just make sure that you are looking for the correct name of file (replace tinyCnn/initial/DATE+TIME/etc as needed).


Specifying encrypted_max_length instead of max_length in models

This is intended to resolve #11 by asking the user to specify encrypted_max_length in their models instead of max_length. The user has the option of still using the old method of max_length with the side effect of migrations being produced every time makemigrations is run. This seemed reasonable to me since some users might not care (if they have a small app that only requires an initial migration).

LOL, just noticed that #7 addresses this issue in a slightly more reasonable way. Feel free to close this pull in favor of that one. Whatever fixes this most appropriately!

@mrname no problem. closing this pull request.

Thanks @danaspiegel. In light of closing this, are there any plans for merging #7 any time soon?


Add Support for Changing One's Own Estimation

from last planning poker session w/ the team
It would be great if I as a user can change my estimation w/o killing the estimations of the others. ^^

How about just clicking another card?

Thx4feedback. MayB we can have both:

remove estimate
select another estimate


fix column prune generate empty project list on join's child

Proposed changes
Issue Number: close #xxx
Problem summary
When we do cross join and project on it only has one side of its child, we will generate a empty project on its child and lead be core dump. This PR fix this problem.
Checklist(Required)

Does it affect the original behavior:

[ ] Yes
[x] No
[ ] I don't know

Has unit tests been added:

[x] Yes
[ ] No
[ ] No Need

Has document been added or modified:

[ ] Yes
[ ] No
[x] No Need

Does it need to update dependencies:

[ ] Yes
[x] No

Are there any changes that cannot be rolled back:

[ ] Yes (If Yes, please explain WHY)
[x] No

Further comments
If this is a relatively large or complex change, kick off the discussion at<EMAIL_ADDRESS>by explaining why you chose the solution you did and what alternatives you considered, etc...

LGTM


Introduce binary-based suffixes (for kibibytes and so on).

This introduces new NumStyles for formatting quantities in binary-based units, such as kibibytes (1024 bytes) and so on. Please review.
This is not very urgent for me, I'd rather see hackage release of 0.1.2 with #6 :)

Thanks! :)

Sorry for the delay, I haven't been able to get package release access. @ozataman LMK if you want to try to give me hackage access again or if we absolutely can't get past that, you could just do a release. master is ready to go.


Problem showing an aeircraft with engine, but without nacelle

When just applying an engine to an aircraft (here called "bothEngines") without a nacelle, TiGL-opens an error dialog box in the GUI:

After clicking on "close", TiGL proceeds and shows the rest of the geometry - but from my perspective it should be fine to have an aircraft with engine but without nacelle (e.g. engine buried in the fuselage).

I agree it should be possible. What does the CPACS standard say? Is a nacelle mandatory or optional?

It's optional: engineType

If I remember correctly, the problem was that we try to build a tree of RelativelyPositionedComponents. Therefore the CPACSEnginePosition was initially implemented as a RelativelyPositionedComponent, ignoring the fact that it does not necessarily contain any geometric information.

The same problem occurs with pylons, can be reproduced e.g. with https://github.com/DLR-SC/tigl/blob/master/tests/unittests/TestData/CPACS_30_D250_10.xml.


Hide error/slow responses graphs if data is missing

The graphs at the bottom of the deployment dashboard come from
elasticsearch. For a lot of dashboards, these are empty because the
events aren't logged in a consistent way.
For apps where the data is not available, hide these panels. Also hide
them for low usage apps where there won't be enough events to see
trends.
In the case of the error graph, the graph itself is only useful when
there are errors and you want to break it down by controller, so we
might want to change how we present this for apps that don't error all
the time. A series is only drawn on the graph if there is an event so
the graph is just blank if everything is fine, which is confusing.
https://trello.com/c/lVNtP9A4/47-hide-errors-by-controller-and-slow-responses-by-controller-graphs-on-dashboards-where-they-have-no-data

Updated to separate the graphs onto different row, mainly to simplify the horrible puppet syntax when building up the array of partials.


The policy does not learn in the unicycle mode

Hi,
I trained the model with the unicycle kinematic and using 20 humans as obstacles and I noticed that the policy does not learn. Is there any requirement for the number of humans with unicycle kinematic?
I believe the interval (-0.06, 0.06) for the change of angle i.e., \Delta \theta  is too small for the agent to navigate this dense environment.
Thanks.

If you have a strong computer, you can increase the number of parallel environments by changing args.num_processes and the number of training steps args.num_env_steps in arguments.py . Otherwise, you can reduce the task difficulty by fixing the starting and goal positions of robot and/or humans.


Ui file convert issue.

Hey guys, think I found an issue with the convert method.
        line = line.replace("QtWidgets.QApplication.translate",                             "Qt.QtCompat.translate")
the import after the conversion will look like this:
from Qt import QtCore, QtGui, QtWidgets
So Qt is not imported. Should have an 'import Qt' somewhere or 'from Qt import QtCompat'.

Thanks for your input @BoubQC! That does sound like a bug.
If you've got an idea how to solve it, it would be great to hear about it. Spontaneously, I think I'd do something along the lines of this:
line.replace("from PySide2 import", "from Qt import QtCompat, ")

And in that way, QtCompat would be imported in every case. I can't see any immediate problems with it, but I'd be interested in hearing your thoughts.

@mottosso Your solution looks fine to me. Adding a line 'import Qt' won't look any better and personally it's not a big deal to have an unused import in those files. You could validate if we need it before adding it but it's not essential.
By the way, would it be a good idea to add a line to replace 'from Pyside import'? For old files compiled with Pyside?
Thanks for your time


Not loading if there are no keywords in bibtex-file

if there are no keywords in bibtex-file pubviz is not loading.
This code at line 3880 fixes this issue
var fontSize;
if(params.words.length!=0){
   fontSize = d3.scale.log().domain([params.words[(params.words.length-1)].size ,params.words[0].size])
                                             .range( [15, 50] )
                                             .clamp( true );
}else{
	fontSize = 12;
}

thank you for your contribution which is now included in the pubviz file. Now there should be no loading problems even if no keywords | years | authors | types are in the bibtex file.


Republish divide by zero issue?

First, a little appreciation:
I have huge appreciation for you right now!
I just started playing around w/ microcontrollers and have been stumbling my way though learning all the things.  I got my little 128x64 OLED going on an ESP32 and was super excited to graph some accelerometer data.

Now the issue:
I got ESparklines running on my ESP32, but I get flatlines at 0.  It looks like you may have solved this with your "fix divide by 0" issue, but I'm not sure another version got published.  I installed latest, and got 0.0.1.
I'm still new to the ecosystem and PlatformIO so i'm not sure what is involved, but it'd be great to get a new publish out.
Also, I tried making your fix locally and it does work, but it might be drawing outside the defined rect.  I'll debug some more and maybe I'll get a PR in.

Thanks for the praise.
Not sure what your issue is, can you post the code?
Else, always use the newest git version of the code.


Validation of wf syntax on push

improve workflow pipeline to test wf health
install dependencies and use cwtltool validate to check any syntax error, while does not provide an insight about results may help prevent syntax errors to be merged in the develop branch

This PR would no affect the wf itself. Just improve slightly the check after some commit.


Incorrect highlighting of trailing slash in unquoted HTML attribute values

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

VS Code Version: 1.72.0-insider from 3 hours before reporting
OS Version: Ubuntu 22.04.1

Steps to Reproduce:

code-insiders --disable-extensions test.html
Type:

<!DOCTYPE html>

Actual results:
The trailing slash in the value of the href attribute is highlighted as an error. The trailing slash in the class value foo/ is highlighted as if it was not part of the attribute value.

Expected results
Expected both slashes to be highlighted in the attribute value color, since they parse as part of the attribute value according to the HTML spec.

@hsivonen the spec you link indicates that the href value should be put in double quotes. I do not see this issue when surrounding the href value with double quotes.

I think you are misunderstanding. I didn't link to the spec. I linked to a tool that parses the input using the HTML parser in your browser and, therefore, shows how a real parser tokenizes the input according to the spec (assuming, of course, that the browser you are using complies with the spec on this point).
As for the actual spec, I don't see a requirement to use quotes around the href value. Can you point me to where the spec says so?
In any case, highlighting the trailing slash in an unquoted attribute value in red is defensible to call out something that the user of the editor might not intend. However, the way the slash in the value of the class attribute is highlighted in the example that I gave is unambiguously incorrect. The highlighting suggests that the slash isn't part of the attribute value when it most certainly is per spec and per spec-compliant browser behavior.

Specifically, in the "Attribute value (unquoted) state" the slash goes through the "Anything else" case.

Thanks for clarifying! We get our html syntax highlighting grammar from https://github.com/textmate/html.tmbundle, so this is a duplicate of the upstream issue https://github.com/textmate/html.tmbundle/issues/118.


Do not load user commands or display them on --help if public mode or using LDAP

Also move user commands to their own subfolder (which should unfold even more nicely in v3 I think).
Commands like list do not make sense when using LDAP (or public) as they load the user config files, and commands like add only make sense in private, non-LDAP mode.
In the future, we should allow plugins to add their own commands, in which case LDAP integration could itself have meaningful commands there. In the meantime, my understanding is that it's noise.
@gramakri, could you give your 👍 to confirm this PR?
(You can see I'm working on the re-docs for the CLI because I'm going to open a couple PRs on this 😅)

Gonna merge this now so I can test with improved #1820 correctly.


WIP Migrating to typescript

This PR migrates many of the widgets to use typescript. We also start using a phosphor widget under the hood to provide the dom element. This will allow us in the future to use the phosphor event system to get good resize events, etc.
I also found and fixed several bugs from the typing (like the listen functions don't take a context).

Would you be ok walking me through the changes over a call. Since the ts + internal changes in the files makes it difficult to review, I would prefer not having too much changes accumulating on the top of this one...

Definitely. We can do this today, or I can keep working on changes...

and I'm also happy to rebase anything to make it easier to review. I realize it's quite a patch dump.

Will be nice when we don't have thousands of lines of .d.ts files checked in...

declarativewidgets builds on top of the WidgetModel, so I'm assuming that this should not affect us. Thoughts?

It should be backwards compatible, so hopefully it won't affect you, @lbustelo. We'll watch this closely, though.

Another bug bites the dust! https://github.com/ipython/ipywidgets/blob/master/jupyter-js-widgets/src/widget_int.js#L83 - the w3 spec says the things that you can set this to are strings "true", "false", or "inherit" (https://www.w3.org/TR/2012/WD-html5-20121025/editing.html#attr-contenteditable), otherwise a syntax error should be thrown. Typescript typing caught this.

Another one bites the dust! https://github.com/ipython/ipywidgets/blob/master/jupyter-js-widgets/src/widget_int.js#L566 should also be a string (see https://www.w3.org/TR/DOM-Level-2-Style/css.html#CSS-CSSPrimitiveValue).

Here's a serious bug that typing complained about: https://github.com/ipython/ipywidgets/blob/master/jupyter-js-widgets/src/widget_int.js#L448

Another one bites the dust! https://github.com/ipython/ipywidgets/blob/master/jupyter-js-widgets/src/widget_string.js#L105 (calls the method with undefined, but the method will throw an error because of this)

Typing makes another bug bite the dust! https://github.com/ipython/ipywidgets/blob/master/jupyter-js-widgets/src/widget_string.js#L98 - setAttribute's value should be a string (see https://www.w3.org/TR/DOM-Level-2-Core/core.html#ID-F68F082)

Typing catches another bug! https://github.com/ipython/ipywidgets/blob/d3dc17843435539e8030d08197627c858d853223/jupyter-js-widgets/src/widget_selectioncontainer.js#L158 - textContent is a function on a jquery element. For an html element, it is an attribute that is set.

It would make it easier to review without the renaming to typescript. Is the .ts extension required?

It would make it easier to review without the renaming to typescript. Is the .ts extension required?

That's part of the reason I renamed the files first, and then made the changes to actually convert them to typescript.
But git is also smart about this: git difftool -t meld --find-renames=10% master is your friend!

Another bug! In https://github.com/ipython/ipywidgets/blob/d3dc17843435539e8030d08197627c858d853223/jupyter-js-widgets/src/widget_selection.js#L751, the options parameter is shadowed by the variable created a few lines into the function.

Still todo:

[ ] testing framework
[ ] check to make sure it works on the current notebook still
make sure bqplot, pythreejs, ipyleaflet still work, as sanity checks for custom widgets.

This PR fixes #14.

Several more bugs! (several styling bugs, but these weren't caught by typing, but instead by going through all of the examples)

@SylvainCorlay - tests pass for me, but it appears that travis has errors. Do tests pass for you?

Merging after in-person review and discussion with Jason, so that we can iterate. We are aware of the testing issue.


Update Upgrading section of Readme

Add information about upgrade to 4.x.x

I was thinking that it would be weird for customers if we do not explain major upgrades there the same way kube-prometheus-stack does it https://github.com/prometheus-community/helm-charts/tree/main/charts/kube-prometheus-stack#upgrading-chart whenever they bump the major version.
Ideally, we would have releases with minor versions also :D Hopefully the KSM one https://github.com/giantswarm/prometheus-operator-app/pull/244 will be 4.1.0 :)


Added total DFID country budget amount on the aid by location page.

devtracker.rb - Added a new parameter that passed the total DFID country budget.
helpers/country_helpers.rb - Added the new function for accumulating the total budget for the DFID countries.
public/javascripts/leaflet/indexmap.js - Updated leaflet code to add the hovering info container.
public/stylesheets/main.css - Added some styles to the hovering container.
views/location/country/index.html.erb - Created relevant variables that helped pass the total budget amount to the leaflet js code.

Coverage decreased (-0.07%) to 18.93% when pulling c535b95b1745eb381cdb8cc86a4b1b69614340e3 on T520-Add-total-country-project-budget into 806fe5aaab538f351bdd90ad5503cc9dd9dcd64f on master.


GIN-341: add teams certificates to Gateway and Gateway account configuration

Adds support for Zero Trust certificates in Gateway and Gateway account configuration. The custom /activate api path is treated as a terraform field within the Teams certificate resource.
Relies on merged cloudflare-go change https://github.com/cloudflare/cloudflare-go/pull/2754

acceptance tests all passing
TF_ACC=1 go test ./internal/sdkv2provider -v -run "^(TestAccCloudflareTeamsAccounts|TestAccCloudflareTeamsCertificate)_" -count 1 -timeout 120m -parallel 1
=== RUN   TestAccCloudflareTeamsAccounts_ConfigurationBasic
--- PASS: TestAccCloudflareTeamsAccounts_ConfigurationBasic (6.31s)
=== RUN   TestAccCloudflareTeamsCertificate_Basic
--- PASS: TestAccCloudflareTeamsCertificate_Basic (2.67s)
PASS
ok  	github.com/cloudflare/terraform-provider-cloudflare/internal/sdkv2provider	10.032s


Kanpsack in python

issue #211 solved
@plazzy99 please review my code and let me know if something is wrong.
Thank you!

Resolve conflicts

@rish-singhal can you please review again
Thank you!

@rish-singhal now its fine i guess

Also some lines are very long.


better observability tooling for big runs (issue #343)

This PR uses rich to add progress bars and manage logging for runs.
Debug and error messages are logged behind the bars with a timestamp. I removed the other non debug logs since I'm not sure if they are still wanted if there progress bars are there, but they could easily be added back in.
Limitations / Follow ups

Progress bars are only at a per test resolution. To get a per test item resolution some way to get that info back from modelgauge would be needed.
Errors along with their tracebacks are printed, buts it's a little verbose and it dosen't advise any way of solving them. I don't know enough about common errors and their solutions to implement this at the moment, but it should be pretty easy.
The ways it's coded doesn't make it very easy to re use if we want similar, but not the same, progress bars somewhere else.
When a sut errors it puts the bar at 100%, but it remains green and doesn't indicate that it failed other than logging the error message. I couldn't find a default way to do this in rich, but it shouldn't be too hard to add, the library seems super extensible.
In parallel mode there was some flickering I couldn't figure out how to get ride of.

Example

Overall this looks good! My only suggestion is to put ProgressBars somewhere else (maybe utilities?) to avoid cluttering up run.py. Also I definitely would like to see a fix to the progress bar displaying 100% in green when a SUT errors. But other than that, good job!

I moved it into utilities.py

(generated using a forced error)

I like the addition of the better error handling in the output! Very nice!


ERROR error retrieving token for enviroment

Describe the bug
using the new CLI when I try to download a configuration I get
ERROR error retrieving token for enviroment production environment variable ***** not found
How to reproduce
Steps to reproduce the behavior:
run
monaco download --downloadSpecificAPI application-web -e=environments.yaml
Expected behavior
to download the application-web configurations
Log output
2021-11-23 18:17:48 DEBUG request log not activated
2021-11-23 18:17:48 DEBUG response log not activated
2021-11-23 18:17:48 INFO  Dynatrace Monitoring as Code v1.6.0
2021-11-23 18:17:48 INFO  Creating base project name production
2021-11-23 18:17:48 ERROR error retrieving token for enviroment production environment variable ******** not found
2021-11-23 18:17:48 ERROR error while downloading configs for environment production %!v(MISSING)

Environment (please complete the following information):

OS: [macOs Catalina 10.15.7]
Tool version [e.g. 1.6.0]

Additional context
I'm using this yaml
production:
    - name: "production"
    - env-url: "****"
    - env-token-name: "*****"

the token is the DT token and has configuration API read and write permissions

After reading the source code I found that you are actually looking for an local environment variable which was not clear from the documentation


WIP: Add Documentation for Engage Messaging Webview Feature. RD-18736.

Hey !
Ticket(s):

RD-18736

Change(s):

Add the target to the payload.

Missing:

Screenshots for webview examples on final design.
Documentation for Webview setup and SDK use.

@aymebou is this something we are trying to add in this week's publishing? I just finished merging the last pull request for Structured Messages.

Closing to merge this PR along with #43


Adding support of Thanos when a bucket is provided

This PR implements:

Thanos Store Gateway to access the data stored in a object storage
Thanos Query to access both the Storage gateway and the existing prometheus
Thanos Query Frontend: Frontend for querier
Thanos Bucket Web to visualize the blocks on the Object Storage
Automatically configures Grafana to access the querier

Missing: The bitnami chart doesn't offer the possibility to add a sidecar containers for the frontend, so there is no OAuth integration

@pburgisser I guess you should rebase now that your openshift4/aws has been merged.

@cryptobioz I have no experience at all in Thanos. As you have some, I think it would be a good idea that you review this PR.

FYI, I'm working on a PR on the bitnami chart to integrate more containers so we can implement the front oauthproxy.
I'll probably make a second PR after this one to enhance it.

@cryptobioz May I ask you for a review? please :)

@mcanevet May I merge? I've just rebased


Add LST001 Light Strip, Expose PhilipsColorCluster and PhilipsLevelCo…

…ntrolCluster for both LST00x
LST001 device signature:
{
  "node_descriptor": "NodeDescriptor(byte1=1, byte2=64, mac_capability_flags=142, manufacturer_code=4107, maximum_buffer_size=80, maximum_incoming_transfer_size=80, server_mask=0, maximum_outgoing_transfer_size=80, descriptor_capability_field=0)",
  "endpoints": {
    "11": {
      "profile_id": 49246,
      "device_type": "0x0210",
      "in_clusters": [
        "0x0000",
        "0x0003",
        "0x0004",
        "0x0005",
        "0x0006",
        "0x0008",
        "0x0300",
        "0x1000",
        "0xfc01"
      ],
      "out_clusters": [
        "0x0019"
      ]
    },
    "242": {
      "profile_id": 41440,
      "device_type": "0x0061",
      "in_clusters": [
        "0x0021"
      ],
      "out_clusters": [
        "0x0021"
      ]
    }
  },
  "manufacturer": "Philips",
  "model": "LST001",
  "class": "zhaquirks.philips.lst001.PhilipsLST001"
}

Pull Request Test Coverage Report for Build 354169240

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.02%) to 79.079%

Totals

Change from base Build 353925433:
0.02%

Covered Lines:
2627

Relevant Lines:
3322

💛  - Coveralls


Chore/upgrade packages

upgrade packages

upgraded as follows

Motivation and Context

Maintenance
Priority

[ ] 1 - Highest
[x] 2 - High
[ ] 3 - Medium
[ ] 4 - Low
[ ] 5 - Lowest
[ ] 6 - Not a Priority

Types of changes

[ ] Bugfix (non-breaking change which fixes an issue)
[ ] Feature (non-breaking change which adds functionality)
[ ] Component (add a Component as approved dy Design System)
[ ] Docs (add documentation)
[x] Chore (changes that adds small enhancement)
[ ] Breaking (fix or feature that would cause existing functionality to not work as expected)

Abstract

N/A
Screenshots
N/A
Note

Component and Fix approval flow to Master branch
A Pull Request to be merged must have two approvals, one from a member of the product team who developed it and another from a member of the dst dev team other than the team representative.

As discussed in async there are stilla couple of warning which the cause is not entirely clear to me

yarn build 👍
yarn test 👍
yarn test.e2e 👍
yarn list typescript =><EMAIL_ADDRESS>👍
LGTM


Missing insert_multi method

While an upsert_multi method exists, no insert_multi method is currently available.

Added initial iteration of such a functionality, however some error handling/return should be added to handle if one or more keys already exist.
Things to consider:

Should the method return False if not all keys are saved successfully?
Should the method construct and return a result list/tuple with erroneous document(s)/keys or even status of all documents?
Should it be possible to indicate how errors should be returned by the method by the user?


Rename Type property

Description
This PR uses an Azure.ResourceManager version that also removed ErrorResponse common types.
Checklist
To ensure a quick review and merge, please ensure:

[ ] The PR has a understandable title and description explaining the why and what.
[ ] The PR is opened in draft if not ready for review yet.

If opened in draft, please allocate sufficient time (24 hours) after moving out of draft for review

[ ] The branch is recent enough to not have merge conflicts upon creation.

Ready to Land?

[ ] Build is completely green

Submissions with test failures require tracking issue and approval of a CODEOWNER

[ ] At least one +1 review by a CODEOWNER
[ ] All -1 reviews are confirmed resolved by the reviewer

Override/Marking reviews stale must be discussed with CODEOWNERS first

https://github.com/azure/azure-sdk-for-net/issues/27297


how to train the mode on cross dataset as the label scores range from different dataset are different?

Hi, thanks for your nice work. how to train the mode on cross dataset as the label scores range from different dataset are different?
some values are less than 10, while some are larger than 50.

Hi, thanks for your attention. Our model has not been trained simultaneously on multiple datasets; all our experiments have been conducted by training and evaluating on a single dataset.
However, some studies, such as Blind Quality Assessment for in-the-Wild Images via Hierarchical Feature Fusion and Iterative Mixed Database Training, Blind image quality assessment via vision-language correspondence: A multitask learning perspective, etc, have discussed cross-dataset training. If you are interested in cross-dataset training, I recommend you to follow these studies.


[Bug]-[187]:Issues in Select family widgets

Is there an existing issue for this?

[X] I have searched the existing issues

Description
Select Widget:

Filtering returns values that are not entered by user.
https://www.loom.com/share/d63cacbda90f4dba918c6f52c478ff64

TreeSelect Widget:

If the filtered value is at the bottom of the dropdown, the user is not able to see it unless they scroll down.
Clicking on the x option does not clear the selections made. (Works fine in prod but exists in Release).
https://www.loom.com/share/279055aa30484886bc3503defa1ac387
The option radio buttons do not follow the selected Border Radius.

MultiTreeSelect Widget:

Clicking on the x option does not clear the selections made. (Works fine in prod but exists in Release).
The displayed selected options do not follow the selected Border Radius.

Steps To Reproduce

D&D the following widgets:

Select
TreeSelect
MultiTreeSelect

Public Sample App
No response
Version
Cloud

Assuming 20% of select/Treeselect values are numbers
Stats

Stat
Values

Reach
187

Effort (months)
0.5

@dilippitchika

Clicking on the x option does not clear the selections made. -- Need to check this after a new release goes live in production, this maybe an issue within release only. If so, it's a regression

This is a regression as I was able to produce it only in release and not in prod during our regression.

The displayed selected options do not follow the selected Border Radius. -- This is working fine for me, radio buttons should never follow border radius logic so treeselect is working, in multitreeselect also checkbox follows the logic. @shadabbuchh please check.

In MultiTreeSelect widget the radio buttons do follow the border radius logic (both App Border Radius & widget Border Radius).
https://www.loom.com/share/ac1fa164d235439bb08496f244185671
Should we treat this as a bug then instead of the TreeSelect radio buttons & MultiTreeSelect options not following the Border Radius logic?

Update after call with @dilippitchika:

Clicking on the x option does not clear the selections made.

This issue is still present in release and not in prod.

The displayed selected options do not follow the selected

This will be fixed as a part of #10990

The option radio buttons do not follow the selected Border Radius.

This is not a bug as Radio buttons will not follow the Border Radius logic.


Opencensus metrics do not show in MetricExplorer

I have a GRPC service application written in Go that uses OpenCensus to collect application metrics and traces. I added NewRelic exporter to transfer app metrics to NewRelic backend. I can pull app metrics on the Chart builder page using the following NRQL query:
FROM Metric SELECT uniques(metricName)

However I cannot discover them in Data Explorer (NewRelic INSIGHTS -> Data Explorer -> Metrics ) because  my application does not show up in the application list. Also the application does not show up in the NewRelic APM section.
However everything works if I install and configure NewRelic Go agent. I can see my app in APM, all metrics are discoverable, etc
Is it possible to get the same kind of experience that NewRelic Go agent provides with just using OpenCensus + NewRelic exporter?  Ideally I'd like to keep my application logic use the OpenCensus tracing and metric API so the data can be exported to multiple backends like NewRelic and Stackdriver.

Going to close as we’re addressing out-of-band. Please be sure to contact us via email if you have further questions regarding this, and if you have other related issues to this codebase please be sure to open another issue. 💜


unsupported function: PathRegexp

The whole reason I decided to use traefik's IngressRoute over the vanilla Ingress was the ability to use regexes in paths. Upon realizing external-dns did not support IngressRoute, I was directed to this project. Unfortunately, for a rule like:
  - kind: Rule
    match: Host(`www.lab.otakuthon.com`) && PathRegexp(`^/[0-9]{4}res$`)

where a host can can still be inferred because there is no regex in the host part, switchboard trips up on the PathRegexp part.
From the logs:
2023-02-25T20:58:21.516Z        ERROR   failed to parse hosts from ingress route        {"name": "www-dev/www", "error": "failed to parse domains: unsupported function: PathRegexp"}

Nevermind, misunderstood how PathRegexp works.


Handle tests with GET requests

Is this ticket why https://github.com/ranking-agent/api-watchdog-translator-tests/blob/main/bl_lookup/bl_lookup.watchdog.json fails every day?

Yeah, looks like it. We've merged a way to GET in api-watchdog, but there are a couple blockers with deploying the new version.

OK.  I'd like to also add a test to make sure we have the right number of KPs registered in the registry, but that's a GET as well, so I'll wait until this is resolved.

This seems to be taken care of.


chore(app-shell): Update app-shell to use NgModules in preparation for Angular RC5.

I think IS_PRERENDER might be included in the guide, in which case it would need to be added to exports. Otherwise LGTM!

Even if IS_PRERENDER isn't in the guide, it'd be good to export it because it's useful for non-template logic (JS logic).

Obsolete


[Test] Remove nonexistent library from target-run command.

This caused tests to fail if they were running remotely, but not locally.
rdar://99627836

@swift-ci Please smoke test


Migrat marshall and unmarshall to full Jackson

It's necessary to improve the marshal to json for using Jackson. It'll make the code cleaner and maintainable.
Something like that Jackson – Marshal and Unmarshal.

This is a huge task, it should be done gradually. What do you think?

Well, I agree it's a big task, but I already did the largest part of it. What do you think about we create a development environment for test and homolog new tasks like that?
Have you already heard about gitflow?

Good idea on dev environment. I'm up for it. How do you propose we create it?
I'm researching gitflow now...

We'll change our branch flow for gitflow, and than we we'll have a main branch (like production) and a secundly branch named develop (like homolog). All new features have to be merged on develop when they are ready (and enough tested). When we have enough changes on the develop branch, it will be homologated (to garantee it is stable) and then it will be created a new realese that will be merged on main branch.
All details and others situations are defined on gitflow specifications.

Finished. Check #15 and #30

I am currently testing native modules and I anticipate that I will be finished by Monday next week. There are a lot of changes, so I would prefer to release it separately.

Hey @guilhermegps, can you push your changes?