It should be possible to customize how the child view is attached

Sometimes you want to add the child view to somewhere where a <slot> can't be used, like inside a <vaadin-dialog>. For this case, it could be beneficial to be able to override the method which appends the child element to the DOM.

Generally, moving a child could be achieved using onAfterEnter / onAfterLeave callbacks. However, it is not enough for the <vaadin-dialog> use case, because:

It requires keeping the dialog’s opened state in sync too.
The dialog does only provide a DOM content root to append the content in the renderer callback, which is only invoked on a specific time when the dialog is rendering the content.

Because dialog contents are isolated so much from the rest, as a solution to this issue, I would suggest to make a component used in the content of <vaadin-dialog>, and use another instance of the Router in that component (a subrouter).
A subrouter is, naturally, using another outlet element, which could be in its turn placed anywhere in the DOM tree independently from the main router outlet. Additionally, this would allow to specify the local routes in the view component itself, which might help to clean up the main router configuration. I think, improving a subrouter use case support is a good idea in general.
I made a prototype branch with these suggestions: https://github.com/vaadin/vaadin-router/tree/proto/subrouter. There was some issues making subrouter usage inconvenient, see comments with FIXME(subrouter). Fixing them properly seems feasible to me.


Securescore only being generated on a subset of customers

Expected behavior
I'd expect that nearly all customers in my CSP portal would get a report generated
Actual behavior
Only 89 customers gets a secure score, the same customers every time. The several hundreds remaining are never processed. For example for tenants with an onmicrosoft.com domain that starts with an A it has created a report for 8 out of 13. For Customers beginning with T it has 1 out of 25, for some reason no customers with a letter later than T has been processed.
Steps to reproduce the problem
I've deployed successfully and ran the PullCustomers (all customers are being pulled fine, verified in the cosmodb) and then I ran the ProcessCustomers function and it only completes for 89 customers, the rest are just reported as failed in the console (for the ProcessSecureScore function):
2018-04-09T08:59:44.725 [Error] Executed 'ProcessSecureScore' (Failed, Id=ba3528f5-0f57-401d-9296-6d240fbd4b6d)

@FrodeOA I have just pushed PR #5, which adds some additional error handling. Without more information it is difficult to say exactly what is happening. If you can update your deployment to the latest code and provide the new output from the logs that will be extremely helpful. To update your deployment perform the following

Open the Azure Function app in the Azure Management portal
Click Platform features and then Deployment Options
Click the Sync button on the Deployment page
Verify that the update was successful

Please let me know if you have any issues with this.

I did the pull request and looked at the error logs, when I go to the ProcessSecureScore function and look at the monitor tab the invocation log is full of access denied to some outbound customers and test domains but it's the same handfull of domains that keep repeating with access denied, which is probably true, they're domains we no longer have access to.
Example error (last run has close to 200 of these):
Exception while executing function: ProcessSecureScore Exception binding parameter 'secureScore' {
"error": {
"code": "AccessDenied",
"message": "Your account does not have access to this data.

Hi @FrodeOA ,
Thank you for providing this information. With respect to the customers where you no longer have access, I would recommend that you review the remove a customer process .  If you are no longer providing services to these customers then you can remove the relationship. Please note that this will remove them from your instance of Partner Center, and it can only be done once you have suspended all subscriptions you are providing the customer.
Please let me know if you discover any other errors unrelated to the customers where you are no longer providing services.

There's still a few hundred current customers missing, a few customers in the process of being removed shouldn't stop it for those should it?

Hi @FrodeOA,
You are correct this would not prevent all of the others from synchronizing. Removing those customers will enable to filter out some errors. Are you encountering the access denied error for valid customers as well?

I took at a look at the logging tablestore backend, created a report in PowerBI and from what I can see there are only access denied errors on a few customer tenants, the ones that are being offboarded, I can't see any errors from the missing customers, I can see them mentioned in the run logs of ProcessSecureScore no errors and they don't have any SecureScore recorded. It's like they've been processed but after that nothing.

Also I have a question, could the problem be that you're hitting some rate limit in the API? Granted that should have thrown an error but seeing as it's stopping after the same amount of tenants every time and from the looks of it there isn't a queue system in the code or batching.

Hi @FrodeOA, please feel free to reach out to me at<EMAIL_ADDRESS>so we can continue to troubleshoot this issue.

@FrodeOA thank you for your patiences with this matter. The root of the issue was the requests to get customers from the Partner Center API return records using pages. I have implemented the appropriate logic to ensure all customers are returned. Also, there are a number of enhancements that should help identify the root cause for the permission errors you are encountering. I will reach out over email to ensure you are able to successfully deploy this update. Please feel free to reopen this issue or create a new one.


Nell/feat/ffi

Looking at this, I'm thinking we might be in a good position for merging! @nellshamrell, are there parts of the API here that you think are missing? Once we have an implementation for finding matching GitOids we'll need an FFI for it as well, and we'll also want to extend the FFI to include the gitbom crate once it's been improved more generally.

I also agree we are in a good position for merging! Do you mind if we postpone until the new year? (I want to update the crates, etc. as well and doing that right before I go on PTO for three weeks seems like tempting fate)

Haha sure, sounds good. Have a nice holiday break!


README Updates

I made the requested changes. We can proceed or wait for @jpdahlke for guidance on the multiple Emissary process documentation

In general:

not a fan of stashing these in the contrib directory. Placing them at the same level the README is now should is fine.

We can do that. Previously dev-mlb  wanted to cleanup the base directory which is why I opted for the contrib directory. Are we not concerned about these READMEs cluttering the base directory?

I would put the command related help back into the README

There was a lot of content for this section and I think it will help to separate it. Anyone interested in the commands will be able to easily find that content and anyone not interested in the commands won't have to scroll past it to get to the content they want. I am open to whatever the group prefers. @cfkoehler and @ggambrell do you have a preference on this?

instead of breaking the IDE specific section out, make a DEVELOPMENT.md that contains what developers would want to know

Not quite sure I understand what you mean here. Do you just want me to rename that README to DEVELOPMENT.md or would you like me to change the content of that README as well?

is there a way we can fix the markdown so it browses correctly when using a markdown viewer?

I don't seem to have issues with my markdown viewer. Can you help me understand what issues you are running into?

Going down the bullet points.

I would agree with Jason that the README should be in the base directory.
Agree with Stephen, separating the command help makes the document easier to read.
Rename IDE-SETUP.md to DEVELOPMENT.md I believe is what Jason meant.
Markdown seems to be fine to me as well.

I added a "temp" commit to see the changes made and then rebased the changes into a single commit

Going down the bullet points.

I would agree with Jason that the README should be in the base directory.
Agree with Stephen, separating the command help makes the document easier to read.
Rename IDE-SETUP.md to DEVELOPMENT.md I believe is what Jason meant.
Markdown seems to be fine to me as well.

These changes in addition to the changes requested by @jpdahlke were made

When talking to some of the newer developers on the project at the time (@ggambrell and @cfkoehler) I was under the impression that this separation made it easier for them to parse the information and find what they needed. Since new developers is generally our target demographic for READMEs would we want to keep what seemed easier for them? Both you (@dev-mlb) and @jpdahlke seem to be in favor of keeping the docs together. If there is split opinion it would make more sense to default to your opinions as the more senior devs.
With this added information let me know if you still want these combined or not and I will proceed as requested.

I think the split between README and DEVELOPING is good, but I don't like the separate docs for commands and docker. I'd combine the commands -> README, and docker -> DEVELOPING.
In the README I'd like to see is the intro section, reqs list (maven, java, etc), and then a quick start -- a small section on how to build and run and possibly a quick docker example as well. I'd like the user to be able to get up and running pretty quickly w/o having to dig too deep into the docs. Then I think we can deep dive into the details of Emissary and commands -- I think there are some commands that are not documented that should be added. This doc should be everything about running and using Emissary. Also, the ToC section is huge - maybe there is a better way to handle?
I'm thinking in DEVELOPING we can have sections like (not in order) reqs, code organization, threads, building/distributions, ide, etc. Anything that leans more towards dev stuff, put it in there. If we want a section to be in both docs, I'd rather have a quick read in the README and more detailed version in DEVELOPING - if it makes sense.
Thoughts?

According to github's best-practices recommendation, they recommend a wiki for in-depth content: https://guides.github.com/features/wikis/
If we had a wiki, it acts as a separate repository that could also be migrated/cloned wherever we need in the future: https://stackoverflow.com/questions/21992151/migrate-or-export-github-wiki-to-gitlab
I personally like keeping information divided into smaller pieces that feel more manageable to work with. If we go with the wiki option we could do this well. If you don't want to do that, then I will work on the changes you requested

We ensured these updates were all addressed in #194 which has a different file layout.  Closing this PR.


Deploy the develop branch of VSF (1.12)  + API

Some of the optimizations are already implemented there (like removing Elastic DSL and bodybuilder from the frontend for example): https://github.com/DivanteLtd/vue-storefront/tree/develop

Related: #104


most likely due to a circular import

When I install the environment according to the tutorial, I still get an error when I run it. What may be the problem?
File "tools/instance_segmentation.py", line 20, in
from detectron2.engine import (
File "/mnt/ssd/lvqin/image_synthesis_engine/segmentation/EVA/EVA-02/det/detectron2/engine/init.py", line 11, in
from .hooks import *
File "/mnt/ssd/lvqin/image_synthesis_engine/segmentation/EVA/EVA-02/det/detectron2/engine/hooks.py", line 22, in
from detectron2.evaluation.testing import flatten_results_dict
File "/mnt/ssd/lvqin/image_synthesis_engine/segmentation/EVA/EVA-02/det/detectron2/evaluation/init.py", line 2, in
from .cityscapes_evaluation import CityscapesInstanceEvaluator, CityscapesSemSegEvaluator
File "/mnt/ssd/lvqin/image_synthesis_engine/segmentation/EVA/EVA-02/det/detectron2/evaluation/cityscapes_evaluation.py", line 11, in
from detectron2.data import MetadataCatalog
File "/mnt/ssd/lvqin/image_synthesis_engine/segmentation/EVA/EVA-02/det/detectron2/data/init.py", line 17, in
from . import datasets, samplers  # isort:skip
ImportError: cannot import name 'datasets' from partially initialized module 'detectron2.data' (most likely due to a circular import)

Thank you for your reply. I used the latest code and there is no such problem.


Add --comment-format for customizing comment metadata, set description metadata as well

Add --comment-format for customizing comment metadata.
Set description metadata along with comment metadata ala youtube-dl.
Involves adding url and description fields to FormatInfo, and using FormatInfo as an input to MetaInfo.
File name sanitization is moved out of FormatInfo, truncates to first line, and is documented.
Also fixes FormatInfo/MetaInfo field to be an instance field rather than class field.

The only understandable things here are adding url as a possible output format key, and reducing duplicate code by passing FormatInfo to set_meta. Even then the url as a format key only makes sense if you or others your know use/plan to use it, since that is set in metadata if you enable that flag. Can you give a good reason/explanation for some of the other changes?
For description as an output format key, you even put Note: not recommended to use description for file name due to max file name limitations. Indeed, not recommended, should not be done, why bother adding it?
For comment formatting, there's no information you'd add to it that isn't set by other metadata fields. Also, the description metadata field was omitted before because ffmpeg doesn't set it for mp4, hence comment instead. Setting both it and comment to the same value is just duplicating metadata in the file unnecessarily, though it would only show in mkv. Still, pointless unless you plan to just remove most or all information from the comment metadata field. If that's the intent then I guess that's fine too, but could just as well be added as a flag to do so instead of bothering with custom formatting.

The motivation is to make ytarchive-generated metadata as close as possible to youtube-dl-generated metadata.
youtube-dl adds both comment and description metadata, and it doesn't add the URL. I would use --comment-format '%(description)s to have youtube-dl behavior.
Allowing url and description as format keys for the file name is a side effect. I decided to just warn the user against using description rather than disallowing it outright, but I could disallow using description (and url?) if you want.

Can you give a good reason/explanation for some of the other changes?

"File name sanitization is moved out of FormatInfo": so that this sanitization only occurs for file names and not for comment metadata now
"Also fixes FormatInfo/MetaInfo field to be an instance field rather than class field": finfo and meta were essentially static fields that you were using as if they were instance fields, which is a big no-no
Adding "template" wording: to align with youtube-dl's documentation wording on "output template"
Moving format defaults to constants: self-explanatory

Also with this change and --comment-format '%(description)s', the only other discrepancies that I know of with youtube-dl-generated metadata are:

date metadata (ContentCreateDate in exiftool) being start date rather than upload date. This is fine as-is, though using upload_date as a format key for this is misleading (should have both upload_date and start_date keys).
ModifyDate metadata (in exiftool) is not set. AFAIK ffmpeg can't set this and youtube-dl incidentally sets it via AtomicParsley, so this is also fine as-is.

tl;dr I'm not against the changes, but do want description to be unusable as an output format key. Also please re-add the second \n to DEFAULT_COMMENT_FORMAT to have that extra space between the URL and the stream description.

The motivation is to make ytarchive-generated metadata as close as possible to youtube-dl-generated metadata.

I'm not necessarily looking to have parity with youtube-dl in most respects. The filename template was the only one that really mattered as far as I am concerned, and only insofar as using the same formatting of %(key)s and keeping the keys the same for the same data.

youtube-dl adds both comment and description metadata, and it doesn't add the URL.

youtube-dl can output in MP4, MKV, or webm. Unsure of webm, but I know MP4 ignores description, and as previously noted, duplicating it in mkv is pointless. It's possible their reasoning is webm takes description but not comment. I'd have to check. ytarchive only does MP4 (and now mkv), as webm doesn't support AAC audio, but MP4 does support VP9 video. Youtube livestreams always use AAC audio, and can be H264 or VP9 video.
As for the URL in the comment, this tool was created precisely because some livestreams are ephemeral. That is, they are privated and/or deleted immediately after they finish. This would mean finding the video ID/url would be impossible if it's not set in the metadata and the user doesn't use the ID in the output format. Not that this is a reason against adding the change. It just seems odd to want to keep things as close to youtube-dl as possible for something usually invisible like the metadata.

Allowing url and description as format keys for the file name is a side effect.

I figured. Personally I would prefer if description is not an option for filename formatting. URL can stay as an option. Even if I personally think it's dumb, I can understand some people might use it as the sole output format key and just keep their downloaded videos named that way.

finfo and meta were essentially static fields that you were using as if they were instance fields, which is a big no-no

Hah, I didn't know that's how Python did that. My bad then. I probably never noticed cause every class I've written for my Python scripts only had a single instance in use in practice.
Finally, for the upload_date, this goes back to the output format being the only thing I cared to keep as close to youtube-dl as possible. Most people I was interacting with that wanted this were using youtube-dl and just hoping they'd be around to record a stream from the start. I figured they'd probably want to be able to drop their -o param right in and get the same result. I probably would have used start_date otherwise.

do want description to be unusable as an output format key and not set as a metadata field in the ffmpeg args.

Okay, I'll make it unavailable for output file name format.

Also please re-add the second \n to DEFAULT_COMMENT_FORMAT to have that extra space between the URL and the stream description.

Will do.

youtube-dl can output in MP4, MKV, or webm. Unsure of webm, but I know MP4 ignores description, and as previously noted, duplicating it in mkv is pointless. It's possible their reasoning is webm takes description but not comment. I'd have to check. ytarchive only does MP4 (and now mkv), as webm doesn't support AAC audio, but MP4 does support VP9 video. Youtube livestreams always use AAC audio, and can be H264 or VP9 video.

Depends on what you mean by "ignore". ffmpeg recognizes the tag and handles it in mp4 (as seen in its ffmetadata format).
An alternative to always populating description metadata (and the --comment-format parameter) is to allow passing on arbitrary formatted metadata to ffmpeg, something like: --metadata comment='%(description)s' --metadata description='%(description)s'
Thoughts?

As for the URL in the comment, this tool was created precisely because some livestreams are ephemeral. That is, they are privated and/or deleted immediately after they finish. This would mean finding the video ID/url would be impossible if it's not set in the metadata and the user doesn't use the ID in the output format. Not that this is a reason against adding the change. It just seems odd to want to keep things as close to youtube-dl as possible for something usually invisible like the metadata.

For my use case (and the default behavior), id is part of the output format, so adding the url is redundant for me.

Hah, I didn't know that's how Python did that. My bad then. I probably never noticed cause every class I've written for my Python scripts only had a single instance in use in practice.

Yeah, the data model for Python classes is essentially that everything directly declared within the class block is defined on the class itself ("static"), and when you access an attribute (including method) on an instance, it looks it up in instance first, then class second. (Note: there is some descriptor protocol magic that makes functions defined in the class block auto-bound to instance upon instance creation, making self.method(...) work like they are instance methods.)

Depends on what you mean by "ignore". ffmpeg recognizes the tag and handles it in mp4 (as seen in its ffmetadata format).

I had to go back and check, but I found it: commit 136b1bb. It is an issue with Window's properties only showing comment, not description. Still, having one instead of both by default is the preference. I knew there was a reason but I guess I was misremembering the actual reason.

An alternative to always populating description metadata (and the --comment-format parameter) is to allow passing on arbitrary formatted metadata to ffmpeg, something like: --metadata comment='%(description)s' --metadata description='%(description)s'

Yeah that should be fine.

Just to say, don't put too much effort into these changes. I think just not setting description metadata is all that needs to be changed before I merge, and you can always keep it set in your local copy if you want it. I am almost done with the golang rewrite, though have been lazy as ever, so too much effort into the Python code might be wasted. I'll probably leave the Python file in the repo but no longer update it once the golang version is ready and working. I might remove it outright after a while too though.
I'll be sure to add the --metadata option to the golang version.

It wasn't a large change, so I went ahead replaced --comment-format with --metadata. Also added start_date and publish_date format keys. Publish date seems to always be the same as the actual upload date for streams.
So with this, I can reach parity with youtube-dl-generated metadata: --metadata comment='%(description)s' --metadata description='%(description)s' --metadata date='%(publish_date)s'


apt-get is missing -y and gets stuck due to interactive mode

The following additional packages will be installed:
  clang-15 clang-tools-15 cpp-11 g++-11 gcc-11 gcc-11-base icu-devtools
  lib32gcc-s1 lib32stdc++6 libasan6 libc6-i386 libclang-common-15-dev
  libclang-cpp15 libclang1-15 libffi-dev libgc1 libgcc-11-dev libicu-dev
  libllvm15 libncurses-dev libobjc-11-dev libobjc4 libpfm4 libstdc++-11-dev
  libtinfo-dev libtsan0 libxml2 libxml2-dev libz3-4 libz3-dev llvm-15
  llvm-15-dev llvm-15-linker-tools llvm-15-runtime llvm-15-tools
  python3-pygments python3-yaml
Suggested packages:
  clang-15-doc wasi-libc gcc-11-locales g++-11-multilib gcc-11-doc
  gcc-11-multilib icu-doc ncurses-doc libstdc++-11-doc pkg-config llvm-15-doc
  python-pygments-doc ttf-bitstream-vera
The following NEW packages will be installed:
  clang-15 clang-format-15 clang-tidy-15 clang-tools-15 icu-devtools
  lib32gcc-s1 lib32stdc++6 libc6-i386 libclang-common-15-dev libclang-cpp15
  libclang1-15 libffi-dev libgc1 libicu-dev libllvm15 libncurses-dev
  libobjc-11-dev libobjc4 libpfm4 libtinfo-dev libxml2-dev libz3-4 libz3-dev
  llvm-15 llvm-15-dev llvm-15-linker-tools llvm-15-runtime llvm-15-tools
  python3-pygments python3-yaml
The following packages will be upgraded:
  cpp-11 g++-11 gcc-11 gcc-11-base libasan6 libgcc-11-dev libstdc++-11-dev
  libtsan0 libxml2
9 upgraded, 30 newly installed, 0 to remove and 50 not upgraded.
Need to get 196 MB of archives.
After this operation, 800 MB of additional disk space will be used.
Do you want to continue? [Y/n] Abort.

This was working until yesterday. :S

Strange, we didn't come accross this in our tests. I think this is usually set already by the runner image's env. Are you using an additional container?
Nonetheless, this is a good idea.

Yes, we use self hosted runners :S I'm going to try by adding DEBIAN_FRONTEND=noninteractive

Thanks for jumping on this quickly 🙏🏽

Yes, we use self hosted runners :S I'm going to try by adding DEBIAN_FRONTEND=noninteractive

I'm curious, did this worked for you?

Yes, we use self hosted runners :S I'm going to try by adding DEBIAN_FRONTEND=noninteractive

I'm curious, did this work for you?

No, it didn't. setting that envvar across jobs and executions of sudo was just too much. Any way we can get the fix released soon? :D

Very soon. We just merged a revision to the thread-comments and added a step-summary feature. Now we just need to polish it off with #151.


net: lwm2m: support client-initiated De-register

Add new RD Client API of lwm2m_rd_client_stop() for this
Fix issues of de-register and event report in RD Client

@pfalcon Thanks, updated to use the "De-register" term as in the spec.


Cannot open jpg files in macOS 10.15 + iTerm2 + Zsh

When I try to open a jpg file, it doesn't work and just show a broken icon.

But works quite well when opening png files

It's weird that some jpg files can be opened, but some not.
Here is an example which cannot be correctly opened.

When I try to compile it with the newest CImg.h, it looks like working well.

Hi! I am unable to reproduce this in iTerm 3.3.7beta1 with imgcat 2.3.0. I think this might be an underlying problem with iTerm2. Could you please update iTerm2? And confirm whether it works with iTerm2's image viewer, confusing also called imgcat (but it's a shell script; not a C program).

@Zirconium-9 That's your image file format problem, I can solve it by saving JPG image to PNG format through Python's PIL. I wrote a script named pyimgcat that calls imgcat on Iterm2:

pyimgcat script:
def print_help():
    print('\nUsage python pyimgcat.py [file1...filen]\n')
    print('    file: file path or folder if file is a folder and \n' +
          '    it is first param then list its all.')
    print('\nExamples:')
    print('    for help: python pyimgcat.py')
    print('    for single: python pyimgcat.py same.jpg')
    print('    for list dir: python pyimgcat.py xxx/imgdir')
    print('    for list images: python pyimgcat.py 1.png 2.jpg 3.jpeg')
    print('\nOnly support on iTerm2 with imgcat tool, you can find it here:')
    print('    https://www.iterm2.com/documentation-utilities.html')
    print('\npyimgcat: you sholud install PIL library.')

def main():
    from tempfile import NamedTemporaryFile
    from PIL import Image
    import sys
    import os

    # Your iterm2 imgcat
    imgcat = os.path.join(os.environ['HOME'], '.iterm2/imgcat')

    if len(sys.argv) == 1:
        print_help()
        return

    ls = False
    path = sys.argv[1]
    if os.path.isdir(path):
        ls = True
        t = []
        for ld in os.listdir(path):
            if os.path.isfile(ld):
                t.append(ld)
        path = t
    else :
        path = [path]
        if len(sys.argv) > 2:
            ls = True
            for p in sys.argv[2:]:
                if os.path.isfile(p):
                    path.append(p)
            else:
                ls = False

    try:
        f = NamedTemporaryFile()
        for p in path:
            if os.path.exists(p):
                try:
                    img = Image.open(p)
                    img.save(f.name, format='png')
                    os.system('%s %s' %(imgcat, f.name))
                    if ls:
                        print(os.path.split(p)[1] + '\n')
                except:
                    pass
            else:
                print('pyimgcat: %s: No such file or directory'%p)
    except:
        if f is not None:
            f.close()

if __name__ == '__main__':
    main()

@newtorn I think it works pretty well! Thanks for your solution!


PV Experimental storage tests fail to delete all resources

The resource diff tests is failing for all storage tests using PVs. This is likely because while PVCs are deleted, there is nothing to make sure that all PVs and thus the underlying volume is deleted from GCE. We can use WaitForBoundPVCs to wait until PVCs are unbound, but that doesnt guarantee that the PV controller will delete the volumes before the test finishes.
What are your thoughts on how we can approach this? I think there must be new functionality added, but this is going to increase the complexity of both the storage test config and the CL2 framework.
@wojtek-t @davidz627 @jingxu97 @verult @msau42

While we figure this out, can we quickly disable the tests?
What we do in our regular e2es is wait until all PVs are gone

While we figure this out, can we quickly disable the tests?

Of course: https://github.com/kubernetes/test-infra/pull/13721

What we do in our regular e2es is wait until all PVs are gone

We can do that too. Its probably the simplest option that just amounts to adding another function WaitForProvisionedPV to CL2. It seems weird because its oddly similar to WaitForBoundPVC although it is different.

We can do that too. Its probably the simplest option that just amounts to adding another function WaitForProvisionedPV to CL2. It seems weird because its oddly similar to WaitForBoundPVC although it is different.

sounds fine to me (yes, it will be similar, but as I mentioned on some other PR, we probably will do some refactoring at some point to share more code)


Added Video Tutorial to README.md

I think it should link to a video of FCE356

@VincentXII closing this due to geosnow commiting his video:
7c07142


[Performance] Profile card not showing details on backside

Description
Blank backside of performance test card.
https://user-images.githubusercontent.com/7570704/112370249-2439dc00-8cab-11eb-8208-2c96d6e75cd0.mov
Expected Behavior
Should see test details.
Screenshots/Logs

No errors in the browser console.
Data is present in HTML, just not visible in browser.

Environment:

Meshery Version: v0.5.0
Browser: Safari

@utkarsh-pro did you find the culprit here?

perhaps, something specific to my user or more likely specific to my .meshery/ local files.

@leecalcote, that's strange even if that's the case. Lemme quickly ask a few folks on slack to see if someone else has also encountered the same issue?


[PA-733] Fix CreateCloudCredential

What this PR does / why we need it:
This PR makes the CreateCloudCredential function return an error instead of handling it internally, aiming to enhance consistency with other common functions. This is in line with best practices for error handling in Torpedo and enables better error management.
Which issue(s) this PR fixes (optional)
Closes #PA-733
Special notes for your reviewer:
Please review the Jenkins build for the "BasicBackupCreation" test case using the link below
https://jenkins.pwx.dev.purestorage.com/job/Users/job/Sumit/job/Custom-Pipelines/job/px-backup-on-demand-system-test-byoc/567
Aetos Dashboard: http://aetos.pwx.purestorage.com/resultSet/testSetID/129710

Everything seems fine, except for the following:
Wherever you've introduced the new CreateCloudCredentials, you were required to GetAdminCtxFromSecret. But you've implemented the error handling for that pretty inconsistently across various tests in various files. You've used 2 variants:

variant 1:

ctx, err := backup.GetAdminCtxFromSecret()
dash.VerifyFatal(err, nil, "Getting context")

variant 2:

ctx, err := backup.GetAdminCtxFromSecret()
log.FailOnError(err, "Fetching px-central-admin ctx")

I feel that everything must be changed to variant 2 for 2 reasons:

Most other situations where GetAdminCtxFromSecret was invoked, involved log.FailOnError
More importantly, as I said once before, log.FailOnError is used to check for error and fail on an intermediary step (afaik), whereas dash.VerifyFatal is used in places where one would technically use "assertions" (left == right) (which is the actual test/comparison).

Although it may not appear consistent overall, retrieving ctx is consistent within the test case.

Everything seems fine, except for the following:
Wherever you've introduced the new CreateCloudCredentials, you were required to GetAdminCtxFromSecret. But you've implemented the error handling for that pretty inconsistently across various tests in various files. You've used 2 variants:

variant 1:

ctx, err := backup.GetAdminCtxFromSecret()
dash.VerifyFatal(err, nil, "Getting context")

variant 2:

ctx, err := backup.GetAdminCtxFromSecret()
log.FailOnError(err, "Fetching px-central-admin ctx")

I feel that everything must be changed to variant 2 for 2 reasons:

Most other situations where GetAdminCtxFromSecret was invoked, involved log.FailOnError
More importantly, as I said once before, log.FailOnError is used to check for error and fail on an intermediary step (afaik), whereas dash.VerifyFatal is used in places where one would technically use "assertions" (left == right) (which is the actual test/comparison).

Although it may not appear consistent overall, retrieving ctx is consistent within the test case. Once we standardize the structure and syntax of the test case, we can then address this issue.

Let us use log.FailOnError everywhere

Everything seems fine, except for the following:
Wherever you've introduced the new CreateCloudCredentials, you were required to GetAdminCtxFromSecret. But you've implemented the error handling for that pretty inconsistently across various tests in various files. You've used 2 variants:

variant 1:

ctx, err := backup.GetAdminCtxFromSecret()
dash.VerifyFatal(err, nil, "Getting context")

variant 2:

ctx, err := backup.GetAdminCtxFromSecret()
log.FailOnError(err, "Fetching px-central-admin ctx")

I feel that everything must be changed to variant 2 for 2 reasons:

Most other situations where GetAdminCtxFromSecret was invoked, involved log.FailOnError
More importantly, as I said once before, log.FailOnError is used to check for error and fail on an intermediary step (afaik), whereas dash.VerifyFatal is used in places where one would technically use "assertions" (left == right) (which is the actual test/comparison).

Although it may not appear consistent overall, retrieving ctx is consistent within the test case. Once we standardize the structure and syntax of the test case, we can then address this issue.

Let us use log.FailOnError everywhere

Done. Used log.FailOnError(err, "Fetching px-central-admin ctx") for GetAdminCtx and log.FailOnError(err, "Fetching non admin ctx") for GetNonAdminCtx.

Please review the latest Jenkins build for the "BasicBackupCreation" test case using the link below
https://jenkins.pwx.dev.purestorage.com/job/Users/job/Sumit/job/Custom-Pipelines/job/px-backup-on-demand-system-test-byoc/591
Aetos Dashboard: http://aetos.pwx.purestorage.com/resultSet/testSetID/131160

You can view the Jenkins Build for all the test cases using the link below
https://jenkins.pwx.dev.purestorage.com/job/portworx-backup/job/system-tests/job/px-backup-system-test-vanilla/85
Aetos Dashboard: http://aetos.pwx.purestorage.com/resultSet/testSetID/132550 [ONLY UNRELATED TESTS FAILED]

Final test run after merging
https://jenkins.pwx.dev.purestorage.com/job/Users/job/Sumit/job/Custom-Pipelines/job/px-backup-on-demand-system-test-byoc/621
Aetos Dashboard: http://aetos.pwx.purestorage.com/resultSet/testSetID/133290


Fix typo in import statement in quickstart.md

Import Statement Typo: CasheMode should be CacheMode. This typo will cause an import error.

@moamamun I appreciate your contribution and for fixing the typo. Thank you so much. Your full request has been accepted.


added code to the HTML file

This is a draft of the HTML code we'll need for the pre-work study guide.

Sole owner of this pre-work study guide. Self-approved.


Systech P1 doesn't work with Intellitrac protocol

I'm trying to connect Intellitrac P1 to my test server, but it won't update it's status and I keep getting this error log:
2013-11-10 11:10:20 INFO: Starting server...
2013-11-10 11:10:20 INFO: Operating System name: Windows Server 2008 R2 version: 6.1 architecture: x86
2013-11-10 11:10:20 INFO: Java Runtime name: Java HotSpot(TM) Client VM vendor: Oracle Corporation version: 24.45-b08
2013-11-10 11:10:20 INFO: Memory Limit heap: 247mb non-heap: 118mb
2013-11-10 12:07:06 DEBUG: [5037 <- <IP_ADDRESS>] - HEX:<PHONE_NUMBER>000aa2061213de00ab000600001c0a0101
2013-11-10 12:15:18 DEBUG: [5037 <- <IP_ADDRESS>] - HEX:<PHONE_NUMBER>000aa2061213de00ab00060002210a0101
2013-11-10 12:15:32 DEBUG: [5037 <- <IP_ADDRESS>] - HEX:<PHONE_NUMBER>000aa2061213de00ab000600022e0a0101
2013-11-10 12:15:44 DEBUG: [5037 <- <IP_ADDRESS>] - HEX:<PHONE_NUMBER>000aa2061213de00ab000600023a0a0101
2013-11-10 12:15:56 WARN: An existing connection was forcibly closed by the remote host - java.io.IOException (null:-2)
2013-11-10 12:15:56 INFO: Closing connection by exception
2013-11-10 12:15:56 INFO: Closing connection by disconnect
2013-11-10 12:16:43 DEBUG: [5037 <- <IP_ADDRESS>] - HEX:<PHONE_NUMBER>000aa2061213de00ab000600033a0a0101
2013-11-10 12:16:55 DEBUG: [5037 <- <IP_ADDRESS>] - HEX:<PHONE_NUMBER>000aa2061213de00ab000600040a0a0101
2013-11-10 12:17:08 DEBUG: [5037 <- <IP_ADDRESS>] - HEX:<PHONE_NUMBER>000aa2061213de00ab00060004170a0101
2013-11-10 12:17:21 WARN: An existing connection was forcibly closed by the remote host - java.io.IOException (null:-2)
2013-11-10 12:17:21 INFO: Closing connection by exception
2013-11-10 12:17:21 INFO: Closing connection by disconnect
2013-11-10 12:17:39 DEBUG: [5037 <- <IP_ADDRESS>] - HEX:<PHONE_NUMBER>000aa2061213de00ab00060004360a0101
2013-11-10 12:17:51 DEBUG: [5037 <- <IP_ADDRESS>] - HEX:<PHONE_NUMBER>000aa2061213de00ab00060005060a0101
2013-11-10 12:18:03 DEBUG: [5037 <- <IP_ADDRESS>] - HEX: 000a000200000aa2061213de00ab00060005120a0101
2013-11-10 12:18:16 WARN: An existing connection was forcibly closed by the remote host - java.io.IOException (null:-2)
2013-11-10 12:18:16 INFO: Closing connection by exception
2013-11-10 12:18:16 INFO: Closing connection by disconnect
2013-11-10 12:18:32 DEBUG: [5037 <- <IP_ADDRESS>] - HEX: 000b000200000aa2061213de00ab000600052e0a0101
2013-11-10 12:18:44 DEBUG: [5037 <- <IP_ADDRESS>] - HEX: 000c000200000aa2061213de00ab000600053b0a0101
2013-11-10 12:18:56 DEBUG: [5037 <- <IP_ADDRESS>] - HEX: 000d000200000aa2061213de00ab000600060b0a0101
2013-11-10 12:19:09 WARN: An existing connection was forcibly closed by the remote host - java.io.IOException (null:-2)
2013-11-10 12:19:09 INFO: Closing connection by exception
2013-11-10 12:19:09 INFO: Closing connection by disconnect
2013-11-10 12:19:32 DEBUG: [5037 <- <IP_ADDRESS>] - HEX: 000e000200000aa2061213de00ab00060e131f0d0b0a
2013-11-10 12:19:44 DEBUG: [5037 <- <IP_ADDRESS>] - HEX: 000f000200000aa2061213de00ab00060e132c0d0b0a
2013-11-10 12:19:56 DEBUG: [5037 <- <IP_ADDRESS>] - HEX:<PHONE_NUMBER>000aa2061213de00ab00060e13380d0b0a
2013-11-10 12:20:09 WARN: An existing connection was forcibly closed by the remote host - java.io.IOException (null:-2)
2013-11-10 12:20:09 INFO: Closing connection by exception
2013-11-10 12:20:09 INFO: Closing connection by disconnect
2013-11-10 12:21:33 DEBUG: [5037 <- <IP_ADDRESS>] - HEX: 6173640d0a
2013-11-10 12:21:33 DEBUG: [5037 <- <IP_ADDRESS>] - HEX: 0d0a
2013-11-10 12:26:09 DEBUG: [5037 <- <IP_ADDRESS>] - HEX:<PHONE_NUMBER>000aa2061213de00ab00060e1a090d0b0a
2013-11-10 12:26:21 DEBUG: [5037 <- <IP_ADDRESS>] - HEX:<PHONE_NUMBER>000aa2061213de00ab00060e1a150d0b0a
2013-11-10 12:26:33 DEBUG: [5037 <- <IP_ADDRESS>] - HEX:<PHONE_NUMBER>000aa2061213de00ab00060e1a210d0b0a
2013-11-10 12:26:45 WARN: An existing connection was forcibly closed by the remote host - java.io.IOException (null:-2)
2013-11-10 12:26:45 INFO: Closing connection by exception
2013-11-10 12:26:45 INFO: Closing connection by disconnect
2013-11-10 12:27:02 DEBUG: [5037 <- <IP_ADDRESS>] - HEX:<PHONE_NUMBER>000aa2061213de00ab00060e1b020d0b0a
2013-11-10 12:27:14 DEBUG: [5037 <- <IP_ADDRESS>] - HEX:<PHONE_NUMBER>000aa2061213de00ab00060e1b0e0d0b0a
2013-11-10 12:27:26 DEBUG: [5037 <- <IP_ADDRESS>] - HEX:<PHONE_NUMBER>000aa2061213de00ab00060e1b1a0d0b0a
2013-11-10 12:27:39 WARN: An existing connection was forcibly closed by the remote host - java.io.IOException (null:-2)
2013-11-10 12:27:39 INFO: Closing connection by exception
2013-11-10 12:27:39 INFO: Closing connection by disconnect
2013-11-10 12:28:25 DEBUG: [5037 <- <IP_ADDRESS>] - HEX:<PHONE_NUMBER>000aa2061213de00ab00060e1c190d0b0a
2013-11-10 12:28:37 DEBUG: [5037 <- <IP_ADDRESS>] - HEX:<PHONE_NUMBER>000aa2061213de00ab00060e1c250d0b0a
2013-11-10 12:28:49 DEBUG: [5037 <- <IP_ADDRESS>] - HEX:<PHONE_NUMBER>000aa2061213de00ab00060e1c310d0b0a
2013-11-10 12:29:02 WARN: An existing connection was forcibly closed by the remote host - java.io.IOException (null:-2)
2013-11-10 12:29:02 INFO: Closing connection by exception
2013-11-10 12:29:02 INFO: Closing connection by disconnect
2013-11-10 12:30:13 DEBUG: [5037 <- <IP_ADDRESS>] - HEX: 001a000200000aa2061213de00ab00060e1e0d0d0b0a
2013-11-10 12:30:26 DEBUG: [5037 <- <IP_ADDRESS>] - HEX: 001b000200000aa2061213de00ab00060e1e190d0b0a
2013-11-10 12:30:38 DEBUG: [5037 <- <IP_ADDRESS>] - HEX: 001c000200000aa2061213de00ab00060e1e260d0b0a
2013-11-10 12:30:50 WARN: An existing connection was forcibly closed by the remote host - java.io.IOException (null:-2)

Am I doing something wrong? Android client works fine!

If someone needs help with implementing binary protocol, please send me an email. Address is in profile.


slinky-hot prevents to load pages in Scala 3

We are migrating our Slinky project from Scala 2 to Scala 3 and we have problems when we initialize slinky-hot, causing pages to fail to load and print console.errors in the browser console
To reproduce this we are calling hot.initialize() in the Main file. Removing hot.initialize() solves the load problem
Our project in the scala 3 branch https://github.com/wiringbits/scala-webapp-template/tree/scala3
Browser console errors

Main.scala
@JSImport("js/index.css", JSImport.Default)
@js.native
object IndexCSS extends js.Object

object Main {
  val css = IndexCSS

  def main(argv: Array[String]): Unit = {
    if (LinkingInfo.developmentMode) {
      hot.initialize()
    }

    val scheduler = monix.execution.Scheduler.global
    val $authState = Var[AuthState](AuthState.Unauthenticated)(scheduler)
    val $lang = Var[I18nLang](I18nLang.English)(scheduler)
    val ctx = AppContext(
      API(),
      $authState,
      $lang,
      Email.trusted("hello@wiringbits.net"),
      "+52 (999) 9999 999",
      org.scalajs.macrotaskexecutor.MacrotaskExecutor
    )
    val app = ErrorBoundaryComponent(
      ErrorBoundaryComponent.Props(
        child = App.component(App.Props(ctx)),
        renderError = e => ErrorBoundaryInfo(e)
      )
    )

    ReactDOM.render(app, dom.document.getElementById("root"))
  }
}

Looking at the issues I found the same issue: https://github.com/shadaj/slinky/issues/547

Interesting, which version of Slinky are you using? You seem to be running into the exact same issue, but it should be fixed in the latest release.

0.7.3 (ref), my understanding is that the issue should be fixed in this version.

That is very strange, might be some weird interaction between the proxied hot-reloading class. I'll try to test locally when I get a chance, might be a bit before I can get to it though unfortunately.
In the meantime, is using React Refresh via https://github.com/pmmmwh/react-refresh-webpack-plugin an option? It does miss out on preserving component state but that's what I use via Next for the docs site. The current hot reloading support depends on a very old library, so might be worth investing in Refresh for the future.

In the meantime, is using React Refresh via https://github.com/pmmmwh/react-refresh-webpack-plugin an option?

We could give it a try, we don't preserve component state because we use functional components.
Thanks for the hint.


Skip missing interpreters

closes #24

CI broken now...

The CI is still broken. Can you run the test suit on your fork or before you push locally? So we don't have to do so many rounds of this.

I'm too optimistic :disappointed:


Compare Strings by Count of Characters

Before jumping into Pr first comment for assign.All Problem from Edabit. Link is mandatory to add
Problem statement: Compare Strings by Count of Characters
Problem Link: https://edabit.com/challenge/C3N2JEfFQoh4cqQ98

Before submitting a PR please Check some details.Check Edabit for problem task

[ ] fileName formet should be in camelcase
example- returnTheNextNumber.py
[ ]  Add label for Problem
[ ]  In file there should be problem statement and link to probelm
example -

'''
    Probem Task : This program will add two numbers
    Problem Link : https://edabit.com/challenge/SFzHtm63XT6EYNHWY
'''
*/
def main():
    return a + b

This repository is vaild for HacktoberFest2020
Read before making PR - How to contribute on Github
Good Luck,

Please assign this to me

I would love to work on it.  Please assign

@ronika-das  please assign it to me.


request.headers.get("Content-Length") and request.headers.get("Content-Type")

Python Version
3.10
Django Version
4.0
Package Version
1.10
Description
Hi! Thanks for your work on this project, I wish I'd found it sooner! I was just applying the fixers, and noticed that two HTTP headers aren't 'fixed' to user request.headers.get():

CONTENT_LENGTH
CONTENT_TYPE

I was going to write a PR to fix this, but noticed that you have a test specifically ensuring that these are not fixed:
def test_not_header_access():
    check_noop(
        """\
        request.META['CONTENT_LENGTH']
        """,
        settings,
    )

Can you help me understand why these aren't fixed? I may be misunderstanding the docs:

HttpRequest.headers
A case insensitive, dict-like object that provides access to all HTTP-prefixed headers (plus Content-Length and Content-Type) from the request.

Happy to help if you'd like these added to the fixer, but my gut feeling is that these were excluded intentionally and I'm misunderstanding something. Cheers.

I think I just wrote that test as an example of something in request.META that should not be excluded. Seems like the fixer could certainly be expanded to support them, I'd just want a test updated to something else that's in request.META that shouldn't be rewritten (something from WSGI?).
Sounds like you've delved into the code a bit, want to write that PR? :)

Thanks for the quick response! Yep, I'll open a PR here in a few minutes.


npm start not working

Hello, I download the app and did what it says on the tutorial. However, is not starting.  Attached you can find the debug log.  At console, the error says:
node_modules/@types/jasmine/index.d.ts(39,52): error TS1005: '=' expected.
npm-debug.txt

Yeah, that jasmine types has a breaking change and we cannot support that yet. You need to lock it to the previous version for now. I have a PR standing to fix that.

good to know. thanks!


The stop() method will cause survey to never be displayed

Summary
In the branch of ds-add-stop-method, you provide the api wootric.stop().
When we call the stop() method for the first time, it can prevent the survey() from displaying, which is correct.
However, when we call wootric.survey() again, even if we do not call the stop() method, the user is eligible for survey will not see surver()
Branch
https://github.com/Wootric/WootricSDK-Android/tree/ds-add-stop-method
root cause
The SurveyManager.runSurvey() method relies on the surveyRunning flag. When we call the stop() method, the surveyRunning flag is not set to false.

If I set surveyRunning to false in SurveyManager.stop(), it will work.

Hi @breakwhile , thanks for the contribution. You're right. I tested the solution and pushed the change to that branch.


Add support for new anonymous function syntax

See ceylon/ceylon#7190.

Okay, this is freaky, apparently this works almost completely without any formatter changes?
    persons
        .filter( => element.age >= 18)
        .sort( => x.lastName <=> y.lastName)
        .map( => element.name->element.email)
        .each(print);

The only thing that’s not as it should be is the space in front of the =>.

Ah, of course, functions can have multiple parameter lists, so syntactically this is just a function expression with zero parameter lists :)


sample-Groceries w/Telerik UI crash when using Nativescript 2.0

From @3logy on May 24, 2016 17:42
Groceries worked fine with Nativescript 1.7 but update to 2.0 i can't build an Android Platform anymore. I need to remove the Telerik UI and XML using it, to be able to build again.
Copied from original issue: NativeScript/nativescript-cli#1775

@3logy
I have tested sample-Groceries app with the latest NativeScript 2.0.1 and the application has build succsessfully.
Try the following steps to run the app.

Update to the latest NativeScript 2.0.1
Pull the latest version of sample-Groceries (or clone it)
If you have choose to pull delete the node_modules folder and run

tns platform remove android
tns platform remove ios

You can also use the latest tns-core-modules with the following command:
npm install tns-core-modules@latest

Add the platforms

tns platform add android

@NickIliev
Done.. i can build it... but i have this one:
Skip com.telerik.android.primitives.widget.sidedrawer.BlurFadeLayer
Error: java.lang.NullPointerException
'assets/metadata/treeNodeStream.dat' NOT FOUND
'assets/metadata/treeStringsStream.dat' NOT FOUND
'assets/metadata/treeValueStream.dat' NOT FOUND
'assets/metadata/treeNodeStream.dat'...
'assets/metadata/treeStringsStream.dat'...
'assets/metadata/treeValueStream.dat'...
:transformClassesWithDexForF0F1Debug
hoping this is not a boomerang.

@3logy
Can you check your JDK and Android SDK versions.
Nativescript requares the fiollowing:
JDK 8 or a later stable official release
Android SDK 22 or a later stable official release

Also you can try to remove the telerik-ui plugin and add it again (meanwhil repeating the removal of node_moudles and platforms folders)
tns plugin remove nativescript-telerik-ui
tns plugin add nativescript-telerik-ui

I use Java 1.8.0_77 and android-23
Here another null pointer while building :
asbg:generateBindings
java.lang.NullPointerException  at org.nativescript.staticbindinggenerator.Generator.collectInterfaceMethods(Generator.java:505)
        at org.nativescript.staticbindinggenerator.Generator.getPublicApi(Generator.java:127)
        at org.nativescript.staticbindinggenerator.Generator.processRows(Generator.java:82)
        at org.nativescript.staticbindinggenerator.Generator.go(Generator.java:54)
        at org.nativescript.staticbindinggenerator.Generator.main(Generator.java:36)
:generateF0F1DebugAssets UP-TO-DATE

But i can run "Groceries"

@3logy
The error you are receiving is related to https://github.com/NativeScript/android-runtime/issues/459 and is scheduled for fixing with release 2.1.
If however your app is not runnig you may try again the steps suggested above (remoe the platform folder and re-build your app)

Can not reproduce with {N} 2.1.1 and master of Groceries.


Coins can spawn near the edge where they can't be picked up

Saw some coins spawning right on the window border and coming down correctly but the robot was unable to pick them up even though the robot was unable to move closer to the edge.

This is now fixed.


Skip to get the batch application status when creating batch

Why are the changes needed?

To prevent the POST /batches operation stuck when getting batch application status.
For example: the yarn client always failover because of resource manager issue.
And it is also not needed that get the batch app status info when creating batch.
How was this patch tested?

[ ] Add some test cases that check the changes thoroughly including negative and positive cases if possible

[ ] Add screenshots for manual tests if appropriate

[ ] Run test locally before make a pull request

How can we return app id if we do not get application status when creating batch ? Do you mean we do not need to return app related info when creating batch ?

How can we return app id if we do not get application status when creating batch ? Do you mean we do not need to return app related info when creating batch ?

Yes, the key information is batchId.

cc @pan3793 not sure if it breaks your customer ..

I think that usually the response for create batch request should be returned in milliseconds.
So, it is impossible to get the application status in most cases.

it is impossible to get the application status in most cases.

What's the current result in your production case? UNKNOWN?

It is none, I think.

We have UNKNOWN state, why should return null/None instead?

I think we need to re-evaluate https://github.com/apache/kyuubi/pull/3922, it's similar to https://github.com/apache/kyuubi/pull/4469

cc @zwangsheng as well

My idea is, revert https://github.com/apache/kyuubi/pull/3922, and always propagate app status to the client.
During submitting phase, ApplicationManager returns UNKNOWN instead of NOT_FOUND when elapsed time < kyuubi.engine.submit.timeout, same as we did in https://github.com/apache/kyuubi/pull/4469 for K8s

I'm + 1 for get Unknown state, after spark submit but we not find application from yarn cluster.
And using timeout to check whether  submit success or not.
Unknown sounds more reasonable, when we submit but can fount app.


Zero length cidr mask is not allowed inspite of being a valid cidr

Apply policy with 0 length cidr mask
Policy:
[{
    "labels": [{"key": "name", "value": "cidr-rule"}],
    "endpointSelector": {"matchLabels":{"app.client":""}},
    "egress": [{
        "toCIDRSet": [{
            "cidr": "<IP_ADDRESS>/0",
            "except": [
                "<IP_ADDRESS>/32"
            ]}
        ]
    }]
}]

This is the error we get when trying to import this policy
vagrant@runtime1:~/go/src/github.com/cilium/cilium$ cilium policy import examples/policies/l3/cidr/cidr-test.json
Error: Mask length can not be zero

@joestringer

Looks straightforward. Talked offline to @joestringer. I can take care of this.

Related: #3146

Community reports last week and this week are bumping the priority, agreed it can be a 1.1 blocker during today's meeting.


Refactored API sample hpp_timestamp_queries; includes minor adjustments in API samples hpp_hdr and hpp_terrain_tessellation.

Description
Besides the refactoring of the sample hpp_timestamp_queries, this PR includes

new helper function vkb::common::create_query_pool in framework/common/hpp_vk_common.hpp and
minor adjustments in the samples hpp_hdr and hpp_terrain_tessellation.

Build tested on Win10 with VS2022. Run tested on Win10 with NVidia GPU.
General Checklist:
Please ensure the following points are checked:

[x] My code follows the coding style
[x] I have reviewed file licenses
[x] I have commented any added functions (in line with Doxygen)
[x] I have commented any code that could be hard to understand
[x] My changes do not add any new compiler warnings
[x] My changes do not add any new validation layer errors or warnings
[x] I have used existing framework/helper functions where possible
[x] My changes do not add any regressions
[x] I have tested every sample to ensure everything runs correctly
[x] This PR describes the scope and expected impact of the changes I am making

Note: The Samples CI runs a number of checks including:

[x] I have updated the header Copyright to reflect the current year (CI build will fail if Copyright is out of date)
[ ] My changes build on Windows, Linux, macOS and Android. Otherwise I have documented any exceptions

Sample Checklist
If your PR contains a new or modified sample, these further checks must be carried out in addition to the General Checklist:

[x] I have tested the sample on at least one compliant Vulkan implementation
[x] If the sample is vendor-specific, I have tagged it appropriately
[x] I have stated on what implementation the sample has been tested so that others can test on different implementations and platforms
[x] Any dependent assets have been merged and published in downstream modules
[ ] For new samples, I have added a paragraph with a summary to the appropriate chapter in the samples readme
[ ] For new samples, I have added a tutorial README.md file to guide users through what they need to know to implement code using this feature. For example, see conditional_rendering
[ ] For new samples, I have added a link to the Antora navigation so that the sample will be listed at the Vulkan documentation site

@gary-sweet You're right, the changes in hpp_hdr could easily be moved into a separate PR.
It's just that hpp_hdr and hpp_timestamp_queries are very similar, and with the changes in hpp_hdr, they are both using the same naming schemes on functions (prepare_stuff, instead of setup_stuff).
If you think, it's better to separate that into two PR, I'll be happy to do so.

Imo it's fine to do it in one PR, but maybe change the title so it reflects the change to multiple samples?

No clue why, but with this PR I get wrong statistics values displayed in the terrain tessellation sample:

Correct values are sometimes visible for a short amount of time, but at higher frame rates I always get the wrong values displayed. So this maybe a timing problem.
The non-HPP variant works fine. Tested on an RTX 4070 with Win11 and the latest Game Ready driver. I had this exact same problem back with my RTX 2060 and Win10 but was never able to pinpoint it.
The code changes themselves look fine though.

No clue why, but with this PR I get wrong statistics values displayed in the terrain tessellation sample:

No clue, either! Especially as I can't reproduce that strange behaviour.
Can anybody else repro it?
@SaschaWillems

Do you run that in release or debug mode?
Could you break in HPPTerrainTessellation::on_update_ui_overlay if statistics.results[0] is greater than, maybe, 100000?
Could you add a waitIdle to HPPTerrainTessellation::draw(), like this:

	if (statistics.query_supported)
	{
		// Read query results for displaying in next frame
		get_device()->get_handle().waitIdle();
		statistics.results =
		    get_device()->get_handle().getQueryPoolResult<std::array<uint64_t, 2>>(statistics.query_pool, 0, 1, sizeof(statistics.results), vk::QueryResultFlagBits::e64).value;
	}

Do you run that in release or debug mode?

Debug

Could you break in HPPTerrainTessellation::on_update_ui_overlay if statistics.results[0] is greater than, maybe, 100000?

Just did and the break point is hit every other frame with very large values:

Putting the same conditional breakpoint in the non-HPP variant of the sample doesn't trigger

Could you add a waitIdle to HPPTerrainTessellation::draw(), like this:

That fixes the problem. So it looks like a sync/timing problem that somehow only happens with the HPP sample.
P.S. : Feel free to move this to a different PR if that works better for you.

@SaschaWillems If I got it right, that error is independent from this PR, right? You also get it with the current main branch, for example.
As I don't see anything like this, and the VulkanConfigurator doesn't tell me issue here, it's hard to fix... I assume, you don't have any local changes in your repository that might affect this sample?
As asked before: does anybody else see this error?

Exactly. It also happens on master, so it's not related to this PR. I have reponed the issue #674  where I first reported this and will continue discussion in there.


grid-styled seems to  cause wrong code splitting in react-static

grid-styled seems to cause wrong code splitting in [react-static](https://github.com/nozzle/react-static).
Please see here https://github.com/nozzle/react-static/issues/387.
Good news is, the issue seems to originate from styled-system: 1.1.1 and will probably go away once grid-styled will be dependent on styled-system: ^2

With the updates around grid-styled and its dependencies, the isssue is resolved. Thanks you @jxnblk!


Add datasets module contains links to out-of-date-content

From the Editor and Builder,

From Your maps dashboard
Click NEW MAP button

The "Add datasets" module contains a link at the bottom to , which opens "Or you can start with a video tutorial". These are old and out-of-date. Suggestion is to match the "Connect Dataset" module for consistency.

Lets remove that for the time being

This is gonna change with the new "add dataset modal", so... closing lady! thanks! 💋


Add support for Django 2.0

Replaces https://github.com/chessbr/rest-jwt-permission/pull/7

Coverage remained the same at 85.514% when pulling 385dda3163fef741c89cf379d85d5a0d548e4b7b on bump-django-version into d8cec20d7c95efcc64cdd63d95b46757e3a6dea3 on master.

Coverage remained the same at 85.514% when pulling 385dda3163fef741c89cf379d85d5a0d548e4b7b on bump-django-version into d8cec20d7c95efcc64cdd63d95b46757e3a6dea3 on master.

Thanks @adam-zakrzewski !


Follow tree menu parent url if provided

Subject
On some cases, we might want to no use tree view collapsing but keep a link on the parent menu item.
This make sense to follow the link if a real URL is provided (e.g. not #)
Concrete example
Take this menu extract:

The sub-menu only appear when you go on a specific domain dashboard (in this case, chevallier.fr).
But the "Domains" parent item is a link to the domain list.
ATM, I can't go back to this list because this link is now a collapsing action.
This PR solve the issue.

This issue has been fixed in v2.4-alpha. Sincere apologies for the extreme delay!
Thanks!

@almasaeed2010 Well, since when shoyuld we put a fix on a new minor alpha release?


react render error:ReactDOM.render(): Invalid component element

I render React Component on server side:
1.components.js:
var React = require('react/addons');
var MonitorApp =  React.createClass({...});
module.exports = MonitorApp;

2.appFile/app.js
 var React = require('react/addons');
var ReactApp = require('../components');
var ReactDOM = require('react-dom');
var mountNode = document.getElementById("react-main-mount");

ReactDOM.render(new ReactApp({}), mountNode);

3.gruntFile.js
browserify: {
        dist: {
            files: {
                '<%= srcBase %>/assets/app.js': ['app/appFile/*.js']
            },
            options: {
                transform: ['reactify']
            }
        }
    }

4.html
<div id="react-main-mount">
    {{{reactOutput}}}
</div>

there is a error  on browser console like this:
Uncaught Error: Invariant Violation: ReactDOM.render(): Invalid component element. This may be caused by unintentionally loading two independent copies of React.

I'm getting the same error above using gulp.

Ditto

Ok, I kind of figured it out. In main.js, change to this line:
ReactDOM.render(<ReactApp />, mountNode);
Not sure exactly why this works, but I got the idea from here:
https://www.bountysource.com/issues/27051749-app-main-js-line-8-react-render-new-reactapp-mountnode
If anybody can explain in further detail that would be appreciated.

That solution worked for me as well.

Still workin' in 2017


Add the Rest of og Door

Adds rad, raws, rads gates to the standard library.

@paulcadman
Please let us know whether that addressed #1345


print no longer works on master

Has it been replaced by something else since 3.1.0?
def foo : ℕ := 1
def bar : ℕ := 2

print foo

gives
-*- mode: compilation; default-directory: "~/Documents/repos/lean-playgorund/" -*-
Compilation started at Thu May 25 14:48:41

/home/jgross/Documents/repos/lean/bin/lean  /home/jgross/Documents/repos/lean-playgorund/test.lean
/home/jgross/Documents/repos/lean-playgorund/test.lean:3:0: error: unknown identifier 'print'
/home/jgross/Documents/repos/lean-playgorund/test.lean:2:15: error: function expected at
  2

Compilation exited abnormally with code 1 at Thu May 25 14:48:42

See #1432 . Transient commands are now preceded by #, so use #print.

Ah, thanks!


unRaid docker image not working

When I go to install the unraid docker version, the docker won't launch.
Log:
time="2021-12-28T15:38:58.764125699-08:00" level=error msg="bbd98ab026faa7370d9ce5a1ca28cec6123a1b9bb3e5946a8fb97d8b06bf871a cleanup: failed to delete container from containerd: no such container"

Turns out it was an IP conflict with another container. No clue why this was not simply logged somewhere, but it took me manually creating and trying to run this container to get:
docker: Error response from daemon: Address already in use.
From there I could work it was the ip conflict. Hopefully this helps someone else.


Fortran test fails on windows because it uses bash script

Please answer these questions before submitting your issue. Thanks!

What version of Go are you using (go version)?

What operating system and processor architecture are you using (go env)?

What did you do?

Run all.bat. TDM-GCC-64 is in PATH. While tests run the following test fails:

##### ../misc/cgo/life

##### ../misc/cgo/fortran
2016/03/23 14:57:19 Failed: fork/exec ./test.bash: %1 is not a valid Win32 application.

##### ../misc/cgo/test
PASS
scatter =<PHONE_NUMBER>6573A0
hello from C
sqrt is: 0
ok      _/c_/Users/gashiman/Documents/work/golang/misc/cgo/test 1.541s
PASS
scatter =<PHONE_NUMBER>50CEC0
hello from C
sqrt is: 0
ok      _/c_/Users/gashiman/Documents/work/golang/misc/cgo/test 1.305s
PASS
scatter =<PHONE_NUMBER>6573A0
hello from C
sqrt is: 0
ok      _/c_/Users/gashiman/Documents/work/golang/misc/cgo/test 1.292s
skipped due to earlier error

##### Testing race detector
skipped due to earlier error
skipped due to earlier error
skipped due to earlier error
skipped due to earlier error
skipped due to earlier error
2016/03/23 14:58:02 FAILED```

4. What did you expect to see?

Passed or excluded test.

5. What did you see instead?

Probably there should be a test.bat for windows.

CC @kortschak


nfd: init at 0.7.1

Motivation for this change
Package the named Data Networking Forwarder Daemon (NFD)
Things done

Add NFD derivation
Link NFD derivation as a top-level package

Built on platform(s)

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

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

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

[x] Fits CONTRIBUTING.md.

I have a question about supporting MacOS. I'm building on NixOS and don't have access to a MacOS device.
From the NFD installation guide the build needs Xcode to be installed. How can I make sure it is in nix? I couldn't find an xcode derivation.

I have a question about supporting MacOS. I'm building on NixOS and don't have access to a MacOS device.
From the NFD installation guide the build needs Xcode to be installed. How can I make sure it is in nix? I couldn't find an xcode derivation.

We don't have xcode for packaging purposes, I think because it's unfree so we couldn't use it on hydra. We do have a fake xcbuild package which provides some subset of functionality and is sometimes sufficient for packaging purposes.
I wouldn't worry about mac os if you don't have a machine to test on. Enterprising darwin users are free to make the necessary changes if they want to use it.

I was able to compile NFD, but I noticed that it's trying to load a config file from inside its store path:
NFD version 0.7.1 starting
Built with GNU C++ version 10.3.0, with GNU libstdc++ version 20210408, with Boost version 1.69.0, with libpcap version 1.10.1 (with TPACKET_V3), with WebSocket++ version 0.8.1, with ndn-cxx version 0.7.1
1636934920.642393 FATAL: [nfd.Main] ../daemon/common/config-file.cpp(88): Throw in function parse
Dynamic exception type: boost::exception_detail::clone_impl<boost::exception_detail::error_info_injector<nfd::ConfigFile::Error> >
std::exception::what: Failed to read configuration file /nix/store/yam2j6k12f3z9qzbj9c17dxbqrpbsdhw-nfd-0.7.1/etc/ndn/nfd.conf
===== Stacktrace =====
 0# 0x0000000000451832 in results/nfd/bin/nfd
 1# 0x0000000000582481 in results/nfd/bin/nfd
 2# 0x00000000005833BC in results/nfd/bin/nfd
 3# 0x0000000000480A4C in results/nfd/bin/nfd
 4# __libc_start_main in /nix/store/2zchy9mdx3kk166i98cx5sriq2c1bdsn-glibc-2.33-55/lib/libc.so.6
 5# 0x0000000000497D2A in results/nfd/bin/nfd
======================

Is it possible to configure it so that the default config file location is /etc/ndn/nfd.conf?

I was able to compile NFD, but I noticed that it's trying to load a config file from inside its store path

Yes, it does search for nfd.conf or nfd.conf.sample by default.

Is it possible to configure it so that the default config file location is /etc/ndn/nfd.conf?
Edit, I think you can do this by configuring with --sysconfdir=/etc

I'm not entirely sure it is possible without a patch but I'll give it a try

Is it possible to configure it so that the default config file location is /etc/ndn/nfd.conf?
Edit, I think you can do this by configuring with --sysconfdir=/etc

I checked and i can change the output directory of both binaries and configuration files to be inline with nix defaults by setting the PREFIX variable to $out through a preConfigure hook.
The authors, though, expect the user to configure the server manually first copying the sample configuration as a starting point.
This is because in the default configuration all security measures are disabled (for ease of test I suppose).
So in general you would always start it with sudo nfd -c <path to custom configuration>.
I agree that the error handling is quite rough and possibly misleading but it's apparently the intended behaviour.
I'm going to update the derivation with the custom PREFIX as per above.

Okay, thanks. I was thinking that the default config.sample would still be in the nix store, but nfd would look for its configuration at runtime in /etc like other nix packages. But I couldn't see a straightforward way to do this without patching, so requiring the config to be specified with -c seems reasonable.
I'm not sure what exporting PREFIX does, could you explain that last commit? Other than that this looks good to me :)

You're once again right (I'm still getting used to all the nix build managers).
The PREFIX variable I'm referring to is used to set the installation prefix, and by default is /usr/local.
I thought I would have to set it to the derivation output folder to fix the path to the configuration files, but the wafHook already does that for us using the --prefix argument.
My last change is redundant, I'll remove it.
After that everything should be fixed.

Thank you for your support! :smile:

Hi! Seems like no other change or review have been proposed.
@r-burns or @SuperSandro2000 , would you like to merge?

Thanks!


Strip input whitespace

Make the new item behavior spec compliant by checking if the input
is either entirely empty ("") or consists only of whitespace.
N.B. I :heart_decoration: this implementation. It's such a joy to read. Thank you! :)

Great, thank you, for the PR and the nice words!


[ENHANCEMENT] Create spanner database logic to return pages of daily usage for a given feature

Definition of done:

The implementation of ListChromiumDailyUsageStatsForFeatureID is complete. (Inspiration for this work can be taken from ListMetricsForFeatureIDBrowserAndChannel)

There's a SQL template that returns the required data from the DailyChromiumHistogramMetrics table. It should be simpler than the WPT metric template for one reason: The WPT metric template handles both a single Feature ID for the feature detail page and aggregation for the stats page (we only need the first for usage for now)
It handles pagination by providing an opaque string if there are more pages (like existing implementations) and it decodes incoming pagination tokens. The token should be based on the last ChromiumHistogramEnumValueID and Day in the returned page.
The tests are updated with cases similar to TestListMetricsForFeatureIDBrowserAndChannel. Feel free to create subtests instead of relying strictly on comments to show the cases.

func TestListChromiumDailyUsageStatsForFeatureID(t *testing.T) {
//do the setup of the container
  t.Run("all data, func(t *testing.T) {
    // do the tests for all data
  })
  t.Run("pagination, func(t *testing.T) {
    // do the tests for pagination
  })
}

@DanielRyanSmith I have updated the description for this one. Let me know if you have questions

Thanks as always for writing substantial details here. 🙂 I do have a specific question about the pagination:

It handles pagination by providing an opaque string if there are more pages (like existing implementations) and it decodes incoming pagination tokens. The token should be based on the last ChromiumHistogramEnumValueID and Day in the returned page.

My current approach has been to join the DailyChromiumHistogramMetrics table on the WebFeatureChromiumHistogramEnumValues and filter by FeatureKey (since we are only returning data for a single feature). Since we are already specifying the specific feature, would it make sense to have the pagination token be based on the Day value only and not the ChromiumHistogramEnumValueID?


generator: Save a fe_mul in shallue_van_de_woestijne

Arguably this whole function should be rewritten. Unfortunately that is risky, so maybe it is better to keep doing these micro-improvements.

You have a point, though. I mean, sure, let's merge this if we get the ACKs, but a proper rewrite is probably a better approach.

Haskell implementation.

Is that a full implementation of the SWU map? I guess we could then steal the algorithm.

See #286 for my rewrite of this function, which would supersede this PR.


ETag support

I'd love to be able to cache on the client, but currently have no way of determining when the cache is stale. ETags to the rescue?

Go for it, make a PR ;)


Solves issue 553

Corrected custom filtering example on CodeSandbox, and use that new example link in App.js. This solves issue 553.

This PR will not be merged as it splits the samples away from the maintainers of the codebase. Alternatives for sharing the examples in codesandbox are being considered.


Added further coinbase products

Closes #67

Thanks @tlsim
Updated after your comments!

Cheers @rjmcneill - Looks good. I moved all the coinbase stuff to /data/coinbase in #477.

Makes sense @tlsim, thanks for the update :+1:


Add PGP support & checking of validation assets

Adds PGP (*.asc) and recursive validation support (= checking of validation assets).
With this enhancement, the release scheme used with https://github.com/restic/restic can be validated (assets are checked by SHA256SUMS and SHA256SUMS is checked with SHA256SUMS.asc).
E.g. such a usecase can be configured with:
validator := new(PatternValidator).
	// "SHA256SUMS" file is checked by PGP signature (from "SHA256SUMS.asc")
	Add("SHA256SUMS", new(PGPValidator).WithArmoredKeyRing(publicKey)).
	// "SHA256SUMS.asc" file is not checked (is the signature for "SHA256SUMS")
	AddSkip("*.asc").
	// All other files are checked by the "SHA256SUMS" file
	Add("*", &ChecksumValidator{UniqueFilename:"SHA256SUMS"})

or more conveniently:
validator := NewChecksumWithPGPValidator("SHA256SUMS", publicKey)

Was also thinking that resticprofile should use PGP like restic does to secure the self-update. The main motivation however was that resticprofile must be able to install restic (to generate the restic info schema and maybe also as a general feature).
Regarding AddSkip: The simplest name would be Skip (short for SkipValidation), but the issue is that the order in which it is added currently counts (e.g. * must not be added beforehand). That's why I called it AddSkip. The method could be modified in a way to insert Skip at first in the list then the order wouldn't count anymore (for skipping). On the other hand it is an uncommon case that PatternValidator is used directly, it will mostly be used through the 2 helper methods.

I like it better like that (even though it's only a small change)
And you're right I don't think anybody will use PatternValidator directly
Thanks 👍🏻


Instant interface jitter

There is code 'actionsContainerView.addSubview(actionsView)' in the 'configureActionsView' method of 'SwipeController.swift'.
When I am in the 'animatingToCenter' state and the animation is not finished, I immediately let it display Actions on the same side, and the center X of the actionsContainerView will instantly become the original center. This can cause a momentary interface jitter.
You can try recording the screen and watch it slowly, it's an experience issue.
Could you please try to fix this issue? Or let me try it?
Uploading RPReplay_Final1645275695.MP4…

https://user-images.githubusercontent.com/45427538/154802025-78f553bd-6096-434b-a3ab-689ebfa8ebe2.MP4


add metadata object identifiers to uri translation method

Coverage increased (+0.06%) to 82.28% when pulling f741b7abf8bf5134aba19d4bf73e6b6731a7be7e on sadam21:find_uri_identifiers into 08d2c5b885e509ea5171e7b9f477a42a4eede372 on martiner:master.

Coverage increased (+0.06%) to 82.28% when pulling 32c1beacc2486db1815d5cf5dd5b11c8f3905be6 on sadam21:find_uri_identifiers into 08d2c5b885e509ea5171e7b9f477a42a4eede372 on martiner:master.


Use hal.buffer_view for tensor types on exported functions.

Or some other way to move across shapes. The benefit of buffer_view is that when we add stride information we'll be able to tack it on there (even in the case of static shapes). The runtime iree_hal_buffer_view_t type is lightweight (as it just references a buffer) and is probably fine to materialize on demand for invocations.

The downside (that I'm trying to decide if we care about) is that you need to bring all shape dims, not just the dynamic ones, which is not strictly necessary and just overhead.

I think that's ok at the invocation level - it's a relatively costly operation compared to internal calls, where what the IR would likely do is extract the dynamic shape dims and continue without the buffer view wrapper. This can also give us better error messages (if not coming through python) as we can assert shape correctness for the dimensions that were known during compilation.

(for example, hal.buffer_view.buffer gets the buffer, and though it doesn't exist a hal.buffer_view.shape could return a ranked shape)

sgtm. this will probably take me the day to wire through.

Closing as this is done and integrated in the python bindings now (although there is further optimization work that could be done).


handle_to_many_relation error

Hello 👋
I tried using jsonapi_parameters but I'm getting an error in the handle_to_many_relation method.
This is my request:
POST http://localhost:3000/api/v1/movies
payload:
{"data"=>
  {"type"=>"movies",
   "attributes"=>
    {"title"=>"The Terminator",
     "released_at"=>"1984-10-26",
     "runtime"=>107,
     "content_rating"=>"restricted",
     "storyline"=>
      "A seemingly indestructible android is sent from 2029 to 1984 to assassinate a waitress, whose unborn son will lead humanity in a war against the machines, while a soldier from that war is sent to protect her at all costs.",
     "budget"=>6400000},
   "relationships"=>{"genres"=>{"data"=>[{"id"=>74, "type"=>"genres"}]}, "director"=>{"data"=>{"id"=>682, "type"=>"directors"}}}}}

error:
 NoMethodError:
       undefined method `merge' for nil:NilClass

It breaks when trying to execute this included_object[:attributes].merge(id: related_id) because the included_object is nil.
The related_id and related_type are properly set and the record exists in the database and the @jsonapi_unsafe_hash is properly set.
The issue I believe is in the convention you used for including relationships. As specified in the JSON:API documentation, include is the query parameter used for relationship inclusion and you used included:
def jsonapi_included
  @jsonapi_included ||= @jsonapi_unsafe_hash[:included] || []
end

Also, you assume that the request will look like this:
POST http://localhost:3000/api/v1/movies?include=genres,director
A client doesn't need to include the relationships if he's creating them necessarily.
After changing the query parameter to included, it broke in the find_included_object method, because it doesn't support including relationships by separating with a comma like JSON:API specifies is possible.
I'm using Ruby 2.5.1 on Rails 5.2.1.
Thanks!

Hi!
Lets tackle issues that you mentioned in the end, about the included vs include keyword and its functionality.
I may have misunderstood (if so, sorry for that, and please correct the track of my thoughts), but you're speaking of the include functionality that JSON:API provides for fetching the resources, not creating or updating them.
jsonapi_parameters gem is purely for deserialization, so include keyword and its functionality that allows the client to specify what kind of resources would he like to receive should not be cared about in this library.
included vs include
I think you have missed the section about Compound documents. Basically, the way we understood it, is that along with creating a resource that has some kind of relationships, we may also want to create these related objects. In this case, as specified in the documentation, the client should pass included top-level key that contains attributes for each of the resources you can find in the relationships tree (as there the only things you have is the type and id).
undefined method merge' for nil:NilClass`
Even if included vs include section was misunderstood by me, the idea we had with relationships - if I recall correctly - was to have the following functionality:

if relationships is passed, check for included tree
if the included tree contains attributes, pass them along with the relationship data,
if not, then just pass the ids to those related objects

It seems that this flow is failing us, as in your example you provided relationships but not included data for them - so it should not fail, but just yield something like genres_ids: [74], director_id: 682. I need to dig into that.
Please let me know your thoughts on this!

I have opened a PR that should resolve the latter part. jsonapi_parameters should no longer fail with the request example you provided, and the specific parameters have been added to the test suite.

Hi @Marahin 👋
Thanks for jumping on this issue so quickly!

Lets tackle issues that you mentioned in the end, about the included vs include keyword and its functionality.
I may have misunderstood (if so, sorry for that, and please correct the track of my thoughts), but you're speaking of the include functionality that JSON:API provides for fetching the resources, not creating or updating them.

Let's quickly mark this part as resolved. I assumed that part wrong when I was debugging the code. :)

It seems that this flow is failing us

Great job! That's exactly what I was looking for. However, I checked out your branch and bundle installed everything once more to try it out:
def movie_params
  params.from_jsonapi.require(:movie).permit(
    :title, :released_at, :runtime, :content_rating,
    :storyline, :budget, director: [:id], genres: [:id]
  )
end

When I pry the params before sending them to my form object, I get this:
<ActionController::Parameters {"title"=>"The Terminator", "released_at"=>"1984-10-26", "runtime"=>107, "content_rating"=>"restricted", "storyline"=>"A seemingly indestructible android is sent from 2029 to 1984 to assassinate a waitress, whose unborn son will lead humanity in a war against the machines, while a soldier from that war is sent to protect her at all costs.", "budget"=>6400000} permitted: true>

The relationship attributes are ignored.
I also tried setting up the parameters like this:
def movie_params
  params.from_jsonapi.require(:movie).permit(
    :title, :released_at, :runtime, :content_rating,
    :storyline, :budget, :director_id, :genre_ids
  )
end

This time the :director_id is present, but the :genre_ids aren't.

Let's quickly mark this part as resolved.
👍

When I pry the params before sending them to my form object, I get this:

So first things first - I have added your request parameters as an example to the test suite (source). The tests are passing, so the expected outcome is what is actually translated. Here you can see what is the result of the translation (raw parameters, without .require).
So the parameters are translated.
In order to use these in your controller, you would have to require them in this way:
params.from_jsonapi.require(:movie).permit(:director_id, :genres_ids)

So instead of director: [:id] which essentially is looking for an array of ids (director: [1, 2, 3]) you just use the column name, as one-to-one relationship works: https://guides.rubyonrails.org/association_basics.html#the-belongs-to-association
Instead of genres: [:id] you should pass :genres_ids  or :genre_ids as the hash structure should only be provided if genres was an array of hashes (e.g. genres: [ { id: 1, name: ‘test’ }, … ]). However, since you are not passing any genre data into the included tree, there are no other parameters other than ids, hence its sufficient to just pass an array of these ids - by specifying the parameter as :genres_ids. Rails should handle it.
What is interesting and makes me uncertain about the genres_ids vs genre_ids is how naturally you expected it to be visible under the singular name, and I have to double check in the Rails examples on how should it be really named, because I thought its the plural version (genres_ids).

OK. After quick checking, the naming you tried to use seems to be the correct one! I will push a quick fix for my branch and then you should be set.

@cilim please let me know if https://github.com/visualitypl/jsonapi_parameters/pull/14 branch works for you, and if so, let's get this published! :)

@Marahin you said it all 🙂
And I confirm that branch #14 works perfectly. Finally, the param are set like this:
def movie_params
  params.from_jsonapi.require(:movie).permit(
    :title, :released_at, :runtime, :content_rating,
    :storyline, :budget, :director_id, genre_ids: []
  )
end

Thanks for jumping on this issue and solving it in such a short time 👏
Let me know when you release a new version!

@cilim the branch has been merged and I'm currently pushing out the new version. Thanks for reaching out!


Fix GradScaler deprecation warning

What does this PR do?
Currently, using GradScaler raises the following warning on the latest torch nightly:
# /raid/aryan/nightly-venv/lib/python3.10/site-packages/accelerate/accelerator.py:494: FutureWarning: `torch.cuda.amp.GradScaler(args...)` is deprecated. Please use `torch.amp.GradScaler('cuda', args...)` instead.

This is due to it being deprecated in https://github.com/pytorch/pytorch/pull/126527. Just a small fix with the new intended usage.
Before submitting

[ ] This PR fixes a typo or improves the docs (you can dismiss the other checks if that's the case).
[x] Did you read the contributor guideline,
Pull Request section?
[ ] Was this discussed/approved via a Github issue or the forum? Please add a link
to it if that's the case.
[ ] Did you make sure to update the documentation with your changes? Here are the
documentation guidelines, and
here are tips on formatting docstrings.
[ ] Did you write any new necessary tests?

Who can review?
Anyone in the community is free to review the PR once the tests have passed. Feel free to tag
members/contributors who may be interested in your PR.
@muellerzr @SunMarc

Superseded by https://github.com/huggingface/accelerate/pull/3132, sorry about that


openAPISpecs Does Not Accept app When Env Type is Passed

Hi @MathurAditya724 When using hono-openapi with a Hono app typed with Env, the openAPISpecs function does not accept app as an argument, resulting in an error or unexpected behavior. The Env type includes specific bindings, which may be causing this issue.
type Env = {
  Bindings: {
    MY_VAR: string;
  };
};

const app = new Hono<Env>;

app.get(
  "/openapi",
  openAPISpecs(app, {
    documentation: {
      info: {
        title: "Hono",
        version: "1.0.0",
        description: "API for greeting users",
      }
    },
  })
);

Error: Argument of type 'Hono<Env, BlankSchema, "/">' is not assignable to parameter of type 'Hono<BlankEnv, BlankSchema, "/">'

Hey 👋🏼, thanks for pointing it out. This will be resolved in the next version release.


how to change string to text layer?

How to change the value of text layer?
I have an animated text with this string 'this is test' Can I change string in 'text change'?
"assets":[{
"type": "data",
"layerName": "Text_1",
"property": "Text",
"value": "'text change'"
}],
thanks

Please, refer to the provided example:
https://github.com/inlife/nexrender#data-items

Help me please,
I have been feeling since this morning, for render no problem...
this is my project

and this the json file:
"template": {
"src": "file:///users/oncelot/test.aep",
"composition": "Instagram_4"
},
"assets":[{
"type": "data",
"layerName": "prova",
"composition":"Text_1",
"property": "Source Text",
"value": "new text"
}],

What I still haven't tested, is whether or not property name is influenced by a different language.
Try opening up all the nested elements of the layer you shown (clicking small triangles)

There should be "Source Text" property, however, it might be called differently in your language. Could you share that screenshot? And also could you try changing  "property": "Source Text", to  "property": "YOUR LANG VALUE",, maybe that would solve the issue?

I've change but does not solve the problem
"assets":[{
"type": "data",
"layerName": "prova",
"composition":"Text_prova",
"property": "Testo sorgente",
"value": "new text"
}],

resolve thanks, I've rename the layerName and now change the text...
thanks

oh, that's great 👍

In a French configuration you'll have to use
"property": "Texte.Texte source",


New Feature Virtual Machine Manager

Hi,
I think it would be great to add support for the Virtual Machine Manager API.
I have already setup this as a working concept and happy to branch and add this as a feature
I think the following features would be good for a first release, what are your thoughts?

List all Virtual Guest Names
List Virtual Guest Statuses
Power on a Guest
Power off a Guest
Shutdown a Guest

Moved to a Pull Request


BUG: on video page load and in player

Issue One:
I've noticed today that when i open a video on YouTube when it loads everything is invisible from the video, comments, and the side thumbnails until i click where the video is supposed to be and i only really know this thanks to the borders that i set up using the extension stayed and showed once i click the video location everything shows back up and i used the enable button inside the setting and turned the extension off instead of out right disabling it in extensions when it was all invisible and and it showed back up the second i turned it off but went away again once i turned it back on i even tried to reset it and use blank settings but that did not help but once you click where the vide is and things show they stay until you load a new video and now for issue two
Issue Two:
also recently the control panel in the video player will hide itself and never come back without reloading the page a few time if your lucky this one i'm not 100% sure is to blame on this extension but it did start happening around the same time as issue one
(i am on Brave Browser as far as i know latest version) any help would be awesome please and thank you for any help you're able to provide

Has it been solved yet? (Sorry for too late,Mostly I use discord to recive bug report so sorry)


1.10.2 -Farming Station doesn't detect a tinker's tool has Autosmelt

Using the Foolcraft modpack -
1 - Place a Firewood hatchet or any tool with autosmelt in a farming station.
2 - Have the farming station chop trees.

The farming station will collect logs, but not turn them into charcoal.

If this is not implemented a way around this would be to collect the logs, if extrautilz is in the pack have one placing the logs and the other using the hatchet to break it with a hopper or other collected below picking up all the charcoal, or if there is an auto smelt enchantment using the mining would work as well, and collect it for you I believe.


Crypto-Trade is shutdown temporarily

https://www.crypto-trade.com/maintenance

We are undergoing complete transformation of our company and recruiting new development and management staff which will take at least 3 months.All the unpaid user balances and CT shares are intact with us.Feel free to contact us at<EMAIL_ADDRESS>

#1016


add stratum client protocol (WIP)

This adds a client protocol factory for communicating directly with lbryum server without going through lbryum client. This can replace most of the _run_cmd_as_defer_to_thread calls in Wallet.

          1 Error

:no_entry_sign:
Please include a CHANGELOG entry.

          1 Message

:book:
See http://keepachangelog.com/en/0.3.0/ for details on good changelog guidelines

  Generated by :no_entry_sign: Danger


mapping Spark for Accept: [/]

i have added the bulb via http, the on and off button are working on the ui but once opening the hue app and creating a room i get the following error:
The requested route [/api/51eac991c7e54de7971ce1229ac660a3/scenes/1/lightstates/1] has not been mapped in Spark for Accept: [*/*]

any ideas?

Interesting, will take a look at the api setup in ha-bridge.

ok thanks @bwssytems

Same here. Room creation returns Error "cannot save"

So that method is not supported in the ha-bridge and was not intended to be. I do not emulate the full api, only what needs to be handled for alexa.

does that mean we can ignore that error message @bwssytems ?

You can ignore it as is just an informational output message.

@bwssytems i would like to ignore it but in the hue app i cant save the room due to this error

So as my previous response says, it is not implemented so the ha-bridge will not work with that hue app if you use rooms, groups or scenes.

i got the same error.
i am only using ha-bridge with alexa.
but i configured multi-room setup for alexa.
does this error mean that there are some functions not available,
or is the error still to ignore? as stated?
thanx

Rooms are not supported with ha-bridge

This has been added to the commnity information https://github.com/bwssytems/ha-bridge/wiki/Informational-Items-Collected-from-the-Community#q-mapping-spark-for-accept-


Access custom fields through data mappings?

Description

I have created a custom field for the Category entity and I want to pull that through via Data Mappings on my Category listing layout.
{{ category.customFields.field }} fails with Call to a member function get() on array within the AbstractCmsElementResolver::resolveEntityValue function.
The data is available in the entity, however as the element resolver is not able to handle arrays, it fails.
Possible Solution

I had a play around with Symfony\Component\PropertyAccess\PropertyAccess, which allows me to access it, however I imagine there is a lot more behind the current resolver that this would not cover.
Additional context

@gRoberts84 did you find any solution to make custom fields available in the data mapping dropdown?

Hi,
thx for your issue we will put it into our new evaluation process and have a look at it again.

[public] Automated response: This issue is linked to the internal issue https://shopware.atlassian.net/browse/NEXT-37965.
[created from NEXT-37965, comment 489041]


feature: Initial implementation for austin_311.311_service_requests

"Pipeline for austin_311.311_Service_Requests"
Description
v2 architecture implementation of 311_service_requests in austin, TX.  This implements the first version of the csv transform python script.
Based on #
Note: It's recommended to open an issue first for context and discussion.
Checklist
Note: Delete items below that aren't applicable to your pull request.

[ ] Please merge this PR for me once it is approved.
[ ] If this PR adds or edits a feature, I have updated the README accordingly.
[ ] If this PR adds or edits a dataset or pipeline, it was reviewed and approved by the Google Cloud Public Datasets team beforehand.
[ ] If this PR adds or edits a dataset or pipeline, I put all my code inside  datasets/<YOUR-DATASET> and nothing outside of that directory.
[ ] If this PR adds or edits a dataset or pipeline that I'm responsible for maintaining, my GitHub username is in the CONTRIBUTORS file.
[ ] This PR is appropriately labeled.

@googlebot I signed it!

@googlebot I signed it!

@googlebot I consent


when dock restarts, window shadow reappears

I have disabled window shadows but when I run killall Dock, when yabai takes control again, the window shadows are there. Running yabai --restart-service fixes it but also rebalances all windows.

yabai -m signal --add event=dock_did_restart action="yabai -m config window_shadow off"