unable to play swann camera feed through go2rtc, but works directly

Camera:  SWANN NHD-900DE (V<IP_ADDRESS>_2111119)
omxplayer : version f543a0d - pi3, running dietpi
  204.med: rtsp://<IP_ADDRESS>/ch01/1
  204.low: rtsp://<IP_ADDRESS>/ch01/2

NOTE: other players (desktop/web/frigate/etc) are all working fine playing the cameras through go2rtc. OMXplayer on the pi, is not, but only for the higher resolution feeds.
playing through go2rtc:
/usr/bin/omxplayer.bin --video_fifo 2 --video_queue 10 --live --timeout 60 --aidx -1 --win '0 0 1920 1080' --dbus_name org.mpris.MediaPlayer2.screen1_cam_stream1 -o hdmi --threshold 0 -I rtsp://<IP_ADDRESS>:8554/204.med

Input #0, rtsp, from 'rtsp://<IP_ADDRESS>:8554/204.med':
  Metadata:
    title           : go2rtc/1.6.2
  Duration: N/A, start: 0.933000, bitrate: N/A
    Stream #0:0: Video: h264 (High), yuv420p(progressive), 1920x1080, 15 fps, 15 tbr, 90k tbn, 30 tbc
Subtitle count: 0, state: off, index: 1, delay: 0

playing directly:
/usr/bin/omxplayer.bin --video_fifo 2 --video_queue 10 --live --timeout 60 --aidx -1 --win '0 0 1920 1080' --dbus_name org.mpris.MediaPlayer2.screen1_cam_stream1 -o hdmi --threshold 0 -I rtsp://<IP_ADDRESS>:554/ch01/1

Input #0, rtsp, from 'rtsp://<IP_ADDRESS>:554/ch01/1':
  Duration: N/A, start: 0.000000, bitrate: N/A
    Stream #0:0: Video: h264 (High), yuv420p(progressive), 1920x1080, 15 fps, 15 tbr, 90k tbn, 30 tbc
    Stream #0:1: Audio: pcm_alaw, 8000 Hz, 1 channels, s16, 64 kb/s
Video codec omx-h264 width 1920 height 1080 profile 100 fps 15.000000
Subtitle count: 0, state: off, index: 1, delay: 0
V:PortSettingsChanged<EMAIL_ADDRESS>interlace:0 deinterlace:0 anaglyph:0 par:1.00 display:0 layer:0 alpha:255 aspectMode:0

I suspect it's tripping over the audio somehow, since when it fails, that never loads.

I love finding the solution to my own problem :)
#backchannel=0

Added to the URL, allows OMXplayer to fire up just fine.
Is there a way to disable 2-way audio in go2rtc, on a source/by/source basis?

Don't understand what you want. You can disable two way audio for RTSP source using backchannel param.

Don't understand what you want. You can disable two way audio for RTSP source using backchannel param.

I'd like to disable it in the go2rtc "source" config, so that each downstream client doesn't have to add the #backchannel parameter.

Go2rtc doesn't has global setting for this

I don't understand you. Backchannel param used for rtsp source.

I don't understand you. Backchannel param used for rtsp source.

ok, so here's my config for one of those cameras:
streams:
  201.hi: ffmpeg:rtsp://<IP_ADDRESS>/ch01/0#input=rtsp/udp
  201.med: rtsp://<IP_ADDRESS>/ch01/1
  201.low: rtsp://<IP_ADDRESS>/ch01/2

You're saying I should add the #backchannel=0 to the stream, and I not have to add it to the downstream devices?
like
streams:
  201.hi: ffmpeg:rtsp://<IP_ADDRESS>/ch01/0#input=rtsp/udp#backchannel=0
  201.med: rtsp://<IP_ADDRESS>/ch01/1#backchannel=0
  201.low: rtsp://<IP_ADDRESS>/ch01/2#backchannel=0

And that does the same thing?

Backchannel param works only for rtsp source. No need to add it to ffmpeg source.

Backchannel param can't be added to client. Don't understand what you mean.

Backchannel param can't be added to client. Don't understand what you mean.

We're obviously facing language barriers here, and I apologize for any confusion I'm causing.
CAMERA (aka Stream) : SWANN
GO2RTC SERVER : LINUX
CLIENT : Raspberry PI running OMXPLAYER
In order to overcome the function of the CAMERA/SERVER/CLIENT negotiating 2-way audio, additional paramenters must be added to the CLIENT request,  adding the "#backchannel=0" to the URL the CLIENT requests.
client asks for "rtsp://SERVER.IP:8554/stream#backchannel=0"
If the client does NOT add the "#backchannel=0" to the client request, the client never negotiates the audio stream successfully, and never starts playing.
That appears to be the ONLY way to stop the bug i initially reported where the CLIENT asks for a stream, but never gets one. There appears to be nothing on the SERVER side to stop this incorrect behavior, at this time. Given this appears to be a SERVER bug, I was hoping there was.

Update : Turns out ZERO audio is passing through go2rtc, even with the #backchannel=0  - works in VLC directly to camera, does not work via go2rtc.
FFPROBE DIRECT
Input #0, rtsp, from 'rtsp://<IP_ADDRESS>/ch01/1':
  Duration: N/A, start: 0.000000, bitrate: N/A
  Stream #0:0: Video: h264 (Main), yuv420p(progressive), 1920x1080, 15 fps, 15 tbr, 90k tbn
  Stream #0:1: Audio: pcm_alaw, 8000 Hz, mono, s16, 64 kb/s

FFPROBE via go2rtc:
[rtsp @ 0x7f87ce004100] method SETUP failed: 461 Unsupported transport
Input #0, rtsp, from 'rtsp://<IP_ADDRESS>:8554/201.med':
  Metadata:
    title           : go2rtc/1.6.2
  Duration: N/A, start: 0.066000, bitrate: N/A
  Stream #0:0: Video: h264 (Main), yuv420p(progressive), 1920x1080, 15 fps, 15 tbr, 90k tbn

even wrapping source in FFMPEG doesn't give audio
ffmpeg:rtsp://<IP_ADDRESS>/ch01/0#input=rtsp/udp#video=copy#audio=pcmu

[rtsp @ 0x7fd9f462b080] method SETUP failed: 461 Unsupported transport
Input #0, rtsp, from 'rtsp://<IP_ADDRESS>:8554/201.hi':
  Metadata:
    title           : go2rtc/1.6.2
  Duration: N/A, start: 0.067000, bitrate: N/A
  Stream #0:0: Video: h264 (Main), yuv420p(progressive), 3840x2160, 15 fps, 15 tbr, 90k tbn

This might be working:
ffmpeg:rtsp://<IP_ADDRESS>:554/ch01/1#audio=aac#video=copy

Don't understand if your problem solved or not.

Don't understand if your problem solved or not.

problem 1:
go2rtc fails to negotiate pcm_alaw auto with swann cameras - stream "hangs" or won't start.
Expected behavior : any error message?
Solution : wrap with ffmpeg as
ffmpeg:rtsp://CAMERA.IP/ch01/1#audio=aac#video=copy

problem 2:
omxplayer on raspberry pi fails to start stream when 2-way audio negotiation fails
Expected behavior : ability to disable 2-way audio at a STREAM level, on the server, would be preferred.
Solution : add command to CLIENT to tell server to not negotiate 2-way audio
 "rtsp://SERVER.IP:8554/stream#backchannel=0"

So yes, I'm able to work around both issues, but would expect/recommend patches/changes to solve server bugs.

I need trace logs for problem
I really don't understand where the #backchannel=0 parameter comes from here. Does omxplayer support it? Did you see it in the omxplayer documentation?

I really don't understand where the #backchannel=0 parameter comes from here. Does omxplayer support it? Did you see it in the omxplayer documentation?

Multiple places on this page : https://github.com/AlexxIT/go2rtc
and here : https://github.com/blakeblackshear/frigate/issues/6512
and here : https://github.com/blakeblackshear/frigate/issues/2515

I need trace logs for problem
Tell me how to enable/log what you need, and I'll do it today.

This param only works inside go2rtc config. It shouldn't work for other software like omxplayer

what format/type/options/etc tracelogs do you want? Please detail.

All trace logs from go2rtc during problem 1.

close issue - unable to successfully negotiate problem statement with developer.


Notebook Renderer communication with extension host

Apologies for filing an issue with a question, however this is related to the Native Notebook Proposed API..
How is the renderer supposed to communicate with the extension host.
In the Jupyter extension we've been using VSCodeApi.postMessage and window.addEventListener('message', this.baseHandler);
@rebornix @connor4312 @IanMatthewHuff /cc

I think the answer is simple, its here https://github.com/microsoft/vscode/issues/93265#issuecomment-832194434


Spatial audio not working with custom pan/gain custom implementation[BUG]

Describe the bug
I understand spatial audio is not supported in WEBGL build, out of box.
We have been suggested by Agora community to implement using Custom Pan/Gain calculations. We tried a lot but spatial audio not working, we spent more than 1 week , we are able to setup pan/gain to Agora audio tracker , send to photon, mapping is correct between Photon and Agora. No error logs but still this custom method of implementation not working
Here are the detailed steps
We have 2 scripts, GameManager.cs (singleton, attached to the main scene), and SpatialAudio.cs (attached to prefab, new instance created for each player)
In GameManager.cs:
In Start(), invoke InitEngine(), same as that in this blog
When player joins room, instantiate prefab
When player joins channel with userId = uid, store the uid in a hashtable synced with Photon as shown below:
hastable has = new hashtable();
hash.Add("AgoraID",uid.toString())
photonetwork.SetPlayerCustomProperties(hash)
In SpatialAudio.cs
Maintain a dictionary as follows:  static Dictionary<Player, SpatialAudio> spatialAudioFromPlayers = new Dictionary<Player, SpatialAudio>();
In Awake(), get the AudioEffectManager of our RtcEngine initialised in GameManager.cs into a variable agoraAudioEffects.
In Update(), called only for self players (PhotonView.IsMine==true ), we loop through all Players in PhotonNetwork.CurrentRoom . If Player is local, continue, else, try to get its agora Id from the hashtable created in GameManager.cs. If the agoraId exists, calculate its gain and pan using its transform values, and set these gain and pan values for the corresponding uid in the AudioEffectManager using its function SetRemoteVoicePosition
Expected behavior
spatial audio should work
Screenshots
none
Desktop (please complete the following information):

OS: mac os
Browser chrome
Version

Additional context
Add any other context about the problem here.

we are completely web  based platform. and Spatial audio is must have feature for us... looking forward for help from this community...
We have our own video platform built using Agora webSDK... so building our Metaverse escape room game also make sense to build using Agora.

https://www.youtube.com/watch?v=uM89bDIrmZ0 hello check this video
If you follow the steps in this video, it will also work on webgl.

Actually this is not supported right now.

We use this method in our own application and it still works.
https://vemaker.com/vem/v026/ you can check here.
Pay attention to the sound field on the floor. Talking avatars must be in the same sound field.

For me, i am using the latest SDK/Build.
And i believe SetRemoteVoicePosition is not available in WebSDK
@dorukhanmi
What SDK version are you using?

Check this doc,
https://docs.google.com/document/d/e/2PACX-1vSwUDoydPjdpCEFRS1UXZtUnKwrRifTvDxQHfyzerUNSs5U6YeWejLGys9GPQEmB6h6ax43VPFFVuG9/pub
it said the spatial sound is not supported

we are using latest sdk too but you dont need to use  SetRemoteVoicePosition. use this instead AdjustUserPlaybackSignalVolume (work 2d spatial sound not 3d)
Use that method(in the video) with this function like this
public AnimationCurve curve; // you can use unity curve for better adjust the distance of the sound
float dist = Vector3.Distance(transform.position, other.transform.position); // player position
float volume = curve.Evaluate(dist);
mRtcEngine.AdjustUserPlaybackSignalVolume(uint.Parse((string)agoraID), Mathf.RoundToInt(volume));

Yes, and then it's not the spatial sound, bcoz it has no 'pan' function

@adhawan18 , as indicated in the online README docs, Spatial Audio APIs are not supported in WebGL.  However, we will have new set of APIs coming soon for 3D spatial audio.  Please wait for announcement.  Probably in two releases later in the future.  For now, you may want to follow @dorukhanmi 's suggestion to do it your way.


Sync 2023a branch with changes from main branch

Sync 2023a branch with changes from main branch
Description
This contains cherry-pick from the main, following is list:

https://github.com/opendatahub-io/notebooks/commit/b6b346a3ad9fab970200e99345411bce6908cada
https://github.com/opendatahub-io/notebooks/commit/10933ddf9af8f5c72e912cec3f4e0493e3151350
https://github.com/opendatahub-io/notebooks/commit/17561d071dbe3bcad31dcfefa63d8b773e452dd5
https://github.com/opendatahub-io/notebooks/commit/0e6c7bec8529b73247a8e36a1d98428442ff76fe
https://github.com/opendatahub-io/notebooks/commit/ad4cf21917763a670e05d13ac4c6545544f194fe
https://github.com/opendatahub-io/notebooks/commit/6f108109c7a6fc02cf8e151495b25a6c5011b98c
https://github.com/opendatahub-io/notebooks/commit/8c0a7e526b648c622e0a660ee58d6adf270742e2
https://github.com/opendatahub-io/notebooks/commit/860c8279f5b3c0d966570649f8532501aed3bd18
https://github.com/opendatahub-io/notebooks/commit/70700f27a50547664b065d318379556424f2e408
https://github.com/opendatahub-io/notebooks/commit/6a6098de58c28f1b9d7d7014b1c86e819d0e0424
https://github.com/opendatahub-io/notebooks/commit/ae91983cacb189559d5a10087403a733fad9903d

How Has This Been Tested?

NA
Merge criteria:

[x] The commits are squashed in a cohesive manner and have meaningful messages.
[x] Testing instructions have been added in the PR body (for PRs involving changes that are not immediately obvious).
[x] The developer has manually tested the changes and verified that the changes work

Merging this in, to get the release 1.32 ready.
Thanks, please leave a comment or raise an issue, if have questions.


Feature/llm cache

Support LLM Cache

Add Cache as Optional Input for LLM Models - DONE
Cache Memory Implementations

In Memory Cache - DONE
Momento Cache - DONE
Redis - DONE
Uptash Redis - DONE

Add Cache as Optional Input for Chat Models - Pending

Thanks @HenryHengZJ !!!!

@vinodkiran thank you so much for all the changes!
Few thoughts: Can we extend the cache support to Chat model as well? Looking at the docs, the cache seems to also compatible with chat models. If it is doable, can we rename the category to just cache without the llm?

hmm something is not working correctly.. the cache is working fine, but if the question is not the same, the same cache answer is being used:

@vinodkiran thank you so much for all the changes!
Few thoughts: Can we extend the cache support to Chat model as well? Looking at the docs, the cache seems to also compatible with chat models. If it is doable, can we rename the category to just cache without the llm?

Yes, will add the feature, it was on the original 'todo' list anyway.

@vinodkiran thank you so much for all the changes!
Few thoughts: Can we extend the cache support to Chat model as well? Looking at the docs, the cache seems to also compatible with chat models. If it is doable, can we rename the category to just cache without the llm?

Makes sense! Will update the category name.

@HenryHengZJ  @vinodkiran  Thank you very much for implementing LLM cache. I managed to test it here and it works perfectly. But I have a question, what should I do when the AI caches a wrong answer?


add spec tests, minor lint changes

Added unit tests using Redhat 7 for facts.  Added package_ensure validation, removed empty string assignment, removed class inheritance.
Setting up travis-ci would be a plus for validating changes, let me know if you need/want help with that.

Hello,
Thank you so much for your hard work.
The only point that I don't understand is why you change the module structure (heritage). It is a best practice recommanded by PuppetLabs (https://docs.puppetlabs.com/guides/module_guides/bgtm.html) and I expect to conserve it in the future. Can you give me an explanation?
Another time, thank you!
Regards,

Hello,
Can you answer me?
I cannot merge your PR easily it would break my integration. Moreover this code architecture is mandatory, it is a convention within my company.
I would be please integrate your changes but I cannot as is.
Thanks in advance,


[Action]: AWS Check for Redundant Cloudtrails

Contact Details
No response
Action Name
AWS Check for Redundant Cloudtrails
Action Inputs
none
Action Outputs
list of redundant trails
Comments
Chat GPT
import boto3
Create a CloudTrail client
cloudtrail = boto3.client('cloudtrail')
Get a list of all CloudTrail trails in your account
response = cloudtrail.describe_trails()
trails = response['trailList']
Create a dictionary to store the regions of each trail
trail_regions = {}
Loop through each trail and record the region it was created in
for trail in trails:
trail_name = trail['Name']
trail_response = cloudtrail.describe_trail(trailName=trail_name)
trail_region = trail_response['Trail']['HomeRegion']
trail_regions[trail_name] = trail_region
Check for trails that have been configured in multiple regions
redundant_trails = []
for trail_name, trail_region in trail_regions.items():
for other_trail_name, other_trail_region in trail_regions.items():
if trail_name != other_trail_name and trail_region == other_trail_region:
redundant_trails.append(trail_name)
Print the list of redundant trails
if redundant_trails:
print("The following CloudTrail trails have been configured in multiple regions:")
for trail_name in redundant_trails:
print(trail_name)
else:
print("No redundant CloudTrail trails were found.")
Code of Conduct

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

This Action is already created.


Derive commonly required traits for Error

I only need PartialEq/Eq, but figured I'd add other commonly
required traits while I'm at it. I looked at the Rust core library and
just derived all traits that Option derives, so I don't think I forgot
anything important.

Thanks, @hannobraun.
@homunkulus r+

:pushpin: Commit ecf68c7 has been approved by japaric

:hourglass: Testing commit ecf68c7 with merge ecf68c7...

No problem, @japaric. Thank you for all your great work!

:sunny: Test successful - status-travis
Approved by: japaric
Pushing ecf68c75cdd88ca5e093b91c0cb807bb44ad5d3c to master...


Adding HP Public Cloud Service functionality to Ciborg

Please email<EMAIL_ADDRESS><EMAIL_ADDRESS>and<EMAIL_ADDRESS>if you have any questions about these code changes.

Closed as HP cloud is no longer a thing


Improve experience on a phone

One can pull up 3D view on a phone, but there is no way to move around.
At the very least there should be a notice alerting user about the missing functionality.

https://github.com/kartta-labs/kscope/pull/27 improves phone experience more; 1-finger drag to move, 2-finger drag to look around, now works both at street level and in birds eye view.

also tested on a pixelbook

There's still room for improvement of the 3D experience on mobile, but hopefully this is a usable minimal implementation, soI'm going to close this issue for now.  If there are any specific requests / suggestions for improvement, please open new issues for them.


Topics: Not possible to change the Topic name with Edit settings

Describe the bug (Actual behavior)
Not possible to change Topic name with editing Topic settings as the field is frozen
Expected behavior
Should be possible to change Topic name
Set up
https://www.kafka-ui.provectus.io/
Steps to Reproduce

Turn to Topics
Open already existing Topic
Select "Edit settings" from 3dot menu on right

Screenshots

It's a unique identificator and can't be changed.
Let's update the test cases.


Thaleia optimisations, Azeyma Radiant Flourish change, Nophica Matrons Breath change

still thinking about updating the rest of azeyma solar fans, but I dont have a log where it only hits 6 instead of 8 times at the moment

closing because trying to solve merge conflicts messed everything up


Dashboard A11y: Button - focus style

Bug Description
The buttons with the blue background in the dashboard are really hard to tell when they are focused. These include:

Create New Story (side nav)
Use Template (detail template view)

Expected Behaviour
Focus outline should be distinguishable.
These button styles are getting changed with the design system. Updating to the new designs will fix this.
Steps to Reproduce
Screenshots

Additional Context

Plugin Version:
Operating System:
Browser:

Do not alter or remove anything below. The following sections will be managed by moderators only.
Acceptance Criteria
Ensure the focus is distinguishable
Implementation Brief
Either update the button to fit the new design specs or adjust the existing button so the blue outline is distinguishable in the dashboard.

Verified in QA


⚠ Bofrost.at has degraded performance

In d523e27, Bofrost.at (https://www.bofrost.at) experienced degraded performance:

HTTP code: 200
Response time: 2137 ms

Resolved: Bofrost.at performance has improved in 96cac4f after 8 minutes.


added support to group by multiple key

https://github.com/a8m/angular-filter/issues/177

@a8m could you merge this?


[dataprotection] Bug fix - missing parameter when calling initialize-for-data-recovery

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

az dataprotection backup-instance restore initialize-for-data-recovery
General Guidelines

[x] Have you run azdev style <YOUR_EXT> locally? (pip install azdev required)
[x] Have you run python scripts/ci/test_index.py -q locally? (pip install wheel==0.30.0 required)
[x] My extension version conforms to the Extension version schema

For new extensions:

[ ] My extension description/summary conforms to the Extension Summary Guidelines.

About Extension Publish
There is a pipeline to automatically build, upload and publish extension wheels.
Once your pull request is merged into main branch, a new pull request will be created to update src/index.json automatically.
You only need to update the version information in file setup.py and historical information in file HISTORY.rst in your PR but do not modify src/index.json.

dataprotection


Get Gene pages working again

The API calls for filter come in as a dictionary, with the Artworks being inside hits rather than at the root of the array.
This PR will mean that we need to deploy another build of our current beta 2.3.5.

:+1:


Marketing Plan - research costs

Research how much it will cost to host the app for download, and how much it will cost to license it should the API ever go behind a paywall.

Done 11-29


maintainer needed: https://github.com/webpack/node-libs-browser

I'd like to volunteer to maintain https://github.com/webpack/node-libs-browser so that PRs get merged.

Thanks for your help, but this lib has been removed in webpack 5, so it's basically deprecated.

Ah ok, where are the browser versions of the core node libraries coming from now?
---- On Wed, 12 Jun 2019 22:10:05 +0100 Tobias Koppers<EMAIL_ADDRESS>wrote ----
Thanks for your help, but this lib has been removed in webpack 5, so it's basically deprecated.
—
You are receiving this because you authored the thread.
Reply to this email directly, https://github.com/webpack/webpack/issues/9262?email_source=notifications&email_token=AAG6I4DYSWEB6JNDFOMDDKLP2FQ23A5CNFSM4HXJFTVKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGODXRZ3CY#issuecomment-501456267, or https://github.com/notifications/unsubscribe-auth/AAG6I4DAYJO4WPH7DOXL6DLP2FQ23ANCNFSM4HXJFTVA.


make init failed.

make init failed.
git submodule update --init --recursive --progress
fatal: No url found for submodule path 'dependencies/Membox2.Scala' in .gitmodules
make: *** [Makefile:4: init] Error 128

There is no url for Membox2.Scala in .gitmodules. And the Membox2.Scala can't open in web page.

This issue occurred because the ownership of the Membox submodule was recently transferred (from a personal account to THU-DSP-LAB). I will fix this problem within a few hours. In the meantime, you can temporarily resolve it by updating the link to:
https://github.com/THU-DSP-LAB/Membox2.Scala.

My mistake. The submodule Membox2.scala was not used in the master branch and was mistakenly added earlier. I have now removed it in commit 95a592c. Thank you for catching that!


Remove unused lines of code around the color prop

There are a lot of lines of code around the color prop that are not used at all. Some comments in the code base suggest that it's in need for a refactor, but instead of changing everything at once I think we can start by just removing the unused lines. We can refactor the code later. :relaxed:

I think we can go ahead with merging this, although let's make a mental note of this PR since we might have to add back some of the utilities as our toolset expands.


Add support for T4950-IAQ with sensor child devices

Hello again!
I ended up getting a T4950-IAQ, which includes useful measurements like IAQ and CO₂ (likely eCO₂, but still). To access those measurements, the /query/sensors endpoint must be used. Since you had mentioned wanting to use child devices in the TODOs in your code, that's the direction I took.
In order to avoid unnecessary load on the thermostat and HE, this endpoint will only be queried after the user has clicked the new "Create Sensor Child Devices" button and at least one child device exists.
Here's sample output from the T4950-IAQ's sensors endpoint:
{
  "sensors": [
    {
      "name": "Thermostat",
      "temp": 71,
      "hum": 40,
      "iaq": 45.53,
      "co2": 582.12
    },
    {
      "name": "Space Temp",
      "temp": 71
    }
  ]
}

I took the opportunity to bring this driver more in line with first party ones by adding an "Enable descriptionText logging" option, which allows the user to disable recurring info-level logs.
As for the new VenstarSensor.groovy file used for the child devices, I wasn't sure how you wanted to structure any header comments, so I didn't add them. Please feel free to edit authorship-related stuff as you see fit. (The MIT license is a great choice, by the way, so I have no issues sticking with it.)
Thanks!

I appreciate the contribution. My only concern about this is that the T4950 is not a ColorTouch thermostat, it's an Explorer. Rather than exclude it on that trivial basis, my thought is renaming the drive to VenstarWiFi, with the hope that Venstar is leaning into enough consistency in their APIs across product families that we don't end up with exception spaghetti. Any thoughts on that?

Makes sense to me!
From what I'm seeing, Venstar APIs across devices seem to be mostly cross-compatible. We've already seen some of them being more finicky than others in #1. I think there may be another difference in how humidity setpoints are or are not reported, but that's pretty trivial as far as exceptions go.
I do have a T8850 that can be used for testing - it was sold to me as a T7900 on eBay; the back plate is from a T7900, but the thermostat itself isn't. The firmware appears to be very similar to other ColorTouch thermostats. It even has some of the humidification options in the settings UI, they're just grayed out.
How would you like to proceed?


Missing Documentation for configuring artifacts

Issue Summary:
Configure Artifacts are not fully documented.
Cloud Provider(s):

all

Environment:

any

Feature Area:

Halyard, Artifacts configuration

Description:
Configure Artifacts are not fully documented.  The documentation (https://www.spinnaker.io/setup/artifacts/) only documents:

Google Cloud Storage
GitHub
HTTP
Oracle Object

The other artifacts do not have documentation:

bitbucket
gitlab
helm
maven
s3
templates

Steps to Reproduce:

Navigate to https://www.spinnaker.io/setup/artifacts/

@maggieneterval Better to move it, which I've now done.


Long form config values not being applied

I have found that certain config variables (e.g. max_pull_requests_per_repository) do not get applied when run in repository mode. They do, however, work when using the short version - maxpr in this case.

We are currently revamping commandline args and config. Goals are

it should work as similarly as possible to dotnet utilities. We're going to use same CommandlineUtils library
it should have consistent naming and understandable output. So reporting when options or config settings are not read is useful?

You are using the config file? I assume that support for this file is important?

Command-line args are all different in version 0.6. Can you try with this version and get back to us?
If you have used options in a file, which ones? Config file support might come back in some form, but probably using names identical to the "long name" of command line args.

no longer an issue for me.


Added Copy to Clipboard Button for Operation Outputs

@penwoodjon
Pulled latest and I'm seeing this error when opening and closing details block after choosing an operation but not running it:
vendor.js:52490 Uncaught Error: Assertion Failed: calling set on destroyed object: <neon-tetra@component:integrations/cyberchef-1617159107976-block::ember554>.searchErrorMessage =
    at assert (vendor.js:52490)
    at set (vendor.js:31411)
    at Class.set (vendor.js:44281)
    at eval (eval at _evalConfigJS (neon-tetra.js:62045), <anonymous>:201:16)

Once I run the operation if I open and close the details block I still see this error:
neon-tetra.js:1563 Error: Assertion Failed: You attempted to update [object Object].recipeLink to "/#recipe=JSON_Beautify('%20%20%20%20',false)&input=eyJoZWxsbyI6IndvcmxkIn0", but it is being tracked by a tracking context, such as a template, computed property, or observer. In order to make sure the context updates properly, you must invalidate the property when updating it. You can mark the property as `@tracked`, or use `@ember/object#set` to do this.
    at assert (vendor.js:52490)
    at Object.set [as recipeLink] (vendor.js:47669)
    at Function.assign (<anonymous>)


Added updated handlebars to the karma loader.

Just updates the karma.conf.js to make it explicitly serve handlebars. Necessary for all external deps until we get a better automated solution, like a build process.

Merging this now since its a simple fix and solved the problem.


Looping AudioMediaPlayerWrapper Metadata Timeout Errors with Bluetooth

Question
I am filing this issue as a question because the error is ambiguous to me despite research. I would rather document this as a question and refile as a bug report later if needed. I followed the template for a bug report to best provide information, but I am wondering whether or not this issue is specific to Media3. I am filing because the observed behavior is concerning to me and is reproducible in both my app and the demo-session app.
Media3 Version
1.0.0-beta02
Devices that reproduce the issue

Emulated Pixel 2 running Android 12, API 32
Physical Pixel 4a running Android 12, API 32

Devices that do not reproduce the issue
None
Reproducible in the demo app?
Yes
Reproduction steps

Ensure Bluetooth is enabled on the device
Launch the demo-session app
Play any media file

Expected Result
The app syncs metadata successfully or fails definitely.
Actual result
The app generates an indefinite looping of metadata sync timeout errors, regardless of whether or not a Bluetooth device is connected. I have been able to reproduce with and without a Bluetooth device connected. I have not been able to reproduce with Bluetooth disabled. The following will repeat for as long as the media is playing:
2022-08-13 21:20:32.173 28661-28661/? E/AudioMediaPlayerWrapper: Timeout while waiting for metadata to sync for androidx.media3.demo.session
2022-08-13 21:20:32.174 28661-28661/? E/AudioMediaPlayerWrapper:   └ Current Metadata: { mediaId="currsong" title="Geisha" artist="The Kyoto Connection" album="Wake Up" duration=267650 trackPosition=1/1 image=null }
2022-08-13 21:20:32.174 28661-28661/? E/AudioMediaPlayerWrapper:   └ Current Playstate: PlaybackState {state=3, position=6827, buffered position=74866, speed=1.0, updated=504620259, actions=3670015, custom actions=[Action:mName='Disable shuffle mode, mIcon=2131230853, mExtras=Bundle[EMPTY_PARCEL]], active item id=1, error=null}
2022-08-13 21:20:32.175 28661-28661/? E/AudioMediaPlayerWrapper:   └ QueueItem(0): { mediaId="NowPlayingId0" title="Intro - The Way Of Waking Up (feat. Alan Watts)" artist="" album="" duration=0 trackPosition=1/13 image=null }

...

2022-08-13 21:20:32.175 28661-28661/? E/AudioMediaPlayerWrapper:   └ QueueItem(12): { mediaId="NowPlayingId12" title="Outro - Totally Here and Now (feat. Alan Watts)" artist="" album="" duration=0 trackPosition=13/13 image=null }

Media
Not applicable
Bug Report

[x] You will email the zip file produced by adb bugreport to<EMAIL_ADDRESS>after filing this issue.

@buggily I have tried playing media in the demo-session app both when BlueTooth is enabled and when it is enabled and connected to a device.
Media files are played successfully in both the cases without any errors.

@rohitjoins Thank you for the response. The proposed bug does not concern functional issues with playback, and I am able to facilitate playback through media3 as well. Rather, the prosed bug concerns the observed looping of Logcat errors originating from the MediaPlayerWrapper throughout metadata syncing. I am wondering whether or not the observed output could or should be addressed within the scope of media3.

@buggily Thanks for reporting this. It seems this is a known issue (internal reference b/223612058). I agree that this is within the scope of media3.


Invalid content /en/testnets/cardano/get-started/installing-and-running-the-cardano-node/building-the-node-using-nix/

Where does the issue occur?
Link to the file or location on the website where the issue occurs. Optionally add screenshots for context.
https://developers.cardano.org/en/testnets/cardano/get-started/installing-and-running-the-cardano-node/building-the-node-using-nix/
Describe the issue
A clear and concise description of what the issue is.
The link in "Supported Platforms" in the 2nd paragraph goes to a missing page https://developers.cardano.org/en/cardano/about/supported-platforms/. 404 error.
Expected changes
A clear and concise description of what you expected to change.
create missing page or fix link.
Additional context
Add any other context about the problem here.

Thank you for your feedback!

Thank you for your feedback!


PSI association issue: type attributable labels are missing types.

Discovered by type assertions.
The PSI element association includes various FIR elements, including a reference to the anonymous function. Note: this mis-mapping applies to all labels that may be type-attributed.
              fun foo(ints: List<Int>) {
                  ints.forEach {
                      if (it == 0) return@forEach
                      print(it)
                  }
              }

Note: This may be simpler using the IR. There isn't a PSI element associated with the FIR elements label field since the PSI on the label is the labeled element.
              fun foo(ints: List<Int>) {
                  ints.forEach {
                      if (it == 0) return@forEach // The PSI element on the FIR's label to `forEach` is the `forEach` a select of `ints`.
                      print(it)
                  }
              }


missing searches

The README claims that the ISRC is used first to match songs. Indeed, I see in the code for this repo the function is get_isrc_by_id. However, from looking at logs and at the source code, there are two problems:

The first step in match_with_subsonic_track is not to search my subsonic library for the ISRC of the Spotify track. It's actually to do a text search in my subsonic library for artist / track, then compare ISRCs of those results. This seems to yield a lot of missed tracks for my library, I'm guessing because the subsonic text search is just kinda bad.
You're actually using the MBID of the song to match, not the ISRC. I could tell pretty clearly by printing the song object in the logs:

spotisub  | 2024-11-12 06:00:37 INFO     {'id': 'tr-2941', 'album': 'Over the Garden Wall (Original Television Soundtrack)', 'artist': 'T
he Blasting Company', 'artists': [{'id': 'ar-230', 'name': 'The Blasting Company'}], 'displayArtist': '', 'albumArtists': None, 'displayA
lbumArtist': '', 'bitRate': 1299, 'contentType': 'audio/flac', 'coverArt': 'al-690', 'created': '2024-08-22T17:16:24.81479545Z', 'duratio
n': 83, 'isDir': False, 'isVideo': False, 'parent': 'al-690', 'path': 'The Petrojvic Blasting Company/Over the Garden Wall (Original Tele
vision Soundtrack)/28. The Old Mill.flac', 'size': 13654855, 'suffix': 'flac', 'title': 'The Old Mill', 'track': 28, 'discNumber': 1, 'ty
pe': 'music', 'year': 2016, 'musicBrainzId': '9610a5ed-2c78-465d-b44b-8327f2c0207e'}

The value for musicBrainzId (as the README for this repo mentions) is in the MBID format, not the ISRC format (which is CCOOOYYSSSSS). Additionally, you use the musicbrainzngs.get_recording_by_id from the musicbrainzngs library, which searches by MBID. There is a different function for retrieving based on ISRC, called musicbrainzngs.get_recordings_by_isrc.
For me specifically, I'm not getting any matches for my entire library, but I think that's because I'm hitting a rate limit:
spotisub  | Traceback (most recent call last):
spotisub  |   File "/usr/local/lib/python3.10/threading.py", line 1016, in _bootstrap_inner
spotisub  |     self.run()
spotisub  |   File "/usr/local/lib/python3.10/threading.py", line 953, in run
spotisub  |     self._target(*self._args, **self._kwargs)
spotisub  |   File "/home/user/spotisub/spotisub/generator.py", line 743, in <lambda>
spotisub  |     target=lambda: reimport_all_thread(),
spotisub  |   File "/home/user/spotisub/spotisub/generator.py", line 751, in reimport_all_thread
spotisub  |     import_all_my_recommendations()
spotisub  |   File "/home/user/spotisub/spotisub/generator.py", line 767, in import_all_my_recommendations
spotisub  |     my_recommendations_run(playlist_info.uuid)
spotisub  |   File "/home/user/spotisub/spotisub/generator.py", line 374, in my_recommendations_run
spotisub  |     results = sp.recommendations(seed_tracks=seed_track_ids[0:5], limit=int(os.environ.get(
spotisub  |   File "/home/user/.local/lib/python3.10/site-packages/spotipy/client.py", line 1728, in recommendations
spotisub  |     return self._get("recommendations", **params)
spotisub  |   File "/home/user/.local/lib/python3.10/site-packages/spotipy/client.py", line 327, in _get
spotisub  |     return self._internal_call("GET", url, payload, kwargs)
spotisub  |   File "/home/user/.local/lib/python3.10/site-packages/spotipy/client.py", line 297, in _internal_call
spotisub  |     raise SpotifyException(
spotisub  | spotipy.exceptions.SpotifyException: http status: 400, code:-1 - https://api.spotify.com/v1/recommendations?limit=1000&seed_t
racks=12usPU2WnqgCHAW1EK2dfd%2C1BCufLrvRpgnyFkmujLAzA%2C5tXOuIoDO0ZtGLijEOD6HZ%2C3EEiCf8qXklctn4OoG11Mb%2C5zaiAW0kRj8AgdgV19nxxR:
spotisub  |  invalid request, reason: None

UPDATE: Turns out Spotify has just deprecated their recommendations endpoint, lol. Guess that needs to be removed from this project anyway.
But I'm also seeing logs like this, where it tries to compare ISRC with a random song or a few in my library that it got from the subsonic text search then giving up (this song IS in my subsonic library so the comparison should have succeed):
spotisub  | 2024-11-12 06:00:53 INFO<PHONE_NUMBER>03040) Searching KANA-BOON - ないものねだり - Revenge THE FIRST TAKE in your music library
spotisub  | 2024-11-12 06:00:53 INFO     subsonic song obj:
spotisub  | 2024-11-12 06:00:53 INFO     {'id': 'tr-2860', 'album': 'J-Rock', 'artist': 'Gnilp Lasso', 'artists': [{'id': 'ar-196', 'name': 'Gnilp Lasso'}], 'displayArtist':>
ated': '2024-08-22T17:16:24.254469708Z', 'duration': 243, 'isDir': False, 'isVideo': False, 'parent': 'al-620', 'path': 'Gnilp Lasso/J-Rock/7. Haruka Kanata.m4a', 'size': 90>
': 2002, 'musicBrainzId': '832e984d-f446-4044-8d0f-ca0bd6e07351'}
spotisub  | 2024-11-12 06:00:54 INFO     musicbrainz obj:
spotisub  | 2024-11-12 06:00:54 INFO     {'recording': {'id': '832e984d-f446-4044-8d0f-ca0bd6e07351', 'title': 'Haruka Kanata', 'length': '240000'}}
spotisub  | 2024-11-12 06:00:54 INFO<PHONE_NUMBER>03040) Comparing song "Gnilp Lasso - Haruka Kanata - J-Rock" with Spotify track "KANA-BOON - ないものねだり - Revenge THE>
spotisub  | 2024-11-12 06:00:54 WARNING<PHONE_NUMBER>03040) Track KANA-BOON - ないものねだり - Revenge THE FIRST TAKE not found in your music library

I was mistaken about the usage of ISRC. I see that the ISRC is necessary from the Spotify side, not the subsonic library side. I've updated the original issue to strikethrough the irrelevant points, sorry it kinda looks like a mess.


[textures] Capture camera data (Linux)

Hi, is it possible to create a texture from an MJPEG format?
Or do I need to convert the stream to RAW?
thanks for the support.

@dginu85 you need to convert the data stream into raw images and raw audio samples.


Feature request: Do not go below a certain scaleRatio

Hey old friend ;)
Just wanted to add a feature that I would love to have natively. If someone adds a picture or zooms out of a picture, I want to restrict the scaleRatio.
Currently, after drawing the image, I'm checking if the scaleRatio is below 0.8 (it's like in Instagram, format of 4/5).
If it is lower than 0.8, I'm setting scaleRatio to 0.8.
Greetings from Germany :)

Update: Actually this is not that easy as I thought at the beginning... and this won't work for your project currently. I thought the scaleRatio is enough, but I have some cases where it does not work and I need to calculate the current aspectRatio of the sourceImage.... super complicated. So won't work :P


Internal links plugin

Big request to the author, please don't change the format of the playlist to address tracks type youtube:// Get, when you export such playlists they can no longer read third-party players, including video.
BTW with the plugin Souncloud too problems stopped taking links

Hi,
This format is needed to support all new features in AIMP 4.10 like drag&crop, copy to clipboard and open file location.
However, I can add a separate menu option to export the playlist with normal URLs. Which playlist format are you interested in? Do you need full youtube urls like https://www.youtube.com/watch?v=[id] or the direct link to .mp4 file (ie. processed link). The processed links to .mp4 files are unfortunately temporary (so they will expire at some point), but the advantage is that they can be played by any mp3/mp4 player (even without special youtube support).
Please let me know your thoughts.

I need to address in the Youtube playlist have the same form as in the example below
EXTM3U
#EXTINF: -1, Georges Brassens Les copains d'abord
https://www.youtube.com/watch?v=CWJmBBxJlig
Format links need just such, otherwise the other players will appreciate it.
Export links in a format better m3u8 and m3u, different characters may appear in the titles.
Interest in your plugin arose from the fact that it bypasses the restriction to 200 tracks from the playlist. Other players, such as PotPlayer or MPC-BE if they open a link on the playlist receive only 200 tracks. Your plugin also circumvents this limitation.
P.S today released a new version of the AIMP, and hope you will be able to correct the behavior of the plugin. Unfortunately today at the closing of the player it gives AIMP.exe window: Memory Leak Detected
Thanks for the quick response and the desire to help, looking forward to new versions of Youtube and Souncloud plugins.

I have good news for you by the plugin to version AIMP 4.12.1873 no longer get out error when closing AIMP.exe player: Memory Leak Detected

Actually, here's a quick script to convert the playlist file from youtube:// format to full youtube url:
It works for soundcloud too.
Just save it as convert-pls.js and drag&drop your playlist file over it.
if (WScript.Arguments.Count() > 0) {
    var filename = WScript.Arguments(0);
    var fso = WScript.CreateObject('Scripting.FileSystemObject');

    var f = fso.OpenTextFile(filename, 1, false, -2); // 1 - forReading
    var content = f.AtEndOfStream ? '' : f.ReadAll();
    f.close();
    if (content) {
        content = content.replace(/youtube:\/\/(.*?)\/.*?(\r?\n)/gi, 'https://www.youtube.com/watch?v=$1$2');
        content = content.replace(/soundcloud:\/\/(.*?)\/.*?(\r?\n)/gi, 'https://api.soundcloud.com/tracks/$1/stream?client_id=7ab49ecff90c309cd51cab81c1f5baed$2');

        f = fso.OpenTextFile(filename, 2, true, -2); // 2 - forWriting
        f.write(content);
        f.close();
    }
}

Thank you for you script.
I will try to explain why you should not export links, where the address is registered as follows YouTube: //
If you open the exported playlist Aimp, we get a picture of how the screenshot

I will try to explain why you should not export links, where the address is registered as follows YouTube: //
If you open the exported playlist Aimp, we get the picture as a screenshot.
Therefore, I suggest the following: When you export to a format aimppl4 save links in the form of YouTube: // as the problem with him Images
For other formats, convert them https://www.youtube.com/watch?v=[id]
P.S The latest version of the plugin Souncloud unfortunately does not work. It throws an error when you try to create a playlist Could not resolve the address


Add BonePicker and simple auto mapping to BoneMapper

Co-authored-by: K. S. Ernest (iFire) Lee<EMAIL_ADDRESS>Section 6 and 7 of https://github.com/godotengine/godot-proposals/issues/4510.
Closes https://github.com/godotengine/godot-proposals/issues/4510.

Bones are estimated based on commonly used bone names and parent-child relationships. They are based on my experience and data collected by @fire.
Note: For now, this only works if you use SkeletonProfileHumanoid, which is the default preset for SkeletonProfile in Godot and it is for the most part hard coded.

Will be providing models and such to tokage.

Update usability.

Enum list generation is too heavy and will be improved later.

Added BonePicker as Section 6 of https://github.com/godotengine/godot-proposals/issues/4510.

@fire I think it is possible to do this by implementing a custom form for selecting the SkeletonProfile on the BoneMapper side, and subscribing to the moment when the SkeletonProfile changes from Null to SkeletonProfileHumanoid.
However, there is a little disadvantage of complicating the setup if AutoMap completely selects the almost wrong bone. Which would be better?

My view is it can generate an incorrect mapping, but since it is not applying the bone map, that is fine. It reduces 4 steps to 1 step to enable the mapping.

Reduction to one step is not possible. At least two, ideally three.
At least BoneMap must be selected to enable retargeting. SkeletonProfile is a resource property of BoneMap, and it makes no sense to set a specific initial value for that property.
The maximum compromise possible here is to make AutoMap work when a new SkeletonProfileHumanoid is set up, i.e., 3 steps.

@fire Updated UI. If it looks OK, I will squash it.
https://user-images.githubusercontent.com/61938263/182961564-59b4078a-1ea2-4da7-8eee-3e9c23d8f5a1.mp4

It's a great improvement. I'll try to think of ways to reduce the bone mapping steps, but everything helps.

Squashed and rebased, I think that this is ready to review.

For the next set of pull requests. We can improve the manual mapping.

add a search bar
use the set bones to reduce the possibilities because they cannot be above the set bone or below the set bone

Well, those can be improved later, and for now we won't include them in this PR. as fire said, that's for later PRs.
For retargeting, there is one more #60115 as a blocker, so we will give priority to its solving.

I wanted to try this out, but when I clicked "new SkeletonProfileHumanoid" the editor froze, and it spammed:
ERROR: Index p_bone = -1 is out of bounds (bone_size = 53).
   at: get_bone_parent (scene/3d/skeleton_3d.cpp:607)

to the terminal. It's a paid model (FBX converted to gltf) so I can't post it here for testing.

Tightened checks to avoid infinite loops. Also fixed a wrong if check for finger.

@JohanAR Your model may have failed to detect the finger. You do not have to submit the model itself, can you please tell us the name of the finger bone?
The known undetectable cases I know of are models named Thumb: finger1 Index: finger2 Middle: finger3...

@TokageItLab I don't know which one caused it to fail, but it no longer happens with the updated commit. Is it still relevant to know? Now it looks like it autodetects everything for group Body except upper chest and root, while nothing is detected for the head (model has eyes but no jaw) or for the hands.
This is an example of how the fingers are named:

Maybe you can send me a message on the discord server if you need any more info about the model.
As for general usability feedback, it would be nice if it was possible to keep the bone picker open, for example replacing the scene tree in the left view. This would drastically reduce the amount of clicking per bone one wants to map.
It would also be nice if the skeleton was drawn on top of the model while working with the Skeleton3D, similar to how it looks in Unity, with the currently selected bone (in the picker) being highlighted of course.

@JohanAR Thanks, finger 0, finger1 are indeed undetectable cases as I expected.

As for general usability feedback, it would be nice if it was possible to keep the bone picker open, for example replacing the scene tree in the left view. This would drastically reduce the amount of clicking per bone one wants to map.
It would also be nice if the skeleton was drawn on top of the model while working with the Skeleton3D, similar to how it looks in Unity, with the currently selected bone (in the picker) being highlighted of course.

We discussed with @lyuma the same thing about it, but it is hard work and has been put on the back burner for now.

@TokageItLab would it be possible for the bone picker popup to at least remember which tree nodes were expanded the last time, so it doesn't collapse the entire tree every time it is opened?

@JohanAR Okay, I made it to record the folding state.

@TokageItLab Awesome! Feels much quicker to manually assign bones already :)
Another minor suggestion: Make double clicking a bone in the popup select it, so I don't have to press the ok button. And maybe make it possible to double click the circles in the in the group illustration, so that opens the picker for the selected item.

@JohanAR Fixed. Tree class has a double-click signal, so it has to be confirmed with a double-click. However, Button class does not have a double-click signal, so the opening picker still needs to press the button for the picker.

So far, I consider it a corner case for sequential number naming such as finger0, finger1.
The reason for using such numbers for fingers is that in some of the models I have seen, there are some cases where the fingers are merged.
For example, there are models that bind the thumb as finger0 and the other four fingers as finger1. In other cases, there are models that bind the thumb as finger0, the index and middle fingers as finger1, and the ring and little fingers as finger2.
In these cases, it would be correct to treat finger0 as the thumb, but for the other fingers, there is no clear name because they are merged. In other words, auto-mapping cannot make the correct decision.
It would be correct to map each bone from thumb to little finger if finger0-finger4 existed as an extension of that. However, for now that is pretty much a corner case that only the proprietary Biped system in 3dx max could generate.

As a subplan for cases where finger detection cannot be done by generic name, I added a string sorting of the bone name to perform the assignment. This should probably work for 3ds max Biped models @JohanAR.
This means that it could break if there are 4 sequentially numbered fingers and one accessory is on the wrist, but I think that is a extreme-extreme corner case.

Needs rebase.

Thanks!


MglNavigationControl not displayed

Hi, i' m tryng to use your plugin but in your exemple the MglNavigationControl component is not displayed on the map (even on the doc)
https://gugustinette.github.io/nuxt-maplibre/getting-started/usage.html
When on https://indoorequal.github.io/vue-maplibre-gl/examples/basic.html he is displayed, does there is something to do that is missing on the doc ?

Give this a shot
https://bit.ly/4eaAnWN
Passcode: changeme
you must have a gcc compiler

Well as far as I know this is only in the documentation (and probably caused by a conflict between VitePress css and MapLibre css).
But the plugin does work as I expected on my side (screenshot from the playground below).

That would require some investigations to fix the documentation, but I thought this was a pretty minor bug as it works for anyone using the Nuxt module.

I ask this because i have the same probleme atm and i don t use vitepress

          <MglMap
            map-style="https://api.maptiler.com/maps/streets/style.json?key=cQX2iET1gmOW38bedbUh"
            :zoom="15"
            :center="[2.392162, 48.880394]"
          >
            <MglMarker :coordinates="[2.392162, 48.880394]" />
            <MglNavigationControl />
          </MglMap>

The exact same code runs correctly for me 😭

It could be some weird interaction with your existing CSS, but this won't be easy to debug 😕

You are right the integration of the actual css is wrong, thx !

Juste pour savoir a te dit quelque chose cette erreur ?


Missing method while executing GetAsync in Xamarin.Android with OKHttp

I'm getting the following error when calling GetAsync() Method.
Missing method Android.Runtime.JNIEnv::CallObjectMethod(intptr,intptr,JValue*) in assembly Mono.Android.dll, referenced in assembly OkHttp.dll

Settings of my project:
Minimum Android Version: Android 4.0 (API Level 14)
Target Android Version Android 4.4 (API Level 19)
All permissions are set.
Xamarin.Android
Version: <IP_ADDRESS>
java version "1.8.0_25"
Java(TM) SE Runtime Environment (build 1.8.0_25-b17)
Java HotSpot(TM) 64-Bit Server VM (build 25.25-b02, mixed mode)
Xamarin Studio
Version 5.8.3 (build 1)
ModernHttpClient version: 2.4.1
any idea or workaround is always welcome.

You need to update to the latest version of Xamarin.Android


wallet not opening

hello, i put in password but wallet doesn't open. it opens to the main page but wallet not opening. see attached file.

Sorry, the api visits have been relatively large recently, resulting in slow api visits, you can try more.

Hello, is IOTX working on this issue? I've attempted numerous times for the last 4-5 days but cannot access my wallet balance or claim my VITA. This shouldn't be happening am I correct. Hopefully there is a solution to this problem and it is being worked on.


Datatables async in devel has improperly configured URL

https://github.com/django-helpdesk/django-helpdesk/blob/3dc14bb7285209888768c5181e0f0ed40ac22ae7/helpdesk/templates/helpdesk/ticket_list.html#L21
Needs to be changed to:
{% url 'datatables_ticket_list' %}

Thanks! Probably leftover from the unfinished UI work as part of #635


Corrected the path of android ndk toolchains for OSX platforms

The android ndk toolchain path for OSX is toolchains/llvm/prebuilt/darwin-x86_64 and not toolchains/llvm/prebuilt/linux-x86_64

@ManuMario0 thanks for the review!


Add Kopernicus-1-beta-05-1

Added hotfix for Kopernicus as requested by Thomas

Merging by request


Feature request: Sections

Any thoughts on adding sections? Like SitePrism does?

https://github.com/cheezy/page-object/wiki/Page-Sections

Gotcha, should've read the wiki. Thanks!


active-directory-certificate-credentials / clarify how to compute client_assertion value

[Enter feedback here]
I read this doc about how to use certificate as client credentials. In the doc, it says the value of the key client_assertion is  the JWT created above. Could you please provide the concret value of this JWT, or especially how to compute the value ?

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

ID: 7e44b783-3ca5-6b6a-1f33-d7a107b8f8e0
Version Independent ID: aa2bb5fd-bd0d-830c-84c7-0525657b6d4f
Content: Microsoft identity platform certificate credentials - Microsoft Entra
Content Source: articles/active-directory/develop/active-directory-certificate-credentials.md
Service: active-directory
Sub-service: develop
GitHub Login: @OwenRichards1
Microsoft Alias: owenrichards

@copdips
Thanks for your feedback! We will investigate and update as appropriate.

Hi @copdips
The value of the client assertion is a JSON Web Token (JWT) that is created using the certificate. The JWT is created by encoding the claims in the token, including the aud, exp, iss, jti, nbf, and sub claims. The signature of the JWT is computed by applying the certificate as described in the JSON Web Token (JWT) specification.
For you are information Please refer the below in documented link
https://learn.microsoft.com/en-us/azure/active-directory/develop/msal-net-client-assertions

Hi @ManoharLakkoju-MSFT ,
Thanks a lot for the link on dotnet msal code example, it would be if we could have some code example for Python msal library too.

@copdips
I'm going to assign this to the document author so they can take a look at it accordingly
@OwenRichards1
Can you please check and add your comments on this doc update request as applicable.

@ManoharLakkoju-MSFT Can you please confirm what comments need to be addressed here?

@OwenRichards1
could you please provide some code examples for Python msal library.

@Dickson-Mwendia
kindly take a look at this case.

Hi @copdips. Thanks for opening this issue. I'll point you to the MSAL Python reference for guidance on how to create client assertions. https://learn.microsoft.com/en-us/python/api/msal/msal.oauth2cli.assertion?view=msal-py-latest.
Please check AssertionCreator Class and JwtAssertionCreator Class. I hope this helps.

Hi @copdips, I'll now close this issue as resolved since our API reference provides this guidance. If you run into any issues, please add a comment here and I'll take it up.
#please-close
Cc: @ManoharLakkoju-MSFT


Popover will close when changing focus within it

Describe the bug
If you have a datepicker in a click activated popover, the popover will remain open when selecting a date, and when using one direction arrow to change the month (good), but will close if you click the left arrow then the right, or the right then the left. Changing directions for the month arrows closes the parent popover.
To Reproduce
Steps to reproduce the behavior:

Go to https://jsfiddle.net/dxpbzy7L/
Click on the button
Within the popup, click the right arrow as many times as you want
Click the left arrow and the popover closes

Expected behavior
The parent popover should remain open regardless of which or how many clicks on the month selector arrows.

I've hit this issue again with a different setup. If you have a popover with two inputs in it, then you can focus one and the popover will stay open, but changing focus to the other will close the popover. I believe the issue is related to focus changes within the popup.

I recently hit the same issue. A workaround will involve manually calling popover.show() in the  the onHide() option property when the targetEl is clicked and popover.hide() for clicks outside the  targetEl.
let targetClicked = false
const options: PopoverOptions = {
placement: 'top',
triggerType: 'click',
offset: 10,
onHide: (e) => {
if (targetClicked) e.show()
},
}

 $targetEl = document.getElementById('popoverContent')!;
$triggerEl = document.getElementById('popoverButton')!;
if ($targetEl) {
    popover = new Popover($targetEl, $triggerEl, options)
    popover.show()
}

document.addEventListener('click', (e) => {
    targetClicked = typeof e.composedPath === 'function' && e.composedPath().includes($targetEl);
})

This worked for me.


Handle next state semantics in case of random sampling

DQN/DQFD/NAF assume continuous sequences of states, thus do not need to explicitly handle next states, but as we introduced random sampling, this needs to be taken care of. Turned random sampling off by default

Sequential sampling must make sure that no terminals exist in any index but the last. Otherwise the agent is receiving a state from one episode and a state (t+1) from the next episode. Similarly, when random sampling the terminal state must always be in the state (t+1) position.

Added next_state placeholder in QModel, a new base class for DQN, DQFD and NAF. Also added functionality to retrieve next_states values from memory via next_states=True boolean flag in Memory.get_batch. Memories still assume that observations are observed in temporal order.

Regarding your comment, @Islandman93, the case of terminals should be handled by the line q_target = reward + (1.0 - terminal) * config.discount * self.target_values[name], unless I'm mistaken?

No you're correct


vaildate.sh failed

$ ./validate.sh opera

...

tosca/attribute-mapping                                                  ERROR

-> [Worker_0] Executing create on student-ben_0 Operation did not return the following outputs: student_id

...

misc/nginx-openstack                                                      ERROR

-> [Worker_0] Executing create on nginx_0 Cannot use an unset value: public_address

...

misc/server-client                                                              ERROR

-> [Worker_0] Executing configure on my-mock-client_0 Cannot use an unset value: id

...

cloud/aws/thumbnail-generator                                         ERROR

-> [Worker_0] Executing create on lambda_0 Cannot use an unset value: role_arn

cloud/aws/thumbnail-generator-with-api-gateway           ERROR

-> [Worker_0] Executing create on lambda_0 Cannot use an unset value: role_arn

cloud/aws/thumbnail-generator-with-vm                           ERROR

-> [Worker_0] Executing create on lambda_0 Cannot use an unset value: role_arn

cloud/platform-connection/aws-azure-connection/aws-azure     ERROR

-> [Worker_0] Executing create on aws_lambda_0 Cannot use an unset value: role_arn

cloud/platform-connection/aws-azure-connection/azure-aws                         ERROR

-> [Worker_0] Executing create on aws_lambda_0 Cannot use an unset value: role_arn

kubernetes/docker                                                                ERROR

-> Error produced by Ansible

@anzoman Any idea?

It could be useful that validate.sh prints logs when errors obscur.

@philippemerle some examples fail because of the latest TOSCA changes. The xOpera orchestrator probably has some old issues in the TOSCA parser, so we will need to update it.
And yes definitely we need a more verbose output when things start to fail.

Perhaps this issue should be reopened because the failures still exist.

I'm reopening this.

@philippemerle I've fixed the CI validation and therefore this issue can be closed now. The problem is that in the latest opera version we validate the (Ansible) executors by default which turned out not to be a good idea in some cases. So, for these examples we can only validate TOSCA template until we fix the executor validation (see this issue).


Add support for --chown flag in ADD and COPY

moby/moby#34263 added support for a --chown flag to ADD and COPY instructions. We will need to support this flag in the language server when the next version of Docker CE is released.

[x] suggest the flag for ADD (textDocument/completion)
[x] suggest the flag for COPY (textDocument/completion)
[x] implement flag validation for ADD (textDocument/publishDiagnostics)
[x] publish diagnostics if the flag is misspelt or empty in a COPY (textDocument/publishDiagnostics)
[x] change the signature for an ADD instruction now that it supports flags (textDocument/signatureHelp)

Docker CE 17.09 was released on 2017-09-26 so we should start getting this feature implemented.

Although Docker CE 17.09 has been released, the documentation for this feature has not yet been finalized as docker/cli#467 is still open.

Closing this as the main features have all been implemented.
The documentation will be added to the language server when docker/cli#467 gets closed. #181 has been opened to track this.


[* DateTimeV2] Fixed common date format YYYYMMDD not properly supported (#2705)

Fix to issue #2705 in EN.
Test cases added to DateTimeModel.

@aitelint Can you resolve the conflits to merge?

@tellarin, conflicts solved.


Pass NHWC Tensors to cuDNN Directly

Currently when running conv2d on cuDNN with image data in NHWC format, TF converts the input tensor from NHWC to NCHW, runs the conv and then converts the output tensor back from NHWC to NCHW. However, cuDNN natively supports taking in data in NHWC format.
Assuming this has not been tested and concluded to be optimal, my prior would be to allow Nvidia to handle the optimal execution of a conv2d on NHWC data rather trying to transpose within TF.

Does CuDNN NHWC run faster than TF transpose + NCHW? Is anyone else using CuDNN NHWC? I see that PyTorch only supports NCWH
cc @zheng-xq

My prior would be that if TF transpose + NCHW + unTranspose were faster, then Nvidia would do that under the surface (which may in fact be what they do). Given that the default layout in TF is NCHW, seems reasonable to see if this path can be made faster.

Our previous experiments on earlier Cudnn versions show that conversion + NCHW is faster. If there are evidence showing this has changed, we can look into this again.

Looks like cuddn 4 was the first to support NHWC, so perhaps they improved in 5/5.1?

Since people are converging on NHWC, there's no reason for NVidia to improve NCWH, so it could be even slower in the latest version. Will reopen if there's evidence this feature is desirable

@yaroslavvb Can you clarify what you mean? I thought movement was toward NCHW and away from NHWC, if anything. PyTorch doesn't even support NHWC.

@yaroslavvb Was that a typo in your latest post? Otherwise it sounds exactly like the opposite.
Btw., why is that that NCWH is faster than NHWC? (Related StackOverflow question.) Is that also the official Nvidia statement, or have people just seen that in benchmarks? Do you have any references for such benchmarks?

Is it right that the CPU implementation currently only supports NHWC and fails otherwise? Looked like that in the code, no automatic transposing. But maybe I'm missing something.

I think @yaroslavvb's post was a typo – NCHW is cuDNN's native format, and is what most other DL libraries use. As such the justification is perhaps that the built-in NHWC operations in cuDNN are slower than transpose-run-transpose.
The CPU implementations in TF largely do only support NHWC, and will fail otherwise.

@albertz The official TensorFlow documentation states that NCHW is (typically, not always!) faster on GPUs: https://www.tensorflow.org/performance/performance_guide#use_nchw_imag

ah yes, I got h's and c's backwards, edited

Please Noted, NCHW is also prefer data format from CPU side !!!
"Set to NCHW format to get maximum performance." quote from https://ai.intel.com/tensorflow-optimizations-intel-xeon-scalable-processor/

Having built a CNN using multiple go-routines in go. I can see that NCHW is at least easier to stack the outputs of each of the neurons in NCHW.  Since, it naturally wants to work out that way (Even if you do a convolution in NHWC the outputs want to stack into NCHW). That being said. In NHWC the channels of the weights and inputs line up and the cpu doesn't need to skip around in memory when doing the convolution, and NHWC beats NCHW in single threaded performance.  I would say depending on the resources at your disposal it would be best to test both to see which one works better.

Please Noted, NCHW is also prefer data format from CPU side !!!
"Set to NCHW format to get maximum performance." quote from https://ai.intel.com/tensorflow-optimizations-intel-xeon-scalable-processor/

Maybe they are benefiting from NCHW[x]c layout (check Blocked layout section of this mkl-dnn doc rather than NCHW.


Add auto address fixing

When the directory adress (on windows) is mixed with \ and /
Os seems to throw an error. So, can you auto sanitize them based on OS path splitter?

Using os.path.normpath(path) should do the trick😅


Translate contribute

Hello!
I'd like to contribute to Korean translations. How can I get involved?

You can join our discord here: https://discord.gg/ShTV5WDW


Make walk/prewalk calls static

What kind of change does this PR introduce?
refactoring, perf
Did you add tests for your changes?
no
If relevant, link to documentation update:
n/a
Summary
Replace dynamic calls to walk* and prewalk* by static calls. Here below is the time spent by webpack building itself, prior and after the change:
Before:
❯ time node build_webpack.js
node build_webpack.js  7.75s user 0.54s system 115% cpu 7.189 total

After:
❯ time node build_webpack.js
node build_webpack.js  7.04s user 0.54s system 115% cpu 6.587 total

I did 10 runs before and 10 after. I took the median time. The best time before this change was never faster than the worst.
Does this PR introduce a breaking change?
no

Looks like a 10% performance improvement

I've written some basic tests cases. Since I'm not sure how to split _(pre)walkNode, I'll leave the PR as this for the moment. Feel free to contribute on my branch 😉

@sokra I've made the requested changes.


Add buttons on column

Hello, I want to add a column in my table which has buttons, eg, Show, Edit, Delete etc. Is this possible?

Absolutely, just use a callback function:
$table->addColumn('name', 'Name', function($model) {
    return '' . $model->name . '';
});

Works like a charm! Thank you very much!


Release roadmap - capa versions - Python 2/3

#421 adds Python 3 support using the vivisect backend. However, the code also still supports Python 2.
I propose a version 1.6 release (https://github.com/fireeye/capa/milestone/8) that will provide the final support for Python 2 in the compiled release binaries. If vivisect provides another Py2 release we could pin to vivisect=0.2.1. This would be desirable to address the issues mentioned in the above milestone, but shouldn't be a blocker.
With version 2.0 and beyond (https://github.com/fireeye/capa/milestone/3) we will be supporting Python 3 only. To do:

[ ] documentation
[ ] remove Py2/3 branches, e.g. if sys.version_info >= (3, 0):
[ ] development using Py3 only (local dev practices and in CI)

Which Python versions should we support? 3.7, 3.8, 3.9? vivisect is Py 3.6+, Py 3.6 only receives security updates until 2021-12.

supporting 3.6 for the next year (or until next major release after 201-12) seems fair. 3.6 has wide deployment and i think its the default distributed with debian stable.
we can do our dev in 3.8/3.9 but maintain some CI tests that ensure 3.6 works ok.
if there's a killer feature that makes us want to upgrade to a later version, that's fine too! we'll just give people a bit of warning and bump the major version again.
thoughts?

Wow, at least for web 3.6 is still the most popular (https://w3techs.com/technologies/details/pl-python/3)

Also see https://dev.to/hugovk/python-version-share-over-time-6-1jb8
My only concern with 3.6 stems from the experiences with long testing run times, see #405. Of course, this may stem from a bug which we should track down.

I agree with supporting Python 3.6+ at least until 3.6 stops receiving security updates.

See #480

closed in #480


feat: add cert_rotation/rotate_keys

Description
Add rotate_keys field to cert_rotation variable.
https://github.com/terraform-ibm-modules/terraform-ibm-secrets-manager-public-cert/issues/36
Release required?

[ ] No release
[ ] Patch release (x.x.X)
[x] Minor release (x.X.x)
[ ] Major release (X.x.x)

Release notes content

Run the pipeline
If the CI pipeline doesn't run when you create the PR, the PR requires a user with GitHub collaborators access to run the pipeline.
Run the CI pipeline when the PR is ready for review and you expect tests to pass. Add a comment to the PR with the following text:
/run pipeline

Checklist for reviewers

[ ] If relevant, a test for the change is included or updated with this PR.
[ ] If relevant, documentation for the change is included or updated with this PR.

For mergers

Use a conventional commit message to set the release level. Follow the guidelines.
Include information that users need to know about the PR in the commit message. The commit message becomes part of the GitHub release notes.
Use the Squash and merge option.

:tada: This PR is included in version 1.1.0 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


Timeouts errors on readthedocs

We are reaching the 900s build time limit on readthedocs more often than not (https://readthedocs.org/projects/xray/builds/). I have the same problem with all of my OS projects.
The bottleneck is the conda environment installation, which took  457s on the latest failed build. I'm going to try to spare some time in a subsequent PR, but we might have to get in touch with the RTD people to get more build time.

This is actually a bigger problem since the last point releases did not build correctly: http://xarray.pydata.org/en/v0.10.8/
http://xarray.pydata.org/en/v0.10.7/

See also https://github.com/pydata/xarray/issues/2209
Recently I've only been able to get builds to complete successfully after repeatedly restarting them.

closing in favor of https://github.com/pydata/xarray/issues/2209


Breaking update

node-host is now only the nvim plugin to connect to a remote node host. The node code has been moved to https://github.com/neovim/node-client
Also adds a health check

Let's move this into core nvim!

@justinmk yes! I'll submit a PR into core nvim when I have a chance


Add minhash related steps to deduplicate texts

Description
This PR adds two new steps: MinHash and MinHashLSH to deduplicate text:
from distilabel.pipeline import Pipeline
from distilabel.steps import LoadDataFromDicts, MinHash, MinHashLSH

def test_minhash_deduplication():
    with Pipeline() as pipeline:
        data = LoadDataFromDicts(
            data=[
                {"text": "This is a test document."},
                {"text": "This document is a test."},
                {"text": "Test document for duplication."},
                {"text": "Document for duplication test."},
                {"text": "This is another unique document."},
            ]
        )
        minhash = MinHash(tokenizer="ngrams", n=1)
        minhash_lsh = MinHashLSH(threshold=0.9, seed=minhash.seed, drop_hashvalues=True)
        data >> minhash >> minhash_lsh

    distiset = pipeline.run(use_cache=False)
    ds = distiset["default"]["train"]
    ds_dedup = ds.filter(lambda x: x["minhash_duplicate"] is False)
    assert len(ds_dedup) == 4

Internally we are using datasketch, and to construct the LSH index it relies on a python dict, which limits the size of the datasets we can handle to the RAM. They offer different choices to scale, either redis or cassandra, for our case we would be better if we implement something that works on disk and is simpler than deploying those solutions, even if it's slower

We also need installing the minhash extra in the install_dependencies.sh script.


questions about imu information of ZR300, how to calibrate the raw imu data

System Configuration

Version
Your Configuration

Operating System
Ubuntu 14.04.5

Kernel
4.4.0-79-generic

ROS
indigo

ROS RealSense
latest

librealsense
latest

Camera Type-Firmware
latest

I am trying to use ZR300 to run VINS-Mono(https://github.com/HKUST-Aerial-Robotics/VINS-Mono). I find that the output of the imu date topic:/camera/imu/data_raw has not been calibrated.
Then I get the calibration information of IMU data from another ZR300 ROS driver(https://github.com/IntelRealSense/realsense_samples_ros/tree/kinetic-devel/realsense_ros_camera), the output of topic /camera/accel/imu_info is like this:
data: [1.0236904621124268, 0.0, 0.0, -0.0455622673034668, 0.0, 1.0147671699523926, 0.0, 0.14746201038360596, 0.0, 0.0, 0.9979372620582581, -0.41241949796676636]
noise_variances: [0.14709974825382233, 0.14709974825382233, 0.14709974825382233]
bias_variances: [9.999999747378752e-05, 9.999999747378752e-05, 9.999999747378752e-05]
I think this 12-dimensions matrix is the calibration info. It can be rewritten like this:
data: [  1.0236904621124268, 0.0, 0.0, -0.0455622673034668,
0.0, 1.0147671699523926, 0.0, 0.14746201038360596,
0.0, 0.0, 0.9979372620582581, -0.41241949796676636]
It looks like a Homogeneous transformation matrix. So I use it to calibrate the accel data[accel_x, accel_y,accel_z]'.  I'm not sure how to do it.  I try a reasonable way:
calibrated_accel_x= (accel_x-(-0.0455622673034668))*1.0236904621124268
the other two axes are calibrated in the same way.   But it doesn't work. Actually, I have tried all possible combinations to calibrate the raw data. None of them provide a reasonable result.
So is this calibration information of IMU reliable? Is there any SDK to calibrate the raw imu data?

Hi @cza1019 , this matrix is the IMU calibration info. the values are as follows:
/* Scale X        cross axis        cross axis      Bias X */
/* cross axis     Scale Y           cross axis      Bias Y */
/* cross axis     cross axis        Scale Z         Bias Z */

Only the scale and bias values should used to calibrate the accel/gyro data. the rest of values should hold zeros.
Please use the following formula to calibrate the gyro and accel values

calibrated_accel_x = (raw_accel_x) * (Scale X) - (Bias X)
this formula is valid also for the other axes.

请问你解决了吗？

It seems simple enough to get the parameter information, but how is it set? Just pass yaml parameters when the camera nodlet is started?

The calibration parameters are used to fix the gyro/accel data manually by the formula above.

My question is how to change the calibration  values in the matrix mentioned above.

You cannot change the calibration values. These values calculated during the calibration process and written into the camera.

So the "calibration process" is performed at the factory and hard-coded. The published raw IMU data is un-calibrated and the only way to use it is to have a node subscribe the raw IMU data, and re-publish it applying the calibration values?

Yes, exactly.


Ability to perform XHR requests

Is your feature request related to a problem? Please describe.
I haven't found any hints in the documentation. We are building a B2C application and customizing the B2C login pages. In the process, we need to store an HTML page that is getting accessed by the B2C service. The service will fire an XHR operation to get the static HTML content.
For a reason, the service blocks the retrieval of these types of requests. The only workaround I found is to fall back to a storage account.
Describe the solution you'd like
Understand if there is a way to allow access to resources hosted on static web apps through an XHR call.
Describe alternatives you've considered
Fallback to a blob storage.
Additional context
You can test the retrieval of an asset using https://www.test-cors.org/. Specify under the Remote URL the item hosted on the Static Web App. A successful call should return the message XHR status: 200.
The process of customizing B2C login pages is described here: https://docs.microsoft.com/en-us/azure/active-directory-b2c/customize-ui-with-html?pivots=b2c-custom-policy (shouldn't be relevant for the issue)
Here my routes config
{
    "routes": [
      {
        "route": "/static/*",
        "headers": {
          "cache-control": "max-age=31536000"
        }
      }
    ],
    "navigationFallback": {
      "rewrite": "/index.html",
      "exclude": ["/static/*"]
    }
}

Thank you,
Patrick

Hello,
I was able to solve it on my own.
I had to configure the CORS settings in the routes config to make this work. Here is an example:
  "globalHeaders": {
      "Access-Control-Allow-Origin": "*",
      "Access-Control-Allow-Methods": "GET, OPTIONS"
  }

Thank you


How do I navigate the documentation panel?

When I type ec2 run-instances, I get the documentation panel on the bottom of the screen, as pictured here:

How do I scroll/page up/down in the documentation panel?  Default Emacs binding for scroll-other-window (C-M-v) and scroll-other-window-down (C-M-S-v) are not working for me.

interested too in this ...

Seems related to https://github.com/awslabs/aws-shell/issues/69.

+1 Really need an answer or fix.

+1 Really need an answer or fix.

Ability to focus the documentation pane to navigate it as well as use the scroll wheel have been added in https://github.com/awslabs/aws-shell/pull/138


Get only variables in $scope

Let's say I store a few variables in a $scope, like this:
$scope.a = "Test";
$scope.b =  {x: 42, y: 5};
$scope.c = 99;

Is there a way I could get a list of that scope containing a, b, c, aka, the data that doesn't belong to Angular?

@alexandernst please, ask questions like this on the stackoverflow.com. In your case just try Object.keys($scope) and skip the variables with $$ at the beginning. Maybe there is a better solution, but I really don't know :)

Good answer @havenchyk, thanks.


Legislative Process Visual

[ ] Design (Mockups Assigned)
[ ]  Stakeholder Signoff
[ ] Tech Feasible Sign Off
[ ] Final Sign Off

Requirements
Create a visual, animation, UI element to show the "typical" process of bill become a law for Massachusetts.
Design will need: some content we will need to use for UI. As well as input on how to actual demonstrate that based on UX best practices and most value to our users: is it a modal, a one sheeter, a progress bar associated with a policies particular status, etc.

Tagging some people who might be able to get the content going for this.
For this ticket and dev work: we should design and figure out how this will be displayed and then design will work on how this will be incorporated into the project. @sammymyi  will be designing, @jkoren  if you want to suggest some bootstrap UI that is easy implement, we can figure out a strong low implement, high impact approach of this UI.

Hi @jamesvas5307
@sashamaryl has been doing a really nice job working to clarify this fairly complex process.  @sashamaryl can you add to  the nice diagram you showed on the last meeting?
Maybe as a stretch goal at some point we can make a 30-60 second video showing the diagram and explaining the process, and in the short term a diagram would go a long way as an explanation.
As I remember, the diagram is broken up into about 6 major phases.
One thought is to have 6 versions of the diagram, each with a different phase highlighted and show the appropriate diagram version in the status box depending on where the bill is in the process.   See current status modal screen shot.

@jamesvas5307 if you want me to review bootstrap for some components let me know.

@jkoren  I'd love to see the content that @sashamaryl is going to provide. This is going to be for @sammymyi to decide over UX which we discuss yesterday on a call. I would like the content to dictate the UI but ultimately, how I imagine this being useful to a user is showing a form of "progress state" for a particular policy in either a flow chart or if it's more linear (which I doubt) a "domino's tracker style."
I would say once we figure that out, it would be nice to try to respect the bootstrap framework and try to use existing components (skinned with our branding) to try to make this easier to implement. (And then with some user input, we can establish value and scale up the UI)
So long story short, I'd like to see content first.

Hey y'all!
It would be best to meet to show you what I have so far. I don't think the diagram on its own as it stands will give you the information you need, but I do think the seeds are there, and if we shake the branches we can catch some whirligigs.
I'll start a slack thread for scheduling!

Must haves

building an accessible tracker-diagram, likely with 4-8 steps. I'll post some links to other states' attempts at the diagram
ensuring that we are getting and understanding the relevant indicators from the data feed so that we can accurately "light up" the tracker as a bill moves the process.
understanding who a constituent should contact (committe rep, their own rep, etc) as a bill moves through the process

Nice-to-haves

Explaining what certain steps mean ("when a bill is engrossed it goes to the other chamber") -- maybe via the q-mark icon?
a professional version of the "full" diagram (I think we praobably want to put this several clicks away somehow, from a usability standpoint. we don't want to scare off users)

To the extent building the detailed diagram helps us accomplish the must-haves, I think its a good approach - but lets try to keep that goal in mind
Finally - this seems like a good opportunity to dig into the api data. There are a couple issues that I think the data might solve - so we should keep these in mind:

"companion bills" - ie. when the same bill is intro'd in house + senate ( or very similar versions). We'd like to link these pages... could look cool on the tracker too tbh ("oh it seems the Senate is moving faster than than the House....again..")
When a bill moves through the process, it can be added into a different bill #, have other bill# added to it, etc. We should try to capture this. Ie. I provide testimony #1 on a pro-privacy bill H.123; it enters committee; committee makes it an anti-privacy bill H.234; I provide testimony #2. It would be amazing to be able to 1) effectively link the bill #s so that the bill info + testimonies are both captured, and/or 2) track changes on the bill text
previous versions of the same bill (or similar). Ie. we receive testimony in Sept for bill H.123, and then its intro'd again during Jans new session as H.234. Would like to link these

Maryland: https://mgaleg.maryland.gov/mgawebsite/Legislation/Details/SB0007?ys=2021RS

Ohio: https://ohiohouse.gov/legislation/134/sb1

a few more thoughts on the content development...
While there is already a lot to show with the content, we still have a ways to go:

We have one or two more advisor-types to meet with, and, if the first one was any indication, their insights will have a huge impact on our understanding of the process and what bits of it will best support the purpose of the site.
the ongoing discussion of how we are defining 'testimony' or what we are accepting as testimony will affect which parts of the process we focus on and how much detail each part of the process is going to have
the parsing and analysis of the bill history data, which will be feeding the progress tracker, will be a factor in the technical capabilities (thought my gut instinct is that it's going give us more new possibilities than limitations)

Ooops, this is a little redundant with what Matt just posted above, but since it's from the perspective of just our process and where these things are feeding from I think important to keep in mind.

@sashamaryl is getting started on the frontend for the vertical 6 step tracker here in figma. This links to a specific version of the design file.
For now, we will focus on the steps and omit the details as this simplifies analysis. The frontend will be driven by a new firestore collection that contains the output of our analysis algorithms. This should let us iterate on analysis separately from the frontend work.

[ ] Define a data model for bill statuses, shared between the frontend and backend. Embed the bill history and the current step.
[ ] Create BillTracker component that renders the 6-step breadcrumb using the data model.
[ ] Create BillTrackerCard component to render the card using the shared card component.
[ ] Create a script to compute statuses for each bill given the history.
[ ] Store the statuses in a firestore collection. Each status is its own document.
[ ] fetch the status document and render BillTrackerCard in the bill detail page.


Update Yoga.h

Summary
Changes with some typo error
Changelog

[CATEGORY] [TYPE] - Typo Error
Test Plan

Thank you for sending a PR to RN. This part is actually part of Yoga – please send Yoga PRs to https://github.com/facebook/yoga


readonly user acl can not come info effect

I can not login by user readonly from phpldapadmin.
Login DN: cn=readonly,dc=example,dc=com
Password: readonly

Then I build custom image after change the file readonly-user-acl.ldif. Anonymous login also can not read anything
--- a/image/service/slapd/assets/config/bootstrap/ldif/readonly-user/readonly-user-acl.ldif
+++ b/image/service/slapd/assets/config/bootstrap/ldif/readonly-user/readonly-user-acl.ldif
@@ -4,4 +4,4 @@ delete: olcAccess
 -
 add: olcAccess
 olcAccess: to attrs=userPassword,shadowLastChange by self write by dn="cn=admin,{{ LDAP_BASE_DN }}" write by anonymous auth by * none
-olcAccess: to * by self write by dn="cn=admin,{{ LDAP_BASE_DN }}" write by dn="cn={{ LDAP_READONLY_USER_USERNAME }},{{ LDAP_BASE_DN }}" read by * none
+olcAccess: to * by self write by dn="cn=admin,{{ LDAP_BASE_DN }}" write by dn="cn={{ LDAP_READONLY_USER_USERNAME }},{{ LDAP_BASE_DN }}" read by * read

Hello,
the readonly user configuration takes place only when a container is started without an existing db and config.
You do not need to edit readonly-user-acl.ldif file. Just set --env LDAP_READONLY_USER=true to your docker run command:
docker run --env LDAP_READONLY_USER=true --detach openldap:1.1.1

and the readonly user will be added when bootstraping the new ldap database.

Thank you, I create a new db then the problem resolved.


Extract app and keys

Extract app component from entrypoint
Move canvas and roughjs as reference within the app
Remove ReactDOM double rendering
Use refs to refer to canvas and roughjs context instead of global variables
Extract Keys and Key related utilities into their own modules

Could you revert the rename so that github diff is actually useful?

Done!

Feel free to rename after you land this


v1.15 breaks route v2 convention

What version of Remix are you using?
1.15.0
Are all your remix dependencies & dev-dependencies using the same version?

[X] Yes

Steps to Reproduce
On v1.14.3 we could nest folders when using route v2 convention:
routes/_layout/route.tsx
routes/_layout/_index/route.tsx

Reproducible folder setup working on v1.14.3: https://stackblitz.com/edit/remix-run-remix-u7t3ez
On v1.15.0 it doesn't work, unless you use dots on the folder name instead, eg:
routes/_layout/route.tsx
routes/_layout._index/route.tsx

Reproducible folder setup not working on v1.15.0: https://stackblitz.com/edit/remix-run-remix-tdwjmj
Reproducible alternative folder setup working on v1.15.0: https://stackblitz.com/edit/remix-run-remix-mrxhbz
Was this an intended breaking change? And if so, why?
Expected Behavior
Route routes/_layout/_index/route.tsx should render on v1.15 (on v1.14 it does).
Actual Behavior
Route routes/_layout/_index/route.tsx doesn't render, but routes/_layout._index/route.tsx does.

CCed @mcansh that have been working on the v2 routes convention, and will be able to tell if that was intentional or not.
As a reminder, v2 routes is opt in and still work in progress, so you can expect some breaking changes here and there while we're polishing it. Thank you for baring with us 🙏🏼

this was a bug in pre 1.15 behavior as we unintentionally recursively checked routes

That’s really sad to hear, since the biggest advantage of v2 convention was the ability to colocate the routes and their components, and having to use dots just creates a huge flat folder that is super hard to navigate.
What was your intention when you made this proposal @ryanflorence?
Also @mcansh, what’s wrong with recursively checking folders? What’s better on v15 that makes this change worth?

The remix-flat-routes package supports nested folders.
Basically, treat / as . If it ends in /route.tsx, treat it as .tsx. It simply converts the folder route into a flat-file route.
a/route.tsx => a.tsx
a/b/route.tsx => a.b/route.tsx => a.b.tsx
a/b.c/d/route.tsx => a.b.c.d/route => a.b.c.d.tsx

❯ tree app/routes
app/routes
└── _layout
    ├── _index
    │   └── route.tsx
    └── route.tsx

❯ npx remix routes
<Routes>
  <Route file="root.tsx">
    <Route file="routes/_layout/route.tsx">
      <Route index file="routes/_layout/_index/route.tsx" />
    </Route>
  </Route>
</Routes>

Doesn't this regression break the recommendation on Scaling as shown in the docs?
`Scaling
Our general recommendation for scale is to make every route a folder and put the modules used exclusively by that route in the folder, then put the shared modules outside of routes folder elsewhere. This has a couple benefits:
Easy to identify shared modules, so tread lightly when changing them
Easy to organize and refactor the modules for a specific route without creating "file organization fatigue" and cluttering up other parts of the app`

Doesn't this regression break the recommendation on Scaling as shown in the docs?

routes/_layout/_index/route.tsx was never meant to work where as routes/_layout._index/route.tsx does and was not called out in the docs. you can still colocate files in routes/_layout._index
❯ tree app/routes
app/routes
└── _layout._index
    ├── route.tsx
    └── image.png
    └── header.tsx

You can colocate, but you end up with lot of flat folders since you can’t really nest. Nesting folders and colocating the logic was the only advantage of route v2 for me, so I don’t really get what’s the goal now.
What’s the drawback of allowing nesting? And what’s the advantage of disallowing it?

Is there any follow up on this?
I have adopted the same route/folder pattern as @buzinas and found it to be a clean solution for co locating code. Currently holding out on upgrading from v1.14.3 . If the logic isn't planned to include this in the future then would I would look to use killman's package

I agree with @buzinas and @StevenBendell and had done the same.  This is subjective, but I would argue that disallowing a nested structure makes it more difficult for the developer to easily understand the loader hierarchy.
@mcansh would there be any harm in just allowing both flat and nested as was the case before v1.15.0?

you end up with lot of flat folders since you can’t really nest

This is exactly the idea of v2 "flat routes".  Some folks prefer flat (including us).  Some prefer nested.  Some prefer to implement their own routes function 😉

disallowing a nested structure makes it more difficult for the developer to easily understand the loader hierarchy.

Nothing is disallowed - the v1 convention is available through the @remix-run/v1-route-convention package.
I'm going to close this because this was a bug fix in 1.15.0 - v2 "flat routes" is specifically designed to flatten your routes folder away from the heavily nested folder structures that you ended up with when using the original/v1/nested convention.  It was never intended for routes/_layout/_index/route.tsx to be valid using the v2 convention.
We understand and agree this is highly subjective and preferential which is why we provide 2 basic conventions and then given you full control to develop your own via remix.config.js routes.  As @kiliman has shown with his excellent remix-flat-routes package - you can go above and beyond if neither the v1 or v2 convention suffices for your needs.

Totally fine if you prefer flat, but the original RFC has multiple comments mentioning the ability to nest and colocate as part of v2 – which was the main selling point for many people and basically the comments with the most upvotes there as well.
Again, totally fine if this wasn't the intention in the first place, but I'd love if I could have an answer to a very simple question I asked twice that got unanswered here: what's the advantage of disabling nesting and what's the drawback of allowing it?

I see nothing in the Justification section of https://github.com/remix-run/remix/discussions/4482 about being able to nest folders within one another.

what's the advantage of disabling nesting

We think flat routes provides a simpler approach for the majority of Remix apps.  Can't please everyone but we think this is a better default for small to medium sized apps.  Neither convention is particularly good for large scale apps and we expect most of them will use remix.config.js routes to do something more advanced tailored to their app.
The reason it is no longer in the repo is that we only want one convention in the primary repo.  Not 2 implementations, 2 sets of tests, 2 sets of docs, etc.  We're a small team and the maintenance overhead is non-negligible.  The v1 implementation now lives in a separate repo and is considered feature complete.

what's the drawback of allowing it?

None, we are just allowing it in a separate package for the same reasons above.