APP ID/Passwords shared between tabs cause conversation to fail

Github issues should be used for bugs and feature requests. Use Stack Overflow for general "how-to" questions.
Version
3.3
Describe the bug
The emulator seems to cache the AppId and password used to connect to a bot between tabs/conversations. If a bot is updated to remove / add the appsettings.json then the emulator needs to be restarted to pick up the change. Starting a new conversation tab or restarting the conversation fails as it uses the previous state. (Restarting the emulator is not the obvious choice when one encounters a exception in the bot)
To Reproduce
Steps to reproduce the behavior:

Start a conversation with a bot running locally and using appsettings.json (and a valid appID and password specified in it). This conversation works fine.
Stop the bot application, Delete the appsettings.json and restart the bot.
The bot should now allow conversations where App ID and password are not specified.
Do not close the emulator. "Open the bot" again and this time, only specify the endpoint and not App Id and Password.
The new conversation will fail with an error and the bot debug window shows that the older App Id and password is still being passed in:

fail: Microsoft.AspNetCore.Diagnostics.DeveloperExceptionPageMiddleware[1]
System.UnauthorizedAccessException: Invalid AppId passed on token:
at Microsoft.Bot.Connector.Authentication.EmulatorValidation.AuthenticateEmulatorToken(String authHeader, ICredentialProvider credentials, IChannelProvider channelProvider, HttpClient httpClient, String channelId)
...
Expected behavior
If the emulator needs to be restarted to pick up new bot settings, then this should be made more obvious to users.
Screenshots
If applicable, add screenshots to help explain your problem.
Additional context
Add any other context about the problem here.
[bug]

FWIW, we had several people run into this during our latest OpenHack in Los Angeles as well.

@cwhitten I'd still like to investigate this one as I believe I ran into this scenario on 4.5.x.
@drub0y do you recall if the people who ran into this were using 3.3 of the emulator or a 4.x version?


feat: add tvos support

Added the TVOS dependency and made a condition for the TV lib and iOS import

Hey man, after updating the package to its last version I got 'TVVLCKit/TVVLCKit.h' file not found and that makes my app crash, do you have any idea of why would that be happening?

Hey,
on which device do you have this problem.
The TVVLCKit/TVVLCKit.h should only be included on the tvOS platform.
https://github.com/Duell10111/react-native-vlc-media-player/blob/b6e0a3629bae3e0f696e0ca6805c44c5a8c1dc50/ios/RCTVLCPlayer/RCTVLCPlayer.m#L7

although I suppose it must be something else, since when using a previous version the app keeps crashing without errors

Here is the fix:
https://github.com/razorRun/react-native-vlc-media-player/pull/154

Otherwise you can also rollback to the previous version, as the TVOS support is the only thing that got added in the latest release. 😅


Update .php_cs to newer version

Coverage remained the same at 96.512% when pulling 9c3bf37d0dfaa677e7c16d0b2a75bdce3b9cfae6 on tmilos-patch-1 into 401720d269c507b704f216d02f3a4f07a307ccd8 on master.


Reference BLE controller options

For someone starting with Atmosic products "PD50" and "LL" controller options are not clear, so point to the explantation where it is needed. Also fix the path of the README file.

https://github.com/Atmosic/openair/tree/main/modules/hal_atmosic/ATM33xx-5/drivers/ble

Yes, this is the file I referenced in my pull request.

In your comment, I thought you are asking as you did not point it there. Not sure what you mean by "fix".
Are you asking us to put this link somewhere for easier access? Like the main readme in the openair repo?

Yes. This is a pull request, so that means that I am proposing a change . You can see that change by clicking the link below my original comment. There I am changing the readme to reference this file. Also I updated (fixed) the path being used in another location.
In the end you don’t have to accept this pull request, but I suggest to add some similar information to the readme, as for someone outside Atmosic it is not obvious where to find this information

sorry, my bad, I did not see the lines it was compressed.. Thx!

Thanks, @br101.  The ble driver paths need to have openair/ prefix as well.  Did that in https://github.com/Atmosic/zephyr/pull/13.


AVRO-2165 Change namespace definitions in C++. Use nested namespaces instead of…

Namespace definitions using colons are supported since C++17 (http://en.cppreference.com/w/cpp/language/namespace).
This fix makes the library usable for C++11 and avoids compiler error "Compiler Error C2429" (https://docs.microsoft.com/en-us/cpp/error-messages/compiler-errors-1/compiler-error-c2429).

Thank you for the improvement.
This pull request looks really good. Is it possible to create a Jira ticket in https://issues.apache.org/ and link this pull request to it? This will help us give you credit for this contribution.

So I have created an account on apache jira (kwallner), but I was not able to assign the ticket. Looks like I'm lacking the permission to assign for tickets.

I just added you as an Avro Contributor in Jira so you should be able to assign the issue now.


[Help request] Kibana official images

Hello! I am trying to make this all work with original docker images from elastic docker repo.
It was not so hard to make elastic up and running, because pires left all the dockerfiles and configs for his customised images here oh GitHub.
But kibana deployment uses some kind of customised images with dockerfiles nowhere to be found.
So, the question is-how does the Kibana know where to connect?
There is no such variable in yaml, so I assume, some kind of discovery should be in the image.
Thanks!

@Unb0rn
Pires has recently accepted my pull request to update to Kibana OSS image.
Kibana connects to Elastic Search through standard (ES standard) ports.
Try pull the latest and see how you get on.
Just note that for the kibana service exposes kibana on port 80. In my own setup I kept everything on standard ES ports (ie: kibana 5601) and ran a nginx proxy in front.


Typescript error: useState have the wrong type in  block in VsCode.

Environment

Operating System: Darwin
Node Version:     v21.2.0
Nuxt Version:     3.8.2
CLI Version:      3.10.0
Nitro Version:    2.8.1
Package Manager<EMAIL_ADDRESS>Builder:          -
User Config:      devtools, srcDir, app, appConfig, devServer, css, components, routeRules, modules, i18n, robots, sitemap, gtag, mazUi, vite, tailwindcss, postcss
Runtime Modules:  maz-ui/nuxt<EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS>Build Modules:    -

VScode extensions:

Nuxtr
TypeScript Vue Plugin (Volar)

Reproduction
Example:
pages/conversations.vue
<template>
  <div>
    {{ conversations.length }}

    <ChatRoomItem v-for="conversation in conversations" :key="conversation.id" :conversation="conversation" />
  </div>
</template>

<script lang="ts" setup>
  type Conversation = {
    id: string
    roomId: string
    state: 'read' | 'unread'
    user?: User | null
    message?: string
    messages?: Message[]
    role: 'client' | 'admin'
    createdAt: string
    updatedAt?: string
  }

  const conversations = useState<Conversation[]>('conversations', () => [])
</script>

tsconfig.json
{
  "extends": "./.nuxt/tsconfig.json"
}

Describe the bug
The type of this useState is not good interpreted in the template block:

The bug is not present if I use a ref instead of useState.
Additional context
No response
Logs
No response

I am seeing this problem as well. It seems that the Ref returned by useState is no longer compatible with the expected Ref used in vue components. I believe I found a workaround by simply casting as a Ref but I haven't fully tested my application.
const object = useState<ObjectType>('obj') as unknown as Ref<ObjectType>;

This seems to be working fine to me in a new project.

Check you don't have multiple versions of Vue in your project.

This seems to be working fine to me in a new project.

Check you don't have multiple versions of Vue in your project.

This worked. Package.json in my nuxt folder had a different version of vue than package.json in my root folder.


watch delete event

clientv3: the delete event can return value of key?

i think the Watch event will not have the value of the key.
the Event will have the ModRevision which points to the latest revision (in which the key has been deleted).

@lijunfei You can set PrevKV in watch: see https://github.com/coreos/etcd/blob/master/etcdserver/etcdserverpb/rpc.proto#L620-L622.
It is supported in the latest version of 3.0 and after.


Requests 2.11 regression

Using https://github.com/timotheus/ebaysdk-python  v 2.1.3 (latest)
Which transitively uses requests...
Requests 2.10 was good, with Requests 2.11 I get:

<Truncated>
  File "/webapps/listing_mirror/lib/python3.5/site-packages/ebaysdk/connection.py", line 119, in execute
    self.build_request(verb, data, verb_attrs, files)
  File "/webapps/listing_mirror/lib/python3.5/site-packages/ebaysdk/connection.py", line 159, in build_request
    self.request = request.prepare()
  File "/webapps/listing_mirror/lib/python3.5/site-packages/requests/models.py", line 251, in prepare
    hooks=self.hooks,
  File "/webapps/listing_mirror/lib/python3.5/site-packages/requests/models.py", line 295, in prepare
    self.prepare_headers(headers)
  File "/webapps/listing_mirror/lib/python3.5/site-packages/requests/models.py", line 409, in prepare_headers
    check_header_validity(header)
  File "/webapps/listing_mirror/lib/python3.5/site-packages/requests/utils.py", line 756, in check_header_validity
    "not %s" % (value, type(value)))

requests.exceptions.InvalidHeader: Header value 961 must be of type str or bytes, not <class 'int'>

Can't say for sure yet where the bug is (requests vs ebaysdk)... but at least something changed in a breaking manner.
Trying to investigate more...

Hey @listingmirror, you can find morre information on this in #3477. 2.11.0 brought in more rigid header validation, requiring values to be passed as either strings or bytes. I'm betting ebaysdk is passing the Content-Length header as an int. This will need to be converted to a string for use with 2.11.0+.

@nateprewitt  Perfect I will chase it down there ;)


MySQLOperationalError: 1267 when imports m2m field that contain emoji

got an error : MySQLdb._exceptions.OperationalError: (1267, "Illegal mix of collations (utf8mb4_bin,IMPLICIT) and (utf8_general_ci,COERCIBLE) for operation '='")
this error will show up when the m2m field has emoji. This kind of emoji somehow is somekind of Chinese code format.
For example: 💋,💍,🍊
Environment:
Django 2.2.6
Python 3.8.0
import-export 1.2.0
MySQL mysqlnd 5.0.12

Parsing files was refactored in #1306 - if you can reproduce with latest version, please comment and we will look into it.


Update Cake.Core and Cake.Common

Update Cake.Common/Core to 0.27.1. Add .NET Standard build and align project structure and style rules with cakebuild/cake.

@empathicqubit your changes have been merged, thanks for your contribution :+1:


Test 5.2.0 Release Candidate

This is a general issue for doing testing for 5.2.0. If any updates need to be made in order to directly support testing, note them on this issue and reference it from the pull requests.

Testing is complete. We're updating release notes and wrapping up the release.


feat: add Burner Wallet Recovery flow

Closes https://github.com/FuelLabs/fuel-connectors/issues/172
Closes https://github.com/FuelLabs/fuel-connectors/issues/177

Add Burner Wallet recovery feature.

A dialog will now prompt the user to recover their previous Burner Wallet session.

Also, fix connection status issue when refreshing the page (it was losing the connection status).

📷 Demo

LGTM 🚀

@LuizAsFight
It's looking good! Check it out
https://fuel-explorer-czzwfrfmr-fuel-labs.vercel.app/bridge?from=eth&to=fuel

📷 Demo


'DiGraph' object has no attribute 'edges_iter'

Traceback (most recent call last):
  File "src/main.py", line 124, in <module>
    main(parse_args())
  File "src/main.py", line 74, in main
    g.read_adjlist(filename=args.input)
  File "/home/zhu/Documents/git_repo/OpenNE/src/libnrl/graph.py", line 35, in read_adjlist
    for i, j in self.G.edges_iter():
AttributeError: 'DiGraph' object has no attribute 'edges_iter'

Hi, this bug has been fixed. You can pull again.

Thx @zzy14


⚠ Information: Future card configuration changes.

Hi.
A change in how lovelace cards are set up in Home Assistant 0.105 increases performance, but enables cards to accidentally modify their own configuration in the loaded lovelace configuration.
I'm going through the cards in the HACS default repository, and noticed that your card may be susceptible to this. Looking through your code it seems you may modify parts of the config object passed to your card in setConfig.
The result could be that your card does not work well with the GUI editors or that parts of the configuration start showing up multiple times.
At some point in the future, it is likely that the configuration will be frozen before being passed to setConfig. At this point, your card will fail entirely when it tries to modify the configuration object.
There are several ways to fix/protect agains this problem.
The best is to restructure setConfig such that the configuration is never modified.
Other alternatives are to make a copy of the configuration and work on that instead.
setConfig(config) {
  config = { ...config }; // This works for simple configurations not containing arrays or objects
...

import { deepClone } from "deep-clone-simple";
// https://github.com/balloob/deep-clone-simple

setConfig(config) {
  config = deepClone(config); // This is a safe and fast method
...

or
setConfig(config) {
  config = JSON.parse(JSON.stringify(config)); // This uses built-in functions, but may be slower than deepClone
  ...

Please note that I have not tested your card agains Home Assistant 0.105 or later, but just quickly looked through the code. If I'm mistaken in my assessment, I appologize for taking your time.
See thomasloven/hass-config#6 for more info.

Ok thanks, I'll take a look as soon as possible

Release v2.5.0 shoulde resolve this


[WIP] feat: Track positions of explicitly declared types

Bit of a hack to be able to reuse enum Type but it is fairly self-contained so it shouldn't be to bad in the end
Needed by #319
cc @brendanzab

Should be done now, just need to run the travis gauntlet.
The doc comment storage is in a slightly weird place but it will do for now as any other place would require much more invasive changes.


qemu_x86: shell does not work with tip of main

Describe the bug
Shell sample no longer works with qemu_x86.
To Reproduce
Steps to reproduce the behavior:

west build -b qemu_x86 samples/subsys/shell/shell_module -t run
Booting hangs somewhere in ns16550 driver and all is seen is this:

[105/106] To exit from QEMU enter: 'CTRL+a, x'[QEMU] CPU: qemu32,+nx,+pae
SeaBIOS (version zephyr-v1.0.0-0-g31d4e0e-dirty-20200714_234759-fv-az50-zephyr)
Booting from ROM..

Expected behavior
Shell with qemu_x86 should work.
Impact
Showstopper for using qemu_x86 with shell.
Environment (please complete the following information):

OS: (e.g. Linux, MacOS, Windows)
Toolchain: Zephyr SDK 0.14.2
Commit SHA or Version used: 2a175b6abdd47c85345029b19c358a3dd8c611aa (tip of main) but 4c8a8149de0705c9aaa498ae3c228349c9fe9a3e is the first commit that fails to boot after using git bisect

git bisect shows 4c8a8149de0705c9aaa498ae3c228349c9fe9a3e (part of #46571). cc @gmarull


Two items are lost when HTTP sink client is reconnected

When HTTP sink is set up with accumulateItems and client is connected and then reconnected then 2 items are lost during reconnection.
Steps to reproduce:

Start pipeline:

Pipeline p = Pipeline.create();
StreamSource<Long> source = HttpListenerSources.builder()
        .type(Long.class)
        .build();
Sink<Object> sink = HttpListenerSinks.builder()
        .accumulateItems(500)
        .buildServerSent();
p.readFrom(source)
        .withoutTimestamps()
        .writeTo(sink);

Connect client for HTTP sink by curl -X GET http://localhost:8081
Send couple of messages by curl POST, all are processed correctly
Stop client for sink (from step 2)
Send couple of messages by curl POST, all are processed correctly
Connect again client for HTTP sink by curl -X GET http://localhost:8081
Send couple of messages by curl POST, first two messages sent after client was disconnected (i.e. messages from step 5) are missing

The root cause of the issue is undertow does not figure out if the client is disconnected. First I thought that there is a timeout or somothing but after like 10 minutes undertow was still thinking that the client is alive. The only way that undertow declares a client dead and removes it is by sending 2 items to the connection, after sending the second item it immediately declares client dead.
I haven't been able to find a configuration parameter on undertow side which will trigger an immediate removal of the client


is this library still being maintained?

Expected behavior
Actual behavior
Steps to reproduce the behavior

Forked here https://github.com/cuong0993/node-firestore-import-export

Thanks! Does this resolve the "Bandwidth Exhausted" issue?
https://github.com/jloosli/node-firestore-import-export/issues/411

@cuong0993 could you please have a look at this one #869?
Maybe you have a clue what needs to be updated as I'm not that familiar with the code. After that I could probably fix it myself.

Thanks! Does this resolve the "Bandwidth Exhausted" issue? #411

No. I believe the "Bandwidth Exhausted" issue is from the server.
It might occur with a large database import/export.
This lib is simple and do not handle that kind of error, unfortunately.
Refer https://github.com/googleapis/nodejs-datastore/issues/525

@nonoumasy @cuong0993 just run across the below code that deals with "Bandwidth Exhausted"
https://gist.github.com/navidshad/973e9c594a63838d1ebb8f2c2495cf87
maybe either of you guys have capacity to integrate it into the current code?


USB flash drive not detected on macOS

Etcher version:
v1.1.2
Operating system and architecture:
macOS 10.13 (17A405)
Image flashed:
pfSense-CE-memstick-serial-2.4.0-RELEASE-amd64.img from https://www.pfsense.org/download/
Do you see any meaningful error information in the DevTools?
No.

This issue looks vaguely similar to #649, at least same USB manufacturer and same OS vendor.
diskutil output
imbp:draza $ diskutil info /dev/disk2
Device Identifier:        disk2
Device Node:              /dev/disk2
Whole:                    Yes
Part of Whole:            disk2
Device / Media Name:      Extreme
Volume Name:              Not applicable (no file system)
Mounted:                  Not applicable (no file system)
File System:              None
Content (IOContent):      FDisk_partition_scheme
OS Can Be Installed:      No
Media Type:               Generic
Protocol:                 USB
SMART Status:             Not Supported
Disk Size:                15.7 GB<PHONE_NUMBER>6 Bytes) (exactly 30651688 512-Byte-Units)
Device Block Size:        512 Bytes
Read-Only Media:          No
Read-Only Volume:         Not applicable (no file system)
Device Location:          External
Removable Media:          Fixed
Virtual:                  No
OS 9 Drivers:             No
Low Level Format:         Not supported
Full darwin.sh output:
imbp:draza $ bash ./darwin.sh
device: /dev/disk0
displayName: /dev/disk0
description: "APPLE SSD SM0512G"
size:<PHONE_NUMBER>20
mountpoints: []
raw: /dev/rdisk0
protected: False
system: True
device: /dev/disk1
displayName: /dev/disk1
description: "APPLE SSD SM0512G"
size:<PHONE_NUMBER>76
mountpoints:

path: "/"
path: "/private/var/vm"
raw: /dev/rdisk1
protected: False
system: True

device: /dev/disk2
displayName: /dev/disk2
description: "Extreme"
size:<PHONE_NUMBER>6
mountpoints:

path: "/Volumes/HPE-ESXI-5_"
raw: /dev/rdisk2
protected: False
system: True

GUI Diskutil gives this information for USB drive.
Volume type : Physical Device
BSD device node : disk2
Connection : USB
Device tree path : IODeviceTree:/PCI0@0/XHC1@14
Writable : No
Is case-sensitive : No
Volume capacity : 15 693 664 256
Available space (Purgeable + Free) : 0
Purgeable space : 0
Free space : 0
Used space : 15 693 664 256
Owners enabled : No
Is encrypted : No
Can be verified : No
Can be repaired : No
Bootable : No
Journaled : No
Disk number : 2
Media name : SanDisk Extreme Media
Media type : Generic
Ejectable : Yes
Solid state : No
S.M.A.R.T. status : Not Supported

If Apple's diskutil is telling us Removable Media: Fixed then I think the only safe thing for drivelist to do is report it as a "system" drive. And in Etcher you can write to system drives after enabling "Unsafe mode".
(apologies if you knew all that already)


Can't Resolve Names For Vic's Modern Warfare Mod

Issue Description:
I am using version 1.12.2 of CraftTweaker.
What happens:
When i try to add or remove a recipe for an item from the mod Vic's Modern Warfare, it says it cannot resolve the name. Here is my script:
recipes.remove(mw:transistor);
This seems to happen for every item in this mod, but no other item in any other mods.
Minetweaker.log file (Please Pastebin or gist your file, posting an unpasted or ungist'd file will automatically close this issue):
Here's my log:
https://pastebin.com/dxwjV6pJ

Affected Versions (Do not use "latest"):

Minecraft: 1.12.2
Forge: <IP_ADDRESS>8
Crafttweaker: 1.12-4.0.9

Your most recent log file where the issue was present:
https://pastebin.com/dxwjV6pJ

You need to use the Item Bracket Handler for this:
<mw:transistor>
Just hold the item in your hand, use /ct syntax and then click on the name. It will copy a usable string into your clipboard, then go to your script and hit CTRL+V

i think you meant /ct hand, but it still doesn't work. Please re open this issue. I've tried all the different types of syntax, but nothing works. it gave me mw:diode when i did /ct hand and /ct syntax just says the syntax is correct, nothing is wrong.

It's not getting reopened, firstly you didn't use pastebin for your script,
and secondly, any issue like this is user error, or mod error, they may be
registering their items too late.
On Nov 4, 2017 19:57, "TheQKnight"<EMAIL_ADDRESS>wrote:

i think you meant /ct hand, but it still doesn't work. Please re open this
issue. I've tried all the different types of syntax, but nothing works. it
gave me mw:diode when i did /ct hand and /ct syntax just says the syntax is
correct, nothing is wrong.
—
You are receiving this because you modified the open/close state.
Reply to this email directly, view it on GitHub
https://github.com/jaredlll08/CraftTweaker/issues/365#issuecomment-341916970,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AFS9xUIYl11ikW637e9EESnRfcFy_uY0ks5szKWcgaJpZM4QR5TW
.

am i supposed to use pastebin for a 1 line script lol?

I even used the gui editor and it still gave an error


fix search params missing from url path

#749 can confirm that this is indeed a bug, introduced at commit 0930d6dedc08fa2adde9949a1a36d98179902582
path should be pathname + search

Please make sure tests are passed ;)

Please see #760

rebased to latest commit on master and tests passed


fixed 416

#2

Thanks for the pull request! I can't really incorporate this one because there is some code in it specific to your fork.
Would you mind if we take this pull requests as a basis to make a commit that works for our repo? I noticed you created a pull requests before. I'm sorry we missed that one!

Sure! Glad to help this project.
Don't mind~

This pull request is implemented for our case in #6. Closing it now.


pass logger as callApi

In order to have the custom provider fit into the existing logging infrastructure, add the logger object in the Api options call.

Great suggestion. I've also included some caching utils in #748, as that is a request I've seen elsewhere.

This change is included in 0.57.0, just published on npm


DEP: vendor sklearn's mechanism to deprecate passing kwargs positionally

This does the main preparation work for #18703, and puts it into action for one of the functions from #18624 that doesn't have a dedicated issue.
I want to get the infrastructure in place first, and then have separate PRs for each of the deprecations, because even though I have most commits ready, there will probably be some discussions around consistency within a given module, where to set the keyword-cutoff etc. These discussions shouldn't be mixed between all the different functions from wildly different modules.

For borrowing from sklearn, maybe we should add more mention of the license etc.?

It's BSD-licensed, so I didn't mention it. But happy to if people prefer.

I think we should at least say it's BSD. (Never sure if we should also copy the license itself, I suppose it's ok since just a small extract.)
There is not much risk here but recently there was a library which changed its licence and statsmodels had to add some mention saying they copied some code before that change.

There is also some performance hit due to this since it runs at every invocation. It shouldn't overshadow the wrapped function performance in my opinion.

What measured hit are we talking about?

When you wrap the function this processes everytime

Sure but that does not mean we would notice anything if that just account for a small fraction of the total function's runtime. Also that's just a temporary measure while deprecation is in effect.

if that just account for a small fraction

Yes emphasis on if. That's what I mean.

To me the performance aspect is completely secondary here in comparison to a clean deprecation for a behaviour change that comes with a maintainable, lightweight implementation.
I wouldn't hesitate even a moment to "pay" 10% or even 20% performance for that, but I really doubt it'd be anywhere near that because the wrapper doesn't do much. Also, whatever "regression" the wrapper causes, it would go away after 2 releases.

Wothout measurements this is all guess work. If it hurts signal.xxx we have to address it. Nobody cares about our internal restructuring

I am getting slightly annoyed to take immediately super strong sides of this topic. We had many times these discussions and any time I mention something I get immovable arguments. First of all, it's not the end of the world, so we are not blocking cancer research hence let's keep the tone a bit lighter. Because it is just waste of my time and hopefully yours too. Please try to keep it to the level of the importance of the matter here. I have enough discussions outside GitHub. I am just pointing to a detail, if it is not a problem fine then nevermind. But keep it at that level. You might be just stretching the discussion unnecessarily. You will not win every discussion and you don't have to anyways
Next, just because we want to move to a keyword only argument, we cannot screw up people's work. But you say it's not detectable then fine, no problem. I trust your measurement.

I forgot to mention, we are starting to emit neverending warnings lately, and will be emitting for at least 4 versions. This is going to cause people to turn warnings off and nobody will care. Hence the effect will wear out very soon which happened before during the removal of imsize.
Read slowly, I'm not saying we shouldn't do it. But it will turn people off very quickly if we keep on emitting this many warnings this long.

To be fair @ilayn, so far you were making 2 line comments which could also be read a million different ways... I personally struggle with such interactions. We are all in the same team here with hopefully good intentions for the project. What we perceive does not necessarily match what the other person on the other hand had in mind.
Only saying this has some performance hit without more was not really helpful in the sense that, sure of course there is a hit since there is more code being executed. This PR is mostly about adding the possibility to do that, it's then on a function basis that we have to make the call.
As for deprecating more things, we are mostly just catching up with what we already said we would deprecate. @h-vetinari and @j-bowhay are doing an awesome work digging up all that from the tracker, code to driving the actual work and onboarding newcomers to help.

I am getting slightly annoyed to take immediately super strong sides of this topic

I spent many hours on something I considered irrelevant in this discussion (to get some benchmarks), so you would have concrete evidence that I'm trying to accommodate your point of view, even though I will defend mine.
Objecting to a given proposal is obviously fair game, but it makes a huge difference if that objection comes with an alternative (to broadly solve the same underlying problem). If so, the discussion is completely different; but without an alternative, it effectively declares the problem/effort irrelevant.

just because we want to move to a keyword only argument, we cannot screw up people's work.

A minor, temporary performance regression for smoother transition under necessary maintenance is far from "screwing up people's work". Even moreso because, as you correctly point out, it's not about life or death.

This is going to cause people to turn warnings off and nobody will care.

These warnings all come with concrete steps to silence them (by moving to whatever non-deprecated replacement API), that should be achievable with minimal effort. We cannot influence how people react to this, but things will break if people ignore the deprecation warnings.
In any case, it's better to provide an opportunity for the users to adapt, rather than just randomly breaking when they upgrade (I'm pretty sure that messes up people's work more than a couple percent in a microbenchmark).
Sidenote: if we already had kwarg-only signatures, there would be no breakage, no deprecations, no warnings and way less maintenance for the cases in question here. Doesn't that sound like a massive improvement to aim for?

To be fair @ilayn, so far you were making 2 line comments which could also be read a million different ways...

Not so fast, I won't take this as a valid criticism because this is not our first interaction on these issues. Plus two line comments because you already dismissed the moment I mentioned it. So go easy with the pedal. Because you did exactly the same hence this argument is not going to fly.

Only saying this has some performance hit without more was not really helpful in the sense that, sure of course there is a hit since there is more code being executed.

So what is the problem with my two line comment. I can't make any remarks because there is a word count? We are doing the same all the time. How is this suddenly a thing?

As for deprecating more things, we are mostly just catching up with what we already said we would deprecate. @h-vetinari and @j-bowhay are doing an awesome work digging up all that from the tracker, code to driving the actual work and onboarding newcomers to help.

Who said otherwise? Of course they are doing awesome job but what is the relevance? This is not even implied so basically unnecessary tension again. This I find very annoying. You need to sometimes deescalate things properly instead of insinuating things I did not mean as if there is any doubt about that on my side. Please take your time when you are replying before such accusing tone, accidental or otherwise.

I spent many hours on something I considered irrelevant in this discussion (to get some benchmarks), so you would have concrete evidence that I'm trying to accommodate your point of view, even though I will defend mine.

I don't quite understand why this happened and my apologies if this is causing extra stress but why can't we just measure the decorator? That would give you an estimate, say 25 μs (completely random number). Then you can measure two three functions or just do a %timeit on iPython to measure actual runtimes of functions. How did this explode to hours of work I don't understand. We are measuring the runtime of the decorator. We have a pretty good idea of what a performance hit is by now. If there are functions that take only microseconds then this might start to get in the way. Otherwise you don't feel it.

A minor, temporary performance regression for smoother transition under necessary maintenance is far from "screwing up people's work". Even moreso because, as you correctly point out, it's not about life or death.

That's your opinion and depends highly on temporary performance regression amount. And for the last time, that's why I mentioned it. Measure the decorator on the side, just to make sure. But suddenly we are in a very annoying and unnecessary discussion with tasteless dismissals. I would have measured it myself if you said so, but instead this is happening.
We are not discussing which is important, performance hit or deprecation. We are also not discussing what you think important is the only opinion. We are trying to have a discussion if you don't hold your opinion this strong and actually read what I wrote.

Sidenote: if we already had kwarg-only signatures, there would be no breakage, no deprecations, no warnings and way less maintenance for the cases in question here. Doesn't that sound like a massive improvement to aim for?

Fully agree. I am just giving a data point from history, that we warned you with DeprecationWarning is not a valid argument if there are this many warnings emitted.
Again, not saying we shouldn't do this, I am saying that after a point these warnings will lose their power if we overdo it and people will silence them. Then there is little difference left between making "breaking changes" and "(warning + making breaking changes)". Because deprecation warnings are social contracts anyways.

So what is the problem with my two line comment. I can't make any remarks because there is a word count? We are doing the same all the time. How is this suddenly a thing?

The problem is how we talk to each other. What changed and why I am raising that now? Not much I am just seeing that the way we generally interact in SciPy is not normal. And I am writing that now in response to your question. I and others flagged that a few times during multiples community meetings.
There is no word count, but there is definitely a way to say or ask something. We are always borderline passive aggressive and I don't think it's a good thing.
Note that seemingly I was not the only one taking your interactions that way.

How did this explode to hours of work I don't understand.

Scipy's broken benchmark infrastructure (see the issues I linked).

But suddenly we are in a very annoying and unnecessary discussion with tasteless dismissals.

We disagree on the relative importance of microbenchmarks vs. managed evolution. Where did I dismiss your concern, much less tastelessly? It sounds[^1] a bit like emotive conjugation to me, and I wish you didn't do that.
[^1]: this is an observation, not an accusation

We are trying to have a discussion if you don't hold your opinion this strong and actually read what I wrote.

I have trouble parsing that sentence, but I wish you didn't imply I'm not arguing in good faith (or that I'm incapable of reading your message).

So far you are not adjusting the defense amount in my opinion. It's all or nothing as we had discussions already multiple times and that makes things difficult if you already start firmly each and every time.

I really don't know what you have in mind with "all or nothing", much less "already multiple times". If anything, I've chosen to disengage to not stand in your way.
We seem to agree that achieving kwarg-only is a valid goal, the performance impact has been measured to be essentially zero, and it's unclear to me what criticism remains.
I'm not hiding that I think that it's critical infrastructure for getting out of the hamster wheel of deprecation cycles, but why that offends you is a mystery to me.
Finally, since you brought up the larger context of ongoing deprecations, I disagree that these warnings are going to be ignored. They say "do this simple change or your code will break in two releases". It's very concrete and actionable, and it's dispersed widely across the code base, so few people will hit more than a handful at a time.

Scipy's broken benchmark infrastructure

You don't need benchmarking. The decorator cost is fixed per call.

Where did I dismiss your concern, much less tastelessly? It sounds1 a bit like emotive conjugation to me, and I wish you didn't do that

Again that's your opinion and that's fine but follow trail above. If you measured in two minutes the decorator cost in a repl we woulf have been done.  Tasteless is what is happening between me and everyone. I don't this strong opinions about anything to have any emotional conjugation. Again this is your opinion not a communication style.

I'm not hiding that I think that it's critical infrastructure for getting out of the hamster wheel of deprecation cycles, but why that offends you is a mystery to me.

Because you don't have any tolerance for any other way and this has to be done in the way you want it period. Look at what you wrote just somebody said this might a performance hit and look at all the responses ffs. I don't appreciate one bit of these personal attacks now happened twice. I can say whatever I want about the interaction but I did not make anything personal. This is the second comment here that is making personal remarks about me. Like I said this is a very unhealthy way and I couldn't care less about kwargs with this attitude. So get your style under control please.

Hey all, I suggest we press pause here. This discussion got a little heated quite unnecessarily. I don't think further back and forth will be productive - I'm happy to chat directly with anyone who wants to have a chat, ask question or get feedback.
Regarding the content of the PR and discussion, I think this isn't high prio but also it can't really hurt. It only takes a couple of minutes to check performance overhead, so anyone involved could have done this - in case you don't know how, better to ask for a suggestion or say you don't want or cannot spend the time on it. For future reference, here's how I'd do it:
Drop into IPython with python dev.py ipython on this branch, and then:
>>> import numpy as np
>>> from scipy._lib.deprecation import _deprecate_positional_args
>>> def func(x): return np.sin(x)
>>> func_dec = _deprecate_positional_args(func)
>>> %timeit func(x)
431 ns ± 3.18 ns per loop (mean ± std. dev. of 7 runs, 1,000,000 loops each)
>>> %timeit func_dec(x)
587 ns ± 2.51 ns per loop (mean ± std. dev. of 7 runs, 1,000,000 loops each)

So the decorated function takes ~150 ns more, which is similar to call overhead of numpy functions - safe to ignore.

Anyways, i mailed the core dev list

That for flagging it, I'll respond there too.

Back to the topic at hand, since @h-vetinari went the extra mile and demonstrated with benchmarks that there is no performance impact, I am personally still +1.
Unless there are more comments, I would propose to move forward and merge on Wednesday.

Unless there are more comments, I would propose to move forward and merge on Wednesday.

There are still some comments from my review that are not addressed

Ah yes, sorry I missed these with the long discussion 👍

I took a step back from this PR for a bit, but even so, I still find many of the things addressed to (or implied about) me quite offensive, both in this PR and on the dev-list.
I don't believe that "all is reciprocal", except if we make it so (both for good and bad); in particular, we can choose to focus on reciprocating the good, and reduce reciprocating the bad (if only to balance out our natural human self-bias a bit). While I want to avoid a rerun of the discussion here, I do think an apology would be helpful to leave this in the past. From my side, I apologise for any offense I gave; it was not my intention in the slightest.

@h-vetinari  Sorry just saw this because I unsubscribed to cool off. Sent you an email to gmx account.

OK, it seems there's no actual blocker here anymore. Happy to get this in. :)


class comment doesn't dirty project and package

In a clean project/package make a change to a class comment. Neither the project nor package is marked as dirty.

I was using the wrong api. When I changed Jadeite to send #rwComment: the class comment dirtied the project & package. The change also shows up in the changes list.
Closing this bug in favor of a related bug to change how class comment changes show up in the changes browser.


docs(readme): update nvim-navic repository URL

Lazy.nvim will complain if there is case-mismatch for a dependency that is defined in multiple places.

Thanks! I just changed this plugin's workflow since the last one wasn't very viable, so please rebase towards main this time :pray:.
Sorry that it keeps changing, I'm gonna move the plugin towards an stable state and then make PR and issue templates so that it becomes much clearer and easier to contribute.

Thanks! I just changed this plugin's workflow since the last one wasn't very viable, so please rebase towards main this time :pray:.

Switched base.

Sorry that it keeps changing, I'm gonna move the plugin towards an stable state and then make PR and issue templates so that it becomes much clearer and easier to contribute.

No worries!  That's a great idea. It will definitely make it easier to contribute.

I noticed a broken link and fixed that as well.

Have you rebased towards main though? There still seems to be some lines from dev.

Have you rebased towards main though? There still seems to be some lines from dev.

Sorry about that, it should be fine now. :+1:


Support with PrismApplication

How to configure this extension in the set up which uses Prism Library for Xamarin Forms 3.5+ , Prism Library v7.1+ with dryloc as IoC ?

Hi @IoTFier
What exactly is your issue ? :)
Did you read Readme file?
Call it once
HotReloader.Current.Start();

And all xaml.cs files (which you want to reload with HotReload
this.InitComponent(InitializeComponent); // instead of InitializeComponent();

Is it your issue? https://github.com/AndreiMisiukevich/HotReload/pull/5

In Prismbased Xamarin Forms application the App is derived from PrismApplication base class which doesn't take the default constructor. Adding that default constructor per your readme throws following error.
Severity	Code	Description	Project	File	Line	Suppression State
Error	CS0111	Type 'App' already defines a member called '.ctor' with the same parameter types
I truly appreciate your help in helping us. But, I will use this extension again when it has been developed and validated against Prism library and when we don't to call custom initialization routine in all partical xaml.cs files.
Thank you again.

You can call this method in any place HotReloader.Current.Start();
In AppDelegate.cs or MainActivity.cs or OnStart method of application etc.

You need to call it before opening any reloadable view. So, put in AppDelegate and MainActivity before creating application.
Hope it will help

@AndreiMisiukevich I try everything and still not working, I got this ### HOTRELOAD ERROR: 'x:Class' NOT FOUND ###. Any ideas ?

@jbravobr hi
could you please provide small sample with this issue?

@AndreiMisiukevich here: https://github.com/jbravobr/ArcTouch_CHALLENGE. At the exactly moment it's without the HotReload, but you could add it bac again and test

@jbravobr
x:Class                ="arcthouchapply.Views.MovieSelectionPage">
try to remove spaces
just
   x:Class="arcthouchapply.Views.MovieSelectionPage">

The spaces it's just the formating style of the code, but I'll try it
On Thu, Mar 14, 2019 at 1:58 PM Andrei<EMAIL_ADDRESS>wrote:

@jbravobr https://github.com/jbravobr
x:Class ="arcthouchapply.Views.MovieSelectionPage">
try to remove spaces
just
x:Class="arcthouchapply.Views.MovieSelectionPage">
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/AndreiMisiukevich/HotReload/issues/22#issuecomment-472963194,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AGO_KOUsXjGEF4tXa3yEFk86QP0Xa6x_ks5vWn_LgaJpZM4a_apK
.

@AndreiMisiukevich sorry for the delay, but it's works! Thanks


[DDW-200] Update copy to cover additional screens

This PR updates the copy to cover additional Friends & Family screens
Todos

https://docs.google.com/document/d/1mf6P1yCCMN9vHl95XIuQMeM_wERDCJpERN4L-RlZibo/edit

Screenshots

Screenshot

Testing Checklist

Slack QA thread
[ ] Test

Review Checklist
Basics

[ ] PR has been assigned and has appropriate labels (feature/bug/chore, release-x.x.x)
[ ] PR is updated to the most recent version of the target branch (and there are no conflicts)
[ ] PR has a good description that summarizes all changes
[ ] PR has default-sized Daedalus window screenshots or animated GIFs of important UI changes:

[ ] In English
[ ] In Japanese

[ ] CHANGELOG entry has been added to the top of the appropriate section (Features, Fixes, Chores) and is linked to the correct PR on GitHub
[ ] Automated tests: All acceptance and unit tests are passing (yarn test)
[ ] Manual tests (minimum tests should cover newly added feature/fix): App works correctly in development build (yarn dev)
[ ] Manual tests (minimum tests should cover newly added feature/fix): App works correctly in production build (yarn package / CI builds)
[ ] There are no flow errors or warnings (yarn flow:test)
[ ] There are no lint errors or warnings (yarn lint)
[ ] There are no prettier errors or warnings (yarn prettier:check)
[ ] There are no missing translations (running yarn manage:translations produces no changes)
[ ] Text changes are proofread and approved (Jane Wild / Amy Reeve)
[ ] Japanese text changes are proofread and approved (Junko Oda)
[ ] UI changes look good in all themes (Alexander Rukin)
[ ] Storybook works and no stories are broken (yarn storybook)
[ ] In case of dependency changes yarn.lock file is updated

Code Quality

[ ] Important parts of the code are properly commented and documented
[ ] Code is properly typed with flow
[ ] React components are split-up enough to avoid unnecessary re-renderings
[ ] Any code that only works in main process is neatly separated from components

Testing

[ ] New feature/change is covered by acceptance tests
[ ] New feature/change is manually tested and approved by QA team
[ ] All existing acceptance tests are still up-to-date
[ ] New feature/change is covered by Daedalus Testing scenario
[ ] All existing Daedalus Testing scenarios are still up-to-date

After Review

[ ] Merge the PR
[ ] Delete the source branch
[ ] Move the ticket to done column on the YouTrack board
[ ] Update Slack QA thread by marking it with a green checkmark

@darko-mijic can we merge this without Japanese translations?

There is an issue where the Amount box is highlighted in red instead of the address box when an incorrect address is entered. See image below

Hey @ManusMcCole thanks for the review, but these issues are not related to this PR.

@daniloprates we still need to add Japanese translations here!


Allow callback to IBC app callers

IBC was designed with callbacks between core IBC and IBC applications. IBC apps would send a packet to core IBC. When the result of the packet lifecycle eventually resolved into either an acknowledgement or a timeout, the core IBC called a callback on the IBC application so that the IBC application could take action on the basis of the result (e.g. unescrow tokens for ICS-20)
We are now seeing the desire for secondary applications to call into IBC apps as part of their state machine logic and then do some actions on the basis of the packet result.
E.g. Send an ICS-20 packet, and if it is successful, then send an ICA-packet to swap tokens on LP and return funds to sender
This requires a second layer of callbacks. The IBC application already gets the result of the packet from core IBC, but currently there is no standardized way to pass this information on to a caller module/smart contract.
Of course this isn't an issue in the IBC protocol since it is a matter of IBC applications getting this information to their own callers (it is one layer above IBC). However standardizing on the best approach will allow callers to implement a standard interface to interact with all IBC apps.

Proposal:
Introduce an interface that accounts can optionally implement:
interface IBCCallerAccount {
    onAcknowledgement(portID, channelID string, sequence uint64, ack exported.Acknowledgement)
    onTimeoutPacket(portID, channelID string, sequence uint64)
}

So far, IBC applications have different APIs for their packet sending logic.
Transfer has Transfer, ICA has SendTx. I think this is fine since IBC apps do not want to nakedly pass through packets, and they will need to have different APIs for their different purposes.
However, I think we should standardize on the MsgResponse which should return channelID, portID, sequence of the packet that gets sent by IBC.
MsgResponse {
    packetID: PacketID,
    // app-custom fields
}

IBC applications are also encouraged to accept a sender address field in all of their APIs, and to store this for a particular packet.
The caller application can then call the desired API with their sender address. They can then get back the packetID and store any information they desire keyed on the packetID.
Later, the packet lifecycle resolves. Core IBC calls the IBC app callback. And if the sender is a IBCCallerAccount, then the IBC application can call the callback onAcknowledgmentPacket or onTimeoutPacket with the relevant arguments.
The IBC caller, gets the packet ID and the result of the packet. They can use this along with any information they stored to execute further logic.
This solves many use cases of the form: I want to transfer X tokens, and then do Y after programmatically

Open Questions:

Should we deal with sender authentication? If so, how?
Should we return just packetID on MsgResponse or entire packet
Does this minimal API suffice?

Note that this isn't a change to core IBC. It's a design pattern IBC applications can adopt to enable complex programs to be written on top of them
cc: @ethanfrey @ValarDragon

As discussed on the call, here is what we pass into contracts that implement IBC: ack and timeout
This is what we include in those messages: IbcPacketAckMsg and IbcPacketTimeoutMsg.
(Both are mainly wrappers around IbcPacket not the id)

Another idea is to switch on success/failure so the caller doesn't need to understand the acknowledgement format. Basically getting a call of: "success", "failure", "timeout". I'm not sure what is exactly in exported.Acknowledgement.
Also, the caller doesn't have access to the sequence usually, as it is assigned after it sends. It should receive the original packet data, which the caller would have

Also regarding arbitrary gas consumption by callers:
There are cases where the tx might simply never succeed. Perhaps the gas consumption for a tx is higher than the block gas limit. This is especially dangerous in OnTimeoutPacket or OnAcknowledgementPacket because it could lead to a situation where the packet lifecycle can never resolve. (E.g. ICS-20 tokens never refunded because all attempts to relay ack_error or timeout fail on OutOfGas exception).
Thus, we should cache context before sending to caller, recover from OutOfGas panics in the IBC app, discard cache and continue processing the ack/timeout if an outofgas panic occurs in the caller.

We have an issue similar to this in our ICQ impl. Would be great to see thi!

Thus, we should cache context before sending to caller, recover from OutOfGas panics in the IBC app, discard cache and continue processing the ack/timeout if an outofgas panic occurs in the caller.

Oh, this is very dangerous.
 I know it requires 150,000 gas to run properly in addition to base IBC gas. I then provide 50,000 gas more than base IBC. The OnAcknowledgementCallback will run out of gas and the rest of the packet will be processed (assuming you use some limited sub-tx context to not let it burn all the tx gas, just those 50k or such).
If there is a limit here, it must be from governance consensus, and not set by the relayer or on a per-tx basis

Agreed, thanks for all the feedback. Will write an ADR with the understanding gathered here

We independently ran into this issue with interchain accounts, so we implemented a draft PR of callbacks for ICA today. A review would be greatly appreciated. I think the design we landed on is pretty close to what's being proposed here.
https://github.com/Stride-Labs/stride/pull/146

There are cases where the tx might simply never succeed. Perhaps the gas consumption for a tx is higher than the block gas limit. This is especially dangerous in OnTimeoutPacket or OnAcknowledgementPacket because it could lead to a situation where the packet lifecycle can never resolve.

This is an interesting edge case, thoughts on storing the arguments to state in the ack and then batch processing them in the EndBlocker? The latency isn't an issue (no guarantees on when acks will come back afaik), however would only work for module developers that weren't behaving adversarially (smart contracts with access to this could of course exploit it by triggering long-running acks).

This is an interesting edge case, thoughts on storing the callback id and arguments to state in the ack and then batch processing them in the EndBlocker? This would only work for module developers that weren't behaving adversarially (smart contracts with access to this functionality could of course exploit it by triggering long-running acks). My understanding is that there are already no guarantees on when code in the BeginBlocker and EndBlocker will halt, which any module can trigger, so I don't think this introduces additional risk (although it might be slightly harder to reason about).

Yes this could only work for trusted modules/smart contracts. There's also a BlockGasLimit that limits endblock/beginblock computation so it still has the same fundamental issue

IBC applications are also encouraged to accept a sender address field in all of their APIs, and to store this for a particular packet.

If an external module is calling the IBC app (e.g. triggered in a BeginBlocker), is it possible to fetch a sender account?

we've more or less finalized our version of this here: https://github.com/Stride-Labs/stride/pull/146
example migration from IBC acks to application level acks: https://github.com/Stride-Labs/stride/pull/169
Of course understand your requirements might be different (especially with cosmwasm)

Does this issue refer to the problem of being able to callback after an ibc token transfer to then do something with that token?


Query parameter in URL seems to be stripped

The following request gets made without the sessionId query parameter.
res = rc.get  '/restapi/v1.0/account/~/extension/~/call-log?sessionId=174812747016'

This request returns an API response without sessionId parameter as shown in the navigation property. Other properties are omitted below.
{
  "navigation": {
    "firstPage": {
      "uri": "https://platform.ringcentral.com/restapi/v1.0/account/11111111/extension/22222222/call-log?view=Simple&showBlocked=true&withRecording=false&dateFrom=2019-03-07T21:28:00.000Z&page=1&perPage=100"
    },
    "lastPage": {
      "uri": "https://platform.ringcentral.com/restapi/v1.0/account/11111111/extension/22222222/call-log?view=Simple&showBlocked=true&withRecording=false&dateFrom=2019-03-07T21:28:00.000Z&page=1&perPage=100"
    }
  }
}

The library is powered by https://github.com/lostisland/faraday
And the correct way to specify query parameters is:
res = rc.get  '/restapi/v1.0/account/~/extension/~/call-log',  { sessionId:<PHONE_NUMBER>16 }

I add doc to readme: https://github.com/ringcentral/ringcentral-ruby#how-to-specify-query-parameters

Thanks @tylerlong!


Support saved searches / smart folders

It would be great to allow users to have saved searches (or smart folders) that show up in the sidebar. I would use these to quickly access bookmarks for projects I'm working on.

Depends on #166.

There's no reason we shouldn't be able to do this on iOS too.

It should be relatively easy to do the infrastructure for this by conforming QueryDescription to Codable and then saving queries as JSON.

Putting in future. Saved tags are good enough for a v1.


[video_player] Unable to play m3u8 file from CloudFront

I'm opening a new issue that is similar to #52389. I'm trying to play a video using VideoPlayerController with a presigned URL from AWS CloudFront, but the video does not play.
Here is my code to play the video:
final videoURL = await repo.getVideoURL(videoPath);
videoController = VideoPlayerController.network(videoURL);

The presigned URL is in the form - https://xyz.cloudfront.net/video.m3u8?Policy=xyz&Key-Pair-Id=xyz.
#52389 was marked as a duplicate of #26851, but I don't think it is the same issue. The issue I'm facing seems to be specific to a presigned URL as I've seen many examples that work with a public URL that ends in a m3u8 file extension.
Here is my flutter doctor -v output
[✓] Flutter (Channel stable, v1.12.13+hotfix.9, on Mac OS X 10.15.2 19C57, locale en-US)
    • Flutter version 1.12.13+hotfix.9 at /Users/ericderegt/development/flutter
    • Framework revision f139b11009 (2 months ago), 2020-03-30 13:57:30 -0700
    • Engine revision af51afceb8
    • Dart version 2.7.2

[✓] Android toolchain - develop for Android devices (Android SDK version 29.0.3)
    • Android SDK at /Users/ericderegt/Library/Android/sdk
    • Android NDK location not configured (optional; useful for native profiling support)
    • Platform android-29, build-tools 29.0.3
    • Java binary at: /Applications/Android Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 1.8.0_202-release-1483-b49-5587405)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 11.5)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 11.5, Build version 11E608c
    • CocoaPods version 1.8.4

[!] Android Studio (version 3.5)
    • Android Studio at /Applications/Android Studio.app/Contents
    ✗ Flutter plugin not installed; this adds Flutter specific functionality.
    ✗ Dart plugin not installed; this adds Dart specific functionality.
    • Java version OpenJDK Runtime Environment (build 1.8.0_202-release-1483-b49-5587405)

[✓] VS Code (version 1.45.1)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.11.0

hello, how are the link inside the playlist.
do the point to cloudfront link ?
I had something similar with hls, so double check

If I run cURL against the signed URL, I get
#EXTM3U
#EXT-X-VERSION:3
#EXT-X-INDEPENDENT-SEGMENTS
#EXT-X-STREAM-INF:BANDWIDTH=2485109,AVERAGE-BANDWIDTH=2185626,CODECS="avc1.77.30,mp4a.40.2",RESOLUTION=480x640,FRAME-RATE=30.000
indextest.m3u8

If I cURL indextest.m3u8 it returns
#EXTM3U
#EXT-X-VERSION:3
#EXT-X-TARGETDURATION:3
#EXT-X-MEDIA-SEQUENCE:1
#EXT-X-PLAYLIST-TYPE:VOD
#EXTINF:3,
indextest_00001.ts
#EXTINF:3,
indextest_00002.ts

Is this what you are asking?

yes. I do believe that you cannot use 'indextest_00002.ts' it needs to be the URL of the file.
cloudfront URL. try and see, that fixed my issue :)

This is a little off topic now if it's not a problem with video_player, but do you have any advice on how to implement that with CloudFront? Thank you!

hello once again, is defo not a prob with video_player
#EXTM3U #EXT-X-VERSION:3 #EXT-X-TARGETDURATION:10 #EXT-X-MEDIA-SEQUENCE:0 #EXTINF:10.010000, https://firebasestorage.googleapis.com/v0/b/my-physio-191810.appspot.com/o/Functional%2Ffilename0.ts?alt=media&token=5da6dfd4-c6d5-4b8e-805a-a12af4af7fd1 #EXTINF:9.376000, https://firebasestorage.googleapis.com/v0/b/my-physio-191810.appspot.com/o/Functional%2Ffilename1.ts?alt=media&token=007de40e-64de-4a49-abf8-1646d4f62018 #59068
you just need to adapt the link to your file.

upload all your files but not the playlist one
copy link of the file from cloudfront
edit the playlist with new link
and it should work, you can easily try in vlc os similar

Ok thank you, I will try that

i need to play video, my player is screen fixed on load, i uses the video_player with m3u8


Re-consider date handling strategy

At the moment the date handling strategy is directly tied to the internals of chrono. It probably would be better to allow more customization and therefore decouple  serde_arrow from chrono.

first version implemented in 0.2.0


proxy works, but many strange error lines in log

Jun 27 08:59:30 my_hostname cloud_sql_proxy: 2018/06/27 08:59:30 Writing data to local connection on <IP_ADDRESS>:3306 had error: write tcp <IP_ADDRESS>:3306-><IP_ADDRESS>:40756: write: broken pipe
^^^ these come per second
dosen't use "credentials", the command, which starts is:
#!/bin/bash
/usr/local/bin/cloud_sql_proxy
-instances=project:region:instance=tcp:<IP_ADDRESS>:3306
2>&1 | logger -t cloud_sql_proxy &

Is there any additional parameter to use?

Hi @olih10200,
A broken pipe error occurs when a connection was terminated before the data could be completely written. This generally indicates an unstable network environment.


Use std::backtrace

Supersedes https://github.com/Traverse-Research/gpu-allocator/pull/183 . I picked Option<Arc<Backtrace>>, which shouldn't have any overhead, as long as the backtrace flag is not set.
I also bumped up the Rust edition, since the backtrace was added in Rust 1.65.0, which has been released well after the Rust 2021 edition has been released.

Closing in favour of #186


Fix readme

GitHub link checker fails on the link to the blog.
Signed-off-by: Patrick Rachford<EMAIL_ADDRESS>
Description

What does this PR do?

Types of changes

[x] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)
[ ] New chore (expected functionality to be implemented)

Checklist:

[ ] My change requires a change to the documentation.

[x] I have updated the documentation accordingly.

[x] I've signed off with an email address that matches the commit author.

@rachfop FYI I checked all other repos and fixed the same issue where needed. No need for you to double check here.


message: Allow system bots to mention group if everyone else can.

We now allow system bots to mention a group if can_mention_group setting
is set to "role:everyone" group and not when it is set to some other group.

Self-review checklist

[ ] Self-reviewed the changes for clarity and maintainability
(variable names, code reuse, readability, etc.).

Communicate decisions, questions, and potential concerns.

[ ] Explains differences from previous plans (e.g., issue description).
[ ] Highlights technical choices and bugs encountered.
[ ] Calls out remaining decisions and concerns.
[ ] Automated tests verify logic where appropriate.

Individual commits are ready for review (see commit discipline).

[ ] Each commit is a coherent idea.
[ ] Commit message(s) explain reasoning and motivation for changes.

Completed manual review and testing of the following:

[ ] Visual appearance of the changes.
[ ] Responsiveness and internationalization.
[ ] Strings and tooltips.
[ ] End-to-end functionality of buttons, interactions and flows.
[ ] Corner cases, error conditions, and easily imagined bugs.

Merged, thanks @sahil839!

Backported in https://github.com/zulip/zulip/pull/28571.


Reset Recomputations for Testing?

I'm writing tests for the selectors I've created and am running into a small obstacle.
There's no direct way to reset computations so if I have a complex selectors with many tests, I have to manually track what the recomputation count should be in each individual test.  This is annoying to track and it would be simplest if there was something like a resetRecomputations() method I could call in a beforeEach block in my tests.
Right now my workaround is just to create a "fake" new selector in every test that uses the one I'm testing with an identity function to make sure that each individual it test has recomputations reset to 0, akin to the following:
const singleTestSelector = createSelector(actualSelector, f => f);

This seems to work fine but it's a little indirect and I feel like I'd rather have something like actualSelector.resetRecomputations() in my tests as I find it slightly clearer.

Hey @seriallos, I just published a new version of Reselect which includes your PR to npm. Thanks again!

Awesome!  I just updated and tested in my own codebase and it's working.
Only subtle bit that should be noted is that I wasn't always correctly creating a new state object in each individual tests so I was running into 0 recomputations instead of 1 (or more) because the previous tests had already cached the result for that object. My solution was to use a function to recreate the defaults from my reducers every time instead of just defining it once and re-using.


Customize presence/absence/ignored of final EOL

Proper LF text files feature a final EOL terminator at the end, and even CRLF files benefit from a final EOL terminator. For example, C/C++ *.h headers and *.js client code may break when a final EOL is absent, due to the way that these files are concatenated. Some formats such as (GNU) Makefile's require a final EOL terminator.
To help the user safeguard against these kinds of surprises, it would be helpful if line-ending-selector offered an additional setting to manage this. Aside from the choice of line sequence (LF, CRLF, CR, etc.), the user should be able to select, a default and per-file setting of:

EOL Present
EOL Absent
EOL Ignored

This way, sensitive text files are sure to feature the right end of file terminator.

/move to atom/atom


Ability to add props/trees to existing buildings/networks

Being able to add props, in particular, would be super useful for adding lights/signs to things like bridge pillars, power line pylons, tunnels, etc.
(could potentially allow some interesting opportunities with Adaptive Networks mod too; eg. I could add road sign props and have AN mod show/hide them based on TMPE settings)

Indeed - already WIP, although a little while off for release.  Networks in particular need more development.
AN integration would be a later stage, but is promising.

Implemented.


Unable to Open Files from OneDrive

Hello!
I’ve encountered an issue while using Code App. It seems that I am unable to open files directly from OneDrive; the “Open” button remains grayed out. Additionally, I cannot find Code App listed in the “Open with other apps” options in the OneDrive client, even though I have set the relevant folders to be available offline. Although I am able to open specific files through the OneDrive client itself, this process is rather cumbersome.
Thank you for your attention to this issue!

You can only open a single file at a time from OneDrive. Use the 'Open File' button instead of the 'Open Folder' button.


cannot run different given in a single feature file

Current behavior
When different Given statement is used in a single feature file, cypress automatically picks the first and replace the subsequent ones with the first given statement, even thought the implementation is supposed to be different

Desired behavior
It should be able to run different given statement, just as it is on the cucumber official page that more than one given statement can be used in a feature file. what if we have a situation where we need to have more than one given statement & each given statement has a diff code implementation, just like this:
// ViewAllSpots.feature
Feature: View all study spots
Scenario: View all study spots in Toronto by default
Given I'm on the main page
And location is disabled
When the page loads
Then I should see the map of Toronto with at least one spot displayed
Scenario: View spots based on my location
Given I'm on the admin page
And location is enabled
And I'm in San Francisco
When the page loads
Then I should see the map of San Francisco with at least one spot displayed
I noticed cypress automatically makes the first given thesame for the rest given, more like it can only run a given statement in a single feature
Versions

Cypress version: 10.1.0
Preprocessor version: 15.1.2
Node version: 16.14.1

You need to provide an example that reproduces this behavior.

Closing due to lack of reproducible example. Feel free to open up another issue if anything changes in this regard.


feat: [require-img-alt] allow zero length value

I am just now experimenting with this plugin, and I wondered if this option exists! Do you know when it will be releases?

Hi. @yakirgot Thanks for your interest, I plan to release it within this weekend. And it seems good to add an options for it because currently it's not offered as an option.


Introduce support for auto-creation of user referenced in remoteUser or containerUser properties

This proposal is an offshoot of discussions related to refactoring the "common script" currently housed in the microsoft/vscode-dev-containers repository.
A frequent area of confusion for dev containers is how to create a non-root user for a container. In addition, developers will sometimes add a containerUser or remoteUser property to their devcontainer.json and expect it to be created.
This led to the common script and all related images built out of the vscode-dev-containers repository having the logic to add a non-root user built into it. Overall, this has worked pretty well. However, Dev Container Features (#61) also need to adapt to the presence of a non-root user to set permissions. Automated logic to attempt to detect a non-root user tries to adapt to the presence of absence of a non-root user. But the process has the potential to not detect correctly and it increases the complexity of each.  Furthermore, it also means that the common script always needs to fire first in the Feature build order - which is not ideal.
All of this indicates that we should consider user generation a core part of the dev container spec. There are three things here:

Create a user if one with the specified name does not exist
Optionally install and configure sudo for the user
Optionally set up sudo to not require a password for the user ("passwordless")

To support all three of these, we can support an object syntax in addition to the current string format.  E.g.,
{
    "remoteUser": {
        "name": "devcontainer"
        "create": true,
        "sudo": "password" // Other options are "none", "passwordless"
    }
}

The existing string format would default to the above values:
{
    "remoteUser": "devcontainer"
}

We could use "passwordless" as the sudo default, but it likely makes sense to stick with a secure default here given the new semantics. Sudo could be installed by default, but the user would need to set a password to start using it in this case.
In addition, Dev Container Features should have an environment variable passed into them with the value of containerUser and remoteUser so that they can adapt without their own detection logic.
CONTAINER_USER=root
REMOTE_USER=devcontainer

We could also consider expanding https://github.com/devcontainers/spec/issues/25 into the user create scenario as a way to fire scripts to update things like permissions when this user is created.
//cc @alexdima @chrmarti @jkeech @samruddhikhandale @joshspicer

What is the scenario where a user would set "create": false?

Permissions may also be set up for other folders for a specific user in the upstream image, and if you create one automatically, certain things wouldn't work for this new user, so setting this to false would ensure that if someone just tweaked the name because they wanted a different one, they wouldn't get a non-functional user.
There are also some security implications to creating users - I think it makes sense to be able to disable this behavior even if the default is to create one. I can see situations where orgs or teams may not want one to be inadvertently created with different settings than what they would add manually.   That said, if folks felt strongly about not including it, we could probably get by without to start.

How about a list of user groups to add?
{
    "remoteUser": {
        ...
        "groups": ["audio", "video", "plugdev"]
    }
}


Handle logging queries encoded as bytes under PostgreSQL

Description
Unlike SQLite, psycopg supports queries encoded as bytes, and uses this in its own methods such as in execute_values. But the SQL logging only expects strings or Composables. This was causing an AttributeError such as this:
Traceback (most recent call last):
[snip]
  File "/home/lucidiot/.virtualenvs/tmp/lib/python3.10/site-packages/psycopg2/extras.py", line 1270, in execute_values
    cur.execute(b''.join(parts))
  File "/home/lucidiot/.virtualenvs/tmp/lib/python3.10/site-packages/debug_toolbar/panels/sql/tracking.py", line 246, in execute
    return self._record(super().execute, sql, params)
  File "/home/lucidiot/.virtualenvs/tmp/lib/python3.10/site-packages/debug_toolbar/panels/sql/tracking.py", line 181, in _record
    sql = sql.as_string(conn)
AttributeError: 'bytes' object has no attribute 'as_string'

This adds an extra condition to decode a bytes instance with .decode() instead of .as_string().
Fixes #987
Checklist:

[x] I have added the relevant tests for this change.
[x] I have added an item to the Pending section of docs/changes.rst.

Thank you!


GH Actions for publishing to docker hub

This PR adds a GitHub Action workflow that auto builds and publishes the docker images to Dockerhub.
Note, most of the commits to this PR were due to the difficult nature of debugging GH actions. I'm not aware of a way to test these offline, and as such, I had to commit changes to see if they worked. I will squash and merge so as not to muddy the history with my tomfoolery.

@wesrisenmay-mx I think I addressed all your concerns. Thanks for the feedback.


DumpStack.log.tmp on root drive

DumpStack.log.tmp showed on 1 of my root drive.

I had to run takeown /F to read the file
The file inside is a combination of binary and text data.
by reading the contents of it, it looks like a keylogger logged data.

I think its safe to delete. I'll try to find out which program made it.

There are actually files on root of all drives. only the physical drives and not external hard drives


Network Monitor Divides Byte Counts by 1024

If I understand /proc/net/dev's output correctly (and I might not), it seems like it is already returning byte counts. Why do we divide the byte count by 1024, but still return them as numbers of bytes (i.e., 'bytes_in' and 'bytes_out')?

For whatever reason GitHub isn't letting me link to the line, but the relevant code starts at line 18 - lib/server_metrics/collectors/network.rb

I'm willing to send a pull request once I get approval from my employer (that is, unless I'm totally misunderstanding this issue.)

Hey @wtchappell -
Thanks for bringing this to our attention! That label is indeed a bit misleading.
However, there are at least a few other libraries that depend on server_metrics, and making that change would break backwards-compatibility. You are welcome to submit a pull request and we can keep it in mind for the next major point release, or you're also welcome to fork this library if you would like to make the change immediately for your own purposes.
The best option right now might just be a pull request that adds a comment to that line explaining the inconsistency.
Thanks!

Are there any plans for a future major point release? I'm just wondering what sort of time-frame we're working with for pushing this out as a breaking change. If there aren't any, that's fine - I'm just curious.
Regardless, I'd appreciate it if we could keep this issue open until this is fixed - even if that's far down the line.

Hey @wtchappell -
No time frame at the moment. I imagine it will be a while, unfortunately.
I'll leave this issue open for now. Thanks again!


[Feature Request]: workflows are missing a ExecutionStoppedListener

What would you like to happen?
Add ExecutionStoppedListener to Workflows too in analogy with pipelines
Issue Priority
Priority: 2
Issue Component
Component: API

.take-issue

I'd also be tempted to standardize methods between IPipelineEngine and IWorkflowEngine.

Or a variant but even more API break:
[add][remove]PipelineExecutionStartedListener
[fire]PipelineExecutionStartedListener
[add][remove]WorkflowExecutionStartedListener
[fire]WorkflowExecutionStartedListener

I don't think we have to wait for a 3.0 version for this. You might have also noticed with your work that the pipeline finished listener is triggered too soon, not all transforms have finished when it is triggered

I've seen bug #3675 but haven't seen it in action yet. I'll keep an eye out for it.


DNM: Upgrade srsRAN to 22.04, add TODO for srsRAN build failing under Ubuntu 22.04.

Do not merge yet, still testing.

OK - srsRAN needs some more work (will tackle that separately).
Active RF plugins: libsrsran_rf_uhd.so libsrsran_rf_soapy.so libsrsran_rf_blade.so libsrsran_rf_zmq.so
Inactive RF plugins:
---  Software Radio Systems LTE eNodeB  ---
Reading configuration file /config/enb.conf...
Failed to mlockall: {}
Built in Release mode using commit f2dff0b7a on branch HEAD.
Error section five_qi_config not found.
Error parsing RB configuration
Error processing arguments.


404 when fetching the installation tar

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/bytebase/install/main/install.sh)"
Results in:
Failed to download from https://github.com/bytebase/bytebase/releases/download/2.3.0/bytebase_2.3.0_Linux_x86_64.tar.gz, status code: 404

Seems like the 2.3.0 release is missing the required files.

this repo is basically dead

Seems like the 2.3.0 release is missing the required files.
Hi @sebastian-jansson , sorry for missing the issue, release 2.3.0 lack the binary, the newest version had fixed it.

this repo is basically dead, why is no one from bytebase fixing this critical issue since weeks?
@d-bytebase

Hi @lfkdev , sorry for missing this issue, we had fixed it via #14

this repo is basically dead, why is no one from bytebase fixing this critical issue since weeks?
@d-bytebase

Sorry, missed the message and notification somehow. Feel free to join discord and let us know there if we miss anything.


Loosing contact with arduino sensor modules

After running for a day or so, the arduino sensor modules stop working. In such a situation we should kill and restart the node process responsible for parsing data from the arduino.

We just need better error handling for this. If we encounter an error we should kill and restart the process.


Contributing to the test suite

I'd like to get some code coverage sorted for this gem, but testing the client is likely to be difficult as it's reliant on a real Monzo account and its details. I'm not sure if it would work to stub it out with something like VCR after running the requests on a real account, but would that be possible?

Hey
In the middle of thinking about how to do it. I think it depends what level we are testing at. For example, the controller's I will likely just mock the TransactionCreator class, as it does not really need to know about the internals of that.
The only point that will need to use something like VCR is the points that actually call the APIs.

I think where possible mock, but VCR is nice for testing the final part that is needed to call the API. Using it everywhere becomes pretty messy, pretty quickly.


Timesheet - 22/04/2021 - Bucky Roberts

Task 1
Went through and updated several of our guide pages with the latest beta information. Also added some new diagrams and updated some existing ones.
Proof of Work

https://github.com/thenewboston-developers/Website/pull/1743
https://github.com/thenewboston-developers/Website/pull/1747
https://github.com/thenewboston-developers/Website/pull/1749

Time Spent
8.5 hours

Total Time Spent
8.5 hours
Account Number
a37e2836805975f334108b55523634c995bd2a4db610062f404510617e83126f

Approved

Approved


PeoplePicker control same user not accept while email is different.

We have one license internal user and one external user. both have same name but different email id.
In one people picker both user cant be selected as both share same name.
Version using
@pnp/spfx-controls-react ^2.10.0
Control: https://pnp.github.io/sp-dev-fx-controls-react/controls/PeoplePicker/
Thank you in advance.

Transferred to the appropriate repo.

@CV-Ankit really sorry for the long delay. Could you please provide more details about the problem? Is the issue happening when trying to select both user accounts within the same field? If so, can both accounts be selected separately?

Hello @michaelmaillot
Yes, still same issue with the updated version 3.15.0.

I think that this is related to #1603 & #1612 which has a PR submitted by @NishkalankBezawada here.

Closing as fixed in version 3.16.0


Upgrade error

Initializing upgrade
[1016] Checking if upgrade is required.
[1016] Deleting new databases if exists.
Maximum IPC message size exceeded.
UnknownError: Maximum IPC message size exceeded.

Hi, Thank you for the issue report. I'm on it right now and expect fix very soon.
The app will work with old setup. Sorry for the upgrade screen enabling itself every time when you open the app. I'll fix that too.
And I'm closing it as a duplicate of #830. But thank you again for the report.


Set log levels from env vars

Also set LOG_DIR because if we don't kafka-run-class.sh will try to create
a directory (which won't be used) only to get a permission denied error.
Fixes #91

KAFKA_LOG4J_OPTS is understood by the kafka-run-class.sh (which is exec'd by kafka-start-server.sh and connect-*.sh scripts), so it makes sense to set that to pass the extra system properties (since they're log related). But the default KAFKA_LOG4J_OPTS sets the log4j.configuration system property, so when we override it we take on responsibility to set that too.
Similar comments apply around ZOO_LOG4J_PROP, but that specifically configures zookeeper.root.logger, rather than a set of log4j options. But the point is, I'm using existing env vars supported by the start scripts, but neither of them are an ideal fit.
If we agree this is the right thing to do, we could do something like this:
if [ -z "$KAFKA_CONNECT_LOG_LEVEL" ]; then
  KAFKA_CONNECT_LOG_LEVEL="INFO"
fi
if [ -z "$KAFKA_LOG4J_OPTS" ]; then
  export KAFKA_LOG4J_OPTS="-Dlog4j.configuration=file:$KAFKA_HOME/config/connect-log4j.properties -Dconnect.root.logger.level=$KAFKA_CONNECT_LOG_LEVEL,CONSOLE"
fi

Where we document the KAFKA_CONNECT_LOG_LEVEL as the means of configuring the log level and treat KAFKA_LOG4J_OPTS as purely internal.
The alternative is to not bother using the env vars "expected" by the scripts to pertain to logging and use the "generic" ones (KAFKA_OPTS for broker and connect and JVMFLAGS for zk) (with appropriate worrying about what if the user want to configure those env vars).
Aside: It seems to me there's some tension here between the env vars defined in the upstream start scripts, and the env vars we consider to be knobs and levers for barnabas users to twiddle. It doesn't help that Kafka and ZK do things in different ways, and we try to gloss over the differences. At some point it might make sense to just write our own scripts. We're only launching a JVM after all.

I've pushed a fix based on the first option, if you want to take another look @ppatierno @scholzj


License for the code does not exist

Could you please clarify the license for the code? I'd love to fork and improve this for my own usage, or even contribute back to upstream if I manage to put in significant work.

I added an MIT License to the repository. Feel free to use this code according to those terms! If you want to submit a Pull Request, I'll keep an eye out. Otherwise, use the code as you wish. :)


Fix unit test failing because of use of '\n'

There was some unit test failing because of line ending differences.
I fixed this by using System.lineSeparator() but a real (long term) fix would be to fix all test as to ignore ending separator (and probably other ignorable characters, such as spaces/tabs at end of line).

By the way, this method could go in assertj-core and be like assertThat(path).hasTextContent(...).

Thanks, I'm bitten again by using linux at home and no I won't change ;-)

Hi,
When you say "No I won't change", is that you won't change the failing test OR that you won't use Windows ?
The problem may also arise on MacOS X: the line separator is \r.
And while called dirty, my fix should be "portable".
I do call it dirty because I think a "proper" assertion should ignore space/tabulations at end of line (eg: it should split lines using this regexp: [ \t]*(\r?\n|\r) which also ignore line ending separator and compare lines by lines).

won't use windows ! :smile:

Although I agree on ignoring the eol in tests, the proposed change is good enough.

Thanks @glhez for the PR and the reminder.


Potential Android compile fix

Without this fix, our Android compile always failed with the following error:
In file included from /Users/pat/Work/PSPDFKit/android/pspdfkit/jni/pspdfkit/../../../../core/PSPDFCore/generated-jni/NativeDataDescriptor.cpp:5:
/Users/pat/Work/PSPDFKit/android/pspdfkit/jni/pspdfkit/../../../../core/Vendor/djinni/support-lib/jni/Marshal.hpp:265:15: error: ambiguous conversion for functional-style cast from 'CppType' (aka 'pspdfkit::oxygen::nn<std::__1::shared_ptr<PDFC::DataProvider> >') to 'CppType' (aka 'shared_ptr< ::PDFC::DataProvider>')
   return j ? CppType(T::Boxed::toCpp(jniEnv, j)) : CppType();

I'm not quite sure if this is the right way to fix this but it seems to work perfectly!

Automated message from Dropbox CLA bot
@pweiskircher, it looks like you've already signed the Dropbox CLA. Thanks!

The line as it is now allows for explicit conversions, so removing that might break code for someone else.
To me it looks like a problem with pspdfkit::oxygen::nn<std::__1::shared_ptr<PDFC::DataProvider> > as the compiler cannot properly convert it to shared_ptr< ::PDFC::DataProvider>. Have you looked at the conversions the compiler is trying and why it finds more than one candidate?
Maybe try replacing Cpptype(...) with CppType{...} as that turns the functional-style cast to a braced-initializer? That would keep explicit conversions working.

I was actually talking with @j4cbo on Slack about this and he said he had to make a similar change on iOS because of some clang problem: https://github.com/dropbox/djinni/blob/master/support-lib/objc/DJIMarshal%2BPrivate.h#L178

Yes, I saw that after looking at the PR. I was worried that the change disables explicit conversions, but Boxed::toCpp should by design return something that's compatible with CppType anyway so I guess it's fine. It may only break with user-provided nn types if they lack a implicit conversion to shared_ptr.

Should we change/add anything? I'd love to see this in master. Thanks!

Sorry, I think this got missed when I took over primary maintainer duties from @j4cbo, so I never realized it was ready and waiting.  I think it seems fine, and matches what's happening in ObjC.  @j4cbo do you have any thoughts?  Otherwise I'll merge this week.

:+1: if it works with the internal codebase. If there are problems with nn compatibility, the first thing I'd try would be to do something like https://github.com/dropbox/djinni/blob/master/support-lib/objc/DJIMarshal%2BPrivate.h#L178 instead of using the ternary operator, but if this works as-is then go for it.

Someone has to do the nitpicking: it's using tabs instead of spaces for indentation.

Good point about the ternary operator possibly leading to more type-ambiguity than the dual returns.
I'll merge this after I have the time to first patch it and try it out with the Dropbox mobile code.
Correction: I'll merge this after the tabs are also converted to spaces (thanks @mknejp).  Or I'll just fix them myself if I end up having to tweak the solution as @j4cbo suggests.

As @j4cbo anticipated, the ternary operator did cause compile failures with this fix in our internal use cases (from a quick scan of the errors it seems to be specifically when mixing use of nn and optional).  The equivalent change with an if and two separate return statements works fine, though.  I'll go ahead and make that fix and push it shortly, so will close out this PR.  Thanks @pweiskircher for diagnosing this issue.


DOC Improve the code snippet in signal.hilbert docstring.

I was looking at https://docs.scipy.org/doc/scipy/reference/generated/scipy.signal.hilbert.html and saw that there is a problem with the figure. This tiny PR fixes that (with more modern Matplotlib code).

refguide check and doc build/artifact CI runs are passing

thanks @paugier


Create LICENSE.md

Add MIT license.

Should this also update: https://github.com/harrystech/tap-aftership/blob/master/pyproject.toml#L10
The license file is MIT but the project description says Apache?

Should this also update: https://github.com/harrystech/tap-aftership/blob/master/pyproject.toml#L10
The license file is MIT but the project description says Apache?

Thanks for catching -- updated.


Added new tokens for color wheel border color and opacity

Description
Added new tokens for color wheel border color and opacity in both light and dark mode
Motivation and context
New tokens were defined for color wheel border
Related issue
n/a
Types of changes

 [ ] Patch (bug fixes, typos, mistakes; non-breaking change which fixes an issue)
 [x] Minor (add a new token, changing a value, deprecating a token; non-breaking change which adds functionality)
 [ ] Major (deleting a token, changing token value type, renaming a token by deprecating the old one; fix or feature that would cause existing functionality to change)
Checklist:

 [x] I have signed the [Adobe Open Source CLA](https://opensource.adobe.com/cla.html).
 [x] I updated the token in all applicable sets. This applies if updating, adding, or deleting a token that has data across different sets (for example, if the value differs across color themes.)

TESTING spectrum2
READING spectrum-tokens: /spectrum-tokens/packages/tokens/src/
READING   tokens studio: /spectrum-tokens-studio-data/src/tokens-studio/spectrum2-colors/
READING   tokens studio: /spectrum-tokens-studio-data/src/tokens-studio/spectrum2-non-colors/
STUDIO SYNC SUMMARY
UPDATED METADATA - SPECTRUM UUID: spectrum2/component.Component.color-wheel.border
UPDATED METADATA - SPECTRUM UUID: spectrum2/opacity.component.color-wheel-border-opacity

SPECTRUM SYNC SUMMARY
NEW TOKENS: (4) action-bar-minimum-width, action-bar-label-to-action-group-area, color-wheel-border-color, color-wheel-border-opacity
CHANGED VALUES: (16) checkbox-control-size-extra-large/desktop, checkbox-control-size-large/desktop, checkbox-control-size-medium/desktop, checkbox-control-size-small/desktop, checkbox-top-to-control-extra-large/desktop, checkbox-top-to-control-large/desktop, checkbox-top-to-control-medium/desktop, checkbox-top-to-control-small/desktop, checkbox-control-size-extra-large/mobile, checkbox-control-size-large/mobile, checkbox-control-size-medium/mobile, checkbox-control-size-small/mobile, checkbox-top-to-control-extra-large/mobile, checkbox-top-to-control-large/mobile, checkbox-top-to-control-medium/mobile, checkbox-top-to-control-small/mobile impacting 8 tokens

TEST COMPLETE


Notify users the RcraProfile was not successfully updated

🚀 Feature Request
The title says it all, we don't have a sad path implementation when the user updates their RcraProflle and the server returns an error or a network error is experienced.
Bonus points for an implementation that also makes use of the notification slice by dispatching a redux action to include an alert in the store.
Ping me here for clarifying questions.
Expected behavior

[ ]  Notify user
[ ] update redux Notification slice

Undecided how the form should be affected. I don't want to clear the form of it's values, then the user just has to re-enter there RcraProfile info if they want to retry. We could make the form editable again (instead of read only) to signify that changes need to be made. Open to discussion.

Closing this issue as there are several design decisions we need to make before this can be implemented in any meaningful way.
Currently, we don't have a method to poll the server and determine the status of long running tasks. The outstanding design choice revolves around incorporating the use of web-sockets or long-polling the server via http api calls.
See #302


action sheet is displayed in the centre of the screen on iPad

is this a bug or something I'm doing wrong?
how can i get the action sheet to pop up from the bottom of the screen?

Actually, this is how regular action sheets work. So behavior is not a coincidence probably.
Best


Additional task filter matches more than expected

Looks like you're using regex for tag matchings just wondering if this is intended behavior. I usually just use #t for my todo/tasks as it's shorter to write and takes up less space on each task line. However now if I have anyway other tag with start with t, its also gets caught.

Hello, @Erik-Handeland,
Yes, this behavior is intended. If you want to catch #t, but not, say, #tomorrow, you can use a pattern like this: #t\b


high cpu usage after doing &caption on a huge gif

Describe the bug
this happens only with gifs that are 8mb or more in size, pic below is cpu usage when the bot finished processing the gif and already sent it
Steps to reproduce

send a huge gif (8 or more megabytes in size)
do &caption, but other image processing commands should work too
wait until the bot processes it
check the cpu usage

Expected behavior
No response
Screenshots

Self-hosted instance?
Yes
Additional context
No response

#325 could be a potential cause of this?

Without knowing the hardware in use by @mr-nv I will hazard a guess that this could be related to #374

Closing as fixed until OP says otherwise.

just updated my instance and it seems to work fine now, thanks
@bjcscat


'BodyBlackboard' object has no attribute 'shut_down_request'

Traceback (most recent call last):
  File "/homes/15guelden/ws/src/bitbots_meta/bitbots_behavior/bitbots_body_behavior/src/bitbots_body_behavior/body_behavior.py", line 79, in <module>
    D.update()
  File "/homes/15guelden/ws/src/bitbots_meta/dynamic_stack_decider/dynamic_stack_decider/src/dynamic_stack_decider/dsd.py", line 238, in update
    result = current_instance.perform()
  File "/homes/15guelden/ws/src/bitbots_meta/dynamic_stack_decider/dynamic_stack_decider/src/dynamic_stack_decider/sequence_element.py", line 28, in perform
    self.current_action.perform()
  File "/homes/15guelden/ws/src/bitbots_meta/bitbots_behavior/bitbots_body_behavior/src/bitbots_body_behavior/actions/play_animation.py", line 27, in perform
    success = self.start_animation(anim)
  File "/homes/15guelden/ws/src/bitbots_meta/bitbots_behavior/bitbots_body_behavior/src/bitbots_body_behavior/actions/play_animation.py", line 61, in start_animation
    while not server_running and not self.blackboard.shut_down_request and not rospy.is_shutdown():
AttributeError: 'BodyBlackboard' object has no attribute 'shut_down_request'

Expected behavior

Current behavior

Steps to Reproduce

seems to happen if the behavior is faster than the animation server
...

Context (Environment)

[ ] RViz
[ ] Simulator
[ ] Robot
[ ] Local

Possible Solution

Fixed with #240


New strategy: no_prefix_except_root

Describe the feature
With this strategy, your routes won't have a locale prefix added except index page. The locale will be detected & changed with root language route and with i18n API.
Additional information

[X] Would you be willing to help implement this feature?
[ ] Could this feature be implemented as a module?

Final checks

[X] Read the contribution guide (The contribution guideline of nuxt-modules/i18n is compliant with Nuxt too).
[X] Check existing discussions and issues.

In other words: enabling redirectOn: 'root' with no_prefix strategy

So are you saying that it's already possible? In which case what would be the benefit of adding new strategy?

New strategy or allowing redirectOn: 'root' with no_prefix strategy, because for now it not working

I want no_prefix for all pages except index (and couple of other pages) for SEO

It looks like Trello adds prefixes for all pages as long as you manually change the language in the footer.
Also it doesn't seem to automatically redirect to the user-preferred language.

Yes, there are all pages with prefixes, but also no-prefix version with user-selected language


Implement adding agent orchestration

Need to implement the logic to be able to make different models interact to achieve a task

Possibly use Openai Swarm framework (doesn't support C# but really easy to implement)
Or use Semantic Kernel C# library (Harder to implement)

Closing this issue as we have successfully implemented agent orchestration in the system. Here's what has been accomplished:
Base Agent Architecture
• Implemented BaseAgent class with robust tool execution framework
• Added support for multiple AI models (GPT-4, Claude)
• Implemented comprehensive error handling and logging
Research Agent Implementation
• Created specialized ResearchAgent with multiple integrated tools:

Web search (DuckDuckGo)
Academic search (Google Scholar)
Expert search with domain expertise detection
Patent search (Google Patents API)
News search (NewsAPI) with source validation

Tool Orchestration
• Implemented parallel tool execution
• Added result synthesis and context augmentation
• Built-in caching for expert profiles and search results
• Graceful fallbacks for failed tool executions
Domain-Specific Intelligence
• Added specialized handling for different research domains (CRISPR, battery technology, etc.)
• Integrated expert knowledge base with known authors and keywords
• Implemented category-based search optimization
Monitoring & Validation
• Added execution history tracking
• Implemented response validation
• Added detailed logging and error reporting
Instead of using OpenAI Swarm or Semantic Kernel, we implemented a custom solution that better fits our needs, providing more control and flexibility. The system now successfully orchestrates multiple AI models and tools to perform complex research tasks.


Added vagrant binary check to functional tests

Allows travis to skip the functional tests if vagrant binary is
missing.

👍

👍