Devtools styles & styled components fix

Fixes a couple issues with devtools and an app using styled components.

make todo-app use styled-components for easier testing
ensure versions are consistent and types are set to 4.1.8 everywhere to prevent these warnings:

move style copying code because it wasn't copying the app's styled components
(there are probably some other issues with the copying that I'll raise and handle separately - eg we might accidentally apply some of users' styles to devtools...)

End result seems to be working:

Realized I had an idea about how to fix the copying issue I mentioned above, so I added this to this PR - hope that's ok.

With the above we might need to add the css mocking config to example templates... Lmk if this is not a good idea.

@andrejak definitely a good idea to add mocking in templates. I can add that in webpack update.


update mashlib and penny recipes to CSS 7.0.4 respective mashlib 1.8.10-1 as on npmjs

@joachimvh
I have done the same procedure as on 7.0.3 change.
I have used the versions that are published on the official npmjs.com site/repo
do you think these changes are done correct and reflecting the actual dependencies ?

Mashlib 1.8.10-1 is experimental. Not an official one.


Incorrect validation errors in user-defined functions when using recently added builtin functions (createObject etc.)

It seems that the validation logic for user-defined functions does not recognize the four new builtin functions that have recently been added (https://github.com/MicrosoftDocs/azure-docs/commit/be56ab92a33c673e858fc812339ea0610dafcfc1, https://github.com/microsoft/vscode-azurearmtools/issues/1043#issuecomment-710433636).
This template
{
    "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
    "contentVersion": "<IP_ADDRESS>",
    "parameters": {},
    "functions": [
        {
            "namespace": "test",
            "members": {
                "testNewFunctions": {
                    "parameters": [],
                    "output": {
                        "value": "[
                            createArray(
                                true(),
                                false(),
                                null(),
                                createObject('name', 'foo')
                            )]",
                        "type": "array"
                    }
                }
            }
        }
    ],
    "resources": [],
    "outputs": {
        "result": {
            "type": "array",
            "value": "[test.testNewFunctions()]"
        }
    }
}

triggers this warning in VSCode:  Template validation failed: The template function 'testNewFunctions' at line '11' and column '31' is not valid. These function calls are not supported in a function definition: 'true,false,null,createObject'. Please see https://aka.ms/arm-template/#functions for usage details.
but the deployment actually succeeds:
> New-AzResourceGroupDeployment -Name 'test' -ResourceGroupName 'test-rg' -TemplateFile .\test.json

DeploymentName          : test
ResourceGroupName       : test-rg
ProvisioningState       : Succeeded
Timestamp               : 2021-02-01 13:31:24
Mode                    : Incremental
TemplateLink            :
Parameters              :
Outputs                 :
                          Name             Type                       Value
                          ===============  =========================  ==========
                          result           Array                      [
                            true,
                            false,
                            null,
                            {
                              "name": "foo"
                            }
                          ]

DeploymentDebugLogLevel :

msazurermtools.azurerm-vscode-tools extension version: 0.14.0

Repros with current bits.

As mentioned before, this issue is because the template validation code does not know about true, false, null and createObject functions, these are new and not included in the validation code. For now, the fix is to port these over the validation code, the long term and suggested approach is to use the public Azure.Deployments.Expressions nuget package to avoid code duplication.

Fixed in next release.

@jberezanski-mdg This was released on Monday.  Let us know if you're still having problems, thanks.

Thank you, it seems to be working fine.


Sometimes iD doesn't trim multiple consecutive spaces

I don't know how some users are able to do this (I did try to reproduce this problem), but sometimes I see users inserting names with multiple consecutive whitespaces.
For example, version 7 of this way https://www.openstreetmap.org/way/169886830/history (which was modified in https://www.openstreetmap.org/changeset/41179658)
Rodovia␣Álvaro␣Brasil␣Filho␣␣␣␣␣␣␣␣␣␣SP-64

You're right iD doesn't trim multiple consecutive spaces.  Should we?

Hum... actually I can reproduce it.
And I think that yes, they should be removed.
Is there any valid reason to have multiple consecutive spaces in object values?

Is there any valid reason to have multiple consecutive spaces in object values?

I don't know..  People can generally put whatever they want into OpenStreetMap.  Why try to prevent it?  Maybe some business out there really does have a lot of extra spaces in its name.

If other tools count, osmose detects and warn about multiple spaces http://osmose.openstreetmap.fr/en/errors?item=5010&class=903 and JOSM also detects and fixes them

Do any of the other editors have special handling for consecutive spaces?

I think most of the time multiple consecutive spaces are errourneous, so they can be delete if entered. In case it is really wanted we can keep consecutive spaces if entered in the key=value section at the bottom above relations. But how can users know that?

I think that iD should not integrate checking tool, because:

It should remain easy to use
It is a web editor, then any checking tool will add data to download
Other software / web service do that

If you want to indicate that there are multiple space, or a field value error (e.g. char instead of number), just show a little red cross at the right of the field value. User could put pointer over it to show what error type is it.

It should remain easy to use

What I was thinking will keep iD exactly as it is now for the user: it should remove the spaces after the user inputs the data (after pressing Enter, for example), without any warnings or anything else.

I agree with @homersimpsons, let's include this idea in #2836.  The idea there is to highlight fields that look strange, rather than try to guess what the user wants to do and replace their values.

Isn't it just better to silently remove the spaces instead unnecessarily highlight a field? (and make the user think "what did I do here?")
It's different to have a field with yes;no and a field with two consecutive spaces.
One is indeed an error and the other is a "cosmetic" issue.
All the times that I saw multiple spaces they were caused by the user accidentally pressing the space bar twice or trying to tag for the renderer (like the example in my first message, where he didn't know how to use ref)

Isn't it just better to silently remove the spaces instead unnecessarily highlight a field? (and make the user think "what did I do here?")

No.. That makes about as much sense as rewriting the text box on wikipedia.org to fix user's spaces.   Wikipedia has bots to check for little grammatical mistakes, and so should OSM.


Confusing error message if play count mismatches

I'm getting error messages like this:
vcr.errors.CannotOverwriteExistingCassetteException: Can't overwrite existing cassette (....yaml') in your current record mode ('once').
No match for the request (<Request (GET) https://example.com/foo>) was found.
Found 2 similar requests with 0 different matcher(s) :

1 - (<Request (GET) https://example.com/foo>).
Matchers succeeded : ['method', 'scheme', 'host', 'port', 'path', 'query']
Matchers failed :

2 - (<Request (GET) https://example.com/foo>).
Matchers succeeded : ['method', 'scheme', 'host', 'port', 'path', 'query']
Matchers failed :

Seeing as no matches failed, why did it fail to match? Digging in and debugging, the issue is that the play_counts check in Cassette.__contains__ fails. It would be helpful if this was added to the error message somehow.
This looks like a regression of #81 but that was a long time ago and the error message is quite different now.

Same thing happened to me. When I recorded, vcrpy only seemed to record the request/response once, even though it was happening twice in my test (in a row, with the exact same request parameters). I manually copied the request/response in the cassette and appended it to the cassette, which fixed the issue.

I met this issue too. Is there any way to fix it?

the same issue to me

same issue. fixed by adding the second request manually

I also ran into this issue today.
seems like allow_playback_repeats=true can fix it if you dont have situations where you have identical requests with different responses
However i use pytest-vcr. this means i cannot set allow_playback_repeats.
and we also have situations where we have to send identical requests which return different responses.
But we also have situations that do the same request multiple times but give the same response.
For this i wrote a hacky fix/patch to fix it for me.
from vcr.cassette import Cassette, CassetteContextDecorator
from vcr.errors import UnhandledHTTPRequestError
from vcr.matchers import requests_match

class VCRRepeatPlayback:
    # This class is a hacky way to turn a dict into a class
    def __init__(self, **kwargs):
        for k,v in kwargs.items():
            setattr(self, k, v)

class PatchedCassette(Cassette):
    """
    Array which contains all the matchers which got configured, if these match then
    allow this specific request to be replayed
    """
   allow_playback_repeats_matches = [
        VCRRepeatPlayback(method='GET', path='/foo/bar', query=[], any_other_matcher_you_configured='foo'),
    ]

    def __init__(self, *args, playback_repeats_on_match=None, **kwargs):
        self.playback_repeats_on_match = playback_repeats_on_match or dict()
        super().__init__(*args, **kwargs)

    def _load(self):
        super()._load()
        self._populate_playback_repeats_on_match()

   def _populate_playback_repeats_on_match(self):
        """
        Initial population for the cassette that gets loaded.
        Will check every cassette entry request, if it matches with any self.allow_playback_repeats_matches
        Then it will be treated as if self.allow_playback_repeats=True for this request only
        :return:
        """

        # Prevent executing this multiple times
        if len(self.playback_repeats_on_match) > 0:
            return

        for allow_playback_match in self.allow_playback_repeats_matches:
            for index, (stored_request, response) in enumerate(self.data):
                # Prevent overwriting entry which was already matched before
                if self.playback_repeats_on_match.get(index, False):
                    continue
                # This check is very hacky, requests_match techinally expects a request object
                # However we just feed it a class which copies its attributes from a dict
                self.playback_repeats_on_match[index] = requests_match(
                    allow_playback_match, stored_request, self._match_on
                )

    def play_response(self, request):
        """
        Get the response corresponding to a request, but only if it
        hasn't been played back before, and mark it as played
        """
        for index, response in self._responses(request):
            # Added allow_playback will replay if it is marked as allowed to replay
            if self.play_counts[index] == 0 or self.allow_playback_repeats or self.playback_repeats_on_match[index]:
                self.play_counts[index] += 1
                return response
        # The cassette doesn't contain the request asked for.
        raise UnhandledHTTPRequestError(
            "The cassette (%r) doesn't contain the request (%r) asked for" % (self._path, request)
        )

    def __contains__(self, request):
        """Return whether or not a request has been stored"""
        for index, response in self._responses(request):
            # Added allow_playback will replay if it is marked as allowed to replay
            if self.play_counts[index] == 0 or self.allow_playback_repeats or self.playback_repeats_on_match[index]:
                return True
        return False

# This changes which class gets used as the Cassette class.
vcr_allow_playback_repeats_class = PatchedCassette

def apply_patch():
    """
    patch methods/functions where Cassette class gets applied by vcr.
    together with the new methods which replace the methods which get patched
    :return:
    """
    @classmethod
    def patch_replace_class_use(cls, **kwargs):
        return CassetteContextDecorator.from_args(vcr_allow_playback_repeats_class or cls, **kwargs)

    @classmethod
    def patch_replace_class_use_arg_getter(cls, arg_getter):
        return CassetteContextDecorator(vcr_allow_playback_repeats_class or cls, arg_getter)

    Cassette.use = patch_replace_class_use
    Cassette.use_arg_getter = patch_replace_class_use_arg_getter

Cant guarantee it fixes it and might be version specific (we use 4.1.1)
However this did fix it for me.

Wrestling with the same issue here, in a cassette recorded with five requests. Not fixed with allow_playback_repeats=True. Will to manually repeat a section of the cassette to get past this, but I can't see how to figure out which section needs to be repeated (and don't want to manually modify the cassette each time). Since a lot of comments here are recent, wondering if downgrading VCR might help? But to which version?

Ah! I think I've found and fixed the reason for the non-match issue I was referring to above. We have some code that uses python futures to do multi-threaded operations. That meant the order of operations was non-deterministic, which resulted in non-deterministic ordering in VCR cassettes.
    with concurrent.futures.ThreadPoolExecutor(max_workers=10) as executor:
        ...

I changed the  10 to settings.CONCURRENT_MAX_WORKERS and then made that 10 in main settings and 1 in the test settings. This way the test runner records the requests in the cassette in a deterministic order. Seems to have fixed my problem for now.

Ah, thanks for that. I do wonder though, it looks like you're using the default record mode of "once" here, rather than "none" for circleci/test runners? I think that could explain why it is failing in concurrent environments but not locally. There isn't much doc on it (like why it would be a problem), but I did find the configuration section suggests you override that for CI: https://pytest-vcr.readthedocs.io/en/latest/configuration/

I think the attempt it's making to re-record is a symptom, not a cause. So yes I could set record-mode to None in the test runner, but that wouldn't solve the underlying problem - it thinks it needs to re-record because it couldn't find a match, and it couldn't find a match because the parallelism is causing it to sometimes try to play back the cassette in an order that doesn't match the recording order.  There might be a different fix for that problem that would allow me to not disable the parallelism in tests, but I'm not sure what it is :(

I just encountered this when updating a dependency that now makes slightly different requests. I also found that I had to run pytest --vcr-record=new_episodes (using with pytest-vcr) multiple times to get it to actually record all of the several new instances of the same URL requested.


Get-MessageTraceDetail We cannot currently process your request, please wait a few minutes and try again

Pretty sure this is a wrong place to report, but still... Perhaps someone will be able to help me understand how to overcome this issue.
Long story short: I am having a really hard times while exporting message trace from Office365. Basically speaking I am trying to export 24 hours worth of data and it errors out after 17 minutes 30 seconds. I have double checked that and it seems like it errors out exactly after that specific time.
The command is like the following:
StartDate = Get-Date 2021-05-26
$EndDate = $StartDate.AddDays(1)
$pageSize = 5000

do
{
    Write-Output "Getting page $page of messages..."
    $messagesThisPage = Get-MessageTrace -StartDate $StartDate -EndDate $EndDate -PageSize $pageSize -Page $page

    Write-Output "There were $($messagesThisPage.count) messages on page $page..."
    $messageList += $messagesThisPage

    $page++
}
until ($messagesThisPage.count -lt $pageSize)

A error is the following:
We cannot currently process your request, please wait a few minutes and try again.
At C:\Users\adm-ysamorodov\AppData\Local\Temp\tmp_xvllfm34.gvo\tmp_xvllfm34.gvo.psm1:25736
char:9
+         $steppablePipeline.End()
+         ~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : InvalidOperation: (:) [Get-MessageTrace], FfoReportingExceptio
   n
    + FullyQualifiedErrorId : [Server=CO6PR14MB4500,RequestId=4bd37bab-b241-4066-8ece-0fb588
   abbff0,TimeStamp=5/28/2021 3:43:14 PM] [FailureCategory=Cmdlet-FfoReportingException] F9
  3DD5F0,Microsoft.Exchange.Management.FfoReporting.GetMessageTrace
    + PSComputerName        : outlook.office365.com

One more thing to note is Fiddler showing error 500 every now and then while the script is running
Nothing changes if I do a 4 hour batch only or change page size. It always errors out after 17 minutes and 30 seconds

@YuriySamorodov, you should open a support case and ask there.


fix: upgrade min node engine to fix azure pipeline test

This should fix our failing Azure pipeline. Support for v8 ends in two months anyway.
https://nodejs.org/en/about/releases/

Brian's got it already


Multipart request Issue

Investigative information
Please provide the following:

Timestamp:
Function App name:
Function name(s) (as appropriate): Http Trigger
Core Tools version:  2.7.1158

Repro steps
Provide the steps required to reproduce the problem:
Create an Http trigger with the code below
Send a multipart form with a file
I tried with curl
curl -F<EMAIL_ADDRESS>http://localhost:7071/api/fpupload
and with filepond component in react
https://github.com/pqina/filepond
Expected behavior
It should save the same file in a blob and in the local drive
Actual behavior
The file is saved with a wrong size  like approximately double size of the original size
Related information
Provide any related information

Links to source
Contents of the requirements.txt file
Bindings used

Source
 "scriptFile": "__init__.py",
  "bindings": [
    {
      "authLevel": "function",
      "type": "httpTrigger",
      "direction": "in",
      "name": "req",
      "methods": [
        "post"
      ]
    },
    {
      "name": "outputblob",
      "type": "blob",
      "path": "test/toto.jpg",
      "connection": "AzureWebJobsStorage",
      "direction": "out",
      "dataType": "binary"
    },
    {
      "type": "http",
      "direction": "out",
      "name": "$return"
    }
```python
def main(req: func.HttpRequest,outputblob: func.Out[func.InputStream]) -> func.HttpResponse:
    logging.info('Python HTTP trigger function processed a request.')
    filetoup = req.files['filepond']
    filetoup.save("/mnt/c/experiments/toto.jpg")
    filetoup.stream._file.seek(0)
    dataout=filetoup.stream._file.read()
    outputblob.set(dataout)
    return func.HttpResponse(
               status_code=200

    )

azure-functions==1.0.0a4
azure-functions-worker==1.0.0a4
grpcio==1.14.2
grpcio-tools==1.14.2
protobuf==3.6.1
six==1.11.0

We have a known issue where body is not returned correctly for image/png and application/octet-stream: https://github.com/Azure/azure-functions-python-worker/issues/380

We have a known issue where body is not returned correctly for image/png and application/octet-stream: #380

@maiqbal would you suggest that this is a duplicate or worth revisiting after #380 is resolved?

Believe this should be a duplicate. @zecloud, what is your content type?

content-type is multipart/form-data and i tried with jpg and png
i found this old issue that seems to be a similar problem in nodejs but closed maybe it's still related https://github.com/azure/azure-functions-host/issues/2009

The handling for multipart/form-data will be the same as application/octet-stream in this case. Will need to add a fix for this in the host.

Closing a duplicate of https://github.com/Azure/azure-functions-python-worker/issues/380. Fix should be available as part of the next release.

@maiqbal11 can you please tell when the next release will be? i am facing the same issue using :
Azure Functions Core Tools (2.7.1373 Commit hash: cd9bfca26f9c7fe06ce245f5bf69bc6486a685dd)
Function Runtime Version: 2.0.12507.0

@daker, I believe should be able to update it by end-of-day today. The feeds are being updated with the latest release: https://github.com/Azure/azure-functions-core-tools/releases.

@maiqbal11 yes it works as expected!

@maiqbal11 do you know when it's going live on azure? i think i am still having the same issue when i publish the function on azure

@daker, we are rolling out this week. I believe it should be out in all regions by next week unless we hit some snags.


DFM 72BUC02-ML not always available as uvcvideo device in /dev/

With trying to commission on of our first cameras. The camera continuously disconnected and reconnected. On the first system it was barely usable do to the device continuously switching from one device number (e.g. /dev/video0) to another (e.g. /dev/video1).
The firmware of the camera was upgraded to enable UVC support (using tiscamera/data/firmware/usb2/dfk72uc02_3012.euvc)
After upgrading the camera, the system was rebooted.
The camera is connected to a ARM based system (TS-7553-V2 of Technologic Solution) running Debian Stretch.
root@ts-imx6ul:~# uname -a
Linux ts-imx6ul 4.1.15-g7aa498a #16 SMP PREEMPT Fri Dec 15 13:19:46 PST 2017 armv7l GNU/Linux

Notice the failed GET_LEN-queries in the partial output of dmesg:
[  199.676579] input: DFM 72BUC02-ML as /devices/platform/soc/2100000.aips-bus/2184200.usb/ci_hdrc.1/usb1/1-1/1-1.1/1-1.1:1.0/input/input7
[  199.842141] uvcvideo: Failed to query (GET_LEN) UVC control 5 on unit 4: -32 (exp. 2).
[  199.844410] uvcvideo: Failed to query (GET_LEN) UVC control 11 on unit 4: -32 (exp. 2).
[  200.812943] usb 1-1.1: USB disconnect, device number 10
[  222.807063] usb 1-1.1: new high-speed USB device number 11 using ci_hdrc
[  224.519303] uvcvideo: Found UVC 1.00 device DFM 72BUC02-ML (199e:8207)
[  225.545891] input: DFM 72BUC02-ML as /devices/platform/soc/2100000.aips-bus/2184200.usb/ci_hdrc.1/usb1/1-1/1-1.1/1-1.1:1.0/input/input8
[  225.730514] uvcvideo: Failed to query (GET_LEN) UVC control 5 on unit 4: -32 (exp. 2).
[  225.732663] uvcvideo: Failed to query (GET_LEN) UVC control 11 on unit 4: -32 (exp. 2).
[  229.684626] uvcvideo: Non-zero status (-75) in status completion handler.
[  229.997570] usb 1-1.1: USB disconnect, device number 11
[  247.386760] usb 1-1.1: new high-speed USB device number 12 using ci_hdrc
[  249.098775] uvcvideo: Found UVC 1.00 device DFM 72BUC02-ML (199e:8207)
[  250.129625] input: DFM 72BUC02-ML as /devices/platform/soc/2100000.aips-bus/2184200.usb/ci_hdrc.1/usb1/1-1/1-1.1/1-1.1:1.0/input/input9
[  250.274627] uvcvideo: Failed to query (GET_LEN) UVC control 5 on unit 4: -32 (exp. 2).
[  250.285703] uvcvideo: Failed to query (GET_LEN) UVC control 11 on unit 4: -32 (exp. 2).
[  252.013399] usb 1-1.1: USB disconnect, device number 12
[  260.956891] usb 1-1.1: new high-speed USB device number 13 using ci_hdrc
[  262.669164] uvcvideo: Found UVC 1.00 device DFM 72BUC02-ML (199e:8207)
[  263.695880] input: DFM 72BUC02-ML as /devices/platform/soc/2100000.aips-bus/2184200.usb/ci_hdrc.1/usb1/1-1/1-1.1/1-1.1:1.0/input/input10
[  263.841287] uvcvideo: Failed to query (GET_LEN) UVC control 5 on unit 4: -32 (exp. 2).
[  263.844051] uvcvideo: Failed to query (GET_LEN) UVC control 11 on unit 4: -32 (exp. 2).
[  264.662544] uvcvideo: Non-zero status (-75) in status completion handler.
[  265.068911] usb 1-1.1: USB disconnect, device number 13

On a second system with identical hardware and the same firmware, I also notice this in dmesg:
root@ts-imx6ul:~# dmesg | grep -i 'usb\|uvc\|video'
[    0.320307] usbcore: registered new interface driver usbfs
[    0.320519] usbcore: registered new interface driver hub
[    0.320805] usbcore: registered new device driver usb
[    0.326889] Linux video capture interface: v2.00
[    0.566240] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
[    0.566971] usbcore: registered new interface driver usb-storage
[    0.567164] usbcore: registered new interface driver usb_ehset_test
[    0.570956] 2184800.usbmisc supply vbus-wakeup not found, using dummy regulator
[    0.573254] 2184000.usb supply vbus not found, using dummy regulator
[    0.579934] 2184200.usb supply vbus not found, using dummy regulator
[    0.583998] ci_hdrc ci_hdrc.1: new USB bus registered, assigned bus number 1
[    0.599224] ci_hdrc ci_hdrc.1: USB 2.0 started, EHCI 1.00
[    0.601985] hub 1-0:1.0: USB hub found
[    0.919373] usb 1-1: new high-speed USB device number 2 using ci_hdrc
[    0.926642] usbcore: registered new interface driver usbhid
[    0.926766] usbhid: USB HID core driver
[    1.073825] hub 1-1:1.0: USB hub found
[    1.359229] usb 1-1.1: new high-speed USB device number 3 using ci_hdrc
[    3.118029] fb0: Virtual frame buffer device, using 4K of video memory
[    8.130478] usbcore: registered new interface driver usbserial
[    8.130625] usbcore: registered new interface driver usbserial_generic
[    8.130750] usbserial: USB Serial support registered for generic
[    8.228321] usbcore: registered new interface driver option
[    8.228481] usbserial: USB Serial support registered for GSM modem (1-port)
[    9.482817] uvcvideo: Found UVC 1.00 device DFM 72BUC02-ML (199e:8207)
[    9.505326] input: DFM 72BUC02-ML as /devices/platform/soc/2100000.aips-bus/2184200.usb/ci_hdrc.1/usb1/1-1/1-1.1/1-1.1:1.0/input/input2
[    9.505983] usbcore: registered new interface driver uvcvideo
[    9.506000] USB Video Class driver (1.1.1)
[   10.299216] usb 1-1.2: new high-speed USB device number 4 using ci_hdrc
[   10.413604] usb 1-1.2: config 1 interface 0 altsetting 0 endpoint 0x81 has an invalid bInterval 255, changing to 11
[   11.575467] cdc_acm 1-1.2:1.0: ttyACM0: USB ACM device
[   11.682418] uvcvideo: Failed to query (GET_LEN) UVC control 5 on unit 4: -32 (exp. 2).
[   11.691454] usbcore: registered new interface driver cdc_acm
[   11.691480] cdc_acm: USB Abstract Control Model driver for USB modems and ISDN adapters
[   11.708492] uvcvideo: Failed to query (GET_LEN) UVC control 11 on unit 4: -32 (exp. 2).
[   11.851976] usb 1-1.2: USB disconnect, device number 4
[   13.119141] usb 1-1.2: new high-speed USB device number 5 using ci_hdrc
[   13.290497] cdc_acm 1-1.2:1.0: ttyACM0: USB ACM device
[   13.308097] cdc_acm 1-1.2:1.2: ttyACM1: USB ACM device
[   13.326421] cdc_acm 1-1.2:1.4: ttyACM2: USB ACM device
[   13.348080] cdc_acm 1-1.2:1.6: ttyACM3: USB ACM device
[   13.371469] cdc_acm 1-1.2:1.8: ttyACM4: USB ACM device
[   13.392489] cdc_acm 1-1.2:1.10: ttyACM5: USB ACM device
[   98.756978] uvcvideo: Found UVC 1.00 device DFM 72BUC02-ML (199e:8207)
[   98.770222] input: DFM 72BUC02-ML as /devices/platform/soc/2100000.aips-bus/2184200.usb/ci_hdrc.1/usb1/1-1/1-1.1/1-1.1:1.0/input/input3
[   98.866936] uvcvideo: Failed to query (GET_LEN) UVC control 5 on unit 4: -32 (exp. 2).
[   98.871612] uvcvideo: Failed to query (GET_LEN) UVC control 11 on unit 4: -32 (exp. 2).

You get USB disconnects. This could be either due to a bad cable or due to insufficient power. Could you try connecting the camera through a powered USB hub?


Complete Italian translation.

I didn't read the rules thoroughly , didn't see the pull request thingie! Sorry for all the trouble.
Anyway this is the complete Italian translation for the WFRP 2nd Edition sheet.

Thanks for your translation work!


Message text is cut off at top

Example below:

Thanks, i will have a look :)

This has now been fixed in version 1.1.1.

Doesn't seem to be fixed. I updated and see this:

Which device are you using? Is this on the simulator?

iPhone X in simulator was that specific test.


Instioctl install fails if HOME variable is not present

Getting "Istioctl installed successfully" even though it failed to install due to missing $HOME variable. "cd $HOME || exit" command will not exit the script rather it will move to base directory. Verify $HOME variable exists and fail the installation.
https://github.com/istio/istio/blob/0c0cf2d6fbca85beca0598de8817ff90107ddd0c/release/downloadIstioCtl.sh#L122

In what environment does $HOME not exist? And doesn't cd with no args go to the "base directory" which is what we want anyways? At least on my machine cd == cd $HOME

I have faced this issue in my product. This is during the process of creating OS image I want to bake in istioctl and it got failed due to $HOME variable absence.
Due to missing $HOME variable cd $HOME stayed back in ${tmp} directory and below commands created directory inside ${tmp} and removed in next step as part of rm command. I could not find istioctl in my machine but I could see message like "Add the istioctl to your path with:", "Need more information? Visit https://istio.io/docs/reference/commands/istioctl/" which is misleading.
If you are solely relying on $HOME variable, please fail the script if it's is not present.
mkdir -p ".istioctl/bin"
mv "${tmp}/istioctl" ".istioctl/bin/istioctl"
rm -r "${tmp}"


Change a number in the FAQ

The current FAQ says:
Can you show everybody on the highscores (instead of just the top 25 players)?
This should be updated to 50 players.
Since I'm in a good mood, I'll write the code for you. Just change this line:
{{#>question question="Can you show everybody on the highscores (instead of just the top 25 players)?"}}
to this:
{{#>question question="Can you show everybody on the highscores (instead of just the top 50 players)?"}}
You're welcome 😎

Will be fixed in next deployment


doc: more explanation about unbind

Explain in more detail that unbind is the API to call for disconnecting.

This should address some of the confusion in issues including #365 and #382

⚠ This issue has been locked due to age. If you have encountered a recent
problem that seems to be covered by this issue, please open a new issue.
Please include a minimal reproducible example
when opening a new issue.


Add cpu morpher

add cpu morpher which supports more than 4 active targets
add common interface for morphers
change Animator to allow swapping out the stock MorphHelper for the
new CPUMorpher
change Animator to allow morphers to be managed externally

I think you made a mistake in the PR request? Wrong target branch?

This change depends on the animator change as it involves some changes to the Animator. I'm targeting the Animator PR so it only show the changes regarding the morpher. Will retarget huner-main once we merge the other PR.


Confused

I've ISH installed somehow on my kodi machine (raspi4/xbian) but it says I've never installed/updated the WideVine cdm.
Should I?

It was probably installed as dependency of another addon. If that addon needs the Widevine library, it will call ISH to install it. If you can play every video you want to, there is no need for it.

I’m having issues with my main addon since installing WideVine. Away it goes. Thank you. Sent from nowhere near my ready room with my new tricorderOn May 7, 2023, at 18:18, horstle @.***> wrote:
It was probably installed as dependency of another addon. If that addon needs the Widevine library, it will call ISH to install it. If you can play every video you want to, there is no need for it.
—Reply to this email directly, view it on GitHub, or unsubscribe.You are receiving this because you authored the thread.Message ID: @.***>


MAINT: refactoring argument 'slice' to 'segment' in Seqview methods

no longer redefining built-in 'slice'.

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

0 of 0   changed or added relevant lines in 0 files are covered.
4 unchanged lines in 2 files lost coverage.
Overall coverage increased (+0.0001%) to 91.342%

Files with Coverage Reduction
New Missed Lines
%

.nox/test-3-9/Lib/site-packages/cogent3/maths/matrix_exponential_integration.py
1
92.98%

.nox/test-3-9/Lib/site-packages/cogent3/maths/scipy_optimize.py
3
84.09%

Totals

Change from base Build<PHONE_NUMBER>:
0.0001%

Covered Lines:
178727

Relevant Lines:
195668

💛  - Coveralls


[docker] support metadata labels

It uses the metadata labels format explained in https://github.com/opencontainers/image-spec/blob/master/annotations.md?rgh-link-date=2021-07-08T07%3A26%3A24Z

🙏 Is there anything else to get this merged? Thanks

Also, just to reiterate, the BUILD_DATE will not be set unless we move Linux image building/publishing to our own infra from Dockerhub builds.

I just merged and fixed the conflicts. In addition, I removed the BUILD_DATE https://github.com/jenkinsci/docker/pull/965/commits/db75ddc034b51923e43379da30403748b7dcf1ef

I think the failed tests are related to https://github.com/jenkinsci/docker/issues/1014
New tests are passing

https://ci.jenkins.io/job/Packaging/job/docker/job/PR-965/492/testReport/C__Jenkins_workspace_Packaging_docker_PR-965_tests_runtime.Tests/ps1/Build___windows___Test____11_hotspot_windowsservercore_1809__test_jenkins_arguments_version_in_docker_metadata/

https://ci.jenkins.io/job/Packaging/job/docker/job/PR-965/492/testReport/jenkinsci.docker.debian/Default/Build___linux___slim___Test_slim____35__8_debian_buster_hotspot__test_version_in_docker_metadata/

Is there anything else missing?

Looks like there are some conflicts that need to be resolved

@slide?

/ @oleg-nenashev

Just waiting on Oleg, he had requested changes.

@oleg-nenashev are you ok with this?

One test failing on the windows side right now.

Looks like opencontainers is the replacement: https://github.com/opencontainers/image-spec/blob/master/annotations.md

@slide any chance you can check the windows failure?


Bug 2211807: [DR] Fix operator health status in dashboard

BZ: https://bugzilla.redhat.com/show_bug.cgi?id=2211807

/hold

/cancel hold

/remove hold

/hold cancel

@GowthamShanmugam keeping this BZ for 4.14, we will have to create a new BZ for 4.13.z later...

/retitle Bug 2211807: [DR] Fix operator health status in dashboard

/test odf-console-e2e-aws

/lgtm

/test odf-console-e2e-aws


fix: align columns on auction results page

Addresses CX-1412
Description
Aligns the columns of the market stats section to the columns of the auction result section (see comments in  CX-1412 for more context).

👍


QUIC: Add a unit tests to validate that the qlog file is generated (and no crashes)

While investigating another issue I found out that I was having some crashes inside quiche because (possible) the qlog string. So I am adding these tests to make sure we detect any crash related to the qlog generation.
This also uses buffer writter to build up the qlog name(instead of snprintf).

[approve ci rocky autest]

Can we have a gold-file to examine the generated qlog file? I don't think sleep-and-ls is a common way for autest.

Can we have a gold-file to examine the generated qlog file? I don't think sleep-and-ls is a common way for autest.

the issue is that we do not have the trace id to know which file is the one we are supposed to read to then compare with a gold file.
I guess I can make a quick script to rename whatever TS is droping as qlog files and the read the renamed file's content(and then apply the gold file).
How does this looks to you?

Oh, I see, filename. Renaming is an option.
@bneradt Do you have any suggestions?

Can we have a gold-file to examine the generated qlog file? I don't think sleep-and-ls is a common way for autest.

the issue is that we do not have the trace id to know which file is the one we are supposed to read to then compare with a gold file. An example of a file would be test_qlog-9b9eca8989ab274e14a3acd9e95e1a23247f.sqlog
I guess I can make a quick script to rename whatever TS is droping as qlog files and the read the renamed file's content(and then apply the gold file). How does this looks to you?

I don't think there's a way to handle run-time naming. , this seems like the way to go:

cp the output to a well known file.
Use a gold file, or ContainsExpression, to verify the contents.


How to use RawDataInput ?

I have a the current setup
rawDataInput -> someFilter -> someOtherFilter -> rawDataOutput
the problem is, how to feed the rawDataInput with my own frames coming from a CMSampleBuffer.
This is what I have.. but it keeps failing when uploadingBytes to rawDataInput with a EXEC_BAD _ACCESS after some frames glTexImage2D(GLenum(GL_TEXTURE_2D), 0, GL_RGBA, size.glWidth(), size.glHeight(), 0, GLenum(pixelFormat.toGL()), GLenum(GL_UNSIGNED_BYTE), bytes)
Here is my code where I convert the CMSampleBuffer to an array of UInt8.
let imageBuffer = CMSampleBufferGetImageBuffer(sampleBuffer)!
CVPixelBufferLockBaseAddress(imageBuffer,CVPixelBufferLockFlags(rawValue: 0));
let width = CVPixelBufferGetWidth(imageBuffer)
let height = CVPixelBufferGetHeight(imageBuffer)

//Get the bytes from the imageBuffer
if let baseAddress = CVPixelBufferGetBaseAddress(imageBuffer) {
      let i8bufptr = UnsafeBufferPointer(start: baseAddress.assumingMemoryBound(to: UInt8.self), count: width*height)
      let i8array = Array(i8bufptr)
      self.rawInput.uploadBytes(i8array, size: Size.init(width: Float(width), height: Float(height)), pixelFormat: PixelFormat.bgra)

} else {
   // `baseAddress` is `nil`
 }
 CVPixelBufferUnlockBaseAddress( imageBuffer, CVPixelBufferLockFlags(rawValue: 0) );

Also for some reason the rawDataOutPut dataAvailableCallback doesnt get called.

Update
With the following code.. there is no EXEC_BAD_ACCESS. I dont know if its efficient though.
Still... the end of the filterchain where the RawDataOutput is..  is not executing the dataAvailableCallBack
let pixelBuffer = CMSampleBufferGetImageBuffer(sampleBuffer)!
        CVPixelBufferLockBaseAddress(pixelBuffer, CVPixelBufferLockFlags(rawValue: 0))
        let lumaBaseAddress = CVPixelBufferGetBaseAddressOfPlane(pixelBuffer, 0)
        let chromaBaseAddress = CVPixelBufferGetBaseAddressOfPlane(pixelBuffer, 1)

        let width = CVPixelBufferGetWidth(pixelBuffer)
        let height = CVPixelBufferGetHeight(pixelBuffer)

        let lumaBytesPerRow = CVPixelBufferGetBytesPerRowOfPlane(pixelBuffer, 0)
        let chromaBytesPerRow = CVPixelBufferGetBytesPerRowOfPlane(pixelBuffer, 1)
        let lumaBuffer = lumaBaseAddress?.assumingMemoryBound(to: UInt8.self)
        let chromaBuffer = chromaBaseAddress?.assumingMemoryBound(to: UInt8.self)

        var rgbaImage = [UInt8](repeating: 0, count: 4*width*height)
        for x in 0 ..< width {
            for y in 0 ..< height {
                let lumaIndex = x+y*lumaBytesPerRow
                let chromaIndex = (y/2)*chromaBytesPerRow+(x/2)*2
                let yp = lumaBuffer?[lumaIndex]
                let cb = chromaBuffer?[chromaIndex]
                let cr = chromaBuffer?[chromaIndex+1]

                let ri = Double(yp!)                                + 1.402   * (Double(cr!) - 128)
                let gi = Double(yp!) - 0.34414 * (Double(cb!) - 128) - 0.71414 * (Double(cr!) - 128)
                let bi = Double(yp!) + 1.772   * (Double(cb!) - 128)

                let r = UInt8(min(max(ri,0), 255))
                let g = UInt8(min(max(gi,0), 255))
                let b = UInt8(min(max(bi,0), 255))

                rgbaImage[(x + y * width) * 4] = b
                rgbaImage[(x + y * width) * 4 + 1] = g
                rgbaImage[(x + y * width) * 4 + 2] = r
                rgbaImage[(x + y * width) * 4 + 3] = 255
            }
        }

        self.rawInput.uploadBytes(rgbaImage, size: Size.init(width: Float(width), height: Float(height)), pixelFormat: PixelFormat.rgba)
        CVPixelBufferUnlockBaseAddress( pixelBuffer, CVPixelBufferLockFlags(rawValue: 0) );

Did you ever figure out solution to the lag issue? I have a similar problem


Missing Tasks in Leaderboard

The readme.md page says that the leaderboard_bbh group includes the leaderboard_bbh_dyck_languages task, but the setting --tasks "leaderboard" does not include this task's result.
The following tasks are also missing: leaderboard_bbh_dyck_languages, leaderboard_bbh_multistep_arithmetic_two, leaderboard_bbh_word_sorting, and leaderboard_math_precalc_hard.

hi ! Thanks for the catch. we do not include those tasks because they require bbh to be in generative mode and we use loglikelihood when evaluating bbh for the leaderboard. the tasks should be removed from the readme

fixed in #2219 :)


ImportError: No module named 'chatterbot.storage'; 'chatterbot' is not a package

I have already installed chatterbot using pip, but the problem isn't solved.
Also i am running it on python3.

No matching distribution found for chatterbox

Please change chatterbox to chatterbot. The correct package name must be used for ChatterBot to be installed.

python3 -m pip install ChatterBot --upgrade Collecting ChatterBot   Using cached https://files.pythonhosted.org/packages/43/eb/ae2466f9873ee9266a613c8650dd843b31d6c8af0143946125e94f7a8f81/ChatterBot-1.0.2-py2.py3-none-any.whl Collecting mathparse<0.2,>=0.1 (from ChatterBot)
But still its not recognising the package.
`python3
Python 3.6.7 (default, Oct 22 2018, 11:32:17)
[GCC 8.2.0] on linux
Type "help", "copyright", "credits" or "license" for more information.

import chatterbot
Traceback (most recent call last):
File "", line 1, in
File "/home", line 2, in
from chatterbot.storage import StorageAdapter
ModuleNotFoundError: No module named 'chatterbot.storage'; 'chatterbot' is not a package

`

@GunjanChourasia Please make sure that you are also using the python3 command to launch the terminal. For example:
python3
>>>import chatterbot

python3 chatterbot.py  Traceback (most recent call last):   File "chatterbot.py", line 2, in <module>     from chatterbot.storage import StorageAdapter   File "/home/ChatterBot/chatterbot/chatterbot.py", line 2, in <module>     from chatterbot.storage import StorageAdapter ModuleNotFoundError: No module named 'chatterbot.storage'; 'chatterbot' is not a package
I am using python3 only

chatterbot is a library, you cannot directly run chatterbot.py. you have to create different python file where you invoke chatterbot. please refer to the documentation for a simple list trainer example.

As there any logical answer of this questions. I am using conda python 3.7, pycharm install chatbot successfully. I am working in a file but the above error is showing.

ModuleNotFoundError: No module named 'chatterbot.storage'; 'chatterbot' is not a package

Hey, I am using conda spyder and have latest version of python (3.8.0) and facing same problem
File "chatterbot.py", line 2, in  from chatterbot.storage import StorageAdapter File "/home/ChatterBot/chatterbot/chatterbot.py", line 2, in  from chatterbot.storage import StorageAdapter ModuleNotFoundError: No module named 'chatterbot.storage'; 'chatterbot' is not a package
Also I rename the file of chatterbot.py to filename.py
Please help for this

@dmaurya98 any solution to this?? anyone...

ERROR: Command errored out with exit status 1: 'D:\Python 3.8\python.exe' 'D:\P
ython 3.8\lib\site-packages\pip' install --ignore-installed --no-user --prefix
'C:\Users\abhishek\AppData\Local\Temp\pip-build-env-djqmnp0g\overlay' --no-warn
-script-location --no-binary :none: --only-binary :none: -i https://pypi.org/si
mple -- setuptools 'wheel>0.32.0,<0.33.0' Cython 'cymem>=2.0.2,<2.1.0' 'preshed

=2.0.1,<2.1.0' 'murmurhash>=0.28.0,<1.1.0' 'thinc>=7.0.8,<7.1.0' Check the log
s for full command output.

try to update setuptools

@dmaurya98 any solution to this?? anyone...

rename the file. We cant use chatterbot.py  as filename


Add selectors to check if current channel and a channel is ReadOnly.

Summary
Selectors to check if the current channel isReadOnly or if a channel isReadOnly, byId or by channel passed. In the current logic only TownSquare can be ReadOnly when ExperimentalTownSquareIsReadOnly=true.
NOTE: For the ticket to make TownSquare read only it was recommended to move the isReadOnly logic to redux:
https://github.com/mattermost/mattermost-webapp/pull/831
Checklist

[ ] Added or updated unit tests (required for all new features)

Test Information
This PR was tested on: MacOS HighSierra 10.13.3
via @dmeza

@hmhealey these are the changes requested for the webapp PR: https://github.com/mattermost/mattermost-webapp/pull/831

@hmhealey rebased to latest from master and made the change to make it a function.


PR to sync with AiA updates from https://github.com/riscv/riscv-aia/pull/28

Discussed in the IOMMU TG. Agreed that duplicating text like the page table formats and MRIF layout where the IOMMU spec does not add any further clarification or contents is not desirable. This PR replaces such sections with a reference the AIA specification.


Train epoch 0:   0%|          | 0/31 [00:04<?, ?it/s]
[2023-05-31 10:15:11] INFO - base_sg_logger.py - [CLEANUP] - Successfully stopped system monitoring process
---------------------------------------------------------------------------
RuntimeError                              Traceback (most recent call last)
Cell In[12], line 1
----> 1 manager.train()

File ~/picko_gym/PickoGymManager.py:80, in PickoGymManager.train(self, use_pretrained)
     78 else:
     79     model = self.create_model_object(self.cfg.model_name, self.cfg.num_classes, pretrained=False, checkpoint=self.cfg.checkpoint)
---> 80 self.trainer.train(model=model,
     81               training_params=self.cfg.train_params['train_params'],
     82               train_loader=self.cfg.train_loader,
     83               valid_loader=self.cfg.val_loader)

File ~/.local/lib/python3.8/site-packages/super_gradients/training/sg_trainer/sg_trainer.py:1240, in Trainer.train(self, model, training_params, train_loader, valid_loader, additional_configs_to_log)
   1233 if (
   1234     device_config.multi_gpu == MultiGPUMode.DISTRIBUTED_DATA_PARALLEL
   1235     and hasattr(self.train_loader, "sampler")
   1236     and hasattr(self.train_loader.sampler, "set_epoch")
   1237 ):
   1238     self.train_loader.sampler.set_epoch(epoch)
-> 1240 train_metrics_tuple = self._train_epoch(epoch=epoch, silent_mode=silent_mode)
   1242 # Phase.TRAIN_EPOCH_END
   1243 # RUN PHASE CALLBACKS
   1244 train_metrics_dict = get_metrics_dict(train_metrics_tuple, self.train_metrics, self.loss_logging_items_names)

File ~/.local/lib/python3.8/site-packages/super_gradients/training/sg_trainer/sg_trainer.py:441, in Trainer._train_epoch(self, epoch, silent_mode)
    438     outputs = self.net(inputs)
    440     # COMPUTE THE LOSS FOR BACK PROP + EXTRA METRICS COMPUTED DURING THE LOSS FORWARD PASS
--> 441     loss, loss_log_items = self._get_losses(outputs, targets)
    443 context.update_context(preds=outputs, loss_log_items=loss_log_items)
    444 self.phase_callback_handler.on_train_batch_loss_end(context)

File ~/.local/lib/python3.8/site-packages/super_gradients/training/sg_trainer/sg_trainer.py:474, in Trainer._get_losses(self, outputs, targets)
    472 def _get_losses(self, outputs: torch.Tensor, targets: torch.Tensor) -> Tuple[torch.Tensor, tuple]:
    473     # GET THE OUTPUT OF THE LOSS FUNCTION
--> 474     loss = self.criterion(outputs, targets)
    475     if isinstance(loss, tuple):
    476         loss, loss_logging_items = loss

File ~/.local/lib/python3.8/site-packages/torch/nn/modules/module.py:1194, in Module._call_impl(self, *input, **kwargs)
   1190 # If we don't have any hooks, we want to skip the rest of the logic in
   1191 # this function, and just call forward.
   1192 if not (self._backward_hooks or self._forward_hooks or self._forward_pre_hooks or _global_backward_hooks
   1193         or _global_forward_hooks or _global_forward_pre_hooks):
-> 1194     return forward_call(*input, **kwargs)
   1195 # Do not call functions when jit is used
   1196 full_backward_hooks, non_full_backward_hooks = [], []

File ~/.local/lib/python3.8/site-packages/super_gradients/training/losses/ppyolo_loss.py:774, in PPYoloELoss.forward(self, outputs, targets)
    772     alpha_l = 0.25
    773 else:
--> 774     assigned_labels, assigned_bboxes, assigned_scores = self.assigner(
    775         pred_scores=pred_scores.detach().sigmoid(),  # Pred scores are logits on training for numerical stability
    776         pred_bboxes=pred_bboxes.detach() * stride_tensor,
    777         anchor_points=anchor_points,
    778         num_anchors_list=num_anchors_list,
    779         gt_labels=gt_labels,
    780         gt_bboxes=gt_bboxes,
    781         pad_gt_mask=pad_gt_mask,
    782         bg_index=self.num_classes,
    783     )
    784     alpha_l = -1
    785 # rescale bbox

File ~/.local/lib/python3.8/site-packages/torch/nn/modules/module.py:1194, in Module._call_impl(self, *input, **kwargs)
   1190 # If we don't have any hooks, we want to skip the rest of the logic in
   1191 # this function, and just call forward.
   1192 if not (self._backward_hooks or self._forward_hooks or self._forward_pre_hooks or _global_backward_hooks
   1193         or _global_forward_hooks or _global_forward_pre_hooks):
-> 1194     return forward_call(*input, **kwargs)
   1195 # Do not call functions when jit is used
   1196 full_backward_hooks, non_full_backward_hooks = [], []

File ~/.local/lib/python3.8/site-packages/torch/autograd/grad_mode.py:27, in _DecoratorContextManager.__call__.<locals>.decorate_context(*args, **kwargs)
     24 @functools.wraps(func)
     25 def decorate_context(*args, **kwargs):
     26     with self.clone():
---> 27         return func(*args, **kwargs)

File ~/.local/lib/python3.8/site-packages/super_gradients/training/losses/ppyolo_loss.py:513, in TaskAlignedAssigner.forward(self, pred_scores, pred_bboxes, anchor_points, num_anchors_list, gt_labels, gt_bboxes, pad_gt_mask, bg_index, gt_scores)
    510 alignment_metrics = bbox_cls_scores.pow(self.alpha) * ious.pow(self.beta)
    512 # check the positive sample's center in gt, [B, n, L]
--> 513 is_in_gts = check_points_inside_bboxes(anchor_points, gt_bboxes)
    515 # select topk largest alignment metrics pred bbox as candidates
    516 # for each gt, [B, n, L]
    517 is_in_topk = gather_topk_anchors(alignment_metrics * is_in_gts, self.topk, topk_mask=pad_gt_mask)

File ~/.local/lib/python3.8/site-packages/super_gradients/training/losses/ppyolo_loss.py:197, in check_points_inside_bboxes(points, bboxes, center_radius_tensor, eps)
    195 right = xmax - x
    196 bottom = ymax - y
--> 197 delta_ltrb = torch.cat([left, top, right, bottom], dim=-1)
    198 is_in_bboxes = delta_ltrb.min(dim=-1).values > eps
    199 if center_radius_tensor is not None:
    200     # check whether `points` is in `center_radius`

RuntimeError: CUDA error: device-side assert triggered

I Modified the number of classes before training, i also gave an all_classes_list as suggested in the documentation of your source code for the CocoDetectionDataset,
Iv'e tried many other options before coming here asking for help, ive tried to change the labels to only 2D BBOX without seg,
changing the names of the labels, using len(classes)-1 or +1 but none of this tricks worked,
the labels are well annotated and specified.
Thanks in advance,
Mark

hey @mark1ng123 , looks to me like there might be wrong number of clases for the criterion or the network.
Can you share your code?

@shaydeci Yeah sure, sorry in advance alot of code
This is my training function:
@classmethod
    def train(self, use_pretrained: bool = True) -> None:
        """
        :param use_pretrained: Whether or not use a pretrained coco weights
        """
        if use_pretrained:
            model = self.create_model_object(model_name=self.cfg.model_name, checkpoint=self.cfg.checkpoint, exp=self.cfg.experiment)
        else:
            model = self.create_model_object(self.cfg.model_name, self.cfg.num_classes, pretrained=False, checkpoint=self.cfg.checkpoint)
        self.trainer.train(model=model,
                      training_params=self.cfg.train_params['train_params'],
                      train_loader=self.cfg.train_loader,
                      valid_loader=self.cfg.val_loader)

Thats how i load the params:
def set_dataset_params(self) -> None:
        with open(os.path.join(self.val_data_dir, "dataset_params.yaml"), "r") as val_dataset_params:
                self.val_ds_params = yaml.safe_load(val_dataset_params)
        self.val_ds_params['val_dataset_params']['data_dir'] = self.val_data_dir
        self.val_ds_params['val_dataset_params']['subdir'] = os.path.join(self.val_data_dir, "images")
        self.val_ds_params['val_dataset_params']['json_file'] = "test.json"
        self.val_ds_params['val_dataset_params']['all_classes_list'] = ["BeraleBarila", "ClickBrownWhite", "PurpleSpong", "RedSpong", "SealTape", "Sheka", "SpongeCase", "Tuna", "YellowSpong"]
        if self.train_data_dir != "None":
            with open(os.path.join(self.train_data_dir, "dataset_params.yaml"), "r") as train_dataset_params:
                train_ds_params = yaml.safe_load(train_dataset_params)
                train_ds_params['dataset_params']['data_dir'] = self.train_data_dir
                train_ds_params['dataset_params']['subdir'] = os.path.join(self.train_data_dir, "images")
                train_ds_params['dataset_params']['json_file'] = "train.json"
                train_ds_params['dataset_params']['all_classes_list'] = ["BeraleBarila", "ClickBrownWhite", "PurpleSpong", "RedSpong", "SealTape", "Sheka", "SpongeCase", "Tuna", "YellowSpong"]
            train_dataset_params.close()
            self.ds_params = {**self.val_ds_params ,**train_ds_params}
        val_dataset_params.close()

def set_training_params(self) -> None:
        with open(os.path.join(self.train_data_dir, "training_params.yaml"), "r") as training_params:
            loader = yaml.SafeLoader
            loader.add_implicit_resolver(u'tag:yaml.org,2002:float',
                                        re.compile(u'''^(?:
                                        [-+]?(?:[0-9][0-9_]*)\\.[0-9_]*(?:[eE][-+]?[0-9]+)?
                                        |[-+]?(?:[0-9][0-9_]*)(?:[eE][-+]?[0-9]+)
                                        |\\.[0-9_]+(?:[eE][-+][0-9]+)?
                                        |[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+\\.[0-9_]*
                                        |[-+]?\\.(?:inf|Inf|INF)
                                        |\\.(?:nan|NaN|NAN))$''', re.X),
                                        list(u'-+0123456789.'))
            self.train_params = yaml.load(training_params, loader)
            train_params_copy = self.train_params
            # No get __item__ from ppyoloelost cant define inside
            reg_max = train_params_copy['train_params']['loss']['reg_max']
            user_static_assigner = train_params_copy['train_params']['loss']['use_static_assigner']
            self.num_classes = self.train_params['train_params']['loss']['num_classes']
            self.train_params['train_params']['loss'] = PPYoloELoss(use_static_assigner=user_static_assigner,
                                                         num_classes=self.num_classes,
                                                         reg_max=reg_max)

            self.train_params['train_params']['valid_metrics_list'] = [DetectionMetrics_050(score_thres=train_params_copy['train_params']['valid_metrics_list']['score_thres'],
                                                                                top_k_predictions=train_params_copy['train_params']['valid_metrics_list']['top_k_predictions'],
                                                                                num_cls=self.num_classes,
                                                                                normalize_targets=train_params_copy['train_params']['valid_metrics_list']['normalize_targets'],
                                                                                post_prediction_callback=PPYoloEPostPredictionCallback(score_threshold=train_params_copy['train_params']['valid_metrics_list']['score_threshold'],
                                                                                nms_top_k=train_params_copy['train_params']['valid_metrics_list']['nms_top_k'],
                                                                                max_predictions=train_params_copy['train_params']['valid_metrics_list']['max_predictions'],
                                                                                nms_threshold=train_params_copy['train_params']['valid_metrics_list']['nms_threshold']))]
        training_params.close()
        print(self.train_params)

    def create_data_loader(self) -> tuple([DataLoader, DataLoader]):
        train_loader = None
        val_loader = None
        if not self.is_classification:
            if self.train_data_dir != "None":
                train_loader = dataloaders.get(name="coco2017_train",
                                            dataset_params=self.ds_params['dataset_params'],
                                            dataloader_params=self.ds_params['dataloader_params'])
            val_loader = dataloaders.get(name="coco2017_val",
                                        dataset_params=self.val_ds_params['val_dataset_params'],
                                        dataloader_params=self.val_ds_params['val_dataloader_params'])
            return train_loader, val_loader

And this are the recepies:
train_params:
  average_best_models: True
  warmup_mode: "linear_epoch_step"
  warmup_initial_lr: 1e-6
  lr_warmup_epochs: 3
  initial_lr: 5e-4
  lr_mode": "cosine"
  cosine_final_lr_ratio: 0.1
  optimizer: "Adam"
  optimizer_params:
    weight_decay: 0.0001
  zero_weight_decay_on_bias_and_bn: True
  ema: True
  ema_params:
    decay: 0.9
    decay_type: "threshold"
    # ONLY TRAINING FOR 10 EPOCHS FOR THIS EXAMPLE NOTEBOOK
  max_epochs: 30
  mixed_precision: True
  loss:
    use_static_assigner: False
    num_classes: 9
    reg_max: 16
  valid_metrics_list:
    score_thres: 0.1
    top_k_predictions: 300
    num_cls: 9
    normalize_targets: True
    score_threshold: 0.01
    nms_top_k: 1000
    max_predictions: 300
    nms_threshold: 0.7
  metric_to_watch<EMAIL_ADDRESS>
dataset_params:
  data_dir: /data/coco # root path to coco data
  subdir: images/train2017 # sub directory path of data_dir containing the train data.
  json_file: instances_train2017.json # path to coco train json file, data_dir/annotations/train_json_file.
  input_dim: [250,250]
  cache_dir:
  cache: False
  transforms:
    - DetectionMosaic:
        input_dim: [250,250]
        prob: 1
    - DetectionRandomAffine:
        degrees: 10                  # rotation degrees, randomly sampled from [-degrees, degrees]
        translate: 0.1                # image translation fraction
        scales: [ 0.1, 1.4]              # random rescale range (keeps size by padding/cropping) after mosaic transform.
        shear: 2.0                    # shear degrees, randomly sampled from [-degrees, degrees]
        target_size: [250,250]
        filter_box_candidates: True   # whether to filter out transformed bboxes by edge size, area ratio, and aspect ratio.
        wh_thr: 2                     # edge size threshold when filter_box_candidates = True (pixels)
        area_thr: 0.1                 # threshold for area ratio between original image and the transformed one, when when filter_box_candidates = True
        ar_thr: 20                    # aspect ratio threshold when filter_box_candidates = True
    - DetectionMixup:
        input_dim: [250,250]
        mixup_scale: [ 0.5, 1.5 ]         # random rescale range for the additional sample in mixup
        prob: 1.0                       # probability to apply per-sample mixup
        flip_prob: 0.5                  # probability to apply horizontal flip
    - DetectionHSV:
        prob: 1.0                       # probability to apply HSV transform
        hgain: 5                        # HSV transform hue gain (randomly sampled from [-hgain, hgain])
        sgain: 30                       # HSV transform saturation gain (randomly sampled from [-sgain, sgain])
        vgain: 30                       # HSV transform value gain (randomly sampled from [-vgain, vgain])
    - DetectionHorizontalFlip:
        prob: 0.5                       # probability to apply horizontal flip
    - DetectionPaddedRescale:
        input_dim: [250,250]
        max_targets: 120
    - DetectionTargetsFormatTransform:
        input_dim: [250,250]
        output_format: LABEL_XYWH
  tight_box_rotation: False
  class_inclusion_list:
  max_num_samples: 1000
  with_crowd: False

dataloader_params:
  shuffle: True
  batch_size: 32
  num_workers: 8
  drop_last: True
  pin_memory: True

val_dataset_params:
  data_dir: /data/coco # root path to coco data
  subdir: images/val2017 # sub directory path of data_dir containing the train data.
  json_file: instances_val2017.json # path to coco train json file, data_dir/annotations/train_json_file.
  input_dim: [250, 250]
  cache: False
  transforms:
  - DetectionPaddedRescale:
      input_dim: [250,250]
  - DetectionTargetsFormatTransform:
      max_targets: 50
      input_dim: [250,250]
      output_format: LABEL_CXCYWH
  tight_box_rotation: False
  class_inclusion_list:
  max_num_samples: 1000
  with_crowd: True

val_dataloader_params:
  batch_size: 32
  num_workers: 8
  drop_last: False
  pin_memory: True

_convert_: all

I fixed it,
i was registering the model not correctly,
i passed a number of classes parameter to the models.get() method but i didnt modify it with every changing dataset,
Thanks a lot for pointing me in the right direction @shaydeci


Enable access to document attributes within yaml2text block

In relation to https://github.com/metanorma/iso-10303-templates/pull/15#issuecomment-2061710982
Document attribute string values can be accessed by doing {attribute}, but inside a yaml2text block, it renders empty.
For example:

= Document attributes
:edition: 10

== Clause

{edition} // renders 10

[yaml2text,...,data]
----
{edition} // empty
----

How about this?
[yaml2text,...,data]
----
{% raw %}
{edition}
{% endraw %}
----

See more at: https://stackoverflow.com/questions/3330979/outputting-literal-curly-braces-in-liquid-templates

Thanks @ronaldtse! Yes, after some simple tweaks, I can work with this solution.

Oh wow I see you've already fixed it. Thanks!


EndPoints

Module: Ai-102 Module 12
Description of issue
When I perform this task in this lab In the Margie's Travel website, enter London hotel into the search box and click Search.
Its shows the endpoint error that screen shot attach below but when I check at search resource keys section in this section only contains 2 admin keys and 1 query key not endpoints why?

This worked fine for me, can you confirm you can query the index from the Azure portal, and that the webapp is running when you try to reach that endpoint? I'm also unclear what you mean with the search resource keys section, if you could please elaborate

This worked fine for me, can you confirm you can query the index from the Azure portal, and that the webapp is running when you try to reach that endpoint? I'm also unclear what you mean with the search resource keys section, if you could please elaborate

When I reach this point and try to search, I receive the same error as shown in the picture you sent above, even though all the preceding steps are performed correctly. If you have a screenshot of this issue, please share it with me.

This worked fine for me, can you confirm you can query the index from the Azure portal, and that the webapp is running when you try to reach that endpoint? I'm also unclear what you mean with the search resource keys section, if you could please elaborate

 When I reach this point and try to search, I receive the same error as shown in the picture you sent above, even though all the preceding steps are performed correctly. If you have a screenshot of this issue, please share it with me.

Webapp is running but when we search query in search bar then its give this error.

I'll have to see if I can replicate your error to figure out what went wrong.

I'll have to see if I can replicate your error to figure out what went wrong. I'll circle back if I can find how to solve your problem.

Ok thank you @ivorb for contributing.

I unfortunately cannot reproduce this error when following the lab, and the lab will be getting updates shortly. Please open an issue if you continue to have problems


Not found

When running go build from the main directory i get this error message:
Package libpulse-simple was not found in the pkg-config search path.
Perhaps you should add the directory containing `libpulse-simple.pc'
to the PKG_CONFIG_PATH environment variable

Any suggestion?

Hi there - yep i know what this is. Go just needs to be able to find the pulseaudio C header files somewhere. On Ubuntu they can be installed with sudo apt install libpulse-dev, and on other distros there should be a similar package. I'll add this to the readme as well.

Thank you!


a significant increas in false negatives with 0.18.0-alpha3

Updating from 0.16 to 0.18.0-alpha 3 introduces a significant number of new false negatives https://coveralls.io/builds/39571774 is a full set of newly uncovered code but I'll try to call out the biggest ones

loop and break are not covered
the match head (i.e. match ... {)
Some multi-line match statements ( https://coveralls.io/builds/39571774/source?filename=tremor-script%2Fsrc%2Fast%2Fanalyzer.rs#L74 for example )
multi-line match patterns ( https://coveralls.io/builds/39571774/source?filename=tremor-value%2Fsrc%2Fserde%2Fvalue%2Fse.rs#L378 )
some const expression in touple construction ( https://coveralls.io/builds/39571774/source?filename=src%2Furl.rs#L87 )

Now on 0.24.0 and have --engine llvm so I'm going to close this as it's hopefully outdated - a lot of people have reported llvm coverage improving results accuracy a bunch as well :pray:


Internationalization

Description
The prototype needs to rely on translation files, instead of having all text hard coded.
Acceptance Tests
To complete
Mockups
To complete

Budget-wise, let's leave the prototype hardcoded in English for now.


build: make tensorflow-swift-apis build with older CMake

Support CMake 3.15 for the build which required changing into the build
tree before configuring/building.
Use the just-built swiftc to build the product.

Replace this paragraph with a description of your changes and rationale. Provide links to external references/discussions if appropriate.

Resolves SR-NNNN.

@swift-ci please test

Build failed
Swift Test OS X Platform
Git Sha - 244c291657dc00bb08bad5e4d213b248ab4179c6

@swift-ci please test

Build failed
Swift Test Linux Platform
Git Sha - 244c291657dc00bb08bad5e4d213b248ab4179c6

Build failed
Swift Test OS X Platform
Git Sha - 244c291657dc00bb08bad5e4d213b248ab4179c6


[BUG] Per-directory scans are reporting incorrect scan times when --scan-limit is used

Describe the bug
It appears that when using -L, the scan time for any given directory is started, paused until the directory scan starts, and then the timer jumps to some value beyond 1s.
To Reproduce
Steps to reproduce the behavior:

cargo run -- -u https://bitdiscovery.com -ve -L 2
observe when a previously paused directory starts its scan, the timer to the right of the progress bar starts at some value that's not 1

Expected behavior
The timer should start from 0 and increment by 1 from there.
Traceback / Error Output
Easier to just run it and see the behavior.
Environment (please complete the following information):

feroxbuster version: 2.5.0-git (pre-release)
Ubuntu 21.04

Additional context
The behavior without -L looks normal, so I believe it's specific to the scan limiting code.

looks like this is the fix

src/scanner/ferox_scanner.rs
~line 139

        if self.handles.config.scan_limit > 0 {
            let scan_timer = Instant::now();
            progress_bar.reset();
        }


Out of date

"Click the links at the top of this topic to learn more about the different tabs in the UI."
What links?

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

ID: 0ee1c20b-78d6-4be7-d8c0-3a1dd198c79f
Version Independent ID: 8c200ef3-95a5-cc93-b241-41360c0e9bf1
Content: Azure AD Connect sync: Synchronization Service Manager UI
Content Source: articles/active-directory/hybrid/how-to-connect-sync-service-manager-ui.md
Service: active-directory
GitHub Login: @billmath
Microsoft Alias: billmath

@dcbrown16
Thanks for your feedback! We will investigate and update as appropriate.

These are referring to the links in the sidebar.

As you can see these are aligned with the screenshot at the top of the article.

CC: @billmath

@dcbrown16 we will now proceed to close this thread. If you were looking for something else or have further questions, feel free to tag me or @billmath in the comments and we will gladly continue the discussion.

@MarileeTurscak-MSFT @billmath
Thanks for checking, I did eventually find the links but looking at it right now those are in a totally different part of the TOC from the article I commented on. I'm actually not sure what's going on because your screenshot does seem to show this article in the AD Connect Sync part of the How-To guides but I'm getting it under Concepts. The history of the doc is muddled and I can't really tell what's going on.
I was able to create a PR at #20296 to address this.
Here's what I see for reference:

@dcbrown16 thanks for bringing this up and for following through by creating the pull request!


Scipy module intelisense stucks in loading and miss doc about minimize function

version: 1.51.1 (user setup)
commit: e5a624b788d92b8d34d1392e4c4d9789406efe8f
date: 2020-11-10T23:34:32.027Z
Electron: 9.3.3
Chrome: 83.0.4103.122
Node.js: 12.14.1
V8: <IP_ADDRESS>-electron.0
OS: Windows_NT x64 10.0.18363
pylance:v2020.12.3-pre.1

Thanks for the report, could you please fill out the template so we can see the logs and the version?
Also, what do you see when you hover over minimize()? Do you get a tooltip?
thanks

On my machine it takes 25 seconds for hover to finish loading. Then once it is cached the doc strings appear.

On my machine it takes 25 seconds for hover to finish loading. Then once it is cached the doc strings appear.

Yeap,it take a long time to load doc when you hover the word about scipy.optimize.minimize

I'm seeing a difference between parsing in foreground thread vs background thread when just opening _minimize.py.
pylance_minimize_fgthread.txt
pylance_minimize_bgthread.txt
I also compared with pyright but pyright has "python.analysis.useLibraryCodeForTypes": false, by default which also speeds things up.

This issue has been fixed in version 2021.1.0, which we've just released. You can find the changelog here: https://github.com/microsoft/pylance-release/blob/main/CHANGELOG.md#202110-6-january-2021

This issue has been fixed in version 2021.1.0, which we've just released. You can find the changelog here: https://github.com/microsoft/pylance-release/blob/main/CHANGELOG.md#202110-6-january-2021


Fix bug on Orbit resize during transition

Added check in orbit.js to make sure slides aren't animating before hiding them when resizing the window. This should fix #9788

Would love to have this fix merged in.

Good find here... however, not 100% sure this is the right answer... If the problem is the lingering motion ui classes, can we remove them at the same time we add display none?
My concern with this current approach is that by not hiding the slide we then may be breaking the assumption of the rest of this setup method, which may cause its own issues.

@dwt47 do you have an opinion on the feedback above? Would you like to iterate on this PR and/or make a case why this is the right solution?  Thanks!

Going to go ahead and merge this based on the updates in #10069

I just implemented the orbit slider myself and am experiencing this same issue where a slide disappears (goes blank) and then the whole slider stops functioning.  I've seen it on desktop intermittently, but it happens almost always on mobile. Has there been a reliable fix to this yet?

+1 ~ Experiencing this intermittently on the desktop as well. It seems to be more frequent when using the visibility classes. When hiding the orbiter on small screens (class="orbit show-for-medium") and resizing the window a few times the orbit either disappears or becomes frozen.
The suggested fixes to "foundation.orbit.js" do not seem to fix this entirely so not sure there is a solution yet other than turning off the motion-ui animation entirely (data-use-m-u-i="false").

How can I apply this in 6.3.1?

Is this also related: https://github.com/zurb/foundation-sites/pull/9311 ?


BUGS FOUND

hi,  i found something unusual in this repo, are they new bugs ?
To reproduce the crash please use command: ./png_demo @@ /dev/null (replace @@ to the sample's path)
FPE
crash sample
id0-FPE-sample1.zip
crash info
AddressSanitizer:DEADLYSIGNAL
==22761==ERROR: AddressSanitizer: FPE on unknown address 0x0000004f4665 (pc 0x0000004f4665 bp 0x7fffaf2c27f0 sp 0x7fffaf2c19e0 T0)
    #0 0x4f4665 in SaveBMP(char*, unsigned char*, unsigned char*, int, int, int) /home/bupt/Desktop/PNGdec/linux/main.cpp:56:21
    #1 0x4f5311 in main /home/bupt/Desktop/PNGdec/linux/main.cpp:144:9
    #2 0x7f42d9d84c86 in __libc_start_main /build/glibc-CVJwZb/glibc-2.27/csu/../csu/libc-start.c:310
    #3 0x41c129 in _start (/home/bupt/Desktop/PNGdec/linux/png_demo+0x41c129)

AddressSanitizer can not provide additional info.

The buffer should be "lsize" bytes long.
0001-Fix-stack-smash-crash.patch.txt
Saving the BMP file is the last thing the program does and it actually finishes successfully before the crash.


Breaking Change: futures are no longer populating their Result() causing panic on access

Bug Report

This is a general approach to the generated SDK, so affects many APIs and versions, if not all that use futures/LROs. The autorest result is no longer being assigned to the future.Response() which means on error, this causes a panic if checked for the response code:
e.g.
	future, err := client.Delete(ctx, id.ResourceGroup, id.HostingEnvironmentName, forceDeleteAllChildren)
	if err != nil {
		if response.WasNotFound(future.Response()) {
			return nil
		}
	}

What happened?
When an LRO errors, this value is checked to be able to surface the result / status to the user. Since this is no longer populated, we get a nil panic:
panic: runtime error: invalid memory address or nil pointer dereference

A PR that may fix this is here: https://github.com/Azure/autorest.go/pull/605

Hi @jackofallops thanks for opening this.
The fix in autorest.go for this issue has been merged. And we are planning to release an extra minor version today to refresh every package in the sdk to resolve this.


More documentation

Coverage increased (+0.6%) to 88.705% when pulling 4c5314845af3a26577cffde12f1edb70da7875b0 on armonge:task/docs into 8ef4fc99fd175673b81f7f97bb8da78a22474bb2 on mediarain:v3.


IndexOutOfRange thrown from In-Memory with polymorphic types

I am running an in-memory database within a DNX project (beta7), with a DbSet of an abtract type with two concrete classes.
Attempts to query the set throws an IndexOutOfRangeException. In addition, inspecting the DbSet in the debugger will work once, and then fail all subsequent attempts to expand the collection. This is also true if there are multiple DbSets with polymorphic types; expanding any one in the debugger will work correctly once, but then fail subsequent attempts across all collections.
I have put together a project reproducing the error here.
public class Startup
{
    public void ConfigureServices(IServiceCollection services)
    {
        services.AddEntityFramework()
            .AddInMemoryDatabase()
            .AddDbContext<DatabaseContext>(options => options.UseInMemoryDatabase());
    }

    public void Configure(IApplicationBuilder app, DatabaseContext db)
    {
        var count = db.A.Count(); // throws exception
    }
}

public class DatabaseContext : DbContext
{
    public DbSet<A> A { get; set; }
}

public abstract class A
{
    [Key]
    public int Key { get; set; }
}

public class B : A
{
    public int DataB { get; set; }
}

public class C : A
{
    public int DataC { get; set; }
}

The call to db.A.Count() throws:
System.IndexOutOfRangeException was unhandled by user code
  HResult=-2146233080
  Message=Index was outside the bounds of the array.
  Source=EntityFramework.InMemory
  StackTrace:
       at Microsoft.Data.Entity.InMemory.Query.MaterializerFactory.CreateMaterializer(IEntityType entityType)
       at Microsoft.Data.Entity.InMemory.Query.InMemoryQueryModelVisitor.InMemoryEntityQueryableExpressionVisitor.VisitEntityQueryable(Type elementType)
       at Microsoft.Data.Entity.Query.ExpressionVisitors.EntityQueryableExpressionVisitor.VisitConstant(ConstantExpression constantExpression)
       at System.Linq.Expressions.ConstantExpression.Accept(ExpressionVisitor visitor)
       at Microsoft.Data.Entity.Query.ExpressionVisitors.ExpressionVisitorBase.Visit(Expression expression)
       at Microsoft.Data.Entity.Query.EntityQueryModelVisitor.ReplaceClauseReferences(Expression expression, IQuerySource querySource)
       at Microsoft.Data.Entity.Query.EntityQueryModelVisitor.CompileMainFromClauseExpression(MainFromClause mainFromClause, QueryModel queryModel)
       at Microsoft.Data.Entity.Query.EntityQueryModelVisitor.VisitMainFromClause(MainFromClause fromClause, QueryModel queryModel)
       at Remotion.Linq.Clauses.MainFromClause.Accept(IQueryModelVisitor visitor, QueryModel queryModel)
       at Remotion.Linq.QueryModelVisitorBase.VisitQueryModel(QueryModel queryModel)
       at Microsoft.Data.Entity.Query.EntityQueryModelVisitor.VisitQueryModel(QueryModel queryModel)
       at Microsoft.Data.Entity.Query.EntityQueryModelVisitor.CreateQueryExecutor[TResult](QueryModel queryModel)
       at Microsoft.Data.Entity.InMemory.InMemoryDatabase.CompileQuery[TResult](QueryModel queryModel)
    --- End of stack trace from previous location where exception was thrown ---
       at Microsoft.Data.Entity.Query.CompiledQueryCache.CompileQuery(IDatabase database, MethodInfo compileMethodInfo, Type resultItemType, QueryModel queryModel)
       at Microsoft.Data.Entity.Query.CompiledQueryCache.<>c__7`1.<Execute>b__7_0(Expression q, IDatabase ds)
       at Microsoft.Data.Entity.Query.CompiledQueryCache.GetOrAdd(Expression query, QueryContext queryContext, IDatabase database, Boolean isAsync, Func`3 compiler)
       at Microsoft.Data.Entity.Query.CompiledQueryCache.Execute[TResult](Expression query, IDatabase database, QueryContext queryContext)
       at Microsoft.Data.Entity.Query.EntityQueryProvider.Execute[TResult](Expression expression)
       at System.Linq.Queryable.Count[TSource](IQueryable`1 source)
       at EF.OutOfBoundsTest.Startup.Configure(IApplicationBuilder app, DatabaseContext db) in E:\Projects\EF.OutOfBoundsTest\src\EF.OutOfBoundsTest\Startup.cs:line 25
  InnerException:

It happens regardless of whether there are entities in the tables or not, and happens both with table-per-hierarchy and table-per-type setups.

Inheritance wasn't fully supported in Beta 7. In the most recent code base you need to call Entity on each type on OnModelCreating. Still leaving open as we should verify we don't throw this exception in negative cases (this is negative because the only type in the hierarchy is abstract)

This still doesn't work in beta8, and calling Entity on each type does not help.

@TomGillen thanks for the complete repro project. I could not reproduce the error using RC1. If you still encounter this error, please post the error and we can re-open the issue.


Mapping is not lazy!

The map function loads all the attribute values at first, although I expect when I give mappings as lambda, the attribute values get read lazily, that is, if some attribute has been set to null or other function, the getattr of source object must not be called. The reason is that I am using your library for mapping SqlAlchemy objects to DTO ones. Deferred loading feature of SqlAlchemy causes  Select N+1 problem when using your library.

Hi. Sorry for the very late answer - I have absolutely forgot to answer. Lazy evaluation is a good point. I'll look at it. But if you have a PR... :)

I investigated a little bit and found the problem, when getmembers is called he access all properties and this cause SQLAlchemy  to fire all the lazyloads in the model, I came up with a partial solution:
From this:
https://github.com/marazt/object-mapper/blob/b02c6d68c5bf86462aa8080aff3e93b133afd43e/mapper/object_mapper.py#L137-L142
To this:
from_obj_dict = {k: v for k, v in from_obj.__dict__.items() if not_private(k) and not_excluded(k)}

to_obj_dict = {k: v for k, v in inst.__dict__.items() if not_private(k)}

https://github.com/renanvieira/object-mapper/blob/264a50eb976bf9cd91b5ed850600975188ba58d2/mapper/object_mapper.py#L137-L139
But this changes breaks the test test_mapping_creation_with_custom_dir because the way the test create the class properties don't show in __dict__.
I was thinking maybe we can include a flag sqlalchemy=True|False in the mapper __init__ or another mapper called SQLAlchemyMapper?

Hi. I will check it and let you know. I hope that tomorrow. Thanks for the post 👍.

I just stumbled upon a problem on this solution, __dict__ does not list @property attributes only dir().
I think it'll be better to create a module of ObjectMapper coupled with SQLAlchemy where we can check if one of them is a model and only in this case use __dict__ instead of getmembers()

Thanks, Marazt! I'm really glad to contribute, this lib is helping a lot.
I just stumbled upon a problem on this solution, __dict__ does not list @property attributes, only dir() and getmembers().
I think it'll be better to create a module of ObjectMapper coupled with SQLAlchemy where we can check if one of them is a model and only in this case use __dict__ instead of getmembers()

Yes,
Such composition of ObjectMapper and SqlAlchemy make sense. Do you have prototype that can be updated to PR? I can start to work on it probably tomorrow.

I'll try to work on a Pull Request in the next couple of days.


[Bug]: Unable to delete datasource after deleting dependent queries

Is there an existing issue for this?

[X] I have searched the existing issues

Current Behavior
Unable to delete Google Sheets datasouces after deleting their queries. No other application in the org or pages on the app use these datasources but continue to get an error saying "n" actions are using it

Steps To Reproduce

Delete queries from an old application. Try and delete the organization

Environment
Release
Version
Cloud

Another instance where the user is confused even after the queries are deleted from edit mode datasource deletion is restricted, because the published version of the same queries still has the datasource ref. As discussed we should update the error message to provide action names along with the Mode type (Edit/View) where the references still exist.
https://theappsmith.slack.com/archives/C0341RERY4R/p1655739336160149

Duplicate of #16866

new to appsmith -
two years later  from this  original report and this snagged me.
the message that the "datasource is still in use" should really say  "if you have just removed the referece to the datasource , you must deploy changes" or something like that


Long text labels may not get rendered correctly

On my phone, some of the super long star names are not correctly displayed:
The last a few characters are missing, and replaced by some characters from the beginning of the label.
The reason is in renderer/util/LabelMaker.java:
The maximum allowed label display width equals to screen width (mRes.getDisplayMetrics().widthPixels, in addLabelsInternal()).
However, the canvas/bitmap that is used to paint the label text has a width of mStrikeWidth, whose value is hardcoded 512.
Most modern devices have resolution much wider than 512, and long labels may render wider than 512, making the canvas/bitmap not wide enough to paint the whole text.
I'll submit a PR that solves the problem.

Brilliant! Thanks for figuring that out. I'd noticed that problem as I was
fiddling with the don't size but didn't know the cause. OpenGL isn't my
forte and the code is a bit hairy.
On Tue, Dec 31, 2024, 8:57 AM Aulddays @.***> wrote:

On my phone, some of the super long star names are not correctly displayed:
The last a few characters are missing, and replaced by some characters
from the beginning of the label.
The reason is in renderer/util/LabelMaker.java
https://github.com/sky-map-team/stardroid/blob/9dfa294f88215b18a48e05111f537e79bd3c550a/app/src/main/java/com/google/android/stardroid/renderer/util/LabelMaker.java
:
The maximum allowed label display width equals to screen width (
mRes.getDisplayMetrics().widthPixels, in addLabelsInternal()).
However, the canvas/bitmap that is used to paint the label text has a
width of mStrikeWidth, whose value is hardcoded 512.
Most modern devices have resolution much wider than 512, and long labels
may render wider than 512, making the canvas/bitmap not wide enough to
paint the whole text.
I'll submit a PR that solves the problem.
—
Reply to this email directly, view it on GitHub
https://github.com/sky-map-team/stardroid/issues/527, or unsubscribe
https://github.com/notifications/unsubscribe-auth/AD5LWC65MEI3TQZBDTA33H32IKPFFAVCNFSM6AAAAABUNQQIGGVHI2DSMVQWIX3LMV43ASLTON2WKOZSG43DINBQGQZTQMQ
.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>


RDK-35488: Issues in CMF-RPi Dunfell Builds when rdkshell in surfacemode

Can one of the admins verify this patch?


Fix - Replaces the MLH Fellowship logo with the MLH Prep logo

Please, go through these steps before you submit a PR.

[x] My Pod Leader knows I'm working on this Pull Request
[x] I've explained what the Pull Request is adding.
[x] I've explained why this is important.

Fixes #5
The page which had the bug - http://<IP_ADDRESS>:4000/projects/project
Screenshots after resolving the bug:

(Web view)

(Mobile view)

@akshgpt7 , Me and @archikirar30 have fixed the issue. Kindly review the changes. Thanks.

@void-ness @archikirar30 thanks for taking this up, can you just add a little bit of padding-bottom to the logo. That's it :)

@void-ness @archikirar30 thanks for taking this up, can you just add a little bit of padding-bottom to the logo. That's it :)

Sure. Done with the suggested changes.

Hey @akshgpt7 , We are done with resolving the merge conflicts and the changes suggested by you. Kindly review them. Thanks!

LGTM, Thanks!


undocumented features

The following are not documented in the readme:
letterSpacing
lineSpacing
Mentioned, but not in the list of properties:
wordWrapWidth
fontSize

@rizen I didn't document all of these properties in the readme because they all exist in the original PIXI.TextStyle class. However, I'm going to add an additional line to clarify this.


fleetctl: return label result in yaml format

Feature request: have fleetctl get labels return yaml output.
What version of fleet are you using (fleet version --full)?
2.3.0
fleetctl - version 2.3.0-11-ged9f890b
  branch: 	master
  revision: 	ed9f890ba02bf8946284572baae351b7b908d99d
  build date: 	2019-11-07T20:34:47Z
  build user: 	user
  go version: 	go1.13.4

What operating system are you using?
Linux
What did you do?
fleetctl get labels
What did you expect to see?
Output in yaml format, similar to the documented format here: https://github.com/kolide/fleet/blob/master/docs/cli/file-format.md
kind: label
spec:
  name: slack_not_running
  query: >
    SELECT * from system_info
    WHERE NOT EXISTS (
      SELECT *
      FROM processes
      WHERE name LIKE "%Slack%"
    );```

### What did you see instead?

+--------------+----------+--------------------------------+--------------------------------+
|     NAME     | PLATFORM |          DESCRIPTION           |             QUERY              |
+--------------+----------+--------------------------------+--------------------------------+
| All Hosts    |          | All hosts which have enrolled  | select 1;                      |
|              |          | in Kolide                      |                                |
...

This is now supported via fleetctl get label foobar and fleetctl get labels --yaml.


a11y: 2dnote on drag

From #25:

[ ] use _2dnote when using the mouse to drag items around

maybe makes more sense only if using keyboard?

could keep for mouse users, but need to scope it to just the texts and images.

leave this to https://github.com/hchiam/slides/issues/38


Consider to make the console app more friendly and standard

I'm currently using ExchangeSharp and I find quite troublesome to use this console app. The code also look like if it grew without much design being applied to the final api.
I would suggest to use something like Commandline package to handle the CLI parsing and then build the commands in a more standardized way.
At the time I'm writing this issue I have already started working in a proposal which you can check at my fork.

Feel free to open pr and we can have a look. Command line project is meant for examples not military grade production.

Okay :) As soon as I migrate all the current commands I'll create a PR :stuck_out_tongue:


chore(RingTheory/Congruence): split off Defs.lean

The goal of this PR is to split off enough to define the ideal quotient and its ring structure without too much theory in the way.

Thanks :tada:
If CI passes, please remove the label awaiting-CI and merge this yourself, by adding a comment bors r+.
bors d+


chore(master): release 1.15.10

:robot: I have created a release beep boop
1.15.10 (2024-02-15)
Bug Fixes

deps: update dependency pnpm to v8.15.3 (f75ed12)

This PR was generated with Release Please. See documentation.

:robot: Release is at https://github.com/wayofdev/docker-node/releases/tag/v1.15.10 :sunflower:


Change to builder pattern

Currently all functions only holds current context and does not support chaining.
If this pattern is utilised, auxillary benefits include dynamic color transformation and more features.

As decision has been made to only retain core functionality, this change can be scrapped.


Add SMT for schema flattening

As a replacement for the cloudant.value.schema.struct.flatten option provide a SMT that can perform that flattening.
This is useful for e.g. making structures more compatible with a SQL database column than JSON objects.
In fact there is one available already for nested data structures org.apache.kafka.connect.transforms.Flatten which we can document in an example. Note, however, that this will not flatten arrays, which may be desirable if using Cloudant as a source and JDBC, for example, as a sink.
We may wish to provide an additional array flattening SMT or find another open-source one to document as an example.

Couple of points to note:

Mixed type arrays are not supported
Arrays must be flattened first otherwise the built-in flatten will miss their content.

Examples (shown as JSON) but in practice they will be records of Struct or Map
Example 1, an array of strings:

Flatten array

{
  "m": {"foo": "bar"},
  "a": ["foo", "bar"]
}

{
  "m": {"foo": "bar"},
  "a.0": "foo",
  "a.1": "bar"
}

Built-in flatten map

{
  "m": {"foo": "bar"},
  "a.0": "foo",
  "a.1": "bar"
}

{
  "m.foo": "bar",
  "a.0": "foo",
  "a.1": "bar"
}

Example 2, an array of maps

Flatten array

{
  "m": {"foo": "bar"},
  "a": [{"foo": "bar"}, {"boo": "baz"}]
}

{
  "m": {"foo": "bar"},
  "a.0": {"foo": "bar"},
  "a.1": {"boo": "baz"}
}

Built-in flatten map

{
  "m": {"foo": "bar"},
  "a.0": {"foo": "bar"},
  "a.1": {"boo": "baz"}
}

{
  "m.foo": "bar",
  "a.0.foo": "bar",
  "a.1.boo": "baz"
}

If the schema modification makes it hard to do this in the SMT we could leave the array flattening as an option in our source connector (i.e. pre-record creation) and just use the built-in map flattening.

After a bit more investigation I can add:

Arrays must be flattened first otherwise the built-in flatten will miss their content.

Actually although this limitation was documented in Kafka some time ago it has been resolved in the built-in map flatten trasnform in more recent releases so it is not a problem.

Mixed type arrays are not supported

This is a limitation of Struct, but it is something that can be worked around if arrays are flattened before creating the Struct.
Further a current limitation of our built-in flattening option is that operates as part of building a schema/struct, so it requires the generate schemas option to be used (it is effectively an extension of it).
Given our move towards using SMTs in general rather than having a plethora of options on the source connector itself and the fact that the built-in Map flatten is already also an SMT I think it makes sense to move the schema generation also into an SMT.
The outcome from this task would then be:

The source connector task will produce [schemaless] Map values on its emitted SourceRecords. (This is also convenient as the Java representation of the JSON document is already (mostly) Map based anyway).
The existing flattening is replaced by 2 SMTs (1 kafka built-in for map flattening) and 1 new one provided by us for array flattening. The former can operate on Map|Struct, but the intent for our new array flattening SMT would be to operate only on Map (as it is simpler and avoids the need to rewrite schemas) and apply it before any transformation to Struct (thus allowing a workaround for mixed type arrays).
The existing schema/struct generation option is replaced by a new SMT that operates on Maps and converts them to Schema/Struct.

This not only has the advantage of largely simplifying the amount of transformation code needed, but it also makes all three transformations completely independent and thus:

Array flattening can be used to workaround mixed type array limitations in Struct, but makes no requirement to also flatten maps (though remains compatible with flattened Maps as well).
Schema/Struct generation can happen with or without flattening preceding.
Map flattening can be used at any point in the source connector SMT pipeline.
Flattening can be used without having to use schemas/structs.

Further I think it makes it possible to remove direct calls to GSON in the SourceConnector alllowing JSON serde to be handled independently and opaquely in the cloudant-java-sdk and Kafka converters respectively, effectively future-proofing against underlying serde provider changes.
The only limitations are:

the new array-flatten SMT must come before the Schema/Struct generation one in the source connector SMT pipeline (as it operates only on Maps). That can be documented and seems pretty reasonable to me given the other benefits.
change in the default message schema from String to Map - honestly I think this makes sense as the String schema never seemed quite right anyway. Outputting "raw" JSON instead of Map or Struct limits the compatibility with other sink connectors (even those using JsonConverter are likely to fail because it produces a single JSON string of the entire JSON document when using a String schema).


Failed to install perseus-cli 0.3.0-beta.XX with clap 3.0.0-rc.X

I tried to run the following command:
cargo install perseus-cli --version 0.3.0-beta.18
It threw some similar errors: https://github.com/arctic-hen7/perseus/issues/65#issuecomment-945954443.
Then I noticed that clap had released the version 3.0.0-rc.X, so I tried to editing Cargo.toml in the perseus-cli-0.3.0-beta.18 folder.
[dependencies.clap]
version = "=3.0.0-beta.5" # <= pin the version
features = ["color"]

Finally I run the install command again and it runs successfully.

Ah, thanks for catching this one! I've just finished adding the new integration for Warp, so I'll release the fix for this in the next beta version, which should come out in a few hours.

Wow, thanks a lot. I will close this issue.
By the way, when do you plan to support sycamore v0.7.0? I'm looking for it. :)

No problem! Sycamore v0.7.0 will ship with the beta after next, which should be out by tomorrow, and then v0.3.0 should be able to go stable!

No problem! Sycamore v0.7.0 will ship with the beta after next, which should be out by tomorrow, and then v0.3.0 should be able to go stable!

Great work! 👍

@rieval just so you know what the heck is going on if you've tried to install Perseus again recently, there have been some minor critical failures in the two betas I just released, so we're now at version v0.3.0-beta.21, and the previous two have been yanked.

@rieval just so you know what the heck is going on if you've tried to install Perseus again recently, there have been some minor critical failures in the two betas I just released, so we're now at version v0.3.0-beta.21, and the previous two have been yanked.

Wow, I tested it and it works fine.
Honestly, well done!

No problem, thank you very much!


tetragon: Do not fail because of the empty map ids

Add program even with no maps.
Signed-off-by: Jiri Olsa<EMAIL_ADDRESS>

lgtm! thank you @olsajiri


⚠ ClamAV has degraded performance

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

HTTP code: 200
Response time: 229 ms

Resolved: ClamAV performance has improved in 5e76d34.