On print conditionally show instructions.

Reply to https://www.reddit.com/r/AustralianPolitics/comments/umwy7g/ausballot_preview_your_ballot_papers_and_prepare/i8eyvhj/

Hmm I'd like to keep the instructions there. There's nothing preventing anyone from printing the page with the ballots empty, so in that case I think it would make sense to have the instructions still there.

A good consideration. (Arguably it is unnecessarily complex but) you could make the instructions conditional:
If (IsBallotsValidlyFilled()) {
  HideInstructions()
} else {
  ShowInstructions()
}

Yeah that would work.. I don't think we're saving that much space by removing that line, but maybe if the ballots are even bigger next year we should consider shrinking the print size a bit more yeah :).
Thanks, I'm going to close this but keep it in mind in the future.

It's not about saving space (that may or may not be a tangential benefit). It's about what might be confusing to a user.
As a user you expect your software output to intelligently change based on your inputs. If, as a user, you've validly filled out your ballots and you see instructions on how to fill out your ballot, that would seem to be a signal from the software that your ballot is incomplete.
On the other hand if you haven't filled out your ballot then instructions remain relevant. And, as you mention, there might be the case where the user wants to print out the empty ballot and fill it out manually.

Thanks, I'm going to close this but keep it in mind in the future.

(Even though you've open sourced it) it's your repo and you have the right to close tickets according to whatever principle, or even whim, as you like. However, if the issue is something to keep in mind that would normally entail that the issue is "open". Might reopening the ticket but labeling it "Next election" (or whatever) better serve your intentions?

(As an aside irrelevant to this issue) Robin I can confirm that this all worked perfectly in my electorate on election day. That is, the ausballot printouts matched the real world ballots (intentional omission of the gaggle of individual senate candidates aside). So that's one in-production testing data point. :)

Yay, that's nice to hear :)!


⚠ Bofrost.lu has degraded performance

In c2769e5, Bofrost.lu (https://www.bofrost.lu) experienced degraded performance:

HTTP code: 200
Response time: 3123 ms

Resolved: Bofrost.lu performance has improved in 4940d34.


IT layout Keyboard

Hi!
I've finally found a PS/2 compatible keyboard, but its Italian layout is currently not supported by the AegonLight 2.
Would it be possible to add this particular layout besides the US and UK ones with a new parameter value to SET KEYBOARD in the autoexec.txt file ?
Thanks a lot.

Already done in MOS/VDP 1.03


ARROW-6441: [Packaging][RPM] Follow plasma-store-server name change

@ursabot crossbow package -g linux

CentOS 7 build is succeeded.
CentOS 6 build is failed but it's a problem of double-conversion. This is unrelated.

CI is green: https://travis-ci.org/kou/arrow/builds/581001129
I'll merge this.


fix: viewportDialoge not appearing in non-tracked viewports

PR Checklist

[ ] Brief description of changes
[ ] Links to any relevant issues
[ ] Required status checks are passing
[ ] User cases if changes impact the user's experience
[ ] @mention a maintainer to request a review

@md-prog can you review this for me please?


packages.md describes how to use Alarm package which does not exist in OpenWhisk

Please see issue 390 as this might resolve the issue; however it has been backlogged for 14 days as of this authoring.
The file docs/packages.md assumes that both cloudant and alarms packages are available (neither are).
Therefore the entire section titled:
Creating and using trigger feeds
All steps assume use of alarm trigger:

Get a description of the feed in the /whisk.system/alarms package.
$ wsk package get --summary /whisk.system/alarms
Create a trigger that fires every eight seconds.
$ wsk trigger create everyEightSeconds --feed /whisk.system/alarms/alarm -p cron '*/8 * * * * *' -p trigger_payload '{"name":"Mork", "place":"Ork"}'

and all subsequent steps will not work... (if it wasn't apparent from step 1. which shows a package list that does not include these missing packages).

alarm repo and docs now here https://github.com/openwhisk/openwhisk-package-alarms


Change font-display: fallback to font-display: swap to improve percieved performance

Hypothesis
Changing font-display: fallback to font-display: swap will improve perceived performance for users.
Reasons for Hypothesis
According to the specification:

swap - Gives the font face an extremely small block period (100ms or less is recommended in most cases) and an infinite swap period.

fallback - Gives the font face an extremely small block period (100ms or less is recommended in most cases) and a short swap period (3s is recommended in most cases).

So for swap, the browser will draw the text immediately (within 100ms) with a fallback font, then the browser has infinite time to swap the font out for the web font once loaded.
With fallback the browser will draw the text immediately (within 100ms) with the fallback font. But the browser only has a finite period of time to swap to the web font once loaded. If the font isn't loaded in 3 seconds, the fallback font will be used for the lifetime of the page.
Others have suggested changing font-display from fallback to swap too. To quote from Addy Osmani:

...self-hosted Web Fonts have a zero second block period and an infinite swap period. Browsers would draw text immediately with a fallback used if the font face isn't loaded, but swap as soon as it does load.

More discussion about this can be seen here, here and here.
Cloudflare Results
I tested both font-display settings using under different conditions, browsers and devices. All tests were run using WebPageTest, and the visual output of each test observed to see which completed in a way that is best for the user.
Note: Tests on the govuk-frontend-review-pr-* domains link to third-party resources (CSS, JS) from Cloudflare and sometimes Google Fonts. The reliance on this third-party CSS could be the cause of some of the fluctuations in performance due to network congestion at the time the test is run.
Chrome - 3G - Announcements

Observations
Fallback renders pixels to the page 32ms before swap, FOIT occurs. Swap shows the web font at the same time as the page renders. In this case fallback has better perceived performance.
Fallback

First Paint (FP): 4134ms
First Contentful Paint (FCP): 4168ms
Web font shown at: 4168ms

Swap

First Paint (FP): 4168ms
First Contentful Paint (FCP): 4168ms
Web font shown at: 4168ms

Perceived performance winner
fallback
Full results
Full comparison results can be found here.
Chrome - 3G - Applicant

Observations
fallback renders pixels to the page before swap, FOIT occurs. fallback shows content before swap. swap loads and displays the web font 700ms quicker than fallback
Fallback

First Paint (FP): 4067ms
First Contentful Paint (FCP): 4101ms
Web font shown at: 5835ms

Swap

First Paint (FP): 4334ms
First Contentful Paint (FCP): 4401ms
Web font shown at: 5134ms

Perceived performance winner
fallback
Full results
Full comparison results can be found here.
Chrome - 3G - Bank Holidays

Observations
fallback renders pixels to the page before swap, FOIT occurs. fallback renders content to the page quicker than swap (300ms). Web font for swap loads 300ms slower than fallback.
Fallback

First Paint (FP): 4067ms
First Contentful Paint (FCP): 4168ms
Web font shown at: 5068ms

Swap

First Paint (FP): 4401ms
First Contentful Paint (FCP): 4401ms
Web font shown at: 5401ms

Perceived performance winner
fallback
Full results
Full comparison results can be found here.
Firefox - 3G - Announcements

Observations
fallback renders pixels to the viewport, content to the page, and loads the web font 200ms quicker than swap.
Fallback

First Paint (FP): 4268ms
First Contentful Paint (FCP): 4368ms
Web font shown at: 4834ms

Swap

First Paint (FP): 4434ms
First Contentful Paint (FCP): 4534ms
Web font shown at: 5001ms

Perceived performance winner
fallback
Full results
Full comparison results can be found here.
Firefox - 3G - Applicant

Observations
FOIT observed when using fallback. It renders pixels and content to the viewport quicker (100ms). Web font also loads 100ms quicker.
Fallback

First Paint (FP): 5301ms
First Contentful Paint (FCP): 5334ms
Web font shown at: 6701ms

Swap

First Paint (FP): 5434ms
First Contentful Paint (FCP): 5434ms
Web font shown at: 6801ms

Perceived performance winner
fallback
Full results
Full comparison results can be found here.
Firefox - 3G - Bank Holidays

Observations
FOIT visible for 100ms for both. fallback renders pixels to the viewport 200ms quicker. Font loads and displays quicker for fallback.
Fallback

First Paint (FP): 4434ms
First Contentful Paint (FCP): 4534ms
Web font shown at: 5268ms

Swap

First Paint (FP): 4668ms
First Contentful Paint (FCP): 4737ms
Web font shown at: 5468ms

Perceived performance winner
fallback
Full results
Full comparison results can be found here.
Moto G4 - Chrome - 3G - Announcements
Tested on a real device, based in Dulles, VA.

Observations
swap page rendered extremely quickly once resources were loaded, within a single frame (~16ms). FOIT only visible for the fallback for 100ms.
Fallback

First Paint (FP): 5218ms
First Contentful Paint (FCP): 5384ms
Web font shown at: 5384ms

Swap

First Paint (FP): 5168ms
First Contentful Paint (FCP): 5168ms
Web font shown at: 5168ms

Perceived performance winner
swap
Full results
Full comparison results can be found here.
Moto G4 - Chrome - 3G - Applicant
Tested on a real device, based in Dulles, VA.

Observations
FOIT seen for first 100ms in both cases. swap renders pixels to the page some 500ms before fallback in this case. Page completion delayed due to the loading of the crown icon (not relevant).
Fallback

First Paint (FP): 5618ms
First Contentful Paint (FCP): 5701ms
Web font shown at: 5701ms

Swap

First Paint (FP): 5168ms
First Contentful Paint (FCP): 5301ms
Web font shown at: 5301ms

Perceived performance winner
swap
Full results
Full comparison results can be found here.
Moto G4 - Chrome - 3G - Bank Holidays
Tested on a real device, based in Dulles, VA.

Observations
FOIT visible for around 200ms with fallback, and it renders pixels to the screen before swap. Content is rendered to the viewport at a similar time for both cases. Same applies for the actual web font download.
Fallback

First Paint (FP): 5168ms
First Contentful Paint (FCP): 5318ms
Web font shown at: 5318ms

Swap

First Paint (FP): 5351ms
First Contentful Paint (FCP): 5351ms
Web font shown at: 5351ms

Perceived performance winner
fallback
Full results
Full comparison results can be found here.
Fastly Results
Sample pages taken from GOV.UK were tested to understand what the results were without the third-party dependencies. In this case the assets domain has also been removed which will remove the performance bottleneck when using HTTP/2.
HTTP/1.1 and HTTP/2 were tested to see how the protocol effected the results.
GOV.UK Homepage - HTTP/1.1 - 3G - Chrome

Observations
FOIT seen in the fallback version for 100ms, but not for swap. Initial page render contains the fallback font for swap, so perceived performance is better for this case. Actual font load is slower for swap by 100ms.
Fallback

First Paint (FP): 3434ms
First Contentful Paint (FCP): 3567ms
Webfont shown at: 4601ms

Swap

First Paint (FP): 3501ms
First Contentful Paint (FCP): 3501ms
Web font shown at: 4734ms

Perceived performance winner
swap
Full results
Full comparison results can be found here.
GOV.UK Homepage - HTTP/2 - 3G - Chrome

Observations
FOIT seen with fallback but not swap. Pixels rendered to the viewport 100ms quicker with fallback, actual content rendered at the same time. Font loads in a similar time.
Fallback

First Paint (FP): 3434ms
First Contentful Paint (FCP): 3534ms
Web font shown at: 4501ms

Swap

First Paint (FP): 3534ms
First Contentful Paint (FCP): 3534ms
Web font shown at: 4534ms

Perceived performance winner
fallback
Full results
Full comparison results can be found here.
Start Page - HTTP/1.1 - 3G - Moto G4 - Chrome
Tested on a real device, based in Dulles, VA.

Observations
fallback renders pixels to the viewport quicker, but FOIT is seen for 100ms. Content rendered 200ms quicker for swap, but the web font loads 400ms slower.
Fallback

First Paint (FP): 4017ms
First Contentful Paint (FCP): 4301ms
Web font shown at: 5218ms

Swap

First Paint (FP): 4184ms
First Contentful Paint (FCP): 4184ms
Web font shown at: 5618ms

Perceived performance winner
fallback
Full results
Full comparison results can be found here.
Start Page - HTTP/2 - 3G - Moto G4 - Chrome
Tested on a real device, based in Dulles, VA.

Observations
fallback renders pixels to the viewport quicker, but FOIT is seen for 300ms. swap renders the fallback at the same time as it draws the page. Web font loads slightly quicker for swap.
Fallback

First Paint (FP): 3651ms
First Contentful Paint (FCP): 3984ms
Web font shown at: 4834ms

Swap

First Paint (FP): 3751ms
First Contentful Paint (FCP): 3751ms
Web font shown at: 4618ms

Perceived performance winner
fallback
Full results
Full comparison results can be found here.
Conclusion
From the test results above, many of the tests look to show better perceived performance when fallback is used. This is assuming that painting any pixel to the viewport is perceived as quicker (open to interpretation). From the tests run, fallback was better for 10 out of 13 tests.
Recommendation
Off the back of the results above my recommendation would be to keep the font-display setting at fallback rather than swap, since it allows any type of pixels to be rendered to the viewport quicker.
We should do a similar test to see if font-display: optional may be a better alternative for older devices, since it allows a browser to cancel the web font download completely if the connection is very slow.

@Nooshu are there any limitations with the fact that our review application is poorly optimised?

@Nooshu are there any limitations with the fact that our review application is poorly optimised?

Yes I saw that there's a number of third-party CSS / JS references in the head so that could have been having some influence on results. Because of that I did a few of the tests hosted on Netlify, with Fastly sitting in front as the CDN (to mimic the GOV.UK setup). This setup showed the same result. In hindsight we could have just blocked the third-party domains in WPT.
Since we have mimicked the same setup for both fallback and swap (including the type of Heroku dyno's used), I'd hope we have fairly consistent results.

@Nooshu interesting thanks for the clarification, I wonder if we should share these results with the Chrome Developer advocates who are pushing for swap?

@Nooshu interesting thanks for the clarification, I wonder if we should share these results with the Chrome Developer advocates who are pushing for swap?

Agreed, I would like to understand what is happening. Maybe an issue in our testing, or misinterpreting the results? It certainly is the opposite of what I was expecting.


[diffusers]: Model Cache

Model loading is significantly different with diffusers, and I'm not sure how best to integrate it with the existing ModelCache: https://github.com/invoke-ai/InvokeAI/blob/c607d4fe6ccb0f13056d5fee5346989255fe3ccd/ldm/invoke/model_cache.py#L29-L37
diffusers takes advantage of 🤗accelerate by default. I don't know much about that library, but it seems like the sort of "offload this model state to CPU until we need it again" stuff ModelCache is doing is already implemented there: Dispatching and Offloading Models. I hope this means we can drop a lot of the existing code from ModelCache.
I haven't been using ModelCache's "offload to cpu" functionality even on the main branch because it always took way more memory than I expected it to and quickly summoned the Out-Of-Memory Killer.
I do have fast storage and I don't have a ton of spare RAM, so I don't think I'm the target audience for the model caching/offloading feature and I need to delegate the ModelCache/diffusers integration to someone who properly appreciates it.
Some of this potential integration with accelerate could probably even be done on the main branch. But due to the fact that #1583 already changes the ModelCache file a fair bit, and the fact that the way we interact with accelerate is probably a little different with and without diffusers (because it already sets it up somewhat), I expect a PR for this should target dev/diffusers and not main.

There is going to be a question at some point "is the default location for models in $INVOKE_ROOT/models or the huggingface-hub cache?"
I don't care that much one way or the other, but I have a few points in favor of "leave them in the huggingface-hub cache":

People have said "wouldn't it be great if there were a standard default location all programs used?"

Thwarted argument in favor:

I was going to say "you already are using the huggingface-hub cache for all the support models from transformers", but now I see that since I originally looked at preload_models, those have all been rewritten to explicitly pass a cache_dir to their from_pretrained calls.

Argument against:

a significant number of people need this stuff to be on a specific filesystem or drive, and we can't assume they set up $HUGGINGFACE_HUB_CACHE.

on the other other hand, maybe we should configure $HUGGINGFACE_HUB_CACHE for them as part of our process, because if they don't want invokeai/models on their home filesystem, they probably don't want the hub cache there either.

I think this has convinced me that (a) yes, use the huggingface hub cache and also (b) manage the setting of $HUGGINGFACE_HUB_CACHE.
though I realize that is going to run smack up against the "all of the things are always under $INVOKEAI_ROOT" philosophy so it might not fly.

There is going to be a question at some point "is the default location for models in $INVOKE_ROOT/models or the huggingface-hub cache?"
I don't care that much one way or the other, but I have a few points in favor of "leave them in the huggingface-hub cache":

People have said "wouldn't it be great if there were a standard default location all programs used?"

Thwarted argument in favor:

I was going to say "you already are using the huggingface-hub cache for all the support models from transformers", but now I see that since I originally looked at preload_models, those have all been rewritten to explicitly pass a cache_dir to their from_pretrained calls.

Argument against:

a significant number of people need this stuff to be on a specific filesystem or drive, and we can't assume they set up $HUGGINGFACE_HUB_CACHE.

on the other other hand, maybe we should configure $HUGGINGFACE_HUB_CACHE for them as part of our process, because if they don't want invokeai/models on their home filesystem, they probably don't want the hub cache there either.

I think this has convinced me that (a) yes, use the huggingface hub cache and also (b) manage the setting of $HUGGINGFACE_HUB_CACHE.
though I realize that is going to run smack up against the "all of the things are always under $INVOKEAI_ROOT" philosophy so it might not fly.

It's actually not a problem. We already download a bunch of hugging face models that usually go into its cache and just redirect them into $INVOKEAI_ROOT. There' s a well-established pattern for this.

I think we've worked this out. There's a system in place for deciding where models go on disk, and the model manager is able to offload diffusers models to system memory when it swaps them out.
(Using accelerate didn't work out so well, see #2542.)


Still work in october cms now ?

Hello, i am using this plugin and i try to following the instructions but seem like it only work when i put some img tag on my layout and that img can be zoom , but when i add data-action zoom on img in blog post partial, it doesnt zoom. I dont know why ? Can you help me.

HI, have you added a tags {% component 'zoomingImages' %} and {% scripts %} to your blog layout?

Yes, i add  {% component 'zoomingImages' %} ``{% scripts %} and {% styles %}
in my layout. and in my partial i add a img tag like instruction and it work but with img in blog post, it doesnt (all have data-action='zoom').

Can you provide a link to your application?


[SPARK-41302][SQL] Assign name to _LEGACY_ERROR_TEMP_1185

What changes were proposed in this pull request?
This PR proposes to assign name to _LEGACY_ERROR_TEMP_1185 -> IDENTIFIER_TOO_MANY_NAME_PARTS
Why are the changes needed?
We should assign proper name to LEGACY_ERROR_TEMP*
Does this PR introduce any user-facing change?
No
How was this patch tested?
Additional test cases were added

@itholic FYI

Also requesting review for @MaxGekk @srielau when you guys find some time 🙏

@NarekDW Could you update PR's description to match the actual error class name IDENTIFIER_TOO_MANY_NAME_PARTS, please.

+1, LGTM. Merging to master/3.4.
Thank you, @NarekDW and @itholic @srielau for review.

@NarekDW Do you have an account at https://issues.apache.org/jira ? If not, I could create it for you. I would like to assign the resolved ticket https://issues.apache.org/jira/browse/SPARK-41302 to you.

@MaxGekk Yep, I have it:
Username:	narekdw
Full name:	Narek Karapetian

@NarekDW Congratulations with the first contribution to Apache Spark!

Thank you @MaxGekk, will keep it going :)

Great!
Congratulations and thanks for the contribution to Apache Spark, @NarekDW !! 👍
If you're interested in more error framework improvement, please check the sub-tasks for SPARK-37935 :-)
NOTE: Before start working on ticket, please leave a comment to avoid doing the same thing at the same time.
e.g.

Thanks! :-)

Also thanks @MaxGekk and @srielau for the review! 🙏


Defaults very confusing if exclude specified

trigger:
  branches:
    exclude:
    - foo

Intuitively this should run on all branches except foo. In practice, it never runs, since probably now include is empty, since I defined trigger which removes all defaults. There should be nested defaults as well.

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

ID: f5673ec1-c7d1-e0ac-043a-8fc3d5b226a9
Version Independent ID: b4872831-51c0-6cf8-1c56-de20beb38a80
Content: Build pipeline triggers - Azure Pipelines
Content Source: docs/pipelines/build/triggers.md
Product: devops
Technology: devops-cicd
GitHub Login: @steved0x
Microsoft Alias: sdanie

@letmaik I just went back to the article and read it again and I agree it is confusing, since there is no include or exclude in the first example. Let me confirm the behavior and I will get this updated.

@letmaik I have confirmed the behavior - when the defaults are overridden, only what is explicitly configured in the trigger is used. So your supposition was correct, since you only specified an exclude, no branches were included by default and so no CI builds. I am updating the documentation to make that more clear, and the Pipelines team has taken a work item to revisit the story for the defaults. I'm tagging this issue in my doc update and this issue should close when the docs fix is synced over to the public repo.

Thanks, sounds good.


Render issues using @atomist/slack-messages

Related to #32

@ddgenome I've added license header to all source ts files and made a few tweaks you suggested


add slottable behavior

This adds a new @slot decorator for querying/manipulating/listening for slot elements.
This also listens for slotchanged events and calls the setter which can be very useful for running side effects on a slot change.

:wave: Hello and thanks for pinging us! This issue or PR has been added to our inbox and a Design Infrastructure first responder will review it soon.

:art: If this is a PR that includes a visual change, please make sure to add screenshots in the description or deploy this code to a lab machine with instructions for how to test.
:fast_forward: If this is a PR that includes changes to an interaction, please include a video recording in the description.
:warning: If this is urgent, please visit us in #primer on Slack and tag the first responders listed in the channel topic.

I don't feel qualified to review this since I don't have much web component experience. I'll defer to @koddsson for review.


[Type checker] Teach areOverrideCompatibleSimple() to look at initializers

Apply the same is-generic check to initializers that we apply to
functions when establishing basic override compatibility. This is a
simple optimization for master, but fixes a crasher for Swift 3.1.
Fixes SR-4059

@swift-ci please smoke test and merge

This seems incorrect; what if you have class IntList: ListBase<Int>?

@swift-ci please smoke test and merge

This is about the generic parameters on the initializer itself; it's not checking the generic parameters of the enclosing class.
You are correct that the implementation is wrong: one could override a concrete initializer with a generic one. But we need a bit more work to get there.

Hmm. Maybe the name isGeneric() is misleading.

@swift-ci please smoke test and merge


Wiki Link Dead?

Describe the Bug
When viewing the wiki page at https://github.com/intel/haxm/wiki/Installation-Instructions-on-Windows, the http://software.intel.com/en-us/android link does not behave as expected and redirects you to a seemingly unrelated page (furthermore, the page wont even load correctly on firefox, but thats not an issue for this repo). This wiki page is directly linked to when installing Android Studio if the HAXM install fails: Intel® HAXM installation failed. To install Intel® HAXM follow the instructions found at: https://github.com/intel/haxm/wiki/Installation-Instructions-on-Windows, so it is important that this link works!
Apologies for removing rest of bug template, did not seem necessary in this case.

Thanks for your report. The wiki page has been updated.


Is the Raspberry pi zero compatible with self host bot?

Hey i wanna ask if  the Raspberry pi zero is compatible with nadeko and if there's anyone that could help me with that :) if it is, i might buy one

In theory it's possible, but very very unsupported and slow. You're better off getting something else for sure. Consider looking around locally for computers, you'll get better performance.
TL;DR, don't.

Not with current Nadeko, because the architecture is not supported.
There is a fork of Nadeko somewhere that supports it, but it's for a very old version (v2.10.0 or older). Not worth the effort, imo.
Related: https://github.com/Kwoth/NadekoBot/issues/1203

Its not officially supported but it's possible yes, a lot of people did it as you can see in #1203


Fix for GVRTexture.getFutureId

now works correctly from both user and gl thread

Tests pull request: https://github.com/gearvrf/GearVRf-Tests/pull/31
Saurabh brought this bug to my attention.
GearVRf-DCO-1.0-Signed-off-by: Mihail Marinov<EMAIL_ADDRESS>

Planning to merge in the afternoon


feat(react): remove AsyncBoundary

Remove AsyncBoundary

AsyncBoundary is a component that just combines Suspense and ErrorBoundary, but it does not provide any additional functions.
Because the number of management points increases due to this AsyncBoundary, I think it is a barrier to entry for users to use the suspensive library. (pendingFallback = fallback of suspense, rejectedFallback = fallback of ErrorBoundary, AsyncBoundary uses ErrorBoundary internally, so users should be aware that it is affected by ErrorBoundaryGroup and etc.)
Rather than using AsyncBoundary, which is a combination of Suspense and ErrorBoundary, I think it is a better library to provide the user with an interface to directly combine Suspense ErrorBoundary so that the positions of ErrorBoundary and Suspense can be changed flexibly.

PR Checklist

[x] I have written documents and tests, if needed.

AsyncBoundary is a component that just combines Suspense and ErrorBoundary, but it does not provide any additional functions.

I agree with this, but,
I think there is a reason why the purpose of using the library is to use predefined codes comfortably, even though it can be implemented by themselves.
Based on what you said, AsyncBoundary is just a simple combination, but I know that this combination is a frequently used use case, so wouldn't it be okay to keep it as it is?

As for asynchronous processing, I want to provide an environment where we can develop it comfortably by using only our suspensive.
I want to save developers the trouble of processing asynchronous processing utility on their projects.(ex. making AsyncBoundary themselves)

As for asynchronous processing, I want to provide an environment where we can develop it comfortably by using only our suspensive.
I want to save developers the trouble of processing asynchronous processing utility on their projects.(ex. making AsyncBoundary themselves)

After our conversation in Discord with @okinawaa, I understood frequent use cases. first I closed this Pull Request.  if need to remove AsyncBoundary really, reopen this pull request at that time


editing FloorPlot boxes

I'm trying to use the FloorPlot function on a simple beamline imported in from MAD-X. Plotting with mostly default options seems to work well:
xplt.FloorPlot(
    sv, line,
    figsize=(18, 7),
    labels=table_multipoles.name
)

However, when I go to edit the color of my kickers (imported as multipoles) something strange seems to happen. I'm guessing this is connected with ".*: "True" to get the other elements to plot in their default configuration?
    xplt.FloorPlot(
        sv, line,
        figsize=(18, 7),
        boxes={
            "vs.": dict(color="green"),
            "s.": dict(color="green"),
            ".*": True
        },
        labels=table_multipoles.name
    )

Yes, since .* matches everything, you overwrite the default behaviour and ask it to show all elements explicitly.
What elements are the ones you don't want to show up? Can you provide the MADX file and minimal code to reproduce?
If it's drift spaces then it's a bug because these should never be rendered. In this case we need a reproducible example to debug.
If it's some other elements then it's intended behaviour. In this case you can either change the regex to match only the elements you actually want to see, or use the ignore parameter to exclude certain elements again. But we could think about having a default_boxes=True/False parameter to keep the default boxes in addition to custom ones for convenience (instead of forcing the user to manually replicate the default by providing an appropriate regex).

But in any case please provide a reproducible minimal example.

It looks like this was caused by the drift spaces being rendered from including .*. I'm not sure from your statement if this is actually a bug or is expected when you ask for every element to be shown.
In either case the addition of default_boxes seems to make it much easier to create the figure I intended. Thanks for your help!
As a side issue it looks like the coloring for Bend elements may have been  broken in the recent commits. They now appear to default to the same color as Quads.
import xtrack as xt
import xpart as xp
import xplt
xplt.apply_style()

ele_line = {
    'drift_0': xt.Drift(length=0.5),
    'qf_0': xt.Quadrupole(length=0.25, k1=1.0),
    'drift_1': xt.Drift(length=0.5),
    'qd_0': xt.Quadrupole(length=0.25, k1=-1.0),

    'drift_2': xt.Drift(length=0.5),
    'bend_0': xt.Bend(length=0.175, h=0.686, edge_entry_angle=0, edge_exit_angle=0.06),
    'drift_3': xt.Drift(length=0.5),
    'bend_1': xt.Bend(length=0.175, h=-0.686, edge_entry_angle=-0.06, edge_exit_angle=0.0),
}

beam_line = xt.Line(
    elements=[ele for ele in ele_line.values()],
    element_names=[name for name in ele_line.keys()]
              )

beam_line.particle_ref = xp.Particles()
beam_line.build_tracker()
table = beam_line.get_table()

plot = xplt.FloorPlot(line=beam_line, labels=table.rows[table.element_type == 'Bend'].name)
plot.legend()

plot = xplt.FloorPlot(line=beam_line, boxes={'.*': True})
plot.legend()


"matrix" doesn't show up in completion list on MRO

matrix function is not showing up in the completion list when typing "matrix" in the REPL. The completion list is there, but it only shows a single entry "Matrix" (note capitalization), corresponding to a library with the same name. The function is there and can be called, though.

It appears that we have some issue with case sensitivity in completion lists in general. Do this:
aaa <- 123
AAA <- 456

Only "aaa" shows up in the list, not "AAA". Now do:
Aaa <- 789

Now only "Aaa" shows in the list.

Regression after #2165

Change ported


Investigate more scalable ways of pulling data for the site

Currently all of the GitHub and Crates.io data used on the site is retrieved via a clever template macro. This is simple and keeps the build self-contained, but has a few big issues:

As the size of the site grows, we may hit a point where the build will trigger rate limits due to the number of requests. I've had this happen to me locally when developing the templates, and it's a pain.
It makes the site increasingly slow to build, since every build has to refetch the data.
It's hard to maintain/add to, due to the limited logic you can express in a templating engine.

I'm wondering if we might be able to find a better way of grabbing this data (e.g. via an external script or a Rust program). This could also allow us to store the site's data in a nicer format, rather than these massive manually ordered data.toml files.
If we did this, there's more efficient options we could use for pulling the API data:

GitHub has a GraphQL API, and I believe that might allow us to query multiple repos in a single request.
Crates.io's index can be accessed via Git, avoiding the API altogether.

This might be overengineering things, but it's worth thinking about, I think!

GitHub has a GraphQL API, and I believe that might allow us to query multiple repos in a single request.

I played around with the graphql explorer.
{
  r1: repository(owner: "ChariotEngine", name: "Chariot") {
    ...repoFields
  }
  r2: repository(owner: "duysqubix", name: "MuOxi") {
    ...repoFields
  }
}

fragment repoFields on Repository {
  url
  homepageUrl
  description
}

Crates.io's index can be accessed via Git, avoiding the API altogether.

Afaik the index contains only the versions,name,deps,features,yanked.
But https://crates.io/data-access mentions a database dump that is updated every 24h.
The tarball contains a crates.csv that could be processed to get the description, repository_url, homepage etc.

GitHub has a GraphQL API, and I believe that might allow us to query multiple repos in a single request.

I played around with the graphql explorer.
{
  r1: repository(owner: "ChariotEngine", name: "Chariot") {
    ...repoFields
  }
  r2: repository(owner: "duysqubix", name: "MuOxi") {
    ...repoFields
  }
}

fragment repoFields on Repository {
  url
  homepageUrl
  description
}

Crates.io's index can be accessed via Git, avoiding the API altogether.

Afaik the index contains only the versions,name,deps,features,yanked.
But https://crates.io/data-access mentions a database dump that is updated every 24h.
The tarball contains a crates.csv that could be processed to get the description, repository_url, homepage etc.

i wrote a script to combine the data from crates.io and the github's graphql api into a single csv file.
Convert content/ecosystem/data.toml to data.csv
The categories are joined to a string with : as separator.
toml get content/ecosystem/data.toml items | \
    jq -r 'map(. + { categories: .categories | join(":")}) | (map(keys) | add | unique) as $cols | map(. as $row | $cols | map($row[.])) as $rows | $cols, $rows[] | @csv' | \
    xsv select name,source,categories,homepage_url,gitter_url > data.csv

Tools: toml-cli, jq, xsv
Generate the final result.csv
The crates.csv from db-dump.tar.gz could be cached with the actions/cache action.
result.csv.txt
#!/usr/bin/bash

# Get the names of all github items and also save them for later.
repos=$(xsv search -s source github data.csv | xsv select name | tee names.csv | tail -n +2)

# Build a graphql query for all github repos
i=0
echo "{" > github.query
for r in ${repos[@]}; do
    name=$(echo $r | cut -d "/" -f1)
    repo=$(echo $r | cut -d "/" -f2)
    cat <<QUERY >> github.query
  r$i: repository(owner: "${name}", name: "${repo}") {
    ...repoFields
  }
QUERY
    let i=${i}+1
done
cat <<TAIL >> github.query
}

fragment repoFields on Repository {
  description
  repository: url
  homepage: homepageUrl
}
TAIL

# Execute graphql query and tranform the result to csv plus the names.csv from before.
gh api graphql -f query="$(cat github.query)" | \
    jq -r '[.data[]] |
        (map(keys) | add | unique) as $cols |
        map(. as $row | $cols | map($row[.])) as $rows |
        $cols, $rows[] | @csv' | xsv cat columns names.csv - > github.csv

# Join the github data
xsv join name data.csv name github.csv | xsv select '!name[1]' > joined-github.csv

# Select the needed columns from db-dump.tar.gz's crates.csv
xsv select name,description,repository,homepage crates.csv > partial-crates.csv

# Join the crates.io data
xsv join name data.csv name partial-crates.csv | xsv select '!name[1]' > joined-crates.csv

# Concat rows and sort by name
xsv cat rows joined-crates.csv joined-github.csv | xsv sort -s name > result.csv

Tools: github-cli, jq, xsv

i wrote a script to combine the data from crates.io and the github's graphql api into a single csv file.
Convert content/ecosystem/data.toml to data.csv
The categories are joined to a string with : as separator.
toml get content/ecosystem/data.toml items | \
    jq -r 'map(. + { categories: .categories | join(":")}) | (map(keys) | add | unique) as $cols | map(. as $row | $cols | map($row[.])) as $rows | $cols, $rows[] | @csv' | \
    xsv select name,source,categories,homepage_url,gitter_url > data.csv

Tools: toml-cli, jq, xsv
Generate the final result.csv
The crates.csv from db-dump.tar.gz could be cached with the actions/cache action.
result.csv.txt
#!/usr/bin/bash

# Get the names of all github items and also save them for later.
repos=$(xsv search -s source github data.csv | xsv select name | tee names.csv | tail -n +2)

# Build a graphql query for all github repos
i=0
echo "{" > github.query
for r in ${repos[@]}; do
    name=$(echo $r | cut -d "/" -f1)
    repo=$(echo $r | cut -d "/" -f2)
    cat <<QUERY >> github.query
  r$i: repository(owner: "${name}", name: "${repo}") {
    ...repoFields
  }
QUERY
    let i=${i}+1
done
cat <<TAIL >> github.query
}

fragment repoFields on Repository {
  description
  repository: url
  homepage: homepageUrl
}
TAIL

# Execute graphql query and tranform the result to csv plus the names.csv from before.
gh api graphql -f query="$(cat github.query)" | \
    jq -r '[.data[]] |
        (map(keys) | add | unique) as $cols |
        map(. as $row | $cols | map($row[.])) as $rows |
        $cols, $rows[] | @csv' | xsv cat columns names.csv - > github.csv

# Join the github data
xsv join name data.csv name github.csv | xsv select '!name[1]' > joined-github.csv

# Select the needed columns from db-dump.tar.gz's crates.csv
xsv select name,description,repository,homepage crates.csv > partial-crates.csv

# Join the crates.io data
xsv join name data.csv name partial-crates.csv | xsv select '!name[1]' > joined-crates.csv

# Concat rows and sort by name
xsv cat rows joined-crates.csv joined-github.csv | xsv sort -s name > result.csv

Tools: github-cli, jq, xsv


QR code not displaying in Brave Browser

Description
In Brave, the extension can be downloaded and opened. But at the step of the QR code, the QR code is missing (see Slack for screenshot).
Environment

Safe browser extension version: Not sure where I can find that. But I just installed the latest one from Chrome Web Store, and the current version there is 0.6.1.
Browser version: Version 0.56.14 Chromium: 70.0.3538.102 (Official Build) (64-bit)
Operating system: MacOS Mojave (10.14.1)

Still does not work.

@dteiml @seichris @dangerbird
As you can see on this issue https://github.com/brave/brave-browser/issues/2143, Brave browser does not support Firebase Cloud Messaging.
The QR code in the Safe extension in not displayed in Brave because it tries to get the token from Firebase, but it is never received.


Add missing MD tag to fix formatting

Add missing MD tag to fix formatting

@manbearian : Thanks for your contribution! The author, @corob-msft, has been notified to review your proposed change.


Search Module - onSelect null 'results'

Hi
I have a 'mostly' working Search working.  The problem is that sometimes it does not work and I'm not sure why.  The Search is calling my search endpoint (Rails app) which is generating 'category' type json.

When I type in a string to query ('ruck') - I get back two results ...

{
  "results": {
    "Ruckus Wireless": {
      "name": "Ruckus Wireless",
      "results": [
        {
          "title": "Model: ZoneFlex 7782-E Access Point",
          "id": 1954,
          "description": "Part Number: ZF7782"
        },
        {
          "title": "Model: Zoneflex 7962 Access Point",
          "id": 1924,
          "description": "Part Number: "
        }
      ]
    }
  }
}

Specifically the 'onSelect' callback is sent two valid values for 'result' and 'response'.
I can click on either or the two result rows and everything works.
When I perform another search - say for 'headphones' - my endpoint returns the following json...
{
  "results": {
    "Bose": {
      "name": "Bose",
      "results": [
        {
          "title": "Model: SoundLink On-Ear Bluetooth Headphones",
          "id": 2205,
          "description": "Part Number:<PHONE_NUMBER>"
        },
        {
          "title": "Model: Soundlink Around-Ear Bluetooth Headphones",
          "id": 1589,
          "description": "Part Number:<PHONE_NUMBER>"
        }
      ]
    },
    "Creative": {
      "name": "Creative",
      "results": [
        {
          "title": "Model: WP-350 Wireless Bluetooth Headphones with Invisible Mic",
          "id": 1599,
          "description": "Part Number: 51EF0490AA002"
        }
      ]
    },
    "JayBird": {
      "name": "JayBird",
      "results": [
        {
          "title": "Model: Bluebuds X Sport Bluetooth Headphones - Storm White",
          "id": 2200,
          "description": "Part Number: BBX1SW"
        },
        {
          "title": "Model: Freedom Sprint Bluetooth Headphones",
          "id": 2203,
          "description": "Part Number: JF4MBL"
        }
      ]
    },
    "Motorola": {
      "name": "Motorola",
      "results": [
        {
          "title": "Model: S11-Flex HD Wireless Stereo Headphones",
          "id": 2225,
          "description": "Part Number: 89585N"
        },
        {
          "title": "Model: S11-HD Wireless Stereo Headphones",
          "id": 2231,
          "description": "Part Number: 89587N"
        }
      ]
    },
    "Parrot": {
      "name": "Parrot",
      "results": [
        {
          "title": "Model: Zik 2.0 Wireless Bluetooth Stereo Headphones",
          "id": 2387,
          "description": "Part Number: PF561000"
        },
        {
          "title": "Model: Zik 2.0 Wireless Stereo Bluetooth Headphones",
          "id": 2204,
          "description": "Part Number: PF561003"
        }
      ]
    },
    "Sennheiser": {
      "name": "Sennheiser",
      "results": [
        {
          "title": "Model: MM 450-X Wireless Bluetooth Headphones",
          "id": 2235,
          "description": "Part Number: 504513"
        },
        {
          "title": "Model: MM 500-X Wireless Bluetooth Travel Headphones",
          "id": 2206,
          "description": "Part Number: 504514"
        },
        {
          "title": "Model: MM 550-X Wireless Bluetooth Headphones",
          "id": 2244,
          "description": "Part Number: 504515"
        }
      ]
    }
  }
}

which is structurally identical to the previous result.
The problem is that the onSelect callback has null as the value for result.
Any idea what's happening and why ?

Thanks
Dave

Can you create a JSFiddle example, you can use mockResponse to specify the returned JSON.
Also can you confirm you are using the latest version of SUI. There was bugs related to onSelect not finding the result in some cases that were solved in previous releases.

Closing until there's a test case.


An element should always update any siblings

As per issue #16. An element should always update any siblings.

Thanks! We'll probably want to write unit tests to confirm this fix, but visually it seems to have fixed the issue.


[C++][Parquet] Add visibility macros to be used for public and internal APIs of libparquet

e.g. PARQUET_EXPORT and PARQUET_NO_EXPORT
Reporter: Wes McKinney / @wesm
Assignee: Wes McKinney](https://issues.apache.org/jira/secure/ViewProfile.jspa?name=wesm) / @wesm
Related issues:

[C++] Re-enable -static-libstdc++ in dev artifact builds (is related to)

Note: This issue was originally created as PARQUET-489. Please see the migration documentation for further details.

Wes McKinney / @wesm:
Related to PARQUET-638, currently on CentOS 6 we have:
$ ldd libparquet.so
ldd: warning: you do not have execution permission for `./libparquet.so'
./libparquet.so: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.18' not found (required by ./libparquet.so)
./libparquet.so: /usr/lib64/libstdc++.so.6: version `CXXABI_1.3.5' not found (required by ./libparquet.so)
./libparquet.so: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.20' not found (required by ./libparquet.so)
./libparquet.so: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.15' not found (required by ./libparquet.so)
	linux-vdso.so.1 =>  (0x00007ffed0b75000)
	libstdc++.so.6 => /usr/lib64/libstdc++.so.6 (0x00007f2e53191000)
	libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x00007f2e52f7a000)

So as soon as we have visibility set up, hypothetically we'll be able to statically link libstdc++ to create libraries that can be used on Linuxes with older glibc / libstdc++

Wes McKinney / @wesm:
It's true. Kudu, for example, generates internal and exported variants of each of its leaf libraries, and creates an exported libkudu_client.so
https://github.com/apache/incubator-kudu/blob/master/src/kudu/client/CMakeLists.txt#L78
I guess for now we should have tight visibility in the shared library (since this is causing problems already) and statically link libparquet for the unit tests.

Wes McKinney / @wesm:
See also the helpful cmake function https://github.com/apache/incubator-kudu/blob/master/CMakeLists.txt#L462

Uwe Korn / @xhochy:
Once we only export our public symbols, we cannot link the internal tests against the dynamic library anymore as these symbols are not visible.

Wes McKinney / @wesm:
Issue resolved by pull request 131
https://github.com/apache/parquet-cpp/pull/131


Added PSA Crypto API Support

To get this code to work take the following steps:

Create a directory for the entire project
Inside this directory put the code of qcbor, t_cose, mbedtls, and libcsuit. Here are the commands:

git clone https://github.com/hannestschofenig/t_cose.git
git clone https://github.com/hannestschofenig/QCBOR.git
git clone https://github.com/ARMmbed/mbedtls.git
git clone https://github.com/hannestschofenig/libcsuit.git
cd libcsuit
git checkout psa

Build the code using cmake

mkdir build
cd build
cmake -DMBEDLS=1 ..
make

Run the code using the two examples provided, namely suit_manifest_encode_main_psa and suit_manifest_parser_main_psa

It works fine and I've merged, but I found some compile errors in the original codes (maybe the function interface changes). I'll quickly fix them. Thank you for your Pull Request!


Terminal Prompts

WHEN I start the application
THEN I am prompted to enter the team manager’s name, employee ID, email address, and office number

WHEN I enter the team manager’s name, employee ID, email address, and office number
THEN I am presented with a menu with the option to add an engineer or an intern or to finish building my team


new UOp style patterns [run_process_replay]

adds UOp ability to express "all permutations of src", rewrites more patterns in the new UOp style
First PR towards hopefully a bigger refactor. Making UOp equally expressive means they could pattern match without UPat at all. At the very least UPat could be refactored to a dataclass with cleaner types and one constructor (compile).
Patterns UOp can't express yet:

[ ] All permutations of src
[ ] For any dtype in set
[ ] For any op in set
[ ] Allowed len (less hacky)

pattern match without UPat at all

you can just make PHI and DEFINE_ACC (passes tests for me)

PHI and DEFINE_ACC aren't commutative though.
A new UOp shouldn't be created for this. Maybe UPat should superclass UOp.

A new UOp shouldn't be created for this.

Got it. Any reason UOps.VAR is an exception? The UOp syntax is nice for patterns, especially with all the dunders, which is why I thought adding expression would be worth a few non-rendered UOps.
It's hard to make a clean refactor if some pattern stuff is expressed in UOp and some is not. I think it should be all or nothing.
There's still a lot of rewrites to the new style without permute() in here, I'll revert the permute stuff.

I don't like UOp.VAR, it really should just be a NamedUOp superclass.

Merged this, easier to read. I'd support a refactor with the NOp class

Sounds good I'll work on that


[BUG] Cannot import torchrl on M2 MacBook Pro when install from Git repo.

Describe the bug
Cannot import torchrl on M2 MacBook Pro when install from Git repo.
To Reproduce
I have installed torchrl from GitHub following the online instructions from your repo:
git clone https://github.com/pytorch/rl
cd /path/to/torchrl/
pip install -e .

Issue 1 [suggested resolution]: the path setup worked for rl/ folder not torchrl/ as the setup.py is inside rl not torchrl. So that instruction should updated in your docs please.
Issue 2 [unresolved]: it says this should work straight out of the box on M1. I have the M2 and when I import torch it is ok, but when I import torchrl I get the following error: ImportError: cannot import name 'unravel_key' from 'tensordict' (/Users/myname/anaconda3/envs/gpu-torch-rl/lib/python3.10/site-packages/tensordict/__init__.py)
Expected behavior
I expect to be able to import the torchrl library.
Screenshots

System info
Apple M2 max
Version 13.5.2
Describe the characteristic of your environment:
Steps Ive taken up until the error:
conda create --name gpu-torch-rl python=3.10 spyder=5.4.3
conda activate gpu-torch-rl

git clone https://github.com/pytorch/rl /Users/myname/anaconda3/repos/rl

cd /Users/myname/anaconda3/repos/rl/
pip install -e .

Additional context
I also tried to get the tensordict from GitHub to resolve this unravel key issue, and tried:
pip uninstall tensordict
pip install git+https://github.com/pytorch-labs/tensordict

which resolved this issue, however I had a bunch of other issues after that, so am keen to understand why the tensordict that came together with the torchrl download didn't work. Surely it should be compatible. Could you please resolve this issue?

Hello!
TorchRL's development is currently tightly linked to tensordict hence if you install the nightlies of one you should also do the same with the other. In the future, we'll make sure that things are properly linked so that a proper error (or even better, the accurate nightlies) are installed with the lib!
Regarding M2 compatibility, we're still looging at making those wheels. I hope to have an answer to share early next week!

Thank you for your reply! Could you please kindly recommend how I can use the apple metal MPS with the tutorial https://pytorch.org/tutorials/intermediate/reinforcement_ppo.html ? I am trying to get rid of the TypeError: Cannot convert a MPS Tensor to float64 dtype as the MPS framework doesn't support float64. Please use float32 instead. . Is there something I can change globally to avoid this issue? Where shall I change the type from float64 to float32 (such that it works globally without me having to go into every single file and say if mps and float64 then change to float32?

See https://github.com/pytorch/rl/pull/1472#issuecomment-1741953667


Change cache var to protected

Q
A

Bug fix?
no

New feature?
no

BC breaks?
yes

Deprecations?
no

Tests pass?
yes

Fixed tickets
https://github.com/php-cache/issues/issues/55

License
MIT

Thank you @prisis for this PR.
The implications of this would be that the $cache property is part of our BC promise. But I think this is fine.
@aequasi Are you okey with that?

+1 for encouraging exensibility


not able to read the string data (qrdata) when size is set less than 100

Hi,
Very good package !
Have some issues or need help in understanding the correct usage of this package. Not much detailed explanation are given on the options .

When reducing the size to less than 100 , sometimes the scanner is not able to get the required data .
but when i keep the size as 100 or more  , I have no issues in getting the text. Anything less than 100 , takes lot of time and nothing returns(sometimes a no is returned) .
My application also will be used on mobile phones. So sometimes the text is not displayed when using the scanner .
My text content is around 200 to 300 chars .
Also the level usage needs to be elaborated , so we can use it accordingly. For now i use the level as L.
Is there any 1 to 1 relation between size and the text data ?
Level usage
When screen size is reduced/compressed , the scanner is not able to get the text and returns just a number .

Hi @AngularTx
I wrote about it a while ago here https://stackoverflow.com/a/49667939

QR Codes have a limited 'volume' to store data, and the available space is narrowed by the actual size of your canvas, the correction level and used QR Code version [Ref]
The angularx-qrcode lib comes with sensible defaults (size of 256 x 256px, error correction level 'm') to store your data. A size of 150 x 150px can only hold ~1/3 of the libs default.
To get more storage space, you may increase the possible amount of data stored in your QR code with these two options:
Increase the canvas-size to 256px and resize your canvas with CSS to 150px

lower the correction level

Both options are fine in a digital environment where we rarely encounter issues with loss or dirt.
Sample (for angularx-qrcode):
<qrcode [qrdata]="myAngularxQrCode" [size]="256" [level]="'L'">

Did you try to raise the size and scale the generated QR-Code via CSS?


Missing top_10_similar_genes_sim Data File

Hi,
It seems like the "top_10_similar_genes_sim" file is missing from the Harvard Dataverse data files, which is throwing an error in training since it is used in line 143 of train.py. Could you please upload this data file and the source code used to generate it?
Cheers,
Emily

I ran into this problem too. Would appreciate the upload!


Checkbox

Description
Resized the checkbox without much shadow

[ ] This is a bugfix.
[ ] This is a new feature.
[x] This is part of a feature.

Organization

[ ] Have you linked this pull request to a Trello card?

Review

[ ] Have you added two reviewers to this pull request?
[ ] Is this a work in process?
[x] Is this ready to be reviewed?

 Checkbox on mapbox


⚠ Bofrost.at has degraded performance

In 9c23fe8, Bofrost.at (https://www.bofrost.at) experienced degraded performance:

HTTP code: 200
Response time: 1597 ms

Resolved: Bofrost.at performance has improved in 94fc4a9.


Breakpoints

We need to define what our breakpoints are and define them as tokens so we can export them as css variables (even if media queries doens't support it yet) and make a page documententing usage.
Suggest keep using the same name we have for sizes to keep consistency.
Old breakpoint tokens: https://github.com/digdir/designsystemet/tree/main/design-tokens/Viewport
Notes:

https://tailwindcss.com/docs/responsive-design
https://mantine.dev/styles/responsive/
https://react-spectrum.adobe.com/react-spectrum/Provider.html#breakpoints
https://aksel.nav.no/grunnleggende/styling/brekkpunkter

### Tasks
- [ ] Breakpoints documentation page in Storybook & Storefront
- [ ] Breakpoints tokens
- [ ] Update storefront to use breakpoints

Decided to try these breakpoints

Size
em
px

s
40em
640px

m
48em
768px

l
64em
1024px

xl
80em
1280px

2xl
96em
1536px

Seem like there is a lot of users that use resolutions close to the minimums mentioned in WCAG (320px width). There is also something strange about the stats and most likely there is some pollution in the source-data used in Statcounter. I think the smallest size need to work from minimum 320 px, but we do not need to test for usability at smaller screens than 320.
https://gs.statcounter.com/screen-resolution-stats/all/norway
Would be interesting to see comparable results from some public service websites.
At BR we do not track viewport at the moment as this is not gathered on the server-side statistics that we get (in Kibana). However, I have asked for operation system and browser stats.


OSD-15543 - Add 'package' subcommand to 'promote' commandset

https://issues.redhat.com/browse/OSD-15543

Adds logic to osdctl enabling package operator packages to be promoted via app-interface

/hold for testing

/unhold

/retest

/retest

/retest


NPE on withdraw from vault and enderchest

Got NPE while trying withdraw money from vault.
Precondition:

Vault chest has 1002
Inventory 0
Enderchest has 20
I`m using last 2.12.5 version

Steps to reproduce:
type /money withdraw 1022
Expected:
1022 will be transfered to inventory.
Actual:
All money in vault (1002) disappeared.
Nothing comes to inventory.
[09:29:32 INFO]: MorjTop1GG issued server command: /balance withdraw 1022
[09:29:32 ERROR]: null
org.bukkit.command.CommandException: Unhandled exception executing command 'balance' in plugin Gringotts v2.12.5
        at org.bukkit.command.PluginCommand.execute(PluginCommand.java:47) ~[purpur-api-1.20.1-R0.1-SNAPSHOT.jar:?]
        at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:168) ~[purpur-api-1.20.1-R0.1-SNAPSHOT.jar:?]
        at org.bukkit.craftbukkit.v1_20_R1.CraftServer.dispatchCommand(CraftServer.java:947) ~[purpur-1.20.1.jar:git-Purpur-1996]
        at org.bukkit.craftbukkit.v1_20_R1.command.BukkitCommandWrapper.run(BukkitCommandWrapper.java:64) ~[purpur-1.20.1.jar:git-Purpur-1996]
        at com.mojang.brigadier.CommandDispatcher.execute(CommandDispatcher.java:265) ~[purpur-1.20.1.jar:?]
        at net.minecraft.commands.Commands.performCommand(Commands.java:332) ~[?:?]
        at net.minecraft.commands.Commands.performCommand(Commands.java:316) ~[?:?]
        at net.minecraft.server.network.ServerGamePacketListenerImpl.performChatCommand(ServerGamePacketListenerImpl.java:2391) ~[?:?]
        at net.minecraft.server.network.ServerGamePacketListenerImpl.lambda$handleChatCommand$21(ServerGamePacketListenerImpl.java:2351) ~[?:?]
        at net.minecraft.util.thread.BlockableEventLoop.lambda$submitAsync$0(BlockableEventLoop.java:59) ~[?:?]
        at java.util.concurrent.CompletableFuture$AsyncSupply.run(CompletableFuture.java:1768) ~[?:?]
        at net.minecraft.server.TickTask.run(TickTask.java:18) ~[purpur-1.20.1.jar:git-Purpur-1996]
        at net.minecraft.util.thread.BlockableEventLoop.doRunTask(BlockableEventLoop.java:153) ~[?:?]
        at net.minecraft.util.thread.ReentrantBlockableEventLoop.doRunTask(ReentrantBlockableEventLoop.java:24) ~[?:?]
        at net.minecraft.server.MinecraftServer.doRunTask(MinecraftServer.java:1366) ~[purpur-1.20.1.jar:git-Purpur-1996]
        at net.minecraft.server.MinecraftServer.d(MinecraftServer.java:197) ~[purpur-1.20.1.jar:git-Purpur-1996]
        at net.minecraft.util.thread.BlockableEventLoop.pollTask(BlockableEventLoop.java:126) ~[?:?]
        at net.minecraft.server.MinecraftServer.pollTaskInternal(MinecraftServer.java:1343) ~[purpur-1.20.1.jar:git-Purpur-1996]
        at net.minecraft.server.MinecraftServer.pollTask(MinecraftServer.java:1336) ~[purpur-1.20.1.jar:git-Purpur-1996]
        at net.minecraft.util.thread.BlockableEventLoop.managedBlock(BlockableEventLoop.java:136) ~[?:?]
        at net.minecraft.server.MinecraftServer.waitUntilNextTick(MinecraftServer.java:1314) ~[purpur-1.20.1.jar:git-Purpur-1996]
        at net.minecraft.server.MinecraftServer.runServer(MinecraftServer.java:1202) ~[purpur-1.20.1.jar:git-Purpur-1996]
        at net.minecraft.server.MinecraftServer.lambda$spin$0(MinecraftServer.java:323) ~[purpur-1.20.1.jar:git-Purpur-1996]
        at java.lang.Thread.run(Thread.java:1583) ~[?:?]
Caused by: org.gestern.gringotts.GringottsException: java.util.concurrent.ExecutionException: java.lang.NullPointerException: Cannot invoke "org.bukkit.inventory.ItemStack.getType()" because "itemStack" is null
        at org.gestern.gringotts.GringottsAccount.getTimeout(GringottsAccount.java:470) ~[gringotts-2.12.5.jar:?]
        at org.gestern.gringotts.GringottsAccount.remove(GringottsAccount.java:304) ~[gringotts-2.12.5.jar:?]
        at org.gestern.gringotts.api.impl.GringottsEco$ValidPlayerAccount.withdraw(GringottsEco.java:785) ~[gringotts-2.12.5.jar:?]
        at org.gestern.gringotts.commands.GringottsAbstractExecutor.withdraw(GringottsAbstractExecutor.java:158) ~[gringotts-2.12.5.jar:?]
        at org.gestern.gringotts.commands.MoneyExecutor.onCommand(MoneyExecutor.java:59) ~[gringotts-2.12.5.jar:?]
        at org.bukkit.command.PluginCommand.execute(PluginCommand.java:45) ~[purpur-api-1.20.1-R0.1-SNAPSHOT.jar:?]
        ... 23 more
Caused by: java.util.concurrent.ExecutionException: java.lang.NullPointerException: Cannot invoke "org.bukkit.inventory.ItemStack.getType()" because "itemStack" is null
        at java.util.concurrent.CompletableFuture.reportGet(CompletableFuture.java:396) ~[?:?]
        at java.util.concurrent.CompletableFuture.get(CompletableFuture.java:2096) ~[?:?]
        at org.gestern.gringotts.GringottsAccount.getTimeout(GringottsAccount.java:468) ~[gringotts-2.12.5.jar:?]
        at org.gestern.gringotts.GringottsAccount.remove(GringottsAccount.java:304) ~[gringotts-2.12.5.jar:?]
        at org.gestern.gringotts.api.impl.GringottsEco$ValidPlayerAccount.withdraw(GringottsEco.java:785) ~[gringotts-2.12.5.jar:?]
        at org.gestern.gringotts.commands.GringottsAbstractExecutor.withdraw(GringottsAbstractExecutor.java:158) ~[gringotts-2.12.5.jar:?]
        at org.gestern.gringotts.commands.MoneyExecutor.onCommand(MoneyExecutor.java:59) ~[gringotts-2.12.5.jar:?]
        at org.bukkit.command.PluginCommand.execute(PluginCommand.java:45) ~[purpur-api-1.20.1-R0.1-SNAPSHOT.jar:?]
        ... 23 more
Caused by: java.lang.NullPointerException: Cannot invoke "org.bukkit.inventory.ItemStack.getType()" because "itemStack" is null
        at org.gestern.gringotts.GringottsAccount.removeFromShulkerBox(GringottsAccount.java:332) ~[gringotts-2.12.5.jar:?]
        at org.gestern.gringotts.GringottsAccount.lambda$remove$2(GringottsAccount.java:265) ~[gringotts-2.12.5.jar:?]
        at org.gestern.gringotts.GringottsAccount.lambda$callSync$0(GringottsAccount.java:54) ~[gringotts-2.12.5.jar:?]
        at org.gestern.gringotts.GringottsAccount.callSync(GringottsAccount.java:61) ~[gringotts-2.12.5.jar:?]
        at org.gestern.gringotts.GringottsAccount.remove(GringottsAccount.java:304) ~[gringotts-2.12.5.jar:?]
        at org.gestern.gringotts.api.impl.GringottsEco$ValidPlayerAccount.withdraw(GringottsEco.java:785) ~[gringotts-2.12.5.jar:?]
        at org.gestern.gringotts.commands.GringottsAbstractExecutor.withdraw(GringottsAbstractExecutor.java:158) ~[gringotts-2.12.5.jar:?]
        at org.gestern.gringotts.commands.MoneyExecutor.onCommand(MoneyExecutor.java:59) ~[gringotts-2.12.5.jar:?]
        at org.bukkit.command.PluginCommand.execute(PluginCommand.java:45) ~[purpur-api-1.20.1-R0.1-SNAPSHOT.jar:?]
        ... 23 more

@nikosgram
Just add to GringottsAccount.removeFromShulkerBox method null check. You have it for add method but missed here.
This will help, thanks.

This also happens when you have multiple vault chests and the withdrawal exceeds the amount that is in the first chest.
Steps to reproduce (using 2.12.5 version on paper-1.20.4-365):
First Vault Chest : put in (or use /m deposit) 1000 currency equivalent in items
Second Vault Chest :  put in (or use /m deposit) 1000 currency equivalent in items
/m withdraw 1001 (any amount exceeding the contents on the first chest
Expected Result:
1001 will be transferred to inventory.
Actual Result:
All items in the First Vault Chest have disappeared.
Nothing has changed in the Second Vault Chest.
Nothing comes to inventory.
I wanted try and dig into the code and try and fix this myself, but I need some Maven training. I can't even get it to compile.  :(

This also happens when you have multiple vault chests and the withdrawal exceeds the amount that is in the first chest.
Steps to reproduce (using 2.12.5 version on paper-1.20.4-365): First Vault Chest : put in (or use /m deposit) 1000 currency equivalent in items Second Vault Chest : put in (or use /m deposit) 1000 currency equivalent in items /m withdraw 1001 (any amount exceeding the contents on the first chest
Expected Result: 1001 will be transferred to inventory.
Actual Result: All items in the First Vault Chest have disappeared. Nothing has changed in the Second Vault Chest. Nothing comes to inventory.
I wanted try and dig into the code and try and fix this myself, but I need some Maven training. I can't even get it to compile. :(

As for me it was helpful just to restrict enderchest use as vault, together with restriction for users to create own vaults.
All vaults was created by responsible person on player request in the bank.
It helps to avoid this double vault problem.
BTW I didn't have any problems with the build... but I couldn't fix it too) need to debug and lookup deeper into logic

This also happens when you have multiple vault chests and the withdrawal exceeds the amount that is in the first chest.
Steps to reproduce (using 2.12.5 version on paper-1.20.4-365): First Vault Chest : put in (or use /m deposit) 1000 currency equivalent in items Second Vault Chest : put in (or use /m deposit) 1000 currency equivalent in items /m withdraw 1001 (any amount exceeding the contents on the first chest
Expected Result: 1001 will be transferred to inventory.
Actual Result: All items in the First Vault Chest have disappeared. Nothing has changed in the Second Vault Chest. Nothing comes to inventory.
I wanted try and dig into the code and try and fix this myself, but I need some Maven training. I can't even get it to compile. :(

As for me it was helpful just to restrict enderchest use as vault, together with restriction for users to create own vaults. All vaults was created by responsible person on player request in the bank. It helps to avoid this double vault problem.
BTW I didn't have any problems with the build... but I couldn't fix it too) need to debug and lookup deeper into logic

I'm sure the build is fine... I just don't know how to do it.  :)

Please try this test build https://github.com/weaves7/Gringotts/releases/tag/v.2.12.7-SNAPSHOT


preset issue related to preact/compat

Current codesandbox template transpiler is currently using preact-compat instead of preact/compat although it should load preact/compat if it's available. Otherwise it should fallback to preact-compat for Preact 8 sandboxes. Full issue can be seen here https://github.com/codesandbox/codesandbox-client/issues/3685
I am try to fix this so I thought I should link that issue here.

The current Preact preset that's found on codesandbox is outside of our control. It lives in some internal Database of the codesandbox team. That's in fact the reason why we created this repo here :+1: It's very early and we just created it a day ago, so stay tuned!


[docs] Add missing readOnly state class in the list

[x] I have followed (at least) the PR section of the contributing guide.

Add the missing readOnly global state class in the doc, which was added in #32822. I noticed this while I was reading the doc for an issue.
Preview: https://deploy-preview-36788--material-ui.netlify.app/material-ui/customization/how-to-customize/#state-classes

It is straightforward. So I am merging.


Add Crash Method

For testing we should add a method that forces a crash.

@mitsuhiko I don't really think we can easily add this with just the standard Xcode tests 😖  We may have to write a custom test/script outside of Xcode in order to do this (somehow)... But probably a good idea 😉

See PR #75


lexido: init at 1.4.2

Description of changes
Add lexido, a generative terminal AI assistant
Homepage: https://github.com/micr0-dev/lexido

Things done

Built on platform(s)

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

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[x] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[x] Tested basic functionality of all binary files (usually in ./result/bin/)
24.05 Release Notes (or backporting 23.05 and 23.11 Release notes)

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

[x] Fits CONTRIBUTING.md.

Add a :+1: reaction to pull requests you find important.

Result of nixpkgs-review pr 313454 run on x86_64-linux 1

1 package built:

lexido


activeadmin 9132da6 form_buffer removed

In the current activeadmin master (9132da6) "form_buffer" in lib/active_admin/views/components/active_admin_form.rb has been removed. (raise "'form_buffers' has been removed from ActiveAdmin::FormBuilder, please read https://github.com/activeadmin/activeadmin/blob/master/docs/5-forms.md for details.") Therefore, activeadmin-globalize "f.translated_inputs" function does not work anymore.

Please note there is now a 1.0.0.pre1 release of Active Admin

Yes I saw that. I'll try to make this gem compatible with AA released version as soon as I can (I'll need that too).


Configure a non-local Plex server

Hello, France here.
Home Assistant release (hass --version):
0.20.3
Python release (python3 --version):
Python 3.4.2
Component/platform:
media_player/Plex
Description of problem:
Can't configure a non local Plex server (commercial seedbox)
Expected:
I use Plex from a commercial seedbox. So I follow the tutorial for non-local and created a plex.conf file with ip and token.
In configuration.yaml :
media_player:
platform: plex
And plex.conf :
{"<IP_ADDRESS>:32400": {"token": "mytoken"}}
I'm getting this error : 16-06-03 21:38:22 plexapi: http://<IP_ADDRESS>:32400: HTTPConnectionPool(host='<IP_ADDRESS>', port=32400): Max retries exceeded with url: /?X-Plex-Token=mytoken(Caused by NewConnectionError('<requests.packages.urllib3.connection.HTTPConnection object at 0x7277a290>: Failed to establish a new connection: [Errno 113] No route to host',))
Any ideas ?
Thanks for helping.

It's trying to connect to a private ip class network. <IP_ADDRESS> is not accesible from the internet. You need to find the publicly accessible address of your plex server and add it manually to plex.conf. This should get you started.

As the reporter is not responding, I going to close this. Please re.open the issue if needed.


PR for competitions page

Description

Screenshots

Steps to Test

Images can have rounded borders. I believe I used 30px radius for mine. I personally think there should be more spacing between either side of the text. For me, I limited the width of the text to be 90% of the screen. Also feel like there should be a bit more spacing between images and text. Mobile view looks neat.


Fix root node removal behavior

Currently when the root node is removed and it has no child the tree becomes unusable.

Solved by #2


Create BEAM/EPMD-friendly distributed IRCd

The IRCd will have the following goals:

Distribute with EPMD/libcluster/other BEAM-friendly mechanisms, not really IRC Architectural Server-to-Server
ExSemantica instance will handle authentication with a submechanism that a human and a machine can automate, like NickServ

The IRCd may be put into another Git project

v0.10 will have this, see: experiment-backend-only branch.


Color attributes of rgb lights disappear when light is turned off

Home Assistant release (hass --version):
0.21.2
Python release (python3 --version):
3.4.2
Component/platform:
Raspberry Pi 2 with Raspbian 8
Description of problem:
Api does not return rgb_colors when Hue light are turned off.
Expected:
Always report last rgb_color even when the Hue lights are off
steps to reproduce:
http://localhost:8123/api/states/light.somelight
missing attributes
Additional info:
Working on the homebridge-homeassistant plugin right now to support rgb light like Philips Hue but have some problems with missing hue values in the api and also disapearing attributes as mentioned above.

def state_attributes(self):
        """Return optional state attributes."""
        data = {}

        if self.is_on:
            for prop, attr in PROP_TO_ATTR.items():
                value = getattr(self, prop)
                if value:
                    data[attr] = value

            if ATTR_RGB_COLOR not in data and ATTR_XY_COLOR in data and \
               ATTR_BRIGHTNESS in data:
                data[ATTR_RGB_COLOR] = color_util.color_xy_brightness_to_RGB(
                    data[ATTR_XY_COLOR][0], data[ATTR_XY_COLOR][1],
                    data[ATTR_BRIGHTNESS])

        return data

This looks to be the lines of code causing the issue. I am not sure why the state attributes are being left blank if the any light is off. @balloob, can you chime in? Do specific lights not support relaying these additional attributes when they're off? If so, can we make an override for the lifx and hue bulbs?

This is not a bug. State attributes describe extra information about the current state. A light that is not powered on does not have a color or a brightness and hence will not be reported.

I disagree with this assessment, lights do have state such as brightness and color regardless if they're on  or off. My lifx bulbs will report brightness state, color, hue, etc. because those states are stored regardless of the power and are extremely useful when attempting to build an automation system that can act on those certain states. I am against any ideology that discards data, because the state data is very much still valid and the API does return the power state regardless.

No, the state is not still valid. If you would describe a light that is off, would you ever use the word brightness? No. Because there is nothing to talk about when the light is off.
It doesn't matter that the device stores a previous state or not. That's not part of what we care about. Home Assistant cares about what is now, not about what will be if we would turn on a light or make any other state change.

I think caring only about now is a huge mistake in design, it limits the ability to automate based on understanding all states including those in the past. For example, if I start to play media on my TV and the lights are set to dim but of lights A, B and C only light A is actually on, do I turn on A, B, and C when the media stops playing?
What if I change the state of the light during the media playback? What should HA do when the media stops playing, change that light to to the default brightness level? Dropping state just because it suits the MVC model you're trying to achieve prevents me from dictating what can occur in code.
If I knew what the brightness level of the light last changed was, I could set it back to that when the media stops, the data is available, and used by other automation platforms, otherwise I don't see any other reason why big players like Hue would implement state regardless of power in their API.
If we want to create a rigid and stale automation workflow, the yes I agree, HA is currently doing it right, but I can see the huge potential of making the platform more aware not what is going on right now but what has gone on to allow the user to make better informed decisions on what should happen next.

I also think that it is a bad idea to drop the informations like brightness, hue, etc. just because a light is turned off. Also why should HA not care about the past on the one hand but provides per default a logbook with a history of states for all devoces on the other hand?

If you care about history, you can query the history via either the API or the history component. The state machine is for what is now.

So, @balloob, I'm not trying to rock the boat on this one, but I've been messaging with @keatontaylor and a few other people using the LIFX component.
To me, the central issue is this.. when the bulb is turned "off", the bulb stores its last state. When the bulb is turned "on", say you call a color and a transition time, it will transition from it's last known color to the set color.
This is really ugly from aesthetic point of view. For example, I have an automation which turns my lights red on a motion event at night. The next day when my lights come on for the first time the bulb will transition from it's last known state (red) to the set state (white).
So, I'm not totally sure what the best answer is here. I agree with @balloob that reporting the state of an "off" bulb is odd and kind of counter intuitive. I don't see the value add from an automation point of view? If it's off, then technically it's brightness is zero as is it's color.
To address the transition issue, I wonder if the LIFX component can be updated so that when the "off" state is called, it first fires a 0 brightness, 0 0 0 RGB message. That way the next time a state is called, it doesn't flash through the previous color first.
Do people with the Hue bulbs have a similar behavior? Not sure if anybody else has input on this. Cheers!

@brusc I've got some Hue lights that I use for nightlights as well.
I'm not sure if its from Home Assistant, or just a limitation of Hue. When my nightlight turns on, there is a very slight "flash" of white (the previous colour) before the light is set to red. The same goes in reverse when it turns on for the first time.
I have to admit though I haven't tested with a longer transition time.

@philhawthorne, gotcha. Yeah, I'm guessing Hue has a very similar issue. It's really no fault of anything.. just kind of quirky since obviously it has to transition from some prior state to a set state.
@balloob, do you have any thoughts on "grounding" the off state at 0 brightness, 0 0 0 RGB? Is that crazy?

Hmm, I am opposed to setting the state to 0 brightness and RGB, but perhaps the turn_on service can be changed to ensure that the lights are set to a default value before beginning and transition. The last state would then remain accurate, but the desired effect could be achieved. It could potentially be added as a attribute to the existing turn_on service.

@keatontaylor, I'm down for that if it works.  I'm thinking that flash might be obscured in the initial "turn off" transition.
Either way, doesn't matter to me. I wonder if there would be a way to flag the "default value" transition. That way you can transition from either its last true state or a default state depending on what you want.

Perhaps one of us should open another issue for this, the original post doesn't necessarily align with what we're discussing and we can always reference this issue.

I agree. Can I nominate you for this since you seem to have a better grasp of the component code? My ability to follow up on these comments beyond responding to comments is limited for the next little bit.

@philhawthorne, I cannot find any issues with the Hue code that turns on and off the lights. The LiFX lights don't operate correctly because HA and the underlying LiFX library are first turning on the light, then sending a second command to change the state. The Hue library seems to send all the information as a single command.
Unfortunately I do not have any Hue lights to test with, but I would be really interested to see how the Hue lights react to a transition. Would you mind testing this for me?

@keatontaylor
So I ran a test using the dev console. I first turned a light to red using the following call to homeassistant.turn_on
{"entity_id": "light.guest_quarters_right", "rgb_color": [255,0,0] }

After that, I turned the light off using homeassistant.turn_off. I then made another call to homeassistant.turn_on using the following
{"entity_id": "light.guest_quarters_right", "rgb_color": [0,0,255], "transition": 15 }

The Hue light turned on, flashed red for half a second, before changing to blue immediately. There was no slow changeover to blue. It was instant.

@philhawthorne seems like an problem of the Hue component. When trying to do the same as mentionend above with the web interface of the original hue bridge it would work as expected with a smooth transition. Also I know that no one says to an off turned bulb that it has this saturation or this brightnes. But we are talking about smart bulbs here that can remeber their last state so every bulb maker respond the current color, sat and bri of a bulb even if they are off just because it is much easier to handle automation and transitions when you know the last state. Also it is a real pain to determ as an developer if I deal with an normal white only bulb or a rgb bulb when the bulbs only return there power state of they are off. If rgb bulbs always would respond that they have an hue value you can easily recognize that this is an rgb bulb and you don't have to make calls to the history api and use unnecessary resources ans api calls.

I just started with Home Assistant, before that I used Vera...
About dimming lights:
Also I find it strange that the slider doesn't appear when it's off. Eg. when you want to have the lights on 30% for example. You have to put the lights on full brightness (that can hurting your eyes) and after that slide back to 30%, so you need to take one extra step. Why not direct slide from 0 to 30%? In my opinion the slider should be always visible.

Just FYI everyone, and yes I only skimmed this, but the issue with hue lights coming back on full white after being switched off, is not a HA issue.  it's a hue issue.  Their web page is full of this discussion.  Apparently their legal department thinks it's dangerous for the lights to come back on in any state other than full white after being out.  Something about first responders or something.  I switched to Osram lights, they do not have this issue, they let you set your default initial state.

@turboc1208 Thats not really the point here. It is fully normal that the hue lights are white when turning them on after a hard reset (making them powerless). And it's is perfectly fine for me. The real problem which is discussed here is that for developer it really a pain when API requests not deliver reliable answers (Because you dont always get the same answer). In this case even when you turn off them "soft" by a software other then HA, HA starts to report them with no color but they have a the last color saved. So you have two different states one by the bulb itself and one from HA. If you then try to calculate from RGB to HSV you get a problem.
That is the real problem discussed here in this thread. Of course a bulb which is turned of has no color but we are talking about to machines which interchange and not two humans who discuss about a bulb.
Hopefully this comment understandable.

Thanks. I misunderstood. I agree if the bulbs are getting power they should be able to report their last color unless they are using a single field to represent both on/off state and color. And even that would be a poor design.
Sent from my iPhone

On Nov 20, 2016, at 11:23 AM, Marioheld<EMAIL_ADDRESS>wrote:
@turboc1208 Thats not really the point here. It is fully normal that the hue lights are white when turning them on after a hard reset (making them powerless). And it's is perfectly fine for me. The real problem which is discussed here is that for developer it really a pain when API requests not deliver reliable answers (Because you dont always get the same answer). In this case even when you turn off them "soft" by a software other then HA, HA starts to report them with no color but they have a the last color saved. So you have two different states one by the bulb itself and one from HA. If you then try to calculate from RGB to HSV you get a problem.
That is the real problem discussed here in this thread. Of course a bulb which is turned of has no color but we are talking about to machines which interchange and not two humans who discuss about a bulb.
Hopefully this comment understandable.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or mute the thread.

@balloob, can you chime in on this again.
The issue of not reporting the state of the lights color/brightness/kevlin values makes things like reporting color to homebridge impossible without a great deal of work trying to keep things in sync.
In terms of keeping the systems simple I understand the value in keeping the state machine the way it is, but we've seen huge companies like Apple, Philips (Hue), and smaller companies like LIFX, etc. all support reporting the state of the light when it is off. I.E - what the lamp will return to when a turn on command is sent.
So I ask, how do you intend that we implement 3rd party components into HA that require color/brightness/kevlin to be reported at all times, not just when the lights are on.
There is also the issue of a consistent API, and I think HA breaks the paradigm of delivering an inconsistent set of data depending on the state of each light.
I.E - I wouldn't expect say the dropbox API to send a JSON response back to my API without fields just because the files in my folder didn't meet some requirement.
I certainly understand your desire to keep the state machine to what is now, but I can make the argument that while yes the devices are technically off and they're not physically producing color/brightness/kelvin when they're off these values still exist as what the bulb will return to when it is turned back on. That data isn't stale, and in the case of LIFX bulbs those values can be changed by 3rd parties while the bulb is off. Leading to HA genuinely being unaware of the state of the bulb until it is turned back on and polling occurs.
As far as I can tell this isn't an issue with any other component. As I can find no example of any other component other than light that discards values when they're off, but I certainly could be wrong.
Anyways @balloob, I'd like to hear your current thoughts on this issue.


Improve error messages when a script or adapter can't be loaded.

Previously, if an adapter failed to load due to a syntax error, the location of the syntax error in the file was not specified. (This made for difficult debugging when writing a new adapter)
Now, the message is a descriptive:
ERROR Unable to load adapter hubot-github-adapter(17,82) : Error: unexpected ,
Line numbers are similarly made available when loading scripts (if available).

This looks pretty useful! The first questions that come to mind are:

how does this fail for non-syntax errors? For example, if you try to access a property of undefined (ie process.env.NONEXISTENT.length when it's not set)
how does the output compare to running coffee -c path/to/thing.coffee? That is the test I usually use when a syntax failure happens

Non syntax errors:
When adding that non-syntax error near the top of my adapter:
[Wed Mar 18 2015 10:45:50 GMT+0000 (GMT)] ERROR Unable to load adapter hubot-github-adapter : Error: Cannot read property 'length' of undefined
So, not terribly useful.

When adding that line to a script:
[Wed Mar 18 2015 10:46:53 GMT+0000 (GMT)] ERROR Unable to load /Users/taylorbrown/projects/YNAB/ybot/scripts/github-pr-helper : Error: Cannot read property 'length' of undefined
Also not terribly useful. :)
So, I think echoing the stack is going to be helpful in those cases (which I believe I removed) - I'll have to look into that.

Compared to coffee:
Hubot output

[Wed Mar 18 2015 10:49:53 GMT+0000 (GMT)] ERROR Unable to load adapter hubot-github-adapter(17,82) : Error: unexpected ,

coffee output:
/Users/taylorbrown/projects/YNAB/ybot/node_modules/hubot-github-adapter/src/hubot-github-adapter.coffee:18:83: error: unexpected ,
    return console.error "No Github token provided to Hubot" unless @options.token,,,
                                                                                ^

Thanks for looking into that!

So, I think echoing the stack is going to be helpful in those cases (which I believe I removed) - I'll have to look into that.

That sounds like a good plan. I think if you can detect it's a syntax error, you can omit logging the stack trace.

@Taytay thanks for the pull request. It looks like there were still some changes to be made here. I'm going to go ahead and close this, but we'd be happy to reopen if you want to make the suggested changes.


[🐞] When I build code with cloudflare adapter, platform.env is undefined.

Which component is affected?
Qwik Rollup / Vite plugin
Describe the bug
my code
export const onGet: RequestHandlerCloudflarePages<{food: string}> = async ({platform}) => {
    const foodKV = platform.env["FOOD"]
    const food = await foodKV.get("foods")
    return {
        food: food || "no food",
    }
};

error logs when building
12:37:58.947 | ERROR: SSG failed for path: /about/
12:37:58.947 | TypeError: Cannot read properties of undefined (reading 'FOOD')
12:37:58.947 | at f (file:///opt/buildhome/repo/server/@qwik-city-plan.js:1:651)
12:37:58.947 | at next (file:///opt/buildhome/repo/node_modules/@builder.io/qwik-city/static/node.mjs:962:26)
12:37:58.947 | at loadUserResponse (file:///opt/buildhome/repo/node_modules/@builder.io/qwik-city/static/node.mjs:992:9)
12:37:58.947 | at requestHandler (file:///opt/buildhome/repo/node_modules/@builder.io/qwik-city/static/node.mjs:1300:34)
Reproduction
https://github.com/hyunjunian/qwik-app
Steps to reproduce
No response
System Info
System:
    OS: macOS 13.0.1
    CPU: (8) arm64 Apple M1
    Memory: 50.92 MB / 8.00 GB
    Shell: 5.8.1 - /bin/zsh
  Binaries:
    Node: 18.12.0 - /usr/local/bin/node
    npm: 9.1.2 - /usr/local/bin/npm
  Browsers:
    Chrome: 108.0.5359.98
    Safari: 16.1
  npmPackages:
    @builder.io/qwik: 0.15.2 => 0.15.2
    @builder.io/qwik-city: 0.0.128 => 0.0.128
    vite: 4.0.0 => 4.0.0

Additional Information
No response

Hi @hyunjunian
Thanks for opening this issue. Wanted to have a look at the demo repo, but looks like the public does not have access or the url is invalid 😄 hope you can adjust that 🙏

Hi @hyunjunian Thanks for opening this issue. Wanted to have a look at the demo repo, but looks like the public does not have access or the url is invalid 😄 hope you can adjust that 🙏

Sorry for inconvenience, here is a public repository reproduction example.
https://github.com/hyunjunian/qwik-bug-report

@zanettin Thank you very much!


Set up an eslint for a codebase

Set up an eslint to maintain a consistent codebase. Propose linting rules based on best practices. Lint the source and test files.

I want to work on this. Please assign it to me.

Hi @a12baghel2, thanks for your interest in helping out! Unfortunately, I was talking to my friend @greegus in other channel that he will take on this issue.

okay! No problem.


make apple2driver.service more user friendly

What do suggest for improvement?
Changing the image loaded is a pain in the ***.
You always have to edit the service file, reload config, restart service. Or have I missed something?
So I am searching for a solution...
I tried adding variables to the service file, or read them from an external file which does not work.
Environment=APPLE2DRIVER=/home/pi/Apple2-IO-RPi/RaspberryPi/apple2driver/apple2driver
Environment=IMAGEPATH=/home/pi/images
Environment=IMAGENAME=A2Diag.v4.1.img.po

But these variables are set for the environment of the apple2driver process only. We would need to modify apple2driver code to make it read its parameters from ENV. It won't make the service file more serviceable. Except if we use this:
EnvironmentFile=/home/pi/apple2driver.env

another way would be to directly read from a config file passed to the apple2driver process.
I will try to have a look into the source code...

If you want to change drives on the fly, use the rpi.command for this. It supports both dynamically generated ProDOS volumes based on the contents of a Linux folder or loading an existing ProDOS drive image file. It also supports two at a time with drive 1 and drive 2.
]-rpi.command
]rpi a2drive 2 load /home/pi/images/A2Diag.v4.1.img.po


Single Handle timeline widget addition

Provided an option to replace the dual handle timeline slider. By default the this new option is set to false but if the showSingleHandle option is set to true in the timeline widget, the dual handle slider will be replaced with a single handle.
A timeline with a single time-slider handle will initially have a interval set to the minimum range, allowing the user to move the handle to expose more items on the map, as you move through the time range.
This addresses issue #601
Note: This is the same code as before, I just moved it to a separate branch.

JP & Rob, we should probably chat about this and come up with syntax that will handle the various possibilities for timelines.

Now a historical reference, however you may want to look at the old Simile project for some thinking that they did on nested/collapsible timelines.
http://www.simile-widgets.org/timeline/ http://www.simile-widgets.org/timeline/
Was very helpful in some past projects where the timeline was “messy”

On Feb 27, 2017, at 4:50 PM, Amos Hayes<EMAIL_ADDRESS>wrote:
JP & Rob, we should probably chat about this and come up with syntax that will handle the various possibilities for timelines.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub https://github.com/GCRC/nunaliit/pull/632#issuecomment-282866408, or mute the thread https://github.com/notifications/unsubscribe-auth/ACXeGOvrFfu6JfaWqUdiQgSBjz74gw1lks5rg0UWgaJpZM4MNnzJ.

Very interesting project. I’ve not heard of Simile but I like the way its designed.

Yes.  I used this in my dissertation to create a timeline of various events related to Antarctic environmental governance.  The challenge there was that there we long periods (decades) where there was little activity, then periods where policy events were happening monthly or even daily, then back to years of inactivity.  This provide a nice approach for representing these different timescales on a single timeline.  The labelling was also quite flexible, allowing the use of relative time (if I recall correctly).

On Mar 1, 2017, at 8:47 AM, Bob<EMAIL_ADDRESS>wrote:
Very interesting project. I’ve not heard of Simile but I like the way its designed.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub https://github.com/GCRC/nunaliit/pull/632#issuecomment-283343681, or mute the thread https://github.com/notifications/unsubscribe-auth/ACXeGN4uTKooZ-YESO_yDS_qM9cZe34pks5rhXbogaJpZM4MNnzJ.

Closed until a new approach for handling a single handled timeline has been decided.


Can not connect from Zap after running RESET-LND and restored a node from seed

I have reset my LND node and restored a node from a seed phrase.
I was able to connect to the previous node using Zap but the new one is not reachable. I did regenerate the QR code and rescanned it from zap but I'm getting Could not connect to server (Connect Failed).
Am I missing anything?
Thanks

Which ZAP are you using iOS or Android? Did you used the "reset connection" within ZAP before scanning the new QR code?

iOS
I have totally removed the old node configuration from the app. All I see now is the screen with the Scan and Paste button.

You will need to reset your macaroons and TLS cert from the EXPORT menu and pair Zap again.

@openoms Thanks but it did not work. The same scenario is still happening.

There is more up to date info here: https://github.com/openoms/bitcoin-tutorials/blob/master/Zap_to_RaspiBlitz_through_Tor.md
You can run lndconnect manually:
add it to PATH:
export GOROOT=/usr/local/go
export PATH=$PATH:$GOROOT/bin
export GOPATH=/usr/local/gocode
export PATH=$PATH:$GOPATH/bin
# make the path persist
sudo bash -c "echo 'PATH=\$PATH:/usr/local/gocode/bin/' >> /etc/profile"

and run
lndconnect
or
lndconnect -j or the text string for Zap desktop.
new lndconnect version (should not make a difference unless you are trying to connect through Tor):
# Install lndconnect from source:
go get -d github.com/LN-Zap/lndconnect
cd $GOPATH/src/github.com/LN-Zap/lndconnect
make

Are you using a DynDNS? Switch it off and try again or try using Tor if on iOS

Are you using a DynDNS?
Thanks!


CreativeTab -> ItemGroup

Why? Mojang calls it that in the translation keys and it's used for more than creative tabs. Item Groups are also used for recipe tabs.

Fair.


ARM64 installer won't work on Windows 10

Describe the bug
When running the arm64 installer executable on Windows 10, it tries to install a x64 package, which fails, since Windows 10 doesn't have x64 emulation.
Steps to reproduce the bug

Download the arm64 installer. https://aka.ms/windowsappsdk/1.0/1.0.3/windowsappruntimeinstall-1.0.3-arm64.exe
Try to run it on a Windows 10 ARM64 machine.

Expected behavior
No response
Screenshots

NuGet package version
No response
Packaging type
Unpackaged
Windows version
Windows 10 version 21H2 (19044, November 2021 Update)
IDE
No response
Additional context
No response

The fix for this issue will be serviced in Windows App SDK 1.1.5 that is due in September.

:tada:Microsoft.WindowsAppSDK v1.1.5 has been released which fixes this issue.
Handy links:

Release Notes
Official Nuget Release