Display blob metadata in object list

We make use of metadata properties in our blob containers, and it would be very helpful to be able to select one or more properties to display as custom columns when viewing a blob container.
Steps to Reproduce:
Navigate to a blob container, note that only "standard" properties like Name, Size, or Last Modified are visible in the list view, and no customization options are available.
Desired Experience:
Right-click header row to show/hide standard columns, and add columns for custom metadata properties.

Hi @superstator , although we like this idea, due to API limitations, doing this would have huge performance impacts. We'd need to call get blob properties on every blob before being able to display them in the table. We're going to go ahead and close this issue for now, but if anything with the API changes we can look back into it. Thanks for the good suggestion!


some devices became unavailable and recovered after several hours ?

My firmware version is 1.4.6_0012 and got 13 Zigbee devices work at ZHA mode,
it's been for a long time, almost every day, one or two of devices became unavailable and then recovered after several hours.
I can almost make sure it's a communication issue, because the light of motion sensors can still flash when people reached them
I tried "RECONFIGURE DEVICE" it and always got the error message as below
Reconfiguring node with ieee_address: 00:12:4b:00:22:eb:c6:7c
0x7E27: started configuration
0x7E27:ZDO: 'async_configure' stage succeeded
[0x7E27:1:0x0500]: started IASZoneChannel configuration
[0x7E27:1:0x0001]: Failed to bind 'power' cluster: [0x7e27:0:0x0021]: Message send failure
[0x7E27:1:0x0000]: Failed to bind 'basic' cluster: [0x7e27:0:0x0021]: Message send failure
[0x7E27:1:0x0000]: finished channel configuration
[0x7E27:1:0x0500]: Failed to bind 'ias_zone' cluster: [0x7e27:0:0x0021]: Message send failure
[0x7E27:1:0x0001]: failed to set reporting for 'battery_voltage' attr on 'power' cluster: [0x7e27:1:0x0001]: Message send failure
[0x7E27:1:0x0500]: Failed to write cie_addr: bc:33:ac:ff:fe:7e:7f:cf to 'ias_zone' cluster: [0x7e27:1:0x0500]: Message send failure
[0x7E27:1:0x0500]: Sending pro-active IAS enroll response
[0x7E27:1:0x0500]: finished IASZoneChannel configuration
[0x7E27:1:0x0001]: failed to set reporting for 'battery_percentage_remaining' attr on 'power' cluster: [0x7e27:1:0x0001]: Message send failure
[0x7E27:1:0x0001]: finished channel configuration
[0x7E27:1:0x0500]: 'async_configure' stage succeeded
[0x7E27:1:0x0000]: 'async_configure' stage succeeded
[0x7E27:1:0x0001]: 'async_configure' stage succeeded
0x7E27: completed configuration
0x7E27: stored in registry: ZhaDeviceEntry(name='eWeLink MS01', ieee='00:12:4b:00:22:eb:c6:7c', last_seen=1619271692.2909832)
[0x7E27:1:0x0003]: command failed: 'trigger_effect' args: '(2, 0)' kwargs '{}' exception: '[0x7e27:1:0x0003]: Message send failure'
This symptom makes my automation system very unstable.
Can anyone here give me any suggestion, thanks.

I think better to write to hass original repo. This issue depends on ZHA component

Same thing here.
All my devices are Zigbee devices from Aqara and Xiaomi, the system is built on HA and XiaomiGateway3.
Some of them become available in several hours while the others need to re-paired manually.

BTW, when those devices become available again, there are notifications in HA saying that new devices are found.
New device:
did: lumi.158d00032458db
mac: 158d00032458db
model: lumi.ctrl_neutral2
version: 22
zb_ver: 1.2

Please reopen the issue if it is still relevant


crash when run app on ios

From @alibahjat on July 21, 2018 18:28
hello
i got this error when run app in ios
Successfully started on device with identifier '1626D133-057C-4418-AFDC-C3F0DCA491D8'.
***** Fatal JavaScript exception - application has been terminated. *****
Native stack trace:
1   0x10c201649 NativeScript::reportFatalErrorBeforeShutdown(JSC::ExecState*, JSC::Exception*, bool)
2   0x10c229c5b NativeScript::FFICallback<NativeScript::ObjCMethodCallback>::ffiClosureCallback(ffi_cif*, void*, void**, void*)
3   0x10cb1f5c1 ffi_closure_unix64_inner
4   0x10cb1ff22 ffi_closure_unix64
5   0x10ed2ea65 _CFXRegistrationPost
6   0x10ed2e7a1 ___CFXNotificationPost_block_invoke
7   0x10ecf0422 -[_CFXNotificationRegistrar find:object:observer:enumerator:]
8   0x10ecef5a1 _CFXNotificationPost
9   0x10d204e57 -[NSNotificationCenter postNotificationName:object:userInfo:]
10  0x109fe1469 -[UIApplication _callInitializationDelegatesForMainScene:transitionContext:]
11  0x109fe65cb -[UIApplication _runWithMainScene:transitionContext:completion:]
12  0x10a3a8f7e __111-[__UICanvasLifecycleMonitor_Compatability _scheduleFirstCommitForScene:transition:firstActivation:completion:]_block_invoke
13  0x10a77ba39 +[_UICanvas _enqueuePostSettingUpdateTransactionBlock:]
14  0x10a3a8bba -[__UICanvasLifecycleMonitor_Compatability _scheduleFirstCommitForScene:transition:firstActivation:completion:]
15  0x10a3a93db -[__UICanvasLifecycleMonitor_Compatability activateEventsOnly:withContext:completion:]
16  0x10ad1a614 __82-[_UIApplicationCanvas _transitionLifecycleStateWithTransitionContext:completion:]_block_invoke
17  0x10ad1a4ae -[_UIApplicationCanvas _transitionLifecycleStateWithTransitionContext:completion:]
18  0x10a9fe75d __125-[_UICanvasLifecycleSettingsDiffAction performActionsForCanvas:withUpdatedScene:settingsDiff:fromSettings:transitionContext:]_block_invoke
19  0x10abf94b7 _performActionsWithDelayForTransitionContext
20  0x10a9fe627 -[_UICanvasLifecycleSettingsDiffAction performActionsForCanvas:withUpdatedScene:settingsDiff:fromSettings:transitionContext:]
21  0x10a77b0e0 -[_UICanvas scene:didUpdateWithDiff:transitionContext:completion:]
22  0x109fe4eac -[UIApplication workspace:didCreateScene:withTransitionContext:completion:]
23  0x10a5b7bcb -[UIApplicationSceneClientAgent scene:didInitializeWithEvent:completion:]
24  0x110bb12f3 -[FBSSceneImpl _didCreateWithTransitionContext:completion:]
25  0x110bb9cfa __56-[FBSWorkspace client:handleCreateScene:withCompletion:]_block_invoke_2
26  0x10fd4b709 _dispatch_client_callout
27  0x10fd508c1 _dispatch_block_invoke_direct
28  0x110be5470 __FBSSERIALQUEUE_IS_CALLING_OUT_TO_A_BLOCK__
29  0x110be512e -[FBSSerialQueue _performNext]
30  0x110be568e -[FBSSerialQueue _performNextFromRunLoopSource]
31  0x10ed35bb1 __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__
JavaScript stack trace:
1   m@file:///app/vendor.js:1:706007
2   setWindowContent@file:///app/vendor.js:1:705578
3   didFinishLaunchingWithOptions@file:///app/vendor.js:1:704230
4   @[native code]
5   onReceive@file:///app/vendor.js:1:701055
6   UIApplicationMain@[native code]
7   _@file:///app/vendor.js:1:706578
8   run@file:///app/vendor.js:1:707018
9   bootstrapNativeScriptApp@file:///app/vendor.js:1:1067539
10  bootstrapApp@file:///app/vendor.js:1:1066080
11  bootstrapModule@file:///app/vendor.js:1:1065850
12  @file:///app/bundle.js:1:21250
13  r@file:///app/bundle.js:1:606
14  n@file:///app/bundle.js:1:472
15  @file:///app/bundle.js:1:1164
16  anonymous@file:///app/bundle.js:1:1167
17  evaluate@[native code]
18  moduleEvaluation@[native code]
19  @[native code]
20  promiseReactionJob@[native code]
21  require@[native code]
22  anonymous@file:///app/starter.js:2:8
23  evaluate@[native code]
24  moduleEvaluation@[native code]
25  @[native code]
26  promiseReactionJob@[native code]
JavaScript error:
file:///app/vendor.js:1:706007: JS ERROR Error: A Frame must be used to navigate to a Page.
^CChild process terminated with signal 2: Interrupt

my package json is
 {
  "description": "NativeScript Application",
  "license": "SEE LICENSE IN <your-license-filename>",
  "readme": "NativeScript Application",
  "repository": "<fill-your-repository-here>",
  "nativescript": {
    "id": "com.ali.ali",
    "tns-android": {
      "version": "4.1.3"
    },
    "tns-ios": {
      "version": "4.1.1"
    }
  },
  "dependencies": {
    "@angular/animations": "~5.2.0",
    "@angular/common": "~5.2.0",
    "@angular/compiler": "~5.2.0",
    "@angular/core": "~5.2.0",
    "@angular/forms": "~5.2.0",
    "@angular/http": "~5.2.0",
    "@angular/platform-browser": "~5.2.0",
    "@angular/platform-browser-dynamic": "~5.2.0",
    "@angular/router": "~5.2.0",
    "nativescript-angular": "~5.3.0",
    "nativescript-app-tour": "^0.9.1",
    "nativescript-barcodescanner": "^2.7.7",
    "nativescript-carousel": "^3.1.1",
    "nativescript-fancyalert": "^1.2.0",
    "nativescript-gif": "^4.0.0",
    "nativescript-image-swipe": "^3.0.0",
    "nativescript-image-zoom": "^3.0.0",
    "nativescript-loading-indicator": "^2.4.0",
    "nativescript-ng2-slides": "0.0.11",
    "nativescript-onesignal": "^1.0.7",
    "nativescript-phone": "^1.3.1",
    "nativescript-social-share": "^1.5.0",
    "nativescript-theme-core": "~1.0.4",
    "nativescript-ui-sidedrawer": "^4.1.1",
    "reflect-metadata": "~0.1.10",
    "rxjs": "~5.5.5",
    "tns-core-modules": "^4.1.0",
    "tns-core-modules-widgets": "^4.1.0",
    "tns-platform-declarations": "^4.1.0",
    "zone.js": "~0.8.18"
  },
  "devDependencies": {
    "@angular-devkit/core": "~0.6.3",
    "@angular/cli": "^6.0.8",
    "@angular/compiler-cli": "~5.2.0",
    "@ngtools/webpack": "~6.0.3",
    "babel-traverse": "6.26.0",
    "babel-types": "6.26.0",
    "babylon": "6.18.0",
    "clean-webpack-plugin": "~0.1.19",
    "copy-webpack-plugin": "~4.5.1",
    "css-loader": "~0.28.11",
    "extract-text-webpack-plugin": "~3.0.2",
    "lazy": "1.0.11",
    "nativescript-css-loader": "~0.26.0",
    "nativescript-dev-typescript": "~0.7.0",
    "nativescript-dev-webpack": "^0.12.0",
    "nativescript-worker-loader": "~0.9.0",
    "raw-loader": "~0.5.1",
    "resolve-url-loader": "~2.3.0",
    "typescript": "~2.7.2",
    "uglifyjs-webpack-plugin": "~1.2.5",
    "webpack": "~4.6.0",
    "webpack-bundle-analyzer": "~2.13.0",
    "webpack-cli": "~2.1.3",
    "webpack-sources": "~1.1.0"
  },
  "scripts": {
    "ns-bundle": "ns-bundle",
    "publish-ios-bundle": "npm run ns-bundle --ios --publish-app",
    "generate-android-snapshot": "generate-android-snapshot --targetArchs arm,arm64,ia32 --install",
    "start-android-bundle": "npm run ns-bundle --android --run-app",
    "start-ios-bundle": "npm run ns-bundle --ios --run-app",
    "build-android-bundle": "npm run ns-bundle --android --build-app",
    "build-ios-bundle": "npm run ns-bundle --ios --build-app"
  }
}

please help me
Copied from original issue: NativeScript/NativeScript#6104

Hi @alibahjat,
Can you provide more info about the project and the problem, which you are facing? It will also help if you can send us a sample project, which can be used for reproducing the problem.
Meanwhile, I would suggest updating  nativescript-angular and related angular dependencies to the latest available versions, while following the below attached package.json file.
{
	"description": "NativeScript Application",
	"license": "SEE LICENSE IN <your-license-filename>",
	"readme": "NativeScript Application",
	"repository": "<fill-your-repository-here>",
	"nativescript": {
		"id": "org.nativescript.testP"
	},
	"dependencies": {
		"@angular/animations": "~6.0.0",
		"@angular/common": "~6.0.0",
		"@angular/compiler": "~6.0.0",
		"@angular/core": "~6.0.0",
		"@angular/forms": "~6.0.0",
		"@angular/http": "~6.0.0",
		"@angular/platform-browser": "~6.0.0",
		"@angular/platform-browser-dynamic": "~6.0.0",
		"@angular/router": "~6.0.0",
		"nativescript-angular": "~6.0.0",
		"nativescript-theme-core": "~1.0.4",
		"reflect-metadata": "~0.1.8",
		"rxjs": "~6.1.0",
		"tns-core-modules": "~4.1.0",
		"zone.js": "^0.8.26"
	},
	"devDependencies": {
		"nativescript-dev-typescript": "~0.7.0",
		"typescript": "~2.7.2"
	}
}

Before rebuilding the app, delete platforms, node_modules and hooks folders.


add MANIFEST.in to include LICENSE in sdist

This is encouraged by conda-forge (https://github.com/conda-forge/staged-recipes/blob/master/recipes/example/meta.yaml#L52)

Coverage remained the same at 77.633% when pulling 08c1b3595933682ebe4161a13500ae73e2bd9625 on christianbrodbeck:license into 6cf517e01043ce0b08f98a0ced6ed191f0c2f05e on nipy:master.

Thanks @christianbrodbeck


Update rsync

Hello,
Is it possible to update rsync to the latest version?
Currently BurmillaOS uses version 3.1.3 from 2018. The latest version is 3.2.3 https://rsync.samba.org/.
Thx
BurmillaOS Version: (ros os version) v2.0.0-beta3
Where are you running BurmillaOS? (docker-machine, AWS, GCE, baremetal, etc.) Proxmox VM
Which processor architecture you are using? AMD64
Which console you use (default, ubuntu, centos, etc..) default
Please share copy of your cloud-init (remember remove all sensitive data first)
rancher:
  environment:
    EXTRA_CMDLINE: /init
  network:
    interfaces:
      eth0:
        address: <IP_ADDRESS>/24
        dhcp: false
        gateway: <IP_ADDRESS>
        mtu: 1500
  services_include:
    docker-compose: true
  state:
    dev: LABEL=RANCHER_STATE
    wait: true
ssh_authorized_keys:
- XXX

BurmillaOS uses Debian 10 (Buster) as console so package versions are defined by it https://packages.debian.org/buster/rsync
Debian unstable looks containing 3.2.3 https://packages.debian.org/sid/rsync so we will get it when they release next version.
Based on https://wiki.debian.org/DebianReleases there looks to be new release about every second year so I think that we can expect Debian 11 (Bullseye) to be released some point of during this year.

Okay ! Thank you very much for the explanation


Make the + and * operators vectorize the right way every time

This problem has a desirable solution, or a "good enough" solution.
Problem statement
Binary operators like + and * arguably have two different classes of use cases, requiring two different vectorization algorithms.
Sometimes they are used to build up a sum or product, and the ideal way to vectorize them is to put their inputs into an array and take the sum. For example:
# Example 1
x1 = vp.Symbol("x1")
x2 = vp.Symbol("x2")
kernel = (vp.Distance(x1[[0,1,2]], x2[[1,2,3]])
          + vp.Distance(x1[[3,4,5]], x2[[3,4,5]])
          + vp.Distance(x1[[6,7,8]], x2[[6,7,8]])

# We want vectorize to create this kernel:
desired_vectorized_kernel = vp.VectorSum(vp.Distance(x1[[0,1,2,3,4,5,6,7,8]],
                                                     x2[[0,1,2,3,4,5,6,7,8]],
                                                     split_lengths=[3,3,3]))

The same is true of the * operator with product kernels.
On the other hand, sometimes we want the * operator to vectorize very differently. Suppose we make the above a weighted sum.
# Example 2
w1 = vp.Symbol("w1")
w2 = vp.Symbol("w2")
w3 = vp.Symbol("w3")
x1 = vp.Symbol("x1")
x2 = vp.Symbol("x2")
kernel = (w1 * vp.Distance(x1[[0,1,2]], x2[[1,2,3]])
          + w2 * vp.Distance(x1[[3,4,5]], x2[[3,4,5]])
          + w3 * vp.Distance(x1[[6,7,8]], x2[[6,7,8]]))

# We want vectorize to create this kernel:
desired_vectorized_kernel = vp.VectorSum(vp.Stack(w1, w2, w3)
                                         * vp.Distance(x1[[0,1,2,3,4,5,6,7,8]],
                                                       x2[[0,1,2,3,4,5,6,7,8]],
                                                       split_lengths=[3,3,3]))

Here we used the * operator, and explicitly did not want a VectorProd. We want the vectorized version to continue using a binary * operator. You can come up with similar examples with +, for example when adding a bias to multiple values.
Solution 1: Use a clever vectorize algorithm for * and +
This is appealing, but I don't yet see how to do it. Maybe it's possible. I don't want to accept a solution that breaks down in pathological cases, nor a solution that requires "try every combo and see what works".
Here's some example wrong ways of doing it:

When vectorizing a +, check which symbols each operand was derived from. If all operands were derived from the same symbols (like in Example 1 above), then used a VectorizedSum. Else, use a binary operator. This algorithm also works for the * operators in Example 2. However, this algorithm does not work for the + operators in Example 2, since every element in the weighted sum depends on a different set of symbols.
...so maybe alter that algorithm. If the operands are derived from an overlapping set of symbols, then used VectorizedSum. Else use binary. That works in this situation, but you can come up with cases where that breaks down. e.g. suppose an "epsilon" symbol is added in lots of places to enforce positive values. That would have the undesired effect of changing how everything gets vectorized.

Maybe I / someone will have an aha moment and realize that this is solvable.
Solution 2: Untangle vp.add, vp.sum / vp.mul, vp.prod
This is a workaround solution. Make the programmer take on some of the burden so that the vectorizer's job is easier. Remove the + and * operators and instead make the user call vp.sum or vp.add, depending on whether they want the vector sum or the binary operator behavior.
This fits with the philosophy of Vexpr; the programmer and the vectorizer should meet in the middle so that nobody has to do anything complicated.
However, this doesn't demo very well. The barrier to entry for Vexpr is reduced if the user can freely use + and *.

With the new implementation in https://github.com/outergroup/vexpr/commit/10df30b1b527495feb1e796155ae64bfbb09a56f, you simply use numpy APIs (or torch APIs, etc.) directly, or you use the + and * operator. Those never magically become each other -- if you use a * operator in your expression, one will also occur in your vectorized expression. This behavior seems intuitive to me.


[Dev][Tips] Enable link to single tip page

Tips page contains individual tips cards.
The tip card title should be a link to the individual tip page.

Done!


bug(DragDrop): Drag&Drop not working inside MatDialog and when the page's height is too big

Reproduction
Here is a reproduction. There is a button down there which opens a dialog with draggable items.
https://stackblitz.com/edit/angular-9-material-starter-lktwr2?file=src/app/app.component.css
Expected Behavior
Drag&Drop should work.
Actual Behavior
I have a project where I have a table with a lot of items, and when I scroll down (for example to the middle of the table, page height ~is 4000px), and by clicking on a row I open a dialog where I want to use drag&drop and where it doesn't work (as in the reproduction). But if I click on a row which is at the beginning of the table, drag&drop is working fine.
Environment
In the reproduction I used Angular 9, but I see this in Angular 11 as well. Not sure if this fixed in 12th version.

I am able to reproduce this if I change the align-items to flex-end in your example, so I have to scroll down to get to the button. https://stackblitz.com/edit/angular-9-material-starter-oksp3k?file=src/app/app.component.css


Use nickname, not username, in command prelude

Nice catch! This means we aren't actually using the username variable anymore though, mind removing it? Here: https://github.com/williamjacksn/discord-irc/blob/7b934e53198cd4caad80c7e7cbf0b3af6ce69473/lib/bot.js#L140

You got it!

Brilliant, thanks.

Released in version 2.1.2


[3.0] Code reformat

What is the purpose of the change

Convert all CRLF endline files to Unix style LF
Convert Tab to 4 Spaces
Add codestyle checker

Codecov Report

Merging #8019 (399092d) into 3.0 (f6a24f7) will increase coverage by 3.32%.
The diff coverage is 62.28%.

:exclamation: Current head 399092d differs from pull request most recent head c0aad78. Consider uploading reports for the commit c0aad78 to get more accurate results

@@             Coverage Diff              @@
##                3.0    #8019      +/-   ##
============================================
+ Coverage     57.55%   60.88%   +3.32%
+ Complexity      357      314      -43
============================================
  Files           983     1065      +82
  Lines         40131    44455    +4324
  Branches       5992     6626     +634
============================================
+ Hits          23099    27066    +3967
- Misses        14327    14387      +60
- Partials       2705     3002     +297

Impacted Files
Coverage Δ

...ava/org/apache/dubbo/registry/AddressListener.java
100.00% <ø> (ø)

...ain/java/org/apache/dubbo/rpc/cluster/Cluster.java
75.00% <ø> (ø)

...n/java/org/apache/dubbo/rpc/cluster/Directory.java
33.33% <ø> (+33.33%)
:arrow_up:

...e/dubbo/rpc/cluster/ProviderURLMergeProcessor.java
0.00% <0.00%> (ø)

...configurator/absent/AbsentConfiguratorFactory.java
0.00% <0.00%> (ø)

...igurator/override/OverrideConfiguratorFactory.java
0.00% <0.00%> (ø)

...bo/rpc/cluster/filter/support/ZoneAwareFilter.java
0.00% <0.00%> (ø)

...c/cluster/governance/GovernanceRuleRepository.java
100.00% <ø> (ø)

...bo/rpc/cluster/interceptor/ClusterInterceptor.java
0.00% <ø> (-100.00%)
:arrow_down:

...e/dubbo/rpc/cluster/router/AbstractRouterRule.java
0.00% <0.00%> (ø)

... and 670 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 724ec8b...c0aad78. Read the comment docs.

https://github.com/AlbumenJ/dubbo/actions/runs/924955583


Revert "Used isEmpty() instead of making comparison"

fix build error

it seems there is just some code-style formatting in this pr?

fix build error


Evaluation Schema + a small revamp

Fixes https://github.com/Udayraj123/OMRChecker/issues/89
This PR attempts to provide a generic solution for evaluation.

@Rohan-G you can start having a look in the main files. Starting with the schema. I'll push working changes soon.

The changes include(wip list):
working evaluation code
add range operator support
add validations for marking scheme and omr response
picking up window_width (using screeninfo)
pickup evaluation.json recursively;
added schema for all 3 jsons
improved error messages
reduce hardcoded configs
support config.json per instance
pickup config.json recursively;
test threshold jump value
upgrade pip packages
load json error handling
separate out utils into ImageInstanceOps, ImageUtils(static methods) and InteractionUtils(static methods)
add upsc mock; refactor; create evaluation-schema

The changes include(wip list):

working evaluation code
add range operator support
add validations for marking scheme and omr response
picking up window_width (using screeninfo)
pickup evaluation.json recursively;
added schema for all 3 jsons
improved error messages
reduce hardcoded configs
support config.json per instance
pickup config.json recursively;
test threshold jump value
upgrade pip packages
load json error handling
separate out utils into ImageInstanceOps, ImageUtils(static methods) and InteractionUtils(static methods)
add upsc mock; refactor; create evaluation-schema


az iot hub routing-endpoint create: error: argument --connection-string/-c: expected one argument

az feedback auto-generates most of the information requested below, as of CLI version

2.0.76
Describe the bug
When running the following azure-cli command I get a strange error
az iot hub routing-endpoint create --hub-name 'xx' --endpoint-name 'yyyx' --endpoint-type azurestoragecontainer --endpoint-resource-group Cloud-G
ateway --endpoint-subscription-id 'xxx' --connection-string 'DefaultEndpointsProtocol=https;EndpointSuffix=core.windows.net;Accou
ntName=storageiothubtest;AccountKey=xx'
Error: az iot hub routing-endpoint create: error: argument --connection-string/-c: expected one argument
I enabled debug flag and indeed the connection string parameter is not read.
I provide the correct arguments and the command still fails. I tested this inside azure cloud shell and it works perfectly fine. I am not sure where the problem is.
Any help is appreciated.
I think the issue is somehow related to bash. I am running this on Windows using Git bash.

Wait, so this works with Cloud Shell but doesn't work with git bash on windows? Weird @iluican can you assign someone to look at this please

The issue is caused by this known issue: https://bugs.python.org/issue9334
Auxiliar syntax (--connection-string='value') can be used as a workaround

Looks like we agree on tracking this outside here. Closing

az iot routing-endpoint list
will return all the information for endpoints (including name, resource group and connection string).

Hello @iluican
Thanks for your reply. When I tried to create the storage endpoint with the above command(az iot hub routing-endpoint create) using the property values(endpoint-resource-group, --connection-string, endpoint-subscription-id ) from the command provided by you (az iot routing-endpoint list), I am unable to create the endpoint and getting error as "exceptionMessage:No valid combination of account information found. If you contact a support representative please include this correlation identifier: 0c78e291-3410-4144-86d4-92aa11e6c237".
Are the resource-group name and endpoint-resource-group name different?
Please someone help. @arabelaa @jlian @radeanurazvan @
-Satish

To retrieve the storage account resource group:
az storage account show --name storage_account_name
(the information you need is the value of "resourceGroup" key)
To retrieve the storage account connection string:
az storage account show-connection-string --name storage_account_name
You can use these values to run the endpoint creation command:
az iot hub routing-endpoint create --hub-name hub_name --endpoint-name endpoint_name --endpoint-type azurestoragecontainer --container-name container_name --endpoint-resource-group resource_group --endpoint-subscription-id subscription_id --connection-string connection_string

Hi @iluican
Thanks so much for your time and valuable response. I have used the command az storage account show-connection-string --name storage_account_name to get the value for --connection-string and used the command az storage account show --name storage_account_name to get the values for resource_group and used the id value as --endpoint-subscription-id.
I used these above 3 from values into the endpoint creation command provided by u above. But when I execute the command, I am unable to create the storage endpoint and getting error as "SubscriptionId length exceeded. Endpoint name:testendpoint, subscriptionId:subscriptions/abcdefg-hijk-lmno-pqrs-143576agfs/resourceGroups/TestRG/providers/Microsoft.Storage/storageAccounts/teststorageaccount".
I am out of trying all the ways. Please help me to create storage endpoint, that would be grateful.
Thanks,
Satish

Hello All,
This issue has been resolved, I got the mistake that I was doing while creating endpoint that is I was passing existing already used container name while creating endpoint hence I was facing this issue.
I had no idea that I have to pass a new container name everytime for every new endpoint. Anyways, now I could able to create storage endpoint so did message routing. Thanks everyone for your help :)


The likeCount limited to 15 likes.

Hi, I have an issue with the like likeCount. it only logs up to 15 likes. How can I make it so that it doesn't stop at 15? It shouldn't be displaying the likeCount before the user stops tapping the screen. It should only show the final likeCount amount after the user stops tapping. Hope you can help me out with this. Thank you in advance!

TikTok sends maximum 15 likes to the pool
You can store each pool per user and calculate the total when you need it.

Hi, thanks for the reply. Would you mind to show me the exact way to do that? I'm afraid I have not much knowledge on coding😅

Do you always need to show likes right after the user finishes their streak, or do you have an event after which you need to show the number of likes?

Yes, I do want it to show the total likes from each respective user right after they finish their streak/screen tapping. Just to be clear, let's say they tapped 100 times non-stop and then they end their streak, it will show that they've sent 100 likes. If they tapped for 5000 times non-stop and then stopped, it will show that they've sent 5000 likes.

I think until TikTok adds marks the start and end of the streak, it is difficult to determine with high accuracy, but you can choose your interval
I'm afraid I don't have much knowledge about coding either
example piece of code for server
var list_users_likes = new Object(); tiktokLiveConnection.on('like', data => { 			if (list_users_likes.hasOwnProperty(data.uniqueId)) { 				list_users_likes[data.uniqueId].addTime(); 				list_users_likes[data.uniqueId].up(data.likeCount); 			} else { 				list_users_likes[data.uniqueId] = { 					total: 0, 					uniqueId: data.uniqueId, 					dropLikes(total) { 						console.log(this.uniqueId, total); //do something you need 						this.timeoutID = undefined; 						delete list_users_likes[this.uniqueId]; 					}, 					addTime() { 						clearTimeout(this.timeoutID); 					}, 					up(like) { 						this.total += like; 						this.timeoutID = setTimeout((total) => { 							this.dropLikes(total); 						}, 4000, this.total) //4 seconds interval 					} 				}; 				list_users_likes[data.uniqueId].up(data.likeCount); 			} })

Thanks for the code example. Do I just copy and paste or I still have to modify anything? If I were to replace a code from my file, do I replace the follow code?:
tiktokLiveConnection.on('like', data => {
    console.log(`${data.uniqueId} sent ${data.likeCount} likes, total likes: ${data.totalLikeCount}`);
})

Other than the lines where there is a comment (11, 22), it is better not to change anything
Yes, this part of your code should be replaced to avoid duplicate

Okay, I actually have a few differences in my code which make me kind of confused about what exactly my code should look like, I thought I could add your code just like that with a little bit of modification, but it didn't work out. Maybe you could modify the code based on what I currently have if you don't mind 😅.
Alright so I have a function addMessageLike, created to display the output:
function addMessageLike(data) {
        // Check setting
        if (confLike) {
            // Add
            addContent(`${data.uniqueId} sent ${data.likeCount} likes, total likes: ${data.totalLikeCount}`);

            // Sound
            playSound(1);
        }

    }

In the above function, I have a condition called confLike to proceed if only it's true.
I also have the addContent, which is just another function for where and how to display the content and the content is inside the bracket.
The following image is the current result(which is the issue I currently have where it only records up to 15 likes at a time, and then displays another 15, and so on.):

Here is my actual code for the connection:
connection.on('like', (data) => {
    if (typeof data.likeCount === 'number') {
            // Check setting
        if (confLike) {
        addMessageLike(data);
        }
    }
})

I also put the whole code here in case you want to have a look.
Hope those could help you more. Thanks!

I'm not sure which file do I show for the data transfer set up 😅.
I actually downloaded the project from here. I think it will be easier for you to understand the code if you can see it all. The code I've shown in my previous reply is from the app.js file that you can find inside /public/assets/js. But of course, I modified the app.js just a little bit. Originally it doesn't display the number of likes at all.

Yes, I need to see how you change server.js and implemented the code I wrote earlier

Oh. I didn't change anything in the server.js but what I did in app.js from the code you suggested earlier is:

From this code:

connection.on('like', (data) => {
    if (typeof data.likeCount === 'number') {
            // Check setting
        if (confLike) {
        addMessageLike(data);
        }
    }
})

I changed to this:
var list_users_likes = new Object();
connection.on('like', data => {
if (confLike) {
	if (list_users_likes.hasOwnProperty(data.uniqueId)) {
		list_users_likes[data.uniqueId].addTime();
		list_users_likes[data.uniqueId].up(data.likeCount);
	} else {
		list_users_likes[data.uniqueId] = {
			total: 0,
			uniqueId: data.uniqueId,
			dropLikes(total) {
				addMessage(this.uniqueId, total); //do something you need
				this.timeoutID = undefined;
				delete list_users_likes[this.uniqueId];
			},
			addTime() {
				clearTimeout(this.timeoutID);
			},
			up(like) {
				this.total += like;
				this.timeoutID = setTimeout((total) => {
					this.dropLikes(total);
				}, 4000, this.total) //4 seconds interval
			}
		};
		list_users_likes[data.uniqueId].up(data.likeCount);
	}
}})

Honestly, I don't even have any idea of what I modified, that's why I was confused 😅.

😅
As far as I understand, that library has not been updated for a long time and does not work
In the case of likes, you just need to make sure that:

'data' comes in the right format
slightly change code
(for example)

var list_users_likes = new Object();
connection.on('like', data => {
if (confLike) {
	if (list_users_likes.hasOwnProperty(data.uniqueId)) {
		list_users_likes[data.uniqueId].addTime();
		list_users_likes[data.uniqueId].up(data);
	} else {
		list_users_likes[data.uniqueId] = {
			total: 0,
			uniqueId: data.uniqueId,
			dropLikes(data) {
				addMessage(data); //do something you need
				this.timeoutID = undefined;
				delete list_users_likes[this.uniqueId];
			},
			addTime() {
				clearTimeout(this.timeoutID);
			},
			up(data) {
				this.total += data.likeCount;
				data.likeCount = this.total;
				this.timeoutID = setTimeout((data) => {
					this.dropLikes(data);
				}, 4000, data) //4 seconds interval
			}
		};
		list_users_likes[data.uniqueId].up(data);
	}
}})

addMessage or addMessageLike?

OMG it worked! Thank you very much!!! the addMessageLike is actually a custom function I made to display the data for likes when only the confLike is true. Otherwise, it needs both confLike and confComment to work which I don't want because that way it will show the comments as well when I only want to see the likes. 😁

I'm glad that I can some help you


404 Response to 'wake'

After working perfectly for months, in the last few days I have been getting "Error response: 404" to 'wake' commands.
'vehicle list' still works.
I assume this is because of a Tesla API change?

I have the same issues. I am still figuring out what's going on.

Easiest way:
1 Redeploy all nodes
2 Open faulty tesla node in editor
3 Reselect your vehicle and click done
4 repeat step 2 und 3 for every other tesla node in your flows
5 Redeploy all nodes

Yes That was it.
Thanks

Nice1 guys.


Running GPS-SDR-SIM without adding noise

GPS-SDR-SIM adds noise in band purposefully.
I want to observe its BPSK signal.
How can I turn off adding noise property?

gps-sdr-sim generates pure baseband signals. No noise is added.

gps-sdr-sim generates pure baseband signals. No noise is added.

I shared output of the HackRF transmitting signal produced by the GPS-SDR-SIM.
As you can see, the waveform is not as it is expected.
I would expect a waveform as shown below.

Yes, that's exactly what you can expect to see. It seems that the HackRF did not transmit the baseband samples properly. You have to set the I/Q sample format to 8-bit with -b option for the HackRF.

I get similar results using the USRP B200 mini-i regardless of whether I use 16-bit or 8-bit. My receiver is reading the signal and getting a fix so perhaps not an issue, though I have to wonder if there's any implication for C/N.

Here's a sample PSD plot of the L1 C/A signal with a 2.6MHz sampling rate and a 2.5MHz double-side bandwidth. You can see the main lobe on center and partial side lobes on both ends.

why is it so noisy? I tested another commercial GPS simulator and it gives an output as shown below.

Here's a sample PSD plot of the L1 C/A signal with a 2.6MHz sampling rate and a 2.5MHz double-side bandwidth. You can see the main lobe on center and partial side lobes on both ends.

@osqzss
Is the bandwidth of the signal 3.6MHz? If I see the span correctly which is 6MHz, then the span must be 3.6MHz?

I think the transmitter and the receiver component added noise can't be neglected. Have you checked probing the signal in the software without transmitting it?

I think  ...

GPS uses pseudo-noise 1023-bit  technology.
By connecting the output RF of the HackRF transmitter Real-time GPS signal simulator based on GPS-SDR-SIM via an attenuator to the NEO-M8T antenna input for 1.5 hours and turning on all corrections Solution: SINGLE RTKLIB make sure that during this time the total error (RMS) ~ 0.1 meters.

If use USRP B200 (16-bit) instead of HackRF (8-bit), then instead of RMS~0.1m get RMS<0.01m
If your simulator has RMS>0.1m (1m or more) then this simulator is not correct.


change latest version ID on crate to match CrateDetails.latest_version

in all release-lists the one version we show should be the latest version (non-yanked and non-prerelease) to match the logic in the rustdoc page header. Otherwise we are showing releases in the lists that directly lead to a page with a go to latest version link.
Now crates.latest_version_id is calculated with the same logic and updated after each build.
This is a preparation for #708, which I would do when #1521 is merged. Then it's just switching the calculated subquery to just using crates.latest_version_id.
The data migration is a very simple impl, and takes 15 minutes on my machine (with macos virtualized docker). IMHO it's fine running that long on prod, of course I can improve speed when needed.

@Nemo157 would you mind helping review this?

LGTM, tested locally and appears to behave correctly.
awesome, thanks!

I assume for the migration we just need to stop building, {update server, run migration} (in parallel/either order), then start building again?

yep, that would be one way.
Another way would be so move the data migration after the deploy/restart. Since we're only updating data and no schema, this would be fine.
The migration is not really optimized, so it will take some time (locally it were 10 minutes)
I'll fix the conflicts with master, then we can merge.

This seems to be tested and approved now,
I'll merge it when I have time to also deploy it, so this migration is not blocking anyone.


Issue with tags

brew doctor output
-

Verification

[X] My "brew doctor output" above says Your system is ready to brew. and am still able to reproduce my issue.
[X] I ran brew update twice and am still able to reproduce my issue.
[X] This issue's title and/or description do not reference a single formula e.g. brew install wget. If they do, open an issue at https://github.com/Homebrew/homebrew-core/issues/new/choose instead.

brew config output
-

What were you trying to do (and why)?
Install homebrew on an arm machine, I followed the instructions in the README but the install script has changed and now check for tags which are not present as per  https://github.com/Homebrew/install/commit/8eb03394e3f4081c1519fc01bb562faf0c6fbd14
What happened (include all command output)?
Failed to query latest Homebrew/brew Git tag.
What did you expect to happen?
Homebrew to install
Step-by-step reproduction instructions (by running brew commands)
git clone https://github.com/rbenv/ruby-build.git "$(rbenv root)"/plugins/ruby-build  # apt's ruby-build is too out of date
rbenv install 2.6.10
rbenv shell 2.6.10
export HOMEBREW_BREW_GIT_REMOTE=https://github.com/huyz/brew-for-linux-arm
export HOMEBREW_DEVELOPER=1
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh | sed '532s/abort/warn/')"
[...]
==> Downloading and installing Homebrew...
Failed to query latest Homebrew/brew Git tag.

And with set -x you can see where it fails::
++ /usr/bin/git tag --list --sort=-version:refname
+ LATEST_GIT_TAG=
+ [[ -z '' ]]
+ abort 'Failed to query latest Homebrew/brew Git tag.'
+ printf '%s\n' 'Failed to query latest Homebrew/brew Git tag.'
Failed to query latest Homebrew/brew Git tag.

@lnlyssg It's require at least one tag in the repo. You can fork it and put the tag, or just use mine as temporary workaround. https://github.com/sergeycherepanov/linuxbrew-arm

Hi @lnlyssg,
It's require at least one tag in the repo. You can fork it and put the tag, or just use mine as temporary workaround. https://github.com/sergeycherepanov/linuxbrew-arm
cc @huyz

@sergeycherepanov I ended up making my own fork from brew then adding the extras from this repo to it back in April - https://github.com/lnlyssg/brew

Oh I missed this issue somehow. I'll take a look at it


Question about the reports

Hi,
Sorry, some more questions. This should be easier though.
As output of the script I can read the following:
...
 Initial Found Files:[   757]
          - Bad Files:[     7] = [   750]
          Note: some Bad files may no longer exist!
Photos count:
                Local:[   752]
               Flickr:[  6582]
Not in sets on Flickr:[   410]
 [32m[1369][2018.02.11 13:55:15]:[14886      ] [0m[PRINT   ]:[uploadr] --------- (V2.6.7) End time: 2018.02.11 13:55:15 ---------

What does bad files mean please? :)
Thanks for all the good work!
Kind Regards,
Ze

Check the explanation for "badfiles" on "Usage Arguments".
Also discussed on issue #27.
Flickr "rejects" some files due to their type. So, instead of continuously attempting to load them on each run, the tool saves them and it bypasses them.
An upcoming version will also cater for "Error 8: File is too large" discussed on issue #37.
Anyhow you can:

disable this control.check by not using the -b option.
if, from time to time, you want to "reset" and re-attempt to upload such files, you can use the  "-c" option to cleanup such badflies.

Further notice on your example output:

Local should yield 750 but this number may be off by 1 or 2. Still figuring it out to fix it.
I've also noticed that the Flickr number reported by flickr as the number of pics found on flickr is sometimes off by 1. Can't to much here as this is the number returned by flickr itself.
Finally "Not in sets on Flickr" indicates just that.  What I do normally do is to delete such pics from Flickr directly from the flickr/organize interface. But I've seen other users which have other tools uploading pics to Flickr ignore this number.

Hi,
thanks for the explanationS. I'll follow on this other thread then to not mix things up too much.
Ze


Sync-ify? Await result? Lost tbh.

Since I'm using svgo as a step in a rather crude way due to tech constraints (https://github.com/sindresorhus/gulp-template), returning values would be a godsend.
Here's a snippet of what I have so far:
const optimizeSvg = svgString => {
  const svgo = new SVGO();

  let optimizedSvgString;
  svgo.optimize(svgString, output => (optimizedSvgString = output.data));
  // async problem
  return optimizedSvgString;
};

Trouble is, of course, that complex SVG graphics take some time to parse and optimized ends up being undefined in some cases.
Would async/await help here? If so, any ideas on how to manage it?

Use callbacks instead of sync return. Async/await should help when the promisified version will be released. (Or you can promisify it yourself.)

Thanks for the prompt reply!
I should maybe post this to stackoverflow instead of clogging up the repo, but gonna try it anyway :)
Thing is, the template engine expects a static data object. I managed to "fool" it by using a getter:
const tpl = {
  get data() {
    return {
      md: markdownToHtml,
      svg: getSvg,
    };
  },
};

which is then used as .pipe(template(tpl.data)) in the gulp pipeline. The caller looks like this:
const getSvg = (filename, uriEncode) => {
  const svgString = fs.readFileSync(`${path.src.svg}${filename}.svg`, 'utf-8');
  return optimizeSvg(svgString, uriEncode);
};

So in the end I need a string return value in the tpl.data(filename) call.
If you have any ideas I'd be extremely grateful!

Relevant PR for imagemin-svgo: https://github.com/imagemin/imagemin-svgo/pull/27

API is now synchronous


Is there any feature we can use user model as Favoriteability and Favoriteable? Actually I want one user can favorite to another user

Detailed description
Provide a detailed description of the change or addition you are proposing.
Make it clear if the issue is a bug, an enhancement or just a question.
Context
Why is this change important to you? How would you use it?
How can it benefit other users?
Possible implementation
Not obligatory, but suggest an idea for implementing addition or change.
Your environment
Include as many relevant details about the environment you experienced the bug in and how to reproduce it.

Version used (e.g. PHP 5.6, HHVM 3):
Operating system and version (e.g. Ubuntu 16.04, Windows 7):
Link to your project:
...
...

+1


Added the ability to send the rf power value.

The set power setting can be transmitted. It was tested with an IC-7300 only via rigctld. So only rigctl is implemented for the time being. Maybe it helps to get a step further.

Thanks for the PR!


JOSE Review #206 Tests?

Was this addressed already? Don't see automated tests, etc. in source tree.
https://github.com/openjournals/jose-reviews/issues/207

For example: .github/workflows/test_examples.yml


[core-client] bump dependency core-auth version to ^1.4.0

for the new claims property GetTokenOptions.

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


bug: segmentation fault

reproduce:

save minimal code example https://github.com/webui-dev/webui/issues/231#issuecomment-1732844452

import { WebUI } from "./deno-webui/mod.ts";

const firstWindow = new WebUI();

let taskId = 0;
firstWindow.bind('saveScene', () => {
  taskId++;
  (async () => {
    await new Promise(resolve => setTimeout(resolve, 100));
    firstWindow.script(`alert('${taskId} completed at ${new Date().toLocaleTimeString()}')`);
  })();
  return { taskId };
});

try {
  await firstWindow.show(`<html>${new Date().toLocaleTimeString()}<script src="/webui.js"></script></html>`);
} catch (err) {
  console.error(err);
}

await WebUI.wait();

deno run --allow-all --unstable main.ts

Open devtools and run

window.webui.call('saveScene', '')

alert window will appear as expected

run the same command again

window.webui.call('saveScene', '')

unfortunatley, app will be closed with error in terminal: segmentation fault

So no more webui.call ? All bindings are directly attached to window?

Also can I do await myBackend() ?

So no more webui.call ? All bindings are directly attached to window?

webui.call is still possible.
If the function is globally available it's directly attached to the window. You cann also call it via the webui object. E.g., webui.my_backend_func.
Here is a reference to a discussion regarding this feature impelmentation: https://github.com/webui-dev/webui/discussions/263#discussioncomment-7411967

Thanks this issue seem to be solved, it reads the arguments, but still doesn't work with async functions: https://github.com/webui-dev/deno-webui/issues/22

Apparently this issue was happening because of error in my code described above and since it was not properly handled it was leading to crash; but now I noticed this error also appear spontaneously when I don't execute any functions, that we can debug in separate issue https://github.com/webui-dev/deno-webui/issues/24


Migration '0013_auto_20150726_2129.py' is created in app 'cms' after run command 'makemigrations'

I use Django==1.8.3, django-cms==3.1.2.
I get the creation of migration after the running comand 'python manage.py makemigrations':
Migrations for 'cms':
  0013_auto_20150726_2129.py:
    - Change managers on pageuser

I'm in the same boot.
Django==1.8.3, django-cms==3.1.2
Migrations for 'cms':
0013_auto_20150730_2004.py:
- Change managers on pageuser
# -*- coding: utf-8 -*-
from __future__ import unicode_literals

from django.db import models, migrations
import django.contrib.auth.models

class Migration(migrations.Migration):

    dependencies = [
        ('cms', '0012_auto_20150607_2207'),
    ]

    operations = [
        migrations.AlterModelManagers(
            name='pageuser',
            managers=[
                ('objects', django.contrib.auth.models.UserManager()),
            ],
        ),
    ]

@vivazzi @saeedsq this has been fixed in support branch and will be released in 3.1.3


Showcase Submission for challenges/96-visualizing-digits-of-pi

Thank you Juan Carlos Ponce Campuzano for your contribution! A member of the Coding Train team will review it shortly.

Monkey Typing One million digits of Pi
Juan Carlos Ponce Campuzano

hah, love this!


FirstHibernateProgram module update

Main:

FirstHibernateProgram module have trouble with numeration(id) of Employers in the database when they are pushing to the database.
FirstHibernateProgram module can't push two Employers with right id column value without "@GeneratedValue(generator = "incrementor")" META-INF. It has to be done in condition of one Transaction.

Solution
Please create clear JPA for easy use of some statements. ETC.
My alternative:

No any :D

Additional context:
Thanks for any of your help. You can always contact with me her<EMAIL_ADDRESS>Have a good night/day.

MESSAGE FIX:

Main part fix:
There is no troubles with use of "@GeneratedValue(generator = "incrementor")" META-INF.

CLOSED
This issue was get in attention and resolved for module: "FirstHibernateProgram".
Date of made modification to files is:
Oct 27, 2019 - Oct 31, 2019


Training on my own dataset

Hi @AliaksandrSiarohin
Great work done, thank you! I have some questions regarding training on my own dataset:

If I collected my dataset videos, divided each video into its folders with .png format and left only one head on each frame (frames are consecutive only other people were overdrawn), should I resize the image by cropping the part that contains head (256*256) or should I resize the whole scene?
Is it possible and how to use your pre-trained model and continue to train on my own (described above) dataset?

Thank you in advance!

Thank you for your interest

Only the head.
Yes. When training specify - - checkpoint  option and increase the number of epochs in your config file.

Hi @AliaksandrSiarohin
Thank you, I've dataset preparation and will try to train the way you said. Please, do not close the thread, as I maybe will write some results here.


Power Rename - Unexpected error closing window

Microsoft PowerToys version
"0.62.1"
Running as admin

[X] Yes

Area(s) with issue?
PowerRename
Steps to reproduce
If I close the power rename window directly after opening any file it gives an error, if I resize the window once horizontally or vertically then it gives an error. If I do the same thing twice then it works fine ( like resizing twice ), if I close it with full screen it gives an error, and if I restore the window size after full screen it works fine.

✔ Expected Behavior
Window will close without any error
❌ Actual Behavior
After closing the window gives an error
Other Software
No response

Are you still experiencing this issue? /needinfo


Cluster client connection discovery issues

The documentation currently claims:

/connection returns json of the form { "nodes": [...]}. It actually returns an object of the form {"address": [ip:port ..], "dns": [dns:port]}
clients using the java client should connect using the addContactPointsWithPorts() builder method.  This is incorrect.  Clients should us addContactPoints() to supply hosts and withPort() to provide a unique port for the cluster

I also propose as part of this ticket to update the connection endpoint to return two new fields "port" and "hosts" - potentially deprecating the old fields - which will facilitate easier use for most cassandra client services.  Thoughts?

I can send a PR for this if no one objects.

That'd be great, feel free to send a PR. It sounds like the docs just fell out of date.


Add git support

It would be good to see the git status of a file within the file explorer.

Was this implemented or scrapped? Its not mentioned in the docs

Hey @Strosel, this was never fully implemented. I’ll reopen the issue as it is something that would be useful to a lot of folks. I’m currently working in my spare time on supporting more list styles, once this is done I’ll give this a try. I also accept contributions if ever you want to give it a shot!
I started experimenting with synchronous support in the git-poc branch, but the performance was not really good. It would be interesting to experiment with an async approach.


After some inactivity an Internal Server Error is thrown

Error log
2024-09-18T08:21:01.358816214Z [SQL: SELECT collection.collection_id, collection.data_version, collection.collected_at, collection.duration, collection.fleet_count, collection.user_count, collection.tournament_running, collection.max_tournament_battle_attempts
2024-09-18T08:21:01.358829364Z FROM collection
2024-09-18T08:21:01.358838693Z WHERE EXTRACT(month FROM collection.collected_at) != EXTRACT(month FROM collection.collected_at + $1::INTERVAL) ORDER BY collection.collected_at ASC
2024-09-18T08:21:01.358867100Z LIMIT $2::INTEGER OFFSET $3::INTEGER]
2024-09-18T08:21:01.358883918Z [parameters: (datetime.timedelta(seconds=3600), 1, 0)]
2024-09-18T08:21:01.358893428Z (Background on this error at: https://sqlalche.me/e/20/dbapi)
2024-09-18T08:21:01.358903743Z INFO: x.x.x.x:y - "GET /collections/?interval=month&desc=false&skip=0&take=1 HTTP/1.0" 500 Internal Server Error
2024-09-18T08:21:01.376709688Z ERROR: Exception in ASGI application
2024-09-18T08:21:01.376753693Z ConnectionResetError: [Errno 104] Connection reset by peer
2024-09-18T08:21:01.376761079Z
2024-09-18T08:21:01.376767083Z The above exception was the direct cause of the following exception:
2024-09-18T08:21:01.376772606Z
2024-09-18T08:21:01.376777741Z Traceback (most recent call last):
2024-09-18T08:21:01.376783596Z File "/usr/local/lib/python3.12/site-packages/sqlalchemy/dialects/postgresql/asyncpg.py", line 835, in _start_transaction
2024-09-18T08:21:01.376790000Z await self._transaction.start()
2024-09-18T08:21:01.376818762Z File "/usr/local/lib/python3.12/site-packages/asyncpg/transaction.py", line 146, in start
2024-09-18T08:21:01.376824626Z await self._connection.execute(query)
2024-09-18T08:21:01.376829759Z File "/usr/local/lib/python3.12/site-packages/asyncpg/connection.py", line 350, in execute
2024-09-18T08:21:01.376835000Z result = await self._protocol.query(query, timeout)
2024-09-18T08:21:01.376839991Z ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
2024-09-18T08:21:01.376844943Z File "asyncpg/protocol/protocol.pyx", line 374, in query
2024-09-18T08:21:01.376850136Z asyncpg.exceptions.ConnectionDoesNotExistError: connection was closed in the middle of operation
2024-09-18T08:21:01.376855817Z
2024-09-18T08:21:01.376898211Z The above exception was the direct cause of the following exception:
2024-09-18T08:21:01.376903596Z
2024-09-18T08:21:01.376908038Z Traceback (most recent call last):
2024-09-18T08:21:01.376912483Z File "/usr/local/lib/python3.12/site-packages/sqlalchemy/engine/base.py", line 1967, in _exec_single_context
2024-09-18T08:21:01.376917160Z self.dialect.do_execute(
2024-09-18T08:21:01.376922018Z File "/usr/local/lib/python3.12/site-packages/sqlalchemy/engine/default.py", line 941, in do_execute
2024-09-18T08:21:01.376927107Z cursor.execute(statement, parameters)
2024-09-18T08:21:01.376932350Z File "/usr/local/lib/python3.12/site-packages/sqlalchemy/dialects/postgresql/asyncpg.py", line 572, in execute
2024-09-18T08:21:01.376937380Z self._adapt_connection.await_(
2024-09-18T08:21:01.376942272Z File "/usr/local/lib/python3.12/site-packages/sqlalchemy/util/_concurrency_py3k.py", line 132, in await_only
2024-09-18T08:21:01.376947335Z return current.parent.switch(awaitable) # type: ignore[no-any-return,attr-defined] # noqa: E501
2024-09-18T08:21:01.376952656Z ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
2024-09-18T08:21:01.376957059Z File "/usr/local/lib/python3.12/site-packages/sqlalchemy/util/_concurrency_py3k.py", line 196, in greenlet_spawn
2024-09-18T08:21:01.376962274Z value = await result
2024-09-18T08:21:01.376967200Z ^^^^^^^^^^^^
2024-09-18T08:21:01.376978838Z File "/usr/local/lib/python3.12/site-packages/sqlalchemy/dialects/postgresql/asyncpg.py", line 508, in _prepare_and_execute
2024-09-18T08:21:01.376984373Z await adapt_connection._start_transaction()
2024-09-18T08:21:01.376992635Z File "/usr/local/lib/python3.12/site-packages/sqlalchemy/dialects/postgresql/asyncpg.py", line 837, in _start_transaction
2024-09-18T08:21:01.376997943Z self._handle_exception(error)
2024-09-18T08:21:01.377002591Z File "/usr/local/lib/python3.12/site-packages/sqlalchemy/dialects/postgresql/asyncpg.py", line 784, in _handle_exception
2024-09-18T08:21:01.377008457Z raise translated_error from error
2024-09-18T08:21:01.377013778Z sqlalchemy.dialects.postgresql.asyncpg.AsyncAdapt_asyncpg_dbapi.Error: <class 'asyncpg.exceptions.ConnectionDoesNotExistError'>: connection was closed in the middle of operation
2024-09-18T08:21:01.377028173Z
2024-09-18T08:21:01.377032971Z The above exception was the direct cause of the following exception:
2024-09-18T08:21:01.377037714Z
2024-09-18T08:21:01.377042127Z Traceback (most recent call last):
2024-09-18T08:21:01.377046696Z File "/usr/local/lib/python3.12/site-packages/uvicorn/protocols/http/httptools_impl.py", line 401, in run_asgi
2024-09-18T08:21:01.377051835Z result = await app( # type: ignore[func-returns-value]
2024-09-18T08:21:01.377056477Z ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
2024-09-18T08:21:01.377061179Z File "/usr/local/lib/python3.12/site-packages/uvicorn/middleware/proxy_headers.py", line 70, in __call__
2024-09-18T08:21:01.377065880Z return await self.app(scope, receive, send)
2024-09-18T08:21:01.377070245Z ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
2024-09-18T08:21:01.377074816Z File "/usr/local/lib/python3.12/site-packages/fastapi/applications.py", line 1054, in __call__
2024-09-18T08:21:01.377079941Z await super().__call__(scope, receive, send)
2024-09-18T08:21:01.377084414Z File "/usr/local/lib/python3.12/site-packages/starlette/applications.py", line 123, in __call__
2024-09-18T08:21:01.377089463Z await self.middleware_stack(scope, receive, send)
2024-09-18T08:21:01.377094673Z File "/usr/local/lib/python3.12/site-packages/starlette/middleware/errors.py", line 186, in __call__
2024-09-18T08:21:01.377099623Z raise exc
2024-09-18T08:21:01.377104181Z File "/usr/local/lib/python3.12/site-packages/starlette/middleware/errors.py", line 164, in __call__
2024-09-18T08:21:01.377109373Z await self.app(scope, receive, _send)
2024-09-18T08:21:01.377113787Z File "/usr/local/lib/python3.12/site-packages/starlette/middleware/gzip.py", line 24, in __call__
2024-09-18T08:21:01.377118448Z await responder(scope, receive, send)
2024-09-18T08:21:01.377123325Z File "/usr/local/lib/python3.12/site-packages/starlette/middleware/gzip.py", line 44, in __call__
2024-09-18T08:21:01.377128315Z await self.app(scope, receive, self.send_with_gzip)
2024-09-18T08:21:01.377133617Z File "/usr/local/lib/python3.12/site-packages/starlette/middleware/exceptions.py", line 65, in __call__
2024-09-18T08:21:01.377138569Z await wrap_app_handling_exceptions(self.app, conn)(scope, receive, send)
2024-09-18T08:21:01.377144296Z File "/usr/local/lib/python3.12/site-packages/starlette/_exception_handler.py", line 64, in wrapped_app
2024-09-18T08:21:01.377149265Z raise exc
2024-09-18T08:21:01.377154009Z File "/usr/local/lib/python3.12/site-packages/starlette/_exception_handler.py", line 53, in wrapped_app
2024-09-18T08:21:01.377159153Z await app(scope, receive, sender)
2024-09-18T08:21:01.377164071Z File "/usr/local/lib/python3.12/site-packages/starlette/routing.py", line 754, in __call__
2024-09-18T08:21:01.377176070Z await self.middleware_stack(scope, receive, send)
2024-09-18T08:21:01.377181279Z File "/usr/local/lib/python3.12/site-packages/starlette/routing.py", line 774, in app
2024-09-18T08:21:01.377186165Z await route.handle(scope, receive, send)
2024-09-18T08:21:01.377202625Z File "/usr/local/lib/python3.12/site-packages/starlette/routing.py", line 295, in handle
2024-09-18T08:21:01.377208121Z await self.app(scope, receive, send)
2024-09-18T08:21:01.377212745Z File "/usr/local/lib/python3.12/site-packages/starlette/routing.py", line 77, in app
2024-09-18T08:21:01.377217686Z await wrap_app_handling_exceptions(app, request)(scope, receive, send)
2024-09-18T08:21:01.377222536Z File "/usr/local/lib/python3.12/site-packages/starlette/_exception_handler.py", line 64, in wrapped_app
2024-09-18T08:21:01.377228063Z raise exc
2024-09-18T08:21:01.377232931Z File "/usr/local/lib/python3.12/site-packages/starlette/_exception_handler.py", line 53, in wrapped_app
2024-09-18T08:21:01.377238140Z await app(scope, receive, sender)
2024-09-18T08:21:01.377243173Z File "/usr/local/lib/python3.12/site-packages/starlette/routing.py", line 74, in app
2024-09-18T08:21:01.377248315Z response = await f(request)
2024-09-18T08:21:01.377253154Z ^^^^^^^^^^^^^^^^
2024-09-18T08:21:01.377257898Z File "/usr/local/lib/python3.12/site-packages/fastapi/routing.py", line 278, in app
2024-09-18T08:21:01.377262942Z raw_response = await run_endpoint_function(
2024-09-18T08:21:01.377268331Z ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
2024-09-18T08:21:01.377273110Z File "/usr/local/lib/python3.12/site-packages/fastapi/routing.py", line 191, in run_endpoint_function
2024-09-18T08:21:01.377277989Z return await dependant.call(**values)
2024-09-18T08:21:01.377282434Z ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
2024-09-18T08:21:01.377287107Z File "/app/src/api/routers/collections.py", line 39, in get_collections
2024-09-18T08:21:01.377292269Z collections = await crud.get_collections(
2024-09-18T08:21:01.377297275Z ^^^^^^^^^^^^^^^^^^^^^^^^^^^
2024-09-18T08:21:01.377302179Z File "/app/src/api/database/crud.py", line 212, in get_collections
2024-09-18T08:21:01.377307480Z results = await session.exec(query)
2024-09-18T08:21:01.377312599Z ^^^^^^^^^^^^^^^^^^^^^^^^^
2024-09-18T08:21:01.377317241Z File "/usr/local/lib/python3.12/site-packages/sqlmodel/ext/asyncio/session.py", line 81, in exec
2024-09-18T08:21:01.377324770Z result = await greenlet_spawn(
2024-09-18T08:21:01.377329314Z ^^^^^^^^^^^^^^^^^^^^^
2024-09-18T08:21:01.377333735Z File "/usr/local/lib/python3.12/site-packages/sqlalchemy/util/_concurrency_py3k.py", line 203, in greenlet_spawn
2024-09-18T08:21:01.377347108Z result = context.switch(value)
2024-09-18T08:21:01.377351973Z ^^^^^^^^^^^^^^^^^^^^^
2024-09-18T08:21:01.377357170Z File "/usr/local/lib/python3.12/site-packages/sqlmodel/orm/session.py", line 66, in exec
2024-09-18T08:21:01.377362153Z results = super().execute(
2024-09-18T08:21:01.377366973Z ^^^^^^^^^^^^^^^^
2024-09-18T08:21:01.377378523Z File "/usr/local/lib/python3.12/site-packages/sqlalchemy/orm/session.py", line 2362, in execute
2024-09-18T08:21:01.377384142Z return self._execute_internal(
2024-09-18T08:21:01.377389149Z ^^^^^^^^^^^^^^^^^^^^^^^
2024-09-18T08:21:01.377394164Z File "/usr/local/lib/python3.12/site-packages/sqlalchemy/orm/session.py", line 2247, in _execute_internal
2024-09-18T08:21:01.377399010Z result: Result[Any] = compile_state_cls.orm_execute_statement(
2024-09-18T08:21:01.377403822Z ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
2024-09-18T08:21:01.377408550Z File "/usr/local/lib/python3.12/site-packages/sqlalchemy/orm/context.py", line 293, in orm_execute_statement
2024-09-18T08:21:01.377413706Z result = conn.execute(
2024-09-18T08:21:01.377418280Z ^^^^^^^^^^^^^
2024-09-18T08:21:01.377422693Z File "/usr/local/lib/python3.12/site-packages/sqlalchemy/engine/base.py", line 1418, in execute
2024-09-18T08:21:01.377427989Z return meth(
2024-09-18T08:21:01.377432973Z ^^^^^
2024-09-18T08:21:01.377438155Z File "/usr/local/lib/python3.12/site-packages/sqlalchemy/sql/elements.py", line 515, in _execute_on_connection
2024-09-18T08:21:01.377443663Z return connection._execute_clauseelement(
2024-09-18T08:21:01.377448957Z ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
2024-09-18T08:21:01.377453900Z File "/usr/local/lib/python3.12/site-packages/sqlalchemy/engine/base.py", line 1640, in _execute_clauseelement
2024-09-18T08:21:01.377458947Z ret = self._execute_context(
2024-09-18T08:21:01.377463965Z ^^^^^^^^^^^^^^^^^^^^^^
2024-09-18T08:21:01.377468391Z File "/usr/local/lib/python3.12/site-packages/sqlalchemy/engine/base.py", line 1846, in _execute_context
2024-09-18T08:21:01.377473713Z return self._exec_single_context(
2024-09-18T08:21:01.377478856Z ^^^^^^^^^^^^^^^^^^^^^^^^^^
2024-09-18T08:21:01.377483560Z File "/usr/local/lib/python3.12/site-packages/sqlalchemy/engine/base.py", line 1986, in _exec_single_context
2024-09-18T08:21:01.377488600Z self._handle_dbapi_exception(
2024-09-18T08:21:01.377493226Z File "/usr/local/lib/python3.12/site-packages/sqlalchemy/engine/base.py", line 2355, in _handle_dbapi_exception
2024-09-18T08:21:01.377498014Z raise sqlalchemy_exception.with_traceback(exc_info[2]) from e
2024-09-18T08:21:01.377504356Z File "/usr/local/lib/python3.12/site-packages/sqlalchemy/engine/base.py", line 1967, in _exec_single_context
2024-09-18T08:21:01.377528678Z self.dialect.do_execute(
2024-09-18T08:21:01.377534135Z File "/usr/local/lib/python3.12/site-packages/sqlalchemy/engine/default.py", line 941, in do_execute
2024-09-18T08:21:01.377539437Z cursor.execute(statement, parameters)
2024-09-18T08:21:01.377544472Z File "/usr/local/lib/python3.12/site-packages/sqlalchemy/dialects/postgresql/asyncpg.py", line 572, in execute
2024-09-18T08:21:01.377549558Z self._adapt_connection.await_(
2024-09-18T08:21:01.377554363Z File "/usr/local/lib/python3.12/site-packages/sqlalchemy/util/_concurrency_py3k.py", line 132, in await_only
2024-09-18T08:21:01.377559187Z return current.parent.switch(awaitable) # type: ignore[no-any-return,attr-defined] # noqa: E501
2024-09-18T08:21:01.377564078Z ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
2024-09-18T08:21:01.377568759Z File "/usr/local/lib/python3.12/site-packages/sqlalchemy/util/_concurrency_py3k.py", line 196, in greenlet_spawn
2024-09-18T08:21:01.377574667Z value = await result
2024-09-18T08:21:01.377579555Z ^^^^^^^^^^^^
2024-09-18T08:21:01.377584098Z File "/usr/local/lib/python3.12/site-packages/sqlalchemy/dialects/postgresql/asyncpg.py", line 508, in _prepare_and_execute
2024-09-18T08:21:01.377589121Z await adapt_connection._start_transaction()
2024-09-18T08:21:01.377594099Z File "/usr/local/lib/python3.12/site-packages/sqlalchemy/dialects/postgresql/asyncpg.py", line 837, in _start_transaction
2024-09-18T08:21:01.377599220Z self._handle_exception(error)
2024-09-18T08:21:01.377603903Z File "/usr/local/lib/python3.12/site-packages/sqlalchemy/dialects/postgresql/asyncpg.py", line 784, in _handle_exception
2024-09-18T08:21:01.377608716Z raise translated_error from error
2024-09-18T08:21:01.377613800Z sqlalchemy.exc.DBAPIError: (sqlalchemy.dialects.postgresql.asyncpg.Error) <class 'asyncpg.exceptions.ConnectionDoesNotExistError'>: connection was closed in the middle of operation
2024-09-18T08:21:01.377619460Z [SQL: SELECT collection.collection_id, collection.data_version, collection.collected_at, collection.duration, collection.fleet_count, collection.user_count, collection.tournament_running, collection.max_tournament_battle_attempts
2024-09-18T08:21:01.377624866Z FROM collection
2024-09-18T08:21:01.377629536Z WHERE EXTRACT(month FROM collection.collected_at) != EXTRACT(month FROM collection.collected_at + $1::INTERVAL) ORDER BY collection.collected_at ASC
2024-09-18T08:21:01.377634389Z LIMIT $2::INTEGER OFFSET $3::INTEGER]
2024-09-18T08:21:01.377639256Z [parameters: (datetime.timedelta(seconds=3600), 1, 0)]
2024-09-18T08:21:01.377644307Z (Background on this error at: https://sqlalche.me/e/20/dbapi)

Probably fixed with v1.5.2


net: promiscuous: Fix crash in promiscuous mode

When a packet can't be cloned we crash as we try to initialize the cursor on a nullptr. We should check if we have a valid pointer, and if we don't we drop the packet along with a warning.

Fixed the code formatting, let me know if there's anything else you need me to change.

There is still mismatch for your signed-off-by, please see
https://github.com/zephyrproject-rtos/zephyr/actions/runs/6183457730/job/16787172023?pr=62582

@icsys-aal please check the compliance issues, the checker is very picky about your commit author name, it should match the signed-off-by


Install of 1.6.2 through Homebrew is failing

On two separate macOS machines, one with fresh brew install xcresultparser and one with brew upgrade xcresultparser, running into build issues with 1.6.2 that just came out to fix the DTD problem.

==> Upgrading a7ex/formulae/xcresultparser
1.6.0 -> 1.6.2
==> make install prefix=/opt/homebrew/Cellar/xcresultparser/1.6.2
Last 15 lines from /Users/mark.thormann/Library/Logs/Homebrew/xcresultparser/01.make:
Building targets in dependency order
Target dependency graph (10 targets)
0%: Gather provisioning inputs
0%: Create build description
0%: Discovering version info for swiftc
0%: Discovering version info for clang
0%: Discovering version info for ld
Build description signature: 8bf363b728c1427a1a4c5b54073e4b96
Build description path: /private/tmp/xcresultparser-20240614-29219-4nmvyk/xcresultparser-1.6.2/.build/apple/Intermediates.noindex/XCBuildData/8bf363b728c1427a1a4c5b54073e4b96.xcbuilddata
Missing package product 'SwiftLintBuildToolPlugin@11'
Missing package product 'SwiftLintBuildToolPlugin@11'
Build cancelled
make: *** [build] Error 1
If reporting this issue please do so at (not Homebrew/brew or Homebrew/homebrew-core):
https://github.com/a7ex/homebrew-formulae/issues

Running into same issue upgrading or installing 1.6.2:
➜  ~ brew install xcresultparser
==> Downloading https://formulae.brew.sh/api/formula.jws.json
############################################################################################################################################################################ 100.0%
==> Downloading https://formulae.brew.sh/api/cask.jws.json
############################################################################################################################################################################ 100.0%
==> Fetching a7ex/formulae/xcresultparser
==> Downloading https://github.com/a7ex/xcresultparser/archive/1.6.2.tar.gz
Already downloaded: /Users/mobileteam/Library/Caches/Homebrew/downloads/b8fc25d696ef53067929d5e1a7d849e692917485428f3bc83a01c9a296abab55--xcresultparser-1.6.2.tar.gz
==> Installing xcresultparser from a7ex/formulae
==> make install prefix=/opt/homebrew/Cellar/xcresultparser/1.6.2
Last 15 lines from /Users/mobileteam/Library/Logs/Homebrew/xcresultparser/01.make:
Building targets in dependency order
Target dependency graph (10 targets)
0%: Gather provisioning inputs
0%: Create build description
0%: Discovering version info for swiftc
0%: Discovering version info for clang
0%: Discovering version info for ld
Build description signature: bbdc5fa98b6338b7829dfc22a006e4ab

Build description path: /private/tmp/xcresultparser-20240614-5248-pcqueo/xcresultparser-1.6.2/.build/apple/Intermediates.noindex/XCBuildData/bbdc5fa98b6338b7829dfc22a006e4ab.xcbuilddata

Missing package product 'SwiftLintBuildToolPlugin@11'
Missing package product 'SwiftLintBuildToolPlugin@11'
Build cancelled
make: *** [build] Error 1

Same result trying to build command line as well with swift build --configuration release --disable-sandbox --arch arm64 --arch x86_64.
I was able to successfully build from Xcode though as a possible workaround (with a few lint warnings that I assume were normal).

I don't have any logs we can share, but we're experiencing the same thing in our pipeline for Outlook Mobile.

If anyone needs to work around this until a fix is posted, you can:

Clone the repo
Build the xcresultparser in Xcode (since command-line doesn't work)
Copy the output from DerivedData build product over to somewhere in the path where you need to use it (or over the existing version).

Worked for us anyways.

I'm getting similar trouble running the latest version because:
error: 'xcresultparser-1.6.2': package 'xcresultparser-1.6.2' is using Swift tools version 5.9.0 but the installed version is 5.8.1

The culprit is right here:
https://github.com/a7ex/xcresultparser/commit/1e1da8c066c429e1c77ea69bcd6f845d9f0516ca#diff-f913940c58e8744a2af1c68b909bb6383e49007e6c5a12fb03104a9006ae677eR1
Turns out you can't exactly ask Homebrew to install an arbitrary version of a package, so I made my own fork of the formulae repo, in which I reverted the last commit so it's pointing to version 1.6.1 of xcresultparser.
Feel free to use it as well!
brew tap xzoky/formulae-a7ex
brew install xzoky/formulae-a7ex/xcresultparser

⚠ I might delete the fork at some point after this issue is fixed.

I'm facing the same issue too using mint.
mint install a7ex/xcresultparser
🌱 Finding latest version of xcresultparser
🌱 Cloning xcresultparser 1.6.2
🌱 Resolving package
Fetching https://github.com/realm/SwiftLint.git
Fetching https://github.com/jpsim/Yams.git from cache
Fetching https://github.com/apple/swift-syntax.git from cache
Fetching https://github.com/jpsim/SourceKitten.git from cache
Fetching https://github.com/JohnSundell/CollectionConcurrencyKit.git from cache
Fetching https://github.com/scottrhoyt/SwiftyTextTable.git from cache
Fetched https://github.com/JohnSundell/CollectionConcurrencyKit.git from cache (1.34s)
Fetching https://github.com/krzyzanowskim/CryptoSwift.git from cache
Fetched https://github.com/krzyzanowskim/CryptoSwift.git from cache (0.50s)
Fetching https://github.com/apple/swift-argument-parser.git from cache
[1/132006] Fetching swiftlint
Fetched https://github.com/apple/swift-argument-parser.git from cache (0.94s)
Fetching https://github.com/drmohundro/SWXMLHash.git from cache
Fetched https://github.com/drmohundro/SWXMLHash.git from cache (0.65s)
Fetching https://github.com/davidahouse/XCResultKit.git from cache
Fetched https://github.com/davidahouse/XCResultKit.git from cache (0.54s)
warning: 'swiftlint': skipping cache due to an error: Failed to clone repository https://github.com/realm/SwiftLint.git:
    Cloning into bare repository '/Users/mac/Library/Caches/org.swift.swiftpm/repositories/SwiftLint-2ae81f81'...
    remote: Enumerating objects: 132006, done.
remote: Counting objects: 100% (3606/3606), done.
remote: Compressing objects: 100% (998/998), done.
fatal: write error: No space left on device.17 MiB | 23.39 MiB/s
    fatal: fetch-pack: invalid index-pack output
Fetched https://github.com/scottrhoyt/SwiftyTextTable.git from cache (15.04s)
Fetched https://github.com/jpsim/SourceKitten.git from cache (15.04s)
Fetched https://github.com/jpsim/Yams.git from cache (15.12s)
Fetched https://github.com/apple/swift-syntax.git from cache (15.89s)
Fetching https://github.com/realm/SwiftLint.git
warning: 'swiftlint': skipping cache due to an error: Failed to clone repository https://github.com/realm/SwiftLint.git:
    Cloning into bare repository '/Users/mac/Library/Caches/org.swift.swiftpm/repositories/SwiftLint-2ae81f81'...
    remote: Enumerating objects: 132006, done.
remote: Counting objects: 100% (3606/3606), done.
remote: Compressing objects: 100% (998/998), done.
fatal: write error: No space left on device.86 MiB | 25.04 MiB/s
    fatal: fetch-pack: invalid index-pack output
error: Failed to clone repository https://github.com/realm/SwiftLint.git:
    Cloning into bare repository '/private/var/folders/6_/t11661yd1_b35sbbws0xvggm0000gp/T/mint/github.com_a7ex_xcresultparser/.build/repositories/SwiftLint-2ae81f81'...
    remote: Enumerating objects: 132006, done.
remote: Counting objects: 100% (3605/3605), done.
remote: Compressing objects: 100% (991/991), done.
fatal: write error: No space left on device.81 MiB | 26.87 MiB/s
    fatal: fetch-pack: invalid index-pack output
🌱 Encountered error during "swift package resolve". Use --verbose to see full output
🌱  Failed to resolve xcresultparser 1.6.2 with SPM

I install the previous version using mint.
mint install<EMAIL_ADDRESS>🌱 Cloning xcresultparser 1.6.1
🌱 Resolving package
🌱 Building product xcresultparser
🌱 Installed xcresultparser 1.6.1
🌱 Linked xcresultparser 1.6.1 to /Users/mac/.mint/bin

So sorry, people. :-(
I just fixed it.
Introduced a lot of issues thanks to introducing SwiftLint... :-(
Heck, Apple or the Swift Project or whoever needs to do something to fix plugins. I also would like a better choice than swiftlint, as it starts to get annoying.
Why can't I have a linter, which just lints the code in Xcode, even when working on a Swift Package? I don't want to add a dependency which brings xy more sub dependencies to my project. I want it to work just in Xcode. No change to production code or Package.swift!

Issue should be fixed now. Removed swiftlint and returned to status before adding SwiftLint.

Thanks you


Function argument evaluation spec is inconsistent

briancschott reported this on 2015-02-26T22:32:17Z
Transferred from https://issues.dlang.org/show_bug.cgi?id=14228
CC List

Johannes Pfau (@jpf91)

Description
The specification at http://dlang.org/expression.html says these things:

"The following binary expressions are evaluated in an implementation-defined order: ... function arguments"

"The evaluation order of function arguments is defined to be left to right."

"Note that dmd currently does not comply with left to right evaluation of function arguments."

So, if I'm reading this correctly, the spec doesn't agree with itself, and what it says doesn't matter anyways because the compiler doesn't implement it?

johannespfau (@jpf91) commented on 2015-02-26T22:58:15Z
A long standing issue. Function arguments should be LTR. Pull request is available, but blocked as it needs a final decision by Walter or Andrei for the evaluation order of (all kinds of) assign expressions.

Currently blocked PR:
https://github.com/D-Programming-Language/dmd/pull/4035

History/Reference:

http://bugzilla.gdcproject.org/show_bug.cgi?id=8

<EMAIL_ADDRESS>
https://github.com/D-Programming-Language/dlang.org/pull/6
https://github.com/D-Programming-Language/dlang.org/pull/669
https://github.com/D-Programming-Language/dmd/pull/4035

https://issues.dlang.org/show_bug.cgi?id=6620

BTW: The spec doesn't really contradict itself:

"_are_ evaluated in an implementation-defined order: ... function arguments""
is what _does_ happen.

"The evaluation order of function arguments is _defined_ to be left to right."
is what _should_ happen.

"Note that dmd currently does not comply with left to right evaluation of function arguments."
explains the difference.


GPIO ports for buttons and rotory seems to conflict

The https://github.com/MiczFlor/RPi-Jukebox-RFID/wiki/Audio-RotaryKnobVolume uses GPIO 5, GPIO 13 and GPIO 16.
Then there is https://github.com/MiczFlor/RPi-Jukebox-RFID/blob/master/misc/sampleconfigs/gpio-buttons.py.sample which uses among others:
vol0 = Button(13,pull_up=True)
volU = Button(16,pull_up=True)

I now fear that both scripts try to initialize and register callback functions on the same GPIO 13/16.

Yes you're right. I messed up the GPIO PIN/BCM Encoding in another post.
Please use this little modified version of gpio-buttons.py where I disabled all volume controls.
#!/usr/bin/python3
from gpiozero import Button
from signal import pause
from subprocess import check_call
# 2018-10-15
# this script has the `pull_up=True` for all pins. See the following link for additional info:
# https://github.com/MiczFlor/RPi-Jukebox-RFID/issues/259#issuecomment-430007446
#
# 2017-12-12
# This script was copied from the following RPi forum post:
# https://forum-raspberrypi.de/forum/thread/13144-projekt-jukebox4kids-jukebox-fuer-kinder/?postID=312257#post312257
# I have not yet had the time to test is, so I placed it in the misc folder.
# If anybody has ideas or tests or experience regarding this solution, please create pull requests or contact me.

def def_shutdown():
    check_call("./scripts/playout_controls.sh -c=shutdown", shell=True)

def def_volU():
    check_call("./scripts/playout_controls.sh -c=volumeup", shell=True)

def def_volD():
    check_call("./scripts/playout_controls.sh -c=volumedown", shell=True)

def def_vol0():
    check_call("./scripts/playout_controls.sh -c=mute", shell=True)

def def_next():
    check_call("./scripts/playout_controls.sh -c=playernext", shell=True)

def def_prev():
    check_call("./scripts/playout_controls.sh -c=playerprev", shell=True)

def def_halt():
    check_call("./scripts/playout_controls.sh -c=playerpause", shell=True)

shut = Button(3, hold_time=2)
#vol0 = Button(13,pull_up=True)
#volU = Button(16,pull_up=True)
#volD = Button(19,pull_up=True)
next = Button(26,pull_up=True)
prev = Button(20,pull_up=True)
halt = Button(21,pull_up=True)

shut.when_held = def_shutdown
#vol0.when_pressed = def_vol0
#volU.when_pressed = def_volU
#volD.when_pressed = def_volD
next.when_pressed = def_next
prev.when_pressed = def_prev
halt.when_pressed = def_halt

pause()

Aren't there enough GPIO pins so that the button-script and the rotary-script could coexist? I would like it if they both get starter by default and the docs just say, "connect the rotray to pin x,y,z or a button to xx,yy or both if you want, it will just work..."

Probable yes but because everyone uses other hardware it will be difficult to build one fits all script.

But Phoniebox is a pretty specialized project. Most users will only have a subset of prev/next/pause, shutdown, sleep timer, folder prev/next, rotary volume, button volume, mute. That's what, 15 pins or so? The Raspberry3 has > 20 if I remember correctly so there would be plenty left for "special purposes".
Of course adjusting the python scripts it easy but it would be even cooler if one could just plug a button at the right point and have the functionallity without having to remember to adjust the mapping at every update. It would aid for the slogan "no soldering needed and no programming knowledge needed"

but sometimes you have special hats what blocks several pins. I don't know I I should build it that it fits for everyone. In my opinion impossible. On every update you don't need to change gpio-buttons.py because it will not be overwritten.


[Feature][Docs] Explain how to specify container command for head pod

Search before asking

[X] I had searched in the issues and found no similar feature requirement.

Description
Some users want to run additional commands when RayClusters are started. For example, a user wants to run ray start &&  python3 something.py when the cluster is started.
Users can use headGroupSpec.template.spec.command to set the command running in the head pod. However, there is a tricky behavior that may cause users to be confused. If headGroupSpec.template.spec.command does not contain the substring ray start, KubeRay will replace the command specified by users. See the following code snippet for more details.
https://github.com/ray-project/kuberay/blob/e77b0958b040de22c0eeb9320bff7cefed9ecd7b/ray-operator/controllers/ray/common/pod.go#L307-L325
This software design will introduce more "unknown unknowns" for users, and thus we need:
(1) Update the document (this issue)
(2) Discuss whether remove this behavior and find its replacement.
Use case
No response
Related issues
No response
Are you willing to submit a PR?

[X] Yes I am willing to submit a PR!

cc @DmitriGekhtman

@kevin85421 I wonder if this could be added in a more explicit way. The current behavior of command is confusing, as it changes based on the presence or absence of a substring, and if the command is overwritten, the rayStartParams essentially become useless (and the user needs to implement this logic themselves).
Maybe there's room for something alongside the rayStartParams like a postStartCommand (which would be invalid if block is set) or similar?

There's some discussion about how to get something approximating the desired behavior with a post-start hook:
https://ray-distributed.slack.com/archives/C02GFQ82JPM/p1669986058864489?thread_ts=1669647595.429959&cid=C02GFQ82JPM

@kevin85421 I wonder if this could be added in a more explicit way. The current behavior of command is confusing, as it changes based on the presence or absence of a substring, and if the command is overwritten, the rayStartParams essentially become useless (and the user needs to implement this logic themselves).
Maybe there's room for something alongside the rayStartParams like a postStartCommand (which would be invalid if block is set) or similar?

I totally agreed with your arguments. In addition, I found a post-start hook (commands execute when the RayCluster is READY) is very important recently. The hook can combine both RayCluster creation and other commands as an atomic operation, and thus make KubeRay more idempotent. One of the use case is to avoid #756.
cc @architkulkarni

Add this issue to v0.5.0 release.

Yeah, moving the job submission into the entry point makes sense to me. I don't really see the point of decoupling cluster creation and job submission...
Except that it could be nice to submit a new job to an already running cluster...
But that doesn't work so well anyway due to lack of clean isolation between subsequent jobs.

Related discussion: https://ray-distributed.slack.com/archives/C02GFQ82JPM/p1675378764037199

Related discussion: https://ray-distributed.slack.com/archives/C02GFQ82JPM/p1676506490994229
Upgrade the priority to P0.


[Feature Request] Add a --notes option to 'move' command

The 'move' command will automatically update all branches in the commits being moved, so that they move with the commits. Which is of course very useful.
It would be great if there was a --notes option that could be passed to the 'move' command that would do the same for commit notes. It would effectively just need to track the original commits and their counterparts after the move, and then run "git notes copy $ORIGINAL_COMMIT $MOVED_COMMIT" for all of them.

It looks like users could try to build this themselves at the moment, by setting the --debug-dump-rebase-constraints on the move, and then parsing the output looking for lines like "Rewrite commit abc ... as def ..." and then run the 'git notes copy' commands based on that. Would be great to have an option that does it for us though 😀

Possibly git-branchless should just observe the usual note-rewriting configuration options like https://git-scm.com/docs/git-config#Documentation/git-config.txt-notesrewriteRef
Does note-rewriting work if you enable it and use on-disk rebases (--on-disk)?

So that's kind of working.
First, here's the config options I set:
$ git config --global --list | grep notes.rewrite
notes.rewrite.commit=true
notes.rewrite.rebase=true
notes.rewriteref=refs/notes/commits
The good news is that setting those options and doing --on-disk moves is copying the notes over! That's great.
The slight bummer is that, as you seem to have expected, if I don't set --on-disk, the notes are not copied when running move.
The bad news is that notes are not copied/maintained when doing a git branchless amend. Even with the notes.rewrite.commit config option set to true.
Watching the output from amend it seems that it's not doing a git commit --amend but instead using git reset to rewrite the commit, so that probably explains why. Though I'm sure you know that and probably know why this isn't working.
reword also isn't copying/maintaining notes. From output, it looks like it's doing an in-memory rebase for its operations. I don't see a --on-disk flag for the reword command.

I didn't test restack, or any other commit-modifying commands other than what's in my commit (if there are any)

Since some of the git-branchless commands just call git rebase, the note-copying logic in git rebase handles it in those cases. For in-memory rebases (including git-branchless amend, which never (?) does an on-disk rebase), there's no opportunity for git rebase to copyt he notes.
I don't know exactly when/how during the rebase Git copies the notes (and what happens, for example, if you rewrite some commits and then abort the rebase?).
The best place to replicate the Git logic would probably be in post_rebase_in_memory:
https://github.com/arxanas/git-branchless/blob/8d99e3d268275446027217a10359b750bbf1b5de/git-branchless-lib/src/core/rewrite/execute.rs#L897-L905


readtheDocs link to "edit on github" broken

Accessing pyvisa.readthedocs.org and trying to get to github trhough the "edit on github" badge in the upper right corner doesn't work on any page. Resulting links are eg
https://github.com/hgrecco/pyvisa/blob/42ddd395231ae05fd99ddadf04a4a4cbf562a59c/docs/architecture.rst
which will throw a 404.

This was a problem in read the docs: https://github.com/rtfd/readthedocs.org/issues/1637


CI Testing

It would be nice to run tests and code style checks every time code is pushed to GitHub.

The fundamental CI for this issue has been resolved.
Style checks and unit testing are run and enforced.

The fundamental CI for this issue has been resolved.
Style checks and unit testing are run and enforced.


Run tests on iOS

Support for other architectures was added in e1a9133..2e9192f, so these architectures should also be tested.
This is difficult because Rust's test compile down to an executable, and arbitrary executables can't be run on iOS. rust-lang/rfcs#816 will likely be required to run the existing tests on iOS.

Compiling with --test generates code like:
pub mod __test {
    extern crate test;

    #[main]
    pub fn main() -> () {
        test::test_main_static(::std::env::args(), TESTS);
    }

    const TESTS: &'static [test::TestDescAndFn] = &[
        ...
    ];
}

If this was instead compiled to a library and TESTS was public, it'd be trivial to link against that library and write an iOS app test runner.

A test app was created in 2e9192f..2f64ab8, and it's already caught bugs! I still have to run the tests on 32-bit ARM but the coding here is complete.


proposal: crypto/tls: dynamically reload root certificate authorities

Proposal Details
The current state of the tls.Config.RootCAs presents a challenge when it comes to dynamically reloading the Root Certificate Authorities. The existing approaches involve either disabling automatic certificate and host verification or limiting functionality to non-proxied requests. This proposal seeks to address this limitation by introducing a mechanism for dynamic reloading of Root CAs.
The current workaround for dynamically updating Root CAs involves using the VerifyPeerCertificate, but it requires disabling automatic certificate and host verification by setting the InsecureSkipVerify field to true. This approach might introduce some security risks if the custom implementation is not correct.
Alternatively,  a custom TLS Dialer could be used. However, this approach falls short when dealing with proxied requests, limiting its applicability in scenarios where proxies are used.
To enhance the flexibility of TLS configurations, this issue proposes modifying the behaviour of tls.Config.RootCAs to support dynamic reloading by introducing a function similar to GetClientCertificate.
Note that in the past, a similar request was rejected. Since commenting on that issue is disabled, I decided to create a new issue to see if something has changed. Having such a mechanism in the standard library would help the Kubernetes community address https://github.com/kubernetes/kubernetes/issues/119483.
Update:
It largely depends on how the tls.Config.RootCAs is used internally. Another solution would be to accept an interface instead of *x509.CertPool and allow clients to inject a thread-safe implementation, enabling trust reloading.

cc @golang/security

The discussion at #22836 mentions that it's possible to replicate the normal certificate verification behavior by using specifying VerifyConnection and setting InsecureSkipVerify, but from what I can tell there's no inherent way for VerifyConnection to have access to the ServerName in the tls.Config in use if it's an IP address (tls.ConnectionState.ServerName is set to the value sent by the client as SNI, but the spec prescribes that IP addresses should not be sent as SNI, and the Go TLS handshake follows that).
Obviously a VerifyConnection callback will have access to the ServerName as specified in the original tls.Config, but the general behavior with TLS clients in the ecosystem seems to be that the calling code is intended to pass a tls.Config with no ServerName set, and the callee will clone the config and set the server name right before initiating the handshake, which will obviously not work with a custom VerifyConnection that only has a reference to the original tls.Config.


Paper: final draft

Create a final draft of the paper

TODO:

[ ] Authors
[ ] Title!
[ ] Acknowledgement
[ ] Metadata (tags)

Hi @ya0 , as soon as my comments from the email are implemented I can approve

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

:exclamation: No coverage uploaded for pull request base (main@464ba20). Click here to learn what that means.

:exclamation: Current head a41e821 differs from pull request most recent head 7a10d6d. Consider uploading reports for the commit 7a10d6d to get more accurate results

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.
Additional details and impacted files
@@           Coverage Diff           @@
##             main      #35   +/-   ##
=======================================
  Coverage        ?   94.73%
=======================================
  Files           ?        3
  Lines           ?       38
  Branches        ?        0
=======================================
  Hits            ?       36
  Misses          ?        2
  Partials        ?        0

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.

@danielinteractive i renamed the package name in paper.md and pulled from main. The feedback has been implemented and is ready to be merged from my side.


Disable days

Hi, how i can programmatically disable days in month?

I'm also interested in this.


Does this API have access to a users' reputation?

I've made an update you can get user reputation like this: https://steemit.com/steemjs/@fabien/steem-js-update-v0-3-added-formatters-and-examples