[admin] Server Error (500). openwisp#72

log the exception sendmail raised during
user creation with invalid email so that
users are created even with invalid email.
Added a mock test to mimic the exception
raised during user creation.
Added mock to requirements-test.txt
Fixes openwisp#72

Coverage increased (+0.07%) to 96.131% when pulling a71fddcd9982bc4249bb9449a786d36bd81dba74 on NoumbissiValere:issue/72 into db6fccf0638c6106e1959a051bad99c6f2710285 on openwisp:master.

Coverage increased (+0.4%) to 96.429% when pulling a71fddcd9982bc4249bb9449a786d36bd81dba74 on NoumbissiValere:issue/72 into db6fccf0638c6106e1959a051bad99c6f2710285 on openwisp:master.

I replicated the issue on my openwisp_users  by the setting the DEFAULT_FROM_EMAIL in the settings.py as it was in vagrant-openwisp2 VM. the tests passed when everything was set back to normal and i equally installed and tested it on vagrant-openwisp2 VM with the normal settings and it worked well.
I don't know much about issue #132 but when this patch was applied on my vagrant VM, i didn't get the database locked problem when i changed the admin email to an invalid one. so maybe this issue is related to that and maybe this patch can fix it (haven't tested that)
@nemesisdesign please can you review this when you have time?
thanks.

@nemesisdesign the changes have been made. Please can you review again?
Thanks


[CI] Add unit tests and linter jobs on macOS Gitlab amd64 runners

What does this PR do?
This PR adds the Unit Tests and Linter jobs for the macOS Gitlab runners. They're both allowed to fail.
Some details about the jobs:

Unit tests: they are failing so it's disabled on main and manual on dev branches for developer to be able to fix them.
Linter: it's working well so I added it on main only since we have 5 macOS amd64 Gitlab runners for the whole CI.
Build: there are still some setup issues preventing us from adding the build job as well for now.

Motivation
We're reaching some infrastructure limits with the Open Source free Github plan. We're experimenting with our own Gitlab runners.

Additional Notes
https://datadoghq.atlassian.net/browse/ACIX-151

Possible Drawbacks / Trade-offs

Describe how to test/QA your changes

/merge


Crash upon startup?..

I installed the sign mod thro
ugh curseforge (latest fabric loader) and it crashes due to invalid java runtime configuration?..

I can't help without a crash log.

It has come to my attention this is a server side mod apoligies.


[IDE] Make sure to disable typo-correction when doing code-completion.

Typo-correction can be expensive and we don't need it for code-completion.

Resolves rdar://29336988

@swift-ci smoke test and merge

@swift-ci smoke test and merge


Added nb-clean to pre-commit

Description
In https://github.com/run-llama/llama_index/pull/8104/files#diff-84aa9e9b1fb6c0424e9d79175b65a734c63be82bc58616c0314a286a02512521R7 I observed metadata being added to Jupyter notebooks that shouldn't be there.
This PR adds in the nb-clean tool to pre-commit to:

Wipe away this metadata
Format JSON saved in notebooks, including removal of empty cells

Type of Change

[x] New feature (non-breaking change which adds functionality)

How Has This Been Tested?

[ ] Added new unit/integration tests
[ ] Added new notebook (that tests end-to-end)
[x] I stared at the code and made sure it makes sense

I am not passionate about this @logan-markewich (or anyone), so feel free to say "we're not interested"

Haha yeah these tools are easier to add when the repo is first created.  Better late than never 😆
And lol yeah it is a lot of files changes haha


NotifyingSailConnection should distinguish between explicit and inferred statements

Problem description
When listening to changes on NotifyingSailConnection the consumer is unable to distinguish between explicit and inferred statements.
In scenarios where undo/redo or audit logging should be implemented it would be very helpful if this distinction could be drawn.
Preferred solution
The interface SailConnectionListener could be extended to include an inferred flag as parameter for the notification methods.
The default implementation of those methods could just delegate to the existing ones.
public interface SailConnectionListener {
  void statementAdded(Statement st);
  void statementRemoved(Statement st);

  default void statementAdded(Statement st, boolean inferred) {
    statementAdded(st);
  }

  default void statementRemoved(Statement st, boolean inferred) {
    statementRemoved(st);
  }
}

Are you interested in contributing a solution yourself?
None
Alternatives you've considered
The alternative would be to directly include the inferred flag within the statement interface.
This is the approach that we have used for KOMMA:
https://github.com/komma/komma/blob/master/bundles/core/net.enilink.komma.core/src/main/java/net/enilink/komma/core/IStatement.java
Anything else?
No response

Sounds good! We’ll have to be a bit careful that we don’t make any breaking changes.
I think the reason why Statements don’t have an inferred flag is that users can’t insert their own inferred statements. We could introduce an interface StatementWithInferredStatus (or something a bit cleaner) and then we can use instanceOf to check if the underlying store supports that feature (eg. produces statements that implement that interface).

As a first step we could just extend the listener as sketched above. This would save users from false assumptions about the support of inferred states.
At a later point:
Instead of StatementWithInferredStatus I would prefer to simply extend the Statement interface with isInferred() and add a default method that just returns false.
Within KOMMA I have decided to not include the inferred flag for equals() and hashCode() but I am not sure if this is a good/correct decision.

To extend the listener we would have to add two new methods in order to keep is backwards compatible, and both of those methods need a default implementation on the interface side. Those implementations would probably just pass down to the original methods, but for users who implement the methods there would not be a guarantee that the sail actually calls the new methods.

Yes, that is right. But I guess - despite of the SAILs already delivered with RDF4J - there is not much use of this interface.
Hence it would be a minimal invasive change.

There are some databases that are built on the Sail interfaces, but I don't think this is going to be that big of a deal for those.
Why don't you make a PR and we can see how it looks and functions?


Incorrect maxAge in cookie

I've been having this issue for the passed few days now where i am logged out when i open my application the next morning.
I found out the the Expires / Max-Age in the cookie is wrong even when i make sessionCookie expires: false in lucia,
it is currently setting the Expires / Max-Age as seconds, when converted to milliseconds i works as expected
https://github.com/pilcrowOnPaper/oslo/blob/c1f60eca2137cda93bb7aefed35781d85d12c7b6/src/cookie/index.ts#L80

What framework are you using? This is a known issue in Next.js. Might be better to use Expires instead

i am using expressjs, and do you mean setting the Expires key manually on the cookie?

I meant that we should consider using Expires instead in Lucia. Though, this is expected behavior in Oslo. Can you open a new issue in Lucia to use Expires instead of Max-Age?


score rampart repair targets somewhat based on damage received last tick

store damage values in a coord map intra tick

start tracking enemy rampart / wall damage when enemyAttackers are present
After some ticks of inactivity - use roommem.lastAttacked (maybe 100)  stop tracking
track moving average - single value edited. Somewhat accurate but low global / memory usage

https://github.com/The-International-Screeps-Bot/The-International-Open-Source/pull/699/files modified version of this using heap to store damage values


scte35 test stream

Hi,
Can you provide a test stream?
Thanks.

Hi,
Unfortunately I don't have complete test data but I'm sure can be found on internet.


[DEV] Study of the memory usage of keras tests in travis.CI

It seems that the Travis timout is back again. If we want to tackle it and that we think it's a memory issue, we should discuss with hard numbers and try to avoid guesses when possible, which is why I made this small study.
After doing a lot of printing and parsing of travis logs, I managed to obtain what I think is useful information, even if I don't know how to reduce the memory usage.
How I gathered those numbers:
By adding a warning after each test (by using pytest's fixture at the top level), I was able to display the current memory consumption of each process running the tests in the travis logs. With a bit of parsing, I've put together those plots as well as the functions which saw a huge memory increase after their execution.
Note that I ran gc.collect() before each measurement of memory usage to avoid measuring memory which was going to be freed afterwards.
We have two processes running for each build, which is why we have two pids for each build.
Note that at the time of measurement, the test function has been executed, so the memory allocated should be have already been freed.
There are 12 plots. 3 backends * 2 python versions * 2 process per build.
Maybe related issues:
#11288
#10340
#11461
#10100
#10071
#11984
@fchollet
@Dref360
@taehoonlee
@farizrahman4u
Can we conclude something from those numbers? Does it look strange? I don't know much about python memory management (just the basic reference counting).

tensorflow_27_gc_pid_4987
Test number 98 leaked 78.0 MB. The name is test_TensorBoard[batch]
Test number 273 leaked 79.0 MB. The name is test_dropout[GRU]
Test number 274 leaked 51.0 MB. The name is test_dropout[LSTM]
Test number 284 leaked 93.0 MB. The name is test_implementation_mode[GRU]
Test number 285 leaked 50.0 MB. The name is test_implementation_mode[LSTM]

tensorflow_27_gc_pid_4990
Test number 4 leaked 33.0 MB. The name is test_sequential_temporal_sample_weights
Test number 18 leaked 30.0 MB. The name is test_saving_model_with_long_weights_names
Test number 212 leaked 20.0 MB. The name is test_model_methods
Test number 240 leaked 336.0 MB. The name is test_convolutional_recurrent
Test number 344 leaked 102.0 MB. The name is test_Bidirectional

tensorflow_36_gc_pid_5043
Test number 2 leaked 10.58984375 MB. The name is test_masking_is_all_zeros
Test number 4 leaked 25.25390625 MB. The name is test_sequential_temporal_sample_weights
Test number 18 leaked 18.25 MB. The name is test_saving_model_with_long_weights_names
Test number 243 leaked<PHONE_NUMBER> MB. The name is test_convolutional_recurrent
Test number 304 leaked 7.171875 MB. The name is test_implementation_mode[LSTM]

tensorflow_36_gc_pid_5046
Test number 2 leaked 11.18359375 MB. The name is test_masking
Test number 104 leaked 54.80078125 MB. The name is test_TensorBoard[batch]
Test number 108 leaked 18.1328125 MB. The name is test_TensorBoard_multi_input_output
Test number 325 leaked 11.9921875 MB. The name is test_builtin_rnn_cell_layer[LSTMCell]
Test number 344 leaked 43.7890625 MB. The name is test_Bidirectional

theano_27_gc_pid_5025
Test number 1 leaked 38.0 MB. The name is test_model_trainability_switch
Test number 11 leaked 12.0 MB. The name is test_sequential_model_saving_2
Test number 92 leaked 20.0 MB. The name is test_TensorBoard[batch]
Test number 93 leaked 11.0 MB. The name is test_TensorBoard[epoch]
Test number 141 leaked 20.0 MB. The name is test_rnn

theano_27_gc_pid_5028
Test number 0 leaked 39.0 MB. The name is test_layer_trainability_switch
Test number 4 leaked 21.0 MB. The name is test_sequential_temporal_sample_weights
Test number 11 leaked 11.0 MB. The name is test_functional_model_saving
Test number 91 leaked 12.0 MB. The name is test_in_top_k
Test number 164 leaked 88.0 MB. The name is test_convolutional_recurrent

theano_3.6_gc_pid_5091
Test number 1 leaked 26.234375 MB. The name is test_model_trainability_switch
Test number 2 leaked 7.52734375 MB. The name is test_masking
Test number 11 leaked 8.48828125 MB. The name is test_sequential_model_saving_2
Test number 99 leaked 12.07421875 MB. The name is test_in_top_k
Test number 174 leaked 57.9140625 MB. The name is test_convolutional_recurrent

theano_3.6_gc_pid_5094
Test number 0 leaked 25.21875 MB. The name is test_layer_trainability_switch
Test number 4 leaked 16.9453125 MB. The name is test_sequential_temporal_sample_weights
Test number 97 leaked 30.34765625 MB. The name is test_TensorBoard[batch]
Test number 143 leaked 7.71484375 MB. The name is test_gradient
Test number 146 leaked 13.90625 MB. The name is test_rnn

cntk_27_gc_pid_6848
Test number 18 leaked 4.0 MB. The name is test_saving_model_with_long_layer_names
Test number 43 leaked 5.0 MB. The name is test_orthogonal[CONV]
Test number 96 leaked 34.0 MB. The name is test_TensorBoard[batch]
Test number 100 leaked 5.0 MB. The name is test_TensorBoard_convnet
Test number 167 leaked 17.0 MB. The name is test_convolutional_recurrent

cntk_27_gc_pid_6851
Test number 4 leaked 9.0 MB. The name is test_sequential_temporal_sample_weights
Test number 97 leaked 27.0 MB. The name is test_in_top_k
Test number 288 leaked 5.0 MB. The name is test_dropout[LSTM]
Test number 315 leaked 6.0 MB. The name is test_Bidirectional
Test number 340 leaked 10.0 MB. The name is test_plot_sequential_embedding

cntk_36_gc_pid_6968
Test number 2 leaked 3.2265625 MB. The name is test_masking
Test number 4 leaked 4.234375 MB. The name is test_sequential_sample_weights
Test number 49 leaked 5.31640625 MB. The name is test_orthogonal[CONV]
Test number 102 leaked 32.3359375 MB. The name is test_TensorBoard[batch]
Test number 106 leaked 4.4765625 MB. The name is test_TensorBoard_convnet

cntk_36_gc_pid_6971
Test number 0 leaked 2.75 MB. The name is test_layer_trainability_switch
Test number 4 leaked 10.35546875 MB. The name is test_sequential_temporal_sample_weights
Test number 42 leaked 5.02734375 MB. The name is test_orthogonal[FC]
Test number 97 leaked 19.2890625 MB. The name is test_in_top_k
Test number 209 leaked 15.64453125 MB. The name is test_convolutional_recurrent

Interesting and useful work, waiting for solution.


Archive Failed  Check dependencies 1 failure

I am trying to push to TestFlight but its keep giving me the same error I am using Github Actions for CI, it is working fine in local machine but
fast file as follow:
require 'spaceship'
require 'fastlane'
default_platform(:ios)

platform :ios do
  desc "Push a new beta build to TestFlight"
  ENV["FASTLANE_APPLE_APPLICATION_SPECIFIC_PASSWORD"] = "application_specific_password"
  ENV["FASTLANE_XCODEBUILD_SETTINGS_TIMEOUT"] = "720"
  ENV["FASTLANE_SESSION"] = 'session'
  ENV["FASTLANE_PASSWORD"] = "apple_id_password"

  lane :beta do
  build_app(workspace: "justclean.xcworkspace", scheme: "justclean DEV", export_xcargs: "-allowProvisioningUpdates",export_method: "app-store",export_options: {
      provisioningProfiles: {
        "com.justclean.justclean" => "com.justclean.justclean"
      }
    })
  upload_to_testflight(skip_waiting_for_build_processing: true)
  end
end

my CI.yml file is :
name: CI
# This workflow is triggered on pushes to the repository.
on:
  push:
    branches:
    - Q4S5/feature/Jenkins
jobs:
  build:
    runs-on: macos-latest
    steps:
    - uses: actions/checkout@master
    - name: Install Dependences
      run: |
        cd justclean
        pod repo update
        pod install
      shell: bash
#     - name: Start xcodebuild test
#       run: xcodebuild -workspace "justclean.xcworkspace" -scheme "justclean DEV" -destination "platform=iOS Simulator,name=iPhone 8,OS=latest"
    - name: Releasing to TestFlight
      run: |
       sudo gem install fastlane
       fastlane beta
      shell: bash

the output as follow :
[01:30:15]: $ set -o pipefail && xcodebuild -workspace justclean.xcworkspace -scheme justclean\ DEV -destination 'generic/platform=iOS' -archivePath /Users/runner/Library/Developer/Xcode/Archives/2019-12-31/justclean\ DEV\ 2019-12-31\ 01.30.15.xcarchive archive | tee /Users/runner/Library/Logs/gym/justclean\ DEV-justclean\ DEV.log | xcpretty
164
[01:30:21]: ▸ Building justclean/JCNotificationService [Release]
165
[01:30:21]: ▸ Check Dependencies
166
[01:30:21]: ▸ Building justclean/JustcleanCore [Release]
167
[01:30:21]: ▸ Check Dependencies
168
[01:30:21]: ▸ Building Pods/Adjust [Release]
169
[01:30:21]: ▸ Check Dependencies
170
[01:30:21]: ▸ Building Pods/SDWebImage [Release]
171

172
[01:30:21]: ▸ Check Dependencies
173
[!] Error building the application - see the log above
174
[01:30:21]: ▸ ** ARCHIVE FAILED **
175
[01:30:21]: ▸ The following build commands failed:
176
[01:30:21]: ▸ 	Check dependencies
177
[01:30:21]: ▸ (1 failure)
178
▸ Building justclean/JCNotificationService [Release]
179
▸ Check Dependencies
180
▸ Building justclean/JustcleanCore [Release]
181
▸ Check Dependencies
182
▸ Building Pods/Adjust [Release]
183
▸ Check Dependencies
184
▸ Building Pods/SDWebImage [Release]
185
▸ Check Dependencies
186
** ARCHIVE FAILED **
[14:41:41]: Before submitting an issue on GitHub, please follow the guide above and make
131
[14:41:41]: sure your project is set up correctly.
132
[14:41:41]: fastlane uses `xcodebuild` commands to generate your binary, you can see the
133
[14:41:41]: the full commands printed out in yellow in the above log.
134
[14:41:41]: Make sure to inspect the output above, as usually you'll find more error information there
135
[14:41:41]:
136
+------------------+----------+
137
|        Lane Context         |
138
+------------------+----------+
139
| DEFAULT_PLATFORM | ios      |
140
| PLATFORM_NAME    | ios      |
141
| LANE_NAME        | ios beta |
142
+------------------+----------+
143
[14:41:41]: Error building the application - see the log above
144

145
+------+------------------+-------------+
146
|           fastlane summary            |
147
+------+------------------+-------------+
148
| Step | Action           | Time (in s) |
149
+------+------------------+-------------+
150
| 1    | default_platform | 0           |
151
| 💥   | build_app        | 46          |
152
+------+------------------+-------------+
153

154
[14:41:42]: fastlane finished with errors
155

156
[!] Error building the application - see the log above
157
##[error]Process completed with exit code 1.

fastlane env:
🚫 fastlane environment 🚫

### Stack

| Key                         | Value                                       |
| --------------------------- | ------------------------------------------- |
| OS                          | 10.14.5                                     |
| Ruby                        | 2.4.0                                       |
| Bundler?                    | false                                       |
| Git                         | git version 2.20.1 (Apple Git-117)          |
| Installation Source         | ~/.rvm/rubies/ruby-2.4.0/bin/fastlane       |
| Host                        | Mac OS X 10.14.5 (18F203)                   |
| Ruby Lib Dir                | ~/.rvm/rubies/ruby-2.4.0/lib                |
| OpenSSL Version             | OpenSSL 1.1.1d  10 Sep 2019                 |
| Is contained                | false                                       |
| Is homebrew                 | false                                       |
| Is installed via Fabric.app | false                                       |
| Xcode Path                  | /Applications/Xcode.app/Contents/Developer/ |
| Xcode Version               | 10.3                                        |

### System Locale

| Error                       |
| --------------------------- |
| No Locale with UTF8 found 🚫 |

### fastlane files:

**No Fastfile found**

**No Appfile found**

### fastlane gems

| Gem      | Version | Update-Status      |
| -------- | ------- | ------------------ |
| fastlane | 2.138.0 | 🚫 Update available |

### Loaded fastlane plugins:

**No plugins Loaded**

Loaded gems

| Gem                       | Version      |
| ------------------------- | ------------ |
| did_you_mean              | 1.1.0        |
| executable-hooks          | 1.6.0        |
| bundler-unload            | 1.0.2        |
| rubygems-bundler          | 1.4.5        |
| bundler                   | 1.17.3       |
| slack-notifier            | 2.3.2        |
| atomos                    | 0.1.3        |
| CFPropertyList            | 3.0.2        |
| claide                    | 1.0.3        |
| colored2                  | 3.1.2        |
| nanaimo                   | 0.2.6        |
| xcodeproj                 | 1.14.0       |
| rouge                     | 2.0.7        |
| xcpretty                  | 0.3.0        |
| terminal-notifier         | 2.0.0        |
| unicode-display_width     | 1.6.0        |
| terminal-table            | 1.8.0        |
| plist                     | 3.5.0        |
| public_suffix             | 2.0.5        |
| addressable               | 2.7.0        |
| multipart-post            | 2.0.0        |
| word_wrap                 | 1.0.0        |
| tty-screen                | 0.7.0        |
| tty-cursor                | 0.7.0        |
| tty-spinner               | 0.9.2        |
| babosa                    | 1.0.3        |
| colored                   | 1.2          |
| highline                  | 1.7.10       |
| commander-fastlane        | 4.4.6        |
| excon                     | 0.71.1       |
| faraday                   | 0.17.1       |
| unf_ext                   | <IP_ADDRESS>      |
| unf                       | 0.1.4        |
| domain_name               | 0.5.20190701 |
| http-cookie               | 1.0.3        |
| faraday-cookie_jar        | 0.0.6        |
| faraday_middleware        | 0.13.1       |
| fastimage                 | 2.1.7        |
| gh_inspector              | 1.1.3        |
| mini_magick               | 4.9.5        |
| multi_xml                 | 0.6.0        |
| rubyzip                   | 1.3.0        |
| security                  | 0.1.3        |
| xcpretty-travis-formatter | 1.0.0        |
| dotenv                    | 2.7.5        |
| naturally                 | 2.2.0        |
| simctl                    | 1.6.7        |
| jwt                       | 2.1.0        |
| uber                      | 0.1.0        |
| declarative               | 0.0.10       |
| declarative-option        | 0.1.0        |
| representable             | 3.0.4        |
| retriable                 | 3.1.2        |
| multi_json                | 1.14.1       |
| signet                    | 0.12.0       |
| memoist                   | 0.16.2       |
| os                        | 1.0.1        |
| googleauth                | 0.6.7        |
| httpclient                | 2.8.3        |
| google-api-client         | 0.23.9       |
| google-cloud-env          | 1.3.0        |
| google-cloud-core         | 1.4.1        |
| digest-crc                | 0.4.1        |
| google-cloud-storage      | 1.16.0       |
| emoji_regex               | 1.0.1        |
| json                      | 2.3.0        |
| mime-types-data           | 3.2019.1009  |
| mime-types                | 3.3.1        |
| openssl                   | 2.0.2        |
| io-console                | 0.4.6        |
| psych                     | 2.2.2        |

*generated on:* **2019-12-30**

I have tried to use match instead its working fine in local machine, but now I am getting this error from GitHub actions "Error cloning certificates repo, please make sure you have read access to the repository you want to use"
I have even tried to run :
mkdir ~/.ssh/ && echo -e "Host github.com\n\tStrictHostKeyChecking no\n" > ~/.ssh/config
before running the Fastlane,but still no luck
git_url("git@github.com:<username>/fastlane-certificates.git")
storage_mode("git")
type("appstore") # The default type, can be: appstore, adhoc, enterprise or development

app_identifier("com.xxxx.xxxx")
<EMAIL_ADDRESS>shallow_clone("true")

is there is anyone solution for this?

I have managed to clone the private repo through match and I can see :
"All required keys, certificates and provisioning profiles are installed 🙌"
but still same old error is coming back
[01:30:15]: $ set -o pipefail && xcodebuild -workspace justclean.xcworkspace -scheme justclean\ DEV -destination 'generic/platform=iOS' -archivePath /Users/runner/Library/Developer/Xcode/Archives/2019-12-31/justclean\ DEV\ 2019-12-31\ 01.30.15.xcarchive archive | tee /Users/runner/Library/Logs/gym/justclean\ DEV-justclean\ DEV.log | xcpretty
164
[01:30:21]: ▸ Building justclean/JCNotificationService [Release]
165
[01:30:21]: ▸ Check Dependencies
166
[01:30:21]: ▸ Building justclean/JustcleanCore [Release]
167
[01:30:21]: ▸ Check Dependencies
168
[01:30:21]: ▸ Building Pods/Adjust [Release]
169
[01:30:21]: ▸ Check Dependencies
170
[01:30:21]: ▸ Building Pods/SDWebImage [Release]
171

172
[01:30:21]: ▸ Check Dependencies
173
[!] Error building the application - see the log above
174
[01:30:21]: ▸ ** ARCHIVE FAILED **
175
[01:30:21]: ▸ The following build commands failed:
176
[01:30:21]: ▸ 	Check dependencies
177
[01:30:21]: ▸ (1 failure)
178
▸ Building justclean/JCNotificationService [Release]
179
▸ Check Dependencies
180
▸ Building justclean/JustcleanCore [Release]
181
▸ Check Dependencies
182
▸ Building Pods/Adjust [Release]
183
▸ Check Dependencies
184
▸ Building Pods/SDWebImage [Release]
185
▸ Check Dependencies
186
** ARCHIVE FAILED **

@kommen @lsegal
Can you please advice I am really exhausted with this.. I am so sorry for that..

@janpio
Now out of sudden I am running into a problem of 2FA, I have added the envs of FASTLANE_SESSION,FASTLANE_APPLE_APPLICATION_SPECIFIC_PASSWORD:
but I can see apple is sending code and building is getting failed with error:
/usr/local/lib/ruby/gems/2.6.0/gems/highline-1.7.10/lib/highline/question.rb:413:in remove_whitespace': [!] undefined method strip' for nil:NilClass (NoMethodError)
167

I feel like GitHub actions is not stable at all, as everything is working fine in local machine.

Do you have more of the error message? I need to know what is causing the error in fastlane code.

Currently I have managed to solve the auth error
INFO [2020-01-02 18:06:06.24]: $ set -o pipefail && xcodebuild -workspace justclean.xcworkspace -scheme justclean\ DEV -destination 'generic/platform=iOS' -archivePath /Users/runner/Library/Developer/Xcode/Archives/2020-01-02/justclean\ DEV\ 2020-01-02\ 18.06.06.xcarchive archive | tee /Users/runner/Library/Logs/gym/justclean\ DEV-justclean\ DEV.log | xcpretty
291
INFO [2020-01-02 18:06:12.98]: ▸ Building justclean/JustcleanCore [Release]
292
INFO [2020-01-02 18:06:12.98]: ▸ Check Dependencies
293
INFO [2020-01-02 18:06:13.03]: ▸ Building Pods/Adjust [Release]
294
INFO [2020-01-02 18:06:13.03]: ▸ Check Dependencies
295
INFO [2020-01-02 18:06:13.25]: ▸ Building justclean/JCNotificationService [Release]
296
INFO [2020-01-02 18:06:13.25]: ▸ Check Dependencies
297
INFO [2020-01-02 18:06:13.25]: ▸ Building Pods/SDWebImage [Release]
298
INFO [2020-01-02 18:06:13.25]: ▸ Check Dependencies
299
INFO [2020-01-02 18:06:13.47]: ▸ ** ARCHIVE FAILED **
300
INFO [2020-01-02 18:06:13.47]: ▸ The following build commands failed:
301
INFO [2020-01-02 18:06:13.47]: ▸ 	Check dependencies
302
INFO [2020-01-02 18:06:13.47]: ▸ (1 failure)
303
▸ Building justclean/JustcleanCore [Release]
304
▸ Check Dependencies
305
▸ Building Pods/Adjust [Release]
306
▸ Check Dependencies
307
▸ Building justclean/JCNotificationService [Release]
308
▸ Check Dependencies
309
▸ Building Pods/SDWebImage [Release]
310
▸ Check Dependencies
311
** ARCHIVE FAILED **
312
313
314
The following build commands failed:
315
Check dependencies


TD-SCF states doesn't converge

I want to find the excited states and transition dipole moments of CO2 using TDDFT. Below is my code,
`mol = gto.Mole()
mol.build(
atom = 'C 0 0 0; O 0 0 1.1637; O 0 0 -1.1637',  # in Angstrom
# basis = '631g',
basis='ccpvdz',
unit = 'B',
symmetry = True,
symmetry_subgroup = 'D2h',
verbose = 4,
)
mf = dft.RKS(mol)
mf.xc = 'camb3lyp'
mf.newton()
mf.kernel()
mytd = tddft.TDDFT(mf)
mytd.nstates = 10
mytd.kernel()
mytd.analyze()`
However, in the 110 line of the output file : TD-SCF states [0, 2, 3, 5, 7, 9] not converged. I have tried different functionals, but the issue remains. Also the the excited energies doesn't look right. Can you help me with this issue? I have also attached the full output text file.
output.txt

Hi Shashank,
Try this,
https://github.com/John-zzh/TDDFT_Davidson


Remove switch

after #2069
Contributor Checklist

[ ] Did you add Scaladoc to every public function/method?
[ ] Did you add at least one test demonstrating the PR?
[ ] Did you delete any extraneous printlns/debugging code?
[ ] Did you specify the type of improvement?
[ ] Did you add appropriate documentation in docs/src?
[ ] Did you state the API impact?
[ ] Did you specify the code generation impact?
[ ] Did you request a desired merge strategy?
[ ] Did you add text to be included in the Release Notes for this change?

Type of Improvement

API Impact

Backend Code Generation Impact

Desired Merge Strategy

Release Notes

Reviewer Checklist (only modified by reviewer)

[ ] Did you add the appropriate labels?
[ ] Did you mark the proper milestone (3.2.x, 3.3.x, 3.4.x, 3.5.0) ?
[ ] Did you review?
[ ] Did you check whether all relevant Contributor checkboxes have been checked?
[ ] Did you mark as Please Merge?

Why do you want to remove switches? Switches should be different from .elsewhen. Switches should be unique cases, but elsewhen has an implicit priority. Switch-generated hardware should use less than priority-based .elsewhen. (I know that this is not anymore the case in Chisel 3, but hopefully might come back at some point. It was the case in Chisel 2).


Generalize kiosk_people_slider to support custom slides

Not exactly sure what the best course of action for this is, but having a generalized shortcode that allows content creators to designate custom slides would be good.
I'm also guessing that we might want to separate this from our database, but maybe in a separate branch?

We already have [kiosk-posts] which will pull posts, so I guess it would be a combination of [kiosk-posts] and [kiosk_people_slider] functionality.


Commit 9e1d562

CD
One significant drop I noticed for the RRs in the notebook JB gave me is the one going from commit 1dc4598 to commit 9e1d562. Commit 1dc4598 is the last one I am finding a mean RR 0.75 and commit 9e1d562 is the first one that this number drops to about 0.70 and stays there for all subsequent commits.
Running older commits sometimes results in errors...I assume the code may be significantly different and I do not know the exact time in point this notebook was written....
I will see if commit 9e1d562 (Fixing logic of treamtent effects to separate out antiHypertensives from bpMedsAdded and calibrating on that) can possibly result in the discrepancy I notice on the RRs...

JB
The thing that I was addressing for the first paper was that we only want to recalibrate the effect of medications added for BP control so that we can compare to usual care instead of the number of BP medications that a patient is on. (i.e. we want to take usual care as a given — our CV risk models are normed on usual care…the effect of treatment is, then, derived from trials — and we want to identify the effects of each treatment that you add, not of each treatment that you are already on…)

CD
Note 1: The notebook that we use for validation is using AddASingleBPMedTreatmentStrategy, therefore whatever affected the RRs is either part of that class or code that this class is using (no need to focus on the rest of the code in bp_treatment_strategies.py).
Note 2: In bp_treatment_strategies.py line 26, I think antihypertensivecount should not be set to 1, but rather keep that dictionary empty because the single medication is added on the bpmedsadded variable. This method is used in person.py line 666 as part of the person advance_treatment method and those changes are applied to each person in this method. However, I do not see a reference of this method on the population.py file so population classes do not seem to use it (could be a different bug or not, not sure).
On the same person.py advance_treatment method, antihypertensivecount is used and I wonder if totalbpmeds should be used instead. Even if that is the case, I do not think this affects the RRs because it is not used in population classes.
Note 3: In this addsinglebpmed class, in method get_changes_vectorized, when I add the code line that was deleted in this commit, x.antiHypertensiveCountNext = x.antiHypertensiveCountNext + 1, that brings the RRs to what we were getting prior to this commit. When this line is present, even when I do x.bpMedsAddedNext = 0, the RRs remain the same as they were prior to this commit. Which suggests that the effect of antihypertensivecount and bpmedsaddednext is not symmetrical, but I am not sure if their effects should be symmetrical. Q: should it make a difference if a medication is part of antihypertensives or bpmedsadded? JB's comment above is not clear to me, but it may mean that the two variables should have asymmetrical effects.
Note 4: cohort_risk_model_repository.py : unsure what the repository is doing, but it is only using antihypertensivecount and I wonder if totalbpmeds should be used instead.
Note 5: In the last few person.py methods (equal, ne, deepcopy etc), the bpmedsadded attribute are not included and I wonder if they should be included. It is not clear to me how, and if, this may affect the RRs as it depends on whether population classes use these person methods.
Note 6: static_risk_factor_over_time_repository: is using the repository but not sure why, and it is only using antihypertensivecount, I am not sure if totalbpmeds should be used instead.

Notes 4 and 6:
I have a few related variables on this...
antiHypertensive refers to medications as a response to actual high blood pressure
bpMedsAdded refers to medications added but not as a response to an actual problem
totalBpMedsAdded is the sum of bpMedsAdded (and it does NOT include antiHypertensives)
A person instance has the definition of
"current_bp_treatment": self._antiHypertensiveCount[-1] > 0
So, the sum of all BP medications would be antiHypertensiveCount + totalBPMedsAdded (not just totalBpMedsAdded as I though in my previous note).
Interestingly, the gcp_model has:
anyAntiHpertensive=((person.antiHypertensiveCount + person.totalBPMedsAdded)> 0),
But as noted in Note 4 and 6, those repository/risk models are using only antiHypertensive.
It is not clear to me if the repository and all risk models should be doing the same thing the gcp_model is doing....

I run two microsim simulations on the notebook one using the current master branch and one where I add 1 antihypertensive.
Comparing the outputs, I noticed that the delta values) are identical both over the years and in the two simulations. This could be either the problem or I have not run the simulation long enough to allow the risks to change and introduce variations of size large enough to show up in the deltas, or the deltas are fine by being constant....
If this is the problem, then I think that treatment_outcome_standard[outcomeType] should be a constant and depend on whether we are talking about MIs or strokes. So, then the first term seems to be a constant and it should not...which means that estimate_risks is producing always identical risks...

I am finding that modelEstimatedRR is always 1 even in commit 1dc4598 which is supposed to be the last one where the RRs turn out to be correct...
The deltas are always 0.21 (1-0.79) for stroke and 0.13 (1-0.87) for mi. 0.79 and 0.87 are the two constants associated with stroke and mi.
Currently, what I am suspecting is that commit 9e1d562 altered the risks and probabilities but kept the percentage of events to rollback constant. So, the change in the relative risks with this commit seems to have originated from a change in the number of events due to a change in risks and probabilities without a simultaneous change in the percentage of events to rollback.

I think the number of events changed because the outcome_model_repository on line 94 shows how to get the CV outcome determination and this depends on the coefficients shown a bit above, eg on line 54 for female. One of these coefficients is current_bp_treatment and that depends only on the antihypertensives because a person instance has the definition of "current_bp_treatment": self._antiHypertensiveCount[-1] > 0. So perhaps this explains why the number of events changed with this commit.

As far as why the modelEstimatedRR stay the same: this is using the estimate_risk function in population.py which relies on get_stroke_probability which relies on estimate_next_risk_vectorized  and it is not clear to me if this produces the same probabilities as the ones used to determine events...based on the results from the simulation I am guessing that they are not the same....

In bp_treatment_strategies.py, AddSingleBPMedTreatmentStrategy, the get_changes_vectorized (and rollback too) assume that bpMedsAdded is zero (1 for rollback). If AddSingleBPMedTreatmentStrategy is applied after a different BP treatment strategy this assumption will not be true and the bp meds count and blood pressure will not be consistent with each other.

I just noticed this comment in person.py that seems to be relevant:
this variable is used in the risk model...
this reflects whether patients have had medications assigned as a risk factor, but
not whether there has been a separate trematent effect, which is tracked in bpMedsAdded
"current_bp_treatment": self._antiHypertensiveCount[-1] > 0,
So, changing the definition of current_bp_treatment in population.py and person.py (there are a few places in person.py that the code needs to be changed too) alters the probabilities used to determine events and makes them the same as the probabilities prior to commit 9e1d562.
It is still not clear to me that this is desirable or if we should change the modelEstimatedRR that is currently a constant and independent of the population dataframe.

JB:
k, great…so, we’ve isolated the problem. that seems like a step in teh right direction…there is progress, but we’ve still got some things to figure out...
if “current_bp_meds” includes bpMedsAdded AND antiHypetensiveCount, we get the same answer.
i think there are 2 main questions, then…and they’re related.

WHY does this fix the problem?

here is were i’m still confused. the degree of relative recalibration (the number of events that we change) is based on 3 factors — delta, the number of events and the modelEstimateRR (line 470)
numberOfEventStatusesToChange = abs(
int(round(delta * len(eventsForPeople) / modelEstimatedRR))
)
but, if delta and modelEstimateRR are the same for both interpretations of current_bp_meds, then how are we changing a different relative number of events? i don’t get it…
i can see how the length of eventsForPeople would change depending on how we define current_bp_meds (i.e. more people on meds -> higher risk -> more events), but the relative effects (what we’re recalibrating on), shoudl come to out the same, right?

what SHOULD current_bp_meds be set at?

i think that the comment is quite helpful here! it reminds me of my prior thinking…
antiHypertensiveCount is defined on the basis of population level data — it’s mostly a risk factor. if you are on medications, you are higher risk than if you are not. so…we should NOT include it current_bp_meds, because that variable is used in our risk models.
so, i think that the current version of current_bp_meds is the “right” answer
i think, then, that we have to solve the hard problem #1 above — WHY dods changing current_bp_meds fix the problem…and, once we understand that…how can we get the “right” answer!

A thought about a potential issue that may be relevant...
The advance_treatment person method includes:
if not self._bpTreatmentStrategy.repeat_treatment_strategy():
self._bpTreatmentStrategy = None
But there is nothing in population.py that stops the treatment from being applied after it is applied it that treatment is not supposed to be repeated (according to the repeat_treatment_strategy).
Something related to this is also that in bp_treatment_strategies.py addSingleBPMedTreatement it should be:
x.totalBPMedsAddedNext = x.totalBPMedsAddedNext + 1
and then rolling back should be
x.totalBPMedsAddedNext = x.totalBPMedsAddedNext - 1
This is also relevant to this comment..

But when I try to terminate a non-repeatable treatment at the end of the first year, then there is no recalibration done, even though the totalBPMedsAdded was 1.
There is no recalibration after the 1st year because of this in population.py:
def apply_recalibration_standards(self, recalibration_df):
# treatment_standard is a dictionary of outcome types and effect sizees
if self._bpTreatmentStrategy is not None:
if self._bpTreatmentStrategy.get_treatment_recalibration_for_population() is not None:
recalibration_df = self.recalibrate_bp_treatment(recalibration_df)
return recalibration_df

JB
so, it think this probably isn't a problem…this was a workaround for the fact that antiHypertensiveCount and bpMedsAdded were combined. but, it think its not relevant any time soon...
if you wanted to do a “addOneMedication” type treatment algorithm, then you only wanted to add it once, not every year and this wa sa way of turning it off.
for our actual BP treatment algorithms (i.e. SPRINT), it looks at how many total meds you are on and then adds from there…so, i don’t thikn it sa huge problem.
for the “AddASingleBPMedTreatmentStrategy” algorithm, i thikn it works ok because it sets it at “1” and doesn’t add one…

JB
oh, good point! there shoudl not be recalibration if there is no treatment.
although, given that there is no target for recalibration i assume its not actually happening or that its not doing anythign when it happens...

As is now, there is treatment every year, even though it should only be on year 0, and it does do a recalibration every year because x.totalBPMedsAddedNext = 1 is set every year in addSingleBPTreatment and the recalibration dataframe depends on totalBPMedsAddedNext...

JB
so, it SHOUDL do the recalibration every year.
BP medications have an effect every year, not just the first year that you start them…
so, i think that’s right...

OK....I have a feeling that by a cancellation of errors it is now doing the correct thing as far as this is concerned so I can table this for now and come back to fix it after I figure out the important stuff...
Which for now, I am focusing on modelEstimateRR and why it turns out to be 1 all the time...

An update: the estimate_risks function produces identical risks, mi and stroke, for the treated and untreated groups and I have yet to find a variable that affects those risks (I will keep looking).
I can see that treatment affects the sbp and totalBPMedsAdded numbers on the recalibration dataframes but those changes do not affect at all the risks produced by estimate_risks.
A question is, should it affect the risks in the first place?  It seems to me that sbp is a coefficient in the outcome_model_repository so if you lower sbp the risk should change....but it did not...I thought maybe the sbp coefficient is too small to see an effect so I increased it by a factor of 1000 and I still did not see a difference in the risks of treated and untreated....
So, the treated and untreated dataframes are different, as they should, but for some reason estimate_risks produces identical risks...so this is the next thing to look into....
I also modified antiHypertensives which modifies current_bp_treatment attribute which would then alter the risk, my guess, but even this did not change the treated and untreated risks...

JB
ok…i have a good guess as to what the problem is…
when hte risks are calculated on teh reclibration_df, it hasn’t yet been updated. so, the risk factors, treatment and outcomes have been updated…but they’re updated on the *Next variables. when you run the CV risks on it, it looks at the current values of SBP, antiHypertensiveCount, etc. they aren’t changed…because those updates are in teh *Next variables.
if that’s right, then my theory would be that if we move this line (population, 202)
alive = self.move_people_df_forward(alive)
ahead of this line (population, 182)
alive = self.apply_recalibration_standards(alive)
that we’ll get it back in gear. i think that the recalibration isn’t seeing what happened in this wave at all…
conceptually, the problem is that recalibration shoudl be the LAST thign that we do — first, update everything THEN, recalibrate it…

From a quick test, it seems that your guess is correct, changing the latest risk factors using their *Next values does make the treated and untreated risks different.
I cannot simply copy and paste the move_people_df_forward to above where the recalibration is done because what is done in between those 2 lines is used by move_people_df_forward....
One thought would be to provide to estimate_risks functions dataframe copies for treated and untreated where their latest values  are obtained from the recalibrate_df *Next values.....
Or perhaps to create an estimate_next_risks function....
I will also need to understand what attributes the estimate_risks function is using so that I can make sure the correct values are used....

To calculate the risks, is the code using only the male and female coefficients included at the beginning of outcome_model_repository?
Does lagAge corresponde to _age[-1]? Does the translation from "lag" to [-1] take place here?
Finally, does the partition of risks to stroke and mi risks, in get_stroke_probability using exactly the same coefficients as the ones I mention above?
If I understand correctly those attributes (male and female coefficients) are the ones I need to pass correctly to estimate_risks, but I want to double check....

JB
o calculate the risks, is the code using only the male and female coefficients included at the beginning of [outcome_model_repository?]
yep.
Does lagAge corresponde to _age[-1]? Does the translation from "lag" to [-1] take place here?
yep and yep
Finally, does the partition of risks to stroke and mi risks, in get_stroke_probability using exactly the same coefficients as the ones I mention above?
not quite. its modeled as a RiskModel using these coefficients: https://github.com/jburke5/microsim/blob/master/microsim/data/StrokeMIPartitionModelSpec.json
If I understand correctly those attributes (male and female coefficients) are the ones I need to pass correctly to estimate_risks, but I want to double check....
—
so, my thought would be to do something like this:

move up most of the  move_people_df_forward() method so that the risk factors and outcomes are all advanced prior to recalibration
pull otu the parts of move_people_df_forward() method that need to happen after the parts between move_people_df_forward() and apply_recalibration_standards()

into a separate method...

It seems to me that things are tangled....what I mean:
If we need to use the *Next values in estimate_risk in order to do the recalibration, this includes the next age (as an example), to get the next age we need to know if this person has had a fatal outcome or not, to know the outcomes we need to do the recalibration of the treatment and outcomes...
Also if we move the people dataframe forward in order to do the recalibration using *Next values, then this:
alive["nonCVDeathNext"] = alive.apply(
self._outcome_model_repository.assign_non_cv_mortality_vectorized, axis="columns"
)
will also take place using *Next values which is different than what the simulation has been doing up to now...
And also, the create or rollback events for recalibration are operating on *Next variables, if all those are moved to the latest, ie [-1] values, then all new/rollbacked events will need to operate to the latest values but it will be somewhat difficult to keep track of what took place in this year and what took place in the past...
A thought I had about copying the alive dataframe, moving the *Next values to the latest ones and providing this modified dataframe to estimate_risks may not work. It seems to me to get the risks using *Next values, I need to have even all person instances updated (because the risk calculation is using the [-1] attribute of age (eg) and this is obtained from person instances in this method).
I will keep looking into this...

JB
so, i think that the “next” values are correct. the trick is how to deal with death.
the thing that is strange is that population.advance() is describing a process. at the start of the process…we update the risk factors, in the middle we update the treatment and outcomes, etc. recalibration is at the END of the process. but it is recalibrating the “current” step in teh process, which is to say that it shoudl operate on teh “next” values.
i think what we want to do is:

set all “next” risk factors, treatments and outcomes.
update the data frame so that the “next” element are now the “current” elements (i.e. call:
self.move_people_df_forward(alive)
assign QALYs (they’ll be based on teh updated events).
advance age
push the updates to teh person objects.

JB
my thought was that it’d be easier (and possibly cleaner) to update the alive data frame so that the “Next” variables are moved into the position of the “regular” variables and THEN recalibrate.
why wouldn’t that work?
it will require some tweaks (i.e. the lines below will need to operate on the “regular” variables instead of the “Next” variables), but it seems like shoudl work to me. am i missing something?
recalibration_df.loc[
recalibratedForMedCount.index, "strokeNext"
] = recalibratedForMedCount["strokeNext"]
recalibration_df.loc[
recalibratedForMedCount.index, "strokeFatal"
] = recalibratedForMedCount["strokeFatal"]
recalibration_df.loc[
recalibratedForMedCount.index, "deadNext"
] = recalibratedForMedCount["deadNext"]
recalibration_df.loc[
recalibratedForMedCount.index, "ageAtFirstStroke"
] = recalibratedForMedCount["ageAtFirstStroke"]
recalibration_df.loc[
recalibratedForMedCount.index, "rolledBackEventType"
] = recalibratedForMedCount["rolledBackEventType"]

One thing that I am not sure about now...
I just realized that the "vectorized" methods are applied on person instances, I think at least...and those are updated only at the end....
But, when I modified the alive dataframe's "sbp" values for the untreated group (I did that manually) it did affect the modelEstimatedRR, so it seems to me that changing the dataframe did affect the risk calculations even though based on what I understand now it should not...
Am I wrong that the "vectorized" methods are applied on the person instances and do not use the population dataframe at all?

I changed my mind, "vectorized" refers to a single line on the alive dataframe because a single person instance is represented as a single line on the dataframe...so "vectorized" refers to applying functions in parallel (the pandas parallel) to the alive dataframe lines...

yep!

On Mar 13, 2023, at 6:24 PM, Christos Deligkaris @.***> wrote:
I changed my mind, "vectorized" refers to a single line on the alive dataframe because a single person instance is represented as a single line on the dataframe...so "vectorized" refers to applying functions in parallel (the pandas parallel) to the alive dataframe lines...
—
Reply to this email directly, view it on GitHub https://github.com/jburke5/microsim/issues/40#issuecomment-1467055465, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABDZITT6B6O7GWKYCZDTP5DW36NDVANCNFSM6AAAAAAVNOBTN4.
You are receiving this because you are subscribed to this thread.


Create an inferencing cluster deprecated?

This no longer seems an option - https://learn.microsoft.com/en-us/azure/machine-learning/tutorial-designer-automobile-price-deploy?view=azureml-api-1#create-an-inferencing-cluster

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

ID: 8c4b183b-a78b-a234-338e-d9ca35f95afd
Version Independent ID: 2b911d68-33c2-c586-600c-d7af88602205
Content: Tutorial: Designer - deploy no-code models - Azure Machine Learning
Content Source: articles/machine-learning/v1/tutorial-designer-automobile-price-deploy.md
Service: machine-learning
Sub-service: core
GitHub Login: @likebupt
Microsoft Alias: keli19

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

@michaelspinks
I've delegated this to @likebupt, a content author, to review and share their valuable insights.


would it be possible to bundle this into browser code (e.g. with webpack)

Recently I've been doing diverse R&D on web-apps. I wanted to look into what it would take to bundle a redis-client module into a webpack-built browser application.
I had some idea that maybe, given the pub/sub capabilities and the Lua capabilities, that a redis/disque system could serve in the place of a realtime/websockets-esque web-server.
(serving the static assets constituting the app would be handled by an eviscerated (simple without controller logic or much of anything) server or even pure-CDN)
So, I'm adding this partly as a feature request, but also just looking for feedback on what it would take to implement, potential problems etc.
Hiredis seems to be an obstacle but I'm not sure how much of one.
I'm interested in working on this in a fork as a side project.  Even if it wouldn't be merged, it could be something interesting, and, to me at least, probably very useful.
(edit)
Looks like the net module would be an issue also.
... Maybe a bridge to far and I'll just drop it for the time being.  Still, I think it's an interesting idea and would like to hear opinions about future viability of such a goal.

What's your purpose to run this module on the browser side?

hi ( & thanks for responding to this semi-ridiculous thread )

What's your purpose to run this module on the browser side?

Right so, I do 'fullstack' design+build of complex social-media systems (more complex featurewise than Twitter or Facebook).  Realtime interaction+collaboration between multiple user-nodes is the general essential characteristic of these systems.
I'm looking at re-engineering some systems I built in the past (Bartr/Britvic).  Moving from ugly mess to pristine nirvana is the goal.
My stack for Bartr/Britvic consisted of SocketStream (a NodeJS WebSocket server with some additional frameworky stuff), Redis, and AngularJS on the front end.  Web-app clients are in touch with SocketStream server via WS; this handles all the logic, data layer entirely Redis.
Initially the server-side was pretty MVC flavoured, but without the direct view computations; sending just data to Angular to compute.
I realised long ago that I could eliminate most (IO) transactions to Redis by factoring out the server Model logic into Lua on Redis.
Recently I realised that if I had a direct connect from the browser to Redis I could cut out the middleman (WS server) entirely, provided static assets and initial application load service could be passed to e.g. a CDN.
Probably OT, but included for context:
my ideas for ideal web-app are totally changed from last year.  Then it was Angular, Jade templates, Browserify.  Did some stuff with Grunt and Gulp, then early this year went to a React + Webpack build with inline CSS and markup (all CoffeeScript, no JSX); then I dropped HTML/CSS entirely and developed an all-SVG / React approach to client build, which got great results, but now I'm convinced that the future of webapp graphics presentation (talking strictly 2D) has to be WebGL (because of the performance benefits of assigning all render computation to GPU; (if there is a shim to send React.render comps to GPU that's something to look into) ).  The rise of many-core systems means we need to have a concurrency /parallel-comp strategy for the browser; hoping advanced exploit of WebWorker capabilities will be adequate.  WebRTC capabilities are too good to pass up (my ideal network topology is composition of P2P stuff and a centralised signals network (probably based on Redis/Disque)).  Want to take advantage of cognitive bandwidth of audio channel so WebAudio.  ...
So, the client stack is looking like Flux (no React, just Flux), WebGL, WebAudio(lots of processing via WebRTC uptake of mic channel), WebRTC for P2P, some kind of connection to a Redis/Disque grid, and that's it. Except WebWorkers.  If I can't siphon all of this stuff out to various WebWorkers, the single thread will choke on everything it's going to be attending to.

@kulicuu did you end up pursuing this approach? I am looking to do the same, as I'd rather not use a websocket server when 1) I'd need to duplicate logic in redis to scale out and 2) redis is more adaptable, compatible, and performant. The only solution I've found is to use websockify as a WS -> TCP proxy, but I worry about its performance and scalability.
Especially with the addition of streams to redis, it seems like the way to go compared with a more conceptually-heavy and rigid solution like RabbitMQ w/ webstomp plugin

I never was able to realise this idea technically; I'm still not sure if it's feasible, I've never heard anyone in the Redis community mention it, though I'm not keeping up to date totally with everything going on there.
Currently I'm researching architecture for a commercial realtime marketplace/social system, and while I was originally going with a two-layered PostgreSQL & Redis approach, I'm looking now into RethinkDB, which would reduce complexity and time to develop.


Order by _ts or description?

"To change the query, select Edit Filter, replace the default query with ORDER BY c._ts DESC, and then select Apply Filter.
Screenshot shows a change to the default query to ORDER BY c._ts DESC.
The modified query displays the documents in descending order based on their description, so now your second document is listed first."
Isn't the order based on the _ts field? (Timestamp) instead of description?

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

ID: aede6b44-e843-34dd-1fe1-ad330f3eb6b7
Version Independent ID: bb8b2764-eac1-9efb-62e6-cba31cffd82b
Content: Quickstart: Build a Java app to manage Azure Cosmos DB for NoSQL data
Content Source: articles/cosmos-db/nosql/quickstart-java.md
Service: cosmos-db
Sub-service: nosql
GitHub Login: @seesharprun
Microsoft Alias: sidandrews

@lmalmeida Thanks for reaching out,We will look into this and update you as appropriate.

@lmalmeida, you are correct this is a typo. We are fixing the typo and this issue will auto-close when the fix is merged in.


Dynamically control test time (including initialize/cleanup) and have more granular timeouts.

Description
For years my team has needed more flexibility with test timeouts. There are several characteristics of the problem:
Test time expectation variance: If you lazily initialize test requirements for functional tests, any test may be the one that needs to initialize. For example, imagine you are creating a test database and the first test that needs that kind of database pays the price for creating it. Based on this test A may take 6m if it is the first one to run and 10s if not.  Marking all tests at 6 minutes to account for this problem almost makes test timeouts useless.
Test portion time expectation variance: We may have a test that is expected to take 6 minutes at max, but there is a portion of the test where we attempt to do an operation that should only take 30 seconds. If it takes any longer, something is wrong and we want to fail the test. However, there is no way to do this. In fact, this portion could take 5 minutes, and then we will pass or timeout much later in the test hiding the major regression.
Expected behavior
How we've solved this internally is to:

Force everyone to use a standard base class
Disallow use of the TimeoutAttribute
Create a new DynamicTimoutAttribute which serves the same purpose but is controlled by us.
Create a new concept called a TimeoutScope which has the following properties:

When a timeout scope is created you pass a name and timeout value. We log that a new timeout scope has started.
We create one of these when the test starts using the timeout from the DyanmicTimeoutAttribute or a default value if the attribute was not provided.
When a timeout scope is active, it keeps track of time against the timeout and if we hit the timeout, the scope causes the test to fail.
When a new timeout scope is created, if one is already active, it will pause it. Thus you only have one active scope. Pausing of a timeout scope is logged.
When a timeout scope is disposed, it unpauses the last timeout scope that was added.

In our base class we wrap scopes around test init and test cleanup.
We also assert that there are no active scopes when the test ends.

This enabled patterns like this:
public void TestMethod()
{
// Assume a timeout scope is already running for the main test method and is set to 30 seconds
// This call may be trivially fast, or take a long time depending on whether it is set up already
EnsureDatabaseExists();

// … the rest of the test

}
public void EnsureDatabaseExists()
{
// We want to pause the test's timer but only give this call 30 seconds to succeed.
using (new TimeoutScope(nameof(EnsureDatabaseExists), TimeSpan.FromSeconds(30))
{
var creds = GetDatabaseCredentials();
// … Ensure Database Exists
}
}
public Credential GetDatabaseCredentials()
{
// When this method is called, we were inside of the EnsureDatabaseExists timeout scope
// But since we're starting a new one, we'll pause that until this one finishes.
using (new TimeoutScope(nameof(GetDatabaseCredentials), TimeSpan.FromSeconds(60))
{
// Here we will call out to our secret store which can take some time if it is having issues.
// However, if it takes longer than 60 seconds, we want to fail the test to raise visibility
}
}

@johnmogensen Correct. TestInitialize time is part of test timeout and thus forces user to increase timeout for individual test. Thanks for the suggestions for the issue.
@PBoraMSFT Marking as enhancement.


Uopsif

Don't think I like this.
Though we do need if statements for local groups also. And to deal with non uniform sizes (do we gate the whole kernel, or just the store?)

Changes made in tinygrad/:
------------------------------------------------------------
files                             insertions       deletions
------------------------------------------------------------
tinygrad/codegen/cstyle.py                14              10
tinygrad/codegen/linearizer.py            10               4
------------------------------------------------------------
total                                     24              14
------------------------------------------------------------
lines added in the tinygrad folder: 10

Closing this. Ideally LOAD and CONST should be merged.


WslRegisterDistribution failed with error: 0x80070241 after install KB5003791

Version
Microsoft Windows [version 10.0.19044.1415]
WSL Version

[X] WSL 2
[ ] WSL 1

Kernel Version
<IP_ADDRESS>
Distro Version
Any
Other Software
No response
Repro Steps
Start with Microsoft Windows [version 10.0.19043.1415]
All are fine you can install any distro
Install KB5003791: Update to Windows 10, version 21H2 by using an enablement package
=> Microsoft Windows [version 10.0.19044.1415]
All try install any distro failed with message WslRegisterDistribution failed with error: 0x80070241
Uninstall KB5003791
Everything works perfectly again
Expected Behavior
Installation succes like :
Installing, this may take a few minutes...
Please create a default UNIX user account. The username does not need to match your Windows username.
For more information visit: https://aka.ms/wslusers
Enter new UNIX username:
Actual Behavior
Installing, this may take a few minutes...
WslRegisterDistribution failed with error: 0x80070241
Error: 0x80070241 Windows cannot verify the digital signature of this file. It is possible that a recent hardware or software modification installed a damaged or incorrectly signed file, or it could be malware from an unknown source.
Press any key to continue...
Diagnostic Logs
Feedback Hub

wsl wont start and has exactly the same issue after update. cant access any distros.
windows os build: 19044.1415
I have triple checked all my virtualisation settings in both BIOS and windows features have been enabled. I have also disabled them and re-enabled and rebooted several times too.
If I download any new distro from app store and install, here is the output:
WslRegisterDistribution failed with error: 0x80370102
Error: 0x80370102 The virtual machine could not be started because a required feature is not installed.
If I try to start my existing distro:
Please enable the Virtual Machine Platform Windows feature and ensure virtualization is enabled in the BIOS.
For information please visit https://aka.ms/wsl2-install
Press any key to continue...

/logs

We have update the issue with the link on Feedback Hub link

Thanks @ftoyon.
Looking at the logs, I can see:
366 |   | Error | win:Info | 0 | Unknown | Error | 0 | 6888 | onecore\vm\wsl\lxss\lxcmdlineshared\hcs.cpp | 244 | 0 | 1 | 6888 | 0x80070241 | (null) |   |   |   |   |   |   |   |   |   |   |   |   |   |   | 1 | 16.860752200

The issue is that WSL fails to communicate to the HostCompute service, probably because it fails to start.
Can you share the output of sc start vmcompute in an elevated command prompt ?

Hi @OneBlue,
The service is started
sc start vmcompute
[SC] StartService échec(s) 1056 :

Une instance du service s’exécute déjà.

and if I restart it after stoping service dependecy CmService:
sc stop vmcompute

SERVICE_NAME: vmcompute
        TYPE               : 10  WIN32_OWN_PROCESS
        STATE              : 3  STOP_PENDING
                                (STOPPABLE, NOT_PAUSABLE, IGNORES_SHUTDOWN)
        WIN32_EXIT_CODE    : 0  (0x0)
        SERVICE_EXIT_CODE  : 0  (0x0)
        CHECKPOINT         : 0x0
        WAIT_HINT          : 0x0

sc start vmcompute

SERVICE_NAME: vmcompute
        TYPE               : 10  WIN32_OWN_PROCESS
        STATE              : 2  START_PENDING
                                (NOT_STOPPABLE, NOT_PAUSABLE, IGNORES_SHUTDOWN)
        WIN32_EXIT_CODE    : 0  (0x0)
        SERVICE_EXIT_CODE  : 0  (0x0)
        CHECKPOINT         : 0x0
        WAIT_HINT          : 0x0
        PID                : 27784
        FLAGS              :

Thank you @ftoyon. I had a deeper look and noticed this:
427, , , , , , ActivityError, 1, 9376, 16777216, {2147942977; onecore\vm\compute\shared\vmwp\lib\workerprocessdevice.cpp; 81; vmcompute.exe; 0; ; 9376; \VirtualMachine_ModifySettings\ComputeSystem_ConfigureGpu; 20; VirtualMachine_ModifySettings; ; 21; ComputeSystem_ConfigureGpu; ; 30; 20; }, , , , , , , , , , , , , , , , , , , , 1, 16.860577800

This error is thrown when WSL tries to attach virtual GPU's to the VM.
Can you try to add:
[wsl2]
gpuSupport=false

To %userprofile%/.wslconfig, and see if that solves the issue ?
Also, can you share the ouput of Get-WmiObject Win32_VideoController ? I wonder if the issue is caused by an specific GPU driver

Hi @OneBlue,
I'm create a file %userprofile%/.wslconfig, but that does not correct the problem.

I worried about not seeing any new requests or information!
Do you have any clues for a solution?

Thanks for the update @ftoyon. I'm surprised that the .wslconfig change didn't help.
Can capture logs again with the .wslconfig change ?

Hi,
New try with manual trace because we can't make an log with hub !
See wsl.zip
Thank you!

Same issue on:
Windows 11 Education
Version	21H2
Build 22000.526
I also tried the .wslconfig suggestion, but it changed nothing.
Output of Get-WmiObject Win32_VideoController
C:\Windows on ☁ (US East (N. Virginia))
❯  Get-WmiObject Win32_VideoController

RunspaceId                   : fb605f84-5739-4bb0-869e-f0471264c33f
__GENUS                      : 2
__CLASS                      : Win32_VideoController
__SUPERCLASS                 : CIM_PCVideoController
__DYNASTY                    : CIM_ManagedSystemElement
__RELPATH                    : Win32_VideoController.DeviceID="VideoController1"
__PROPERTY_COUNT             : 59
__DERIVATION                 : {CIM_PCVideoController, CIM_VideoController, CIM_Controller, CIM_LogicalDevice…}
__SERVER                     : REDQUEEN1
__NAMESPACE                  : root\cimv2
__PATH                       : \\REDQUEEN1\root\cimv2:Win32_VideoController.DeviceID="VideoController1"
AcceleratorCapabilities      :
AdapterCompatibility         : Intel Corporation
AdapterDACType               : Internal
AdapterRAM                   :<PHONE_NUMBER>
Availability                 : 3
CapabilityDescriptions       :
Caption                      : Intel(R) Iris(R) Plus Graphics
ColorTableEntries            :
ConfigManagerErrorCode       : 0
ConfigManagerUserConfig      : False
CreationClassName            : Win32_VideoController
CurrentBitsPerPixel          : 32
CurrentHorizontalResolution  : 2736
CurrentNumberOfColors        :<PHONE_NUMBER>
CurrentNumberOfColumns       : 0
CurrentNumberOfRows          : 0
CurrentRefreshRate           : 59
CurrentScanMode              : 4
CurrentVerticalResolution    : 1824
Description                  : Intel(R) Iris(R) Plus Graphics
DeviceID                     : VideoController1
DeviceSpecificPens           :
DitherType                   : 0
DriverDate                   :<PHONE_NUMBER>0000.000000-000
DriverVersion                : <IP_ADDRESS>21
ErrorCleared                 :
ErrorDescription             :
ICMIntent                    :
ICMMethod                    :
InfFilename                  : oem185.inf
InfSection                   : iICLD_w10_DS_N
InstallDate                  :
InstalledDisplayDrivers      : C:\WINDOWS\System32\DriverStore\FileRepository\iigd_dch.inf_amd64_d73f88d32ddb95d3\igdum
                               dim64.dll,C:\WINDOWS\System32\DriverStore\FileRepository\iigd_dch.inf_amd64_d73f88d32ddb
                               95d3\igd10iumd64.dll,C:\WINDOWS\System32\DriverStore\FileRepository\iigd_dch.inf_amd64_d
                               73f88d32ddb95d3\igd10iumd64.dll,C:\WINDOWS\System32\DriverStore\FileRepository\iigd_dch.
                               inf_amd64_d73f88d32ddb95d3\igd12umd64.dll
LastErrorCode                :
MaxMemorySupported           :
MaxNumberControlled          :
MaxRefreshRate               : 59
MinRefreshRate               : 59
Monochrome                   : False
Name                         : Intel(R) Iris(R) Plus Graphics
NumberOfColorPlanes          :
NumberOfVideoPages           :
PNPDeviceID                  : PCI\VEN_8086&DEV_8A5A&SUBSYS_00371414&REV_07\3&11583659&0&10
PowerManagementCapabilities  :
PowerManagementSupported     :
ProtocolSupported            :
ReservedSystemPaletteEntries :
SpecificationVersion         :
Status                       : OK
StatusInfo                   :
SystemCreationClassName      : Win32_ComputerSystem
SystemName                   : REDQUEEN1
SystemPaletteEntries         :
TimeOfLastReset              :
VideoArchitecture            : 5
VideoMemoryType              : 2
VideoMode                    :
VideoModeDescription         : 2736 x 1824 x<PHONE_NUMBER> colors
VideoProcessor               : Intel(R) Iris(R) Graphics Family

Output of sc start vmcompute
C:\Windows on ☁  (US East (N. Virginia)) took 24s
❯ sc start vmcompute
[SC] StartService FAILED 1056:

An instance of the service is already running.

Output of sc stop vmcompute
C:\Windows on ☁  (US East (N. Virginia))
❯ sc stop vmcompute
[SC] ControlService FAILED 1051:

A stop control has been sent to a service that other running services are dependent on.

Additionally, my computer has experienced numerous BSODs since the first instance of the bug about three or four days ago. I have lost all ability to access my existing WSL2 builds. Here are some of the error messages I would receive.
System.InvalidOperationException:
Failed to deploy distro docker-desktop to C:\Users\dmreh\AppData\Local\Docker\wsl\distro: exit code: -1
 stdout: Please enable the Virtual Machine Platform Windows feature and ensure virtualization is enabled in the BIOS.

For information please visit https://aka.ms/wsl2-install

 stderr:
   at Docker.ApiServices.WSL2.WslShortLivedCommandResult.LogAndThrowIfUnexpectedExitCode(String prefix, ILogger log, Int32 expectedExitCode) in C:\workspaces\PR-17132\src\github.com\docker\pinata\win\src\Docker.ApiServices\WSL2\WslCommand.cs:line 146
   at Docker.Engines.WSL2.WSL2Provisioning.<DeployDistroAsync>d__17.MoveNext() in C:\workspaces\PR-17132\src\github.com\docker\pinata\win\src\Docker.Engines\WSL2\WSL2Provisioning.cs:line 168
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Docker.Engines.WSL2.WSL2Provisioning.<ProvisionAsync>d__8.MoveNext() in C:\workspaces\PR-17132\src\github.com\docker\pinata\win\src\Docker.Engines\WSL2\WSL2Provisioning.cs:line 77
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Docker.Engines.WSL2.LinuxWSL2Engine.<DoStartAsync>d__28.MoveNext() in C:\workspaces\PR-17132\src\github.com\docker\pinata\win\src\Docker.Engines\WSL2\LinuxWSL2Engine.cs:line 179
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Docker.ApiServices.StateMachines.TaskExtensions.<WrapAsyncInCancellationException>d__0.MoveNext() in C:\workspaces\PR-17132\src\github.com\docker\pinata\win\src\Docker.ApiServices\StateMachines\TaskExtensions.cs:line 29
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Docker.ApiServices.StateMachines.StartTransition.<DoRunAsync>d__5.MoveNext() in C:\workspaces\PR-17132\src\github.com\docker\pinata\win\src\Docker.ApiServices\StateMachines\StartTransition.cs:line 67
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at Docker.ApiServices.StateMachines.StartTransition.<DoRunAsync>d__5.MoveNext() in C:\workspaces\PR-17132\src\github.com\docker\pinata\win\src\Docker.ApiServices\StateMachines\StartTransition.cs:line 92

This one was the most common, everytime I would run wsl.exe or ubuntu.exe it would say this no matter what terminal I used.
Overlapped I/O operation is in progress.

[process exited with code 1 (0x00000001)]

I since tried turning all the optional features for WSL2 off and then re-enabling them, but it just says this.
C:\Windows on ☁  (US East (N. Virginia))
❯ wsl.exe
Please enable the Virtual Machine Platform Windows feature and ensure virtualization is enabled in the BIOS.
For information please visit https://aka.ms/wsl2-install

Thanks for the logs @ftoyon.
The latest logs show the same error so it looks like something is wrong with some of the system binaries.
What's the output of (elevated command prompt):
sfc /scannow

?

Hi @OneBlue.
sfc not found intigrity violation.
For information when I uninstall the KB5003791 everything works correctly again and when I reinstall the KB I have the problem.

Hi @OneBlue
I can hope for a solution

@ftoyon: I looked at the logs again and it still looks like WSL is trying to configure the GPU, although .wslconfig has gpuSupport set to false, which is really weird.
Can you please try set this in .wslconfig again:
[wsl2]
gpuSupport=false

Then run: wsl --shutdown
And then try to start wsl with log collection again ? I suspect that the .wslconfig change wasn't taken into account.

Hi !
As a reminder: in order to reproduce the error, I need to reinstall the KB5003791, then uninstalling this KB allows WSL to rework correctly again.
Another point ; it is now impossible for me to reuse the feedback hub to collect information, I have to go through wsl.wprp!
wsl crash info.zip
In this file you find:

my ".wslconfig" file
a screenshoot of  wsl --instal -d ubuntu window result
a screenshoot of my %userprofile% folder
a file with the Get-WmiObject Win32_VideoController output
the wsl.wprp result

Thanks @ftoyon.
Looking at the logs, it looks like the signature of C:\windows\System32\vmvpci.dll isn't accepted.
Can you share the output of:
Get-AuthenticodeSignature C:\windows\System32\vmvpci.dll

And:
Get-AuthenticodeSignature C:\windows\System32\*.dll | where { $_.Status.ToString() -ne "Valid"}
Get-AuthenticodeSignature C:\windows\System32\drivers\*.sys | where { $_.Status.ToString() -ne "Valid"}

In an elevated powershell ?
That should help us understand which signatures are rejected

Hi !

                                          NotSigned                              Windows.Internal.PredictionUnit.dll
                                          NotSigned                              Windows.Management.SecureAssessment...
                                          NotSigned                              Windows.Management.SecureAssessment...
                                          NotSigned                              Windows.Media.Renewal.dll
                                          NotSigned                              WindowsIoTCsp.dll
                                          NotSigned                              wmcodecdspps.dll
                                          NotSigned                              wmdmlog.dll
                                          NotSigned                              wmdmps.dll
                                          NotSigned                              WmpDui.dll
                                          NotSigned                              WMSPDMOE.DLL
                                          NotSigned                              wmvdspa.dll
                                          NotSigned                              WMVSENCD.DLL
                                          NotSigned                              WMVXENCD.DLL
                                          NotSigned                              WpdMtp.dll
                                          NotSigned                              WpdMtpUS.dll
                                          NotSigned                              wsepno.dll

> Get-AuthenticodeSignature C:\windows\System32\drivers\*.sys | where { $_.Status.ToString() -ne "Valid"}

    Répertoire : C:\windows\System32\drivers

SignerCertificate                         Status                                 Path
-----------------                         ------                                 ----
                                          NotSigned                              ew_usbccgpfilter.sys
                                          NotSigned                              hw_cdcacm.sys
                                          NotSigned                              hw_quusbmdm.sys
                                          NotSigned                              hw_quusbnet.sys
                                          NotSigned                              hw_usbdev.sys
                                          NotSigned                              rdpbus.sys
                                          NotSigned                              rdpdr.sys
                                          NotSigned                              smbdirect.sys

Hi @OneBlue
Do you find anything?

Sorry @ftoyon, this issue fell off my radar.
Looking at the output you shared, I think the issue is that  C:\windows\System32\vmvpci.dll shows as 'Not signed'.
It should say 'Valid' for things to work correctly.
I'm not sure why this file shows up as not signed, I wonder if maybe a certificate is missing from the trusted root, or if maybe the time configured on your machine is off causing certificate validities to be wrong.
Does this file show up as signed if you uninstall KB5003791 ?

Don't worry it can happen.
Yes as I already said by uninstalling the KB5003791 it works again.

Hi @OneBlue !
This issue seems to have fallen off your radar again.
When I uninstall the KB5003791 I get the same results for Get-AutheticodeSignature and all working fine.

Hi @OneBlue you forgot me again?

Hi @OneBlue still no news !

Thanks for the ping @ftoyon. Unfortunately I don't have any good explanation to why vmvpci.dll isn't signed on your machine.
One workaround I can think of would be to disable driver signature enforcement, via something like:
bcdedit /set testsigning on
Let me know if that helps.

Hi @OneBlue
The installation of 22H2 patch solve all problems
Thank's for your help

For the people finding this thread and who already are on 22H2, I had the same problem (a bunch of unsigned dll in system32) and the solution was to do a clean "In-place Upgrade". Essentially to reinstall Windows while keeping the rest of the system intact. I followed step 3 of this guide and now both WSL and Easy Anticheat are happy.


Groovy 1.8.9 no longer available

I realize groovy no longer releases updates for it but I think you should at least include the latest version of every major version of groovy released.
To reproduce attempt the following: gvm install groovy 1.8.9

Please refer to #331 for the reason.

Why close the issues?    Guess I'll build it from source.

I've got a system that still has 1.8.9.


[HAMMER] Lock money gem to 6.13.1

Hammer branch version of https://github.com/ManageIQ/manageiq/pull/19577, but use 6.13.1 which is what downstream build is currently using for this branch.

The Travis error is coming from backport of https://github.com/ManageIQ/manageiq/pull/19574. (But because of this money gem issue, we couldn't see what the error was...)

The undefined local variable or method 'dialog' errror is fixed in https://github.com/ManageIQ/manageiq/pull/19646


[Q] Default number of iterations for random search

Hello,
I am new to  wandb, so pardon if the question was asked before (I have checked previous issues but couldn't find any)
While defining the sweep configuration mentioned here, wandb provides three options that is grid, random, bayes for hyperparamter optimization.
For method = random as per my understanding, it takes a random combination of the parameters for each iteration. That is same mentioned in the docs

random
Random search chooses a random set of values on each iteration.

But usually for random search, user has to give number of iterations ?, so what is default value that wandb uses for random. Also, how can a user give number of iterations in sweep configuration ?
Thanks.

Hi @suchith-sixsense thank you for writing in! First you will need to initialize the sweep configuration file as explained here, using the wandb.sweep call which will generate a sweep ID. Afterwards, you will need to start the sweep agents using the sweep ID and the number of experiments to run (count argument). Random and Bayesian searches will run forever unless you stop them or specify the count. Would this help, and are there any further questions regarding this?

Hello @thanos-wandb,
Thanks for the answer. Closing the issue.


How to write two user_claims in creating token?

id_claim = { id": id}
active_claim ={"active": active}

On documentation additional_claims is made by
'''another_claims = {"foo": ["fiz","baz"]}'''
access_token = Authorize.create_access_token(subject=user.username,user_claims= another_claims)
I want to have separate id_claim ,active_claim not like in anotehr_claims
{

  "aud": "#####",
  "exp": ####,
  "jti": "######",
  "iat": #####,
  "nbf": #####,
  "sub": "abcdc",
  "username": "***",
  "id": ****,
  "tokenCreated": "2020-11-20 16:43:06",
  "profileName": "PROFILE",
  "profileId": 1,
  "roles": [
    "Purchase Source",

    "Old Application Report"

  ],
  "isTemp": false,
  "isApprovalRequired": true
}

Like this I want to add other_claims isTemp,Isapprovalrequired , profileid

I don't understand what you mean maybe this is what you want to do
    id_claim = {"id": "id_claim"}
    active_claim = {"active": "active_claim"}
    other_claim = {"isTemp": False, "isApprovalRequired": True, "profileId": 1}

    access_token = Authorize.create_access_token(subject=user.username,
        user_claims={**id_claim,**active_claim,**other_claim}
    )


Fullscreen video does not span the whole screen

When I make video fullscreen it doesn't fill the whole screen but just a portion at the top left corner. The rest of the screen is garbage or some filled color.
I have two displays attached. The main one is 2560x1440, it's the one that I'm viewing the video on. The other one is a TV 1920x1080. The two displays are configured to extend the desktop (i.e. not mirror). Incidentally, the fullscreen video occupies the top left 1920x1080 area of the main screen, so I thought this could be related.
Ubuntu 15.10 x86_64 with XFCE, freshplayerplugin 0.3.1+git20150706~webupd8~vivid, Nvidia drivers 346.59. This started to happen just recently, after freshplayerplugin and xfwm4 were updated (Nvidia drivers were not updated). Fullscreen videos worked fine before the update.

Hi. Could you run code from tmp-show-window-geometry branch? It will print geometry of fullscreen window to standard output, so browser should be run from terminal emulator prompt.

Similar setup, same issue. Started after the update from 0.3.0 to 0.3.1.

@i-rinat I tried the code from the branch, the console output is as follows:
(process:27056): GLib-CRITICAL **: g_slice_set_config: assertion 'sys_page_size == 0' failed
libva info: VA-API version 0.37.0
libva info: va_getDriverName() returns 0
libva info: Trying to open /usr/lib/x86_64-linux-gnu/dri/nvidia_drv_video.so
libva info: Found init function __vaDriverInit_0_35
libva info: va_openDriver() returns 0
NOT SANDBOXED
[fresh 27143] not implemented: PPB_OpenGLES2VertexArrayObject;1.0
[fresh 27143] not implemented: PPB_OpenGLES2DrawBuffers(Dev);1.0
[fresh] [error] [NP] caught Xlib error 8
[fresh] [error] [fresh] [error] [NP] caught Xlib error 171
[fresh] [error] [NP] caught Xlib error 8
[fresh] [error] [NP] caught Xlib error 171
ppb_graphics3d_create, glXMakeCurrent failed
[fresh] [error] ppb_graphics3d_create, glXMakeCurrent failed
ConfigureNofity, 10x10+0+0
ConfigureNofity, 2560x1440+0+0
ConfigureNofity, 2560x1440+0+0
Expose, 2560x1440+0+0

One interesting effect that I also noticed is that Flash options menu seems small when in fullscreen, but it doesn't react to mouse pointer when hovered over or clicked on. It does react when the mouse is near the center of the screen, where the menu is usually at. It's as if the whole video area with the menu are scaled down to 1920x1080.

PepperFlash started to query screen size more often since I wrote the code. So I've changed ppb_flash_fullscreen_get_screen_size() to return actual sizes, which are obtained from window manager in b100b9ccbc4cf0361b759f6918d563cc6c2666ec.
Could you test again? Now from master branch.

Yes, the code from master fixes the problem. Thanks!

That's good.


speed-test snap error TypeError: Cannot read property 'settings' of null

I installed speed-test from a snap today, and when I attempt to run it on terminal it returns:
  Ping ⠦

Download
Upload
events.js:141
throw er; // Unhandled 'error' event
^
TypeError: Cannot read property 'settings' of null
at gotServers (/snap/speed-test/1/lib/node_modules/speed-test/node_modules/speedtest-net/index.js:522:20)
at /snap/speed-test/1/lib/node_modules/speed-test/node_modules/speedtest-net/index.js:48:16
at /snap/speed-test/1/lib/node_modules/speed-test/node_modules/speedtest-net/index.js:238:7
at Parser. (/snap/speed-test/1/lib/node_modules/speed-test/node_modules/speedtest-net/node_modules/xml2js/lib/xml2js.js:484:18)
at emitOne (events.js:77:13)
at Parser.emit (events.js:169:7)
at Parser.exports.Parser.Parser.parseString (/snap/speed-test/1/lib/node_modules/speed-test/node_modules/speedtest-net/node_modules/xml2js/lib/xml2js.js:494:16)
at Parser.parseString (/snap/speed-test/1/lib/node_modules/speed-test/node_modules/speedtest-net/node_modules/xml2js/lib/xml2js.js:7:59)
at exports.parseString (/snap/speed-test/1/lib/node_modules/speed-test/node_modules/speedtest-net/node_modules/xml2js/lib/xml2js.js:535:19)
at /snap/speed-test/1/lib/node_modules/speed-test/node_modules/speedtest-net/index.js:236:5

Thanks for reporting.
It seems to be an issue with underlying library that connects to speed-test.net servers.
It was already reported there: https://github.com/sindresorhus/speed-test/issues/36
I'll update the snap once it's fixed.

@gustavopadre Turns out issue was already fixed (https://github.com/ddsol/speedtest.net/issues/25), so I repackaged the snap with updated libraries.
It should work fine after the update.
Thanks for the report!


Make matplotlib dependency optional

In the README, matplotlib is listed as an optional dependency , but currently probfit won't import without matplotlib being installed. This makes matplotlib a mandatory dependency.
This is now the case because the __init__ imports modules that themselves import matplotlib. There are two solutions I can think of.

Don't import the offending modules in the __init__; or
Move the matplotlib imports into the methods that use them. This means changing a module like

import matplotlib.pyplot as plt

def foo():
    return plt.figure()

to something like
def foo():
    import matplotlib.pyplot as plt
    return plt.figure()

Note that option 1 will break the probfit 1.0.5 API, as users could no longer do, for example from probfit import draw_compare_hist, but rather from probfit.plotting import …. Seeing as we're not contracted by semantic versioning or anything, this isn't technically a problem, but it's something to consider. (We could wrap the plotting import in a try/except I guess, but it's a little ugly, as then the API changes depending on what's installed.)
Module-by-module
The offending modules are oneshot, toy, and plotting.
oneshot
I've not used this module. I guess the purpose is to allow a single call to do the fitting and plotting (to do things in 'one shot'). I don't understand the distinction between the fit_ series of methods and the try_ series.
Personally I don't know how useful having this is, you save a couple of lines at the expense of clarity. So, here I'm in favour of option 1; remove the oneshot import from the __init__. If people want a quick fitting-and-plotting method, they'll want matplotlib and can import probfit.oneshot themselves.
toy
Has a single method, gen_toy, that has a block that plots the PDF on top of the generated data, if the quiet kwarg is False (defaults to True). I am in favour of moving this logic to plotting, as a compare_pdf_to_data method or something.
If a user wants to do the comparison, they would then do something like:
from probfit import gen_toy
from probfit import plotting

toy_data = gen_toy(f, nsample, bound)
plotting.compare_pdf_to_data(f, toy_data)

plotting
I would really rather go with option 1, keeping the matplotlib import at the module level, and just not importing plotting in the __init__. I think this makes the most sense. matplotlib is listed as an optional dependency, and for plotting probfit uses matplotlib. No mpl, no plotting, so it doesn't make sense to expose the plotting methods at the probfit.<whatever> level.
The probfit API will then no longer container probfit.<some method from plotting>.

I think the number of probfit users is small, and backward-compat is not a big concern.
Still, if we do break it, my suggestion would be to use semver and make the next release 2.0 instead of 1.1.
My preference would be to keep exposing all functionality in the top-level probfit namespace instead of introducing new sub-packages probfit.oneshot and probfit.plotting. It's a small package, and having everything in one namespace is easier to remember or find things for users.
It's also easy to implement by putting the matplotlib imports in the functions.
The project I'm most familar does it the same way, they even go to great lengths that everything can be imported without matplotlib and just by importing something, pyplot doesn't start (which pops up a GUI window for the default interactive backend):
https://github.com/astropy/astropy/blob/master/astropy/visualization/mpl_normalize.py#L16
There should then be a travis-ci build that doesn't have MPL and plotting tests need to get a skip decorator like we discussed in another issue yesterday.
@alexpearce - You have a preference for introducing probfit.oneshot and probfit.plotting, right?
So it's 1:1 and we need at least a third opinion.
:-)
@piti118 - Please comment on this one!

You have a preference for introducing probfit.oneshot and probfit.plotting, right?

Well, it's one solution. I wouldn't enjoy having a lot of import matplotlib duplication, partly out of tidiness and partly for semantics. Having every method in plotting import matplotlib just… feels gross 😄
And yes, I suppose in general I'm fine with having submodules, particularly in this case when it actually ring-fences an optional subset of the functionality (things that are plotting related).

@alexpearce - My suggestion would be that you wait a day or two for comments here, and if you get none, implement what you think best.
So if you do introduce probfit.plotting, you'll have to change the Sphinx autodoc API to show that, and as I said, I'd suggest to just change the milestone and next release version to 2.0 instead of 1.1.

Hi @alexpearce, @cdeil, you may have seen that we dealt with this pragmatically, as some users could not in fact install on a Mac's virtual env because of these global imports. It's probably a good idea to review these and other matters at some point. For now let me close this as it's effectively sorted out.
Non-trivial improvements can indeed come in a version 2.0.


Bug: Exposed Coding in Family Plan

When adding a child to the Family Plan, there is exposed coding shown at the bottom of the window. Please see screen recording for reference.
Contact @DDisabat for further clarification if needed.
https://user-images.githubusercontent.com/78102622/124184243-1fd14c00-da6e-11eb-82dd-db99a8202095.mp4

Looks like some local debugging code was accidentally checked in

PR merged, this issue can be resovled

Thank you so much for volunteering your time on this! I will go ahead and close the issue :)


Add support for latest Phoenix release (version 1.3.0-rc.0)

I have upgraded to the latest phoenix release version 1.3.0-rc.0, however when run mix deps.get I keep getting error Failed to use "phoenix" (version 1.3.0-rc.0) because   guardian (version 0.14.2) requires ~> 1.2.0
Is it possible to add support for latest release?
Thanks in advance!

Was addressed by others already in #273


feat: Use OAuth flow to generate R2 tokens for Pipelines

Fixes https://jira.cfdata.org/browse/PIPE-159.
This commit changes the generateR2Tokens flow which will direct the user to the web browser to perform a OAuth flow to grant the Workers Pipelines client the ability to generate R2 tokens on behalf of the user. This will only run if the user does not provide the credentials as CLI parameters.
Due to requiring user interactivity, and reliance on the callbacks, there is no easy way to support a "headless" mode for wrangler pipelines create (or update) unless the user provides the tokens as arguments. The same applies for testing this flow, which can only be done manually at this time.

Tests

[ ] TODO (before merge)
[ ] Tests included
[ ] Tests not necessary because:

E2E Tests CI Job required? (Use "e2e" label or ask maintainer to run separately)

[ ] I don't know
[ ] Required
[ ] Not required because:

Public documentation

[ ] TODO (before merge)
[ ] Cloudflare docs PR(s):
[ ] Documentation not necessary because:

fyi: @oliy @hhoughgg


ENH: Improve to_string typing

[x] Closes #xxxx (Replace xxxx with the Github issue number)
[x] Tests added: Please use assert_type() to assert the type of any return value

Fixed the small things and merged main.


Fig doesn't boot ejabberd container properly

Fig config:
xmpp:
  image: rroemhild/ejabberd

Running using fig up:
➭ fig up
Creating Desktop_xmpp_1...

Can anyone validate my thinking?

@benlangfeld as you enhanced the image, this issue here is solved and can be closed, right?


Create M as and P as cached functions otherwise restrictions are persistent

Currently M and P are as default arguments (https://github.com/genthalili/searoute-py/blob/85c395fa7dbe9111ad91101bc3aa49079229577d/searoute/searoute.py#L16) , in python default arguments should not be mutable, so we make them None and then initialise in the function.

This PR fixes a bug that can occur when using restrictions currently if you

Solve with no restriction restrictions=None
Solve with a restriction restrictions = ['suez']

Then if you solve with no restriction restrictions=None it keeps the suez restriction.
Here is an MWE for the problem
import searoute as sr
import folium

src_lat = -15.46667
src_lon = 28.26667
dst_lat = 51.5
dst_lon = -0.1666667
b = sr.searoute(
    [src_lon, src_lat],
    [dst_lon, dst_lat],
    include_ports=True,
    port_params=dict(
        country_pol="ZM",
        country_pod="GB"
    ),
    restrictions = None
)
d = sr.searoute(
    [src_lon, src_lat],
    [dst_lon, dst_lat],
    include_ports=True,
    port_params=dict(
        country_pol="ZM",
        country_pod="GB"
    ),
    restrictions = ['suez']
)
nb = sr.searoute(
    [src_lon, src_lat],
    [dst_lon, dst_lat],
    include_ports=True,
    port_params=dict(
        country_pol="ZM",
        country_pod="GB"
    ),
    restrictions = None
)
# Swap coord order for folium
b['geometry']['coordinates'] = [list(reversed(coord)) for coord in b['geometry']['coordinates']]
d['geometry']['coordinates'] = [list(reversed(coord)) for coord in d['geometry']['coordinates']]
nb['geometry']['coordinates'] = [list(reversed(coord)) for coord in nb['geometry']['coordinates']]

m = folium.Map(location=[0,0],zoom_start=3)
folium.PolyLine(b['geometry']['coordinates'], color="blue", weight=2.5, opacity=1).add_to(m)
folium.PolyLine(d['geometry']['coordinates'], color="red", weight=2.5, opacity=1).add_to(m)
folium.PolyLine(nb['geometry']['coordinates'], color="black", weight=2.5, opacity=0.5).add_to(m)

m

You can see the disrupted and the second undisrupted go via the horn of Africa while the first undisrupted uses the Suez canal

thanks @this-josh !

No problem, thanks for a great package!


Scale logstash configuration update bug

Sometimes a Ruby file descriptor error occurs when trying to update the Scale logstash configuration.

OBE as we've switched to fluentd