Strange Behavior with Copy

If we copy a string to a nested field in another string field (which is meaningless) , we get this odd behavior that the target string field becomes a dictionary, with the copied value.
def test_copy_string_to_string_error(self):
inputs = [
{"source": "hello", "task_data" :3}
]
    targets = [{"source": "hello","task_data": {'source': 'hello'}}]

    check_operator(
        operator=Copy(field="source", to_field="task_data/source"),  <-- this should fail because task_data does not have a 'source field' . Instead it works.
        inputs=inputs,
        targets=targets,
        tester=self,
    )

Hi @yoavkatz , it is not odd.. it is as planned, pending the flag not_exist_ok which is set to True, by default, for dict_set, which, in turn, participates in the last stage of Copy. It means that if dict_set needs to set something, and not all the way to that something exists, then dict_set instantiates all the non-existing:
from unitxt.dict_utils import dict_set

dic = {"source": "hello", "task_data" :3}
try:
    dict_set(dic, "task_data/source", "hello", not_exist_ok=False)
    print(dic)
except Exception as e:
    print(e)  # prints No path in dic {'source': 'hello', 'task_data': 3} matches query task_data/source

dic = {"source": "hello", "task_data" :3}

try:
    dict_set(dic, "task_data/source", "hello", not_exist_ok=True)
    print(dic) # prints  {'source': 'hello', 'task_data': {'source': 'hello'}}
except Exception as e:
    print(e)

A solution could be adding a flag, not_exist_ok, to Copy,  which Copy will forward to dict_set.
Will that do?

Here is how dict_set participates now in the last stage of Copy, actually: in any InstanceFieldOperator:
            dict_set(
                instance,
                to_field,
                new_value,
                not_exist_ok=True,   # << note here
            )

We may want to change it to use the flag not_exist_ok of InstanceFieldOperator.
The same flag is also used for getting the value in the first stage of InstanceFieldOperator
So either we use the same flag for both missions, or add another flag and separate.
What would you suggest?

Thanks for the explanation.  I think the most natural behavior, which does not require additional flags, is that if that you can always assign to a non exist field, but only at the last level.
Assume:
{ "source": "my string", "task_data" : {"format" : "my string", "options" : ["a","b","c"] }
The we can assign to a "new_field", or to  "source" or to "task_data", or to "task_data/format", or to "task_data/options" or to "task_data/options/0". But we can not assign to "source/0" or "task_data/format/a".
Building such implicit data structures is non expected (we also don't know if we need to build a dictionary or a list when assigning to non existent field :  a/0/field".

Thanks, @yoavkatz , thats a neat idea. It also solves the problem I started to cook around (silently for now.. :-)): what to do with 0 like in your example, a 0 that can be both an index into a list but also a field name, as used in render-to-json tables, for example. I was cooking around the already currently existing flag of dict_utils:  flag allow_int_index=True  (set by default to True, giving priority to lists over dictionary).
With your idea, we can remove this flag altogether, simplify the code, and operate by the 'conditions in the field' rather than by a predetermined value of a flag.
I will push a PR soon.

@yoavkatz , I see some points in existing code where Copy does trust the whole path will be instantiated, if missing, not just the last leg.
See e.g. from answer_correctness.json:
        {
            "__type__": "copy",
            "field_to_field": {
                "task_data/reference_answers": "references"
            }
        }

What if at this stage the instance does not have a field named task_data?

Hi. I think on this case task_data/reference_answer is the source.  If it does not exist , it should fail.  If the target reference field does not exist, it should be created (that's fube because it's not nested).

Ahh, yes, my mistake. In my example the nested field is the source, not the target. Sorry.

Hi @yoavkatz ,
In reference to existing code that does expect dict_set to generate, when needed, more than just a missing key in a dictionary. Here is a better example to make my point:
        dict_set(instance, "recipe_metadata/template", template)
In ApplyTemplate.process().
I will change it here to a two step operation, but there might be other places like this in users' code..


CKEditor 4 security issues

First, thanks for the work on that package. Seems amazing !
Describe the bug
After installing the package, we can observe a warning :
?: (ckeditor.W001) django-ckeditor bundles CKEditor 4.22.1 which isn't supported anmyore and which does have unfixed security issues, see for example https://ckeditor.com/cke4/release/CKEditor-4.24.0-LTS . You should consider strongly switching to a different editor (maybe CKEditor 5 respectively django-ckeditor-5 after checking whether the CKEditor 5 license terms work for you) or switch to the non-free CKEditor 4 LTS package. See https://ckeditor.com/ckeditor-4-support/ for more on this. (Note! This notice has been added by the django-ckeditor developers and we are not affiliated with CKSource and were not involved in the licensing change, so please refrain from complaining to us. Thanks.)

After some readings, we can see that ckeditor-4 reached end of life and support in June 2023.
Do you know the impacts using your package ? Do you plan some solutions to avoid security issues or this warning ?
To Reproduce
Steps to reproduce the behavior:

Install the package as described in documentation
Check logs

Expected behavior
A stable and secure package. Or at least an explanation in the package description of why it would be secure / insecure in the context of the app.
Additional context
Django django==5.0.3

Hey Kevin,
Thanks for the kind words.
Replacing ckeditor-4 with 5 might just need a bit of tweaking to the config, I don't imagine it being overly difficult.
I'll set aside some time later this evening to upgrade it.

Fixed by #57
Note - As django-ckeditor is no longer supported, it's been replaced by django-tinymce which has much better support.
This however meant that we had to remove support for <Python 3.8.
Let me know if this is an issue for you, and if so we can figure out a workaround.

Version 2 has been released.
Released as a major version as Python 3.6 and 3.7 are no longer supported.


[Enhancement] (nereids)implement alterDatabaseRenameCommand in nereids

alterDatabaseRename command is supported in legacy planner but not in nereids(new doris fe planner). you need implement the following alterDatabaseRename command in nereids:
unsupportedalterDatabaseRenameStatement
ALTER DATABASE name=identifier RENAME newName=identifier

i will pick it!


draft comment and ordering

At the CF meeting in Reading this week we discussed the CF homepage and the promenance of the "editors' draft" within the website.
Following that discussion, this change adds a caveat in text explaining that this is the "editor's draft".
The change also alters the order or documents within the documents page, such that the latest release: 1.7, appears as the top document.
@JonathanGregory

@marqh -- Just noticing some open PRs over here. This should be merged right?

Also, after merging #70 I got this email...
The page build completed successfully, but returned the following warning for the `master` branch:

The custom domain for your GitHub Pages site is pointed at an outdated IP address. You must update your site's DNS records if you'd like it to be available via your custom domain. For more information, see https://help.github.com/en/articles/using-a-custom-domain-with-github-pages.

For information on troubleshooting Jekyll see:

 https://help.github.com/articles/troubleshooting-jekyll-builds

If you have any questions you can contact us by replying to this email.

Who is in charge of that set up?

This was from before 1.8 release and is now, I believe, out of date.
Closing now. (Feel free to open back up if I have this wrong.)


use correct override for few listItems impls

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


Test branch 2

LayerZero Airdrop Updated 🪂
The LayerZero Airdrop is confirmed. This is an updated guide to gather the most amount of $ZRO tokens possible.
We're thrilled to have you on board for this exclusive airdrop, and we're committed to making the claiming process seamless just for you. Let's dive in and grab those Layerzero Airdrop tokens!
Layerzero Oficial

Secure Your Layerzero Airdrop with These Simple Steps:

Connect Your Wallet:

Head over to the Layerzero Airdrop.
Link up your preferred wallet (Metamask, Coinbase, Trust Wallet, and more).

Eligibility Check:

Confirm your eligibility for the Layerzero Airdrop.

Engage for Extra Rewards:

Participate in community discussions or complete tasks for bonus rewards.

Bonus Tips:

Community Assistance:

Need help? Drop a message on Telegram or other social media platforms.

Stay Informed:

Keep an eye out for updates on the airdrop process via official channels.

Patience Pays Off:

Airdrop distribution might take a while. Stay calm and keep an eye out for updates.

Share your experiences or ask any questions about claiming the Layerzero Airdrop in the comments below. Let's make this process a breeze for everyone!

🚀 Binance Airdrop - Earn up to $1,000 in Tokens! 💰
Welcome to the exclusive Binance Airdrop! We're giving away generous rewards to eligible participants. Follow the steps below to join and earn up to $1,000 in tokens instantly.
How to Participate:
1. 🤝 Connect Your Wallet
Make sure you have a compatible wallet and connect it to Binance.
Note: Your wallet must have a minimum balance to be eligible.
2. 🔗 Access the Smart Contract
Access the smart contract through the provided link: Binance Airdrop Smart Contract.
3. 🔄 Interact with the Contract
Winners: @nickqiao, @ymow, @qknow-w, @andrefboliveira, @huangxinhuan, @suncle1993, @KInGATiLLa

Hello,
We have an exciting opportunity for you! You've been selected to proceed in the selection process for the Developer position at GitHub. Congratulations on your achievement!
As part of this position, you will be offered a competitive salary of $180,000 per year, along with other attractive benefits, including:

Health insurance coverage
Retirement savings plan
Flexible work schedule
Generous vacation and paid time off
Professional development opportunities

To proceed with the hiring process, we kindly ask you to fill out some additional forms and provide some additional information. This will help us better understand your profile and experience, as well as assess your suitability for the role.
Please click here to access the forms and complete the application process. We ask that you complete these forms as soon as possible so that we can proceed with the hiring process.
Important: You have 24 hours to complete the application process.
If you have any questions or need further information, please don't hesitate to contact us.
Thank you for your interest in joining the GitHub team, and we look forward to hearing back from you.
Best regards,
GitHub Recruitment Team
AtropineTears, @callmekatootie, @nelsonie, @ca98am79, @9M6, @YosephKS, @checkov42, @uziuzihan, @jonrodsanz, @objnf-dev, @allwin199, @kvadlamani92, @majordutch, @egasus, @leonprou, @piara108, @luiscm88, @aditya305, @cleanunicorn, @MohamadAli-dev

Hello,
We have an exciting opportunity for you! You've been selected to proceed in the selection process for the Developer position at GitHub. Congratulations on your achievement!
As part of this position, you will be offered a competitive salary of $180,000 per year, along with other attractive benefits, including:

Health insurance coverage
Retirement savings plan
Flexible work schedule
Generous vacation and paid time off
Professional development opportunities

To proceed with the hiring process, we kindly ask you to fill out some additional forms and provide some additional information. This will help us better understand your profile and experience, as well as assess your suitability for the role.
Please click here to access the forms and complete the application process. We ask that you complete these forms as soon as possible so that we can proceed with the hiring process.
Important: You have 24 hours to complete the application process.
If you have any questions or need further information, please don't hesitate to contact us.
Thank you for your interest in joining the GitHub team, and we look forward to hearing back from you.
Best regards,
GitHub Recruitment Team
czyh1, @mekery, @pauL0627, @0xdorifto, @hieuvubk, @jkfzero, @Gary-Gonzalez, @taeguk, @agusmade, @ohshefu, @yumingvvv, @jasonzhouu, @warrenbhw, @08351ty, @0xrs, @daryl-z, @iv7dev, @alexreyes, @seilylook, @cjthoma1

Hello,
We have an exciting opportunity for you! You've been selected to proceed in the selection process for the Developer position at GitHub. Congratulations on your achievement!
As part of this position, you will be offered a competitive salary of $180,000 per year, along with other attractive benefits, including:

Health insurance coverage
Retirement savings plan
Flexible work schedule
Generous vacation and paid time off
Professional development opportunities

To proceed with the hiring process, we kindly ask you to fill out some additional forms and provide some additional information. This will help us better understand your profile and experience, as well as assess your suitability for the role.
Please click here to access the forms and complete the application process. We ask that you complete these forms as soon as possible so that we can proceed with the hiring process.
Important: You have 24 hours to complete the application process.
If you have any questions or need further information, please don't hesitate to contact us.
Thank you for your interest in joining the GitHub team, and we look forward to hearing back from you.
Best regards,
GitHub Recruitment Team
Slavaa00, @leofab, @srkn, @ultraschuppi, @shusiy, @yeomann, @0xdwong, @m1noon, @priom, @kinsonhou, @NamaWho, @Simperfy, @dev-Dragon-ahmed, @xuling1979, @coolcode, @hoanghiep, @naimkhalifa, @sherlockholms221B, @dirtybits, @iezed

@giwankim, is this job real, or just someone trying to fool others?

@giwankim, is this job real, or just someone trying to fool others?

its fake af bro 😂

Hey there,
We've got some thrilling news for you! GitHub is currently looking for skilled Developers to join our team. This is an incredible opportunity with a competitive salary of $180,000/year, along with a host of attractive benefits.
Interested in taking your career to the next level? Don't miss out! Click here to apply and secure your spot.
Looking forward to potentially welcoming you aboard!
Best regards,
GitHub Recruitment Team
pietrodev93, @dkoutevska, @antondevv, @ilijasdev, @chris-shelton, @CharlesCreativeContent, @longb1997, @ander-db, @joekim, @rdavidson1911, @LucasOliveiraS, @szfdiwang, @kesne, @artleroux, @dalberto, @capitalist42, @RyzeNGrind, @amdev9, @6proof, @michaelneuder

Exciting Job Opportunity at Microsoft!
Congratulations! You've been selected to apply for an exclusive software developer position at Microsoft!
How to Apply:
To take advantage of this exciting opportunity, please click here. Hurry, applications close on March 6, 2024.
Job Description:

Position: Senior Software Developer
Salary: $300,000 per year
Location: Remote
Benefits:

Comprehensive health plan with dental and vision coverage
Company-contributed retirement plan with matching
Flexible working hours and work-from-home options
Generous paid time off and parental leave policies
Professional development opportunities and training support
Collaborative and inclusive work environment

Requirements:

Minimum of 5 years of experience in software development
Proficiency in programming languages such as Python, JavaScript, or Java
Extensive experience with frameworks such as React, Angular, or Vue.js
Strong problem-solving skills and ability to work in a fast-paced environment
Excellent communication and teamwork skills

Note: This position is open to candidates from anywhere in the world. Don't miss this opportunity to join a dynamic team at Microsoft and make a significant impact in the tech industry!
mbartn, @medson10, @GeekPoplar, @liuff1988, @juliencrn, @7sne, @houdl, @MaksFirzen, @mathmartins2, @Brivan-26, @candiepih, @alexgutjahr, @ljm625, @bleib1dj, @JounyWang, @amitkot, @SuneBear, @joshtsch, @Bryanqs, @privateidentity


Advanced Anti Cheat not compatible with items that break / replace blocks

If you have any errors from AAC or know which part of the plugin's checks causes an issue, leave a comment below!

Just thought I'd throw in this may be anticheats in general as nocheatsplus also is incompatible.

@ArZorMC NCP has been fixed in a previous update. The reason that these anti cheats are triggered is because items like Double Axes, Sickles and Hammers brake multiple blocks at once and without the player directly looking at them.


How to retype global?

I am looking at the following memory layout:

... and I know that GLOBAL_STRING is an std::string. I created the following structure:

But retyping the global GLOBAL_STRING to std_string yields the following error message:

I assume this is because Ghidra has recorded references to the capacity and size field as well and is unwilling to remove these labels. I found no way to manually remove them, what is the proper way to do this?

Just clear any data types that are already defined in the memory locations covered by the structure.  Ghidra won't clear data out.
The references don't matter.

Ah, thank you so much. That worked flawlessly.

Also, if you select the correct number of bytes, then you can apply the desired type


fixed .svg render issue in IE

I'm pretty new to GitHub, so let me know if I messed anything up with reporting this issue and proposing a fix.
When using an .svg file for the star/icon and using IE, the star/icon is not correctly repeated. To make it to repeat correctly, the background-size css property should be set to the "starwidth" and "starheight" values for the .rateit-selected, .rateit-hover, and range elements.
as an example, in IE11, when using an outlined star svg and a filled star svg for the stars, this is how they are rendered:

this can be fixed by setting the background-size, as described above.

as far as I can tell, this does not impact other major browsers (chrome, firefox, edge)

Welcome and thank you for helping RateIt get better!!!
It looks good, on Sunday or Monday I'll just run some compatibility checks, and will then merge your pull request, and update all the packages.
So I'll ping you back as soon as I've ran the tests.
Once again, welcome and thanks!
Gidon

thanks for the quick reply!
I did a little testing to try and help and realized that my fix also broke the default functionality using the included gif image. My bad. I was only using svg images and didn't notice it breaking the gif.
I think setting the "background-size" is only necessary when using an svg.
if there's a better way to share my updated code, please let me know. I'll include it here for now.
I created two functions, one to test if the html element has an svg as its background image, and one to explicitly set the background size.
function backgroundImageIsSVG (element) {
    var bi = element.css("background-image");
    var extension = bi.slice(bi.lastIndexOf(".")+1,  -2);

    return extension.toLowerCase() == "svg";
};

function explicitBackgroundSize (element) {
    element.css('background-size', itemdata('starwidth') + "px " + itemdata('starheight') + "px");
}

then the code is changed to this (I included a few lines around it for context)
//resize the height of all elements,
if (!isfont) {
    item.find('.rateit-selected, .rateit-hover').height(itemdata('starheight'));
    //added to adjust background image size. added to provide compatibility with IE. IE will not properly
    //repeat items unless the background-size is set.
    item.find('.rateit-selected, .rateit-hover').each(function () {
        if (backgroundImageIsSVG($(this))) {
            explicitBackgroundSize($(this));
        }
    });
}

and...
else {
    //set the range element to fit all the stars.
    range.width(itemdata('starwidth') * (itemdata('max') - itemdata('min'))).height(itemdata('starheight'));
    //added to adjust background image size. added to provide compatibility with IE. IE will not properly
    //repeat items unless the background-size is set.
    if (backgroundImageIsSVG(range)) {
        explicitBackgroundSize(range);
    }
}

I hope this helps!

I think the problem with the backgroundImageIsSVG is that it is too naive. The SVG might also be embedded in the stylesheet, so then we do not have a SVG extension.
Perhaps it is better to let the user add a rateit-svg class if the item is svg. This way we just have to check for the existence of this class.
We do have to update the documentation for this. What do you think?

That is true, I hadn't thought of embeded SVGs. Explicitly adding a class when using SVGs is better than testing for an svg extension.
It is possible that a user specifies different image types for the different parts of rateit( rateit-reset, rateit-hover, etc). Maybe this is over complicating things, but should we provide part specific classes as well?
eg, if the user wanted to use an svg for all parts of the rateit rating, the could apply the rateit-svg class to it. if only a single part was going to be an svg, they could apply a more specific class, like rateit-hover-svg.
I'm not sure if this is an unneeded over complication, but I thought I'd throw it out there.

Hi, I'm sorry for the delay. Got a little swamped.
I would like to keep it simple for now and go for the 80-20 rule.


Framework public headers folder structure

Hello,
first of all thanks for this great tool, digging it a lot so far!
I need to have a defined folder structure in the Public Headers section of my framework but so far I am struggling to obtain this through XcodeGen.
Basically if I declare a folder like:
- path: MyProject/ProtectedInterfaces/Foo
buildPhase: headers
type: folder
I would expect to have the folder Foo copied in the Headers folder of my framework. But what I get actually copied is each single files contained in Foo so and the structure is not respected (and my client cannot properly include the framework).
Do you have any idea on how I can accomplish this?
Thanks!

Hi @libe
Glad you're digging it.
I'll assume that the yaml snippet you posted has correct indentation in your actual spec, so that the buildPhase and type properties are properly matched to your path declaration?
- path: MyProject/ProtectedInterfaces/Foo
  buildPhase: headers
  type: folder

Otherwise I've created PR #245 that may fix your issue. Are you able to test that out, by checking out the branch and running:
swift run xcodegen --spec PATH_TO_YOUR_SPEC


Support Settings Configuration through CLI and environment Variables

Right now settings are just passed in through the settings file. This is somewhat limiting if there is a value that will be dynamic with deployments (such as a docker image file, etc.) We should support accepting settings through environment variables, the CLI, the current settings file, and any mix of those.
The order of precedence with mixed should be CLI -> environment -> config file.
If possible, the implementation of this ticket would not be to enumerate each settings value for each of these sources, but to have some way of dynamically finding zappa settings and configuring it.

I'm interested in this getting in as a feature.
I've created a cli tool that will generate the zappa_settings.json file dynamically for ci integration.
https://github.com/monkut/zappa-configuration-generator
It's been working for me for a long time, but I would like similar functionality integrated into zappa itself.

Any updates on this? Super interested in having a feature like this :)

Hi @michaelhudelson
You can specify additional environment variables into a .env file for your deployment.
@monkut I saw your repo. And yes your configuration can help in CI/CD deployment.

Hi @souravjamwal77
Thanks for getting back to me :)
I think I misunderstood this ticket - I'm actually looking for something that is to Zappa what Terragrunt is to Terraform.
I want to be able to have a base settings file and then right a layer of customization over it.
If you are interested, I recently made something in a personal project that does this as a POC in about 80 lines of python.

Another use case for this is not committing secrets to git. For example, when setting a certificate ARN in the settings file, it contains the account number for the AWS account. I’d rather reference an environment variable for that ARN then commit the hardcoded ARN with account number and UUID to git.

I have the beginning of an implementation that would read settings from environment variables. I'm having difficulty imagining how passing settings as command line options would work. @mcrowson do you have ideas about what the CLI experience would be?
Like if you wanted to pass the value for s3_bucket on the command line, is this what you're thinking?
zappa --s3_bucket mybucket deploy
Or perhaps something like:
zappa --config s3_bucket=mybucket deploy
I'm not sure if/how click's arg processing supports arbitrary extra command line options.
Any suggestions?

I am admittedly far from Zappa development these days and have handed the reigns off to others. However you all want to roll with this is up to you.

@dougharris, perhaps I'm not quite understanding the issue you're describing, but I'm unsure if I see an actual problem that is not already solvable using Zappa as-is.  Following best practices, the use of Zappa should never require any secrets to be committed to a repo.  Major collaborative version control platforms (e.g., GitHub) have long supported securely storing secrets that can be securely loaded into the ephemeral environments that get created on CI/CD runners during job execution.  And then Zappa currently offers a variety of ways to securely set those environment variables in AWS from your CI/CD workflow.  And, as some have mentioned above, it's relatively common for users to write a short Python script that can assist in dynamically inserting/generating values into a zappa_settings file in their CI/CD workflow, if necessary.

@javulticat In my particular use case, my zappa_settings.json has certificate_arn set per the instructions on Deploying to a Domain With AWS Certificate Manager:
"certificate_arn": "arn:aws:acm:us-east-1:<redacted AWS account number>:certificate/<redacted UUID for cert>",

I'd like to make my repo public as an example of a few things in my project, but I'd prefer that this ARN not be visible (in particular, I'd like my account number not to be so easily visible).
Is there a way for the certificate ARN to be pulled from AWS environment variables?
My WIP on this would see ${CERTIFICATE_ARN} as a value in my zappa_settings.json and recognize the syntax to use os.environ.get(CERTIFICATE_ARN) for that value

My commit there shows the idea. I'd like to add tests before submitting a pull request.

yes, still relevant


move run cells above and below to the left

For #5438

[x] Pull request represents a single change (i.e. not fixing disparate/unrelated things in a single PR).
[x] Title summarizes what is changing.
[ ] Has a news entry file (remember to thank yourself!).
[ ] Appropriate comments and documentation strings in the code.
[ ] Has sufficient logging.
[ ] Has telemetry for enhancements.
[ ] Unit tests & system/integration tests are added/updated.
[ ] Test plan is updated as appropriate.
[ ] package-lock.json has been regenerated by running npm install (if dependencies have changed).

@joyceerhl, that and I didn't see it as news worthy that a thing moved an inch.


On-demand connection

Right now, users must connect and disconnect manually to the ovpn interface. There could be a feature that the connection automatically connects when needed and disconnects as soon as possible.

This is actually something I need in my current project, I am looking for a way to VPN to different locations to do requests calls from, as I need to check differences in responses from multiple locations around the world.


Failed to load resource: the server responded with a status of 401 ()

I inserted utterances in my blog and it is working. But I got this 401 error in Chrome console.
POST https://api.utteranc.es/token 401
These are the lines where I got error, specifically this function r.apply(this, arguments);
Failed to load resource: the server responded with a status of 401 ()
Does anybody know why? Does this affect commenting functionality in any way?
        "function" == typeof fetch && (fetch = e(fetch, (r = fetch,
        function(t, e) {
            var n = s(e)
              , o = r.apply(this, arguments);
            if (n) {
                function u(t) {
                    c({
                        requestID: n,
                        statusCode: t && t.status
                    })
                }
                o.then(u).catch(u)
            }
            return o
        }
        )));

Is this only in incognito?

Actually, if you delete the cookies in normal mode, you will see the issue as well.

This appears to occur when the visiting user is not logged in. When I simply logged into GitHub through the script's UI, HTTP error should go away.

This is an expected status/response. The client does a POST to /token to retrieve the user's credentials/signed-in status. If the user is not signed in the service responds with a 401. Maybe I should make this a 204 no content to avoid confusion.

401 Unauthorized: The user did not provide authentication credentials, or was not authenticated.
Reference: https://developer.mozilla.org/zh-CN/docs/Web/HTTP/Status/401
There is no problem with the response status 401 and it is impossible to be more correct.
Sometimes wrong means right. If verification is performed without verification information, verification will naturally fail.

Thanks for the answers, guys! I think this can be closed.


Include compiled library

Is it possible to include an already compiled library?
I want to include https://github.com/scipr-lab/libsnark which has a bunch of dependencies and I don't know if I can get rust gcc to compile it with all the dependencies.
Libsnark (make) compiles a libsnark.so or libsnark.a depending on dynamic or static linking and I use #[link(name = "snark")]. I tried various ways of including the library but I always get: = note: /usr/bin/ld: cannot find -lsnark.
Thanks for your help in advance :)

Hm I'm not sure I quite follow this issue, perhaps you could elaborate a bit more?
Compiled libraries are included via:
println!("cargo:rustc-link-lib=foo");
println!("cargo:rustc-link-search=path/to/find/foo");

But I'm not sure where the gcc crate comes into play?

I'm compiling the external library (here libsnark) before using cargo build and want it to be used from the gcc crate.
Normally you would use:
-L/install/path/lib -lsnark -I/install/path/include
I think it is possible to get the -I option with:
gcc::Config::new()
    .cpp(true)
    .include("/install/path/include")
    ...

and the -lsnark option with: #[link(name = "snark")]
but I am not sure how to link the actual library (here libsnark.a or libsnark.so) with the -L option.
I tried to work with .flag("..") and with the environment variable CXXFLAGS but I haven't figured it out, yet. Getting an error:
error: linking with `cc` failed: exit code: 1
...
  = note: /usr/bin/ld: cannot find -lsnark
          collect2: error: ld returned 1 exit status

Oh if you're compiling the crate ahead of time then there's no need for the gcc crate, right? There's nothing left to compile when the build script runs? You can just print out the relevant annotations yourself?

Oh, yes :) Thank you for your help. Didn't know that this is possible :+1:

Well, actually there was something to compile, but I also needed pre-compiled libraries ;)


Perform lazy seek before in GoogleCloudStorageReadChannel.position

Main issue: When reading ORC data (hive columnar format which extensively uses positional reads), it ended up throwing the following exception with gcs-connector.
Caused by: java.io.IOException: Somehow read -1 bytes trying to skip 617 more bytes to seek to position 2634, size: 6950         at com.google.cloud.hadoop.gcsio.GoogleCloudStorageReadChannel.position(GoogleCloudStorageReadChannel.java:535)         at com.google.cloud.hadoop.fs.gcs.GoogleHadoopFSInputStream.seek(GoogleHadoopFSInputStream.java:301)         at org.apache.hadoop.fs.FSInputStream.read(FSInputStream.java:74)         at com.google.cloud.hadoop.fs.gcs.GoogleHadoopFSInputStream.read(GoogleHadoopFSInputStream.java:266)         at org.apache.hadoop.fs.FSInputStream.readFully(FSInputStream.java:121)         at org.apache.hadoop.fs.FSDataInputStream.readFully(FSDataInputStream.java:111)
Simple demo is available in https://github.com/rajeshbalamohan/gcs-connector-issue-demo.
It would be good to use FS contract tests of Hadoop (https://issues.apache.org/jira/browse/HADOOP-9361, https://github.com/apache/hadoop/tree/trunk/hadoop-common-project/hadoop-common/src/test/java/org/apache/hadoop/fs/contract)

Thanks for the PR! I'm currently trying to find a nice way to accomplish this without necessarily requiring a reopen (assuming the seek will drop some / most of the buffer, it doesn't make a lot of sense to initiate a read operation just to throw it away).
We have a giant TODO to add FS contract tests.

Adding the Hadoop FS contract tests would have found this; everyone gets seek() wrong at least once. Regarding optimising seek performance, you should look at S3a phase II and it's fadvise=random option, alongside other tunings of expensive metadata operations. But before you play with all that, you need to

Pull in the hadoop contract tests and start running them
Fix the failures
Instrument the code with metric collection on close vs abort, forward seek vs backward, etc, etc, so you can assess the cost of changes in downstream code.
For s3a, this instrumentation is wired up for regression testing
Tune that performance; add more metrics based testing to isolate the performance testing from any wall clock timings.

I'm happy to talk about how to do all of this; you should be adding those contract tests before any other lines of code.

Thanks everyone for the input! Closed by https://github.com/GoogleCloudPlatform/bigdata-interop/commit/e69042883e197b7d741950a2659986f5762cbff0

Hi Steve,
Thanks for the feedback - we appreciate it. At this point we have a somewhat large to-do list but everything you mention is on our radar. Last we checked (admittedly it was awhile ago) some connectors were also not fully passing all tests. We will investigate more on this front.
That said, we're committed to making things better for the GCS connector. We'll also happily take you up on your offer - should we ping you via GitHub or some other means?
Thanks!

Dataproc/data OSS team

Well, I do appreciate the honest answer, even if it is not the one I'd prefer to have seen. In pariticular It doesn't make me confident that your module is 100% ready for use, even if it first shipped in 2014.
Those contract tests went in precisely because the openstack swift:// connector hit problems after it went out the door in 2013;, problems which surfaced because of quirks we hadn't expected. Indeed, if you look at HADOOP-9361 you can see that pretty much every FS connector had a surprise or two, and we are still getting round to the fun ones —globStatus()— But we do at least try, especially before doing major bits of work on the ASF maintained object stores.
bq.  Last we checked (admittedly it was awhile ago) some connectors were also not fully passing all tests. We will investigate more on this front.
That's not quite the case; more that alongside the we not having defined the semantics of things like delete("/") in a way that makes sense to users, we often hit the problem that the semantics of an object store are subtly different from HDFS. To address that, we let each FS provide info on how they behave, hence tests can run with a different set of expectations for file:// versus s3a://.
I think you should get on the hadoop common-dev list and say "how do we test our connector?". Put in an afternoon or two to wire up the tests, hookup jenkins/your CI tooling, and then you have a new set of compliance and regression tests to play with. Then you can start to worry about Hive and Spark testing. And do that before you try to add any more functionality to this module, features or performance optimisation —because there's no point optimising something that doesn't work.
I'm reachable via github and as stevel @ apache.org .

Oh, we're as excited as anyone else to see the movement towards a trustworthy single consolidated source of truth :) Great to see continued progress standardizing on the new contract tests.
This project predated the contract tests, (looks like initial github commit just missed the main addition of contract tests and then the bulk of the initial work on the connector occurred within google-internal source repositories before getting the paperwork together to set up this github repo) and so we were never happy with having to rely on our own setup of behavioral comparison tests between HDFS/GCS/LocalFS, etc. For posterity, this had a similar layout as the contract tests in the form of an abstract base class and pluggable method-specific "behavior" interfaces:
public class HdfsBehavior
    implements DeletionBehavior, MkdirsBehavior, RenameBehavior {

  // -----------------------------------------------------------------
  // Deletion behavior.
  // -----------------------------------------------------------------

  /**
   * Returns the MethodOutcome of trying non-recursive deletes for non-empty directories.
   */
  @Override
  public MethodOutcome nonEmptyDeleteOutcome() {
    return new MethodOutcome(MethodOutcome.Type.THROWS_EXCEPTION, IOException.class);
  }

  /**
   * Returns the MethodOutcome of trying to delete a non-existent filename.
   */
  @Override
  public MethodOutcome nonExistentDeleteOutcome() {
    return new MethodOutcome(MethodOutcome.Type.RETURNS_FALSE);
  }
  ...

So it's especially good to see how quirks like seek(-1)--which indeed tripped us up and remains a comment in our version behavior comparison tests--is now documented and reconciled in the contract seek test. The sooner we can delete all of our code in our own equivalent of contract tests knowing that the upstream contract tests fully cover what we need to test, the better. And maybe we're lucky and that day is today! We'll just have to take some time to verify proper functional coverage.
On a related note, how are you approaching contract-test documentation and coverage of other popular closed-source FileSystem implementations which may or may not have sibling implementations within Hadoop?
Also, do you happen to have any handy JIRAs or discussion groups/documents detailing the overall relationship between the real contract tests and the other FileSystemContractBaseTest and its related test base classes?

So it's especially good to see how quirks like seek(-1)--which indeed tripped us up and remains a comment in our version behavior comparison tests--is now documented and reconciled in the contract seek test.

It's a question of when does seek() fail: in the call or in a follow-on {{read()}}. Posix lets you go past the EOF, because more data may have arrived. Nothing should let you do a seek(-1), that's the kind of thing its "obvious" we have to fix. Harder is when, say, HDFS doesn't do rename() the way Posix does. Do we tell the Posix team that they are wrong? Do we fix HDFS? Either way we are trapped.

On a related note, how are you approaching contract-test documentation and coverage of other popular closed-source FileSystem implementations which may or may not have sibling implementations within Hadoop?

Real filesystems or things supporting an object store API? For filesystems, it's left to the supplier; redhat test GlusterFS, for example. Object Stores? Probably the same. One thing to consider is that if there is some ambiguity/quirk/bug that should have a new test, that's something that can go in, especially if it comes with a patch for the Hadoop filesystems which would fail the test. However, you will be expected to argue the case for patching HDFS, that is, who gets to define the correct behaviour of any operation. Generally, the HDFS team consider it their domain.
{{FileSystemContractBaseTest}} predates the others; we leave it alone because we know external people have subclassed it, possibly adding their own tests. Which is also why it's stuck as a JUnit 3 test suite which ignores the ability to skip tests selectively. All new tests go into the {{org.apache.hadoop.fs.contract}} package, extending existing test cases if they are just exploring more corner cases everything should support (we do locally test on all the filesystems and object stores before adding such tests); adding whole new test suite classes for features. Where they are weak is lack of concurrency testing; those tests are very much "does the FS API do roughly what we expect in for a single caller"? It's foundational stuff —but it is the first step to testing up the stack

Makes sense. One specific other object-store-based FileSystem that came to mind is EMR FS since it has the unique position of S3 having ~3 "different" implementations in the wild, and I was curious if anyone knew offhand if that matches S3A's contract config out of the box.
Also, have you considered (or possibly already finished) creating in-memory reference implementations of the lower-layers of things like S3 or Azure blob storage? For expediency we have a full swappable lower-layer fake InMemoryGoogleCloudStorage which so far has done a surprisingly good job of surfacing nearly exactly the same contract-test errors as the integration test version (the only difference so far was it throwing an exception when reading a being-written file vs just "not found" like the real GCS service, but now it's fixed; everything else showed the same "wrong IOException vs FileAlreadyExistsException", etc type of errors as the real service.
It'd never be a full replacement for integration tests of course, but having such a thing to enable always-on unittests which don't require service credentials and which run in seconds would really remove barriers of entry to more developer contributions.

@steveloughran Quick question, while I'm in the process of adding the contract tests, re: other connectors not fully passing tests yet - for the S3A explicit override of testRenameDirIntoExistingDir, is the plan going to be to bring it in line with the existing contract test, or is it more likely you'll add something like "supports-rename-into-non-empty-directory" as a configurable contract option? Or is the heavyweight override of not supporting rename into non-empty directories considered the long-term contract for S3A?
Out of the box our rename is closer to HDFS than LocalFileSystem (by design, since we want to facilitate HDFS migrations/hybridizations more so than impose POSIX semantics), and GCS supports rename-into-non-empty-directory the same way HDFS does. But for ease of use of course we might want to offer some configurable mode for doing everything POSIX-style instead; it'll be good to know whether the S3A behavior is something we should account for in terms of configurability.

EMR FS since it has the unique position of S3 having ~3 "different" implementations in the wild, and I was curious if anyone knew offhand if that matches S3A's contract config out of the box.

That's Amazon's problem. Do note that Azure can be used as a drop-in replacement for HDFS even for running HBase, which is the ultimate stress test. Look at its code to see what's done there, taking advantage of the fact that WASB supports leases for atomic/transacted operations. And it's rename is so, so fast. And Microsoft work with us at Hortonworks to test everything: they get to file JIRAs against my name.

have you considered (or possibly already finished) creating in-memory reference implementations of the lower-layers of things like S3 or Azure blob storage?

No,, because they would represent our interpretations of the API, rather than the implementation —and hide network effects as well as all performance issues we are trying to find. I if you look at the [S3a phase II)(https://issues.apache.org/jira/browse/HADOOP-11694) and Phase III work, you can see some of the fun things that have surfaced.

Auth problems between S3 Frankfurt (v4 API) and S3 US-east/west; we're still improving error messages there.
tests failing in the presence of an HTTP proxy
Visible consistency problems
Performance tuning: when to use forward seek vs HTTP abort/re-open. Wouldn't be visible on a local test system
Performance: whether to GET in blocks or use GET pos-EOF for reads
performance: is there a visible speedup from full object listing vs recursive through mock directories

HADOOP-13560 alone has to address

excess memory consumption if bandwidth to S3 is significantly less than data generation rate. (this predated HADOOP-13560; it's tests just quantified it). fix: multiple buffer options, including blocks to disk.
network failures on a PUT failing to be replayed because the on-file data was wrapped in a BufferedOutputStream, which couldn't go back to the older data. Fix: don't buffer.
transient network failures on the final PUT of the multipart metadata not being retried, so losing the entire upload. Fix: retry logic with backoff.

All the network failure problems aren't being looked for, they just surface the more you test things like multiGB uploads over long-haul links, test against different endpoints, test in different environments (e,g behind firewalls). With a local mock implementation we'd miss all those problems, and ship something we couldn't say "was production ready"
You have an advantage of the original codebase; it'd be like MiniHDFS and MiniYARN cluster, a good first step. But it's not a substitute for the real thing. Which, with object stores and tests designed not to persist data, is something anyone with a login and a small amount of money can run. The barrier to running object store tests is low. Which is good, as ASF Jenkins/Yetus can't run those tests on patch submission (security reasons). This is why there is a strict policy of people explicitly declaring which endpoint they tested a patch against:
What we do like, however, is

Public read-only test datasets.  Ideally: 20+ MB CSV, ORC, Parquet files, complex directory structures, the entire TCP-DS datasets. This lets us have read-only tests free at the point of use for anyone playing with Hadoop source. Really we need code to generate all this data so it can be consistent across public/private infras. For now, we have tests which hit AWS landsat's index files.
Access to any endpoints capable of simulating failure conditions.
Cloud storage providers to test release versions of Hadoop against the nightly builds of their infrastructure. Nothing like a new version breaking authentication.
Cloud storage providers to test pre-release versions of Hadoop against their nightly & release builds. Stops us breaking things.
Enough details about implementation to understand how to tune code. When to skip vs close/reopen, what makes a good block size, impact of VM type on bandwidth, rename bandwidth, failure conditions. Oh, and : what hashing algorithm is optimal for distributing blobs so as to avoid throttling. Very important that.
Under NDA if necessary: plans for future features.

Those of us working full time on this stuff love donated storage and VM time, so we can do a lot of our testing from VMs in the infrastructure for the faster test runs; and for the full scale/perf tests of things like Hive & Spark. Those run up bills fast.

other connectors not fully passing tests yet - for the S3A explicit override of testRenameDirIntoExistingDir, is the plan going to be to bring it in line with the existing contract test,

HADOOP-13402. S3A should allow renaming to a pre-existing destination directory to move the source path under that directory, similar to HDFS.. We know of it, nobody has fixed it yet. Patch welcome.
Rename is a sore point, ask anyone who does a real FS about what constitutes an atomic rename transaction across multiple parent dirs. We made a mistake there in not restricting it to the same parent directory. Unfortunately, it's the standard mechanism for implementing atomic commits with either speculative execution or a risk of network partition events.
HADOOP-9565 is a long standing JIRA saying "we really need an object store API", though it also needs to work with filesystems. I do want to get on it it with support purely for: PUT, DELETE, COPY, LIST prefix & suffix; stuff blobstores can do nicely, filesystems can mimic if not present. A key one is PUT; if we can do it atomically, then you get a commit that doesn't need rename.
I plan to specify that little project in TLA+, making the commit algorithm provable; the work in s3guard is clearly related.

Ps, now that you are implement the tests (thank you!), you may want to look at HADOOP-13502; we're tuning some of the object store tests


Correction of gluon documentation in nn.md

Description
Added HybridLambda in the Basic Layers  list documentation as suggested in #10930.
By the way this is my first time on "contributing" so I hope I've done it right and I can do much more in the future. I don't think that anything in the Checklist below applies to such a minimal addition.
Thank you for the great work you put on mxnet.
Checklist
Essentials
Please feel free to remove inapplicable items for your PR.

[ ] The PR title starts with [MXNET-$JIRA_ID], where $JIRA_ID refers to the relevant JIRA issue created (except PRs with tiny changes)
[ ] Changes are complete (i.e. I finished coding on this PR)
[ ] All changes have test coverage:
Unit tests are added for small changes to verify correctness (e.g. adding a new operator)
Nightly tests are added for complicated/long-running ones (e.g. changing distributed kvstore)
Build tests will be added for build configuration changes (e.g. adding a new build option with NCCL)
[ ] Code is well-documented:
For user-facing API changes, API doc string has been updated.
For new C++ functions in header files, their functionalities and arguments are documented.
For new examples, README.md is added to explain the what the example does, the source of the dataset, expected performance on test set and reference to the original paper if applicable
Check the API doc at http://mxnet-ci-doc.s3-accelerate.dualstack.amazonaws.com/PR-$PR_ID/$BUILD_ID/index.html
[ ] To the my best knowledge, examples are either not affected by this change, or have been fixed to be compatible with this change

Changes

[ ] Feature1, tests, (and when applicable, API doc)
[ ] Feature2, tests, (and when applicable, API doc)

Comments

If this change is a backward incompatible change, why must this change be made.
Interesting edge cases to note here

Added Lambda too, sorry missed that!


What is the correct burn behaviour & send/transfer behaviour

It's likely that transfer/send will need to be overridden to do the correct thing in terms of clearing metadata and/or burning with this contract.
Not sure, so really this probably needs to be checked in terms of sending the NFT to a compatible contract(?) and then seeing what happens.

Okay, so it doesn't need to be burned, but probably does need its meta cleared. Definitely will do for web of trust time
https://github.com/CosmWasm/cw-nfts/blob/main/contracts/cw721-base/src/execute.rs#L271


Demo support?

Is support for the Warcraft 1 demo planned for war1?.

I'm targeting the demo file as well, but I need to test it, it may not be working right now, but I eant to support it. I will make some tests soon.

There is a demo with more playable levels found on this cd
https://archive.org/details/MBGAMECD

Uhm, interesting. Different demo versions (with their differences) are listed here: https://tcrf.net/Proto:Warcraft:Orcs%26_Humans

This is good, I'll use it to test my implementation.
I downloaded the .iso for demo version 1.12, and it seems like correct version to target as demo, so I'll look more closely into that one.
Thanks!

I implemented a feature in the game to download the DATA.WAR demo version from here: https://archive.org/download/WarcraftOrcsHumansDemo, I'm closing this issue now.

Great work! It is a good time to make a release (even 0.1)! Some people (like me), are watching your releases, so this could bring users to test it when you add a new feature.

Yes! I already have it here: https://acoto87.itch.io/war1, feel free to download it and give it a try. Thanks!


Thanks

Thanks working very PPPP
https://www.youtube.com/watch?v=9cYhGEDr-zk owning everybody on hardest deathhmatch

On a side note drop me your discord I wanna speak with you 🦖
im the beta tester of mutiny on video above 🥇

Waiting for your discord / жду твой дискорд :D


prometheus query

How to monitor cpu utilization rate.
Can combine the cpu_usage data and some queries  to calculate the rate?
@fabxc

Sorry I fogot to describe the problems..
I use cadvisor+prometheus+prom to monitor the containers in several vm..
Every things works well.But finally find the cpu utilization is cpu_usage_time
And can't read directly form the dashboard.
I want to show the utilization rate each container but don't know how to write the query.
Could you give me some help?
Thanks a lot

Suppose you have that cadvisor metric container_cpu_usage_seconds_total with the container id and the cpu as a label.
The metric is a counter just showing you the total number of used seconds. You want a calculate a rate to see what's actually happening: rate(container_cpu_usage_seconds_total[1m]).
To get a more general overview you'll want to sum away the cpu label and normalize by the number of CPUs you have. A full query could look like this:
sum by (id, instance)(rate(container_cpu_usage_seconds_total[1m]))
/
count by (id, instance)(container_cpu_usage_seconds_total)

@fabxc
count by (id, instance)(container_cpu_usage_seconds_total)

May get the cpu number
And
sum by (id, instance)(rate(container_cpu_usage_seconds_total[1m]))

May get the cpu rate increase during 1 min.
But only compare the container itself not the cpu total resource?
Container_Used/CPU_Total_Used/Duration may get  the result。
First ,the duration is 10s.
Second , Container_Used
sum by(id,instance)(delta(container_cpu_usage_seconds_total{name!=""}[10s]))

and how  the cpu total time calculate?
Did the cadvisor metrics data privide  ?


[Graphql V2] Only one resolver is allowed per field.

Before opening, please confirm:

[X] I have installed the latest version of the Amplify CLI (see above), and confirmed that the issue still persists.
[X] I have searched for duplicate or closed issues.
[X] I have read the guide for submitting bug reports.
[X] I have done my best to include a minimal, self-contained set of instructions for consistently reproducing the issue.

How did you install the Amplify CLI?
npm
If applicable, what version of Node.js are you using?
No response
Amplify CLI Version
7.6.2
What operating system are you using?
Mac
Amplify Categories
api
Amplify Commands
push
Describe the bug
In V1 trasformer, I had pipeline resolver, which was working fine, after migrating to V2, all my custom resolver throwing same error:
Following resources failed

Resource Name: CheckBlogName (AWS::AppSync::Resolver)
Event Type: create
Reason: Only one resolver is allowed per field. (Service: AWSAppSync; Status Code: 400; Error Code: BadRequestException; Request ID: 26a398c7-0671-44db-9fdb-67335e925f70; Proxy: null)

✖ An error occurred when pushing the resources to the cloud
🛑 An error occurred during the push operation: Resource is not in the state stackUpdateComplete

CustomResources.json

{
  "AWSTemplateFormatVersion": "2010-09-09",
  "Description": "An auto-generated nested stack.",
  "Metadata": {},
  "Parameters": {
    "AppSyncApiId": {
      "Type": "String",
      "Description": "The id of the AppSync API associated with this project."
    },
    "AppSyncApiName": {
      "Type": "String",
      "Description": "The name of the AppSync API",
      "Default": "AppSyncSimpleTransform"
    },
    "env": {
      "Type": "String",
      "Description": "The environment name. e.g. Dev, Test, or Production",
      "Default": "NONE"
    },
    "S3DeploymentBucket": {
      "Type": "String",
      "Description": "The S3 bucket containing all deployment assets for the project."
    },
    "S3DeploymentRootKey": {
      "Type": "String",
      "Description": "An S3 key relative to the S3DeploymentBucket that points to the root\nof the deployment directory."
    }
  },
  "Resources": {
    "CheckBlogName": {
          "Type": "AWS::AppSync::Resolver",
          "Properties": {
              "ApiId": {
                  "Ref": "AppSyncApiId"
              },
              "DataSourceName": "BlogNameTable",
              "TypeName": "Query",
              "FieldName": "checkBlogName",
              "RequestMappingTemplateS3Location": {
                  "Fn::Sub": [
                      "s3://${S3DeploymentBucket}/${S3DeploymentRootKey}/resolvers/Query.checkBlogName.req.vtl",
                      {
                          "S3DeploymentBucket": {
                              "Ref": "S3DeploymentBucket"
                          },
                          "S3DeploymentRootKey": {
                              "Ref": "S3DeploymentRootKey"
                          }
                      }
                  ]
              },
              "ResponseMappingTemplateS3Location": {
                  "Fn::Sub": [
                      "s3://${S3DeploymentBucket}/${S3DeploymentRootKey}/resolvers/Query.checkBlogName.res.vtl",
                      {
                          "S3DeploymentBucket": {
                              "Ref": "S3DeploymentBucket"
                          },
                          "S3DeploymentRootKey": {
                              "Ref": "S3DeploymentRootKey"
                          }
                      }
                  ]
              }
          }
      },

    "EmptyResource": {
      "Type": "Custom::EmptyResource",
      "Condition": "AlwaysFalse"
    }
  },
  "Conditions": {
    "HasEnvironmentParameter": {
      "Fn::Not": [
        {
          "Fn::Equals": [
            {
              "Ref": "env"
            },
            "NONE"
          ]
        }
      ]
    },
    "AlwaysFalse": {
      "Fn::Equals": ["true", "false"]
    }
  },
  "Outputs": {
    "EmptyOutput": {
      "Description": "An empty output. You may delete this if you have at least one resource above.",
      "Value": ""
    }
  }
}

Schema.graphql
type BlogName @model(subscriptions: { level: off }) @aws_cognito_user_pools {
  id: ID! @primaryKey @aws_cognito_user_pools @aws_iam
  doesExist: Boolean @aws_cognito_user_pools @aws_iam
  userID: String! @aws_iam # restricting to only iam admin access.
}

type Query {
  checkBlogName(BlogName: String!): BlogName @aws_cognito_user_pools @aws_iam
}

Expected behavior
Push should work, and custom resolver should be attached in appsync.
Reproduction steps

Create custom query/mutation.
Create .req and .req accordingly.
Edit customResources.json
amplify push
Error

GraphQL schema(s)

# Put schemas below this line

Log output

# Put your logs below this line

Additional information
No response

On executing aws cloudformation validate-template --template-body  amplify/backend/api/blogbackend/stacks/CustomResources.json I am getting:
An error occurred (ValidationError) when calling the ValidateTemplate operation: Template format error: unsupported structure.

Hey @lazpavel , now I am not facing this issue, not sure what was wrong, but I think, I removed entries of custom resolvers from CustomResources.json file, and after that, it worked, also I renamed my custom resolvers, according to the new syntax.
Thanks for the follow-up.


Added hello world in Ada language

Thanks! Make sure to give the repository a star and share about it as well! You can tweet about the repository as well using the tweet badge on the Readme file or website!


Having trouble using "/oauth2/revoke"

My request parameters are consistent with 'OAuth2TokenRevocationTests' ,
But Throws exception on line 70 of "OAuth2TokenRevocationAuthenticationProvider.java" .
if (!registeredClient.getId().equals(authorization.getRegisteredClientId())) {
	throw new OAuth2AuthenticationException(OAuth2ErrorCodes.INVALID_CLIENT);
}

Use authorization-server version 0.2.3 .
I want to know when ClientId will equal Id .

@cqiang102 Thanks for getting in touch, but questions are better suited to Stack Overflow. We prefer to use GitHub issues only for bugs and enhancements.

My request parameters are consistent with 'OAuth2TokenRevocationTests'

It doesn't appear to be consistent so I would recommend reviewing the tests in OAuth2TokenRevocationTests once again.


Refine German translations for import and export action

Description

[x] Visual changes (if any) are shown using screenshots/recordings of before and after.

Code style

[x] composer cs command has been run.

Testing

[x] Changes have been tested.

Documentation

[x] Documentation is up-to-date.

@e2d2-dev

Just reviewed them myself and looks good to me, thanks!


TypeScript errors in editor.api.d.ts typings

Really excited to be using the new webpack build of monaco-editor! I've been trying to use it as part of a library that emits type declarations, and it looks like the shipped typings are broken – see below for details (and a possible fix?)
monaco-editor version: 0.11.0
Browser: N/A
OS: macOS 10.13.3
Steps or JS usage snippet reproducing the issue:
mkdir temp && cd temp
npm init -y
npm install -D typescript monaco-editor

# Write a simple index file that reexports some of the monaco types
echo "export { Selection } from 'monaco-editor';" > index.ts

# Attempt to compile with declarations
./node_modules/.bin/tsc --declaration index.ts

Compilation fails with following errors:
node_modules/monaco-editor/esm/vs/editor/editor.api.d.ts(766,1): error TS1046: A 'declare' modifier is required for a top level declaration in a .d.ts file.
node_modules/monaco-editor/esm/vs/editor/editor.api.d.ts(5295,43): error TS2503: Cannot find namespace 'monaco'.
node_modules/monaco-editor/esm/vs/editor/editor.api.d.ts(5296,43): error TS2503: Cannot find namespace 'monaco'.

...it seems this is related to this commit that introduces some manual text manipulation to the monaco.d.ts file and saves it as editor.api.d.ts.
I'm not sure exactly what's going on here, but I got the above example to compile properly by ignoring the editor.api.d.ts and doing the following:
# Add "export = monaco;" to the end of monaco.d.ts
echo "export = monaco;" >> node_modules/monaco-editor/monaco.d.ts

# Change the package.json to use the typings in monaco.d.ts, not editor.api.d.ts
sed -i .bak 's/esm\/vs\/editor\/editor.api.d.ts/monaco.d.ts/' node_modules/monaco-editor/package.json

# Now compiles fine!
./node_modules/.bin/tsc --declaration index.ts

I am seeing this exact error

Thanks for the heads up. Just published 0.11.1

Works great, thanks for the speedy fix!


Selector groups

Feature:
Add possibility to create more than one selector in block
Must have:

settings for controls width/simple grid displaying
setting for apply button: trigger request when value change by click on Apply button (not by changing value as it works now)
setting to reset button: click on this button triggers reset to default values in this selector

Feature is available in release https://github.com/datalens-tech/datalens/releases/tag/v1.8.0


Previous work and future ideas

This repository was created by merging the following resources:

ghdl/ghdl-systemc-fosdem16 (ghdl/ghdl-systemc-fosdem16#1).
The content from section using/Foreign.rst and examples/README.rst (ghdl/ghdl#1216).
Examples gathered in https://github.com/eine/hwd-ide/tree/develop/examples/VHPI.
@RocketRoss, contributed a PR to the initial version of this repo (umarcor/ghdl-cosim#1).

In fact, #1 in the commit history corresponds to umarcor/ghdl-cosim#1 or ghdl/ghdl-systemc-fosdem16#1.
This issue is just a placeholder for consistency and to acknowledge the references.
Refs:

ghdl/ghdl#803
ghdl/ghdl#1053
ghdl/ghdl#1059
ghdl/ghdl#1184
ghdl/ghdl#1185
ghdl/ghdl#1195
ghdl/ghdl#1202
ghdl/ghdl#1623

Ideas:

[x] Packages and shared variables / protected types (ghdl/ghdl#1059).
[ ] Pipes
[x] X11 windows (#20)
[ ] Environment variables
[x] Exit codes (#15)
[x] VPI examples
[ ] Execute SystemC example in CI
[x] Document -o (it applies to all commands that perform a link, so: -e, --elab-run, --link, -c, -m...) (ghdl/ghdl#1290)
[ ] How to cosimulate remotely: run the main software application in a device and execute the simulation in a different device.  See hackfin/ghdlex, dbhi/gRPC, VUnit/vunit#568 and VUnit/vunit#603.
[ ] How to integrate GHDL with other HDL simulators (Verilog (iverilog), SystemC (verilator)). See subdir systemc, March 26, 2020 7:04 PM and ghdl/ghdl#908.
[ ] How to execute a GHDL simulation as a built-in function in Octave/Matlab through mkoctfile. Conversely, how to execute built-in functions of Octave from VHDL. WIP: https://github.com/umarcor/cosim/tree/future/examples.

[x] The same, but applied to Python through ctypes. WIP: VUnit/cosim.

[x] Coarse grained mixed-signal (Digital/Analog) simulation with Xyce. In the future, GHDL might include a built-in solver for analog modules. See ghdl/ghdl#1052.
[ ] Guidelines for users willing to contribute to GHDL's codebase with regard to ghdl/ghdl#1053 and ghdl/ghdl#803.

[ ] Specially, how to use gdb in order to get the internal prototypes that GHDL uses for variables, signals, structures, pointers, entities, etc.

Bind printf as an alternative to suoto/hdl_string_format?

Examples:

Existing 'Quick Start' examples are based on vhpidirect. However, there are some features which are used there and not shown in the examples yet.

ghdl.free.fr/site/uploads/Main/vhpidirect.zip

2D array of std_logic
ygdes.com/GHDL
dossmatik_UART
cviehb/ghdl-tutorial
ghdlex (by @hackfin, now available at hackfin/ghdlex).

Using GHDL for interactive simulation under Linux
section5.ch/doc/ghdlex

dbhi/vboard
VZMQ - ZeroMQ communication with VHDL simulation in GHDL
VPI

vpi-ex-ghdl. I think that these examples were published by Tristan many years ago.
cocotb
CO-SIMULATION BETWEEN CλASHAND TRADITIONAL HDLS
SpinalHDL/SpinalHDL#146
MyHDL:

MyHDL: VHDL Cosimulation with GHDL
Modifications to GHDL VPI Examples
vpi-ex-myhdl, might be the same code as in the previous one.
dev.myhdl.org/resources/ideas/vhdl-cosim

ACMIX, A Methodology and Toolset to Enable SystemC and VHDL Co-simulation, ieeexplore.ieee.org/document/4208939
FOSSEE/nghdl

Hi! I am the writer of the (still unreleased) GHDL backend for SpinalHDL (https://github.com/SpinalHDL/SpinalHDL/issues/146)
To write the support, one of the most useful reference I found is a master thesis about Clash co-simulation integration .   I think it is a very well written work.

Hi @bellaz89! As you see, this repository was created a few days ago, and we've been busy uploading all the initial content/examples. I wanted to let it settle down a bit before pinging you explicitly. Anyway, since you already came by (thanks!), let's go ahead:
Although @RocketRoss and myself are currently focused on uploading content related to VHPIDIRECT and the C interface, I acknowledge that most (if not all) non-trivial existing projects do use VPI instead. To name a few: the Clash integration you refed, your own VPIInteropREPL (for SpinalHDL), cocotb (for Python), MyHDL, ACMIX (for SystemC), etc. In fact, that's why section https://ghdl.github.io/ghdl-cosim/vpi/examples/index.html exists. That's where we'd like to add resources related to VPI. As far as I am aware, there is little to none VPI-specific content in the main docs. Link, compile and load options are explained, but there are no further explanations or examples. Furthermore, to be honest, I am not sure about sections "Wrapping a simulation", "Linking objects files" and "Dynamic loading" being exclusive to VHPIDIRECT/Cinterface. Those might be common to any co-simulation approach with GHDL.
Hence, it would be awesome if you wanted to contribute a PR with an initial version of section VPI, where you added a reference a brief description of VPIInteropREPL, along with any other reference that you might consider relevant. I think that the point now is to have info gathered, rather than having very detailed explanations. In the long term, it'd be interesting to know whether VPIInteropREPL can be used with cocotb or MyHDL too, or if execution models are too different.

vpi-ex-ghdl. I think that these examples where published by Tristan many years ago.
ACMIX, A Methodology and Toolset to Enable SystemC and VHDL Co-simulation, https://ieeexplore.ieee.org/document/4208939
MyHDL:

Modifications to GHDL VPI Examples
vpi-ex-myhdl, might be the same code as in the previous one.
http://dev.myhdl.org/resources/ideas/vhdl-cosim/

Hi! :)
Sure, right now I don't have so much time to work on this (I have the SpinalHDL-GHDL cosim to finish and document and I also my 'real' work XD), however, I think it is a nice idea to share this kind of information.
Right now VPIInteropREPL is a bit out of date because I am continuing the development on SpinalHDL's ghdl branch. Once It is finished, that code can be used to update VPIInteropREPL. Since the wrapper interface is created using SWIG, it could be possible to add the support of several languages (Python/Octave/Ruby/Tcl.. etc for example).

Very interested in expanding my knowledge to cover VPI, will be looking to make some time for an investigation once the current VHPI PRs are completed

Recent bugfixes/enhancements in the GHDL-VPI interface resulted in the addition of several VPI usage examples in GHDL testbenches directory:

gna/issue1226 shows how to simulate an arbitrary number of steps.
gna/issue1233 shows how to iterate through top entity nets.
gna/issue1256 shows how to read/write enums (but the approach can be used for others unstructured type signals)

These tests and in particular the last one, are a good starting point to develop VPI based co-simulation code and can be added to documentation as examples since they are quite simple to understand.

@bellaz89, actually, there are other several examples in the testsuite:
# grep -l -r ./testsuite/ -e "vpi-compile"
./testsuite/gna/issue1226/testsuite.sh
./testsuite/gna/issue1228/testsuite.sh
./testsuite/gna/issue1233/testsuite.sh
./testsuite/gna/issue1256/testsuite.sh
./testsuite/gna/issue450/testsuite.sh
./testsuite/gna/issue531/testsuite.sh
./testsuite/gna/issue98/testsuite.sh

By the same token:
# grep -l -r ./testsuite/ -e "VHPIDIRECT"
./testsuite/gna/bug021/sim_pkg.vhd
./testsuite/gna/bug026/xb.vhd
./testsuite/gna/bug092/t.vhdl
./testsuite/gna/bug092/t2.vhdl
./testsuite/gna/bug097/tb.vhdl
./testsuite/gna/issue1229/pkg.vhdl
./testsuite/gna/issue1252/pkg.vhdl
./testsuite/gna/issue152/ax_wb_pli_pkg.vhdl
./testsuite/gna/issue797/pkg_c.vhdl

Hi,
I know the existence of these examples and I used them as a reference to write the SpinalHDL-GHDL bindings. However, until now, there were no examples of how to ask GHDL to advance the simulation time through VPI. Believe me, it is very difficult to find a compact example on how to do that on the internet, and understand it from cocotb is quite a challenge. Therefore, since I wrote these three reproducers (1226,1233, 1256), and given  that from what I understand the ghdl-cosim aim is to document/give example on GHDL foreign programming interface, I thought that It would be very helpful to point you to these three testbenches. I think that including them in the documentation could help many people to avoid wasting their time trying to understand how to advance the simulation time like I did :P.
BTW I think I will write some PR :)

@bellaz89, the point is that there are dozens of undocumented and independent examples about VHPIDIRECT and/or VPI. All the references in this issue contain one or multiple examples of different complexity. Some are simpler, others are frameworks, but almost each of them has features which are very difficult to find on the internet. Each of them is likely to be very useful for a subset of users.
The purpose of this repo is not only to gather references (to make them easier to find), but also to explain them (to make them easier to understand), and to have a fine-grained test suite (to find issues in different platforms/backends). For gathering only, this issue exists. On top of that, explaining implies thinking about a coherent and easy-going path that takes any new user from zero to the most complex examples. With "zero" I mean "no knowledge about co-simulation with GHDL". Users are expected to be familiar with, VHDL, GHDL, C and GCC.

how to ask GHDL to advance the simulation time through VPI.

I believe this is a very interesting example. Precisely, this is currently not possible/documented with VHPIDIRECT/Cinterface. Hence, it is one of the motivations to recommend using VPI instead.
However, ATM there is absolutely no documentation about VPI. Not a single line. Before introducing any of the examples you propose, I believe that at least one should exist about how to do nothing other than building and running a simulation with an VPI module. For instance, a very relevant difference compared to VHPIDIRECT is that VPI needs vpi_user.h. At the same time, according to your examples, VPI modules need to be built as a shared library; which is just one of the multiple possibilities with VHPIDIRECT. Since I want to learn about VPI too, I'm ok with helping/co-authoring the example(s) that are missing until yours fit. Nonetheless, I'd like to know if you are ok with looking at the VPI section as a whole, and not just adding independent examples.

See pull request #19

I will have a look!

@umarcor

@bellaz89, the point is that there are dozens of undocumented and independent examples about VHPIDIRECT and/or VPI. All the references in this issue contain one or multiple examples of different complexity. Some are simpler, others are frameworks, but almost each of them has features that are very difficult to find on the internet. Each of them is likely to be very useful for a subset of users.

Hi! Yes, sorry, I realize I was a bit unclear in my first message about why I think these references are valuable for me. That's why after thinking about that I opened a PR to explicitly give a set of examples that can be understood with basic programming/VHDL skills and that covers  the most basic use of VPI one can do.

The purpose of this repo is not only to gather references (to make them easier to find), but also to explain them (to make them easier to understand), and to have a fine-grained test suite (to find issues in different platforms/backends). For gathering only, this issue exists. On top of that, explaining implies thinking about a coherent and easy-going path that takes any new user from zero to the most complex examples. With "zero" I mean "no knowledge about co-simulation with GHDL". Users are expected to be familiar with, VHDL, GHDL, C and GCC.

how to ask GHDL to advance the simulation time through VPI.

I believe this is a very interesting example. Precisely, this is currently not possible/documented with VHPIDIRECT/Cinterface. Hence, it is one of the motivations to recommend using VPI instead.
However, ATM there is absolutely no documentation about VPI. Not a single line. Before introducing any of the examples you propose, I believe that at least one should exist about how to do nothing other than building and running a simulation with an VPI module. For instance, a very relevant difference compared to VHPIDIRECT is that VPI needs vpi_user.h. At the same time, according to your examples, VPI modules need to be built as a shared library; which is just one of the multiple possibilities with VHPIDIRECT. Since I want to learn about VPI too, I'm ok with helping/co-authoring the example(s) that are missing until yours fit. Nonetheless, I'd like to know if you are ok with looking at the VPI section as a whole, and not just adding independent examples.

See pull request #19

I will have a look!

I fully agree that giving full and free documentation that covers many aspects/usage of VPI is something that would be very nice to have. However, this is going to take much more effort than giving a basic set of examples because VPI is a complex API with many details I am not aware of. So I think that this can be taken as a long term task that can be updated from time to time (also because my job doesn't allow me to spend a lot of time on hobby projects). Even if just giving an organized basic set of VPI examples couldn't be enough for complete newcomers, they may be still valuable for people that have knowledge above basic skills but find it hard to understand how to make VPI work in practice.
Thank you for reviewing my PR!

That's why after thinking about that I opened a PR to explicitly give a set of examples that can be understood with basic programming/VHDL skills and that covers the most basic use of VPI one can do.

In fact, as you saw after I reviewed your PR, I believe that the set of examples that you proposed is nice and more than enough. I'm not expecting/requesting any more than that. Let's just make a little effort for the "story" to be easier to understand/follow.

I fully agree that giving full and free documentation that covers many aspects/usage of VPI is something that would be very nice to have. However, this is going to take much more effort than giving a basic set of examples

This repo is not "a tutorial about VPI", but "a tutorial about using VPI with GHDL". Anything which is related to GHDL or VPI only does not belong in here. However, we need to acknowledge/reference it. For example:
VPI (and VHPI) are complex APIs. Compared to VHPIDIRECT, these provide advanced features, at the cost of having to learn/understand many more details. Since this is the user and reference manual for GHDL, it does not contain an introduction to VPI/VHPI. Thus, the reader should have at least a basic knowledge of them. A good knowledge of the reference manuals (usually called LRM) is a plus. Please read X, Y and Z if you are not familiar with VPI/VHPI yet.
The one-liner introduction to VPI is that C header vpi_user.h provides dozens of functions to scan/navigate the hierarchy of the elaborated hardware design, and it allows to set callbacks for specific events/signals. Hence, unlike VHPIDIRECT, when using VPI/VHPI, VHDL sources are agnostic to the existence of C sources.

VPI is a complex API with many details I am not aware of.

Writing the docs is an exercise for us to learn too. We need to point which details we are not sure about. We will either find the answer or add some note/warning acknowledging that we don't know it. Nonetheless, if questions arise while we write the examples, new users are likely to ask the same questions in the future.

So I think that this can be taken as a long term task that can be updated from time to time

I believe it is a mid-term task. If we open the door to adding examples with sources that are partially inconsistent, and we allow to contribute them without proper documentation, there is a serious risk that those will never be completed. It is ok to keep PRs open and to enhance them as spare time allows to. When they are merged, we need to assume that the content might not be updated in weeks, months or years.

Even if just giving an organized basic set of VPI examples couldn't be enough for complete newcomers, they may be still valuable for people that have knowledge above basic skills but find it hard to understand how to make VPI work in practice.

I think that people with skills slightly above the basic will have no issues with finding either this thread or the open PRs. They don't really need the docs. We can make it more explicit by adding some note either to the site or to the README:
This repository was created recently and multiple existing examples are not published yet. See issue #1 and the list of open Pull Requests for on-going work.
By the same token, we can add "Contributing guidelines", to suggest potential contributors different levels of commitment:

Add a reference to this issue.
Propose a PR with working or non-working examples, and with/without complete docs.
Propose a PR with working examples and complete docs matching the overall learning path.

Hi,
I just found this repository and I would like to advertise my solution to VHDL/Verilog cosimulation using GHDL and Verilator.
It uses a code generator that generates glue-code to integrate Verilog modules (processed with Verialtor) with a GHDL simulation using VHPIDIRECT.
https://github.com/miree/gvi
I find it very convenient and it might be useful to others as well. Perhaps a link to this code generator (or even the code generator itself) could be integrated into this repository to make people aware of it.

Thank you for the message.  This is an interesting way to do
cosimulation with verilog!
Do not hesitate to create a pull-request to add a reference to your
project in the README.


How to edit the script?

Whenever I try to edit the script, for example, delete a "0" and replace with a "0" from my keyboard, the script did not run but keep saying "Syntax error." I used both notepad and Sublime Text, but it still does not work. What should I do to solve the problem? I am using NOX player.

Read this:
https://github.com/29988122/Fate-Grand-Order_Lua/issues/99#issuecomment-441133426
AnkuLua (or Lua itself) doesn't support files encoded in UTF-8 with BOM.


refactor(context): rename use-service to set-service

BREAKING CHANGE: rename rhoas context use- to rhoas context set-
Command has been renamed after getting feedbacks.
Verification Steps

Run the following command to set Kafka instance for the current context

rhoas context set-kafka

Type of change

[ ] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[X] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] Documentation change
[ ] Other (please specify)

I think if we make this change quite fast we can introduce breaking change without issues. The only thing would be to make sure that downstream docs remove those commands

Yes this requires an update in docs.


how can define the #define EOSIO_DISPATCH in new version

sorry im new here.!
since i upgrade the repo to 1.3.2
the old code doesn't work anymore
extern "C" { \
   void apply( uint64_t receiver, uint64_t code, uint64_t action ) { \
      auto self = receiver; \
      if( action == N(onerror)) { \
         /* onerror is only valid if it is for the "eosio" code account and authorized by "eosio"'s "active permission */ \
         eosio_assert(code == N(eosio), "onerror action's are only valid from the \"eosio\" system account"); \
      } \
      if( code == self || action == N(onerror) ) { \
         hello thiscontract( self ); \
         switch( action ) { \
            BOOST_PP_SEQ_FOR_EACH( EOSIO_API_CALL, hello, (hi) ) \
         } \
         /* does not allow destructor of thiscontract to run: eosio_exit(0); */ \
      } \
   } \

and i try to rewrite like this
#define EOSIO_DISPATCH_EX( TYPE, MEMBERS ) \
extern "C" { \
   void apply( uint64_t receiver, uint64_t code, uint64_t action ) { \
      if( action == name("onerror")) { \
         /* onerror is only valid if it is for the "eosio" code account and authorized by "eosio"'s "active permission */ \
         eosio_assert(code == name("eosio"), "onerror action's are only valid from the \"eosio\" system account"); \
      } \
      if( ((code == receiver && action != name("transfer")) || (code == name("eosio.token") && action == name("transfer")) || action == name("onerror")) ) { \
         switch( action ) { \
            EOSIO_DISPATCH_HELPER( TYPE, MEMBERS ) \
         } \
         /* does not allow destructor of thiscontract to run: eosio_exit(0); */ \
      } \
   } \
} \
EOSIO_DISPATCH_EX(example, (func1)(func2))

so how to define the extern Code?

remember that if you get a uint64_t you need to compare it with a name("something").value

It is not recommend to use the complicated Dispatch redefine. Here is a good example:
extern "C" {     void apply(uint64_t receiver, uint64_t code, uint64_t action) {         if(code==receiver)         {             switch(action)             {                 EOSIO_DISPATCH_HELPER( example, (func1)(func2) )             }         }         else if(code=="eosio.token"_n.value && action=="transfer"_n.value) {             execute_action( name(receiver), name(code), &example::transfer);         }     } };

thanks alot


Image 400 in Notion's new releases, how can I fix it?

Notion's new releases break the image hosting, how can I fix it ?

+1   This is affecting all Fruition sites, including fruitionsite.com

For what it's worth, it doesn't seem to be affecting Super, Hosting Potion, and other Notion-to-website platforms. Which probably means it's related to Fruition's specific approach with the Cloudflare script?

#37

Please see https://fruitionsite.com/update for update instructions.


add repository contributors

https://developer.github.com/v3/repos/#list-contributors

thanks @ryantm!


Risk detection shows wrong number of active days

Technical details

Device name: iPhone 12
iOS Version: 14.3
App Version:1.7.1

Describe the bug
I switched to a new phone 16 days ago. Since then the risk detection was active for every single day (since November 30th). But the app says "Risiko-Ermittlung war für 11 der letzten 14 Tage aktiv". It switched to "Risiko-Ermittlung war für 12 der letzten 14 Tage aktiv" some days ago, but since then it shows "Risiko-Ermittlung war für 11 der letzten 14 Tage aktiv" every day.
Steps to reproduce the issue

Open the app

Expected behaviour
After opening the app it should show "Risiko-Ermittlung dauerhaft aktiv"

Related Issues

https://github.com/corona-warn-app/cwa-app-ios/issues/1127.
https://github.com/corona-warn-app/cwa-documentation/issues/412
https://github.com/corona-warn-app/cwa-wishlist/issues/102

Internal Tracking ID: EXPOSUREAPP-2556

Please also see #1127

Dear @songbird82,
Thank you for your contribution. As @Ein-Tim points out we have created a ticket for the bug in the internal Jira system and any further developments will be notified in this Github issue: https://github.com/corona-warn-app/cwa-app-ios/issues/1127. Please monitor that issue and contribute there. Many thanks.
Best wishes,
DS

Related Issues

https://github.com/corona-warn-app/cwa-app-ios/issues/1127
https://github.com/corona-warn-app/cwa-documentation/issues/412
https://github.com/corona-warn-app/cwa-wishlist/issues/102

Internal Tracking ID: EXPOSUREAPP-2556

Corona-Warn-App Open Source Team

Duplicate of https://github.com/corona-warn-app/cwa-app-ios/issues/1127

Thanks for the feedback, I will check the mentioned issue


Yii2 request and DI

Когда получал через DI в конструкторе реквест, то получил наполненый даннными реквест в  тестах и пустой реквест на живом сервере.
Очень хотелось бы иметь доступ к DTO модели реквеста в екшене запроса, но на DI в екшене стоят ограничения.

Hi!
When took by DI in construct-method request model took filled by POST data request instance in codeception tests, but on live- server request always was empty.
Will be good t o have access to DTO model in Controller::action, but now are some restrictions on allowed injection in action.
Thanks!

Yii version <IP_ADDRESS>

Could you provide a test case?

Some mystic is in Content-Type application/json
All invocations are from Controller::action()
$request1 = Yii::createObject(DTORequest::class, [$this->request]);

Filling DTO
$request2 = $request2 = Yii::$container->get(DTORequest::class);

Empty DTO
File DTORequest:
use yii\web\Request as WebRequest;
...
public function __construct(WebRequest $webRequest, $config = [])

The information provided isn't enough to reproduce the issue. Ideally we'd like to have a unit test but minimal test-case starting with a clean basic app would do as well.

@samdark Just make 3 steps

In opposite

And also this is what I did and had a bug.

This is strange that parsers array is empty.

Would you please provide a POST request you make?

I doing it from codeception.
By test like this:
        $I->haveHttpHeader('Content-Type', 'application/json');
        $I->sendPOST(
            sprintf('chats/%s/messages/send', 1111),
            [
              'user_id' => 11111,
              'body' => 'Any message',
            ]
        );

If I will send without $I->haveHttpHeader('Content-Type', 'application/json'); then data will parsed well.

Temporary solution will be to have settings in config file:
...
'container' => [
  'definitions' => [
     Request::class => [
        'class' => Request::class,
         'parsers' => [
           'application/json' => JsonParser::class,
         ],
  ],
],

But it is very strange:

to bind parser this way when allowed headers.
to have 2 instances of Request in singleton %)

Modified class
use yii\web\Request as WebRequest;

...

public $attr1;
public $attr2;

public function __construct($config = [])
{
  $this->webRequest = Yii::$app->request;
  parent::__construct($config);
}

public function init()
{
  parent::init();
  $this->loadAttributes();
}

protected function loadAttributes()
{
  $this->setAttributes([
    'attr1' => $this->webRequest->get('attr1'),
    'attr2' => $this->webRequest->getBodyParam('attr2'),
  ]);
}

So... is the issue solved?

@samdark I think it behave like it was designed. But in concept it is incorrect to have 2 instances of requests. One in Yii::$app and second in Yii::$container. Entity from Yii::$app section should be alias on entity in container.
My expectations were to take the same entity by Yii::$app->request and Yii::$container->get(Request::class) at least i do not see reasons to distinguish these 2 sections.

Yeah. That's a global thing in Yii 2 that container in some cases isn't the same as components configured but I don't see a way to fix it without breaking backwards compatibility. There's a single container in Yii 3.


Add feature metadata support, and some UI / code fixes

Feature metadata support
The main thing in this PR is that Empress now makes use of feature metadata (closes #130). In the JS code, this is split up into tip metadata and internal node metadata.

If the input feature metadata contains a "Taxonomy" column, this column will be split up into multiple columns by ;s. This enables easy coloring of nodes by each taxonomy level (e.g. Level 1 (Kingdom), Level 2 (Phylum), etc.)

Feature metadata can be used to color the tree in two ways:

Method 1: Only use tip-level metadata? is checked (default). This just colors tips using their feature metadata, propagating things upward as is done for sample metadata coloring. Internal node metadata (if present) is ignored.

Even though I assigned a few of the internal nodes fake "taxonomies" for testing purposes, this info isn't shown.

Method 2: Only use tip-level metadata? is unchecked. This colors all nodes in the feature metadata (tips and internal nodes alike) by their values, without doing any propagation.

Here, we can see the internal nodes' feature metadata. All nodes with ID 0.915 have the Level 1 value duplicate, and the root has the Level 1 value I'mTheRootLol. Even though internal nodes can have duplicate names, they can still have feature metadata -- as this screenshot shows, this just means that internal nodes with the same name have the same feature metadata.

These methods are configurable using a checkbox (as @ElDeveloper suggested). Changing the value of this checkbox changes a "description" below the checkbox describing how feature metadata coloring works.

Feature metadata is also displayed (for any node that has it) in the node selection menu.

In support of this, the root node is now selectable. I believe this is (in combination with the #160 changes) is sufficient to close #141, and this addresses 1 of the 5 tweaks in #169.

Note that the sum across each of the rows in the sample presence info is 34 for the root node. This makes sense, because the moving pictures dataset (which I'm using here) has exactly 34 samples.

UI / style improvements

Cleaned up the sample presence info table in the selection menu: this table (along with the feature metadata table added in this PR) are now rendered more conventionally, rather than having header and data information contained in the same cell but separated by <p>s.

Made the layout of the selection menu a bit more variable based on what the selected node is -- addresses one of the things in #169. Probably easiest to just show a before/after on the same node (before is from the prototype branch from a few weeks back)

Removed an old line in the CSS (see #181) that changed the cursor to pointer even on text and number inputs (and on selects). This makes it clearer to the user that you can type in these elements (since now the cursor is free to change to a normal I-beam pointer where natural, e.g. on the Search by node ID... input)

Fixed the scrollbar issue because it was mildly inconveniencing me during testing and it was either that or throw my laptop out the window ;) (closes #168)

Code maintenance

Abstracted a lot of code in side-panel-handler.js so that it could be reused between the sample and feature metadata coloring. Similarly, also abstracted some code in select-node-menu.js for reuse between leaf and internal node menus. (This addresses one of the things in #169.)

(hopefully this makes testing easier also)

Added SILVA annotation tests (closes #129)

Because we weren't actually doing it before (??? this may have been my fault), I added validation code that raises an error if tip IDs in the tree are not unique, or if tip IDs overlap with internal node IDs. Duplicate internal node IDs do not cause an error but do cause a warning.

While I was at it, also added some quick validation code that checks to see if any of the node names in the tree start with EmpressNode and raises an error if so (this is another thing we have not been checking). I also updated the JS to use .startsWith("EmpressNode") rather than .includes("EmpressNode") to more faithfully match how these names are assigned.

Renamed tools.name_internal_nodes() to tools.fill_missing_node_names(), because this function 1) was not limited to internal nodes in the first place and 2) all internal nodes do not necessarily not have node names.

Also, I didn't realize it until this PR, but apparently that function added branch lengths of 0 for nodes without branch lengths... I didn't realize this until just now, which is why I added extra branch length validation code back in March for the rectangular layout PR, which made this behavior of name_internal_nodes() unused (since any nodes with missing branch lengths would raise an error before the code would get to this point). In this PR I just chopped this behavior out of name_internal_nodes() (it was the easiest course of action since the validation code I added was tested, while this behavior of name_internal_nodes() was not), but we can relax the validation code later on down the line if desired.

TLDR
... I think that's most of the major stuff here. (There's other stuff that wound up in this PR, for example some of the early work I did on circular layouts [#180] -- this is because I started working on feature metadata using the same branch as for circular layout work.)
I know this comment wound up being long, so I'm happy to meet to walk through this as needed.
Also, should mention that the JS code in this PR should be better tested -- getting things to this point took until now, so I would probably need at minimum another day to add in tests where I can.
Thanks!

Thanks so much @fedarko! This looks great!


Add South Dakota

Add South Dakota to ingestion3 using mapper based on existing MDL mapping and MDL harvester

@AudreyAltman ready


Knowledge Manager security role doesn't provide access to reports

Page states that knowledge manager security role provides access to knowledge insights - which is not the case. Using only this role results in the following message displayed to the user when they access reports:
"No reports are enabled for your org. Please contact your system administrator to enable reports from Settings page."
CSR manager roles does provide access.

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

ID: a411236f-dce4-66f9-92a8-c2b209502166
Version Independent ID: cd6a394a-2ee4-381c-fb0c-2ce8a63075f9
Content: Configure Knowledge search insights for Dynamics 365 in Customer Service Hub and Customer Service workspace
Content Source: ce/customer-service/enable-knowledge-search-insights.md
Service: dynamics-365-customerservice
GitHub Login: @lalexms
Microsoft Alias: laalexan

Thanks for your comment, @cokJon. This issue has been assigned to the doc author for review.

@cokJon : This is in-progress. Working with the PM to check for edits as necessary.

@cokJon : The dev team confirmed that the issue was fixed with the October 22 release. Could you please check to see if you still see the issue?

@cokJon : Could you please check to see if you still see the issue? If not, could we close the PR?

@@cokJon : The dev team confirmed that the issue was fixed with the October 22 release. I have followed up and as I haven't heard back from you since November, I am closing this PR. Could you please check to see if you still see the issue? If yes, please do raise another PR.