Duplicate slot warning

Version
2.5.16
Reproduction link
https://codesandbox.io/s/vn7jz1l1kl
Steps to reproduce
Click the button that says "refresh"
What is expected?
Nothing should happen
What is actually happening?
[Vue warn]: Duplicate presence of slot "default" found in the same render tree - this will likely cause render errors.

I have a component B which accepts a scopedSlot, and a component A which accepts a slot. A is passing in it's slot into the scopedSlot of B
<template slot-scope="scope">
          <slot></slot>
</template>

When the component B gets rerendered, I see this warning in the console. B passes a method to the scoped slot which will cause it to rerender when called.

As I understand this won’t be a problem if #8496 is resolved.

I'm not sure there is a connection. I'm not rendering a slot here multiple times. Vue, for some reason, thinks that it's already been rendered.

Haven’t dug into the code yet but I think maybe it’s because scoped slots are rendered like a function call so you keep rendering the slot inside it each time you  rerender the component.

We can use the 'Named Slots' to avoid the duplicate slots.
<template slot-scope="slotProps" slot="hello">blarg</template>
<slot name="hello"></slot>
Here is a working example: https://codesandbox.io/s/66ny97z5r

You're comment confused the heck out of me until I realized that I had something in there that I didn't mean to have.
The API for A should only take a default slot, and that's it (certainly not a scoped slot). Anything else is just an awkward looking api. I've updated the sandbox.
Blarg

Is the API I am after. That default slots gets passed into the scoped slot exposed by B.

This should have been fixed by 530ca1b2 which removes the no-duplicated-slot restriction.


New Request form cannot be submitted unless the "optional" description is filled in

New Request form cannot be submitted unless the "optional" description is filled in. This means that the description is not really optional.

@danielfe I'm thinking this should be hi-priority as is slows down the user workflow... it forces them to enter a description, even if they don't want to. I think it will also be an easy fix

thanks for the note! bumped up the priority.

Yohann, I think the description field IS SUPPOSED to be optional... Isn't that what Daniel said? I which case the fix should be that not having a description should not impact whether the "Create Request" button is active or not...
@danielfe can you confirm?

Yeah I think it should probably actually be optional. In some cases title is enough for chws i think

On Mar 10, 2022, at 6:56 AM, ThomasKapler @.***> wrote:

Yohann, I think the description field IS SUPPOSED to be optional... Isn't that what Daniel said? I which case the fix should be that not having a description should not impact whether the "Create Request" button is active or not...
@danielfe can you confirm?
—
Reply to this email directly, view it on GitHub, or unsubscribe.
Triage notifications on the go with GitHub Mobile for iOS or Android.
You are receiving this because you were mentioned.


Inventory current/new endpoints that provide STLT related data

Problem statement
We need to inventory current/new endpoints that service "Daily Data" and other STLT related pages for the purposes of finding out what data is available from what endpoints and what will need to be added as it relates to the service map (#6503).
Acceptance criteria

[x] A document outlining the availability of each required feature for STLT work
[x] Tickets addressing gaps in available functionality, properly labeled (Experience, Needs Refinement, API)

To do

[x] Gather list of all requirements in STLT future work
[x] Check OpenAPI docs for info
[x] PIVOT! Peruse the code for this info instead
[x] Compile list of necessary tickets to create
[x] Compile list of functionality already existing related to STLT work
[x] Create tickets for refinement

Notes from the process: https://cdc.sharepoint.com/:w:/t/USDSatCDC/EXXo_HDcvhNBre9FnV_37pkBjNFwK7ZryxjpTROmxllQrg?e=tSVh6A

Scheduled for discussion in Eng Sync, October 6th!


Should terminating a launch also stop the server?

Terminating the launch doesn't stop the server instance.  Should it?
Minimal code I can find to do this, though I suspect there must be something else available.
    getLaunchManager().addLaunchListener(new ILaunchesListener2() {

      @Override
      public void launchesRemoved(ILaunch[] launches) {}

      @Override
      public void launchesChanged(ILaunch[] launches) {}

      @Override
      public void launchesAdded(ILaunch[] launches) {}

      @Override
      public void launchesTerminated(ILaunch[] launches) {
        for (ILaunch terminated : launches) {
          if (terminated == launch) {
            server.stop(true);
          }
        }
      }
    });

I suspect it should, but what exactly do you mean by terminating the launch?

If you terminate the launch object in the Debug view:

the server remains in the started state:

I can't think of a reason why this would be useful.  I took a quick look at GPE and didn't see any obvious hooks in its WTP support, but I haven't yet tested.

Seems reasonable.

@briandealwis I think #664 closes this?

I knew there was another issue open, but couldn't find it!


The module not working with proxy_pass

I made the nginx configuration like this:
proxy_set_header Host $http_host;     proxy_set_header X-Real-IP $remote_addr;     proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
In the debug mode, i see WORKER #3 get conn from "ip_address"
I connected from many computers on the same server, but still getting same "ip_address" ( server's ). Because of this problem, cluster shows all clients has same ip. How do i get the client's real ip address?

Hi, @salih3451
Unfortunately, it's not possible, because of https://github.com/uqee/sticky-cluster/issues/18#issuecomment-303365618. The thread also has a link to SO answer with a hint for pure-Nginx configuration.


80% of work you are to told to do is allrady done.

name: Android Basics Unit 4 issue
about: Report problems with the Android Basics Unit getting data from the internet codelabs
title: 'Android Basics Unit 4 issue:'
labels: ''
assignees: ''

URL of codelabhttps://developer.android.com/codelabs/basic-android-kotlin-training-getting-data-internet
In which task and step of the codelab can this issue be found?
Describe the problem
seems 80% of the steps you tell me to do are allrady done for me.
Steps to reproduce?

Go to...
Click on...
See error...

Versions
Android Studio version:
API version of the emulator:
Additional information
Include screenshots if they would be useful in clarifying the problem.

You can get to the intended starter code by opening the Git pane, right-clicking on the starter branch, and selecting checkout.


Builtins don't get budgeted if they don't have arguments

See https://github.com/input-output-hk/plutus/pull/1833/files#diff-def749a774ba31ff1e8f50719cd7414dR70
We currently don't have any builtins that are constants, but this might come up in the future.

The saturated builtins PR is going to disallow builtins with no arguments (or at least throw an error if it finds one).  I think we're going to put off thinking about such things for the time being.

See JIRA issue SCP-779.


run_executable.py should expose an optional gpu_id argument because anyone who uses vk_icd_filenames will probably also want to specify which GPU to use

Fixed in https://github.com/isl-org/spear/commit/6000a7e23ec733820f3e37087df683c15f6a580d and https://github.com/isl-org/spear/commit/aed313ae3da5ee77aeb5325a88d0b6f03a6e1bed.


re:limitToBounds on resize

Describe the bug
In full screen, if I zoom & pan to the bottom left corner for example, when I scale the view down I often see negative space on the bottom because of the coordinates before scaling. Once I tap the component it seems to auto adjust to the ideal coordinates for the scale. Is there a way to automatically trigger this adjustment onResize?
Screenshots
full screen:

scaled down:

after tap:

use disablePadding={ true }

So I have that set, it doesn't have padding unless I resize the browser window. And it snaps back into place once I click on the view.

So I have that set, it doesn't have padding unless I resize the browser window. And it snaps back into place once I click on the view.

@afgarcia86 Did you ever figure this out by any chance?  I'm having the same issue with having too much white space/padding.

So I have that set, it doesn't have padding unless I resize the browser window. And it snaps back into place once I click on the view.

@afgarcia86 Did you ever figure this out by any chance? I'm having the same issue with having too much white space/padding.

Sadly not yet I have just been ignoring it so far. I would be satisfied with a way to programmatically trigger a click.

So I have that set, it doesn't have padding unless I resize the browser window. And it snaps back into place once I click on the view.

@afgarcia86 Did you ever figure this out by any chance? I'm having the same issue with having too much white space/padding.

Sadly not yet I have just been ignoring it so far. I would be satisfied with a way to programmatically trigger a click.

I hear ya.  I'll be sure to share if I come up with anything.  Thanks.


<unk_init> in tutorial 2 Upgraded Sentiment Analysis

In tutorial 2 upgraded sentiment analysis, you first initialize the token in vocabulary but not in pre-trained embeddings via a Gaussian distribution adding unk_init argument  insead of using the default value zero. But then you set their embedding weights to zero. I wanna ask why not initialize the value of <unk> and <pad> to zero at the first time?

The <unk> and <pad> tokens won't be the only ones not in the GloVe vocabulary. By setting the unk_init here we initialize every single token within our vocabulary, but not in the GloVe embeddings. Later on we then manually set the <unk> and <pad> tokens to zero.
Ideally, we would have a function that initializes the <unk> and <pad> tokens to zeros and the others not in GloVe to the Gaussian, but the unk_init argument is a bit specific in what it allows you to pass to it, so I don't think it's possible.

Thanks a lot fo your reply. I thought that every single token within our vocabulary, but not in the GloVe embeddings would be replaced to <unk>. Because I found  BERT did that. Can you see if I understand correctly that every single token within our vocabulary, but not in the GloVe embeddings will remain unchangeable instead of being replaced to <unk>?

For tutorials 1-5: the vocabulary is created by counting the amount of times each token appears in the dataset and taking the 25,000 most common tokens. Each token within the vocabulary can be replaced by an integer index value, tokens not within the vocabulary can be replaced with an unk token.
When we load the GloVe embeddings, a token which is in our vocabulary and also in the GloVe embeddings will be initialized to the value from the GloVe embeddings. A token within our vocabulary but not within GloVe embeddings is initialized by unk_init, i.e. from a Normal distributions. Our unk token, <unk> is not within the GloVe embeddings, therefore it is initialized with unk_init. I believe the confusion is the term unk_init, which doesn't refer to the unks in our vocabulary, but to tokens that are not within the GloVe embeddings.
For tutorial 6: the BERT model already comes pretrained with its own vocabulary and embeddings. Tokens not within the vocabulary cannot be initialized to some unk_init type scheme as we are not initializing and training anything from scratch, only using the pre-trained weights.
Let me know if anything needs further clarifying!


Rust support for Android versions

Opening an issue here, as this is somewhat related to issue #2.
There is currently no agreement on which Android API version should be supported by Rust. Rust used to support version 9 of the Android API. This version is still referenced in the documentation.
An update of the NDK used in CI was done in October 2017, to the latest version then (r15c). As API 14 was the minimum supported version for that NDK, 14 effectively became the new minimum for the API version. Here is the rational captured in that pull request:

Updated NDK to r15c.
Because why not

-

Raised minimum API level of 32-bit targets from 9 (2.3) to 14 (4.0)
NDK r15c dropped support for android-9. (The minimum API level for 64-bit targets remains at 21 (5.0))

In October 2020, a PR was put forward to upgrade the API level to 21. This request was not merged and an alternative was implemented (using low-level syscall in this case). One argument raised during the review was that about 5% of devices still only support API versions lower than 21.
NDK r15c is now unsupported. The current versions of the NDK (r21 LTS and r22) support at the lowest API level 16. It's worth noticing that there is already a conscious decision by the Android NDK release team to support a wide range of devices (this is why level 16 is still supported).
Hence, a suggestion would be that Rust supports the lowest API available in the currently supported NDK. This would ensure that a supported version of the NDK is being used (for Rust CI and app developers) while maintaining the maximum compatibility for older devices.

I can see how the flexibility of additional deprecation triggers could be attractive. Do we have any examples where that would have been useful? What I anticipate will happen is that it will be straightforward for Rust to support all versions supported by the current NDK, because the NDK team works hard to provide that stability, prevent breakage, and fix breakage if it occurs. If those additional triggers are never actually exercised, which is what I would expect, then I would prefer to not have them as they will only have downsides such as:

Uncertainty among Rust developers. Confusing and unexpected potential disagreement between tools/tooling/toolchains of what Android versions are supported. Instead of following the deprecation policies that the rest of the Android developer ecosystem follow, developers will have to figure out if Android supports an API version AND Rust supports it.
Instead of relying on release versions cutoffs instituted by the rather conservative NDK team (like the rest of the Android ecosystem), Rust developers will find themselves worrying about the number of users on specific API versions which could trigger Rust not supporting API versions that (for example) their C++ or Java code still support.
An overall impression that Rust's commitment to support in the Android ecosystem is less than what developers can expect from other toolchains.

Note that PR to document supported Android versions are up, without any discussion as far as I can tell: rust-lang/rust#101780. PR author seems to be a Googler.
Here is the precise wording:

Rust will support the most recent Long Term Support (LTS) Android Native Development Kit (NDK). By default Rust will support all API levels supported by the NDK but a higher minimum API level may be required if deemed necessary.

Note that PR to document supported Android versions are up, without any discussion as far as I can tell: rust-lang/rust#101780. PR author seems to be a Googler.

I'm sorry for not providing more background information in the PR.  There was a discussion on Zulip that can be found here.  In addition, several of our team members had a discussion with Josh Triplett about the issue at RustConf which was why I added him as the reviewer.
I'll post this information in the other PR as well.  Thanks for bringing this to my attention.


Add support to sync inventory transfer from OMS to NS

When variances are tracked using variance locations in NetSuite, variances logged internally or by external systems are actually registered as an Inventory Transfer from the affected location to the variance location. For example, if a retail location wants to damage out 2 units of a product, they’d log an inventory transfer of that product from their store to the Damaged location. This reduces the inventory from the store and increments that inventory at the Damaged location.
Here are the CSV column details.

External Id -> inventoryItemId - physicalInventoryId
Item -> GoodIdentification.idValue
Adjust Qty By
From Location -> Facility.externalId
To Location -> Facility.externalId
Date
Memo
Subsidiary

Here is the sample CSV.
HC_InventoryItemVarianceFeed_2023-12-11-09_25_00_857.csv


Communication.md

This PR adds a new communication plan, including an updated schedule and task details for team collaboration.

Good job!


Disable renaming self keyword

Description:
$title
Describe your problem(s)
Describe your solution(s)
Related Issues (optional):

Suggested Labels (optional):

Suggested Assignees (optional):

What should be the expected behaviour for the main keyword? @dulajdilshan @nadeeshaan

What should be the expected behaviour for the main keyword? @dulajdilshan @nadeeshaan

IMO, the main is not a keyword, it is a default function name. main should be enabled for renaming.

What should be the expected behaviour for the main keyword? @dulajdilshan @nadeeshaan

IMO, the main is not a keyword, it is a default function name. main should be enabled for renaming.

+1


Monitoring Charts are failing to install on any cluster

Rancher Server Setup

Rancher version: v2.7-head (Commit ID: 5398b07)
Installation option (Docker install/Helm Chart): Docker and Helm Chart

If Helm Chart, Kubernetes Cluster and version (RKE1, RKE2, k3s, EKS, etc): RKE1, K3s, and RKE2

Proxy/Cert Details: N/A

Information about the Cluster

Kubernetes version: v1.24.8-rancher1-1 and v1.24.8+rke2r1
Cluster Type (Local/Downstream): Local and Downstream

If downstream, what type of cluster? (Custom/Imported or specify provider for Hosted/Infrastructure Provider): Verified on Infrastructure Provider, but likely will reproduce on others

User Information

What is the role of the user logged in? (Admin/Cluster Owner/Cluster Member/Project Owner/Project Member/Custom)

If custom, define the set of permissions: Admin Cluster Owner and Standard Cluster Owner

Describe the bug
When installing Monitoring Charts (Default Chart Version: v101.1.0+up40.1.2) on local and downstream clusters, an error is observed, preventing monitoring from being installed
To Reproduce

Spin up a Rancher server on v2.7-head (Commit ID: 5398b07)
Install Monitoring using the default Chart Version v101.1.0+up40.1.2 on the local cluster

Result

An error is observed that states "Error: YAML parse error on rancher-monitoring/charts/rke2ControllerManager/templates/pushprox-clients-rbac.yaml: error converting YAML to JSON: yaml: line 11: did not find expected key"
In the cattle-system namespace, one of the helm-operation-XXXXX:helm pods is in an Error/Fail

Expected Result
Monitoring is installed successfully without error
Screenshots
Monitoring is not present:

Error in the logs:

Failed Install Pod Logs (Chart Version: v101.1.0+up40.1.2):
helm-operation-4lmcm_helm.log
Additional Info:
This issue appears to reproduce on the Default Chart Version. I have verified this does not reproduce on older Chart Version v101.0.0+up19.0.3.


Slider sweeping may break horizontal layout on touch screen device.

When sweep a slider, the horizontal scroll bar appears.
And the content beside the slider will break the layout.
This can be reappear on my note 3 and touch screen laptop with win8.1.
Shown as the screenshot below:

There is no screenshot.


ci: skip llvm install if openssl is cached on windows

If this works it should shave some 4min of the runtime. Still unsure how to upgrade the openssl later. Probably by doing a run with the cache steps disabled and later enabled?

Yay, spurious failures on linux and macos.
Yay windows builds went from 13min to 10min, which was quite expected as llvm install ~4min.


win: fix test runner build with mingw64

Include <winioctl.h> for the definition of FSCTL_SET_REPARSE_POINT
and define ERROR_SYMLINK_NOT_SUPPORTED if not already defined.
CI: https://ci.nodejs.org/view/libuv/job/libuv-test-commit/575/

Do you want me to add MinGW to CI?

Mwah, it's a tier 3 platform and I'm not that invested in it.


model degrade when dpo_llama2.py with deepspeed stage3

Hello, did you meet model Performance Degradation When Training Llama-2-13b-chat-hf with DPO +  deepspeed stage3?
I can fintune with Lora.
But using deepspeed stage3 , model performance degrades.

Could you provide a reproducible example and maybe some logs so we can track down the issue? cc @kashif


Why <IP_ADDRESS> valid and how to validate only cidr notation

I wrote a cidr validation code like below
def ip_address_cidr_validation(value: str) -> bool:
    """Validate IP address in CIDR notation."""
    return bool(
        validators.ipv4(value, cidr=True, strict=True)
        or validators.ipv6(value, cidr=True, strict=True)
    )

while there was no problem in older versions, I saw that the following 3 values are "True" in the latest version of the library.
shouldn't the following three ip's be false? it's not "cidr"
2001:0db8:85a3:0000:0000:8a2e:0370:7334 -> False
<IP_ADDRESS> -> False
<IP_ADDRESS>/24 -> False
<IP_ADDRESS>/<IP_ADDRESS> -> False
My test case
@pytest.mark.parametrize(
    ("cidr", "status"),
    [
        ("<IP_ADDRESS>/32", True),
        ("<IP_ADDRESS>/24", True),
        ("2001:0db8:85a3:0000:0000:8a2e:0370:7334/128", True),
        ("<IP_ADDRESS>/<IP_ADDRESS>", False),
        ("<IP_ADDRESS>/32", True),
        ("<IP_ADDRESS>/24", True),
        ("<IP_ADDRESS>", False),
        ("<IP_ADDRESS>.4", False),
        ("2001:0db8:85a3:0000:0000:8a2e:0370:7334", False),
        ("192.168.0. 1", False),
        ("<IP_ADDRESS> /32", False),
    ],
)
def test_ipaddress_cidr_validation_valid(cidr: str, status: bool) -> None:
    """Ensure the function works correctly when CIDR is entered correctly."""
    cidr_validator = ip_address_cidr_validation(cidr)
    assert cidr_validator is status

How can this happen? Am I applying this validator incorrectly?

@mertcangokgoz, thanks for raising this issue, I see now that the strict parameter is confusing. Reference source:
https://github.com/python-validators/validators/blob/9e94feea67d2787e984a100e1fb4642f5cd18288/src/validators/ip_address.py#L58-L65
Here's what strict currently does.

It is only used when cidr=True and the input string has a /.
But instead of invalidating IP addresses without CIDR notation (as you've assumed),
It distinguishes between a network and a host IP address.

So when cidr=True and strict=True, if host bits are set in the supplied IP address, it raises a validation error.
$ python -c "from validators import ipv4; print(ipv4('<IP_ADDRESS>/24', strict=True))"
ValidationError(func=ipv4, args={'reason': '<IP_ADDRESS>/24 has host bits set', 'value': '<IP_ADDRESS>/24', 'strict': True})
$ # Expected a network address like <IP_ADDRESS> (where network part is `192.168.1` and host part is `0`)

I'm pondering on a solution, I'll update you when I'm ready. Meanwhile feel free to comment below.

Here's the patch
diff --git a/src/validators/ip_address.py b/src/validators/ip_address.py
index 3ae638d..e6d01f6 100644
--- a/src/validators/ip_address.py
+++ b/src/validators/ip_address.py
@@ -15,7 +15,7 @@ from .utils import validator

 @validator
-def ipv4(value: str, /, *, cidr: bool = True, strict: bool = False):
+def ipv4(value: str, /, *, cidr: bool = True, strict: bool = False, host_bit: bool = True):
     """Returns whether a given value is a valid IPv4 address.

     From Python version 3.9.5 leading zeros are no longer tolerated
@@ -36,11 +36,12 @@ def ipv4(value: str, /, *, cidr: bool = True, strict: bool = False):
         value:
             IP address string to validate.
         cidr:
-            IP address string may contain CIDR annotation
+            IP address string may contain CIDR notation
         strict:
-            If strict is True and host bits are set in the supplied address.
-            Otherwise, the host bits are masked out to determine the
-            appropriate network address. ref [IPv4Network][2].
+            IP address string is strictly in CIDR notation
+        host_bit:
+            If `False` and host bits (along with network bits) _are_ set in the supplied
+            address, this function raises a validation error. ref [IPv4Network][2].
             [2]: https://docs.python.org/3/library/ipaddress.html#ipaddress.IPv4Network

     Returns:
@@ -58,15 +59,17 @@ def ipv4(value: str, /, *, cidr: bool = True, strict: bool = False):
     if not value:
         return False
     try:
-        if cidr and value.count("/") == 1:
-            return IPv4Network(value, strict=strict)
+        if cidr:
+            if strict and value.count("/") != 1:
+                raise ValueError("IPv4 address was expected in CIDR notation")
+            return IPv4Network(value, strict=not host_bit)
         return IPv4Address(value)
-    except (AddressValueError, NetmaskValueError):
+    except (ValueError, AddressValueError, NetmaskValueError):
         return False

 @validator
-def ipv6(value: str, /, *, cidr: bool = True, strict: bool = False):
+def ipv6(value: str, /, *, cidr: bool = True, strict: bool = False, host_bit: bool = True):
     """Returns if a given value is a valid IPv6 address.

     Including IPv4-mapped IPv6 addresses. The initial version of ipv6 validator
@@ -88,9 +91,10 @@ def ipv6(value: str, /, *, cidr: bool = True, strict: bool = False):
         cidr:
             IP address string may contain CIDR annotation
         strict:
-            If strict is True and host bits are set in the supplied address.
-            Otherwise, the host bits are masked out to determine the
-            appropriate network address. ref [IPv6Network][2].
+            IP address string is strictly in CIDR notation
+        host_bit:
+            If `False` and host bits (along with network bits) _are_ set in the supplied
+            address, this function raises a validation error. ref [IPv6Network][2].
             [2]: https://docs.python.org/3/library/ipaddress.html#ipaddress.IPv6Network

     Returns:
@@ -108,8 +112,10 @@ def ipv6(value: str, /, *, cidr: bool = True, strict: bool = False):
     if not value:
         return False
     try:
-        if cidr and value.count("/") == 1:
-            return IPv6Network(value, strict=strict)
+        if cidr:
+            if strict and value.count("/") != 1:
+                raise ValueError("IPv6 address was expected in CIDR notation")
+            return IPv6Network(value, strict=not host_bit)
         return IPv6Address(value)
-    except (AddressValueError, NetmaskValueError):
+    except (ValueError, AddressValueError, NetmaskValueError):
         return False
diff --git a/tests/test_ip_address.py b/tests/test_ip_address.py
index 312e98e..f28cdec 100644
--- a/tests/test_ip_address.py
+++ b/tests/test_ip_address.py
@@ -13,10 +13,6 @@ from validators import ValidationError, ipv4, ipv6
         ("<IP_ADDRESS>",),
         ("<IP_ADDRESS>",),
         ("<IP_ADDRESS>",),
-        # w/ cidr
-        ("<IP_ADDRESS>/0",),
-        ("<IP_ADDRESS>/8",),
-        ("<IP_ADDRESS>/32",),
     ],
 )
 def test_returns_true_on_valid_ipv4_address(address: str):
@@ -25,6 +21,22 @@ def test_returns_true_on_valid_ipv4_address(address: str):
     assert not ipv6(address)

<EMAIL_ADDRESS>+    ("address", "cidr", "strict", "host_bit"),
+    [
+        ("<IP_ADDRESS>/0", True, True, True),
+        ("<IP_ADDRESS>", True, False, True),
+        ("<IP_ADDRESS>/24", True, True, False),
+    ],
+)
+def test_returns_true_on_valid_ipv4_cidr_address(
+    address: str, cidr: bool, strict: bool, host_bit: bool
+):
+    """Test returns true on valid ipv4 CIDR address."""
+    assert ipv4(address, cidr=cidr, strict=strict, host_bit=host_bit)
+    assert not ipv6(address, cidr=cidr, strict=strict, host_bit=host_bit)
+
+
 @pytest.mark.parametrize(
     ("address",),
     [
@@ -33,10 +45,6 @@ def test_returns_true_on_valid_ipv4_address(address: str):
         ("9<IP_ADDRESS>",),
         ("0<IP_ADDRESS>",),
         ("abc.0.0.1",),
-        # w/ cidr
-        ("<IP_ADDRESS>/-1",),
-        ("<IP_ADDRESS>/33",),
-        ("<IP_ADDRESS>/foo",),
     ],
 )
 def test_returns_failed_validation_on_invalid_ipv4_address(address: str):
@@ -44,6 +52,22 @@ def test_returns_failed_validation_on_invalid_ipv4_address(address: str):
     assert isinstance(ipv4(address), ValidationError)

<EMAIL_ADDRESS>+    ("address", "cidr", "strict", "host_bit"),
+    [
+        ("<IP_ADDRESS>/1", False, True, True),
+        ("<IP_ADDRESS>/33", True, False, True),
+        ("<IP_ADDRESS>/24", True, True, False),
+        ("<IP_ADDRESS>/-1", True, True, True),
+    ],
+)
+def test_returns_failed_validation_on_invalid_ipv4_cidr_address(
+    address: str, cidr: bool, strict: bool, host_bit: bool
+):
+    """Test returns failed validation on invalid ipv4 CIDR address."""
+    assert isinstance(ipv4(address, cidr=cidr, strict=strict, host_bit=host_bit), ValidationError)
+
+
 @pytest.mark.parametrize(
     ("address",),
     [
@@ -56,14 +80,6 @@ def test_returns_failed_validation_on_invalid_ipv4_address(address: str):
         ("::<IP_ADDRESS>",),
         ("0000:0000:0000:0000:0000::",),
         ("0:a:b:c:d:e:f::",),
-        # w/ cidr
-        ("::1/128",),
-        ("::1/0",),
-        ("dead:beef:0:0:0:0:42:1/8",),
-        ("abcd:ef::42:1/32",),
-        ("0:0:0:0:0:ffff:<IP_ADDRESS>/16",),
-        ("2001:0db8:85a3:0000:0000:8a2e:0370:7334/64",),
-        ("::<IP_ADDRESS>/128",),
     ],
 )
 def test_returns_true_on_valid_ipv6_address(address: str):
@@ -72,6 +88,26 @@ def test_returns_true_on_valid_ipv6_address(address: str):
     assert not ipv4(address)

<EMAIL_ADDRESS>+    ("address", "cidr", "strict", "host_bit"),
+    [
+        ("::1/128", True, True, True),
+        ("::1/0", True, True, True),
+        ("dead:beef:0:0:0:0:42:1/8", True, True, True),
+        ("abcd:ef::42:1/32", True, True, True),
+        ("0:0:0:0:0:ffff:<IP_ADDRESS>/16", True, True, True),
+        ("2001:0db8:85a3:0000:0000:8a2e:0370:7334/64", True, True, True),
+        ("::<IP_ADDRESS>/128", True, True, True),
+    ],
+)
+def test_returns_true_on_valid_ipv6_cidr_address(
+    address: str, cidr: bool, strict: bool, host_bit: bool
+):
+    """Test returns true on valid ipv6 CIDR address."""
+    assert ipv6(address, cidr=cidr, strict=strict, host_bit=host_bit)
+    assert not ipv4(address, cidr=cidr, strict=strict, host_bit=host_bit)
+
+
 @pytest.mark.parametrize(
     ("address",),
     [
@@ -91,12 +127,24 @@ def test_returns_true_on_valid_ipv6_address(address: str):
         ("::1:2::",),
         ("8::1:2::9",),
         ("02001:0000:1234:0000:0000:C1C0:ABCD:0876",),
-        # w/ cidr
-        ("::1/129",),
-        ("::1/-1",),
-        ("::1/foo",),
     ],
 )
 def test_returns_failed_validation_on_invalid_ipv6_address(address: str):
     """Test returns failed validation on invalid ipv6 address."""
     assert isinstance(ipv6(address), ValidationError)
+
+
<EMAIL_ADDRESS>+    ("address", "cidr", "strict", "host_bit"),
+    [
+        ("::1/128", False, True, True),
+        ("::1/129", True, False, True),
+        ("dead:beef:0:0:0:0:42:1/8", True, True, False),
+        ("::1/-130", True, True, True),
+    ],
+)
+def test_returns_failed_validation_on_invalid_ipv6_cidr_address(
+    address: str, cidr: bool, strict: bool, host_bit: bool
+):
+    """Test returns failed validation on invalid ipv6 CIDR address."""
+    assert isinstance(ipv6(address, cidr=cidr, strict=strict, host_bit=host_bit), ValidationError)

PRs are welcome.


Url Helper for generating full urls

Url Helper for generating full URLs
Description of the Change
Returns a URL that has been rewritten according to the named
tuple options.
Url Options:

protocol - Overrides the default (current) protocol if provided.
port - Optionally specify the port to connect to.
host - Overrides the default (current) host if provided.
only_path - If true, returns the relative URL (omitting the protocol,
host name, and port) (false by default).
trailing_slash - If true, adds a trailing slash, as in "/archive/2005/".
Note that this is currently not recommended since it breaks caching.
anchor - Appends anchor to the end of the URL

Alternate Designs

Would be nice to have just one method to define all routes.

Benefits

This will allow support to define routes helper methods.
TODO: Make accessible from your controllers, views, and mailers

Yes, this will be tied into the router and used for the generated routes helper method. Something like
macro route_helper(route)
  def {{route.name}}_path(**options)
      # Some logic...
      Url.new(**options)
  end
end

I'm concerned that as this currently stands we're just taking a simple task like link_to "/listings/1" or link_to "https://www.google.com" and adding a bunch of processing and extra syntax too it. When we tie this into the router I think it will be useful.

@drujensen this class it to be used to generate routes helper methods.
Eg user_path, posts_path, category_url.
This class does not intend to be used for link_to although it can be used.

@drujensen you're right, I should be using the URI class instead, I'm going to rework this to do just that. I'm going to rework


Added Caching Framework

Short Description: Rough framework for caching, further iterations will place objects in their own databases that are maintained for the session.
Caches responses (i.e. GET_MAP_OBJECTS) and stores the resulting json data in a CacheObject for later use. For example:
player_cache = Cache.get('GET_PLAYER')
print(player_cache.data) # prints the json data associated with the GET_PLAYER response
print(player_cache.time_stamp) # prints the unix time stamp of when we received this data
print(player_cache.age()) # prints the number of seconds that have passed since we received it
print(player_cache.is_outdated(60)) # return true if its age is > 60 seconds, otherwise false
`
Fixes:

Needlessly requesting updated information on Inventory, Pokemon, Gyms, Forts, etc. when nothing has changed.

@demgod explain better how to system works. Sounds good but... how the hell does it work?

In fact, we just need a system to manipulate the inventory, I mean:

make just one inventory call per tick
provide the workers with an object to update the inventory as they use or drop items
profit!

That's an awesome idea @douglascamata

In theory, since we're always provided in the response with items we receive, we should only ever request the inventory once and then modify the inventory as need when we expend or receive items. Additionally a cache for forts, gyms, and pokemon would allow for referencing game objects that we've seen in the past. For example, it currently seems like we request updated fort/gym information just about every second.

@demgod you're not going to the root of the problem, you're just adding some "make-up".
I already found that we do one GET_GYM_DETAILS and one FIND_MAP_OBJECTS every tick to send info to web ui (won't be needed with my event system already merged).
One GET_PLAYER, GET_INVENTORY and CHECK_AWARDED_BADGES is just the heartbeat, which NEEDS to fire these requests.
Inventory we already cache in a different way and update the cache throughout workers.

@douglascamata I get that it needs a heartbeat, but I can't image the application does it that frequently. Considering the stress already on their server I'd imagine they try to optimize as many requests as they can (haven't checked it out, just basing the notion on basic design philosophy). The root of the problem as I see it is that there is currently no uniformed way for workers/modules to share requested data between each other. If worker A needs to perform request x and worker b needs the same data it has to perform the request a second time completely unnecessarily.

@demgod there is shared data. We access inventory in many others, even tho we don't many repeated inventory calls. The heartbeat are the same requests the phone does....

@douglascamata we can still do the heartbeat but ignore the data it returns for objects that are supposed to be static like forts. This will prevent bugs with e.g. walking if the API stutters.

@douglascamata I know the calls are the same, what I'm saying is the frequency is different. For example, we request the full inventory more frequently than the application. As far as the shared data is concerned the inventory system works fine, for inventory related information. My point with this is that instead of making data structures for each individual request type, centralize it into one generic cache system and build off of that. So everything uniformly draws from one location.

It sounds like we are taking a different approach to inventory caching. For more information, see this PR. Thanks for contributing!


Cannot invoke "String.trim()" because "in" is null

I'm building a new project with jetbrains compose (plugin version 1.1.1), kotlin 1.7.20-RC
plugins {
    id("io.github.bric3.gctk.java-common-conventions")
    kotlin("jvm")
    id("org.jetbrains.compose")
    application
}

But the loading of the plugin fails with this error
org.gradle.api.ProjectConfigurationException: A problem occurred configuring project ':app'.
	at org.jetbrains.plugins.gradle.model.ProjectImportAction.execute(ProjectImportAction.java:130)
	at org.jetbrains.plugins.gradle.model.ProjectImportAction.execute(ProjectImportAction.java:42)
Caused by: java.lang.NullPointerException: Cannot invoke "String.trim()" because "in" is null
	at org.jetbrains.compose.ComposePlugin.apply$lambda-6$lambda-5(ComposePlugin.kt:129)
	at org.jetbrains.compose.ComposePlugin.apply$lambda-6(ComposePlugin.kt:126)
	at jdk.proxy1/jdk.proxy1.$Proxy65.afterEvaluate(Unknown Source)
	at org.jetbrains.plugins.gradle.model.ProjectImportAction.execute(ProjectImportAction.java:130)

Also when setting the jvm target, eg. kotlinOptions.jvmTarget = "17", the error then become about void org.jetbrains.kotlin.gradle.dsl.KotlinJvmOptions.setUseIR(boolean)
org.gradle.api.ProjectConfigurationException: A problem occurred configuring project ':app'.
	at org.jetbrains.plugins.gradle.model.ProjectImportAction.execute(ProjectImportAction.java:130)
	at org.jetbrains.plugins.gradle.model.ProjectImportAction.execute(ProjectImportAction.java:42)
Caused by: org.gradle.internal.event.ListenerNotificationException: Failed to notify project evaluation listener.
	at jdk.proxy1/jdk.proxy1.$Proxy65.afterEvaluate(Unknown Source)
	at org.jetbrains.plugins.gradle.model.ProjectImportAction.execute(ProjectImportAction.java:130)
	at org.jetbrains.plugins.gradle.model.ProjectImportAction.execute(ProjectImportAction.java:42)
Caused by: java.lang.NoSuchMethodError: 'void org.jetbrains.kotlin.gradle.dsl.KotlinJvmOptions.setUseIR(boolean)'
	at org.jetbrains.compose.ComposePlugin.apply$lambda-6$lambda-5(ComposePlugin.kt:131)
	at org.jetbrains.compose.ComposePlugin.apply$lambda-6
	at jdk.proxy1/jdk.proxy1.$Proxy65.afterEvaluate(Unknown Source)
	at org.jetbrains.plugins.gradle.model.ProjectImportAction.execute(ProjectImportAction.java:130)

1.1.1 is not compatible with Kotlin 1.7.20-RC.

Yeah it was not immediately clear to me hence the issue. And at this time I played with the alpha version to get it working, but with some adjustment on the compiler module, see https://github.com/JetBrains/compose-jb/issues/2108#issuecomment-1245397563
So follow up on #2018

Please check the following ticket on YouTrack for follow-ups to this issue. GitHub issues will be closed in the coming weeks.


Autocomplete on #tags and in frontmatter tags:

There should be autocompletion of tags while typing # for an inline tag or while writing tags in the frontmatter.

There actually is. Tags (once used anywhere in your space) are autocompleted after typing # + the first letter. In frontmatter you may use tags: "#template" to get auto competition. This only works when using double quotes.

Would be nicer to get it without the # though. I agree.

Ah, I can see the autocomplete now. The reason why I thought it wasn't there was because I am running into some issues with it:
I like using tags with parents, e.g. #test:testparent, but this doesn't work with autocomplete. See:

Another request from a friend who uses tags intensely would be to have a key to manually trigger tag completion like Ctrl+Space that shows suggestions after just # to avoid trying #a #b #c...
I'd say that it shouldn't always autocomplete after first # because it would pop out when typing headers.

Maybe triggering the hint with a key would make it simpler to invoke inside frontmatter. This could also be used anywhere in text, like let's say I have a word and I want to turn it into a similar tag that already exists, but I don't want to retype it all


tkfram returns transposed result

tkfram returns the incorrect rotation vector.  The vector it returns is the transpose of the correct value.
I copied the test from the tkfram_c documentation and performed a straightforward conversion of it into Python.  When I run the test as given, it fails.  When I uncomment the line rotation = rotation.T, it passes.  See below.
I'm not quite sure where in the SpiceyPy code the array is being transposed.  Does it think it's getting back a Fortran array rather than a C array? The implementation of tkfram_c already performs the transposition.
I have not yet checked if this bug is only in tkfram, or if it occurs in other rotation matrices.
import pytest
import spiceypy as cs

def test_tkfram():
    cs.furnsh("kernels/earth_topo_050714.tf")
    frcode = cs.namfrm("DSS-34_TOPO")
    rotation, frame = cs.tkfram(frcode)
    frname = cs.frmnam(frame)
    assert frname in ("IAU_EARTH", "EARTH_FIXED", "ITRF93")
    # rotation = rotation.T
    z = np.array((rotation[0, 2], rotation[1, 2], rotation[2, 2]))
    radius, lat, lon = cs.reclat(z)
    assert pytest.approx(lat * cs.dpr()) ==<PHONE_NUMBER>021110
    assert pytest.approx(lon * cs.dpr()) == -35.3984778756552

I just noticed that the implementation of tkfram calls libspice.tkfram_ instead of libspice.tkfram_c.  If it is calling the Fortran function rather than the C function, it will get back the array transposed.
Is this intentional or a typo?

A quick glance at the code.  irfrot, irftrn, and zzdynrot all expect to receive a 2-dimensional vector directly from Fortran.  I have not tested yet, but I suspect all three will give transposed arrays as their result.

@fyellin tkfram, as I recall, was added to the spiceypy api before a _c version of the function was provided by the NAIF (as of N67, IIRC) and just hasn't been updated yet. The transposes of the arrays is troubling so I will look into that

@fyellin okay so this may be because tkfram, irfrot, irftrn, and zzdynrot were all calling the fortran versions of the functions. Some of these functions explicitly transpose the results like irftrn  and irfrot, but not always like for tkfram which may be a mistake Overall there seem to be 16 functions from the fortran api wrapped in spiceypy but most of these do not return arrays where this ordering becomes important.

fixed by #474


Introspection and GraphiQL

I see that README states introspection is incompleted.
With a asp.net graphiql project, i can run the queries on http://graphql.org/learn/introspection/ however Kind values in result are not right.
Also, the default graphiql query fails with an exception.
Will this be hard to do for someone new to the codebase?

Introspection is missing a few small things, but a large chunk of it is completed.
For incorrect Kind results, I think it would be reasonable for someone new to the codebase to find where the issue is. Search for usages of the TypeKind enumeration since there shouldn't be very many of them.
For the GraphiQL query failing, I'm not sure. It could be easy or difficult, depending on what exactly the query is. I should go get GraphiQL and spend some time getting it running with this library anyway, because it seems like a lot of people have adopted it.

Is there any advance here? I tried to add the missing parts the default graphiql query needs, like includeDeprecated, subscriptions and some others, but my knowledge of F# is close to 0. I could at least stop the query errors and get a response back but seems it wasn't well formed.
Instrospection would be great for bringing query validation and autocomplete in VSCode and other IDEs and generate static types in TypeScript based on queries and maybe C#. Among other benefits that takes advantage of GraphQL static typing.

I'm looking for progress here too please ,
I think this is the most critical important issue for all of us ,
I can run my demo graphQL queries using console application , but it's not satisfaction enough,
something missing , we can't work and test 100% how we should ( yet )

I am currently trying to complete the implementation of introspections.
The "mapping" of CLR types (including inheritance) to the introspection types might be tricky. The GraphQL type system consists of:

Object type
Interface
Union type

Let's consider this data model:
    public class Character
    {
        public int Id { get; set; }
        public string Name { get; set; }
    }
    public class Human : Character
    {
        public double Height { get; set; }
        public ICollection<Vehicle> Vehicles { get; set; }
    }
    public class Stormtrooper : Human
    {
        public string Specialization { get; set; }
    }

Assuming there is some root schema field called characters of type List<Character>, it should be possible to directly query the field id and use inline fragments with type conditions:
{
 characters {
    id
   ... on Human {
        Height
    }
 }
}

My understanding of the reference implementation of graphql for js is that the Character has to be an abstract introspection type, i.e. type kind INTERFACE or UNION to use type conditions.
An union type does not have own fields, so id could not be queried without a type condition.
An interface must have an implementing OBJECT type, so we would have to create an interface and an object type for Character.
These are the my first thoughts on this issue, maybe some of the above assumptions are incorrect.
Any ideas on this problems? @ckimes89

Unfortunately the GraphQL spec doesn't have a great story for inheritance hierarchies that exist in OOP languages like C# and Java. The best way to achieve the above is to generate the following types:
interface ICharacter {
    id
    name
}

object Character : ICharacter {
    id
    name
}

object Human : ICharacter {
    id
    name
    height
    vehicles
}

object StormTrooper : ICharacter {
    id
    name
    specialization
}

It's a bit disappointing, since there's the obvious problem of clashing with a real interface for ICharacter or dealing with multiple levels of inheritance. However, unless the GraphQL spec changes this is what we have to work with.

If GraphQL supported interface inheriting interfaces, we could get away with always just creating interfaces for base classes. There's no need to have a concrete object type if that type is only being queried.
However, as far as I know they only support one level of interface inheritance so this causes big problems with an inheritance hierarchy more than 2 levels deep.

What about making this more explicit, so that the inheritance hierarchies are not reflected automatically, but it has to be explicitly defined on the schema.
This might be possible by extending the schema API by addUnionType and addInterface.
As well as provide an overload for fields to specify the return type using an union type or interface.
By adding validation and proper error messages we could make this easy to use.
I know that extending the API might not be the best way, however this approach provides more flexibility.

What do you think @ckimes89?

@MarianPalkus  I like the idea of explicitly requiring the user to opt-in to inheritance. All of the solutions for inheritance are pretty gross to handle automatically, especially as you get into deep inheritance hierarchies. I think it's best to let the user choose to explicitly say where inheritance should be used.
This would mean the default case for inherited types is duplication of some field definitions (e.g. Human defines its own id and name). However, I don't think this has a negative impact on the API since most people will likely just be calling AddAllFields.
The place where I would expect confusion is if a user expects the inheritance to be handled automatically, and then they get errors as they issue an invalid query. That error response is probably the best place to add an instructive error message to point the user to the fix.

Ok, thanks for your thoughts, i continue to implement it this way -  may take a while.


curl.bsh

When making the curl.bsh, rpmspec -P should be used instead of removing the %include line, and it should also be done in a docker to remove the requirement to have these commands on the host OS

Merged in


Remove the workaround used in EntityManagerTest

A couple of tests in EntityManagerTest were workedaround for the below issue. The latest version of DatastoreEmulator has fixed this issue, so we can remove the workaround.
DatastoreException - Error Code/Reason are inconsistent when working with Emulator #2442

Need to do this in DatastoreTransactionTest and DatastoreBatchTest as well.

Found that the builds are failing on Travis as Travis Builds use LocalDatastoreHelper for downloading and running the Emulator. The LocalDatastoreHelper is still downloading version 1.2.0 of the Emulator which still has this issue. Reported this to the google-cloud team. May have to revert the changes, unless the LocalDatastoreHelper is fixed soon.


Copy PL folder in to LAI folder

Copied PL folder into LAI folder and deleted a few files
What does this PR do?
Copied the entire PL folder over into LAI folder. I then deleted the make.bat, Makefile, config.py, and index.rst files from the copied PL folder.
Does your PR introduce any breaking changes? If yes, please list them.
None
Before submitting

[ ] Was this discussed/approved via a GitHub issue? (not for typos and docs)
[ ] Did you read the contributor guideline, Pull Request section?
[ ] Did you make sure your PR does only one thing, instead of bundling different changes together?
[ ] Did you make sure to update the documentation with your changes? (if necessary)
[ ] Did you write any new necessary tests? (not for typos and docs)
[ ] Did you verify new and existing tests pass locally with your changes?
[ ] Did you list all the breaking changes introduced by this pull request?
[ ] Did you update the CHANGELOG? (not for typos, docs, test updates, or minor internal changes/refactors)

PR review
Anyone in the community is welcome to review the PR.
Before you start reviewing, make sure you have read the review guidelines. In short, see the following bullet-list:

[ ] Is this pull request ready for review? (if not, please submit in draft mode)
[ ] Check that all items from Before submitting are resolved
[ ] Make sure the title is self-explanatory and the description concisely explains the PR
[ ] Add labels and milestones (and optionally projects) to the PR so it can be classified

Did you have fun?
Make sure you had fun coding 🙃

qq: why haven't you moved them?


docs proposal: switch to bool default value

Even if both is working, I think that defining the actual bool default value NOT as a string might be less confusing. I just stumbled upon this one and thought: "Ha, why is that a 'string'?". Just my opinion and I thought that you might be interested in my thought process :) Feel free to close this PR if you want to stick with the string definition :)

haha .. just read further and noticed the remark in the next paragraph: Notice that you need to always provide the value in double-quotes, even for non-string types such as Boolean or Int.

That's correct 🙂 Thanks for your feedback anyway!

So why is it working with non-string values?
I mean that this works even without double quotes:
type Foo {
  active: Boolean @default(value: false)
}

Is there a reason why we should use quotes?
As @akoenig, I think it would be less confusing without.


⚠ ClamAV has degraded performance

In 0267632, ClamAV (https://spamassassin.apache.org/) experienced degraded performance:

HTTP code: 200
Response time: 404 ms

Resolved: ClamAV performance has improved in ed73696.


THRIFT-5706: lib: cpp: Fix C++ SecurityTest compilation on OpenSSL1.x

A recent change modified SecurityTest.cpp/SecurityFromBufferTest.cpp to handle OpenSSL3 by using OPENSSL_VERSION_MAJOR to detect the different OpenSSL versions. OPENSSL_VERSION_MAJOR is not available on OpenSSL 1.x, so these tests no longer compile on Ubuntu 20, etc.
The underlying reason for the OpenSSL3 change is that older versions of TLS (1.0, 1.1) are only accessible when specifying @SECLEVEL=0. Some distributions with OpenSSL 1.1.1 (Ubuntu 20) make them accessible at @SECLEVEL=1, so the tests can also fail in that circumstance.
This removes the reference to OPENSSL_VERSION_MAJOR and changes the test to specify @SECLEVEL=0 for OpenSSL versions that have @SECLEVEL support (> 1.1.0).
Testing:

Tested SecurityTest/SecurityFromBufferTest on Ubuntu 20 and 22
Tested with OpenSSL 1.0.2

This fixes the build/functionality for SecurityTest/SecurityFromBufferTest after the changes in https://github.com/apache/thrift/commit/05604e261455f1d85a5d04c4364a21d2a7e417b2

[ ] Did you create an Apache Jira ticket?  (Request account here, not required for trivial changes)
[ ] If a ticket exists: Does your pull request title follow the pattern "THRIFT-NNNN: describe my issue"?
[ ] Did you squash your changes to a single commit?  (not required, but preferred)
[ ] Did you do your best to avoid breaking changes?  If one was needed, did you label the Jira ticket with "Breaking-Change"?
[ ] If your change does not involve any code, include [skip ci] anywhere in the commit message to free up build resources.

@joemcdonnell can you check if this issue persists with latest thrift master? I think I fixed it, without seeing your PR before. But I did not check the details, so I may be wrong. I can say that my thrift build works with openSSL 1.x. But I may be using different options than you are. Kindly help and clarify?

Thanks a lot @thomasbruggink , I think your work here is very valid and I would consider this the correct way forward. However, making backwards-incompatible changes is always hard in wide-spread projects like thrift. Therefore I have a slight preference to combine this work here with your changes suggested in https://github.com/apache/thrift/pull/2940, so that the old SSL/TLS versions continue to be supported.
Could you kindly combine the work into a single PR here, and fix the minor conflicts? Then ping me again, and I'll try to merge it ASAP!

@emmenlau thanks for the response, pushed a merged fix :bow: https://github.com/apache/thrift/pull/2940/commits/3ea763e068fbedf7b7b33b73ca294952543e7930

@emmenlau any concern if we merge this or my PR? I think at this point the implementation is the same.
It would be great if the test suite of cpp can pass again.

I think this is now superseded by https://github.com/apache/thrift/pull/2940. Closing.
Kindly re-open if something is missing here...


[Fix #158] Add Rails/DangerousColumnNames cop

This pull request attempts to resolve a portion of the following issue:

https://github.com/rubocop/rubocop-rails/issues/158

Before submitting the PR make sure the following are checked:

[x] The PR relates to only one subject with a clear title and description in grammatically correct, complete sentences.
[x] Wrote good commit messages.
[x] Commit message starts with [Fix #issue-number] (if the related issue exists).
[x] Feature branch is up-to-date with master (if not - rebase it).
[x] Squashed related commits together.
[x] Added tests.
[x] Ran bundle exec rake default. It executes all tests and runs RuboCop on its own code.
[x] Added an entry (file) to the changelog folder named {change_type}_{change_description}.md if the new code introduces user-observable changes. See changelog entry format for details.
[x] If this is a new cop, consider making a corresponding update to the Rails Style Guide.

Thanks!


:bug: Screensaver does not cover modal views

The screensaver does not cover (hide) modal views.

Right now this is not an issue, because the used modal view disables the screen saver. On the long run it would be nice to fix this issue.


Existing call looks up for a select query.

This call should probably use * and try and extract the id afterwards.

https://github.com/forceedge01/genesis-behat-sql-extension/pull/8


Error Response Status: 503, Service Unavailable

Has anyone managed to successfully connect to any live room today? I'm getting 503 after single connection.

I'm havin the same issue today. I think tiktok might have changed something again to prevent that form of webscraping.
if I input the URL directly into the browser and change some parameters, it shows 503 API is not ready yet. But it doesn't really make any sense.

i'm having the same issue

it runs again. Seems to have been a temporary issue. I guess this could be closed

It seems normal now. Might be something due to Tiktok servers


JSON to scala case class will produce weird case classes

In the example at https://transform.now.sh/json-to-scala-case-class, it translates a JSON array to a Scala Array. Unfortunately, Scala Array is just a wrapper for Java arrays, which have reference equality. That means that equality between case class instances produced using this tool will not have sensible equality (because distinct arrays containing the same elements will be considered different).
A simple solution would be to switch Array to Seq or IndexedSeq, which will have sensible equality.

So if I am understanding you correctly, even List is a valid alternative right ? I am not a Scala user to confirming before making any changes.

Yeah, List would be fine, although it's a singly linked list. Seq and IndexedSeq are interfaces and will often have more efficient datastructures behind the scenes, but for data modeling they're all just sequences so it shouldn't matter.
Another consequence I forgot to mention in the bug report is that Array also has an awful toString instance, so any case classes using arrays will just print a horrible hex object ID rather than the contents of the array 😄
Thanks!

Fine then I am going ahead with Seq and making the changes. Thank you.

fix is live.

Thank you for the quick response!


157240499: [Dynamic Link] Cannot force dynamic link to open web browser when app is installed

I tried them all: REST API and manual construction. You cannot create dynamic link that would open the web broswer if the app is installed - it will always open the app. I get a previewLink after successfully creating dynamic link, and that flow chart shows that just created dynamic link should open browser:

But it doesn't. It never does. It always open the installed app, never the website.
To reproduce, try to force create short link from dynamic link to open web browser in a mobile device that has the app installed. You can't. Dynamic link opens the app instead 100% of the time, and there is no way to force it to open web browser - this is contrary to what the flow chart says. There is no field whatsoever (tried them all in REST API and manual construction) that you can use to make programmatically created dynamic link to open browser. It is so funny because when you create short link from the dynamic link in the console, you can specify how it will behave, but it is impossible to do this when creating short link using REST API and manual construction. Please fix.
When not specifying bundle id for the apps when creating dynamic link, the created short link should open website, and not the app. Right now iOSInfo field or apn (in manual construction) are just obsolete/useless fields. Tested in mobile iOS environment (Haven't tested in Android).

@coolcool1994 Could you please specify what version of Firebase you are using.

Looks like you're running into the default universal links behavior. You can override the open-in-app behavior by long-pressing the link and tapping "Open in Safari".

Hi, even when I long-press and tap "Open in Safari", it still opens the app.

- Firebase/Analytics (6.14.0):
   - Firebase/Core
 - Firebase/Auth (6.14.0):
   - Firebase/CoreOnly
   - FirebaseAuth (~> 6.4.1)
 - Firebase/Core (6.14.0):
   - Firebase/CoreOnly
   - FirebaseAnalytics (= 6.1.7)
 - Firebase/CoreOnly (6.14.0):
   - FirebaseCore (= 6.5.0)
 - Firebase/Database (6.14.0):
   - Firebase/CoreOnly
   - FirebaseDatabase (~> 6.1.3)
 - Firebase/DynamicLinks (6.14.0):
   - Firebase/CoreOnly
   - FirebaseDynamicLinks (~> 4.0.6)
 - Firebase/Firestore (6.14.0):
   - Firebase/CoreOnly
   - FirebaseFirestore (~> 1.8.2)
 - Firebase/Functions (6.14.0):
   - Firebase/CoreOnly
   - FirebaseFunctions (~> 2.5.1)
 - Firebase/Messaging (6.14.0):
   - Firebase/CoreOnly
   - FirebaseMessaging (~> 4.1.10)
 - Firebase/Storage (6.14.0):
   - Firebase/CoreOnly
   - FirebaseStorage (~> 3.4.3)
 - FirebaseAnalytics (6.1.7):
   - FirebaseCore (~> 6.5)
   - FirebaseInstanceID (~> 4.2)
   - GoogleAppMeasurement (= 6.1.7)
   - GoogleUtilities/AppDelegateSwizzler (~> 6.0)
   - GoogleUtilities/MethodSwizzler (~> 6.0)
   - GoogleUtilities/Network (~> 6.0)
   - "GoogleUtilities/NSData+zlib (~> 6.0)"
   - nanopb (= 0.3.9011)
 - FirebaseAnalyticsInterop (1.4.0)
 - FirebaseAuth (6.4.1):
   - FirebaseAuthInterop (~> 1.0)
   - FirebaseCore (~> 6.2)
   - GoogleUtilities/AppDelegateSwizzler (~> 6.2)
   - GoogleUtilities/Environment (~> 6.2)
   - GTMSessionFetcher/Core (~> 1.1)
 - FirebaseAuthInterop (1.0.0)
 - FirebaseCore (6.5.0):
   - FirebaseCoreDiagnostics (~> 1.0)
   - FirebaseCoreDiagnosticsInterop (~> 1.0)
   - GoogleUtilities/Environment (~> 6.4)
   - GoogleUtilities/Logger (~> 6.4)
 - FirebaseCoreDiagnostics (1.1.2):
   - FirebaseCoreDiagnosticsInterop (~> 1.0)
   - GoogleDataTransportCCTSupport (~> 1.0)
   - GoogleUtilities/Environment (~> 6.2)
   - GoogleUtilities/Logger (~> 6.2)
   - nanopb (~> 0.3.901)
 - FirebaseCoreDiagnosticsInterop (1.1.0)
 - FirebaseDatabase (6.1.3):
   - FirebaseAuthInterop (~> 1.0)
   - FirebaseCore (~> 6.0)
   - leveldb-library (~> 1.22)
 - FirebaseDynamicLinks (4.0.6):
   - FirebaseAnalyticsInterop (~> 1.3)
   - FirebaseCore (~> 6.2)
 - FirebaseFirestore (1.8.3):
   - abseil/algorithm (= 0.20190808)
   - abseil/base (= 0.20190808)
   - abseil/memory (= 0.20190808)
   - abseil/meta (= 0.20190808)
   - abseil/strings/strings (= 0.20190808)
   - abseil/time (= 0.20190808)
   - abseil/types (= 0.20190808)
   - FirebaseAuthInterop (~> 1.0)
   - FirebaseCore (~> 6.2)
   - "gRPC-C++ (= 0.0.9)"
   - leveldb-library (~> 1.22)
   - nanopb (~> 0.3.901)
 - FirebaseFunctions (2.5.1):
   - FirebaseAuthInterop (~> 1.0)
   - FirebaseCore (~> 6.0)
   - GTMSessionFetcher/Core (~> 1.1)
 - FirebaseInstanceID (4.2.8):
   - FirebaseCore (~> 6.5)
   - GoogleUtilities/Environment (~> 6.4)
   - GoogleUtilities/UserDefaults (~> 6.4)
 - FirebaseMessaging (4.1.10):
   - FirebaseAnalyticsInterop (~> 1.3)
   - FirebaseCore (~> 6.2)
   - FirebaseInstanceID (~> 4.1)
   - GoogleUtilities/AppDelegateSwizzler (~> 6.2)
   - GoogleUtilities/Environment (~> 6.2)
   - GoogleUtilities/Reachability (~> 6.2)
   - GoogleUtilities/UserDefaults (~> 6.2)
   - Protobuf (>= 3.9.2, ~> 3.9)
 - FirebaseStorage (3.4.3):
   - FirebaseAuthInterop (~> 1.0)
   - FirebaseCore (~> 6.0)
   - GTMSessionFetcher/Core (~> 1.1)
 - GoogleAppMeasurement (6.1.7):
   - GoogleUtilities/AppDelegateSwizzler (~> 6.0)
   - GoogleUtilities/MethodSwizzler (~> 6.0)
   - GoogleUtilities/Network (~> 6.0)
   - "GoogleUtilities/NSData+zlib (~> 6.0)"
   - nanopb (= 0.3.9011)
 - GoogleDataTransport (3.2.0)
 - GoogleDataTransportCCTSupport (1.2.3):
   - GoogleDataTransport (~> 3.2)
   - nanopb (~> 0.3.901)
 - GoogleUtilities/AppDelegateSwizzler (6.4.0):
   - GoogleUtilities/Environment
   - GoogleUtilities/Logger
   - GoogleUtilities/Network
 - GoogleUtilities/Environment (6.4.0)
 - GoogleUtilities/Logger (6.4.0):
   - GoogleUtilities/Environment
 - GoogleUtilities/MethodSwizzler (6.4.0):
   - GoogleUtilities/Logger
 - GoogleUtilities/Network (6.4.0):
   - GoogleUtilities/Logger
   - "GoogleUtilities/NSData+zlib"
   - GoogleUtilities/Reachability
 - "GoogleUtilities/NSData+zlib (6.4.0)"
 - GoogleUtilities/Reachability (6.4.0):
   - GoogleUtilities/Logger
 - GoogleUtilities/UserDefaults (6.4.0):
   - GoogleUtilities/Logger```

So could anyone set up a dynamic link and make it open the app when pressed, and then try to make it to somehow open it Safari Browser instead? I cannot make this happen - hence this bug report. I programmatically made it as the the flow chart says to open the dynamic link in the browser, but it opens the app every time. I tried every field in manual and REST API dynamic link creation. I think it is a bug

The "Open in Safari" behavior is supposed to be provided by the system, and if it opens Safari successfully then your app's code shouldn't be executed at all. Can you test on a different version of iOS?
Alternatively, you can explicitly call openURL: in your app to open the URL in Safari (see this Apple doc), but this will "bounce" your user from your app back to Safari and may be undesirable.

I don't want this "bounce behavior", if possible. I am using iOS 13.3.1 . I need it working in iOS 13. Do you think this bug is going to be fixed by you guys at some point? It is just not possible to open dynamic link in Safari right now after you set it up to open in the app.

If it's a bug in iOS, we have no ability to fix it in the SDK because link opening in Safari should bypass your app completely.

I am not sure if it is a bug in iOS or not, but yea opening in Safari doesn't bypass the app. Thanks for confirming this as a bug of some sort.

I suspect there's something else going on here, since I wasn't able to find a substantial amount of similar reports, which would be expected for a universal linking Apple bug.
Can you try returning false in your application(_:continue:restorationHandler:) method? If this doesn't work, can you share a project that reproduces this issue?

When an app is set up to be opened a dynamic link, can you force the dynamic link to open the browser in any apps you know? Or is this just my app?
I can disable dynamic link in my app completely, and yea it would open the browser, but that's not the point. I want to programmatically force it to open the browser when it is set up to open my app. The flow chart said I hav programmatically forced it by not specifying bundle ID when creating the dynamic link using REST or manual way, but no luck.

Returning false in application(_:continue:restorationHandler:) still opens the app :/

You can also try to see if you can replicate this behavior in our Dynamic Links quickstart.

What more info do you need? Once you set up dynamic link to open the app, you cannot configure dynamic link to open a browser, despite the flow chart saying that you can. This is a bug. Let me repeat in iOS, you cannot create and configure new the dynamic link to open a browser (when you should be able to, even the flow chart says I can), after the dynamic link is set up to open the app. In my app, I have a webpage that I want users to go to once pressing a specific dynamic link, and it won’t allow me to, at least in the latest iOS 13. I believe none of the dynamic link can open the browser instead of the app after configured to open the app.

I am having the same issue.

On Android the links work as expected.

@dmandar
Is there any update? Below code creates the dynamic link: https://example.page.link/asdfj, but it always opens the app if the app is installed. Should open the browser!!
const response = await request({
method: 'POST',
url: 'https://firebasedynamiclinks.googleapis.com/v1/shortLinks?key=API_KEY',
body: ({
dynamicLinkInfo: {
domainUriPrefix: "https://example.page.link",
link: "https:/example.com,
navigationInfo: {
enableForcedRedirect: false,
},
},
suffix: {
option: "UNGUESSABLE"
}
}),
json: true
}).catch (async (error) => {
console.log("sending text message failed " + error);
})

I have a same issue. The dynamic link was made always open Safari, we didn't set destination to app.
But It always open the app!!! not browser!!
It works success at Android.
Firebase Version
 - Firebase/Analytics (6.27.0):
    - Firebase/Core
  - Firebase/Core (6.27.0):
    - Firebase/CoreOnly
    - FirebaseAnalytics (= 6.6.1)
  - Firebase/CoreOnly (6.27.0):
    - FirebaseCore (= 6.8.0)
  - Firebase/Crashlytics (6.27.0):
    - Firebase/CoreOnly
    - FirebaseCrashlytics (~> 4.2.0)
  - Firebase/DynamicLinks (6.27.0):
    - Firebase/CoreOnly
    - FirebaseDynamicLinks (~> 4.1.0)
  - Firebase/Performance (6.27.0):
    - Firebase/CoreOnly
    - FirebasePerformance (~> 3.1.11)
  - Firebase/RemoteConfig (6.27.0):
    - Firebase/CoreOnly
    - FirebaseRemoteConfig (~> 4.6.0)
  - FirebaseABTesting (3.3.0):
    - FirebaseCore (~> 6.8)
    - Protobuf (>= 3.9.2, ~> 3.9)
  - FirebaseAnalytics (6.6.1):
    - FirebaseCore (~> 6.8)
    - FirebaseInstallations (~> 1.4)
    - GoogleAppMeasurement (= 6.6.1)
    - GoogleUtilities/AppDelegateSwizzler (~> 6.0)
    - GoogleUtilities/MethodSwizzler (~> 6.0)
    - GoogleUtilities/Network (~> 6.0)
    - "GoogleUtilities/NSData+zlib (~> 6.0)"
    - nanopb (~> 1.30905.0)
  - FirebaseCore (6.8.0):
    - FirebaseCoreDiagnostics (~> 1.3)
    - GoogleUtilities/Environment (~> 6.5)
    - GoogleUtilities/Logger (~> 6.5)
  - FirebaseCoreDiagnostics (1.4.0):
    - GoogleDataTransportCCTSupport (~> 3.1)
    - GoogleUtilities/Environment (~> 6.5)
    - GoogleUtilities/Logger (~> 6.5)
    - nanopb (~> 1.30905.0)
  - FirebaseCrashlytics (4.2.0):
    - FirebaseCore (~> 6.8)
    - FirebaseInstallations (~> 1.1)
    - GoogleDataTransport (~> 6.1)
    - GoogleDataTransportCCTSupport (~> 3.1)
    - nanopb (~> 1.30905.0)
    - PromisesObjC (~> 1.2)
  - FirebaseDynamicLinks (4.1.0):
    - FirebaseCore (~> 6.8)
  - FirebaseInstallations (1.4.0):
    - FirebaseCore (~> 6.8)
    - GoogleUtilities/Environment (~> 6.6)
    - GoogleUtilities/UserDefaults (~> 6.6)
    - PromisesObjC (~> 1.2)
  - FirebasePerformance (3.1.11):
    - FirebaseCore (~> 6.6)
    - FirebaseInstallations (~> 1.1)
    - FirebaseRemoteConfig (~> 4.4)
    - GoogleToolboxForMac/Logger (~> 2.1)
    - "GoogleToolboxForMac/NSData+zlib (~> 2.1)"
    - GoogleUtilities/Environment (~> 6.2)
    - GoogleUtilities/ISASwizzler (~> 6.2)
    - GoogleUtilities/MethodSwizzler (~> 6.2)
    - GTMSessionFetcher/Core (~> 1.1)
    - Protobuf (~> 3.9)
  - FirebaseRemoteConfig (4.6.0):
    - FirebaseABTesting (~> 3.1)
    - FirebaseCore (~> 6.8)
    - FirebaseInstallations (~> 1.1)
    - GoogleUtilities/Environment (~> 6.2)
    - "GoogleUtilities/NSData+zlib (~> 6.2)"
  - Flurry-iOS-SDK/FlurrySDK (10.3.3)
  - GoogleAppMeasurement (6.6.1):
    - GoogleUtilities/AppDelegateSwizzler (~> 6.0)
    - GoogleUtilities/MethodSwizzler (~> 6.0)
    - GoogleUtilities/Network (~> 6.0)
    - "GoogleUtilities/NSData+zlib (~> 6.0)"
    - nanopb (~> 1.30905.0)
  - GoogleDataTransport (6.2.1)
  - GoogleDataTransportCCTSupport (3.2.0):
    - GoogleDataTransport (~> 6.1)
    - nanopb (~> 1.30905.0)
  - GoogleToolboxForMac/Defines (2.2.2)
  - GoogleToolboxForMac/Logger (2.2.2):
    - GoogleToolboxForMac/Defines (= 2.2.2)
  - "GoogleToolboxForMac/NSData+zlib (2.2.2)":
    - GoogleToolboxForMac/Defines (= 2.2.2)
  - GoogleUtilities/AppDelegateSwizzler (6.6.0):
    - GoogleUtilities/Environment
    - GoogleUtilities/Logger
    - GoogleUtilities/Network
  - GoogleUtilities/Environment (6.6.0):
    - PromisesObjC (~> 1.2)
  - GoogleUtilities/ISASwizzler (6.6.0)
  - GoogleUtilities/Logger (6.6.0):
    - GoogleUtilities/Environment
  - GoogleUtilities/MethodSwizzler (6.6.0):
    - GoogleUtilities/Logger
  - GoogleUtilities/Network (6.6.0):
    - GoogleUtilities/Logger
    - "GoogleUtilities/NSData+zlib"
    - GoogleUtilities/Reachability
  - "GoogleUtilities/NSData+zlib (6.6.0)"
  - GoogleUtilities/Reachability (6.6.0):
    - GoogleUtilities/Logger
  - GoogleUtilities/UserDefaults (6.6.0):
    - GoogleUtilities/Logger

Test Device

iOS 13.6.1
iPhone SE (2th generation)

My Dynamic Links Debug

Same problem. Deep link always opens app if it's installed even though the chart shows it should open web. Only specified parameters are: domainUriPrefix, link and socialMetaTagInfo.

I am having the same issue.

I am having the same issue.

We have used Firebase/DynamicLinks (6.32.0). The issues still present in this version too.
Let us know when this issue get fixed.

Same issue

So i was facing this problem, but i was able to force web regardless of install state and device, but this was in the context of manual link creation by aligning ofl and afl with the destination link and just unsetting/nil setting for ibi etc.
Now that i think about it though, what does this have to do with firebase? In my case, i configured universal links, purpose being i can use a single www URI to serve native and www content. Obviously though, like a lot of you i'm sure, don't have one to one parity between both platforms, but thats OK,  firebase is offloading those for me.
The problem is, i'm trying to go a web landing, with a domain i explicitly defined as universal link, which by design is just doing what i told it to. I pulled https://my.destinationhost.com/.well-known/apple-app-site-association of the host of the destination i'm trying to link to and configuration literally says ALL links should go to app.  My guess is if i add the path/routes of the webpage i only want/can serve by www, it will work as expected. Have you guys confirmed that your destination is not a universal link or if it is,  telling apple/ios that this particular destination is not intended to be consumed by the native app?
{
  "applinks": {
      "details": [
           {
             "appIDs": [ "prod-foo-bar", "staging-foo-bar" ],
             "components": [
               {
                  "/": "/*",
                  "comment": "Matches any URL"
               }
             ]
           }
       ]
   },
}

aka, iMessage yourself the final destination link, without an FDL, and tap on it. If you have multiple environments, make sure the correct app is installed (it's easy to forget what associated domains you actually have in your entitlement)  If it opens the installed app, thats a configuration error.

I am facing the same issue? Is this not possible in iOS and what could be a workaround?

My app is having the same problem. If user installed the app, and open the SHORT dynamic link (domain.page.link/abcZYZ), then app will be opened but dynamicLink.url is just nil.
I have to say, if Dynamic Links is configured properly, then Associated Domains will contain applinks:<domain>.page.link, and in normal universal link behavior, the app SHOULD be opened when user taps on any domain.page.link url, even the short or long one. And it did.
The problem here is:

When short URL is opened in Safari and user taps "Open" button, what the app received is the full and resolved URL -> dynamicLink.url is delivered.
But if short URL is opened directly into the app, then Firebase failed to resolved it -> dynamicLink.url is nil.

Firebase SDK should resolved the short URL before give it to the app, isn't it? Is this code block resolve domain.page.link/abcd into domain.page.link?url=https://example.org?
let handled = DynamicLinks.dynamicLinks().handleUniversalLink(userActivity.webpageURL!) { (dynamiclink, error) in
    // ...
  }

I am facing the same issue? Is this not possible in iOS and what could be a workaround?

You can use an additional URL prefix for links that need to open only in the browser

The issue happens because when you create an FDL and if your firebase project contains iOS apps, the AASA file generated for the FDL contains the details of the apps added to the firebase project even if you select browser for opening the FDL. Because of which if the user tries to open the link when the app is installed, the universal linking will take over and opens up the app.
we are already aware of this issue and the fix for the same is in our roadmap.

Hi - any update on this issue @eldhosembabu ? We are still running into this issue - thanks.

unfortunately we don't have any updates as of now.

Any updates on this, it is still a problem?

The Firebase Dynamic Links service will be shutdown on August 25, 2025.  In the meantime, only critical or security issues will be fixed in the SDK.
More at https://firebase.google.com/support/dynamic-links-faq


White screen on release mode

I tried to run https://github.com/iden3/polygonid-flutter-sdk/tree/develop/example on iOS.
I got completely white screen
Command: flutter run --release
Test device: iPhone X
iOS Version: 16.3.1

I don't see any issue with the polygon id app from App Store.

The issue has been fixed, thanks for the report.


Is closeOnEsc property implemented?

I try to disable close On Pressing Esc key (see https://sweetalert.js.org/docs/#closeonesc) effect for my form, but it seems not to work!
Any ideas?

Hi!
Since all parameters should be forwarded from swal-forms to swal, I would expect this to work, though there could maybe be a problem in how swal-forms handle the DOM.
Could you provide a reproduction case? Ideally a working example using just swal, and a non-working example using swal-forms.
Thanks!


Support for package roots when using --cp

When using flows and operations outside the current package, I need to use the --cp argument to let slang know where my .sl files are located at.
For example, I wanted to use the operation 'base_mail' from 'org.openscore.slang.base.mail', so I needed to use the following:
--cp c:/Work/hackaton/slang-content/org/openscore/slang/base/mail
Since it's a best practice to orginaize the .sl files into folders corresponding to their namespaces, I would like to be able to point to the root of these packages, like this:
--cp c:/Work/hackaton/slang-content

that should work... did you try it? and it did not work?

We tried it yesterday during the hackaton and it didn't seem to work, but now I tried it again and it seems to work. Maybe we were still using the released version of Slang, downloaded from the official site (openscore.io), which seems to be a less developed version.
You may close this issue now.


Implement Logger.getChild ourselves

Implement Logger.getChild ourselves since that doesn't exist in Python 2.6.
Resolves psychomario/PyPXE#136

LGTM, Thanks for submitting this.


Error while building graph for 3D ResNet

I am getting this error while building graph for 3D ResNet:
hl.build_graph(model,torch.zeros([1,3,16,112,12]))
RuntimeError: invalid argument 2: input image (T: 1 H: 4 W: 1) smaller than kernel size (kT: 1 kH: 4 kW: 4) at /opt/conda/conda-bld/pytorch_1549635019666/work/aten/src/THCUNN/generic/VolumetricAveragePooling.cu:57

I believe your input dimensions for visualization might be wrong.
Input to the model should be hl.build_graph(model,torch.zeros([1,3,16,112,112]))


BUG: Social media links in footer not working

Is there an existing issue for this?

[X] I have searched the existing issues

What happened?
The icons in the footer need to be connected to the respective social media accounts.
Record

[X] I agree to follow this project's Code of Conduct
[X] I have checked the existing issues
[X] I'm a GSSOC'24 contributor
[X] I want to work on this issue

@paridhi1509 and those social media account not exists for now.


Error with Company Communicator app in Teams after deployment

After deploying the app in my Teams channel I am getting this error:
Ooops! An unexpected error seems to have occured. Why not try refreshing your page? Or you can contact your administrator if the problem persists.
Even after refreshing the page the error occurs.

@manish141989 Could you upgrade to latest version and retry? We have improved the error messages to reflect the teal problem in many scenarios.

Please share the link for the updated version.
Regards
Manish Kumar
Collaboration Specialist Office 365
Electrolux IT

Mobile; +48 662 124 463
E-mail<EMAIL_ADDRESS>
<EMAIL_ADDRESS>From: juna-gupta<EMAIL_ADDRESS>Sent: Tuesday, December 1, 2020 3:35 PM
To: OfficeDev/microsoft-teams-apps-company-communicator<EMAIL_ADDRESS>Cc: Manish Kumar<EMAIL_ADDRESS>Mention<EMAIL_ADDRESS>Subject: Re: [OfficeDev/microsoft-teams-apps-company-communicator] Error with Company Communicator app in Teams after deployment (#194)
NOTICE: This email originated from outside of Electrolux. Be careful of attachments and links. Report suspicious emails using Report Message button.
@manish141989https://github.com/manish141989 Could you upgrade to latest version and retry? We have improved the error messages to reflect the teal problem in many scenarios.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHubhttps://github.com/OfficeDev/microsoft-teams-apps-company-communicator/issues/194#issuecomment-736590384, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AQYBUQGY2RN6RTKREXUS5M3SST5KVANCNFSM4QLR4ISQ.
This email and any attached files is for the attention of the intended recipient. The email and any attachments may contain material that is confidential, privileged and/or attorney work product. If you are not the intended recipient: (a) contact the sender immediately and delete from your system all copies of the email including any attachments. (b) do not read, print, retain, copy or disseminate this message or any part of it. Any such unauthorized use may be unlawful. E-mail transmission cannot be guaranteed to be secure or error-free as information could be intercepted, corrupted, lost, destroyed, arrive late or incomplete, or contain viruses. The sender therefore cannot accept liability for any errors or omissions in the contents of this message, which arise as a result of e-mail transmission. If verification is required please request a hard-copy version. The protection of your personal data matters to us. Please find relevant information relating to Art. 13 GDPR on https://www.electroluxgroup.com/privacy/en/. The Electrolux Group www.electrolux.com
Classified as Internal

@manish141989 The code is pushed to the master branch in the same repository.

Do I need to follow the process again as per the deployment guide Deployment guide · OfficeDev/microsoft-teams-apps-company-communicator Wiki · GitHubhttps://github.com/OfficeDev/microsoft-teams-apps-company-communicator/wiki/Deployment-guide#2-deploy-to-your-azure-subscription ?
Any way where I can just update the code? And after that do I need to update the app in Teams app in teams admin center too with users and authors zip package?
Regards
Manish Kumar
Collaboration Specialist Office 365
Electrolux IT

Mobile; +48 662 124 463
E-mail<EMAIL_ADDRESS>
<EMAIL_ADDRESS>From: juna-gupta<EMAIL_ADDRESS>Sent: Tuesday, December 1, 2020 4:26 PM
To: OfficeDev/microsoft-teams-apps-company-communicator<EMAIL_ADDRESS>Cc: Manish Kumar<EMAIL_ADDRESS>Mention<EMAIL_ADDRESS>Subject: Re: [OfficeDev/microsoft-teams-apps-company-communicator] Error with Company Communicator app in Teams after deployment (#194)
NOTICE: This email originated from outside of Electrolux. Be careful of attachments and links. Report suspicious emails using Report Message button.
@manish141989https://github.com/manish141989 The code is pushed to the master branch in the same repositoryhttps://github.com/OfficeDev/microsoft-teams-apps-company-communicator.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHubhttps://github.com/OfficeDev/microsoft-teams-apps-company-communicator/issues/194#issuecomment-736624266, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AQYBUQBY5TYNBOEGHPGJNGTSSUDIZANCNFSM4QLR4ISQ.
This email and any attached files is for the attention of the intended recipient. The email and any attachments may contain material that is confidential, privileged and/or attorney work product. If you are not the intended recipient: (a) contact the sender immediately and delete from your system all copies of the email including any attachments. (b) do not read, print, retain, copy or disseminate this message or any part of it. Any such unauthorized use may be unlawful. E-mail transmission cannot be guaranteed to be secure or error-free as information could be intercepted, corrupted, lost, destroyed, arrive late or incomplete, or contain viruses. The sender therefore cannot accept liability for any errors or omissions in the contents of this message, which arise as a result of e-mail transmission. If verification is required please request a hard-copy version. The protection of your personal data matters to us. Please find relevant information relating to Art. 13 GDPR on https://www.electroluxgroup.com/privacy/en/. The Electrolux Group www.electrolux.com
Classified as Internal

I have the same issue..testing

@manish141989 : You can follow migration guides for various versions to get latest code for your app. This way, your original data will also be retained.

v4 migration guide
v3 migration guide
v2 migration guide