AnimationPlayer doesn't update in real-time when bezier curves change

Tested versions
4.3.stable
System information
Godot v4.3.stable - Windows 10.0.22631 - Vulkan (Forward+) - dedicated NVIDIA GeForce RTX 4070 Laptop GPU (NVIDIA; <IP_ADDRESS>83) - AMD Ryzen 7 7840HS w/ Radeon 780M Graphics (16 Threads)
Issue description
When adjusting bezier keys, the animation doesn't update until you scrub the timeline. This was recently fixed for regular keys https://github.com/godotengine/godot/pull/91599, but should be fixed for bezier keys as well.
https://github.com/user-attachments/assets/ba468d9b-7509-4e91-80dc-5aad2ca456d5
Steps to reproduce
Create a bezier animation and try adjusting the keys. Not how the objects don't update until you scrub the timeline.
Minimal reproduction project (MRP)
NA

When adjusting bezier keys, the animation doesn't update until you scrub the timeline. This was recently fixed for regular keys https://github.com/godotengine/godot/pull/91599, but should be fixed for bezier keys as well.

The way to go with the implementation is right, so it is great if someone could work on it

I will be touching this later today if no one else has picked it up.

Hi, I would like this pick this up, is anyone else working on this?

I am. Feel free to lend me a hand though.


Add structurally aware fuzzing support

Also stubs out a fuzzer for promises, because we'll want that.
Built upon #27403

@yashykt

This is ready for review.
As a coincidental step I've removed fuzzer code generation from cmake: I don't think we need to run that code in those environments, and it simplifies drastically the number of steps to deploy a fuzzer.

This is ready for review.
As a coincidental step I've removed fuzzer code generation from cmake: I don't think we need to run that code in those environments, and it simplifies drastically the number of steps to deploy a fuzzer.

+1 to simplifying the non-bazel builds.


big file has crash too

Yes, correct.

With WebAudio backend, even if i give peaks to draw the waveform, it internally decodes the audio to transform it to an AudioBuffer and put it to AudioBufferSourceNode. So the waveform is drawn without any problems, but in case of big audio files, the browser crashes because it decodes the data in memory.
If we give an HTML5 tag with peaks, the waveform is drawn without decoding. Moreover, giving the source (HTML tag) to MediaElementSourceNode, it does not decode audio data in memory, so it can be played without any problems (like with MediaElement backend).
So in this way we can add filters and have more controls with audio because we can use API Web Audio,  even with big audio files.
If we give an HTML5 tag with peaks, the waveform is drawn without decoding. Can you give me a demo that an h5 tag with peaks ?  How can i get the peaks ? This is a problem.

h5 tag with peaks ? How can i get the peaks ? This is a problem.

What does this mean? Please rephrase and explain.


Changed label of operators

This PR changes the labels of the operators.

If operator is negated. It changes AND and OR to NAND and NOR.
It uses uppercase letters for operator labels.

Test data have a conflict. What is really strange is how those tests could pass when the JSON is invalid due to conflict markers.

Is not it strange. The test reads the file as a text file and then creates an array of lines in the file without edges. Because edges contain UUID data. That's why the tests pass. The file is .js and it starts with var data =" json..." because it bypasses the request CORS is not HTTP. In fact, it is not a JSON file and the test compares the lines in the file.

Hello @Honny1! Thanks for updating this PR. We checked the lines you've touched for PEP 8 issues, and found:

In the file graph/converter.py:

Line 58:21: E131 continuation line unaligned for hanging indent


Wrong type captured

import numpy as np
import jax.numpy as jnp

xs = np.array([1000000000000, 2, 3, 4])
jxs = jnp.array([1000000000000, 2, 3, 4])

print(xs)
print(jxs)

Outputs:
[1000000000000             2             3             4]
[-727379968          2          3          4]

OK, export JAX_ENABLE_X64=1 solves this, but no warning is raised.

Here is another issue:
import numpy as np
import jax.numpy as jnp

xs = np.array([1000000000000, 2, 3, 4])
jxs = jnp.array([1000000000000, 2, 3, 4])

for x in xs:
    print(x, x.dtype, type(x))

for x in jxs:
    print(x, x.dtype, type(x))

Output:
1000000000000 int64 <class 'numpy.int64'>
2 int64 <class 'numpy.int64'>
3 int64 <class 'numpy.int64'>
4 int64 <class 'numpy.int64'>
1000000000000 int64 <class 'numpy.longlong'>
2 int64 <class 'numpy.longlong'>
3 int64 <class 'numpy.longlong'>
4 int64 <class 'numpy.longlong'>

jax iterator outputs platform dependent element type
In this case, int64 became numpy.longlong.
On windows, I also observe int32 became cint, but not on linux.

I think this is an issue that other folks have hit before. There's a difference between "native" and "standard" sizes in NumPy that manifests only in Windows:
https://docs.python.org/3/library/struct.html#byte-order-size-and-alignment
https://github.com/pybind/pybind11/issues/1806
https://github.com/pybind/pybind11/issues/1908
My guess is we need to change some of the format descriptors returned here:
https://github.com/tensorflow/tensorflow/blob/516f4a121c5c1f9bb712b774109c6ad5283d27ad/tensorflow/compiler/xla/python/types.cc#L104
to have = prefixes.

This is not specific to windows.


Support babel-eslint

it is the same concept as #51 but without code conflict

Thanks for putting this together. I guess if people want esprima and esprima-fb support it can be added later on.
I'll close my PR to reduce noise.

any updates on this? still a problem ( #61 )

Ran into this today.  @stephenkubovic would you be interested in getting a hand in maintaining this plugin?


Safe Area is not respected with the TipView

If a TipView is presented close to the edge of the screen, it will go beyond the bounds of the safe area, so it can be cut off by the notch. This is particularly apparent in landscape mode.
Thank you so much for supporting an Objective-C version of this!! 👍

#1076e95

ac30c0318629a4c24b51d01d34f656edae84bca2
Added support for safeArea


HFS is an Apple file system, now under the same rule as squashfs

https://github.com/ansible-lockdown/RHEL8-CIS/blob/4d0dabaf36ed92a423bb779c1230ff1a8b21330c/tasks/section_1/cis_1.1.1.x.yml#L93
Found having this var from the previous release to enable squashfs, now enables HFS.
Squash file system needed for Kickstart
rhel8cis_rule_1_1_1_3: false

https://github.com/ansible-lockdown/RHEL8-CIS/blob/4d0dabaf36ed92a423bb779c1230ff1a8b21330c/tasks/section_1/cis_1.1.1.x.yml#L105


Use vJoy to locate the 'increase bet' button

Use vJoy to simulate a controller's DPad to move the cursor over the 'increase bet' button rather than searching it on the screen. Based on @xbytex's suggestion in #6.
Using vJoy drivers should be optional, so no user will be forced to install it, if the current way of locating the button works just fine.
Might have to check if vJoy can simulate a press on the DPad, but should be possible.
Resources

vJoy Download
Writing a feeder application

This is an optional goal, but should be implemented at some point. May not be included in version 1.1.1 if the implementation is too difficult.

Sould use vXbox
and its Drivers/SDK
May be not that hard.


Import Error when using napalm Aruba driver

Hi,
I currently am experiencing a problem when trying to use the Aruba driver for napalm...
When i use the following command:
napalm --vendor aoscx --user  --password <pw_redacted>  call get_facts
Napalm errors out wit the following message:
2021-07-07 11:43:54,370 - napalm - ERROR - get_network_driver - Failed: cannot import name 'system'
================= Traceback =================
Traceback (most recent call last):
File "/opt/netbox/venv/bin/napalm", line 8, in
sys.exit(main())
File "/opt/netbox/venv/lib64/python3.6/site-packages/napalm/base/clitools/cl_napalm.py", line 308, in main
run_tests(args)
File "/opt/netbox/venv/lib64/python3.6/site-packages/napalm/base/clitools/cl_napalm.py", line 268, in run_tests
driver = call_get_network_driver(args.vendor)
File "/opt/netbox/venv/lib64/python3.6/site-packages/napalm/base/clitools/cl_napalm.py", line 27, in wrapper
r = func(*args, **kwargs)
File "/opt/netbox/venv/lib64/python3.6/site-packages/napalm/base/clitools/cl_napalm.py", line 170, in call_get_network_driver
return get_network_driver(vendor)
File "/opt/netbox/venv/lib64/python3.6/site-packages/napalm/base/init.py", line 95, in get_network_driver
raise e
File "/opt/netbox/venv/lib64/python3.6/site-packages/napalm/base/init.py", line 86, in get_network_driver
module = importlib.import_module(module_name)
File "/usr/lib64/python3.6/importlib/init.py", line 126, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
File "", line 994, in _gcd_import
File "", line 971, in _find_and_load
File "", line 955, in _find_and_load_unlocked
File "", line 665, in _load_unlocked
File "", line 678, in exec_module
File "", line 219, in _call_with_frames_removed
File "/opt/netbox/venv/lib64/python3.6/site-packages/napalm_aoscx/init.py", line 16, in
from napalm_aoscx.aoscx import AOSCXDriver
File "/opt/netbox/venv/lib64/python3.6/site-packages/napalm_aoscx/aoscx.py", line 52, in
from pyaoscx import session, interface, system, common_ops, port, lldp, mac
ImportError: cannot import name 'system'
Am I missing something here?
I do have the requierements installed, pyaoscx, requests and urllib3 and Python is version 3.6.8 runnign on CentOS Linux release 8.4.2105.
Thanks in advance!

Hello,
Which version of pyaoscx was installed?  The current version of this driver should be version locked to pyaoscx v1.0.0, as I am still updating the drivers to work with pyaoscx v2.

Hello,
Which version of pyaoscx was installed? The current version of this driver should be version locked to pyaoscx v1.0.0, as I am still updating the drivers to work with pyaoscx v2.

some news about support of pyaoscx v2 ?

any update about support vor pyaoscx v2? is this repo still maintained?

Hello, Which version of pyaoscx was installed? The current version of this driver should be version locked to pyaoscx v1.0.0, as I am still updating the drivers to work with pyaoscx v2.

any update about support vor pyaoscx v2? is this repo still maintained?

Hello, we are still currently waiting on pyaoscx v2 feature parity for NAPALM.  This repo will be updated for v2 once more of the prerequisite modules are released.  We have been working on the release of OSPF and QOS modules for pyaoscx v2 and Ansible, so the development is ongoing, unfortunately it is going slower than expected.

Hi, as napalm 3 was released in May 2020 and is widely as  a requirement for lots of other napalm drivers it might be better to release what's already there then to wait for the last features to implemented in pyoscx v2.
I think there are not too many use cases where the current cx driver is still usable and a napalm 3 driver (or a napalm3 branch of this repo) might be helpful.

That is a good point.  Due to the delays we have been having, I'll look into creating a NAPALM 3 branch to try and develop that on the side.  Thanks for the suggestion.


Needs an update on how to Download blob info.

[Enter feedback here]
await download.Content.CopyToAsync(downloadFileStream) should be await download.Value.Content.CopyToAsync(downloadFileStream)

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

ID: 60e56e69-1c44-2056-ad5f-319535e4b525
Version Independent ID: 49fa6098-0b8e-ebf5-efe7-f50f3604e325
Content: Quickstart: Azure Blob Storage library v12 - .NET
Content Source: articles/storage/blobs/storage-quickstart-blobs-dotnet.md
Service: storage
Sub-service: blobs
GitHub Login: @mhopkins-msft
Microsoft Alias: mhopkins

@JeffLoo-ong Thanks for reporting this. I have assigned the issue to the content author to investigate further and update the document as appropriate.

@JeffLoo-ong Thanks for reporting this. I have assigned the issue to the content author to investigate further and update the document as appropriate.

Hi @JeffLoo-ong
I've recreated the quickstart project from the article. The code in the article works as documented. Have you changed something in your code that is different from the article?
~ Mark

Hi @JeffLoo-ong
I haven't heard back from you in a week so I'm going close this issue for now. If you still have problems, please feel free to reactive the issue.
Thanks,
~ Mark
#please-close


Post with ACF value

Hi,
Thanks for this plugin API.
I am trying to add or update a post with an ACF value (https://www.advancedcustomfields.com/), like:
wp.posts().id( 180 ).post({

    acf: {theme: "test"}

}).then(function( response ) {

    console.log( response.id );

})

I activate acf-to-rest-api (https://github.com/airesvsg/acf-to-rest-api) and WP API 2.0 on my wordpress site.
It doest work, maybe because to update acf value it's another endoint:
endpoint: 'http://website.com/wp-json/acf' but authorization fail if I change it.

@BenHen75 Thanks for opening this, we've got support in the works ( #176 ) for custom routes like ACF and other recent changes ( #145 ) set us up to automatically create a wp.namespace( 'acf' )... handler method if your site is detected to be using that plugin, but neither piece of functionality is live yet. Please take a look at #176 and let me know if you think it would suit your needs, and keep an eye out for autodiscovery support hopefully some time in the next week.

I'm provisionally closing this out as resolved by the registerRoute method added in a previous release, but @BenHen75 if you find the custom route support doesn't solve your problem please re-open the issue so we can get you sorted.


[Cmake issue]   Please run /Depot/jjjj/libjxl-27.03.2024/deps.sh to fetch the build dependencies.

I just git cloned today for libjxl's source.
Then I ran cmake.
First it complained that google gtest was not available. I compiled it as well.
Upon re-running this, after removing the cache, I get this:
cmake -DCMAKE_INSTALL_PREFIX=/usr ..
-- The C compiler identification is GNU 14.0.1
-- The CXX compiler identification is GNU 14.0.1
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /usr/bin/cc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- CMAKE_SYSTEM_PROCESSOR is x86_64
-- Performing Test CXX_FUZZERS_SUPPORTED
-- Performing Test CXX_FUZZERS_SUPPORTED - Failed
-- Performing Test CXX_MACRO_PREFIX_MAP
-- Performing Test CXX_MACRO_PREFIX_MAP - Success
-- Performing Test CXX_NO_RTTI_SUPPORTED
-- Performing Test CXX_NO_RTTI_SUPPORTED - Success
-- Found PkgConfig: /usr/bin/pkg-config (found version "0.29.2")
-- Performing Test JXL_HWY_DISABLED_TARGETS_FORCED
-- Performing Test JXL_HWY_DISABLED_TARGETS_FORCED - Failed
-- Compiled IDs C:GNU, C++:GNU
-- Disabled AVX512 (set JPEGXL_ENABLE_AVX512 to enable it)
-- Disabled AVX512_SPR (set JPEGXL_ENABLE_AVX512_SPR to enable it)
-- Disabled AVX512_ZEN4 (set JPEGXL_ENABLE_AVX512_ZEN4 to enable it)
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Success
-- Found Threads: TRUE
-- Performing Test ATOMICS_LOCK_FREE_INSTRUCTIONS
-- Performing Test ATOMICS_LOCK_FREE_INSTRUCTIONS - Success
-- Found GTest: /usr/lib/cmake/GTest/GTestConfig.cmake (found version "1.14.0")
-- Found HWY: /usr/lib/libhwy.so (found suitable version "1.1.0", minimum required is "1.0.7")
-- Checking for module 'libbrotlicommon'
--   Found libbrotlicommon, version 1.1.0
-- Checking for module 'libbrotlienc'
--   Found libbrotlienc, version 1.1.0
-- Checking for module 'libbrotlidec'
--   Found libbrotlidec, version 1.1.0
-- Found Brotli: /usr/include

CMake Error at third_party/CMakeLists.txt:100 (message):
  Please run /Depot/jjjj/libjxl-27.03.2024/deps.sh to fetch the build
  dependencies.

-- Configuring incomplete, errors occurred!

So, the first error in regards to libjxl's current handling is:
(1) it tells the user that deps.sh should be used. But I don't want to. I want
to be able to control what I install at all times. The correct solution here is
to report what is missing. For some reason, libjxl does not tell the user
what is missing now - look at the above output. It does not tell me what
is missing now. This leads me to the second error:
(2) libjxl should tell the user what exactly is missing. After I installed
googletest, it does not tell me EXACTLY what is missing; it only tells
me to use deps.sh, which I do not want to. So both (1) and (2) in
combination is wrong right now.
Yes, some users may want to use deps.sh - that is fine. I'd still reason
that this behaviour is wrong, but I am ok if cmake warns us and then
tells us that deps.sh should be used. But it should not assume that
everyone wants to use some random .sh file, even less so when there
is now no information shown what exactly is missing. That is, IMO,
an incorrectly set up build system situation. Other cmake based projects
report what is missing; I compile all of KDE from source, for instance,
and they do that, always telling the user what is missing.

Thanks for the feedback. Just to understand better: Did you clone with the --recursive flag or ran git submodule update --init --recursive later to get the submodules?


Add Support for multiple Languages

Implement a setting to switch the language of EPIC. Helps users to understand and use the program.

Ruled out in a customer meeting, because it would slow down and potentialy complicated the development of further features.


Rebase ra-tls sample code with the latest stable wolfssl

Following https://github.com/alibaba/inclavare-containers/issues/229, rebase ra-tls sample code with the latest stable wolfssl upstream.

@YangLiang3 @zhiminghufighting Plz pay close attention to this issue. ecdsa support for wolfssl may be based on current ra-tls sample code or the newer based on this work. Plz make the choice according to your progress.

@YangLiang3 @zhiminghufighting Plz pay close attention to this issue. ecdsa support for wolfssl may be based on current ra-tls sample code or the newer based on this work. Plz make the choice according to your progress.


changing to python3 kernel hangs on a non domain joined local user windows vm

Azure Data Studio Version:
Version: 1.21.0-insider (user setup)
Commit: f941f99
Date: 2020-08-03T05:36:14.244Z
VS Code: 1.48.0
Electron: 9.1.0
Chrome: 83.0.4103.122
Node.js: 12.14.1
V8: <IP_ADDRESS>-electron.0
OS: Windows_NT x64 10.0.19041

Steps to Reproduce:

Login into a windows hyper-v host machine. The bug was reproduced from SQLTOOLS-HEKA1
From Hyper-V manager right click on the hostname and click 'Quick Create'

Select 'Windows 10 dev environment' and then click on 'Create Virtual Machine'
. Click through the VM creation wizard with all default settings.
Connect to the VM once it has been created.
Log into the VM as the default local windows user account (called 'user'). Kindly note that this vm is in a workgroup not joined to a domain.
Download the Windows User Installer insider's build msi from: https://azuredatastudio-update.azurewebsites.net/latest/win32-x64-user/insider
Run the downloaded msi and click through using default options of the installer. Except on 'Select Additional Tasks' page, check all of the following options:

As documented in https://github.com/microsoft/azuredatastudio/issues/11630, there is a popup error reported during installation. Click ok to dismiss the pop-up and everything proceeds to completion.
Create a new notebook when the ADS starts up.

In the new notebook that opens change Kernel from 'SQL' to 'Python3'. This pops open the following dialog:

Keep everything the default and click on install.
Notebooks output channel opens up at the bottom as python installation proceeds. It ends with the following entry:

... Starting Notebook server
    > "C:\Users\User\azuredatastudio-python\0.0.1\python.exe" "c:\Users\User\AppData\Local\Programs\Azure Data Studio - Insiders\resources\app\extensions\notebook\resources\pythonScripts\startNotebook.py" --no-browser --no-mathjax --notebook-dir "c:\Users\User" --port=9840 --NotebookApp.token=6c59df721fdfdd3e97fbdcb0c0f9e8f902f643083e24f838

Actual:
However, the kernel does not change to 'Python3' and remains stuck at 'Changing Kernels'. If one starts another new notebook and one changes the Kernel in that 2nd new notebook to 'Python3' even that does not finish and remains stuck in 'Changing Kernels' state.
Expected:
The kernel should change to Python3 successfully and one should be able to create and execute python cells.

Dupe of #11607.


Feature/fetch flow execution updates

Closes: #23
Fetches the updated information for an execution. It filters by lastUpdateTime which only returns job information updated afterwards

Please, check conflicts

Looks good to me, @Perkles ! Thank you!


fix(production): Using new docker image

:tada: This PR is included in version 4.0.2 :tada:
Your semantic-release bot :package::rocket:


[CLOSED] Add support for secured contexts in JSE6 embedded HTTP/HTTPS server tests

 Issue by GoogleCodeExporter
Monday May 11, 2015 at 15:03 GMT
Originally opened as https://github.com/twogee/missing-link/issues/1

Add support for secured contexts in JSE6 embedded HTTP/HTTPS server tests

Original issue reported on code.google.com by<EMAIL_ADDRESS>on 11 Mar 2011 at 1:42

 Comment by GoogleCodeExporter
Monday May 11, 2015 at 15:03 GMT

Original comment by<EMAIL_ADDRESS>on 11 Mar 2011 at 1:42

Changed state: Started

 Comment by GoogleCodeExporter
Monday May 11, 2015 at 15:03 GMT

- Added support for secured contexts and tests against them

Original comment by<EMAIL_ADDRESS>on 12 Mar 2011 at 3:20

Changed state: Verified

 Comment by GoogleCodeExporter
Monday May 11, 2015 at 15:04 GMT

Original comment by<EMAIL_ADDRESS>on 19 Mar 2011 at 2:28

Added labels: Milestone-1.0

 Comment by GoogleCodeExporter
Monday May 11, 2015 at 15:03 GMT

Original comment by<EMAIL_ADDRESS>on 19 Mar 2011 at 2:27

Added labels: Project-ant-http

 Comment by twogee
Monday May 11, 2015 at 21:30 GMT

This issue was moved to twogee/ant-http#1

 Comment by twogee
Monday May 11, 2015 at 21:26 GMT

This issue was moved to twogee/ant-http#1

 Comment by twogee
Monday May 11, 2015 at 21:34 GMT

This issue was moved to twogee/ant-http#1


Matlab: Addition of 2 numbers

Description
Added 2 number in addition.m
Additional Context
no additional context required

Merged

This is an automated message from Fork, Commit, Merge [BOT].

Thank you for your contribution! Your pull request has been merged. The files have been reset for the next contributor.
What's next?
If you're looking for more ways to contribute, I invite you to check out my other projects. Just click here to find more. These projects contain real issues that you can help resolve. You can also check out the Influences section in the README to find more projects similar to this one.
Also please leave a star to this project if you feel it helped you, i would really appreciate it.
I look forward to seeing your contributions!


Replace async/await usage in Pop with Promise

Replace async/await usage in Pop with Promise
This update replaces the async/await usage in Pop with standard JS
Promises. This ensures the consuming application has an easier time
compiling with minimal/no adjustments to existing Babel configs.

:shipit: Thanks!

@tinkertrain Thank you! Will merge on green, and do a patch release ASAP

Pull Request Test Coverage Report for Build 1704

6 of 6 (100.0%)  changed or added relevant lines in 1 file are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 100.0%

Totals

Change from base Build 1700:
0.0%

Covered Lines:
6479

Relevant Lines:
6479

💛  - Coveralls


refetchQueries & getQueries seems not working with query variables in v1.0.27

@tannerlinsley
Doesn't Work:
queryCache.refetchQueries(['products', { merchantId: 8 }])
queryCache.getQueries(['products', { merchantId: 8 }])
Works:
queryCache.refetchQueries('products')
queryCache.refetchQueries(['products'])
queryCache.getQueries('products')
queryCache.getQueries(['products'])

It was my mistake,  sorry


[SPARK-8548][SparkR] Remove the trailing whitespaces from the SparkR files

[SPARK-8548] Remove the trailing whitespaces from the SparkR files - ASF JIRA

This is the result of lint-r
https://gist.github.com/yu-iskw/0019b37a2c1167f33986

Merged build triggered.

@shivaram Could you review it please when you have time? Thanks!

Merged build started.

Test build #35496 has started for   PR 6945 at commit 0bd567a.

Test build #35496 has finished for   PR 6945 at commit 0bd567a.

This patch passes all tests.
This patch merges cleanly.
This patch adds the following public classes (experimental):
      //     class ParentClass(parentField: Int)
      //     class ChildClass(childField: Int) extends ParentClass(1)
          // If the class type corresponding to current slot has writeObject() defined,
          // then its not obvious which fields of the class will be serialized as the writeObject()
class SerializableConfiguration(@transient var value: Configuration) extends Serializable
class SerializableJobConf(@transient var value: JobConf) extends Serializable
class Module(object):
class NGram(override val uid: String)
class StreamingKMeansModel(KMeansModel):
class StreamingKMeans(object):
class PCAModel(JavaVectorTransformer):
class PCA(object):
case class UnresolvedAlias(child: Expression) extends NamedExpression
abstract class ExtractValueWithStruct extends ExtractValue
abstract class GeneratedClass
case class Bin(child: Expression)
case class Md5(child: Expression)

Merged build finished. Test FAILed.

Thanks @yu-iskw -- LGTM. Merging this

Also FYI I also backported this to branch-1.4 as it'll make future cherry-picks easier.

@shivaram Thank you for merging it!


feat: Add iam role unique_id to outputs

Description
Adds unique_id from aws_iam_role to outputs.
Motivation and Context
Resolves #141. The unique_id is required in certain AWS contexts, so it is a needed output.
Breaking Changes
No breaking changes.
How Has This Been Tested?

[X] I have tested and validated these changes using one or more of the provided examples/* projects
Deployed module from personal fork and verified that unique_ids are present in the output.

Thanks for the addition, @jhancock93 !
Here is AWS IAM documentation about unique ids - https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_identifiers.html#identifiers-unique-ids
v3.16.0 has been just released.


SSB Updates

Just a quick few updates for myself and rank changes for others.

I gotta add your new entry but okay looks good


Added code coverage checks. Enabled regression tests.

Welcome to Codecov :tada:
Once merged to your default branch, Codecov will compare your coverage reports and display the results in this comment.
Thanks for integrating Codecov - We've got you covered :open_umbrella:


syntax highlighting issues

Bug Report
Description
The issue is that syntax highlighting is either non existent or partially non existent for many languages. This is not urgent in any way, it's more of a quality of life thing and an accessibility issue, this is because syntax highlighting makes it easier for individuals such as my self to read code, helping those that are Neurodivergent, or that have eye tracking issues. Also it is important to note that several languages already have full syntax highlighting and the fact that there is this difference can lead to an inconsistency between implementations because you can go from a language that has full to non when switching between languages in a single algorithm. The following are the languages that have no syntax highlighting:

[ ] coconut
[ ] LOLCODE?
[ ] Piet (the written part)
[ ] Whitespace
[ ] possibly emojicode
[ ] GNUPLOT

Steps to Reproduce
Steps to reproduce the behavior:

Go to Iterated Function Systems (for example but any chapter with code will work if it has the language in question)
Click on the language change drop down
Change language to one of the above mentioned ones
Scroll down until a code block comes up
You will see that it is not syntax highlighted

Expected behavior
Again I would not classify this so much as expected behaviors but more as something nice to see. It would be nice for various reasons (only some of which were mentioned above) to have all languages be syntax highlighted in code blocks. I would be willing to elaborate more on my personal reasons for preferring syntax highlighting below in a response .
Screenshots
I have put together some side by side images of syntax highlighting on AAA vs. in vs code (vs code since that is my personal preferred text editor and thus is what I have on hand to compare to, I'm sure you could find something similar in atom, sublime, vim or any other text editor, that is just my personal choice). As a note I installed some plugins for certain lang's such as the official Julia plugin for Julia. Also I could not find a single implementation that had all of the manga I wanted to show so I used different algorithms for some.

GNUPLOT (domain coloring)

vs code
AAA

Coconut (Barnsley fern)

vs code
AAA

Environment

OS: Windows
OS Version: 10.0.19043
Browser: Firefox (this should be the same across all browsers though and it would be an actual big problem if it was not)
Browser Version: 95.0.2

Additional context
There are also several languages that technically have syntax highlighting but to a significantly lesser degree then would be nice to have. Some languages have certain key words or numbers highlighted but not others. Below I have compiled a list of some of the languages that could benefit from better syntax highlighting, though it is not all that extensive just a quick example list:

[ ] Julia
[ ] Common Lisp
[ ] C++
[ ] smalltalk

In general I feel that the syntax highlighting could be better across across the board.
For Algorithm Archive Developers

[ ] The bug can be reproduced
[ ] The bug can be fixed
[ ] There is a timeline to fix the bug
[ ] The bug has been fixed (Please link the PR)

are there any other tags that should be added to this issue?
I was thinking discussion may work but I'm not certain


shortcuts for adding and deleting code annotations

Decided not to add a key binding for any commands except the 'show-commands' command.
See https://discuss.atom.io/t/key-binding-hell/12075/5
Therefore keyboard usage would be navigating to the ShowCommandsView or using the atom command palette.


Segfault after upgrading

I recently updated Rails for some CVE patches which had the side effect of updating Sprockets to 3.0.
As I result I'm also updating sassc-rails to 1.2. After doing all of this I'm getting a segfault.
14:15:20 rails.1   | ruby 2.2.4p230 (2015-12-16 revision 53155) [x86_64-darwin14]
14:15:20 rails.1   |
14:15:20 rails.1   | -- Crash Report log information --------------------------------------------
14:15:20 rails.1   |    See Crash Report log file under the one of following:
14:15:20 rails.1   |      * ~/Library/Logs/CrashReporter
14:15:20 rails.1   |      * /Library/Logs/CrashReporter
14:15:20 rails.1   |      * ~/Library/Logs/DiagnosticReports
14:15:20 rails.1   |      * /Library/Logs/DiagnosticReports
14:15:20 rails.1   |    for more details.
14:15:20 rails.1   |
14:15:20 rails.1   | -- Control frame information -----------------------------------------------
14:15:20 rails.1   | c:0218 p:---- s:1290 e:001289 CFUNC  :compile_data_context
14:15:20 rails.1   | c:0217 p:0284 s:1286 e:001285 METHOD /usr/local/Cellar/rbenv/0.4.0/versions/2.2.4/lib/ruby/gems/2.2.0/gems/sassc-1.8.4/lib/sassc/engine.rb:39
14:15:20 rails.1   | c:0216 p:0008 s:1277 e:001276 BLOCK  /usr/local/Cellar/rbenv/0.4.0/versions/2.2.4/lib/ruby/gems/2.2.0/gems/sassc-rails-1.2.0/lib/sassc/rails/template.rb:27
14:15:20 rails.1   | c:0215 p:0060 s:1275 e:001274 METHOD /usr/local/opt/rbenv/versions/2.2.4/lib/ruby/gems/2.2.0/gems/sprockets-3.5.2/lib/sprockets/utils.rb:154
14:15:20 rails.1   | c:0214 p:0154 s:1269 e:001268 METHOD /usr/local/Cellar/rbenv/0.4.0/versions/2.2.4/lib/ruby/gems/2.2.0/gems/sassc-rails-1.2.0/lib/sassc/rails/template.rb:26
14:15:20 rails.1   | c:0213 p:0011 s:1261 e:001260 METHOD /usr/local/opt/rbenv/versions/2.2.4/lib/ruby/gems/2.2.0/gems/sprockets-3.5.2/lib/sprockets/sass_processor.rb:30
14:15:20 rails.1   | c:0212 p:0055 s:1257 e:001256 METHOD /usr/local/opt/rbenv/versions/2.2.4/lib/ruby/gems/2.2.0/gems/sprockets-3.5.2/lib/sprockets/processor_utils.rb:75
14:15:20 rails.1   | c:0211 p:0017 s:1250 e:001249 BLOCK  /usr/local/opt/rbenv/versions/2.2.4/lib/ruby/gems/2.2.0/gems/sprockets-3.5.2/lib/sprockets/processor_utils.rb:57 [FINISH]
14:15:20 rails.1   | c:0210 p:---- s:1246 e:001245 CFUNC  :reverse_each
14:15:20 rails.1   | c:0209 p:0042 s:1243 e:001242 METHOD /usr/local/opt/rbenv/versions/2.2.4/lib/ruby/gems/2.2.0/gems/sprockets-3.5.2/lib/sprockets/processor_utils.rb:56
14:15:20 rails.1   | c:0208 p:0335 s:1236 e:001235 METHOD /usr/local/opt/rbenv/versions/2.2.4/lib/ruby/gems/2.2.0/gems/sprockets-3.5.2/lib/sprockets/loader.rb:134
14:15:20 rails.1   | c:0207 p:0077 s:1217 e:001216 BLOCK  /usr/local/opt/rbenv/versions/2.2.4/lib/ruby/gems/2.2.0/gems/sprockets-3.5.2/lib/sprockets/loader.rb:60
14:15:20 rails.1   | c:0206 p:0042 s:1212 e:001211 METHOD /usr/local/opt/rbenv/versions/2.2.4/lib/ruby/gems/2.2.0/gems/sprockets-3.5.2/lib/sprockets/loader.rb:318
14:15:20 rails.1   | c:0205 p:0138 s:1203 e:001202 METHOD /usr/local/opt/rbenv/versions/2.2.4/lib/ruby/gems/2.2.0/gems/sprockets-3.5.2/lib/sprockets/loader.rb:44
14:15:20 rails.1   | c:0204 p:0014 s:1195 e:001191 BLOCK  /usr/local/opt/rbenv/versions/2.2.4/lib/ruby/gems/2.2.0/gems/sprockets-3.5.2/lib/sprockets/cached_environment.rb:20 [FINISH]
14:15:20 rails.1   | c:0203 p:---- s:1188 e:001187 CFUNC  :yield

I'm not really sure where to go with this from here, so I'm hoping someone might have a suggestion.

After a bit of testing, this segfault seems to happen whenever it encounters any kind of asset pipeline helper, including image_tag or asset_url

To fix this in the short term, you can fix this by downgrading sprockets-rails:
gem 'sprockets-rails', '< 3.0.0'

Thanks that works for the time being.

Hm, I'm trying to switch from sass-rails (4.0.5) to sassc-rails (1.2.0), and I'm seeing this same segmentation fault, at sassc-1.8.4/lib/sassc/engine.rb:39, but I'm on sprockets-rails 2.2.4 (and sprockets 2.12.4), which is a version of sprockets-rails that is less than 3.0.0, so the suggested fix does not work for me.
I also tried upgrading to sprockets-rails 2.3.3 and sprockets 2.12.4 and I'm still getting the segfault :(
Is there any other information I could provide that would be useful? Do you have any other suggested debugging steps? I have a lot of CSS...

Hey @carols10cents - Sorry for the delayed response, I missed your comment somehow.  I just released sassc-ruby 1.8.5, could you try setting that in your gemfile?
Also, is there any way you can update to Sprockets 3.5?  That could be the issue as well.

@bolandrm Thank you for getting back to me! :heart: Don't worry about the delay :)
Between when I posted that and today, I did get my app upgraded to sprockets 3.5.2, but I was still getting the segfault if I switched to sassc-- but sassc 1.8.5 has fixed it!

Perfect!  Closing this issue then


Contribution Guidelines

Hello Guys!
Can you provide a contribution guidelines?

hi @justindefodji
There are no special guidelines yet.
You are free to contribute as long as you use the prescribed PR form and include test code.


[Text Analytics] Simplifying error handling

Use a throwError helper everywhere which in turn transforms the caught error before throwing it again.

API change check
API changes are not detected in this pull request.


Channel parsing limited to 100 messages

The discord API only allows 100 messages to be fetched per call.  This may cause an issue with the current PSN parsing code later on.

Should be unlimited. Just double checked Discord.js source code and their examples. The method you are using, channel.getLogs just returns an instance of client.getChannelLogs(). Either way, if you do not pass a limit option, the default is set to 50 returned message bodies. I can see, in your case, that you are passing 100 as a limit. What seems to be happening on your end?
P.S. I tried setting my general text channel as the PSN channel, but... nothing really happened aside from some logging output showing that it was parsing ID's.
EX:
bash 2016-08-14T20:31:28.850Z - debug: checking for PSN channels on server: FFC_Test_Server 2016-08-14T20:31:28.851Z - info: scraping PSN tags from FFC_Test_Server/general 2016-08-14T20:31:29.234Z - debug: parsing -id>|<@discord-id>
2016-08-14T20:31:29.235Z - debug: Token: -id>
2016-08-14T20:31:29.235Z - debug: Token: <@discord-id> 2016-08-14T20:31:29.236Z - debug: parsing -id>|<@discord-id>
2016-08-14T20:31:29.236Z - debug: Token: -id>
2016-08-14T20:31:29.237Z - debug: Token: <@discord-id> 2016-08-14T20:31:29.237Z - debug: parsing -id>|<@discord-id>
2016-08-14T20:31:29.237Z - debug: Token: -id>
2016-08-14T20:31:29.239Z - debug: Token: <@discord-id> 2016-08-14T20:31:29.240Z - debug: parsing -id>|<@discord-id>
2016-08-14T20:31:29.240Z - debug: Token: -id>
2016-08-14T20:31:29.240Z - debug: Token: <@discord-id>

When I tried to increase the limit to over 100, I received an API error stating that the value cannot be more than 100.  As mentioned in the other issue, this is a messy hack and I am not at all happy with it, but it worked around the way the current users operate on the server.
The parsing is crude, it first checks to see if the line contains a '-' followed by one or more characters, then a '|'.  If it does, then it tries to parse the line in the form:
@discordid psn | game1, game2, ... | timezone
Take a look at #psn-dev for some examples.


feat: show an error and terminate if there are no commands defined

If no commands have been registered, it shows the user an error along with some notes to help them:

Why this check?
Because I had to struggle a little bit with this error: Undefined array key 0 {"exception":"[object] (ErrorException(code: 0): Undefined array key 0 at /.../vendor/aaronfrancis/solo/src/Prompt/Dashboard.php:77).
I encountered this error after installing solo in a Laravel 10 app recently upgraded to 11 where I manually needed to register SoloServiceProvider in config/app.php (the "old" way).
This PR could be useful to other users with a similar setup; it may also help those who have forgotten to define at least one command in the service provider (unlikely, but getting distracted is a snap 😅).
Please feel free to adjust the tone of voice of messages: they may sound too harsh 😇
Perhaps, there is also a better way (not in the constructor, I mean) to perform this little check and terminate.
Thanks for this fantastic package!

Great idea! I switched it up a bit to show the About comand, since that already shows some documentation. Thanks!


handle cases where the pitch value is different from -90

        center = Point([self.observation["longitude"], self.observation["latitude"]])  # Convert longitude and latitude to GeoJSON Point
        altitude = float(self.observation["ascent(feet)"]) * 0.3048  # Convert ascent to meters
        fov_atan = math.tan(self.fov)
        diagonal_distance = altitude * fov_atan
        distance = diagonal_distance / 2
        bearing = (float(self.observation["compass_heading(degrees)"]) - 90) % 360 # Calculate bearing
        offset = math.atan(self.video_height / self.video_width) * 180 / math.pi  # Calculate offset based on video resolution

        # Calculate GPS coordinates of the video's four corners
        options = {'units': 'm'}
        self.top_left = rhumb_destination(center, distance, (bearing - offset + 180) % 360 - 180, options).geometry.coordinates
        self.top_left = self.top_left[:: -1]

        self.top_right = rhumb_destination(center, distance, (bearing + offset + 180) % 360 - 180,options).geometry.coordinates
        self.top_right = self.top_right[:: -1]

        self.bottom_right = rhumb_destination(center, distance, (bearing - offset) % 360 - 180, options).geometry.coordinates
        self.bottom_right = self.bottom_right[:: -1]

        self.bottom_left = rhumb_destination(center, distance, (bearing + offset) % 360 - 180, options).geometry.coordinates
        self.bottom_left = self.bottom_left[:: -1]

        # print the GPS coordinates of the video's four corners
        self.current_position = [self.observation["latitude"], self.observation["longitude"]]

        normalized = [self.dy - self.video_height / 2, self.dx- self.video_width / 2]
        distanceFromCenterInPixels = math.sqrt((self.video_width / 2 - self.dx) ** 2 + (self.video_height / 2 - self.dy) ** 2)
        diagonalDistanceInPixels = math.sqrt(self.video_width ** 2 + self.video_height ** 2)
        percentOfDiagonal = distanceFromCenterInPixels / diagonalDistanceInPixels
        distance = percentOfDiagonal * diagonal_distance  # in meters
        angle = math.atan(normalized[0] / (normalized[1] or 0.000001)) * 180 / math.pi
        # if the detection is in the right half of the frame, we need to rotate it 180 degrees

        if normalized[1] >= 0:
            angle += 180

        point = rhumb_destination(center, distance, (bearing + angle) % 360, options).geometry.coordinates
        point = point[:: -1]

Certainly! Isuccessfully rewritten the code in Python, and it's functioning well when the gimbal pitch is set to -90. If I want to extend the functionality to handle cases where the pitch value is different from -90, what should I do ?

Sounds hard to me because in addition to much harder math you’d have to also account for the topology of the terrain (imagine a mountain in front of you; the georeferencing would be much different than flat land or a valley).

I am considering a flat surface for my example, In the previously mention code, the assumption was made that the drone is positioned at the center of the image. However, when the pitch angle of the gimbal differs, an offset is introduced, influencing the drone's apparent location within the frame. I cannot figure out the mathematics behind it.

I am working on similar project where my gimbal isnt looking straight downward? is there any way?


emit OFFER and ANSWER signals before others

This makes peerconnection always emit an OFFER and ANSWER signal first; more specifically, other signals block until an OFFER or ANSWER signal is sent.
The ordering was easy but I took the opportunity to (finally) add a unit test for peerconnection. This required some changes to the API, so I also took the opportunity to introduce some static constructors (datachannel already has this, and in general I've found static constructors helpful).
Addresses this issue:
https://github.com/uProxy/uproxy/issues/784

One thing I'll note is that while the new emitSignal_ function is not incredibly elegant, I wasn't able to think of a nicer, simpler, way to achieve this. The handler queue interface isn't really - IMO - suited for inheritance and I kinda see us moving towards batching messages inside of one giant message anyway, so this seemed like a reasonable compromise.

 Great to see initiateConnection removed from config, the factory construction functions, and the small other cleanups.
Would be good for the test to include a case when the underlying freedom webrtc provider sends the OFFER and CANDIDATES out of order.
I think there might be a nicer way to write the mock object that distinguishes between spy objects and the mock webrtc provider. Also one small nit on an any type that I think can be more informative. I've provided a link to what I think might be a better style. Lets discuss tomorrow :)

src/webrtc/peerconnection.spec.ts, line 10 [r1] (raw file):
I experimented a bit with mock structures and ended up preferring creating a separate file for the mock (because it's often something wanting to be re-used). Using a real class, and having errors returned, or null returned, and then using Jasmine to spy on the objects/functions ended up being easier to understand (and avoid mixing up the spy with the object). Here's an example I did for logging/freedom:
https://github.com/uProxy/uproxy-lib/blob/iislucas/src/logging/logging.spec.ts
Lets discuss and see what you think.

src/webrtc/peerconnection.spec.ts, line 20 [r1] (raw file):
Avoid any types. If you specify the type, it's easier for reader's to understand. This is type should be () => void

src/webrtc/peerconnection.spec.ts, line 25 [r1] (raw file):
fix any type.

src/webrtc/peerconnection.spec.ts, line 46 [r1] (raw file):
rather than {hello: 'world'} maybe { mockLocalDescription: 'blah' }

src/webrtc/peerconnection.spec.ts, line 51 [r1] (raw file):
I think this may be better written in a sequential rather than nested style...
pc.signalForPeerQueue.setSyncNextHandler((signal:WebRtc.SignallingMessage) => {
      expect(signal.type).toEqual(WebRtc.SignalType.OFFER);
}).then(() => {
  return pc.signalForPeerQueue.setSyncNextHandler((signal:WebRtc.SignallingMessage) => {
      expect(signal.type).toEqual(WebRtc.SignalType.CANDIDATE);
  });
}).then(done);

Only so that it hints at what to do when you want to do more things in sequence (and avoid making the nesting get worse and worse).

src/webrtc/peerconnection.ts, line 156 [r1] (raw file):
Easier to debug if you keep the old naming scheme (appending a random value, or an auto-incremented one).

I don't understand this change, or the corresponding bug.  WebRTC will never produce these messages out of order.  If they're getting reordered, it's a bug in our code somewhere, and we should fix it, not re-reorder the messages to put them back in order.
The case where we might want to buffer messages that way is when receiving messages from the remote side, through a transport that is not order-preserving.

What? If WebRTC guarantees order then I agree we should find where it is
going wrong and fix lower down. I am not averse to having a temporary fix
(this code) until then. But we shouldn't only wrap up misbehavior, of
course! :)
On Jan 27, 2015 7:50 PM, "Benjamin M. Schwartz"<EMAIL_ADDRESS>wrote:

I don't understand this change, or the corresponding bug. WebRTC will
never produce these messages out of order. If they're getting reordered,
it's a bug in our code somewhere, and we should fix it, not re-reorder the
messages to put them back in order.
The case where we might want to buffer messages that way is when
receiving messages from the remote side, through a transport that is
not order-preserving.
—
Reply to this email directly or view it on GitHub
https://github.com/uProxy/uproxy-lib/pull/107#issuecomment-71760993.

Comments from the review on Reviewable.io

src/webrtc/peerconnection.d.ts, line 11 [r1] (raw file):
Is there anything left that uses PeerConnectionConfig, now that you've removed it from the constructor?

src/webrtc/peerconnection.spec.ts, line 32 [r1] (raw file):
I don't think this can happen.  Can freedom really invoke a callback synchronously in the call to on()?  I assume it has to go back to the mainloop, which you could simulate with a zero-delay setTimeout.

Ignoring all other feedback for the moment...great spot, @bemasc! Damn.
I never noticed this before but the messages still come out in the wrong order! It turns out that between the time we receive an offer and emit that message, src/webrtc/peerconnection.ts has:

called setDescription
called getDescription

That's here:
https://github.com/uProxy/uproxy-lib/blob/dev/src/webrtc/peerconnection.ts#L370
During that time, an onicecandidate is received...and sent. It's a very easy fix but I wanna quickly check with the freedom guys what guarantees we have on receipt of events and promise resolution.
As for the rest of this review...hey, now we have some more unit tests.

Correction: this pull request does fix the issue...but it is not the most..."foundational" fix.

Comments from the review on Reviewable.io

src/webrtc/peerconnection.spec.ts, line 10 [r1] (raw file):
That looks much saner, I'd be extremely happy to use it once your pull request is merged!

src/webrtc/peerconnection.spec.ts, line 20 [r1] (raw file):
Done.

src/webrtc/peerconnection.spec.ts, line 25 [r1] (raw file):
Done.

src/webrtc/peerconnection.spec.ts, line 32 [r1] (raw file):
Not an issue now, I think, but good point (and thanks).

src/webrtc/peerconnection.spec.ts, line 46 [r1] (raw file):
Removed.

src/webrtc/peerconnection.spec.ts, line 51 [r1] (raw file):
Good suggestion but I'm just testing one thing now, so...

src/webrtc/peerconnection.ts, line 156 [r1] (raw file):
So, I changed this avoid having to mock out Crypto in all the tests. An auto-incremented index is a good idea. Done. Thanks!

Comments from the review on Reviewable.io

src/webrtc/peerconnection.d.ts, line 11 [r1] (raw file):
Done.

@bemasc, @iislucas : care to take another look?

Comments from the review on Reviewable.io
Reviewed files:

package.json @ r4
src/webrtc/peerconnection.d.ts @ r3
src/webrtc/peerconnection.spec.ts @ r2
src/webrtc/peerconnection.ts @ r3

LGTM


Does user assigned identity support “RunAs=App” connectionString to get token to access Key Vault?

I'm reading this doc.
And want to know, does user assigned identity support "RunAs=App" connectionString to get token like managed identity does? Or it must have AppId={ClientId of user-assigned identity} in connectionString?
If so, what's the difference between user assigned identity and system assigned identity when use them?
Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: 17824597-7e9b-4ca5-12f7-310b0ce4bdf4
Version Independent ID: 49e1c9ee-fabf-df55-5bd9-1019abda22f1
Content: Service-to-service authentication to Azure Key Vault using .NET
Content Source: articles/key-vault/general/service-to-service-authentication.md
Service: key-vault
Sub-service: general
GitHub Login: @msmbaldwin
Microsoft Alias: mbaldwin

@AshleyYang25 Thank you for your query . We will investigate and update the thread.

RunAs=App uses system assigned managed identity. RunAs=App;AppId={ClientId of user-assigned identity} uses user assigned managed identity. You can read more about these identity types here

Thank your @varunsh-msft.
@AshleyYang25 Hope the above response helps. We will now close this thread.


Reconnection

I have:
noble.on('discover', function(peripheral) { peripheral.connect(function(error) {  peripheral.once('disconnect',function () { console.log('disconnect'); noble.startScanning([], true); });  ... <some discover service>  ... .on('data', function () { console.log('data'); }); }); });
When the peripheral disconnect for the second time, the event on('data') fired twice and the script don't work correctly.
Is there any fix or any solution?
Thanks

I solved by put noble._peripherals = [] once disconnect. Seems disconnect don't empty data of previous discover.


Phrase Searching Errors

When trying to search to phrases, I always get Unknown Error. I simply typed "PHRASE TESTING" in the search box to get the error.
I also tried on the demo site and got the same result.
Am I searching correctly?
Thanks

Thanks for raising this. Looks like there is a problem here. I'm most of the way through quite a large refactor project but I'll take a look as soon as I can.


ng update ignores proxy config

Bug Report or Feature Request (mark with an x)
- [x] bug report -> please search issues before submitting
- [ ] feature request

Command (mark with an x)
- [ ] new
- [ ] build
- [ ] serve
- [ ] test
- [ ] e2e
- [ ] generate
- [ ] add
- [x] update
- [ ] lint
- [ ] xi18n
- [ ] run
- [ ] config
- [ ] help
- [ ] version
- [ ] doc

issue was partially discussed here (https://github.com/angular/angular-cli/issues/10624) after .npmrc issues and later (original issue solved) determined that there is a different issue.

we use yarn with a private repo behind a corporate proxy.
local .npmrc:
registry=[some url, masked out] always-auth=true
yarn lock contains packages where I see some as resolved with [some url, masked out]
also there are packages with https://registry.yarnpkg.com/some-package-and-so-on
global .yarnrc (in C:\Users\MyUserName):

# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY.
# yarn lockfile v1
lastUpdateCheck<PHONE_NUMBER>859

global .npmrc (in C:\Users\MyUserName):

//some_path_with_some_token
proxy= http://our_proxy_with_port/
https-proxy= http://our_proxy_with_port

trying to follow commands from update.angular.io
yarn install works, everything else from 6. works but not ng update @angular/cli, message comes up after a while (1 minute or so):
request to https://registry.npmjs.org/@types%2fjasmine failed, reason: connect ETIMEDOUT
seems to be on a random package, at another try I got:
request to https://registry.npmjs.org/codelyzer failed, reason: connect ETIMEDOUT [some ip address and port]

Assumption:
It seems that ng update @angular/cli ignores the proxy since it should go to the configured proxy or https-proxy instead of npmjs.org.
Should the command be ng update @angular/cli@next? (Results in same error message)
P.S.  I tried migrate only - which works - and then update the packages via yarn, also works.
I just think that I might miss something that ng update does as well, other than migrating to the angular.json file and lifting the packages to the recent version.

currently still running angular 5.1.1
tried as described with @next option in yarn global add @angular/cli@next and yarn add @angular/cli@next
ng --version:

     _                      _                 ____ _     ___
    / \   _ __   __ _ _   _| | __ _ _ __     / ___| |   |_ _|
   / △ \ | '_ \ / _` | | | | |/ _` | '__|   | |   | |    | |
  / ___ \| | | | (_| | |_| | | (_| | |      | |___| |___ | |
 /_/   \_\_| |_|\__, |\__,_|_|\__,_|_|       \____|_____|___|
                |___/

Angular CLI: 7.2.0-beta.1
Node: 8.12.0
OS: win32 x64
Angular: 5.1.1
... animations, common, compiler, compiler-cli, core, forms
... http, platform-browser, platform-browser-dynamic
... platform-server, router

Package                      Version
------------------------------------------------------
@angular-devkit/architect    0.12.0-beta.1
@angular-devkit/core         7.2.0-beta.1
@angular-devkit/schematics   7.2.0-beta.1
@angular/cli                 7.2.0-beta.1
@angular/language-service    4.4.6
@schematics/angular          7.2.0-beta.1
@schematics/update           0.12.0-beta.1
rxjs                         5.5.3
typescript                   2.4.2

@alan-agius4
The same .npmrc is used to initially retrieve all dependencies listed in package.json w/ npm install.
Thus, the configuration is not the problem, such as firewall rule that causes a time-out.

@daniel-seitz If you are running the latest beta can you try running update with the --verbose option and report the output?
I'll also push a PR (and hopefully get it into beta.2) that will expand the verbose output to also include the final set of options to further aid in troubleshooting.

@clydin thank for for pushing, I tested verbose with beat.2
For each dependency in package.json this is written:

Locating potential npmrc files:
Trying 'C:\Program Files\nodejs\etc\npmrc'...not found.
Trying 'C:\Users\my_user_name\.npmrc'...found.
Trying 'C:\Users\.npmrc'...not found.
Trying 'C:\Users\my_user_name\.npmrc'...found.
Trying 'C:\Users\my_user_name\source\.npmrc'...not found.
Trying 'C:\Users\my_user_name\source\repos\.npmrc'...not found.
Trying 'C:\Users\my_user_name\source\repos\NameOfRepoLocation\.npmrc'...not found.
Trying 'C:\Users\my_user_name\source\repos\NameOfRepoLocation\OurRepo\.npmrc'...found.

Locating potential yarnrc files:
Trying 'C:\Program Files\nodejs\etc\yarnrc'...not found.
Trying 'C:\Users\my_user_name\.yarnrc'...found.
Trying 'C:\Users\.yarnrc'...not found.
Trying 'C:\Users\my_user_name\.yarnrc'...found.
Trying 'C:\Users\my_user_name\source\.yarnrc'...not found.
Trying 'C:\Users\my_user_name\source\repos\.yarnrc'...not found.
Trying 'C:\Users\my_user_name\source\repos\NameOfRepoLocation\.yarnrc'...not found.
Trying 'C:\Users\my_user_name\source\repos\NameOfRepoLocation\OurRepo\.yarnrc'...not found.

So in total more than 50 times this whole block here. Could be enhanced but this is another story.
Then it takes a while until:
request to https://registry.npmjs.org/jasmine-core failed, reason: connect ETIMEDOUT

Interestingly in my yarn.lock there are 2 entries for jasmine-core:
<EMAIL_ADDRESS>   version: 2.5.2
   resolved: "our-proxy/jasmine-core/..."

<EMAIL_ADDRESS>   version: 2.8.0
   resolved: "https://registry.yarnpkg.com/jasmine-core/..."

Not sure if that is normal.

Try ng update --registry=<your_internal_registry>.

dupe of https://github.com/angular/angular-cli/issues/10952 ?

This should now be corrected with the latest version of the CLI.  If anyone is still encountering problems, please open a new issue detailing the problem.

Hi,
While migrating from angular 6.0 to angular 7, I'm facing the same problem with angular cli v7.3.5 (both local and global).
'proxy' and 'https-proxy' are set for both yarn and npm (using yarn though), but  ng update --package-manager "yarn" --verbose @angular/cli @angular/core is failing :
    Locating potential npmrc files:
    Trying 'C:\Program Files\nodejs\etc\npmrc'...not found.
    Trying 'C:\Users\myUser\.npmrc'...found.
    Locating potential yarnrc files:
    Trying 'C:\Program Files\nodejs\etc\yarnrc'...not found.
    Trying 'C:\Users\myUser\.yarnrc'...found.
    ...
    request to https://registry.npmjs.org/@angular%2fcli failed, reason: connect ETIMEDOUT <IP_ADDRESS>:443
    request to https://registry.npmjs.org/@angular-devkit%2fbuild-angular failed, reason: connect ETIMEDOUT <IP_ADDRESS>:443

Sorry for the time off and missing feedback from my side. I'm assigned to another project and can't really test it anymore.
@clydin I saw the new documentation and corresponding changes, thank you for this! And @everybody-here thank you for your effort.

Back in the original project - just tried with<EMAIL_ADDRESS>It works. Thank you again, done.


ADD[#1058]:Create a simple Contact form

Pull Request Type
What kind of change does this PR introduce?
[X ] Solved an issue/task
[ ] Bugfix
[ ] Feature
[ ] Code style update (formatting, local variables)
[ ] Refactoring (no functional changes, no api changes)
[ ] Build related changes
[ ] CI related changes
[ ] Documentation content changes
[ ] Other... Please describe:
What is the current behavior?

The current behavior is that there is no contact form on the page. The new behavior is that there is a contact form on the page that users can use to contact the website owner.
Issue Number: #1058

What is the new behavior?

Other information
The contact form is located in the container div and has the following fields:
Name
Email
Message

Merged

This is an automated message from Fork, Commit, Merge [BOT].

Thank you for your contribution! Your pull request has been merged. The files have been reset for the next contributor.
What's next?
If you're looking for more ways to contribute, I invite you to check out my other projects. Just click here to find more. These projects contain real issues that you can help resolve. You can also check out the Influences section in the README to find more projects similar to this one.
Also please leave a star to this project if you feel it helped you, i would really appreciate it.
I look forward to seeing your contributions!


[POC- DO NOT MERGE] Add heatmap for fingerprinting recordings

The output data of the ML filters for each recording are used to plot heatmaps which are effectively fingerprints of the data we pass into the ML model for training and inference. The fingerprints used filter outputs normalized to 0..1, the ML model still uses the non-normalized values and is not impacted by these changes.
These fingerprints are displayed for each recording in the "Add data" page. In the temporary "Process data" page, the fingerprint of the mean of the filters applied to all recordings for each action is displayed, and if a micro:bit is connected, the live data is also displayed as a fingerprint below. The is some alignment issue based on the separation of these plots due to the y-axis labels. This could be dealt with by merging the plots (which would also save space).
We may take this a step further and add functionality to toggle filters. This should be straightforward from a tech perspective, but more complicated from an education and UI/UX perspective.

Closing in favour of https://github.com/microbit-foundation/ml-trainer/pull/273, but will keep the branch around for demos if required.


clean up

have a look at things like the tools and see if we can tidy up a little.
Remove oxford specific bits.

I believe that all Oxford-specific bits are now removed. Tools seems fine now


DefaultRolloverStrategy invalid element

Hi guys,
Try to launch a custom jar and got a error:
[init] Running as uid=1000 gid=1000 with /data as 'drwxrwxrwx    2 1000     1000          4096 Apr 28 07:48 /data'
[init] Resolved version given LATEST into 1.15.2
[init] Resolving type given CUSTOM
[init] Downloading custom server jar from https://cdn.getbukkit.org/spigot/spigot-1.8-R0.1-SNAPSHOT-latest.jar ...
[init] Creating server.properties in /data/server.properties
[init] Setting server-name to 'Dedicated Server' in /data/server.properties
[init] Skip setting server-ip
[init] Setting server-port to '25565' in /data/server.properties
[init] Setting motd to 'A Custom Minecraft Server powered by Docker' in /data/server.properties
[init] Skip setting allow-nether
[init] Skip setting announce-player-achievements
[init] Skip setting enable-command-block
[init] Skip setting spawn-animals
[init] Skip setting spawn-monsters
[init] Skip setting spawn-npcs
[init] Skip setting spawn-protection
[init] Skip setting generate-structures
[init] Skip setting view-distance
[init] Skip setting hardcore
[init] Skip setting snooper-enabled
[init] Skip setting max-build-height
[init] Skip setting force-gamemode
[init] Skip setting max-tick-time
[init] Skip setting enable-query
[init] Skip setting query.port
[init] Setting enable-rcon to 'true' in /data/server.properties
[init] Setting rcon.password to 'minecraft' in /data/server.properties
[init] Setting rcon.port to '25575' in /data/server.properties
[init] Skip setting max-players
[init] Skip setting max-world-size
[init] Setting level-name to 'world' in /data/server.properties
[init] Skip setting level-seed
[init] Setting pvp to 'true' in /data/server.properties
[init] Skip setting generator-settings
[init] Setting online-mode to 'true' in /data/server.properties
[init] Skip setting allow-flight
[init] Setting level-type to 'DEFAULT' in /data/server.properties
[init] Skip setting resource-pack
[init] Skip setting resource-pack-sha1
[init] Skip setting player-idle-timeout
[init] Setting difficulty to '1' in /data/server.properties
[init] Creating log4j2.xml in /data/log4j2.xml
[init] Checking for JSON files.
[init] Copying any mods over...
[init] Setting initial memory to 1G and max to 1G
[init] Starting the Minecraft server...
Loading libraries, please wait...
2020-04-28 07:48:27,120 ERROR DefaultRolloverStrategy contains an invalid element or attribute "Delete"

it seems that log4j2 is not the right version. As this link indicates.
This is my docker command:
docker run -d --name lobby -p 25565:25565 -e EULA=true -e TYPE=CUSTOM -e CUSTOM_SERVER=https://cdn.getbukkit.org/spigot/spigot-1.8-R0.1-SNAPSHOT-latest.jar itzg/minecraft-server

Try to find the error, it's seem there an error on the if, here: https://github.com/itzg/docker-minecraft-server/blob/master/start-minecraftFinalSetup#L30
Try to run this command, not working:
 docker run -it -p 25565:25565 -e EULA=true -e TYPE=CUSTOM -e CUSTOM_SERVER=https://cdn.getbukkit.org/spigot/spigot-1.8-R0.1-SNAPSHOT-latest.jar -e SKIP_LOG4J_CONFIG=true itzg/minecraft-server
I've fork the repo, remove the entire section of https://github.com/itzg/docker-minecraft-server/blob/master/start-minecraftFinalSetup#L30-L40. The problem was solve.
I don't know why the if is not working.

This commit fix the problem.
Can you check ?

I close, commit from 24/04 fix the issue.
I just didn't have the last version.


How can I perform sync call?

May I ask how can we make a sync call. I was trying to do:
response = fetch(url, {
            credentials: 'same-origin',
            redirect: 'error',
            async: false,
        }).catch(function(e){
           // catch exception.
        });
        return response.json();

I am pretty sure the response return json, but looks like this is not the correct way to call it. Could anyone please suggest? I am trying to avoid callback

Synchronous requests are not a feature of fetch. Responses must be handled in a Promise.


ENH first pass with tests for flagging Piff

This is the first pass with tests for flagging piff models.

@rmjarvis Can you review this code?

@esheldon A look from you here too would be great!

Why use a rectangle?

Initial suggestion from Mike.

from the figures, It looks like a significant amount of the "lost area" is due to using a rectangle.  Why not exclude at the level of "pixels" in that map?  Those can probably be mapped onto healpixels.

Yes I will try this. These are harder to store flexibly but maybe we always make them on the fly anyways.

One thing to keep in mind is that we may prefer spatially contiguous regions over multiple disconnected islands.


Update codebase.md

In french the translate of "library" is "bibliothèque", not "librairie"

While your point is entirely true, "librairie" is a commonly used word. I think both are valid.

Sorry, but I don't think that both are valid : https://fr.wiktionary.org/wiki/library

All right. If the dictionnary says it ...


Question: how to pass in data > 65,535 bytes

Hi Ilya,
I'm trying to understand how to pass in data > 65,535 bytes.
When I issue the following response from a server:
conn.on(:stream) do |stream|

  # [...]

  body = "a" * 100_000
  headers = { ':content-length' => 100_000 } # snippet
  stream.headers(headers, end_stream: false)
  stream.data(body, end_stream: true)
end

Then on the receiving end (the client) I have:
stream.on(:data) do |data|
  p data.length
end

Which prints out:
16384
16384
16384
16383

which sums up to 65,535, the default window size, after which my client hangs waiting for more data (that never comes).
I have read about flow control but I'm not understanding if I'm supposed to change the window size on the fly (on the server?), or if I need to create a second stream with the remaining size of the data. If it's the first option, the README file states to use:
stream.window_update(2048)

which is however an undefined method 'window_update' for #<HTTP2::Stream:0x007fd9cd18f548>, or a:
conn.settings(streams: 100, window: Float::INFINITY)

which raises an HTTP2::Error::CompressionError: Unknown settings ID for error.
Can you please advise? Thank you.

@ostinelli doh, you ran into https://github.com/igrigorik/http-2/issues/27. Specifically, the client doesn't auto-emit window-updates, which is why the server pauses. As a temporary fix, try applying this patch: https://github.com/lepidum/http-2/commit/c37100ca80db64f24704c9e86a90f72a5d9528f7.
I'll wait for @mad-p or @tbetbetbe to respond.. If I don't hear back in a few days, I'll go ahead and merge one of their patches and update things on this end.

Thank you @igrigorik.

@ostinelli can you please try with latest code in master? I've merged https://github.com/igrigorik/http-2/commit/5148cb74819ffda6fe60354e610716fb30b5d74b and https://github.com/igrigorik/http-2/commit/8b62f88218254cd44ddd84bc6003fcab331851e9, which should (in theory) resolve your issue.

@igrigorik thank you. Good news: all tests of clients receiving big bodies from the server pass now.
However, the tests of clients sending big bodies still do not pass. I don't know if this is related or not, or if I'm doing something wrong, hence I'm just raising it here.
On the client I have:
stream = conn.new_stream

conn.on(:frame) do |bytes|
  puts "PIPE: #{bytes.length}"
end

body = "a" * 100_000
headers = {
  ":scheme"=>"http",
  ":method"=>"POST",
  ":path"=>"/path",
  "host"=>"localhost",
  "content-length"=>"100000"
}

stream.headers(headers, end_stream: false)
stream.data(body, end_stream: true)

This sends some data:
PIPE: 24
PIPE: 15
PIPE: 31
PIPE: 16393
PIPE: 9

Then everything hangs.
On the server, this never gets called:
conn.on(:stream) do |stream|
  stream.on(:data) { |data| p data }
end

Can you please hint me here? :)

@ostinelli can you log the sent and received frames + payloads? A couple of obvious questions:

Are you writing the data out to the socket on the client? ;-)
Does the server receive HEADERS frame? Which frames does it see?
Nitpick: use :authority instead of Host - see http://httpwg.org/specs/rfc7540.html#rfc.section.<IP_ADDRESS>.

Are you writing the data out to the socket on the client? ;-)

:)

Does the server receive HEADERS frame? Which frames does it see?

Yes, it receives these headers:
[[":scheme", "http"], [":method", "POST"], [":path", "/path"], ["host", "localhost"], ["content-length", "100000"]]

However, the server never has the stream.on(:data) callback triggered.
This is the sequence of frames:
CLIENT Sent frame: {:type=>:settings, :stream=>0, :payload=>[[:settings_max_concurrent_streams, 100]]}
CLIENT Sent frame: {:type=>:headers, :flags=>[:end_headers], :payload=>[[":scheme", "http"], [":method", "POST"], [":path", "/path"], ["host", "localhost"], ["content-length", "100000"]], :stream=>1}
CLIENT Sent frame: {:type=>:data, :flags=>[], :payload=>"aaaaaaaaaaaaa...aaa [omitted, for a total of 16,385 bytes", :stream=>1}

SERVER Sent frame: {:type=>:settings, :stream=>0, :payload=>[[:settings_max_concurrent_streams, 100]]}

CLIENT Received frame: {:length=>6, :type=>:settings, :flags=>[], :stream=>0, :payload=>[[:settings_max_concurrent_streams, 100]]}
CLIENT Sent frame: {:type=>:settings, :stream=>0, :payload=>[], :flags=>[:ack]}

SERVER Received frame: {:length=>6, :type=>:settings, :flags=>[], :stream=>0, :payload=>[[:settings_max_concurrent_streams, 100]]}
SERVER Sent frame: {:type=>:settings, :stream=>0, :payload=>[], :flags=>[:ack]}
SERVER Received frame: {:length=>22, :type=>:headers, :flags=>[:end_headers], :stream=>1, :payload=>"\x86\x83D\x84b\xB1\xA6\x7Ff\x86\xA0\xE4\x1D\x13\x9D\t\\\x84\b\x00\x00\x03"}

SERVER HEADERS RECEIVED: [[":scheme", "http"], [":method", "POST"], [":path", "/path"], ["host", "localhost"], ["content-length", "100000"]]

I've set up this branch of NetHttp2 to demonstrate, just in case you want to see this yourself. The hanging test is this one.
To my understanding, the client is only sending 16,385 bytes in the data payload, and then closes the stream. Since the headers specify a content length of 100,000, the server just hangs waiting for more.
Is there anything that I'm missing there to ensure the client sends data?

Nitpick: use :authority instead of Host - see http://httpwg.org/specs/rfc7540.html#rfc.section.<IP_ADDRESS>.

Nice, thank you.

I think that I can reproduce it by using just your gem.
require 'http/2'

def try(length)
  conn = HTTP2::Client.new

  body = "a" * length
  headers = { ':content-length' => length.to_s }

  total_body_bytes = 0
  conn.on(:frame_sent) do |frame|
    total_body_bytes += frame[:payload].length if frame[:type] == :data
  end

  stream = conn.new_stream
  stream.headers(headers, end_stream: false)
  stream.data(body, end_stream: true)

  sleep 5

  total_body_bytes
end

[5_000, 50_000, 100_000, 200_000].each do |length|
  puts "For #{length} bytes of the body => total bytes of data in sent frames: #{try(length)}"
end

This outputs:
For 5000 bytes of the body => total bytes of data in sent frames: 5000
For 50000 bytes of the body => total bytes of data in sent frames: 50000
For 100000 bytes of the body => total bytes of data in sent frames: 65535
For 200000 bytes of the body => total bytes of data in sent frames: 65535

As you can see, the rest of the body > 65,535 is not being sent.
Am I not calling this properly? Does the client need to receive some kind of trigger from the server to continue sending data? If so, how?
Thank you for your inputs :)

For 5000 bytes body => total bytes of data in sent frames: 5000
For 50000 bytes body => total bytes of data in sent frames: 50000
For 100000 bytes body => total bytes of data in sent frames: 65535
For 200000 bytes body => total bytes of data in sent frames: 65535

That's exactly what you should expect to see. The default stream flow control window size is 65KB, so the client will pause sending data after 65kb, until it receives a window_update.
Looking at the spec you linked earlier... If I decrease the body size to ~10KB, I see the spec pass and fail semi-randomly, which is making me suspect of some race condition in the code. In the cases where it hands, I don't see your client code writing out the body data.

That's exactly what you should expect to see. The default stream flow control window size is 65KB, so the client will pause sending data after 65kb, until it receives a window_update.

Indeed, but I couldn't do that until you exposed the window_update method (which I reported as undefined in the issue). So thank you for fixing this in master :)

Looking at the spec you linked earlier... If I decrease the body size to ~10KB, I see the spec pass and fail semi-randomly, which is making me suspect of some race condition in the code. In the cases where it hangs, I don't see your client code writing out the body data.

It is unclear to me if it's related to the order of frames managed and if the client should wait for:ack or not. For instance, this is the sequence of frames when the race happens:
-----> SENDING HEADERS
CLIENT Sent frame: {:type=>:settings, :stream=>0, :payload=>[[:settings_max_concurrent_streams, 100]]}
CLIENT Sent frame: {:type=>:headers, :flags=>[:end_headers], :payload=>[[":scheme", "http"], [":method", "POST"], [":path", "/path"], ["host", "localhost"], ["content-length", "100000"]], :stream=>1}

-----> SENDING BODY
CLIENT Sent frame: {:type=>:data, :flags=>[], :payload=>"{BIG PAYLOAD OF 16384 BYTES}", :stream=>1}SERVER Sent frame: {:type=>:settings, :stream=>0, :payload=>[[:settings_max_concurrent_streams, 100]]}
SERVER Received frame: {:length=>6, :type=>:settings, :flags=>[], :stream=>0, :payload=>[[:settings_max_concurrent_streams, 100]]}
SERVER Sent frame: {:type=>:settings, :stream=>0, :payload=>[], :flags=>[:ack]}
SERVER Received frame: {:length=>22, :type=>:headers, :flags=>[:end_headers], :stream=>1, :payload=>"\x86\x83D\x84b\xB1\xA6\x7Ff\x86\xA0\xE4\x1D\x13\x9D\t\\\x84\b\x00\x00\x03"}
SERVER HEADERS: [[":scheme", "http"], [":method", "POST"], [":path", "/path"], ["host", "localhost"], ["content-length", "100000"]]
CLIENT Received frame: {:length=>6, :type=>:settings, :flags=>[], :stream=>0, :payload=>[[:settings_max_concurrent_streams, 100]]}
CLIENT Sent frame: {:type=>:settings, :stream=>0, :payload=>[], :flags=>[:ack]}

*** HANGS ***

If I sleep in between sending headers and body:
stream.headers(headers, end_stream: false)
sleep 1
stream.data(body, end_stream: true)

Then everything works, and this is the sequence is:
-----> SENDING HEADERS
CLIENT Sent frame: {:type=>:settings, :stream=>0, :payload=>[[:settings_max_concurrent_streams, 100]]}
CLIENT Sent frame: {:type=>:headers, :flags=>[:end_headers], :payload=>[[":scheme", "http"], [":method", "POST"], [":path", "/path"], ["host", "localhost"], ["content-length", "100000"]], :stream=>1}
SERVER Sent frame: {:type=>:settings, :stream=>0, :payload=>[[:settings_max_concurrent_streams, 100]]}
SERVER Received frame: {:length=>6, :type=>:settings, :flags=>[], :stream=>0, :payload=>[[:settings_max_concurrent_streams, 100]]}
SERVER Sent frame: {:type=>:settings, :stream=>0, :payload=>[], :flags=>[:ack]}
SERVER Received frame: {:length=>22, :type=>:headers, :flags=>[:end_headers], :stream=>1, :payload=>"\x86\x83D\x84b\xB1\xA6\x7Ff\x86\xA0\xE4\x1D\x13\x9D\t\\\x84\b\x00\x00\x03"}
SERVER HEADERS: [[":scheme", "http"], [":method", "POST"], [":path", "/path"], ["host", "localhost"], ["content-length", "100000"]]
CLIENT Received frame: {:length=>6, :type=>:settings, :flags=>[], :stream=>0, :payload=>[[:settings_max_concurrent_streams, 100]]}
CLIENT Sent frame: {:type=>:settings, :stream=>0, :payload=>[], :flags=>[:ack]}
CLIENT Received frame: {:length=>0, :type=>:settings, :flags=>[:ack], :stream=>0, :payload=>[]}
SERVER Received frame: {:length=>0, :type=>:settings, :flags=>[:ack], :stream=>0, :payload=>[]}

-----> SENDING BODY
CLIENT Sent frame: {:type=>:data, :flags=>[], :payload=>"{BIG PAYLOAD OF 16384 BYTES}", :stream=>1}
CLIENT Sent frame: {:type=>:data, :flags=>[], :payload=>"{BIG PAYLOAD OF 16384 BYTES}", :stream=>1}
SERVER Received frame: {:length=>16384, :type=>:data, :flags=>[], :stream=>1, :payload=>"{BIG PAYLOAD OF 16384 BYTES}"}
SERVER DATA: {BIG PAYLOAD OF 16384 BYTES}
SERVER Sent frame: {:type=>:window_update, :stream=>0, :increment=>16384}
SERVER Sent frame: {:type=>:window_update, :increment=>16384, :stream=>1}
CLIENT Received frame: {:length=>4, :type=>:window_update, :flags=>[], :stream=>0, :increment=>16384}
CLIENT Received frame: {:length=>4, :type=>:window_update, :flags=>[], :stream=>1, :increment=>16384}
CLIENT Sent frame: {:type=>:data, :flags=>[], :payload=>"{BIG PAYLOAD OF 16384 BYTES}", :stream=>1}
SERVER Received frame: {:length=>16384, :type=>:data, :flags=>[], :stream=>1, :payload=>"{BIG PAYLOAD OF 16384 BYTES}"}
SERVER DATA: {BIG PAYLOAD OF 16384 BYTES}
SERVER Sent frame: {:type=>:window_update, :stream=>0, :increment=>16384}
SERVER Sent frame: {:type=>:window_update, :increment=>16384, :stream=>1}
CLIENT Received frame: {:length=>4, :type=>:window_update, :flags=>[], :stream=>0, :increment=>16384}
CLIENT Received frame: {:length=>4, :type=>:window_update, :flags=>[], :stream=>1, :increment=>16384}
CLIENT Sent frame: {:type=>:data, :flags=>[], :payload=>"{BIG PAYLOAD OF 16384 BYTES}", :stream=>1}
SERVER Received frame: {:length=>16384, :type=>:data, :flags=>[], :stream=>1, :payload=>"{BIG PAYLOAD OF 16384 BYTES}"}
SERVER DATA: {BIG PAYLOAD OF 16384 BYTES}
SERVER Sent frame: {:type=>:window_update, :stream=>0, :increment=>16384}
SERVER Sent frame: {:type=>:window_update, :increment=>16384, :stream=>1}
CLIENT Received frame: {:length=>4, :type=>:window_update, :flags=>[], :stream=>0, :increment=>16384}
CLIENT Received frame: {:length=>4, :type=>:window_update, :flags=>[], :stream=>1, :increment=>16384}
CLIENT Sent frame: {:type=>:data, :flags=>[], :payload=>"{BIG PAYLOAD OF 16384 BYTES}", :stream=>1}
SERVER Received frame: {:length=>16384, :type=>:data, :flags=>[], :stream=>1, :payload=>"{BIG PAYLOAD OF 16384 BYTES}"}
SERVER DATA: {BIG PAYLOAD OF 16384 BYTES}
SERVER Sent frame: {:type=>:window_update, :stream=>0, :increment=>16384}
SERVER Sent frame: {:type=>:window_update, :increment=>16384, :stream=>1}
CLIENT Received frame: {:length=>4, :type=>:window_update, :flags=>[], :stream=>0, :increment=>16384}
CLIENT Received frame: {:length=>4, :type=>:window_update, :flags=>[], :stream=>1, :increment=>16384}
CLIENT Sent frame: {:type=>:data, :flags=>[], :payload=>"{BIG PAYLOAD OF 16384 BYTES}", :stream=>1}
SERVER Received frame: {:length=>16384, :type=>:data, :flags=>[], :stream=>1, :payload=>"{BIG PAYLOAD OF 16384 BYTES}"}
SERVER DATA: {BIG PAYLOAD OF 16384 BYTES}
SERVER Sent frame: {:type=>:window_update, :stream=>0, :increment=>16384}
SERVER Sent frame: {:type=>:window_update, :increment=>16384, :stream=>1}
CLIENT Received frame: {:length=>4, :type=>:window_update, :flags=>[], :stream=>0, :increment=>16384}
CLIENT Received frame: {:length=>4, :type=>:window_update, :flags=>[], :stream=>1, :increment=>16384}
CLIENT Sent frame: {:type=>:data, :flags=>[:end_stream], :payload=>"{PAYLOAD OF 1696 BYTES}", :stream=>1}
SERVER Received frame: {:length=>16384, :type=>:data, :flags=>[], :stream=>1, :payload=>"{BIG PAYLOAD OF 16384 BYTES}"}
SERVER DATA: {BIG PAYLOAD OF 16384 BYTES}
SERVER Sent frame: {:type=>:window_update, :stream=>0, :increment=>16384}
SERVER Sent frame: {:type=>:window_update, :increment=>16384, :stream=>1}
CLIENT Received frame: {:length=>4, :type=>:window_update, :flags=>[], :stream=>0, :increment=>16384}
SERVER Received frame: {:length=>1696, :type=>:data, :flags=>[:end_stream], :stream=>1, :payload=>"{PAYLOAD OF 1696 BYTES}"}
CLIENT Received frame: {:length=>4, :type=>:window_update, :flags=>[], :stream=>1, :increment=>16384}
SERVER DATA: {PAYLOAD OF 1696 BYTES}
SERVER Sent frame: {:type=>:window_update, :stream=>0, :increment=>1696}
SERVER Sent frame: {:type=>:window_update, :increment=>1696, :stream=>1}
CLIENT Received frame: {:length=>4, :type=>:window_update, :flags=>[], :stream=>0, :increment=>1696}
CLIENT Received frame: {:length=>4, :type=>:window_update, :flags=>[], :stream=>1, :increment=>1696}
SERVER Sent frame: {:type=>:headers, :flags=>[:end_headers], :payload=>[[":status", "200"], ["content-length", "11"], ["content-type", "text/plain"]], :stream=>1}
CLIENT Received frame: {:length=>14, :type=>:headers, :flags=>[:end_headers], :stream=>1, :payload=>"\x88\\\x0211_\x87I|\xA5\x8A\xE8\x19\xAA"}
SERVER Sent frame: {:type=>:data, :flags=>[:end_stream], :payload=>"response ok", :stream=>1}
CLIENT Received frame: {:length=>11, :type=>:data, :flags=>[:end_stream], :stream=>1, :payload=>"response ok"}
CLIENT Sent frame: {:type=>:window_update, :stream=>0, :increment=>11}
CLIENT Sent frame: {:type=>:window_update, :increment=>11, :stream=>1}
SERVER Received frame: {:length=>4, :type=>:window_update, :flags=>[], :stream=>0, :increment=>11}
SERVER Received frame: {:length=>4, :type=>:window_update, :flags=>[], :stream=>1, :increment=>11}

It looks like the client should wait all of the settings exchanges before sending data. Is this correct?
Obviously the sleep 1 isn't a fix but I'm not sure what a client should be doing here.
Any input is welcome.

Got it, and fixed it.
Do you have an estimate when you will push the new gem version which includes your fixes?
Thank you.

Awesome, glad you tracked it down!
Just released 0.8.2.

Awesome, thank you!

did you manage to solve this? I'm also having issues with the upload, specifically, the client manages to send the multipart request, the server gets it and sends the response frames, but the client times out.

See here: https://github.com/igrigorik/http-2/issues/92

hey I am facing a similar kind of issue
while sending payload of 10k bytes
here's my error
Please help me with this.
Traceback (most recent call last):
File "extratest.py", line 27, in
resp = conn.get_response()
File "/export/home/bw1109/servtest/lib64/python3.7/site-packages/hyper/http20/connection.py", line 312, in get_response
return HTTP20Response(stream.getheaders(), stream)
File "/export/home/bw1109/servtest/lib64/python3.7/site-packages/hyper/http20/stream.py", line 230, in getheaders
self._recv_cb(stream_id=self.stream_id)
File "/export/home/bw1109/servtest/lib64/python3.7/site-packages/hyper/http20/connection.py", line 779, in _recv_cb
self._single_read()
File "/export/home/bw1109/servtest/lib64/python3.7/site-packages/hyper/http20/connection.py", line 669, in _single_read
events = conn.receive_data(data)
File "/export/home/bw1109/servtest/lib64/python3.7/site-packages/h2/connection.py", line 1531, in receive_data
events.extend(self._receive_frame(frame))
File "/export/home/bw1109/servtest/lib64/python3.7/site-packages/h2/connection.py", line 1554, in _receive_frame
frames, events = self._frame_dispatch_tableframe.class
File "/export/home/bw1109/servtest/lib64/python3.7/site-packages/h2/connection.py", line 1823, in _receive_rst_stream_frame
stream_frames, stream_events = stream.stream_reset(frame)
File "/export/home/bw1109/servtest/lib64/python3.7/site-packages/h2/stream.py", line 1232, in stream_reset
events = self.state_machine.process_input(StreamInputs.RECV_RST_STREAM)
File "/export/home/bw1109/servtest/lib64/python3.7/site-packages/h2/stream.py", line 131, in process_input
return func(self, previous_state)
File "/export/home/bw1109/servtest/lib64/python3.7/site-packages/h2/stream.py", line 416, in reset_on_closed_stream
return self.recv_on_closed_stream(previous_state)
File "/export/home/bw1109/servtest/lib64/python3.7/site-packages/h2/stream.py", line 338, in recv_on_closed_stream
raise StreamClosedError(self.stream_id)
h2.exceptions.StreamClosedError: 1

@bw1109 this repo is for the Ruby http/2 library, your code is referencing a Python lib.. :)


Request to add Iowa to ccdd-categories.md skeleton

Can you add Site "887 - Iowa" to the site parameter choices? Thank you. I manually added it locally, but I'm sure you want it in the skeleton.

Thank you @aw-iowa for your new pull request. "Site 887 - Iowa" has been added to the site parameter choices in the essence_ccdd template.
If you are using the template on the Rstudio Workbench instance on the Biosense platform, be aware that this update will not be available before 02/22/2022 (due to Federal Holiday observance).
If you are using this template from your local Rstudio Desktop, please, feel free to update the template (Rnssp::add_rmd_template(template_name = "essence_ccdd")).
For more, please, check the essence_ccdd documentation at https://cdcgov.github.io/Rnssp-rmd-templates/templates/essenceccdd/.


[Bug]: "Prop href did not match". when using tailwindcss

Which Remix packages are impacted?

[X] remix (Remix core)
[ ] create-remix
[ ] @remix-run/architect
[ ] @remix-run/cloudflare-workers
[ ] @remix-run/dev
[ ] @remix-run/express
[ ] @remix-run/netlify
[ ] @remix-run/node
[ ] @remix-run/react
[X] @remix-run/serve
[ ] @remix-run/server-runtime
[X] @remix-run/vercel

What version of Remix are you using?
1.0.6
What version of Node are you using? Minimum supported version is 14.
16.13.1
Steps to Reproduce

create remix app.
add tailwindcss from this guide https://remix.run/docs/en/v1/guides/styling#tailwind.
add tailwind.css to app/root.tsx.

import styles from './tailwind.css'

export function links() {
	return [{ rel: 'stylesheet', href: styles }]
}

start dev server

Expected Behavior
No warning message appears on browser console
Actual Behavior
This warning message appears on console
Warning: Prop `href` did not match. Server: "/build/_assets/tailwind-DGHXG3YF.css" Client: "/build/_assets/tailwind-JUD5S62U.css"
    at link
    at Links (http://localhost:3000/build/_shared/chunk-KOXENSZ3.js:3042:7)
    at head
    at html
    at Document (http://localhost:3000/build/root-WYXGDNDR.js:55:3)
    at App
    at RemixCatchBoundary (http://localhost:3000/build/_shared/chunk-KOXENSZ3.js:1476:10)
    at RemixErrorBoundary (http://localhost:3000/build/_shared/chunk-KOXENSZ3.js:1415:5)
    at RemixRoute (http://localhost:3000/build/_shared/chunk-KOXENSZ3.js:2905:3)
    at Routes (http://localhost:3000/build/_shared/chunk-KOXENSZ3.js:2888:7)
    at Router2 (http://localhost:3000/build/_shared/chunk-KOXENSZ3.js:457:21)
    at RemixCatchBoundary (http://localhost:3000/build/_shared/chunk-KOXENSZ3.js:1476:10)
    at RemixErrorBoundary (http://localhost:3000/build/_shared/chunk-KOXENSZ3.js:1415:5)
    at RemixEntry (http://localhost:3000/build/_shared/chunk-KOXENSZ3.js:2785:12)
    at RemixBrowser (http://localhost:3000/build/_shared/chunk-KOXENSZ3.js:3262:42)

A link to your code/a reproduction would be useful

There is indeed this problem. Turning on disable cache can temporarily eliminate the warning.

A link to your code/a reproduction would be useful

currently working on local right now.

There is indeed this problem. Turning on disable cache can temporarily eliminate the warning.
@0x219 sure I'll try that

I don't know enough what's happening here to actually help fix this but the workaround I've been using is...
Update package.json:
"dev:css": "tailwindcss -o ./public/tailwind.css --watch",

Then update root.jsx:
export function links() {
	return [{ rel: "stylesheet", href: "/tailwind.css" }];
}

The strangest thing is that if you change the file name of tailwind.css, the error disappears.
-"dev:css": "tailwindcss -o ./app/tailwind.css --watch",
+"dev:css": "tailwindcss -o ./app/tailwindy.css --watch",

Potentially related to https://github.com/remix-run/remix/issues/783

I confirm this issue, however, it seems more like a cache issue only.
For anyone come across this issue, deleting .cache folder and re-run the server will fix the issue.

try move tailwind.css into app/styles by use command
"dev:css": "tailwindcss -o ./app/styles/tailwind.css --watch"

The strangest thing is that if you change the file name of tailwind.css, the error disappears.
-"dev:css": "tailwindcss -o ./app/tailwind.css --watch",
+"dev:css": "tailwindcss -o ./app/tailwindy.css --watch",

this works!

The strangest thing is that if you change the file name of tailwind.css, the error disappears.
-"dev:css": "tailwindcss -o ./app/tailwind.css --watch",
+"dev:css": "tailwindcss -o ./app/tailwindy.css --watch",

this works!

It happened to me too, when I started creating a styles folder with other .css files inside.

try move tailwind.css into app/styles by use command
"dev:css": "tailwindcss -o ./app/styles/tailwind.css --watch"

this workaround is correct for me !

it's correct, although one more thing : it happened again to me even with the workaround.
deleting .cache didn't solve anything that time.
but when I hard refresh my page, everything went fine again : I guess it was a browser cache "issue" !

I think I figured out why we're getting the error Warning: Prop href did not match. Server: "/build/_assets/tailwind-UF2CZ54Y.css" Client: "/build/_assets/tailwind-GCIKYTPB.css
It looks like when esbuild compiles the route file, it generates the hash based on the contents of the original source, not the bundled output. So if your root route imports the tailwind.css file from app, the source never changes. But the tailwind URL will change and will generate a bundle with the new file path, but with the SAME root hash! And since the /public/build folder is immutable, it will never download the new root file. :scream: The only way to work around this in dev, is to disable caching in your dev tools. But you can't rely on that on production.
To reproduce, have a clean /public/build folder. Start your app and let it build. Then rename /public/build to /public/build-old. Now add a new Tailwind class to your route and save. Remix will rebuild, but if you compare both root.js files (build and build-old), you'll see the filename stays the same even though the import for tailwind.css has changed.
// build-old/root-AURVXRN.js
// app/tailwind.css
var tailwind_default = "/build/_assets/tailwind-A6AN5OWU.css";

// build/root-AURVXRN.js. NOTE Same filename
// app/tailwind.css
var tailwind_default = "/build/_assets/tailwind-K3O5UDQR.css";

Not sure if this is an esbuild bug (it doesn't really say whether the hash is dependent on the source contents or the bundled contents).

NOTE: I was able to reproduce this bug even without dynamic files like tailwind. A simple static CSS file will still result in the same error. So basically any import of static assets will fail because the route module hash will remain the same even if the imported filename changes.

This is tracked and fixed in this esbuild issue https://github.com/evanw/esbuild/issues/1957

seeing this issue a lot. hard refresh in dev fixes it.

Having this issue, without using tailwind. Sometimes, on first load of route, correct stylesheet is loaded, but when navigating back and forth, this issue appears and different version (built previously with different hash) of the same stylesheet is loaded.

@gaarf for me it comes back after another edit. Hard refresh permanently fixes it for you?

@silvenon after some edits yeah, the bug comes back eventually…. Hard
refresh fixes it until next time ;-) There’s no real impact that I can see
outside the console log.
On Fri, Feb 4, 2022 at 8:19 AM Matija Marohnić @.***>
wrote:

@gaarf https://github.com/gaarf for me it comes back after another
edit. Hard refresh permanently fixes it for you?
—
Reply to this email directly, view it on GitHub
https://github.com/remix-run/remix/issues/896#issuecomment-1030138323,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AABSBTFNDR7CL7I4LE6MMJTUZP4BDANCNFSM5JMIYQEQ
.
Triage notifications on the go with GitHub Mobile for iOS
https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675
or Android
https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.
You are receiving this because you were mentioned.Message ID:
@.***>

Any time you change your dependent file (.css), you'll get this error. Mainly because the esbuild version used by Remix isn't properly generating the filename hash for the importing file.
root-abc123.js imports style-def456.css
after changing css file, it creates a file named style-xyz789.css, which is imported in root.js correctly, but the filename is the same root-abc123.js (same filename, different content). Since these files are cached forever, your server side (which uses the new css) and your client (which is still using the old version... since it's been cached) is out of sync.
With that being said, the bug is fixed in latest esbuild, so hopefully it will be included in next remix release.

There is indeed this problem. Turning on disable cache can temporarily eliminate the warning.

How do you disable the cache?

In Dev Tools, Network Tab

How do you turn on disabling the cache?

I would also add that you can use Shift+Cmd+R to do a single hard refresh.

seeing this issue a lot. hard refresh in dev fixes it.

I can confirm that this is the workaround for now.

This should be fixed in v1.2.2 (https://github.com/remix-run/remix/releases/tag/v1.2.2) since this release includes updated esbuild (50e428b65d0ec1ae72a19ea8a06bd8012fb01ce5) that fixes the underlying problem. @jacob-ebey

I can confirm that this worked 🎉


support other listen

for example vsocks
https://github.com/rust-vsock/tokio-vsock

You can already do that with hyper::server::conn::Http::serve_connection.


Updated Package.JSON Lints

Edited Lint CI
Adding an additional GB of Heap [7GB] for Harness CI Cloud Build.

Harness Developer Pull Request
Thanks for helping us make the Developer Hub better. The PR will be looked at
by the CODEOWNERS.
What Type of PR is This?

[ ] Issue
[ ] Feature
[x] Maintenance/Chore

If tied to an Issue, list the Issue(s) here:

Issue(s)

House Keeping
Some items to keep track of. Screen shots of changes are optional but would help the maintainers review quicker.

[x] Tested Locally
[x] Optional Screen Shoot.

Please check the Execution Link of the Pipeline for the Website Draft URL. This is located in the Preview Step behind the Harness VPN and also is available in #hdh_alerts. E.g Website Draft URL: https://unique-id--harness-developer.netlify.app. Current Draft URL is: https://658c80ee94dd252876ce08de--harness-developer.netlify.app


Portals list: Filter is off by one

The portals list plugin currently has an off by one bug in the filtering mechanism.
Note that this is not currently a visible bug. I only discovered it after modifying the plugin to have teo96's original export code (updated to work with the current version of the plugin) -- it works as long as no filters are on, but once window.plugin.portalslist.filter value changes to anything above or below 0 (i.e. not 0 or -0) then my functionality breaks, and while I could fix it in the code I imported code, it would be a hack.
To exemplify this, the plugin uses the following values of window.plugin.portalslist.filter to determine which portals to show/hide :
0=all
1=neutral
2=resistance
3=enlightened
This is incorrect, as neutral portals are considered as owned by team 0, resistance are team 1 and enlightened are team 2 in the window.plugin.portalslist.listportals[x].portal.options.team code, which further digging suggests comes from window.portals somehow, though I haven't been able to determine how to get at the data under window.portals without using a loop. :-/
I would suggest changing window.plugin.portalslist.filter to use -1 for displaying all portals (removing all filtering), 0 for showing only neutral, 1 for showing only res and 2 for showing only enl, HOWEVER this would break the "show all but..." functionality of clicking on the right half of the color at the top of the list.

So, looking into the code further, it appears the filter was written intentionally to be off-by-one and hacks were added to compensate, in order to allow the filter to work correctly.
`//fill the listPortals array with portals avaliable on the map (level filtered portals will not appear in the table)
window.plugin.portalslist.getPortals = function() {
//filter : 0 = All, 1 = Neutral, 2 = Res, 3 = Enl, -x = all but x'
Followed further down by:
  if(filter !== 0) {     portals = portals.filter(function(obj) {       return filter < 0         ? obj.portal.options.team+1 != -filter         : obj.portal.options.team+1 == filter;


flakey-dns.rb example is incorrect

flakey-dns.rb example is using false to pass control to otherwise handler which is not working. Actually it needs using next! method. Thus, example is wrong.
For example, if I request microt.com it is not resolving.
This is classical and loved by everybody wrong example case. I expect arrogant response like "it was just an example", like many ruby coders love to say.

Thanks for reporting this and I will sort it out :) I appreciate all reports like this and the time it took you to figure out what was wrong and what to do about it.

This has been merged. Thanks so much for fixing this and for your extended patience. I really appreciate your effort to improve this project.


pam-mysql

mysql to mysqllibrenms and mysqlradius

@maria-walsh I don't find need of specific ipaddress definition for both mysql containers.

@NaveenSidhartha  I don't know why it had one either, I checked and there is no DNS record created for it. Is there any reason for debug/maintenance that the PAM operators would need to access the database via the IP. Is there a GUI similar to pgadmin that is used  for viewing the Postgres databases. The Postgres databases do not have an IP but pgAdmin does.

@maria-walsh Mysql-workbench is there for gui, so we can remove the ip for db containers.