Fix highlight-deleted-and-added-files-in-diffs on compare pages

Fix #5093
Test URLs
576490d6a60a52601fbc33f31d5d9afcc3840bde...34b0d598eae7633d64f1ecbeb927254e74737905#diff-05ed1c7f99
Screenshot
Before:

After:

This should probably be fixed by listening for the load event of the include-fragment instead:

This is likely the same solution as in #5066. Also there may be other features affected by this, so a reusable onCompareDiffLoad event listener might be useful.


Sieve exercise

This is one of my favourites.

Doesn't an optimal solution here use the square root of a limit or am I thinking of something else?￼
Or is it more important profs are clean than optimal I guess I've always thought a good mix of both. ￼
￼

Yeah, there are some opportunities for improvement. My feeling the proof is just that: that the problem is solvable. Unless the test suite is taking tens of seconds to complete.

@glennj Thanks so much, what next? :-)


Day44: 'Minimum Depth of Binary Tree' solution

Minimum Depth of Binary Tree
https://leetcode.com/problems/minimum-depth-of-binary-tree/
Given a binary tree, find its minimum depth.
The minimum depth is the number of nodes along the shortest path from the root node down to the nearest leaf node.
Note: A leaf is a node with no children.

Example 1:
Input: root = [3,9,20,null,null,15,7]
Output: 2
Example 2:
Input: root = [2,null,3,null,4,null,5,null,6]
Output: 5


codebeat badge

Is it fine to add codebeat badge to README?
codebeat is automated code review tool for Swift, Ruby & Go that helps get instant feedback on code quality.
"Quick wins" suggested by codebeat could be a nice candidate for a pull request and help other developers become contributors.
FYI. To be fully open and honest. I'm co-founder of codebeat.

We will consider adding the badge at a later time. Closing this PR for now.


HWKALERTS-127 Data Driven Group Triggers

No obvious issues found after a couple of reviews.
Two aspects to optimize the cache and the listeners once that we introduce distributed listeners.


Grib1 to Grib2 conversion

Is it possible to convert a grib1 file to grib2 using pygrib?
This is not really an issue, just a question.
Thanks!

Yes, there is a cnvgrib1to2 utility.  It sort of works, but not always, since not all grib1 messages can be converted to grib2 (since there isn't always enough information in a grib1 message to define how to do the conversion).

Oh, that's handy. Thanks!


How can i get all location path under router config

I have a demand to get all of  the location path under the router config  , and  do some global operate.But I can't find any way to get all location path.Did someone have some prompts?

Sorry, this is a bug tracker only. For usage questions, please consult the docs or use Stack Overflow or Reactiflux.


Inline code comments: 2mb vs 4mb segment size

The mi_segment_s code comment in mimalloc-types.h describes the segment size as 2mb on 64-bit systems. The size is listed elsewhere as 4mb on 64-bit systems, and it seems to be 4mb in practice.
https://github.com/microsoft/mimalloc/blob/cbc826beb598f48099a3b35d6f228103a630085a/include/mimalloc-types.h#L201-L204
Slightly above that the MI_PAGE_HUGE is described as 2mb aligned. I'm not sure if this is intentional. It seems to be 4mb aligned on 64-bit systems. (I guess that means it's also 2mb aligned)
https://github.com/microsoft/mimalloc/blob/cbc826beb598f48099a3b35d6f228103a630085a/include/mimalloc-types.h#L198

I'll fix the comments -- everything is 4MiB aligned and in size (MI_SEGMENT_SIZE) and they must be as that is how free finds the page a pointer belongs to.


WIP: Add unloaded module offsets to frames in JSON output.

Reverts the JSON hack introduced for #348 and properly handles the situation. I have intentionally avoided publishing a new version of minidump-stackwalk until this PR so that there's no published version that includes the hack.
That said, we may "prefer" the hybrid solution where "module" is still hacked but we emit unloaded modules anyway. In this case the user could "tell" the module is unloaded by the presence of unloaded_modules.
However this would create a hairy situation if we ever decide to uncondtionally emit unloaded_modules (because maybe someone finds it useful). Then you would have to check if "module" appears in unloaded_modules BUT this is imperfect because you don't know if "module" represents a loaded or unloaded version.
Fixes #168

This is a "2022" PR, so don't sweat it now.
Vacation starts tomorrow.

See also: https://bugzilla.mozilla.org/show_bug.cgi?id=1746630

Rebased. Now that I've had time to sit on this, I'm pretty happy with landing this version. It's a bit more work for someone to use, but it's the Most Correct way of expressing this information.


RDP_INPUT_SYNCHRONIZE not working in fastpath input

keyboard sync not working in Xorg, X11rdp, or RDP proxy when client uses fastpath input

Hi Jay Sorg, the problems seems to be in "xrdp_process_data_in".
It sets "header_size" to 4 bytes, but Fast-Path Synchronize Event (TS_FP_SYNC_EVENT) is 3 bytes long.
That causes "trans_check_wait_objs" to fail because it will never ever be (read_so_far == self->header_size) (4 == 3).
Maybe a workaround could be something like:
    case 1:
        /* we have enough now to get the PDU bytes */
        len = libxrdp_get_pdu_bytes(s->data);
        if (len == -1)
        {
            g_writeln("xrdp_process_data_in: "
                      "xrdp_process_get_packet_bytes failed");
            return 1;
        }

		if (len == 3)
		{
			/* Special fast path frames */

			/* Process it */
			s->p = s->data;
			s->end = s->data + 3;
			if (xrdp_process_loop(pro, s) != 0)
			{
				g_writeln("xrdp_process_data_in: "
						  "xrdp_process_loop failed");
				return 1;
			}

			/* Set the extra read byte as the first byte of a new frame */
			s->data[0] = s->data[3];
			s->end = s->data + 1;
			s->p = s->end;

			pro->server_trans->header_size = 4;
			pro->server_trans->extra_flags = 1;
		}
		else
		{
			pro->server_trans->header_size = len;
			pro->server_trans->extra_flags = 2;
		}
        break;

Best regards!

Oh! I discovered that you must set "s->next_packet = 0;" too.
        /* Set the extra read byte as the first byte of a new frame */
        s->data[0] = s->data[3];
        s->end = s->data + 1;
        s->p = s->end;
        s->next_packet = 0;

Best regards

I can't see how that can happen.
https://msdn.microsoft.com/en-us/library/cc240596.aspx
shows Fast-Path Synchronize Event 1 byte long plus three for the header.
Do you see a fast path length of three?

Oh, I see, if the fast path length field is 1 byte, the header size is 2 bytes and the total size if 3 bytes.

I create PD #425 maybe this will fix it.

Hi Jay,
I've tested it and PR #425 fix the problem.
Thanks


throttle tests failing

if for some reason the network or pathio is slow then the tests result in error (actually because "magic numbers" are used as a perfect time):
python tests/test-throttle.py
INFO:aioftp:aioftp server: serving on <IP_ADDRESS>:8888
INFO:aioftp:aioftp server: new connection from <IP_ADDRESS>:36665
INFO:aioftp:aioftp server: 220 welcome
INFO:aioftp:aioftp client: 220 welcome
INFO:aioftp:aioftp client: USER anonymous
INFO:aioftp:aioftp server: USER anonymous
INFO:aioftp:aioftp server: 230 anonymous login
INFO:aioftp:aioftp client: 230 anonymous login
INFO:aioftp:aioftp client: TYPE I
INFO:aioftp:aioftp server: TYPE I
INFO:aioftp:aioftp server: 200
INFO:aioftp:aioftp client: 200
INFO:aioftp:aioftp client: PASV
INFO:aioftp:aioftp server: PASV
INFO:aioftp:aioftp server: 227-listen socket created
INFO:aioftp:aioftp server: 227 (0,0,0,0,203,221)
INFO:aioftp:aioftp client: 227-listen socket created
INFO:aioftp:aioftp client: 227 (0,0,0,0,203,221)
INFO:aioftp:aioftp client: STOR tests/foo/foo.txt
INFO:aioftp:aioftp server: STOR tests/foo/foo.txt
INFO:aioftp:aioftp server: 150 data transfer started
INFO:aioftp:aioftp client: 150 data transfer started
INFO:aioftp:aioftp server: 226 data transfer done
INFO:aioftp:aioftp client: 226 data transfer done
INFO:aioftp:aioftp server: closing connection from <IP_ADDRESS>:36665
INFO:aioftp:aioftp server: serving on <IP_ADDRESS>:8888
INFO:aioftp:aioftp server: new connection from <IP_ADDRESS>:36667
INFO:aioftp:aioftp server: 220 welcome
INFO:aioftp:aioftp client: 220 welcome
INFO:aioftp:aioftp client: USER anonymous
INFO:aioftp:aioftp server: USER anonymous
INFO:aioftp:aioftp server: 230 anonymous login
INFO:aioftp:aioftp client: 230 anonymous login
INFO:aioftp:aioftp client: TYPE I
INFO:aioftp:aioftp server: TYPE I
INFO:aioftp:aioftp server: 200
INFO:aioftp:aioftp client: 200
INFO:aioftp:aioftp client: PASV
INFO:aioftp:aioftp server: PASV
INFO:aioftp:aioftp server: 227-listen socket created
INFO:aioftp:aioftp server: 227 (0,0,0,0,190,67)
INFO:aioftp:aioftp client: 227-listen socket created
INFO:aioftp:aioftp client: 227 (0,0,0,0,190,67)
INFO:aioftp:aioftp client: STOR tests/foo/foo.txt
INFO:aioftp:aioftp server: STOR tests/foo/foo.txt
INFO:aioftp:aioftp server: 150 data transfer started
INFO:aioftp:aioftp client: 150 data transfer started
INFO:aioftp:aioftp server: 226 data transfer done
INFO:aioftp:aioftp client: 226 data transfer done
INFO:aioftp:aioftp server: closing connection from <IP_ADDRESS>:36667
Traceback (most recent call last):
  File "/home/roman/workspace/aioftp/tests/common.py", line 121, in wrapper
    yield from f(*args, tmp_dir=tmp_dir)
  File "tests/test-throttle.py", line 137, in test_client_write_throttle
    nose.tools.ok_(2.5 < (time.perf_counter() - start) < 3.5)
  File "/home/roman/workspace/aioftp/env/lib/python3.5/site-packages/nose/tools/trivial.py", line 22, in ok_
    raise AssertionError(msg)
AssertionError: None

IMO testing throttle this way is not fully correct.
PS. also, why don't you use loop.time() instead of time.perf_counter()?

How slow should be connection/path operations? I thought this is impossible for such tests (100Kib per second speed). How can we test speed without some hardcoded bounds? What test mechanic is better?
perf_counter is most accurate for current platform, but you are right, we don't need such precission here.

well, on my PC it was always failing. But guess i've found the reason: https://github.com/pohmelie/aioftp/pull/20


clean flask-cors rosdep

Remove flask-cors since not avail during rosdep installation

Looks like its a python2 package? It's missing definitions for python3-flask-cors

Good Idea. In this case, we should add it to rosdep. Will keep this track open, and I will open a pr there.

@tanyouliang95 there is an issue ticket open for other dependencies too. Perhaps you could address all of them?
https://github.com/open-rmf/rmf/issues/27

Open PR: https://github.com/ros/rosdistro/pull/29086

Will close this after added python3-flask-cors  to https://github.com/ros/rosdistro/blob/df4656b9b9e4485924f7b4a5deddcb12ae25b890/rosdep/python.yaml#L6020

Awesome, thanks for getting these into rosdep @tanyouliang95!
Are the other packages python3-shapely python3-yaml python3-requests already available upstream?

Yes, i think they got updated along the way. Can check it out here


Bugsnag-Spring & logback

Hi,
Im trying to use bugsnag-spring 3.4.4 with spring boot 2.1.0. Im using log4j2 and not logback. Logback is excluded and not on the classpath. It seems that bugsnag-java is dependent on logback. Im getting the following error when the application start:
caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'com.bugsnag.BugsnagSpringConfiguration': Invocation of init method failed; nested exception is java.lang.NoClassDefFoundError: ch/qos/logback/core/UnsynchronizedAppenderBase

Thanks for the report @sraveh - this has been fixed in v3.4.6.


Add support for Pod Security Admissions for k8s

I am in the progress of hardening the K3s install  and according to the documentation on the K3s website it is advisable to add a Pod Security Admission to the /var/lib/rancher/k3s/server/ directory.
I can do this by adding a file as a custom file and after the K3s install move this with a custom script into the correct place but was wondering if there is a better way if doing this?

As of right now, you're correct, the custom scripts/files is the way to go. I've edited this issue a bit to be a RFE to look into first class support in the future.


[RUNTIME] Add callback functions for external tools

grid dims, block dims, and stream can be reported with CUPTI. So we can avoid passing these arguments to the tool.

LGTM!


UI: Show the Application Deployment

Short description
As an application operator  I want to go to a page in the UI that shows the current status of my deployment, so that I can determine if the deployment has gone as expected, and can drill down to debug any errors.
Acceptance criteria

[ ]  there is a web page that shows the current status of each object in the application.

Design materials

Screenshots
Design diagrams

Work breakdown
(optional)Task breakdown of the work

[ ] create X
[ ] design X
[ ] ...

superseded by #257


Set a fixed position for tooltips on elements that have a fixed position

When I add a tooltip to an element that is within a fixed position container, and then scroll the page, the tooltip awkwardly jumps around the screen as you scroll when using Safari 8.0.2 (latest) and IE10/11. It is fine in Chrome/Firefox, where the tooltip seems to remain still as you scroll. But on the other browsers, it appears to be "fighting" with the scroll. I have tried master, as well as v4, but the same happens on both. Is there any way to overcome this?

Hi Louisameline,
Is there any work around on the position for the mean time while you do the enhancement on the tooltip?
Cheers,
Jessie

Any forward progress on this? Sorry to pester, really appreciate the awesome plugin, but experiencing the same issues. Thanks!

Not yet unfortunately, I'll you know as soon as it's done.

It's all good, I just added it myself. I would send a pull request but I've manipulated the js file a lot for other custom features. Thanks again for a great plugin!

On May 14, 2015, at 5:34 AM, Louis Ameline<EMAIL_ADDRESS>wrote:
Not yet unfortunately, I'll you know as soon as it's done.
—
Reply to this email directly or view it on GitHub.

@louisameline @davevjr from Louis' earlier comment I can see how I would fix this issue (based on whether a parent had a fixed position). Can either of you provide me with a point in the code in which would be a good place to begin looking. Any vague direction or considerations which might save me time would be much appreciated. If I get round to it, I'll create a pull request. Thanks.

Hi, I've just finalized this, you can try it out on the v4 branch. It definetely needs testing though, I may have overlooked some things in haste.

Hi! Thanks for this change. At first it didn't seem to work. It failed on:
helper.geo.available[container][pos].width >= outerNaturalSize.width

With:
Uncaught TypeError: Cannot read property 'width' of undefined

While inspecting I found that pos was top-left but this key wasn't present in the container. Changing position to position: 'top' fixed the problem.

Tooltipster v4 is out and this issue is fixed. Thank you.
What's new in v4: #565
Migration guide from v3 to v4: #566


"Age range" doesn't show on the main page

Version info
Milligram:
This is a bug on the main page, milligram.github.io.
Test case

https://milligram.github.io/
Steps to reproduce

Load https://milligram.github.io/
Scroll to the "forms" example

Expected behavior

The "age range" label should appear above its dropdown.
Actual behavior

The "age range" label is not there, because the HTML of the page is different from the HTML of the example. The HTML for the label is missing.

Oops.. Thank you for the info @rspeer


rebase: update vault to latest release version

updating dependent vault package to latest available release version
Signed-off-by: Madhu Rajanna<EMAIL_ADDRESS>

/retest ci/centos/mini-e2e-helm/k8s-1.22

/retest ci/centos/mini-e2e-helm/k8s-1.22

X Exiting due to GUEST_PROVISION: Failed to start host: creating host: create: Error creating machine: Error in driver during machine creation: IP not available after waiting: machine minikube didn't return IP after 1 minute

/test ci/centos/mini-e2e-helm/k8s-1.22

🎩]mrajanna@fedora ceph-csi $]go mod verify
all modules verified
[🎩]mrajanna@fedora ceph-csi $]echo $?
0

go mod verify is working fine locally

@mergifyio rebase

go<EMAIL_ADDRESS>requires
<EMAIL_ADDRESS>requires
<EMAIL_ADDRESS>requires
<EMAIL_ADDRESS>reading github.com/tencentcloud/tencentcloud-sdk-go/go.mod at revision v3.0.83: unknown revision v3.0.8

Due to inter dependencies this cannot be point to v1.8.2 closing it for now.


Update db  for expansion tracks

This PR will update Track API with new fields and data to support expansion tracks.
Ticket: https://www.ebi.ac.uk/panda/jira/browse/ENSWBSITES-2135
Review URL: http://update.review.ensembl.org/api/tracks/track_categories/a7335667-93e7-11ec-a39d-005056b38ce3
OpenAPI spec: https://github.com/Ensembl/ensembl-web-track-api/blob/dev/ensembl-track-api.openapi.yaml

Another field for the very near future, that we forgot about, is type (or track_type, or something of this nature). This will let the client know which track accepts what settings. We will soon be told to enable settings for all the variant tracks that we are adding; and there is no way for client to know which settings go with which track.


Change type of log and print to return Unit

This pull request changes the type of log and print to return Unit instead of String and a respectively.
This closes issue #41.
This pull request also contains two commits to clean up the compiler warnings and indentation in the Examples.purs file.

It might be easier to see what was changed by looking at the commits individually:
https://github.com/cdepillabout/purescript-aff/commit/4abdb37935797d18ba91b2b8d99f8b8667135517
https://github.com/cdepillabout/purescript-aff/commit/a4e9bf894ca241e04ae89d028192ab38288fa530
https://github.com/cdepillabout/purescript-aff/commit/e458d9d6f74c57849132b61277863c6eb7e0bcb0
https://github.com/cdepillabout/purescript-aff/commit/a7f04cd56b600d15fe6ea6e98791b1855cc3003a

Since the type of log and print were changed, this will require a version bump to 0.14.
Also, the docs should be regenerated.  I didn't include the updated docs in this commit.

:+1: Can you squash all the commits?

All code has been squashed in commit ae9c72f.

@cdepillabout Thanks for your contribution!


Convert latitude/longitude to GeoJSON

Fixes #5.
In this pull request, I fixed issue #5  related to converting latitude and longitude from YAML files to GeoJSON format.
Changes I did :-

I implemented a recursive function to process files inside subdirectories, read the index.yaml files, and extract latitude and longitude values.
These values are then converted into GeoJSON format and saved as .json files in the same directory.
This change ensures the correct handling of coordinates and improves the overall functionality for processing multiple YAML files within nested folders.

Hi Sir @krisstern  @MarkEWaite @zbynek  ,Could you please review the implementation and confirm if this approach is correct? I would appreciate your feedback on any potential improvements or issues.
Let me know if any further changes are needed!

Hi @biru-codeastromer thanks for the PR! However, I don't understand why we have separate files for the GeoJSON coordinates, different from what they have shown in https://decapcms.org/docs/widgets/#map. Also, I think may be need to tackle #1 before this PR will ever be considered.

Hi @krisstern,
Thank you for the feedback and for highlighting the documentation! The reason I opted for separate files for the GeoJSON coordinates was to ensure modularity and reusability, especially for scenarios where the GeoJSON might need to be consumed independently of the index.yaml files.
That said, I understand your point regarding alignment with the map widget documentation. If you'd prefer that the GeoJSON be integrated directly into the map field of index.yaml, I’m happy to revise my implementation accordingly.
Also thanks for the heads-up regarding issue #1. I’d be happy to look into that as well if it would help progress this PR. Could you kindly provide a brief clarification or additional context about what exactly needs to be addressed in issue #1? This would ensure I fully understand the scope and approach it correctly.
Looking forward to your guidance!


consistent VAST name meaning

VAST name was inconsistent across site. @erogluorhan confirmed with @clyne that it should be "Visualization & Analysis Systems Technologies" everywhere. This PR fixes this.

In Workday? Oh that sounds a lot harder

correct :-)


Can not import it using maven

Hey @sahariardev did you test with gradle too? It's happening only with maven? Which version?

#9


Live

Test PR

Docs Build status updates of commit 6647483:
:white_check_mark: Validation status: passed
For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching the docs.microsoft.com contributor guidesPost your question in the Docs support channel

test PR


How to disable CBGS?

Hi Haotian,
I need the performance without CBGS. Could you please give quick guidance about how to disable it?
Thanks a lot~

CBGS can be turned off if you comment out lines 264-265 in this file and reduce the indentation of lines 266-275 by one level.

Got it. Many thanks.

No problem. I'm closing the issue since it is resolved.


Correction for raw affiliation Ihrim, UMR 5317 ENS Lyon

Correction needed for raw affiliation Ihrim, UMR 5317 ENS Lyon
raw_affiliation_name: Ihrim, UMR 5317 ENS Lyon
new_rors: 04zmssz18;02wmc6m46
previous_rors: 04zmssz18
works_examples: W3009454626
contact: a323a2bd65750f3fbc152d9a068176d0:2bb2c4c0b871b822a3facc894ee6 @ ens-lyon.fr

This issue was accepted and ingested by the OpenAlex team on 2024-12-19. The new affiliations should be visible within the next 7 days.


Pattern for handling has_one and has_many associations

Is there a way to handle creation of has_one and has_many associations? Namely, to have something like:
def factory(:article) do
  %Article{
    title: "My Awesome Article",
    comments: %Comment{
      body: "I will be always here!"
    }
  }
end

and to create it
article_with_comment = create(:article)

Current, if I try to do this I get error  ... Assocs can only be manipulated via changesets, be it on insert, update or delete. when Repo.insert! is called.
If instead model to insert is converted to changeset first, associations are inserted as well,
%{__struct__: model} = record
struct(model) |> Ecto.Changeset.change(drop_ecto_fields(record)) |> repo.insert!

Not sure if this is the right approach though...

Thanks for this issue and the PR, another way to handle this if you want to make things a bit more flexible is to use functions. Here's something we've been doing lately.
def with_comment(article) do
  create(:comment, article: article)
  article
end

create(:article) |> with_comment

That way you can add comments only when you need them. It works great for creating join tables as well. I still agree we need a way to handle has_one and has_many associations though for cases where this isn't ideal

Closing this since #15 was merged into 0.4.0.


fix drawer close issue

fix #18747

@MSharifi78 for now there is bad UX case, when user select text or something else inside drawer, drag cursor to the modal, and mouse button ups on the modal - drawer is closing.
User dont click on the modal, but drawer closes like he clicked...


Add "Divide highway" operation

I usually only report bugs, but this operation would be especially useful if created, so it seems worthy of a new issue.
Often times when mapping, I'll find roads like this one:

Separating the two directions can be quite a pain to do manually, and takes a lot of time.
If a new operation, "Divide highway", were to be created, it would be possible to convert the previous image to this one with two clicks: first click to divide the highway, second one to set the space between the forward/backward directions.

This should also be available for multiple selected features that form a single line from one point to another.

If the highway is part of a relation (border, bus route etc) how should iD know what to do? The border might be the original undivided highway, the bus route uses one of the new segments depeding on direction.

This could get pretty complicated it seems.  Perhaps only ways with no relations could be supported at first.

Isn't it easier to just copy and paste the segment, reconnect the new one at its ends, add it to the relation if necessary, and adjust directions for both?
My only beef is that pasting a long segment makes it "stick" to the mouse in an awkward manner (quite distant from the original) so it is bothersome to move it close to the original position. Still, such splitting is not a very commonly needed operation to justify a separate option.

Turn lanes and lane counts also have to be updated when dividing a road. Until there’s a visual turn lane editor (#387), these tags are hidden and therefore will be ignored by mappers when performing this operation.

Turn lanes and lane counts won’t be a problem as long as :backward and :forward tags are used correctly. But if for instance a two-way way is tagged lanes=3 with no directional tags to clarify, then iD can’t reliably divide the way. iD could refuse to divide the way in this case, and also in the case where the way is tagged with :both_ways tags.

That sounds good.  There are just so many things to account for when splitting a way into two directions, so automating that process could reduce errors by contributors.  It's just quite a complicated operation.


Initial website

@sdgilley,
Thanks for your contribution as a Microsoft full-time employee or intern. You do not need to sign a CLA.
Thanks,
Microsoft Pull Request Bot


Draw tabs around "Pipeline" / "Training" / "Analysis".

So they look like tabs.

See https://github.com/damellis/sensors/commit/9723ef8c7540884263a46472187fb9807a3e024e
It looks like tabs now but still quite sketchy...

Considered done.


currentState v prevState

In this lint rule if references prevState, but at the time the state is used it is actually the current state, no? If so, should we update this page to say currentState?
https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/no-access-state-in-setstate.md

The setState callback runs after the previous state is valid, and before the next state is valid. It's "between" time, so there's no "current" then.
This is react's own terminology.


JS.ORG CLEANUP

JS.ORG CLEANUP
Hello, it seems a js.org subdomain that was requested to target this repository no longer works.
The subdomain requested was webpack-config-plugins.js.org.js.org and had the target of namics.github.io/webpack-config-plugins.
It produced the following failures when tested as part of the cleanup:

HTTP: Failed during request with error 'FetchError: request to http://webpack-config-plugins.js.org.js.org/ failed, reason: getaddrinfo ENOTFOUND webpack-config-plugins.js.org.js.org'
HTTPS: Failed during request with error 'FetchError: request to https://webpack-config-plugins.js.org.js.org/ failed, reason: getaddrinfo ENOTFOUND webpack-config-plugins.js.org.js.org'

To keep the js.org subdomain you should add a page with reasonable content within a month so the subdomain passes the validation.
Failure to rectify the issues will result in the requested subdomain being removed from JS.ORGs DNS and the list of active subdomains.
If you are wanting to keep the js.org subdomain and have added reasonable content, YOU MUST reply to the main cleanup issue with the response format detailed at the top to keep the requested subdomain.
:robot: Beep boop. I am a robot and performed this action automatically as part of the js.org cleanup process. If you have an issue, please contact the js.org maintainers.

Looks like this was a mistake with the cnames_active.js file in js.org - I'll mark this as working :)


Add PHP >= 7 and nightly to Travis build matrix

Thanks, I'll update the code to pass the Travis test soon :+1:


Feature Request: improve default profile padding

The default profiles have a 0,0,0,0 padding and it doesn't look good pinned against so tight against the window frame.
Recommend changing the default to indent to 4,2,0,0.  Curious what others use for their preferred padding.
I'll submit the PR (along with potentially other default profile changes that seem like forward progress)

Padding will depend on the font size of course.  I set my fontsize to 14, and padding to 12, 8, 12, 8

How about increase the default font size from 10 to 11, then 4,2,4,2 padding

@DHowett-MSFT This might be something that we want to research, if people are setting padding or not.
Frankly I'm using 2 as my padding personally, but I thought that people would prefer 0 padding by default.


Docs Update: Adding Reown as one of the available wallet tools on Polygon

Description
WalletConnect Inc. is now known as Reown. This PR adds a dedicated doc page for Reown and also updates the Web3Modal reference, which was rebranded to Reown AppKit.
Closing Issues
Closes issue #2518

Hey @Jaime-N, can you please review this?

Hey @Jaime-N, for some reason, I am unable to see the changes on the docs' website. Can you please take a look?

pulll

pull

kk

pull

K

MERGE


How to execute hover actions

I can see the hover actions available on hover. However, I couldn't figure out how to execute them. Are there any default keybindings? What commands to run?

Upgrading neovim to the latest commit and using the hover keymapping twice solved issue.


BJ266-4: Add unit-test for apis/opts/ports.go, fix #1906

Ⅰ. Describe what this PR did
New ports and expose ports interface.
Ⅱ. Does this pull request fix one issue?

fix #1906
Ⅲ. Describe how you did it
Add one correct test case and two incorrect test case.
Ⅳ. Describe how to verify it
Ⅴ. Special notes for reviews

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

Codecov Report

Merging #1976 into master will increase coverage by 0.09%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master    #1976      +/-   ##
==========================================
+ Coverage   63.31%   63.41%   +0.09%
==========================================
  Files         200      200
  Lines       15522    15522
==========================================
+ Hits         9828     9843      +15
+ Misses       4455     4437      -18
- Partials     1239     1242       +3

Flag
Coverage Δ

#criv1alpha1test
33.82% <ø> (-0.04%)
:arrow_down:

#criv1alpha2test
34.28% <ø> (ø)
:arrow_up:

#integrationtest
38.42% <ø> (-0.01%)
:arrow_down:

#unittest
20.99% <ø> (+0.13%)
:arrow_up:

Impacted Files
Coverage Δ

ctrd/watch.go
72.72% <0%> (-3.04%)
:arrow_down:

daemon/mgr/container.go
53.85% <0%> (-0.16%)
:arrow_down:

cri/stream/httpstream/spdy/upgrade.go
60% <0%> (+5.71%)
:arrow_up:

apis/opts/ports.go
73.91% <0%> (+73.91%)
:arrow_up:


AWSLambda: add metric-streams rule

Relevant information
Added synthesis rule for AWSLambda entities ingesting metrics and using ARN as identifier (DMs)
Checklist

[x] I've read the guidelines and understand the acceptance criteria.
[x] The value of the attribute marked as identifier will be unique and valid.
[ ] I've confirmed that my entity type wasn't already defined. If it is I'm providing an
explanation above.

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

Hi! this draft PR has been open for 1 month.
We will close it given no movement has been made. Please feel free to re-open as a normal PR if it's ready to review & merge


Changes offered on reddit, some of your todo's

Was about to try using this myself and had a free evening. Changes:
Use $XDG_CONFIG_HOME for .edmrc location, fall back to $HOME/.config if not set.
All script arguments ($@) are passed to dmenu
Add following $dmenu_result handles:

a string starting with '/' is treated as an absolute path, thus previous $selected_path is not prepended to it.
a string starting with 'ftp:', http:' or 'https:' is handled to open_command. xdg-open supports these three url schemas, I know MacOS open can handle much more, guess you can replace the regex with ^[a-z0-9]+:/for any url.
p.s. sorry if I spoiled the fun.

Hello @skidnik,
thanks for the pull-request!
I am glad to have received your pull request and shameful I review it just now. I applied it to the code base. I put small changes on top of it. Following conventions, I rename the file .edmrc to edmrc and put it into a folder ${XDG_CONFIG_PATH}/edm.
Consequently, I moved also the .edm-history to ${XDG_CONFIG_PATH:-$HOME/.config}/edm/edm-history.
I am very happy to actually browse and remember URLS via edm now.
Cheers,
Andreas


No Way To View Blog Posts?

Hello. Is this how the program is supposed to function: It only downloads media (sound clips, images, etc), and not the posts themselves? In the directory I chose for it to download to, all there is is media (and it seems to cut off, not including anything under a "Read More"), and no way to view the actual posts (.html or any such files). Unless there's supposed to be a way to open .tumblr files? Am I doing things wrong or is this by design?
If this IS by design, then consider the ability to open the blog itself (even without stylesheets), and the ability to download content under a "Read More" link, as a feature suggestion. But if not, then sorry I'm a noob, lol. Thanks.

Hmm... given just how much data is in that "dump crawler data" dump, I'm wondering how difficult it would be to put together a bare-bones viewable-as-blog skin like tumblr-utils does. The JSON from the crawler dump contains the html for each individual post, so it should "just"* be a matter of stringing them together, swapping out the Tumblr image URLs for the locally-downloaded image files, and applying some default backup CSS.

Turn on the Download *** meta and/or Download *** post-options in the details pane. You might want to change the metadata format to json if you want to parse it further.
If that's still not enough, enable the dump crawler data-option.
Everything under the Details pane (on the right side of the application, after selecting a blog).

Thanks, but it still didn't work. The only change that adding the 'meta' options did, was adding .txt files containing copy/pastes of the text portions of posts, questions/answers, url text, etc each in their own respective .txt files. There's still no way to open the posts themselves including the images in context. No .html/.xml/.pdf or any such files that reconstruct the posts with the media. Just pictures and .txt files. Changing to JSON format did nothing new either.

ZaCloud, if you turn on "Dump Crawler Data", then each post will also be saved as its own .json, which carries a ridiculous amount of metadata - including the HTML for the post!

Well, I don't know what I'm supposed to do with a huge pile of individual .json files full of code. This still doesn't get me any closer to having a simplified replication of opening a tumblr blog in an easily readable format. :/

Oh, sorry, I misunderstood. ZaCloud, currently TumblThree doesn't have that functionality. tumblr-utils, however, can do pretty much exactly what you're asking (although it's got its own shortcomings).

Hello. Is this how the program is supposed to function: It only downloads media (sound clips, images, etc), and not the posts themselves?

First: It obviously does download the actual posts. Like you say yourself, in text or json format. It's just not in your wanted format.
I was never interested in mirroring the exact tumblr website structure, nor the theme. I simply didn't see the gain in opening the posts in this bloaty, heavy java script site.
There probably already is an open issue/request for mirroring the theme/css/website. Since no one was interested in implementing it, it' not here. But as @MrEldritch said, most of the parts necessary are already filtered and somewhere in the code. Someone (still) has to implement the theme/css grabbing and path redirecting parts.

Ahh, I see. Well thank you everyone. @johanneszab , as @MrEldritch pointed out, tumblr-utils does indeed make the blogs viewable, with a slim, simplified format that doesn't emulate the bloated themes, and that's honestly fine. While I was able to get tumblr-utils to do what I wanted, I'm sure many are a bit intimidated by the thought of using command lines, so it'd still be nice to see this utility have a similar capability.
The remaining problem now is that media under a "Read More" seems to still not be downloaded, and I'm sure that'd also be a feature of interest for most.

Honestly, I'd be happy to help with this myself, but I don't know .NET / C#. I already spent a few hours trying to do the opposite - figure out how TumblThree accessed hidden blogs and see if I could replace tumblr-utils' crawler with it, because tumblr-utils is Python and I do know that - but I just couldn't quite get the trick with the cookies to work. And it's clear that TumblThree is just a much more powerful crawler, in general, than tumblr-utils; the trick is just in the final reprocessing step.
Still .... tumblr-utils is only a thousand lines of Python, and much of that is for the scraping and json processing that TumblThree already does. The actual meat might not be that complicated, maybe simple enough that I could actually figure out how to do it and quickly learn enough .NET to integrate it.

@MrEldritch @ZaCloud
I made a script that converts files downloaded by TumblThree into html files.
You can find the script here: tumblr_generate_html_files

Thanks a lot, @santa-man!
I'll take a look at it after the holidays, and maybe we can together integrate this/something similar into TumblThree, in case of you are interested and a functionality like this is still needed. Well, maybe even Tumblr recognizes in a few weeks from now that they made a mistake, or things aren't going to be as bad as people think ..


problem when run dep ensure

dep ensure
Solving failure: "github.com/coreos/go-systemd/util" imports "github.com/coreos/go-systemd/v22/internal/dlopen", which contains malformed code: no package exists at "github.com/coreos/go-systemd/v22/internal/dlopen"

sorry,maybe just network problem,I run succeesfully after trying a lot of times


Support jax.nn.initializers in Module initialization API?

jax.nn.initializers provides several commonly used initializers such as orthogonal and glorot_normal. I'd like to propose supporting these initializers as arguments of common modules, e.g., :
class Linear(Module):
...
    def __init__(
        self,
        in_features: Union[int, Literal["scalar"]],
        out_features: Union[int, Literal["scalar"]],
        use_bias: bool = True,
        w_init: jax.nn.initializers.Initializer = jax.nn.initializers.lecun_uniform(),
        b_init: jax.nn.initializers.Initializer = jax.nn.initializers.lecun_uniform(),
        *,
        key: PRNGKey
    ):
...

I know that now we can manually call these initializers, but doing custom initialization for many layers can be cumbersome. Taking initializers as arguments makes custom initialization much easier and clearer. I have two possible concerns with it, though:

It can make the API complex especially for complex modules
vmapping  Module.__init__ can cause some troubles when we give specific dimensions (e.g., in_axis=1) to initializers

Given these considerations, I'm still thinking about these APIs better, and happy to hear your opinions. I'm also happy to implement these things if you are down to this idea.

This request comes up every now and again, e.g.
#94
#179
and so far the answer has been to do custom parameter initialisation using equinox.tree_at, as in these docs.
For example you can wrap
def linear(*args, **kwargs):
    out = eqx.nn.Linear(*args, **kwargs)
    out = eqx.tree_at(lambda l: l.bias, out, replace_fn=jnp.zeros_like)
    return out

and use linear everywhere you were previously using eqx.nn.Linear, if you so wish.
So far I've resisted adding custom initialisers as this adds quite a lot of complexity -- e.g. a MultiheadAttention layer may in principle want different initialisers for each of its projections, so the API swiftly gets out of hand.

I see. Thank you for your explanation. I agree that it would add unreasonable complexity to __init__ arguments of complex models.
Instead, how do you think about providing some syntax sugar to write this code to gather params?
  get_weights = lambda m: [x.weight
                           for x in jax.tree_util.tree_leaves(m, is_leaf=is_linear)
                           if is_linear(x)]

For example, tree_filter_leaves like below could be useful:
def tree_filter_leaves(
    select_fn_or_type: Callable[[_Node], bool] | Type,
    pytree: PyTree,
    map_fn: Callable[[_Node], Any] = lambda x: x,
) -> PyTree:
    if isinstance(select_fn_or_type, type):
        select_fn = lambda node: isinstance(node, select_fn_or_type)
    else:
        select_fn = select_fn_or_type
    leaves = jtu.tree_leaves(pytree, is_leaf=select_fn)
    return tuple(map(map_fn, filter(select_fn, leaves)))

I don't think that this comes up frequently enough (or that implementing the above is difficult enough) that it's worth adding a new function to Equinox itself. Adding the above probably also means adding tree_filter_map for example, and then the API surface gets even larger!

I see. Maybe it's better to just have this in my personal toolbox. Thank your for the discussion.


usage example

An example on how to use this library would help a lot. I want to test a non-gpu BLAS intensive application for which I have a jobfile (job) for the slurm queue system:
sbatch job
job file contains:
#!/bin/bash -l
#SBATCH
export OMP_NUM_THREADS=$SLURM_CPUS_PER_TASK
export MPICH_MALLOC_FALLBACK=1
export LD_PRELOAD=/scilib-accel/scilib-dbi.so
export SCILIB_DEBUG=1
ulimit -s unlimited
srun --cpu-bind=socket ./application
unset LD_PRELOAD
unset SCILIB_DEBUG

I get the error:
srun: error while loading shared libraries: libacchost.so: cannot open shared object file: No such file or directory
What am I doing wrong?

Apparently is an error related to the environment. If I submit the job file using the environment used to build the scilib I get rid of that error message. But now I the the error:
CUBLAS error: the library was not initialized in blas/NVIDIA/dgemm.c:96     dgemm_ time: total=        0.003476, compute=        0.003371, other=        0.000104     dsyrk_ time: total=        0.000253, compute=        0.000227, other=        0.000026 srun: error: nid006631: task 0: Exited with exit code 1 srun: Terminating StepId=514051.0 slurmstepd: error: *** STEP 514051.0 ON nid006631 CANCELLED AT 2024-09-09T11:14:35 *** srun: error: nid006631: tasks 1-15,18-31: Terminated srun: error: nid006631: task 16: Terminated srun: error: nid006631: task 17: Terminated srun: Force Terminated StepId=514051.0

Hardware: 1 node with four NVIDIA Grace-Hopper 72 ARM cores, 128 GB LPDDR 5X RAM, H100 GPU with 96 GB HBM3 memory
My environment is:

printenv
LD_LIBRARY_PATH=/user-environment/env/icon/lib64:/opt/cray/libfabric/<IP_ADDRESS>/lib64:/opt/cray/libfabric/<IP_ADDRESS>/lib:/user-environment/env/icon/lib
HOSTTYPE=aarch64
LC_MEASUREMENT=de_CH.UTF-8
BOOST_ROOT=/user-environment/env/icon
SSH_CONNECTION=XXX
LESSCLOSE=lessclose.sh %s %s
LC_PAPER=de_CH.UTF-8
LC_MONETARY=de_CH.UTF-8
XKEYSYMDB=/usr/X11R6/lib/X11/XKeysymDB
LANG=en_US.UTF-8
LMOD_SYSTEM_NAME=XXX
WINDOWMANAGER=/usr/bin/gnome
LESS=-M -I -R
JAVA_ROOT=/usr/lib64/jvm/java-11-openjdk-11
HOSTNAME=XXX
UENV_MOUNT_FILE=/capstor/scratch/cscs/$USER/.uenv-images/images/37652229b57b5ac32cda84de1c25b7d71811874a233c80242a0b8e4cfb1b201b/store.squashfs
APPS=/capstor/apps/cscs/XXX
CSHEDIT=emacs
GPG_TTY=/dev/pts/20
LESS_ADVANCED_PREPROCESSOR=no
COLORTERM=1
UENV_VERSION=5.1.0
JAVA_HOME=/usr/lib64/jvm/java-11-openjdk-11
MACHTYPE=aarch64-suse-linux
MINICOM=-c on
OSTYPE=linux
HDF5_PLUGIN_PATH=/user-environment/env/icon/plugins
MPIF90=/user-environment/env/icon/bin/mpif90
LC_NAME=de_CH.UTF-8
XDG_SESSION_ID=47748
USER=XXX
PAGER=less
UENV_PREFIX=/opt/cscs/uenv
MPICXX=/user-environment/env/icon/bin/mpic++
__LMOD_REF_COUNT_MODULEPATH=/etc/cscs-modules:1
MORE=-sl
PWD=/users/XXX
HOME=/users/XXX
PELOCAL_PRGENV=1
CMAKE_PREFIX_PATH=/user-environment/env/icon:/opt/cray/xpmem/2.8.2-1.0_3.7__g84a27a5.shasta:/opt/cray/libfabric/<IP_ADDRESS>
LMOD_COLORIZE=no
HOST=todi-ln001
SSH_CLIENT=XXX
LMOD_VERSION=8.7.31
CUDA_HOME=/user-environment/env/icon
XNLSPATH=/usr/X11R6/lib/X11/nls
LMOD_SETTARG_CMD=:
XDG_SESSION_TYPE=tty
SDK_HOME=/usr/lib64/jvm/java-11-openjdk-11
BASH_ENV=/opt/cray/pe/lmod/lmod/init/bash
XDG_DATA_DIRS=/usr/share
UENV_MOUNT_POINT=/user-environment
PROJECT=/project/XXX
NVHPC_CUDA_HOME=/user-environment/env/icon
LIBGL_DEBUG=quiet
JDK_HOME=/usr/lib64/jvm/java-11-openjdk-11
LC_ADDRESS=de_CH.UTF-8
PROFILEREAD=true
LC_NUMERIC=de_CH.UTF-8
LMOD_sys=Linux
ModuleTable001=XXX
LUSTRE_JOB_ID=XXX
UENV_IMG_CMD=env -u PYTHONPATH -u VIRTUAL_ENV /opt/cscs/uenv/libexec/uenv-image
SCRATCH=/capstor/scratch/cscs/XXX
MPICC=/user-environment/env/icon/bin/mpicc
LMOD_ROOT=/opt/cray/pe/lmod
SSH_TTY=/dev/pts/20
MAIL=/var/spool/mail/XXX
UENV_VIEW=/user-environment:icon-wcp:icon
LESSKEY=/etc/lesskey.bin
TERM=xterm-256color
SHELL=/usr/local/bin/bash
XDG_SESSION_CLASS=user
ModuleTable_Sz=1
UENV_WRAPPER_CMD=/opt/cscs/uenv/libexec/uenv-wrapper
SHLVL=2
G_FILENAME_ENCODING=@locale,UTF-8,ISO-8859-15,CP1252
MPIF77=/user-environment/env/icon/bin/mpif77
ACLOCAL_PATH=/user-environment/env/icon/share/aclocal:/usr/share/aclocal
MANPATH=/user-environment/env/icon/share/man:/user-environment/env/icon/man:/usr/share/man:/usr/man:/opt/cray/libfabric/<IP_ADDRESS>/share/man:/opt/cray/pe/lmod/lmod/share/man:/usr/local/man:/usr/local/share/man:/usr/share/man:/usr/man
LC_TELEPHONE=de_CH.UTF-8
LMOD_PREPEND_BLOCK=normal
MODULEPATH=/etc/cscs-modules
LOGNAME=XXX
DBUS_SESSION_BUS_ADDRESS=XXX
XDG_RUNTIME_DIR=/run/user/XXX
MODULEPATH_ROOT=/opt/cray/pe/modulefiles
JRE_HOME=/usr/lib64/jvm/java-11-openjdk-11
UENV_MOUNT_LIST=/capstor/scratch/cscs/XXX/.uenv-images/images/37652229b57b5ac32cda84de1c25b7d71811874a233c80242a0b8e4cfb1b201b/store.squashfs:/user-environment
XDG_CONFIG_DIRS=/etc/xdg
PATH=/user-environment/linux-sles15-neoverse_v2/gcc-12.3.0/gcc-12.3.0-yfdpfoi7qo4e7ub4l4isthtcfevf4zee/bin:/user-environment/linux-sles15-neoverse_v2/gcc-12.3.0/nvhpc-24.3-ti5vnjw2lq7oydromjw6bvnb7aliu6qa/Linux_aarch64/24.3/compilers/bin:/user-environment/env/icon/bin:/user-environment/env/icon/libexec/osu-micro-benchmarks/mpi/collective:/user-environment/env/icon/libexec/osu-micro-benchmarks/mpi/one-sided:/user-environment/env/icon/libexec/osu-micro-benchmarks/mpi/pt2pt:/user-environment/env/icon/libexec/osu-micro-benchmarks/mpi/startup:/opt/cray/libfabric/<IP_ADDRESS>/bin:/usr/bin:/bin:/users/$USER/bin:/usr/local/bin:/usr/bin:/bin:/usr/lpp/mmfs/bin:/usr/lib/mit/bin
JAVA_BINDIR=/usr/lib64/jvm/java-11-openjdk-11/bin
LC_IDENTIFICATION=de_CH.UTF-8
PS1=[[\e[31m]todi[\e[m]][\u@\h \W]$
MODULESHOME=/opt/cray/pe/lmod/lmod
LMOD_SETTARG_FULL_SUPPORT=no
PKG_CONFIG_PATH=/user-environment/env/icon/lib64/pkgconfig:/user-environment/env/icon/lib/pkgconfig:/usr/share/pkgconfig:/usr/lib64/pkgconfig:/usr/lib/pkgconfig:/opt/cray/xpmem/2.8.2-1.0_3.7__g84a27a5.shasta/lib64/pkgconfig:/opt/cray/libfabric/<IP_ADDRESS>/lib64/pkgconfig:/user-environment/env/icon/share/pkgconfig
G_BROKEN_FILENAMES=1
HISTSIZE=1000
LMOD_PKG=/opt/cray/pe/lmod/lmod
CLUSTER_NAME=todi
CPU=aarch64
SSH_SENDS_LOCALE=yes
UENV_CMD=env -u PYTHONPATH -u VIRTUAL_ENV /opt/cscs/uenv/libexec/uenv-impl
LMOD_CMD=/opt/cray/pe/lmod/lmod/libexec/lmod
LESSOPEN=lessopen.sh %s
LMOD_FULL_SETTARG_SUPPORT=no
LMOD_DIR=/opt/cray/pe/lmod/lmod/libexec
LC_TIME=de_CH.UTF-8

Hi Luis,
Thanks for the details.  I don't see anything wrong, and you are using the lib correctly.   The cublas gets initialized in scilib_nvidia_init() which is called in the Linux ELF init array, so something mysteriously is disturbing that init array.    Let's try two things to better understand it:

scilib-accel has a dgemm test code,  you should see a test_dgemm.x file in scilib-accel directory,   try run that simple case by :    echo 1000 1000 1000 10| LD_PRELOAD=./sclib-dbi.so ./test_dgemm.x,   also try the DLSYM version  echo 1000 1000 1000 10| LD_PRELOAD=./sclib-dl.so ./test_dgemm.x,   "1000 1000 1000" is the matrix input for dgemm, and 10 is 10 iterations.

there is an error check for cublas init in nvidia.c ,  apparently it is not working. Can you add a print statement in the scilib_nvidia_init() routine to check if that function get executed at all?

It is great that you have a Cray! I have been hoping to test GH node on Cray but don't have access.
Best
Junjie

Here are the outputs for point 1:

Run with -f to if you'd like to enter the full input arguments.
Enter m, n, k niter:
dgemm runtime(s):            0.105323
dgemm runtime(s):            0.004281
dgemm runtime(s):            0.004260
dgemm runtime(s):            0.004267
dgemm runtime(s):            0.004340
dgemm runtime(s):            0.004295
dgemm runtime(s):            0.004335
dgemm runtime(s):            0.004273
dgemm runtime(s):            0.004272
dgemm runtime(s):            0.004250
Min dgemm runtime (s):            0.004250
Avg dgemm runtime (s):            0.004286 (excl. 1st run)
Result check        1000.00      1000

DLSYM version:

Run with -f to if you'd like to enter the full input arguments.
Enter m, n, k niter:
dgemm runtime(s):            0.020958
dgemm runtime(s):            0.004268
dgemm runtime(s):            0.004253
dgemm runtime(s):            0.004256
dgemm runtime(s):            0.004247
dgemm runtime(s):            0.004257
dgemm runtime(s):            0.004252
dgemm runtime(s):            0.004238
dgemm runtime(s):            0.004273
dgemm runtime(s):            0.004249
Min dgemm runtime (s):            0.004238
Avg dgemm runtime (s):            0.004255 (excl. 1st run)
Result check        1000.00      1000

It seems to be working just fine

Output of point 2:
Just to check the print statement:
echo 1000 1000 1000 10| LD_PRELOAD=./scilib-dbi.so ./test_dgemm.x
scilib_nvidia_init is being executed
Run with -f to if you'd like to enter the full input arguments.
Enter m, n, k niter:
dgemm runtime(s):            0.021414
dgemm runtime(s):            0.004267
dgemm runtime(s):            0.004246
dgemm runtime(s):            0.004246
dgemm runtime(s):            0.004233
dgemm runtime(s):            0.004243
dgemm runtime(s):            0.004245
dgemm runtime(s):            0.004231
dgemm runtime(s):            0.004254
dgemm runtime(s):            0.004231
Min dgemm runtime (s):            0.004231
Avg dgemm runtime (s):            0.004244 (excl. 1st run)
Result check        1000.00      1000

Actual testing:
CUBLAS error: the library was not initialized in blas/NVIDIA/dgemm.c:96
scilib_nvidia_init is being executed
dgemm_ time: total=        0.005841, compute=        0.005728, other=        0.000113
dsyrk_ time: total=        0.000290, compute=        0.000254, other=        0.000036
srun: error: nid006679: task 0: Exited with exit code 1
srun: Terminating StepId=578937.0
slurmstepd: error: *** STEP 578937.0 ON nid006679 CANCELLED AT 2024-09-16T10:34:20 ***
srun: error: nid006679: tasks 1-12,14,16,18-20,22-31: Terminated
srun: error: nid006679: tasks 13,15,17,21: Terminated
srun: Force Terminated StepId=578937.0

Interesting. Although no error for the simple test run, the timing indicates GPU wasn't used at all.  On a Hopper, multiplying 1000x1000 matrix takes only 60 to 80 us:
c609-001.vista(1004)$ echo 1000 1000 1000 10 | LD_PRELOAD=./scilib-dbi.so ./test_dgemm.x
Run with -f to if you'd like to enter the full input arguments.
Enter m, n, k niter:
dgemm runtime(s):            0.020648
dgemm runtime(s):            0.000084
dgemm runtime(s):            0.000068
dgemm runtime(s):            0.000066
dgemm runtime(s):            0.000064
dgemm runtime(s):            0.000065
dgemm runtime(s):            0.000065
dgemm runtime(s):            0.000065
dgemm runtime(s):            0.000064
dgemm runtime(s):            0.000064
Min dgemm runtime (s):            0.000064
Avg dgemm runtime (s):            0.000067 (excl. 1st run)
Result check        1000.00      1000
Can I ask you to try another test?  I just pushed a new test to scilib-accel/explore/page_move_study/ ,  it is cublas test code, no automatic offload but a native cublas call.  Run it simply by ./run.sh:  this is my output:
c609-002.vista(1040)$ ./run.sh
Matrix dimensions: M=32, N=2400, K=93536
Matrix size: A      23.95 MB, B    1795.89 MB, C       0.61 MB, Total    1820.45 MB

iteration   0,  CPU dgemm time         :     13.037 ms,  numa A B C: 0 0 0
iteration   1,  CPU dgemm time         :     10.423 ms,  numa A B C: 0 0 0
iteration   2,  CPU dgemm time         :     11.350 ms,  numa A B C: 0 0 0
iteration   3,  CPU dgemm time         :     10.389 ms,  numa A B C: 0 0 0
iteration   4,  CPU dgemm time         :     10.370 ms,  numa A B C: 0 0 0
move_page time        0.005104 of 366 pages
move_page time        0.351370 of 27404 pages
move_page time        0.000397 of 10 pages

iteration   0, cublasdgemm time        :     17.013 ms,  numa A B C: 1 1 1
iteration   1, cublasdgemm time        :      0.536 ms,  numa A B C: 1 1 1
iteration   2, cublasdgemm time        :      0.520 ms,  numa A B C: 1 1 1
iteration   3, cublasdgemm time        :      0.520 ms,  numa A B C: 1 1 1
iteration   4, cublasdgemm time        :      0.518 ms,  numa A B C: 1 1 1

iteration   0,  CPU dgemm time         :     14.236 ms,  numa A B C: 1 1 1
iteration   1,  CPU dgemm time         :     13.959 ms,  numa A B C: 1 1 1
iteration   2,  CPU dgemm time         :     15.070 ms,  numa A B C: 1 1 1
iteration   3,  CPU dgemm time         :     13.998 ms,  numa A B C: 1 1 1
iteration   4,  CPU dgemm time         :     14.001 ms,  numa A B C: 1 1 1

The first block shows timing running CPU BLAS on LPDDR5,  second block shows cuBLAS using data migrated from LPDDR5 to HBM which is 20x faster than CPU blas,  last block is CPU BLAS running with data on HBM which is slower than CPU using LPDDR5 as mem bandwidth is lower.
Best
Junjie

./run.sh
Lmod has detected the following error: The following module(s) are unknown:
"nvhpc-hpcx-cuda12/24.7"
Please check the spelling or version number. Also try "module spider ..."
It is also possible your cache file is out-of-date; it may help to try:
$ module --ignore_cache load "nvhpc-hpcx-cuda12/24.7"
Also make sure that all modulefiles written in TCL start with the string #%Module
Matrix dimensions: M=32, N=2400, K=93536
Matrix size: A      23.95 MB, B    1795.89 MB, C       0.61 MB, Total    1820.45 MB

iteration   0,  CPU dgemm time         :     47.019 ms,  numa A B C: 1 1 1
iteration   1,  CPU dgemm time         :     22.705 ms,  numa A B C: 1 1 1
iteration   2,  CPU dgemm time         :     18.560 ms,  numa A B C: 1 1 1
iteration   3,  CPU dgemm time         :     17.344 ms,  numa A B C: 1 1 1
iteration   4,  CPU dgemm time         :     17.570 ms,  numa A B C: 1 1 1
move_page time        0.010955 of 366 pages
move_page time        0.500337 of 27404 pages
move_page time        0.002454 of 10 pages

iteration   0, cublasdgemm time        :    149.980 ms,  numa A B C: 1 1 1
iteration   1, cublasdgemm time        :     32.462 ms,  numa A B C: 1 1 1
iteration   2, cublasdgemm time        :     32.475 ms,  numa A B C: 1 1 1
iteration   3, cublasdgemm time        :     32.426 ms,  numa A B C: 1 1 1
iteration   4, cublasdgemm time        :     32.496 ms,  numa A B C: 1 1 1

iteration   0,  CPU dgemm time         :     59.940 ms,  numa A B C: 1 1 1
iteration   1,  CPU dgemm time         :     52.387 ms,  numa A B C: 1 1 1
iteration   2,  CPU dgemm time         :     37.634 ms,  numa A B C: 1 1 1
iteration   3,  CPU dgemm time         :     37.887 ms,  numa A B C: 1 1 1
iteration   4,  CPU dgemm time         :     38.406 ms,  numa A B C: 1 1 1

Hi Luis,
I see this email but couldn’t find the post on github, let me try to reply if the email reply works here.
I see two issues for the simple cublas test case.
First, for the initial CPU run, all data should be on the LPDDR5 but yours is showing on HBM (the number 1 in  the end of each iteration indicates where the data is  -- NUMA 0 (LPDDR5) or NUMA 1 (HBM).
Second, your GPU time is over 17 ms while it should be only 0.5ms.
So something else on your system is not working right.  Let me know what you think, and I’m interested to know what is happening.
Best
Junjie

Junjie Li

On Sep 18, 2024, at 2:39 AM, Luis I Hernández Segura @.***> wrote:
./run.sh
Lmod has detected the following error: The following module(s) are unknown:
"nvhpc-hpcx-cuda12/24.7"
Please check the spelling or version number. Also try "module spider ..."
It is also possible your cache file is out-of-date; it may help to try:
$ module --ignore_cache load "nvhpc-hpcx-cuda12/24.7"
Also make sure that all modulefiles written in TCL start with the string #%Module
Matrix dimensions: M=32, N=2400, K=93536
Matrix size: A 23.95 MB, B 1795.89 MB, C 0.61 MB, Total 1820.45 MB
iteration 0, CPU dgemm time : 47.019 ms, numa A B C: 1 1 1
iteration 1, CPU dgemm time : 22.705 ms, numa A B C: 1 1 1
iteration 2, CPU dgemm time : 18.560 ms, numa A B C: 1 1 1
iteration 3, CPU dgemm time : 17.344 ms, numa A B C: 1 1 1
iteration 4, CPU dgemm time : 17.570 ms, numa A B C: 1 1 1
move_page time 0.010955 of 366 pages
move_page time 0.500337 of 27404 pages
move_page time 0.002454 of 10 pages
iteration 0, cublasdgemm time : 149.980 ms, numa A B C: 1 1 1
iteration 1, cublasdgemm time : 32.462 ms, numa A B C: 1 1 1
iteration 2, cublasdgemm time : 32.475 ms, numa A B C: 1 1 1
iteration 3, cublasdgemm time : 32.426 ms, numa A B C: 1 1 1
iteration 4, cublasdgemm time : 32.496 ms, numa A B C: 1 1 1
iteration 0, CPU dgemm time : 59.940 ms, numa A B C: 1 1 1
iteration 1, CPU dgemm time : 52.387 ms, numa A B C: 1 1 1
iteration 2, CPU dgemm time : 37.634 ms, numa A B C: 1 1 1
iteration 3, CPU dgemm time : 37.887 ms, numa A B C: 1 1 1
iteration 4, CPU dgemm time : 38.406 ms, numa A B C: 1 1 1
—
Reply to this email directly, view it on GitHub https://github.com/nicejunjie/scilib-accel/issues/2#issuecomment-2357729800, or unsubscribe https://github.com/notifications/unsubscribe-auth/ADHAVEIIB7E6PT75EP7TCL3ZXEU3VAVCNFSM6AAAAABN4B2HPWVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDGNJXG4ZDSOBQGA.
You are receiving this because you commented.

Meanwhile, if you like, you can send me your code and a workload. I can test it on our system.  I have been looking for codes that can benefit from this tool.

I deleted the post because I just ran the script without modifying the paths, for example your scratch directory. I will adapt it and test it later. How can I share the code?

Modules loaded are 23.9:

#!/bin/bash
ml load cray
ml load nvhpc-hpcx-cuda12/23.9
ml load cudatoolkit/23.9_12.2
CUDA_HOME=/opt/nvidia/hpc_sdk/Linux_aarch64/23.9
nvc -Mnvpl dgemm-cmp3.c -mp -cuda -I${CUDA_HOME}/cuda/include -I${CUDA_HOME}/math_libs/include/ -L${CUDA_HOME}/math_libs/lib64 -lcublas -lnuma
export OMP_NUM_THREADS=72
./a.out 32 2400 93536 5

./run.sh
nvc-Error-Unknown switch: -Mnvpl
Matrix dimensions: M=32, N=2400, K=93536
Matrix size: A      23.95 MB, B    1795.89 MB, C       0.61 MB, Total    1820.45 MB

iteration   0,  CPU dgemm time         :     14.965 ms,  numa A B C: 0 0 0
iteration   1,  CPU dgemm time         :     11.309 ms,  numa A B C: 0 0 0
iteration   2,  CPU dgemm time         :     12.111 ms,  numa A B C: 0 0 0
iteration   3,  CPU dgemm time         :     11.457 ms,  numa A B C: 0 0 0
iteration   4,  CPU dgemm time         :     11.472 ms,  numa A B C: 0 0 0
move_page time        0.008147 of 366 pages
move_page time        0.435758 of 27404 pages
move_page time        0.206989 of 10 pages

iteration   0, cublasdgemm time        :     53.770 ms,  numa A B C: 1 1 1
iteration   1, cublasdgemm time        :     32.328 ms,  numa A B C: 1 1 1
iteration   2, cublasdgemm time        :     32.311 ms,  numa A B C: 1 1 1
iteration   3, cublasdgemm time        :     32.305 ms,  numa A B C: 1 1 1
iteration   4, cublasdgemm time        :     32.309 ms,  numa A B C: 1 1 1

iteration   0,  CPU dgemm time         :     37.979 ms,  numa A B C: 1 1 1
iteration   1,  CPU dgemm time         :     38.666 ms,  numa A B C: 1 1 1
iteration   2,  CPU dgemm time         :     39.328 ms,  numa A B C: 1 1 1
iteration   3,  CPU dgemm time         :     38.745 ms,  numa A B C: 1 1 1
iteration   4,  CPU dgemm time         :     38.552 ms,  numa A B C: 1 1 1


Update the Left-hand Menu

As an ECMPS user, I need the left-hand menu options updated so I can access QA Cert Events data and QA Test Extension Exemption Data from the same screen
Acceptance Criteria: Applicable to both the Global-view and the Workspace
Given I am an ECMPS user reviewing the options in the left-hand menu
When I see under QA & Certifications section
Then I see the following sub-options:

Test Data
Cert Events, Extensions& Exemptions

Refer to the following reference lo-fi: https://projects.invisionapp.com/freehand/document/areRdzxWH?zoomToItems=Y2w2YjNjMDB4MDBvZjNiNnllNjAwZTk3MA%3D%3D
Given I am reviewing the options under the QA & Certifications section in the left-hand menu
When I click on Cert Events, Extensions& Exemptions
Then I am navigated to the Select Configurations screen
Screen Title: QA Cert Event Data & Test Extension Exemption Data
Given I am on the Select Configurations screen
When I select a Configuration and Open/Open & Checkout
Then I am navigated to the individual Configuration screen
Given I am on the individual Configuration screen
When I click on the Test Data dropdown
Then I see the following options:

QA Certification Event
Test Extension Exemption

Testing:
Test Case: TC1191
Tester: @JanellC

TC1191 failed. See  Bug: Update Left Nav#4643


ROX-15868: Remove offline-mode flag

Description
As previously announced within the changelog, the --offline-mode flag within the roxctl scanner generate command was deprecated, since the default behavior of Scanner on secured clusters is to not reach out to the internet directly but rather to Central for vulnerability updates.
Since the deprecation cycle of two releases has been reached, fully removing this flag now.
Checklist

[ ] Investigated and inspected CI test results
[ ] Unit test and regression tests added
[ ] Evaluated and added CHANGELOG entry if required
[ ] Determined and documented upgrade steps
[ ] Documented user facing changes (create PR based on openshift/openshift-docs and merge into rhacs-docs)

If any of these don't apply, please comment below.
Testing Performed

see CI.

Current dependencies on/for this PR:

master

PR #6670   👈

This comment was auto-generated by Graphite.


Have subscriptions live indefinitely.

By default pubsub subscriptions live for 31d since their last activity.  We don't want our subscriptions to expire.

ref: https://registry.terraform.io/providers/hashicorp/google/latest/docs/resources/pubsub_subscription.html#expiration_policy


Implement exit functionality for guided assistant progress

From @yfzwinnie on September 6, 2018 18:14
If user closes the broswer/tab during the guided assistant and they are not logged in, we should show a modal asking if they want to save their progress before exiting. If yes, ask user to login. If no, erase their progress.
Copied from original issue: Microsoft/Access2Justice#448

related task #350

Ready for PO review

@KellyeDC When I either closed the browser tab or went to another website, nothing happened. It didn't looked resolved to me.

@svasylenko  Currently, if a platform end user is in the middle of an interview in the guided assist, is he/she able to save their place in the interview and comback to it, if registered?

@KellyeDC nope, user could bookmark a page but next time interview will start sfom beginning.

@svasylenko Did we implement this feature with #350  and #721 ?

If the user is registered, the idea is for the system to save the answer choices as the user progresses through the guided interview.  Has this been implemented?

@KellyeDC yes, please go trough interview, close browser at some point and open it back. Then login and go to GA - you will start from the question when you have closed the browser.


ci-automation: explicitly make packages tarballs readable

Since https://github.com/flatcar/scripts/pull/950 was merged, tarball files flatcar-{packages,sdk}-*.tar.zst have been created with mode 0600 instead of 0644.
As a result, the files with mode 0600 were uploaded to bincache, but afterwards copy-to-origin.sh that in turn runs rsync from bincache to the origin server could not read the tarballs.
To fix that, it is necessary to chmod from 0600 to 0644 to make it readable by rsync during the release process.
All of that happens because zstd sets the mode of the output file to 0600 in case of temporary files to avoid race condition.
See also https://github.com/facebook/zstd/pull/1644.
/update-sdk
Testing done
CI: http://jenkins.infra.kinvolk.io:8080/job/container/job/sdk/985/cldsv/

Changelog entries added in the respective changelog/ directory (user-facing change, bug fix, security fix, update) (not needed)
Inspected CI output for image differences: /boot and /usr size, packages, list files for any missing binaries, kernel modules, config files, kernel modules, etc.

CI passed, and tarballs on bincache are created with mode 0644 as expected.
core@bld-bincache ~ $ ls -l /srv/bincache/containers/9999.9.9-zstd-file-perm/flatcar-*zst
-rw-r--r--. 1 bincache bincache<PHONE_NUMBER> Aug 10 18:08 /srv/bincache/containers/9999.9.9-zstd-file-perm/flatcar-packages-amd64-9999.9.9-zstd-file-perm.tar.zst
-rw-r--r--. 1 bincache bincache<PHONE_NUMBER> Aug 10 18:09 /srv/bincache/containers/9999.9.9-zstd-file-perm/flatcar-packages-arm64-9999.9.9-zstd-file-perm.tar.zst
-rw-r--r--. 1 bincache bincache<PHONE_NUMBER> Aug 10 16:06 /srv/bincache/containers/9999.9.9-zstd-file-perm/flatcar-sdk-all-9999.9.9-zstd-file-perm.tar.zst
-rw-r--r--. 1 bincache bincache<PHONE_NUMBER> Aug 10 16:07 /srv/bincache/containers/9999.9.9-zstd-file-perm/flatcar-sdk-amd64-9999.9.9-zstd-file-perm.tar.zst
-rw-r--r--. 1 bincache bincache<PHONE_NUMBER> Aug 10 16:09 /srv/bincache/containers/9999.9.9-zstd-file-perm/flatcar-sdk-arm64-9999.9.9-zstd-file-perm.tar.zst

Updated commit message, description.

cherry-picked to flatcar-3689


Inform delegate about successful load

Hi,
I would like to be notified when SDWebImage successfully loaded an image (because then I can refresh a "reflection image view" with the new image). As far as I have seen this isn't possible yet but may be a feature some users might be interested in :-)

Why not add an observer to the UIImageView image property?

Thanks for all the solutions, will have a look at those :-) @echamberlain didn't know you could do that, very interesting!


Link versioned docs with version suffix

Change-type: patch
Signed-off-by: Amit Solanki<EMAIL_ADDRESS>

@balena-ci I self-certify!


[CWS] remove old kitchen tests

What does this PR do?
All CWS functional tests have been migrated to KMT, this PR removes the last kitchen CWS jobs.
Note: it doesn't include cleaning up all remaining kitchen scripts and related files, this will come in a later PR once it's clearer those are definitely not needed anymore.
Motivation
Describe how to test/QA your changes
Possible Drawbacks / Trade-offs
Additional Notes

@paulcacheux you might need to update the .gitlab-ci.yml as well

/merge


Downgrade sse-starlette version

Pull Request Summary
The updated version has weird behavior with streaming in the http-forwarder
Should still be fine with Microsoft security scan
Test Plan and Usage Guide
How did you validate that your PR works correctly? How do you run or demo the code? Provide enough detail so a reviewer can reasonably reproduce the testing procedure. Paste example command line invocations if applicable.

Should still be fine with Microsoft security scan

any way to confirm this for sure before merging?


Inconsistent behavior on IE

The component works flawlessly on Chrome, but its behavior is inconsistent on IE11.  Below are the issues that I see :

On select : The Data is populated fine from the data provider on the dropdown, but on selection, the item does not show up in the dropdown box unless the user clicks outside or clicks the tab button to move to next form field.
When user searches on the dropdown input and selects a value, and click any where else on the page, the dropdown expands again.

I have not tried with other versions of IE. But above issues are with IE 11.0.96

Any updates on this? Thinking about using this library but IE11 support is a must.

according to issue 1)
the problem is, that IE does not show the placeholder if the input is focused!
quick workaround: set the value of the input when the onSelect event fires:
component.html
<iq-select2 #selectElem (onSelect)="onSelected($event, selectElem)" ...>

component.ts
public onSelected($event: any, sender: IqSelect2Component) {
    if ($event && sender) {
     (sender as any).termInput.nativeElement.value = $event.text;
    }
}


pycenter

pycenter has been removed, i hardly recommend using pycenter functions but from pystyle, who are the same but in better.

k


Side drawer languages

Hi, i have a question, how can i set the default language/s when you edit a question? And by that i mean that i want to change English and Portuguese options like you can see in the image below to Spanish and English. Thanks in advance.

Encontraste alguna solucion?

Yo encontre una, dentro del modulo, en lib/ToolBox/index.js
Alli se pone la key del idioma y la pregunta de ejemplo, este le asigna a la barra lateral los idiomas por defecto

Hello, its all customizable you can read at this section
https://github.com/hugobarragon/react-quizzes#how-to-add-custom-input
I made a working example for you with spanish and english


Fix inheritance bugs and improve docstring inheritance.

This PR fixes some inheritance bugs for Survey maps.  In the process I refactored the way the docstrings for construction and map drawing are inherited which will make help() and sphinx give more useful outputs.  The individual map types also now have more informative docstrings on the specific proj parameters that are accepted (e.g. lat_1 and lat_2 for the Albers projection, etc.).

@fjaviersanchez Can you review?


[SIL Diagnostics] Add warnings for detecting imprecision in conversions from larger Floats to smaller Floats.

Add tests to check the diagnositcs and correctness of the constant
folding on FPTrunc operations

@stephentyrone I have implemented the strategy for detection underflows and overflows during floating-point literal conversion as discussed here: https://forums.swift.org/t/rfc-on-compile-time-diagnosis-of-erroneous-floating-point-operations/12125/11. Let me know your comments.

@swift-ci please smoke test

@swift-ci please smoke test

When you call initializers explicitly e.g. "Float(some_literal)" -- first the literal is implicitly converted to "Double" and then to "Float". So if there is a warning during the implicit conversion to "Double", the warning would refer to the type "Double" which could be a bit surprising to the user since he/she never wrote it. Btw, this problem is more general and not specific to Floating point conversion. A better diagnostic that takes in account the context of the implicit conversion is a bit more involved, and is an on going work. For the time being I think it is better to have some qualifier (even though redundant in some cases) that indicates that the type used in diagnostics and the one written by the user may be different. I have made a recent change to the PR in which the error message reads slightly differently: "literal loses precision during (implicit) conversion to Double" , where the word (implicit) is included for warnings generated during implicit conversions but otherwise omitted.

This behavior is going away imminently, given that the Swift Evolution proposal was approved. There is no version of Swift which will be released in which both this warning and the behavior you describe would occur, and I think the diagnostics would benefit from the clarity possible from not trying to contort the language used to help users with let x: Float = 4e38 also to accommodate the very different issue that's going on with let y = Float(4e38) that will be going away shortly.
There is another, related double-rounding issue with float literals being first used to create a Float80 value (or Double on platforms without Float80), then to the assigned type, but that's also something that is really another kettle of fish from diagnostics for let x: Float = 4e38.

We considered adding this warning for hex floats since the reason for using hex float notation is to be precise and avoid any imprecision that may happen with decimal notation. If a truncation is desired, it could be done explicitly as illustrated by the last example presented above.

I understand the motivation and would even agree with it, but my point is that, IMO, the warning needs to be silenceable more ergonomically than requiring two statements like the example you provide above.

@swift-ci please smoke test

@swift-ci please test and merge

@swift-ci please clean test macOS

@swift-ci please test and merge


Merge branch 'main' of https://github.com/CodeAssemblingChicken/pixel-defi

What is this?

This is mouse dragging feature, very good

Very good :+1:


fix: various code quality issues

Pull Request Test Coverage Report for Build<PHONE_NUMBER>3
Details

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+0.7%) to 32.593%

Totals

Change from base Build<PHONE_NUMBER>9:
0.7%

Covered Lines:
44

Relevant Lines:
135

💛  - Coveralls


Handle not concrete type trees

Should also have added a test where we return Tuole{Any, Any} to check that indeed this is the right representation?


[SPARK-42376][SS] Introduce watermark propagation among operators

What changes were proposed in this pull request?
This PR proposes to introduce watermark propagation among operators via simulation, which enables the workload of "stream-stream time interval join followed by stateful operator".
As of now, Spark considers all stateful operators to have same input watermark and output watermark, which is insufficient to handle stream-stream time interval join. It can delay joined output more than global watermark, based on the join criteria. (e.g. leftTime BETWEEN rightTime - INTERVAL 30 seconds AND rightTime + INTERVAL 40 seconds). To address this, the join operator should be able to produce "delayed" watermark to the downstream operator. That said, Spark has to "propagate" watermark among operators, flowing through leaf node(s) to root (going downstream).
This PR introduces a new interface WatermarkPropagator which performs simulation of watermark propagation based on the watermark. There are three implementations for this interface:

NoOpWatermarkPropagator: Do nothing. This is used for initializing dummy IncrementalExecution.
UseSingleWatermarkPropagator: Uses a single global watermark for late events and eviction. This is used for compatibility mode (spark.sql.streaming.statefulOperator.allowMultiple to false).
PropagateWatermarkSimulator: simulates propagation of watermark among operators.

The simulation algorithm used in PropagateWatermarkSimulator traverses the physical plan tree via post-order (children first) to calculate (input watermark, output watermark) for all nodes. For each node, below logic is applied:

Input watermark for specific node is decided by min(input watermarks from all children).

Children providing no input watermark are excluded.
If there is no valid input watermark from children, it's considered as there is no input watermark.

Output watermark for specific node is decided as following:

watermark nodes: origin watermark value (global watermark).
stateless nodes: same as input watermark.
stateful nodes: the return value of op.produceOutputWatermark(input watermark). (if there is no input watermark, there is no output watermark)

Once the algorithm traverses the physical plan tree, the association between stateful operator and input watermark will be constructed. The association is cached after calculation and being used across microbatches, till Spark determines the association as no longer to be used.
As mentioned like op.produceOutputWatermark() in above, this PR also adds a new method produceOutputWatermark in StateStoreWriter, which requires each stateful operator to calculate output watermark based on given input watermark. In most cases, this is same as the criteria of state eviction, as most stateful operators produce the output from two different kinds:

without buffering (event time > input watermark)
with buffering (state)

The state eviction happens when event time exceeds a "certain threshold of timestamp", which denotes a lower bound of event time values for output (output watermark). Since most stateful operators construct the predicate for state eviction based on watermark in batch planning phase, they can produce an output watermark once Spark provides an input watermark.
Please refer to the walkthrough code comment for the test case of stream-stream time interval left outer join -> aggregation, append mode.
There are several additional decisions made by this PR which introduces backward incompatibility.

Re-definition of watermark will be disallowed.

Technically, each watermark node can track its own value of watermark and PropagateWatermarkSimulator can propagate these values correctly. (multiple origins) While this may help to accelerate processing faster stream (as all watermarks don't need to follow the slowest one till join/union), this involves more complicated questions on UX perspective, as all UX about watermark is based on global watermark. This seems harder to address, hence this PR proposes to retain the global watermark as it is.
Since we want to produce watermark as the single origin value, redefinition of watermark does not make sense. Consider stream-stream time interval join followed by another watermark node. Which is the right value of output watermark for another watermark node? delayed watermark, or global watermark?

stateful operator will not allow multiple event time columns being defined in the input DataFrame.

The output of stream-stream join may have two event time columns, which is ambiguous on late record filtering and eviction. Currently the first appeared event time column has been picked up for late record filtering and eviction, which is ambiguous to reason about the correctness. After this PR, Spark will throw an exception. The downstream operator has to pick up only one of event time column to continue.
Turning off the flag spark.sql.streaming.statefulOperator.allowMultiple will restore the old behavior from the above.
(https://issues.apache.org/jira/browse/SPARK-42549 is filed to remove this limitation later.)
Why are the changes needed?
stream-stream time interval join followed by stateful operator is not supported yet, and this PR unblocks it.
Does this PR introduce any user-facing change?
Yes, here is a list of user facing changes (some are backward incompatibility changes, though we have compatibility flag):

stream-stream time-interval join followed by stateful operator will be allowed.
Re-definition of watermark will be disallowed.
stateful operator will not allow multiple event time columns being defined in the input DataFrame.

How was this patch tested?
New & modified test cases.

IMHO, the code change and workload this enables don't seem to be complicated warranting SPIP. But I'm definitely open to go with SPIP if any committer thinks this should.

Test failure only happened in k8s integration which is not related.

Thanks for reviewing, would you all mind if I ask for another round of review? Thanks in advance!

Looks like we need to rerun the build CI job ?

One thing that is not clear is how 'join + dedup()' is not allwowd, but 'join + groupBy,count' is allowed.

It's not because the latter operator is dedup. It's because dedup operator gets two event time columns from an input DataFrame, and current late record filtering/eviction logic only handles one event time column per input DataFrame. It has been picking the first occurrence (simply assuming there is only one event time column which is actually incorrect), but we should have considered all event time columns. e.g. et1 00:10 et2 00:30 W=00:20 -> the row should not be evicted as further row can be matched with this row (et2 is still earlier than W), but we evict it.
We may be able to address this in (near) future, but I'd like to let it be out of scope for this effort.

How about adding a simple test with 4 or 5 aggregations :)?

I'm afraid of adding a test having a non-trivial number of stateful operators, as you've already seen, reasoning about the output would grow linearly based on the number of stateful operators.

It's not because the latter operator is dedup. It's because dedup operator gets two event time columns from an input DataFrame, and current late record filtering/eviction logic only handles one event time column per input DataFrame.

@HeartSaVioR isn't the same for 'join + groupBy' too? I.e. groupBy stateful operation get two  event time columns similar to dedup().  What is different here?

For the test case of join + groupBy, we picked one event time column for time window and discarded other one.

Many stateful operators including streaming aggregation only takes columns in grouping keys into consideration when figuring out event time column. The test case uses count(*) which feels like all columns are being used, but columns in non-grouping key are not effective on determining event time columns.

I'm afraid of adding a test having a non-trivial number of stateful operators, as you've already seen, reasoning about the output (in other words, code comment to explain the behavior) would grow linearly based on the number of stateful operators.

I think it is ok skip the long comment to explain the final output for this test. A straight forward pipeline with many stateful stage can really stress the code. We could even build the DAG with a for-loop :-).

I'm sorry, I'm afraid I still don't get the goal of the test you're proposing. Do you want to see a test case running a query having a bunch of stateful operators without any correctness check, or a test case running a query having reasonable number of stateful operators with correctness check?

I'm sorry, I'm afraid I still don't get the goal of the test you're proposing. Do you want to see a test case running a query having a bunch of stateful operators without any correctness check, or a test case running a query having reasonable number of stateful operators with correctness check?

More of the latter: a test with lots of stateful operations and it could be simple enough to easily check for correctness. Could you file small ticket and assign it me? I will take a crack it.

I'll file a JIRA ticket as a follow-up. Thanks for the helping hands!

https://issues.apache.org/jira/browse/SPARK-42540 for follow-up task to add longer chain of stateful operators as new test case(s).

Thanks all for quite huge efforts on reviewing this complicated change! The implementation got better with the review comments.

Merging to master.


Cannot locate recent dicoms

Harpooner fails to show any results when searching for recent (since 03-2020) dicoms.

this issue is likely resolved. Running indexer on entire year of 2020 to ensure that it works without crashing and captures all the subjects that have yet to be indexed.

This was fixed in commit on Sep 24th 2020.


Simplify the .travis.yml file for macOS

Coverage remained the same at 51.848% when pulling 4dbae5747cd2e73f817b5cc3a715d1993f78e1f3 on brettcannon:macOS-travis-simplified into 2a19aeca509ef1ab0c90e6cd0380b202f441d607 on Azure:dev.


Bug 2277184: Kebab menu fix for DRPolicy

This PR is taken from https://github.com/red-hat-storage/odf-console/pull/1272 and manually applied here
Fixes: https://bugzilla.redhat.com/show_bug.cgi?id=2277184

@GowthamShanmugam Please review

/lgtm

/retitle Bug 2277184: [release-4.16-compatibility] Kebab menu fix for DRPolicy


[native_pdf_view] Flutter 2.5 compatibility

Describe the bug
With flutter 2.5 the Gesture Detector has changed and now some plugins needs a update.
To Reproduce
Steps to reproduce the behavior:

Create a flutter project with flutter 2.5.0
add a dependencie to native_pdf_view: ^4.1.0
build
Build is failing with following message:

../../.pub-cache/hosted/pub.dartlang.org/photo_view-0.11.1/lib/src/core/photo_view_gesture_detector.dart:106:29: Error: The argument type 'PointerEvent' can't be assigned to the parameter type 'PointerDownEvent'.
 - 'PointerEvent' is from 'package:flutter/src/gestures/events.dart' ('../../fvm/versions/2.5.0/packages/flutter/lib/src/gestures/events.dart').
 - 'PointerDownEvent' is from 'package:flutter/src/gestures/events.dart' ('../../fvm/versions/2.5.0/packages/flutter/lib/src/gestures/events.dart').
    super.addAllowedPointer(event);

Expected behavior
Build is working without any problems
Additional context
The plugin (photo_view) is already updated to version 0.12.0, but not released, so it would be great, when you can make a new release with this version.

As a workaround put this in your pubspec.yaml (at least builds):
dependency_overrides:
  photo_view: ^0.12.0

Hi kinex,
I tried that workaround but I can a message that native_pdf_view required the version 0.11.0
Thanks,

@MalekJabri I think you have put photo_view under dependencies, you must put it under dependency_overrides.

@kinex Thanks, this solve the issue.

In either way this package should be using the latest version of the photo_view library. @SergeShkurko Any update on publishing a new version to pub.dev?

for now until the photo_view update on pub.dev use this :
dependency_overrides:
  photo_view:
    # custom photo_view with better gesture recognition
    git: git://github.com/robertodoering/photo_view.git

this work for me 💯

New version is released 4.2.0 so i close this issue.


33 deployment options

Make DeploymentOptions an interface.

@jwulf 	Please see conflicts

Yeah, this happens because of bundling docs updates with the actual features.
Docs in CI will fix this in future - as will making the docs update PR part of the npm tag/publish process. That makes the most sense, because then the docs will be current with what installs from npm.

Obsolete.


(Bug) native checkmark animation  not working

The animation crashes with an error (tested on android emulator)
We had similar issue in the past  with other animations
We have a checkmark animation in

Claim screen - once user presses claim it start  showing the checkmark spinner,  when claim is done the animation is turned to a checkmark
signup/profile edit sms/email code verification screen. if you press on send code again it shows a checkmark animation

@sirpy
@mauriguz
The Checkmark animation is not displayed after pressing on the "email me the code again" on the Email code verification screen
Checked on the App Version 1.13.0-0 (983)
Device: Xiaomi Mi 8 // Android 8.1.0
Video: https://www.dropbox.com/s/b0n5ehx2tekomq4/The checkmark animation is not displayed.mp4?dl=0

@mauriguz can you comment on this?

@sirpy
@mauriguz
The Checkmark animation is displayed after pressing on the "email me the code again" on the Email code verification screen
There are no new issues.
Checked on the App Version 1.13.0-0 (990)
Device: Xiaomi Mi 8 // Android 8.1.0
![The checkmarck animation is displayed on the Email verification screen.png]


Uncaught Error: ENOENT: no such file or directory, lstat '/Volumes/home'

The build plugin throws exceptions when a file is open in the editor and the volume the file is on is no longer present (e.g. network share). The plugin should handle this case gracefully and allow the file to be closed (alert for possible lost work) or saved to an alternate place.
[Enter steps to reproduce below:]

...
...

Atom Version: 1.5.3
System: Mac OS X 10.10.5
Thrown From: build package, v0.54.1
Stack Trace
Uncaught Error: ENOENT: no such file or directory, lstat '/Volumes/home'
At ATOM_SHELL_ASAR.js:0

Error: ENOENT: no such file or directory, lstat '/Volumes/home'
    at Error (native)
    at fs.lstatSync (fs.js:844:18)
    at Object.fs.lstatSync (ATOM_SHELL_ASAR.js:189:16)
    at Object.realpathSync (fs.js:1454:21)
    at Object.fs.realpathSync (ATOM_SHELL_ASAR.js:262:29)
    at /Users/peterl/.atom/packages/build/lib/build.js:127:27
    at Array.find (native)
    at Object.activePath (/Users/peterl/.atom/packages/build/lib/build.js:126:74)
    at Object.updateStatusBar (/Users/peterl/.atom/packages/build/lib/build.js:133:49)
    at /Users/peterl/.atom/packages/build/lib/build.js:68:57
    at Function.module.exports.Emitter.simpleDispatch (/Applications/Atom.app/Contents/Resources/app.asar/node_modules/event-kit/lib/emitter.js:25:14)
    at Emitter.module.exports.Emitter.emit (/Applications/Atom.app/Contents/Resources/app.asar/node_modules/event-kit/lib/emitter.js:125:28)
    at /Applications/Atom.app/Contents/Resources/app.asar/src/pane-container.js:333:27
    at Function.module.exports.Emitter.simpleDispatch (/Applications/Atom.app/Contents/Resources/app.asar/node_modules/event-kit/lib/emitter.js:25:14)
    at Emitter.module.exports.Emitter.emit (/Applications/Atom.app/Contents/Resources/app.asar/node_modules/event-kit/lib/emitter.js:125:28)
    at Pane.module.exports.Pane.setActiveItem (/Applications/Atom.app/Contents/Resources/app.asar/src/pane.js:248:22)
    at Pane.module.exports.Pane.activateItemAtIndex (/Applications/Atom.app/Contents/Resources/app.asar/src/pane.js:312:19)
    at Pane.module.exports.Pane.activatePreviousItem (/Applications/Atom.app/Contents/Resources/app.asar/src/pane.js:277:21)
    at Pane.module.exports.Pane.removeItem (/Applications/Atom.app/Contents/Resources/app.asar/src/pane.js:402:16)
    at Pane.module.exports.Pane.destroyItem (/Applications/Atom.app/Contents/Resources/app.asar/src/pane.js:464:16)
    at atom-tabs.TabBarView.onClick (/Applications/Atom.app/Contents/Resources/app.asar/node_modules/tabs/lib/tab-bar-view.js:695:17)

Commands

Config
{
  "core": {
    "projectHome": "/Users/peterl/Projects"
  },
  "build": {}
}

Installed Packages
# User
Remote-FTP, v0.7.19
atom-html-preview, v0.1.13
autocomplete-clang, v0.8.9
autocomplete-python, v1.6.1
build, v0.54.1
fonts, v1.1.0
language-ansible, v0.1.3
language-chef, v0.8.0
language-docker, v1.1.6
language-groovy, v0.5.0
language-ini, v1.14.0
linter, v1.11.3
linter-foodcritic, v0.5.2
linter-gcc, v0.6.5
linter-python-pep8, v0.2.0
remote-edit, v1.8.24
seti-icons, v0.4.5
sync-settings, v0.6.0
terminal-plus, v0.14.5
tool-bar, v0.2.0

# Dev
No dev packages

Also related to https://github.com/noseglid/atom-build/issues/250 (I remembered having this problem before too)

For me it can't be that the volume the file is on not being present anymore, since the file is still definitely there and the volume it resides in is my whole system.
[Enter steps to reproduce below:]

opened file javascript.js with the following contents:

function bla (A) {
  A = 5;
  return A;
}

Atom Version: 1.5.3
System: linux 4.4.1-2-ARCH
Thrown From: build package, v0.55.0
Stack Trace
Uncaught Error: ENOENT: no such file or directory, lstat '/home/foo/atom:'
At ATOM_SHELL_ASAR.js:0

Error: ENOENT: no such file or directory, lstat '/home/foo/atom:'
    at Error (native)
    at fs.lstatSync (fs.js:844:18)
    at Object.fs.lstatSync (ATOM_SHELL_ASAR.js:189:16)
    at Object.realpathSync (fs.js:1454:21)
    at Object.fs.realpathSync (ATOM_SHELL_ASAR.js:262:29)
    at /home/foo/.atom/packages/build/lib/build.js:127:27
    at Array.find (native)
    at Object.activePath (/home/foo/.atom/packages/build/lib/build.js:126:74)
    at Object.updateStatusBar (/home/foo/.atom/packages/build/lib/build.js:133:49)
    at /home/foo/.atom/packages/build/lib/build.js:68:57
    at Function.module.exports.Emitter.simpleDispatch (/usr/share/atom/resources/app.asar/node_modules/event-kit/lib/emitter.js:25:14)
    at Emitter.module.exports.Emitter.emit (/usr/share/atom/resources/app.asar/node_modules/event-kit/lib/emitter.js:125:28)
    at /usr/share/atom/resources/app.asar/src/pane-container.js:333:27
    at Function.module.exports.Emitter.simpleDispatch (/usr/share/atom/resources/app.asar/node_modules/event-kit/lib/emitter.js:25:14)
    at Emitter.module.exports.Emitter.emit (/usr/share/atom/resources/app.asar/node_modules/event-kit/lib/emitter.js:125:28)
    at Pane.module.exports.Pane.setActiveItem (/usr/share/atom/resources/app.asar/src/pane.js:248:22)
    at Pane.module.exports.Pane.activateItemAtIndex (/usr/share/atom/resources/app.asar/src/pane.js:312:19)
    at Pane.module.exports.Pane.activateNextItem (/usr/share/atom/resources/app.asar/src/pane.js:267:21)
    at Pane.module.exports.Pane.removeItem (/usr/share/atom/resources/app.asar/src/pane.js:400:16)
    at Pane.module.exports.Pane.destroyItem (/usr/share/atom/resources/app.asar/src/pane.js:464:16)
    at atom-tabs.TabBarView.onClick (/usr/share/atom/resources/app.asar/node_modules/tabs/lib/tab-bar-view.js:695:17)

Commands

Config
{
  "core": {},
  "build": {}
}

Installed Packages
# User
autoclose-html, v0.21.0
build, v0.55.0
build-gulp, v0.7.0
build-make, v0.7.0
highlight-selected, v0.11.2
language-lua, v0.9.4
language-pfm, v0.82.0
minimap, v4.19.0
pigments, v0.24.1
terminal-plus, v0.14.5

# Dev
No dev packages


Green screen on chromium-browser with video at fullscreen

Is not really a direct chilipie-kiosk issue but i'm not sure how can I solve this in a remote device.
Not sure if some one ever heard about it , there is a "common" issue in chrome if you play video at full screen it shows a green screen, in my case the script also beak as this is a remote device I don't have many more info just that it happens every single time it plays a video.
Its safe to update chromium  or reinstall it at all?  and how? :P
or any other solution for this issue.
*I have about 10 devices an only 1 has this issue.

I would agree that it doesn't sound specific to the kiosk... so I would rather focus on researching whether other people are having the same issue with Chromium on Raspbian, and/or specific Pi hardware (as it sounds like it's a HW acceleration issue).

Did you end up finding a solution @matristain?

I've tryed meny thins on this devives but what I think was the solution is this:
I've add this lines to the .xsession file before the chomium-browse line:
sudo rm -r ~/.cache/chromium
sudo rm -r ~/.config/chromium/Default/
MAC=$( cat /sys/class/net/eth0/address | tr --delete : )
chromium-browser --start-fullscreen --autoplay-policy=no-user-gesture-required --window-size=1920,1080 --disable-infobars https://mydomain.com/device/$MAC &
So far I don't have this issue any more.
PS: I don't know if this interfere with the "open last page" as I use the MAC Address to redirect each device wherever i want from my server.


Update jobs.yml

Updated copy on start page to reflect jobseeker account functionality: 'You can search for a job at a school or trust in England, create an account and set up job alerts.'
https://dfedigital.atlassian.net/browse/TEVA-1886

Review app deployed to https://teaching-vacancies-review-pr-2803.london.cloudapps.digital


Support Multiple Certs

This is an attempt to move some of the multi-cert logic inside the gem so that the IDP is simpler, see https://github.com/18F/identity-idp/pull/4898

One thing I noticed though is that we don't have a unit test for an ServiceProvider.valid_signature? with multiple certs - I know it seems like a pain to write but it feels like it would be worthwhile given how complicated this is.

Test coverage in this gem is really lacking and for the time being I think we can safely say that the tests in our own IDP cover this for now


PLZ HELP FNF COMPIE

Error: Uncaught exception on main thread: Invalid field access : nodeType
Called from BuildTool::include line 2335
Called from BuildTool::parseXML line 2241
Called from BuildTool::include line 2335
Called from BuildTool::new line 147
Called from a C function
Called from BuildTool::$init line 46
Called from BuildTool::runMain line 1784
Called from BuildTool::main line 1451

follow the instructions correctly and get the visual studio compiling tools

do i read the readme file

Windows-only dependencies (only for building to Windows. Building html5 on Windows does not require this)
If you are planning to build for Windows, you also need to install Visual Studio 2019. While installing it, don't click on any of the options to install workloads. Instead, go to the individual components tab and choose the following:

MSVC v142 - VS 2019 C++ x64/x86 build tools
Windows SDK (10.0.17763.0)

This will install about 4 GB of crap, but is necessary to build for Windows.

building.md


COMPENF-856

Description
Fixing problem where toast message is not being displayed correctly. When unable to save the succcess toast is displayed when the error toast should be displayed
Fixes # COMPENF-856

Thanks for the PR!
Any successful deployments (not always required) will be available below.
Backend available
Frontend available
Once merged, code will be promoted and handed off to following workflow run.
Main Merge Workflow

@afwilcox this is ready for review, toasts still function, but their use is shifted as per suggestion


Error out on missing body in token middleware

Currently it will just throw.
Checklist

[x] I have read the CONTRIBUTING guidelines.
[ ] I have added test cases which verify the correct operation of this feature or patch.
[ ] I have added documentation pertaining to this feature or patch.
[ ] The automated test suite ($ make test) executes successfully.
[ ] The automated code linting ($ make lint) executes successfully.

Coverage increased (+0.0002%) to 99.79% when pulling 1be83add64e31a9e1cde51d6fc02af5ce493a574 on smichel17:patch-1 into 1105760de472c25e2641b8c2b4058189556fb2e2 on jaredhanson:master.


Update camera_calibration_and_3d_reconstruction.rst

correction according to http://docs.opencv.org/master/d9/d0c/group__calib3d.html#ga0c86f6478f36d5be6e450751bbf4fec0

:+1: