v3: implement new symbol rules for ORDER BY

This change addresses #2254. The ORDER BY clause is allowed
to reference columns in the FROM clause that are not necessarily
present in the SELECT expressions. This rule transitively applies
to symbols in the outer query also.

LGTM

Thinking about this some more, passing the forOrderBy flag as parameter is not the correct design. This is because the search rules for the outer symbol tables should not be dictated by a subquery, but the clause in which it appears. For example, in select ... having id in (select ...), the inner subquery symbols have to follow the rules dictated by the having clause, and should not depend on the context in which they appear in the subquery.
TL;DR: The flag should actually be a state in the symbol table, and it will individually dictate how that symbol table performs the search. In reality, this will have no material impact for this feature, but will become relevant when we start to handle more constructs.
Update coming soon.


Call records in local TZ

The current call records show time in UTC.  This should auto adjust to time zone of the viewer.

in master

released in 3.2.0


/redoc api documentation is not available

fastapi generate a /docs endpoint as well as a /redoc one, that is often more readable.
Here is an exemple : https://franceservices.dev.etalab.gouv.fr/api/redoc
A reverse proxy is probably hiding it as we got redirected to a streamlit playground.

Disponible sur https://albert.api.etalab.gouv.fr/documentation


SwiftSuspenders-v1.6.0 warning

i just run unit test via SwiftSuspenders-v1.6.0.swc and get plenty of this
Warning: Injector already has a rule for type "org.robotlegs.core::IReflector", named "".
If you have overwritten this mapping intentionally you can use "injector.unmap()" prior to your replacement mapping in order to avoid seeing this message.
Warning: Injector already has a rule for type "org.robotlegs.core::IInjector", named "".
If you have overwritten this mapping intentionally you can use "injector.unmap()" prior to your replacement mapping in order to avoid seeing this message.
Warning: Injector already has a rule for type "flash.events::IEventDispatcher", named "".
If you have overwritten this mapping intentionally you can use "injector.unmap()" prior to your replacement mapping in order to avoid seeing this message.
this annoying for me because i'm don't know that this is a right warning or wrong
then the question is are we gonna fix it or maybe i need to try find the way to turn it off instead?
thanks

Hi Katopz, This should be fixed in RL 1.5.0. Please let me know if the problem persists. Thanks!

Closing this issue as no feedback has been provided. If you get a chance to test and find that the problem still exists, feel free to re-open this issue.


Add MVT Playground example

This PR adds a Swift Playground demonstrating an example of MapLibre World.

Playground Example

Again thank you @roblabs !
Can you maybe also add a hint to the README that there is a playground available? That would round it off 🙂

"Can you maybe also add a hint to the README that there is a playground available? That would round it off 🙂"

I've added the updates to README regarding Playground via #15.
No changes to this PR, and it's ready to go.


Enabling laptop monitor leads to crash.

Hyprland Version
Hyprland, built from branch main at commit 4eecb8bffc829ab2222b4acea1942ef8ee7b8904 dirty (config: don't enable vrr 2 for maximized workspaces). Tag: v0.29.1-11-g4eecb8bf  flags: (if any)
Bug or Regression?
Bug
Description
I have an external hdmi monitor. Enabling laptop monitor while the hdmi one is plugged with the config below leads to crash. It only happens when live reloading. When running Hyprland fresh from terminal it works normally.
How to reproduce

Use this config for monitors:

monitor=eDP-1,disable
monitor=HDMI-A-1,1920x1080@180,0x0,1

Change the monitors config to this:

monitor=HDMI-A-1,1920x1080@180,0x0,1

Hyprland crashes

Crash reports, logs, images, videos
hyprlandCrashReport15979.txt

Looks like your issue is similar to this one: https://github.com/hyprwm/Hyprland/issues/2770

It's a different issue. I've tried today's patches and the crash is still reproductible.
I haven't looked at the code (and neither I will, because is my eyes start to bleed when I see c++), but just from the last log messages in crash log, I can tell that the laptop monitor is being initialized with wrong position<PHONE_NUMBER>,-2147483647) and size (0x0).

somehow that rule doesn't get picked up. Wuuttt

Trying again in fa3de9b70e95ea8f0ebac16ae02f8f0eba0d5b92 (v0.29.1-17-gfa3de9b7) and I can't reproduce there. Maybe db48f97 fixed this? I'll also make sure if there's no regression on master just in case, and close this issue after confirming.

I've noticed that the crash only happens when starting Hyprland with the monitors config in 1. (laptop monitor disabled). When started with monitors config like in 2. I can comment/uncommment monitor=eDP-1,disable line freely without any crashes.

no longer can repro on main f10996b


C4 Deployment Diagram

Deployment: Diagram for technical people within and outside the team. Focus is on infrastructure that the Product is, like where are the components actually stored, including both physical and software-based infrastructure (e.g. Docker).
This will have several diagrams most likely, otherwise it might be too big. But for now, we can keep it to one.

[x] seedcase-project/seedcase-sprout#9

Not relevant right now.


Inconsistency in iptables after upgrade

When upgrading flannel from 0.7.1 to 0.8.0, specifically to get this patch, I noticed that one host didn't work as expected (the source IP was not preserved in the requests).
I compared the iptables on a working host to the faulty one and discovered what was wrong. In the faulty host the POSTROUTING rules looked like this:
-A POSTROUTING -s <IP_ADDRESS>/16 -d <IP_ADDRESS>/16 -j RETURN
-A POSTROUTING -s <IP_ADDRESS>/16 ! -d <IP_ADDRESS>/4 -j MASQUERADE
-A POSTROUTING ! -s <IP_ADDRESS>/16 -d <IP_ADDRESS>/16 -j MASQUERADE
-A POSTROUTING ! -s <IP_ADDRESS>/16 -d <IP_ADDRESS>/24 -j RETURN

I flipped the new RETURN rule so that they looked like this:
-A POSTROUTING ! -s <IP_ADDRESS>/16 -d <IP_ADDRESS>/24 -j RETURN
-A POSTROUTING -s <IP_ADDRESS>/16 -d <IP_ADDRESS>/16 -j RETURN
-A POSTROUTING -s <IP_ADDRESS>/16 ! -d <IP_ADDRESS>/4 -j MASQUERADE
-A POSTROUTING ! -s <IP_ADDRESS>/16 -d <IP_ADDRESS>/16 -j MASQUERADE

And everything started working as intended.
When upgrading flannel from one version to another, are you supposed to flush the iptables or is this a bug?
CoreOS: 1409.9.0
Kubernetes: 1.6.4

Should be fixed in v0.9.0


Add files via upload

@Aplicat0r First stage of verification passed, official domain is varnacouncil.bg as far as I verified. This is just an informational note. Pull request is still in the review. I appreciate your patience while waiting for the final decision. Proof of domain ownership: https://varnacouncil.bg/wp-content/uploads/2018/04/Предложениe-от-Павлин-Петков-–-директор-на-МГ-„Д-р-Петър-Берон“-–-Варна-с-рег.-№-ОС18000274ВН16.04.2018г.pdf

@Aplicat0r Thank you for your patience while waiting for a review and processing your request. Pull request merged.

Great, thank you!


Register package

@JuliaRegistrator register

@JuliaRegistrator register

Registration pull request updated: JuliaRegistries/General/70098
After the above pull request is merged, it is recommended that a tag is created on this repository for the registered package version.
This will be done automatically if the Julia TagBot GitHub Action is installed, or can be done manually through the github interface, or via:
git tag -a v0.1.0 -m "<description of version>" 95db7da385d6e18e74ed4fb009fa390b0784063a
git push origin v0.1.0


Dev branch PostgreSQL server wrapper fails due to missing microservice field

Describe the bug
After restarting the server, the microservice field seems to occasionally be invalid for PostgreSQL based servers.
To Reproduce
Steps to reproduce the behavior:

Change chronos config database type to PostgreSQL of books server.
Change .env file Chronos_URI to a PostgreSQL URI in books.
Rerun books, reverse proxy server, and orders.
See error

Expected behavior
Expectation is that network tracing logs are recorded in the PostgreSQL data.
Screenshots

Desktop (please complete the following information):

OS: MacOS 11.1 (Big Sur)
Browser: Chrome
Version: 88.0.4324.96

Issue is fixed


stage written PocketChat tutorials on Developer portal

once the tutorials are created, we need to stage them on the Developer Portal with code snippets from each application.

The tutorials have been reviewed for grammar and is copied over to the Developer Portal, and is awaiting to be published.

it is now on the developer portal. Waiting for videos to be done before mass release


Daily build: Counter_16bit fails VPR step

I am able to build the code and run the command below. I got errors and would like to report the error. Where is the right place to report this error? Attached is VPR log file.
vpr_stdout.zip

I change the command to: ql_symbiflow -compile -d ql-pp3 -t top -v counter_16bit.v -p counter_16bit.pcf
The tool is able to go further than the VPR step.
The next failure is missing pinmap. The error is ERROR: Failed to parse the pinmap CSV file!
There is a pinmap_qlf_k4n8_umc22.csv in the folder. I updated the command to: ql_symbiflow -compile -d ql-pp3 -t top -v counter_16bit.v -p counter_16bit.pcf -P pinmap_qlf_k4n8_umc22.csv
Still produces same error. I assume that I have the wrong CSV. Please advise on where to find information for PP3 pinmap or the correct CSV file.
Attached is the log output
top.zip
.

I was able to get a little further by doing the followings:

Specified the -P to WD30 (which is the supported package)
Remove all of the IO settings in the PCF file and only keep set_io clk A3

Update command is: ql_symbiflow -compile -d ql-pp3 -v counter_16bit.v -t top -P WD30 -p counter_16bit.pcf
The tool passes VPR and still fail. See attached log.
top.zip

I was able to get a little further by doing the followings:
Specified the -P to WD30 (which is the supported package)
Remove all of the IO settings in the PCF file and only keep set_io clk A3
Update command is: ql_symbiflow -compile -d ql-pp3 -v counter_16bit.v -t top -P WD30 -p counter_16bit.pcf
The tool passes VPR and still fail. See attached log
top.zip
.

@anthonyle-ql Could you attach the PCF file you use?

Please see attached .pcf file.
If it is not too much trouble, please share your .pcf file and the command that you have used to test the design using PP3 device. This would help to reduce the communication cycle. Thanks.
counter_16bit.zip

I can see that the constraint you have is incorrect:
set_clk clk[0] A3

You should use set_io to constrain IO ports:
set_io clk[0] A3

I've created a PR with a fix to the IO constraint creation script: https://github.com/QuickLogic-Corp/symbiflow-arch-defs/pull/542. This will fix the Python script crash but you still need to correct the PCF.

I am able to get a successful run. I fixed the PCF: change clock name from clk[0] to clk and set_clk to set_io. The original PCF file needs update (as you have mentioned).
I will move forward to validate the generate bit file on HW.


Round-LED-Clock:18:21: error: FastLED.h: No such file or directory

The problem has been resolved

In file included from C:\Users\alhaddar\Round-LED-Clock_f-home2\Round-LED-Clock_f-home2.ino:18:0:
C:\Users\alhaddar\Documents\Arduino\libraries\FastLED/FastLED.h:14:21: note: #pragma message: FastLED version 3.002.010
pragma message "FastLED version 3.002.010"
                 ^

In file included from C:\Users\alhaddar\Documents\Arduino\libraries\FastLED/FastLED.h:65:0,
             from C:\Users\alhaddar\Round-LED-Clock_f-home2\Round-LED-Clock_f-home2.ino:18:

C:\Users\alhaddar\Documents\Arduino\libraries\FastLED/fastspi.h:115:23: note: #pragma message: No hardware SPI pins defined.  All SPI access will default to bitbanged output
pragma message "No hardware SPI pins defined.  All SPI access will default to bitbanged output"
                   ^


Bugfix issue #782

Icon was corrupted
Also need to modify SuperPutty\Resources\Apps-utilities-terminal-16x16.ico
Apps-utilities-terminal-16x16.zip

It's working !!!
Thanks. !


add credits

https://github.com/max397574/colortils.nvim/issues/4#issuecomment-1167745270

Hi man please check the README, do I need to add anything else?


Non public accessible files

Currently files on a storage are saved with public: true.
In my project resources that are stored on GCS are private by their nature and exposing them publicly is inappropriate even with a hash added to a file name.
Possible solution
To keep files private and to allow them to be visible by strapi admin panel a wrapper could be provided which will resolve provided gcp credentials and pass required file.
Such approach could be configured if allowing public access is fine and to avoid additional layer if not necessary.

Hello @piotkaba-pearson !
Thanks for your issue.
We can add an optional variable than will change the « public » value if you want to keep files privates.
Quick solutions :

You can send a PR with this new feature.
You can fork and use your own version of the plugin for your project.

Otherwise I will try to add this later this month :)
Be careful about one thing, files will maybe not available from Strapi Admin and Media Library.
Thanks,

Thanks to @dgmike for his contribution !
This new feature will be available with stable release "3.0.0"
I will publish the new release on Friday (I hope ^^).
Thanks :)


Silent renew error

Hello,
I just have a problem with the automaticSilentRenew.
As I understand I don't have to do anything for it to work but after the silent renew has been made if I try to call an endpoint again I have a 401 error because the token used is still the expired one.
In auth I can see this error : Invalid token specified: Cannot read properties of undefined (reading 'replace').
I'm pretty sur the silent renew is made but the token is not updated.
Can you help me understand where is the problem ?
Thanks in advance

Please have a look at the underlying library oidc-client-ts, renew is implemented there. Also notice that in v2.0.1 and v2.0.2 oidc-client-ts we fixed issues in that direction.
Which versions of react-oidc-context and oidc-client-ts are you using?

Enable logging of the underlying library oidc-client-ts should help to see what the problem is:
import { Log } from "oidc-client-ts";
Log.setLogger(console);
Log.setLevel(Log.DEBUG);

"Preserve Logs" in the browsers console, as the renew is done via iframe...

Hello and thanks for the quick response.
I have the v2.1.0 of react-oidc-context but I didn't have oidc-client-ts  installed, sorry about that.
Now that I have installed it it seems to be working but every time the silent renew is made the profile retrieved is now empty.
Do I have to store it before the renewal ?

Is your error path:
validateSigninResponse
  - ...
  - _validateIdTokenAttributes (should throw if (!profile.sub) { logger.throw(new Error("ID Token is missing a subject claim")); })
  - _processClaims

or
validateRefreshResponse
  - _processClaims

?


Make service player_transfer_playback work in case device is in use by other Spotify account

Checklist

[X] I have filled out the template to the best of my ability.
[X] This only contains 1 feature request (if you have multiple feature requests, open one feature request for each feature request).
[X] This issue is not a duplicate feature request of previous feature requests.

Is your feature request related to a problem? Please describe.
When someone outside our family account has been using our Spotify Connect device, playing from HA is not possible. The only workaround I found is to connect to the device with my Spotify app, which uses a family account.
Describe the solution you'd like
Transfer playback to device, regardsless of current status, so even when another account is playing.
Describe alternatives you've considered
I tried to switch the device off and back on via media_player.turn_off and turn_on. Unfortunately, my Bueasound Powernode does not support these services.
Additional context
None

@Ayuus
The spotifyplus.player_transfer_playback service should have worked for this scenario, with the following assumption:  the device you are transferring TO is still in the Spotify Connect device list.  If the device was dropped from the Spotify Connect device list (e.g. went to sleep, disconnected, etc) then you will need to call something to "wake" it up so that it gets restored back into the Spotify Connect device list.  This usually involves a call to the SpotCast integration, or something similar.  The SpotifyPlus integration cannot wake a device up - it can only manipulate the Spotify Connect Player once the device is registered to Spotify Connect.
Once the device is in the Spotify Connect device list, then you can transfer it like so (using device name):
service: spotifyplus.player_transfer_playback
data:
  entity_id: media_player.spotifyplus_john_s           # Bose-ST10-1 device
  device_id: "Bose-ST300"                              # Bose-ST300 device name
  play: true

or like so (using device id):
service: spotifyplus.player_transfer_playback
data:
  entity_id: media_player.spotifyplus_john_s           # Bose-ST10-1 device
  device_id: 6f66ef4fbf687bbba393d8c38599aad484b30901  # Bose-ST300 device id
  play: true

Thanks for the explanation! The device has indeed disappeared from SpotifyPlus. However, the device was actually playing (using another Spotify account) when I tried service player_transfer_playback. This morning, after several hours, the device is indeed asleep, but when the last Spotify account used is the same as the account SpotifyPlus is using, waking up works OK.
If I try to use the device from the Spotify App, then I get a message first if I want to join a Jam. After clicking "No", device can be used by both Spotify app and SpotifyPlus. I doubt that Spotcast woul solve this, what do you think?

It would depend on the device ... I think SpotCast is for devices that utilize the Google Cast functionality.  I am not familiar with the Bueasound Powernode that you mentioned, so not sure how to direct you on that.
I run into the same issue with my Bose SoundTouch gear sometimes.  I know that assigning static IP addresses to the devices has helped tremendously.  I also recently upgraded to a Mesh Wifi 6 system from an older router, which helped as well.  I am not suggesting you update any equipment, just saying what helped me with my gear.
I know that mDNS / Bonjour comes into play somehow in the process in order for Spotify Connect to discover devices.  You might want to ensure that you are allowing that network traffic thru any firewalls you may have setup.
I have been researching a tool called ZeroSpot, which is "... a command-line tool to connect a Spotify account to a Spotify Connect device via command line on the local lan".  Per the author's README.MD:
My issue was that when spotifyd (base on librespot) would reset, spotify forgets it and I'm unable to cast music to it with spotcast from Home Assistant. Also, I don't want to log in permanently with spotifyd to let others on the local net to use the device to play music.  The tool encrypts the given username and password and sends it to the Spotify Connect device. Other authentication options are not provided.
Looks promising.

Finding the device in the LAN is not the issue here (although I had to configure mDNS/Bonjour after I placed the device in a different VLAN). Device has fixed IP and is connected via UTP.
Tested some more: when the device plays using another Spotify account, it is also lost when using Spotify API.
For now, it can only be transferred back to HA/SpotifyPlus using the Spotify app.

@Ayuus
FYI, I just added 3 new services to the SpotifyPlus integration that relate to ZeroConf support:

ZeroConf Discover Devices
ZeroConf Device GetInformation
ZeroConf Device ResetUsers

Note that I have not been able to test the ZeroConf ResetUsers action, as my Bose SoundTouch gear does not support it (old technology, and Bose does some weird things to interface with the Spotify Connect ZeroConf API).
I am still working on the the ZeroConf AddUsers action - it's being a difficult nut to crack, due to blobs and encryption.  I will keep you posted on that progress.

Thanks for the additions! Unfortunately, does not make Transfer Playback work.
I can discover the device using zeroconf_discover_devices. That gives me 2 device names, not device id's.
When I execute spotifyplus.zeroconf_device_getinfo for the device, I get the device ID, but when I try transfer_playback, service returns "Device not found".
Strange.

The issue is that the Spotify Connect player drops the device from its "recognized device list" after a period of inactivity.  There has to be some way (short of rebooting the device) to make the device "re-advertise" itself (via mDNS) to the Spotify Connect player.  As far as I can tell, that advertisement has to come from the device (could be wrong about that).  I am just not sure how to do that.
One thought I had was to mimic the Spotify ZeroConf API functionality by spinning up a temporary HTTP web server (for each device) with the getInfo entrypoint active.  The temporary getInfo endpoint would then advertise the same information as the devices' getInfo entry point.  Not sure if it would work though.
Still brainstorming, but not looking very promising.

@Ayuus
FYI - just released a new version of the SpotifyPlus integration that adds Spotify Zeroconf API addUser support, as well as fixes resetUser support.
I was able to get this working with my Bose SoundTouch gear.  I am now able to add and remove Spotify Connect devices at will via service calls.  I think (hope!) it will work for any type of device that supports the Spotify Zeroconf API, but I have no way to test it.  Just wondering if you could give it a try and let me know how it goes?  Also let me know what type of gear you have (e.g. Sonos, Google Cast, etc), so I can document it in the wiki.
Note that I had to remove the zeroconf_device_resetusers service, as well as change the parameter list to the zeroconf_device_getinfo list.  I had to approach this from a different angle, and that required extensice changes.
Check out the following wiki docs for more information / sample service call YAML:

Zeroconf Device Connect
Zeroconf Device Disconnect
Zeroconf Device GetInformation

You should be able to issue the Player Transfer Playback service call AFTER the Zeroconf Device Connect service call.  The Zeroconf Device Connect service call can also be placed into a script and ran at intervals to always keep your devices in the Spotify Connect device list.
[ 1.0.26 ] - 2024/06/10

Added service zeroconf_device_connect that calls the addUser Spotify Zeroconf API endpoint to issue a call to SpConnectionLoginBlob.  If successful, the associated device id is added to the Spotify Connect active device list for the specified user account.
Added service zeroconf_device_disconnect that calls the resetUsers Spotify Zeroconf API endpoint to issue a call to SpConnectionLogout.  The currently logged in user (if any) will be logged out of Spotify Connect, and the device id removed from the active Spotify Connect device list.
Removed service zeroconf_device_resetusers and replaced it with zeroconf_device_disconnect.
Updated underlying spotifywebapiPython package requirement to version 1.0.48.

Yes, works! Thanks for fixing this!

Yes, works! Thanks for fixing this!

@Ayuus
Glad to hear.
Follow-up questions, if you have a minute ...

were you able to verify the new Connect processing?  For example, did you test if you could re-add your device from the Spotify Connect player list?
were you able to verify the new Disconnect processing?  For example, did you test if you could remove your device from the Spotify Connect player list?
what device hardware are you controlling?  e.g. Sonos, Google Cast, Onkyo, etc.

I appreciate your time and input - if you don't want to respond that's ok too.  Just looking to update the documentation with what brands this works with.  Thanks!

The new Connect processing made it possible for me to "take-over" the device when another Spotify user last used it. This was previously not possible (that is why I created the issue in the first place:-)
Yes, zeroconf_device_disconnect works, too. Repeatedly connect/disconnect works without problems.
My hardware device is Bluesound Powernode 330, for which Connect Service port number = 11000, and cpath = /spotifyconnect.

Side note: to be sure that Spotify actually plays on the device, a script to be called just before transfer playback would be handy (a la turn on/turn off), as transfer playback alone does not ensure actually playing.

@Ayuus
Thanks for the details - exactly what I needed.  Wiki Documentation has been updated.
As for the script, you can use something like the following; you could even set it to run every 10-15 minutes to keep any device constantly active if you like.
alias: Spotify Connect Device Bose-ST10-1
description: >-
  Calls the `addUser` Spotify Zeroconf API endpoint to issue a call to
  SpConnectionLoginBlob.   If successful, the device id is added to the Spotify
  Connect active device list for the specified user account.
sequence:
  - service: spotifyplus.zeroconf_device_connect
    data:
      entity_id: media_player.spotifyplus_todd_l
      host_ipv4_address: <IP_ADDRESS>
      host_ip_port: 8200
      cpath: /zc
      version: 1
      username: "yourusername"
      password: "yourpassword"
      verify_device_list_entry: true
    response_variable: service_response
icon: mdi:devices

Note that it uses the verify_device_list_entry=true parameter, which forces a check to see if the device is already active before issuing a connect.  This way if the device is playing, it won't interrupt it.


Series are not consistent in their handling of undefined values

Area and line (which wrap their d3 counterparts) contain a defined filter function which allows undefined data values to be skipped. The rest of the series do not have this functionality.
Therefore swapping from a line series to a bar series will cause a runtime error.
I'm not sure if we should remove the functionality from area/line or add it to the others. It seems like nice functionality but forcing an extra filter pass of the data before doing the data-join doesn't sound great either.

The addition of xyBase and ohlcBase has resolved this.


More specific naming for security groups

in operations/deployment/terraform/modules/02_networking.tf, the name property for aws_security_group.allow_https is too generic to be re-used in some existing VPC that might lead to conflicts.
Something like st2_allow_https might work better.  The same should be done for all security group configuration (http, ssh).

Possibly resolved via: https://github.com/bitovi/github-actions-deploy-stackstorm/pull/25
@armab thoughts?

That should work!


Does not work in macos big sur

Error message says that it only support macos 10.8+

Yes, since it is comparing 11.X to 10.8 by comparing X to 8 and X is 6 or less.  the same is true for Monterey where it is comparing 12.2 to 10.8 by comparing 2 to 8.
If the function using the bc command is defined:
ifbc () { test $(echo "$@" | bc -l ) -ne 0; }
Then the test could be changed to
ifbc "sw_vers -productVersion | cut -d. -f1,2 > 10.8" && echo "true, it's greater" || echo "no, it's less or ="

If the version test code at the point of the "# check compatibility" comment is replaced by the following it should work.
# use bc as numerical decimal test
ifbc () { test $(echo "$@" | bc -l ) -ne 0; }

# check compatibility
# get version in XX.YY form
MACOS2NO=$(/usr/bin/sw_vers -productVersion | cut -d. -f1,2)
if ( ifbc "$MACOS2NO < 10.8" ) ; then


Improve CI and packaging:

add travis build for min cmake supported
add travis build for validator keys (uses xrpl_core)
add travis build for ipv6 (mac only)
add cmake target for validator keys via FetchContent
use validator keys target in package build

Codecov Report

Merging #3066 into develop will decrease coverage by <.01%.
The diff coverage is n/a.

@@             Coverage Diff             @@
##           develop    #3066      +/-   ##
===========================================
- Coverage    68.77%   68.76%   -0.01%
===========================================
  Files          686      686
  Lines        55751    55751
===========================================
- Hits         38340    38337       -3
- Misses       17411    17414       +3

Impacted Files
Coverage Δ

src/ripple/ledger/impl/ApplyView.cpp
80% <0%> (-2.61%)
:arrow_down:

Continue to review full report at Codecov.

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


Hash Encoding Outputting High Collision Output

Expected Behavior
If I set n_components to 8, for example, I should be able to encode columns with up to 2^8 values.
Actual Behavior
Whatever I set n_components to is the number of unique records of the encoded columns I get. For example, if I set n_components to 32, there only ends up being 32 unique records. This obviously will not do as an encoder as there are countless collisions.
This issue does not come up with binary coding for example. I successfully can encode my high cardinality categorical column with it.
Steps to Reproduce the Problem

fit the transform to some high cardinality categorical column
look at the number of unique records for the col_0,..., col_7 combinations

Specifications

Version: category_encoders 2.6.0
Platform:
Subsystem:

Hi Eddie,
thanks for reporting this issue.
I've created this example to reproduce the problem
from category_encoders import HashingEncoder
import pandas as pd
import random

categories = [str(x) for x in range(100)]
data = [random.choice(categories) for _ in range(1000)]
df = pd.DataFrame({"col_a": data})

my_enc = HashingEncoder()
df_out = my_enc.fit_transform(df)
df_out["dummy"] = 1
print(df_out.groupby([f"col_{i}" for i in range(8)]).count())

I'm really surprised that this seems to have gone unnoticed for 7 years.
It seems like we need to modify this line to basically to do some logarithmic action and we need to join the strings in the whole row before hashing.
https://github.com/scikit-learn-contrib/category_encoders/blob/f6349a140c8477b612a63c7d8f5cfe21139f5989/category_encoders/hashing.py#L308
Also note a similar question and discussion in #350

This is expected behavior for a hashing encoder, I think. See wikipedia, and compare with sklearn's implementation.
A binary encoding based on a hash function could be interesting as a new encoder though. It could hash to integers and then apply binary encoding on those. Hashing to "ordinal" encoding first could be factored out, and the current transformer would be that followed by one-hot?

Thanks for pointing this out Ben!
But then our documentation and default values are wrong.

n_components: int
  how many bits to use to represent the feature. By default, we use 8 bits.
  For high-cardinality features, consider using up-to 32 bits.

8 bits to me sounds like 2^8 hash values. Also the default in sklearn is 2^20, whereas ours is 8.
Given that the HashingEncoder does not implement handle na / handle missing and does not keep the mapping, I'm starting to wonder where the benefit against sklearn is. Sure we take dataframes as input and have some multiprocessing features but we'd need to test if our implementation is faster at all. I'd suspect that sklearn uses better optimised libraries, sparse output etc.

I've removed the bug label since this is actually the correct behavior. Keeping the issue to discuss whether to fix the documentation or just drop the encoder all-together (in a backwards compatible way, pointing to sklearn instead)


BUG: linalg.eigvals: incorrect handling of singular positive semidefinite matrices

Describe your issue.
This bug report demonstrates inconsistent behavior (see Case 1 and Case 2 below) in SciPy's eigenvalue calculations for singular positive semidefinite (PSD) correlation matrices, specifically in cases with identical rows.
Issues identified:

For the singular matrices A1 and B1 the generalised eigenvalue problem does not result in two inf eigenvalues (Case 1):

generalised linalg.eigvals returns eigenvalues [ 0.98989899  1.00990099 -0.42480251] (note the negative eigenvalues which does not make sense for A1, B1 while singular both being positive semi-definite (valid correlation matrices)

Inconsistent behaviour (Case 2):

Other similar PSD matrices A2 and B2 are handled correctly, resulting in generalised linalg.eigvals returning two inf eigenvalues [0.98874682 inf  inf]
Same mathematical property (singularity) leads to different numerical behaviours

Expected behaviour:
The  generalised linalg.eigvals for A1 and B1 should return [value close to 1, inf, inf] (similar to Case 2)
Impact:
This affects applications involving PSD matrices especially common when dealing with highly correlated features leading to near-singular correlation matrices particularly in:

Distance calculations between correlation matrices using eigenvalues of the matrices
some Kernel methods using gerneralised eigenvalue calculations
In large matrices such errors might go unnoticed!

Possible workaround:
Adding a small regularisation to matrices A1, B1, A2, B2 (εI where ε=1e-10) makes the inf eigenvalues of the generalised problem become close to 1 allowing for distance calculations that cannot deal with inf and also makes the issue of the completely wrong eigenvalue of -0.42 for A1,B2 in Case 1 disappear. However, the regularisation might not be wanted for all applications as the mathematically correct result inf might be what is expected.
Reproducing Code Example
import numpy as np
from scipy import linalg

# Case 1: Matrices with identical rows
A1 = np.array([[1., -0.02, -0.02],
               [-0.02, 1., 1.],
               [-0.02, 1., 1.]])

B1 = np.array([[1., -0.01, -0.01],
               [-0.01, 1., 1.],
               [-0.01, 1., 1.]])

# Case 2: Different singular matrices that work correctly
A2 = np.array([[1., 0., 1.],
               [0., 1., 0.],
               [1., 0., 1.]])

B2 = np.array([[1., -0.01, 1.],
               [-0.01, 1., -0.01],
               [1., -0.01, 1.]])

# Different behaviours observed:
# Case 1: Generalised eigenvalue problem
print("A1,B1 generalised eigenvalues:", linalg.eigvals(A1, B1))

# Case 2 which works correctly
print("A2,B2 generalised eigenvalues:", linalg.eigvals(A2, B2))

Error message
no error messages for this bug, just wrong results

SciPy/NumPy/Python version and system information
1.11.3 1.26.4 sys.version_info(major=3, minor=9, micro=19, releaselevel='final', serial=0)
Build Dependencies:
  blas:
    detection method: pkgconfig
    found: true
    include directory: /opt/arm64-builds/include
    lib directory: /opt/arm64-builds/lib
    name: openblas
    openblas configuration: USE_64BITINT= DYNAMIC_ARCH=1 DYNAMIC_OLDER= NO_CBLAS=
      NO_LAPACK= NO_LAPACKE= NO_AFFINITY=1 USE_OPENMP= SANDYBRIDGE MAX_THREADS=3
    pc file directory: /opt/arm64-builds/lib/pkgconfig
    version: 0.3.21.dev
  lapack:
    detection method: pkgconfig
    found: true
    include directory: /opt/arm64-builds/include
    lib directory: /opt/arm64-builds/lib
    name: openblas
    openblas configuration: USE_64BITINT= DYNAMIC_ARCH=1 DYNAMIC_OLDER= NO_CBLAS=
      NO_LAPACK= NO_LAPACKE= NO_AFFINITY=1 USE_OPENMP= SANDYBRIDGE MAX_THREADS=3
    pc file directory: /opt/arm64-builds/lib/pkgconfig
    version: 0.3.21.dev
  pybind11:
    detection method: config-tool
    include directory: unknown
    name: pybind11
    version: 2.11.0
Compilers:
  c:
    commands: cc
    linker: ld64
    name: clang
    version: 14.0.0
  c++:
    commands: c++
    linker: ld64
    name: clang
    version: 14.0.0
  cython:
    commands: cython
    linker: cython
    name: cython
    version: 0.29.36
  fortran:
    commands: gfortran
    linker: ld64
    name: gcc
    version: 12.1.0
  pythran:
    include directory: ../../pip-build-env-6014nofx/overlay/lib/python3.9/site-packages/pythran
    version: 0.14.0
Machine Information:
  build:
    cpu: aarch64
    endian: little
    family: aarch64
    system: darwin
  cross-compiled: false
  host:
    cpu: aarch64
    endian: little
    family: aarch64
    system: darwin
Python Information:
  path: /private/var/folders/76/zy5ktkns50v6gt5g8r0sf6sc0000gn/T/cibw-run-dp6he_rc/cp39-macosx_arm64/build/venv/bin/python
  version: '3.9'

For generalized problems b must be positive definite.

I almost included eigvalsh in this bug report too, because I believe that it also incorrectly reports that it is not positive semi definite (Hermitian need to be positive semi-definite). Both matrices A1 and B1 are positive semi-definite. Eigenvalues for A1=[9.99200639e-01+0.j 2.00079936e+00+0.j 4.11810443e-32+0.j] and B1=[9.99800040e-01+0.j 2.00019996e+00+0.j 4.11857080e-32+0.j]. They are singular (duplicated rows) and the third eigenvalue accurately should be 0 but the e-32 I assume is due to numerical inaccuracy. This inaccuracy should not lead to a -0.42 eigenvalue for the generalised problem. I'm less familiar with eigvalsh but I believe it incorrectly complains about these matrices, and this might help fix this issue?


YOLOv3

Hello, did anyone test the converting YOLOv3 model to pytorch? Is it working, thanks in advance

no, its not working.
its not even working on the latest yolov1.

Not support YOLOv3 layer.
When will it be supported?

You can find a solution in this repo
https://github.com/BingzheWu/object_detetction_tools/blob/master/nn_model_transform/darknet2caffe.py


Odd behavior when rounding datetime

I noticed some odd behavior when bulk inserting. Lets say I have a table with a column that is a DateTime2(3) with precision 3.
When inserting the following datetime from code "2021-04-01 09:37:10.6097403". The result in Sql Server is "2021-04-01 09:37:10.609".
When inserting the same datetime with Entity Framework the result is "2021-04-01 09:37:10.610".
So it seems like Entity Framework is rounding correctly and bulkinsert is just truncating. I would prefer that bulkinserts behavior aligns more with what Entity Framework does.
Maybe there is an option I can use to round instead of truncate? Please help.

To me, insert performance is much more important than rounding. So only implement this feature if it doesn't negatively impact the performance.

Strange behaviour, but I can cofirm the issue.
It seems that this is due to the implmentation of SqlBulkCopy and I don't a way to change it.
So the solution, as you already implied, would be to round it in memory before sending to Db.
Option 1. (only Floors to Milisecond):
foreach (var entity in entityList)
{
  var dt = entity.DateTime;
  entity.DateTime  = new DateTime(dt.Year, dt.Month, dt.Day, dt.Hour, dt.Minute, dt.Second, dt.Millisecond);
}

Option 2.
It you want precise Round then you need to read Micro and Nano second in order to do Rounding on Milisecond.
However DateTime type in C# does not have directly exposed that precision, so it needs to be read it from Ticks or String and do the rounding.
2.a) form String
var dateFormat = "yyyy-MM-dd HH:mm:ss.fffffff";
foreach (var entity in entityList)
{
  var dt = entity.DateTime;
  var millisecondString = dt.ToString(dateFormat).Substring(20, 7);
  var millisecond = (int)Math.Round(decimal.Parse(millisecondString) / 10000, 0);
  entity.DateTime  = new DateTime(dt.Year, dt.Month, dt.Day, dt.Hour, dt.Minute, dt.Second, millisecond);
}

2.b) using Tick
c-sharp-time-in-microseconds

Thank you for your comment. I'll close this issue now.

Using Ticks is better option so I've update the previous comment.

With latest v5.0.2 (that is now for EF Core 5) automatic rounding is integrated into the library.
Just need to set BulkConfig.DateTime2PrecisionForceRound = true

Oh wow. Thank you so much Borisdj!


Handle caret position after toView processing

When I use a ValueConverter to render a field like a currency, let's say it adds dots and $ where needed, though adding a . or the $ sign may disrupt the experience some, actually the current implementation makes the caret jumps after the last character every time someone types something in the input. This is even more disturbing, especially if the user wants to add digits in the middle of the number.
My use case is the following:
<input value.bind="property | currency:'<some format>'" />

With currency (simplified):
exports class CurrencyValueConverter {
  fromView(str) {
    return numbro().unformat(str);
  }

  toView(value, format) {
    return numbro(value).format(format);
  }
}

There is 2 solutions that I can think about:

have the normal algorithm save/restore caret in between every matches
have a binding behavior do this, but this seems like a bad idea because a  binding behaviour can be used on a component thus it would not work properly depending on where it is used which looks bad

It's tempting to make controls using value converters but the best way to do this is to create a custom element or attribute.  Then you'll have the ability to control the formatting and the behavior of the element.

I understand this pretty well. I was just pointing out that a simple input element with a ValueConverter cannot be used to do a simple formatting in the input without a very bad experience. input + format with currency is not very extraordinary but the caret always jumping at the end is bothersome.
Does it really seems appropriate to you that when I add a digit in the middle of my number, only because spaces are reordered all around thanks to formatting, my cart jumps to the end of the input? Wouldn't restoring the caret be the better user XP in most cases?
So I do a custom attribute to do this? Then I can't make more complex renderings because I can't stack them. That was the point of the ability to pipe a converter into another right? And it won't behave fine if I want to use it on another component that expects a value.
I like the way aurelia is conceived because you can always build a small bit of code that can neatly fit in everything else. I really don't see the custom attribute/element fit for this problem.
I can't even begin to fathom how I can even write a custom attribute that will do what I want without 20 times as much code as what I have now and a lot of complex edge cases.
I'm OK to try to make a PR for this if you are willing to merge it & provide some direction as to where to look in the codebase. I found the parts I read neatly written and easy to understand and I don't think it is a hard patch.

Try a binding behavior.  It's a lot like a value converter but it gives you full access to the binding, the element, etc.  Value converters can be thought of as a side-effect free / pure data pass-through.  Binding behaviors are more advanced, they allow adding behavior like cursor movement.
export class CurrencyFormatBehavior {
  bind(binding, source, format) {
    binding.standardUpdateSource = binding.updateSource;
    binding.updateSource = function(newValue) {
      this.standardUpdateSource(numbro().unformat(newValue));
    };
    binding.standardUpdateTarget = binding.updateTarget;
    binding.updateTarget = function(newValue) {
      binding.standardUpdateTarget(numbro(value).format(format));
      const element = this.target;
      // mess with cursor position...
    };
  }

  unbind(binding, source) {
    binding.updateSource = binding.standardUpdateSource;
    binding.updateTarget = binding.standardUpdateTarget;
  }
}

https://www.danyow.net/aurelia-binding-behaviors/

I know of them and already implemented some. My issue is that you can use a ValueConverter on a custom element. If you put a binding behavior instead, it would work great on base inputs. You could even easily make it work on custom element you know of. But what of components that you are unaware of completely.
The ValueConverter thing is only an example. If I have a keypress event and modify the value in the model that is bound to the current input, the caret will also jump at the end of the input.
So let's reformulate my request: is it possible to make aurelia restore caret position each time it modifies the value of an element that has focus?

Hi! I'm going through the same problem. My solution was create a ValueConverter to converter toView and fromView, and create a CustomAttribute for handle the caret position behavior.  Has anyone made another implementation?

I Have this issue when editing numeric fields as described above, with a ValueConverter, is there a solution for this without major re-coding. @thiagomaia971 did your CusomtAttribute handle the caret position correctly? Do you have an example?


Regexp validator fails on MultipleFileField

Hi Guys,
Regexp validator fails on multiple file field - it validates on field.data which in this situation is a list.
(I wanted to clone the repo and try out new Regexp test case with list type field.data value, but I failed at running pytest on non-installed package and picking up whole validators tests...)
Cheers

I'm not sure what you would expect Regexp to validate even for a single file field, a file is not a string.

Well, just a filename exactly as it is stated in the docs for singular FileField: https://wtforms.readthedocs.io/en/stable/fields.html#wtforms.fields.FileField
Currently field.data is list of file names, that's why regexp validator fails.

I could reproduce with:
>>> import wtforms
... import werkzeug.datastructures
... class F(wtforms.Form):
...     foo = wtforms.FileField(validators=[wtforms.validators.regexp(r'.*\.jpg$')])
... data = werkzeug.datastructures.ImmutableMultiDict({"foo": "blahblahblah.jpg"})
... F(data).validate()
True

>>> import wtforms
... import werkzeug.datastructures
... class F(wtforms.Form):
...     foo = wtforms.MultipleFileField(validators=[wtforms.validators.regexp(r'.*\.jpg$')])
... data = werkzeug.datastructures.ImmutableMultiDict({"foo": "blahblahblah.jpg"})
... F(data).validate()
Traceback (most recent call last):
  File "<stdin>", line 6, in <module>
  File "/home/azmeuk/dev/wtforms/wtforms/.tox/py38/lib/python3.8/site-packages/wtforms/form.py", line 324, in validate
    return super().validate(extra)
  File "/home/azmeuk/dev/wtforms/wtforms/.tox/py38/lib/python3.8/site-packages/wtforms/form.py", line 147, in validate
    if not field.validate(self, extra):
  File "/home/azmeuk/dev/wtforms/wtforms/.tox/py38/lib/python3.8/site-packages/wtforms/fields/core.py", line 268, in validate
    stop_validation = self._run_validation_chain(form, chain)
  File "/home/azmeuk/dev/wtforms/wtforms/.tox/py38/lib/python3.8/site-packages/wtforms/fields/core.py", line 288, in _run_validation_chain
    validator(form, self)
  File "/home/azmeuk/dev/wtforms/wtforms/.tox/py38/lib/python3.8/site-packages/wtforms/validators.py", line 341, in __call__
    match = self.regex.match(field.data or "")
TypeError: expected string or bytes-like object

expected string or bytes-like object

MultipleFileField×Regexp seems a very specific case:

Of all the fields, only SelectMultipleField and MultipleFileField store their data as a list, but Regexp is not pertinent on SelectMultipleField as the input is constrained in a defined set of values;
Of all the validators, only Regexp seems pertinent to use on MultipleFileField.


fix opponent CFV computation for cse > 0 or alternating updates

As it is, CFV corresponds to a bit different (probably worse) approximation of equillibrium strategy.


Top function declarations in script/eval should conflict with global let/const

For the purpose of declaration conflicts
function f(){}

is the same as
var f = function(){};

and likewise should conflict with global properties of the same name, including global let/const.
In a case if function declaration is added via a script, a dynamic check should be emitted.
Missing such check causes asserts when setting up callsite cache slots or incorrect behavior otherwise.
Fixes:#4953
Fixes:#3275

@dotnet-bot test OSX static_osx_osx_debug please

@dotnet-bot test OSX static_osx_osx_test please

@pleath - Paul, could you take a look at the change again?
I have settled on fixing this issue to the same degree that is with var - i.e. where we have bugs like #5070, they will for now have the same effect with function declarations as with var (which is an improvement for function declarations).
That is just to scope the fix - once #5070 is fixed, it will be fixed for both var and function, but that will be a separate fix and likely in a different place.

Since there is no further feedback, I am going to merge this.
Let me know if there are additional concerns though.


Not possible to generate new address (403 Forbidden)

Works the same as in demo. Need to dig in more into the logic behind

This error occurs on fresh peatio installation.

@yivo revert gems to peatio/peatio

@gfedorenko Issue is related to terminated daemons.


Localization Translations

Localization prep is complete, and my students will be handling some of the locale translations over the next few weeks.

Locales spoken for: en-ca, fr, ja, vn, zn-ch.
These may not result in complete translations, especially while the work is in process.
Target completion: Oct 21, 2019.

The student projects have completed. Not all of the translation sets are complete. Missing:

fr/Downloads
ja/ all but 2
vn/ half
zh-CN  four of them

I am going to disable Japanese, Vietnamese & Simplified Chinese until they are more complete (if that happens).

Two of the larger community members also stepped up, with translation sets for Brazilian and RUssian :D

Since the school is no longer involved with the project, we have made the decision to remove localization.


Wrong path returned by this.refs.camera.capture() when capture mode is cameraRoll (Android)

Node version: 7.5
React-native-cli: 2.0.1
React-native: 0.41.2
Platform: Android 5.0
React-native-camera: 0.6.0
When taking a photo and the capture mode is cameraRoll, the path returned from this.refs.camera.capture() is the disk location of the image (i.e. file:///storage/emulated/0/DCIM/IMG_20170302_091011.jpg) as opposed to the images location in the camera roll (i.e. content://media/external/images/media/16329).
I suspect that the problem is down to the fact that no callback is provided in the call to MediaScannerConnection.scanFile in RCTCameraModule.java to capture (no pun intended!) the correct resource reference.
This problem becomes more evident if you try and chain the camera view with a camera roll view and the image just taken does not immediately appear in the gallery of images (i.e. MediaScannerConnection has yet to complete its scanning).

Hi, this should be fixed in https://github.com/lwansbrough/react-native-camera/pull/637, would you like to test it?
The currently implementation isn't wrong, its just there are 2 ways to represent the new image in android.  This PR adds a 2nd field to the response called 'mediaUri' which I believe is the thing you want.

Hi, Will do hopefully within the next week. Thanks for the fix.

Just given it a quick check and it looks good to me. Thanks for the resolution! Any ideas when this will be merged into master?

I hope later today.  Just testing out the other changes

If you could comment on the PR that would be helpful.

Can we close this?


responsive search ads etc

Docs Build status updates of commit cb0dcfa:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

Advertising/bingads-13/bulk-service/responsive-search-ad-label.md
:white_check_mark:Succeeded

Advertising/bingads-13/bulk-service/responsive-search-ad.md
:white_check_mark:Succeeded

Advertising/bingads-13/campaign-management-service/appinstallgoal.md
:white_check_mark:Succeeded

Advertising/bingads-13/campaign-management-service/conversiongoal.md
:white_check_mark:Succeeded

Advertising/bingads-13/campaign-management-service/durationgoal.md
:white_check_mark:Succeeded

Advertising/bingads-13/campaign-management-service/eventgoal.md
:white_check_mark:Succeeded

Advertising/bingads-13/campaign-management-service/instoretransactiongoal.md
:white_check_mark:Succeeded

Advertising/bingads-13/campaign-management-service/offlineconversiongoal.md
:white_check_mark:Succeeded

Advertising/bingads-13/campaign-management-service/pagesviewedpervisitgoal.md
:white_check_mark:Succeeded

Advertising/bingads-13/campaign-management-service/responsivesearchad.md
:white_check_mark:Succeeded

Advertising/bingads-13/campaign-management-service/urlgoal.md
:white_check_mark:Succeeded

Advertising/bingads-13/guides/entity-hierarchy-limits.md
:white_check_mark:Succeeded

Advertising/bingads-13/guides/operation-error-codes.md
:white_check_mark:Succeeded

Advertising/bingads-13/guides/responsive-search-ads.md
:white_check_mark:Succeeded

Advertising/bingads-13/guides/show-ads-target-audience.md
:white_check_mark:Succeeded

Advertising/bingads-13/guides/universal-event-tracking.md
:white_check_mark:Succeeded

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.


[IA-4525] Enable network API

Some tests we are developing requires connectivity to VMs directly so we can reduce reliance on selenium in backend testing. This PR enables the google API required to tunnel to VMs protected by fire wall rules regardless of the source IP, which is needed since these tests will soon run on GHA nodes, which it is not secure to add to our VMs allow list. Google has an offering that supports this in a secure way, IAP tunneling. Essentially, we will allow list a range of IPs reserved by google in the network that leonardo sets up for VMs.
I have SSH working locally, since on the VPN my IP is on our VM allow list. However, I cannot use IAP proxying, and the error message points to enabling this API (here I am authenticated as the leo qa service account).

Note that this change is only needed for projects created during automation tests, so we should not need to migrate existing projects. Automation tests create new projects in a bee, which all point to a central tools buffer instance as I understand it.
I believe I've modified the proper config to have changes take effect on the buffer instance that serves bees in this PR, but I'm not positive.

cc @jack-r-warren , will merging this trigger a deploy to the tools resource buffer instance?

I think this is right -- it seems BEEs use the quality resource pool in the tools Buffer instance:
https://github.com/broadinstitute/terra-helmfile/blob/master/values/app/rawls/bee.yaml.gotmpl#L11
@yonghaoy will PR merges automatically deploy to tools?

Tools is auto deployed before, not sure anything changed today. Might need to ask @jack-r-warren ?

@yonghaoy probably manual. For these sorts of questions please ask our team in #dsp-devops-champions


documentation

All public functions from the API layer and up should have @doc tags.
All modules should have @moduledoc tags
Docs should be generated and source controlled using Exdocs.
Doc vs Wiki:
doc tags should be used for "in the moment" developer information that is needed to write code
Wiki should be the more "stable" information and not worry about implementation details. This includes setting up the environment, major processes like deployment and release, design decisions, etc.

Areas that need the most documentation (@docs) (Read: "thaar be dragons"):

DSL
UserState

Areas that need tutorials / guides (wiki):

html.eex templates
editing blockly
channels and when to use elixir code behind vs when to use javascript
How hardware python drivers currently are loaded
data flow from the API level to the CLI level to the Web Level

Breaking this up into smaller issues to work on one at a time.


Avoid some crashes in cubemap code (reflection mapping).

Reflection mapping isn't working yet, but those two patches avoid two crashes related to reflection mapping code.

LGTM


fix: use fragment in json schema refs

Updating to latest test vectors

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 84.28%. Comparing base (7be43ec) to head (3085da3).

Additional details and impacted files
@@           Coverage Diff           @@
##             main     #240   +/-   ##
=======================================
  Coverage   84.28%   84.28%
=======================================
  Files          38       38
  Lines        1107     1107
  Branches      115      115
=======================================
  Hits          933      933
  Misses        122      122
  Partials       52       52

Components
Coverage Δ

protocol
85.80% <ø> (ø)

httpclient
78.31% <ø> (ø)


Update AOAI assets

Overhaul Cognitive Services Landing Zone
Added private connectivity support for Semantic Kernel Bot
Multiple new plugins and integrations
Multiple bug fixes

Glad to see this cleaning up the .net 7/8 conflicts


stuck on "refreshing results" after adding following phone

I wanted to add following phone info to an existing query (corpus = spade-ice-can), so in query page I clicked "add following" then "refresh query". It has been stuck on the screen below for hours.

mysteriously resolved


Enable https in warmup

Turns out Cloud Run doesn't like http traffic (it 302's it across to https) unlike AppEngine Flex. Easy fix is to enable the warmup script to take both http and https urls to warmup.

TBR: @johnpryan


Months subtraction

There's an issue with month subtraction. Repro steps:
import Date exposing (fromTime)
import Date.Extra.Duration exposing (Duration(..), add)
today = fromTime<PHONE_NUMBER>655
add Month -7 today -- results in Dec 08 2016, which is right
add Month -19 today -- results in Dec 08 2014, which is one year to the past wrong
add Month -20 today -- results in Nov 08 2015, which is right again

Seems that problem is with the yearOffset in the addMonth function, but I'm not sure. I'll probably do some work on this.
Update
Further investigation showed that the root problem is in the Internal.daysFromCivil. When targetMonthInt equals zero resulting year is reduced by one (which is logical and right behavior). But when newMonthInt is simultaneously less than zero (in case of subtracting 12 + currentMonthNumber months or more) it leads to additional year subtraction from yearOffset.
I'll be making a PR now.

Nice catch.

Ok merged, added your test cases and published as 9.0.1.
Thanks for the report and fix.


fix/removes a comma which should not be there

the comma is not needed/allowed at this place

Thanks!


Line desync on line deletions

Sometimes I expected desync with dd.
Steps to reproduce
Tested on this file with clean config.
dd
gk
u
gk
dd
u
gj
dd

Current behavior
After the last dd, the line above the cursor will be deleted.
Expected behavior
After the last dd, the current line will be deleted.

Not reproducible in refactor branch, so i guess this should be fixed


Vim allows multiple *ReadCmd events to fire on a buffer

Much to my surprise, if a file or buffer matches the patter for more than one BufReadCmd or FileReadCmd autocommand, both of them get executed.
To see what I mean, make a test vimrc containing only the following:
set nocp
au BufReadCmd,FileReadCmd *.tupperware let g:first=1
au BufReadCmd,FileReadCmd *.foo.tupperware let g:second=1

Now touch a file called test.foo.tupperware, and do vim -u testvimrc --noplugin test.foo.tupperware.
Now do :echo g:first and :echo g:second and observe that they are both defined.  I would've exepcted only one of them to be defined, probably g:first since it corresponds to the first autocommand  that matched the file name.
This seems like a bug, since according to the docs the code that called by a *ReadCmd  (in a realistice usage and not the dummy demo code above) is supposed to "do the reading" for the buffer/file in question.  "Doing the reading" should only happen once, right?  Shouldn't Vim only run the first *ReadCmd autocommand that matches?

Am 2016-09-01 04:33, schrieb chdiza:

Much to my surprise, if a file or buffer matches the patter for more
than one BufReadCmd or FileReadCmd autocommand, both of them get
executed.
To see what I mean, make a test vimrc containing only the following:
set nocp
au BufReadCmd,FileReadCmd *.tupperware let g:first=1
au BufReadCmd,FileReadCmd *.foo.tupperware let g:second=1
Now touch a file called test.foo.tupperware, and do vim -u testvimrc
--noplugin test.foo.tupperware.
Now do :echo g:first and :echo g:second and observe that they are both
defined. I would've exepcted only one of them to be defined, probably
g:first since it corresponds to the first autocommand that matched the
file name.
This seems like a bug, since according to the docs the code that
called by a *ReadCmd (in a realistice usage and not the dummy demo
code above) is supposed to "do the reading" for the buffer/file in
question. "Doing the reading" should only happen once, right?
Shouldn't Vim only run the first *ReadCmd autocommand that matches?

I am not sure I agree. Would about a file
http://foobar/blafasel.bz2?
(One BufReadCmd for http:// and one for uncompressing *.bz2 file)
I think it is expected, that the the BufReadCmd is executed for each
match.
Best,
Christian

I am not sure I agree. Would about a file http://foobar/blafasel.bz2?

That was my first reaction, too, but then I checked and the compression handling plugin doesn't use the *Cmd events.  It uses BufRead and simply filters the contents of the buffer.

I am not sure I agree. Would about a file http://foobar/blafasel.bz2?

These seem like cases where the second of the two operations should be a BufReadPost, or where the fetching and uncompressing should all be handled by one function that's called by a *ReadCmd.  I'm having trouble thinking of a good reason to need to *ReadCmd twice.
I would not expect Vim to read a normal file twice (when no *ReadCmd is in play).  Since *ReadCmd is supposed to take over for Vim's normal reading operations---to get text into a buffer but in a different way than usual---I wouldn't expect *ReadCmd to be done twice either.


attempting to run CI unittests for .netcore and .netframework projects

Summary of the Pull Request
This is a quick attempt to run two separate CI passes of the VSTest@2 step as per the conversation here:
https://github.com/microsoft/vstest/issues/2310
In the future we might consider more elaborate ways of automatically inspecting the target framework.
PR Checklist

[x] Applies to #5879
[ ] CLA signed. If not, go over here and sign the CLA
[ ] Tests added/passed
[ ] Requires documentation to be updated
[ ] I've discussed this with core contributors already. If not checked, I'm ready to accept this work might be rejected in favor of a different grand plan. Issue number where discussion took place: #xxx

Info on Pull Request
What does this include?
Validation Steps Performed
How does someone test & validate?

oooo, is this running now?

oooo, is this running now?

still having problems with one test.  Disabled it for now, so that CI can get unblocked.   I'll fix the conflicts asap and put it it once approved.

@alekhyareddy28  would you mind taking a look at this?


Add the missing argument

miss the first argument in line 190 in security.py
so that when executing command superset init,

@flametest your branch needs to be based on a clean master please.

@xrmx ok :-)


No video formats found! (Udemy)

DO NOT REMOVE OR SKIP THE ISSUE TEMPLATE

[X] I understand that I will be blocked if I remove or skip any mandatory* field

Checklist

[X] I'm reporting a bug unrelated to a specific site
[X] I've verified that I'm running yt-dlp version 2022.11.11 (update instructions) or later (specify commit)
[X] I've checked that all provided URLs are playable in a browser with the same IP and same login details
[X] I've checked that all URLs and arguments with special characters are properly quoted or escaped
[X] I've searched the bugtracker for similar issues including closed ones. DO NOT post duplicates
[X] I've read the guidelines for opening an issue

Provide a description that is worded well enough to be understood
I try to use Udemy Downloader to find a problem, as i understand yt_dlp cant see all available list of formats like 720p etc.
bacause   "Udemy Downloader" have same problem...
I  recognised that error come only when comming link like
"https://dash-enc-c.udemycdn.com/out/v1/a76bce0bb9204ca88b1d366f9e51f666/06c8dc12da2745f1b0b4e7c2c032dfef/2863df5b743847e5846f2b1343f3cbff/0b5a4ce589de4bda9d3a4860e543ad6e/index_audio_2_0_12.mp4?Policy=eyJTdGF0ZW1lbnQiOlt7IlJlc291cmNlIjoiaHR0cHM6Ly9kYXNoLWVuYy1jLnVkZW15Y2RuLmNvbS9vdXQvdjEvYTc2YmNlMGJiOTIwNGNhODhiMWQzNjZmOWU1MWY2NjYvMDZjOGRjMTJkYTI3NDVmMWIwYjRlN2MyYzAzMmRmZWYvMjg2M2RmNWI3NDM4NDdlNTg0NmYyYjEzNDNmM2NiZmYvMGI1YTRjZTU4OWRlNGJkYTlkM2E0ODYwZTU0M2FkNmUvKiIsIkNvbmRpdGlvbiI6eyJEYXRlTGVzc1RoYW4iOnsiQVdTOkVwb2NoVGltZSI6MTY2OTIzMjA0OX19fV19&Signature=ZvyND4QOQPwqALQNRuw2AjppPEoHcpUYl9Zb8acAZ81uqMrR6PwBK02BooQRMFN91uQ2CmFl8JNxeypU6UwaOffVgnc3NVDmuke18GV9aZ8beUEdD0b3x8hmhkFfF8cYeib6oyHwCOSe-ml-08N~d~lUMmVoeTklBd4taxdU48n4sB3Yyl-rV~CmHMXSuzES0-ac6ii8nC3te4jh44lzMSQ1KCdSWfGJhlZrfpzodnX1fDcknERRPxorXEnbs2hLf29w70tCZCVlkkyKe80IrKADs5v1Qabk1T~9rXHkq0H5HuoctWX0CQl1H96u8M0kzv1xwO7x3WmsgB1cx2av-Q__&Key-Pair-Id=APKAITJV77WS5ZT7262A"
In normal case its shoul be like "https://www.udemy.com/assets/31785130/files/2021-03-01_02-09-36-dee633c29f7d2f340f1bdd227aedc29b/2/hls/AVC_1920x1080_3200k_AAC-HE_64k/aa0032f7cd7997f526453c51a483e6c8bdf9.m3u8?provider=cloudfront&token=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJwYXRoIjoiMjAyMS0wMy0wMV8wMi0wOS0zNi1kZWU2MzNjMjlmN2QyZjM0MGYxYmRkMjI3YWVkYzI5Yi8yLyIsImV4cCI6MTY2OTIzMjAzOH0.4UjdOKL7nrQdevPTC_U87AtBVUnc5T-pLV8quFUBNsE&v=1"
Provide verbose output that clearly demonstrates the problem

[X] Run your yt-dlp command with -vU flag added (yt-dlp -vU <your command line>)
[X] Copy the WHOLE output (starting with [debug] Command-line config) and insert it below

Complete Verbose Output
[debug] Command-line config: ['-vU', '--cookies', 'token.txt', 'https://www.udemy.com/git-and-github-bootcamp/', '-P', '/Users/dmytrotronko/Documents/UDEMY', '-o', '%(playlist)s/%(chapter_number)s - %(chapter)s/%(title)s.%(ext)s']
[debug] Encodings: locale UTF-8, fs utf-8, pref UTF-8, out utf-8, error utf-8, screen utf-8
[debug] yt-dlp version 2022.11.11 [8b644025b] (source)
[debug] Plugins: ['SamplePluginIE', 'SamplePluginPP']
[debug] Git HEAD: 9d52bf65f
[debug] Python 3.9.7 (CPython x86_64 64bit) - macOS-10.16-x86_64-i386-64bit (OpenSSL 1.1.1l  24 Aug 2021)
[debug] exe versions: ffmpeg 5.1.2 (setts), ffprobe 5.1.2, rtmpdump 2.4
[debug] Optional libraries: Cryptodome-3.15.0, brotli-None, certifi-2022.09.24, mutagen-1.46.0, sqlite3-2.6.0, websockets-10.4
[debug] Proxy map: {}
[debug] Loaded 1728 extractors
[debug] Fetching release info: https://api.github.com/repos/yt-dlp/yt-dlp/releases/latest
Latest version: 2022.11.11, Current version: 2022.11.11
yt-dlp is up to date (2022.11.11)
[debug] [udemy:course] Extracting URL: https://www.udemy.com/git-and-github-bootcamp/
[udemy:course] git-and-github-bootcamp: Downloading webpage
[udemy:course] 3792262: Downloading course curriculum
[download] Downloading playlist: 3792262
[udemy:course] Playlist 3792262: Downloading 187 items of 187
[download] Downloading item 1 of 187
[debug] [udemy] Extracting URL: https://www.udemy.com/git-and-github-bootcamp/learn/v4/t/lecture/24507864
[udemy] 24507864: Downloading webpage
[udemy] 24507864: Downloading lecture JSON
[udemy] 31785146: Downloading m3u8 information
[debug] Formats sorted by: hasvid, ie_pref, lang, quality, res, fps, hdr:12(7), vcodec:vp9.2(10), channels, acodec, filesize, fs_approx, tbr, vbr, abr, asr, proto, vext, aext, hasaud, source, id
[debug] Default format spec: bestvideo*+bestaudio/best
[info] 31785146: Downloading 1 format(s): hls-2847
[debug] Invoking hlsnative downloader on "https://www.udemy.com/assets/31785146/files/2021-03-01_02-10-54-e32e9233db768ef95842039e62ea0453/2/hls/AVC_1920x1080_6400k_AAC-HE_64k/aa009cdfe4466855ddacefabbcfd2ea425b4.m3u8?provider=cloudfront&token=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJwYXRoIjoiMjAyMS0wMy0wMV8wMi0xMC01NC1lMzJlOTIzM2RiNzY4ZWY5NTg0MjAzOWU2MmVhMDQ1My8yLyIsImV4cCI6MTY2OTY2NjkzM30.t2CRRGBaZ43mFqCA8Gu7U1mTyWiaq2Whg4b3ZeyGMjA&v=1"
[download] /Users/dmytrotronko/Documents/UDEMY/3792262/1 - Course Orientation/Welcome To The Course!.mp4 has already been downloaded
[download] 100% of   84.17MiB
[download] Downloading item 2 of 187
[debug] [udemy] Extracting URL: https://www.udemy.com/git-and-github-bootcamp/learn/v4/t/lecture/24911494
[udemy] 24911494: Downloading webpage
[udemy] 24911494: Downloading lecture JSON
[udemy] 31785142: Downloading m3u8 information
[debug] Formats sorted by: hasvid, ie_pref, lang, quality, res, fps, hdr:12(7), vcodec:vp9.2(10), channels, acodec, filesize, fs_approx, tbr, vbr, abr, asr, proto, vext, aext, hasaud, source, id
[debug] Default format spec: bestvideo*+bestaudio/best
[info] 31785142: Downloading 1 format(s): hls-679
[debug] Invoking hlsnative downloader on "https://www.udemy.com/assets/31785142/files/2021-03-01_02-10-51-8509acc50465e9867f2ef7a5de2fb915/2/hls/AVC_1920x1080_800k_AAC-HE_64k/aa009672697768d8d75bdc017ce2a4abf146.m3u8?provider=cloudfront&token=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJwYXRoIjoiMjAyMS0wMy0wMV8wMi0xMC01MS04NTA5YWNjNTA0NjVlOTg2N2YyZWY3YTVkZTJmYjkxNS8yLyIsImV4cCI6MTY2OTY2NjkzNn0.zInKHiR4-UfJZp0lQZ8UpYZfgpLnXDgb-zk8Ok4-EZU&v=1"
[download] /Users/dmytrotronko/Documents/UDEMY/3792262/1 - Course Orientation/What The Course Covers.mp4 has already been downloaded
[download] 100% of   16.89MiB
[download] Downloading item 3 of 187
[debug] [udemy] Extracting URL: https://www.udemy.com/git-and-github-bootcamp/learn/v4/t/lecture/25185344
[udemy] 25185344: Downloading webpage
[udemy] 25185344: Downloading lecture JSON
[udemy] 31785130: Downloading m3u8 information
[debug] Formats sorted by: hasvid, ie_pref, lang, quality, res, fps, hdr:12(7), vcodec:vp9.2(10), channels, acodec, filesize, fs_approx, tbr, vbr, abr, asr, proto, vext, aext, hasaud, source, id
[debug] Default format spec: bestvideo*+bestaudio/best
[info] 31785130: Downloading 1 format(s): hls-1576
[debug] Invoking hlsnative downloader on "https://www.udemy.com/assets/31785130/files/2021-03-01_02-09-36-dee633c29f7d2f340f1bdd227aedc29b/2/hls/AVC_1920x1080_3200k_AAC-HE_64k/aa0032f7cd7997f526453c51a483e6c8bdf9.m3u8?provider=cloudfront&token=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJwYXRoIjoiMjAyMS0wMy0wMV8wMi0wOS0zNi1kZWU2MzNjMjlmN2QyZjM0MGYxYmRkMjI3YWVkYzI5Yi8yLyIsImV4cCI6MTY2OTY2NjkzN30.MDM5AlA9sgnx4pcLKIHXFzNUAs9kNkAI9lkEAtMvNEg&v=1"
[download] /Users/dmytrotronko/Documents/UDEMY/3792262/1 - Course Orientation/A Note On The Exercises.mp4 has already been downloaded
[download] 100% of   22.28MiB
[download] Downloading item 4 of 187
[debug] [udemy] Extracting URL: https://www.udemy.com/git-and-github-bootcamp/learn/v4/t/lecture/24911504
[udemy] 24911504: Downloading webpage
[udemy] 24911504: Downloading lecture JSON
ERROR: [udemy] 31785132: No video formats found!; please report this issue on  https://github.com/yt-dlp/yt-dlp/issues?q= , filling out the appropriate issue template. Confirm you are on the latest version using  yt-dlp -U
Traceback (most recent call last):
  File "/Users/dmytrotronko/Documents/UDEMY/main/yt-dlp/yt_dlp/YoutubeDL.py", line 1495, in wrapper
    return func(self, *args, **kwargs)
  File "/Users/dmytrotronko/Documents/UDEMY/main/yt-dlp/yt_dlp/YoutubeDL.py", line 1898, in __process_iterable_entry
    return self.process_ie_result(
  File "/Users/dmytrotronko/Documents/UDEMY/main/yt-dlp/yt_dlp/YoutubeDL.py", line 1704, in process_ie_result
    return self.process_ie_result(
  File "/Users/dmytrotronko/Documents/UDEMY/main/yt-dlp/yt_dlp/YoutubeDL.py", line 1651, in process_ie_result
    ie_result = self.process_video_result(ie_result, download=download)
  File "/Users/dmytrotronko/Documents/UDEMY/main/yt-dlp/yt_dlp/YoutubeDL.py", line 2600, in process_video_result
    self.raise_no_formats(info_dict)
  File "/Users/dmytrotronko/Documents/UDEMY/main/yt-dlp/yt_dlp/YoutubeDL.py", line 1036, in raise_no_formats
    raise ExtractorError(msg, video_id=info['id'], ie=info['extractor'],
yt_dlp.utils.ExtractorError: [udemy] 31785132: No video formats found!; please report this issue on  https://github.com/yt-dlp/yt-dlp/issues?q= , filling out the appropriate issue template. Confirm you are on the latest version using  yt-dlp -U

[download] Downloading item 5 of 187
[debug] [udemy] Extracting URL: https://www.udemy.com/git-and-github-bootcamp/learn/v4/t/lecture/24911508
[udemy] 24911508: Downloading webpage
[udemy] 24911508: Downloading lecture JSON
ERROR: [udemy] 31691588: No video formats found!; please report this issue on  https://github.com/yt-dlp/yt-dlp/issues?q= , filling out the appropriate issue template. Confirm you are on the latest version using  yt-dlp -U
Traceback (most recent call last):
  File "/Users/dmytrotronko/Documents/UDEMY/main/yt-dlp/yt_dlp/YoutubeDL.py", line 1495, in wrapper
    return func(self, *args, **kwargs)
  File "/Users/dmytrotronko/Documents/UDEMY/main/yt-dlp/yt_dlp/YoutubeDL.py", line 1898, in __process_iterable_entry
    return self.process_ie_result(
  File "/Users/dmytrotronko/Documents/UDEMY/main/yt-dlp/yt_dlp/YoutubeDL.py", line 1704, in process_ie_result
    return self.process_ie_result(
  File "/Users/dmytrotronko/Documents/UDEMY/main/yt-dlp/yt_dlp/YoutubeDL.py", line 1651, in process_ie_result
    ie_result = self.process_video_result(ie_result, download=download)
  File "/Users/dmytrotronko/Documents/UDEMY/main/yt-dlp/yt_dlp/YoutubeDL.py", line 2600, in process_video_result
    self.raise_no_formats(info_dict)
  File "/Users/dmytrotronko/Documents/UDEMY/main/yt-dlp/yt_dlp/YoutubeDL.py", line 1036, in raise_no_formats
    raise ExtractorError(msg, video_id=info['id'], ie=info['extractor'],
yt_dlp.utils.ExtractorError: [udemy] 31691588: No video formats found!; please report this issue on  https://github.com/yt-dlp/yt-dlp/issues?q= , filling out the appropriate issue template. Confirm you are on the latest version using  yt-dlp -U

Are you willing to share account details if a dev wants to look into this?
Related: #5647, #3626, https://github.com/ytdl-org/youtube-dl/issues/29925
Possibly caused by DRM?

I think so))
Need to evolve for the benefit of the community)
How do I get in touch with the developer?

some news?

You can send me the details: discord (pukkandan#4207) / reddit (/u/pukkandan) / email<EMAIL_ADDRESS>

You can send me the details: discord (pukkandan#4207) / reddit (/u/pukkandan) / email<EMAIL_ADDRESS>
I send it

Some courses have DRM, but non-DRM courses were also broken. I've fixed the latter and added proper error message for DRM
Make sure to change your password


[FEATURE] About Section ui

Is your feature request related to a problem? Please describe.
The About section looks very basic
Describe the solution you'd like
To enhance the UI of the About section

It's great having you contribute to this project Welcome to the community :nerd_face:  You should join our Discord chat - we help and encourage each other to contribute to open source little and often


bolthold.Get does not populate ID field with boltholdKey tag

I may be misunderstanding the documentation for boltholdKey, but the following example demonstrates my confusion. When using a uint64 id field with the boltholdKey struct tag, the id field is not populated when using bolthold.Get
package main

import (
    "os"
    "testing"

    "github.com/timshannon/bolthold"
)

type User struct {
    ID   uint64 `json:"id" boltholdKey:"id"`
    User string `json:"user"`
}

func TestInsertGet(t *testing.T) {
    os.Remove("test.db")

    db, err := bolthold.Open("test.db", 0600, nil)
    if err != nil {
        t.Fatalf("%+v\n", err)
    }

    u1 := User{
        User: "john.doe",
    }

    err = db.Insert(bolthold.NextSequence(), &u1)
    if err != nil {
        t.Fatalf("%+v\n", err)
    }
    t.Logf("u1: %+v\n", u1)

    var u2 User
    err = db.Get(u1.ID, &u2)
    if err != nil {
        t.Fatalf("%+v\n", err)
    }
    t.Logf("u2: %+v\n", u2)
}

This produces the following output:
=== RUN   TestInsertGet
--- PASS: TestInsertGet (0.00s)
    main_test.go:32: u1: {ID:1 User:john.doe}
    main_test.go:39: u2: {ID:0 User:john.doe}
PASS
ok      github.com/bemasher/bolthold    0.282s

Why is the ID field on u2 not being populated by db.Get?

Yeah looks like it only gets set during Find.  I bet my thinking was that if they are getting by Key, they already know it, so why set it, but it definitely feels like inconsistent behavior.
I'll fix it.  Thanks,

This should be good on the master branch now.  Open up a new issue if your run into any problems.
Thanks,


MQTT Connector Enhancement - Prefix auto generated Client ID to prevent connection drops

We should not use the same client_id for both, because that way mqtt server drops the connection from the older client. When id is not passed, it is randomly generated.
We should prefix auto generated identifier to client_id to prevent connection drop.
MQTT connectors config: only one of them will work, another will be in failed state:
Config Files:
apiVersion: 0.1.0
meta:
  version: 0.2.1
  name: helsinki-bus-filter
  type: mqtt-source
  topic: helsinki
  direction: source
  create-topic: false
mqtt:
  url: "mqtt://mqtt.hsl.fi"
  topic: "/hfp/v2/journey/ongoing/vp/+/+/+/#"
  client_id: "my_mqtt"
  timeout:
    secs: 30
    nanos: 0
  payload_output_type: json
transforms:
  - uses<EMAIL_ADDRESS>    with:
      spec:
        - operation: shift
          spec:
            payload:
              VP:
                lat: "lat"
                long: "long"
                veh: "vehicle"
                route: "route"
                spd: "speed"
                tst: "tst"

and
apiVersion: 0.1.0
meta:
  version: 0.2.1
  name: helsinki-bus
  type: mqtt-source
  topic: helsinki
  direction: source
  create-topic: true
mqtt:
  url: "mqtt://mqtt.hsl.fi"
  topic: "/hfp/v2/journey/ongoing/vp/+/+/+/#"
  client_id: "my_mqtt"
  timeout:
    secs: 30
    nanos: 0
  payload_output_type: json

Slack Thread: https://infinyon.slack.com/archives/C02K46SASEB/p1686077827231349?thread_ts=1686050845.118829&cid=C02K46SASEB

this behavior should also be doc in the mqtt connector

Updated documentation to remove client_id occurrences, so user do not use it to repeat configuration. For prefix auto-generated client id, we should create a new parameter if needed

add a fluvio issue to guide oss help

Notes for implementors:

In config.rs client_id might need to change to an option type and a new optional [client_id_prefix] should be added.
defining both client_id and client_id_prefix should be an error.  (we could change client_id to an enum type to express this)

There are several cases to consider:

client_id not provided -> autogenerate a client id string for connection to mqtt server
client_id provided -> use literal client_id string for connection
client_id_prefix provided -> autogenerate id and prepend client_id_prefix string to the id


[release-1.14] use protobuf getter functions for nil-safe in tracing provider config

Fixes https://github.com/istio/istio/issues/40907

@ingwonsong: The following test failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name
Commit
Details
Required
Rerun command

release-notes_istio_release-1.14
1f8f9d5d155699faa421bdee7e1576df9d0c6c4a
link
true
/test release-notes

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@ingwonsong: The following tests failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name
Commit
Details
Required
Rerun command

release-notes_istio_release-1.14
1f8f9d5d155699faa421bdee7e1576df9d0c6c4a
link
true
/test release-notes

unit-tests_istio_release-1.14
1f8f9d5d155699faa421bdee7e1576df9d0c6c4a
link
true
/test unit-tests

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

/retest


TurboModule > Make MethodInvoker a std::function

Summary:
Changelog: [Internal]
The current C style invoker does not allow capturing additional values which is beneficial when dynamically creating Turbo Module methods.
Differential Revision: D52760715

Closing as abandoned internally


NPE when Post request param value

IMPORTANT: If you have a general question please use Stack Overflow instead where Karate has a dedicated "tag": https://stackoverflow.com/questions/tagged/karate
If you are sure you have found a bug, please make sure you follow the instructions here: https://github.com/intuit/karate/wiki/How-to-Submit-an-Issue
Hello,
I have a post request created in the Postamn
curl --location --request POST 'xxxxxx' \
--header 'Authorization: Basic c2ViYXN0aWFuLnNlbHRtYW5uQGRiLmNvbV9PTVNfMzU2MDUtMV9lcmVnX1BST0RVQ1RJT046NzUxOTE0ZmUtYjc0Ny00NzVkLTlmYTAtMTA5NTJlNWI1NmQw' \
--header 'Content-Type: application/x-www-form-urlencoded' \
--data-urlencode 'grant_type=client_credentials'
but when I created the feature file in Karate throws NPE.
@notworking
Scenario: get Glue Token
* configure ssl = { trustAll: true }
* configure ssl = true
* configure logPrettyResponse = true
* configure proxy = 'xxxxxx'
Given url baseUrl_GLUE
* def helperClass = Java.type('Helpers.Helpers')
* def basicAuth = helperClass.getAuth('user', 'pass')
* print basicAuth
And header Authorization = 'Basic ' + basicAuth
And header Content-Type = 'multipart/form-data; charset=utf-8'
And param grant_type = 'client_credentials'
And method post
Then status 200
And print 'Response is: ', response

And match response == body
And match responseType == 'json'
11:24:52.190 java.lang.NullPointerException, http call failed after 79 milliseconds for url: xxxxx 11:24:52.190 classpath:Features/API/auth.feature:24 And method post http call failed after 79 milliseconds for url: xxxxx?grant_type=client_credentials classpath:Features/API/auth.feature:24
Thanks

@Anda77 please follow this process to reopen: https://github.com/karatelabs/karate/wiki/How-to-Submit-an-Issue

Please update the project sample.
https://github.com/ptrthomas/expiresBug.
thanks

@Anda77 I updated the instructions, since that project is outdated. please assume that it never existed

Hi Peter,
How can debug your code?
I download jar file but the stack trace is missing.
Thanks

@Anda77 see if this helps: https://github.com/karatelabs/karate/wiki/Developer-Guide
unfortunately there is nothing else.

You can help to change the code but you need to discuss.
Thanks
Sent from Yahoo Mail on Android
On Sat, 12 Mar 2022 at 5:38, Peter @.***> wrote:
@Anda77 see if this helps: https://github.com/karatelabs/karate/wiki/Developer-Guide
unfortunately there is nothing else.
—
Reply to this email directly, view it on GitHub, or unsubscribe.
Triage notifications on the go with GitHub Mobile for iOS or Android.
You are receiving this because you were mentioned.Message ID: @.***>


iam policy alignment based on aws-load-balancer-controller version 2.7.0

Description

bump default version of the helm chart to 1.7.0 (application image v2.7.0)
update IAM policy document according to official docs (requirement in v2.7.0)

Type of change

[ ] A bug fix (PR prefix fix)
[x] A new feature (PR prefix feat)
[ ] A code change that neither fixes a bug nor adds a feature (PR prefix refactor)
[ ] Adding missing tests or correcting existing tests (PR prefix test)
[ ] Changes that do not affect the meaning of the code like white-spaces, formatting, missing semi-colons, etc. (PR prefix style)
[ ] Changes to our CI configuration files and scripts (PR prefix ci)
[ ] Documentation only changes (PR prefix docs)

How Has This Been Tested?
deployment of the controller + deployment of testing app

Given that both of these rules (CKV_TF_1, CKV_AWS_356) were established after the last commit made to this repository, my suggestion is to disregard these new rules in order to maintain its current appearance.
What do you think?

I've aligned the entire module with our new and updated standards as it was quite outdated, so the checks are now passing fine. LGTM 👍


Added a section regarding how to use the theme() helper function to the docs

I thought it would be a good idea to do this since some people (#14 ) couldn't figure out how to use the theme() helper function, and stuff like this should be documented anyways.

Thanks!


Try to execute the binary in the "is binary download needed?" check

Currently, we only check if a binary file exists before downloading it.
However, if a binary for incorrect OS exists (https://github.com/prisma/vscode/issues/251 https://github.com/prisma/vscode/issues/248), we don't attempt to download a fresh binary, and this fails later while using features like lint, format etc.
We can improve this download test by trying to execute (version command) the binary, and if the execution fails, we can re-attempt a download.

There is no version command for the prisma-fmt binary though afaik.

All binaries should have a version flag:
divyendusingh [p2-introspect]$ ./ie-darwin --version                                                                                130 ↵
introspection-core 845b52c148128544b1d41956f45d63a276c3dc7b

If that is not the case, we can create an issue in prisma repo for it.


Inconsistent behaviour between Chat window and inline chat (Ctrl+i)

VS Code Version:1.83.1
OS Version:Windows_NT x64 10.0.22621
Logs:
2023-10-27T13:01:22.312Z [INFO] [auth] Logged in as davihern
2023-10-27T13:01:22.815Z [INFO] [chat] copilot token chat_enabled: true
2023-10-27T13:01:23.315Z [INFO] [auth] Got Copilot token for davihern
2023-10-27T13:02:44.247Z [INFO] [chat fetch] engine https://api.githubcopilot.com/chat
2023-10-27T13:02:44.247Z [INFO] [chat fetch] modelMaxTokenWindow 4096
2023-10-27T13:02:44.247Z [INFO] [chat fetch] chat model copilot-chat
2023-10-27T13:02:45.893Z [INFO] [chat fetch] request.response: [https://api.githubcopilot.com/chat/completions], took 1646 ms
2023-10-27T13:02:49.036Z [INFO] [streamMessages] message 0 returned. finish reason: [stop]
2023-10-27T13:02:49.053Z [INFO] [streamChoices] request done: headerRequestId: [60b768e2-2b2a-4d47-8b7a-74ffe843f0cc] model deployment ID: [y31dbc412c159]
2023-10-27T13:02:49.081Z [INFO] [editGeneration] Diff metrics: {
"diffToEntireScore": {
"equalCharCount": 0,
"originalCharCount": 526,
"modifiedCharCount": 78,
"originalCharRatio": 0,
"modifiedCharRatio": 0
},
"diffToRangeScore": {
"equalCharCount": 0,
"originalCharCount": 526,
"modifiedCharCount": 78,
"originalCharRatio": 0,
"modifiedCharRatio": 0
}
}
2023-10-27T13:02:49.081Z [INFO] [editGeneration] (case 8) Prepending to selected code
2023-10-27T13:02:56.326Z [INFO] [chat fetch] engine https://api.githubcopilot.com/chat
2023-10-27T13:02:56.327Z [INFO] [chat fetch] modelMaxTokenWindow 4096
2023-10-27T13:02:56.327Z [INFO] [chat fetch] chat model copilot-chat
2023-10-27T13:02:57.656Z [INFO] [chat fetch] request.response: [https://api.githubcopilot.com/chat/completions], took 1329 ms
2023-10-27T13:02:59.799Z [INFO] [streamMessages] message 0 returned. finish reason: [stop]
2023-10-27T13:02:59.801Z [INFO] [streamChoices] request done: headerRequestId: [485b3b80-5b5c-4290-b7d4-44ef308757b7] model deployment ID: [y31dbc412c159]
2023-10-27T13:02:59.815Z [INFO] [chat fetch] engine https://api.githubcopilot.com/chat
2023-10-27T13:02:59.815Z [INFO] [chat fetch] modelMaxTokenWindow 4096
2023-10-27T13:02:59.815Z [INFO] [chat fetch] chat model copilot-chat
2023-10-27T13:03:00.178Z [INFO] [chat fetch] request.response: [https://api.githubcopilot.com/chat/completions], took 361 ms
2023-10-27T13:03:00.179Z [INFO] [streamMessages] message 0 returned. finish reason: [stop]
2023-10-27T13:03:00.180Z [INFO] [streamChoices] request done: headerRequestId: [fa061e8d-9594-4d1d-8061-2bd2b6f2c620] model deployment ID: [y31dbc412c159]

Steps to Reproduce:
The options in show in GH Copilot Chat window and inline chat are different.
Are those two methods be aligned? otherwise it causes confusion.
__
Inline chat screenshot, after typing /

Chat window, after typing /

Also the result of the same prompt written in Chat window and inline window differs in result
Inline chat with prompt /doc

Chat window with prompy /doc

Work started on aligning those, but there is more to be done.

This should be better with the latest version of VS Code Insiders and latest pre-release of Copilot Chat extension.
If no, can you provide reproducible steps. Until then I will go ahead and close this issue.
Thank you for your understanding


Better TESTINOMIAL

Make a better testinomial cards with beter desgins.

can you please refer which page you're mentioning


创建镜像成功后窗口一直没有关闭

In GitLab by @luotian-github on Sep 9, 2019, 17:46
add systeminfo for processor arch AK

In GitLab by @luotian-github on Nov 8, 2019, 08:06
Please check this issue

In GitLab by @sokril on Nov 8, 2019, 08:06
This work of building image is failed, but the finish flag is success in the end. And then UI will wait for response about pushing images in back-end which will never happen. so the window is not closed. And please wangkun fix it.

In GitLab by @liyanq528 on Nov 8, 2019, 08:06
pr !2211

In GitLab by @cuiaq123 on Nov 8, 2019, 08:06
现在是这种效果。后台还需继续修改。

In GitLab by @sokril on Nov 8, 2019, 08:34
assigned to @luotian-github

In GitLab by @luotian-github on Dec 20, 2019, 06:38
fixed , closed

In GitLab by @luotian-github on Dec 20, 2019, 06:38
closed


Update error message to accommodate OCI: "Registry may not support Image Manifest Version 2, Schema 2"

Registry may not support Image Manifest Version 2, Schema 2
at com.google.cloud.tools.jib.registry.RegistryErrorExceptionBuilder.build(RegistryErrorExceptionBuilder.java:108)
	at com.google.cloud.tools.jib.registry.ManifestPusher.handleHttpResponseException(ManifestPusher.java:119)
	at com.google.cloud.tools.jib.registry.ManifestPusher.handleHttpResponseException(ManifestPusher.java:39)
	at com.google.cloud.tools.jib.registry.RegistryEndpointCaller.call(RegistryEndpointCaller.java:258)
	at com.google.cloud.tools.jib.registry.RegistryEndpointCaller.fallBackToHttp(RegistryEndpointCaller.java:210)
	at com.google.cloud.tools.jib.registry.RegistryEndpointCaller.callWithAllowInsecureRegistryHandling(RegistryEndpointCaller.java:180)
	at com.google.cloud.tools.jib.registry.RegistryEndpointCaller.call(RegistryEndpointCaller.java:161)
	at com.google.cloud.tools.jib.registry.RegistryClient.callRegistryEndpoint(RegistryClient.java:356)
	at com.google.cloud.tools.jib.registry.RegistryClient.pushManifest(RegistryClient.java:225)
	at com.google.cloud.tools.jib.builder.steps.PushImageStep.lambda$afterAllPushed$0(PushImageStep.java:162)
	at com.google.common.util.concurrent.TrustedListenableFutureTask$TrustedFutureInterruptibleTask.runInterruptibly(TrustedListenableFutureTask.java:125)
	at com.google.common.util.concurrent.InterruptibleTask.run(InterruptibleTask.java:57)
	at com.google.common.util.concurrent.TrustedListenableFutureTask.run(TrustedListenableFutureTask.java:78)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
	at java.lang.Thread.run(Thread.java:748)
Caused by: com.google.api.client.http.HttpResponseException: 400 Bad Request
{"errors":[{"code":"MANIFEST_INVALID","message":"manifest invalid","detail":{}}]}

	at com.google.api.client.http.HttpRequest.execute(HttpRequest.java:1102)
	at com.google.cloud.tools.jib.http.Connection.send(Connection.java:200)
	at com.google.cloud.tools.jib.registry.RegistryEndpointCaller.call(RegistryEndpointCaller.java:251)
	... 12 more

What registry are you trying to build to?

Probably a duplicate of #601?

maven jib-maven-plugin version 1.1.1  format OCI

Registry may not support Image Manifest Version 2, Schema 2

format OCI

Perhaps you are a bit confused between the OCI manifest and the Docker Manifest V2.2.
The OCI manifest is of media type application/vnd.oci.image.manifest.v1+json, while the Docker Image Manifest Version 2, Schema 2 is of type application/vnd.docker.distribution.manifest.v2+json.
So, it could be simply that the registry does not support OCI.
What registry are you trying to build to? (For example, Docker Hub, Quay, private Harbor, etc.)

private Harbor  registry   v1.7.4
Harbor  registry does not support OCI.
format  Docker    BUILD SUCCESS

I can push to Harbor registry v1.7.4 by manual  (format OCI)   and running  docker image
but can't  push  by maven jib-maven-plugin version 1.1.1 format OCI

Harbor registry does not support OCI.

If Harbor does not support OCI, you probably shouldn't have <format>OCI</format> in the Jib configuration.

I can push to Harbor registry v1.7.4 by manual (format OCI) and running docker image

Whatever manual methods or tools you use, my guess is that the initial OCI manifest is converted to Docker manifest at some point before the image is pushed to Harbor. I guess Harbor will just return INVALID_MANIFEST if gets an OCI manifest.
So, if you want to make Jib push to Harbor that doesn't support OCI, I think you should remove <format>OCI. We don't intend to automatically creating a Docker manifest when <format>OCI is specified and the registry doesn't accept it.

I had the same with Quay.io. It supports Docker, but not OCI format. When I have format = 'OCI' in build.gradle and try to build using gradle jib, I get the misleading message Registry may not support Image Manifest Version 2, Schema 2. With format = 'Docker' everything works fine after you are whitelisted by Quay for V2.2 support.
Can we make the error message more useful like Registry may not support Image Manifest Version 2, Schema 2 or container image format ${format}?

Ah, "Registry may not support Image Manifest Version 2, Schema 2" was a message coming from Jib. Yeah, the error message is misleading when format = 'OCI'. We need to improve the message.

Reopening, to track updating the misleading error message in the case of OCI push.

I get this regardless of specifying the format.
support pushing OCI Manifest or Docker Image Manifest Version 2
I'm using gradle.
....
       tags = [inputTag, 'latest']
    }
    container {
        creationTime = 'USE_CURRENT_TIMESTAMP'
        format = 'Docker'
    }

@Schachte probably the root cause is irrelevant of the format but that your registry refuses to accept a valid manifest for some reason. There can be multiple different reasons, but here's one: #3215
What's the response you get from your registry? Providing --stacktrace will give you more details. (--debug also works, but it may output too much detail.)


Changing scenes with viewport cause DOM appendings

Look at this small demo. There are:

black movable character;
green grass, on which the character moves;
red buildings, visiting which will cause another scene enter (scene with bigger viewport)

On this another scene there is only one button, clicking on it = returning again to main game scene. Try to do this manipulations a few times. Then inspect DOM, you can find the container element (this is my main stage element), and a couple of divs inside it. Is it okay if entering a new scene will cause a new div to be append to main container?
May be I do something wrong?

Is it okay if entering a new scene will cause a new div to be append to main container?

In the standard use case, you don't need to call viewport.init() directly.  It's handled by the original call to Crafty.init().  This is what was creating the extra divs.
I think the viewport docs should definitely mention this issue, though!


Can't access successfully created context

I want to create a kubectl context within my docker container.
This fails, although kubectl responds that "Context "kubernetes-admin" created.":
$ kubectl config --kubeconfig=SenecaMeshBase/kubernetes/access/config set-context kubernetes-admin
Context "kubernetes-admin" created.
$ kubectl config get-contexts
CURRENT   NAME   CLUSTER   AUTHINFO   NAMESPACE
$ kubectl config use-context kubernetes-admin
error: no context exists with the name: "kubernetes-admin".
ERROR: Job failed: error executing remote command: command terminated with non-zero exit code: Error executing in Docker Container: 1

How can this be the case?
Thanks a lot :)

@tech509201941 I've figured it out :P
Remove the = from --kubeconfig=

/close

make sure that kubernetes has a kubeconfig configured. i had the same error, it was resolved when i added this line to my bashrc file: export  KUBECONFIG=$KUBECONFIG:~/.kube/config