Simulate hovered, pressed, and focused-visible states

Provide a general summary of the feature here
Simulate hovered, pressed, and focused-visible states
🤔 Expected Behavior?
Programmatically control state.
😯 Current Behavior
Setting data-hovered="true" doesn't work. Looking into the useHover()also doesn't seem to work.
💁 Possible Solution
Copy the button's source code and hard-code the state?
🔦 Context
I'm building a color contrast test page that automated tests will run against.
Being automated tests, I need the components to retain a particular state (like hover or pressed).

💻 Examples
No response
🧢 Your Company/Team
https://verveui.pro/
🕷 Tracking Issue
No response

I don't think you can programmatically trigger a hover from within the browser since it is a trusted event, but instead you'll want to have a way to apply those styles through some other means.
In React Spectrum, we apply UNSAFE_className={classNames(styles, 'is-hovered')} data-hover="true" to elements to trigger the hover styles for visual regression testing with Chromatic. Unit tests cover whether or not the classes/attributes actually get applied for a hover event.
Alternatively, you could look at using something like playwright to run interactions in a real browser and do visual comparisons.

Hey @reidbarber, thanks for the feedback.
I wanted the page to serve as a target for both manual and automated tests.
Having Playwright interact works, but the page couldn't be used as a target for manual tests without having to interact with the elements - which is cumbersome.

Yeah, I'm not sure there is a good solution for handling this unfortunately.

For what it's worth, we've split our own storybooks so that we have one for manual testing and one for visual regressions. We found they were just too different in goals to try to maintain as a single target. For instance, in your screenshot, what does it mean for a manual tester to interact with the button which is retaining the pressed state?
We don't want to expose setting these interactive states as API because that opens them for non-accessible misuse outside of tests. As @reidbarber pointed out, these are all trusted user event states.
I'm going to close this issue for now because there are ways to handle this. We can reopen if a new concern comes up. Thanks for the discussion!

Hey @snowystinger, the manual tests are merelly visual, not interactive, i.e. someone looks at the page with all component states and determines "yeah, looks good".
Everything else is automated with Playwright for testing interactions (hover, pressed, focus-active, etc), and checking the APCA color contrast results under each component (which the manual tester can also see).
Creating redundant selectors like .is-hovered for [data-hovered] feels wrong 😅 But I'll find a way. Thanks guys!

Leaving my solution here for anyone who bumps into this.

What I did instead was programatically read the styles from the stylesheet directly and apply them to each component. Here's an example:
import { type MetaFunction } from '@remix-run/node'
import { Button } from '#app/components/buttons/button'
import { Container } from '#app/components/layout/container'
import { Flex } from '#app/components/layout/flex'
import { H1 } from '#app/components/typography/h1'
import { H2 } from '#app/components/typography/h2'
import { useIsomorphicLayoutEffect } from '#app/hooks/useIsomorphicLayoutEffect.js'

export const meta: MetaFunction = () => {
	return [{ name: 'robots', content: `noindex,nofollow` }]
}

export default function UILibraryTestPage() {
	useIsomorphicLayoutEffect(() => {
		const componentRules = Object.entries(document.styleSheets[0].cssRules).filter(rule => rule[1].name === 'components')
		const buttonStyles = Object.entries(componentRules[0][1].cssRules).filter(rule => rule[1].selectorText === '.button')
		const buttonPrimaryStyles = Object.entries(buttonStyles[0][1].cssRules).filter(rule => rule[1].selectorText === '&.primary')
		const buttonSecondaryStyles = Object.entries(buttonStyles[0][1].cssRules).filter(rule => rule[1].selectorText === '&.secondary')
		const buttonDangerStyles = Object.entries(buttonStyles[0][1].cssRules).filter(rule => rule[1].selectorText === '&.danger')
		const buttonGhostStyles = Object.entries(buttonStyles[0][1].cssRules).filter(rule => rule[1].selectorText === '&.ghost')

		const buttonPrimaryHoveredStyles = Object.entries(buttonPrimaryStyles[0][1].cssRules).filter(rule => rule[1].selectorText === '&[data-hovered]')[0][1].style
		const buttonSecondaryHoveredStyles = Object.entries(buttonSecondaryStyles[0][1].cssRules).filter(rule => rule[1].selectorText === '&[data-hovered]')[0][1].style
		const buttonDangerHoveredStyles = Object.entries(buttonDangerStyles[0][1].cssRules).filter(rule => rule[1].selectorText === '&[data-hovered]')[0][1].style
		const buttonGhostHoveredStyles = Object.entries(buttonGhostStyles[0][1].cssRules).filter(rule => rule[1].selectorText === '&[data-hovered]')[0][1].style

		const buttonPrimaryPressedStyles = Object.entries(buttonPrimaryStyles[0][1].cssRules).filter(rule => rule[1].selectorText === '&[data-pressed]')[0][1].style
		const buttonSecondaryPressedStyles = Object.entries(buttonSecondaryStyles[0][1].cssRules).filter(rule => rule[1].selectorText === '&[data-pressed]')[0][1].style
		const buttonDangerPressedStyles = Object.entries(buttonDangerStyles[0][1].cssRules).filter(rule => rule[1].selectorText === '&[data-pressed]')[0][1].style
		const buttonGhostPressedStyles = Object.entries(buttonGhostStyles[0][1].cssRules).filter(rule => rule[1].selectorText === '&[data-pressed]')[0][1].style

		const buttonPrimaryHovered = document.querySelector('#hovered button.primary')
		const buttonSecondaryHovered = document.querySelector('#hovered button.secondary')
		const buttonDangerHovered = document.querySelector('#hovered button.danger')
		const buttonDisabledHovered = document.querySelector('#hovered button.ghost')

		const buttonPrimaryPressed = document.querySelector('#pressed button.primary')
		const buttonSecondaryPressed = document.querySelector('#pressed button.secondary')
		const buttonDangerPressed = document.querySelector('#pressed button.danger')
		const buttonDisabledPressed = document.querySelector('#pressed button.ghost')

		buttonPrimaryHovered.style = buttonPrimaryHoveredStyles.cssText
		buttonSecondaryHovered.style = buttonSecondaryHoveredStyles.cssText
		buttonDangerHovered.style = buttonDangerHoveredStyles.cssText
		buttonDisabledHovered.style = buttonGhostHoveredStyles.cssText

		buttonPrimaryPressed.style = buttonPrimaryPressedStyles.cssText
		buttonSecondaryPressed.style = buttonSecondaryPressedStyles.cssText
		buttonDangerPressed.style = buttonDangerPressedStyles.cssText
		buttonDisabledPressed.style = buttonGhostPressedStyles.cssText
	})

	return (
		<Container>

Color Contrast Test Page

			<Flex>
				<Flex orientation="vertical" gap="10" data-theme="light" className="bg-background text-foreground rounded-xl px-5 pb-5">

Button

					<Flex gap="10" id="normal">
						<Button size="md" variant="primary" className="w-28">
							Primary
						</Button>
						<Button size="md" variant="secondary" className="w-28">
							Secondary
						</Button>
						<Button size="md" variant="danger" className="w-28">
							Danger
						</Button>
						<Button size="md" variant="ghost" className="w-28">
							Ghost
						</Button>
					</Flex>
					<Flex gap="10" id="hovered">
						<Button size="md" variant="primary" className="w-28">
							Hovered
						</Button>
						<Button size="md" variant="secondary" className="w-28">
							Hovered
						</Button>
						<Button size="md" variant="danger" className="w-28">
							Hovered
						</Button>
						<Button size="md" variant="ghost" className="w-28">
							Hovered
						</Button>
					</Flex>
					<Flex gap="10" id="pressed">
						<Button size="md" variant="primary" className="w-28">
							Pressed
						</Button>
						<Button size="md" variant="secondary" className="w-28">
							Pressed
						</Button>
						<Button size="md" variant="danger" className="w-28">
							Pressed
						</Button>
						<Button size="md" variant="ghost" className="w-28">
							Pressed
						</Button>
					</Flex>
					<Flex gap="10" id="disabled">
						<Button size="md" variant="primary" className="w-28" isDisabled>
							Disabled
						</Button>
						<Button size="md" variant="secondary" className="w-28" isDisabled>
							Disabled
						</Button>
						<Button size="md" variant="danger" className="w-28" isDisabled>
							Disabled
						</Button>
						<Button size="md" variant="ghost" className="w-28" isDisabled>
							Disabled
						</Button>
					</Flex>

Badge/Chip/Tag?

					<Flex gap="10">
						<Button size="md" variant="primary">
							Primary
						</Button>
						<Button size="md" variant="secondary">
							Secondary
						</Button>
						<Button size="md" variant="danger">
							Danger
						</Button>
						<Button size="md" variant="ghost">
							Ghost
						</Button>
					</Flex>

Alert

					<Flex gap="10">
						<Button size="md" variant="primary">
							Primary
						</Button>
						<Button size="md" variant="secondary">
							Secondary
						</Button>
						<Button size="md" variant="danger">
							Danger
						</Button>
						<Button size="md" variant="ghost">
							Ghost
						</Button>
					</Flex>

Card

					<Flex gap="10">
						<Button size="md" variant="primary">
							Primary
						</Button>
						<Button size="md" variant="secondary">
							Secondary
						</Button>
						<Button size="md" variant="danger">
							Danger
						</Button>
						<Button size="md" variant="ghost">
							Ghost
						</Button>
					</Flex>
				</Flex>
				<Flex orientation="vertical" gap="10" data-theme="dark" className="bg-background text-foreground rounded-xl px-5 pb-5">

Button

					<Flex gap="10">
						<Button size="md" variant="primary" className="w-28">
							Primary
						</Button>
						<Button size="md" variant="secondary" className="w-28">
							Secondary
						</Button>
						<Button size="md" variant="danger" className="w-28">
							Danger
						</Button>
						<Button size="md" variant="ghost" className="w-28">
							Ghost
						</Button>
					</Flex>
					<Flex gap="10">
						<Button size="md" variant="primary" className="w-28" data-hovered="true">
							Hovered
						</Button>
						<Button size="md" variant="secondary" className="w-28" data-hovered="true">
							Hovered
						</Button>
						<Button size="md" variant="danger" className="w-28" data-hovered="true">
							Hovered
						</Button>
						<Button size="md" variant="ghost" className="w-28" data-hovered="true">
							Hovered
						</Button>
					</Flex>
					<Flex gap="10">
						<Button size="md" variant="primary" className="w-28" data-pressed="true">
							Pressed
						</Button>
						<Button size="md" variant="secondary" className="w-28" data-pressed="true">
							Pressed
						</Button>
						<Button size="md" variant="danger" className="w-28" data-pressed="true">
							Pressed
						</Button>
						<Button size="md" variant="ghost" className="w-28" data-pressed="true">
							Pressed
						</Button>
					</Flex>
					<Flex gap="10">
						<Button size="md" variant="primary" className="w-28" data-focus-visible="true">
							Focus
						</Button>
						<Button size="md" variant="secondary" className="w-28" data-focus-visible="true">
							Focus
						</Button>
						<Button size="md" variant="danger" className="w-28" data-focus-visible="true">
							Focus
						</Button>
						<Button size="md" variant="ghost" className="w-28" data-focus-visible="true">
							Focus
						</Button>
					</Flex>

Badge/Chip/Tag?

					<Flex gap="10">
						<Button size="md" variant="primary">
							Primary
						</Button>
						<Button size="md" variant="secondary">
							Secondary
						</Button>
						<Button size="md" variant="danger">
							Danger
						</Button>
						<Button size="md" variant="ghost">
							Ghost
						</Button>
					</Flex>

Alert

					<Flex gap="10">
						<Button size="md" variant="primary">
							Primary
						</Button>
						<Button size="md" variant="secondary">
							Secondary
						</Button>
						<Button size="md" variant="danger">
							Danger
						</Button>
						<Button size="md" variant="ghost">
							Ghost
						</Button>
					</Flex>

Card

					<Flex gap="10">
						<Button size="md" variant="primary">
							Primary
						</Button>
						<Button size="md" variant="secondary">
							Secondary
						</Button>
						<Button size="md" variant="danger">
							Danger
						</Button>
						<Button size="md" variant="ghost">
							Ghost
						</Button>
					</Flex>
				</Flex>
			</Flex>
		</Container>
	)
}

Please excuse TS errors. I'll get to the types later. Ping me if you'd like to have them.

@andrecasal FWIW we found that this wrapper component worked also. It wraps a ref'd Button along with an effect that calls Object.defineProperty to set the state and added tailwind's pointer-events-none class to prevent state changes. Of course, your button also needs to forward refs.
interface LockedStateButtonProps extends ButtonProps {
  state: 'hovered' | 'pressed';
}

const LockedStateButton = ({ state, ...props }: LockedStateButtonProps) => {
  const ref = useRef<HTMLButtonElement>(null);
  useLayoutEffect(() => {
    if (ref.current) {
      Object.defineProperty(ref.current.dataset, state, {
        value: 'true',
        writable: false, // Makes the property non-writable, not sure if necessary with 'pointer-events-none'
      });
    }
  }, [state]);
  return <Button {...props} ref={ref} className={'pointer-events-none'} />;
};


Update provider for JSON-RPC v0.3.0

This PR update the provider for JSON-RPC v0.3.0, the following methods have signature changes:

starknet_getStateUpdate
starknet_estimateFee

I have also added JsonRpcApiErrorCode enum to reduce integer hardcoding.

Closes #151


Feature/offline support

We should (in the long run) also support Lie-fi

Awesome work @Gyran! And thanks once again!


Use repo token for GHA

Signed-off-by: Hayden B<EMAIL_ADDRESS>
Summary

Release Note

Documentation

Codecov Report

Merging #942 (c6a5790) into main (f293398) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##             main     #942   +/-   ##
=======================================
  Coverage   53.69%   53.69%
=======================================
  Files          37       37
  Lines        2326     2326
=======================================
  Hits         1249     1249
  Misses        986      986
  Partials       91       91

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.


Help with HelloWorld22

HelloWorld22 wont compile on the ftp branch, we need help!

Hey guys I'll fix it!

Thanks!


 Actually, I've written Howto articles about dagger-android in medium that got featured 3 years ago; https://androidweekly.net/issues/issue-268
Ohh, it was a pleasant unexpected surprise. Thank you to the proandroiddev community for making it happen! It was just a tutorial I wrote up. It took me a few weeks. It was hard work.
Now, I've spent over 3 years on building this library. I owe to myself and the community to get this library featured in that legendary  newsletter. And no, I will not use money to get this featured there as it means (at least to me) that this library is not really worthy of getting featured.
I've already submitted this library to the newsletter a month ago. I also sent the curators an email about it. However, they still have not gotten back to me on why this is not getting featured. I will ping them again after the completion of every milestone just in case that the quality of the project is the issue.

I would also really appreciate help from the community to get this featured in AndroidWeekly. I don't mean to spam them. I only sent a link to this once.  Maybe they just did not see it? Maybe it takes an x amount of unique submissions for them to at least consider it?
For those few of you that find this library helpful or at least see the potential, help me out and send a link to this repo in https://androidweekly.net ?

OMG!!!! THIS GOT FEATURED IN AndroidWeekly issue #491!!!!!!!!


feat(dapi): update coinbase payload accroding to changes in Core v20

Issue being fixed or feature implemented

Updating coinbase TX payload according to Core v20
What was done?

updated daschore-lib dep

How Has This Been Tested?

Breaking Changes

None
Checklist:

[x] I have performed a self-review of my own code
[x] I have commented my code, particularly in hard-to-understand areas
[x] I have added or updated relevant unit/integration/functional/e2e tests
[x] I have made corresponding changes to the documentation

For repository code-owners and collaborators only

[x] I have assigned this pull request to a milestone

Don't we need the fix in rust @jawid-h ? Actually more important than JS where we don't have this problem?

@jawid-h could you please base this PR on v0.25-dev


Camel 4.x

Start working on camel 4.x

Wasn't better to create directly a camel-4.x from main?

I wasn't sure about that.  Do we prefer keep main for 3.x line for some time and create a camel-4.x branch now ? Or create a 3.20.x branch and keep main for 4.x....
For some time, keeping a PR for 4.x has the benefit of easily rebasing against master to keep up-to-date.  That avoids having to back port all changes, at the cost of having to merge conflicts during the rebase operation.

I think we could always rebase here, the problem is we're going to forget about it.

I think we could always rebase here, the problem is we're going to forget about it.

So you'd rather back porting every change made to main manually to the camel-4.x branch ?

It's the same, we are going to forget to do that anyway. So let's try to rebase here everyday.

I think its fine to keep a PR here in the beginning when gnodet is jump started on this. When we later ramp up and have more working on this then a branch is better.
A PR is maybe also easier to see what is changed etc.

I think one benefit of having a branch is that we can setup a CI job, so we can keep an eye on tests, code quality, etc as we progress. Given the large scope of the work, doing it from the beginning can save us from a lot of trouble far ahead.
That said, as 3.x is still moving at full speed, rebasing can be painful, indeed.

Oh, and I believe we might be able to automate the rebase work. At least a good part of it.


CAMEL-20943: camel-jbang - Add openapi generate integration test

the commit adds the following tests :

run routes from openapi definition and implementation
run routes using contract first approach, tested with mock response
export code using openapi
generate routes and DTOs using plugin generate (enabled from 4.7)

currently there is a failing assertion, when the exposed /api-doc is verified, I'm expecting all the paths from the source openapi, but nothing is exposed
{
  "openapi" : "3.0.0",
  "info" : { },
  "servers" : [ {
    "url" : "http://<IP_ADDRESS>"
  } ],
  "paths" : { }
}

@mcarlett lets look at that paths problem next week

ah okay @mcarlett those paths only works in 4.7 onwards, so when we have that released it easier to test. It works manually if you run the example with 4.7.0-SNAPSHOT

Thank you @davsclaus !


2018-07-10 Notes

Who's here

Bobby
Ryan
Nicole
Nina
April
Monica
Tinnie

Notes
Strategy:

Manually gather the data because much of it is unstructured.
Beyond the MVP - utilize various strategies to get structured data so we can scrape the pages and get automatic updates.

What problem are we trying to solve?  Problem Statement:

We are trying to find jobs for individuals in a quick, efficient, and easy way, and this brings value to the individual because it enables community members to get paid for meaningful work.

What's our end goal for the MVP?

A user looking to find work with homeless service providers will be able to find a job matching their skillset in order to help reduce homelessness.

Features

Search functionality
The nice thing is the sites don't have a login wall.

Action items & notes

Create a schema for the data we want to collect.

Look at the listings and come up with ideas on data trends to see what data we can collect.

Scrape linked pages and aggregate content onto a single page so that we get one source of all listings?
Have MVP each person get data from 5-6 links?
Focus on "Why it matters" in our presentation of the MVP?  What is the satisfaction/benefit the user will have by getting these jobs (focus on how they'll feel)?
User Interviews about how people feel about the current site's usability.

Create Google Form for data entry into Google Sheet.
Assign groups of links to group members.
Enter data into form (note details about listings).

Schema Notes

location
job title
skills
responsibilities
duration
salary
keyword tags
employer name

Google Sheet for data entry: https://docs.google.com/spreadsheets/d/16npDyyzNjgZ2h5uZmRNs2T2RRUCJtHB_1eHpmxUr1SI/edit?usp=sharing


Overlay like in smartspace

Smartspace does not need google app to hook the launcher and replace Google Feed, only xposed is necessary. can you do the same with Discovery killer? i use discovery killer but i don't use google app. and smartspace do it without Google app.
thank you

This is due to a difference in methods. It's not possible to have the switcher for different apps using the Smartspacer method, so the Google app is required.

Is possible to add a RSS plugin to smartspace? like homefeeder or rss overlay that exists in discovery killer?

If it conforms to the Smartspacer plugin SDK it would be. But you're better off just adding an RSS widget to Expanded Smartspace.


AWS SigV4 signer does not canonicalize URI and query string properly

Description:
When calculating the String to Sign for an incoming request, Envoy does not properly canonicalize the path and query parameters. This causes AWS to reject certain requests with the error: The request signature we calculated does not match the signature you provided. Check your AWS Secret Access Key and signing method. Consult the service documentation for details.
I've found the following three error cases so far, but there might be others I'm missing. In all cases below, the root problem seems to be a mismatch between the canonical request expected by AWS (first box) and the one calculated by Envoy (second box), either in the URI or query string lines (first two lines following GET)

Query parameters that are not alphabetically sorted
According to SigV4 docs (Step 3), query parameters should be sorted when building the canonical query string. Envoy seems to use the entire query string intact, without parsing or sorting the params. Requests succeed if the query params sent by the client happen to be correctly sorted, but fail with the signature error below otherwise:

$ curl "localhost:10000/v1/?a=test&b=value"
{"statusCode": 200, "body": "{}"}

$ curl "localhost:10000/v1/?b=value&a=test" (edited for clarity)
{"message":"The request signature we calculated does not match the signature you provided.
Check your AWS Secret Access Key and signing method. Consult the service documentation for
details. The Canonical String for this request should have been

GET
/v1/
a=test&b=value
accept:*/*
host:<redacted>.execute-api.us-west-2.amazonaws.com
...

[2021-06-09 16:21:57.845][252264][debug][http] [external/envoy/source/extensions/common/aws/signer_impl.cc:65] Canonical request:
GET
/v1/
b=value&a=test
accept:*/*
host:<redacted>.execute-api.us-west-2.amazonaws.com

Query parameters with no value
Per Step 3, parameters with no value specified (e.g. https://my.site/?foo) should be canonicalized as foo=, with a trailing equals sign. Because Envoy uses the original query string (foo) instead, these requests always fail.

$ curl "localhost:10000/v1/?a" (edited for clarity)
{"message":"The request signature we calculated does not match the signature you provided.
Check your AWS Secret Access Key and signing method. Consult the service documentation for
details. The Canonical String for this request should have been

GET
/v1/
a=
accept:*/*
host:<redacted>.execute-api.us-west-2.amazonaws.com
...

[2021-06-09 16:22:40.948][252264][debug][http] [external/envoy/source/extensions/common/aws/signer_impl.cc:65] Canonical request:
GET
/v1/
a
accept:*/*
host:<redacted>.execute-api.us-west-2.amazonaws.com

Path fragments that contain reserved characters
Per Step 2, path fragments should be double URI-encoded, unless the backend service is S3.  Requests to S3 with reserved characters in the path succeed, but requests to other services do not.

$ curl "localhost:10000/v1/documents%20settings"
{"message":"The request signature we calculated does not match the signature you provided.
Check your AWS Secret Access Key and signing method. Consult the service documentation for
details. The Canonical String for this request should have been

GET
/v1/documents%2520settings

accept:*/*
host:<redacted>.execute-api.us-west-2.amazonaws.com

[2021-06-09 16:31:21.342][252272][debug][http] [external/envoy/source/extensions/common/aws/signer_impl.cc:65] Canonical request:
GET
/v1/documents%20settings

accept:*/*
host:<redacted>.execute-api.us-west-2.amazonaws.com

Steps to Repro

Create an AWS API Gateway with AWS_IAM authorization enabled (any service that is not S3 should do)
Run Envoy with AWS credentials that have access to the gateway loaded into the environment using the config below
Run the curl commands above

Config
admin:
  access_log_path: /tmp/admin_access.log
  address:
    socket_address: { address: <IP_ADDRESS>, port_value: 9901 }

static_resources:
  listeners:
  - name: listener_0
    address:
      socket_address: { address: <IP_ADDRESS>, port_value: 10000 }
    filter_chains:
    - filters:
      - name: envoy.filters.network.http_connection_manager
        typed_config:
          "@type": type.googleapis.com/envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager
          stat_prefix: ingress_http
          codec_type: AUTO
          route_config:
            name: local_route
            virtual_hosts:
            - name: local_service
              domains: ["*"]
              routes:
              - match: { prefix: "/" }
                route: { cluster: some_service }
          http_filters:
          - name: envoy.filters.http.aws_request_signing
            typed_config:
                "@type": type.googleapis.com/envoy.extensions.filters.http.aws_request_signing.v3.AwsRequestSigning
                service_name: execute-api
                region: us-west-2
                host_rewrite: <redacted>.execute-api.us-west-2.amazonaws.com
          - name: envoy.filters.http.router
  clusters:
  - name: some_service
    connect_timeout: 5s
    type: STRICT_DNS
    lb_policy: ROUND_ROBIN
    load_assignment:
      cluster_name: some_service
      endpoints:
      - lb_endpoints:
        - endpoint:
            address:
              socket_address:
                address: <redacted>.execute-api.us-west-2.amazonaws.com
                port_value: 443
    transport_socket:
        name: envoy.transport_sockets.tls

Not stale

Fixed in #17137. Thanks @Y0Username!


T011: Wikipedia scraping fails

Selecting the table from the HTML fails in section 1.3.4. Replacing table = header.find_all_next()[4] with table = header.find_all_next()[5] should be enough to fix this, but the whole thing looks a bit flaky.

Hi Michael,
I'd be happy to take on this issue! I find two problems with the original code:

The line header = html.find("span", id="General_chemical_properties") returns nothing, because the "span" has been changed to an "h3" on Wikipedia's end.
The assignment of table currently doesn't fetch the correct HTML as implied by your suggested solution.

I think a potentially more stable fix that completely avoids table = header.find_all_next()[5] would be the following:
header = html.find("h3", id="General_chemical_properties")
table_body = header.find_next("tbody")

I've tested it and it works. If you like this fix, feel free to assign this issue to me and I'll send a PR.
Best,
Frenio
PS:
I would also like to add the following code to the top of the notebook as pd.DataFrame.from_records(data).replace("?", np.nan) triggers a deprecation warning that might distract the reader. Does that sound ok?
import warnings
warnings.filterwarnings("ignore")


[3.x] Fix type hints in GLTFDocumentExtension virtual methods

Follow-up to https://github.com/godotengine/godot/pull/70411

This ensures the generated C# bindings use the right types instead of Godot.Object everywhere. Since these methods were introduced in 3.6 (which hasn't been released yet), we can still change them without breaking compatibility.

Thanks!


When i start server, i received " message: 'Error installing plugin mysql2 *',", i used skywalking-nodejs "^0.3.0",

Please answer these questions before submitting your issue.

Why do you submit this issue?
[ ] Question or discussion
[ ] Bug
[ ] Requirement
[ ] Feature or performance improvement

Question

What do you want to know?

Bug

Which version of SkyWalking, OS, and JRE?

Which company or project?

What happened?
If possible, provide a way to reproduce the error. e.g. demo application, component version.
const { default: agent } = require('skywalking-backend-js');
agent.start({
serviceName: 'test-api',
serviceInstance: 'test-instance',
collectorAddress: '<IP_ADDRESS>:11800',
});

Requirement or improvement

Please describe your requirements or improvement suggestions.

If you kee open new issue, I have to block you. Why are you doing this.


Laravel 5.1 comes without default auth views

I just found out that Laravel 5.1 removed the default auth views (and a skeleton of app.blade.php). For me this is a major issue. The prebaked auth view/route allowed to very quick prototype/internal tool development.
Even taylor said that one of the reason he developed Laravel was to have authentication already set-up in the system. Is there any chance to rollback this decision?
In fact to have that back, I copied the view/auth folder from laravel 5.0 repo inside my 5.1 repo

No, sorry.

@llnk Here is a package that will do the same thing for you: https://github.com/bestmomo/scafold

Interesting! Although I suggest you to expand a little more the readme, I couldn't underatand that your package was for this

On 07/ago/2015, at 16:24, "Bobby Bouwmann"<EMAIL_ADDRESS>wrote:
@llnk Here is a package that will do the same thing for you: https://github.com/bestmomo/scafold
—
Reply to this email directly or view it on GitHub.


Configure HA To Connect To Specific Exit Node

I have a NAT'd home network that I can't change, I was attempting to use my raspberry pi 4 supervised home assistant as a Nginx reverse proxy (that was already running and working with my previously publically accessible network configuration) and have an exit node on the VPS.
I have portainer and can sign into the console of the tailscale container but I'm struggling.
The problem I am running into is that once an exit node in Tailscale is created, you have to enter in a command for the other tailscale clients to forward traffic through it.
Specifically, I need to run the sudo tailscale up --exit-node= command on the home assistant add-on for tailscale. Any ideas? When I try executing these commands in the Portainer console, it acts like tailscale isn’t installed even though it is.
Otherwise, would it be possible to create a configuration option to bind these to the tailscale IP address of another client configured as an exit node?

You can set the exit node in the addon configuration.

You can set the exit node in the addon configuration.

Unfortunately this does not exist in the configuration panel of the official Tailscale add-on in Home Assistant.
“This add-on has no additional configuration options for the add-on itself.”
https://github.com/hassio-addons/addon-tailscale/blob/main/tailscale/DOCS.md
The configuration panel you are showing, as best as I can tell, is from the HACS repository correct?

Yes, you are correct. Sorry I forgot I had to go through HACS to install the addon.

Yes, you are correct. Sorry I forgot I had to go through HACS to install the addon.
It is the addon from tsujamin's repositories.

Maybe I should try it again. I did attempt to do this but for some reason it almost bricked my HA instance entirely. Maybe I should try removing the official one before attempting again?


Add a primitive in-memory (C* compliant) store to start working on tests

…sts.

Awesome, thanks!

<3 thank you Pierre for merging it all :) expect more to come


A little try for optimisation

I've rewrite the code and now, it should work, the input buffer was full as you say


[BUG] Missleading results from Get-PnPTenantSite

Reporting an Issue or Missing Feature
Bug: Missleading results from Get-PnPTenantSite
Expected behavior
Using Get-PnPTenantSite | Where-Object {$_.OverrideTenantExternalUserExpirationPolicy -eq $true} to get all sites where the mentioned feature overwrites the tenant default
Actual behavior
Getting no sites at all
Steps to reproduce behavior
$tenantSite =Get-PnPTenantSite -Identity https://<tenant>.sharepoint.com/teams/<site>
$tenantSite.OverrideTenantExternalUserExpirationPolicy

returns True
whereas for the call Get-PnPTenantSite | Where-Object {$_.OverrideTenantExternalUserExpirationPolicy -eq $true}
I get no results
I believe it is related to the fact that for this property there is 'default data' returned when filtering is used:

https://learn.microsoft.com/en-us/powershell/module/sharepoint-online/get-sposite?view=sharepoint-ps#description
What is the version of the Cmdlet module you are running?
PnP.PowerShell 2.12.0
PowerShell 7.4.6
Which operating system/environment are you running PnP PowerShell on?

[x] Windows
[ ] Linux
[ ] MacOS
[ ] Azure Cloud Shell
[ ] Azure Functions
[ ] Other : please specify

hi @timtatam , this is a CSOM limitation. It only provides the value for some properties not all.
For more detailed information, you need to specify -Identity parameter , nothing we can change from our side.


Gamma user can clone a dashboard and all of its charts without being owner of dashboard, chart and its underlying dataset

Folks,
Sorry, but I am confused & annoyed with this behavior which I have described below.
We are using DASHBOARD_RBAC to give read-only dashboard access to users without giving them any access to charts, datasets, and databases. We have assigned only the default Gamma role to the user profile and to the dashboard roles.
see below, SERVICEACCOUNT user is not the owner of the dashboard. The dashboard has the Gamma role assigned.

see below, SERVICEACCOUNT user has only Gamma role assigned.

Here are the two issues we are observing:

In 2.1.0, 3.0.0rc1, and in the current master, a Gamma user can save a copy of a dashboard not owned by them. More importantly, they can make copies of all charts in the dashboard with the "also copy (duplicate) charts" checkbox. This is very undesired behavior and a maintenance nightmare for us.

see below, SERVICEACCOUNT user can use "save as" on the dashboard and duplicate all charts.

They can edit the chart from the dashboard and "save as" a new chart, even though the chart is not owned by them.

see below, SERVICEACCOUNT user can edit a chart from the dashboard and save it as a new chart from the chart builder.

see below, SERVICEACCOUNT user is not the owner of the chart.

The irony is, Gamma users can't list any charts from the Charts Menu (including cloned charts). An admin can see that charts are being cloned.

They can't see any dataset from the Datasets menu.

They can't see any dataset when trying to create a new chart.

This was reported by another user here as well: https://apache-superset.slack.com/archives/CCKHMGRRB/p1688356037634189
This behavior didn't exist in 1.5.3. Is this a deliberately added behavior or is it a bug with DASHBOARD_RBAC or somewhere else in the code?
Expected results
Gamma users who are not owners of the dashboard shouldn't be able to save a dashboard.
Gamma users who are not owners of the charts shouldn't be able to edit a chart from the dashboard and should not be able to save it as a new chart from the chart builder.
Actual results
Gamma users can save a dashboard and chart even if they are not owners.
Screenshots
Added above.
Environment

browser type and version: Version 114.0.5735.134 (Official Build) (64-bit)
superset version: 3.0.0rc1
python version: 3.9.x
node.js version: NA
any feature flags active: This feature flags are set to true ->
ALERT_REPORTS, DASHBOARD_CROSS_FILTERS, DASHBOARD_RBAC, GENERIC_CHART_AXES, ALLOW_FULL_CSV_EXPORT, DRILL_TO_DETAIL, HORIZONTAL_FILTER_BAR

Checklist
Make sure to follow these steps before submitting your issue - thank you!

[ ] I have checked the superset logs for Python stack traces and included them here as text if there are any.
[ x] I have reproduced the issue with at least the latest released version of the superset.
[x ] I have checked the issue tracker for the same issue and haven't found one similar.

Additional context
NA

@betodealmeida , @mdeshmu, @michael-s-molina, @sfirke et al. I'm trying to get up to speed with the RBAC for dashboards. Per the documentation it states,

Granting a role access to a dashboard will bypass dataset level checks. Having dashboard access implicitly grants read access to all the featured charts in the dashboard, and thereby also all the associated datasets.

is the intended behavior that by adding an RBAC role than users of said role are only allowed to see the charts in the context of the dashboard, i.e., should not be able to either explore it, save it (via save-as), or directly access the underlying dataset?

is the intended behavior that by adding an RBAC role than users of said role are only allowed to see the charts (and access the data backing said charts) in the controlled context of the dashboard, i.e., they should not be able to either explore it, save it (via save-as), or directly access the underlying dataset?

I think in theory yes, that was in the intention, but in practice it might've been too complicated to implement it this way and the access just "cascades".
(I'm not super familiar with dashboard RBAC since we don't use it.)

As a follow up I gather creating a copy of the dashboard (see screenshot) should also likely be forbidden, i.e., said user is stepping beyond the intent of the dashboard owner(s) who provided the RBAC to the role.

Spelunking through the code I think this is likely one part of the logic which should change, i.e., access to the underly ing dataset should be context aware—granted only in the context of an accessible dashboard.
Sadly complicated logic doesn't bode well from a security/access perspective and thus I wonder in a future release whether we should consider reverting this feature given the complexity of how/where these controls are enforced—be that within the security manager, filters, etc.

Thank you so much @john-bodley for looking into this issue.

@john-bodley Really appreciate your effort (series of PRs) to extensively address the issues I have raised here.
IMO, In this case, A user should not be able to open a chart in Explore by clicking on the chart title in the dashboard.

Do you already have an open PR to address this?

@mdeshmu https://github.com/apache/superset/pull/24789 partially addresses the issue, i.e., though the link will exist when they click through they'll be denied access to the underlying dataset. I'll likely work on a follow up PR which actually results in a redirect to ensure consistent behavior with the dashboard workflow when a user is denied access.
Note the challenge is currently we (many of the committers) don't have a good sense on what the actual desired UX was—the unit/integration tests which initially failed due to my change indicates that chart exploration was viable, albeit the issues surfaced in this issue. I'm hoping that @villebro can provide some additional context on the situation.

IMO, In this case, A user should not be able to open a chart in Explore by clicking on the chart title in the dashboard.

Note the challenge is currently we (many of the committers) don't have a good sense on what the actual desired UX was—the unit/integration tests which initially failed due to my change indicates that chart exploration was viable, albeit the issues surfaced in this issue. I'm hoping that @villebro can provide some additional context on the situation.

@villebro can you please clarify what is the desired behavior?


TypeError: mul received an invalid combination of arguments

while trying to train code, I encountered the following error:
'''TypeError: mul received an invalid combination of arguments - got (Variable), but expected one of:

(float value)
didn't match because some of the arguments have invalid types: (Variable)
(torch.FloatTensor other)
didn't match because some of the arguments have invalid types: (Variable)'''

I'm a bit stuck at this point, I was just running the ipython implementation.

I encountered the error in the step 25 of ipython notebook, i.e
'''for epoch in range(0,Config.train_number_epochs):
for i, data in enumerate(train_dataloader,0):
img0, img1 , label = data
img0, img1 , label = img0.cuda(), img1.cuda() , label.cuda()
optimizer.zero_grad()
output1,output2 = net(img0,img1)
loss_contrastive = criterion(output1,output2,label)
loss_contrastive.backward()
optimizer.step()
if i %10 == 0 :
print("Epoch number {}\n Current loss {}\n".format(epoch,loss_contrastive.item()))
iteration_number +=10
counter.append(iteration_number)
loss_history.append(loss_contrastive.item())
show_plot(counter,loss_history)'''

Are image in unit8 format ?


docs: readme update link info

#2  👈
main

This stack of pull requests is managed by Graphite. Learn more about stacking.

Join @Dax911 and the rest of your teammates on  Graphite

Merge activity

Sep 16, 1:56 PM EDT: @Dax911 merged this pull request with Graphite.


[UI] Disable pipeline run/launch in Docker Compose

When running MLX with docker-compose the KFP API is not available.
We need to disable the pipeline run capabilities in the UI when the REACT_APP_KFP is not set, or set it to "UNAVAILABLE" like for the MLX API:
https://github.com/machine-learning-exchange/mlx/blob/56d5f6f47a7bd66d41fc0b42ce30158db1279b6c/quickstart/docker-compose.yaml#L58

I will try to update the settings when initializing MLX similarly to how we disable the KF Serving capabilities


XGBoost , explanation and implementation

I am a GSSoC 21 participant (DISCORD username: diksha#6684 ), I can contribute to the XGBoost algorithm with proper implementation and Documentation on a dataset.
Kindly assign this work to me @ashwani-rathee @geekquad @kritikaparmar-programmer @MAJOR-BEAST
#GSSoc

@dikshajoshi18 pls don't open issues,that have already been opened.It makes managing issues and assigning tasks difficult.

alright, sure, sorry about that


Default setting is not appearing properly in Magento EE admin panel

Hello Team,
I followed the instructions provided and installed on my local magento EE1.14. When I logged in to admin panel and go to payment settings, Adyen default settings does not appear.
I tried atleast 3-4 times but each time it appears that default settings not showing properly.
Please help me out to sort the issue.

Also I am getting this error in my system.log . Please help.
2016-08-14T07:58:30+02:00 ERR (3): Warning: include(Mage\Adyen\\\Helper\Data.php): failed to open stream: No such file or directory  in C:\xampp\htdocs\wannagives\dist\lib\Varien\Autoload.php on line 94
2016-08-14T07:58:30+02:00 ERR (3): Warning: include(): Failed opening 'Mage\Adyen\\\Helper\Data.php' for inclusion (include_path='C:\xampp\htdocs\wannagives\dist\app\code\local;C:\xampp\htdocs\wannagives\dist\app\code\community;C:\xampp\htdocs\wannagives\dist\app\code\core;C:\xampp\htdocs\wannagives\dist\lib;C:\xampp\php\PEAR')  in C:\xampp\htdocs\wannagives\dist\lib\Varien\Autoload.php on line 94

Hi @yogendrabmishra,
Looks like you have issues with magento autoloader.  I have no idea why it wanted to include age\Adyen\\Helper\Data.php looks like you have done some modifications to the default magento autoloader. Try to figure out where it is going wrong and do not override the default autoloader of Magento.
Regards,
Rik
Adyen

Thanks for your help. I have fixed it :+1:


Set wait-check-interval to 1s for benchmark tests

What this PR does / why we need it:
Set wait-check-interval to 1s for benchmark tests
With kapp v0.54.0 wait-check-interval is set to 3s which increases the time to wait for package repositories, hence we need to explicitly set it to 1s
Which issue(s) this PR fixes:

Fixes #
Does this PR introduce a user-facing change?

Additional Notes for your reviewer:
Review Checklist:

[x] Follows the developer guidelines
[x] Relevant tests are added or updated
[x] Relevant docs in this repo added or updated
[x] Relevant carvel.dev docs added or updated in a separate PR and there's
a link to that PR
[x] Code is at least as readable and maintainable as it was before this
change

Additional documentation e.g., Proposal, usage docs, etc.:

LGTM


Openshift serviceaccount requires OAuth authentication

When username/password is used for fabric8:apply or fabric8:deploy to apply DeploymentConfig to OpenShift cluster it fails for serviceaccount, because serviceaccount can only use OAth token. Here is a patch which adds token entry into access configuration to make authentication on OpenShift cluster possible.
Signed-off-by: dantalain-pv<EMAIL_ADDRESS>

Sure, done


Fixing the alignment of footer

I want to correct the spacing in footer that is fix the alignment of "Links" column in the footer.

Please assign this issue to me under GSSoC extnd and Hacktoberfest.

What exactly would you change @khwa04

I wish to shift the "Links" section towards right so that all columns are equi-spaced.


[BUG]: Document ownership is wrong

Describe the bug
Accused uploaded document showing as Complainant owner
If advocate does not have second name it is coming as Naveen 'null' - (Please cross verify across name references)
To Reproduce

Hi @rajeshcherukumalli , plz test this in UAT

This bug has been fixed looks like and behaves as expected now.
1.Accused uploaded document showing as Accused owner
2. Not showing null if we didn't enter last name as shown in pic

Hi @devarajd94  This issue is fixed

Verified


Implement KeyAnyValue serialization. Fix integer/long serialization.

Add support for serializing KeyAnyValue objects. Also fix integer/long serialization/deserialization.
This allows operations with Host Profiles to succeed. Without this fix, operations like editing a host profile, or applying it - fail due to the object containing KeyAnyValue items, which rbvmomi doesn't know how to serialize to XML at all. Another issue was that the deserializer casts every integer to a long, which for the most part works, but the host profile API does not like that. The fixes for int/long were only done in the new deserializer.
Rake tests pass, and I've tested a lot of other vSphere operations to verify that this doesn't break anything, to the best of my knowledge.

I'm going to admit to not being able to understand this from a first glance so that's why I'm leaving it on the table for later.

Do you want me to rebase it to the newest HEAD? Also if you have questions - I'm available. It has been used in production for quite a while now within our group and haven't encountered any side effects so far.

Also, it should be labeled as a bug fix, not an enhancement. Without it, you'll be unable to edit a HostProfile.

@tacho please do :-)

I'll try and put this in the 1.8.2 stack and move it back out again if I can't make sense of it.

@tacho @hartsock I'm looking at this right now, but I'm not too familiar with this section of the code. I'm going to circle back around to this soon and give it a better look.


PR for issue #1, make version CONSTANT

This is great, thanks! One comment if you can change I can merge straight in and then I'll bump the version and submit it to rubygems.


[entropy_src] RTL Todos

Complete RTL Todos
dv/entropy_src_scoreboard.sv#L319
Now that #9759 is closed
dv/entropy_src_scoreboard.sv#L594 and another instance in the same file (0.5 d)

estimate 2

The TODO above evaluate_adaptp_test has already been resolve: https://github.com/marnovandermaas/opentitan/blob/4ce7b81ba6739a4de9cf09c9067b45dcf4255e4a/hw/ip/entropy_src/dv/env/entropy_src_scoreboard.sv#L533
The remaining TODOs in the scoreboard:
https://github.com/marnovandermaas/opentitan/blob/4ce7b81ba6739a4de9cf09c9067b45dcf4255e4a/hw/ip/entropy_src/dv/env/entropy_src_scoreboard.sv#L1312
and
https://github.com/marnovandermaas/opentitan/blob/4ce7b81ba6739a4de9cf09c9067b45dcf4255e4a/hw/ip/entropy_src/dv/env/entropy_src_scoreboard.sv#L1316
I'm not familiar enough with the DV of entropy source to remove these, but I don't think we need to solve this to hit the verification for V2.5 unless they are causing significant amount of test failures.
I'm also renaming this issue because there is no mention of this issue in the RTL, but just in the DV.

Per @marnovandermaas comments - moving to the later milestone. @andreaskurth / @GregAC for visibility. Just DV efforts remaining no RTL. Reassigning back to @marnovandermaas but can be worked on post this current sprint.


Move from tfsec to trivy

User Story
As a Modernisation Platform Engineer
I want to migrate from tfsec to trivy
So that we continue to benefit from up-to-date secure code analysis
trivy is now being favoured over tfsec, they are still using the same base rules so this isn't urgent but we should still change at some point.
https://github.com/aquasecurity/tfsec/blob/master/docs/guides/trivy.md
User Type(s)
Modernisation Platform Engineer
Value
The migration from tfsec to trivy is discussed here.
Trivy is now being favoured over tfsec. While they are still using the same base rules this isn't urgent but we should change to ensure we stay in line with the most up-to-date tooling, and prevent the need to urgently change should tfsec be fully deprecated.

Assumptions / Hypothesis / Questions / Unknowns

Definition of done

[ ] references to tfsec actions in Modernisation Platform repositories updated
[ ] ministryofjustice/github-actions/terraform-static-analysis tool updated
[ ] another team member has reviewed
[ ] tests are green

Reference
How to write good user stories
Moving towards configuration scanning with Trivy

currently not urgent, but this might change. Though only for code formatting

created code for trivy and tested it on a personl repo and found to be working going to add code to the modernisation platform repo via a pr shortly

https://github.com/ministryofjustice/modernisation-platform/pull/5938

https://github.com/ministryofjustice/modernisation-platform/pull/5978

This is now complete new issue raised to do all other mod platform repos


Allocated resources cannot be changed

While resources can be specified in vm-function messages, these are ignored and the resources are hardcoded to Firecracker's defaults.

Fixed in #21


Adding bottom reached events + fix start event flood on bottom limit reached

Hello,

start event is now triggered only once when the real start begins. It was flooding when bottom limit is reached and the top css property have to be updated to push up the sticked element.
To keep the event triggering when top is updated after start, the update event have been added. So it floods like start did before.
bottom-reached is triggered when sticked element reached the bottom space limit
bottom-unreached is triggered when sticked element is not reaching the bottom space limit

Hope you will find this usefull...

example with header : http://thochra.github.io/sticky/extended-events/index.html

Thanks! Thanks for adding an example as well.

You're welcome.
I just noticed that I've forgot the update event in the example.

I'll trust you that it works. ;)
If I get people complaining that this broke something, I'll tell them to yell at you.


cephcluster: tune disks according to plaftorm

set tunefastdeviceclass according to plaftorm
which are not correctly detected by ceph.
modify tc according to the changes.
Signed-off-by: crombus<EMAIL_ADDRESS>

@crombus Hey, can we revisit this?

@crombus Hey, can we revisit this?

All requests have been addressed except from changing the test-case accordingly .
I get this error
gp2". multiple group-version-kinds associated with type *v1.StorageClass, refusing to guess at one
for changes in tc
               reconciler := createFakeInitializationStorageClusterReconcilerWithPlatform(t, tc.platform, tc.storageCluster, tc.storageClass)
               for _, ds := range tc.deviceSets {
                       actualSpeed, err := reconciler.checkTuneStorageDevices(ds)
                       assert.NoError(t, err)
                       assert.Equalf(t, tc.expectedSpeed, actualSpeed, "[%q]: failed to get expected output", tc.label)
               }
       }```

All requests have been addressed except from changing the test-case accordingly .
I get this error
gp2". multiple group-version-kinds associated with type *v1.StorageClass, refusing to guess at one
for changes in tc
               reconciler := createFakeInitializationStorageClusterReconcilerWithPlatform(t, tc.platform, tc.storageCluster, tc.storageClass)
               for _, ds := range tc.deviceSets {
                       actualSpeed, err := reconciler.checkTuneStorageDevices(ds)
                       assert.NoError(t, err)
                       assert.Equalf(t, tc.expectedSpeed, actualSpeed, "[%q]: failed to get expected output", tc.label)
               }
       }```

Updated the tc fix (by adding a default platform entry to the reconciler) and added a specific tc for the new code path after discussing with @crombus .
let's see what the test runs bring

Updated the tc fix (by adding a default platform entry to the reconciler) and added a specific tc for the new code path after discussing with @crombus .
let's see what the test runs bring

/cherry-pick release-4.7

/cherry-pick release-4.7


Missing information about capability 'packageManagement'

If you just use RemovePackageAsync() to remove apps installed via the store, you will get a 'System.UnauthorizedAccessException: Access is denied' exception. In order to uninstall store apps, you also need to add the restricted capability 'packageManagement' to your app. This should be pointed out in the documentation here.

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

ID: a808baee-242a-e412-f8a0-ca9b49974dfb
Version Independent ID: bebc5463-e378-d464-91b2-b73e65c06559
Content: PackageManager.RemovePackageAsync Method (Windows.Management.Deployment) - Windows UWP applications
Content Source: https://cpubwin.visualstudio.com/DefaultCollection/windows-uwp/_git/winrt-api-build?path=%2fwinrt-api-build%2fwindows.management.deployment.packagemanager.yml&version=GBlive&_a=contents
Product: uwp
Technology: winrt-reference
Git Login: hickeys
Microsoft Alias: hickeys

I get  into the same issue. Is there any solution on it ?


Global settings

Will be great to have some global settings for geonotifications. Something like:
window.geofence.configure({
  notification: {
    title: "default notification title",
    text: "default notification text",
    ......
  }
});

Better extend some default object when adding geofence than complicating plugin.


Featured image requires absolute path

The featured_image parameter can be set system wide in config.toml or in the front matter of a specific page. This parameter always expects an absolute path from the site root, and does not handle relative urls.
When using it with a page leaf, I have a posts section in content with folder named slug-to-page, containing both an index.md and featured.jpg:
/content/
  posts/
    slug-to-page/
      index.md
      featured.jpg

In the index file, I would like to add
featured_image: featured.jpg

or
featured_image: ./featured.jpg

The link to the header background image now trims the '/' and then makes the path absolute with absUrl.
https://github.com/budparr/gohugo-theme-ananke/blob/15a454034900cc0b969db8af490ff77013757624/layouts/partials/page-header.html#L4
Instead, I would like some logic like:

If it is an absolute path (starting with '/') then leave as is, otherwise precede relative path with permalink from current page.

Something like this:
{{ if not hasPrefix $feature_image "/" }}
  {{ $featured_image := (path.Join( .Permalink $featured_image) }}
{{ end }}

This snippet seems to work
  {{ $featured_image := string (path.Join .URL $featured_image) }}

Another possibility would be to change the line in page-header.html to use the GetFeatureImage function, which is already used for the summary with images:
{{ $featured_image := partial "func/GetFeaturedImage.html" . }}
Or do I miss something here?

This is only part of the problem. Under "Recent Posts", there is a similar line in layouts/partials/summary-with-image.html. However, replacing that line with {{ $featured_image := partial "func/GetFeaturedImage.html" . }} or {{ $featured_image := string (path.Join .URL $featured_image) }} doesn't work.
So for the time being, I have a static/featured_images/ folder where I store the featured images. Which sort of kills the entire idea of page bundles... :-(

I'm sorry for the no answer @pmorch , but I refactored the featured image logic taken into account your suggestion! Thanks for that!


Issue40 - YT videos playing without giving responding to the Cookie consent Manager - Improvement of INP via NOT making any section "Un clickable"

…pts the moment user click on YT Videos within 3 seconds
Please always provide the GitHub issue(s) your PR is for, as well as test URLs where your change can be observed (before and after):
Based on the comments from Google CRUX team suggestions as per - https://groups.google.com/a/chromium.org/g/chrome-ux-report/c/FY_u3JH--F0/m/8Nm5xV57AAAJ
Fixes #40
Test URLs:

Original: https://www.sunstar-foundation.org/_drafts/meet/episode-1-draft-v1

Before: https://main--sunstar-foundation--sunstar-foundation.hlx.page/_drafts/meet/episode-1-draft-v1

After: https://issue40-yt-consent-v2--sunstar-foundation--sunstar-foundation.hlx.page/_drafts/meet/episode-1-draft-v1

[ ] New Blocks introduced in this PR
If yes, please provide details below

Block Name
Documentation

For e.g. cards
doc-link

[ ] New variations introduced in this PR

Variation Name
Documentation

For e.g. cards (grid)
doc-link

@sdmcraft  - I suppose as per the changes in the PR https://github.com/sunstar-foundation/sunstar-foundation/commit/3bbf83b826851437eda76f2fc36252fd165e4646
This issue will be taken care automatically for rest of the scripts like loadConsentManager, loadAdobeLaunch. After the refactor of loadscript I suppose if it the script tag is there, then it will automatically resolve the promise otherwise it will load it.
But with loadGTM, there is no such check like that be default. It will be better to remove loadGTM from embed.js. Anyway loadGTM will load via its call under delayed.js . Pl advise.

Hello @meejain.
Sorry I didn't follow up on this issue. Can you please tell me what is the current status?
Were you able to make the consent work for Youtube?
Thanks.


⚠ Bofrost.de has degraded performance

In 0f5a529, Bofrost.de (https://www.bofrost.de) experienced degraded performance:

HTTP code: 200
Response time: 874 ms

Resolved: Bofrost.de performance has improved in 61baeb2.


Searchbox

This could do with some aesthetic tweaking, possibly using bootstrap given it apparently plugs into Flask very easily.

Rather than a navbar searchbar, integrate as a module underneath the primary entities diagram. This should contain search entry box and 'go' button, which directs to a search result page.


Tutorial to grasp the rational behind union-types

Does anyone know a good tutorial to grasp the rational behind union-types so that I understand the problem they solve? I know basic functional programming with Ramda but would like to learn more about  functional-frontend-architecture with flyd.
Thanks

In terms of "functional-frontend-architecture", AKA the Elm Architecture, check out this section of the Elm guide.  The syntax is different but the concepts are the same.
A more general tutorial I found useful, particularly coming from OOP: A functional approach to Domain Driven Design. It's F#, so again the syntax is different, but many of the concepts are the same. The bit about union and product types starts around slide 49.

Thanks @ericgj, this is very helpful!

Great article about sum (a.k.a. tagged or discriminated unions) types.

https://medium.com/fullstack-academy/better-js-cases-with-sum-types-92876e48fd9f


npm install failing (using react v15)

Hi,
Any plans on updating this to use latest version of react (v15)?
I am getting the following error when I try to install this.
npm ERR! Windows_NT 6.1.7601
npm ERR! argv "C:\\Program Files\\nodejs\\node.exe" "C:\\Program Files\\nodejs\\node_modules\\npm\\bin\\npm-cli.js" "install" "react-typeahead-component"
npm ERR! node v4.2.2
npm ERR! npm  v2.14.7
npm ERR! code EPEERINVALID

npm ERR! peerinvalid The package<EMAIL_ADDRESS>does not satisfy its siblings' peerDependencies requirements!
npm ERR! peerinvalid Peer<EMAIL_ADDRESS>wants<EMAIL_ADDRESS>npm ERR! peerinvalid Peer<EMAIL_ADDRESS>wants<EMAIL_ADDRESS>npm ERR! peerinvalid Peer<EMAIL_ADDRESS>wants<EMAIL_ADDRESS><1.0.0
npm ERR! peerinvalid Peer<EMAIL_ADDRESS>wants react@>= 0.13.0
npm ERR! peerinvalid Peer<EMAIL_ADDRESS>wants<EMAIL_ADDRESS>|| ^15.0.0-0

This project is specifying a dependency on React with an upper bound of 1.0.0 , ReactJS went from 0.14.8 to 15.0.0 which causes this issue.
I know you guys are not actively developing this project anymore, but please just update the upper bound for React in your peerDependencies.


cargo test failing on master due to tpcds_logical_q41 stackoverflow

Describe the bug
A clear and concise description of what the bug is.
Running cargo test on master (2f5b25d8aa8089232f395aa9a7ac15c715eaaa83)
To Reproduce
Steps to reproduce the behavior:
Run cargo test, get stack overflow:
test sql_window ... ok

test result: ok. 4 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.08s

     Running tests/tpcds_planning.rs (/media/jeffrey/1tb_860evo_ssd/.cargo_target_cache/debug/deps/tpcds_planning-a07cb92d49318d5e)

running 198 tests
test tpcds_logical_q15 ... ok
test tpcds_logical_q12 ... ok
test tpcds_logical_q1 ... ok
test tpcds_logical_q2 ... ok
test tpcds_logical_q22 ... ok
test tpcds_logical_q10 ... ok
test tpcds_logical_q20 ... ok
test tpcds_logical_q19 ... ok
test tpcds_logical_q21 ... ok
test tpcds_logical_q18 ... ok
test tpcds_logical_q16 ... ok
test tpcds_logical_q26 ... ok
test tpcds_logical_q3 ... ok
test tpcds_logical_q31 ... ignored
test tpcds_logical_q28 ... ok
test tpcds_logical_q27 ... ok
test tpcds_logical_q13 ... ok
test tpcds_logical_q11 ... ok
test tpcds_logical_q17 ... ok
test tpcds_logical_q32 ... ok
test tpcds_logical_q30 ... ok
test tpcds_logical_q34 ... ok
test tpcds_logical_q4 ... ignored
test tpcds_logical_q37 ... ok

thread 'tpcds_logical_q41' has overflowed its stack
fatal runtime error: stack overflow
error: test failed, to rerun pass `-p datafusion --test tpcds_planning`

Caused by:
  process didn't exit successfully: `/media/jeffrey/1tb_860evo_ssd/.cargo_target_cache/debug/deps/tpcds_planning-a07cb92d49318d5e` (signal: 6, SIGABRT: process abort signal)
jeffrey:~/Code/arrow-datafusion$ git status
On branch master
Your branch is up to date with 'upstream/master'.

nothing to commit, working tree clean
jeffrey:~/Code/arrow-datafusion$

Expected behavior
A clear and concise description of what you expected to happen.
Additional context
Add any other context about the problem here.
Confusing part is that if run the test individually (or in its module) then it succeeds:
jeffrey:~/Code/arrow-datafusion$ cargo test -p datafusion --test tpcds_planning tpcds_logical_q41
    Finished test [unoptimized + debuginfo] target(s) in 0.11s
     Running tests/tpcds_planning.rs (/media/jeffrey/1tb_860evo_ssd/.cargo_target_cache/debug/deps/tpcds_planning-d9b643aa0821df37)

running 1 test
test tpcds_logical_q41 ... ok

test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 197 filtered out; finished in 0.02s

jeffrey:~/Code/arrow-datafusion$

Related to https://github.com/apache/arrow-datafusion/pull/4719?

Originally spotted in https://github.com/apache/arrow-datafusion/pull/4727 and confusing part was that q41 doesnt seem to contain rollup/cube/grouping sets (or any group by). Even when i ran only the tpcds_planning tests themselves it passed, just not together with cargo test
I then checked out to the master and tried again, faced same issue, though don't seem to be able to reproduce using this test PR to trigger a cargo test of current master: https://github.com/apache/arrow-datafusion/pull/4729 (is it inconsistent or am I just unlucky? or some other issue caused by my PR #4727 changes?)

We probably need to set export RUST_MIN_STACK=10485760 in CI toi solve this. I will create a PR in the next couple of days if nobody beats me to it.

We probably need to set export RUST_MIN_STACK=10485760 in CI to solve this. I will create a PR in the next couple of days if nobody beats me to it.

I have another fix in the works. Hang tight...


feat(account): move getPermissions and hasPermissions to Account

:tada: This PR is included in version 7.0.0-alpha.12 :tada:
The release is available on:

npm package (@alpha dist-tag)
GitHub release

Your semantic-release bot :package::rocket:

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

npm package (@beta dist-tag)
GitHub release

Your semantic-release bot :package::rocket:

:tada: This PR is included in version 7.0.0 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


x86: Fix zefi.py creating valid images

When zefi.py was changed to pass compiler and objcopy the flag to
objcopy for the EFI target was dropped.  This is because the current
SDK (0.12.1) doesn't support that target type for objcopy.  However,
target is necessary for the images to be created correctly and boot.
Switch back to use the host objcopy as a stop gap fix, until the SDK
can support target for EFI.
Fixes: #31517
Signed-off-by: Kumar Gala<EMAIL_ADDRESS>

https://github.com/zephyrproject-rtos/sdk-ng/issues/318 to add the support in the binutils build for x86_64.

https://github.com/zephyrproject-rtos/sdk-ng/issues/318 to add the support in the binutils build for x86_64.

Sent a PR for the SDK to enable the EFI binary support in binutils.  Once we have some test SDK build we can try that out.

Sent a PR for the SDK to enable the EFI binary support in binutils.  Once we have some test SDK build we can try that out.


Tests with Duration

Since running tests forever is not really practical for some cases. Is it possible to add a method to test for a specified duration. Something like that
extension Monkey {
    func startTesting(forDuration duration: TimeInterval) {
        let start = CFAbsoluteTimeGetCurrent() // start time

        repeat {
            actRandomly()
            actRegularly()
        } while ((CFAbsoluteTimeGetCurrent() - start) < duration)
    }
}

Then we can call it that way:
// Run the monkey tests for 15 minutes
monkey.startTesting(forDuration: 15 * 60)

// or to fall back to forever testing
monkey.startTesting(forDuration: .infinity)

What is the monkey click frequency?

Solved by #43 - closing the issue.


Assets Directory for Illustrations and Photos

Once we are able to add illustrations and photos (or before that), we will want to organize the directory for those assets.
I suggest something similar to the way they are currently organized in the ENRTF Google Drive (these are as folders):

Assets

JSON files
Illustrations

Plants
Pollinators
Nests
Backgrounds
Other

Images [Should_ we call this "Photographs" instead?]

Pollinators
Flowers
Nests
Other

What do you think @floogulinc?
(Apologies if this is not the way this is typically described, and/or if I am using improper syntax.)

I think that's pretty much right, here is what I think it would look like more exactly:
assets/ (the root of the repo)
├── art/
│   ├── LICENSE
│   ├── plants/
│   ├── pollinators/
│   ├── nests/
│   └── other/
├── photos/
│   ├── pollinators/
│   ├── flowers/
│   ├── nests/
│   └── other/
├── bees.json
├── bees.schema.json
├── flowers.json
├── flowers.schema.json
├── nests.json
├── nests.schema.json
├── README.md
├── LICENSE

I changed illustrations to art because it seems simplier and eaiser to type and such. Also images to photos, photos seems more descriptive of what they are.
One thing I noticed is that we call the JSON "flowers" and "bees" and that is also the terminology used in our existing code in the game, rather than "pollinators" and "plants." It seems like they should be consistent. I think there are two potential solutions. Either:

Change the directories for photos and art to "flowers" and "bees" and make sure that other pollinators that aren't bees/aren't in the bees json and plants that aren't flowers/aren't listed in the flowers json (like extra grass and such) are in the "other" directory.
Change the JSON to "pollinators" and "plants" and include info about the non-bee pollinators and non-flower plants in them.

I kinda lean towards the first but I would like to hear what you think.

The first option sounds good. So it would be:
assets/ (the root of the repo)
├── art/
│   ├── LICENSE
│   ├── flowers/
│   ├── bees/
│   ├── nests/
│   └── other/
├── photos/
│   ├── bees/
│   ├── flowers/
│   ├── nests/
│   └── other/
├── bees.json
├── bees.schema.json
├── flowers.json
├── flowers.schema.json
├── nests.json
├── nests.schema.json
├── README.md
├── LICENSE

What about the backgrounds? Should we put them in a separate folder or just in other?

I think there will only be a few background art images it would be fine to put them in "other"


Use caching CI builds

Fixes #753
This PR activates caching on a directory on the runner and mounting it to the go location where dependencies are installed inside the container building the app

@osamamagdy thanks for the updates. Could you please rebase/squash your changes. I think we keep one commit for the workflow_dispatch and another one for caching go mod cache.

@mbrandenburger Thanks all done now


[Bug] [Task cannot be deleted] After creating a task in the web interface, it cannot be deleted

Search before asking

[X] I had searched in the issues and found no similar issues.

What happened
在web界面新建任务但是删不掉    除了修改源码还有别的解决方案嘛

这行提高前面就可以了

What you expected to happen
How to reproduce
安装分布式后启动web 直接进去建新任务 然后删除就可以重现问题
Anything else
No response
Version
2.0.3
Are you willing to submit PR?

[ ] Yes I am willing to submit a PR!

Code of Conduct

[ ] I agree to follow this project's Code of Conduct

205 don't have this issue


barlog-post-install error

Thanks for the incredible work. I am having an error when running the titled command following the installation steps. It seems like something is missing during the previous installation command
FileNotFoundError: [Errno 2] No such file or directory: '/Users/<username>/miniconda3/envs/balrog/lib/python3.10/site-packages/minihack/dat/master.zip'

Hi, thanks for the kind words!
It looks like minihack might have not been installed properly or it is not located in the expected destination path.
Could you check that after installing BALROG, minihack is also properly installed, and which folder it is installed in?
pip show minihack
Then you should be able to download and unzip with the following:
import os
import zipfile
import urllib.request

# Set this to the correct path where minihack is installed
MINIHACK_PATH = "/Users/<username>/miniconda3/envs/balrog/lib/python3.10/site-packages/minihack/dat"
BOXOBAN_REPO_URL = "https://github.com/deepmind/boxoban-levels/archive/refs/heads/master.zip"

def download_boxoban_levels(destination_path):
    print(f"Ensuring {destination_path} exists...")
    os.makedirs(destination_path, exist_ok=True)

    zip_file = os.path.join(destination_path, "master.zip")

    # Download the zip file
    print("Downloading Boxoban levels...")
    urllib.request.urlretrieve(BOXOBAN_REPO_URL, zip_file)
    print("Download complete.")

    # Unzip the downloaded file
    print("Unpacking Boxoban levels...")
    with zipfile.ZipFile(zip_file, "r") as zip_ref:
        zip_ref.extractall(destination_path)

    # Remove the zip file after extraction
    os.remove(zip_file)
    print("Boxoban levels installed successfully.")

if __name__ == "__main__":
    download_boxoban_levels(MINIHACK_PATH)

Thanks for the prompt reply. Do I still have to run barlog-post-install afterwards?


Issue with phi-3 on Long Sequences with Batches > 1

Hi! I'm encountering an issue while tuning phi-3 on long sequences with batch sizes greater than 1. Below is the code to reproduce the problem:
Working Code:
tokenized = tokenizer(
    ["Very long prompt\n" * 3000],  # *2,
    max_length=3000,
    return_tensors="pt",
    truncation=True,
).to("cuda")

res = model.generate(
    **tokenized,
    max_length=4096,
)

Code with Error:
RuntimeError: The expanded size of the tensor (2047) must match the existing size (3001) at non-singleton dimension 3. Target sizes: [2, 32, 1, 2047]. Tensor sizes: [2, 1, 1, 3001]

tokenized = tokenizer(
    ["Very long prompt\n" * 3000] * 2,
    max_length=3000,
    return_tensors="pt",
    truncation=True,
).to("cuda")

res = model.generate(
    **tokenized,
    max_length=4096,
)

Notebook with example.
Any insights on how to resolve this issue would be greatly appreciated!

Oh interesting I'll check this and get back to you - sorry!

The problem still exists. It seems there is a 2048 token limit for the Phi-3 mini/medium model, but not for other models in Unsloth

Apologies I'll escalate this to higher priority - will try getting a fix for this


implement rasa train core --number-of-chunks

part of https://github.com/RasaHQ/rasa/issues/6836
add cli support for implement rasa train core --number-of-chunks and make sure that if number-of-chunks>1 train_on_chunks method is called in the policies
Note: This feature should branch off from partial_dataset_loading-core and should be squashed and merged back into that branch.

@joejuzl @wochinge I'll implement basic "copy-paste of current train", so that I could start work on policies, but I think we should think about the best approach for train vs train_in_chunks in more detail


i can't run my code while i using sytle.css

Environment (please complete the following information):

OS (e.g., Windows 10):
Extension version (e.g., 1.2.3):

Describe the bug:

Repro steps:

Expected behavior:

Additional context:

Can you explain more what you mean?


Build fails with error NameError: name 'unicode' is not defined

Not clear if this is only happening for the develop branch of Kolibri, or whether this happens for 0.15.x as well.
Traceback:
Traceback (most recent call last):
  File "/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/runpy.py", line 197, in _run_module_as_main
    return _run_code(code, main_globals, None,
  File "/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/runpy.py", line 87, in _run_code
    exec(code, run_globals)
  File "/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-packages/PyInstaller/__main__.py", line 188, in <module>
    run()
  File "/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-packages/PyInstaller/__main__.py", line 178, in run
    run_build(pyi_config, spec_file, **vars(args))
  File "/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-packages/PyInstaller/__main__.py", line 59, in run_build
    PyInstaller.building.build_main.main(pyi_config, spec_file, **kwargs)
  File "/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-packages/PyInstaller/building/build_main.py", line 934, in main
    build(specfile, distpath, workpath, clean_build)
  File "/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-packages/PyInstaller/building/build_main.py", line 856, in build
    exec(code, spec_namespace)
  File "kolibri.spec", line 27, in <module>
    a = Analysis(
  File "/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-packages/PyInstaller/building/build_main.py", line 3[48](https://github.com/learningequality/kolibri/actions/runs/3105721594/jobs/5031833685#step:13:49), in __init__
    self.hookspath += discover_hook_directories()
  File "/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-packages/PyInstaller/isolated/_parent.py", line 269, in wrapped
    return call(function, *args, **kwargs)
  File "/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-packages/PyInstaller/isolated/_parent.py", line 238, in call
    return isolated.call(function, *args, **kwargs)
  File "/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-packages/PyInstaller/isolated/_parent.py", line 176, in call
    raise RuntimeError(f"Child process call to {function.__name__}() failed with:\n" + output)
RuntimeError: Child process call to discover_hook_directories() failed with:
  File "/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-packages/PyInstaller/isolated/_child.py", line [63](https://github.com/learningequality/kolibri/actions/runs/3105721594/jobs/5031833685#step:13:64), in run_next_command
    output = function(*args, **kwargs)
  File "/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-packages/PyInstaller/building/build_main.py", line 105, in discover_hook_directories
    import pkg_resources
  File "/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-packages/pkg_resources/__init__.py", line 23, in <module>
    import zipfile
  File "/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/zipfile.py", line 7, in <module>
    import importlib.util
  File "/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/importlib/util.py", line 2, in <module>
    from . import abc
  File "/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/importlib/abc.py", line 17, in <module>
    from typing import Protocol, runtime_checkable
  File "/Users/runner/work/kolibri/kolibri/kolibri/kolibri/dist/typing.py", line [78](https://github.com/learningequality/kolibri/actions/runs/3105721594/jobs/5031833685#step:13:79)2, in <module>
    AnyStr = TypeVar('AnyStr', bytes, unicode)
NameError: name 'unicode' is not defined

This appears to be caused by adding packages to Kolibri that depend on the typing backport module. This should be a py2only module.


kokoro: Linux builds use Python 3.12

Issue: #1377

I just rolled out the image.  Maybe it needs time to replicate across the cloud...
will try again this afternoon.


Inconsistencies in join page error message

Please see the attached image.  A couple tweaks:

Consistently use either "user name" or "username"
Consistently start messages with a capital letter or not.  I.e. "Username is not valid..."

001.zip

resolved with Cuahsi SSO


Is there a vanilla implementation without graphgym

Use of graphgym has made it very difficult to change and understand code. Does there exist an vanilla implementation without use of graphgym

The reference implementation is here in this repo.
Alternatively, you might want to have a look at the re-implementation GPSConv layer in PyG and its basic tutorial on using GPS


Add port configuration to media_player.cast - Fixes #16124

Description:
Allow to specify port manually for media_player.cast when not using discovery:
This allows for Chromecast groups to be added when running HA in another L3 subnet.
Caveat: groups will have to tracked manually.
Related issue (if applicable): fixes #16124
Pull request in home-assistant.github.io with documentation (if applicable): home-assistant/home-assistant.github.io#<home-assistant.github.io PR number goes here>
Example entry for configuration.yaml (if applicable):
cast:
  media_player:
  - host: <IP_ADDRESS>
    port: 42625
    name: My Chromecast Audio Group

Checklist:

[x] The code change is tested and works locally.
[x] Local tests pass with tox. Your PR cannot be merged unless tests pass

If user exposed functionality or configuration variables are added/changed:

[ ] Documentation added/updated in home-assistant.github.io

If the code communicates with devices, web services, or third-party tools:

[x] New dependencies have been added to the REQUIREMENTS variable (example).
[ ] New dependencies are only imported inside functions that use them (example).
[x] New or updated dependencies have been added to requirements_all.txt by running script/gen_requirements_all.py.
[x] New files were added to .coveragerc.

If the code does not interact with devices:

[x] Tests have been added to verify that the new code works.

Documentation PR: home-assistant/home-assistant.io#6070

@Censored3 You should update the fist post with that link :)
I makes the review prosess easier for the reviewer when all info are in the expected place :)
Pull request in home-assistant.github.io with documentation (if applicable): home-assistant/home-assistant.github.io#<home-assistant.github.io PR number goes here>

@ludeeus Completely looked over that... Thx for the hint, I've updated the OP

Looked into it further, and realized the schema I was looking at, was in fact the schema for the deprecated style config. I added the default port there as well.
In fact, the new style config had no schema at all; I added one with a default for the port key. Also I moved the constants to a separate file.

Rebased on latest dev & incorporated reviews.

Tests are failing.

Tests are failing.

Yep, I just resubmitted, but could you please verify my change in testing is appropriate? I'm not entirely sure.
tests/components/media_player/test_cast.py @ 445

Please don't squash commits after review has started. Squashing makes it hard to follow the changes. We will squash commits when we merge.

I'll keep that in mind about not squashing commits :-)
So, everything should be okay now.
Initially, I didn't want to touch the deprecated platform media_player.cast, because, well, it's deprecated and it seems to be badly written. Don't remember how I ended up touching it anyway tbh.
Adding the default port to the schema in the platform isn't enough to make it work, I guess because it's a PLATFORM_SCHEMA and not a CONFIG_SCHEMA, which brings me back to the initial remark by @balloob, requiring a semi-hardcoded reference to the default port.
I added it again anyway, because well, the platform is deprecated anyway, and it's done the same way for the ignore_cec option. I guess the most important thing is that the cast component is completely up to standards.

The problem is that the tests are not written correctly. We should always set up the media_player component and pass the platform config. Change this in async_cast_setup.

@MartinHjelmare Regarding your statement about mocking async_add_entities:
I've gotten a step further by patching it in the HA core in async_setup_cast, but I just wanted to check with you if this is 'allowed'.
    PLATFORM_CONFIG = {'media_player': {'platform': 'cast'}}

    async def async_setup_cast(hass, config=None, discovery_info=None):
        if not config:
            config = PLATFORM_CONFIG
        else:
            config = PLATFORM_CONFIG['media_player'].update(config)

        with patch('homeassistant.helpers.entity_platform.EntityPlatform.'
                   '_async_schedule_add_entities', new=Mock()) \
                as add_entities:
            await async_setup_component(hass, 'media_player', config)
            await hass.async_block_till_done()

If so I just need to handle the discovery tests...

I don't think we should mock parts of the core. It's better to let the core add the entity, and then check the state of the entity.

I think that we should close this PR. It's adding even more permutations of how it is configured on top of a codebase that really needs cleanup just to solve a rare edge case created by a non-supported configuration by Cast.


ipyparallel: use Client.wait_for_engines(...)

Updated to 7.0.0a3
Contributor Checklist:

[ ] I have added or updated my entry in the creators.json file
[ ] I have added a changelog entry for my contribution
[ ] I have added/updated documentation for all user-facing changes
[ ] I have added/updated test cases
[ ] I have included the rebuilt production build of the client (only if changes were made to the GUI)

Reviewer Checklist:

[ ] /azp run libertem.libertem-data passed

/azp run libertem.libertem-data

/azp run libertem.libertem-data


Azure Web App deployment from .zip fails after successfully deploying the content

We are deploying a .zip file to an Azure Web App via TeamCity using the following Powershell script (variable values not included):
    az webapp deploy `
        --resource-group $resourceGroup `
        --name $appServiceName `
        --slot $deploymentSlot `
        --src-path $zipPath `
        --target-path $targetPath `
        --type zip `
        --clean true `
        --restart true `
        --async false

Until today, the script has been used successfully on all our environments.
Today, the script successfully uploads the .zip content, but it then reports a 400 error with no details, i.e. ERROR: An error occured during deployment. Status Code: 400, Details:. This results in the App Service not restarting, and our build pipeline failing at this step. If I check the deployment logs, I see a failing step of:
Deployment Failed. deployer = OneDeploy deploymentPath = OneDeploy

Note that the only difference between a successful and failing deployment is the last line. We experience some errors (shown by Criag George below) with generating the deployment script even on a successful deployment.
Possibilities we've exhausted

It's not strictly to do with the App Service plan, as this issue occurs when pushing to two different App Services which are on different App Service plans.
It's not strictly to do with what we're deploying or the deployment script, as we're able to deploy the same content with the same deployment script to a different set of App Services.

Kudu versions
When accessing the Kudu site via Advanced Tools, we found that the failing deployments had a Kudu version of 20240118.8 while our successful ones all used 1.0.07.
We have tried manually setting KUDU_BUILD_VERSION to 10.0.7 before re-running the failing builds, but this has no effect.

For a bit more context, the full deployment log is as follows...
2024-01-23T22:49:13  Fetching changes.
2024-01-23T22:49:13    Cleaning up temp folders from previous zip deployments and extracting pushed zip file /tmp/zipdeploy/aa82b94f-f9da-4dc4-98e0-af2cf315a764.zip (43.30 MB) to /tmp/zipdeploy/extracted
2024-01-23T22:49:26  Updating submodules.
2024-01-23T22:49:26  Preparing deployment for commit id 'c03f8fec-4'.
2024-01-23T22:49:26  PreDeployment: context.CleanOutputPath False
2024-01-23T22:49:26  PreDeployment: context.OutputPath /home/site/wwwroot
2024-01-23T22:49:26  Running build. Project type: OneDeploy
2024-01-23T22:49:26  Copying the manifest
2024-01-23T22:49:27  Clean deploying to /home/site/wwwroot
2024-01-23T22:49:27  Generating deployment script.
2024-01-23T22:49:27    Using the following command to generate deployment script: 'azure site deploymentscript -y --no-dot-deployment -r "/tmp/zipdeploy/extracted" -o "/home/site/deployments/tools" --basic --sitePath "/tmp/zipdeploy/extracted"'.
2024-01-23T22:49:27    An error occurred trying to start process '/opt/Kudu/Scripts/starter.sh' with working directory '/tmp/zipdeploy/extracted'. No such file or directory
2024-01-23T22:49:27    One or more errors occurred. (An error occurred trying to start process '/opt/Kudu/Scripts/starter.sh' with working directory '/tmp/zipdeploy/extracted'. No such file or directory)
2024-01-23T22:49:27    An error occurred trying to start process '/opt/Kudu/Scripts/starter.sh' with working directory '/tmp/zipdeploy/extracted'. No such file or directory
2024-01-23T22:49:27
2024-01-23T22:49:28  Deployment Failed. deployer = OneDeploy deploymentPath = OneDeploy

As noted by @YakaryBovine we've noticed that the errors around not finding starter.sh are included in successful deployments as well and have been for some time once we review historical deployment logs.

We've now realized that we posted this on the Github Action page, which we're not using.
We've also found a workaround for the issue by moving from unzipping to running from a zip as per https://learn.microsoft.com/en-us/azure/app-service/deploy-run-package


request to upload maven repository

I think this library is useful. Could you upload it to the Maven Repository so that it can be used in Clojure?

Yeah, I can do that. I'm kinda surprised I didn't already...

As I thought: https://repo1.maven.org/maven2/tel/schich/aws-s3-post-object-presigner/0.1.1/

https://github.com/pschichtel/aws-s3-post-object-presigner/commit/0662980804939163c368b8704d8b987e7d4b98cd adds a banner showing the latest version in maven central and links to the artifact.

I appreciate it, thank you!

すばらしいです。


Move several .txt files to conf directory

Fixes #11
Following @tseemann suggestion to move .txt files out of bin directory.

I've got some more comprehensive changes in #19 .

Nice work @dfornika :- thank you


Don't run twice on same directory

When we manage script in incron detection, we get a loop.
Could be nice to preserve a directory when is yet in process

Sorry to resurrect this old topic, but how do I stop it running if we did run it twice in the same directory and now it's keep saying "...yet in progress".


Fix the style of "Example 6"

Should be consistent with that of "Example 5".

@zhiliangxu : Thanks for your contribution! The author, @srinia, has been notified to review your proposed change.

Merging formatting fix.


Added my blog to instances of quickblog.

Please answer the following questions and leave the below in as part of your PR.

[x] This PR corresponds to an issue with a clear problem statement.

Says to create a PR to add your blog here

[ ] I have updated the CHANGELOG.md file with a description of the addressed issue.

Thx for the cool software!

Thanks!


MacOS: wheel built with static linkage and hidden visibility.

To make sure that .global_init doesn't change the visibility of symbols.


updated go-tools to v.0.7.0

Signed-off-by: Felipe Schulz<EMAIL_ADDRESS>

/brig run

Superseded by #38


Change RPC method name

:tada: This PR is included in version 1.0.0 :tada:
Your semantic-release bot :package::rocket:


UI: Add check boxes, tagging, and toolbar bar buttons Orchestration Templates list views

@mzazrivec
List view check boxes
When testing PR #1919 I noticed we don't have any check boxes in the list views.  We should have these to allow one or more to be selected, then add a toolbar with Add/Edit/Copy/Remove/etc buttons.
Tagging
Need the Policy/Tag button on the list view and summary screen (similar to other screens).  When a list of templates is shown in list views or drop down lists, they should be filtered by the user's tags.

@h-kataria Be sure to address #2089 when deleting from the list views . . . need to return message with counts of successful deletes and how many were read-only and not deleted.


JLine3 Signal Handling

I am working on a CLI Application based on Quarkus and Picocli using JLINE3.
One command forks another application / shell script which uses "trap" to react on system signals.
Once the application is forked i can use my CLI Application normally and everything works as expected, but when i use 'ctrl-c' to e.g. abort the current line the signal is "trapped" by my forked application and it terminates.
I tried implementing signal handling for the terminal as documented here https://github.com/jline/jline3/wiki/Terminals#signal-support or even directly implementing sun.misc.SignalHandler. But none of my ideas worked - nothing ever hit my signal handler.
I also tried to override the keybinding ctrl-c to a custom widget - but that also failed to give the result i want.
The forked script terminates and i get a UserInterruptException from the LineReader - afterwards.
I started of with this demo https://github.com/remkop/picocli/tree/main/picocli-shell-jline3

Sorry, this is outside of my area of expertise.
This sounds like the JLine maintainers may be better positioned to help. Can you raise this in the JLine project?

@remkop  thx for the reply - i will raise a ticket there as well.


Tag 3.12.0 Breaks CI

I'm running Danger Swift on Bitrise with the command swift run danger-swift ci.  Starting with tag 3.12.0 my danger step is throwing the following error:
error: multiple products named 'DangerDeps' in: 'git', 'swift'
error: multiple targets named 'Danger-Swift' in: 'git', 'swift'

Setting the version to 3.11.1 in Package.swift resolved the issue.

Can you please share your Package.swift?

Good call, I had a naming clash on the product with DangerDep. I changed that and now I' back in business. Below is what it was before changing...
// swift-tools-version:5.2
import PackageDescription

let package = Package(
    name: "MobileTools",
    products: [
        .library(name: "DangerDeps", type: .dynamic, targets: ["Danger-Swift"])
    ],
    dependencies: [
        .package(name: "danger-swift", url: "git@github.com:danger/swift.git", .exact("3.11.1"))
    ],
    targets: [
        // This is just an arbitrary Swift file in the app, that has
        // no dependencies outside of Foundation, the dependencies section
        .target(name: "Danger-Swift", dependencies: [
            .product(name: "Danger", package: "danger-swift")])
    ]
)


remove nvidia drivers

Please don't remove nvidia drivers. It appears that the latest versions 535.104.05, Steam in big picture mode runs very well with 2 caveats:

it runs super well if started in big picture mode, and seems to get progressively worse only if switching to desktop style UI and back to BP
There is a minor glitch when showing left settings bar (desktop background shows briefly)

I know nvidia is a PITA because of certain things but they are definitely improving.


Migration documentation for backend.run

What is the expected feature or enhancement?
Documentation detailing how to migrate code with backend.run in qiskit-ibm-provider to qiskit-ibm-runtime.
Acceptance criteria

I'll include a link to this from the IBM Cloud docs.  I'd be happy to help with copy edits!


SNAPSHOT availability

hi @hekonsek,
can we provide daily SNAPSHOT to maven central ?
it could be useful to accelerate integration and test process
best regards,

The project is mvn deploy ready, but I need to have a credentials to push snapshots to sonatype repos. Any idea have to add deploy step to the Travis CI process without exposing the password to the sonatype account?

@hekonsek I have got an internal server at home,
we could use it to deploy the daily SNAPSHOT

Yay! Can you create the Sonatype Jira account? I'll ask for permissions for you.

Hi @gautric. What was your Sonatype account name again? :)

the same "gautric" ;-)

I've just requested the deploy privileges for you :) .

You should be able to perform the releases now. Can you give it a try? And if everything works as expected, can you set up the daily SNAPSHOT builds on your home box?

I have granted you rights to deploy to the io.rhiot at Sonatype.

I have added snapshots deployments to Travis CI.


Create dark mode

Describe the feature you'd like
It would be great if there is dark mode feature in app as well
Additional context*

Would you like to work on the issue?

[x] Yes
[ ] No
Other:

I am planning to use DayNight theme of material theme
Day Night Theme
@iamareebjamal sir ???

@rishabh-997 it's very difficult to maintain dark mode and translations

Not a priority

No need, out of scope in this project. Therefore closing it.


Inconsistency between documentation and the graph

The documentation says it is 100,000 seconds (1667 minutes, or27 hours), whereas the graph shows 100,000 minutes (1666 hours, or 69 days)

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

ID: deaa9e33-9807-0d73-08f9-8856f3629d35
Version Independent ID: 0479ea99-64a0-4bdc-9bc7-1a01b36f28ea
Content: Azure SQL Database free offer - Azure SQL Database
Content Source: azure-sql/database/free-offer.md
Service: sql-database
Sub-service: service-overview
GitHub Login: @NilsPohlmann
Microsoft Alias: nilsp

Hi @edokan ,
Thanks for sharing the feedback. We will look into this and update as appropriate.
Hi @NilsPohlmann,
Could you please look into this. Thanks

#assign:WilliamDAssafMSFT

@edokan  nice catch! We'll get this fixed in the docs ASAP. Thanks for taking the time to provide this feedback!

#please-close