[2pts] Create general shopping list view

Should show the list of food that is missing for all recipes of the logged-in user (compare the list of food for all recipes with the general food list of that user).
Should count the total food items and total price of the missing food.

Task completed


fix broken links in documentation

Hi there, I came across a broken link in the documentation and fixed it. Thereby, I also fixed #161 :)

Thanks Marie!


[GHSA-j6gc-792m-qgm2] ReDoS based DoS vulnerability in Active Support’s underscore

Updates

Affected products

Comments
The original Rails advisory announcement for CVE-2023-22796 states that there is no fixed version for activesupport 6.0.x.

Hi @postmodern,
The release announcement for the patched versions, including 6.0.x, is here Rails Release. It seems like the packages you're concerned about did have a patch release. Do you have any evidence that those releases do not address the CVE(s) in question?

@ronwoch here is the diff for activesupport 6.0.6 -> <IP_ADDRESS>. As you can see, not a whole lot there.


fix(language-core): should preserve generic info in directive

fix #4682.
Previously, we inferred directives' argument types. However, this will cause the generic info to be lost. This PR avoids inferring the argument type.

LGTM, thanks!


Added keys see issue 119

I changed all the Alt- to Meta- but left the comments for describing the Meta- keys as Alt- so people understand what keys they are. I did removed the Shift- keys' comments.


cmd/compile, runtime, reflect: pointers to go:notinheap types must be stored indirectly in interfaces

(This bug is a consequence of the fixes for issue #40954.)
package main

import "reflect"

//go:notinheap
type T struct {
	x int
}

func main() {
	reflect.ValueOf((*T)(nil)).Pointer()
}

This program panics with:
panic: can't call pointer on a non-pointer Value

goroutine 1 [running]:
reflect.Value.pointer(...)
	/Users/khr/sandbox/ro/src/reflect/value.go:95
reflect.Value.Pointer(0x1081e40, 0x0, 0x16, 0x0)
	/Users/khr/sandbox/ro/src/reflect/value.go:1457 +0x1b6
main.main()
	/Users/khr/gowork/tmp1.go:11 +0x9b

reflect is confused by a type that claims to be a pointer, but has no pointer bits. It has no pointer bits because pointers to go:notinheap types are treated as uintptrs by the compiler.
More generally, we can't ever convert *T to unsafe.Pointer, as that's the equivalent of converting a uintptr, potentially containing a bad pointer value, to a pointer. Particularly, we can't store a *T in the data field of an interface, or in reflect.Value.ptr. We have to store them indirectly instead.
This issue originally came up with the a call to reflect.DeepEqual which ended up calling Pointer on one of these types.
Note that reflect.DeepEqual fundamentally doesn't work on incomplete types like this. They are represented as struct{}, so pointer equality doesn't really work. This program:
package main

import (
	"reflect"
	"unsafe"
)

//go:notinheap
type T struct {
}

var a [2]int

func main() {
	x := (*T)(unsafe.Pointer(&a[0]))
	y := (*T)(unsafe.Pointer(&a[1]))
	println(reflect.DeepEqual(x, y))
}

Will print true after this issue is fixed, although one would probably expect it to return false. Something about incomplete types and deepequal just don't play well together.
But it shouldn't panic.

Would you expect this to also manifest as a segmentation fault?  From running go test github.com/bsm/go-sparkey/...:
[signal SIGSEGV: segmentation violation code=0x1 addr=0x0 pc=0x47cfa51]

runtime stack:
runtime.throw(0x43f28b2, 0x2a)
	/Users/bartle/src/go/src/runtime/panic.go:1116 +0x72
runtime.sigpanic()
	/Users/bartle/src/go/src/runtime/signal_unix.go:704 +0x48c

goroutine 19 [syscall]:
runtime.cgocall(0x433a1f0, 0xc000187090, 0xc000105680)
	/Users/bartle/src/go/src/runtime/cgocall.go:133 +0x5b fp=0xc000187060 sp=0xc000187028 pc=0x400785b
github.com/bsm/go-sparkey._Cfunc_sparkey_logiter_fill_value(0x8204080, 0x0, 0x200, 0xc000328000, 0xc00026e4b0, 0x0)
	_cgo_gotypes.go:272 +0x4d fp=0xc000187090 sp=0xc000187060 pc=0x431d44d
github.com/bsm/go-sparkey.(*valueReader).Read.func1(0xc00011c3c8, 0x200, 0xc000328000, 0xc00026e4b0, 0x4369b40)
	/Users/bartle/go/src/github.com/bsm/go-sparkey/iter.go:262 +0xb1 fp=0xc0001870e0 sp=0xc000187090 pc=0x4324091
github.com/bsm/go-sparkey.(*valueReader).Read(0xc00011c3c8, 0xc000328000, 0x200, 0x200, 0xc000328000, 0x0, 0x0)
	/Users/bartle/go/src/github.com/bsm/go-sparkey/iter.go:262 +0x70 fp=0xc000187120 sp=0xc0001870e0 pc=0x431fe90
bytes.(*Buffer).ReadFrom(0xc0001871c8, 0x8039118, 0xc00011c3c8, 0x8039118, 0xc000000000, 0x4007f1b)
	/Users/bartle/src/go/src/bytes/buffer.go:204 +0xb1 fp=0xc000187190 sp=0xc000187120 pc=0x40e9431
io/ioutil.readAll(0x8039118, 0xc00011c3c8, 0x200, 0x0, 0x0, 0x0, 0x0, 0x0)
	/Users/bartle/src/go/src/io/ioutil/ioutil.go:36 +0xe5 fp=0xc000187210 sp=0xc000187190 pc=0x40ef445
io/ioutil.ReadAll(...)
	/Users/bartle/src/go/src/io/ioutil/ioutil.go:45
github.com/bsm/go-sparkey.(*LogIter).Value(0xc000242ba0, 0xc00026e401, 0x2, 0x2, 0x0, 0x0)
	/Users/bartle/go/src/github.com/bsm/go-sparkey/iter.go:126 +0x90 fp=0xc000187260 sp=0xc000187210 pc=0x431f6b0
github.com/bsm/go-sparkey.(*HashIter).Get(0xc000219980, 0xc00026e4a8, 0x2, 0x2, 0xc000231940, 0x445dfa0, 0xc000187300, 0x40122b8, 0x2)
	/Users/bartle/go/src/github.com/bsm/go-sparkey/iter.go:175 +0x93 fp=0xc0001872a0 sp=0xc000187260 pc=0x431f933
github.com/bsm/go-sparkey.(*HashReader).Get(0xc00021b770, 0xc00026e4a8, 0x2, 0x2, 0x0, 0x0, 0x0, 0x0, 0x0)
	/Users/bartle/go/src/github.com/bsm/go-sparkey/hash.go:98 +0xe7 fp=0xc000187310 sp=0xc0001872a0 pc=0x431f007
github.com/bsm/go-sparkey.glob..func3.6()
	/Users/bartle/go/src/github.com/bsm/go-sparkey/hash_test.go:81 +0x4b2 fp=0xc0001873d8 sp=0xc000187310 pc=0x4326b32
github.com/onsi/ginkgo/internal/leafnodes.(*runner).runSync(0xc00011f0e0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, ...)
	/Users/bartle/go/src/github.com/onsi/ginkgo/internal/leafnodes/runner.go:113 +0xa3 fp=0xc000187438 sp=0xc0001873d8 pc=0x42c6da3
github.com/onsi/ginkgo/internal/leafnodes.(*runner).run(0xc00011f0e0, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, ...)
	/Users/bartle/go/src/github.com/onsi/ginkgo/internal/leafnodes/runner.go:64 +0xd7 fp=0xc0001875d8 sp=0xc000187438 pc=0x42c69b7
github.com/onsi/ginkgo/internal/leafnodes.(*ItNode).Run(0xc00012d160, 0x4457e20, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, ...)
	/Users/bartle/go/src/github.com/onsi/ginkgo/internal/leafnodes/it_node.go:26 +0x67 fp=0xc0001876f8 sp=0xc0001875d8 pc=0x42c6067
github.com/onsi/ginkgo/internal/spec.(*Spec).runSample(0xc00025ea50, 0x0, 0x4457e20, 0xc0001548c0)
	/Users/bartle/go/src/github.com/onsi/ginkgo/internal/spec/spec.go:215 +0x691 fp=0xc0001879e8 sp=0xc0001876f8 pc=0x42c9811
github.com/onsi/ginkgo/internal/spec.(*Spec).Run(0xc00025ea50, 0x4457e20, 0xc0001548c0)
	/Users/bartle/go/src/github.com/onsi/ginkgo/internal/spec/spec.go:138 +0xf2 fp=0xc000187a38 sp=0xc0001879e8 pc=0x42c8f52
github.com/onsi/ginkgo/internal/specrunner.(*SpecRunner).runSpec(0xc00024c8c0, 0xc00025ea50, 0x0)
	/Users/bartle/go/src/github.com/onsi/ginkgo/internal/specrunner/spec_runner.go:200 +0x111 fp=0xc000187a90 sp=0xc000187a38 pc=0x42ea0f1
github.com/onsi/ginkgo/internal/specrunner.(*SpecRunner).runSpecs(0xc00024c8c0, 0x1)
	/Users/bartle/go/src/github.com/onsi/ginkgo/internal/specrunner/spec_runner.go:170 +0x127 fp=0xc000187b18 sp=0xc000187a90 pc=0x42e9c07
github.com/onsi/ginkgo/internal/specrunner.(*SpecRunner).Run(0xc00024c8c0, 0xc000121f68)
	/Users/bartle/go/src/github.com/onsi/ginkgo/internal/specrunner/spec_runner.go:66 +0x117 fp=0xc000187b58 sp=0xc000187b18 pc=0x42e9417
github.com/onsi/ginkgo/internal/suite.(*Suite).Run(0xc00017a070, 0x8017320, 0xc000106600, 0x43e0d08, 0x7, 0xc0001136c0, 0x1, 0x1, 0x445f9e0, 0xc0001548c0, ...)
	/Users/bartle/go/src/github.com/onsi/ginkgo/internal/suite/suite.go:79 +0x586 fp=0xc000187db8 sp=0xc000187b58 pc=0x42ebb46
github.com/onsi/ginkgo.RunSpecsWithCustomReporters(0x44582e0, 0xc000106600, 0x43e0d08, 0x7, 0xc000187f20, 0x1, 0x1, 0x4607603)
	/Users/bartle/go/src/github.com/onsi/ginkgo/ginkgo_dsl.go:229 +0x238 fp=0xc000187ed0 sp=0xc000187db8 pc=0x42f9738
github.com/onsi/ginkgo.RunSpecs(0x44582e0, 0xc000106600, 0x43e0d08, 0x7, 0x0)
	/Users/bartle/go/src/github.com/onsi/ginkgo/ginkgo_dsl.go:210 +0x168 fp=0xc000187f40 sp=0xc000187ed0 pc=0x42f9388
github.com/bsm/go-sparkey.TestSuite(0xc000106600)
	/Users/bartle/go/src/github.com/bsm/go-sparkey/sparkey_test.go:54 +0xf6 fp=0xc000187f80 sp=0xc000187f40 pc=0x431c376
testing.tRunner(0xc000106600, 0x4401840)
	/Users/bartle/src/go/src/testing/testing.go:1123 +0xef fp=0xc000187fd0 sp=0xc000187f80 pc=0x40fd0af
runtime.goexit()
	/Users/bartle/src/go/src/runtime/asm_amd64.s:1374 +0x1 fp=0xc000187fd8 sp=0xc000187fd0 pc=0x4072f81
created by testing.(*T).Run
	/Users/bartle/src/go/src/testing/testing.go:1168 +0x2b3

goroutine 1 [chan receive]:
testing.(*T).Run(0xc000106600, 0x43e1e60, 0x9, 0x4401840, 0x4090926)
	/Users/bartle/src/go/src/testing/testing.go:1169 +0x2da
testing.runTests.func1(0xc000106480)
	/Users/bartle/src/go/src/testing/testing.go:1439 +0x78
testing.tRunner(0xc000106480, 0xc000185de0)
	/Users/bartle/src/go/src/testing/testing.go:1123 +0xef
testing.runTests(0xc00012ca00, 0x46d30c0, 0x1, 0x1, 0xbfdb9ed7f33c93c0, 0x8bb2ddb255, 0x46f5540, 0x4011950)
	/Users/bartle/src/go/src/testing/testing.go:1437 +0x2fe
testing.(*M).Run(0xc0001ac180, 0x0)
	/Users/bartle/src/go/src/testing/testing.go:1345 +0x1eb
main.main()
	_testmain.go:47 +0x138

goroutine 20 [chan receive]:
github.com/onsi/ginkgo/internal/specrunner.(*SpecRunner).registerForInterrupts(0xc00024c8c0, 0xc000102300)
	/Users/bartle/go/src/github.com/onsi/ginkgo/internal/specrunner/spec_runner.go:223 +0xce
created by github.com/onsi/ginkgo/internal/specrunner.(*SpecRunner).Run
	/Users/bartle/go/src/github.com/onsi/ginkgo/internal/specrunner/spec_runner.go:60 +0x86

goroutine 22 [syscall]:
os/signal.signal_recv(0x0)
	/Users/bartle/src/go/src/runtime/sigqueue.go:144 +0x9d
os/signal.loop()
	/Users/bartle/src/go/src/os/signal/signal_unix.go:23 +0x25
created by os/signal.Notify.func1.1
	/Users/bartle/src/go/src/os/signal/signal.go:150 +0x45
FAIL	github.com/bsm/go-sparkey	0.274s
FAIL

@bartle-stripe I don't think that would be related, no.

Hm, so git bisect is implicating 96983721d42e9e238ea9fec720849ab7bb616122 and I can repro this pretty readily.

@bartle-stripe Interesting. Can you open a new issue with all the details?

I know this is ugly, but would it make sense to add an annotation, eg, :opaque, to use for marking such opaque pointers and having the reflect package understand it - i.e. a pointer that's ignored by gc, but used by reflect for direct pointer comparison? This would allow the opaque pointer to be wrapped by a go type and a finalizer can be used to free the underlying type in C or whatever other language is being used. I guess it would require an extra field in reflect.Value which is an overhead.

A complication in the runtime. pollDesc is marked as go:notinheap. It has a field, wt, which is a timer. That has a field arg which is an interface{}. Then at netpoll.go:290, we do (where pd is a *pollDesc):
pd.wt.arg = pd

That's writing a pointer to a go:notinheap type into an interface{}. Normally, that's fine, as we're just writing a pointer to the data field of an interface{}. But when I try to treat pointers to go:notinheap types as scalars, I can't store that scalar in the interface data field directly. I need to allocate some storage so I can store it indirectly. Allocation here is bad. The malloc call itself works, but then we're writing a pointer to that allocation to a location which isn't in the heap and won't get scanned.
Not sure why the prohibition on implicit allocation in the runtime didn't catch this.

This kind of implicit allocation isn't caught by the runtime prohibition. I added a check to see what happens, and it seems to trigger quite a bit, all on conversions to the argument of panic. Maybe we should make those explicit somehow? Maybe later.

Assuming they're mostly a few common data types (ints, strings, etc), seems like with some helpers this would go pretty  fast. And if it'd catch bugs, seems worthwhile.  Alternatively, we could teach the compiler (and runtime backtracing) to use  specialized panic handlers for common panic arg types, thereby avoiding the code weight associated with allocations in everyone's code.

@gopherbot Please open a backport issue for 1.15.


[5.x] Upgrade Python requirements

Backport to 5.x:

#22697
#22807
#23151
#23159
#23160
#23434

Rebased for CI fixes in #23567

This looks good to me, merged, thanks for backporting all this @andersk!


Polygonal search

Overview
Allows users to filter facilities search to within a polygonal boundary.
Users are now able to draw a polygon on the map. The facility search
results are filtered to only include the facilities which are contained
within the boundaries of the polygon.
The polygon is rendered based on the boundaries filter, so it renders
correctly on page refreshes based on the query string in the URL. The
polygon is also removed when the user resets the filters, thereby
removing the boundaries.
Redux functionality has been added to support the polygonal search
feature. Given a list of points in the form of [[lat, long]] in the
redux state, a query string is created when searching for facilities
which filters the facilities search to only return facilities within
the polygon described by the given points.
In addition, the points listed in the URL query string are able to be
parsed in order to rehydrate the redux state on load.
The API facilities search now takes a query string in the form
&boundaries=lat,lng&boundaries=lat,lng etc, where each incidence of
&boundaries=lat,lng represents a single point of a polygon. Search
results are filtered to only include facilities for which their
location is contained within the polygon.
Connects #793
Demo

Notes
I render the polygon as an SVG to avoid blocking clicks on the main map.
Testing Instructions

Check out this branch
Run vagrant ssh and ./scripts/server
Click on the polygon button on the map, then click on points until you've drawn a polygon.
The search results should be filtered to only show results within the polygon.
You should be able to click on search results as usual.
Refresh the page; the polygon should remain unchanged.
Click the trashcan button and the polygon filter should be removed and the search re-run.
Create a new polygon.
Click 'reset' in the search tab.
The polygon filter should be removed.

Checklist

[ ] fixup! commits have been squashed
[ ] CI passes after rebase
[ ] CHANGELOG.md updated with summary of features or fixes, following Keep a Changelog guidelines

Looking at this now.
I see there is a conflict, and some of the commits appear to come from the recently merged #966. It would be good to rebase this branch on develop.

Zooming to the search area does not seem to be working properly

Taking another look at the polygonal zoom now

Zooming to polygon wasn't working due to mismatch between Leaflet [lat, lng] params and GeoJSON [lng, lat]. Corrected with an explicit reformatting to a { lat, lng} object.

I don't have a ton of suggestions here, but this is the general thinking:

Move the button down below the "Country" filter

(these two filters are close in their functionality so I thought it made sense to have them together.)

Add a label  above the button


Variable int c is declared twice in calculator/main.bal

Description:
In calculator/main.bal variable int c is declared twice
int c = 0; //first declaration
while ( c != 5) {
    // print options menu to choose from
    io:println("Select operation.");
    io:println("1. Add");
    io:println("2. Subtract");
    io:println("3. Multiply");
    io:println("4. Divide");
    io:println("5. Exit");

    // read user's choice
    string choice = io:readln("Enter choice 1 - 5: ");
    int c = check <int>choice;  //second declaration

So this makes a syntax error as follow

Suggested Labels:
main.c, syntax error, calculator
Suggested Assignees:

Affected Product Version:
Ballerina 0.975.1
OS, DB, other environment details and versions:
Windows 10 Education
Steps to reproduce:
Open composer, create new file main.bal and copy the code given in quick tour for calculator. Syntax error is displayed in composer editor.
Related Issues:

This can be resolved by replacing
int c = check <int>choice;
with
c = check <int>choice;


Pause scanning in continuous capture mode

Hello,
I have been trying to figure out how to solve this -
In continuous capture mode ( e.g. ContinuousCaptureActivity.java in the sample project) , the camera is scanning the code repeatedly as long as the camera is placed on a QR code. I want to display a confirmation dialog with "Confirm", "Cancel" button, and a input box. When the dialogbox is active it should stop scanning but not the camera preview. When user press the "Confirm" or "Cancel" button it should start scanning again.
I tried "barcodeView.pause();" but it stops the scanning as well as camera preview. Can we pause scanning (but not the camera preview) when it detects a barcode?. (Which is well done in Zxing official Barcode Scanner app)

The easiest would be to just do a single scan each time. When the user
presses confirm or cancel, you just start another scan (you can do this
without closing the activity or stopping the preview).
On 01 Aug 2015 7:28 PM, "bs2015"<EMAIL_ADDRESS>wrote:

Hello,
I have been trying to figure out how to solve this -
In continuous capture mode ( e.g. ContinuousCaptureActivity.java in the
sample project) , the camera is scanning the code repeatedly as long as the
camera is placed on a QR code. I want to display a confirmation dialog with
"Confirm", "Cancel" button, and a input box. When the dialogbox is active
it should stop scanning but not the camera preview. When user press the
"Confirm" or "Cancel" button it should start scanning again.
I tried "barcodeView.pause();" but it stops the scanning as well as camera
preview. Can we pause scanning (but not the camera preview) when it detects
a barcode?. (Which is well done in Zxing official Barcode Scanner app)
—
Reply to this email directly or view it on GitHub
https://github.com/journeyapps/zxing-android-embedded/issues/71.

Thank you very much for quick reply. I did as you mentioned above and is working perfectly now.

@bs2015 Hi How did u print all scanned barcode? I need help.
I need result in following format.any suggestion?


fix demo with updated AGL

Fixes: https://github.com/elisa-tech/meta-elisa/issues/35
CI pipline of the PR: https://gitlab.com/elisa-tech/meta-elisa-ci/-/pipelines/760616187
Screenshot of qemu test: https://gitlab.com/elisa-tech/meta-elisa-ci/-/jobs/3677488286/artifacts/file/screenshot/screenshot_20230128_215509.jpeg

Manually reviewed the patch and checked the screenshots from the boot process. The PR can be merged.


12 AM Gaming

🎮 Game Request
Game logic and basic description
A website made using html css and js along with bootstrap consisting of several small games made using js html and js. This can include games like rock paper scissor,guess the number and others
Point down the features
Game points
It will consist of games like rock paper scissor, guess the number, whack a mile and others😀
Select program in which you are contributing
No response
Code of Conduct

[X] I follow CONTRIBUTING GUIDELINE of this project.

Hey @whiteknight16 !
Thank you for raising an issue 💗
You can self assign the issue by commenting /assign in comment 😀
Make sure you follow CODE OF CONDUCT and CONTRIBUTING GUIDELINES 🚀
Don’t Forget to ⭐ our GameZone🎮
Make sure you join our Discord🕹

Hey @whiteknight16! 🙂
It seems like you are not following proper guidelines !! 👀
Read documentation properly !!🙏
If you have any queries reach out to us on Discord🕹 .

Hey @whiteknight16 ! Thank you so much for your raising the issue💗
It’s all yours, you can come anytime again and make some contributions! 🚀
Alone, we can do little, but together we can do so much! 😇


"there is no disk in the drive" with x64 build under Windows 10

With WPNXM-0.8.6-Full-Setup-php56-w64 under Windows 10, I get an error prompt (twice) on launch, saying "there is no disk in the drive".
Wiped out my WPN-XM installation completely and started with a clean install, same thing.
I tracked it down to the CURL extension by disabling one extension at a time.
Tried replacing various files with ones from the official php-5.6.16-nts-Win32-VC11-x64.zip, and narrowed it down to libeay32.dll - replacing this file fixes the issue. (to make sure this is what fixed it, I restored all other files I had attempted to replace with their originals from your package.)
In summary, I don't think the libeay32.dll that comes with the latest release works on Win10-x64.

---
Want to back this issue? **[Post a bounty on it!](https://www.bountysource.com/issues/28741151-there-is-no-disk-in-the-drive-with-x64-build-under-windows-10?utm_campaign=plugin&utm_content=tracker%2F164029&utm_medium=issues&utm_source=github)** We accept bounties via [Bountysource](https://www.bountysource.com/?utm_campaign=plugin&utm_content=tracker%2F164029&utm_medium=issues&utm_source=github).

FYI, have been changing this file back and forth to confirm the issue comes back - it does.

Hey Rasmus,
thank you for reporting this issue.
Ok, i'm trying to reproduce the issue and these are my steps:

The installer is: WPNXM-0.8.6-Full-Setup-php56-w64
This installer uses the following package registry

https://github.com/WPN-XM/registry/blob/master/full-0.8.6-php5.6-w64.json

The package is "php-x64"

https://github.com/WPN-XM/registry/blob/master/full-0.8.6-php5.6-w64.json#L20

The download link is:

http://wpn-xm.org//get.php?s=php-x64&v=5.6.12

That downloads:

php-5.6.12-nts-Win32-VC11-x64.zip
from http://windows.php.net/downloads/releases/archives/php-5.6.12-nts-Win32-VC11-x64.zip

Extracting zip

Ok, now what exactly should i look for? The curl extension causes the problem?

Running php -v to list the PHP version:
PHP 5.6.12 (cli) (built: Aug  6 2015 12:05:25)
Copyright (c) 1997-2015 The PHP Group
Zend Engine v2.6.0, Copyright (c) 1998-2015 Zend Technologies

Running php -m to list the PHP extensions loaded

    [PHP Modules]
    bcmath
    calendar
    Core
    ctype
    date
    dom
    ereg
    filter
    ftp
    hash
    iconv
    json
    libxml
    mcrypt
    mhash
    mysqlnd
    odbc
    pcre
    PDO
    Phar
    Reflection
    session
    SimpleXML
    SPL
    standard
    tokenizer
    wddx
    xml
    xmlreader
    xmlwriter
    zip
    zlib

    [Zend Modules]

Hmm, works here.

On top of that goes our modified PHP config for PHP 5.6.

https://github.com/WPN-XM/WPN-XM/blob/master/configs/php/php56.ini-dev
Renamed to php.ini dropped into PHP folder.

php -m lists curl..

Hmm...
It "could" be that one of the extensions installed on top is not "64", but "32" instead.
That would clash with the underlying PHP. But all are bitsize 64: https://github.com/WPN-XM/registry/blob/master/full-0.8.6-php5.6-w64.json#L21-L35
Disabling the extensions is a good idea step-wise is a good idea to find such an issue.
I will test the installer package now.

Ok, i've tested the installer package on Windows-10-Pro-64.
I've started Nginx & PHP, then webinterface. It works out of the box.
Can't reproduce your issue.

I get an error prompt (twice) on launch, saying "there is no disk in the drive".

Which further steps are needed to come close to this error?

A simple php -v was enough to reproduce the "no disk in drive" dialog on my system.
I did a little more digging, and it's a commonly-reported issue on various forums etc. so it must be system-dependent - it appears to be dependent on your drive-letter assignments somehow.
It's one of those issues that comes and goes - here's one bug-report which is currently closed, but has been reopened and closed several times the past couple of years, so I'm guessing it's one of those phantom bugs that are insanely difficult to pinpoint...

Thank you for digging.
Interesting bug-report. I would say its a build/compile problem of the php extension curl.
They simply used a fixed path for the config during compilation.
After the compilation it becomes the hardcoded fallback, when some config vars are missing on the env.

When none of OPENSSL_CONF or SSLEAY_CONF environmental var was found, that hardcoded path will be used in PHP as well. PHP should use a hardcoded path to c:\usr\local\ssl

Please try setting one of these constants as env var pointing to the \bin\openssl folder, e.g.
set OPENSSL_CONF=c:/server/openssl/openssl.cfg

I will try that in the morning.
It's odd that swapping out the binary would fix the problem though?

Well, this is weird. I restored all the files to their previous versions, but now there's no problem - the error doesn't occur anymore, even after a reboot.
The only possible explanation for that is, the first time it finds this stuff, it caches either the location or the actual result somewhere, right?
So I have no idea how to reproduce this now...

Okay, so it happened again this morning - this time it happens with php-win.exe only, which I discovered only because the WPN-XM control panel appears to run it on startup (?)
This time, the error was repeatable, and so the first thing I tried, was swapping out libeay32.dll, which fixed the problem immediately.
This confirms both of my suspicions, since, here's the output with the DLL that comes with WPN-XM:
$ php-win -r "print_r(openssl_get_cert_locations());"
Array
(
    [default_cert_file] => D:\tmp\openssl-1.0.1p\vc11\x64/cert.pem
    [default_cert_file_env] => SSL_CERT_FILE
    [default_cert_dir] => D:\tmp\openssl-1.0.1p\vc11\x64/certs
    [default_cert_dir_env] => SSL_CERT_DIR
    [default_private_dir] => D:\tmp\openssl-1.0.1p\vc11\x64/private
    [default_default_cert_area] => D:\tmp\openssl-1.0.1p\vc11\x64
    [ini_cafile] =>
    [ini_capath] =>
)

And here it is with the one from the official PHP distro:
$ php-win -r "print_r(openssl_get_cert_locations());"
Array
(
    [default_cert_file] => c:/usr/local/ssl/cert.pem
    [default_cert_file_env] => SSL_CERT_FILE
    [default_cert_dir] => c:/usr/local/ssl/certs
    [default_cert_dir_env] => SSL_CERT_DIR
    [default_private_dir] => c:/usr/local/ssl/private
    [default_default_cert_area] => c:/usr/local/ssl
    [ini_cafile] =>
    [ini_capath] =>
)

I have no drive-letter assigned to D: on this system, so that explains the error triggered by the first DLL, which is trying to locate a file on a drive that doesn't exist.
This also confirms my suspicion about the result being cached somehow, as, once again, the error is now no longer repeatable again - it seems to know now where to look and where not to look.
I checked the version numbers, and both DLLs are <IP_ADDRESS> - so it's the same tagged release, but two different builds with different configurations.
Of course, this problem could occur even with the official build, on a system that doesn't have a drive-letter C: - so if I had to point at a bug, I'd say the library needs to do better when checking for the presence of various files; on Windows, it would need to check for the existence of a drive-letter before checking for the presence of a file.
I don't know to whom or where to report this issue...?

this time it happens with php-win.exe only, which I discovered only because the WPN-XM control panel appears to run it on startup (?)

Yes! php.exe (not php-win.exe) is executed during "Start" to run php -v for picking up the version number. This check ensures that the version display of the control panel is in sync with the PHP version used. This is needed, because a user might have switched the PHP version manually between stop and start operations.

here's the output with the DLL that comes with WPN-XM

Nope, that first output doesn't match the OpenSSL version shipped with that installer package.
The OpenSSL version packaged with full-next-php5.6-w64  is openssl-x64 1.0.2c.
Referencing: https://github.com/WPN-XM/registry/blob/master/full-0.8.6-php5.6-w64.json#L16
You wrote about swapping things out: do you mean a OpenSSL 1.0.1.p installation on top of WPN-XM 0.8.6? That would explain at least the version number on the path D:\tmp\openssl-1.0.1p\vc11\x64/cert.pem, but not that a configuration directive was set to a temporary folder. Setting config directives (especially for certificate pickups) to tmp is rubbish.

Installer Check in regard to OpenSSL directives

The installer sets only the curl.cainfoand openssl.capath directives in php.ini during the OpenSSL installation. See: https://github.com/WPN-XM/WPN-XM/blob/master/installers/full-php56-w64.iss#L1387-L1391
It doesn't set set the environment constant  OPENSSL_CONF during install !
And i think it shouldn't. Because any prior installation of OpenSSL, which relies on this setting should remain intact, after installing the server stack.

Registry Check

The OpenSSL 1.0.1p version was not installed via a WPN-XM packaged installer nor the webinstaller. The version isn't in our registry, yet.
Because: Checking the registry reveals, that i'm not even able to ship that version at all, due to abug in the OpennSLL version crawler. The version pickup failed after 1.0.1l and starts again at 2.0.0, see https://github.com/WPN-XM/registry/blob/master/wpnxm-software-registry.php#L1015
Due to the crawling bug the following versions are not (yet) in the registry (1.0.1 + m, o, p), see https://indy.fulgan.com/SSL/
One more thing: You will find libeay32.dll very often on a system. Could this be a DLL shadowing issue influenced by the OpenSSL constant or the path?

I don't know to whom or where to report this issue...?

Well, reporting to me is a start, but ... i still don't know how to reproduce it, in order to qualify it as an WPN-XM bug / configuration issue. This needs a sandbox installation - to exclude all other issues and focus on WPN-XM.
(Sidenote: I've already pointed out how WPN-XM gets to a better debugging environment. The first step is to get the "vargrant windows sandbox" up: to test the installer in an sandboxed environment. The second step is reduce the number of manual testing steps by using the task-runner combined with some "environment checking" tasks.)
Happy hacking, Jens

DLL shadowing, hmm, I did have some trouble with Git this week, and had to reinstall it several times - at one point, I discovered that Git's global config was pointing to a previous, non-existent path for root certificates. Could this be related?

The Git issue seems to be an unrelated/independent Git configuration issue.
Its possible that the global config or the repo config contains a wrong path to the SSL certs.
And i'm again out of the game, because at the moment WPN-XM doesn't do any git configuration; except shipping a custom bash_profile.
With DLL shadowing i meant, that there is a certain search order for dynamic linked library loading.
https://msdn.microsoft.com/en-us/library/ms682586(VS.85).aspx
What happens, if libeay32.dll is already loaded in memory. Will PHP still look at the one in its path or reuse the loaded one? Its possible, that this causes trouble, but its only guessing around.
In regard to the original issue, i still think they used a hardcoded path during compilation, which acts as default fallback. The origin of the problem is somewhere between "winlibs/openssl",  "phpext_curl" and "winlibs/curl". I guess Anatol (ab / weltling) is the only guy who could bring some light into this issue.

With DLL shadowing i meant, that there is a certain search order for dynamic linked library loading

I understood that - what I was suggesting, is that maybe the Git installer did something in the registry to affect the DLL search; it's possible it's finding a different DLL now, one installed by the Git installer.
But yeah, I also have no real idea how to diagnose this any further...

(For WPN-XM the following line should solve he certificate problem with Git:
git config --system http.sslcainfo "C:\server\bin\openssl\ca-bundle.crt")

maybe the Git installer did something in the registry to affect the DLL search; it's possible it's finding a different DLL now, one installed by the Git installer

Yes, it could be. One would have to check it with Process Monitor or ListDlls from Sysinternals.
They do a lot of stuff during installation. I didn't test the latest version, yet, but i guess the wild ride continues. Now the portable package has a post-install.bat... I like the Git functionality the packages provides, but i don't like the way they install this software.
I have a different position on this, because you can't build a relocatable stack, if applications rely heavily on configuration data stored in the Windows registry. I favor simple configuration files or configuration file hierarchies. (Newer versions of Git-for-Windows use the registry key HKEY_LOCAL_MACHINE\Software\GitForWindows to store additional configuration data.)

I hope this issue vanished over time :)
Status: I could not reproduce the issue.
Steps explained in https://github.com/WPN-XM/WPN-XM/issues/514#issuecomment-160924577 / https://github.com/WPN-XM/WPN-XM/issues/514#issuecomment-160950331
Closing.

It's one of those long-standing "comes and goes" issues under Windows, but yeah, I haven't run into it recently :-)


Prepare to support Cygnus command

Proposed changes
This PR is for preparing to support Cygnus command.
Types of changes
What types of changes does your code introduce to the project: Put an x in the boxes that apply

[ ] Bugfix (non-breaking change which fixes an issue)
[X] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] Update only documentation, not any source code.

Checklist
Put an x in the boxes that apply. You can also fill these out after creating the PR. If you're unsure about any of
them, don't hesitate to ask. We're here to help! This is simply a reminder of what we are going to look for before
merging your code.

[X] I have read the CONTRIBUTING doc
[X] I have signed the CLA
[X] I have added tests that prove my fix is effective or that my feature works
[ ] I have added necessary documentation (if appropriate)
[ ] Any dependent changes have been merged and published in downstream modules

Further comments
N/A

Coverage decreased (-0.02%) to 99.975% when pulling fb2c5780007199a93ea978b21078da83fd7f7f10 on fisuda:feature/cygnus into d0c0876f32bdee465cc16af43eb0aa95f0ef5eb6 on lets-fiware:main.


Bump Kotlin from 1.8.10 to latest 1.9.10.

Replacement for

#265

Looking forward to 3.0.4 with the JTE/KTE fixes, let me know if there are any tasks I can accomplish with PRs which will speed it along.

Thanks! With this change and the spring boot changes I'll release a 3.1.0 today.


Ability to record all messages and message types over all UAuthority

Hey @evshary -- I think in support of the up-zenoh-recorder we'll need the ability to listen for all messages coming over all authorities.
Seems like to me we could accomplish this with handing in an empty UUri, i.e. even the UAuthority is empty for now when calling register_listener().
i.e.
let recording_uuri = UUri::default();
recorder_up_client.register_listener(recording_uuri, my_recording_listener);

I think this would be able to handle the use-case of passively listening for Publish, Notification, and Request message types.
Publish & Notification
Publish and Notification are straight-forward, since they use the Zenoh Subscriber pattern.
Request
For the Request message type we would just be sure not to send a Response, so as to not "compete" with the actual service listening on that UUri.
Response
However, I'm unclear on how we would be able to passively listen to the Response message type, since in Zenoh terminology, when we handle a Request message we call reply on the query. It seems to me like there's nothing sort of "externally visible" for the uRecorder to be able to see when that happens. But maybe I'm wrong and my test case is wrong.

Could you help me understand if the uRecorder would be able to see the Response as well when it's sent up by a service?

Test Code
I opened a draft PR over here to show the test code which is failing.

No, I don't think we can record the response from Zenoh reply currently.
Maybe one workaround is just like ROS 2. The RPC Server should also publish the same message which it wants to reply.
Then the recorder can also receive that message.
https://github.com/ros-infrastructure/rep/pull/360/files

Would the idea be that under the hood in UPClientZenoh when send_response() is called when a service provider calls send() with a Response message, within send_response() a normal Zenoh publish is used to also transmit the Response message so that it's visible to the uRecorder?
It's sending an extra Zenoh publish out each time a service provider sends a Response message.
Is that roughly correct or is there more to it?

Yes, that's the whole concept.

Okay, thanks for clarifying. Let's bring this to the uProtocol Zenoh weekly to discuss a plan. :+1:

After the PR here, there is no more queryable and it's possible to record all message types.


Update of Compute Library and oneDNN versions in mkl_aarch64 build config

This PR brings the following changes:

the version of Compute Library for the Arm Architecture (ACL) is updated to v21.05. This release contains several bug fixes compared to the currently used v21.02 (Conv2D works correctly in the case of dilations and at high numbers of threads);
oneDNN version is updated to v2.3 to keep synchronisation with PR#50708;
the macro DNNL_AARCH64_USE_ACL is now set automatically for --config=mkl_aarch64.

@penpornk @gbaned please have a look.


Add access(2) constants to the constants table

fs_access is equivalent to access(2), but this function is useless without the corresponsing access mode constants F_OK, R_OK, W_OK, and X_OK. Let's add these constants to the table.

Thanks!

mode can be specified as a string

I didn't know that! TYVM for the info.


possible to implement an example that uses http2 tls terminating client?

need h2 terminating tls client example. the one shown is half done

There are basicly 2 ways to do it:

Use our modified h2(with pure async read/write). However, this is still unstable now. @har23k was working on it previously.
Use the original h2 crate. h2 crate relies on poll-style read/write, so it needs to enable the "poll-io" feature of monoio. In this case, pure epoll or epoll over iouring is used. However, momoio-tls only provide a async style wrapper, so it is unimplemented yet. I will implement the ability soon(maybe within 1 months).

@har23k Could you update the progress about native h2 support?

@sprappcom: If you are looking for a HTTP/2 TLS client, then please check this testcase. Furthermore, we have a client which can support both HTTP/2 and HTTP/1/1 with or without TLS. See monoio-transports for more details.

@har23k Could you update the progress about native h2 support?

Native H2 support is now fully implemented, and no new bugs have been reported so far.

@har23k ok. will look into it. thx


Update Keyboard page generation script

Thanks @noroadsleft
This should link to the bin files when they're present, so that you can download the correct firmware image based on the board.
This is .... untested, though.
Also, this should be merged/rebased, and not squashed.  That way, we can revert the script change, and still have the ARM "hex" files removed.  If needed.
Closes #34

Looks like it's working as intended.
Still need to purge the bad files.

well, some of them were purged manually. but yeah....
Also, it looks like it is only producing the qmk toolbox link for bin files now.

Also, it looks like it is only producing the qmk toolbox link for bin files now.

Yeah, I just noticed that myself.

Fixed it.  It was a missing a bit on that line.  Next push should generate the links properly.

Yeah I spotted the bug last night. I had a branch ready to go and then spotted that you'd used Collaborator Hax to commit directly to the repo to fix it when I went to open a PR. :rofl:


update mock data with 3 updated widgets data

accident_count_by_accident_year
injured_count_by_accident_year
injured_accidents_with_pedestrians

Reference material:
mock data in api
static mock data of widgets

@atalyaalon asides from the newly modified "injured_accidents_with_pedestrians", the other 2 widgets seem to have mock data in the desired format. Am i missing somthing?


Blog post: how to use emojis in Metanorma

From https://github.com/metanorma/metanorma-ogc/issues/655#issuecomment-2067849182:

Can you please write a blog post on how to use emojis in Metanorma and that now we support them? Thanks!

Actually the post about how to add the font to support the special characters in the PDF.
Added in https://github.com/metanorma/metanorma.org/pull/805.


docs: Update changelog to explain possible issue with emotion/css.

Issue: -
What I did

I received a message from a team having issues with upgrading from 4.3.0 to 4.6.0. Turns out they were using the emotion css prop, and that's not working for them anymore
const bodyStyle = css`
    padding: 16px 16px 0 16px;
`;

return (
        <Card
            css={cardCss}
            background={theme.colors.neutral600}
            isInverse
        >
            <CardBody css={bodyStyle}>
...

Turns out that with the latest version of emotion that we upgraded to, that is no longer supported. These are the supported ways of styling components:
https://codesandbox.io/p/sandbox/emotion-11-and-magma-2tg5w5?file=%2Fexample.tsx
This PR just makes a note in the changeset for adopters to be aware of this.
Screenshots:

Checklist

[X] changeset has been added
[X] Pull request description is descriptive
[X] I have made corresponding changes to the documentation
[X] New and existing unit tests pass locally with my changes
[-] I have added tests that prove my fix is effective or that my feature works

How to test

Confirm message is visible on change log

Verified on:
https://next--upbeat-sinoussi-f675aa.netlify.app/api-intro/changelog/
This PR just makes a note in the changeset for adopters to be aware of this. ✅


Callbacks that are supposed to run for an onChange do not run

When I run my program in terminal (ex: node program.js 3000 Milk 13:00) in the exercises:
State
CSS2
Event

I direct my browser to localhost:3000, everything is initially rendered fine. However, when I do something like click on the check boxes or the "Add" button in Event, nothing happens to the any of the elements they are supposed to change the state of (i.e. checking the box does not strike through the letters). The check boxes still get a check and the buttons still highlight when you press them, but that is it.
I wrote code that passed the exercises. I even copied and pasted the solutions from the module's repository into my program, ran it again, and got the same result.
When I click on the button, the table does not get updated with the new information. I tried adding a console.log(1) in the functions that are supposed to update the DOM state, and the console does not print anything when I click on the forms. It seems like onChange does not do anything.

Can confirm - No onChange -handlers are triggered.


A URL-copy button would be really useful

$subject for the generated URLs.

I copy button have been added in the new version 😄


Render Relay Modern pages using a QueryRenderer directly

[x] TwoFactor
[x] GraphQLExplorer

As a bonus I also discovered that the New Team screen was also stuffed. 😢

OK, think we’re good here — going to back out the reverts and then get this in.


Error when trying to use on Windows 8.1 pro

It looks like there is an error when trying to apply the updates when using Windows 8.1 pro.

The Windows 8.1 Pro ISO i used to install was downloaded directly from Microsoft's website: https://www.microsoft.com/en-us/software-download/windows8ISO

I think this might be a duplicate of #112 and #104

@kirb this should be able to get closed since #139 has been merged

Thanks :+1:
Will be fixed in Legacy Update 1.7.


Current playing playlist

Hey, Im currently working on an application which should restore the volume, track and the playlist which Spotify played before the shutdown of Windows. So the problem is that Windows kills the application on shutdown, giving Spotify not enough or no time to save the "settings". There are a lot of requests to the developers to fix this issue (and I think its really not that big of an issue; just reacting to some Exit Event and saying Windows to wait for it like for example Word does would work perfectly fine) but unfortunately no one fixed it yet.
Right now my application saves the volume, track and some other player stuff like shuffle in a Json file, when Windows shuts down, and then restores all of these "settings" on startup of Spotify. As mentioned in the title, my problem is that I found no way in this API and no article about it on the official Spotify Web API page which is about reading or setting the playlist which is currently playing.
Im not familar with the code behind this API, so I just used the great Tutorials and got it to work, but how I understand it is that the API sends URLs over a local HTTP server and the Spotify app reacts to it. So is there any way given to get the current playlist and then set it again?

Yes it's possible:
https://developer.spotify.com/documentation/web-api/reference/player/get-information-about-the-users-current-playback/
PlaybackContext playback = spotify.GetPlayingTrack();
playback.Context.uri gives you: spotify:user:NAME:playlist:PLAYLISTID
now if you want to play it back:
spotify.ResumePlayback(contextUri: "spotify:user:NAME:playlist:PLAYLISTID");

Ok, thank you for your approach! Ill try it out when I have time for it.

Feel free to reopen if you have questions @Thomi7

On a similar note, is it possible to play a song then continue with the playlist the user is already listening to?
I have this set up, where it would find a song to play according to the song, then play it. The issue is, after that song is done playing, it'll just stop playback.
string recommendedURI = _spotify.GetRecommendations(trackSeed: new List<string> { songID }).Tracks[0].Uri;
                ErrorResponse err = _spotify.ResumePlayback(uris: new List<string> { recommendedURI }, offset: "");


update generation 2 boot order during iso installation

Merge Checklist

All boxes should be checked before merging the PR (just tick any boxes which don't apply to this PR)

[x] The toolchain has been rebuilt successfully (or no changes were made to it)
[x] The toolchain/worker package manifests are up-to-date
[x] Any updated packages successfully build (or no packages were changed)
[x] Packages depending on static components modified in this PR (Golang, *-static subpackages, etc.) have had their Release tag incremented.
[x] Package tests (%check section) have been verified with RUN_CHECK=y for existing SPEC files, or added to new SPEC files
[x] All package sources are available
[x] cgmanifest files are up-to-date and sorted (./cgmanifest.json, ./toolkit/scripts/toolchain/cgmanifest.json, .github/workflows/cgmanifest.json)
[x] LICENSE-MAP files are up-to-date (./SPECS/LICENSES-AND-NOTICES/data/licenses.json, ./SPECS/LICENSES-AND-NOTICES/LICENSES-MAP.md, ./SPECS/LICENSES-AND-NOTICES/LICENSE-EXCEPTIONS.PHOTON)
[x] All source files have up-to-date hashes in the *.signatures.json files
[x] sudo make go-tidy-all and sudo make go-test-coverage pass
[x] Documentation has been updated to match any changes to the build system
[x] Ready to merge

Summary

Current behavior:
Mariner installs itself onto Disk and reboots. Leaving boot order untouched, which causes seconds of failed booting into PXE after the post-install reboot and subsequent reboots.
Introduced behavior:
When in an EFI boot type'd iso install, we have the ability to set our boot order via the EFI boot manager (i.e., efibootmgr). Using this tool's functionality, and the knowledge specified by our image config files (e.g., unattended.json configs, attendedconfig.json, etc) we can set the first target in the boot order to our shim 'bootx64.efi' which typically lives in /boot/efi
Change Log

Primary:

When installing a gen2 image via ISO, set the newly installed shim (bootx64.efi) as the first target in the EFI boot order
All 'installFunc' implementations must now pass back a new InstallationDetails object

Supporting Changes:

Change configuration.setDefaultConfig to an exported function, so that config objects not generated by configuration.Load() (i.e., attended installers) can have their default config properly set.
Added a new utility function to configuration.go to find the first partition that has the Boot flag set.
Split updateBootOrder() into multiple functions, ejectDisk() and updateBootOrder()
Added a new function, removeOldMarinerBootTargets(), that removes older entries of the Mariner shim from the efi boot order when attempting to install.

Does this affect the toolchain?

No
Associated issues

(Work Item)/(Bug) 34925438

Test Methodology

Multiple local builds of ISOs (attended and unattended)
Pipeline build: (ARM64 - PASSED) (AMD64 - PASSED)

Kicked off new pipeline run, awaiting results before merging.


AR.js Library

Working with AR.js Library

Hello again !
In this time I''m play with AR.js Library currently in version 3.0.
I got the basic three.js exapmple here:
I'm trying tho run inside nunustudio porting this code.
On graphical editor:
I imported the ar.js library
I changed the "program" name by "renderer" and checked the alpha option
I added a box and camera in the scene, but I don't know if I have put on Render Facts (update artoolkit and mesh on every frame) inside update() function.
I also include a html file with this line:
<script>THREEx.ArToolkitContext.baseURL = '/'</script>
Script code:

include("ar.js");

var camera;
var box;

function initialize()
{

	camera = scene.getObjectByName("camera");
	box = scene.getObjectByName("box");

	////////////////////////////////////////////////////////////////////////////////
	//          handle arToolkitSource
	////////////////////////////////////////////////////////////////////////////////

	var arToolkitSource = new THREEx.ArToolkitSource({
		// to read from the webcam
		sourceType : 'webcam',
	})

	arToolkitSource.init(function onReady(){
		onResize()
	})

	// handle resize
	window.addEventListener('resize', function(){
		onResize()
	})
	function onResize(){
		arToolkitSource.onResizeElement()
		 arToolkitSource.copyElementSizeTo(renderer.domElement)
		if( arToolkitContext.arController !== null ){
			arToolkitSource.copyElementSizeTo(arToolkitContext.arController.canvas)
		}
	}
	////////////////////////////////////////////////////////////////////////////////
	//          initialize arToolkitContext
	////////////////////////////////////////////////////////////////////////////////

	// create atToolkitContext
	var arToolkitContext = new THREEx.ArToolkitContext({
		cameraParametersUrl: THREEx.ArToolkitContext.baseURL + 'https://github.com/jeromeetienne/AR.js/blob/master/data/data/camera_para.dat',
		detectionMode: 'mono',
	})
	// initialize it
	arToolkitContext.init(function onCompleted(){
		// copy projection matrix to camera
		camera.projectionMatrix.copy( arToolkitContext.getProjectionMatrix() );
	})

	// update artoolkit on every frame
	onRenderFcts.push(function(){
		if( arToolkitSource.ready === false )	return

		arToolkitContext.update( arToolkitSource.domElement )

		// update scene.visible if the marker is seen
		scene.visible = camera.visible
	})

	////////////////////////////////////////////////////////////////////////////////
	//          Create a ArMarkerControls
	////////////////////////////////////////////////////////////////////////////////

	// init controls for camera
	var markerControls = new THREEx.ArMarkerControls(arToolkitContext, camera, {
		type : 'pattern',
		patternUrl : THREEx.ArToolkitContext.baseURL + 'https://github.com/jeromeetienne/AR.js/blob/master/data/data/patt.hiro',
		// patternUrl : THREEx.ArToolkitContext.baseURL + '../data/data/patt.kanji',
		// as we controls the camera, set changeMatrixMode: 'cameraTransformMatrix'
		changeMatrixMode: 'cameraTransformMatrix'
	})
	// as we do changeMatrixMode: 'cameraTransformMatrix', start with invisible scene
	scene.visible = false

	onRenderFcts.push(function(delta){
		box.rotation.x += Math.PI*delta
	})

	//////////////////////////////////////////////////////////////////////////////////
	//		render the whole thing on the page
	//////////////////////////////////////////////////////////////////////////////////

	/* // render the scene - I think don't need this
	onRenderFcts.push(function(){
		renderer.render( scene, camera );
	}) */

	// run the rendering loop
	var lastTimeMsec= null
	requestAnimationFrame(function animate(nowMsec){
		// keep looping
		requestAnimationFrame( animate );
		// measure time
		lastTimeMsec	= lastTimeMsec || nowMsec-1000/60
		var deltaMsec	= Math.min(200, nowMsec - lastTimeMsec)
		lastTimeMsec	= nowMsec
		// call each update function
		onRenderFcts.forEach(function(onRenderFct){
			onRenderFct(deltaMsec/1000, nowMsec/1000)
		})
	})

}

Version

Platform

Web Version

Hello
There has been a AR example in nunuStudio for quite some time but it was using aruco markers and was really poorly made.
I will take some time and update it to a proper tutorial. There are some problems in this code that you showed above.
The resizing stuff can be done inside of the onResize(x,y) method of the script object. (Check here, https://nunustudio.org/learn/basics/02_script/page.html)
Rendering look should be moved to the update() method, there is no need to create another render loop and you are not cleaning that render loop on exit (using the dispose method) leaving a code leak there.
Do you think that including AR functionality directly in nunuStudio would be something that people would use?
Thanks a lot!

Hi !

Do you think that including AR functionality directly in nunuStudio would be something that people would use?

Well, I think yes :)
When you need mix interactive animation, for example tracking methods or object detection
with non-interactive (pre-made) animation , a graphical user interface with a timeline editor is great solution.
I have projects ideas like interactive poetry an realtime VFX .
The concept would be an interactive animation as event for play non interactive animation.
Many thanks for your help !! I'll trying fix this code.
Cheers,
Henrique


[Proposal][Android] Add ability to get device RoundedCorner

It looks like Android 12 has introduced some nice features which allow developers to get the corner radius of a device.  This is a potential game changer for designs at the edge of the screen.
Any chance this can be implemented in Flutter?
https://developer.android.com/reference/android/view/RoundedCorner
https://developer.android.com/reference/android/view/WindowInsets?hl=en#getRoundedCorner(int)

CC @Piinks

@goderbauer Can you clarify that the feature request for the Engine here is to plumb additional data through something like MediaQuery?
FYI @blasten @GaryQian @cyanglaz @jmagman

Thanks everyone for starting on this
For iOS side of the equation, would it be possible to replicate the true device corners with CALayerCornerCurve.continuous
https://developer.apple.com/documentation/swiftui/roundedcornerstyle/continuous
and then some fixed values for known devices?

Device
Value (pts)

iPhone X / Xs / Xs Max / 11 Pro / 11 Pro Max
39.0

iPhone Xr / 11
41.5

iPhone 12 mini
44.0

iPhone 12 / 12 Pro
47.33

iPhone 12 Pro Max
53.33

iPad Air / iPad Pro 11-inch / 12.9-inch
18.0

source: https://kylebashour.com/posts/finding-the-real-iphone-x-corner-radius

Another option to explore: Could developers just implement/use a plugin to get these information? Are there any use cases that would require us to provide an API in the framework for this?

Any plans on this? We should be able to get this information. Some UI elements that are close to edges of the screen look ugly when the element's border radius doesn't match device screen's corner radius.

The amount of iOS devices still alive to date is a small enough amount that their values can be hardcoded... Android devices on the other hand will need a way to dynamically get the radius (not sure if this is already possible.).. I'd say, don't let iOS's lack of an API for this hold back from adding this, iOS is easy to hardcode into Flutter. It's not like the devices are changing corner radius

@cyanglaz @goderbauer @GaryQian
For the fidelity question, how about this?
extension UIScreen {
public var displayCornerRadius: CGFloat {
    guard let cornerRadius = self.value(forKey:"_displayCornerRadius") as? CGFloat else {
        return 0
    }
    return cornerRadius
 }
}

import UIKit

class ViewController: UIViewController {

  override func viewDidLayoutSubviews() {
      super.viewDidLayoutSubviews()
      view.layer.borderColor = UIColor.blue.cgColor
      view.layer.borderWidth = 5.0
      view.layer.cornerRadius = UIScreen.main.displayCornerRadius
  }

}

Another option to explore: Could developers just implement/use a plugin to get these information? Are there any use cases that would require us to provide an API in the framework for this?

I believe having a plugin to provide the information is the better way to do it.

Is there an update on this... I don't seem to find a solution nor do I find a package that somehow does it
Maybe, can we access the android API through flutter to retrieve the value?

Flutter should probably include this information in the MediaQuery results. The framework should provide the bridge, not an external plugin or package. This concept is built into Android 12, 13, and 14, and if in fact that there's no solution within the framework, it's a silly choice.

wait for it to make beautiful UI

If someone is anxious to use this function, you can use this plugin temporarily first
window_rounded_corners

Guys just use MediaQuery.viewPaddingOf(context).top and everything works!

Guys just use MediaQuery.viewPaddingOf(context).top as the radius of the device screen and everything works!

WHAT A HACK - I guess it works for iOS, but not really for something like Pixel 6

looks like @rehmatsg made a package - didn't publish it tho:
https://github.com/rehmatsg/device_corner_radius


Cannot consume package from TypeScript

Results in:
error TS2307: Cannot find module 'local-web-server' or its corresponding type declarations.
5 import LocalWebServer from 'local-web-server';

does this thread help?
https://github.com/microsoft/TypeScript/issues/33079

There is a note about it in the Typescript docs:

Note: node module resolution is the most-commonly used in the TypeScript community and is recommended for most projects. If you are having resolution problems with imports and exports in TypeScript, try setting moduleResolution: "node" to see if it fixes the issue.

Taken from here

That's unfortunately what I have already.

But reading a bit more on https://github.com/microsoft/TypeScript/issues/33079 it seems it might need something in an upcoming relase. If you want to be more compatible with what is out now, I think it would work if there was a cjs exports alternative in the package, I got a few of those kind of dependencies already.

as a general rule, all my projects have support for require and CommonJS but unfortunately I had to drop CommonJS support in local-web-server v5.0.0 due to rollup (used to create the CJS build) not having support for dynamic imports (required to load middleware plugins).
I will look into the Typscript issue.. if it's not too inconvenient, you could use v4.2 until the Typescript people release a fix..

No problem, I'll close this for now.

I got it to work with the latest local-web-server using typescript 4.5 beta.
With this code: (index.ts)
import LocalWebServer from 'local-web-server'

const lws = new LocalWebServer()

and this config: (tsconfig.json)
{
  "compilerOptions": {
    "module": "node12",
  }
}

Running tsc produced this output: (index.js)
"use strict";
var __importDefault = (this && this.__importDefault) || function (mod) {
    return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
const local_web_server_1 = __importDefault(require("local-web-server"));
const lws = new local_web_server_1.default();


Could not access configuration profile.

Contour Terminal version
<IP_ADDRESS>
Installer source
GitHub: release page
Operating System
Ubuntu Linux 20.04
Architecture
x86-64
Other Software
No response
Steps to reproduce
Install & Run contour
Expected Behavior
A visible window of contour in which I can work.
 No profile with name '' found. Available profiles:
Configuration failure. Could not resolve configuration profile.
[error] Could not access configuration profile.

Additional notes
No response

Turns out I had an old outdated contour.yml file from 2021.. renaming it fixed the problem. Though I would argue that it should start despite a broken .yml file.

The configuration system is a mess, and will need to be reworked. #776


Remapping doom-leader-alt-key to M-m renders helm unusable

Observed behavior
Since I want more consistent behavior with Spacemacs, and because M-m conflicts with my desktop setup (Plasma klauncher shortcut),
In ~/.doom.d/init.el, I added:
(setq doom-leader-alt-key "M-m"
      doom-localleader-alt-key "M-m m")

When I run any helm command, e.g. C-x C-f I get this message in the minibuffer:

Key sequence M-SPC h M starts with non-prefix key M-SPC

Expected behavior
Helm should work normally.
Steps to reproduce
As in Observed behavior
System information

Click to expand

OS: gnu/linux (x86_64-pc-linux-gnu)
Emacs: 26.1 (7月 05, 2018)
Doom: 2.0.9 (develop b88c71271543ce8556451a90179c7a6c2457769a)
Graphic display: t (daemon: nil)
System features: XPM JPEG TIFF GIF PNG RSVG IMAGEMAGICK SOUND GPM DBUS GSETTINGS NOTIFY ACL GNUTLS LIBXML2 FREETYPE M17N_FLT LIBOTF XFT ZLIB TOOLKIT_SCROLL_BARS GTK3 X11 MODULES THREADS LIBSYSTEMD LCMS2
Details:elc count: 0
uname -a:  Linux DCHORUS-OFFICE 4.19.12-arch1-1-ARCH #1 SMP PREEMPT Fri Dec 21 13:56:54 UTC 2018 x86_64 GNU/Linux
modules:   (:feature eval (evil +everywhere) file-templates (lookup +docsets) snippets spellcheck syntax-checker workspaces :completion company helm :ui doom doom-dashboard doom-modeline evil-goggles hl-todo nav-flash treemacs (popup +all +defaults) unicode vc-gutter vi-tilde-fringe window-select :editor multiple-cursors rotate-text :emacs dired ediff electric hideshow imenu vc :lang data emacs-lisp (haskell +intero) markdown (org +attach +babel +capture +export +present) python rust (sh +fish) :config default)
packages:  n/a
exec-path: (~/.local/bin ~/.cargo/bin ~/.cabal/bin ~/go/bin ~/.emacs.d/bin /usr/local/sbin /usr/local/bin /usr/bin /opt/cuda/bin /opt/cxoffice/bin /var/lib/flatpak/exports/bin /usr/lib/jvm/default/bin /usr/bin/site_perl /usr/bin/vendor_perl /usr/bin/core_perl /usr/lib/emacs/26.1/x86_64-pc-linux-gnu)

As of 63a224f0, this issue should be resolved. Please update and let me know!

Hi @hlissner ,
After doom upgrade, I got this error:
Symbol's function definition is void: solaire-global-mode

I tried M-x package-install but I couldn't find solaire-mode in the list.

You'll need to update your packages by running bin/doom update (or make update, they do the same thing).

Hi @hlissner ,
Thank you, I should have read the wiki more carefully!
Now that I have upgraded, helm works fine, but the doom-leader-alt-key also has no effect. I bound it to "M-m" and it's still bound to the back-to-indentation command.
Did I miss something?


Create git actions for static analysis & tests

Create for static analysis :)
Closing for now and adding to tests issue the addition of a workflow.


Server process consumes 100% of a CPU core even when game is paused

Describe the bug
I just observed the server process taking up a full CPU core when running a battle, regardless of the configured tick speed or if the game is paused. I also observe that the battle cannot seem to run at over ~35 TPS. Admittedly, this isn't a terribly powerful machine and the network always introduces some delay, but I believe speeds over 100 TPS should be easily possible.
To Reproduce
Steps to reproduce the behavior:

Start a server, GUI as well as two Walls bots.
Start a battle.
Pause the battle.
Look at task manager/resource monitor/...

Expected behavior
While the battle is paused, the server should use minimal CPU time. When running the battle, it should depend on the configured tick speed.
Desktop (please complete the following information):

NixOS 24.11 (Linux Kernel 6.12)

Java info:

Version: 21
Vendor: OpenJDK

Additional Context:
Both the GUI and server processes show resource consumption that falls within expectations.
EDIT: I just observed that the lower I set the turn timeout, the faster does the battle actually run (without bots skipping any turns). In fact, there appears to be an inverse correlation.
This leads me to the following hypothesis: a turn will not just take at most as long as the timeout, it will also take roughly at least as long, capping the maximum TPS.

I believe I figured out why the turn timeout limits the speed the battles can run at. Currently, the timeout is the only thing calling GameServer#onNextTurn.
GameServer#handleBotIntent checks if all intents for the turn have been received and calls resetTurnTimeout in that case. Unfortunately, resetTurnTimeout only checks if the period of the timeout needs to be adjusted (which generally it doesn't need to be) and does nothing. Simply adding a call to onNextTurn likely fixes that issue.
I will test my proposed fix tomorrow. However, I don't currently think this is the reason for the extremely high CPU usage.

The high resource consumption is due to a busy wait in NanoTimer. I'm working on fixes for the issues raised here and will send a PR later.

@Cu3PO42
This could be OS specific, as I have not run into this issue, at least on Windows 11.
onNextTurn() is called on each game tick controlled by the timer. So it should not be called anywhere else. The bots have a guarantee that they can use up to X amount of time per turn. So that is why the timer is crucial.
resetTurnTime is calculated, as the user might change the TPS mid game.
If all bots have sent their intent for the turn, there is no reason to wait for the next turn, as all bots are ready for the next turn, and hence we can reset the turn timer.

I can reproduce the behavior on Windows 11 as well:

It might not be as apparent because the server does not show up as part of the Robocode applicaiton, but it's also using roughly one full CPU core here while the game is paused. I am honestly quite relieved it happens on Windows as well, because I could not imagine any reason at all why the busy waiting I found would be platform specific.

If all bots have sent their intent for the turn, there is no reason to wait for the next turn, as all bots are ready for the next turn, and hence we can reset the turn timer.

Absolutely, but the timer reset did not trigger execution of the onNextTurn method. Hence the next turn would only start when the bots have sent their intents AND the freshly reset timer elapses (assuming that all bots send their intent in time). This drastically limits the maximum tick speed. For reference, here's a screen recording of RTR running a battle between two Walls bots on a PC with a 5800X3D CPU:
https://github.com/user-attachments/assets/7781d4ee-2bce-4027-8f58-5b0d0783e1fc
There is also another reason to wait after all bots sent their intent: to achieve the desired TPS if the bots are faster than necessary.
I am working on a revision that takes all of this into account.

I of course agree that the next turn can be executed (calling onNextTurn) when all bots have sent their intent.
If the game is set to max TPS (-1), this becomes very important.
Also note that the user might set the game to e.g. 1 TPS (e.g. when debugging), but the bots still need to obey the allowed turn time limit, where the intent must be sent, even when 1 TPS gives the bots more time.
I look forward to see if you succeed in fixing the issue. 🙂

@Cu3PO42
I am very impressive with your work. 🤩
And now I do see the busy waiting, which was definitely bad code!
I have tested it, and it seems to work really smoothly. And I don't think we need any follow-up PR.
I did make a minor change replacing Thread.sleep(Duration) as this is first supported from Java 19, and the minimum requirement for Tank Royale is currently Java 11. I just replaced it with TimeUnit.NANOSECONDS.sleep(long) which does the same work. Of course we should not stick to Java 11 forever, but in this case we don't need to upgrade to Java 19.
I also want to refactor the run() method into smaller pieces so the code is easier to grasp, and to avoid redundant code as well. I will put in the code suggestion for you, so you can see my suggestion.

Released with version 0.27.0


Deprecate inactiveColor property of CupertinoCheckbox

Use case
Since the inactive color of a CupertinoCheckbox can be configured by fillColor in inactive states, it makes no sense for this parameter to exist.
See conversation https://github.com/flutter/flutter/pull/148804#discussion_r1643437483 for more details.
https://github.com/flutter/flutter/pull/148804
Proposal
Deprecate inactiveColor.

Hey @victorsanni, I have added fill color in CupertinoCheckbox. Once this PR is merged, I can go ahead and remove inactiveColor. If it sounds okay ?

Hi @rkishan516. Thanks for the linked PR. I do have a PR out that adds fillColor and associated tests in CupertinoCheckbox within the context of a myriad of fidelity updates.

Hey @victorsanni, Sure.


ContentSwitcher react, audit fixes

changes

[x] remove support in v10 for icons per design spec
[x] remove support in v10 for a tags for feature parity with vanilla repo
[x] vertical alignment issue of a link text (a support removed in v10, negating this issue)

@laurenmrice looks like all of those fixes have been addressed in a recent CSS fix from @aledavila. merged in the latest here!


Adding a table with bigDecimal data type in QuickStart

This type is missing.

Hi @xiangfu0 assign it to me

Thanks @antwigambrah !


drivers: sensor: lsm6dsl: Fix lsm6dsl gyroscope full range setting

Bug 1: Fix lsm6dsl_gyro_set_fs_raw does not clear FS125 to register when setting the full range to be other values.
Bug 2: Fix lsm6dsl_gyro_channel_get does not use the current gyro_sensitivity when getting data from the gyroscope.
This has been tested with an STM32H7 dev board connected to LSM6DSL via SPI.
We tried the following code:
        struct sensor_value g_full_scale_attr;

	const int32_t g_full_scale_target_degree = 2000;

	sensor_degrees_to_rad(g_full_scale_target_degree, &g_full_scale_attr);

	if (sensor_attr_set(accel_dev, SENSOR_CHAN_GYRO_XYZ, SENSOR_ATTR_FULL_SCALE,
			    &g_full_scale_attr) < 0) {
		printk("Cannot set full scale for gyro.\n");
		return 0;
	}

Before the fix, the output gyroscope value is still clearly capped at ~2.2 rad/s or 125 dps, and after the fix, the value can go above the limit.
Also, thanks to Tyler Chen<EMAIL_ADDRESS>for his contribution.

Nice catch!
Please fix your commit title, as it says about "magnetometer", while code changes are related to "gyroscope" only.
Otherwise LGTM!

fixed ;)

@avisconti please take a look


Replace backend and frontend logos in "Mastering Plone Development"

Please rebase this branch on main and git push --force to make it easier to review. Thank you!

I am still not happy with the sidebars: It's up to three times mentioning 'frontend' or 'backend'.
But a title of a sidebar is recommended.
Any opinions? Or stay with this for now?

I am still not happy with the sidebars: It's up to three times mentioning 'frontend' or 'backend'.

I would remove the logo. We have the Plone logo already on the left navigation. I agree three instances of "frontend" is one too many. I like a text heading in a sidebar because it gives context and purpose. I'm OK with words in headings being repeated in narrative text.

I think it looks fine with or without duplicate Plone logos, and I prefer a single Plone logo.
Single Plone Logo

Duplicate Plone Logo

Either way, I approve this PR.


"new" (0 B added) on 2nd backup vs. "unchanged"

Output of restic version
restic 0.12.1 (v0.12.1-41-g10b39d75) compiled with go1.15.9 on linux/amd64
How did you run restic exactly?
export B2....
export RESTIC_PASSWORD...
export RESTIC_REPO....
export RESTIC_CACHE_DIR=/a/path # same prob with or without this
restic -vvv backup --tag "$BASE" --tag "$restic_version" --tag "$go_version" --one-file-system --exclude "*/#recycle/*" dir1 dir2 dir3

What backend/server/service did you use to store the repository?
B2
Expected behavior
On 2nd backup of the exact same data:
unchanged /dir1/file1

Actual behavior
new /dir1/file1 ..... (0 B added)

Steps to reproduce the behavior
Only seems to occur with a very large number of files, could not reproduce with a small number of files.
Do you have any idea what may have caused this?
Size of backup?  Checking mtime, ctime, and inode with stat returns the same values, as expected
Do you have an idea how to solve the issue?
Not at this time
Did restic help you today? Did it make you happy in any way?
Sure.

Does restic print using parent snapshotor no parent snapshot found, will read all files?

No, the previous snapshot does not contain the files.  I have intermixed snapshots.  If only the previous snapshot is used vs. any with same paths, that would explain what I'm seeing.  I'll restructure my backups and test again.

Just tested.  Large repo, only one snapshot, yes, has most of the files there, same path, etc... still getting "new ... 0B added".  I'm going to let this compete and test again.  this backup will take 4.5 days.

restic selects the latest snapshot as parent that has the same hostname and identical paths. If new paths are added then the previous snapshots won't match. In that case you'd have to use backup --parent snapshotID.
There are also several other issues which already ask for a more flexible parent snapshot detection, see  #2246, #3198 and #3118.

thanks.  using --parent with the last snapshot solves this issue.


Renames from arch discussion

A few name changes as suggested by @endophage

Codecov Report

Merging #57 into master will not change coverage.
The diff coverage is n/a.

@@          Coverage Diff           @@
##           master     #57   +/-   ##
======================================
  Coverage    54.3%   54.3%
======================================
  Files          16      16
  Lines        1149    1149
======================================
  Hits          624     624
  Misses        470     470
  Partials       55      55

LGTM!


Idea: Show all sidebar entries on the handbook index

I've got plans for another index than https://www.staging-typescript.org/docs/handbook/
But it should show all the entries in the sidebar, so you can cmd + f without a bunch of clicking

I fixed this with #547


Is it expirationTTL or expirationTtl

Which Cloudflare product does this pertain to?
KV
Existing documentation URL(s)
https://developers.cloudflare.com/kv/api/write-key-value-pairs/
What changes are you suggesting?
Setting the key's expiration time to live is referenced as both expirationTTL and expirationTtl . It is not obvious which key name to use.
Additional information
No response

It's expirationTTL.
https://github.com/cloudflare/cloudflare-docs/pull/11417

@Maddy-Cloudflare, awesome, thank you!


Missing stacktrace information on panics in imported files

One bigger problem I have now that my tengo scripts are growing in size is that many times the stacktrace from a runtime error seems to be missing file and line info from the most recent frames.
I believe this happens only when the code causing a panic is in imported modules, possibly depth > 1 e.g. imported module in imported module.
The stacktrace info looks like this:
panic: Runtime Error: not callable: map
    at -
    at /thepath/test.tengo:98:6
    at (main):16:18

In this case, the error was caused by code in a totally different tengo file whose exported function was called by test.tengo:98.
It can have even multple "at -" lines depending on the function call or module depth. This makes it extremely hard to find where the error was generated. I have to sprinkle prints all over the file to narrow down the exact location.
It would be great if stacktrace info was available at all times.

I tested tengo CLI to reproduce your problem but no luck, stack trace is correct. Could you please share some (minimal) code to reproduce the problem again and debug it?
go run cmd/tengo/main.go -resolve testdata/cli/test.tengo

Runtime Error: not callable: map
        at /home/verigraf/go/src/github.com/ozanh/tengo/testdata/cli/two/four/four.tengo:4:9
        at /home/verigraf/go/src/github.com/ozanh/tengo/testdata/cli/three.tengo:4:16
        at /home/verigraf/go/src/github.com/ozanh/tengo/testdata/cli/two/two.tengo:4:16
        at /home/verigraf/go/src/github.com/ozanh/tengo/testdata/cli/one.tengo:5:16
        at test.tengo:9:9
exit status 1

Hi @ozanh
I've come up with a minimal example to reproduce:

make a test.tengo with the following content:

x := undefined
export func() { x() }

Run it in the app via NewScript() or I guess from the cli you need to make another .tengo file first that imports test.tengo and calls the returned function.
fn := import("test1")
fn()

I noticed that the stacktraces are missing when the declared variable x is outside the exported function. If it is inside, the stacktrace is ok.

I think I found the root cause, not the solution yet. It is about closures. Module import is not very different than a creating a function with a closure, though. When there is an error with free variable (calling undefined, in this example), source code position cannot be determined because variable belongs to a different frame. Am I on the right track @d5 ?
func() {
	a := undefined
	return func(){
		a()
	}()
}()

Runtime Error: not callable: undefined
	at -
	at (main):3:9
	at (main):1:1


How to get phone number if user was logged in with phone number ?

I have a question how do i get phone number if user was logged in with phone number, i need it to send in to server cause there are some situations when user logged in with phone number and and i can't send data cause there is null

Hey! As far as I know - you can't. Facebook had this permission in past, but removed it.

@greymag

I understood what you said, the answer still - you can't =)
When user logged with Facebook account in your app, all you have for authentication is token from FB. Any other information: email, name, phone - it's just additional profile information. Some you can get, some you can not. If you require user's email/phone in your app and Facebook doesn't provide it, you should request if from user in your app UI.
Again, I'm not 100% sure, you can looking for yourself.


@NotPersistent should be annotated with @Inherited?

I use auto-value and auto-value-parcel to generate my keys.
Persistent keys which implement Parcelable are totally OK. Like this:
@AutoValue
public abstract class PersistentKey implements Parcelable {
  public static PersistentKey create() {
    return new AutoValue_PersistentKey();
  }
}

My problem is when I define a key which should not be persistent. Like this:
@AutoValue @NotPersistent
public abstract class NotPersistentKey {
  public static NotPersistentKey create() {
    return new AutoValue_NotPersistentKey();
  }
}

As you know, the actual key the application uses is AutoValue_NotPersistentKey which is generated by auto-value and doesn't have @NotPersistent annotation. So Flow throws.
Maybe @NotPersistent should be annotated with @Inherited? Or make it an interface?

Pretty sure exposing a filtering hook (#220) is more appropriate, and then you can supply your own filtering logic.


Actually read environment variable in GetConfigVarBoolValueOrEnv

What this PR does / why we need it:
GetConfigVarBoolValueOrEnv never read the environment variable it was passed, as stringVal was always "false" when no value was passed (configVar.Value is a bool and defaults to false if not set), but the condition to read the env variable was stringVal == "". This must be a pretty old bug as this code was introduced 4 years ago, but it was only ever used in VSPHERE_ALLOW_INSECURE, which is not in use in KKP for whatever reason.
This PR reworks the ConfigVarBool functions to make sure we can differentiate between an unset value and false.
This is needed as it also breaks NUTANIX_ALLOW_INSECURE, which is used in https://github.com/kubermatic/kubermatic/pull/8448.
Which issue(s) this PR fixes (optional, in fixes #<issue number> format, will close the issue(s) when PR gets merged):
Fixes #
Special notes for your reviewer:
Optional Release Note:

Fix not reading bool configuration values from environment (VSPHERE_ALLOW_INSECURE and NUTANIX_INSECURE)

Signed-off-by: Marvin Beckers<EMAIL_ADDRESS>

/retest

/retest

/retest

/unhold


added the GET route in app

Hey there,
added get route in app

Looks Awesome @maahicodes
Can you follow this profile as well? So that other dev. can able to see this repo. :)


Direct challenge (reseted) generated the pool as outer join, not inner join

Describe the bug
Direct challenge (reseted) generated a pool, that's not usable by both players.
To Reproduce
Steps to reproduce the behavior:

Not sure about this, but I reseted a game and changed a number of boosters couple of times.
The generated pool was identical for both players, not sure whether that's intentional.
The other player doesn't have all the cards in the pool.
Se attached:

Expected behavior
Inner join is used instead.
Screenshots

Visible here:
https://mtgarena.pro/deckbuilder/?Magesa&pool-1561404265

I can confirm this issue exists - and it makes the tourney mode unusable.

Confirming independently. I was going to open a new issue for this. Here are my repro steps:

Create a 2 person event with 9 boosters.

Note incubation druid is one of the rares.

Note that both players have the same identical card pool. Each player is supposed to get their own card pool.

One of the players doesn't own incubation druid:

As the OP wrote, it appears there are two bugs:
a) outer join is used instead of inner join for the card set
b) boosters are duplicated for the players instead of independently generated in the pool

It's fixed

Unable to verify. The direct limited lobby just shows a spinning wheel, and cannot create a new event:

Endless load fixed

Outer join not fixed. And duplicate decks not fixed either. Opponent doesn't own this card:

Still waiting on fixed to duplicate decks and outer join. Is there any progress on this? I've got some friends who would love to mess around with this.

Yep, this is on the list. But since all tracking was messed up after latest update, we had urgent issues to deal with first. I hope to fix this by the end of weekend.

any update?

any update?

It's under construction, unfortunately no updates or ETA, sorry. I'll let you know when we'll have something.

pinging on this. I think this is probably a relatively simple fix, and would fix the currently broken feature. It's a good cost/benefit to fix.

Patches have been applied for both issues, please test.

I just tested with a friend of mine. Cards do not show on the initial preview screen and the build screen is empty after a quarter of a second after opening.

Seems to be an issue now with the count of cards. See game "rcfc"
In the direct challenge mode, the cards pool list shows 2x ravenous chucapabra, but when I go to the deck builder it only shows one:

confirmed not fixed. See game rcfc now, bothplayers have same card pool still.

Another patch applied


Support for flagQuiet when in-cluster instance is moved

Support for flagQuiet when in-cluster move is made. Related with #8565.

This pull request didn't trigger Jenkins as its author isn't in the whitelist.
An organization member must perform one of the following:

To have this branch tested by Jenkins, use the "ok to test" command.
To have a one time test done, use the "test this please" command.

Those commands are simple Github comments of the format: "jenkins: COMMAND"

jenkins: test this please

Thanks!


Adding Statsig Integration

Adds Logo, documentation and input configuration
Description of the change

Configuration for Statsig

Type of change

[ ] Bug fix (non-breaking change that fixes an issue)
[ ] New feature (non-breaking change that adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)

Related issues

Fix #1

Checklists
Development

[ ] Lint rules pass locally
[ ] The code changed/added as part of this pull request has been covered with tests
[ ] All tests related to the changed code pass in development

Code review

[ ]  This pull request has a descriptive title and information useful to a reviewer. There may be a screenshot or screencast attached
[ ] "Ready for review" label attached to the PR and reviewers mentioned in a comment
[ ] Changes have been reviewed by at least one other engineer
[ ] Issue from task tracker has a link to this pull request

@arnab-p is this commit still needed? I see that the Statsig integration is now live on Rudderstack.com

I believe this change was already landed as part of another commit. Statsig is officially supported see https://www.rudderstack.com/docs/destinations/testing-and-personalization/statsig/#statsig


Startup event is only logged on Linux platform now

Problem
<what's wrong or missing, please include any applicable:

expected behavior
actual behavior
steps to reproduce
system configuration
screenshots, images, logs, etc.

Proposed Solution
<suggested fix, suggested enhancement>

@mrjerryjohns


Dependency (libressl-pnacl-sys) cannot be retrieved via cargo

While trying to start a new hyper hello world server, cargo is unable to fetch all the dependencies for hyper (see the error below):
[hyper-test] cargo fetch
    Updating registry `https://github.com/rust-lang/crates.io-index`
 Downloading libc v0.1.4
 Downloading openssl v0.5.3
 Downloading lazy_static v0.1.8
 Downloading hyper v0.3.6
 Downloading rustc-serialize v0.3.10
 Downloading cookie v0.1.16
 Downloading pkg-config v0.3.2
 Downloading url v0.2.28
 Downloading time v0.1.22
 Downloading log v0.3.1
 Downloading httparse v0.0.5
unable to get packages from source

Caused by:
  failed to parse manifest at `/home/jonathan/.cargo/registry/src/github.com-1ecc6299db9ec823/libressl-pnacl-sys-2.1.4/Cargo.toml`

Caused by:
  library target names cannot contain hyphens: libressl-pnacl-sys

The dependency in question is libressl-pnacl-sys while running on rust nightly:
[~] cargo --version                                                   15:25:01
cargo 0.0.1-pre-nightly (9f265c8 2015-03-25) (built 2015-03-25)
[~] rustc --version                                                   15:25:05
rustc 1.0.0-nightly (199bdcfef 2015-03-26) (built 2015-03-27)

Cargo.toml of the hello world app:
[package]
name = "hyper-test"
version = "0.0.1"
authors = ["Jonathan Almeida<EMAIL_ADDRESS>
[dependencies]
hyper = "*"

Trying to build the libressl-pnacl-sys library on my own, I found that it uses outdated data structures in std (i.e. RingBuf), which is another error you will encounter if you to build it after changing the package name to use underscores instead of hypens.

I'm curious to know how others are building hyper or if I've done something wrong in my build process.

It seems it's a target specific dependency in openssl:
https://github.com/sfackler/rust-openssl/blob/master/openssl-sys/Cargo.toml
On Mon, Mar 30, 2015, 12:36 PM Jonathan Almeida<EMAIL_ADDRESS>wrote:

I'm curious to know how others are building hyper or if I've done
something wrong in my build process.
—
Reply to this email directly or view it on GitHub
https://github.com/hyperium/hyper/issues/411#issuecomment-87801910.


{ServiceFabric} Refine code to unblock CI Lint

Description

CLI PRs are blocking by pylint error of servicefabric: failed CI example
Testing Guide

History Notes

[Component Name 1] BREAKING CHANGE: az command a: Make some customer-facing breaking change.
[Component Name 2] az command b: Add some customer-facing feature.

This checklist is used to make sure that common guidelines for a pull request are followed.

[ ] The PR title and description has followed the guideline in Submitting Pull Requests.

[ ] I adhere to the Command Guidelines.

[ ] I adhere to the Error Handling Guidelines.

ServiceFabric

How did it get merged?

How did it get merged?

It didn't fail CI pylint before, just happen recently. @kairu-ms is working on finding the reason.


Write primary definition and pinyin for each line

@leonfox1 please perform a "Git pull" to get my latest changes, before you start modifying the TSV. See https://help.github.com/articles/fetching-a-remote/#pull or just press "Sync" if you use a desktop Git program. Thanks!

Today, I found a tool that pulls all the "Google translate" definitions for each vocab word, and in particular, it appears to keep it very short and simple.  Although I don't see a way of getting around the significant manual work required in cleaning up this vocab, I think this tool ultimately does a better job at selecting the "Primary definition" and keeping it short and simple.  I will share you a sample of this in appx. 12 hours.

Sorry I have been MIA for a week--been a busy week for me with other tasks.  I am about 2/3 through updating the manual definitions of Duolingo section 3.  I plan to merge my changes tomorrow and I also plan to play around with Forvo a bit tomorrow, thought uncertain whether I will be able to get that part working tomorrow.

No problem!
After you add section 3 I will start using the Anki deck in real life to remember the stuff :-) (in the future I will probably have to delete the deck and restart my progress from scratch several times in the future but I don't care, that's the life of developers ^^)

As I have been going through the definitions manually, I have come to the realization that I simply don't have the expertise to select the best definition all of the time.  Therefore, in the interests of creating a deck in a timely manner that is useful, even if not 100% perfect, I have generally been trying to select a definition(s) that fit the following criteria:

Is simple
Selected quickly
Matches the intended use(s) within Duolingo
Matches other common use(s) of this character or word
Will fit within 1-2 lines of an Anki Flash Card

To do this, I usually start with the CC-CEDICT definition and simplify it down, briefly taking into consideration how Duolingo is using the word/character AND what Google Translate identified as the most common definition.
The Google Translate definition tends to be too simple and CC-CEDICT definition is too thorough and complete.  I have been striving to reduce the CC-CEDICT definition down to 1-2 lines on a flashcard AND list the most likely primary definition first.  I estimate that in about 90-95% of the cases, the simple definition that I am selecting will be sufficient.  For the times that a user needs a more detailed definition, we can still import the CC-CEDICT definition as an optional field in Anki.
I am typically leaving several possible definitions separated by slashes rather than try to pick out the best one or two, but I am often substantially reducing the list of possible definitions compared to CC-CEDICT.
As a result of this approach:

I anticipate I will make some errors and may need to do a second review in the future and/or iterate
I haven't been marking the "Definition Off Topic".  Instead, I select a likely definition

Great, thanks a lot! :-)
I haven't done anything so I am not in a position to give advice, but here is my point of view about how far to go when simplifying definitions. Personally I would probably be much more aggressive in leaving only a single definition for each word. For instance I would definitely simplify "subway / metro" into just "subway", this is probably not very controversial, but I would go much further and even simplify "to sleep / to lie down" to just "to sleep" for instance.
Having spent a significant percentage of my lifetime learning with flashcards, I find single meanings to be so much faster to remember than double meanings, allowing me to get in minimal time a first general idea of what the term means, thus allowing me to recognize it in texts or conversations from an early stage. Of course after getting used to the term and seeing it in various contexts I will realize that there is more subtlety to the term, but by that time I won't need that card anymore.
Also, I totally agree with you that we should only match what the word means within Duolingo. We are only a study aid for Duolingo, people who want to go further than that should switch to other resources.

Ok, I don't mind deferring to you on this.  Actually, one of the things that makes it hard for me to simplify these definitions down to just one or even two words is that I know just enough Chinese to know that many words have a lot more subtlety to them.  "走" is a good example of this, where I regularly hear it used for at least 3 different things.  Or "下" is another example, where even within Duolingo it can easily mean next, below, down, etc.
Fortunately, although I am leaving multiple definitions for most words, I am making an effort to list my guess as to the most common OR most Duolingo-friendly match to the word first.  This will allow me to just strip off the first definition from my list to create a single word definition, but still allow me to maintain the work that I have already done.
So, going forward, I am going to add another column to the "Words" file which includes only a "Single Simple Definition" stripped from my "Selected English Definition" column.  I will also put even more attention into selecting my best guess of the definition first, so that the Single Simple Definition is as high quality as I can make it.
Although continuing to add columns may seem unnecessary, I am increasingly looking at using card templates and filters to allow users to customize the deck in many different ways that they find useful.
There are dozens of examples of this, but a few might include a version with a Japanese hint (for you), a version with traditional characters (which I personally have no interest in, but understand others do), or a filter applied to only study individual characters and not cards with multiple characters (this is one that I personally want, that many others will probably not).

@leonfox1 No worries, that's open source: People are free to join and leave and come again when they want :-)


Title: Spot the difference Game

Is your feature request related to a problem? Please describe.
In this user has to spot the difference between two images and click on missing part then a pop up will show that he/she has marked correct point

Describe the solution you'd like.
in this I has used the concept of  bubbling and capturing of javascript .
Describe alternatives you've considered.
No
Add any other context or screenshots about the feature request here.
kindly assign me this issue with required  GSSoc'24 labels

@swapnilsparsh Kindly assign this issue to me . I can do it . I am GSSoC'24 contributor.

@Prabhatyadav60 Thank you for providing your insight but it is not required as of now


Safe upgrades: Add healthcheck function and call it when upgrading a contract #116 -Malachi PR

Fixed health check tests. Everything works fine now.


Raidboss: O3S timeline refresh

Nothing much on this one. It was time-consuming but relatively straightforward. There seems to be some randomness on the Queen's Waltz cast timings in phase 4. Nothing major, but it drifts by about 0.3 seconds sometimes.
I feel like we can do better with the Spellblade Blizzard/Fire/Thunder entries by using the English replaceText functionality, but I'm not sure how to put it more succinctly without incorrectly including Spellblade Holy. ("Random Spellblade" doesn't indicate that.)

I thought about Elemental Spellblade, but it falls into the same problem I mentioned, that Holy is technically an element. Or do you think people will recognize it as "only the three specific ones"?

I thought about Elemental Spellblade, but it falls into the same problem I mentioned, that Holy is technically an element. Or do you think people will recognize it as "only the three specific ones"?

I mean sure, holy is technically an element, but maybe I wouldn't consider it if you asked me what that meant.  I think your original Spellblade Blizzard/Fire/Thunder makes sense too.

Thinking it over, you're right. Also, it occurs to me that I've directly argued in the past that "people should sort of get what things mean in Savage as long as what we call it is unambiguous". On that basis, Elemental Spellblade should be safe enough.