Python for batch-loading RTs

This scripting would presumably be helpful to have at some point in future is needed, we've been having trouble getting our script to function as expected--see current issues below.
Requirements might include still haven't changed that much since I created this issue in 2022-07, except that as of now we don't need to accommodate any nested-resource PTs:

Identifying which templates are referenced by others, loading referenced templates before referencing templates (when using Load RDF for RTs, RTs referencing RT IDs which do not exist cannot be loaded; not sure whether/how this would impact batch loading)
When loading an updated RT version, find and delete the existing RT prior to loading updated (feel 99% confident we can't load an RT with the same ID as an existing RT)
Select a platform for loading templates; this would change generation of RT IRIs and RT IDs.

Thank you for taking a look at this @mcm104 ! I added a possible requirement and a couple of links to code that currently outputs RT IDs/RT IRIs differently based on selection of platform for loading. As always please don't hesitate to reach out if the code is confusing or help is needed, etc.

So I have some working code: 003_batch_load_RTs.py BUT I'm having a problem.
The good:

Looks through RTs, see which ones reference which, and creates an upload order accordingly
Uses Python requests post() to load new RTs, and uses put() to replace old RTs if something already exists at that URI, so no need to delete old RTs first
Allows you to select which platform to upload to, and updates URIs accordingly

So I was able to load all the test RTs to production and it seemed to work, EXCEPT -- I'm getting this error if I try to use the Nomen RT: "Error retrieving TEST:UWSINOPIA:WAU:rdaNomen:na:CAMS: Cannot read properties of undefined (reading 'object')", which affects any RTs that reference Nomen. Not sure what this is trying to tell me -- is this a problem with the Nomen RT itself or something when I convert it to JSON-LD in the 003 script...?
Any ideas?
@briesenberg07

Notes after 7/29 meeting:

All test RTs successfully loaded into Sinopia Stage, BUT the Expression RT will not open; raises error: "Error retrieving TEST:UWSINOPIA:WAU:rdaExpression:monograph:CAMS: Maximum call stack size exceeded"
Tried loading the test expression RT manually and got a JSON validation error, unsure what the problem was... need to investigate
All other test RTs open and seem to function correctly
PTs with multiple props not working -- turns out this is something going wrong in the XSLT. Will need to test again once XSLT is fixed.

Closing issue because it works! Thank you @mcm104 !

Currently attempting to use 001_output_publish_load.py for batch output:

prop_set to rdf/xml
rdf/xml to json-ld
json-ld + Sinopia admin metadata to Sinopia via API
prop_sets + rdf/xml RTs to HTML RTs

Still experiencing issues. Loading just now using script, received status code 200 but saw the following attempting to open RT in Sinopia Stage:

CC @cspayne

Note that using "Load RDF" works okay for loading a template-at-a-time, but RT IRIs must be edited if loading to STage or Development

Believe I figured it out - there was an issue with when the json files were created, which was previously before the iri was adjusted to include stage or development, which is why it was only working for production.
CC @briesenberg07


Adding night image support

可以添加UIImageView的图片修改吗？

I'm working on it. But I do not have enough time now.


Improvement: Add tolerations to allow Kepler to spawn on unschedulable master nodes

Multi-node OpenShift clusters can be configured to either allow the scheduler to launch user workloads on master (aka control plane) nodes or not.
If Kepler is expected to be used for monitoring master nodes (and openshift-* namespaces) power usage in both schedulable and unschedulable master scenarioes, the proposed toleration is necessary in DaemonSet. It allows the scheduler to spawn Kepler Exporter pods despite master nodes being tainted as unschedulable for user workloads. It is not enough to label the master nodes with the "sustainable-computing.io/kepler" label.
It is open to discussion whether this is necessary.

We have received a request to benchmark the control plane, this fix makes that request possible.


Wallet challenge function should accept an array of Signed States

Describe the bug
Currently, the challenge function on the wallet only accepts a single State.  The wallet then signs this and calls challenge on-chain with it.
This isn't enough for a valid challenge proof as we need to provide a supported state.  To support this we should just update the challenge API to accept a collection of SignedStates.

I think this is a "Nice to have" for v0, where we can assume that we are given a single, fully supported state

I think this is a "Nice to have" for v0, where we can assume that we are given a single, fully supported state

Closing as superseded by another issue in a different repo

Closing as superseded by another issue in a different repo


fix: add poetry token

:tada: This PR is included in version 1.1.11-beta.1 :tada:
The release is available on:

v1.1.11-beta.1
GitHub release

Your semantic-release bot :package::rocket:


Example job scripts for GPUs

Looks good. Two questions:

Do we want to have the -l flag in our examples (i just checked that the flag is currently in use in all the examples.)
Should the multiple GPUs example have multiple tasks (as it is now) or just one task?


Tests seem to be thoroughly broken on Linux

Filenames are lower case, and contents of examples/readme-example-beginner.lhs is just:
.\readme-example-beginner.md

Yep they currently don't work, but I haven't had time to fix them. I was attempting to use a  script mentioned here to convert my windows symlinks to linux ones, but it must not be working correctly.

The biggest hurdle is ensuring that the test suites are executed in an environment that has the necessary components (Selenium, web browsers, window managers, etc) installed. I may consider using SauceLabs for this purpose. I believe you've worked with SauceLabs before, correct? Would you recommend it for setting up library tests?

Indeed, running this kind of full-stack test is quite a challenge. I wonder if it'd be easier in the long run to have a fake webdriver that most tests can run against, and then have some 'example' scripts that you can run in a real environment that aren't really tests so much as demos. The advantage of the fake webdriver is that you can actually assert that hs-webdriver is working as desired rather than the whole stack (including a remote webserver) is all behaving properly.
I've not worked with SauceLabs before - we run all our Selenium tests in-house.

Creating an entire dummy Selenium server sounds just as error-prone as writing a client. One typo in my HTTP endpoints and suddenly I have tests failing due to the dummy server. But I suppose it's the only way to verify that an issue isn't related to the Selenium project and is an actual problem with the Haskell code.

I'm afraid so. Fortunately the mistakes one tends to make on either side
(typos or otherwise) can be quite orthogonal. I also wonder whether you
could use the online docs to generate at least some of the test code;
particularly the typo-prone bits like endpoint URLs?
On 13 Jan 2016 19:02, "Adam Curtis"<EMAIL_ADDRESS>wrote:

Creating an entire dummy Selenium server sounds just as error-prone as
writing a client. One typo in my HTTP endpoints and suddenly I have tests
failing due to the dummy server. But I suppose it's the only way to verify
that an issue isn't related to the Selenium project and is an actual
problem with the Haskell code.
—
Reply to this email directly or view it on GitHub
https://github.com/kallisti-dev/hs-webdriver/issues/79#issuecomment-171398973
.


mystery solved

After converting my (toy) app to use react-router, I started getting the following exception when navigating from one route to another:

Uncaught Error: Invariant Violation: ReactMount: Root element ID differed from reactRootID.

This was caused by my App component used a body tag to wrap its children. After switching to a div tag the exceptions stopped.
This issue can be closed. I created it in the hope it helps someone else in the future.

What does this happen? I need to render multiple components at the top-level of my app and then all need to go in body -- how else would I achieve this?

I think he is referring to:
React.createClass({
  render() {
    return <body> ... </body>
  }
});

Yeah,that because the  tag...


Add documentation for setup of checkstyle in Intellij

Feature Request
Description of Problem:
source code formatting is inconsistent and does not match the code style guidelines.
Potential Solutions:
Install the checkstyle plugin for IntelliJ and run it before each commit to identify issues with code style.
Acceptance Criteria:

[ ] DataHelix checkstyle configuration file created.
[ ] instructions produced on how to install the checkstyle plugin and configuration file.
[ ] instructions produced on how and when to execute a checkstyle check.

new Java Coding Style block for CONTRIBUTING.md:
### Java Coding Style

We adopt the [Google Java Coding Style](https://google.github.io/styleguide/javaguide.html) with the following execptions and additions:

* _**Contrary** to [4.2](https://google.github.io/styleguide/javaguide.html#s4.2-block-indentation)_: We will use a Block indentation of **4 spaces**
* _**Contrary** to [4.5.2](https://google.github.io/styleguide/javaguide.html#s4.5.2-line-wrapping-indent)_: We will use  **4 spaces** indentation for continuation lines
* The `this.` qualifier should not be included, except where required.

Duplicated by #759


feat: expose image pull policy to user defined containers

Explain what this PR does.

what about ImagePullSecrets?

ImagePullSecrets

ImagePullSecrets is in pod level, which is already there.

thank you very much


Support fullscreen mode

This at least works in Gnome, but it may be supported everywhere GTK3 is. Either way this we can never have too many available pixels for photo editing.

Confirmed, works in XFCE as well.

Calling the fullscreen method of the window puts it in fullscreen mode, but you don't get the drop-down header bar for free so there is no way to exit.

Related: #43

Fixed by #93


[README] – Adding Devour to the list of JavaScript client implementations

Devour is a new JSON API client implementation written in JavaScript that we are actively developing here at The Working Group. We are using it in a couple of projects already and it's been working fairly well and we look forward to building it out even more.

Nice - thanks!


Swimming creatures occasionally lock up

Describe the bug
Swimming creatures occasionally lock up and begin spamming the log with NullReferenceExceptions.
HugsLib log
https://gist.github.com/HugsLibRecordKeeper/65279d49777637b40d2296ca4f741ba3
Screenshots

Additional context
I have not found a specific set of circumstances that causes this. It's usually just a single creature somewhere on the map. What prompted this report, however, was it happening to an entire group of manhunting manta rays. It happened shortly after they crossed onto a patch of shallow ocean water, but I don't know if that's related. Unfortunately the only solution I've found is to use dev mode and destroy the affected creature(s), as otherwise the log spam slows the game to a crawl.

Hm. This actually just happened with a caravan pawn, too. Guess it's not just swimming creatures.

Oh, although it looks like the patch to fix changing human movement hit, so maybe it is the swimming pathfinding that's broken

Oh, more interesting information. Saving and reloading fixed the pawn.

Thank you for the report!
I believe this issue is related to how regions are handled in RimWorld, and how Pathfinding Framework modifies them to implement its features. It is likely that PF is generating one or more regions incorrectly, and this causes the issue you are experiencing.
Regions are modified in-game after constructing bridges and buildings, so maybe one of those changes triggered the PF bug. Regions are fully regenerated after loading a game and the code is slightly different, that could explain why the issue went away.
I would need to know more about the incorrect region that is causing this issue. Could you run the "Error Report Information" debug action, generate another HugsLib log, and send it to me?

I assume I need to do that while I have a currently locked up creature?

Oh, good timing! Just got one: https://gist.github.com/HugsLibRecordKeeper/29d73a738afe173b62d998f9590a28a5

Thank you! Unfortunately that log does not include the error report information. Maybe there are so many previous errors that the log stopped accepting more text. You could try pausing the game as soon as you get the first red error and then using the error report information immediatly after that.
Another option would be to manually check the map for anything weird. You could use the "Draw region / draw region links" and "Region inspector" tools described in this page (https://github.com/joseasoler/Pathfinding-Framework/wiki/Testing-and-troubleshooting#draw-region--draw-region-links) to check the regions in the map, and try to find if any of them has errors.
Meanwhile I have started a new game on an island map to see if I get any errors.

Hm, I just got the lock up again, but when I run the Error Report Information, it seems to only generate information about one of my colonists

No idea if this one'll do any good: https://gist.github.com/HugsLibRecordKeeper/0c90d8f5b08d17b247508b0bb851b378
I tried the region inspector and stuff, and nothing jumped out at me as an error, but I may not know what I'm looking for.

Hm, and this time saving and reloading isn't fixing it

Thank you for the additional information. If the error report is only giving you a single line talking about "last reachability" then it is not finding the errors I was hoping to find.
I will try to reproduce this by generating random island maps and spawning multiple aquatic manhunter groups. With more information it might be possible to find out where PF is making this pathfinding error.

Unfortunately I have not been able to reproduce this issue after multiple tries. Since I am using a minimal modlist, I wonder if it is some kind of mod conflict.

This issue has been taken out of the plans for 0.4.0 as it cannot be reproduced at the moment. I will keep it open for a while in case it resurfaces.

Terrain mods that might have something to do with the issue:
There is some fake water tiles from Alpha Props - Parks and Gardens -> https://steamcommunity.com/sharedfiles/filedetails/?id=3146268928
Nanites are from Buildable Terrain -> https://steamcommunity.com/sharedfiles/filedetails/?id=1420979918
And the star in square is from [JF] Geometric Floors -> https://steamcommunity.com/sharedfiles/filedetails/?id=2863525144


Attempt to fix jsesc problem

https://github.com/open-cluster-management/backlog/issues/16781
Signed-off-by: Kevin Cormier<EMAIL_ADDRESS>

Prior to this change I was seeing an unmet dependency:

/test e2e-cluster


Where do you save the file create_rg.yml

Where do you save the file create_rg.yml before running the following command in Azure Cloud Shell?
ansible-playbook create_rg.yml --extra-vars "name=<resource_group_name> location=<resource_group_location>"
NOTE: When I save create_rg.yml file in my local folder as C:\MyFolder\create_rg.yml the above command gives the following error:

ERROR! the playbook: C:\MyFolder\create_rg.yml could not be found

@srazasyed You mention using Azure Cloud Shell, but then refer to what looks like a Windows location. If you're using the Azure Cloud Shell to run the commands, then you need to save the playbook within Cloud Shell. Could you explain your environment more in terms of where you're storing the file and where you're running the command?

@srazasyed I'm going to close this issue, but if you reply, I'm happy to help you further.

@TomArcherMsft I'm new to ansible. Could you please point out where in cloud shell should I save the .yaml file to run the ansible playbook?

@srazasyed
I intentionally don't include the exact file location as that depends on each person's individual environment.
However, if your new to Ansible/Azure and simply testing, I would do the following:
(I specify a directory name of ansible-test. That name can be whatever valid unique name you want.)

Open Cloud Shell (Azure CLI)
cd clouddrive
mkdir ansible-test
cd ansible-test
code create_rg.yml
paste code from article
S
Q

You can then view the file via cat create_rg.yml


Fix race condition when unref handshaker factory

Signed-off-by: Xintao<EMAIL_ADDRESS>close #22489

@nicolasnoble

I have tested locally and verified it does get rid of coredump caused by race condition. If this PR needs more content PLS tell me.


[FEAT] Add Favicon

Add a quiz favicon, maybe like a question mark or something?

It would also be nice that per quiz, for example Tech Quiz, we put a laptop as the favicon, per quiz different favicon?

@KendallDoesCoding assign me this, let me work

@sunny2329 - please comment on this. Please work on this with @abhinav2712 in #54.

nobody assigned me yet.

nobody assigned me yet.

I asked if @sunny2329 and @abhinav2712 who were working on this a while ago, are still working on this. If they aren't, then I will assign you.

can i work on this issue ? if nobody is working on it.

nobody assigned me yet.

I asked if @sunny2329 and @abhinav2712 who were working on this a while ago, are still working on this. If they aren't, then I will assign you.

Due to no reply, unassigning them.
@Gallantfarhan - do you still want to work on this or should I assign @ujju2000 ?

Hey, I have the fork ready with the favicon. Also, what do you mean by different favicon for each quiz? Like different favicon for each quiz (like browsers) or different favicon for each group of quizzes (like technology)

Ok, will have a look. If we can find favicon's for each quiz page then let's do it, otherwise 1 favicon can be there for all the quiz in one catergory.

Sounds great!


Improve release pipeline

We could improve the pipeline even further by also automatically making a release and uploading those zip files to GitHub, which should all be possible using the GitHub AP.

we'll probably make use one time of https://developer.github.com/v3/repos/releases/#create-a-release, followed by multiple calls to https://developer.github.com/v3/repos/releases/#upload-a-release-asset (using the upload url given in the response of the first call)

This seems like a logical thing to support, as we already upload to both the GIG Hub, as well as the docker hub, as can be seen in the Makefile:

https://github.com/rivine/rivine/blob/bd3b46cadae1d810a9ae57f2f8b16451752f1a76/Makefile#L40-L44

As a final improvement it could be nice if all steps (make archives, upload to docker hub, upload to GIG hub, upload to github API) require a y/n answer, so we can skip some steps, which might be useful in case we need to redo a certain step. Instead of the y/n route, we could also just make all steps available as separate Make targets, and have than one release-version target which does all these steps one by one.

This issue was originally proposed in https://github.com/rivine/rivine/pull/88#issuecomment-366545718, but has been moved to a separate issue, as it wasn't important enough to block PR #88. It's still not that important I think, which is why I added it directly to the backlog.

this would be nice

Instead of the y/n route, we could also just make all steps available as separate Make targets, and have than one release-version target which does all these steps one by one.

I prefer this


How to build lyra for linux arm64？

I want to build lyra for linux arm64 platform, please give me a help.

We haven't tried linux arm64 hosts before, but if you are building on a arm64 host, you may try just following the linux instructions in the README.  The default build should be for the native host.  If you try it, please report back with what happens.

Thank you , i use the linux instructions in the README, it works well !


Normally I would expect a positive number, like this:
https://image.ibb.co/kyjXdV/Screen-Shot-2018-11-09-at-8-20-48-AM.png
This is the project that produced the error: https://github.com/JohnReedLOL/WeirdSbtBug
Notice this commit: https://github.com/JohnReedLOL/WeirdSbtBug/commit/894f497567477619b4150de92c6bb2c146a1b615
In particular, this is the code change that happened before I re-ran monitorTask:
 trait Greeting {
-   lazy val greeting: String = "hello"
+   lazy val greeting: String = "hello"fjyjc
 }

p.s. It's totally fine if you don't have a fix for this, but is there any way you could take a look at this Stack Overflow question describing what I was doing when I ran into this bug:
https://stackoverflow.com/questions/53226392/sbt-how-to-get-result-success-failed-of-compile-in-an-sbt-task

I can't reproduce the negative total time. Not sure if it's still relevant but I'm closing this for now.

I can't reproduce the negative total time. Not sure if it's still relevant but I'm closing this for now.


NEWRELIC-4147 fix: don't try to reach local servers on error

Just one comment, yet it looks good to me


[Unity][Schedule] Prototype of peeling tail iterations

If iv is a loop induction variable, then m, t = sch.peel_tail(iv, 1) will convert
  for iv in T.serial(n):
    blah

to
  for m in T.serial(n-1):
    blah
  for t in T.serial(1):
    blah

This is still wip.

Hey @junrushao, @jinhongyii, @Lunderberg, @masahi.  This is still WIP, but I wanted to see if you have any comments or concerns about it so far.

I like it overall.  My general view is that anything that can be done automatically while lowering should also be doable manually while scheduling, and this would enable schedule-time loop partitioning.
Instead of having a specific utility for peeling loop iterations off of the end, and we have it apply a general loop partition?  Something like sch.partition_loop(partition_extents), where partition_extents is a list of extents for each extracted iterator.  Similar to .reshape(), up to one of the extents could be -1, indicating that it should be inferred from the extent of the partitioned iterator and the other extents in the partition.  That way, we could express "peel off the last iteration" as sch.partition_loop([-1, 1]), but could also express "peel off the first iteration" as sch.partition_loop([1, -1]), and "peel off 4 elements from both sides" as sch.partition_loop([4, -1, 4]).

Hi @Lunderberg,
@kparzysz-quic may not continue to work on this PR, I will try to complete the changes suggested in this PR.
If I understood the above suggestion, you are proposing generic loop-partitioning scheduling primitive rather than peeling just tail iterations. Can you please confirm, if you are looking into something like below example?
for iv in range(n):
    a[i] = b[i] + c[i]

Given the above loop, if we want to partition it into three parts, with head iterations as 4, body iterations as n - 4 - 5 and tail iterations as 5, we can use a scheduling primitive like, sch.partition_loop(iv, 4, 5), where iv is a loop iteration variable.
for iv in range(4):
    a[i] = b[i] + c[i]
for iv in range(4, n-5):
    a[i] = b[i] + c[i]
for iv in range(n-5, n):
    a[i] = b[i] + c[i]

The design(sch.partition_loop(iv, head_iter, tail_iter)) that I am thinking is, to have head_iterations and tail_iterations as arguments to the sch primitive, which will give fine control to users to peel from start/end of loops.
Please confirm the design, so that I will go ahead and start working on the remaining changes.
Thanks

@rutkoor That design seems reasonable as well.  I was thinking that the full partitioning would be more general and may be easier to implement, but being able to peel off the head/tail also works.

@rutkoor That design seems reasonable as well. I was thinking that the full partitioning would be more general and may be easier to implement, but being able to peel off the head/tail also works.

Hi @Lunderberg, as per your suggestions I have made necessary changes and finished development of generic loop-partitioning scheduling primitive (https://github.com/apache/tvm/pull/16431). Please take a look at it and let me know if it is aligned with your expectations.
Thanks.

The PR (https://github.com/apache/tvm/pull/16431) which introduces loop-partition scheduling primitive got merged. This branch can be safely closed now.


Revert "Fix broken copy function in automate"

So we somehow received two instances of the same BZ with @ZitaNemeckova:
https://bugzilla.redhat.com/show_bug.cgi?id=1390362
https://bugzilla.redhat.com/show_bug.cgi?id=1381157
Her fix is basically bypassing the faulty JS code by re-rendering the whole tree on the left side. This is quite an uneffective solution as it transfers much more data through the network. So my suggestion is to revert it in favor of my fix.
Note: my PR is not yet backported to euwe, but Zita's is!
This reverts commit 0e1e9d3d63421275965e80b801f4f6a6bce1b36b.

@miq-bot add_label bug, ui, darga/yes, blocker

@miq-bot assign @h-kataria

Euwe BZs:
https://bugzilla.redhat.com/show_bug.cgi?id=1393978
https://bugzilla.redhat.com/show_bug.cgi?id=1386345

verified in UI.

Euwe Backport details:
$ git log -1
commit 07ea5a88583df0055561b16ae823cf2511f13ff0
Author: Harpreet Kataria<EMAIL_ADDRESS>Date:   Thu Nov 10 15:05:59 2016 -0500

    Merge pull request #12563 from skateman/revert-js-bypass

    Revert "Fix broken copy function in automate"
    (cherry picked from commit cffb777dc9777496ae1c4e562690f3385e7c33ff)

    https://bugzilla.redhat.com/show_bug.cgi?id=1393978
    https://bugzilla.redhat.com/show_bug.cgi?id=1386345


chore: release 1.3.0

:robot: I have created a release *beep* *boop*
1.3.0 (2019-09-09)
Bug Fixes

use process versions object for client header (#428) (c1dde85)
samples: upgrade yargs and fix broken CLI config (#436) (1a9c374)

Features

load protos from JSON, grpc-fallback support (9914445)

This PR was generated with Release Please.

Release is at https://github.com/googleapis/nodejs-vision/releases/tag/v1.3.0

The release build has started, the log can be viewed here. :sunflower:

:egg: You hatched a release! The release build finished successfully! :purple_heart:


land_detector complains about timeout

Recently with SITL I see this error output on startup:

ERROR [land_detector] Timed out while waiting for thread to start
INFO  [mavlink] mode: Normal, data rate: 4000000 B/s on udp port 14570 remote port 14550
INFO  [mavlink] mode: Onboard, data rate: 4000000 B/s on udp port 14580 remote port 14540
INFO  [mavlink] MAVLink only on localhost (set param MAV_BROADCAST = 1 to enable network)
...

To reproduce:
make px4_sitl jmavsim

@dagar any idea?

Recently as in today, or earlier?

Can you try https://github.com/PX4/Firmware/pull/12196?

Hi @julianoes  and @dagar ,I think I have it fixed in PR #12209 at the schedule call here.  Let me know if that works for you.

One last thought, changing from the present ScheduleOnInterval() call to ScheduleNow() preserves the previous behavior prior to the general work queue, so this should be a safe change when it is accomplished: https://github.com/PX4/Firmware/blob/53aa4130a8cc549887106b077aae2f77bcacf662/src/modules/land_detector/LandDetector.cpp#L69

@dagar , adding a ScheduleNow() call allows the ModuleBase::wait_until_running() call to succeed.
This means that _object.load() doesn't pass unless ScheduleNow() gets called.  Do you see what's going on there?


No! Such Directory Found

Cann't clone into 'instainasne' no such directory found
and asking for github repo and password which i don't have

try to take full path if your file

okay will try that


i18n(zh-cn): update api-reference & markdown-content

What kind of changes does this PR include?

New or updated content
Translated content

Description

[x] update api-reference.mdx
[x] markdown-content.mdx
[x] imports.mdx
[x] cli-reference.mdx
[x] troubleshooting.mdx
[x] layout.mdx
[x] styling.mdx

This PR is ready to be reviewed. @Yan-Thomas @delucis


earthquake and might of the earth bugging

http://www.d3planner.com/202451163
http://ptr.d3planner.com/202451163
The damage of earthquake is not showing on the simulation, alone or with might of the earth set bonus. The set bonus is supposed to make Leap cast earthquake on each Leap, but it's not showing any damage. Same thing with blade of the tribes, it's only casting avalanche on both skills, but no earthquake.

Set the Distance setting in the simulator to a proper value. Earthquakes don't hit enemies 40 yards away from yourself.
Distance map for reference: http://www.diabloii.net/gallery/data/632/medium/D3_Distance_Map.jpg

Yep I should really make it more obvious somehow :(

Maybe display a warning when an ability is cast and hits no enemies at all?

Yeah I've been thinking of something like that, but there is no straightforward way to do that since abilities can deal damage with some delayed triggers and such. I think the easiest way would be to simply set a range for every ability and check them before even running the simulator.


Time elapse

Can you add a time elapse option or param between each request. On my work envioroment, it seems not stable.  I think it may be a good enhancement ：)

Got it. :P

Added in new pull requests.
#8


Added cpp program to find XOR from 1 to N

O(1) Time complexity code to find XOR of numbers from 1 to N

I guess, I unknowingly solved #206 issue too.

@all-contributors please add @D3ADSH0T25  for his code


can't run the notebook locally

Hello, very interested with this work I am trying to run it locally.
However I am stuck at the cell
# Extract sections
sections_ds = ds.flat_map(extract_sections)
sections_ds.count()

sections_ds.count() throws the following error, any idea about what may solve this issue?
{
	"name": "RayTaskError(FileNotFoundError)",
	"message": "ray::FlatMap(extract_sections)() (pid=153397, ip=<IP_ADDRESS>)
  File \"/home/sylvain/miniconda3/envs/ray_pgvector/lib/python3.10/site-packages/ray/data/_internal/execution/operators/map_operator.py\", line 405, in _map_task
    for b_out in map_transformer.apply_transform(iter(blocks), ctx):
  File \"/home/sylvain/miniconda3/envs/ray_pgvector/lib/python3.10/site-packages/ray/data/_internal/execution/operators/map_transformer.py\", line 345, in __call__
    for data in iter:
  File \"/home/sylvain/miniconda3/envs/ray_pgvector/lib/python3.10/site-packages/ray/data/_internal/execution/operators/map_transformer.py\", line 171, in __call__
    yield from self._row_fn(input, ctx)
  File \"/home/sylvain/miniconda3/envs/ray_pgvector/lib/python3.10/site-packages/ray/data/_internal/planner/plan_udf_map_op.py\", line 245, in transform_fn
    for out_row in fn(row):
  File \"/home/sylvain/miniconda3/envs/ray_pgvector/lib/python3.10/site-packages/ray/data/_internal/planner/plan_udf_map_op.py\", line 119, in fn
    return op_fn(item, *fn_args, **fn_kwargs)
  File \"/tmp/ray/session_2023-10-11_12-45-18_995895_152214/runtime_resources/working_dir_files/_ray_pkg_74b1a494592133c8/rag/data.py\", line 29, in extract_sections
    with open(record[\"path\"], \"r\", encoding=\"utf-8\") as html_file:
FileNotFoundError: [Errno 2] No such file or directory: 'docs.ray.io/en/master/tune.html'",
	"stack": "---------------------------------------------------------------------------
ObjectRefStreamEndOfStreamError           Traceback (most recent call last)
File python/ray/_raylet.pyx:345, in ray._raylet.StreamingObjectRefGenerator._next_sync()

File python/ray/_raylet.pyx:4533, in ray._raylet.CoreWorker.try_read_next_object_ref_stream()

File python/ray/_raylet.pyx:443, in ray._raylet.check_status()

ObjectRefStreamEndOfStreamError:

During handling of the above exception, another exception occurred:

StopIteration                             Traceback (most recent call last)
File ~/miniconda3/envs/ray_pgvector/lib/python3.10/site-packages/ray/data/_internal/execution/interfaces/physical_operator.py:80, in DataOpTask.on_waitable_ready(self)
     79 try:
---> 80     meta = ray.get(next(self._streaming_gen))
     81 except StopIteration:
     82     # The generator should always yield 2 values (block and metadata)
     83     # each time. If we get a StopIteration here, it means an error
   (...)
     86     # TODO(hchen): Ray Core should have a better interface for
     87     # detecting and obtaining the exception.

File python/ray/_raylet.pyx:300, in ray._raylet.StreamingObjectRefGenerator.__next__()

File python/ray/_raylet.pyx:351, in ray._raylet.StreamingObjectRefGenerator._next_sync()

StopIteration:

During handling of the above exception, another exception occurred:

RayTaskError(FileNotFoundError)           Traceback (most recent call last)
/home/sylvain/Documents/471/LLM/ray_pgvector/llm-applications/ray_pgvector.ipynb Cell 20 line 4
      1 # Extract sections
      2 #ray.data.DataContext.get_current().execution_options.verbose_progress = True
      3 sections_ds = ds.flat_map(extract_sections)
----> 4 sections_ds.count()

File ~/miniconda3/envs/ray_pgvector/lib/python3.10/site-packages/ray/data/dataset.py:2498, in Dataset.count(self)
   2492     return meta_count
   2494 get_num_rows = cached_remote_fn(_get_num_rows)
   2496 return sum(
   2497     ray.get(
-> 2498         [get_num_rows.remote(block) for block in self.get_internal_block_refs()]
   2499     )
   2500 )

File ~/miniconda3/envs/ray_pgvector/lib/python3.10/site-packages/ray/data/dataset.py:4799, in Dataset.get_internal_block_refs(self)
   4780 @ConsumptionAPI(pattern=\"Time complexity:\")
   4781 @DeveloperAPI
   4782 def get_internal_block_refs(self) -> List[ObjectRef[Block]]:
   4783     \"\"\"Get a list of references to the underlying blocks of this dataset.
   4784
   4785     This function can be used for zero-copy access to the data. It blocks
   (...)
   4797         A list of references to this dataset's blocks.
   4798     \"\"\"
-> 4799     blocks = self._plan.execute().get_blocks()
   4800     self._synchronize_progress_bar()
   4801     return blocks

File ~/miniconda3/envs/ray_pgvector/lib/python3.10/site-packages/ray/data/_internal/plan.py:591, in ExecutionPlan.execute(self, allow_clear_input_blocks, force_read, preserve_order)
    589 else:
    590     executor = BulkExecutor(copy.deepcopy(context.execution_options))
--> 591 blocks = execute_to_legacy_block_list(
    592     executor,
    593     self,
    594     allow_clear_input_blocks=allow_clear_input_blocks,
    595     dataset_uuid=self._dataset_uuid,
    596     preserve_order=preserve_order,
    597 )
    598 # TODO(ekl) we shouldn't need to set this in the future once we move
    599 # to a fully lazy execution model, unless .materialize() is used. Th
    600 # reason we need it right now is since the user may iterate over a
    601 # Dataset multiple times after fully executing it once.
    602 if not self._run_by_consumer:

File ~/miniconda3/envs/ray_pgvector/lib/python3.10/site-packages/ray/data/_internal/execution/legacy_compat.py:119, in execute_to_legacy_block_list(executor, plan, allow_clear_input_blocks, dataset_uuid, preserve_order)
    112 dag, stats = _get_execution_dag(
    113     executor,
    114     plan,
    115     allow_clear_input_blocks,
    116     preserve_order,
    117 )
    118 bundles = executor.execute(dag, initial_stats=stats)
--> 119 block_list = _bundles_to_block_list(bundles)
    120 # Set the stats UUID after execution finishes.
    121 _set_stats_uuid_recursive(executor.get_stats(), dataset_uuid)

File ~/miniconda3/envs/ray_pgvector/lib/python3.10/site-packages/ray/data/_internal/execution/legacy_compat.py:357, in _bundles_to_block_list(bundles)
    355 blocks, metadata = [], []
    356 owns_blocks = True
--> 357 for ref_bundle in bundles:
    358     if not ref_bundle.owns_blocks:
    359         owns_blocks = False

File ~/miniconda3/envs/ray_pgvector/lib/python3.10/site-packages/ray/data/_internal/execution/interfaces/executor.py:37, in OutputIterator.__next__(self)
     36 def __next__(self) -> RefBundle:
---> 37     return self.get_next()

File ~/miniconda3/envs/ray_pgvector/lib/python3.10/site-packages/ray/data/_internal/execution/streaming_executor.py:129, in StreamingExecutor.execute.<locals>.StreamIterator.get_next(self, output_split_idx)
    127         raise StopIteration
    128 elif isinstance(item, Exception):
--> 129     raise item
    130 else:
    131     # Otherwise return a concrete RefBundle.
    132     if self._outer._global_info:

File ~/miniconda3/envs/ray_pgvector/lib/python3.10/site-packages/ray/data/_internal/execution/streaming_executor.py:187, in StreamingExecutor.run(self)
    181 \"\"\"Run the control loop in a helper thread.
    182
    183 Results are returned via the output node's outqueue.
    184 \"\"\"
    185 try:
    186     # Run scheduling loop until complete.
--> 187     while self._scheduling_loop_step(self._topology) and not self._shutdown:
    188         pass
    189 except Exception as e:
    190     # Propagate it to the result iterator.

File ~/miniconda3/envs/ray_pgvector/lib/python3.10/site-packages/ray/data/_internal/execution/streaming_executor.py:235, in StreamingExecutor._scheduling_loop_step(self, topology)
    230     logger.get_logger().info(\"Scheduling loop step...\")
    232 # Note: calling process_completed_tasks() is expensive since it incurs
    233 # ray.wait() overhead, so make sure to allow multiple dispatch per call for
    234 # greater parallelism.
--> 235 process_completed_tasks(topology)
    237 # Dispatch as many operators as we can for completed tasks.
    238 limits = self._get_or_refresh_resource_limits()

File ~/miniconda3/envs/ray_pgvector/lib/python3.10/site-packages/ray/data/_internal/execution/streaming_executor_state.py:333, in process_completed_tasks(topology)
    326     ready, _ = ray.wait(
    327         list(active_tasks.keys()),
    328         num_returns=len(active_tasks),
    329         fetch_local=False,
    330         timeout=0.1,
    331     )
    332     for ref in ready:
--> 333         active_tasks[ref].on_waitable_ready()
    335 # Pull any operator outputs into the streaming op state.
    336 for op, op_state in topology.items():

File ~/miniconda3/envs/ray_pgvector/lib/python3.10/site-packages/ray/data/_internal/execution/interfaces/physical_operator.py:88, in DataOpTask.on_waitable_ready(self)
     80     meta = ray.get(next(self._streaming_gen))
     81 except StopIteration:
     82     # The generator should always yield 2 values (block and metadata)
     83     # each time. If we get a StopIteration here, it means an error
   (...)
     86     # TODO(hchen): Ray Core should have a better interface for
     87     # detecting and obtaining the exception.
---> 88     ex = ray.get(block_ref)
     89     self._task_done_callback()
     90     raise ex

File ~/miniconda3/envs/ray_pgvector/lib/python3.10/site-packages/ray/_private/auto_init_hook.py:24, in wrap_auto_init.<locals>.auto_init_wrapper(*args, **kwargs)
     21 @wraps(fn)
     22 def auto_init_wrapper(*args, **kwargs):
     23     auto_init_ray()
---> 24     return fn(*args, **kwargs)

File ~/miniconda3/envs/ray_pgvector/lib/python3.10/site-packages/ray/_private/client_mode_hook.py:103, in client_mode_hook.<locals>.wrapper(*args, **kwargs)
    101     if func.__name__ != \"init\" or is_client_mode_enabled_by_default:
    102         return getattr(ray, func.__name__)(*args, **kwargs)
--> 103 return func(*args, **kwargs)

File ~/miniconda3/envs/ray_pgvector/lib/python3.10/site-packages/ray/_private/worker.py:2547, in get(object_refs, timeout)
   2545     worker.core_worker.dump_object_store_memory_usage()
   2546 if isinstance(value, RayTaskError):
-> 2547     raise value.as_instanceof_cause()
   2548 else:
   2549     raise value

RayTaskError(FileNotFoundError): ray::FlatMap(extract_sections)() (pid=153397, ip=<IP_ADDRESS>)
  File \"/home/sylvain/miniconda3/envs/ray_pgvector/lib/python3.10/site-packages/ray/data/_internal/execution/operators/map_operator.py\", line 405, in _map_task
    for b_out in map_transformer.apply_transform(iter(blocks), ctx):
  File \"/home/sylvain/miniconda3/envs/ray_pgvector/lib/python3.10/site-packages/ray/data/_internal/execution/operators/map_transformer.py\", line 345, in __call__
    for data in iter:
  File \"/home/sylvain/miniconda3/envs/ray_pgvector/lib/python3.10/site-packages/ray/data/_internal/execution/operators/map_transformer.py\", line 171, in __call__
    yield from self._row_fn(input, ctx)
  File \"/home/sylvain/miniconda3/envs/ray_pgvector/lib/python3.10/site-packages/ray/data/_internal/planner/plan_udf_map_op.py\", line 245, in transform_fn
    for out_row in fn(row):
  File \"/home/sylvain/miniconda3/envs/ray_pgvector/lib/python3.10/site-packages/ray/data/_internal/planner/plan_udf_map_op.py\", line 119, in fn
    return op_fn(item, *fn_args, **fn_kwargs)
  File \"/tmp/ray/session_2023-10-11_12-45-18_995895_152214/runtime_resources/working_dir_files/_ray_pkg_74b1a494592133c8/rag/data.py\", line 29, in extract_sections
    with open(record[\"path\"], \"r\", encoding=\"utf-8\") as html_file:
FileNotFoundError: [Errno 2] No such file or directory: 'docs.ray.io/en/master/tune.html'"
}```

Download the dataset using this command on your local machine.
wget -e robots=off --recursive --no-clobber --page-requisites \   --html-extension --convert-links --restrict-file-names=windows \   --domains docs.ray.io --no-parent --accept=html \   -P $EFS_DIR https://docs.ray.io/en/master/

Hi, I'm running into exact same issue. When running the command for
wget -e robots=off --recursive --no-clobber --page-requisites \ --html-extension --convert-links --restrict-file-names=windows \ --domains docs.ray.io --no-parent --accept=html \ -P $EFS_DIR https://docs.ray.io/en/master/

I'm getting same issue as https://github.com/ray-project/ray/issues/26320 so I had to set $EFS_DIR to ../data instead of /mnt/shared_storage/ray-assistant-data, because of this issue: https://github.com/ray-project/llm-applications/issues/100
Even with this workaround, I'm still getting issues with running the same line in notebook:
sections_ds.count()

{
	"name": "RayTaskError(UserCodeException)",
	"message": "ray::FlatMap(extract_sections)() (pid=41516, ip=<IP_ADDRESS>)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File \"/tmp/ray/session_2024-04-24_20-30-47_848902_41459/runtime_resources/working_dir_files/_ray_pkg_82dd1b31f4f4a613/rag/data.py\", line 26, in extract_sections
    with open(record[\"path\"], \"r\", encoding=\"utf-8\") as html_file:
         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
FileNotFoundError: [Errno 2] No such file or directory: '../data/docs.ray.io/en/master/joblib.html'

The above exception was the direct cause of the following exception:

ray::FlatMap(extract_sections)() (pid=41516, ip=<IP_ADDRESS>)
  File \"/Users/rossdancraig/.pyenv/versions/3.11.6/lib/python3.11/site-packages/ray/data/_internal/execution/operators/map_operator.py\", line 419, in _map_task
    for b_out in map_transformer.apply_transform(iter(blocks), ctx):
  File \"/Users/rossdancraig/.pyenv/versions/3.11.6/lib/python3.11/site-packages/ray/data/_internal/execution/operators/map_transformer.py\", line 392, in __call__
    for data in iter:
  File \"/Users/rossdancraig/.pyenv/versions/3.11.6/lib/python3.11/site-packages/ray/data/_internal/execution/operators/map_transformer.py\", line 134, in _udf_timed_iter
    output = next(input)
             ^^^^^^^^^^^
  File \"/Users/rossdancraig/.pyenv/versions/3.11.6/lib/python3.11/site-packages/ray/data/_internal/execution/operators/map_transformer.py\", line 216, in __call__
    yield from self._row_fn(input, ctx)
  File \"/Users/rossdancraig/.pyenv/versions/3.11.6/lib/python3.11/site-packages/ray/data/_internal/planner/plan_udf_map_op.py\", line 264, in transform_fn
    for out_row in fn(row):
                   ^^^^^^^
  File \"/Users/rossdancraig/.pyenv/versions/3.11.6/lib/python3.11/site-packages/ray/data/_internal/planner/plan_udf_map_op.py\", line 127, in fn
    _handle_debugger_exception(e)
  File \"/Users/rossdancraig/.pyenv/versions/3.11.6/lib/python3.11/site-packages/ray/data/_internal/planner/plan_udf_map_op.py\", line 143, in _handle_debugger_exception
    raise UserCodeException() from e
ray.exceptions.UserCodeException",
	"stack": "---------------------------------------------------------------------------
RayTaskError(UserCodeException)           Traceback (most recent call last)
Cell In[25], line 3
      1 # Extract sections
      2 sections_ds = ds.flat_map(extract_sections)
----> 3 sections_ds.count()

File ~/.pyenv/versions/3.11.6/lib/python3.11/site-packages/ray/data/dataset.py:2488, in Dataset.count(self)
   2482     return meta_count
   2484 get_num_rows = cached_remote_fn(_get_num_rows)
   2486 return sum(
   2487     ray.get(
-> 2488         [get_num_rows.remote(block) for block in self.get_internal_block_refs()]
   2489     )
   2490 )

File ~/.pyenv/versions/3.11.6/lib/python3.11/site-packages/ray/data/dataset.py:4631, in Dataset.get_internal_block_refs(self)
   4612 @ConsumptionAPI(pattern=\"Time complexity:\")
   4613 @DeveloperAPI
   4614 def get_internal_block_refs(self) -> List[ObjectRef[Block]]:
   4615     \"\"\"Get a list of references to the underlying blocks of this dataset.
   4616
   4617     This function can be used for zero-copy access to the data. It blocks
   (...)
   4629         A list of references to this dataset's blocks.
   4630     \"\"\"
-> 4631     blocks = self._plan.execute().get_blocks()
   4632     self._synchronize_progress_bar()
   4633     return blocks

File ~/.pyenv/versions/3.11.6/lib/python3.11/site-packages/ray/data/exceptions.py:84, in omit_traceback_stdout.<locals>.handle_trace(*args, **kwargs)
     80 logger.exception(
     81     \"Full stack trace:\", exc_info=True, extra={\"hide\": not log_to_stdout}
     82 )
     83 if is_user_code_exception:
---> 84     raise e.with_traceback(None)
     85 else:
     86     raise e.with_traceback(None) from SystemException()

RayTaskError(UserCodeException): ray::FlatMap(extract_sections)() (pid=41516, ip=<IP_ADDRESS>)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File \"/tmp/ray/session_2024-04-24_20-30-47_848902_41459/runtime_resources/working_dir_files/_ray_pkg_82dd1b31f4f4a613/rag/data.py\", line 26, in extract_sections
    with open(record[\"path\"], \"r\", encoding=\"utf-8\") as html_file:
         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
FileNotFoundError: [Errno 2] No such file or directory: '../data/docs.ray.io/en/master/joblib.html'

The above exception was the direct cause of the following exception:

ray::FlatMap(extract_sections)() (pid=41516, ip=<IP_ADDRESS>)
  File \"/Users/rossdancraig/.pyenv/versions/3.11.6/lib/python3.11/site-packages/ray/data/_internal/execution/operators/map_operator.py\", line 419, in _map_task
    for b_out in map_transformer.apply_transform(iter(blocks), ctx):
  File \"/Users/rossdancraig/.pyenv/versions/3.11.6/lib/python3.11/site-packages/ray/data/_internal/execution/operators/map_transformer.py\", line 392, in __call__
    for data in iter:
  File \"/Users/rossdancraig/.pyenv/versions/3.11.6/lib/python3.11/site-packages/ray/data/_internal/execution/operators/map_transformer.py\", line 134, in _udf_timed_iter
    output = next(input)
             ^^^^^^^^^^^
  File \"/Users/rossdancraig/.pyenv/versions/3.11.6/lib/python3.11/site-packages/ray/data/_internal/execution/operators/map_transformer.py\", line 216, in __call__
    yield from self._row_fn(input, ctx)
  File \"/Users/rossdancraig/.pyenv/versions/3.11.6/lib/python3.11/site-packages/ray/data/_internal/planner/plan_udf_map_op.py\", line 264, in transform_fn
    for out_row in fn(row):
                   ^^^^^^^
  File \"/Users/rossdancraig/.pyenv/versions/3.11.6/lib/python3.11/site-packages/ray/data/_internal/planner/plan_udf_map_op.py\", line 127, in fn
    _handle_debugger_exception(e)
  File \"/Users/rossdancraig/.pyenv/versions/3.11.6/lib/python3.11/site-packages/ray/data/_internal/planner/plan_udf_map_op.py\", line 143, in _handle_debugger_exception
    raise UserCodeException() from e
ray.exceptions.UserCodeException"
}


cache-server scaffolding

Summary
This PR creates an empty server that follows options/config/server pattern.
The server can be run in two modes, as a standalone binary or can be embedded into the existing server.
This is the first part, in the following PRs I'm planning to wire the generic api server, the etcd, and the apiextention server.
The cache server hosts data/resources that are required by shards.
It serves as a cache helping to reduce the storage that would have to
be copied onto every shard otherwise.

The actual group of shards that will use this server should be part of
the topology. For example, it can be used only by shards that are in
the same geographical region.

On a high level, the server exposes two HTTP paths. The first one is
used by the shards for getting all resources. The second one is used
by individual shards to push data they wish to be shared.
There are no limits on the types of data this server hosts. The rule of
thumb is that they must be common for a larger group of shards.
For example the root APIs.

Related issue(s)
Fixes #

/assign @stevekuznetsov @sttts

https://github.com/kcp-dev/kcp/issues/342


filamat failed to create a valid material Package on iOS

I've been trying to replicate the sample_full_pbr example on iOS. I can't seem to get it to work, the call to an object MaterialBuilder::build() created a Package that failed the Material.build() step.
The error is
utils::PostconditionPanic
in filament::Material *filament::Material::Builder::build(filament::Engine &):79
in file filament/src/Material.cpp
reason: could not parse the material package

I've attached an example xcode project based on the hello-pbr-Metal sample. Please run the Metal rendering path.
modified hello-pbr
I don't know what I'm getting wrong.

I see you copied over shaders.apple.S into the sample's generated/ folder and added
#include "shaders.apple.S"

to Resources.S. This fixes linker errors, but is incorrect. The correct fix is to add the -lshaders flag to the "Other Linker Flags" of the Xcode project to link against the libshaders.a library. I'll make this clearer in our documentation.
You'll also want to add
builder.targetApi(MaterialBuilder::TargetApi::METAL);
builder.platform(MaterialBuilder::Platform::MOBILE);

before building in order to build shaders for Metal on iOS.

That fixed it. Thank you.


Correct Spelling Error in Readme

Tho -> Though

Pull Request Test Coverage Report for Build 2863

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 91.601%

Totals

Change from base Build 2823:
0.0%

Covered Lines:
915

Relevant Lines:
967

💛  - Coveralls

Thanks for the fix @Kethku :)

Thank you for the awesome library.


ImprovedChaseCamera: 1.6.0 vs v1.5.0

I am not sure if this is the right place to report this.  If there is a better place, let me known and I'll move it there.
The client shows version "v1.5.0" of ImprovedChaseCamera as the latest version even though "1.6.0" is available and in the CKAN archive.  I believe this is due to the "v" at the front of "v1.5.0" but not "1.6.0".

You're correct, the NetKAN will need "x_netkan_force_v" : true added to it.


bug: modal.hidden when scope is destroyed

Type: bug
Platform: all
When $scope.$on('$destroy') is fired, it also calls $scope.$on('modal.hidden') even if my modal is not displayed. This is unexpected functionality.

Same here. Do you need an example project or something?

Well, the thing in my case is that every time I put a modal I have this piece of code in my controller:
$scope.$on('$destroy', function() {
    $scope.modal.remove();
});

And $scope.modal.remove(); always calls to the 'modal.hidden' event. Not sure if it's a bug or a feature.

Well, the thing is that modal.hidden is called when the modal is removed. Here's the source code for the remove event:
remove: function() {
  var self = this;
  self.scope.$parent && self.scope.$parent.$broadcast(self.viewType + '.removed', self);

  return self.hide().then(function() {
    self.scope.$destroy();
    self.$el.remove();
  });
},

This is a bit annoying when you trigger some action after the modal has been removed because if you navigate to another view the destroy modal.hidden will be triggered and there is no way to differentiate if it has been called through remove or only hidden event.

Greetings @sean-hill!
I've closed this issue because my sensors indicated it was old and inactive, and may have already been fixed in recent versions of Ionic. However, if you are still experiencing this issue, please feel free to reopen this issue by creating a new one, and include any examples and other necessary information, so that we can look into it further.
Thank you for allowing me to assist you.


PhysicalPort incomplete

similar to ComponentPort, the PhysicalPort should show connected PhysicalLinks. But this is not the case at the moment:

alternatively, the PhysicalLinks could be shown for PhysicalComponent, and a list is provisioned in the data structure but erroneously empty. Which is a bug in my understanding.

I checked: only the exchanges attribute in PhysicalPort is missing (cs.py, below line 66 ).
The accessor setting is done at cs.py lines 163 ff.
Please go ahead with the fix, I won't be able to in the next days..


[Publisher] UI Styling Issues in API Security Audit Report Viewing Page

Description
UI for viewing API Security Audit Report is currently not aligned properly.

This should be fixed as shown in [1].
[1] - https://apim.docs.wso2.com/en/4.3.0/assets/img/learn/sample-audit-report.png
Steps to Reproduce
Follow the steps given in doc [1].
[1] - https://apim.docs.wso2.com/en/4.3.0/design/api-security/configuring-api-security-audit/
Affected Component
APIM
Version
4.3.0
Environment Details (with versions)
No response
Relevant Log Output
No response
Related Issues
No response
Suggested Labels
No response

Sent the PR - https://github.com/wso2/apim-apps/pull/656

Reopening as the PR is not merged yet.


Kotlin Doc

[ ] Generate Kotlin doc and publish on Github pages. Similar to Java Doc
[ ] Update example Java code to Kotlin in README.md and wiki.

@lucianocheng Would you or anyone from your team have the bandwidth to pick this up?

@burhanrashid52 assigned myself. Will take a look this week then decide if it makes sense for myself or someone on my team to do it.


fix planning helpers

Fix problem in searching left and right lane

Thanks!
Could you remake a PR to target to develop branch?


Add EXISTS/NOT EXISTS/ANY/SOME/ALL in Cond

Per #100, add missing keywords when building WHERE condition.

Coverage: 96.736% (+0.2%) from 96.562% when pulling 7e9194f57ae98d0948fe51c9c35eecbaf6b72118 on feature-more-cond into 71a85126ce674e6377236c1c19c02b950d8a60b0 on master.


It's possible to create a dynamic volume to download files?

Hey guys,
It's possible create a dynamic volume to download files?
Example: if i run my python code and i need to download some file in machine X, when i perform the download, the file is automatic saved on my folder in machine X. If a run my python code in machine Y, the same happen in machine Y. Is it possible to make?
Regards,

@ViniciusEd have you seen this feature: https://aerokube.com/moon/latest/#accessing-downloaded-files

Hi @vania-pooh,
Yes, and I'm already using it.
I created a logic to download files and it is working, however, I would like to know if it is possible to receive a base64 file in the Get method.
It's possible?

@ViniciusEd this API always sends file bytes only.


Install crictl for CLI interaction with containerd

What would you like to be added: Install crictl as part of the EKS AMI build. Currently the only CLI utility included with the AMI is ctr.
crictl project: https://github.com/kubernetes-sigs/cri-tools/blob/master/docs/crictl.md
crictl documentation included in official Kubernetes docs: https://kubernetes.io/docs/tasks/debug-application-cluster/crictl/
Why is this needed:
Let me first start with issues I have seen with ctr and then I will discuss why crictl is the proposed alternative.
ctr's issues

Non existent documentation. If you search for "containerd ctr documentation" you'll find a blog post or two, an outdated fork of the containerd project that has an old markdown file from 2016, and that's about it. There's the -h help output you can access from the CLI binary itself, but I don't think this is adequate for a new containerd user who is used to docker cli syntax.
Unintuitive syntax when coming from the docker cli. Some commands are relatively straight forward, but in my experience so far there's a learning curve with ctr. This is fine, but the curve is made even steeper by the aforementioned lack of documentation.
Doesn't pull private registry credentials when they are defined in containerd's config.toml. See this comment confirming the same. I have confirmed this myself. When registry credentials are defined in containerd's config.toml a private image can be pulled with crictl but not with ctr. If a user wants to test their containerd config by pulling a private image with the default cli (ctr) they're going to see the image fail to pull even if their config is correct, leading to unnecessary troubleshooting.

crictl as proposed solution

crictl is part of the official kubernetes-sigs "cri-tools" project and was developed with Kubernetes in mind.
crictl is well documented within the official Kubernetes documentation.
crictl seems to honor private registry credentials provided in containerd's config.toml (issue with ctr mentioned above)

Providing a CLI utility that is part of the Kubernetes ecosystem, easier to use, and well documented will ease the transition for new users to containerd.

Another point about "why is this needed", from the ctr's manpage:
ctr(8)()

       ctr is an unsupported debug and administrative client for interacting with the containerd daemon. Because it is unsupported, the commands, options, and operations are not guaranteed to be backward
       compatible or stable from release to release of the containerd project.

Since it's unsupported, i think that installing cri-tools would be important.

Still very relevant, especially given that K8s >=1.2.4 no longer have the dockershim - which will force everyone over to containerd sooner rather than later. Especially the part about ctl not respecting configuration is a big headache for anyone working with private registries etc.

It's also inconsistent with most other kube node deployments, such as the Azure k8s node images.
I was recently amazed to find that crictl is absent from the EKS nodes.
It doesn't appear to be in the yum repo either.


Inject existing svg sprite file

Do you want to request a feature, report a bug or ask a question?
question
I have an existing svg sprite file (as opposed to many svg files) and I would like to inject it into my index.html. Meaning I want to skip the svg bundling part and only do the injecting.
For some reason I don't find a good explanation to this online.
Is it possible to do this with this loader? If not, how can I achieve this?

This loader is for building sprite from single SVG images. It is not possible to use existing sprite with this loader


Floating point exception when configuring lost of LEDs per side

[x] I confirm that this is an issue rather than a question.

Bug report
I use a ws281x LED strip with 144 LEDs on ~1.5m. That's most likely way more than necessary, but given the short length of the strip, I still would like to have it only show a single side (e.g. bottom side).
If I configure less than 144 LEDs in the layout settings, my strip will only light up partially; the only workaround for the issue described below so far is splitting the LEDs onto all for sides, but this doesn't result in correct ambilight, naturally.
Steps to reproduce
In LED Layout settings, set a value >80 for any single side (e.g. bottom)
What is expected?
The program 'renders' the correct amount of LEDs
What is actually happening?
The program crashes with a floating point exception. I'm guessing this is due to the way LED positions are calculated (see the docs about it here). The more LEDs you add per side, the more decimal places you need to represent their positions. Too much decimal places => floating point exception.
Here's the log recorded with hyperiond -d:
hyperion.log
System

Hyperion Server:
- Build:       (HEAD detached at 08909b8a) (Paulchen-Panther-75963ca9/08909b8a-1600115237)
- Build time:  Sep 14 2020 21:04:51
- Git Remote:  https://github.com/hyperion-project/hyperion.ng
- Version:     2.0.0-alpha.8
- UI Lang:     auto (BrowserLang: en-US)
- UI Access:   default
- Avail Capt:  dispmanx,v4l2,framebuffer,qt

Hyperion Server OS:
- Distribution: Open Source Media Center
- Arch:         arm
- Kernel:       linux (4.19.122-1-osmc (WS: 32))
- Browser:      Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/88.0.4287.0 Safari/537.36 Edg/88.0.673.0

@Chaphasilor Thanks for reporting.
The issue is already known #909 and has been already fixed by #1047.

Closed as Duplicate

@Chaphasilor Thanks for reporting.
The issue is already known #909 and has been already fixed by #1047.

Great! Thanks a lot :D


copyViaScp cause I/O error with parallel copying

how to reproduce:

set a environment no rsync installed;
make a ConnectionPool with 2 remotes at least;
try copy a folder to remotes' destination.

result:
there should be a fatal error about {foldername}.tmp.tar.gz, 'can not found' or 'can not remove' etc.
reason:
copyViaScp generates tmp.tar file with same folder name. With parallel copying, first call removed the temp file after uploading it to dest, which caused other fail to get the file.
solution:
generates tmp.tar file name with a unique id for each call of copyViaScp.

@qiyuan-wang shipit is going to change and to be actively maintained. This issue is old, so I closed it. Feel free to open a new one if you still experienced a problem.

@qiyuan-wang will be fixed in https://github.com/shipitjs/ssh-pool/pull/26


Cairo Prover: Prove Pure Cairo (non-starknet contract)

Currently, the Cairo Prover proves only casm.json files from starknet contract.
It would be nice to prove Non-Starknet contracts (pure Cairo programs) for Verifiable Computing.

You can prove cairo0 programs! Instructions are in the Cairo CLI

Yes thanks, but I need to prove Cairo1 programs

Yes, the compiler of Cairo1 is missing proof mode. We added it ourselves but we got an issue with some programs using recursion, so we didn't release it. We will go back to add this in the future

This is solved. Can be continued with #728


Fails to execute query without getKnexQuery()

Describe the bug
It needs a getKnexQuery() or getFormattedQuery(), to execute without errors.
book table has a columns id and author_id, author_id is the id of the author table
author table has columns id and others
Author Entity

@Entity({
  tableName: "author",
})
export class Author {
  @PrimaryKey({ type: UnsafeInt8 })
  id: number | null;

  @OneToMany(() => Book, (book) => book.author, {
    orderBy: { id: QueryOrder.ASC },
  })
  book = new Collection<Book>(this);

  constructor({ id }: { id?: number | null }) {
    this.id = id ?? null;
  }
}

Book Entity

@Entity({
  tableName: "book",
})
export class Book {
  @PrimaryKey({ type: UnsafeInt8 })
  id: number | null;

  @ManyToOne({
    entity: () => Author,
  })
  author: Author;

  constructor({ id, author }: { id?: number | null; author: Author }) {
    this.id = id ?? null;
    this.author = author;
  }
}

Executing query that throws error
const authorQB = em.createQueryBuilder(Author, "author");

authorQB.select(["author.id"]);
authorQB.leftJoin("author.book", "book");
authorQB.limit(10).offset(0);

await authorQB.execute();

Executing query that works fine (adding authorQB.getKnexQuery())
const authorQB = em.createQueryBuilder(Author, "author");

authorQB.getKnexQuery();

authorQB.select(["author.id"]);
authorQB.leftJoin("author.book", "book");
authorQB.limit(10).offset(0);

await authorQB.execute();

Stack trace
Error thrown when no adding authorQB.getKnexQuery();
select "author"."id" from "public"."author" as "author" left join "public"."book" as "book" on "author"."id" = "book"."author_id" where "author"."id" in 'select "author"."id" from (select "author"."id" from "public"."author" as "author" left join "public"."book" as "book" on "author"."id" = "book"."author_id" group by "author"."id" limit 10) as "author"' - syntax error at or near "'select "author"."id" from (select "author"."id" from "public"."author" as "author" left join "public"."book" as "book" on "author"."id" = "book"."author_id" group by "author"."id" limit 10) as "author"'"

error: select "author"."id" from "public"."author" as "author" left join "public"."book" as "book" on "author"."id" = "book"."author_id" where "author"."id" in 'select "author"."id" from (select "author"."id" from "public"."author" as "author" left join "public"."book" as "book" on "author"."id" = "book"."author_id" group by "author"."id" limit 10) as "author"' - syntax error at or near "'select "author"."id" from (select "author"."id" from "public"."author" as "author" left join "public"."book" as "book" on "author"."id" = "book"."author_id" group by "author"."id" limit 10) as "author"'"
    at Parser.parseErrorMessage (.../node_modules/pg-protocol/src/parser.ts:369:69)
    at Parser.handlePacket (.../node_modules/pg-protocol/src/parser.ts:188:21)
    at Parser.parse (.../node_modules/pg-protocol/src/parser.ts:103:30)
    at Socket.<anonymous> (.../node_modules/pg-protocol/src/index.ts:7:48)
    at Socket.emit (node:events:520:28)
    at Socket.emit (node:domain:475:12)
    at addChunk (node:internal/streams/readable:315:12)
    at readableAddChunk (node:internal/streams/readable:289:9)
    at Socket.Readable.push (node:internal/streams/readable:228:10)
    at TCP.onStreamRead (node:internal/stream_base_commons:190:23) {
  length: 293,
  severity: 'ERROR',
  code: '42601',
  detail: undefined,
  hint: undefined,
  position: '154',
  internalPosition: undefined,
  internalQuery: undefined,
  where: undefined,
  schema: undefined,
  table: undefined,
  column: undefined,
  dataType: undefined,
  constraint: undefined,
  file: 'scan.l',
  line: '1134',
  routine: 'scanner_yyerror'
}

Expected behavior
Work without  getKnexQuery() or getFormattedQuery().
Versions

Dependency
Version

node
16.14.0

typescript
4.6.2

mikro-orm
5.1

postgresql

This is not reproducible on my end, please provide minimal executable reproduction, ideally as a test case. You can see how issue tests may look like in https://github.com/mikro-orm/mikro-orm/tree/master/tests/issues.

Closing as there is no failing reproduction, will be happy to reopen if you can provide one.


Generating Visualizations

Hi! I was wondering if you have a script to generate visualizations like in the qualitative results section of the paper? I am struggling to recover the original images from the torch-geometric dataset.

Thanks! I finally managed to get around to it and generated some visualizations of my own. If anyone else needs it, the name and pos attributes can be used to get the original filenames and positions of the nodes for the willow data.


Some of the editor's features won't work until I reload the page

Hi eerotal,
I've been testing Libresignage for a couple days now, and it's been showing great promise.
I encountered an issue, however, when editing queues and slides, or editing users. For example, if I made some changes to a slide and wanted to save them, the save function wouldn't work! And it stayed that way until I reloaded the page, then it was usable again.
As a heads up, I'm testing it in a local computer, with Google Chrome Version 84.0.4147.89 64-bit, on Windows. Libresignage is running in Debugging mode in a Debian 10 VM. I had no problems at all while installing it following your instructions.

Please check if the developer console shows any error messages etc. when you reproduce the issue. Are you running a Docker image or a self built version? Do some specific things consistently cause the issue, and if that's the case what are the steps you need to take to reproduce it?

Where might I find the developer console?

At least in Chrome and Firefox you can open it by pressing F12 or Ctrl+Shift+i. Then select the console tab from the top.


Allow private fields on a task to be used as task attribute

The BehaviorTreeParser class only looks for public fields in the task class to process the TaskAttribute annotation. I don't see any reason why we wouldn't want to extends this to private fields as well.

Looks quite reasonable. I don't think it's possible this could break any existing code, since nothing would have used TaskAttribute on a private field before, and this only affects fields annotated with that.

@tommyettinger it's a breaking change because it looses the inherit fields...

OK, as @mgsx-dev pointed out, using declared fields means losing inherited fields, even if it makes private fields available. since Tasks are generally POJOs, simple data storage with no complex logic, there isn't much reason to even have private fields in them. Inheritance does make more sense than private fields, so we should stick with permitting inherited fields and the previous behavior. I can't un-merge this, but because it is one line I have already brought the code back to before the PR.
As a work-around, you can probably be fine making all of your Task private fields public, unless there's some (Kotlin-related, probably) reason why private fields are needed.


Run Benchmark for custom model

Hi,
first of all, great Code/Paper!
I wanted to run a simple model to compare it with your results. Is there an easy way to for example run a simple sklearn model such that I can directly compare to the results reported in your paper?

Hi! I'm glad to hear that you are interested in the benchmark!
We plan to add a more streamlined way to setup and process the datasets.
Until then the steps to use TabReD are as follows:

Create an env (following readme instruction)
Run mkdir data
Run python preprocessing/<dataset-name>.py for each dataset (it should be quick, longest parts are the downloads)
Modify any of the bin scripts appropriate. I suggest looking at the bin/xgboost.py and switching the model for the one you would like to test (as the GBDT implementations are sklearn-api compatible).

I'll keep the issue open for now, until we make a more streamlined setup for dataset preparation


[EBPF-339] - changed default modifiers initialization for agent's ebpf manager wrapper

What does this PR do?

changed defaultModifiers to lazy initialized list on first manager's init.
added a new overload to ebpf.Manager NewManagerWithDefault to allow creating a manager with default modifiers.

Motivation
once we migrate ebpf programs to the new ebpf.Manager, our UTs will fail (failed job example) since the code-path of ebpf.Setup (which in turn was calling registerDefaultModifiers) is not called in the UTs context.
Also it seems the ebpf.go is a loader for CO-RE and not a general loader for all build modes, so i figured it would be a wrong place to initialize global structure such as defaultModifiersList.
Additional Notes

Possible Drawbacks / Trade-offs

Describe how to test/QA your changes
added UTs for the new ctor overload

/merge


date parsing rebased on extracted method - combining #180+#178

This is

#178
rebased onto
#180

@michaelgrifalconi ok like this?

I still feel it got more complicated just to please the formatting rules, but looks overall fine.
Nice thing the return None, was not aware of that.

I still feel it got more complicated just to please the formatting rules, but looks overall fine.

It's important to just agree on styling rules, enforce them with automation and stick to it. If you feel in general a rule should be changed I suggest you propose that in a separate pull request but chances are slim we will agree on diluting the upstream python community rules


Using and accepting 'System.GC.SuppressFinalize' (fix #590)

@ElemarJR The analyzer change is insufficient. You are verifying the syntax, you should be verifying the symbol. This will not work with the current fix also, and will still raise a diagnostic incorrectly:
using A = System;
public class MyType : System.IDisposable
{
    void IDisposable.Dispose()
    {
        Dispose(true);
        A.GC.SuppressFinalize(this);
    }
    protected virtual void Dispose(bool disposing)
    {

    }
}

Also, on the fix is incorrect, you could have a using with the scope restricted by a namespace declaration, like so:
namespace A
{
    using System;
}
namespace B
{
    class Foo : System.IDisposable
    {
        public void Dispose()
        {
            GC.SuppressFinalize(this);
        }
    }
}

This will return true on your method that checks for usings, but it is out of scope. The way to correct this is to use the full type name, and then use the simplifier.

I got it! I will fix it.
But, this PR improves a lot this Analyzer and Fix. I don't know if it shouldn't be accepted anyway.
I think we should use the scenarios you mentioned in another Issue.


[BUG] About inform actions and entity selection

I have a question regarding inform-actions in ConvLab-2:
Consider for instance the action “Attraction-Inform-Area-3”. If I am correct, this will result in informing the area of the THIRD entity in the database query. Is that correct?
If so, what is the idea behind having “Attraction-Inform-Area-1”,  “Attraction-Inform-Area-2”, “Attraction-Inform-Area-3”, … instead of only having one action “Attraction-Inform-Area” and selecting an entity from the DB-query randomly?
Moreover, if you look at the function “lexicalize_da” in /convlab2/util/multiwoz/lexicalize.py and consider the actions “Attraction-Inform-Area-3” and “Attraction-Inform-Phone-2” then for instance.
Wouldn’t that output you the phone-number of the second entity and the area of the third entity? Shouldn’t the area and phone-number be associated to the same entity?

Consider for instance the action “Attraction-Inform-Area-3”. If I am correct, this will result in informing the area of the THIRD entity in the database query. Is that correct?

Yes

If so, what is the idea behind having “Attraction-Inform-Area-1”, “Attraction-Inform-Area-2”, “Attraction-Inform-Area-3”, … instead of only having one action “Attraction-Inform-Area” and selecting an entity from the DB-query randomly?

Because the system may recommend or mention two or more entities in the response.

Moreover, if you look at the function “lexicalize_da” in /convlab2/util/multiwoz/lexicalize.py and consider the actions “Attraction-Inform-Area-3” and “Attraction-Inform-Phone-2” then for instance.
Wouldn’t that output you the phone-number of the second entity and the area of the third entity? Shouldn’t the area and phone-number be associated to the same entity?

Yes, that would be the work of the police module to output consistent dialogue act


2

Hi, appreciate your PR. There's something missing in our FILE_HANDLERS
can you add that logic?
https://github.com/grumpyp/aixplora/blob/main/backend/utils.py#L4

Hey, thanks for the message, I've added the load_presentation() call in FILE_HANDLERS.

Please make sure you test it before opening a PR.
For me it's not working yet.

so sorry for the delay @grumpyp but I'm facing some issues in building and testing the App. On windows, some of the dependencies aren't supported and on Mac when I run pip install on the requirements.txt, it says some of the dependency versions are conflicting. Should I raise an issue for this?
Anyway I've made the fix for now

Yes please create an issue, so we can fix it.

please make sure to test before requesting a review. I left some comments.

Fixed some stuff #35 merged


Increase browser performance

i added many browser startup arguments for increasing the performance

I prefer to keep the browser as vanilla as possible. But if you would like you can submit a PR that allow to add more browser args.


Document $;

The problem
The C<$;> variable is only in 5to6-perlvar doc.
Suggestions
It would be good if it had its own doc, in Variable.pod6 for instance

because its deprecated, see: https://github.com/perl6/doc/issues/2632

Not really deprecated, it should throw an exception, but it does not:
say "$; is ", $;  # OUTPUT: «$; is (Any)␤»
When it's fixed, that behaviour should be documented anyway, maybe in
perl5to6-variables
El sáb., 2 mar. 2019 a las 22:10, Herbert Breunung (<
<EMAIL_ADDRESS>escribió:

because its deprecated, see: #2632
https://github.com/perl6/doc/issues/2632
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/perl6/doc/issues/2642#issuecomment-468960659, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AAAB9AU0YgowN3f3SPxl24as_sujmhOMks5vSui6gaJpZM4bakBw
.

--
JJ

There is no $; variable in Perl6.
It is an anonymous state variable $, followed by the statement terminator ;.
my $a := $;    my $b := $; # two separate $ variables

$a = 1;
say $b; # (Any)

my $c := $_;    my $d := $_;

$c = 3;
say $d; # 3

say ++ $ for ^3
# 1
# 2
# 3

So the only place it really makes sense to talk about it is in 5to6-perlvar.

Right. Some of the other variables, however, exist, even if they return Any.

According to the raku-gorf-cheatsheet repo, there's only $/, $! (and anonymous state vars). $¢ is also mentioned but it's more internal and I don't know if it should be documented. Everything else is not a variable :)

The thing is that the specs for 6.d say:

Trying to use variables $;, $,, $., $, $(, $),$<, $>, $/, $, $[, $-, $+,
and $@ throws X::Syntax::Perl5Var

So it's not so much a matter of what degree of existence they have; they do
exist enough to be documented if that's the case. Problem is I don't see
how we could actually use $; of for that matter $, Using any one of them
behaves as @b2gills says.

Oh, the parser does detect attempts to use these variables. For example:
$; = 42

===SORRY!=== Error while compiling -e
Unsupported use of $; variable; in Perl 6 please use real multidimensional hashes
at -e:1
------> $;⏏ = 42

Then that's what should be documented, I guess.

Not really, no. IMO these error messages shouldn't even be enabled by default (you should only see them with use training-wheels <perl5>).

Given that this is only part of the 5 to 6 training wheels, I think it's OK that it's only listed on the 5 to 6 page, and that it's not indexed. (it is findable if you use the search site option). The documentation on this page says:

The subscript separator variable is not included in Perl 6. Frankly, if your Perl 5 code is using this, it's almost certainly really, really old.

Closing ticket.


Start using the sdk [SHA] tag in the release pipeline

Once we switch the main of the VMR to be synchronized from dotnet/sdk, the tag on the VMR pipelines will change from install [SHA] to sdk [SHA].
We use this tag to find the associated pipeline runs. We will need to make 9.0 release look for this tag.

Related to https://github.com/dotnet/source-build/issues/4357. Draft PR with changes: https://dev.azure.com/dnceng/internal/_git/dotnet-release/pullrequest/39308 (internal Microsoft link). Planning on updating/publishing the PR once we switch the VMR to sync from dotnet/sdk.

Update: Waiting to update the draft PR until the Staging pipeline is releasing from SDK.

Closing since the PR was merged https://dev.azure.com/dnceng/internal/_git/dotnet-release/pullrequest/39308


Fetch widgets

Works towards #941
Feature Summary and Justification
This feature provides support for fetching widgets from Reddit's new widget API endpoints
References

https://github.com/praw-dev/praw/pull/942

Improvements over last PR

Smaller scope: only supporting fetching widgets, not creating, updating, deleting, or reordering them.
marginally improved (IMO) sorting/ordering in the documentation
replaced __call__() with refresh() and added support for a progressive_images attribute.
Removed most __repr__ and __str__ methods. These can be implemented later if desired. For now, it's better to not have anything than to have the "wrong" thing.

Still a concern:

The widget endpoints return camelCase attributes. Most of PRAW (and I believe most of the Reddit API) uses snake_case naming. As the code is now, the attributes that are automatically populated from Reddit's response will be camelCase. I can normalize all camelCase attribute names to snake_case if that's seen as a better approach.

I just pushed requested changes — sorry for the delay.
The biggest changes are in 004ba19b70eea726687b58fccbcdfbce237188ed, because I had to support all of the widgets and their helper classes in objector.py.
If you find that these changes are ready to be merged, please squash the commits! I haven't squashed them myself because I think it makes it easier to see the new changes.

@bboe I'm leaning towards not removing the __eq__ method on the widget class, but I'd like to hear what you think.
Other than that I think it's ready to be merged.

Feel free to squash (or not) and merge as you see appropriate. Great work!

Merged — thanks for the help @bboe. I plan to submit a PR for moderating widgets as well.


use blob URLs, to create stack traces in evaluated code

Shimport swallows stack traces, which makes things like https://github.com/sveltejs/svelte/issues/2410 hard to debug. We can fix that by stealing a @lukeed trick from dimport and using Blob URLs instead

Nice! :D Happy there was something of use for you there


assertSoftDeleted() and assertNotSoftDeleted() discard $data argument value when first argument is a model

Laravel Version: 8.71.0
PHP Version: 8.0.2
Database Driver & Version: MySQL 8.0

Description:
The testing helpers assertSoftDeleted() and assertNotSoftDeleted() both accept either a table name provided as a string, or a model that implements the SoftDeletes trait. When a model is provided these functions automatically filter the query to the table for the model, as well as looking for the record with the provided primary key.
However, when a model is provided any values provided in the second argument, $data, are discarded when the function recursively calls itself. As a result, what appears to be a valid test case is actually not executed with the expected behavior:
// Assume a database table (example_table) has the following record:
id  | col_a | col_b | deleted_at
1   | foo     | null     | 2021-11-16 00:00:00

// Assume we have a "$model" variable that exists for this record.
// Now, in a test we add the following assertion:

$this->assertSoftDeleted($model, ['col_b' => 'bar']);

The example above will pass, even though the database does not contain a record for that model where col_b is equal to bar. However, if you give that assertion the following code, it does fail as expected:
$this->assertSoftDeleted('example_table', ['id' => 1, 'col_b' => 'bar']);

The code responsible for these functions is here:
https://github.com/laravel/framework/blob/8.x/src/Illuminate/Foundation/Testing/Concerns/InteractsWithDatabase.php#L90-L132
The specific chunk responsible for dropping the $data parameter is here:
https://github.com/laravel/framework/blob/8.x/src/Illuminate/Foundation/Testing/Concerns/InteractsWithDatabase.php#L123-L125

Thank you for reporting. I've sent in a fix for this to https://github.com/laravel/framework/pull/39673

Will be in the next release.


cem-plugin-expanded-types: built-in TS utility types not expanded

Hi!
I noticed that utility types of Typescript (such as Exclude) don't seem to work with cem-plugin-expanded-types. If you use them with a union type (regardless whether imported or local to a file), nothing gets expanded in custom-elements.json.
As a quick example, a type MySize works and gets expanded (with 'sm' | 'md' | 'lg' as a value), but type Exclude<MySize, 'lg'> does not.
My version is the latest one at the moment (1.2.0).
Here's a small repro with a couple of commits demonstrating different utility types that don't work.

Yeah, unfortunately, these and other generics do not work very well. I haven't been able to figure out how to resolve those yet.


[NSE-699] Bump version and update documentation for OAP 1.3.1

What changes were proposed in this pull request?
Bump version and update documentation for OAP 1.3.1
How was this patch tested?
N/A

@HongW2019 should targeting for 1.3.1 branch?

@HongW2019 should targeting for 1.3.1 branch?

Done, switch base to branch-1.3.1.


Add Google Tag Manager Component

Fixes #3

@IM-Deane @r4pt0s do let me know if I have to do any more changes.


Map content should be centered on full-screen view

The column of content on the /map view should be centered on the page when viewed full screen.
Mockup

I don't think it needs to be centered on the side view, unless centering doesn't interfere with the display.
Ref: https://www.reddit.com/r/FreeCodeCamp/comments/41vr0i/please_bring_back_brownish_fcc_old_version/cz73beo

I agree. You can just throw the map in a
.col-xs-12.col-sm-8.col-sm-offset-2.col-md-6.col-md-offset-3

div and it should just work.


Typo "@identity_range"→"@identity_range"

bold with escape characters
https://docs.microsoft.com/en-us/sql/relational-databases/replication/publish/replicate-identity-columns?view=sql-server-2014

@hyoshioka0128 : Thanks for your contribution! The author(s) have been notified to review your proposed change.


Using an image index to reference nested related artifacts

We have encountered some use cases where we would like to associate multiple related artifacts but which would still benefit from having their own namespace location.

Use case: A single Tekton task runs ko to produce multiple container images. While each of these image indexes can be pushed independently, we want to also associate them as being produced together by the single task. If we configure the ko build to push to quay.io/<username>/myrepo/ko-build/<image-name>, the task could return a single result quay.io/<username>/myrepo/ko-build which would map to all image indexes. (side note: chains should also support recursive index images).
Use case: We want to produce an immutable RPM repo which itself has immutable references to contained RPMs. To achieve this, we might push the repo to quay.io/<username>/myrpmrepo and the contained RPMs to quay.io/<username>/myrpmrepo/<rpm> image manifests.

Since an image index only has a reference to the digest for the referenced image index/manifest, it is not possible to map to reference any nested artifacts. Any client that is interested in supporting this functionality would need to add some form of client-specific encoding (i.e. via annotations) on the image index.
While some might be interested in having an image index refer to arbitrary pullspecs, I think that it is better to scope the references only to nested relationships as it is likely easier for registries to implement authorization models for these relationships. Being able to have a common authorization for all referenced artifacts would result in a better user experience.

Hi @arewm. I believe it's possible to have a nested index today with the current specs. What is the specific change you are looking for from the spec? Is it for a standard around querying annotations?

I might have made a poor choice of terms. I assume that it is possible to have an image index point to another image index within the same namespace. What isn't possible possible is to point to an image within a further scoped namespace.
What does work:

Produce an image in a repository
$ echo "unnested image" > unnested.txt
$ oras push quay.io/arewm/oci-spec-1217:unnested ./unnested.txt
✓ Exists    application/vnd.oci.empty.v1+json                                                             2/2  B 100.00%     0s
  └─ sha256:44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a
✓ Uploaded  unnested.txt                                                                                15/15  B 100.00%     2s
  └─ sha256:052ec3b6a7a72037458b61f231635552122aa059b58f096cc7e1b3fb0c69ea60
✓ Uploaded  application/vnd.oci.image.manifest.v1+json                                                591/591  B 100.00%     4s
  └─ sha256:fb84505a92c39564f1976b8753bec1c10443a5b89bb9e900973cbd377d59ec4c
Pushed [registry] quay.io/arewm/oci-spec-1217:unnested
ArtifactType: application/vnd.unknown.artifact.v1
Digest: sha256:fb84505a92c39564f1976b8753bec1c10443a5b89bb9e900973cbd377d59ec4c
$ oras manifest fetch --descriptor quay.io/arewm/oci-spec-1217:unnested
{"mediaType":"application/vnd.oci.image.manifest.v1+json","digest":"sha256:fb84505a92c39564f1976b8753bec1c10443a5b89bb9e900973cbd377d59ec4c","size":591}%

Create an image index referring to that
$ echo '{"schemaVersion":2,"mediaType": "application/vnd.oci.image.index.v1+json","manifests": [{"mediaType":"application/vnd.oci.image.manifest.v1+json","digest":"sha256:fb84505a92c39564f1976b8753bec1c10443a5b89bb9e900973cbd377d59ec4c","size":591}]}' > unnested-manifest.json
$ oras manifest push quay.io/arewm/oci-spec-1217:index unnested-manifest.json
Pushed [registry] quay.io/arewm/oci-spec-1217:index
Digest: sha256:2763178e5ddad8f5ff33ce5ae7d6dcc0ad6ccc46fedeff20f96c07a2c732d065$ oras manifest fetch --pretty quay.io/arewm/oci-spec-1217:index
{
  "schemaVersion": 2,
  "mediaType": "application/vnd.oci.image.index.v1+json",
  "manifests": [
    {
      "mediaType": "application/vnd.oci.image.manifest.v1+json",
      "digest": "sha256:fb84505a92c39564f1976b8753bec1c10443a5b89bb9e900973cbd377d59ec4c",
      "size": 591
    }
  ]
}

Is wrapping this in an image index what is supposed to be supported by the spec?
$ echo '{"schemaVersion":2,"mediaType": "application/vnd.oci.image.index.v1+json","manifests": [{"mediaType":"application/vnd.oci.image.index.v1+json","digest":"sha256:2763178e5ddad8f5ff33ce5ae7d6dcc0ad6ccc46fedeff20f96c07a2c732d065","size":243}]}' > nested-index.json
$ oras manifest push quay.io/arewm/oci-spec-1217:nested-index nested-index.json

What doesn't work but is proposed:

Produce an image in a repository
$ oras push quay.io/arewm/oci-spec-1217/nested:manifest ./nested.txt
✓ Exists    nested.txt                                                                                13/13  B 100.00%     0s
  └─ sha256:6106ccab4c28daa60df08ab663b42c27a3f884ea58da65ac8d6d848055f25588
✓ Exists    application/vnd.oci.empty.v1+json                                                             2/2  B 100.00%     0s
  └─ sha256:44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a
✓ Uploaded  application/vnd.oci.image.manifest.v1+json                                                589/589  B 100.00%     3s
  └─ sha256:99d5be857b2bd8906bb3fcd742119b28bbb637859d6ac2fb382c71058dceb01d
Pushed [registry] quay.io/arewm/oci-spec-1217/nested:manifest
ArtifactType: application/vnd.unknown.artifact.v1
Digest: sha256:99d5be857b2bd8906bb3fcd742119b28bbb637859d6ac2fb382c71058dceb01d
$ oras manifest fetch --descriptor quay.io/arewm/oci-spec-1217/nested:manifest
{"mediaType":"application/vnd.oci.image.manifest.v1+json","digest":"sha256:99d5be857b2bd8906bb3fcd742119b28bbb637859d6ac2fb382c71058dceb01d","size":589}%

Then trying to point to that from an image index in a "parent" namespace
$ echo '{"schemaVersion":2,"mediaType": "application/vnd.oci.image.index.v1+json","manifests": [{"mediaType":"application/vnd.oci.image.manifest.v1+json","digest":"sha256:99d5be857b2bd8906bb3fcd742119b28bbb637859d6ac2fb382c71058dceb01d","size":589}]}' > nested-manifest.json
$ oras manifest push quay.io/arewm/oci-spec-1217:index nested-manifest.json
Error response from registry: failed to tag index: manifest invalid: manifest invalid: map[message:Could not find child manifest with digest `sha256:99d5be857b2bd8906bb3fcd742119b28bbb637859d6ac2fb382c71058dceb01d`]

Proposed change to the spec to add support for nested artifact namespaces
In the details above that don't work, quay returns an error because the registry couldn't find a manifest with the provided digest. If we add an additional optional property for the manifests pointing to a child namespace then a registry could look for the digest there instead.

This issue also come from me, as a registry user, expecting that namespaces within a registry should roughly correspond to logically similar artifacts. When it comes to binary containers, for example (i.e. ko above), my expectation is that each application binary is in its own namespace instead of being in the same namespace with only a unique tag.
Artifacts stored in a registry have relationships to each other. For me, the relationships can be described with:

same namespaces: Artifacts that are similar in their construction and intent. They may vary from other artifacts in the same namespace based on version, platform, etc.
separate namespaces: By extension, if artifacts are in separate namespaces, then they are conceptually different. Examples include binary containers for different application code, different types of unrelated files.
image indexes: Description of links between artifacts. Examples include multiple artifacts built for different platforms, coupling configuration blobs with binary container artifacts, providing directory-like structure to blobs pushed to the registry.
referrer's api: Optional data that can be created to further describe the original artifact. Attestations can also be used here if there is an identity available for signing. Examples include BOMs, CVE/test reports, alternative formats (i.e. tars of the image).

There's no concept of a cross-repository descriptor in OCI, every descriptor references content in the same repository. Trying to change that is likely to face a lot of resistance due to all the issues it creates. A few issues I can think of:

Authentication is scoped per repository. Allowing cross-repository descriptors creates a potential data leakage, and content may only be partially accessible to consumers.
Copying content to a new location would either lose the different repositories and flatten the content to a single repository, potentially break if the identity performing the copy doesn't have access to create additional repositories (which may not match the receiving organization's repository naming scheme), or leave references to external registries (breaking the ability to move content into isolated networks).
All existing tooling to consume content would need to be redesigned and would break when encountering descriptors that span different repositories.
Including the repository name in the descriptor would be immutable without changing the top level index digest, locking in the naming of the other repositories.
Authentication to pull the content is unclear. Would one request multiple scopes for all of the other repositories, or a new auth request per repository being accessed?

Right now, any cross repository logic is registry specific and requires client configuration. E.g. it is possible to push an artifact with a subject digest that does not exist in the current repository. However, registries are permitted to implement their own garbage collection process that would include that content, and clients would need to know how to find the subject digest from another repository and be configured with the repository name to perform the referrers API.
Similarly, it's possible to push an Index that has descriptors that do not exist in the local repository (this is specifically desired for sparse copies that only include specific platforms used in an environment). However, most registries reject that as part of their validation, and many clients would break if they attempted to consume content and follow the path to a missing digest. To support your own use case, you would need a registry that doesn't validate the Index, and would need client tooling that knows how to find the content in different repositories.
Overall, the easy answer is to put all of the content in the same repository, but realize that some registries may reject a nested Index even when the referenced content exists (I recall someone validating the media types listed in an OCI Index were limited to only an OCI Image). Also, clients need to be configured to know how to walk a nested Index to find their content.


update go 1.18, update various dependencies

let's pick a smaller subset first from https://github.com/moby/swarmkit/pull/3068

still failing 😞 - let's remove some more
go: downloading github.com/coreos/go-systemd v0.0.0-20190321100706-95778dfbb74e
cp: cannot stat<EMAIL_ADDRESS>No such file or directory
make: *** [direct.mk:146: go-mod-vendor] Error 1

Argh.. still
Perhaps it's the go mod tidy that I added?

Hmm... not it; perhaps the buster -> bullseye update?

Ah, that doesn't make sense, because CI is not using the Dockerfile?

Looks like the rexray fork needs to be updated if we want to update CSI to v1.5.0;
vendor/github.com/rexray/gocsi/mock/service/service.go:54:9: cannot use s (variable of type *service) as type Service in return statement:
	*service does not implement Service (missing ControllerGetVolume method)

Thx!


Question: does SharpZipLibFileSystem support creating huge files?

I looked over the source code and it appears that SharpZipLibFileSystem stores files in memory when they are created (I'm not positive about that, because I didn't examine everything). Will this prevent files larger than RAM from being created?

No, it does not. Zip files aren't the greatest for adding/removing files once the zip is already created. It is mostly useful as an readonly filesystem, but it can be used as a writable one in-memory. It would be hard to get writable working correctly, as SharpZipLib will start writing the zip file itself once CommitUpdate and Close is called. At the moment SharpZipLibFileSystem will call these upon disposal.
If you want to create large zip files, I'd suggest using ZipOutputStream from SharpZipLib itself.

Thanks!


Update to v7 tag documentation for compatibility with devtools

I ran into an issue using the wrong version with the v7 with v2 of devtools with typeError: getValues is not a function via npm tag https://www.npmjs.com/package/@hookform/devtools

Closed in favor https://github.com/react-hook-form/documentation/pull/522 because better branch name and update text


You should indicate the project is not for production purpose in README.md

Done, can't believe I forgot to do that, thanks!