Video Conference Mute - Add option to have frozen video as overlay image

Description of the new feature / enhancement
Currently it's possible to specify an overlay image file when 'muting' the video. It would be great to have an option to simply use a snapshot from the unmuted video and display this.
Scenario when this would be used?
Sometimes in conference video calls one gets interrupted by someone approaching you at your desk, you might need to answer a quick question. The movements resulting from this create distraction for the other participants, so you might mute the video. Yet that creates a distraction, too.
Simply 'freezing' the current video image creates the least visible disturbance for others on the call, as you can sneak out and in rather 'quietly' without creating much visual disturbance.

VCM is in maintenance mode and we will only resolve a small amount of adjustments from the core team moving forward, please see #21473.  We will accept community contributions to resolve issues


Add flip/mirror option to GridMap

Godot version:
3.1.1.stable.official
Issue description:
To save having to have identical but mirrored meshes in a GridMap I propose a flip/mirror option is added to GridMaps much like there is with TileMaps
Currently a GridMaps cell contents looks like this:
union Cell {
	struct {
		unsigned int item : 16;
		unsigned int rot : 5;
		unsigned int layer : 8;
	};
	uint32_t cell;

	Cell() {
		item = 0;
		rot = 0;
		layer = 0;
	}
};

I propose we change it to the following:
union Cell {
	struct {
		unsigned int item : 16;
		unsigned int rot : 5;
		unsigned int layer : 8;
		bool mirrored_x : 1;
		bool mirrored_y : 1;
		bool mirrored_z : 1;
	};
	uint32_t cell;

	Cell() {
		item = 0;
		rot = 0;
		layer = 0;
		mirrored_x = false;
		mirrored_y = false;
		mirrored_z = false;
	}
};

This however is worth some discussion as this will fill the uint32_t and remove any room for new features down the line. It would also need to be discussed if the mirroring would occur before or after the rotation

I would like to offer a different approach to mirror/flip in GridMap. Currently the orientation is saved as an integer ranging from 0 to 23. Every mirrored possibilty can be expressed by flipping only one of the axis, as flipping two axes is the same as a rotation of 180 degrees. It is therefore possible to express flipped bases either as a flip and a base rotation or by directly including flipped bases in the orientation integer. Either way, only one additional bit is needed.
Cells would therefore either look like this:
union Cell {
	struct {
		unsigned int item : 16;
		unsigned int rot : 5;
		unsigned int layer : 8;
		bool mirrored : 1;
	};
	uint32_t cell;

	Cell() {
		item = 0;
		rot = 0;
		layer = 0;
		mirrored = false;
	}
};

or like this:
union Cell {
	struct {
		unsigned int item : 16;
		unsigned int rot : 6;
		unsigned int layer : 8;
	};
	uint32_t cell;

	Cell() {
		item = 0;
		rot = 0;
		layer = 0;
	}
};

For the second option, the methods Basis::get_orthogonal_index() and Basis::set_orthogonal_index() have to be rewritten. I did that as a proof of concept over here.
Those changes unfortunately break backwards compatibility, but it allows for the calculation of the orientation index from the basis instead of looking it up in an array.

I definitely prefer this idea, good spot on the mirror optimisation to one bit.
I'm not sure if we want to break compatibility here but removing that ugly lookup table is definitely worth considering
How should we go about storing the flipped meshes? I guess we can either add all the meshes flipped when the Meshlibrary is mirrored or we could create them as needed with MeshLibrary.create_item(id). We could also just create them on the stack

Based on your pull request #31361, I took the liberty to implement the version with 6 bits for the item orientation in my branch over here. I kept the ugly lookup table for now to keep backwards compatibility, but the Basis methods could be exchanged for the ones I linked earlier.
Like your version also, this has a lighting issue when mirrored objects are placed in the GridMap. But since it does not change the method signature of GridMap::set_cell_item, the method binding does still work.
What do you mean by storing the flipped meshes? Since the information about mirrored cells is stored within the cell data, there should be no need to include more items in the MeshLibrary.

Thanks @Varicus, this is great. I'll give it a try when I get back from the day job. This looks very clean though. Not sure if someone will object to having mirror information baked into the rotation parameter but as far as I'm aware those Basis:: commands are only ever used by the GridMap anyway.
What I mean by flipped meshes is that the normals need to be inverted when the mesh is mirrored. There's a fairly similar example of this https://github.com/godotengine/godot/commit/9f2d54cd6827e39799b85bf306d0fc98ce5941bd. We could do this flipping in the MeshLibrary itself and adding it back into it or we could dynamically do it as required
We could do it when we construct the GridMap and potentially keep any on the stack in case they are reused in an octant. I imagine this will need to be done in GridMap::_octant_update

This would be interesting for me as well. The proposed solution here would be nice.

Feature and improvement proposals for the Godot Engine are now being discussed and reviewed in a dedicated Godot Improvement Proposals (GIP) (godotengine/godot-proposals) issue tracker. The GIP tracker has a detailed issue template designed so that proposals include all the relevant information to start a productive discussion and help the community assess the validity of the proposal for the engine.
The main (godotengine/godot) tracker is now solely dedicated to bug reports and Pull Requests, enabling contributors to have a better focus on bug fixing work. Therefore, we are now closing all older feature proposals on the main issue tracker.
If you are interested in this feature proposal, please open a new proposal on the GIP tracker following the given issue template (after checking that it doesn't exist already). Be sure to reference this closed issue if it includes any relevant discussion (which you are also encouraged to summarize in the new proposal). Thanks in advance!


PoC: Measure avg request time for IOpipe API

@pselle love your feedback here. Specifically how we might want to use AVG_API_TIMENS... we could automatically offset the remaining time in ms, the duration, etc... or do that math somewhere during or after ingestion.
Signed-off-by: Eric Windisch<EMAIL_ADDRESS>

Partial resolution for #85

Coverage decreased (-85.2%) to 3.96% when pulling 18150eb376c74e50caf4d45804723a4c962a97ee on ewindisch:measure-api-req into 44e75648d5c9be1195004c290afd8782dab97cd0 on iopipe:master.

(@pselle - thx - I'll fix the build -- this is more of a design review ATM)

Coverage decreased (-85.2%) to 3.96% when pulling 99e6767a1d9002ca29394e1a80046fe689035026 on ewindisch:measure-api-req into 44e75648d5c9be1195004c290afd8782dab97cd0 on iopipe:master.

To be considered for rebasing and reopening later.


Implement IBL

should be computed in material pass ?
should be computed in scene setup pass ?

Ibl according to Epic's game split sum approximation is working


process.cwd() behaviour

It's not a bug, it's a feature!
If I start multiple instances of atom, process.cwd() is the same for all instances (matches the cwd of the first instance started). Even if that one is closed process.cwd() continues to be the cwd of the first instance.
Produces lots of funny bugs if I don't use absolute paths with fs for example.

process.cwd() always return '/' for me

Is this bug fixed?

With Atom 1.19.0 on Windows 10, I see the same behavior as described in the issue body.  On macOS 10.12.6 and Atom 1.19.0, process.cwd() seems to always return / as you mentioned @stevemao.


05/06/fea amino acid properties

This is a small extension to the amino acid representation / handling, a severely neglected corner of our basic representation, that puts the letter e.g. 'K' , symbolic Lys and trigram "Lys" forms on same footing and allows interconversion.  Also pulls in some common properties and references.  I keep on rewriting standalone versions of this all the time, so contributing back something more permanent

Nice improvement, will merge after tweaks.

@chrismacklin , i have addressed all your comments and updated this PR. I think this PR would be easier to be merged before the migration to .net core.


PUT

Implement PUT method

https://www.npmjs.com/package/@hectorjs/stub-backend
Put method is available
Execute  hjs --help for more information


Trying to capture authorisation code to log-in to back-end server

This is my first time using OAuth, so I may be trying to do the wrong thing entirely.
I have configured the latest commit to use Microsoft Identity (Azure, Entra, etc.) and it gets as far as closing the browser having accepted my credentials the first time and 'Continue' for second and subsequent attempts. However, it never updates the view to show that it is logged-in. I have put breakpoints in everywhere I can think of and can't find any response to the App.
I have tried other apps, specifically tied to MSAL, but I would prefer to use this repo as it would seem to offer a broader range of services to be configured - assuming I get MSAL working first!
I would be very grateful for any help.

Mine is a tricky code sample due to its use of iOS universal links to receive the login response. I expect you are having problems returning to your app because of that.
SIMPLER SOLUTION
If you just want to login to Microsoft using AppAuth libraries, you might start with this simpler code sample that we provided at Curity:

Run the app in Xcode
Update this configuration file with your Entra ID settings

MORE COMPLEX SOLUTION
If you really want to get logins working using universal links, this page has some further info on how to make universal links work for development, though it is a little unpleasant.
SECURITY LIBRARIES
I tend to avoid vendor-specific libraries. Your app runs a code flow and users should then be able to authenticate in many ways, depending on what the authorization server supports. It's not that hard to manually implement a code flow.

Thank you very much for your detailed reply. I will work through your suggestions and get back to you.

I am grateful for both your apps as they have taught me a huge amount about the subject that I wouldn't have gained so quickly in other ways.


wrong results espected @ Sum All Primes algorithm

Challenge Name

SUM ALL PRIMES
https://www.freecodecamp.com/challenges/sum-all-primes#?solution=
function sumPrimes(num) {%0A var taco%3D[]%3B%0A %0A var bell%3D[]%3B%0A var bello%3D[]%3B%0A var idefix%3D0%3B%0A var x%3D0%3B%0A var t%3D0%3B%0A for (var i%3D0%3Bi<num-1%3Bi%2B%2B){%0A taco[i]%3Di%2B1%3B%2F%2Ftaco[0]%3D1%2C taco[1]%3D2%2C ... %2Ctaco[num-2]%3Dnum-1%0A }%0A for (var y%3Dnum-2%3By>%3D0%3By--){%0A%0A for (i%3Dy%3Bi>1%3Bi--){%0A if (taco[y]%25i%3D%3D%3D0){%0A bell[x]%3Dtaco[y]%3B%0A x%2B%2B%3B%0A }%0A }%0A %0A %0A }%0A for (i%3D0%3B i<bell.length-1%3B i%2B%2B){%0A if(bell[i]%3D%3D%3Dbell[i%2B1]){%0Abell.splice(i%2C1)%3B %0A }%0A }%0A for (i%3D0%3B i<bell.length-1%3B i%2B%2B){%0A if(bell[i]%3D%3D%3Dbell[i%2B1]){%0Abell.splice(i%2C1)%3B %0A }%0A }%0A %0A for (i%3D0%3B i<taco.length%3Bi%2B%2B){%0A for (var p%3D0%3B p<bell.length%3Bp%2B%2B){%2F%2F%0A if(bell[p]%3D%3D%3Dtaco[i]){%0A taco.splice(i%2C1)%3B%0A i%3Di-1%3B%0A }%0A }%0A }%0A taco.shift()%3B%0A for (i%3D0%3Bi<taco.length%3Bi%2B%2B){%0A idefix%3Didefix%2Btaco[i]%3B%0A }%0A %0A return idefix%2Bnum%3B%0A}%0A%0AsumPrimes(977)%3B%0A
Issue Description

Hey. I'm doing the 'Sum all Primes' algorithm challenge. The One after the 'Sum All Odd Fibonacci Numbers'.
The challenge is to sum all prime numbers up to a given number, including the given number in the sum.
For the number 10 you expect the result 17. But adding up all prime numbers up to and including 10 results in: 2+3+5+7+10=27. So this time you are not including the 10 in the sum.
The following expected result adds the given number on top of the sum of all prime numbers under it:
'sumPrimes(977) should return 73156' .
So there's no way to do this algorithm challenge right.
Either you do it including the provided number or not.

@zuzubi- You want to include prime numbers up to the given max number in the sum.
2+3+5+7=17 is the correct answer when looking for prime number up to 10, since 10 is not a prime number.
sumPrimes(977) should return 73156 is also correct because 977 happens to be prime number.


anic: runtime error: slice bounds out of range [:230812] with capacity 230807

What version of Go are you using (go version)?

$ go version
go version go1.16 linux/amd64

Does this issue reproduce with the latest release?
yes
What operating system and processor architecture are you using (go env)?
go env Output
$ go env
GOHOSTARCH="amd64"
GOHOSTOS="linux"

What did you do?
// include wav file header
func (p *G711WavPayloader) Payload(wav_data []byte) (rtp_payload [][]byte) {
	start := 0
	for i := 36; i < len(wav_data); i++ {
		if string(wav_data[i:i+4]) == "data" {
			start = i + 8
			break
		}
	}
	if start == 0 {
		fmt.Errorf("data ERROR")
		return rtp_payload
	}

	for index := start; index < len(wav_data); index += PCMAPayLoadLength {
		rtp_payload = append(rtp_payload, wav_data[index:index+PCMAPayLoadLength])
	}
	return rtp_payload
}

What did you expect to see?
obtain the payload correctly
What did you see instead?
anic: runtime error: slice bounds out of range [:230812] with capacity 230807

In version 14, this program can be executed correctly。This wav_data is a standard audio data for parsing。But In version 16，the returned variable rtp_payload seems that the maximum size is limited by default and leads to out of bounded


Always generate floors

This PR addresses an issue that I noticed regarding how foundation parsing should deal with missing elements.
Report Generator always generates floor rows, even if floor tag is missing, whereas the lack of walls and headers will result in no rows. This PR now emulates that behavior

 Extract/Load Foundation data


Update from Weblate

@bmarty There is a mistake, please check it after merging...

I reject because the new trad is buggy and I do not understand why the other commits come with thisPR


fix: improved the layout of the lower section of playground

Description

improved the lower section of the playground

Related issue(s)

#1346

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

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

Totals

Change from base Build<PHONE_NUMBER>:
0.0%

Covered Lines:
5247

Relevant Lines:
5549

💛  - Coveralls

Gonna follow up in https://github.com/asyncapi/modelina/issues/1346

@sambhavgupta0705 just converting this PR to a draft until you are ready for it to be reviewed 🙂

cc: @jonaslagoni

Ohh I didn't know we can have multiple models .
We can try making it as a dropdown menu. I will look into it today

@jonaslagoni for now we can go with this layout

@jonaslagoni

Sorry for the delay @sambhavgupta0705. Looks good to me +1 Can't wait for the rework options fire

Yeahh Jonas ,will be sharing a design soon.


Make Free Text as Parent for Redaction Annotations and Handle resize

Title of ticket:
Description
This is a technical task to find if we can bring the sections Free text as parent to redaction annotations so that the existing search functionality works fine without any customization.
Dependencies
Are there any dependencies?
DOD

[x] Swap the free text and redaction while calling the groupAnnotations()
[x] Save the updated redaction annotation with "inreplyto" and "replyType" attributes
[x] check edit, delete functionalities and make necessary changes
[x] resize of redaction should update the position of free text (sections)
[x] for QA, test all functionalities related to redactions (add, edit, delete, search, other annotations, retest #3779)

@divyav-aot - tested the various features/scenarios, and previous functionality all appears to work. One item I noticed, which we didn't capture, is when users move redactions across pages. It appears  dragging a redaction from one page to another causes a variety of bugs related to the redaction.
You can view EDU-2023-22012 in Test-Marshal to see the issues (it's a bit chaotic). It appears moving redactions to other pages may break the functionality where text annotations (FOIPPA section numbers) are grouped with their related redaction boxes. In addition, it prompts a user to select another FOIPPA section number.
I think we may need a ticket to address moving redactions across pages, but this wasn't previous functionality that worked, nor was it a user story. So for the purposes of this, I'll close this ticket.

@divyav-aot - Also noticed I'm unable to comment and/or reply to annotations that I have created. You are able to add annotations and shapes, but when you click on them, the comment and/or reply text field is selected, and enter text, the text is not being entered.
I can you show you tomorrow, but may be a separate ticket too.

Issue with changing redaction layers, where it breaks the 'grouping' of redactions in the Comments pane. #4328

@KyEggleston Dev team has found a few issues related to redaction layer updates and working on the same. We will let you know once it is pushed to test-marshal.


Copy edit - remove one sentence from the methodology & data page

Describe the bug
We need to strike the sentence flagged in the living copy document.
To Reproduce
Steps to reproduce the behavior:

Go to '...'
Click on '....'
Scroll down to '....'
See error

Expected behavior
The sentence should not be there.
Screenshots
If applicable, add screenshots to help explain your problem.
Desktop (please complete the following information):

OS: [e.g. iOS]
Browser [e.g. chrome, safari]
Version [e.g. 22]

Smartphone (please complete the following information):

Device: [e.g. iPhone6]
OS: [e.g. iOS8.1]
Browser [e.g. stock browser, safari]
Version [e.g. 22]

Additional context
See kameron.

yes you found the missing (golden) ticket @vim-usds :lollipop:


periodic server restarts in [LocalManager::pollMgmtProcessServer]

ATS: 6.2.0
OS: CentOS 7 Linux x86_64 #1 SMP Sun Sep 18 13:04:29 UTC 2016 3.10.0-327.36.1.el7.x86_64
ATS as reverse proxy, remap to 5 origin servers, only static content, RAM-disk based cache, traffic (out) at  1-5Gbps.
A couple times every day (!) server is restarted with the following logs in manager.log
[Jun 15 04:43:33.613] Manager {0x7f5154d3d880} FATAL: [LocalManager::pollMgmtProcessServer] Error in read (errno: 104)
[Jun 15 04:43:33.613] Manager {0x7f5154d3d880} NOTE: [LocalManager::mgmtShutdown] Executing shutdown request.
[Jun 15 04:43:33.613] Manager {0x7f5154d3d880} NOTE: [LocalManager::processShutdown] Executing process shutdown request.
[Jun 15 04:43:33.613] Manager {0x7f5154d3d880} ERROR: [LocalManager::sendMgmtMsgToProcesses] Error writing message
[Jun 15 04:43:33.613] Manager {0x7f5154d3d880} ERROR: <MgmtUtils.cc:289 (mgmt_elog)>  (last system error 32: Broken pipe)
[Jun 15 04:43:33.635] {0x7f84ba80d880} STATUS: opened /opt/trafficserver/var/logs/manager.log
[Jun 15 04:43:33.635] {0x7f84ba80d880} NOTE: <DiagsConfig.cc:141 (reconfigure_diags)> updated diags config
[Jun 15 04:43:33.637] Manager {0x7f84ba80d880} NOTE: [ClusterCom::ClusterCom] Node running on OS: 'Linux' Release: '3.10.0-327.36.1.el7.x86_64'
[Jun 15 04:43:33.638] Manager {0x7f84ba80d880} NOTE: [LocalManager::listenForProxy] Listening on port: 80 (IPv4)
[Jun 15 04:43:33.638] Manager {0x7f84ba80d880} NOTE: [TrafficManager] Setup complete
[Jun 15 04:43:34.652] Manager {0x7f84ba80d880} NOTE: [LocalManager::startProxy] Launching ts process
[Jun 15 04:43:34.677] Manager {0x7f84ba80d880} NOTE: [LocalManager::pollMgmtProcessServer] New process connecting fd '16'
[Jun 15 04:43:34.677] Manager {0x7f84ba80d880} NOTE: [Alarms::signalAlarm] Server Process born

In /var/log/messages
Jun 15 04:43:33 ucs6 traffic_manager[9842]: {0x7f5154d3d880} FATAL: [LocalManager::pollMgmtProcessServer] Error in read (errno: 104)
Jun 15 04:43:33 ucs6 traffic_manager[9842]: {0x7f5154d3d880} ERROR: [LocalManager::sendMgmtMsgToProcesses] Error writing message
Jun 15 04:43:33 ucs6 traffic_manager[9842]: {0x7f5154d3d880} ERROR: <MgmtUtils.cc:289 (mgmt_elog)>  (last system error 32: Broken pipe)
Jun 15 04:43:33 ucs6 traffic_cop[6261]: cop received child status signal [9842 256]
Jun 15 04:43:33 ucs6 traffic_cop[6261]: traffic_manager not running, making sure traffic_server is dead
Jun 15 04:43:33 ucs6 traffic_cop[6261]: spawning traffic_manager
Jun 15 04:43:33 ucs6 traffic_manager[7727]: NOTE: --- Manager Starting ---
Jun 15 04:43:33 ucs6 traffic_manager[7727]: NOTE: Manager Version: Apache Traffic Server - traffic_manager - 6.2.0 - (build # 082717 on Aug 27 2016 at 17:41:04)
Jun 15 04:43:33 ucs6 traffic_manager[7727]: NOTE: RLIMIT_NOFILE(7):cur(256000),max(256000)
Jun 15 04:43:38 ucs6 traffic_server[8872]: NOTE: --- traffic_server Starting ---
Jun 15 04:43:38 ucs6 traffic_server[8872]: NOTE: traffic_server Version: Apache Traffic Server - traffic_server - 6.2.0 - (build # 082717 on Aug 27 2016 at 17:40:43)

This seems to have started occuring when traffic grew. Does not happen on our other instance of ATS 6.2.0 serving much lower trarfic.
Please advise what logs could be turned on to help diagnose the problem.
Please note - this is PROD setup, recompiling with debugs, core dumps and longer downtimes are not an option. We could set up a test instance and try to reproduce.
output of traffic_crashlog attached
crash-2017-06-15-122916.zip

Does this happen when you are restarting the server?  It look like the server is coming up and then traffic_cop can't speak to traffic_manager.  I did some searching and found that when someone moved from 6.2.0 to 7.0.0 it resolved this issue.  (http://apache-traffic-server.24303.n7.nabble.com/Problem-starting-traffic-server-td2760.html)
Also, you might want to try to increasing proxy.config.cop.init_sleep_time (https://docs.trafficserver.apache.org/en/latest/admin-guide/files/records.config.en.html#proxy-config-cop-init-sleep-time).

No, this happens after server has been in operation for hours. First line indicating the problem is
FATAL: [LocalManager::pollMgmtProcessServer] Error in read (errno: 104)
after that server is restarted and then it goes back to working again for some time.

Any suggestion on what we can do to debug that?

If this is still an issue in 7 or 8 please reopen.


fix bootstrap flag inversion

Bootstrap = true was not bootstrapping

Hi thanks for fixing the bootstrap flag. Regarding CNI
What do you think about these three lines
https://developer.hashicorp.com/nomad/docs/integrations/consul-connect?ref=karan-sharma#cni-plugins
curl -L -o cni-plugins.tgz "https://github.com/containernetworking/plugins/releases/download/v1.0.0/cni-plugins-linux-$( [ $(uname -m) = aarch64 ] && echo arm64 || echo amd64)"-v1.0.0.tgz
sudo mkdir -p /opt/cni/bin
sudo tar -C /opt/cni/bin -xzf cni-plugins.tgz

Plus the variable you used for configuring the version.

https://github.com/wenzel-felix/terraform-hetzner-nomad-consul-module/pull/43


Valid value between null values is not rendered

Valid value between null values is not rendered
Codepen
this codepen
example:
 [null],    [valor],    [null],    [null],

Explanation

What is the behavior you expect?
I expect it to render the line that contains value on the y-axis, even if it is between two null values

What is happening instead?
Does not render, just passing the mouse.

What error message are you getting?
No message

As tested on v3.46.0, this is fixed


Fix CI

Codecov Report
Patch coverage: 95.45% and project coverage change: -0.79 :warning:

Comparison is base (20662a9) 89.76% compared to head (95acf30) 88.97%.

:mega: This organization is not using Codecov’s GitHub App Integration. We recommend you install it so Codecov can continue to function properly for your repositories. Learn more
Additional details and impacted files
@@            Coverage Diff             @@
##             main      #19      +/-   ##
==========================================
- Coverage   89.76%   88.97%   -0.79%
==========================================
  Files           4        3       -1
  Lines         127      127
==========================================
- Hits          114      113       -1
- Misses         13       14       +1

Impacted Files
Coverage Δ

src/download_metadata.jl
91.52% <85.71%> (ø)

src/download_filings.jl
85.48% <100.00%> (-1.41%)
:arrow_down:

src/main_index.jl
100.00% <100.00%> (ø)

src/ScrapeSEC.jl

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

:umbrella: View full report at Codecov.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.


textTospeech grpc throws error (both v1 and v1beta1)

I am trying to use gRPC with google text to speech API. It failed with following error( both v1 and v1beta1). Any help?
RPC target method can't be resolved.12

My apologies. Used wrong endpoint.


cmd/rm: Add rm -r to delete a dir

Add rm -r to delete a directory
Modify list to avoid attr name conflict ( key to prefix)

This PR will be substituted by #132


finder based css selector creation

This is insanely awesome. It is still just a proof of concept but it is just too good to be true.
Basically this test stops on that Click and you have 5 seconds to move your mouse to the element you want to click:
*** Settings ***
Library   Browser  enable_presenter_mode=true  timeout=30s

*** Test Cases ***
Example Test
   new browser  headless=false
   New Page  https://yourawesomesite.com
   Click  __DETECT__
   Sleep  5s
   Take Screenshot

👍


Sideloaded image fails to unpack in a deployment or a run

I may have exhausted my options asking for help on the web, so I am converting my issue to a bug report. Interestingly the core error message is hardly evident in web searches, which seems odd to me, since I think I am doing something very trivial.
I am new to K8S and MicroK8S. I have selected MicroK8S as I believed it would simplify some basics (and, in the case of the K8S dashboard, I think it did). I have a cluster of three 16GB Tiny PCs on a LAN: all are running Ubuntu Server + MicroK8S, everything looks healthy, HA mode is automatically on.
Here is my version of MicroK8S: MicroK8s v1.26.4 revision 5219.
I created a tarball of a local Docker image, thus:
docker save k8s-workload > k8s-workload.docker.tar

I then side-loaded it to all three nodes (which was sent to all nodes without error):
microk8s images import < k8s-workload.docker.tar

This image works in Docker on the leader node, so it seems to be valid (whether it is an OSI image suitable for MicroK8S I cannot say, but if it had a problem I would expect images import to have reported it to me).
After much digging I get errors of this type (with a deployment):

Failed to pull image "k8s-workload": rpc error: code = NotFound desc = failed to pull and unpack image "docker.io/library/k8s-workload:latest": failed to unpack image on snapshotter overlayfs: unexpected media type text/html for sha256:e823...45c8: not found

Or if I try a run:

Error: failed to create containerd container: error unpacking image: unexpected media type text/html for sha256:1f2c...753e1: not found

Here is my status:
root@arran:/home/myuser# microk8s status
microk8s is running
high-availability: yes
  datastore master nodes: <IP_ADDRESS>:19001 <IP_ADDRESS>:19001 <IP_ADDRESS>:19001
  datastore standby nodes: none
addons:
  enabled:
    dashboard            # (core) The Kubernetes dashboard
    dns                  # (core) CoreDNS
    ha-cluster           # (core) Configure high availability on the current node
    helm                 # (core) Helm - the package manager for Kubernetes
    helm3                # (core) Helm 3 - the package manager for Kubernetes
    ingress              # (core) Ingress controller for external access
    metrics-server       # (core) K8s Metrics Server for API access to service metrics
  disabled:
    cert-manager         # (core) Cloud native certificate management
    community            # (core) The community addons repository
    gpu                  # (core) Automatic enablement of Nvidia CUDA
    host-access          # (core) Allow Pods connecting to Host services smoothly
    hostpath-storage     # (core) Storage class; allocates storage from host directory
    kube-ovn             # (core) An advanced network fabric for Kubernetes
    mayastor             # (core) OpenEBS MayaStor
    metallb              # (core) Loadbalancer for your Kubernetes cluster
    minio                # (core) MinIO object storage
    observability        # (core) A lightweight observability stack for logs, traces and metrics
    prometheus           # (core) Prometheus operator for monitoring and logging
    rbac                 # (core) Role-Based Access Control for authorisation
    registry             # (core) Private image registry exposed on localhost:32000
    storage              # (core) Alias to hostpath-storage add-on, deprecated

A couple of thoughts to stimulate fix suggestions. I have not tried these as I am not fond of shooting in the dark, given that the more random stuff I try, the more clean-up of my cluster I will have to do.

The registry is disabled by default, and I have not enabled it. I am strongly of the view that with the images having been side-loaded, they do not need to be pulled from anywhere. They are already in place.
Images were converted to a tarball using docker save. I could use docker export to export a container instead, though I'd rather not do that - I want a clean image, and not any runtime cruft accumulated by a locally run container on my dev machine.

Corrections to any of my assumptions are welcome.

OK, I have solved it. I don't know what went wrong, but I found the fix - one of the nodes had acquired a corrupted image in containerd, and by frustrating coincidence, that was the node selected by K8S to run the workload.
I have a high degree of confidence that the image was corrupted by MicroK8S (or something downstream, such as containerd) since the only way I could have imported it is via the microk8s command. I did try per-node image imports (via microk8s ctr image import tarball.tar) and once this was found to fix it, I used sha256sum to verify the local tarball. It was the same as the others.
In my Server Fault update, it can be seen that the faulty image had a wrong MIME type (text/html), a wrong checksum (sha256:5f76...a3aa), and a wrong size (218.4 KiB).
I'll happily help track down a bug if a committer would like to suggest some methods for investigation. However I suspect that the cause in this case is entirely lost to the ether.
I will leave this open so it is seen, but do please close if you wish.

Hi @halfer. That was an impressive job in debugging and documenting the issue! Thank you.
Before closing the issue, would it be possible to have an microk8s inspect tarball from the misbehaving node? Maybe we could find something in the logs.

Sure thing; there's no PII on these nodes, so it should be safe: inspection-report-20230614_172306.tar.gz. That is a snapshot from today.
For full disclosure, when running the inspection I get this error:

WARNING:  IPtables FORWARD policy is DROP. Consider enabling traffic forwarding with: sudo iptables -P FORWARD ACCEPT
The change can be made persistent with: sudo apt-get install iptables-persistent

But the tarball seems to still be produced.
I wouldn't know where to start looking in this impressive tarball, especially given its size when unpacked. But, it may help to know that the problem would have been caused around 7th June 2023, or perhaps a bit before, when I opened the Server Fault question.
(While the issue was frustrating, it has been great for my K8S learning process - lots of general debugging to get to this point!).

I've seen a similar issue, where sometimes the image I've pushed to microk8s is overwritten with text/html. I still don't really understand the conditions that trigger this to happen, but it seems to be happening a lot, especially on more recent versions of microk8s.

Just hit the same problem, but I'm not side-loading image.
MicroK8s v1.25.13 revision 5876

@barrettj12 @thwhk there are typically two reasons why this happens most of the time:

docker save a.tar, microk8s ctr image import a.tar might not work depending on the actual image that is built. this unfortunately is due to the OCI image formats and comes from containerd.
sometimes containerd will get back an HTTP 409 error instead of the image (hence the text/html type).

In both cases, importing the images exactly as shown in the docs, or dealing with image pull rate limits should help. If there is a particular image that keeps giving you trouble, please let us know and we can look into it further.

@neoaggelos thanks. I'm uploading locally built Juju controller images so I can bootstrap for development. The really strange thing is, sometimes the image is uploaded/pulled correctly, and I can bootstrap fine - but then later it is overwritten with text/html, even though I haven't pushed a new image to microk8s. Maybe it's something on my machine fiddling with the images, but I don't know what would be doing this.

For contrast, this is what happens when k3s can't find an image:
Failed to pull image "jujusolutions/jujud-operator:3.3-beta2.11": rpc error: code = NotFound desc = failed to pull and unpack image "docker.io/jujusolutions/jujud-operator:3.3-beta2.11": failed to resolve reference "docker.io/jujusolutions/jujud-operator:3.3-beta2.11": docker.io/jujusolutions/jujud-operator:3.3-beta2.11: not found

Versus microk8s which says "unexpected image type: text/html". So the microk8s images are somehow being overwritten with text/html.

I'm not a big fan of stale bots; I get why they're used, but this does not look like it has been solved. Is there any harm in keeping this open?


[FLINK-33795] Add a new config to forbid autoscale execution in the configured excluded periods

What is the purpose of the change
Hi, I'm new here, I use flink operator's autoscaling function in my project, this PR add a new config to forbid autoscale execution in the configured excluded periods so that we keep flink job unaffected by autoscaling's job restart behavior during this periods
Brief change log

A new config added

Verifying this change

This change added tests and can be verified as follows:

New tests testForbidPeriods and testMetricCollectionDuringForbidden added

Does this pull request potentially affect one of the following parts:

Dependencies (does it add or upgrade a dependency): (no)
The public API, i.e., is any changes to the CustomResourceDescriptors: (no)
Core observer or reconciler logic that is regularly executed: (no)

Documentation

Does this pull request introduce a new feature? (no)
If yes, how is the feature documented? (not applicable)

I think we should have a small discussion somewhere (here or the ML) about this feature. Why did you select this specific config syntax? Any alternatives?
cc @mxm

I think we should have a small discussion somewhere (here or the ML) about this feature. Why did you select this specific config syntax? Any alternatives?
cc @mxm

Thanks @flashJd! This is a useful feature. Let's discuss on the mailing list on the syntax for the exclude periods, as @gyfora suggested.

Thanks for the review, the specific config syntax is just a simple implementation for config forbidden periods in a day, it sounds reasonable  we would use some available standard for time spans and What about different times at different days of the week / month?
As I just subscribed to the flink dev mailing list, I can't receive the jira email associated with this pr which is sent yesterday and reply to it

Thanks @flashJd! Changes look great.

@mxm can you approval the workflow again, I've fixed the ci failure, thanks.

@gyfora @mxm by the way, I'd like to discuss the logic of scaling effectiveness evaluation with you.

Now it's controlled by two config scaling.effectiveness.detection.enabled and scaling.effectiveness.threshold and we evaluate the effectiveness under the condition last scaling is scale up and only refer to the last scaling effectiveness.
Image the following scenario: scale up double parallism first, then scale down to 0.8 parallism, then scale up double scale down 0.8, the effectiveness detection will be invalid in this scenario, even scale up is ineffecive, we'll continue scale up
Maybe we can add a new config like scaling.effectiveness.history.reference.num and set a default value, then we can evaluate based on the last scaling.effectiveness.history.reference.num scale up summaries.

Looking forward to your reply.

@gyfora @mxm by the way, I'd like to discuss the logic of scaling effectiveness evaluation with you.

Now it's controlled by two config scaling.effectiveness.detection.enabled and scaling.effectiveness.threshold and we evaluate the effectiveness under the condition last scaling is scale up and only refer to the last scaling effectiveness.
Image the following scenario: scale up double parallism first, then scale down to 0.8 parallism, then scale up double scale down 0.8, the effectiveness detection will be invalid in this scenario, even scale up is ineffecive, we'll continue scale up
Maybe we can add a new config like scaling.effectiveness.history.reference.num and set a default value, then we can evaluate based on the last scaling.effectiveness.history.reference.num scale up summaries.

Looking forward to your reply.

What yo you describe is an edge case we hadn't considered. We were more concerned about a continuous increase in parallelism. If there is any scale down we are currently assuming that the algorithm is not completely broken.


UI Update

UI Update for Additional fields
Add SplitPane (scrollable) in the PersonCard for showing Insurance field
Improve Button CSS
This is the current look of the application

Looks good! The button looks very user friendly now 👍


Option to override SetHealth method to scale with level

This is impossible due to floating-point precision errors, especially beyond 1.000 T.


Consider firstDayOfWeek of the current locale

The widget now considers the first day of the week in the current locale.

Sad thing this was never included.. But maybe I'll try building myself.. Maybe even merge that other open PR #5 as well..


Create an http library in our shared libs

There's definitely code that's shared between catalogue/storage-service/stacks-service.

It exists, we can continue to pull bits out as it's useful, but I'm not going to work on this any more imminently.


Write functions should handle invalid bool values properly

I don't think this is the right place. format is not a compiler intrinsic, it is a library function that should be able to assume that its argument's type invariants hold. You wouldn't expect format to debug dangling pointers either. This PR is essentially unittesting undefined behavior. It's also using __bool(0xFF) syntax which is not supported by the language or std.format.read.
I'd say the issue is WONTFIX.

std/format/internal/write.d(50:34)[warn]: An assert should have an explanatory message

If we can't rely on bool being either true or false we've lost.

Only in @safe code. How about we throw an Error showing the byte value? (no need for hex IMO).

How about we throw an Error showing the byte value? (no need for hex IMO).

We have tried that idea with signaling NaN a long time ago. Didn't work.

@dkorpel wrote:

You wouldn't expect format to debug dangling pointers either.

Well, it can’t, or can it? There’s a difference if something isn’t done because it can’t be done or if it’s not done although it can be done.
@dkorpel wrote:

This PR is essentially unittesting undefined behavior.

You’re mistaken on what is undefined here. Creating an invalid bool isn’t undefined, reading an invalid bool as a boolean is undefined. In a union which overlaps a bool and a ubyte, writing the ubyte is even @safe, although it creates an invalid bool. @safe only won’t let you access any bool that might not be 0 or 1.
@Geod24, in @system code, a bool that’s not 0 or 1 simply can happen, usually by accident, or because someone wants to see what happens (which is how I got to this).
I’d rather still have std.format.write write an invalid bool as anything but false and true than writing them as either of them, for the simple reason that both true or false would be a lie, even if std.format.read returns any non-zero value as true. Writing it an invalid bool as if it’s a ubyte is better, but still subobtimal, as it could be conflated with a valid integer value.  You can suggest something different, I just picked something that would stand out.
If we want to argue technically, well, technically UB also permits write-formatting an invalid bool as anything we like, so why not choose something helpful? As for the asymmetry of reading and writing, of course, std.format.read shouldn’t create invalid bool values from any input because those reading functions would then have to be @system. This means that invalid bool values don’t round-trip, which is perfectly okay as that requires reading them and that is UB. (Apart from that, not even in @safe functions do all built-in values round-trip, e.g. NaN values with payload.) I’d consider the fact that invalid bool values don’t round-tip as a win, actually.

Remind me, why do we have invalid bool in the first place ? Why is true defined as 0x01 and not "anything but 0x01" ?

There is no easy way to create invalid bool values.
Instead of __bool(hexValue), we could print just the unsigned value. Printing { ubyte b = hexValue; return *cast(bool*) &b; }() is a non-starter IMO.

Why is true defined as 0x01 and not "anything but 0x01" ?

Surely you mean "anything but 0x00"

@Bolpat : That doesn't answer the question. Why do we entertain bool having more state than true or false ?

You’re mistaken on what is undefined here.

Your unittest asserts that (cast(byte) __bool(0x03)) == 3. This happens to work, but if the compiler changes its implementation of cast,  suddenly Phobos' test suite breaks. I've had the 'pleasure' of deleting such unittests relying on unspecified behavior  before, I don't want more of them.

I don't think this is worth a long discussion, perhaps @atilaneves can make an executive decision and we'll leave it at that?

Remind me, why do we have invalid bool in the first place ? Why is true defined as 0x01 and not "anything but 0x01" ?

We have invalid bool values due to @system code. How we treat them is a different story.
First things first, I tried to get an invalid bool at CTFE and it didn’t work; apparently, at CTFE, bool values behave exactly like you suggest and most people intuitively assume they do. At run-time, it’s more complicated.
At the moment, true isn’t simply defined as 0x01. It’s unfortunately weirder. For most cases, true is basically defined as is odd. I could identify three cases:

Converting a non-bool value to bool is an equals-zero test. (Indeed, for floating-point data, -0.0 is false.)
Copying a bool to a bool or an 8-bit integer type (byte or ubyte) is an exact bit-copy.
In all other cases, when reading a bool, it is masked for the last bit, i.e. it has x => x & 0x01 applied. This includes:

converting a bool to a non-bool of size > 8 bit (e.g. int) explicitly through a cast or implicitly including using arithmetic on it
if/while/switch testing, and
comparing bool values.

While 1. and 2. can be explained because it’s a no-op, why 3.?
Of course, the cheapest treatment of bool would be to treat it like ubyte in essentially all cases except for assignment as in 1. above, and IIRC, this actually is how it was. Unfortunately, that makes invalid bool values break value-range propagation and some other things, which lead to @safe code not actually being UB-free. The most correct solution, as you say, is to apply … !is 0¹ when a bool value is read. IIRC, Walter took issue with that because he deemed it too expensive, I guess both to run it in the generated binary and to implement optimizations that track a bool value’s origin so that the test can be optimized away in most cases.
A middle ground was found (not to say agreed upon) in that bool values should be masked with 0x01 when used, instead of being zero-tested.
A concrete situation where the difference shows would be when comparing two bool values: By your suggestion, a == b would, essentially, become (a !is 0) is (b !is 0)¹ because any two non-zero bool values should compare equal. Every !is 0¹ (in x86 assembly) is two instructions: a test (test or cmp) and a conditional set (setne). Walter made it be (a & 0x01) is (b & 0x01). That is more expensive than a is b,¹ but ticks the box of bool values being in-range as far as value-range propagation is concerned.
There are three ways for a == b to be implemented:

As a is b¹, in assembly: (load―load―)compare
As (a & 0x01) is (b & 0x01), in assembly: (load―)mask―(load―)mask―compare² or (load―load―)xor―not―and³
As (a !is 0) is (b !is 0)¹, in assembly: compare―set―compare―set―compare⁴

The number of instructions is quite different.
I don’t know why Walter doesn’t leave optimizing the comparison to the optimizer or the programmer and have correct code be generated.
You asked for why, and to the best of my knowledge, this is why. If someone knows better, let me know. Nothing of this is my opinion, by the way. I just recognize that we have invalid bool values in the language semantics and this PR just tries to help programmers to deal with them.
¹ This is not how is works for bool at the moment, you need to insert cast(ubyte) before every bool. Those is instances are italic: is
² and a,0x01―and b,0x01―cmp a,b – this is the obvious variant
³ xor a,b―not a―and a,0x01 – this is what GCC does on O3
⁴ this is both the obvious variant and what GCC does on O3

I second @dkorpel

You asked for why, and to the best of my knowledge, this is why.

Thanks, that was both comprehensive and easy to read. The conclusion I draw here is that we should have a discussion with Walter, because performance should not trump correctness.

How about we throw an Error showing the byte value? (no need for hex IMO).

We have tried/explored that idea with signaling NaN a long time ago. Didn't work.

I don't mean on every read of an invalid bool. I mean throw when calling write on the bool.


Installing QP solver on juliabox

Hi all,
I am using juliabox for my optimization class and students like it. Thumbs up!
One (maybe small) problem I stumbled over was using JuMP to solve a quadratic program:
using JuMP
m = Model()
@defVar(m,  x )
@defVar(m,  y )
@setObjective(m, Min, (x-2)^2 + 2*(y-1)^2 )
@addConstraint(m, x - y >= 0)
@addConstraint(m, x + 4* y - 3 <= 0)
solve(m)
println("Final solution: [ $(getValue(x)), $(getValue(y)) ]")

It complains that there is no QP solver installed. So I tried installing Mosek, CPLEX and Gurobi usind Pkg.add. I wasn't able to build either of them. Does anyone know how to fix this? Thanks in advance!
Edit: I just saw that actually all of these packages require getting a license before Pkg.add() works, right? If that's the reason they are not installed this issue is probably solved.

Those are all commercial solvers, so no easy solution there.

I see. Thanks for your info anyways...

Ipopt solves QP's pretty well despite being designed for more general nonlinear problems. It just isn't in the default list of QP solvers in MathProgBase, but it could maybe be added there.

I can also confirm that Ipopt (surprisingly for me given the documentation in JuMP) solves QP's very well. It's saved my bacon recently when I had to do a demo at short notice on a machine that did not have any commercial solvers.


Fix gimbal lock

Fixes: #1803

fixed typo

This PR mixes a bug fix with a new feature, let's not do that

Sometimes you need a new feature to fix a bug.


Loot table modifications seem broken

Minecraft Version
1.18.2
Fabric/Quilt Version
0.14.9
Fabric/Quilt API Version
0.58.0+1.18.2
Tinkers' Construct Version
1.18.2-3.5.1.DEV.f5a7942
Describe your issue
The loot tables don't seem to be set up right. While I don't exactly know where it's going wrong, I know that wither skeletons don't drop necrotic bones despite the config option being true, and blazes don't drop blaze heads despite me and a friend both killing them for an hour with our cleavers. I know that the json files are datagenned correctly (or at least they're present) and something else must not be going right.
Crash Report
No response
Other mods

Tried reproducing with just Tinkers?
No
Performance Enchancers
Sodium
Searched for known issues?
Searched open issues, Searched closed issues

Can confirm, happens to me too.


cxx::optional and cxx::expected adjustments

Brief feature description

The methods of cxx::expected on_success and on_error should be renamed to and_then and or_else.
It should be possible to create an cxx::optional directly from an cxx::expected with a method called .to_optional() which returns the value of the cxx::expected packed inside an cxx:optional if it contains a value otherwise it returns the cxx::nullopt
If a value is moved outside the cxx::optional the method has_value should no longer return true since we would like to avoid undefined behavior

cxx::optional<int> a = 5;
if ( a.has_value() ); // returns true
int b = std::move(*a);
if ( a.has_value() ); // should now return false since the value is moved outside the optional

// this case would false assume that the optional has no more contained value but at the moment I do not see a problem with that.
std::move(*a);

If a value is moved outside the cxx::expected it should no longer be contained. We need the methods has_value() and has_error() which both should return false in that case. If the methods and_then() or or_else() are called on an cxx::expected in that state they should terminate.

Detailed information
We would further reduce undefined behavior.

@elBoberido  sadly it is not possible to invalidate an optional when the value is moved out since
int b = std::move(*a); calls the dereferencing operator which returns T& and the std::move is transforming it into an rvalue. This could only be done for the method T&& value() && but then it would be inconsistent in the behavior.

Would you please create a link to the according C++ standards where the adjustments are based on. That makes comparing easier.


Cannot create PhoneAuthCredential without either verificationProof, sessionInfo, ortemprary proof.

Step 1: Are you in the right place?
We received a lot of crash report on the latest version 4.1.0 regarding to phone verification.  The detail report are here http://crashes.to/s/77f7c50782c
The same users used our old version which is built with version 4.0.1 worked fine.
Step 2: Describe your environment

Firebase/Play Services SDK version: 16.0.2
FirebaseUI version: 4.1.0

Step 3: Describe the problem:
App crashes during using phone number login using Firebase Auth
Observed Results:
Expected Results:
Phone login works
Relevant Code:
We use https://firebase.google.com/docs/auth/android/firebaseui

@baole thanks for the comment!  Just adding some info here for my own reference:

Oh, I got it. 🤦♂ Users will switch to their messaging app and don't have a lot of RAM available so it kills your app. Since we only store the verification ID in memory, it gets lost. Side note: the number of times we've added bugs like this, you'd think we would learn. Nope. 😂😉
@samtstern I'll submit a PR tomorrow. 👍
@samtstern PS: Personal life has been super busy, hoping to become more active again in a month or so. 😊

@samtstern @SUPERCILEX the issue can be reproduced by enable the "Don't keep activities" option in  Developer options on your test device.

am having this problem too

@SUPERCILEX thanks for jumping on this!  If we didn't have bugs like this, what would Android development be anyway?

If we didn't have bugs like this, what would Android development be anyway?

🤣 So true
Anyway, submitted #1393

Great. Thanks @SUPERCILEX  for the fix.
@samtstern, do you have any plan for 4.2.0 release?

@baole no set plan right now, you can follow along on the milestone to see as things get cleared.

This was fixed and released in version 4.2.0

using this dependency: com.firebaseui:firebase-ui-auth:4.3.1
and got this crash
Fatal Exception: java.lang.IllegalArgumentException: Cannot create PhoneAuthCredential without either verificationProof, sessionInfo, ortemprary proof.
       at com.google.android.gms.common.internal.Preconditions.checkArgument(Unknown Source:35)
       at com.google.firebase.auth.PhoneAuthCredential.(Unknown Source:6)
       at com.google.firebase.auth.PhoneAuthProvider.getCredential(Unknown Source:33)
       at com.firebase.ui.auth.ui.phone.PhoneNumberVerificationHandler.submitVerificationCode(PhoneNumberVerificationHandler.java:63)
       at com.firebase.ui.auth.ui.phone.SubmitConfirmationCodeFragment.submitCode(SubmitConfirmationCodeFragment.java:219)
       at com.firebase.ui.auth.ui.phone.SubmitConfirmationCodeFragment.access$100(SubmitConfirmationCodeFragment.java:45)
       at com.firebase.ui.auth.ui.phone.SubmitConfirmationCodeFragment$2.onClick(SubmitConfirmationCodeFragment.java:147)
       at android.view.View.performClick(View.java:6877)
       at android.widget.TextView.performClick(TextView.java:12651)
       at android.view.View$PerformClick.run(View.java:26069)
       at android.os.Handler.handleCallback(Handler.java:789)
       at android.os.Handler.dispatchMessage(Handler.java:98)
       at android.os.Looper.loop(Looper.java:164)
       at android.app.ActivityThread.main(ActivityThread.java:6938)
       at java.lang.reflect.Method.invoke(Method.java)
       at com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:327)
       at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1374)
FinalizerDaemon
   ...
OkHttp ConnectionPool
   ...
queued-work-looper
   ...
Queue
   ...
androidmapsapi-appenvironment-1
   ...

Device
Brand: samsung
Model: SM-G960F
Orientation: Portrait
RAM free: 1.09 GB
Disk free: 47.85 GB
Operating System
Version: 8.0.0
Orientation: Portrait
Rooted: No
Crash
Date: Jan 29, 2019, 3:56:00 PM

@samtstern or is it better to reopen a new issue about this?
let me know when more data is appreciated

Thanks @woutervegter for the info!  Re-opened.

@samtstern same issue
Fatal Exception: java.lang.IllegalArgumentException: Cannot create PhoneAuthCredential without either verificationProof, sessionInfo, ortemprary proof.
at com.google.android.gms.common.internal.Preconditions.checkArgument(Unknown Source:35)
at com.google.firebase.auth.PhoneAuthCredential.(Unknown Source:6)
at com.google.firebase.auth.PhoneAuthProvider.getCredential(Unknown Source:33)
at com.myapp.activities.register.CodeVerificationActivity$1.onClick(SourceFile:79)
at android.view.View.performClick(View.java:4780)
at android.view.ViewDebug$3.run(ViewDebug.java:826)
at android.os.Handler.handleCallback(Handler.java:756)
at android.os.Handler.dispatchMessage(Handler.java:95)
at android.os.Looper.loop(Looper.java:135)
at android.app.ActivityThread.main(ActivityThread.java:5278)
at java.lang.reflect.Method.invoke(Method.java)
at java.lang.reflect.Method.invoke(Method.java:372)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:903)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:698)
Device
Brand: TrendMicro
Model: GI-I9500_TMMARS
Orientation: Portrait
RAM free: 22.97 GB
Disk free: 41.19 GB
Operating System
Version: 5.1
Orientation: Portrait
Rooted: Yes

Moving this to the backlog milestone since I want to solve it but can't actually figure out why it's still occurring.

Note to sef: In the long term things like this would be better served by the new SavedState thing:
https://proandroiddev.com/saving-ui-state-with-viewmodel-savedstate-and-dagger-f77bcaeb8b08

Did you find any solution? I had the same problem too!

Anybody help me in hindi in android studio

how to user insert data in one time if alleready submitted our details???

facing the same issue :
Fatal Exception: java.lang.IllegalArgumentException: Cannot create PhoneAuthCredential without either verificationProof, sessionInfo, ortemprary proof.        at com.google.android.gms.common.internal.Preconditions.checkArgument(Preconditions.java:35)        at com.google.firebase.auth.PhoneAuthCredential.(SourceFile:5)        at com.google.firebase.auth.PhoneAuthProvider.getCredential(PhoneAuthProvider.java:33)        at com.retranzinfolabs.superzopordering.activities.LoginActivity.showOtpDialog(LoginActivity.java:497)        at com.retranzinfolabs.superzopordering.activities.LoginActivity.onClick(LoginActivity.java:356)        at android.view.View.performClick(View.java:5293)        at android.view.View$PerformClick.run(View.java:21653)        at android.os.Handler.handleCallback(Handler.java:815)        at android.os.Handler.dispatchMessage(Handler.java:104)        at android.os.Looper.loop(Looper.java:227)        at android.app.ActivityThread.main(ActivityThread.java:6102)        at java.lang.reflect.Method.invoke(Method.java)        at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:961)        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:822)

Devices
HTC
samsung
vivo
Operating Systems
5
6
8

Same Problem: Both on Emulator & while USB Debugging on Andoroid Phone
/flutter (32276): PlatformException(error, Cannot create PhoneAuthCredential without either verificationProof, sessionInfo, ortemprary proof., null)

Same Problem: Both on Emulator & while USB Debugging on Andoroid Phone
/flutter (32276): PlatformException(error, Cannot create PhoneAuthCredential without either verificationProof, sessionInfo, ortemprary proof., null)

Here's the Code Snippet:
`Future verifyPhone() async {
final PhoneCodeAutoRetrievalTimeout autoRetrieve = (String verId) {
this.verificationId = verId;
};
final PhoneCodeSent smsCodeSent = (String verId, [int forceCodeResend]) {
  this.verificationId = verId;
  smsCodeDialog(context).then((value) {
    print("Signed In");
  });
};

final PhoneVerificationCompleted verifiedSuccess = (FirebaseUser) {
  print("verified");
};

final PhoneVerificationFailed veriFailed = (AuthException exception) {
  print("${exception.message}");
};

await FirebaseAuth.instance.verifyPhoneNumber(
    phoneNumber: this.phoneNo,
    codeAutoRetrievalTimeout: autoRetrieve,
    codeSent: smsCodeSent,
    timeout: const Duration(seconds: 5),
    verificationCompleted: verifiedSuccess,
    verificationFailed: veriFailed);

}
Future smsCodeDialog(BuildContext context) {
return showDialog(
context: context,
barrierDismissible: false,
builder: (BuildContext context) {
return AlertDialog(
title: Text("Enter Sms Code"),
content: TextField(
onChanged: (value) {
this.smsCode = value;
},
),
contentPadding: EdgeInsets.all(10.0),
actions: [
FlatButton(
child: Text("Done"),
onPressed: () {
FirebaseAuth.instance.currentUser().then((user) {
if (user != null) {
Navigator.of(context).pop();
Navigator.of(context).pushReplacementNamed("/homepage");
} else {
Navigator.of(context).pop();
                  FirebaseAuth.instance
                      .signInWithCredential(PhoneAuthProvider.getCredential(
                          verificationId:
                              _PhoneNumberLoginState().verificationId,
                          smsCode: smsCode,
                          ))
                      .then((user) {
                        print(user.uid);
                        print(user.phoneNumber);
                    Navigator.of(context).pushReplacementNamed("/homepage");
                  }).catchError((e) {
                    print(e);
                  });
                }
              });
            },
          )
        ],
      );
    });

}`

still no solution in the thread closed without solution #1648 is also closed as duplicate of this . what are you doing @chitra-bahadur

@zeeshan-mehdi  trying this solution https://github.com/firebase/FirebaseUI-Android/pull/1393/files/fcda2ec5b77b0f249a56a988a325551c16c98d29

I believe this error is thrown when an empty code is submitted to verifyPhoneNumber. I am using react-native-firebase and I fixed this by not submitting the code to Firebase if the code is not 6 digits long.

I too facing this issue in IONIC4. Is anyone found solution? please help I have already wasted 3days

For us this turned out to be related to the number we were using having been a real number but one that was whitelisted on the firebase console after it had been verified via SMS. See entry on fictional requirement for testing numbers (we were using a real number by mistake) -https://firebase.google.com/docs/auth/ios/phone-auth#test-with-whitelisted-phone-numbers

Check that your verification code isn't null:
for example assume that confirmResult :
const confirmResult = await  auth().signInWithPhoneNumber(phonenumber)
const verifconde = this.state.verifcode.toString()
if(verifconde.length!=0){
confirmResult.confirm(verifconde)
.then(user => {
this.setState({ errMessag: "" })
this.register()
})
.catch(err => {
console.log("3ERRCONFI3", err)
this.setState({ errMessag: "Code invalide" })
this.changeLoading()
})
}else  this.setState({ errMessag: "Invalide code" })

I tried to print the smsCode and VerificationID on every callback function fall under verifyPhoneNumber Method. The OTP is sent successfully, the problem arises when PhoneCodeAutoRetrievalTimeout function is called, at the point, I should be displaying a dialog for entering the received OTP. Somehow I managed to display the dialog but when the OTP is entered, the verification is turning into null.
I am trying to achieve Phone Authentication using BLoC Pattern (flutter_bloc package).
Everything is working fine when no proper architecture is followed.
I am kinda stuck with the BLoC pattern.
Restarted application in 1,769ms.
I/flutter ( 5462): sms : null
I/flutter ( 5462): verificationId : AM5PThBtoiJi-vTvibQfa3UkpdCKcEWaCn4k7vAtL4ugkbqOBPT4JmO5rinQYtxCIhqZ3rwwAaUp4wPHNtsQS1OOcL33LIHNhiAksSMngJuYluyXS0NoLwXozMl38Gbbik1cEmE2rRjXCUaXo3kcQ3twCkw9x4oPcQ
I/flutter ( 5462): codeAutoRetrieval
I/flutter ( 5462): sms : null
I/flutter ( 5462): verificationId : AM5PThBtoiJi-vTvibQfa3UkpdCKcEWaCn4k7vAtL4ugkbqOBPT4JmO5rinQYtxCIhqZ3rwwAaUp4wPHNtsQS1OOcL33LIHNhiAksSMngJuYluyXS0NoLwXozMl38Gbbik1cEmE2rRjXCUaXo3kcQ3twCkw9x4oPcQ
I/flutter ( 5462): sms : 123456
I/flutter ( 5462): verificationId : null
E/flutter ( 5462): [ERROR:flutter/lib/ui/ui_dart_state.cc(157)] Unhandled Exception: PlatformException(error, Cannot create PhoneAuthCredential without either verificationProof, sessionInfo, temporary proof, or enrollment ID., null)

I faced this same issue. Found that this was happening when my UI was unable to update the smsCode: parameter to the value typed into the field. Checked my TextEditingController and found that I wasn't implementing this. Fixed it to update when the code is 6 digits long and it happened smoothly from there.

@vpontis i use react-native-firebase too and with wrong code with 6 digits Android app crash too

Add your apple secret key in your console firebase

Got this error when I send back empty string otp code to firebase. As long as the length of otp code is greater than 0, it won't crash and will return a proper error if the otp is invalid. In my case, I  just disabled the submit button if the string length == 0 for a quick workaround

This also happens in a case where user tries to enter OTP before PhoneAuthProvider.OnVerificationStateChangedCallbacks -> onCodeSent method gets called. As we get String verificationId when onCodeSent is called we have to wait until that. Showing a loader or disabling verify OTP button until we receive the verificationId can do the trick here.

We've recently made a huge update to the Android SDK and please try with the latest SDK to see if the issue still persists. If so, please kindly open a new bug with the details and the version number you're using. Thanks!

I have faced this problem before, I was passing null value as SMS code, I made sure that I pass the real value and it worked.

@dombroks Thank you, you save my day

@dombroks  thanks, it works!

i cannot fix this error can somebody help me
E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.dilshanjagoda.dailychats, PID: 13358
java.lang.IllegalArgumentException: Cannot create PhoneAuthCredential without either sessionInfo + smsCode or temporary proof + phoneNumber.
at com.google.android.gms.common.internal.Preconditions.checkArgument(com.google.android.gms:play-services-basement@@18.1.0:2)
at com.google.firebase.auth.PhoneAuthCredential.(com.google.firebase:firebase-auth@@22.0.0:4)
at com.google.firebase.auth.PhoneAuthCredential.zzc(com.google.firebase:firebase-auth@@22.0.0:1)
at com.google.firebase.auth.PhoneAuthProvider.getCredential(com.google.firebase:firebase-auth@@22.0.0:1)
at com.dilshanjagoda.dailychats.OTPActivity$2.onOtpCompleted(OTPActivity.java:77)
at com.mukeshsolanki.OtpView.onTextChanged(OtpView.java:211)
at android.widget.TextView.handleTextChanged(TextView.java:12019)
at android.widget.TextView$ChangeWatcher.onTextChanged(TextView.java:15206)
at android.text.SpannableStringBuilder.sendTextChanged(SpannableStringBuilder.java:1278)
at android.text.SpannableStringBuilder.replace(SpannableStringBuilder.java:587)
at androidx.emoji2.text.SpannableBuilder.replace(SpannableBuilder.java:315)
at android.text.SpannableStringBuilder.replace(SpannableStringBuilder.java:518)
at androidx.emoji2.text.SpannableBuilder.replace(SpannableBuilder.java:305)
at androidx.emoji2.text.SpannableBuilder.replace(SpannableBuilder.java:49)
at android.view.inputmethod.BaseInputConnection.replaceText(BaseInputConnection.java:945)
at android.view.inputmethod.BaseInputConnection.setComposingText(BaseInputConnection.java:712)
at android.view.inputmethod.InputConnectionWrapper.setComposingText(InputConnectionWrapper.java:165)
at com.android.internal.view.IInputConnectionWrapper.executeMessage(IInputConnectionWrapper.java:650)
at com.android.internal.view.IInputConnectionWrapper$MyHandler.handleMessage(IInputConnectionWrapper.java:118)
at android.os.Handler.dispatchMessage(Handler.java:106)
at android.os.Looper.loopOnce(Looper.java:226)
at android.os.Looper.loop(Looper.java:313)
at android.app.ActivityThread.main(ActivityThread.java:8669)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:571)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1135)


feat(quiz engine): create quiz engine provider

Description
add  QuizEngineProvider and add it to pupils page

List of changes

Issue(s)
Fixes #
How to test

Go to https://deploy-preview-2112--oak-web-application.netlify.thenational.academy/pupils
Click on take the test
You should see test state cahnge and finish

Screenshots
How it used to look (delete if n/a):
{screenshots}
How it should now look:
{screenshots}
Checklist

[ ] Added or updated tests where appropriate
[ ] Manually tested across browsers / devices
[ ] Considered impact on accessibility
[ ] Design sign-off
[ ] Approved by product owner
[ ] Does this PR update a package with a breaking change

@benprotheroe The repetition of some of Q2's content in Q3 has helpfully highlighted an edge case bug:

Answer Q1 (correctly or incorrectly) and click Submit, then Next Question
Answer Q2 correctly (Trees grow from seeds) and click Submit, then Next Question

Expected: No option is pre-selected for Q3, and the user can submit their answer when an option is chosen.

Actual: One option (Trees grow from seeds) is pre-selected for Q3, and despite this the Submit button is disabled. The user must select a different option, then switch back to the original option, before the Submit button is enabled.

Acceptance criteria:

All options are unselected when the user is progressed to a new question.
Regardless of how an option came to be selected, the submit button should be enabled in this scenario (assuming all other requirements for submission are met).

This really is an edge case though (it's very unlikely that the same options will be re-used from question to question), so I'm very happy for it to be spun off into a standalone bug with a lower priority.
A similar issue (same root cause) occurs if you give the wrong answer to Q2 - the wrong answer is preselected, and the Submit button is disabled.


compare by inchikey, not canonical smiles

Currently, canonical SMILES are being used to ...

split the training set into cross-validation folds (create_training_sets.py)
tabulate the frequency with which unique molecules appear in any given train_seed/sample_seed output (inner_tabulate_molecules.py)
tabulate the frequency with which unique molecules across train_seed/sample_seed outputs (inner_collect_tabulated_molecules.py)
average molecules across CV folds (inner_process_tabulated_molecules.py)
remove training set molecules from model output (inner_collect_tabulated_molecules, inner_process_tabulated_molecules.py)
calculate top-k accuracy (inner_write_structural_prior_CV)

(Did I miss any places?)
Occasionally, two or more canonical SMILES can represent the same compound, due to a phenomenon called tautomerism. This can happen either in the training set (i.e. we might have two different canonical SMILES representing the same InChIkey in the training set) or in the model output (i.e. the model might generate multiple different SMILES that all represent the same InChIkey). Therefore, the inchikey is a more robust way to perform all of the above operations.
On the other hand, the inchikey is not a unique representation of a molecule (i.e. we can't parse an inchikey into a molecule in rdkit in the same way that we can with SMILES), so we do need to keep track of one (representative) canonical SMILES per inchikey in all of the above steps.
@vineetbansal let me know if anything here is unclear.

An example of what this looks like in inner-canonicalize-molecules.py (sent via slack, analogous to inner_tabulate_molecules.py):
            # roundtrip to get canonical smiles
            canonical_smiles = Chem.MolToSmiles(mol, isomericSmiles=False)
            # also canonical inchikey
            canonical_inchikey = Chem.inchi.MolToInchiKey(mol)

            # last: number of tokens
            tokens = len(vocab.tokenize(smiles))

            # optionally, skip
            if not canonical_inchikey in train_inchikey:
                # append to file
                row = "\t".join([loss, smiles, str(tokens),
                                 canonical_smiles, canonical_inchikey,
                                 str(mass), formula])
                _ = f2.write(row + '\n')
                f2.flush()

Thanks @skinnider  - the details on the changes made it a lot easier. See PR #133 that addresses all these issues.
I've implemented these changes after stepping through the individual steps of the workflow in a debugger. Once I/Anushka modify the test_data so that the tests pass again, we should have more confidence in these changes.

@anushka255 - one way to proceed with the tests here would be to have the code use our clm.utils.inchikey(mol) function instead of rdkit directly. The initial implementation can just return canonical smiles, which should give you identical results as before (with additional columns at every step). A subsequent commit can then call the correct function and we take the new files as the baseline.
Just a thought.

Not sure if this is best practice from a software perspective, but would some assert statements be useful? e.g., if any of the following conditions are met, something's gone really wrong, and we might as well stop execution:

same InChI key appears in more than one CV fold
same InChI key appears in more than one row in tabulate_molecules output (or collect_tabulated_molecules, or process_tabulated_molecules)
same InChI key appears in both the training set and has a non-missing frequency in the process_tabulated_molecules column for that CV fold

Or, if not an assert statement, maybe it's worth checking if any of these conditions are met in some other way?

Thanks @skinnider - these asserts are a great idea. I won't recommend putting them in the actual code because they will take too much time/memory (some of them aren't checkable in a distributed setting anyway, like if a single inchikey appears in more than one fold), but we can put all these checks in the relevant unit tests that we have for these individual steps, and that will provide an early warning for these kinds of errors.

After talking to Anushka today, this one seems like a tricky one to verify, since the intermediate DataFrame (which has frequency across folds), is not returned by the function, but rather the aggregation across columns (folds).
A minor change (introduction of an intermediate function) should allow this - adding this comment here so we remember to do this.


Feature/gb3 1361 time service (dayjs.utils)

I added the dayjs utils, which collects the usage of DayJs in one location.
I ended up implementing it as a utils class instead of a server for the following reasons:

More than half the methods are used by other utils and therefore need to be static
Testing it is no different than before, since we always used dsayjs in the tests. And we can also spy on the class see this issue

I also added a type file where i define alias types for all days types used, so we use days in as few files as possible

@TIL-EBP @wes-EBP

I'm finally through and I got rid of literally all the Utils classes. I did have to refactor quite some things, because we were not very thorough with our code quality, and that led to quite some mess with calling Utils within Utils and so on. Even worse, we also used Utils in non-Utils classes, which made things even worse.
Another issue was that we used internal dayjs types through our app, especially the Duration part, and we relied quite heavily on their internal implementation. This was quite a pain to refactor.
However, now we have a proper abstraction, namely:

TimeService interface which is @Inject()ed by a root provider
We only pass around native objects, i.e. Date or String; and we use a DateType to specify units (which maps nicely to dayjs, but could be abstracted if we were to use another implementation)
Removed three utils classes: Everything is now handled in either the TimeService or the TimeSliderService
Several other refactors, for example the StorageServices
Adapted (most) of the tests to their new locations

As far as I was able to, I tested the app and lots of things still work (i.e. restoring state, etc). But please, test it as well.
As a conclusion: In the future, we definitely need to stop adding more and more Utils classes. They are fine for things where we really use some utility function, but as soon as they start to be used in lots of places and other Utils classes, they should be refactored. And, most importantly, we should be more strict in terms of using external interfaces; we only focus on the Esri abstraction, but other libraries should not be treated differently.


Module Error (from ./node_modules/eslint-loader/index.js)

Bug report

What is the current behavior?
I am getting this error when I run yarn watch --debug
Module Error (from ./node_modules/eslint-loader/index.js)

If the current behavior is a bug, please provide the steps to reproduce.

What is the expected behavior?

Other relevant information:
webpack version: v4.29.6
Node.js version: 10.1
Operating System: MacBook Pro
Additional tools: VS Code

@webpack-bot move to webpack-contrib/eslint-loader

@webpack-bot move to webpack-contrib/eslint-loader

Please create issue in https://github.com/webpack-contrib/eslint-loader and attach minimum reproducible test repo, thanks


[Snyk] Upgrade @docusaurus/core from 2.0.0-rc.1 to 2.0.1

This PR was automatically created by Snyk using the credentials of a real user.Snyk has created this PR to upgrade @docusaurus/core from 2.0.0-rc.1 to 2.0.1.

:information_source: Keep your dependencies up-to-date. This makes it easier to fix existing vulnerabilities and to more quickly identify and fix newly disclosed vulnerabilities when they affect your project.

The recommended version is 2 versions ahead of your current version.
The recommended version was released 2 months ago, on 2022-08-01.

Release notes

Package name: @docusaurus/core

2.0.1 - 2022-08-012.0.1 (2022-08-01)
Fix bad npm publish of 2.0.0
Committers: 1

Sébastien Lorber (@ slorber)

2.0.0 - 2022-08-012.0.0 (2022-08-01)
Bad npm publish, please use 2.0.1
💅 Polish

docusaurus

#7781 refactor(core): log Docusaurus & Node version before exiting (@ Josh-Cena)

Committers: 2

Joshua Chen (@ Josh-Cena)
Sébastien Lorber (@ slorber)

2.0.0-rc.1 - 2022-07-142.0.0-rc.1 (2022-07-14)
🐛 Bug Fix

docusaurus

#7776 fix(core): swizzle --eject js should not copy theme .d.ts files (@ slorber)
#7750 fix(deploy): revert "feat(deploy): copy local git config to tmp repo (#7702)" (@ ghostsquad)

docusaurus-plugin-sitemap

#7774 fix(sitemap): complete gracefully when all pages have noIndex meta (@ Josh-Cena)

docusaurus-theme-classic

#7771 chore: bump Infima to 0.2.0-alpha.42, fix a:hover link bug (@ slorber)
#7755 fix(theme-classic): validate options properly (@ Josh-Cena)
#7752 fix(theme-classic): fix Layout theme height CSS (@ LichLord91)

docusaurus-migrate

#7766 fix(migrate): import siteConfig with file extension (@ Josh-Cena)

docusaurus-theme-search-algolia

#7761 fix(algolia-search): test for canUseIntersectionObserver (@ RoiArthurB)

💅 Polish

docusaurus-theme-translations

#7762 chore(theme-translations): complete ko translations (@ anaclumos)

📝 Documentation

docusaurus-plugin-content-docs

#7706 docs: release process, versioning, breaking changes, public API surface (@ slorber)

🔧 Maintenance

docusaurus-theme-classic

#7777 refactor(theme): fix duplicate page metadata usage (@ slorber)
#7771 chore: bump Infima to 0.2.0-alpha.42, fix a:hover link bug (@ slorber)

Committers: 11

Arthur Brugière (@ RoiArthurB)
Bruce Song (@ recallwei)
Evan (@ DigiPie)
Jeffrey Aven (@ jeffreyaven)
Joshua Chen (@ Josh-Cena)
Sunghyun Cho (@ anaclumos)
Sébastien Lorber (@ slorber)
The Nguyen (@ treoden)
Wes McNamee (@ ghostsquad)
@ LichLord91
凱恩 Kane (@ Gary50613)

    from @docusaurus/core GitHub release notes

Commit messages

Package name: @docusaurus/core

1ddee1c v2.0.1
2ef40c2 chore: Netlify branch deploys should only deploy default locale "en" (#7788)
d88f248 chore: add Netlify config for major version branch deploys (docusaurus-v2 branch) (#7787)
e4fc47b Merge branch 'main' into docusaurus-v2
7f40350 chore: fix codesandbox playgrounds, use Node.js 16 version (#7784)
1065e55 refactor(core): log Docusaurus & Node version before exiting (#7781)
965a01e chore: port-2.0.0-rc.1 (#7782)
e78a15e chore: ci tests should run on version branches "docusaurus-vX" (#7783)
c751bc6 chore: regen v2.0.0-rc.1 examples (#7780)
d255389 chore: prepare v2.0.0-rc.1 release (#7778)

Compare

Note: You are seeing this because you or someone else with access to this repository has authorized Snyk to open upgrade PRs.
For more information:
🧐 View latest project report
🛠 Adjust upgrade PR settings
🔕 Ignore this dependency or unsubscribe from future upgrade PRs

Codecov Report
Base: 85.17% // Head: 85.17% // No change to project coverage :thumbsup:

Coverage data is based on head (4afd2bb) compared to base (8eedbb2).
Patch has no changes to coverable lines.

Additional details and impacted files
@@           Coverage Diff           @@
##             main     #115   +/-   ##
=======================================
  Coverage   85.17%   85.17%
=======================================
  Files          34       34
  Lines        2010     2010
=======================================
  Hits         1712     1712
  Misses        239      239
  Partials       59       59

Flag
Coverage Δ

unittests
85.17% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.
Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

:umbrella: View full report at Codecov.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.


There is any limitations ?

Not really except RAM limitations but 150 MB of data must take quite some time to load since the entire file needs to be loaded in emory. If you tell me what are the metrics (time it takes and so on) we can tell you if that's normal, which I suspect it is.
Closing this meanwhile.

The take about 30s to load data... then any read in the DB is quite slow (maybe missing indexes, though)

that's very slow indeed, and probably has to do with your hardware. Maybe your antivirus software is the cause, otherwise it's impossible for me to help you since I don't have your machine ...

My hardware : Mac Book Pro 8Go i7 with SSD
Also, no antivirus... and the app is an electron one... not sure it's because of my hardware ...

The same issue, it too slow, it takes 2mins to load

Same is with my application. The application is built in electron with react js integration and I am using nedb to store data but it's taking more than 5 minutes to load.


pywinauto 0.6.5 invalid window handle problem

My scripts got broken after updating from 0.6.4 to 0.6.5. Error thrown when using type_keys on a not focused element while automating an application with focus problems.

pywintypes.error: (1400, 'GetWindowRect', 'Invalid window handle.').

The program I automate made with Delphi.
The program has a problem of getting focus after not having focus. So clicking a button in this application requires clicking twice if it didn't had focus initially.
Detailed focus problem:
When I try to get focus of the Delphi application, there will be no foreground application having focus for a very brief moment until getting focused. Used this program: http://www.happydroid.com/focus
1284:C:\Windows\explorer.exe | Thu Aug 09 12:24:18 2018

No foreground application | Thu Aug 09 12:24:19 2018

9840:C:\Program Files (x86)\Intellio Video System\Intellio Client 4\RCClient.exe | Thu Aug 09 12:24:20 2018

So I use win32 backend, type_keys (AFAIK SendKeys requires focus) and click (AFAIK click_input requires focus).
The release notes only talks about

Fix .set_focus() for "uia" backend including minimized window case
(issue #443).

while I think I'm having this problem because one of the changes in hwndwrapper (https://github.com/pywinauto/pywinauto/commit/960682d0abd7db4efb8e129e4599fd47a4b5e5bd#diff-03fd5a827c53b158f63e6e8c518d9809)
I'm looking for your answer. And thank you for making pywinauto :)
Relevant example code that fails everytime in 0.6.5 and works flawlessly in 0.6.4:
import pywinauto
APP = pywinauto.Application(backend="win32").start("RCClient.exe")
elem = APP.MainForm
elem.type_keys("%{TAB}") # everything fine here
elem.type_keys("%{TAB}") # error

Full log:
12:02:20.461 ERROR   scenario          Test                @124 Traceback (most recent call last):
  File "C:\Users\oliver.horvath\PycharmProjects\autoivs\scenario.py", line 113, in Test
    RESULT = func()  # Teszt eset futtatása
  File "C:\Users\oliver.horvath\PycharmProjects\autoivs\scenarios\teszt.py", line 276, in Github2_9988
    log.info(ivs.APP.MainForm.control_type())
  File "C:\Users\oliver.horvath\venv\autoivspackages\lib\site-packages\pywinauto\application.py", line 368, in __getattribute__
    ctrls = self.__resolve_control(self.criteria)
  File "C:\Users\oliver.horvath\venv\autoivspackages\lib\site-packages\pywinauto\application.py", line 246, in __resolve_control
    criteria)
  File "C:\Users\oliver.horvath\venv\autoivspackages\lib\site-packages\pywinauto\timings.py", line 431, in wait_until_passes
    func_val = func(*args, **kwargs)
  File "C:\Users\oliver.horvath\venv\autoivspackages\lib\site-packages\pywinauto\application.py", line 191, in __get_ctrl
    dialog = self.backend.generic_wrapper_class(findwindows.find_element(**criteria[0]))
  File "C:\Users\oliver.horvath\venv\autoivspackages\lib\site-packages\pywinauto\findwindows.py", line 84, in find_element
    elements = find_elements(**kwargs)
  File "C:\Users\oliver.horvath\venv\autoivspackages\lib\site-packages\pywinauto\findwindows.py", line 303, in find_elements
    elements = findbestmatch.find_best_control_matches(best_match, wrapped_elems)
  File "C:\Users\oliver.horvath\venv\autoivspackages\lib\site-packages\pywinauto\findbestmatch.py", line 494, in find_best_control_matches
    name_control_map = build_unique_dict(controls)
  File "C:\Users\oliver.horvath\venv\autoivspackages\lib\site-packages\pywinauto\findbestmatch.py", line 473, in build_unique_dict
    ctrl_names = get_control_names(ctrl, controls, text_ctrls)
  File "C:\Users\oliver.horvath\venv\autoivspackages\lib\site-packages\pywinauto\findbestmatch.py", line 320, in get_control_names
    non_text_names = get_non_text_control_name(control, allcontrols, textcontrols)
  File "C:\Users\oliver.horvath\venv\autoivspackages\lib\site-packages\pywinauto\findbestmatch.py", line 219, in get_non_text_control_name
    ctrl_r = ctrl.rectangle()
  File "C:\Users\oliver.horvath\venv\autoivspackages\lib\site-packages\pywinauto\base_wrapper.py", line 337, in rectangle
    return self.element_info.rectangle
  File "C:\Users\oliver.horvath\venv\autoivspackages\lib\site-packages\pywinauto\win32_element_info.py", line 181, in rectangle
    return handleprops.rectangle(self.handle)
  File "C:\Users\oliver.horvath\venv\autoivspackages\lib\site-packages\pywinauto\handleprops.py", line 207, in rectangle
    return win32structures.RECT(*win32gui.GetWindowRect(handle))
pywintypes.error: (1400, 'GetWindowRect', 'Érvénytelen ablakleíró.')

Thanks for such a detailed report. This is interesting case. I can take a look later. By the way method .type_keys() has parameter set_foreground=True. So it always sets focus by default. Though the problem might be not directly connected with the focus.

Thanks, .type_keys("something", set_foreground=False) does solves my problem!
And I can verify that my problem is directly connected with focus using enough time.sleep() to have focus on the automated app.
I don't know if I have other problems related to this (focus problem not originating from pywinauto) but will report it back if I found any.

I have the same problem. In my case I do automate some process which opens same application multiple times (runs in a loop over files) and quite often after 2nd iteration this error appears. Unfortunately I can't use .type_keys() as almost all internal elements are generated by XML and are not focusable (this is bypassed with SendKeys() usage).

I get this exact same error while while waiting for a window to appear.
pywintypes.error: (1400, 'GetWindowRect', 'Invalid window handle.')
Code that errors -
my_app['Please Login'].wait('ready', timeout=30, retry_interval=0.5)
This worked fine in 0.6.4. I see that this bug is closed. @vasily-v-ryabov  - Is the fix included in the 0.6.6 version? Is there a workaround for this in the current version?

Hi @madhavankumar this bus is not closed yet. 0.6.6 is not released yet as well. Downgrade to 0.6.4 is the only way for now.
Sorry for long waiting. I'm able to work on the project ~2 times a week for recent half a year.

@madhavankumar the referenced issue #557 was closed, not this ticket.

@meshuggahtas please check latest master branch. The problem should gone.

Test:
APP = pywinauto.Application(backend="win32").start("RCClient.exe")
APP.MainForm.type_keys("%{TAB}")

Result:

As soon as the application would be ready to accept keys, pywinauto thinks it actually not responding.
Would be successful using time.sleep() or with waiting for a specfic state.
set_foreground=True doesn't affects the result.

Log:
  File "C:\Users\oliver.horvath\PycharmProjects\autoivs\scenario.py", line 112, in Test
    RESULT = func()  # Teszt eset futtatása
  File "C:\Users\oliver.horvath\PycharmProjects\autoivs\scenarios\teszt.py", line 315, in github_9534
    elem.type_keys("%{TAB}")  # everything fine here
  File "C:\Users\oliver.horvath\venv\autoivspackages\lib\site-packages\pywinauto\base_wrapper.py", line 845, in type_keys
    self.verify_actionable()
  File "C:\Users\oliver.horvath\venv\autoivspackages\lib\site-packages\pywinauto\base_wrapper.py", line 591, in verify_actionable
    self.wait_for_idle()
  File "C:\Users\oliver.horvath\venv\autoivspackages\lib\site-packages\pywinauto\controls\hwndwrapper.py", line 710, in wait_for_idle
    win32functions.WaitGuiThreadIdle(self)
  File "C:\Users\oliver.horvath\venv\autoivspackages\lib\site-packages\pywinauto\win32functions.py", line 294, in WaitGuiThreadIdle
    raise RuntimeError('Window (hwnd={0}) is not responding!'.format(handle))
RuntimeError: Window (hwnd=hwndwrapper.DialogWrapper - 'None', TMainForm) is not responding!

@meshuggahtas it should be asked as separate issue. Usually such error happens when application has a console launcher that spawns GUI subprocess. To handle this you have to say pywinauto it's a console launcher and then use .connect(...) by title or title_re with optional timeout param.
In method start() you need parameters create_new_console=True, wait_for_idle=False.

Okay, I think this issue can be closed, the 0.6.5 master branch fixed this problem.
@vasily-v-ryabov: I'm not sure I understood what you wrote, but the problem is that the application I'm testing has multiple windows and works flawlessly with the tricks I mentioned (time.sleep(), waiting for a window to be idle, etc).
Using the above mentioned extra parameters which leads to
APP = pywinauto.Application(backend="win32").start(r"C:/Program Files (x86)/Intellio Video System/Intellio Client 4/RCClient.exe", create_new_console=True, wait_for_idle=False) also throws the same log, including the "wait_for_idle" and "WaitGuiThreadIdle(self)" in the traceback
12:54:39.269 ERROR   scenario          Test                @147 Traceback (most recent call last):
  File "C:\Users\oliver.horvath\PycharmProjects\autoivs\scenario.py", line 112, in Test
    RESULT = func()  # Teszt eset futtatása
  File "C:\Users\oliver.horvath\PycharmProjects\autoivs\scenarios\teszt.py", line 315, in github_9534
    APP.TMainForm.type_keys("%{TAB}", set_foreground=False) # everything fine here
  File "C:\Users\oliver.horvath\venv\autoivspackages\lib\site-packages\pywinauto\base_wrapper.py", line 845, in type_keys
    self.verify_actionable()
  File "C:\Users\oliver.horvath\venv\autoivspackages\lib\site-packages\pywinauto\base_wrapper.py", line 591, in verify_actionable
    self.wait_for_idle()
  File "C:\Users\oliver.horvath\venv\autoivspackages\lib\site-packages\pywinauto\controls\hwndwrapper.py", line 710, in wait_for_idle
    win32functions.WaitGuiThreadIdle(self)
  File "C:\Users\oliver.horvath\venv\autoivspackages\lib\site-packages\pywinauto\win32functions.py", line 294, in WaitGuiThreadIdle
    raise RuntimeError('Window (hwnd={0}) is not responding!'.format(handle))
RuntimeError: Window (hwnd=hwndwrapper.DialogWrapper - 'None', TMainForm) is not responding!

Not sure about is this really a bug (and yes, this should be discussed somewhere else).

This is expected behavior, because this APP instance is a console launcher process that has no GUI. Next line APP.TMainForm.type_keys("%{TAB}", set_foreground=False) is really failing because you didn't re-connect to the GUI process by title. Please pay more attention to traceback details and which line is failing.

Maybe this example is more clear to understand spawning process problem: https://stackoverflow.com/questions/52853483/print-control-identifiers-for-network-and-sharing-center

Filed #593 for this feature request.


18.1.2023 Neovim text not visually pleasing on one side of the coaster

Hello sir!
I stumbled upon your project and was really keen on producing some of these for my own use. I noticed however a small issue that is blocking me from producing these. The text "Neovim" could be smaller font as on one side of the coaster the text gets really close to the right column of content and doesn't look aesthetically pleasing.
If you look at the instructions, they have a pretty distinct spot where they wrap over to the next line but the "Neovim" text doesn't seem to follow that rule.

Nice

Okay actually fixed it now


[FR] An option for setting sidebar width

it's very disturbing to resize the sidebar whenever open a new PDF file, i found a way to automatically adjust the width of the sidebar
.pdf-content-container.node-insert-event.sidebarOpen {
    --sidebar-width: 330px;
}

we could provide a setting option to set the width, this may help others who suffering the same pain

Hi, thanks for the idea! This would be a wonderful addition to the Style Settings menu.
Can I ask why .node-insert-event.sidebarOpen is needed? In my environment, just
.pdf-content-container {
    --sidebar-width: 330px;
}

seems to work well.

Just release this as 0.35.20!
I didn't include the .node-insert-event.sidebarOpen part, but let me know if it's necessary for some reason.
Thanks for your contribution!

really quick👍

Can I ask why .node-insert-event.sidebarOpen is needed?

actually, i haven't tested too much, just grab from devtools directly😂


Aurora won't disable

Mod Version:
DynamicSurroundings-1.12.2-<IP_ADDRESS>.jar
Forge Version:
forge-<IP_ADDRESS>38.jar
Link to crash log (if applicable):
Description:
I've started a brand new server and edited the dsurround config file to turn off the aurora. I've set it to false.
aurora {
# Enable/disable Aurora processing on server/client [default: true]
B:Enabled=false
# Use shader when rendering aurora [default: true]
B:"Use Shaders"=true

}
No matter what I do, it won't turn it off. What am I doing wrong?

Are you trying to edit on the server?  If so, this is a client side option.  If a player wants to disable they will need to modify the config on their end.

Are you trying to edit on the server? If so, this is a client side option. If a player wants to disable they will need to modify the config on their end.

I edited it on the server config in hopes it would effect the setting for everyone who joins.
The aurora looks terrible with our shaders and not all of the people who join our server are savvy with editing configs on their computers.
Thanks for the heads up.

The config option is available through the in-game config editor.  If I recall all options are available through that menu.  Mod Options -> Dynamic Surroundings -> Config.


External Tables Created Over Synapse Serverless Throw Exceptions

We have utilized the CDMUtil for creating the D365 tables as External Tables over Synapse Serverless Pool. Further there are pipelines to build the entities and populate them in a datawarehouse.
However, we have noticed below exceptions in our ADF pipelines every now and then in Production Environment:
"Type=System.Data.SqlClient.SqlException,Message=Error handling external file: 'Unexpected end-of-input within record at [byte: 137678920]."
Re-running the pipelines after some time generally resolves the issue. We have a understanding that this occurs when export to datalake utility fromD365 is writing data to DataLake. Is there any way to identify when the files are being written to avoid reading data at that time.
Or is there a way to identify a timeslot which is a good time to pull data from the external tables?

Your assumption is correct when you are reading the data from data lake, if the files are changing in the data lake - you may get this error. Unfortunately, there is no way to know to predict when the data will be updated. With near real feature on - data will be updated in the lake within minutes when data changes happen in the source system. If the data does not change in the source system there will be no changes in the files. Best way to handle this situation is implementing re-try logic in your code we have heard from other customer that retry usually solves the problem as data changes are not continous.


Down scroll bar on Heat map in alpha.patricbrc.org not scrolling

Its stuck at one level with the names are expanded, making it impossible to see the lower genomes.  The horizontal scroll bar works well, though

I cannot reproduce this problem on chrome 52.0.2743.116 (64-bit), firefox 48.0.2, and safari  9.1.3 (11601.7.8).
Please specify your browser and url.

duplicate #1102


⚠ Samsung has degraded performance

In 1b1ea66, Samsung (https://samsung.com) experienced degraded performance:

HTTP code: 200
Response time: 2493 ms

Resolved: Samsung performance has improved in b4f87f4.