Data Corruption of values inside an Array(Tuple(String, String))

ClickHouse client version 1.1.54180.
Connecting to localhost:9000.
Connected to ClickHouse server version 1.1.54180.
Changing how the data are retrieved changes the content of this column Array(Tuple(String, String))
Correct value should be [('weight',' a number... ')]
I have checked carefully the original file of the import and they are fine
SELECT extension
FROM impressions
WHERE (date = toDate(now())) AND (request_nr =<PHONE_NUMBER>0301216)
┌─extension───────────────┐
│ [('weight','255050.0')] │
└─────────────────────────┘
:) select request_nr,extension from impressions where date = toDate(now()) limit 10
SELECT
request_nr,
extension
FROM impressions
WHERE date = toDate(now())
LIMIT 10
┌────────request_nr─┬─extension─────────────┐
│<PHONE_NUMBER>7259213 │ [('weight','weight')] │
│<PHONE_NUMBER>7259213 │ [('weight','weight')] │
│<PHONE_NUMBER>7259213 │ [('weight','weight')] │
│<PHONE_NUMBER>7259213 │ [('weight','weight')] │
│<PHONE_NUMBER>7259213 │ [('weight','weight')] │
│<PHONE_NUMBER>7259213 │ [('weight','weight')] │
│<PHONE_NUMBER>7304563 │ [('weight','weight')] │
│<PHONE_NUMBER>0773672 │ [('weight','weight')] │
│<PHONE_NUMBER>2811798 │ [('weight','weight')] │
│<PHONE_NUMBER>2811798 │ [('weight','weight')] │
└───────────────────┴───────────────────────┘
SELECT any(extension)
FROM impressions
WHERE date = toDate(now())
GROUP BY zone_id
LIMIT 10
┌─any(extension)──────────┐
│ [('255050.0','50.0')]   │
│ [('weight','weight')]   │
│ [('weight','weight')]   │
│ [('255050.0','5255.0')] │
│ [('50.0','2037.0')]     │
└─────────────────────────┘
┌─any(extension)──────────┐
│ [('3255.0','1255.0')]   │
│ [('weight','weight')]   │
│ [('255050.0','4255.0')] │
└─────────────────────────┘
┌─any(extension)────────┐
│ [('weight','weight')] │
│ [('50.0','4255.0')]   │
└───────────────────────┘
I have no idea how to help more sorry.

Hi!
Do you use MergeTree engine? Could you show SHOW CREATE TABLE impressions?

Hi Ludv1x, yes the table is a MergeTree
Here is the full output
CREATE TABLE rt_analytics.impressions ( request_nr UInt64,  timestamp UInt32,  milliseconds UInt32,  ip String,  user_timezone_offset Int64,  nation UInt64,  subregion_0 UInt64,  subregion_1 UInt64,  city UInt64,  carrier String,  connection_type String,  afsu UInt64,  nugg_segments Array(Int8),  os_family_code UInt64,  os_version String,  browser_code UInt16,  browser_version String,  device_code UInt16,  brand_code UInt16,  affiliate_id UInt64,  affmgr_ids Array(UInt64),  zone_id UInt64,  website_id UInt64,  clean_url String,  weSbsite_primary_categories Array(UInt16),  website_secondary_categories Array(UInt16),  zone_primary_categories Array(UInt16),  zone_secondary_categories Array(UInt16),  campaign_id UInt64,  merchant_id UInt64,  trafficker_ids Array(UInt64),  salesPerson_id UInt64,  channel String,  campaign_primary_categories Array(UInt16),  campaign_secondary_categories Array(UInt16),  campaign_primary_targeting Array(UInt16),  campaign_secondary_targeting Array(UInt16),  banner_id UInt64,  extraNum1 Int64,  extraNum2 Int64,  extraNum3 Int64,  extraNum4 Int64,  extraNum5 Int64,  extraString1 String,  extraString2 String,  extraString3 String,  extraString4 String,  extraString5 String,  slot_position UInt8,  slotCount UInt8,  isWebsiteImpression Int8,  extension Array(Tuple(String, String)),  rtbBidfloor Float32,  rtbOffered Float32,  gross Float32,  tare Float32,  curId Int16,  curRate Float32,  new_merchant_id Int64 MATERIALIZED dictGetInt64('campaigns', 'merchant_id', campaign_id),  partner_id Int64 MATERIALIZED dictGetInt64('campaigns', 'partner_id', campaign_id),  date Date MATERIALIZED toDate(timestamp),  dateTime DateTime MATERIALIZED toDateTime(timestamp),  domain String MATERIALIZED domain(concat('http://', clean_url)),  zone_position UInt64 MATERIALIZED dictGetUInt64('zones', 'position', zone_id)) ENGINE = MergeTree(date, timestamp, 8192)

I believe the problem may lie in the columns definition:
extension Array(Tuple(String, String))
MergeTrees don't allow for array of array type columns, but it doesn't complain for array of tuples... though maybe, even if the warning is not there, the same bugs can arise (if tuple is just a wrapper over the array/vector for most part).
However this is pure speculation based on the fact that querying said column can result in crashes if the table is large enough.

We have added support for multidimensional arrays and combinations of arrays and tuples in tables. It is available in latest master (still yet to be released).


More changes to DoFn{Signatures,Invokers}.

In preparation for Splittable DoFn.

More generic code generation in DoFnInvokers:
supports methods with return values (thanks @bjchambers).
Uses AutoValue builder in DoFnSignature.
Contextual error reporting in DoFnSignatures parsing code.
Rewrote DoFnInvokers tests to use Mockito.
Changed DoFnSignatures tests to use local classes
and an "AnonymousMethod" class for testing analysis of
single methods.

R: @bjchambers

Test failures (https://builds.apache.org/job/beam_PreCommit_MavenVerify/3281/):
Test Result (11 failures / +11)
org.apache.beam.sdk.transforms.DoFnTest.testCreateAggregatorInStartBundleThrows
org.apache.beam.sdk.transforms.DoFnTest.testCreateAggregatorInProcessElementThrows
org.apache.beam.sdk.transforms.DoFnTest.testCreateAggregatorInFinishBundleThrows
org.apache.beam.sdk.transforms.reflect.DoFnSignaturesProcessElementTest.testBadExtraProcessContextType
org.apache.beam.sdk.transforms.reflect.DoFnSignaturesProcessElementTest.testBadReturnType
org.apache.beam.sdk.transforms.reflect.DoFnSignaturesProcessElementTest.testBadGenericsTwoArgs
org.apache.beam.sdk.transforms.reflect.DoFnSignaturesProcessElementTest.testGoodConcreteTypes
org.apache.beam.sdk.transforms.reflect.DoFnSignaturesProcessElementTest.testBadProcessContextType
org.apache.beam.sdk.transforms.reflect.DoFnSignaturesProcessElementTest.testMissingProcessContext
org.apache.beam.sdk.transforms.reflect.DoFnSignaturesProcessElementTest.testBadGenericWildCards

The first three are because the exceptions that are expected when calling createAggregater after the prepareForProcessing are not being thrown: https://builds.apache.org/job/beam_PreCommit_MavenVerify/org.apache.beam$beam-runners-direct-java/3281/testReport/junit/org.apache.beam.sdk.transforms/DoFnTest/testCreateAggregatorInStartBundleThrows/

LGTM.
@kennknowles did you want to make a final pass before we merge this?

LGTM. Clearly an improvement.


Added support for using async entity API without AsyncContext

[x] AltV.Net.Async support
[x] AltV.Net.Async.CodeGen support

ty


Prometheus metrics

Not an issue!
Just an idea: It'd be nice, if we already running webserver for ui, to expose /metrics path with prometheus metrics. Same information as Status page gives but in plain prometheus text format. In bytes, no other math around. Just the things which wg show all dump gives us.
Maybe labeled values with at least name would be even more perfect, so then we can have graphs in graphana, for example.

@ngoduykhanh  I also have a use for this feature and would be willing to open a PR and implement it if you are ok with the idea and want it adding to the project? Basically just want to get your opinion before I start working on it.

#640
Please help

It could be performed outside the wireguard_ui with help of https://github.com/kbknapp/wireguard_exporter (and maybe others), without the labels (naming) of course.


test: run e2e and integration tests in parallel

LGTM.

Cool trick. LGTM.

saved roughly 6 minutes on semaphore. merging


OTA firmware update command line script

In case anyone is interested ;)
The following script will OTA flash a firmware binary, following the steps given here. Please set the variables according to your environment.
During execution of the script, you should subscribe to $implementation/ota/status for progress feedback.
#!/bin/bash

mqtthost=localhost
mqttuser=user
mqttpass=xxxx
mqttbase="homie/device1"
binfile="firmware.bin"

md5sum=`md5sum $binfile | awk '{ print $1 }'`
mosquitto_pub -d -h $mqtthost -u $mqttuser -P $mqttpass -t "$mqttbase/\$implementation/ota/checksum" -m "$md5sum"

base64enc=`base64 -w0 $binfile`
mosquitto_pub -d -h $mqtthost -u $mqttuser -P $mqttpass -t "$mqttbase/\$implementation/ota/firmware" -l <<< "$base64enc"

Thanks for the handy script.
I would add the "-d" parameter to get debug messages, in case something's wrong with the connection/broker.

Good point, I'll add that above. I'd always open a subscription in parallel to see feedback/progress/success messages posted to $implementation/ota/status.

Hi Thom,
I have several devices with the same code that i want to update. Using the script you provided i have to run it one by one changing the topic. Is there a way to change or set a generic topic only for OTA updates so that when i change my code, i can publish it to my general topic and all my devices that are subcribed download the new code?Independent from each baseTopic/deviceId i mean, for example a topic named homie/LightsCode
Thanks!

No, Homie-OTA works in a way that you must send the firmware to each device individually.
BTW: To use OTA with the latest Homie-development version, you must delete the first call to mosquitto_pub and change the secondo call to mosquitto_pub to:
device=yourhomiedevice
mosquitto_pub -d -h mqtt_host -p 1883 -t "homie/$device/\$implementation/ota/firmware/$md5sum"  -l <<< "$base64enc"

To use binary upload (works much more stable for me) use:
mosquitto_pub -d -h mqtt_host -p 1883 -t "homie/$device/\$implementation/ota/firmware/$md5sum"  -f $binfile

try out this shiny new ota python script https://github.com/marvinroger/homie-esp8266/tree/develop/scripts/ota_updater

I think this can be closed


Add func/method comments to datastore

Added comments to exported functions and methods for datastore:

datastore.go
kubernetes.go
longhorn.go
uncached.go

Add our doc writer @catherineluse

LGTM, except for the commit message still contains 3 signed-off-by.

I've cleaned up the commit message. PTAL.


Packaging for Mac

I am using Hover. Its really great btw !
I noticed that on MAC, the exe opens a terminal and then opens the Flutter GUI.
I think most of this is because its not packaged as  Mac .app.
Here is a pure golang packager for Mac.
https://gist.github.com/mholt/11008646c95d787c30806d3f24b2c844
I am thinking that it might be cool to integrate into Hover itself.
I got the packaging working but not the symbolic links.
It seems that hover puts the flutter framework in:
Library/Caches/hover/engine/darwin/....
Not sure how what i should do ? Seems what we do now is not so smart.
https://github.com/go-flutter-desktop/hover/blob/master/internal/enginecache/cache.go#L320

@gedw99 How would I use your GIST?

here is example code.
mkdir -p ./pack

	go run ./mac/main.go \
		-assets $(PWD)/assets \
		-bin $(BINARY) \
		-icon $(PWD)/icon02.png  \
		-identifier "com.example."$(BINARY) \
		-name $(BINARY) \
		-o $(PWD)/pack

At the moment the symbolic links fails.
I think we should put this into hover or another repo here to work on it.

Ok sweet thank you! I’m excited about desktop embedding, I have been using flutter for over a year

me too.
Sorry i have not had time to work on the Mac packaging.
I suggested that it go into hover, but i think its early days.

Hi @gedw99 the issue I see with this approach is that it only works on Mac because it depends on hdiutil. What about this shell approach ?

hey @Sach97
Had a look at pure shell. All the calls are for native MacOS stuff that is installed in a normal Mac so its ok by me.
I think its cool if we put the .sh into Hover.
This will mean none golang code but its probably best as for each Desktop the Packaging and Signing is very OS specific.
Also happy to see this being looked at for incorporation into Hover.
Will be a good start and can add Windows signing too with time.

Moved to #207.


DSGP 2

A new function syntax can be possible.

I'll move this to "Pending". The idea of this parser may take time to be applied, but I would like to see it come true.


'Hide works based on their tags' is unreliable

Works are only hidden if the tag given is in the first five (or so) tags in the list for that work.

I see that you closed this again, was that on purpose, or? :)


Error: org.w3c.dom package is accessible from more than one module: , java.xml

The error shows up in eclipse 2021-12. Perhaps related to modular Java (using JDK 17).

It appears you need to:

remove the xml-apis-1.4.01.jar; its contents are supplied in java.xml module of the JavaSE-17 JDK.
remove the w3c contents from xercesImpl-2.12.1.jar; HTMLDOMImplementation.class is supplied in jdk.xml.dom module.
remove netscape contents from htmlunit-2.56.0.jar; they are supplied in jdk.jsobject module.


Project details，When there is too much project information, the style of project details card needs to be optimized

当项目名称，项目id，项目描述文字过多时，项目详情卡片的样式需要优化；

resolved


Issue on page /notebooks/07-R.html

Broken URL in the beginning of section "Getting started" about IDE's

Fixed!


Running tests with jest hangs

Hello,
I am trying to run my tests (using jest), but it hangs:

normal run

➜  ~/Dev/frontend (dev) yarn wsrun test
yarn run v1.9.4
$ /Users/jozsi/Dev/frontend/node_modules/.bin/wsrun test
project5
$ react-app-rewired test --env=jsdom
project6
$ echo 'No tests here yet'
 | No tests here yet
project4
$ react-app-rewired test --env=jsdom
project3
$ react-app-rewired test --env=jsdom
project2
$ react-app-rewired test --env=jsdom
project1
$ react-app-rewired test --env=jsdom
project5
 | No tests found related to files changed since last commit.
 |
project4
 | No tests found related to files changed since last commit.
project3
 | No tests found related to files changed since last commit.
project4
 |
project3
 |
project2
 | No tests found related to files changed since last commit.
project1
 | No tests found related to files changed since last commit.
project2
 |
project1
 |
^CStopping 6 active children

using --serial

➜  ~/Dev/frontend (dev) yarn wsrun test --serial
yarn run v1.9.4
$ /Users/jozsi/Dev/frontend/node_modules/.bin/wsrun test --serial
project5
$ react-app-rewired test --env=jsdom
 | No tests found related to files changed since last commit.
 |
^CStopping 2 active children
/Users/jozsi/Dev/frontend/node_modules/wsrun/build/parallelshell.js:161
                ch.cp.removeAllListeners('close');
                      ^

TypeError: Cannot read property 'removeAllListeners' of undefined
    at children.forEach.ch (/Users/jozsi/Dev/frontend/node_modules/wsrun/build/parallelshell.js:161:23)
    at Array.forEach (<anonymous>)
    at RunGraph.closeAll (/Users/jozsi/Dev/frontend/node_modules/wsrun/build/parallelshell.js:160:27)
    at process.emit (events.js:182:13)

If possible, you should probably use jest's projects setting - its far more efficient.
In the workspace dir package.json:
{
  "jest": {
    "projects": [
      "<rootDir>/packages/p1",
      "<rootDir>/packages/p2",
      ...
    }
  }
}

We made quite a few changes since the issue was originally opened, but please let us know if it still persists.

Still hangs when using it inside a lerna monorepo with wsrun 3.6.4 and jest 23.6.0.

This issue persists in yarn workspaces with jest framework. @spion let me know if you want me to open a new issue.

I can reopen this one. it would be helpful if there was a test case that reproduces it though.

This needs more info, preferably a small reproduction case. Will close again


Rogue Indentations in Resultant HTML Files

Version Observed In
0.1.0
Description
When a component gets written to in the resultant HTML files (after conversion), the correct indentation of the HTML code isn't observed.
Errors
None.
Expected Behaviour
The indentations in the resultant HTML files would be according to how code was written in the child Chasse files.
Hints for Fixes
During writing to the resultant files, count the spaces (or tabs) in the child Chasse files and write the same number of spaces to the resultant file in each line before writing the component contents.
Further Comments
None.

Version Fixed In
1.0.0
Fix Implemented
As mentioned in "Hints for Fixes".
Drawbacks to Solution
None.
Further Comments
None.


Crash On Artilery Menu Close

When Closing The Menu For Artillery (Both Kinds) The Mod Throws an error. Do Let Me Know If there Is Anything i Can Do To Help.

The mod Shortcuts for 2.0 (2.0.5) caused a non-recoverable error.
Please report this error to the mod author.

Error while running event Shortcuts-ick::on_gui_closed (ID 96)
Trying to read property that is not available on line
stack traceback:
	[C]: in function '__index'
	__Shortcuts-ick__/control.lua:270: in function 'artillery_icon_destroy'
	__Shortcuts-ick__/control.lua:282: in function 'artillery_on_gui_closed'
	__Shortcuts-ick__/control.lua:980: in function <__Shortcuts-ick__/control.lua:978>

Well it seems to have solved its self. so i will just close this issue


Timezone support for logging [feat]

Is it possible to add TZ support to the docker image, and then have logs timestamped in local timezone?
I can install this manually or build a container from the published images - but nice to have it in by default. I have tested the manual install and the log date is then in the correct TZ.
Be nice to be able to pass the TZ in a docker ENV variable.

@chrish987 Isn't it already there?
https://github.com/zwave-js/zwavejs2mqtt/blob/master/docker/Dockerfile#L42

@robertsLando Generally would be nice if the logs had an ISO8601 timestamp, probably from the following only TZ missing
2021-02-07 17:39:43.081 INFO ZWAVE: Node 35:

AFAIK logs are always in UTC format

this is working ok for me. If I set the TZ=Pacific/Auckland env variable in the docker-compose.yaml the logs are in the correct TZ. No TZ piece to the string - but the time is right. Sorry I did not test it very well before I opened the issue.
2021-02-09 17:33:08.557 INFO ZWAVE: Node 22: value updated: 112-0-8 5 => 5
2021-02-09 17:33:08.742 INFO ZWAVE: Node 6: value updated: 112-0-103 0 => 0
2021-02-09 17:33:08.963 INFO ZWAVE: Node 22: value updated: 112-0-9 1 => 1
2021-02-09 17:33:09.155 INFO ZWAVE: Node 6: value updated: 112-0-111 3 => 3
2021-02-09 17:33:09.376 INFO ZWAVE: Node 22: value updated: 112-0-10 0 => 0


WIP Port frontend codebase to typescript

There's a few cases where git is not picking up renames.
Probably the ".react.tsx" names could just be ".tsx".
Is there a plan for testing this?

Hey hey. I looked through this again, and resolved a number of comments and left a few more. I think fixing the git rename issues are important so that the history still works.
If there's any thing you want me to check, or test in particular let me know :)

A general note, the "theme as Theme" cast can be replaced by by typing theme in the function params. Probably it's easier to search and replace them all at once, than for me to point out each one separately.

Weird... the github files tab still isn't updating correctly it seems. I see the rename works with ChannelAvatar.tsx with git cmd but not online when reviewing. (It makes reviewing the files through the web harder).
git log --follow frontend/src/js/components/Channels/ChannelAvatar.tsx

I also see the move in the commit online... https://github.com/kinvolk/nebraska/pull/325/commits/36c2a553e34bf2fcac2262847f8c47b28d284395
But then when I do this locally...

@joaquimrocha we can't seem to figure out why some files are not renaming properly in the github interface. The commits had the dates fixed up to be chronological, we tried opening a new PR just incase that would help (it didn't). One example is the ChannelAvatar.tsx file, which looks fine from the command line, but not in the github webview. It seems odd, but we've ran out of ideas... if no one can spot anything wrong... then I perhaps we are ok to merge with the files github doesn't show as renamed in the web view.
I'm going to review those remaining rename-troubled files from the command line.
For the curious, commands like this seem to work best for reviewing renamed files (where HEAD~100 in this command is the pre-typescript commit).
# git diff HEAD~100:old-file new-file
git diff HEAD~100:frontend/src/js/components/Channels/ChannelAvatar.js frontend/src/js/components/Channels/ChannelAvatar.tsx

@ashu8912 , the code looks overall fine to me. However, I tried this branch on staging and noticed that when creating a new group, the group is not shown on the UI until I refresh the page. This didn't happen on 2.3.1, so maybe you can check whether it's a regression from your changes.

@joaquimrocha i have fixed the adding group | app bug


Documentation, Lightspeed-react should be "npm run build"

The build command for Reacet should use npm run build it is currently just saying npm build which doesn't work for me. Adding the run did the trick though ;-)

Whoops! Missed a word haha thank you!

Whoops! Missed a word haha thank you!


Fix #53 - Collapse after how many categories

Fix: Collapse indicator dont match the collapse state of categories

Thank you for the PR!


Error when importing jax

Description
Error message when importing jax. How can I solve it?

Below is the result of "pip show jax jaxlib".

What jax/jaxlib version are you using?
jax 0.4.8, jaxlib 0.4.7
Which accelerator(s) are you using?
No response
Additional system info
python - 3.9.16, MacOS 13.0, M1 Pro
NVIDIA GPU info
No response

Duplicate of #15402


Need GET /languages Route

This endpoint should get the list of languages and should implement pagination in the same manner as the patterns already implemented in the /resources endpoint (See #21)

@aaron-suarez I would like to take this issue!

Sure, good luck, let us know you have any issues.
Placeholder myself.

Ok, just give me a day or two to get #21 taken care of, then implement the pagination in the same manner for this issue.
In the meantime, if you haven't already joined our slack team, you can join the conversation in the #oc-python-projects channel. Just sign up for slack via operationcode.org/join

The interface to the paginator changed and now doing GET api/v1/languages always returns an empty list.
We need to get the query to pass into language_paginator.items and take the Language argument out of the Paginator constructor.

@aaron-suarez How do you think we should do that? Should we just change the Paginator constructor call and its implementation or do we need to do something more?

@aaron-suarez Now that #39 has been merged, how do we think we should approach this? Should we just change the Paginator constructor call and its implementation or do something more?

@aaron-suarez I just created a new PR to deal with this reopened issue's concerns. Feel free to look over my changes and share your thoughts in a review.


multiple channels in Firefox/IE

I'm trying implement multiple channels support. But I faced performance issue under Firefox and IE. When I use Firefox/IE to play 4 channels at the same time, browser become very unsmooth. But everything works perfectly in Chrome. Still figuring out how to solve the issue.
I've tried the following situations:

4 swf loaded in web, each swf with 1 client
4 clients in 1 swf
4 clients using stageVideo (Hardware acceleration)
Worker (AS3 concurrency)

Any ideas what possible factor causes this?

Chrome uses its own implementation of Flash (PepperFlash) while the others use Adobes implementation. It may be because of differences here.
How are resource utilization on the computer which runs the Firefox or IE ? If they are choked that might indicate that you cannot run 4 streams simultaneously with those settings.

CPU usage is lower than 50 percent while using ie/firefox.
I've done more tests recently.
I tried to use chrome/opera (which both supports NPAPI and PPAPI) to load the swf with muiltiple channel implement.
Both browsers has the same situation while using NPAPI version of flash plugin like IE/Firefox does.
Still trying to solve this problem

So what CPU would you expect when running 4 simultaneous streams? What resolution and framerate do the stream consists of?

As you mentioned earlier, PepperFlash probably provides better performance.
And I assume sandy bridge I3 (my earliest test environment few years ago) is plenty for 4 different streams with1080p/30p real time software decoding and rendering (but sadly tested directly using my RTSP client application). My development environment is ivy bridge i5, which supposed perform better. Just wondering the limitation of flash based RTSP client with different platform/browser. I'm still working on this issue, and will provide more result soon. Hopefully I could found solution for this =)

I'm not really familiar with any benchmarks on how much you can achieve using software decoding. I remember back in the day when 720p started to get popular, it was generally considered that you needed at least an Intel Core2Duo to be able to handle it - but that was a while ago :)
I'm looking forward to read what you come up with!


Adding new sensors to the Android sense agent

Can you please resolve the conflicts? Sorry for the delay in merge.


Fix dropdown & test data-bs usage

Fixed docs for DropDown and a dismiss in a test

@machour could you please add the composer.json changes to this branch too? That would help run the tests.

@simialbi all done (I'd advise using a squash & merge instead of a simple merge)

I think here a CHANGELOG entry makes sense. Afterwards I'll merge it.

@simialbi This is a pure documentation change, I really don't think it should be mentioned in the changelog

Done :)


ERROR: Failed to enable HID over AOA, fallback to default keyboard injection method (-K/--hid-keyboard ignored)

[ x] I have read the FAQ.
[ x] I have searched in existing issues.

Environment

OS: Ubuntu 21.10
scrcpy version 1.20
installation method: snap
device model: Moto G4 Plus
Android 9

Describe the bug
The title says it all. Running scrcpy with the -K option churns out this error.
ERROR: Failed to enable HID over AOA, fallback to default keyboard injection method (-K/--hid-keyboard ignored)

installation method: snap

Try a non-snap install.

I just tested this with the source install method and it works (while still breaking with snap). Probably the containerization with snaps to be the issue. Also, noting here that the source install is the only method to test this with Debian derivatives because the apt repo is at 1.12.
There's probably a way to request permission to usb devices with snap packages that could be investigated.

Also, noting here that the source install is the only method to test this with Debian derivatives because the apt repo is at 1.12.

Yes, Debian currently packages 1.19, and depending on the version of your derivative, you could have 1.12: https://repology.org/project/scrcpy/versions
That's one of the reason I added this install script :wink:

@entodoays, looks like this is a issue with the snapcraft.yaml file on scrcpy-snap and this issue should probably be moved there.

https://github.com/sisco311/scrcpy-snap/issues/29#issue-1061683563

Physical keyboard simulation works only when connected through USB and not through TCP/IP. I had connected through the latter pathway. When I tested it with a physical USB connection it worked.


libMitkDiffusionIO.so failed

Dear authors
Iam facing with a bug when I run lidc_data_to_nifti.py.
First I have to replace MitkCLDicom2Nrrd with ./MitkCLDicom2Nrrd to call the function.
But I get a same error and do not know how to fix
0.084! WARNING: In load_impl at /home/mgoetz/radiomics/mitk/Modules/CppMicroServices/core/src/util/usUtils.cpp:76 : libjpeg.so.8: cannot open shared object file: No such file or directory
!0.084! WARNING: In AutoLoadModulesFromPath at /home/mgoetz/radiomics/mitk/Modules/CppMicroServices/core/src/util/usUtils.cpp:176 : Auto-loading of module /storage/cuongnc/MITK-2016.11.99_r5cccf9-linux64/bin/MitkCore/libMitkDiffusionIO.so failed.
Do you know how to fix these error ?
Thank you very much

Hi, I have the same problem. Have you figured out why?


Wrong recognition !!!

Hi, i got an issue with jasper , any time i say jasper it recognize it wrong . i used arecord to test my mic and it is working fine.

        JASPER - THE TALKING COMPUTER           *

(c) 2015 Shubhro Saha, Charlie Marsh & Jan Holthuis *

DEBUG:client.diagnose:Checking network connection to server 'www.google.com'...
DEBUG:client.diagnose:Network connection working
DEBUG:main:Trying to read config file: '/home/pi/.jasper/profile.yml'
DEBUG:client.diagnose:Checking python import 'pocketsphinx'...
DEBUG:client.diagnose:Python module 'pocketsphinx' found: '/usr/local/lib/python2.7/dist-packages/pocketsphinx.so'
WARNING:root:tts_engine not specified in profile, defaulting to 'espeak-tts'
DEBUG:client.diagnose:Checking executable 'aplay'...
DEBUG:client.diagnose:Executable 'aplay' found: '/usr/bin/aplay'
DEBUG:client.diagnose:Checking executable 'espeak'...
 ALSA/Jack error messages that pop up during this process are normal and can usually be safely ignored.
ALSA lib pcm.c:2239:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.rear
ALSA lib pcm.c:2239:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.center_lfe
ALSA lib pcm.c:2239:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.side
ALSA lib pcm.c:2239:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.hdmi
ALSA lib pcm.c:2239:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.hdmi
ALSA lib pcm.c:2239:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.modem
ALSA lib pcm.c:2239:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.modem
ALSA lib pcm.c:2239:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.phoneline
ALSA lib pcm.c:2239:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.phoneline
Cannot connect to server socket err = No such file or directory
Cannot connect to server request channel
jack server is not running or cannot be started
INFO:client.mic:Initialization of PyAudio completed.
DEBUG:client.tts:Saying 'How can I be of service, youssef?' with 'espeak-tts'
DEBUG:client.tts:Executing espeak -v default+m3 -p 40 -s 160 -w /tmp/tmpctlK0m.wav 'How can I be of service, youssef?'
DEBUG:client.tts:Executing aplay -D plughw:1,0 /tmp/tmpctlK0m.wav
DEBUG:client.tts:Output was: 'Playing WAVE '/tmp/tmpctlK0m.wav' : Signed 16 bit Little Endian, Rate 22050 Hz, Mono
'
DEBUG:client.brain:Looking for modules in: '/home/pi/jasper/client/modules'
DEBUG:client.brain:Found module 'Birthday' with words: ['BIRTHDAY']
DEBUG:client.brain:Found module 'Gmail' with words: ['EMAIL', 'INBOX']
DEBUG:client.brain:Found module 'HN' with words: ['HACKER', 'NEWS', 'YES', 'NO', 'FIRST', 'SECOND', 'THIRD']
DEBUG:client.brain:Found module 'Joke' with words: ['JOKE', 'KNOCK KNOCK']
DEBUG:client.brain:Found module 'Life' with words: ['MEANING', 'OF', 'LIFE']
DEBUG:client.brain:Found module 'MPDControl' with words: ['MUSIC', 'SPOTIFY']
DEBUG:client.brain:Found module 'News' with words: ['NEWS', 'YES', 'NO', 'FIRST', 'SECOND', 'THIRD']
DEBUG:client.brain:Found module 'Notifications' with words: ['FACEBOOK', 'NOTIFICATION']
DEBUG:client.brain:Found module 'Time' with words: ['TIME']
DEBUG:client.brain:Found module 'Unclear' with words: []
DEBUG:client.brain:Found module 'Weather' with words: ['WEATHER', 'TODAY', 'TOMORROW']
WARNING:client.notifier:gmail_address or gmail_password not set in profile, Gmail notifier will not be used
INFO:apscheduler.scheduler:Scheduler started
DEBUG:apscheduler.scheduler:Looking for jobs to run
DEBUG:apscheduler.scheduler:No jobs; waiting until a job is added
INFO:apscheduler.scheduler:Added job "Notifier.gather" to job store "default"
INFO:client.conversation:Starting to handle conversation with keyword 'JASPER'.
DEBUG:client.conversation:Started listening for keyword 'JASPER'
DEBUG:apscheduler.scheduler:Looking for jobs to run
DEBUG:apscheduler.scheduler:Next wakeup is due at 2016-03-26 13:13:09.027437+00:00 (in 29.982489 seconds)
INFO:client.stt:Transcribed: ['WITH']
DEBUG:client.conversation:Stopped listening for keyword 'JASPER'
INFO:client.conversation:Nothing has been said or transcribed.
DEBUG:client.conversation:Started listening for keyword 'JASPER'
INFO:client.stt:Transcribed: ['IT OF WHAT']
DEBUG:client.conversation:Stopped listening for keyword 'JASPER'
INFO:client.conversation:Nothing has been said or transcribed.
DEBUG:client.conversation:Started listening for keyword 'JASPER'
INFO:client.stt:Transcribed: ['IS OF BE BE BE BE BE WITH']
DEBUG:client.conversation:Stopped listening for keyword 'JASPER'
INFO:client.conversation:Nothing has been said or transcribed.
DEBUG:client.conversation:Started listening for keyword 'JASPER'
INFO:client.stt:Transcribed: ['OF WHAT']
DEBUG:client.conversation:Stopped listening for keyword 'JASPER'
INFO:client.conversation:Nothing has been said or transcribed.
DEBUG:client.conversation:Started listening for keyword 'JASPER'
INFO:client.stt:Transcribed: ['IS ON IT']
DEBUG:client.conversation:Stopped listening for keyword 'JASPER'
INFO:client.conversation:Nothing has been said or transcribed.
DEBUG:client.conversation:Started listening for keyword 'JASPER'
INFO:client.stt:Transcribed: ['IT ON WITH']
DEBUG:client.conversation:Stopped listening for keyword 'JASPER'
INFO:client.conversation:Nothing has been said or transcribed.
DEBUG:client.conversation:Started listening for keyword 'JASPER'
DEBUG:apscheduler.scheduler:Looking for jobs to run
INFO:apscheduler.executors.default:Running job "Notifier.gather (trigger: interval[0:00:30], next run at: 2016-03-26 13:13:09 UTC)" (scheduled at 2016-03-26 13:13:09.027437+00:00)
DEBUG:apscheduler.scheduler:Next wakeup is due at 2016-03-26 13:13:39.027437+00:00 (in 29.997829 seconds)
INFO:apscheduler.executors.default:Job "Notifier.gather (trigger: interval[0:00:30], next run at: 2016-03-26 13:13:39 UTC)" executed successfully
INFO:client.stt:Transcribed: ['IT OF IT']
DEBUG:client.conversation:Stopped listening for keyword 'JASPER'
INFO:client.conversation:Nothing has been said or transcribed.
DEBUG:client.conversation:Started listening for keyword 'JASPER'
INFO:client.stt:Transcribed: ['FIRST WITH']
DEBUG:client.conversation:Stopped listening for keyword 'JASPER'
INFO:client.conversation:Nothing has been said or transcribed.
DEBUG:client.conversation:Started listening for keyword 'JASPER'
INFO:client.stt:Transcribed: ['IN ON IT']
DEBUG:client.conversation:Stopped listening for keyword 'JASPER'
INFO:client.conversation:Nothing has been said or transcribed.
DEBUG:client.conversation:Started listening for keyword 'JASPER'
INFO:client.stt:Transcribed: ['IT BUT OF']
DEBUG:client.conversation:Stopped listening for keyword 'JASPER'
INFO:client.conversation:Nothing has been said or transcribed.
DEBUG:client.conversation:Started listening for keyword 'JASPER'
INFO:client.stt:Transcribed: ['WITH']
DEBUG:client.conversation:Stopped listening for keyword 'JASPER'
INFO:client.conversation:Nothing has been said or transcribed.
DEBUG:client.conversation:Started listening for keyword 'JASPER'

Jasper works much better when the keyword/phrase is 3-4 syllables as recommended in the Phonetisaurus documentation. I have found that the default 2 syllable name "Jasper" is simply too short to be reliable, the 4 syllables of "Hello Jasper" is much better (you could try something else).
In ~/.jasper/profile.yml, try this:
keyword: "Hello Jasper"
This will over-ride the default keyword "Jasper" in application.py.
By making this change Jasper responds properly the first time, so long as it's listening for the keyword, ie. watch for the output:
INFO:jasper.mic:Waiting for keyword 'Hello Jasper'....
In the same vein, the plugin phrases are generally too short, again longer is better. This is why the following plugins are so keen:

Joke: instead of "JOKE", try "TELL ME A JOKE"
News: instead of "NEWS" try "READ THE NEWS", and delete "YES" and "NO".
Clock: instead of "TIME" try "WHAT IS THE TIME".
With these changes I've found that Jasper is much better ;-)

Works fine; this may be an issue with mic settings; or if you have a thick accent.  Either way its not a code issue, please take it to the forum if you have questions.

i got this o/p please help me to resolve it


[FEATURE] Link back to product from Mini-Cart and Cart-Page

Description
Currently, we do not have any link from the line item in the mini-cart or cart page back to the product page.
Use Case
Improve the usability for the user.
Proposed Solution
With the referencedId we already know the corresponding productId but we do not know the nice speaking URL for that product. So how do we solve this without additional requests? Is this possible? I could imagine that we use the payload of the line item during the add item to the cart action/event.
Alternatives Considered
Consider moving the function into a reusable composable.
Additional Context
The solution needed for the demo-store template.

@patzick, can I get more insights on this. I have attached the ss below. Please lemme know if this is correct

hey @khanSoliheen!
This is more about making products inside a mini cart to be linked back to the product page. In your screenshot example - clicking on the title LAVENDA Product Variants should redirect to that specific product page :)

@patzick , please confirm, it should navigate to http://localhost:3000/detail/bbf36734504741c79a3bbe3795b91564 when we click on LAVENDA Product Variants title. Am I right? Thanks.

@patzick , It is done. You can find the PR https://github.com/shopware/frontends/pull/977


changeDecorations missing from monaco.d.ts

This API is on the model and editor, and I assume it's meant to be public, because it's used in this example - https://microsoft.github.io/monaco-editor/playground.html#interacting-with-the-editor-rendering-glyphs-in-the-margin

i use deltaDecorations and onDidChangeDecorations

Huh, I didn't notice that deltaDecorations changes the decorations. Would make sense to update the example with that API.


Mod Resolution fails if a JiJ mod provides the ID of a mod present at root level

Essentially as the title says, if a mod JiJ'd in another mod declares the ID of a root-level mod in its provides block, mod resolution fails with the following error:
org.quiltmc.loader.impl.discovery.ModSolvingError: <id> is already provided by ModCandidate{<providing mod>} - something has gone wrong internally!
For a concrete example, Numismatic Overhaul and owo-lib may be used where the error will then be
org.quiltmc.loader.impl.discovery.ModSolvingError: owo is already provided by<EMAIL_ADDRESS>- something has gone wrong internally!. owo-sentinel here is JiJ'd in Numismatic Overhaul and is only supposed to be loaded when owo is not present to then offer the user the option to automatically download it.

So loader really doesn't handle provides correctly then :p
thanks for the report, I'll look into it soon.

This should now be fixed in 0.16.0-beta.11.

From my testing it appears the issue has been resolved and sentinel loads properly now, thanks for the quick fix
I'll go ahead and close this
Cheers


UI Theme not showing in PhpStorm 2019.1

I have installed Nord Color Scheme in PhpStorm 2019.1 and the UI theme option is not shown in the dropdown:

The Editor color scheme works fine.

On the Plugin MArket page (and in IDE) it shows that it still version 0.4.0. Could this be the issue?

I've probably confirmed it is an issue that version 0.4.0 is still being downloaded. I've extracted the Nord.jar in the plugins folder and the plugin.xml shows this:

Which is not the latest 0.5.0 version of the file.
Is it being reviewed by JetBrains or is it not yet published in the MarketPlace?

I've managed to compile it from source using IntelliJ Community and now it is showing the correct version:

Wow! The UI is beautiful, I'll enjoy working with this theme!

Compiling from source should work fine.
There are some problems deploying version 0.5.0 to the JetBrains Plugin Repository. It complains about an unmatching "Plugin XML ID" which was auto-generated by an older IntelliJ version. I've used the ID I'd like to use for the new UI & editor scheme, but while deploying the new version it'll deny the file due to the ID mismatch.
I'm in contact with JetBrains through their Twitter account to get some more details about this ID and if it is possible to modify it without breaking the plugin since the auto-generated ID (color.scheme.Nord) is really ugly and should be com.arcticicestudio.nord.jetbrains to match package domain model.

Are there any instructions on how to compile from source? Unfortunately, there is no section in the README.

No there aren't.

Just download the source and extract it anywhere in your file system.

Install JetBrains IntelliJ 2019.1+ and create a new project

Select IntelliJ Platform Plugin as the project type and hit Next.

Fill the project info as shown below (the name should be nord-jetbrains and the location should be where you extracted the project) and click Finish:

You will be prompted to overwrite the nord-jetbrains.iml file, click Yes (the file is the default module file for a Jetbrains Plugin anyways):

Click on Build > Build Project:

A new out folder will be created:

Now click on Build > Prepare All Plugin Modules For Deployment:

Ensure the nord-jetbrains module is selected and click Next:

A new file nord-jetbrains.jarshould be created.

Copy the nord-jetbrains.jar file to ~/.PhpStorm2019.1/config/plugins folder:

Restart PhpStorm and enjoy!

Big thanks to you!! Btw what icon theme are you using? (Sorry for OT, but it looks really awesome) :)

I'm using Ubuntu with Arc-Dark theme and Paper iconset.

@axelitus Thanks for the detailed guide 👍 , I've planned to add one to the README but postponed it until all docs and assets are moved over to the website. There are some references and descriptions in #43 including links to official guides from JetBrains that I've used to transform the theme into a plugin.

I found that guide and it served me as a basis, but I still struggled to know what I was doing (or should be doing) because I had never used IntelliJ, nor build a Jetbrain Plugin. So I wanted to give a step-by-step for newcomers like me.
I think (but I have not tested, nor am I sure) the same could be done as in previous versions that pack certain files directly into a jar (as a jar is basically a zip, it could be as easy as to zip the needed files in the needed structure and rename the file with .jar extension). Don't know if the build process does something different though, so maybe even IntelliJ is not needed.

For all of you who don't want to follow the IntelliJ path I've created a bash script that packages the plugin: https://gist.github.com/axelitus/15186e4da4a39cced9d59dc885964db8
Just download it to the nord-jetbrains source code folder, give it execute permissions and run:
./build.sh

It requires either the jar command (you need to install the JDK for this) or the zip command.
Tested in Ubuntu 18.10 but it should work across many distros and versions that support bash.

@arcticicestudio Previously there was a build.sh command, why has it been removed?
Was it because it did not make it through the theme->plugin conversion? Or was it something else?

The build script was removed because it is not necessary anymore and won't include auto-generated metadata that'll be added to the JAR file. There are also some checks that run when IntelliJ packages the plugin files like a correct Plugin XML ID and plugin icons.
Users shouldn't really care about how to build the plugin since it can be easily installed with all of JetBrain's IDEs using the official plugin repository that is available from within the application itself. This allows to install Nord with one mouse click and also updates the plugin automatically when new updates are available.
Anyway, I'll add the guide to the Nord website if users want to play around with the plugin or modify it.

Also the latest version 0.5.0 has been deployed to the plugin repository and will be available when the plugin passes the upload checks.
Please note that it is required to uninstall and install the plugin again if you're using a version of the theme less or equal to 0.4.0 since the Plugin XML ID was changed to match the naming scheme.
Please see the release announcement on Twitter and additional info tweet for some more details.

Agreed, the manual installation was just because the repository version wasn't updated. Once its published this shouldn't be needed.

I am still being offered 0.4.0 in the marketplace, is it normal for it to take this long to process?

Are you on the latest version? (2019.X+ is needed).
I'm on PhpStorm 2019.1 and have no problems at all, it is already on the Marketplace:

@mattfletcher Please note that it is required to uninstall and install the plugin again if you're using a version of the theme less or equal to 0.4.0 since the Plugin XML ID was changed to match the naming scheme.
Please see the release announcement on Twitter and additional info tweet for some more details.

@axelitus As of Nord Docs [version 0.12.0] the docs and assets of Nord JetBrains have been migrated. There's also a development guide now for users who like to customize the plugin or build it from source.


Methods to get a system temp directory, create temp file, create temp folder

I suggest that we create the following methods:
static class Temporary
{
  public static AbsolutePath SystemTempDirectory();
  public static AbsolutePath CreateTempFile();
  public static AbsolutePath CreateTempFolder();
}

This resolves several problems of the existing Path class in the BCL:

in Path, it's too easy to mix GetTempFileName() and GetTempPath(), and these have very different semantics;
there's no standard function to create a temp folder;
well, obviously, the standard function doesn't operate on TruePath types.

Hi
I would like to work on this issue. Could you please assign it to me?

It is not possible to assign an issue on GitHub to anyone else other than the project owner, so for now I believe it's fine if you just leave a comment that you are working on it. No need to reassign.


use scientific notation for many zeros

https://github.com/raedahgroup/dcrios/blob/master/Decred Wallet/DcrlibwalletTypes/WalletAccount.swift
Instead of 100000000 ,  1e8 can be used which is less prone to unnoticed typos.

no longer relevant


[Feature request] Attacks based on pod disruption budget

Proposal
Ability to define a kill mode or kill value that is based on the pod disruption budget for that deployment.
The idea behind this is that if you define in a PDB that it's ok to have x% of max unavailability, then it should stand to reason that it's also safe for kube to kill a number of pods based on this percentage.
Example:
kill-mode: pdb-based
kill-value: equals

or
kill-mode: pdb-based
kill-value: +25%

I'm not sure how best to deal with scenarios where this kill mode is set but there is no PDB. I guess it could either do nothing, or use some default value. At this point I just wanted to gauge interest in this new feature. I may be able to contribute part of the code for this.

I think this makes a lot of sense. I'd like to see a new kill mode (PDB) that just kills as many pods as the PDB allows. For eg., if PDB is set at 50%, it should kill 50% of the pods.
I initially considered having kube-monkey randomly kill pods up to the PDB, but the problem with that is it will be quite rare that the number of pods killed exactly equals your PDB, which should be the point of this kill-mode. i.e., this kill-mode should validate that your PDB is correctly set.


add RocksDB options --rocksdb.allow-fallocate and `--rocksdb.limit-…

…open-files-at-startup`

http://jenkins01.arangodb.biz:8080/view/PR/job/arangodb-matrix-pr/3580/

Adding that I have confirmed the --rocksdb.allow-fallocate works as expected on xfs and ext4 with kernel 3.10.0-957.el7.x86_64.  File is large while running, but resizes small on arangod termination.

Update, ran same tests with kernel 3.10.0-123.el7.x86_64.  No change.  Both xfs and ext4 show big files which clean up on program exit.  But there is no massive build up of 71M files with either kernel, only the current recovery log file.  I did NOT run with 3.10 LVM partitions.  Maybe that is a factor.  But stopping now until someone has a new test idea. @jsteemann & @neunhoef    so LGTM from me.


Add more tests

Sorry, I deleted the windows workflow because KtAnnotated.annotationEntries() always returns an empty list in Windows. We can replace \r\n to \n manually in tests if the currents OS is Windows or we can test it later (we should find a way how we can to set the compiler). What do you think? I prefer the second option now.
This PR contains only tests for objects

Did we have problems with \n in Windows?

Yes, it is a problem in Windows. We should find a way how we can set up the kotlin compiler. Now it works incorrectly with annotations in Windows

I still don't understand. Do you think that compiler works incorrectly because of line breaks? Are there any other problems with them?

The compiler expected \n, but for Windows it is not true. It gets \r\n. The default settings of compiler considered only UNIX new line symbols. To change it we should find a way to set it, but I am not sure that we should do it in this PR, because we can do it later

Thanks you, I totally agree.


feat: add package 2FA requirements CLI command

Adds the missing CLI command reference for changing a package's 2FA requirements.
References

There appears to be other issues with this section but those shouldn't block this additional content from being added.


Replace go get with go install

go get is no longer recommended for installing binaries in Go 1.17+ and should be replaced with go install.

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.


Dark Messiah Crashes with White Screen and Sound

The game only displays a white screen, though the Ubisoft intro music can be heard. I tested this with ProtonGE 9-16. Below is the log:
steam-14939492239598944256.log
My specs:
Operating System: Nobara Linux 40
KDE Plasma Version: 6.2.0
KDE Frameworks Version: 6.7.0
Qt Version: 6.7.2
Kernel Version: 6.11.3-200.fsync.fc40.x86_64 (64-bit)
Graphics Platform: Wayland
Processors: 12 × AMD Ryzen 5 5600G with Radeon Graphics
Memory: 23,4 GiB of RAM
Graphics Processor: AMD Radeon RX 6600
Manufacturer: Micro-Star International Co., Ltd.
Product Name: MS-7C51
System Version: 1.0

Kernel         : 6.12.1-arch1-1
CPU            : AMD Ryzen 7 7840U w/ Radeon 780M Graphics
GPU            : AMD Radeon 780M (RADV GFX1103_R1)
Mesa           : 24.3.0
RAM            : 27 GB
Proton Version : experimental-9.0-20241121b
Games launches fine for me


Couchbase - Not currently mapped to N1QL's key join error

Description
Creating a flexible visualisation card eventually returns an error.
Reproduction guide
mount couchbase -> setup variable card: name: state - type: Text - Default Value: CO
troubleshoot card -> query card:
SELECT count(*) as ct, city, gender FROM `/test-mount/patients` WHERE state = :state GROUP BY city, gender ORDER BY ct DESC LIMIT 30

barchart card: category: city - Sum: ct -> ERROR
Results
Failed to plan query.: unimplemented EquiJoin: Not currently mapped to N1QL's key join

Currently the CB connector supports the subset of SQL² that's mappable to N1QL's key join.
Related issues: https://github.com/quasar-analytics/quasar/issues/1587, https://github.com/quasar-analytics/quasar/issues/2128, https://github.com/quasar-analytics/quasar/issues/2117

@drostron cool thanks, I assume linked issues will need completion before this is fix?

@Cmdv Not necessarily. To add a little more clarity, hitting that error means the query is resulting in QScript that contains a join. For that to work #1587 would need to be addressed. The alternative would be to address whatever is leading to the join.

Yeah, I don’t think there should be a join in this query (although I could be wrong).

I.e. – there’s likely a bug in QScript or earlier.

The join in the qscript is coming from the count(*). Even the query select count(*) as cnt, state from zips currently has a join in the qscript. The LogicalPlan for this simpler example looks like this:
Let('__tmp0)
├─ Let('__tmp1)
│  ├─ Read(/spark/zips)
│  ╰─ Typecheck(Obj(Map[], Some(Top)))
│     ├─ Free('__tmp1)
│     ├─ Free('__tmp1)
│     ╰─ Constant(NA)
╰─ Invoke(Take)
   ├─ Invoke(Squash)
   │  ╰─ Invoke(ObjectConcat)
   │     ├─ Invoke(MakeObject)
   │     │  ├─ Str("cnt")
   │     │  ╰─ Invoke(Count)
   │     │     ╰─ Free('__tmp0)
   │     ╰─ Invoke(MakeObject)
   │        ├─ Str("state")
   │        ╰─ ObjectProject(Free('__tmp0){"state"})
   ╰─ Constant(Int(11))

where the problem in qscript is that in order for there not to be a join, we'd need to cleanly merge the Count and the ObjectProject of "state". @sellout I'm not sure if/how we can do this since the reduction is affecting the provenance.

@alissapajer Your simpler case should have a join. To get something that isn’t semantically different from the original query, you need to do
select count(*) as cnt, state from zips group by state

The important bit is that all the projections are either reduced or part of the group key.

On the simpler query: If QScript supported multi-staged evaluation, the COUNT(*) could be done first, and then because it's known it's a single value, it could be inlined in the subsequent query, removing the need for a trivial join with a single constant value. Maybe there are other ways to get that.

@jdegoes Yeah, and old Mongo also avoids a join in that case by doing a $group with $count($$ROOT) and $push($state), then $unwinding state. Definitely there are different approaches, and I think they could be QScript transformations to achieve those from a particular join pattern.

@sellout ah yeah, so for your example
select count(*) as cnt, state from zips group by state

we actually do not have a join in the qscript! And actually, at least on my current wip branch, I don't see a join in the original example qscript that @Cmdv provided either. And the result in the REPL against spark actually looks correct! Let me spin up the REPL on master to see if this fix is local to my branch or published yet :)
@Cmdv what quasar version are you running?

@Cmdv I just tested your example query against latest quasar and there is no join in the qscript. Can you update your quasar to the latest version and try this again? I'm not sure if the query will work against Couchbase, but if it doesn't you should get a different error.

@Cmdv ok I just confirmed that this query should be returning correct results against Couchbase.

@Cmdv -> can this be closed?

@zeeiyerWork will test out tomorrow morning, I pretty sure I did and the tests still failed but will double check 😄

unfortunately just ran the above tests against quasar v20.13.7 and I still get the same error. Maybe someone would like to pair to try trouble shout what is happening? 😄


Fix handling spaces in the sysroot path

Fixes https://github.com/japaric/xargo/issues/206

bors r+


dotnet HTTP API client

Hi mihay, You've committed only the code of the generated client itself, but we also need all the source templates from the OpenApi which have been used to generate it. Can you please provide them too?

Hey, I've run the container version:
docker run --rm -v <local_folder>:/local openapitools/openapi-generator-cli generate -i /local/manticore.yml -g csharp-netcore --library httpclient --additional-properties=targetFramework=netstandard2.1 --additional-properties=packageName=ManticoreSearch -o /local/out/csharp

Can you point me in the right direction, on how I can generate this config file?

Hi ,
If you didn't add any changes to the default openapi-generator templates you can just take them from here, replace the necessary ones with their corresponding versions from here (as you used this library), and, finally, create templates/net folder and place them into it.
Another thing that should be dealt with is testing. Auto tests generated by the Openapi don't cover the functionality of clients so it's necessary to add most important tests (covering the indexApi and searchApi usage) manually before we can add a client to the project. See, for example, how it's done for the Python client. It would be great if you reproduce the api tests from there for the .net client.
Also, take note that we run all the client tests via CI/CD in a prepared environment but you'll need to create necessary indexes by hand to check your tests. For this, use the following sql requests:
CREATE TABLE test(content text, name text attribute, cat integer);
CREATE TABLE test_pq(content text, name text attribute, cat integer) type='pq';

Then you can run your tests safely. After the tests are ready and checked, just create test/net folder and place them into it.

@mihaj any news on this?

@Nick-S-2018 I've created the templates/net folder, can you give me the CLI command to generate the HTTP client from the templates above?

Hi,
I'm sorry for being late with the response.
Just add the template folder path to the command you've previously used:
docker run --rm -v <local_folder>:/local openapitools/openapi-generator-cli generate -t /local/templates/net -i /local/manticore.yml -g csharp-netcore --library httpclient --additional-properties=targetFramework=netstandard2.1 --additional-properties=packageName=ManticoreSearch -o /local/out/csharp

We've finally generated the .Net client version with the OpenAPI Generator and published it here


Other characters support

Asian charsets may not be full supported. Problems have been spotted in Japanese and Russian languages where characters may fail to properly display.
Emoji support may be interesting too
Missing charsets:

[ ] Emoji
[ ] Japanese Kanji (Hiragana and Katakana are already supported)
[ ] Cyrilic
[ ] Arabic
[ ] Persian

This fix will probably come from expanding the current igiari font

Emojis may be removed all together as seen in https://github.com/LuisMayo/ace-attorney-discord-bot/pull/11

There is a problem with a letter in Cyrillic used in Ukrainian:
https://twitter.com/Fleischers/status/1384204777341427713?s=19

Closed in favor of #37


[docs] Adds an introduction for the gtk4 crate

Based on gtk-rs/gtk-rs#431
Closes #255

Otherwise looks good to me, thanks a lot!

Doctests will pass after #289 is merged

I will go ahead and merge it, improvements can be done in separate PR if someone has any. Thanks!


Wrongful Matching Requests

Description of the bug
If I use regex in the request matcher, Hoverfly gives the first match request from the bottom. Even though the requests are different.
Eg:
Context information (for bug reports)
Had two requests, differing slightly. Hoverfly responds with the same response.
Steps to reproduce the issue

hoverctl start webserver
hoverctl mode simulate
hoverctl import dummy_stub.json (as shown below)
Hit any request, you will get response of request 2.

{
    "data": {
        "pairs": [
            {
                "request": {
                    "path": [
                        {
                            "matcher": "regex",
                            "value": "/super/api/member/v1/plans/C[DQ]/members/([0-9]+)/accountBalances/current"
                        }
                    ],
                    "method": [
                        {
                            "matcher": "exact",
                            "value": "GET"
                        }
                    ],
                    "destination": [
                        {
                            "matcher": "exact",
                            "value": "dummy"
                        }
                    ],
                    "scheme": [
                        {
                            "matcher": "exact",
                            "value": "https"
                        }
                    ]
                },
                "response": {
                    "status": 200,
                    "body": "{\"message_1\":\"Ok\"}",
                    "encodedBody": false,
                    "headers": {
                        "Cache-Control": [
                            "private"
                        ],
                        "Connection": [
                            "close"
                        ],
                        "Content-Type": [
                            "application/json; charset=utf-8"
                        ],
                        "Date": [
                            "Fri, 15 Mar 2019 04:06:14 GMT"
                        ],
                        "Hoverfly": [
                            "Was-Here"
                        ],
                        "Transfer-Encoding": [
                            "chunked"
                        ],
                        "X-Aspnet-Version": [
                            "4.0.30319"
                        ],
                        "X-Correlation-Id": [
                            "b0bb7920-46d7-11e9-aaf7-005056a21885"
                        ],
                        "X-Powered-By": [
                            "ASP.NET"
                        ]
                    },
                    "templated": false
                }
            },
            {
                "request": {
                    "path": [
                        {
                            "matcher": "regex",
                            "value": "/super/api/member/v1/plans/CD/members/[0-9]+/accountBalances"
                        }
                    ],
                    "method": [
                        {
                            "matcher": "exact",
                            "value": "GET"
                        }
                    ],
                    "destination": [
                        {
                            "matcher": "exact",
                            "value": "dummy"
                        }
                    ],
                    "scheme": [
                        {
                            "matcher": "exact",
                            "value": "https"
                        }
                    ]
                },
                "response": {
                    "status": 200,
                    "body": "{\"message_2\":\"Ok\"}",
                    "encodedBody": false,
                    "headers": {
                        "Cache-Control": [
                            "private"
                        ],
                        "Connection": [
                            "close"
                        ],
                        "Content-Type": [
                            "application/json; charset=utf-8"
                        ],
                        "Date": [
                            "Fri, 15 Mar 2019 04:06:14 GMT"
                        ],
                        "Hoverfly": [
                            "Was-Here"
                        ],
                        "Transfer-Encoding": [
                            "chunked"
                        ],
                        "X-Aspnet-Version": [
                            "4.0.30319"
                        ],
                        "X-Correlation-Id": [
                            "b144cd60-46d7-11e9-aaf7-005056a21885"
                        ],
                        "X-Powered-By": [
                            "ASP.NET"
                        ]
                    },
                    "templated": false
                }
            }
        ],
        "globalActions": {
            "delays": [],
            "delaysLogNormal": []
        }
    },
    "meta": {
        "schemaVersion": "v5",
        "hoverflyVersion": "v1.0.0-rc.2",
        "timeExported": "2019-03-15T15:07:12+11:00"
    }
}

Observed result
Hoverfly error messages seen (If none, say none)
None

If possible, add screenshots to help explain your problem
$ curl http://localhost:8500//super/api/member/v1/plans/CD/members/3199123/accountBalances
{"message_2":"Ok"}
$ curl http://localhost:8500//super/api/member/v1/plans/CD/members/123456/accountBalances/current
{"message_2":"Ok"}

Expected result
Should respond with different results for different requests.
Additional relevant information
If not indicated above:

OS and version: e.g. macOS Mojave, Windows 10, Red Hat Linux, ...
Hoverfly version: e.g.0.17.7
Tools/Browser you were using
Anything that might help us to diagnose the problem

Really appreciate the details you have provided.
When you made your request to http://localhost:8500//super/api/member/v1/plans/CD/members/123456/accountBalances/current
The path was matched by both of your regex in Go. So Hoverfly will just pick one of the response and return it.
If you want Hoverfly to match a path without any more path fragments, you should add an end of line symbol like this to make your regex less ambiguous:
/super/api/member/v1/plans/CD/members/123456/accountBalances$

Hey @tommysitu
Thanks a lot for your prompt reply and help.

Replying in so late.

To be honest, I figured it on the day itself but forgot to comment and close the issue here. My bad.
But, I have something to offer. For one of my projects, I had been building a framework sort of thing around hoverfly. The project repo can be found here - https://github.com/Navdit/hoverfly_stub_framework/blob/master/README.md
Please feel free to check out and share your opinion.

@Navdit Thank you for closing this issue. The project looks interesting. I will try it out and give you feedback as soon as I could.

Thanks, @tommysitu for indulging me.
I am quite a noob when it comes to coding so please bear with my coding skills.
The objective was to provide an out of the box solution, where I could:

Run scripts and install hoverfly in Cloud or Linux Based Machines.
Restart/Stop Hoverfly stub server using jenkins - so that anybody can use it.
Directly convert your postman collection to Hoverfly Stub Config (simulation.json) just by a script.

This framework is good in CI/CD scenarios, where my API collection is changing (maybe params, endpoints, etc)

Hi @Navdit I've looked at the framework you built. Here's my thought on the Pros and Cons:
Pros:

Making hoverfly available to the team using Jenkins pipeline
Good for managing Hoverfly lifecycle and configurations (simulation and middleware)
Support Postman to Hoverfly conversion
Customize python functions to pre-processing the simulation file. Hoverfly-Java has a similar feature, but it's for the JUnit tests.

Cons:

Missing a summary of the features in README, it's not easy to understand what it does at a glance.
There are quite a few steps to set it up, so having a concrete example would be nice.

Suggestions:

I wonder if you can automate Step 6, so that main.py can pick up any stub helper functions that are added to a file or folder
Can Step 7 and 9 be part of the /start_stub_server.sh? So basically if you have new configurations, you just need to put them in a folder, and the script takes care of it.


[Docs] image-text retrieval

📚 The doc issue
I'm confused about the internvl_c_retrieval and internvl_g_retrieval ,what's the different? and the video_retrieval can an example replace it?
Suggest a potential alternative/fix
could you show me some  image-text retrieval examples code

Hi, see here to use the retrieval model:
https://huggingface.co/OpenGVLab/InternVL-14B-224px#model-usage


The things you write in html comments in html templates can be detected and cause errors.

When you render html templates with 'render_template', flask/jinja detect the things you write as comments. For example, the {%~%} and {{ ~ }} formats can be detected even if they are inside the html comments, and they can cause errors.

An Example<EMAIL_ADDRESS>

This happend to me when I used it in Repl.it. Not so sure the same thing happens in all other environments.

That's correct, HTML comments are not Jinja comments. Jinja is only concerned with interpretting Jinja syntax, what it's rendering has no meaning to it (it can render any text, not just HTML). Use {# #} for comments in Jinja.

That's correct, HTML comments are not Jinja comments. Jinja is only concerned with interpretting Jinja syntax, what it's rendering has no meaning to it (it can render any text, not just HTML). Use {# #} for comments in Jinja.

OK, I guess I should stop trusting 'ctrl + /' too much. Thank you for the explanation. :)

OK, I guess I should stop trusting 'ctrl + /' too much. Thank you for the explanation. :)


CSS

Text box at the top is way out of page.

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

ID: 2081b80b-2200-ea1a-2131-65602af2ae55
Version Independent ID: 90a394bc-0235-b9af-fa5d-4d7e235f50df
Content: az vm unmanaged-disk
Content Source: src/azure-cli/azure/cli/command_modules/vm/_help.py
Service: virtual-machines
GitHub Login: @rloutlaw
Microsoft Alias: routlaw

Thank you for your feedback. We will try to fix it.

@daxianji007 Please help deal with malformed docs. Thanks.

@asoccer After our investigation, this is a bug for docs team. I open a similar issue for docs team https://github.com/MicrosoftDocs/azure-docs-cli/issues/1569. @daxianji007 will follow up it and let's waiting for his update.

@asoccer It is already fixed. Thanks for you feedback!


feat(connector-ebsi): add European Blockchain Services Infrastructure

We may add support for European Blockchain Services Infrastructure (EBSI) on SATP. Adding SATP support for EBSI chains and applications requires some steps.
Blockchain part:

Create an EBSI Connector
Implement support for that connector within SATP
Create SATP adapter to interact with EBSI client-facing APIs
Extend BUNGEE to create views over EBSI
Create a SATP burn-mint EBSI contract
Create an EBSI test ledger (helper + docker) to test the functionality (if applicable)

@RafaelAPB FYI: I slightly refactored the title that dubs also as a valid commit message for the eventual implementation of this!


Bot didn't join the conversation/room

Hello,
I installed the bot without docker (tried also with docker). When I invite the bot to a room/conversation the bot didn't join. Status keeps invitation pending. I didn't found any errors in the homeserver.log.
Thanks in advance.

Can you show the logs generated by the bot on startup? It would also be helpful if you could raise the log verbosity first. You can do this by starting the application like so: npm run start -- -vv

installed the webhook from scratch via

git clone
sudo npm ci
sudo npm run start

debug log...
2020-11-28 13:51:06.778.000      DEBUG  [webhook-srv]           Loading configuration file: './gateway-config.yaml'
2020-11-28 13:51:06.817.000      DEBUG  [webhook-srv]           Generating appservice.yaml
2020-11-28 13:51:06.821.000      DEBUG  [webhook-srv]           Creating DB connection with sqlite3
2020-11-28 13:51:06.891.000      SILLY  [webhook-srv]           Retrieving migration status
2020-11-28 13:51:06.929.000      DEBUG  [webhook-srv]           There are no pending migrations
2020-11-28 13:51:06.934.000      SILLY  [webhook-srv]           Bridge configuration
AppServiceRegistration {
  url: 'http://<IP_ADDRESS>:8023',
  id: 'webhook-gateway',
  hsToken: 'hasc3somemore',
  asToken: 'nks4jcsomemore',
  senderLocalpart: 'testwebhook',
  rateLimited: true,
  namespaces: {
    users: [
      {
        exclusive: true,
        regex: 'testwebhook'
      }
    ],
    aliases: [],
    rooms: []
  },
  protocols: null,
  cachedRegex: {}
}
2020-11-28 13:51:06.939.000      SILLY  [webhook-srv]           Starting Matrix bridge
2020-11-28 13:51:06.950.000      INFO   [webhook-srv]           Matrix bridge running on <IP_ADDRESS>:8023
2020-11-28 13:51:06.967.000      SILLY  [bridge]                [-] POST http://<IP_ADDRESS>:8008/_matrix/client/r0/register (AS) Body: "{\"username\":\"testwebhook\"}"
2020-11-28 13:51:07.41.000       SILLY  [bridge]                [-] POST http://<IP_ADDRESS>:8008/_matrix/client/r0/register (AS) HTTP 200 "{\"user_id\":\"@testwebhook:mydomain.tld\",\"home_server\":\"mydomain.tld\",\"access_token\
2020-11-28 13:51:07.43.000       SILLY  [bridge]                [-] PUT http://<IP_ADDRESS>:8008/_matrix/client/r0/profile/%40testwebhook%3Amydomain.tld/displayname (AS) Body: "{\"displayname\":\"Webhook\"}"
2020-11-28 13:51:07.69.000       SILLY  [bridge]                [-] PUT http://<IP_ADDRESS>:8008/_matrix/client/r0/profile/%40testwebhook%3Amydomain.tld/displayname (AS) HTTP 200 "{}"
2020-11-28 13:51:07.71.000       SILLY  [webhook-srv]           Starting webhook listener
2020-11-28 13:51:07.78.000       DEBUG  [webhook-srv]           Loading plugin from /opt/matrix-webhook-gateway/plugins/__cache/fb4bb74a5bec22dfe1beab71e0e85c195ca111ad432e85b15f0b129393d16eab.js
2020-11-28 13:51:07.83.000       DEBUG  [webhook-srv]           Loading plugin from /opt/matrix-webhook-gateway/plugins/__cache/33f495809f8236b21237c7e3556aba0851f07b9ac517b80ec57d98eab31f36a6.js
2020-11-28 13:51:07.86.000       INFO   [webhook-srv]           Loaded plugins: prometheus, sample
2020-11-28 13:51:07.89.000       INFO   [webhook-srv]           Web server running on <IP_ADDRESS>:8020

It looks like you named the bot user @testwebhook:mydomain.tld, is that right? The part before the colon can be anything you like, but the part after it should be your homeserver name, which in most cases will match the homeserver part of your own Matrix user ID (so if you're @someone:myhomeserver.com, the bot should be @testwebhook:myhomeserver.com.

yes that is right I changed it to not write my domain here in public
mydomain.tld stands for the domain configured in the homeserver.yaml.

Okay, understood. Looking through the logs a bit more closely it actually looks like the user namespace regexes do not match up between your appservice registration (appservice.yaml) and your appservice configuration (gateway-config.yaml). If you update any of the settings under app_service: in gateway-config.yaml, a new appservice.yaml will be generated, and you should copy this to your homeserver's appservice configuration again, overwriting the old one.
Something else that's probably causing issues here is that you have user_pattern and sender_localpart set to the same value.
To clarify, in your gateway-config.yaml, the user_pattern key governs what the user ID of a webhook user will look like, while the sender_localpart determines the user ID of the management bot (the one you're trying to invite).
In your case it looks like you have user_pattern and sender_localpart set to the same value. That probably won't work. As far as I know, the management user of an application service must always be separate from the users it tries to invite.
Try setting user_pattern to something different. The default value, user_pattern: '@_hook_{name}_{room}' should work. And of course, copy your appservice.yaml to your Matrix server afterwards.

Okay, understood. Looking through the logs a bit more closely it actually looks like the user namespace regexes do not match up between your appservice registration (appservice.yaml) and your appservice configuration (gateway-config.yaml). If you update any of the settings under app_service: in gateway-config.yaml, a new appservice.yaml will be generated, and you should copy this to your homeserver's appservice configuration again, overwriting the old one.

I've linked the app_service: direct the file:
app_service_config_files:
  - "/opt/matrix-webhook-gateway/appservice.yaml"

Try setting user_pattern to something different. The default value, user_pattern: '@hook{name}_{room}' should work. And of course, copy your appservice.yaml to your Matrix server afterwards.

I think I have already done it.
here is my /opt/matrix-webhook-gateway/gateway-config.yaml:
app_service:
  # The ID of this application service. Must be unique on your homeserver.
  id: webhook-gateway
  # Tokens used to facilitate communication between the appservice and the
  # homeserver. Keep these secret! Randomly generated on first startup.
  hs_token: hasc3somemore
  as_token: nks4jcsomemore
  # All webhook user IDs will be generated from this pattern.
  user_pattern: '@_hook_{name}_{room}'
  # The user ID of the webhook configuration bot.
  sender_localpart: testwebhook
  # Should server rate limits be enforced on the application service?
  rate_limited: true
  # The name of your homeserver. This should match the value of the server_name
  # configuration key in Synapse's homeserver.yaml file.
  homeserver_name: mydomain.tld
  # URL used by the homeserver to communicate with the application service.
  app_service_url: http://<IP_ADDRESS>:8023
  # URL used by the application service to communicate with the homeserver.
  homeserver_url: http://<IP_ADDRESS>:8008
  # Address and port used to listen for incoming events from the homeserver.
  listen_host: '<IP_ADDRESS>'
  listen_port: 8023
  # Display name of the bot user.
  bot_user_name: 'Webhook'
  ...

I'm not sure what's wrong in that case. I have the impression that, for whatever reason, Synapse never attempts to send the invitation event to the appservice, but I have no idea why. It could be that there's something misconfigured in appservice.yaml, but I have no idea what that could be.
I'll post my own configuration below, which I know to be working. Perhaps it will be of use to you in spotting a difference that we've overlooked so far.
gateway-config.yaml
app_service:
  id: webhook-gateway
  hs_token: k5x#MASKED#
  as_token: hmh#MASKED#
  user_pattern: '@_hook_{name}'
  sender_localpart: webhook
  rate_limited: true
  homeserver_name: mydomain.tld
  # Both URLs are reverse-proxied, so the ports are missing here
  app_service_url: https://gateway.mydomain.tld
  homeserver_url: https://matrix.mydomain.tld
  listen_host: '<IP_ADDRESS>'
  listen_port: 8023

This generates the following appservice.yaml
id: 'webhook-gateway'
hs_token: 'k5x#MASKED#'
as_token: 'hmh#MASKED#'
namespaces:
  users:
    - exclusive: true
      regex<EMAIL_ADDRESS>    - exclusive: true
      regex: '@webhook:geluk.io'
  aliases: []
  rooms: []
url: 'https://gateway.mydomain.tld'
sender_localpart: 'webhook'
rate_limited: true
protocols: null

After you send an invitation, you should see the following lines in your homeserver log:
# Your Matrix client sends the invite
"POST /_matrix/client/r0/rooms/!ROOM_ID:mydomain.tld/invite HTTP/1.0"
# Matrix sending the event to the appservice (seems like this never ends up happening?)
Received response to PUT https://gateway.mydomain.tld/transactions/397?access_token=<redacted>: 200
# The gateway bot joins the room
"POST /_matrix/client/r0/join/!ROOM_ID:mydomain.tld?access_token=<redacted> HTTP/1.0"
# Matrix sends the join event to the gateway
Received response to PUT https://gateway.mydomain.tld/transactions/398?access_token=<redacted>: 200

I just remembered something else, do you by any chance have registration disabled? If so, you should disable it temporarily since the bot user (unlike the webhook users it creates) needs to actually be registered on the server, so you should temporarily enable registration when the appservice first starts. After that, you can disable it again.

Both URLs are reverse-proxied, so the ports are missing here
app_service_url: https://gateway.mydomain.tld
homeserver_url: https://matrix.mydomain.tld

This is crazy, your comment does the trick. My Matrix instance is reverse proxied too but I haven't a "subdomain" for the appservice gateway. So I was starting to search through my homeserver.yaml... bingo! There was no appservice port configured by default. The documentation  never mentioned that you have to configure the port before you can use appservices. It would be great to have a how-to for that.

The bot user (unlike the webhook users it creates) needs to actually be registered on the server, so you should temporarily enable registration when the appservice first starts. After that, you can disable it again.

The webhook user  (in my case "testwebhook") was created with enable_registration: False. I checked this in my postgreSQL DB.

So I find out the matrix-webhook-gateway start this Port 8023. (searched via netstat -tulpen | grep 8023). Is this right? Can I check if the appservice is startet right in matrix?

Yes, that is correct, however, you don't need to configure anything in your homeserver.yaml. To clarify how this works: Since both Synapse and the webhook gateway need to send events to each other at arbitrary intervals, both the gateway and Synapse need to be able to reach each other. So Synapse listens on port 8008 (the client-server API, which is used by Matrix clients, and is also used by the gateway when it needs to send events to Synapse), and the gateway listens on port 8023, so when Matrix needs to send an event to the gateway, it will communicate with the gateway on port 8023 (It connects to the host and port specified in the url key in appservice.yaml)
In addition to this, the gateway also listens for incoming webhooks on another port, 8020. This isn't relevant to us right now, but for the sake of completeness I'll mention this as well.
So, in my case, I have Matrix running on its own server, listening on port 8008, with a reverse proxy pointing https://matrix.mydomain.tld to http://<IP_ADDRESS>:8008.
On another server, I am hosting the gateway, with a reverse proxy pointing https://gateway.mydomain.tld to http://<IP_ADDRESS>:8023.
Your logs show that Synapse is configured to connect to the gateway on http://<IP_ADDRESS>:8023, so provided Synapse is able to reach the gateway at that URL, it should work. You can test this manually to confirm if that is indeed the case. With the webhook gateway started at the highest verbosity level (-vvv), all requests to the gateway will be logged, so you can try making a request to check if the gateway can be reached. In your case that would be:
curl -v http://<IP_ADDRESS>:8023

If the gateway is reachable, it will return a 404 (since it only allows submission of Matrix events on this endpoint), which should look like this:
<!DOCTYPE html>

<meta charset="utf-8">
<title>Error</title>

Cannot GET /

It should also generate the following message in the gateway log:
SILLY [bridge] <IP_ADDRESS> - - [04/Dec/2020:00:40:59 +0000] "GET / HTTP/1.0" 404 139 "-" "curl/7.64.0"

I hope this clarifies it a bit!

The webhook user (in my case "testwebhook") was created with enable_registration: False. I checked this in my postgreSQL DB.

That is good to know, thanks! I remember this being a problem on earlier releases, seems like it has been fixed since then.

I started testing this morning:
root@COM:/opt/matrix-webhook-gateway# sudo npm run start

><EMAIL_ADDRESS>start /opt/matrix-webhook-gateway
> ts-node --compiler ttypescript entry.ts -v

2020-12-05 10:55:24.688.000      DEBUG  [webhook-srv]           Loading configuration file: './gateway-config.yaml'
2020-12-05 10:55:24.722.000      DEBUG  [webhook-srv]           Generating appservice.yaml
2020-12-05 10:55:24.726.000      DEBUG  [webhook-srv]           Creating DB connection with sqlite3
2020-12-05 10:55:24.846.000      DEBUG  [webhook-srv]           There are no pending migrations
2020-12-05 10:55:24.865.000      INFO   [webhook-srv]           Matrix bridge running on <IP_ADDRESS>:8023
2020-12-05 10:55:24.911.000      WARN   [bridge]                [-] POST http://<IP_ADDRESS>:8008/_matrix/client/r0/register (AS) HTTP 400 Error: "{\"errcode\":\"M_USER_IN_USE\",\"error\":\"User ID already taken.\"}"
2020-12-05 10:55:24.949.000      DEBUG  [webhook-srv]           Loading plugin from /opt/matrix-webhook-gateway/plugins/__cache/fb4bb74a5bec22dfe1beab71e0e85c195ca111ad432e85b15f0b129393d16eab.js
2020-12-05 10:55:24.955.000      DEBUG  [webhook-srv]           Loading plugin from /opt/matrix-webhook-gateway/plugins/__cache/33f495809f8236b21237c7e3556aba0851f07b9ac517b80ec57d98eab31f36a6.js
2020-12-05 10:55:24.959.000      INFO   [webhook-srv]           Loaded plugins: prometheus, sample
2020-12-05 10:55:24.962.000      INFO   [webhook-srv]           Web server running on <IP_ADDRESS>:8020

Looks like the users is creating again... I don't no if this is okay.
root@COM:~# curl -v http://<IP_ADDRESS>:8023
*   Trying <IP_ADDRESS>:8023...
* TCP_NODELAY set
* Connected to <IP_ADDRESS> (<IP_ADDRESS>) port 8023 (#0)
> GET / HTTP/1.1
> Host: <IP_ADDRESS>:8023
> User-Agent: curl/7.68.0
> Accept: */*
>
* Mark bundle as not supporting multiuse
< HTTP/1.1 404 Not Found
< X-Powered-By: Express
< Content-Security-Policy: default-src 'none'
< X-Content-Type-Options: nosniff
< Content-Type: text/html; charset=utf-8
< Content-Length: 139
< Date: Sat, 05 Dec 2020 10:59:27 GMT
< Connection: keep-alive
< Keep-Alive: timeout=5
<
<!DOCTYPE html>

<meta charset="utf-8">
<title>Error</title>

Cannot GET /

* Connection #0 to host <IP_ADDRESS> left intact

I think the curl worked.

Looks like the users is creating again... I don't no if its right:
"User ID already taken."

That's correct. It's a bit of a quirk in the appservice library, which will always try to register the appservice user even if it already exists, so you can safely ignore this warning.

After 2 weeks of testing, searching in git issues and testing again it worked.
The solution is written in here:
https://github.com/matrix-org/synapse/issues/1834#issuecomment-678437844
would be great if someone can explain it to me. I didn't understand this failure and I think it would be a good for anybody who is searching for this issue.

Good to hear you were able to figure it out after all, that looks like a pretty nasty issue.
I don't believe there is much I could have done here to make this easier to troubleshoot, but if you have any suggestions, let me know. I'd be happy to implement them.


fix issue with gap filling in index crawler

The source of the bug is the one line change in the carstore, the repomanager changes are the part that could use the closest look, basically i'm allowing the first commit in the gap fill process to dip into the carstore for the blocks it needs for the diff, later diffs are isolated and must pull blocks from the car file.

I'll take a look at this later tonight or tomorrow.

@bnewbold i'd still like review here but i'm going to merge this so we can get it deployed


Hi Fabian!

First at all, thank you for sharing this.
Im new here so, im sure im wrong publishing this here, anyways, I wanted to ask you if you can help me.
I have a remote of a Fire Tv stick, with no use because the stick was stolen from my house (can you believe it?).
I thought that I may be able to use it with my esp32 to turn on automations, lights... etc. but after a while of researching I wasn't able to find a solution using the example that ESPHome gives about an BLE iTag.
I have no experience in coding, and no experience in custom sensors for ESPHome. Im pretty sure your code will save me, but can you give me a glance of how to use it? Thank you!

I have improved the documentation, I hope that will help you!

It really does help me!!
Thank you so much. Looks amazing, and I hope this help others as well.
If I have time, I would like to make a post in the community forums of HA referencing you and this post. So others may find it as useful as it's to me.

I am glad I could help you and appreciate your positive feedback. Of course you are welcome to post on the HA community forums.


Action to test for no_std

On all no_std supporting crates I typically need to test for no_std compatibility in CI. This blog has some useful advice on how this can be done. Is it possible this can be added here? Is this the right place? Thank you and much appreciated. I love actions-rs.
Here is a crate I am doing this as an example currently: https://github.com/rust-cv/eight-point

Hi, @vadixidav and thank you :)
I'm not quite following on what are you proposing to add?

Transparently adding ensure_no_std crate as a dependency to the tested project seems like a way to introduce unexpected problems and in general seems like an overkill
First update mentions thumbv6m-none-eabi option; you can either install it as a default toolchain with actions-rs/toolchain Action or simply by running rustup target add thumbv6m-none-eabi (after executing actions-rs/toolchain, as it will guarantee that you will have rustup in your PATH)
Second update uses cargo-nono tool, I'm using it too to ensure no-std compatibility (example).
Unfortunately right now it adds overhead, as it executes cargo install cargo-nono first and compilation takes some time, obviously. This problem will be fixed with https://github.com/actions-rs/meta/issues/21, but for now it is what it is.

I was unable to get cargo-nono to properly detect when std was pulled in, so I don't consider it to be robust enough for me.
thumbv6m-none-eabi doesn't seem to work for me either because that precludes the use of dependencies that pull in std because Cargo.lock gets automatically upgraded with the std version of the dependencies. I was unable to find any way to get rid of my std dependence in my dev-dependencies. This is mentioned in the blog post as well.
As for ensure_no_std, I feel like there might be some way to package this concept up into an action. I find myself putting this ensure_no_std into several repositories, and the concept of detecting no_std compliance should be pretty common in many rust libraries, but probably isn't today due to how prohibitive it is. I am hoping that actions-rs might be able to add something to assist with this.
My proposal would vaguely be: an action that templates ensure_no_std to contain the correct crate name and then runs the designated cargo command on the ensure_no_std crate rather than the actual crate. I am not an expert at GitHub actions by any means, so I am not sure what is possible, but perhaps adding a flag such as ensure-no-std: true to a cargo build command should be sufficient here to tell it to perform the cargo build on this templated crate in a subdirectory.
Does this seem reasonable?


JQuery Autocompletion

Hi i'm an average js dev
I am unable to find the file which provide autocompletion of jquery, chai, browser based function etc.
I really find this package helpful but can't find the files which provide autocompletion
please help me find the file.
thanks
sorry for poor english

I know this issue is a bit older, but was just taking a look around at the codebase, and while I'm not the most familiar with this codebase, it seems that all completions from the package are not provided by a single file.
But instead completions are provided by the ternjs server. Which you can read more about on the ternjs.net documentation. Hope this helps!


three.js camera camera not smooth

When changing z position of three.js camera, the green cube does not look smooth at all.
See for yourself, clone the three branch.

Look in client.js

https://threejs.org/docs/#examples/en/controls/OrbitControls


crates-io: Add doc comment for NewCrate struct

This PR adds a small doc comment to the NewCrate struct in the crates-io package, linking to https://doc.rust-lang.org/cargo/reference/registry-web-api.html#publish to give additional context.
I saw other links to https://doc.rust-lang.org in some of the doc comments, so I'm hoping this is correct vs. linking directly to the file with a relative path?

probably no need to bump it just for this change. it was mostly helpful for me while browsing the cargo codebase :)

oh wait, now that I see the failing CI... did you mean to say that I should bump the version myself? how are changelogs etc. handled in that case?

Yes, to fix CI the version needs to be bumped.  Its a crude check, making us release more often than we would otherwise, but we've had too many times where we forgot to release.
So far we don't have per-crate changelogs.  I'm researching options for that.

@bors r+

:pushpin: Commit 9e5dac18b9845c9f5b6e750b2124386f74902d7c has been approved by epage
It is now in the queue for this repository.

Thanks!

:hourglass: Testing commit 9e5dac18b9845c9f5b6e750b2124386f74902d7c with merge 294fe8f94937c1ee53c5ca3514e8b2e85742b69b...

:sunny: Test successful - checks-actions
Approved by: epage
Pushing 294fe8f94937c1ee53c5ca3514e8b2e85742b69b to master...

:sunny: Test successful - checks-actions
Approved by: epage
Pushing 294fe8f94937c1ee53c5ca3514e8b2e85742b69b to master...

:eyes: Test was successful, but fast-forwarding failed: 422 Changes must be made through a pull request.


images added in assets folder

Description 📜
I have included the images of two bulbs(on and off) in assets folder
Fixes #5436

Type of change 📝

[x] Documentation (Content Creation in the form of codes or tutorials)

Domain of Contribution 📊

[x] Android Dev (Flutter)

Checklist ✅

[x] I follow Contributing Guidelines & Code of conduct of this project.
[x] I have performed a self-review of my own code or work.
[x] I have commented my code, particularly in hard-to-understand areas.
[x] My changes generates no new warnings.
[x] I'm GWOC'21 contributor

@ViAsmit please review


Cost functions update

Support for generic cost functions

Codecov Report

Merging #269 into dev will increase coverage by 0.08%.
The diff coverage is 76.11%.

@@            Coverage Diff             @@
##              dev     #269      +/-   ##
==========================================
+ Coverage   56.56%   56.64%   +0.08%
==========================================
  Files          77       76       -1
  Lines        4466     4452      -14
==========================================
- Hits         2526     2522       -4
+ Misses       1940     1930      -10

Impacted Files
Coverage Δ

src/parsers/json2ps_parser.jl
0% <ø> (ø)
:arrow_up:

src/PowerSystems.jl
100% <ø> (ø)
:arrow_up:

src/models/generated/TechThermal.jl
33.33% <100%> (ø)
:arrow_up:

src/models/supplemental_constructors.jl
88.88% <100%> (+1.38%)
:arrow_up:

src/models/serialization.jl
89.04% <100%> (ø)
:arrow_up:

src/models/generated/TechHydro.jl
33.33% <100%> (ø)
:arrow_up:

src/models/operational_cost.jl
100% <100%> (ø)

src/parsers/cdm_parser.jl
87.57% <100%> (-0.04%)
:arrow_down:

src/models/generated/ThreePartCost.jl
44.44% <44.44%> (ø)

src/models/generated/TwoPartCost.jl
57.14% <57.14%> (ø)

... and 10 more

Continue to review full report at Codecov.

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


Create new metric with last connection timestamp

Create a new metric containing the last connection timestamp for a given device. Also remove the lastSeen label from last_connection_duration as that label causes an explosion in cardinality for that metric. Updated the test as well.

@pacmansyu  thanks for contribution could you please give more information about last_seen explosion metric?

Since last_seen is updated frequently, using it as a label in the metric causes a new time series to be created every time it changes. After running syncthing_exporter against my syncthing instance for 3 hours, around 60 new time series for the metric last_connection_duration had been created.


Geforce Experience

Any way to make this work with users who play using Geforce experience service? =(

Unfortunately no, this is on GGG's side.