Research

@mmcelaney commented on Thu Sep 07 2017

I first looked at Vuetify which creates a template app (rather like Ruby on Rails does). I found it a bit heavyweight. Tons of files everywhere, really complicated build process. I couldn't find anything.
Then I looked at building my own app with MaterializeCSS + Vue.js + PouchDB but I got stuck with attaching event listeners to the MaterializeCSS components. So I have up.
I fixed on the following tools:

http://vuematerial.io/ - Vue + Material Design components
https://vuejs.org/ - Vue.js framework
https://pouchdb.com/ - PouchDB library
https://usecuid.org/ - unique id generation

and built my own single-page web app.


UI and csv issues

Congrats on last week's successful conference presentation! I'm finally getting back to this and I've found a few things, at least when I'm running it on Chrome:

can the Ritu category be at 12 o'clock?
looping of background sounds doesn't seem to work.
the order of the chakras around the circle should follow the order in the csv, clockwise; but instead they seem to go counterclockwise from 12:00 in order of smallest to largest.
When we deleted the Vasu chakra because it has no diseases, that threw off the timing of the viola piece by one line, starting at line 34 in the csv. The interactive version also gets thrown off there, so every disease's sound file is off by one. Is it OK to add back that Vasu chakra line, at line 34 in the csv, even though it doesn't do anything? Is that going to mess up the d3 code?

I believe positioning only depends on the order of diseases in the CSV, so this should be trivial
Right, chakra looping is missing (I probably broke something)
Also dependant on CSV order, though possibly we may want to correct this in the JSON OR drawing stage.
We can add back Vasu and handle a missing audio event as not an error
Yep!

Sure, will take a look after next weekend! pretty busy with exams these 2 weeks 😭

yah ofc no rush:) ill have some scattered hours to work on this after these 2ish weeks too

Seems like I solved problem 1 and 3! Should I just push them to main or should I open a new branch?

Thanks Sally! Yeah, go ahead and push them to main!
Steve

Stephen Taylor
Professor of Composition-Theory
School of Music, University of Illinois at Urbana-Champaign
co-director, Illinois Modern Ensemble
www.stephenandrewtaylor.net
217 333-3712 office

On Apr 18, 2024, at 10:53 PM, SallyXue-0114 @.***> wrote:
solve.UI.png (view on web) https://github.com/staylor7/rare-diseases/assets/92959551/0dba4fcc-9e01-4554-8853-ebf49fb00e45 Seems like I solved problem 1 and 3! Should I just push them to main or should I open a new branch?
—
Reply to this email directly, view it on GitHub https://github.com/staylor7/rare-diseases/issues/44#issuecomment-2065702593, or unsubscribe https://github.com/notifications/unsubscribe-auth/AHPFIKI2XKH7DV2HIODYCSLY6CILDAVCNFSM6AAAAABFNMQZJ6VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDANRVG4YDENJZGM.
You are receiving this because you authored the thread.


Not downloading at full resolution

While the playlist download is broken, i have been downloading videos manually one by one. The problem being, a proven 1080p video only downloads at 720p. This does not affect all videos, and has no discernable pattern. Here is one video that i have had problems with https://www.youtube.com/watch?v=d6F72vjpESU
closing and restarting everything has no effect.
Thank you

Yeah I've noticed that some videos don't provide their highest streams occasionally. I have a hunch that YouTube serves those higher rate streams from DASH, but I'm not 100% sure.
Related: https://github.com/Tyrrrz/YoutubeExplode/issues/159

Here is another video that should download at 1080 but only gets 720 instead
https://youtu.be/WtfLfYY_k2Y
Thank you

I can't download anything higher than 1080p. 4k and 8k videos are downloaded in 1080p :(

Currently the issue still persist 😢


Script doesn't work when executing the script

When trying to execute the script, the gui doesn't show up (I'm using synapse x), I've tried using both with ("ui/main") and without it, I'm incredibly confused on what to do.

Had to delete "version.oh" from synapse x's workspace folder


Trouble starting peripheral scan right after stopping it

Before I describe more specifically what my issue is, I'd like to illustrate what I'm trying to do with a simplified example (and it is quite simple, I think).
Suppose you have a "Scan" button that should scan for 10 seconds. If it is pressed again while the scan is ongoing, it should refresh the duration. If it is pressed after the scan has finished, it should start scanning for 10 seconds again.
I could call startPeripheralScan when the button is first pressed and then stopPeripheralScan after 10 seconds (or more, if it was refreshed). Suppose the user presses the button right when the time runs out, after stopPeripheralScan is called. I want to cleanly restart scanning by using startPeripheralScan.
Given that stopPeripheralScan returns a future, one would expect to need to wait for its completion before calling startPeripheralScan. I could use a callback to check a shouldRestart condition after the future completes. Unfortunately, this does not always work (due to race conditions, apparently, although I can't always explain it).
At first I actually tried doing using setting onDone when calling listen on the Stream returned by startPeripheralScan. I would have preferred to use this since it means stopPeripheralScan can be called from anywhere, and the button doesn't have to "own" scanning. I found a reason it doesn't work in the scanning_mixin.dart file (I expect there are other problems related to what I will describe further down). This is stopDeviceScan from that file:
Future<void> stopDeviceScan() async {
  await _methodChannel.invokeMethod(MethodName.stopDeviceScan);
  _scanEvents = null;
  return;
}

The problem is that the onDone callback is called before the await completes and _scanEvents is set to null. This causes the calls to startDeviceScan to subscribe to the previous stream, which either has already finished or is about to finish.
Next, I should mention I tried awaiting the future returned by StreamSubscription.cancel on the subscription returned by startPeripheralScan, only to realize it always returned a null future.
I also found something seemed wrong about startDeviceScan in scanning_mixin.dart:
StreamController<ScanResult> streamController = StreamController.broadcast(
    onListen: () => _methodChannel.invokeMethod(
    MethodName.startDeviceScan,
    <String, dynamic>{
        ArgumentName.scanMode: scanMode,
        ArgumentName.callbackType: callbackType,
        ArgumentName.uuids: uuids,
        ArgumentName.allowDuplicates: allowDuplicates,
    },
    ),
    onCancel: () => stopDeviceScan(),
);

I'm not sure if this is intended (I don't think so), but a call to stopDeviceScan will cause all streams to finish and call onCancel, leading to additional calls to stopDeviceScan. This means that when the future returned by stopPeripheralScan completes, there may still be additional calls to stopDeviceScan which have not completed yet (I'm not really sure of the implications but, at the very least, it could incorrectly set _scanEvents to null).
I tried commenting out the onCancel line and try awaiting the future returned by stopPeripheralScan. This made my calls to startPeripheralScan (when used in the callback) go from "usually unsuccessful" to "usually successful", but not to "always successful".
I know that I could probably use a timer to avoid what is likely some race conditions, but I'd be much happier with a cleaner solution.
Here are two cases from my console (Android - with default logging level, I think? I'm new to Flutter / mobile development) where startPeripheralScan wasn't successful. They are both similar in that I never saw Start Scan being logged (which I do see in successful attempts), and they just hanged:
/BluetoothAdapter(  763): STATE_ON
D/BluetoothLeScanner(  763): onClientRegistered() - status=0 clientIf=7 mClientIf=0
D/ScanRecord(  763): parseFromBytes
D/com.polidea.flutter_ble_lib.FlutterBleLibPlugin(  763): on native side observed method: observeConnectionState
D/ScanRecord(  763): parseFromBytes
D/ViewRootImpl@bf09744[MainActivity](  763): ViewPostImeInputStage processPointer 0
D/ViewRootImpl@bf09744[MainActivity](  763): ViewPostImeInputStage processPointer 1
D/com.polidea.flutter_ble_lib.FlutterBleLibPlugin(  763): on native side observed method: stopDeviceScan
D/BluetoothAdapter(  763): STATE_ON
D/BluetoothAdapter(  763): STATE_ON
D/BluetoothAdapter(  763): STATE_ON
D/BluetoothAdapter(  763): STATE_ON
D/BluetoothLeScanner(  763): Stop Scan
I/art     (  763): Do partial code cache collection, code=29KB, data=28KB
I/art     (  763): After code cache collection, code=29KB, data=28KB
I/art     (  763): Increasing code cache capacity to 128KB
D/com.polidea.flutter_ble_lib.FlutterBleLibPlugin(  763): on native side observed method: startDeviceScan

D/BluetoothLeScanner( 6071): Start Scan
D/BluetoothAdapter( 6071): STATE_ON
D/BluetoothAdapter( 6071): STATE_ON
D/BluetoothAdapter( 6071): STATE_ON
D/BluetoothAdapter( 6071): STATE_ON
D/BluetoothLeScanner( 6071): onClientRegistered() - status=0 clientIf=7 mClientIf=0
D/ScanRecord( 6071): parseFromBytes
D/com.polidea.flutter_ble_lib.FlutterBleLibPlugin( 6071): on native side observed method: observeConnectionState
D/ScanRecord( 6071): parseFromBytes
D/ViewRootImpl@bf09744[MainActivity]( 6071): ViewPostImeInputStage processPointer 0
D/ViewRootImpl@bf09744[MainActivity]( 6071): ViewPostImeInputStage processPointer 1
D/com.polidea.flutter_ble_lib.FlutterBleLibPlugin( 6071): on native side observed method: stopDeviceScan
D/BluetoothAdapter( 6071): STATE_ON
D/BluetoothAdapter( 6071): STATE_ON
D/com.polidea.flutter_ble_lib.FlutterBleLibPlugin( 6071): on native side observed method: startDeviceScan
D/BluetoothAdapter( 6071): STATE_ON
D/BluetoothAdapter( 6071): STATE_ON
D/BluetoothLeScanner( 6071): Stop Scan

I imagine there is some kind of race condition in the native FlutterBleLibPlugin.

It's actually deeper IIRC. Our native backend is our library called Multiplatform Ble Adapter, the issue might be in its design or implementation.
Start/stop scan are operations changing the state of the radio and they have certain inertia which cannot be avoided. What might be wrong here is that an error is not coming through correctly, possibly it's emitted before subscription to the event channel.
Nulling of the _scanEvents shouldn't matter in the current implementation, since it was supposedly added to the stream controller already.
I think the easiest workaround would be to not stop the scan, but drop incoming results while user does not want to scan and stop the operation after they leave the screen.
Are those logs done after setting the library's log level to Verbose?

Nulling of the _scanEvents shouldn't matter in the current implementation, since it was supposedly added to the stream controller already.

I might be wrong, but my concern was that if _scanEvents is left null, a second call to startDeviceScan will trigger _prepareScanEventsStream and a second call to EventChannel.receiveBroadcastStream will cause the previous stream to be dropped/cancelled (if it didn't matter, why have _scanEvents at all?). I believe the normal behavior is to end up with two subscriptions receiving scan results.

Are those logs done after setting the library's log level to Verbose?

They were not. Here's how one unsuccessful case looked like with verbose (again, it hanged after this). It seems to have a couple more lines from "RxBle":
D/BluetoothLeScanner(18617): Start Scan
D/BluetoothAdapter(18617): STATE_ON
D/BluetoothAdapter(18617): STATE_ON
D/BluetoothAdapter(18617): STATE_ON
D/BluetoothAdapter(18617): STATE_ON
D/BluetoothLeScanner(18617): onClientRegistered() - status=0 clientIf=7 mClientIf=0
D/RxBle#ClientOperationQueue(18617): FINISHED ScanOperationApi21(193185401) in 133 ms
D/ViewRootImpl@f8d45f1[MainActivity](18617): ViewPostImeInputStage processPointer 0
D/ViewRootImpl@f8d45f1[MainActivity](18617): ViewPostImeInputStage processPointer 1
D/com.polidea.flutter_ble_lib.FlutterBleLibPlugin(18617): on native side observed method: stopDeviceScan
I/RxBle#CancellableSubscription(18617): Scan operation is requested to stop.
D/BluetoothAdapter(18617): STATE_ON
D/BluetoothAdapter(18617): STATE_ON
D/BluetoothAdapter(18617): STATE_ON
D/BluetoothAdapter(18617): STATE_ON
D/BluetoothLeScanner(18617): Stop Scan
D/com.polidea.flutter_ble_lib.FlutterBleLibPlugin(18617): on native side observed method: startDeviceScan

Also, for convenience, here's an example of a successful attempt:
D/BluetoothLeScanner(18617): Start Scan
D/BluetoothAdapter(18617): STATE_ON
D/BluetoothAdapter(18617): STATE_ON
D/BluetoothAdapter(18617): STATE_ON
D/BluetoothAdapter(18617): STATE_ON
D/BluetoothLeScanner(18617): onClientRegistered() - status=0 clientIf=8 mClientIf=0
D/RxBle#ClientOperationQueue(18617): FINISHED ScanOperationApi21(179742209) in 126 ms
D/ViewRootImpl@f8d45f1[MainActivity](18617): ViewPostImeInputStage processPointer 0
D/ViewRootImpl@f8d45f1[MainActivity](18617): ViewPostImeInputStage processPointer 1
D/com.polidea.flutter_ble_lib.FlutterBleLibPlugin(18617): on native side observed method: stopDeviceScan
I/RxBle#CancellableSubscription(18617): Scan operation is requested to stop.
D/BluetoothAdapter(18617): STATE_ON
D/com.polidea.flutter_ble_lib.FlutterBleLibPlugin(18617): on native side observed method: startDeviceScan
D/BluetoothAdapter(18617): STATE_ON
D/BluetoothAdapter(18617): STATE_ON
D/BluetoothAdapter(18617): STATE_ON
D/BluetoothLeScanner(18617): Stop Scan
D/RxBle#ClientOperationQueue(18617): QUEUED   ScanOperationApi21(119608377)
D/RxBle#ClientOperationQueue(18617): STARTED  ScanOperationApi21(119608377)
I/RxBle#QueueOperation(18617): Scan operation is requested to start.
D/BluetoothAdapter(18617): STATE_ON
D/BluetoothAdapter(18617): STATE_ON
D/BluetoothLeScanner(18617): Start Scan
D/BluetoothAdapter(18617): STATE_ON
D/BluetoothAdapter(18617): STATE_ON

All of this was done with scanning_mixin.dart's onCancel line commented out as mentioned in my original post, as that seemed to significantly improve my success rates.

I just realized there was some unfinished error handling code that was hiding the exception. That was dumb of me, I'm really sorry.
E/flutter (21583): [ERROR:flutter/lib/ui/ui_dart_state.cc(157)] Unhandled Exception: BleError (Error code: 600, ATT error code: null, iOS error code: null, Android error code: null, reason: Undocumented scan throttle (code<PHONE_NUMBER>), suggested retry date is Wed Jul 29 16:26:26 GMT-04:00 2020, internal message: null, device ID: null, service UUID: null, characteristic UUID: null, descriptor UUID: null)

I hope I didn't worry you too much with my mistake. I can probably use this to simply retry on error. Still, if I don't comment out the onCancel line it doesn't work correctly, because apparently the not-yet-completed stopDeviceScan calls, aside from setting _scanEvents to null, will call the native-side stopDeviceScan after my call to startDeviceScan (sometimes). I'd say that still needs fixing (but it doesn't seem as bad a problem):
D/com.polidea.flutter_ble_lib.FlutterBleLibPlugin(31470): on native side observed method: stopDeviceScan
D/com.polidea.flutter_ble_lib.FlutterBleLibPlugin(31470): on native side observed method: startDeviceScan
D/RxBle#ClientOperationQueue(31470): QUEUED   ScanOperationApi21(202788908)
D/RxBle#ClientOperationQueue(31470): STARTED  ScanOperationApi21(202788908)
D/com.polidea.flutter_ble_lib.FlutterBleLibPlugin(31470): on native side observed method: stopDeviceScan
I/RxBle#QueueOperation(31470): Scan operation is requested to start.
D/BluetoothAdapter(31470): STATE_ON
D/BluetoothAdapter(31470): STATE_ON
D/BluetoothLeScanner(31470): Start Scan
D/BluetoothAdapter(31470): STATE_ON
D/BluetoothAdapter(31470): STATE_ON
D/BluetoothAdapter(31470): STATE_ON
D/BluetoothAdapter(31470): STATE_ON
D/BluetoothLeScanner(31470): onClientRegistered() - status=0 clientIf=8 mClientIf=0
D/RxBle#ClientOperationQueue(31470): FINISHED ScanOperationApi21(202788908) in 126 ms
I/RxBle#CancellableSubscription(31470): Scan operation is requested to stop.
D/BluetoothAdapter(31470): STATE_ON
D/BluetoothAdapter(31470): STATE_ON
D/BluetoothAdapter(31470): STATE_ON
D/BluetoothAdapter(31470): STATE_ON
D/BluetoothLeScanner(31470): Stop Scan


Lite 21975 Redesign of EaaS websocket channel data models

skeleton of project
new design of ws data models
backwards capability (function to transform old schemas to new ones)

PR is open to discuss naming of new models, its attributes and nesting content.

I miss a function to transform from v2 to v1 because we need it to respond to legacy runners.

Ooops, missed it. Of course will implement.


BitMap opaque_to_polygons() polygon generation problem

Godot version:
Godot_v3.1.1-stable_win64

OS/device including version:
Windows10

Issue description:

In my project I'm using a lot of BitMaps to generate polygons through GDScript.
Sometimes the polygon generated by opaque_to_polygon has unexpected behavior.
I did some troubleshooting and it seems that if there is a single true pixel near a larger true area, the opaque_to_polygon function only generates a "single pixle" polygon and the larger area is ignored.
Steps to reproduce:
See the example project.
In the attached image, the first png used for BitMap Generation has an angular pixel near a larger area and generates a polygon around the single pixel by skipping the larger area, in the second png it works as it should.

Minimal reproduction project:
BitMap_Bug_Example.zip

Still valid in 6f4384f20

I'm currently having very similar issues with opaque_to_polygon function, DId someone find any workarounds for this?

I'm also having this problem with the below sprite, I'm assuming because of the long skinny antenna next to the large square body. Is there anyway to fix this without modifying the sprite?

Is there anyway to fix this without modifying the sprite?

I don't think so, but you can use a second sprite dedicated to polygon generation.

I've decided to continue development of a raster image to svg conversion tool I was previously working on, and decided to refactor the svg conversion algorithms because my implementations in GDScript were way too slow, which is why I originally stopped developing it (too lazy to write native plugins in 3.x; will hold off until 4.x is out.)
At initial glance, BitMap is exactly what I needed, but I saw this open issue and decided to test it myself in 3.4 stable. I can verify that the bug is still present. I went and modified the example to display the output polygons, and you can see here that the large area is still being incorrectly skipped.

My "solution" was to go through the bitmap first and remove all pixels that don't have any adjacent pixels.  This is a lot faster than I expected and seems to work.

My "solution" was to go through the bitmap first and remove all pixels that don't have any adjacent pixels. This is a lot faster than I expected and seems to work.

Do you have a code sample you can share for doing this? Thanks in advance 🙂

Sure.  It can be improved, but my quick hack was as follows:-
$Sprite is where the bitmap came from,
`	levelBM.create_from_image_alpha($Sprite.texture.get_data(), 0.1)
for y in range(1, $Sprite.texture.get_height()-1):
for x in range(1, $Sprite.texture.get_width()-1):
var vec = Vector2(x, y)
if levelBM.get_bit(vec):
var vec1 = Vector2(x+1, y)
if levelBM.get_bit(vec1) == false:
var vec2 = Vector2(x-1, y)
if levelBM.get_bit(vec2) == false:
var vec3 = Vector2(x, y+1)
if levelBM.get_bit(vec3) == false:
var vec4 = Vector2(x, y-1)
if levelBM.get_bit(vec4) == false:
levelBM.set_bit(vec, false)
arr = levelBM.opaque_to_polygons(...)

`

Unfortunately it seems I've come across designs that still don't generate the correct polygons even after my hack.  I've still yet to determine what the specific layout of the bitmap is that causes this though.

Here's the relevant code for finding the vertices of the polygons.
I haven't looked that hard at it, but the comments say it's using marching square, but it doesn't look like standard marching square to me. It seems like they're using a modified lookup table, and without actually debugging, I would make an educated guess and say there's probably some short-circuiting code to bail-out early when you can safely do so, that's malformed and short-circuiting at inappropriate times.

It seems that a problem occurs when two pixels are touching only by their corners (i.e. with no other pixels adjacent to them on that side, if you see what I mean).  FWIW, this is my new hack that seems to fix it:-
`	levelBM.create_from_image_alpha($Sprite.texture.get_data(), 0.1)
for y in range(1, $Sprite.texture.get_height()-1):
for x in range(1, $Sprite.texture.get_width()-1):
var vec = Vector2(x, y)
		# Check for single pixels
		if levelBM.get_bit(vec):
			var vec1 = Vector2(x+1, y)
			var vec2 = Vector2(x-1, y)
			var vec3 = Vector2(x, y+1)
			var vec4 = Vector2(x, y-1)
			if levelBM.get_bit(vec1) == false and \
				levelBM.get_bit(vec2) == false and \
				levelBM.get_bit(vec3) == false and \
				levelBM.get_bit(vec4) == false:
					levelBM.set_bit(vec, false)

		# Check for diagonals
		var vec2 = Vector2(x+1, y)
		var vec3 = Vector2(x, y+1)
		var vec4 = Vector2(x+1, y+1)
		if levelBM.get_bit(vec) and levelBM.get_bit(vec2) == false and \
			levelBM.get_bit(vec3) == false and levelBM.get_bit(vec4):
			levelBM.set_bit(vec, false)
		elif levelBM.get_bit(vec) == false and levelBM.get_bit(vec2) and \
			levelBM.get_bit(vec3) and levelBM.get_bit(vec4) == false:
			levelBM.set_bit(vec, false)

var arr = levelBM.opaque_to_polygons(...)

`
Apologies for the names of my vars.

I've written a (not particularly efficient) little project made for testing this bug, where you can draw on a bitmap representation and immediately compare it to the polygon output that's produced side by side (can also press space to randomly fill the bitmap). From this tool I think I've found out that the opaque to polygon fails if on any bit either of it's diagonal neighbor bits are set to true, while the bit above/below is set to false and the bit to the respective diagonals side is also false. With this knowledge it should be possible to write a loop that fixes all cases by setting these diagonal bits to false, but I won't know until I try it out tomorrow or later this week. I think the pixel chunk that gets successfully created is always read from top left to bottom right. Screenshot below that I think shows most or all of the breaking cases, where the red areas on the right is the polygon output

I don't think I'll be able to actually fix the marching squares algo, but perhaps with this information and the tool below somebody smarter than I can figure it out and do a real fix:
BitmapToPolygonsTester.zip

Opened a PR that should fix this:
#68732

I tested opaque_to_polygons() under different circumstances and it seems to work nicely except that holes are discarded. Is there a distinct reason the function does not return "inner" polygons? I.e., is the implementation difficult or is it a design decision?

It's not intended, and would make things a lot more convoluted, you can open a proposal to add this functionality though


parameter count is incorrect (n-1)

since switching to collection

fixed in 2.1

It's strange, but it still doesn't work with just 1 parameter.
Fixed for 2 or more parameters.

should be fixed in 2.2

Hello again!
Parameters count is fixed, but the values are wrong.
Macintosh: all parameters get the same value, corresponding to the value from the last parameter.
Windows: all parameters have empty values.
Here you have a method to test it:
PG_test_2.txt

Hello, thanks for the sample DB and code,  I found the bug, a fix should be posted soon.

https://github.com/miyako/4d-plugin-simple-postgres-client-v2/releases/tag/2.2.n

It's ok. The parameter count issue is fixed. I'll test it a little more, but I think that the new version is working.


Enhance Web Page and Add Background

Hey @sk66641
The current state of the web page is quite plain and lacks visual appeal, which can affect user engagement and overall user experience. To address this, the enhancement of the web page by adding a background is proposed. Enhancing the web page by adding a background will significantly improve its visual appeal and user experience. By carefully selecting a suitable background and implementing it with responsive design in mind, the web page will become more engaging and professional. I would like to add background effect and enhance web page.
Please assign me this under Gssoc'24

please assign me this issue i really want to work on this

this issue has already been raised and assigned in issue #7. So, will have to wait:)


Feature request: after switching php version, show the extension diffs.

For example:
$phpver 71

Switch version from php56 to php71 ...
Done!

Extension differences:
-curl
-xdebug
+mcrypt

Feature add in 113565f.
Please reinstall to get new feature. 😇

Awesome! Thanks.


Is it possible to the order in which the APIs are shown in swagger

Problem statement
Is it possible to the order in which the APIs are shown in swagger?
seems currently it is shown in ascending order . (
assume I have 2 APIs as below
user/domagic
user/buy
Currently it appears in swagger as the following order
user/buy
user/domagic
I changed the order in which it appears in docs.go,swagger.json & swagger.yaml
still it is shown in ascending order
Please remove the sections that don't apply
github.com/swaggo/gin-swagger v1.3.2
github.com/swaggo/swag v1.7.3

swagger version: x.x.x
go version:  1.16
OS:

you probably want to submit this at https://github.com/swaggo/swag


Manage Apps is missing

Manage Apps is missing in the Teams Dashboard

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

ID: fbbcabee-fa96-2878-e983-3c966f84ee15
Version Independent ID: 02fa4fd8-77e0-5cb2-a4af-576cbb68322f
Content: Manage your apps in the Microsoft Teams admin center - Microsoft Teams
Content Source: Teams/manage-apps.md
Service: msteams
GitHub Login: @LanaChin
Microsoft Alias: v-lanac

@techmastermike Thank you for submitting feedback and contributing to the docs. We are currently investigating this.

Hi @MaxiPigna
Thank you for reaching out!
As per the following roadmap document, we should be able to see this feature by now. Could you please recheck and let us know your feedback.
https://www.microsoft.com/microsoft-365/roadmap?filters=Microsoft Teams&searchterms=manage%2Capps
Looking forward to your response. Thank you!

@techmastermike thank you for submitting feedback.
I think the best way forward is if you open a service ticket in your tenant so this can get resolved ASAP. Based on the outcome let me know if it is something that can be called out in the docs.
Please follow this link to contact support for business products:https://docs.microsoft.com/office365/admin/contact-support-for-business-products
Please keep us posted here on the resolution so we can feed whatever information you discover into the content.


Implement release management strategy

Currently, we can only deploy the latest code in the main branch to OpenShift environments.
We need to develop/implement the ability to specify the version we want to deploy.

Already taken care.


WIP: Search by parent

Allow to search for work items by parent.id and parent.number.
See https://openshift.io/openshiftio/Openshift_io/plan/detail/450.
See https://github.com/fabric8-services/fabric8-wit/issues/2244.

Codecov Report

Merging #2275 into master will increase coverage by 0.06%.
The diff coverage is 100%.

@@            Coverage Diff             @@
##           master    #2275      +/-   ##
==========================================
+ Coverage   69.34%   69.41%   +0.06%
==========================================
  Files         175      175
  Lines       16396    16407      +11
==========================================
+ Hits        11370    11389      +19
+ Misses       3932     3924       -8
  Partials     1094     1094

Impacted Files
Coverage Δ

search/search_repository.go
75.77% <100%> (ø)
:arrow_up:

workitem/expression_compiler.go
82.86% <100%> (+0.68%)
:arrow_up:

remoteworkitem/scheduler.go
60.97% <0%> (+7.31%)
:arrow_up:

remoteworkitem/jira.go
100% <0%> (+25%)
:arrow_up:

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update c0eaf33...8045dea. Read the comment docs.


k3s example: error pulling image

First of all, thanks for the great project! I've always wanted K8S to be declarative all the way down to container images. This is awesome!
I tried running the examples on k3s by commenting out ./kubernetes.nix in favor of ./k3s.nix in the following file:
https://github.com/pdtpartners/nix-snapshotter/blob/6eb21bd3429535646da4aa396bb0c1f81a9b72c6/modules/nixos/vm.nix#L11-L12
then ran nix run ".#vm" to get a VM.
Although it successfully boots a VM with k3s, I hit an error when pulling a Nix image like the preloaded one (eg. kubectl apply -Rf /etc/kubernetes/redis will result in a pod that fails with a pull image error).
Doing the same steps as above but using ./kubernetes.nix works flawlessly.

I think the reason why this was failing is because we need to use a k3s version that includes the changes that closed issue https://github.com/k3s-io/k3s/issues/8480

I think the reason why this was failing is because we need to use a k3s version that includes the changes that closed issue k3s-io/k3s#8480

... and we then need to point k3s's kubelet to use nix-snapshotter image service:
services.k3s = {
  enable = true;
  configPath = pkgs.writeText "k3s_config.yaml" ''
    container-runtime-endpoint: "unix:///run/containerd/containerd.sock"
    image-service-endpoint: "unix:///run/nix-snapshotter/nix-snapshotter.sock"
  '';
};

Along with https://github.com/pdtpartners/nix-snapshotter/issues/102#issuecomment-1880169796, the fix from
https://github.com/pdtpartners/nix-snapshotter/pull/107 is required!

Along with #102 (comment), the fix from #107 is required!

The fix landed so I can now follow-up with a PR with the changes from https://github.com/pdtpartners/nix-snapshotter/issues/102#issuecomment-1880169796 :tada:

The image-service-endpoint flag was added to k3s in patch release 1.27.7 (reference: https://github.com/k3s-io/k3s/issues/8481). Unfortunately, nixpkgs/nixos-23.11 uses v1.27.6.


Adding pinot-batch-ingestion-spark module

refactor common code to pinot-batch-ingestion-common module.
adding pinot-batch-ingestion-spark module to build segment and push under spark environment.
move package is org.apache.pinot.spi.batch.ingestion to org.apache.pinot.spi.ingestion.batch

Codecov Report

Merging #4975 into master will increase coverage by 20.91%.
The diff coverage is 1.06%.

@@             Coverage Diff              @@
##             master   #4975       +/-   ##
============================================
+ Coverage     36.29%   57.2%   +20.91%
- Complexity        0      12       +12
============================================
  Files          1174    1176        +2
  Lines         62244   62379      +135
  Branches       9148    9167       +19
============================================
+ Hits          22592   35686    +13094
+ Misses        37617   24021    -13596
- Partials       2035    2672      +637

Impacted Files
Coverage Δ
Complexity Δ

...ache/pinot/spi/ingestion/batch/spec/Constants.java
0% <ø> (ø)
0 <0> (?)

...inot/spi/ingestion/batch/IngestionJobLauncher.java
0% <ø> (ø)
0 <0> (?)

...he/pinot/tools/admin/command/QuickstartRunner.java
0% <ø> (ø)
0 <0> (ø)
:arrow_down:

...s/admin/command/LaunchDataIngestionJobCommand.java
0% <ø> (ø)
0 <0> (ø)
:arrow_down:

...he/pinot/spi/ingestion/batch/spec/PushJobSpec.java
0% <0%> (ø)
0 <0> (?)

...not/spi/ingestion/batch/spec/RecordReaderSpec.java
0% <0%> (ø)
0 <0> (?)

...ingestion/batch/spec/SegmentNameGeneratorSpec.java
0% <0%> (ø)
0 <0> (?)

...i/ingestion/batch/spec/ExecutionFrameworkSpec.java
0% <0%> (ø)
0 <0> (?)

...tion/batch/common/SegmentGenerationTaskRunner.java
0% <0%> (ø)
0 <0> (?)

...ngestion/batch/spec/SegmentGenerationTaskSpec.java
0% <0%> (ø)
0 <0> (?)

... and 602 more

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 37886c4...389ce7b. Read the comment docs.


Máster Lemoncode / Solution to the async-javascript exercise

Solution to the async-javascript exercise.

Fixed the way to get the results, ensuring you get the houses before the characters.
I'm sorry. I completely forgot the purpose of the exercise. was the clip gone...


Bump Java to version 19 in Hotspot-based benchmarks

Summary of changes
Changes introduced in this pull request:

Bump Java to version 19 (Eclipse Temurin 19) in Hotspot-based benchmarks.

Other information and links

https://jdk.java.net/19/release-notes
https://www.infoworld.com/article/3653331/jdk-19-the-new-features-in-java-19.html

Gradle doesn't support Java 19 yet, so the builds are failing.
Closing this PR until a new version of Gradle has been released.


Growing Dataset

Hello!
I have my own dataset for attributes annotation that is growing from week to week.
Please tell me how to do:

annotating new images with same labels to have one whole dataset
add new labels/properties to all dataset
what is the easyest way to export multi-label property annotation to PyTorch

Thank you
Vasili

The Projects feature, which is currently under development, will solve 1 and 2 issues.
What do you mean by multi-label property annotation?

I mean that I make multiple labels for each ROI and what the favourite way to export it for multi label training

@vtimofeev01 , we have implemented the project feature. I will close the issue as outdated. If you need multi-labels, please share with us ideas how to implement the feature for your scenario in a separate issue.


added .cmd on win32 to work also on powershell

Powershell needs .cmd appended to npm, this patches the lack of it on win32

Thanks for your contribution 👍

This just got released as v0.4.0. Please help me take it for a spin.

Gonna try soon, thanks for your work mate


Assignment_1 for python

What changes are you trying to make? (e.g. Adding or removing code, refactoring existing code, adding reports)
adding assignmen-1 under branch (assignment_1) in my git repo.
What did you learn from the changes you have made?
python coding.
Was there another approach you were thinking about making? If so, what approach(es) were you thinking of?
yes
Were there any challenges? If so, what issue(s) did you face? How did you overcome it?
yes - I still have difficulty finalizing my code. There are multiple ways to create a code and I am not sure which one is correct.
How were these changes tested?
run the code
A reference to a related issue in your repository (if applicable)
the second part is confusing - I created my code such that it will give the requested results but the concept did not make sense. I would appreciate walking through the second part of assignment.
Checklist

[x ] I can confirm that my changes are working as intended

You did a great job here!
Please go ahead and close this pull request now. Thanks!


IHandlerSelector service parameter is always System.Object

I have this container with HandleSelector:
using (var container = new WindsorContainer())
{
    container.Kernel.AddHandlerSelector(new FooHandlerSelector());
    container.Register(Component.For<IFoo>().ImplementedBy(typeof(FooImpl)));

    var foo = container.Resolve("custom-key", typeof(IFoo));
}

This is my handler selector:
public class FooHandlerSelector : IHandlerSelector
{
    public bool HasOpinionAbout(string key, Type service)
    {
        return true;
    }

    public IHandler SelectHandler(string key, Type service, IHandler[] handlers)
    {
        // service parameter here is System.Object
        return null;
    }
}

The service parameter is System.Object. I was expecting that it should be typeof(IFoo). Am I misunderstanding something ?
If I remove "custom-key" I get type correctly.
I am using 4.1.1 version.

It is by design, typeof(object) is passed rather than null to represent all services since the component is being resolved by key and not service type. The handlers parameter of SelectHandler will contain all the handlers in the container, not just ones with the same type as provided.
https://github.com/castleproject/Windsor/blob/603d78d491790c88cff604051c92115e8bb5d9f9/src/Castle.Windsor/MicroKernel/SubSystems/Naming/DefaultNamingSubSystem.cs#L157
https://github.com/castleproject/Windsor/blob/603d78d491790c88cff604051c92115e8bb5d9f9/src/Castle.Windsor/MicroKernel/SubSystems/Naming/DefaultNamingSubSystem.cs#L327
To make the point this works however not recommended, because the service type does get used for other things, including late bound components:
using (var container = new WindsorContainer())
{
    container.Register(Component.For<IFoo>().ImplementedBy(typeof(FooImpl)).Named("custom-key"));
    container.Register(Component.For<IBar>().ImplementedBy(typeof(BarImpl)));
    var foo = container.Resolve("custom-key", typeof(int));
}

This probably should be included in the docs: https://github.com/castleproject/Windsor/blob/master/docs/handler-selectors.md

Since the component is being resolved by key and not service type.

Actually from user-side the component is being resolved by both: key and service type, because you pass both to Resolve function.
However what I was doing was wrong usage of that key parameter. It was confusing, because I didn't really get that the key is same as name.
Thanks for reply.

Actually from user-side the component is being resolved by both: key and service type, because you pass both to Resolve function.

I wondered the same thing when I looked at the code to reply. It appears that it resolves by "key or type" rather than "key and type", i.e. it'll look for the component by key/name and if not found will use the type to try to find it.


fix(region): gpu server change config use reserved resources

这个 PR 实现什么功能/修复什么问题:
fix(region): gpu server change config use reserved resources

是否需要 backport 到之前的 release 分支:
release/3.6
/area region
/cc @zexi

Codecov Report

Merging #9345 (9c04a7b) into master (3ba67a1) will increase coverage by 11.00%.
The diff coverage is n/a.

@@             Coverage Diff             @@
##           master    #9345       +/-   ##
===========================================
+ Coverage    5.85%   16.86%   +11.00%
===========================================
  Files         835       85      -750
  Lines      129733     8900   -120833
===========================================
- Hits         7601     1501     -6100
+ Misses     121447     7267   -114180
+ Partials      685      132      -553

Flag
Coverage Δ

aFlag
16.86% <ø> (+11.00%)
:arrow_up:

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files
Coverage Δ

pkg/compute/guestdrivers/managedvirtual.go

pkg/cloudcommon/db/apply_manager_method.go

pkg/multicloud/ucloud/project.go

pkg/util/s3auth/utils.go

pkg/baremetal/tasks/rebuild.go

pkg/keystone/models/roleresource.go

pkg/compute/models/guestnetworks.go

pkg/compute/guestdrivers/baremetals.go

pkg/compute/models/loadbalanceracls.go

pkg/keystone/models/federation_protocol.go

... and 740 more

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 3ba67a1...9c04a7b. Read the comment docs.

/lgtm
/approve


Feature/webengine projection mode

Fixes #1375
This PR is [ready] for review.
Risk
This PR makes [minor] API changes.
Testing Plan
Covered by existing and added unit tests
Unit Tests
New unit tests covering introduced structures were added
Summary
Applied 0273 WebEngine projection mode changes
Changelog
Enhancements
- Extend RAI unregister reason with new item
- Update existing tests

CLA

[x] I have signed the CLA

@santhanamk, @mrapitis, @atiwari9 please review changes

Hi @kostyaBoss  I reviewed the PR.  The code looks good.

@joeygrover, @theresalech Hi! Please review changes in this PR

@kostyaBoss the description for this PR says This PR is [not ready] for review.  Can you please update if this is ready?  Thanks!

@theresalech done

Hi @theresalech this PR is ready for Livio review.

@kshala-ford Hi! Thanks for your feedback. I've made corresponding changes in code/docs/tests. Please, review PR

@santhanamk given the additional changes made to this PR per Ford's request, please advise once the PR has been re-reviewed and is ready for Livio's review.  Thank you!

@santhanamk given the additional changes made to this PR per Ford's request, please advise once the PR has been re-reviewed and is ready for Livio's review. Thank you!

@theresalech I re-reviewed and gave the feedback.  Thanks.

@santhanamk Hi! Thanks for feedback. I've made corresponding changes, please review PR

I've checked CI failed logs, and it seems some problems on server, CI was unable to download some dependencies. Local tests were fine for me

@santhanamk, thank you!  Please advise once you have approved the revised PR and it's ready for Livio's review.

@theresalech  this PR is ready for Livio review.

@kostyaBoss, can you please advise when this PR will be updated and ready for Livio's review?  Thanks!

@theresalech @kostyaBoss I have committed the suggested change. I suppose this PR is ready to continue Livio's review.

@vladmu @kostyaBoss, Thank you for commiting the update to the Javadocs.
Please also update the Supported RPC Version in BaseLifeCycleManager.java as mentioned above
public static final Version MAX_SUPPORTED_RPC_VERSION = new Version(7, 0, 0);

Please also update the Supported RPC Version in BaseLifeCycleManager.java as mentioned above
public static final Version MAX_SUPPORTED_RPC_VERSION = new Version(7, 0, 0);

done in https://github.com/smartdevicelink/sdl_java_suite/pull/1403/commits/2d25832e172b3d833b73f2834ff1ea2bd3f5b46c


Clear button.

It would be nice to have clear button in a TagListField similar to a UITextField. This clear button, when present should remove all tags.
This can work similar to UITextField, i.e. either it is always visible. Or it depends  isEditable, i.e. visible when isEditable or visible when !isEditable.
#8

Some thoughts about implementation:

The icon (image? Unicode charactrs?) should appear on the left of a TagListView (ok for all languages?). It can be fixed to the trailing edge of the TagListView. And it can be vertically centered in the TagListView.
The positioning of the icon should be maintained by autolayout.
An icon implies that the available horizontal space for the TagViews is a bit smaller, i.e. the width of the icon. The row calculation should take this into account.


Add choices and documentcloud_pages to CvrE530Cd.type_radio (in common.py)

Overview
Add choices and documentcloud_pages to the type_radio field on CvrE530Cd the database model.
Basically, we think type_radio should be defined as a "choice field" (in Django parlance), which just means it's a field with a defined list of valid values and an intelligible definition for each value.
Our goal is for every potential choice field to include references to locations in the official documentation where the field's valid values and their meanings are described AND to have those choices included in the field's definition.
And we need your help!
What to do
Step 1: Claim this ticket by adding yourself as an Assignee (to the right)
Step 2: Find where in the official documentation type_radio's list of valid values is defined.
The best place to look first is in the .CAL layout documents: .CAL Format version 2.01 and .CAL Format version 1.05.02. These are documents that describe the layout of the .CAL file format, which is the required electronic format of any filings ingested by the CAL-ACCESS system (more on that here if you are interested).
You can start by opening the document and just searching for "type_radio". For example, if you were assigned to tackle the stmt_type field on the CvrCampaignDisclosureCd model, you would be looking for something like this::

But note that the same column might appear on multiple tables, and the list of valid values may vary depending on the table. We want to be sure to find the list of valid values for the type_radio on the CvrE530Cd model.
Another good place to look is in the MapCalFormat2Fields document, which describes how .CAL format fields are mapped to CAL-ACCESS database table columns. Note the Valid_V column on the far right.
Step 3: Copy the DocumentCloud ID and the page number(s) where type_radio's list of valid values is defined.
The DocumentCloud ID can be found the in the URL that points to the document. For example, the url to the .CAL Format version 2.01 doc is http://www.documentcloud.org/documents/2712034-Cal-Format-201.html#document/p1, and the id is 2712034-Cal-Format-201.
And the start page we want to grab is the DocumentCloud page number, not the page number printed on the .PDF. If the list of valid values spans multiple pages, then grab the page where the list ends as well.
Step 4: Find where type_radio is defined in common.py in the /calaccess_raw/models/common.py file underneath the CvrE530Cd class.
Since the model files are rather long, take care to be sure you find the where type_radio is defined for the CvrE530Cd model. It should look something like this:
    class CvrE530Cd(CalAccessBaseModel):
        # ...
        # several lines of code later...
        # ...
        type_radio = fields.IntegerField(
            max_length=None,
            db_column='TYPE_RADIO',
            blank=False,
            verbose_name='type radio',
            help_text='This field is undocumented',
        )

Step 5: Add the document references
Say you found the list of valid values listed in three places. You would list them in the documentcloud_pages attribute like this:
    class CvrE530Cd(CalAccessBaseModel):
        # ...
        # several lines of code later...
        # ...
        type_radio = fields.IntegerField(
            max_length=None,
            db_column='TYPE_RADIO',
            blank=False,
            verbose_name='type radio',
            help_text='This field is undocumented',
            documentcloud_pages=[
                DocumentCloud(id='2711616-MapCalFormat2Fields', start_page=10),
                DocumentCloud(id='2712033-Cal-Format-1-05-02', start_page=19),
                DocumentCloud(id='2712034-Cal-Format-201', start_page=24, end_page=25),
            ]
        )

Note: You only need to specify the end_page if the list spans multiple pages.
Step 6: Update the type_radio's help_text (if necessary)
It might be missing or it might be an empty string or it might not be consistent with what you see in the documentation. Note: The entire help_text string needs to be enclosed in single- or double-quotes like this:
    help_text='This is the help text',

If the help text is really long (80+ characters), then it needs to span multiple lines like this:
    help_text='This is the help text...blah...blah...blah...blah...blah...blah...\
...blah...blah...blah',

Step 7: Define the choices
The normal Django pattern is to define choices within the model class as a tuple which contains a bunch of two item tuples. The first item of each inner tuple is the valid database column value, and the second item is the definition. It should look something like this:
    TYPE_RADIO_CHOICES = (
        ('AAA', 'Some definition of AAA'),
        ('BBB', 'Some definition of BBB'),
        ('CCC', 'Some definition of CCC'),
        # ...and more..
    )

Then we assign this tuple of tuples to 's choice argument with a single line: choices=TYPE_RADIO_CHOICES.
When finished, it should all look something like this:
    class CvrE530Cd(CalAccessBaseModel):
        # ...
        # several lines of code later...
        # ...
        TYPE_RADIO_CHOICES = (
            ('AAA', 'Some definition of AAA'),
            ('BBB', 'Some definition of BBB'),
            ('CCC', 'Some definition of CCC'),
            # ...and more..
        )
        type_radio = fields.IntegerField(
            choices=TYPE_RADIO_CHOICES,
            max_length=None,
            db_column='TYPE_RADIO',
            blank=False,
            verbose_name='type radio',
            help_text='This field is undocumented',
            documentcloud_pages=[
                DocumentCloud(id='2711616-MapCalFormat2Fields', start_page=10),
                DocumentCloud(id='2712033-Cal-Format-1-05-02', start_page=19),
                DocumentCloud(id='2712034-Cal-Format-201', start_page=24, end_page=25),
            ]
        )

So some of these choice fields show up on multiple tables (the various office_cd fields are a good example), and of course it's rather redundant to repeat these values and their definitions over and over. In some these cases, we've consolidated these valid values into one place: calaccess_raw/annotations/choices.py.
So then instead of listing out all the choices in the tuple of tuples, we can do this:
    OFFICE_CD_CHOICES = get_sorted_choices(choices.OFFICE_CODES)
    office_cd = fields.CharField(
        choices=OFFICE_CD_CHOICES,
        # ...other stuff...
    )

If you think the field your looking at is a candidate for this sort of consolidation, let's have a conversation about it. Just post a comment below.
If you can, check the type_radio's defined choices against the actual values in type_radio's database column.
This will require you to install the app and run the updatecalaccessrawdata command. Then you can get the distinct column values with a GROUP BY query like this:
    SELECT TYPE_RADIO, COUNT(*)
    FROM CVR_E530_CD
    GROUP BY 1
    ORDER BY 1;

It's likely that you'll find undocumented values in database column, some of which are variants of the valid values. You can note these by repeating the same definition for each variant like this:
    OFFICE_CD_CHOICES = (
        ('GOV', 'Governor'),
        ('gov', 'Governor'),
        ('GUV', 'Governor'),
        # ...
    ),

If you're dealing with a set of choices that's been consolidated into calaccess_raw/annotations/choices.py, you can map the different variants to the same definition using the key of the choices dict like this:
    OFFICE_CD_CHOICES = (
        ('gov', look_ups.OFFICE_CODES['GOV']),
        ('GUV', look_ups.OFFICE_CODES['GOV']),
        # ...
    ),

If you're not able to check the database column values for whatever reason, don't sweat it. We'll deal with it in a later issue.
Wrap up: Review your changes and create a pull request

That's it!
PS: If any of this feels confusing, or if it doesn't seem to match up with what you are seeing, or if you have any suggestions about another approach, don't hesitate to speak up. You can post a comment below, or hit up the #california-civic-data channel on the News Nerdery Slack.

Upon closer inspection, this field appears to be a Boolean field, stores only 0 or 1.


Polymer text input fields are not registered by "Vimium" as a text input field

I'm using Chrome Version 38.0.2125.122 on Ubuntu GNOME 14.10 (64bit), and I have an extension called Vimium for emulating some of Vim functionality in Chrome.
when I'm writing in a text input field the extension stops listening for the specified hotkeys, unless it's a field in the shadow DOM.
Any solution other than disabling the extension on pages using Polymer/web-components?

+1

Closing this issue due to age and the release of version 1 of Polymer - please feel free to re-open if this is incorrect.


Update from project.json to csproj

I've updated the solution to Visual Studio 2017 csproj.
Regards!

@lurumad thanks for doing this. Unfortunately I had already started the upgrade and took the opportunity to clean the samples up.


I want to set the break-point at bar function. (^_^)/

Hello! I'm callmekohei!.
Problems summary
I want to set the break-point at `bar` function. (^_^)/

system
$ sw_vers
ProductName:	Mac OS X
ProductVersion:	10.12.6
BuildVersion:	16G29

$ sdb --version
Mono soft debugger (sdb) 1.5.6503.20649

$ mono --version
Mono JIT compiler version <IP_ADDRESS> (2017-02/5077205 Wed May 31 14:47:04 BST 2017)
Copyright (C) 2002-2014 Novell, Inc, Xamarin Inc and Contributors. www.mono-project.com
	TLS:           normal
	SIGSEGV:       altstack
	Notification:  kqueue
	Architecture:  amd64
	Disabled:      none
	Misc:          softdebug
	LLVM:          supported, not enabled.
	GC:            sgen (concurrent by default)

code
let bar() =
    stdout.WriteLine("abc")   // <--- I want to set break-point at this line!

let foo (str:string) =
    stdout.WriteLine(str)
    bar()

[<EntryPointAttribute>]
let main _ =
    let s = "Foo!"
    foo s
    stdout.WriteLine("callmekohei")
    0

debugging
$ sdb
Welcome to the Mono soft debugger (sdb 1.5.6503.20649)
Type 'help' for a list of commands or 'quit' to exit

(sdb) bp add at test.fs 2
Breakpoint '0' added at '/Users/callmekohei/tmp/test.fs:2'
(sdb) bp add at test.fs 12
Breakpoint '1' added at '/Users/callmekohei/tmp/test.fs:12'
(sdb) bp
#0 '/Users/callmekohei/tmp/test.fs:2'
#1 '/Users/callmekohei/tmp/test.fs:12'
(sdb) r test.exe
Inferior process '1627' ('test.exe') started
Event: 'TargetReady'
[Mono] Loaded assembly: /Users/callmekohei/tmp/test.exe
[Mono] Loaded assembly: /usr/local/Cellar/mono/<IP_ADDRESS>/lib/mono/gac/FSharp.Core/<IP_ADDRESS>__b03f5f7f11d50a3a/FSharp.Core.dll
[Mono] Resolved pending breakpoint at 'test.fs:2,1' to void Test.bar () [0x00000].
[Mono] Resolved pending breakpoint at 'test.fs:12,1' to int Test.main (string[] _arg1) [0x0001f].
Foo!
abc
Hit breakpoint at '/Users/callmekohei/tmp/test.fs:12'
#0 [0x0000001F] Test.main at /Users/callmekohei/tmp/test.fs:12
    stdout.WriteLine("callmekohei")
Event: 'TargetHitBreakpoint'
(sdb) c
Inferior process '1627' ('test.exe') resumed
callmekohei
Inferior process '1627' ('test.exe') exited with code '0'
Event: 'TargetExited'

Hello,
Assuming your code is in a file called Program.fs, something like bp add fun Program.bar should work, since the F# compiler translates modules into static classes.

Hello!
Thank your reply! (^_^)/
I do try it. But it does not work well (^_^;;
Last login: Thu Nov 23 17:05:08 on ttys000
~$ cd tmp
tmp$ cd jikken_sdb/
jikken_sdb$ cat pro
Program.exe  Program.fs
jikken_sdb$ cat Program.fs
let bar() =
    stdout.WriteLine("abc")

let foo (str:string) =
    stdout.WriteLine(str)
    bar()

[<EntryPointAttribute>]
let main _ =
    let s = "Foo!"
    foo s
    stdout.WriteLine("callmekohei")
    0
jikken_sdb$ sdb
Welcome to the Mono soft debugger (sdb 1.5.6503.20649)
Type 'help' for a list of commands or 'quit' to exit

(sdb) bp add fun Program.bar
Breakpoint '0' added for method 'Program.bar'
(sdb) run Program.exe
Inferior process '3306' ('Program.exe') started
Event: 'TargetReady'
[Mono] Loaded assembly: /Users/callmekohei/tmp/jikken_sdb/Program.exe
[Mono] Loaded assembly: /usr/local/Cellar/mono/<IP_ADDRESS>/lib/mono/gac/FSharp.Core/<IP_ADDRESS>__b03f5f7f11d50a3a/FSharp.Core.dll
[Mono] Resolved pending breakpoint for 'Program.bar()' to [0x0](no debug symbols).
Foo!
abc
callmekohei
Inferior process '3306' ('Program.exe') exited with code '0'
Event: 'TargetExited'
(sdb) exit
Bye
jikken_sdb$

Hmmmm....
I try to create namespace and module.
namespace ABC
module DEF =
    let bar() =
        stdout.WriteLine("abc")

    let foo (str:string) =
        stdout.WriteLine(str)
        bar()

    [<EntryPointAttribute>]
    let main _ =
        let s = "Foo!"
        foo s
        stdout.WriteLine("callmekohei")
        0

then try
Last login: Thu Nov 23 17:24:26 on ttys001
~$ cd tmp
tmp$ cd jikken_sdb/
jikken_sdb$ sdb
Welcome to the Mono soft debugger (sdb 1.5.6503.20649)
Type 'help' for a list of commands or 'quit' to exit

(sdb) bp add fun ABC.DEF.bar
Breakpoint '0' added for method 'ABC.DEF.bar'
(sdb) bp
#0 'ABC.DEF.bar'
(sdb) run Program.exe
Inferior process '3447' ('Program.exe') started
Event: 'TargetReady'
[Mono] Loaded assembly: /Users/callmekohei/tmp/jikken_sdb/Program.exe
[Mono] Loaded assembly: /usr/local/Cellar/mono/<IP_ADDRESS>/lib/mono/gac/FSharp.Core/<IP_ADDRESS>__b03f5f7f11d50a3a/FSharp.Core.dll
[Mono] Resolved pending breakpoint for 'ABC.DEF.bar()' to [0x0](no debug symbols).
Foo!
abc
callmekohei
Inferior process '3447' ('Program.exe') exited with code '0'
Event: 'TargetExited'
(sdb) exit
Bye
jikken_sdb$

Hmm, I think you need to compile your program with --debug+. As far as I remember, method breakpoints do not work without debug information (PDB/MDB file) available (not really sure why).

Thank you for your reply!
So, I try it.
jikken_sdb$ cat Program.fs
namespace ABC
module DEF =
    let bar() =
        stdout.WriteLine("abc")

    let foo (str:string) =
        stdout.WriteLine(str)
        bar()

    [<EntryPointAttribute>]
    let main _ =
        let s = "Foo!"
        foo s
        stdout.WriteLine("callmekohei")
        0
jikken_sdb$ fsharpc --debug+ Program.fs
F# Compiler for F# 4.1
Freely distributed under the Apache 2.0 Open Source License
jikken_sdb$ ls
Program.exe     Program.exe.mdb Program.fs

then
jikken_sdb$ sdb
Welcome to the Mono soft debugger (sdb 1.5.6503.20649)
Type 'help' for a list of commands or 'quit' to exit

(sdb) bp add func ABC.DEF.bar
Breakpoint '0' added for method 'ABC.DEF.bar'
(sdb) run program.exe
Inferior process '3813' ('program.exe') started
Event: 'TargetReady'
[Mono] Loaded assembly: /Users/callmekohei/tmp/jikken_sdb/program.exe
[Mono] Loaded assembly: /usr/local/Cellar/mono/<IP_ADDRESS>/lib/mono/gac/FSharp.Core/<IP_ADDRESS>__b03f5f7f11d50a3a/FSharp.Core.dll
[Mono] Resolved pending breakpoint for 'ABC.DEF.bar()' to /Users/callmekohei/tmp/jikken_sdb/Program.fs:4 [0x00000].
Foo!
abc
callmekohei
Inferior process '3813' ('program.exe') exited with code '0'
Event: 'TargetExited'
(sdb) quit
Bye

Hmmm....
It seems to work not well...

OK, that looks like a bug. I will take a look.

Thank you! (^_^)/

Hello! I'm callmekohei!
So, I try and try and try!
I can do it!

I write detail later (^_^)/

Hello! I'm callmekohei!
So, I find cause.
It's just how to compile.
In case Fsharp, compile following:
$ fsharpc -g --optimize- abc.fsx

That's point is --optimize-.

It's not cause on sdb.
So, I close this issue.
Thank you (^_^)/

I wrote article about it.
see also: http://callmekohei00.hatenablog.com/entry/2017/12/07/202955


Error spawning PHP: spawn EACCES and Ubuntu

Hi!
I know this kind of issues are already closed or resolved, but I can't make it work on my Ubuntu 16.04 :(
Using the "php.executablePath" setting, I tried to put the PHP7 installation (that I downloaded from the official PHP website) on multiple paths, like the C: root, in /usr/bin/, in /home/MYUSERNAME/bin.
For every path, I tried a chown with my username and a chmod 777, but the result is the same: Error spawning PHP: spawn EACCES.
Could you help me to solve this issue?

What do you mean eith the C: root? Are you using Windows or Linux?

Sorry, as I am a Windows user originally, I said C: to talk about the system drive x)
But in this case I am on Ubuntu.

It's more complicated.
Me and my team are working on a PHP 5.6 app. So all of our machines are running this version.
As I want to use PHPIntellisense, I want to tell it where is the PHP7 folder I downloaded from php.net.
There is no .php file in this folder. Maybe I have to compile it? I'm new to the Linux world, so I don't really know.

Since you are using ubuntu, you should be able to install php7 via apt, no?
sudo apt install php

Yes I could.
But won't it interfere with my 5.6 install?

Well, I found this page: [https://www.tecmint.com/install-different-php-versions-in-ubuntu/](How to Install Different PHP (5.6, 7.0 and 7.1) Versions in Ubuntu).
I will follow these instructions when I will have some time. I will come back here to tell how it worked or not :)

It worked!
After following the instructions, I had to specify "php.executablePath": "/usr/bin/php7.2" in my VS Code settings. But now it works, and I didn't break my PHP 5.6 app :)
For future reference, just in case this article could be deleted, here are the main steps:

add the Ondřej Surý PPA:
sudo add-apt-repository ppa:ondrej/php
Install PHP7:
sudo apt install php7.x (replace x by 0, 1 or 2, depending on what you need)
Set PHP5.6 as default PHP version:
sudo update-alternatives --set php /usr/bin/php5.6

You will also need some other commands for your HTTP server, and some sudo apt update but that's another story.
Thanks for your help!


Prevent escaped 'a' tag html from appearing in 'Integration With Exis…

Explain the motivation for making this change. What existing problem does the pull request solve?

Prevents unclickable, escaped HTML from appearing in the docs.

Before:

After:

@facebook-github-bot shipit


TypeScript error when upgrading to react-redux 8.0.0

What version of React, ReactDOM/React Native, Redux, and React Redux are you using?

React: 16.14.0
ReactDOM/React Native: 16.14.0
Redux: 4.2.0
React Redux: 8.0.0

What is the current behavior?
When compiling a TypeScript project that has the noImplicitAny config set to true, then react-redux .ts files are typechecked and result in a compilation error
node_modules/react-redux/src/utils/Subscription.ts:95:8 - error TS7011: Function expression, which lacks return-type annotation, implicitly has an 'any[]' return type.

95   get: () => [],
          ~~~~~~~~

Found 1 error in node_modules/react-redux/src/utils/Subscription.ts:95

I believe the ts files should be stripped from the final bundle that is uploaded to npm in order to avoid such ts config mismatch.
What is the expected behavior?
There shouldn't be any compilation error.
Which browser and OS are affected by this issue?
N/A
Did this work in previous versions of React Redux?

[X] Yes

All the redux-libraries are shipping with the source code - RTK is also already shipping since 1.0 with TypeScript.
You should not really have your bundler check files in your node_modules folder (TypeScript will per default only import .d.ts files from node_modules, not .ts ones unless you explicitly reference them) - did you maybe just include a wrong file?

I'm encountering the same issue and do not think this is a TSC misconfiguration, and the error occurs even when explicitly ignoring node modules.
I ran --traceResolution on TSC and that helped me narrow down what I think the issue is:
https://github.com/reduxjs/react-redux/blob/26ddc6a6fc1238408ae5a0cbc18f15be225786dc/src/exports.ts#L30 re-exports Subscription directly from SRC (as opposed to relative), which means that the following is then emitted in the type def for exports.d.ts
import type { Subscription } from '../src/utils/Subscription';

Which is why this error is occurring, as confirmed by trace resolver:
======== Resolving module '../src/utils/Subscription' from '[root]/node_modules/react-redux/es/exports.d.ts'. ========
Explicitly specified module resolution kind: 'NodeJs'.
Loading module as file / folder, candidate module location '[root]/node_modules/react-redux/src/utils/Subscription', target file type 'TypeScript'.
File '[root]/node_modules/react-redux/src/utils/Subscription.ts' exist - use it as a name resolution result.

PR to fix here: https://github.com/reduxjs/react-redux/pull/1910

Live in https://github.com/reduxjs/react-redux/releases/tag/v8.0.1 .

Thanks guys for your reactivity 🙏

That was fast 🚀  !!
Thanks 🙏🏻


Update Display

Currently the updates get displayed by deleting all current annotations, fetching updates, and displaying those.
Inefficient and could be improved upon

Resolved in PR #43


False error message "Log failed to stop"

After a 20min protocol run in G4 Experiment Conductor, an error message with "Log failed to stop" popped up, although the log in the Main host had stopped.

Do you remember which run protocol was being used?

It just happened on d1b90daeb5f7ed6aa8bec2dbbf8b8bb70f19da2d with the "Simple" run protocol.

Also happens on 9fc7bd392e25599b791514dd0a1da92c8e59eb89...

I also encountered the same problem this week after the updates to the code on the LED flight arena computer. I got the same error message as Frank, above. If I manually stopped the Log and waited it would eventually show me the pop up that is normally shown at the end of the experiment. However, when I tried to process the data from these experiments I got an error which I think is linked to the problem in stopping the Log.
The run protocol was ‘Simple’ for these experiments.

Just an observation / note to self: "Stop Display" and "Stop Log" are very close together. We should test if that is an issue and one command potentially masks the other.

Additional comment to those above.
I also see an error message in the command window but it's different to that seen by @floesche :

Error in G4_conductor_view/update_run_gui (line 447)
            self.experimenter_box.Value = find(strcmp(self.con.model.metadata_options.experimenter,self.con.model.experimenter));

Error in G4_designer_controller/saveas (line 1235)
                self.run_con.view.update_run_gui();

Error in G4_designer_controller>@(varargin)self.saveas(varargin{:}) (line 373)
            uimenu(menu, 'Text', 'Save as', 'Callback', @self.saveas);

Error while evaluating Menu Callback.

This also appears to be linked to the length of time / the size of the protocol being run. The one that I am current running is 22 minutes long and has 32 trials. I tested one earlier that was only 3 minutes with 15 protocols and I didn't get the issue of the Log not stopping correctly.

It just happened on d1b90da with the "Simple" run protocol.

This was the error in the MATLAB command window:
Error using waitforbuttonpress
waitforbuttonpress exit because target figure has been deleted

Error in PanelsController/stopLog (line 408)
                waitforbuttonpress;

Error in G4_default_run_protocol (line 332)
            ctlr.stopLog('timeout', 60.0, 'showTimeoutDialog', true);

Error in G4_conductor_controller/run (line 632)
            eval(run_command);

Error in G4_conductor_view/run_exp (line 603)
            self.con.run();

Error in G4_conductor_view>@(varargin)self.run_exp(varargin{:}) (line 140)
                'units', 'pixels', 'Position', [15, self.fig_size(4)- 305, 115, 85],'Callback', @self.run_exp);

Error while evaluating DestroyedObject Callback.

In the panelsController code, there are two different timeout message options. There's 'showTimeoutMessage' and 'showTimeoutDialog'. It varies by run protocol which of these is turned on. If 'showTimeoutMessage' is turned on, the dialog box pops up asking you to stop the log manually, but it does not tell you to hit a key afterward and there is no 'waitforbuttonpress' command, so the code is not waiting for the user to do something. If 'showTimeoutDialog' is turned on, there is a waitforbuttonpress, which is what triggered the error here. Is there a reason we need both of these? they seem to serve the same purpose. The error seems to indicate that the window was closed without a button ever being pressed, so waitforbuttonpress errored out.  Which of these would we rather turn on in the case of the host response being empty?

Another question - what version of the host are you all using when getting these errors? I just ran two protocols on Eyal's old computer, host version 253. One was 22 minutes long and one was 30 minutes long, but I did not have an issue with the log stopping with either one.

It seems like the stop log has slowed down significantly with the recent release of v253:
@taylorlm88 wrote some code that demonstrates the problem. timeLogCommand.m starts the display 100 times for a randomized time of up to 10 seconds and then measures how long the stopLog command takes for each of those cases.
For version 247, there is a bit of a spread, but not much more than .4 seconds for a 10 second display command.

In version 253, it takes roughly twice the time to run the stopLog.

If this trend continues for longer logging intervals, closing down the experiment will take many more minutes than before. This might be related to what was observed above and caused the issue with our other scripts.
I seem to remember that we had a similar issue before, but can't point my finger to any issue right now (maybe this was in a conversation via email). Maybe this issue got re-introduced in the latest Host?
Is there another way to speed up the closing of the TDMS files and finishing the experiment after issuing a stopLog command?

Have we sent this to Andy? We can't really close the TDMS files and process them until the stopLog has actually finished running, because the Log command is actively writing to them, so we get errors if we try to handle them while stopLog is still going.

No, I think Michael wanted to do this.  I'll ask him

Wow, that looks very good.
@taylorlm88 , would you want to test this first? Or should we install it on the other machines, too (@mbreiser, @SannaKoskela, @leburnett)?
The files are also at https://github.com/floesche/LED-Display_G4_Display-Tools/releases/tag/host-v254

I won’t be able to test it until tomorrow evening at the earliest, so up to you guys if you want to wait for me to test it out or if you want to go ahead and install. I’ll need to install it on the flight arena to test it out anyway.

Please test it whenever you have time.

If your measurements reflect the bigger picture (also for longer experiments that run many minutes), then this is all we need. Don't worry about optimizing it more for now.

@floesche I was already in the middle of optimizing so I just ended up finishing it. Here is latest build.

https://www.dropbox.com/scl/fi/ukz038f2asp26a1l7fw61/G4-Host-Ver1-0-0-255.zip?rlkey=jqijcy2bfn7nrf4ez23lz2jnc&dl=0

Thanks, the release is also at https://github.com/floesche/LED-Display_G4_Display-Tools/releases/tag/host-v255

I tested one of the protocols that consistently caused this problem using v255 and the stop log command no longer times out so I think this has fixed the issue! I didn't have time tonight but next will time the stop log command after a long protocol to see how long it actually takes, but from the protocol I ran tonight it seemed to be very fast.


Create cyclops-reactive-collections module

Move collections extensions to it's own module

Realeased in Milestone 6


Added IMDB web scraper in Python

I have added a web scraping program that scrapes the episodes for a series from IMDB website and creates a CSV file. This program is written in Python using Jupyter Notebook

Kindly resolve the conflicts and push the code again @JuJu2181

I have resolved conflicts sir


How to create pagination using scroll_token?

Hi,
I just learned about scroll_token property however due to the lack of examples in the documentation, I would know how to use it  in real world example.
I have a Next.js application where I would request  (display) 10 (1-10)  developers in the beginning and when the user click on show more button, I would display from 11-20 and so on. On each click, I display 10 developers.

// How to call this function each time and send scroll_token as a parameter
const fetchPersons = async (
  searchFilters: z.infer<typeof pdlPersonSearchSchema>
) => {
  const sqlQuery = buildQuery(searchFilters)

  const params = {
    searchQuery: sqlQuery,
    pretty: true,
    dataset: "all",
    size: 1,
  }

  try {
    const data = await PDLJSClient.person.search.sql(params)

    console.info(data.data)

    return data.data
  } catch (error) {
    if (error instanceof Error) {
      throw new Error(error.message)
    }
  }
}```

@alamenai As part of your response you will receive a scroll_token which you can then pass back into your next request to the search API which will retrieve the next set of results.  You can control the page size by adjusting your size param.

Hi @vvillait88 , so what I understand, when I set the size to 10 and pass the scroll_token. Each time it will display the next 10 persons, right ?

That is correct.  Every call will have a new scroll token that you can pass into the next response which will get the next 10.


(#1000) Do not display sensitive persisted package arguments

Description Of Changes
When the ability to show remembered arguments in Chocolatey GUI was
first introduced, code from the set_package_config_for_upgrade (which
was renamed to SetConfigFromRememberedArguments) method was borrowed,
as it was doing very similar work.  However, the code that was brought
over to Chocolatey GUI failed to realise that after splitting the
arguments on " --", when passed into the
arguments_contain_sensitive_information (which was renamed to
SensitiveArgumentsProvided) that a sensitive variable would no longer
be detected as this method expects that all arguments under test start
with a "-".
Motivation and Context
Ensure that no sensitive persisted arguments are displayed through Chocolatey GUI.
Testing

Enable the Chocolatey feature to use remembered arguments
Install a package using Chocolatey CLI where a sensitive argument is passed in, for example `choco install packageA --user=bob --password=bill"
Open Chocolatey GUI and open the details window for the package that you just installed
Click the "View Package Arguments" button
Ensure that the value of the password argument is not shown

Operating Systems Testing
Windows 10
Change Types Made

[x] Bug fix (non-breaking change).
[ ] Feature / Enhancement (non-breaking change).
[ ] Breaking change (fix or feature that could cause existing functionality to change).
[ ] Documentation changes.
[ ] PowerShell code changes.

Change Checklist

[ ] Requires a change to the documentation.
[ ] Documentation has been updated.
[ ] Tests to cover my changes, have been added.
[x] All new and existing tests passed?
[ ] PowerShell code changes: PowerShell v2 compatibility checked?

Related Issue
Fixes #1000

@gep13 great work on getting this updated


Automerge

@conda-forge-admin,please add bot automerge

Hi! This is the friendly automated conda-forge-webservice.
I just wanted to let you know that I added bot automerge in conda-forge/openap-feedstock#3.


[Bug]: Plugin can't control v2.0.0 of YTMD anymore with teh Companion connection instead of Remote control system

Consent

[X] I have searched the existing issues and verified that there is no open issue for the same subject.
[X] I understand that the YTMDesktop Elgato Plugin has NO affiliation with Google, YouTube or the YTMDesktop application.

Current Behavior
The plugin doesn't connect with YTMD anymore since version 2.0.0. I guess because now it's using the Companion connections instead of the old Remote control system.
Expected Behavior
That the plugin works as before but connected to Companion in v2.0.0
Steps To Reproduce

install v2.0.0 of YTMD on Windows
Enable Companion in settings/integrations of YTMD
click the play button on stream deck
Nothing works and you see the exclamation mark.

OS
Windows
OS Version
11
Plugin Version
v1.7.0
YTMDesktop Version
v2.0.0
How did you download the software?
Elgato Store
Anything else?
No response

Hello and thank you for opening this issue.
This is known and I'm already working on the v2 migration.
Also this is an /duplicate of #85 (the pinned issue). For further information please refer to #85 because this kinda is the "V2 Master Ticket".

Sorry, didn't see that other issue

@XeroxDev I have updated to the latest version and the "authorize" button in the streamdeck plugin doesn't seem to work. I went into the YTMusic Desktop settings and made sure I turned on the companion server and enabled companion authorization but when I click the button nothing happens.

Yeah. I made a mistake while building the plugin (no issues with the source code, just the artifact / plugin file).
I've uploaded the correct file now and everything should work.
The download is (still) here https://github.com/XeroxDev/YTMD-StreamDeck/releases/tag/v2.0.0
Sorry!


Missing tag on GitHub

We are using ort for automatic software compliance checks.
searchfield is one of our dependencies and we use it in version 0.8.4. Now, ort fails in scanning this repo, as this version is not tagged on GitHub.
Could you please add the missing tag "0.8.4" to GitHub and keep these tags in sync with upcoming releases?

Sounds Good!

Closing the latest release is tagged.

Thanks a lot!


Pull stream wave_format invalid syntax issue

Hi there,
Background:
I'm running the code available here
Issue:
The only differences I have made is using import os and using os to initialise the speech key and region, as well as add speech_recognition_with_pull_stream() to the end, so it will run... Besides that, I've made no changes. Yet, I continue to get SyntaxError: invalid syntax on creating the wave_format variable. This code has been copied like for like from this repo and I have installed the packages required. Tried everything I can think of... Any help appreciated...
System setup:
Version of the Cognitive Services Speech SDK
azure-cognitiveservices-speech==1.24.1
OS: Windows 10
Hardware - x64
Programming languages: Python 3.11.0
IDE: JupyterLab
Additional context
Code in full here (besides redacted parts):
import os
import time
import wave
import string

try:
    import azure.cognitiveservices.speech as speechsdk
except ImportError:
    print("""
    Importing the Speech SDK for Python failed.
    Refer to
    https://docs.microsoft.com/azure/cognitive-services/speech-service/quickstart-python for
    installation instructions.
    """)
    import sys
    sys.exit(1)
# Set up the subscription info for the Speech Service:
# Replace with your own subscription key and service region (e.g., "westus").
os.environ['SPEECH_KEY'] = '[keygoeshere]'
os.environ['SPEECH_REGION'] = 'uksouth'
# Specify the path to an audio file containing speech (mono WAV / PCM with a sampling rate of 16
# kHz).
weatherfilename = "C:/Users/[usernamehere]/whatstheweatherlike.wav"
#weatherfilenamemp3 = "whatstheweatherlike.mp3"
def speech_recognition_with_pull_stream():
    """gives an example how to use a pull audio stream to recognize speech from a custom audio
    source"""
    class WavFileReaderCallback(speechsdk.audio.PullAudioInputStreamCallback):
        """Example class that implements the Pull Audio Stream interface to recognize speech from
        an audio file"""
        def __init__(self, filename: str):
            super().__init__()
            self._file_h = wave.open(filename, mode=None)

            self.sample_width = self._file_h.getsampwidth()

            assert self._file_h.getnchannels() == 1
            assert self._file_h.getsampwidth() == 2
            assert self._file_h.getframerate() == 16000
            assert self._file_h.getcomptype() == 'NONE'

        def read(self, buffer: memoryview) -> int:
            """read callback function"""
            size = buffer.nbytes
            frames = self._file_h.readframes(size // self.sample_width)

            buffer[:len(frames)] = frames

            return len(frames)

        def close(self):
            """close callback function"""
            self._file_h.close()

    speech_config = speechsdk.SpeechConfig(subscription=os.environ.get('SPEECH_KEY'), region=os.environ.get('SPEECH_REGION')
    wave_format = speechsdk.audio.AudioStreamFormat(samples_per_second=16000, bits_per_sample=16, channels=1)

    # setup the audio stream
    callback = WavFileReaderCallback(weatherfilename)
    stream = speechsdk.audio.PullAudioInputStream(callback, wave_format)
    audio_config = speechsdk.audio.AudioConfig(stream=stream)

    # instantiate the speech recognizer with pull stream input
    speech_recognizer = speechsdk.SpeechRecognizer(speech_config=speech_config, audio_config=audio_config)

    done = False

    def stop_cb(evt):
        """callback that signals to stop continuous recognition upon receiving an event `evt`"""
        print('CLOSING on {}'.format(evt))
        nonlocal done
        done = True

    # Connect callbacks to the events fired by the speech recognizer
    speech_recognizer.recognizing.connect(lambda evt: print('RECOGNIZING: {}'.format(evt)))
    speech_recognizer.recognized.connect(lambda evt: print('RECOGNIZED: {}'.format(evt)))
    speech_recognizer.session_started.connect(lambda evt: print('SESSION STARTED: {}'.format(evt)))
    speech_recognizer.session_stopped.connect(lambda evt: print('SESSION STOPPED {}'.format(evt)))
    speech_recognizer.canceled.connect(lambda evt: print('CANCELED {}'.format(evt)))
    # stop continuous recognition on either session stopped or canceled events
    speech_recognizer.session_stopped.connect(stop_cb)
    speech_recognizer.canceled.connect(stop_cb)

    # Start continuous speech recognition
    speech_recognizer.start_continuous_recognition()

    while not done:
        time.sleep(.5)

    speech_recognizer.stop_continuous_recognition()
speech_recognition_with_pull_stream()

Hi, I tried your code with WinPython <IP_ADDRESS> and the only issue was missing ) at the end of the line where speech_config is created:
> python --version
Python 3.11.0

> python -m pip list
Package                        Version
------------------------------ ------------
azure-cognitiveservices-speech 1.24.1
...

> python issue.py
  File "issue.py", line 55
    speech_config = speechsdk.SpeechConfig(subscription=os.environ.get('SPEECH_KEY'), region=os.environ.get('SPEECH_REGION')
                                          ^
SyntaxError: '(' was never closed

After fixing it the code works:
> python issue.py
SESSION STARTED: SessionEventArgs(session_id=0058d5adb35b41599ac7f90c8442533a)
RECOGNIZING: SpeechRecognitionEventArgs(session_id=0058d5adb35b41599ac7f90c8442533a, result=SpeechRecognitionResult(result_id=32b7feacf9be4d04a67a6bfb083e8a1d, text="what's", reason=ResultReason.RecognizingSpeech))
...

Hi @pankopon. Thanks for updating the comment. Yes, I found the same issue eventually. I should've closed the issue sooner. Thanks again...


aerometry, dominion

This pull request was generated by the 'mq' tool
[test]
flake rate: 0.1
logical conflict every: 100
sleep for: 300s
close stale after: 4 hours
[pullrequest]
requests per hour: 0
deps=[a,d]

/trunk merge


chore: Fix issues with confluent cloud example

A few errors resolved with this one.

Restored the use of the Confluent Cloud API key, and left the pem.key options as commented.
Updated the Readme/docker compose to reflect the change
Added in a commented Connector ID/schema registry ID, showing they can be monitored with this integration.

@alanwest I updated this based on our discussion Friday. This should be good to go now.


Pinterest example

Hi,
where can I find the demo project with the pinterest transition?
In the readme there is the gif, but I didn't found it in the example directory.

Hi @Matteo,
Good question! We discovered a bug in this example and are busy fixing this. We will add it to the rest of the examples and update this issue when it's fixed. 🚀

Hi Robert,
have you fixed the issue related to the 'pinterest' example?

Sorry for the delay, we are looking into it and hope to update you this week!

Hi,
and i wanna know is it must requred to be ios 10+ . can you support more ios version? tks .

@OXOOFF: Transition makes use of iOS 10's UIViewPropertyAnimator, so that makes for quite a definitive answer: yes, only iOS 10+.
@taglia3 @roberthein will reply to your pending request a.s.a.p.

@taglia3 You can find the pinterest-like-example in a separate branch:
https://github.com/Touchwonders/Transition/tree/feature/pinterest-like-example

I have made several improvements to the framework in general and to the NavigationTransitionsExample specifically. It has been merged into master now, available in release 1.1.0.


Error: Cannot find module '@10up/babel-preset-default' on clean install

Describe the bug
Running the npm run build command in the root directory fails with this error:
><EMAIL_ADDRESS>build
> npm run build --workspaces --if-present

><EMAIL_ADDRESS>build
> 10up-toolkit build

node:internal/modules/cjs/loader:988
  throw err;
  ^

Error: Cannot find module '@10up/babel-preset-default'
Require stack:
- /Users/jamesmorrison/Sites/wp/src/wp-content/node_modules/10up-toolkit/config/webpack/modules.js
- /Users/jamesmorrison/Sites/wp/src/wp-content/node_modules/10up-toolkit/config/webpack/index.js
- /Users/jamesmorrison/Sites/wp/src/wp-content/node_modules/10up-toolkit/config/webpack.config.js
- /Users/jamesmorrison/Sites/wp/src/wp-content/node_modules/10up-toolkit/scripts/build.js
    at Function.Module._resolveFilename (node:internal/modules/cjs/loader:985:15)
    at Function.resolve (node:internal/modules/cjs/helpers:109:19)
    at module.exports (/Users/jamesmorrison/Sites/wp/src/wp-content/node_modules/10up-toolkit/config/webpack/modules.js:86:19)
    at Object.<anonymous> (/Users/jamesmorrison/Sites/wp/src/wp-content/node_modules/10up-toolkit/config/webpack.config.js:65:10)
    at Module._compile (node:internal/modules/cjs/loader:1155:14)
    at Object.Module._extensions..js (node:internal/modules/cjs/loader:1209:10)
    at Module.load (node:internal/modules/cjs/loader:1033:32)
    at Function.Module._load (node:internal/modules/cjs/loader:868:12)
    at Module.require (node:internal/modules/cjs/loader:1057:19)
    at require (node:internal/modules/cjs/helpers:103:18) {
  code: 'MODULE_NOT_FOUND',
  requireStack: [
    '/Users/jamesmorrison/Sites/wp/src/wp-content/node_modules/10up-toolkit/config/webpack/modules.js',
    '/Users/jamesmorrison/Sites/wp/src/wp-content/node_modules/10up-toolkit/config/webpack/index.js',
    '/Users/jamesmorrison/Sites/wp/src/wp-content/node_modules/10up-toolkit/config/webpack.config.js',
    '/Users/jamesmorrison/Sites/wp/src/wp-content/node_modules/10up-toolkit/scripts/build.js'
  ]
}
npm ERR! Lifecycle script `build` failed with error:
npm ERR! Error: command failed
npm ERR!   in workspace<EMAIL_ADDRESS>npm ERR!   at location: /Users/jamesmorrison/Sites/wp/src/wp-content/themes/10up-theme

Steps to Reproduce

Clone this repo (it doesn't technically have to be in a WP install)
Navigate to the repo root
Run npm install
Run npm run build
This error appears consistently

Note: Until this morning, I'd not seen this issue, it was first noted in a failed build on a project that used this as a template; however no changes had been made since this was last working.
Screenshots, screen recording, code snippet

Environment information
Device: Mac Studio (issue was also noted on Gitlab Runners on Ubuntu)
OS: MacOS
Shell: ZSH
Application: iTerm2
WordPress information
N/A
Code of Conduct

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

That's odd. Looks like there were a few releases in NPM that broke things. 🤦

@nicholasio, can this be fixed from 10up-toolkit, or is it something that we need to include here? My concern with including them here is we then end up with build dependencies split between 10up-toolkit and project code, which is going to make upgrading 10up-toolkit in the future a nightmare.
I'd much rather not include the override here if we can.

Marking this as closed for now since it seems toolkit handled this


Automatically create and close Standard RFCs in ServiceNow for production deployments

Creating Standard RFCs for automated production deployments is required by OIT's Change Management policy.  Automating it in handel will make this trivially easy for OIT developers to comply with that policy.
There is python code already written that does this here.
Note, the Standard RFC must be started right before the actual deployment phase and then completed right after deployment is finished recording the start & stop times of the deployment and if the deployment succeeded or failed.
I can walk the developer assigned to this through the whole process and the OIT Tools team developers can answer any ServiceNow questions I can't.

I don't know if this would be better implemented in handel instead of handel-codepipeline.
It could be implemented as CodeBuild phases in handel-codepipeline or as part of the actual handel deployment as well.
FYI, the developer will need to pass in the Standard Change Template id so the code knows which template to use to create the Standard Change from.

I implemented the Invoke Lambda phase type, which is one part of this work: http://handel-codepipeline.readthedocs.io/en/latest/phase-types/invoke_lambda.html. We'll put Lambdas in our accounts that we can invoke to perform our RFC process. Those Lambdas aren't there yet, but we'll work to put them there.

@dsw88 @pauldeden Like my comments about slack notify on failed pipelines this has been implemented internally by consuming the Cloudwatch events across all our accounts. Do we still want to implement something as part of handel-codepipeline or close the issue?

I don’t personally think that implementing it in handle could pipeline is a
requirement. It was just the initial design. If implementing using cloud
which events gives the same result that I think the implementation is done
but like I talked with Jason about I still feel there is more to document.
I’ll be detailing what I think needs to be documented soon.
On Fri, Feb 16, 2018 at 2:06 PM Nate Peterson<EMAIL_ADDRESS>wrote:

@dsw88 https://github.com/dsw88 @pauldeden
https://github.com/pauldeden Like my comments about slack notify on
failed pipelines this has been implemented internally by consuming the
Cloudwatch events across all our accounts. Do we still want to implement
something as part of handel-codepipeline or close the issue?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/byu-oit/handel-codepipeline/issues/22#issuecomment-366358263,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AEGuX_EJy3oOBM4ST9-jUbquXxS6zvL3ks5tVe3YgaJpZM4NOonS
.

I agree, this issue can be closed since it was implemented internally in our accounts.


The initApp method is not called from cold wallets

This prevents new blockchains and other initialization features from trigger.
The Cold Wallet UI should call this upon initialization.

This will be fixed in the next release (0.7.5).


Incorrect page view tracking since 2.11

Describe the Bug
After upgrading to 2.11, I noticed an issue with the default tracking:
On a single-page application (using history.pushState), the full url (including domain) is tracked, not just the path.
Reverting back to 2.10.2 solved the issue immediately.
Any ideas what could cause this? I saw several changes to the tracker script between those releases, but could not easily see what my cause this.
Note: it's a Vue app with Vue Router and Umami running on Docker.
Database
PostgreSQL
Relevant log output
No response
Which Umami version are you using? (if relevant)
2.11.2
Which browser are you using? (if relevant)
No response
How are you deploying your application? (if relevant)
Docker

Thanks for the PR, well take a look

Should be fixed by this PR, https://github.com/umami-software/umami/pull/2679. We will release a hotfix.

Fixed in v2.11.2.


Validate hex slice length in DPS API and improve unit tests

Goal of this PR
Fixes #242
TODO
Once #301 is merged, this PR will need an update to add the height checks there. In the meantime, it should remain in draft status.
Checklist

[x] Is on the right branch
[x] Documentation is up-to-date
[x] Tests are up-to-date

Just saw that it's still a draft, so I may have rushed with approval :) Feel free to re-request review if there's more changes to come

@awfm9

OK, so the intent of this issue is to avoid getting invalid data into our index database. This means that we want to check all of the IDs that come from an outside source and are written somewhere.

I don't see any case where that is needed here, since the only cases in which we write things are:

Ledger paths and payloads from the Feeder, which are typed ([32]byte) so we know that they are of a valid length.
Flow identifiers and hashes from the Chain, which are also typed similarly and thus safe to write.

I don't see how in any of those cases we could be getting values of incorrect lengths? Is there another case where we get data from the outside that we write into the index, that I am not thinking of? 🤔

As discussed with @Ullaakut, I agree that there is some value in having input validation for GRPC requests, but if we start doing that, we should do it in a consistent way where we use an idiomatic approach to validate all GRPC request input.

I'm closing this PR and restarting from scratch since we are going in a completely different direction and in the end, adding validation to GRPC fields for this issue.


Issue with custom directive

I have a custom angular template directive, with some html displaying some info,
now in that directive in the link function i do some initialization of my model, basically some defaults on the view.
Now elsewhere on  my app, i present a list of items using angular-dragula
when i drag them to the other container (the one that will contain a list of items of my custom directive) everything works fine, the link function is called and the template is initialized only when i drag to the bottom if i drag to the top (when there is already an item on the list) or between items, the link function is not called and as such my template directive is not initialized.

Please ask on Slack. https://dragula-slackin.herokuapp.com/


Simple menu

http://www.google.co.uk/design/spec/components/dialogs.html#dialogs-simple-menus
I wanted to use the Simple Menus mentioned in the Material design spec. However, for the time being I just used regular Material dialogs with a list of items, no title, message or buttons.
To add support for Simple Menus it feels like the changes that would be required are:

Specify position for the dialog to appear (over the list item selected)
Persistent scrollbar (if scrollable)
Highlight specified item
If close to screen edge, ensure that the dialog is pushed up so all elements are visible.

I was thinking of implementing this feature in the library, as it is part of the Dialogs material spec and also because it would be really handy!

Well, generally you use PopupMenus for this, e.g:

I knew about using them for a situation like in that screenshot. Never thought to use them for the Simple Menu situation, of selecting an option, awesome. Thanks.

The PopupMenu does not follow the specs for the simple menu.

On older devices its completely misthemed.
Also it has no top / bottom padding.
It does not center the selection above the underlying selection
It cuts text
It has no preselection

Are there any plans for supporting this?
See: https://material.google.com/components/menus.html#menus-simple-menus

Those are a completely different UI pattern than what this library is designed for. This library extends android.app.Dialog, PopupMenu does not. It would need to go in a separate library, in my opinion.


OptimisticJSONParser not found

However it's documented in the doc with this commit, OptimisticJSONParser is nowhere to be found.
Any plans to materialize it?

That's an oversight from my part.
OptimisticParser is not part of the library.
Instead, we have the emitPartialTokens and emitPartialValues options as shown in https://www.npmjs.com/package/@streamparser/json#stream-parsing-a-fetch-request-returning-a-very-long-string-getting-previews-of-the-string.
I'll fix the documentation today with a new release.


Add dev container

Adds a dev container to the repo, based on the instructions and dependencies defined in the contributing readme.

Closing in favor of an updated PR


Labware calibration: App changes for change in calibration point for troughs

overview
protocol_api2 now uses the well's center point as the calibration point for troughs. Specifically, now pipette's center should align with trough well center.  So we need to update the app's calibration step to show this new calibration point
current behavior
Currently the calibration point for troughs is a point along the upper edge of the first well of a trough
expected behavior
The image on labware calibration step should show a point in the center of the first well for calibration. In case of multichannels, the pipette should center over the trough well
design
https://zpl.io/2GmrRLj

cc @pantslakz

@btmorr @sanni-t Is this right?

Left graphic looks right. Right graphic is for calibrate-to-bottom. I believe this card is supposed to be for calibrate to top.

@btmorr Ok! If you confirm the design in the zeplin link then I'll remove the design tag from the ticket.

@howisthisnamenottakenyet RE: calibrate to bottom image. We will need that as well since we swap out images/text based on if that advanced setting is turned on

updated


Generate and upload docs web page

Jira issue:
No ticket
What was solved?
Now API docs wen page should be generated based on in-code docs and uploaded to the Amazon S3 bucket
Release notes:

[x] Feature: Now Widgets SDK API docs should be available to public through web page
[ ] Ignore
[ ] Release notes (Is it clear from the description here?)
[ ] Migration guide (If changes are needed for integrator already using the SDK - what needs to be communicated? Add underneath please)

Additional info:

[ ] Is the feature sufficiently tested? All tests fixed? Necessary unit, acceptance, snapshots added? Check that at least new public classes & methods are covered with unit tests
[ ] Did you add logging beneficial for troubleshooting of customer issues?
[ ] Did you add new logging? We would like the logging between platforms to be similar. Refer to Logging from iOS SDKs → Things to consider for newly added logs in Confluence for more information.

Screenshots:

Closing this PR because it is duplication of https://github.com/salemove/ios-sdk-widgets/pull/900


Postgresql rename column

Using sqldelight with postgres I'm trying to rename a column of table:
2.sqm:
ALTER TABLE technologyEntity
    RENAME COLUMN keywords TO tags;

that is valid in postgresql but I'm getting this error:
Error Reading 2.sqm:
../entertainment/migrations/2.sqm line 2:11 - TO expected, got 'COLUMN'
1    ALTER TABLE technologyEntity
2        RENAME COLUMN keywords TO tags
                ^^^^^^

and if I remove the keyword COLUMN I get the same error.. any hints? :pray:  thanks!

I also got the same error when renaming a table as part of a sqlight migration on Android
CREATE TABLE New(
...
);

INSERT INTO New SELECT ... FROM Existing;
DROP TABLE Existing;
ALTER TABLE New RENAME TO Existing;

This resulted in the same error @pabl0rg mentioned:
Cannot get reference table for psi type class sqldelight.com.alecstrong.sql.psi.core.psi.impl.SqlNewTableNameImpl

However, if I changed the order of operations and renamed the existing table first, the error no longer occurs and the migration runs without problems.
ALTER TABLE Existing RENAME TO Old;
CREATE TABLE Existing(
...
);
INSERT INTO Existing SELECT ... FROM Old;
DROP TABLE Old;

Posting here in case it helps anyone experiencing this error.