Improve our release process with goreleaser

What is the purpose of the change
This PR introduces the .goreleaser.yaml configuration file and sets up the release process for the project osmosisd.
Goreleaser is a popular tool used in the Go ecosystem to automate the build and release workflow for Go projects. It simplifies the process of building binaries, creating archives, generating checksums, and publishing releases across multiple platforms and architectures.
The goreleaser.yaml file included in this PR defines the configuration for the release process of osmosisd.
Let's summarize the key elements of the configuration:

Project Information:

project_name: Specifies the name of the project as osmosisd.

Environment Variables:

Specifies the needed environment variables

Builds:
The configuration defines four build targets, each specifying different operating systems and architectures:

osmosisd-darwin-amd64: Builds the osmosisd binary for macOS (darwin) on AMD64 architecture.
osmosisd-darwin-arm64: Builds the osmosisd binary for macOS (darwin) on ARM64 architecture.
osmosisd-linux-amd64: Builds the osmosisd binary for Linux on AMD64 architecture.
osmosisd-linux-arm64: Builds the osmosisd binary for Linux on ARM64 architecture.

For each build, the configuration specifies the necessary build commands, hooks, environment variables, Go compiler options, flags, and linker flags.

Universal Binaries:

osmosisd-darwin-universal: Creates a universal binary that includes both the macOS (darwin) AMD64 and ARM64 builds. The resulting binary replaces the individual darwin build binaries.

Archives:
The configuration defines an archive configuration named zipped that generates zip archives for the universal darwin binary and Linux AMD64/ARM64 binaries.

Checksums:

Generates a checksum file named osmosisd-{{ .Version }}-checksums.txt using the SHA256 algorithm.

Brew Formula:

Defines a brew formula for osmosisd called osmosisd. The formula installs the osmosisd binary and includes tests and installation instructions. This would allow user to install osmosisd with brew install osmosisd

Release Configuration:

Create a draft release following the template
Upload the necessary binaries

There a lot of options that we could customize in this file.
For example we could automatically announce on Discord, Slack, Twitter, etc.. once the release is done: https://goreleaser.com/customization/announce/
Testing and Verifying
I have used this .goreleaser.yaml to create the following release in my local fork: Link to Release
To replicate the release process, execute the following command:

Fork the osmosis repo with all the tags

Clone the repo and select the tag

git clone https://github.com/<YOUR_GITHUB_USER>/osmosis
git checkout v16.0.0

Copy this .goreleaser.yaml

Edit the .goreleaser.yaml to avoid creating a release in the real repository.

release:
  github:
    #owner: osmosis-labs
    owner: <YOUR_GITHUB_USER>
    name: osmosis

Run goreleaser-cross:

docker run -e GITHUB_TOKEN=<GITHUB_TOKEN_WITH_REPO_ACCESS> -v /var/run/docker.sock:/var/run/docker.sock -v pwd:/go/src/osmosisd -w /go/src/osmosisd ghcr.io/goreleaser/goreleaser-cross:v1.20.5 release --clean

Replace <GITHUB_TOKEN_WITH_REPO_ACCESS> with an actual GitHub token that has access to the repository.
Documentation and Release Note

[ ] Does this pull request introduce a new feature or user-facing behavior changes?
[ ] Changelog entry added to Unreleased section of CHANGELOG.md?

Where is the change documented?

[ ] Specification (x/{module}/README.md)
[ ] Osmosis documentation site
[ ] Code comments?
[x] N/A

If you are curious these are the logs:
docker run     -e GITHUB_TOKEN=<TOKEN>     -v /var/run/docker.sock:/var/run/docker.sock     -v `pwd`:/go/src/osmosisd     -w /go/src/osmosisd ghcr.io/goreleaser/goreleaser-cross:v1.20.5 release --clean --skip-validate

Logs:
  • starting release...
  • loading config file                              file=.goreleaser.yaml
  • loading environment variables
    • using token from "$GITHUB_TOKEN"
  • getting and validating git state
    • building...                                    commit=d72fe81b5ed9fdf5ed6a4d41ad309592b2858a1e latest tag=v16.0.0
    • pipe skipped                                   reason=validation is disabled
  • parsing tag
  • setting defaults
  • checking distribution directory
    • cleaning dist
  • loading go mod information
  • build prerequisites
  • writing effective config file
    • writing                                        config=dist/config.yaml
  • building binaries
    • building                                       binary=dist/osmosisd-linux-arm64_linux_arm64/osmosisd
    • building                                       binary=dist/osmosisd-darwin-amd64_darwin_amd64_v1/osmosisd
    • building                                       binary=dist/osmosisd-linux-amd64_linux_amd64_v1/osmosisd
    • building                                       binary=dist/osmosisd-darwin-arm64_darwin_arm64/osmosisd
    • running hook                                   hook=wget https://github.com/CosmWasm/wasmvm/releases/download/v1.2.3/libwasmvm_muslc.aarch64.a -O /usr/lib/aarch64-linux-gnu/libwasmvm_muslc.a
    • running hook                                   hook=wget https://github.com/CosmWasm/wasmvm/releases/download/v1.2.3/libwasmvmstatic_darwin.a -O /lib/libwasmvmstatic_darwin.a
    • running hook                                   hook=wget https://github.com/CosmWasm/wasmvm/releases/download/v1.2.3/libwasmvm_muslc.x86_64.a -O /usr/lib/x86_64-linux-gnu/libwasmvm_muslc.a
    • running hook                                   hook=wget https://github.com/CosmWasm/wasmvm/releases/download/v1.2.3/libwasmvmstatic_darwin.a -O /lib/libwasmvmstatic_darwin.a    • took: 1m17sibwasmvmstatic_dar
  • universal binaries
    • creating from 2 binaries                       id=osmosisd-darwin-universal binary=dist/osmosisd-darwin-universal_darwin_all/osmosisd
  • archives
    • skip archiving                                 binary=osmosisd name=osmosisd-16.0.0-darwin-all
    • skip archiving                                 binary=osmosisd name=osmosisd-16.0.0-linux-amd64
    • skip archiving                                 binary=osmosisd name=osmosisd-16.0.0-linux-arm64
    • creating                                       archive=dist/osmosisd-16.0.0-darwin-all.zip
    • creating                                       archive=dist/osmosisd-16.0.0-linux-amd64.zip
    • creating                                       archive=dist/osmosisd-16.0.0-linux-arm64.zip
    • no files matched                               glob=none*
    • no files matched                               glob=none*
    • no files matched                               glob=none*
    • took: 11s
  • calculating checksums
  • homebrew tap formula
    • pipe skipped                                   reason=brew.repository.name is not set
  • publishing
    • scm releases
      • creating or updating release                 tag=v16.0.0 repo=niccoloraspa/osmosis
      • refreshing checksums                         file=osmosisd-16.0.0-checksums.txt
      • deleted previous draft release               commit=main tag=v16.0.0 name=Osmosis v16.0.0 🧪
      • release created                              name=Osmosis v16.0.0 🧪 release-id=111803515 request-id=CE0E:13EF3:3CBAFF9:3D44B31:64AD63D0
      • uploading to release                         file=dist/osmosisd-16.0.0-checksums.txt name=osmosisd-16.0.0-checksums.txt
      • uploading to release                         file=dist/osmosisd-linux-arm64_linux_arm64/osmosisd name=osmosisd-16.0.0-linux-arm64
      • uploading to release                         file=dist/osmosisd-darwin-universal_darwin_all/osmosisd name=osmosisd-16.0.0-darwin-all
      • uploading to release                         file=dist/osmosisd-16.0.0-linux-arm64.zip name=osmosisd-16.0.0-linux-arm64.zip
      • uploading to release                         file=dist/osmosisd-16.0.0-linux-amd64.zip name=osmosisd-16.0.0-linux-amd64.zip
      • uploading to release                         file=dist/osmosisd-linux-amd64_linux_amd64_v1/osmosisd name=osmosisd-16.0.0-linux-amd64
      • uploading to release                         file=dist/osmosisd-16.0.0-darwin-all.zip name=osmosisd-16.0.0-darwin-all.zip
      • published                                    url=https://github.com/niccoloraspa/osmosis/releases/tag/v16.0.0
      • took: 17s
    • homebrew tap formula
  • took: 17s
  • storing release metadata
    • writing                                        file=dist/artifacts.json
    • writing                                        file=dist/metadata.json
  • announcing
  • release succeeded after 1m45s
  • thanks for using goreleaser!


Further generalizing plotting using the locate() function

Changes to the locate() function: :Divide-by-zero error encountered in calculation of P, n2 and x_ when sampling only x-values where f(x)=0. Fixed by doubling the interval of sampled x-values each time only non-zero f(x) are found. P, n2 og x_ are then calculated afterwards. Standard deviation above 0 is now ensured by taking the absolute value of x_. I think this is sound. What do you think?
Changes to bk.show(): Max and minimum x values are now found based on the mean and standard deviation of the functions given as arguments to bk.show(). Testing has been expanded to include all code from the tutorial which involves the bk.show(= function. Plotting functions with centers at high absolute values of x throws warnings, but these warnings appear harmless. See example with b=-5000 in generalize_plotting_tests.py.

Lines 115, 116, 117 and 128 should not have been included. Sorry about that.

Great work, thank you. A potential problem with the locate() function may arise with sharp/non-diffuse functions, for instance in a realistic contracted gaussian basis. I'll just keep that in mind for future work.


Tasks merge. Enterprise to master.

Enterprise ran https://github.com/travis-ci/travis-github_apps from Ruby 2.x branch ga-ext_access. That package will need to be updated accordingly.
Enterprise ran https://github.com/travis-ci/gh from Ruby 2x branch enterprise-3.0. We will have to confirm that master branch has all the features enterprise branch had.

same as #327 marged in #328


TUI mode change

Codecov Report

Merging #29 (d3996eb) into master (0c700d6) will increase coverage by 0.30%.
The diff coverage is 70.08%.

@@            Coverage Diff             @@
##           master      #29      +/-   ##
==========================================
+ Coverage   73.16%   73.46%   +0.30%
==========================================
  Files          55       54       -1
  Lines        4129     4199      +70
==========================================
+ Hits         3021     3085      +64
- Misses       1108     1114       +6

Impacted Files
Coverage Δ

quake_tui/src/lib.rs
4.54% <0.00%> (+2.75%)
:arrow_up:

quake_tui/src/widgets.rs
1.26% <0.00%> (-0.07%)
:arrow_down:

quake_tui/src/app.rs
71.64% <73.21%> (-2.85%)
:arrow_down:

quake_core/src/parser/quake.rs
96.84% <0.00%> (-1.76%)
:arrow_down:

quake_core/src/parser/dsl_parser.rs
82.62% <0.00%> (-0.98%)
:arrow_down:

quake_core/src/parser/ast.rs
97.22% <0.00%> (+1.76%)
:arrow_up:

Continue to review full report at Codecov.

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


"How heavy is the moon" causes an exception in out-of-the-box VA bot

Project
Name: Virtual Assistant
Language: C#
Description
When I ask a newly created Virtual Assistant "How heavy is the moon" it causes a exception to be thrown at line 144 of MainDialog.cs (see screen capture below).  The issue appears to be the fact that the utterance was directed to the FAQ KB and the fact that the default KB content does not have a match for that utterance.  If you ask a question that is in the KB it works fine.
To Reproduce

Open Visual Studio 2019 and turn on Exceptions Setting (Debug | Windows | Exception Settings) for C++ Exceptions and Common Language Runtime Exceptions
Follow directions to create a standard VA bot found here
With bot running in the VS 2019 debugger, use the bot emulator to ask "How heavy is the moon" and you should see an exception at line 144 of MainDialog.cs

Expected behavior
No exception
Screenshots

Additional context

I could repo, but now can't. Can you try again, could have been a transient live issue?

Here was the stack trace:
t System.Collections.Generic.Dictionary2.TryInsert(TKey key, TValue value, InsertionBehavior behavior)\r\n at Microsoft.Bot.Builder.AI.QnA.QnAMaker.FillQnAEventAsync(QueryResult[] queryResults, ITurnContext turnContext, Dictionary2 telemetryProperties, Dictionary2 telemetryMetrics, CancellationToken cancellationToken)\r\n at Microsoft.Bot.Builder.AI.QnA.QnAMaker.OnQnaResultsAsync(QueryResult[] queryResults, ITurnContext turnContext, Dictionary2 telemetryProperties, Dictionary2 telemetryMetrics, CancellationToken cancellationToken)\r\n at Microsoft.Bot.Builder.AI.QnA.QnAMaker.GetAnswersAsync(ITurnContext turnContext, QnAMakerOptions options, Dictionary2 telemetryProperties, Dictionary2 telemetryMetrics)\r\n at djvademostart.Dialogs.MainDialog.RouteAsync(DialogContext dc, CancellationToken cancellationToken) in C:\\Users\\darrenj\\source\\repos\\demo\\djvademostart\\djvademostart\\Dialogs\\MainDialog.cs:line 166\r\n at Microsoft.Bot.Builder.Solutions.Dialogs.RouterDialog.OnContinueDialogAsync(DialogContext innerDc, CancellationToken cancellationToken)\r\n at Microsoft.Bot.Builder.Dialogs.ComponentDialog.ContinueDialogAsync(DialogContext outerDc, CancellationToken cancellationToken)\r\n at Microsoft.Bot.Builder.Dialogs.DialogContext.ContinueDialogAsync(CancellationToken cancellationToken)\r\n at djvademostart.Bots.DialogBot1.OnTurnAsync(ITurnContext turnContext, CancellationToken cancellationToken) in C:\Users\darrenj\source\repos\demo\djvademostart\djvademostart\Bots\DialogBot.cs:line 43\r\n at Microsoft.Bot.Builder.AutoSaveStateMiddleware.OnTurnAsync(ITurnContext turnContext, NextDelegate next, CancellationToken cancellationToken)\r\n at Microsoft.Bot.Builder.Solutions.Middleware.EventDebuggerMiddleware.OnTurnAsync(ITurnContext turnContext, NextDelegate next, CancellationToken cancellationToken)\r\n at Microsoft.Bot.Builder.Solutions.Middleware.SetLocaleMiddleware.OnTurnAsync(ITurnContext context, NextDelegate next, CancellationToken cancellationToken)\r\n at Microsoft.Bot.Builder.ShowTypingMiddleware.OnTurnAsync(ITurnContext turnContext, NextDelegate next, CancellationToken cancellationToken)\r\n at Microsoft.Bot.Builder.TelemetryLoggerMiddleware.OnTurnAsync(ITurnContext context, NextDelegate nextTurn, CancellationToken cancellationToken)\r\n at Microsoft.Bot.Builder.TranscriptLoggerMiddleware.OnTurnAsync(ITurnContext turnContext, NextDelegate nextTurn, CancellationToken cancellationToken)\r\n at Microsoft.Bot.Builder.BotFrameworkAdapter.TenantIdWorkaroundForTeamsMiddleware.OnTurnAsync(ITurnContext turnContext, NextDelegate next, CancellationToken cancellationToken)\r\n at Microsoft.Bot.Builder.MiddlewareSet.ReceiveActivityWithStatusAsync(ITurnContext turnContext, BotCallbackHandler callback, CancellationToken cancellationToken)\r\n at Microsoft.Bot.Builder.BotAdapter.RunPipelineAsync(ITurnContext turnContext, BotCallbackHandler callback, CancellationToken cancellationToken)",

Is this what you are looking for?  This happens every time for me.  Here is the exception info:
System.ArgumentException
HResult=0x80070057
Message=An item with the same key has already been added. Key: question
Source=System.Private.CoreLib
StackTrace:
at System.ThrowHelper.ThrowAddingDuplicateWithKeyArgumentException[T](T key)
at System.Collections.Generic.Dictionary2.TryInsert(TKey key, TValue value, InsertionBehavior behavior)    at Microsoft.Bot.Builder.AI.QnA.QnAMaker.FillQnAEventAsync(QueryResult[] queryResults, ITurnContext turnContext, Dictionary2 telemetryProperties, Dictionary2 telemetryMetrics, CancellationToken cancellationToken)    at Microsoft.Bot.Builder.AI.QnA.QnAMaker.<OnQnaResultsAsync>d__22.MoveNext()    at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()    at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)    at Microsoft.Bot.Builder.AI.QnA.QnAMaker.<GetAnswersAsync>d__21.MoveNext()    at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()    at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)    at System.Runtime.CompilerServices.TaskAwaiter1.GetResult()
at MyAssistantRHW.Dialogs.MainDialog.d__6.MoveNext() in C:\Source\MyAssistantRHW\MyAssistantRHW\MyAssistantRHW\Dialogs\MainDialog.cs:line 144
From: Darren Jefford<EMAIL_ADDRESS>Sent: Tuesday, June 4, 2019 2:04 PM
To: microsoft/botbuilder-dotnet<EMAIL_ADDRESS>Cc: Russ Williams<EMAIL_ADDRESS>Author<EMAIL_ADDRESS>Subject: EX: Re: [microsoft/botbuilder-dotnet] "How heavy is the moon" causes an exception in out-of-the-box VA bot (#2001)
I could repo, but now can't. Can you try again, could have been a transient live issue?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHubhttps://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fmicrosoft%2Fbotbuilder-dotnet%2Fissues%2F2001%3Femail_source%3Dnotifications%26email_token%3DAEHSFYR3O6PDPX7NKFSXLWDPY2U75A5CNFSM4HS7KKV2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGODW5MNMY%23issuecomment-498779827&data=02|01|ruwill%40microsoft.com|9db1dd2c49fc425349d708d6e916fc59|72f988bf86f141af91ab2d7cd011db47|1|0|636952682262014862&sdata=BTYwjcPVO9H0d2vW1rlfeYMYxQgrVD1x4M3tZB%2FKx1U%3D&reserved=0, or mute the threadhttps://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fnotifications%2Funsubscribe-auth%2FAEHSFYQA6MEYOUR2P34IO33PY2U75ANCNFSM4HS7KKVQ&data=02|01|ruwill%40microsoft.com|9db1dd2c49fc425349d708d6e916fc59|72f988bf86f141af91ab2d7cd011db47|1|0|636952682262014862&sdata=9q%2FcL4cnVy3jwCRexAEagPwyDmVPcfNcA15G9Lvt%2Bls%3D&reserved=0.

I believe this is likely related to a known issue with telemetry and QnA, when a question is not matched.  PR is open to resolve. https://github.com/microsoft/botbuilder-dotnet/pull/1899

An update here to help expedite things... I saw that #1899 was merged to master 14 days ago so I assumed it would be part of the daily build (MyGet) and so I just tried #1899 to test what @garypretty thought might be the fix to this issue and I still get the same error.  So it would appear in the case I describe here that #1899 does not fix #2001.  The version I tied was: 4.5.0-preview-190620-1

@darrenj, @lauren-mills & @managedcoder can you point me to the QnA KB that has the How Heavy is the Moon question? There's probably an issue with the framework code but I need the KB to be able to repro without having the deploy the entire VA.
Thanks

@gabog There isn't a kb with that question. The Dispatch model thinks it should go to qna, but there isn't a match in the kb. You can use the models from the VA Template to repro.

k, thanks lauren, I'll try to repro outside VA and will report back to the thread.

This issue seems to have been fixed in 4.5 (I'm not sure what PR addresses the issue though).
I was able to repro the issue against 4.4.5 by using the following code:
public async Task TestBug()
{
    var qnaEndpoint = new QnAMakerEndpoint()
    {
        KnowledgeBaseId = "MyKBID",
        EndpointKey = "MyKBKey",
        Host = "https://myQnAHost-qnahost.azurewebsites.net/qnamaker",
    };
    var telemetryClient = new BotTelemetryClient(new TelemetryClient());

    var qnaMaker = new QnAMaker(qnaEndpoint, null, null, telemetryClient: telemetryClient, logPersonalInformation: true);

    var reply = await qnaMaker.GetAnswersAsync(BuildContext("how heavy is the moon"), null, null);
    reply = await qnaMaker.GetAnswersAsync(BuildContext("how heavy is the moon"), null, null);
}

But I tried the same code against the master version of BotBuilder and couldn't repro.
To double check, I also updated the VA Solution created from the template to point to the daily build in my get (4.5.0-preview-190628-2) and the issue doesn't repro there either.


operator doesn't work when filtering tag list field

When filtering a Tag List field it's not possible retrieve entries where 2 tags are present i.e. tag1 AND tag2
I've tried using tag1+tag2 and AND:tag1,tag2.
I understand from @nitriques that this is a bug.

Indeed


Add functionality to Buy BCH

Hello there,
Its my formal request to add a functionality to buy BCH on bitcoincash.org.
Ultimately it will make the website more useful by offering users to buy BCH directly in their custodial or non custodial wallet.
To make it easier, we have aggregated all major fiat to crypto onramps in one widget. Please check out the widget here: https://widget.onramper.com/?onlyCryptos=BCH
Fees on this widget can be easily compared and it does not cost more than reaching them directly. Some onramps are even cheaper such as Moonpay, coinify, mercuryo, etc.
If requested, it is possible to add affiliate commission on these purchases to be given towards maintaining this website.
Please let me know if I can help with anything regarding this.
Regards,
Rigved Bhatt
Account Executive, Onramper

We will not be adding purchasing to this site, it is for information only. Exchanges can do the selling. =--)


SecureStorage.set() not working for iOS Simulator 11.1

Using Ionic 3 and installed the latest version of this plugin and when invoking the set method on iOS 11.1 emulator and getting the error

Duplicate of #134


[PAPILIO-17] User Profile Customization

General info
Complete user profile customization (user bio, user password, user phone and user profile pic)
Issue number: PAPILIO-17
Task description:

Added user profile customization for user bio, user pfp, phone number and password.
Improved the visuals of the user profile page
General QoL improvements to the user profile code
Further adherence to the MVVM pattern

Testing
To test this feature you have to:

Clone the PAPILIO Backend Repo, then run the server by running the command "npm run dev" (also make sure the database url is in your .env file)
Open the android project in Android Studio and set up your chosen device (either emulator or actual phone connected to your PC)
Follow the steps in the Readme.MD found in the android project root folder
Start the app and create a new account
Navigate to the user profile page via the nav bar at the bottom
Press the "Edit Profile" and notice that some important UI elements pop up
Edit your bio
Press "Save Changes" and wait for your bio to be updated
Go back to the account menu page and come back to the user profile page and see if your new bio is still there. (Good if it is!)
Now press the "Edit Profile" button again and edit the user profile pic
After the following the on-screen steps, verify that the user profile page now has your chosen picture as the pfp (Good if it does)
Repeat steps 10 and 11 but edit your password and phone number instead of the user pfp
Wait for success messages for both password and phone number editing
Now log in as a Google account and repeat steps 5 onwards (You won't be able to edit passwords from Google accounts but everything else should be the same)

Notes

Unit tests and UI tests remaining (will be added tomorrow)

All the comments above by @AC159 have been addressed. Please let me know if there are any more changes required and I will implement them.
Key notes about my latest changes:

I created a kotlin class called UtilityFunctions that acts as a companion object and contains useful specific and general purpose utility functions like validating different text fields. This should allow us to resuse the same functions across various Activities and Fragments without worrying about creating unneccessary references to the UtilityFunctions class
I added a new color called "light_sea_green" to the colors.xml file. This green color is the central green color we have chosen as part of our color palette. I replaced all direct hex color references in activity_user_profile.xml with this.
In UserProfileActivity.kt, I created two functions to create and return a LinearLayout and a AlertDialog.Builder. This helps in cutting down duplicate code in the file when creating dialog.

To do:

Add Unit tests for the UserProfileVIewModel and UserProfileViewModelFactory viewmodels
Add UI tests for the user profile page

Just added Unit and UI tests. Also addressed new comments above.
Important note: I moved some key generic functions from the loginViewModel to the more appropriate UtilityFunctions companion object, so it is accessible to all views. Accordingly, the tests for these functions have also been moved to the UtilityFunctionsTest class where they are more suited.


wifi.getNetworks crash under node 0.12.7

I ran your plugin with the examples from GitHub, and the wifi.getNetworks function crashed the program : here is the message :
#
# Fatal error in ../deps/v8/src/lookup.cc, line 47
# CHECK(!root->IsNull()) failed
#
==== C stack trace ===============================
(empty)
Illegal instruction (core dumped)

This is apparently more a problem with nodev0.12.7 than with connman or your plugin, but that's quite embarrassing...
I found a way to fix the problem for my own application in the connman-api package. you can check it there : https://github.com/jlucidar/connman-api/commit/579c408abee90161606bc9abf4e28ae9225750c3

A fatal error, that's rude of Node.js. Thanks for finding it, we've used this library in a project, but never came across this.
I don't really understand what's happening in your change though. In one case you re-enable the callback on error and finish (which you probably removed earlier). In the other you call callback after a nexttick, which seems very random...

I think this should be fixed in this connman-api PR.

Yes, version 0.1.2 solved it, Thank you all !


Set _parentOperationStarted in ExecuteReaderAsync continuation

This fixes https://github.com/dotnet/SqlClient/issues/1506.
The problem was there https://github.com/dotnet/SqlClient/blob/main/src/Microsoft.Data.SqlClient/netcore/src/Microsoft/Data/SqlClient/SqlCommand.cs#L2777
_parentOperationStarted  flag has to be set explicitly after ExecuteReaderAsync i.e. in its continuation.
Reproduction code is available here: https://gist.github.com/AndrewP-GH/1e1ad8d2b864ed549e31e5f03fee015e

Does this prevent the event that occurs after the parent is unset from having a guid at all? Is that better than saving the parent guid and using it later?

@Wraith2

Does this prevent the event that occurs after the parent is unset from having a guid at all?

Since its hard to write a non-flaky test for that case I can only assume that. At least now it looks like a correct control flow: we for sure unset the flag right after child operation completes. I tried to launch a repro code several times and got no issues with that.
I was also thinking about attaching _parentOperationStarted = false; in a separated continuation to outer task. But from my perspective it just adds an extra overhead for TaskScheduler. What do you think?

Is that better than saving the parent guid and using it later?

It might be also a solution to be discussed.

@Wraith2 could you help me with test pipeline? https://dev.azure.com/sqlclientdrivers-ci/sqlclient/_build/results?buildId=47677&view=logs&jobId=6399d89d-3d30-5fff-3e92-07bbaf7ebe2f&j=6399d89d-3d30-5fff-3e92-07bbaf7ebe2f&t=d757e160-f926-47ff-8096-49a8c7da6621 it looks like tests didn't even start

I don't have CI access either. You can push a tiny change commit, close and re-open the PR or just wait if you think they're false positives and the MS team will probably re-run them when they get to review.

@Wraith2 the pipeline is green now. Could you assign or tag someone who can review this?

I'm an external contributor like you, I don't have any permissions. The MS team will pick it up when they can.

Any news? We would like to have fixed tracing 😸
@Wraith2 @johnnypham @DavoudEshtehari @David-Engel

@ahydrax, attempting to run the repro with this change using a .NET 6.0 console app, I got the NRE while it doesn't break with the latest source code.
Can you verify if it's only me?
Unhandled exception. System.AggregateException: One or more errors occurred. (Object reference not set to an instance of an object.)
 ---> System.NullReferenceException: Object reference not set to an instance of an object.
   at Microsoft.Data.SqlClient.SqlConnection.OpenAsync(CancellationToken cancellationToken) in C:\xxx\src\Microsoft.Data.SqlClient\netcore\ref\Microsoft.Data.SqlClient.cs:line 892
   at ConsoleApp1.Program.<>c.<<RunTest>b__1_0>d.MoveNext() in C:\xxx\ConsoleApp1\Program.cs:line 36
--- End of stack trace from previous location ---
   at ConsoleApp1.Program.<>c.<<RunTest>b__1_0>d.MoveNext() in C:\xxx\ConsoleApp1\Program.cs:line 40
--- End of stack trace from previous location ---
   at System.Threading.Tasks.Parallel.<>c__50`1.<<ForEachAsync>b__50_0>d.MoveNext()
--- End of stack trace from previous location ---
   at ConsoleApp1.Program.RunTest() in C:\xxx\ConsoleApp1\Program.cs:line 33
   --- End of inner exception stack trace ---
   at System.Threading.Tasks.Task.ThrowIfExceptional(Boolean includeTaskCanceledExceptions)
   at System.Threading.Tasks.Task.Wait(Int32 millisecondsTimeout, CancellationToken cancellationToken)
   at System.Threading.Tasks.Task.Wait()
   at ConsoleApp1.Program.Main(String[] args) in C:\xxx\ConsoleApp1\Program.cs:line 14

I've run the repro with and without the fix. In both cases, I still get empty GUIDs in the repro. There are usually fewer empties with the fix, but something is still missing. For reference, without the fix, I see 20-30 empty GUIDs. With the fix, it's 10-15.

Thanks for update!
@David-Engel could you tell me which framework/os you used to run the repro? I don't get empty guids on windows 11 x64

I got the empty GUIDs on Win 10 (version 21H2) and .NET 6.0 using a core i7 CPU.

I tried to reproduce this bug on 5.1.0 and seems it's fixed now.


feat(ProgressPlugin): add percentBy property

What kind of change does this PR introduce?
feature
the same as https://github.com/webpack/webpack/pull/10315 but for webpack 4
Did you add tests for your changes?
no
Does this PR introduce a breaking change?
no
What needs to be documented once your changes are merged?
about percentBy property

webpack 4 do not get new features.


DNS Managed Zone resource

What problem are you facing?
Support for Managed Zone resources is lacking.
How could Crossplane help solve your problem?
Add a CRD and controller for that type using
https://cloud.google.com/dns/docs/reference/v1/managedZones

Hey @danielinclouds, thanks for raising this issue!
While we don't have support for this managed resource in provider-gcp, have you checked out provider-jet-gcp?

Hey, @Feggah I opened this issue as I want to work on a PR that adds Managed Zone functionality to this provider.

Awesome! Please, reach out if you need guidance with something 😄


Pipeline router errors + others

Description
Improve router error messages + fix llm temperature range and update widget

Codecov Report
Attention: Patch coverage is 66.66667% with 2 lines in your changes missing coverage. Please review.

Files with missing lines
Patch %
Lines

apps/pipelines/nodes/nodes.py
60.00%
2 Missing :warning:

Additional details and impacted files

:loudspeaker: Thoughts on this report? Let us know!


ERROR #7: Failed to connect to https port 443: Timed out

So, I'm completely new to Laravel so this is likely something I've done or not done.
But when trying to load the page which this is suppost to work on, I receive this: ERROR #7: Failed to connect to https port 443: Timed out.
In web.php, I've added

Route::get('/import', function (Shopify $shopify) {

    $call = $shopify->call(
    [
        'URL' => '/admin/products.json',
        'METHOD' => 'GET',
        'DATA' => [
            'limit' => 5,
            'published_status' => 'any'
        ]
    ]);
});```

I'm not sure if I've missed anything?

From this error message it seems the problem is with the connection and not with the package... Are you sure you set the config parameters correctly plus opened your store for API access?


Build steps for the extraction client in README

According to https://github.com/google/dwh-assessment-extraction-tool/issues/118

not all changes appended


Rename to performance to perf to match top-level test target

Related to #980
Remove odm

Signed-off-by: smlambert<EMAIL_ADDRESS>

Grinder (BUILD_LIST=perf, TARGET=akka-uct): https://ci.adoptopenjdk.net/view/all/job/Grinder_Sandbox/431/

I also see some liberty files are removed too. Just to confirm if that is expected? @smlambert

I did not intend to remove files so will correct and push changes shortly. I think the confusion is that those files are in a folder named bin, which is normally houses files that are built at execution time and not stored in repos (so in my gitignore list).

Perf test results may not be under TestConfig/test_output_*. The output location may be different we may need to define case by case later. That will be done later. Merge this first.

Thanks @sophia-guo - for the record, I ran a Grinder, and the json output from akka-uct benchmark is now archived as part of the tar.gz file (as I had hoped it would be), https://ci.adoptopenjdk.net/view/work in progress/job/Grinder_SandboxExtra/2/artifact/


Issue with vectorizing detected objects using embeddings file

Hi there,
I am having some issues with visuzalizing the vectorized detected objects. Running detected_objects.head() gives me a table looking like this :

The embeddings file i am using was downloaded from : http://nlp.stanford.edu/data/glove.6B.zip
I am using the 200dimension one but am unable to see the values within the columns as per the example.

Realised that this may be due to the fact that the embeddings file downloaded isnt tab delimited and trying to visualize the WORD_EMBEDDINGS cas table gives a table looking like this :

which i am guessing isnt correct.
Perhaps you could provide a link to a tab delimited word_embedding file used in this example.
Thank you

Realised that this may be due to the fact that the embeddings file downloaded isnt tab delimited and trying to visualize the WORD_EMBEDDINGS cas table gives a table looking like this :

which i am guessing isnt correct.
Perhaps you could provide a link to a tab delimited word_embedding file used in this example.
Thank you

Hi,
Were you able to fix this? if yes, then please share how. I am experiencing the same issue. Thanks in advance.

Close this one.
One example is below.
https://go.documentation.sas.com/?docsetId=casdlpg&docsetTarget=n05117l9utesr0n11g9wqwofcz2m.htm&docsetVersion=8.5&locale=en#p0ltjtvcl7tc8ln1uf9zu4yupssw
s.upload('/path/to/glove.txt', casout=dict(name='glove', replace=True),
importoptions=dict(fileType='delimited', delimiter='\t'))


[Suggestion] Versions of Scout's Distillation that only return certain entity types

Basically like the Entity Purifications and Zone Distillations, but for Scout's. My particular use case is a railgun that uses Scout's to select the target.

Hexal implemented this a while ago, so I don't think Hex really needs to.


Not works at development mode

Following the minimal example:
new MergeIntoSingleFilePlugin({
    files: {
        "vendor.js": [
            'src/assets/vendors/js/vendor.bundle.base.js'
        ]
    }
}),

<script src="./vendor.js"></script>

I get this error when I execute npm run dev
  Error: Child compilation failed:
  Module not found: Error: Can't resolve './vendor.js' in '/home/jarvis/Incubator/webpack-starter/src':
  Error: Can't resolve './vendor.js' in '/home/jarvis/Incubator/webpack-starter/src'

But if I execute npm run build, I can see a new vendor.js file in dist folder and everything works fine!
What can I do to have the ./vendor.js at development stage?
Thanks

@jrichardsz do you by chance call require('./vendor.js') somewhere in our code?
if not then what is your entry in webpack config?


final fixes

disable on mobile and tablet

Pull Request Test Coverage Report for Build 619

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 98.765%

Totals

Change from base Build 617:
0.0%

Covered Lines:
2077

Relevant Lines:
2090

💛  - Coveralls


Add Windows installation doc

Added specific documentation for libyara, go-yara and dependencies compilation and install on Windows

Thank you, I really appreciate this.
I'd like to include something a bit simpler in the main README. I guess I'll try your description on a Windows VM in the next few days. With some luck, there might even be a way to provide simple Windows-based build instructions for Spyre.

@codeyourweb I have added some documentation mentioning MSYS2 and added an example to README.cross-building.md in #80. This is quite a bit shorter than your suggestion. Do you think that this example would have helped you if it had existed 3 weeks ago?

👍 indeed, it will help a lot

okay, I am closing this PR then. Thank you for doing the hard trial&error work that led to the description.


[feature request] The arm64 image should add to openyurt/raven-agent

There is no arm64 arch in https://hub.docker.com/r/openyurt/raven-agent

can you contribute a pr (update github action) for this？

@chzhuo need this also. Did a PR.


Is this project still maintained?

Any outlook on the current status and further development is highly appreciated.

If any existing feature is not working or if you have any new feature, please open a GitHub issue.


These files are under the MPL-2.0 license, a weak copyleft license, which may be incompatible with your project license. I recommend that you remove these files, and if they can't be removed you must be sure that they are not combined or integrated with any other project code in your repo.

Is this a regression?
No
Description
There are 1500 files with non-compliant licenses that need addressed.
Please provide the exception or error you saw
This was an email from our license scanner.

Please provide the environment you discovered this bug in
No response
Anything else?
No response

Thank you @ryjones we are checking internally and will reply back asap.

The PR #1286 fixes the issue

@yshyn-iohk , are you able to run the scan after your PR is merged to see the result or it is something we cannot run ourselves?

What is the status of this? @yshyn-iohk @ryjones
As far as I know this problem was resolved in this repository. I suggest we close and maybe open issues on any other where this is still a problem.
@mkbreuningIOHK I would consider this issue as the one with biggest priority IMO

re-scanned https://github.com/hyperledger/identus-cloud-agent/
Confirmed - all MPL-2.0 licensed files have been removed from the repo.
You can close this issue.


Integrate the Singularity image build process into the Travis CI and move Travis CI to run on Ubuntu Xenial

Ubuntu Trusty is going to end-of-life few months later. Let's move to Xenial. Besides, build a Singularity image on this Xenial-based flow.

tl;dr this pull request is oudated. We can make another one when we need it.
By the way, Singularity is renamed Apptainer, and moved into the Linux Foundation!! The original name "Singularity" will be used for commercial product line owned by Sylabs.
https://apptainer.org/news/community-announcement-20211130/


HHH-12921 - Hibernate Connection Pool Validation Thread should be defined as a daemon Thread

https://hibernate.atlassian.net/browse/HHH-12921
https://hibernate.atlassian.net/browse/HHH-12922

Thanks for the quick fix!


Is there a way to reconstruct input from n components?

Hi there. I am trying to perform blind signal separation of time series data via dimensionality reduction and then back-projecting a latent representation using only n first components. In scikit-learn matrix factorization modules have a property components_ that can be used for this purpose. For example for  sklearn.decomposition.PCA signal separation can be achieved  back-projecting low-variance components with something like:
estimator = PCA(n_components=COMPONENTS)
model = estimator.fit(data_array)
transformed = model.transform(data_array)
cutoff = 2
clean_signal = np.dot(model.transform(new_data)[:,:cutoff], model.components_[:cutoff,:])
clean_signal += np.mean(new_data, axis=0)

I do not see a components_ property in sklearn-sfa. Is there an equivalent property in sksfa.SFA?

Hey Diego,
yes, you can do this (at least if you have not used partial_fit for fitting SFA).
Similar to the components_ variable in sklearn.decomposition.PCA you can extract the transformation matrix W (and a bias b) by using the affine_parameters() function of an sksfa.SFA object. The only difference is that while components_ contains all singular vectors, W only contains the vectors for the first n components. But for reconstruction, those first n are of course all you need.
You can calculate the latent representation z and then the reconstruction as
sfa_model = sksfa.SFA(n_components=n)
fitted_model = sfa_model.fit(data_array)
W, b = fitted_model.affine_parameters()
z = np.dot(new_data, W.T) + b  # Equivalent to: z = fitted_model.transform(new_data)
reconstruction = np.dot(z - b, W)

Some justification:
The SFA procedure basically performs two consecutive PCA operations; first whitening and then one based on temporal differences. The product of both those orthogonal transformation matrices (i.e. the two components_ matrices) still yields an orthogonal matrix (the matrix W) so that you can still use the usual way known from PCA to reconstruct original data.


onBufPaneOpen is called when bufpane is not fully initialized yet

Description of the problem or steps to reproduce
There is no way to find out the geometry of a newly created bufpane in onBufPaneOpen lua callback: bp:GetView() returns {0,0,0,0} instead of the actual window. The reason is that the bufpane's view is not properly initialized yet when the bufpane is created and the callback is triggered. It is initialized a bit later, at the initial resize.
In addition, bp:ID() returns 0 instead of the actual bufpane's id. The reason is that SetID is called only after onBufPaneOpen is triggered.
A quick ugly hacky fix: https://github.com/dmaluka/micro/commit/e2c6680c95573a835a856f86863c637491b1d5f8
It postpones triggering onBufPaneOpen until after the initial resize.
Specifications

Commit hash: 95ec55f
OS: any
Terminal: any

Also, for example, w.gutterOffset is not initizalized until the initial displayBuffer() call, so e.g. bp:LocFromVisual() will not work correctly when called from onBufPaneOpen.
Maybe also many other similar pitfalls.

Also, for example, w.gutterOffset is not initizalized until the initial displayBuffer() call, so e.g. bp:LocFromVisual() will not work correctly when called from onBufPaneOpen.
Maybe also many other similar pitfalls.


nixos/module: example referenced old ffmpeg

Motivation for this change
https://github.com/NixOS/nixpkgs/issues/120705
Things done

[x] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS linux)
Built on platform(s)

[x] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
[ ] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[ ] Ensured that relevant documentation is up to date
[ ] Fits CONTRIBUTING.md.

It wouldn't hurt to wait for ofborg even if the change is safe.


Project-local settings should override global settings

I'm working on a couple of js/ts repos where both mocha and jest are used. In my setup I use:
neotest.setup{
  ...
  adapters = {
    require('neotest-jest')({
        jestCommand = 'npm test --runInBand --',
        jestConfigFile = 'jest.config.ts',
        cwd = get_cwd,
    }),
    require('neotest-mocha')({
        command = 'npm test --',
        cwd = get_cwd,
    }),
    require("neotest-vim-test")({}),
  }
}

neotest.setup_project('~/path/to/project', {
  ...
  adapters = {
    require('neotest-mocha')({
        command = 'npm test --',
        cwd = get_cwd,
    }),
  }
})

Since I have a specific project where I want to use only mocha. However, I'm running into the same issue as reported in #105 if I open a test file in the project directory where both neotest-jest and neotest-mocha load and neotest-jest takes priority seemingly due to the ordering in the global setup.
While related to #105, I would have expected neotest to only use neotest-mocha here but it seems that the behavior is more like merging the two configs?
Is my setup wrong? If not, it would be great to have an override_adapters option to tell neotest to ignore global adapters for project setups.
Otherwise, a solution to #105 would also solve this one although not the underlying issue with project-specific setups. And thanks for this great plugin 🙂 (I didn't tag this as a bug since I'm not sure that it is one). I would be happy to submit a PR if needed.

The expected behaviour is for only the mocha adapter to be used. Can you provide the info requested in the bug report template so that I can reproduce?

Thanks for confirming the expected behaviour :) I'll provide the bug info.

yes, I have the same problem, I use
neotest.setup_project(vim.loop.cwd(), {
	adapters = { require("neotest-elixir") },
	default_strategy = "iex",
})

can't override the default_strategy.

The default strategy should now be fixed :+1:

I've had time to test this out a bit more and I cannot reproduce the issue with the example setup in the bug template so the problem must be something with my setup. Apologies.


Fix bootstrap health check timeout

counter=$((++counter)) is a bashism; doesn't work with shells like dash

I don't use bash everywhere, works fine in zsh, don't want to require dash. Other suggestions?

Changed to use POSIX arithmetic.


Make pydeps generation a separate, non-default datazen target

We can pilot this while we're working on: https://github.com/vkottler/datazen/issues/76
This will be a major workflow improvement. We should re-run pydeps only when we actually want to. Once we make the config changes we'll need to update the post-hooks to still run pydeps (maybe before running the default target?).

https://github.com/vkottler/config/commit/86f975f0fdc4f9f1468c3132be89593db3d638cb that should have fixed this
we can depend on it but we don't need to force it

this won't require any changes to this project


implement serialization API which does not rely on protobuf-java

What does this PR do?
This PR provides an API which allows callers to produce protobuf which can be consumed by other DDSketch implementations without needing the protobuf-java library.
Motivation
We need to send DDSketch to other services, but can't afford the 1.6MB protobuf dependency and the ~700 classes this adds.
Additional Notes
This doesn't go so far as to make it possible to load the DDSketch classes without protobuf-java being present, but I can do that once I've gauged the level of enthusiasm for a more neutral serialization strategy. At that point I would suggest moving the protobuf bindings to another module for protobuf users who aren't quite so constrained by class count and deployment size.

This is currently breaking on negative values occasionally so please hold off on reviewing

@CharlesMasson my latest commit addresses all your comments, but I would like to rebase the commits into a cohesive unit before merging

Just squashed my commits and force pushed


add support for count and repeat to vi KeyMap

This change adds support for command counts and repeat . to the vi KeyMap.
#6
Blocks #28

Included in MovingtoMars/liner#30


Convergence issue of GMRES

My issue is about a convergence issue when using scipy.sparse.linalg.gmres routine. When using GMRES with a preconditioner, it seems that the convergence is tested by looking at the residual not the preconditioned residual. So, although the preconditioned residual is smaller than the absolute tolerance I ask, the iterations do no stop if the (not preconditioned) residual is greater than the tolerance. In order to fix this, I need to go into iterative.py and add the following lines (under the if conditional elif(ijob==3):
if presid < atol and np.linalg.norm(x) > 0:
resid = 0.0
break
This kind of hard coding is not something I prefer. I will appreciate if you can take a look at this issue and inform me about it.
Thanks!
Reproducing code example:

Sample code to reproduce the problem

Error message:

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  ...

Scipy/Numpy/Python version information:

There's a GMRES rewrite in progress. This cannot be investigated as an issue without sample code to reproduce the problem. I'll leave it open for now, but maybe you can recommend an action here (close or follow up) @zhaog6?

@rgommers Yes, I am rewriting the restarted GMRES. The original GMRES did use the residual instead of the preconditioned residual.

I've been working with @gokberkkabacaoglu on code that requires our little patch. Since you acknowledge this is an issue, is there anything you still need from us?

That's good to hear @blackwer. Maybe you can check PR gh-15149 and see if that already fully addresses your issue? And if not provide a test case and/or suggested algorithmic improvement there?

Dear Robert @blackwer , I am glad that we are all focused on this issue. The reimplemented restarted GMRES (PR gh-15149) has been basically completed and it uses preconditioned residual norm as convergence criterion. You can copy the PR code to your local and use the implementation to test your issue.

@zhaog6 I was about to test this and it seems you had some issues with deleting your fork. Can you ping me when this is resolved?

@blackwer Thank you for your attention. The new PR is in gh-15693

That said, your version is taking more iterations than our patch to converge (~26 vs your ~31), and also giving very slightly different results.

Dear @blackwer , you can copy the following code and make a testing.
import numpy as np
from scipy.sparse import spdiags
from gmresk import *

nn = 100
data0 = 2 * np.ones(nn)
data1 = - np.ones(nn)
data = np.array([data1, data0, data1])
A = spdiags(data, [-1, 0, 1], nn, nn)
b = - data1
x, info = gmresk(A, b, restart=20, show=True)  # relative tolerance is 1.0e-5 by default
x, info = gmresk(A, b, restart=40, show=True)
x, info = gmresk(A, b, restart=100, show=True)

The iterative steps is 1217, 580, 50  respectively in my server. And if you are familiar with PETSc (ANL) and can master it, you'll check and find that the iterations is same and the convergence history of residual norm is almost same but the implementation is different.

Edit: I found your repo and used the fastgmres branch. The GMRES iterations are indeed much faster (though partly from improvements to numpy).

Yes, there are also some improvements of data storage way based on Python and other mathematical optimizations.

Now that #18488 is going to be merged for v.1.12, I'd like to mention that preconditioned tolerance level has no guarantee for the actual solution to be converged. It depends on the success of the preconditioner. However if needed the tolerance values can be altered with the presolve(b) value as a rough estimate of the relationship between atol, rtol and pretol. Now that it is pure python it should be much easier to hack into it.


Question : Dynamic Subdomains ?

Hi !
I was just wondering if there was a way of using a dynamic subdomain with FlaskView ? I know one can define a custom subdomain, but I'd like it to be dynamic. Is there a way I can achieve that ?
Thanks for the good work !

Also wondering this myself.

After looking for a solution to this I think I may have stumbled upon one accidentally. If you want to handle dynamic subdomains you need to decorate your view methods with Flask-Classy's route, here's an example of what I did:
@route('/', subdomain='<subdomain>')
def index(self, subdomain):
    objs = self.model().all()
    return render_template('%s/index.html' % self.model.__tablename__.lower(), objs=objs)

Thanks @frankV. In the end, I just used BluePrints for my dynamic subdomain handling. But I'll keep that in mind !


MQTT retain setting per item in Gateway config [feat]

It would be nice to be able to set the RETAIN flag on a per message basis in the gateway config rather than just globally. Some messages (e.g. light status) are more relevant for retained messages than others (e.g. a PIR motion alert).
Setting could either replace or override the global setting in MQTT config.
Not sure if this is useful for others, I am using the software with all messages manually configured in the gateway. I use node-red for most of the workflow items, driven from Zwave2Mqtt messages, with retain every time node-red restarts or deploys it reloads the messages and runs any workflows. Can put a check in the node-red code on message age, but nicer to be able to configure as required at source.

@chrish987 Could you move this request to https://github.com/zwave-js/zwavejs2mqtt?

@chrish987 Could you move this request to https://github.com/zwave-js/zwavejs2mqtt?

will do. is the other project now the focus?

will do. is the other project now the focus?

Yep, it is

Yep, it is


Initializing a field with a model instance

Initial Checks

[X] I confirm that I'm using Pydantic V2

Description
Hello, please help me solve the following problem. Validation fails if I try to initialize a field with a model instance, rather than a dictionary with raw data.
Traceback
Traceback (most recent call last):
  File "/Users/alexey/PycharmProjects/temp/temp9.py", line 27, in <module>
    msg = MyMessageEnvelope(
          ^^^^^^^^^^^^^^^^^^
  File "/Users/alexey/PycharmProjects/temp/venv/lib/python3.11/site-packages/pydantic/main.py", line 171, in __init__
    self.__pydantic_validator__.validate_python(data, self_instance=self)
pydantic_core._pydantic_core.ValidationError: 1 validation error for MessageEnvelope[BodyVer1[Body]]
body
  Input should be a valid dictionary or instance of BodyVer1[Body] [type=model_type, input_value=BodyVer1(ver_1_0_0=Body(user_uid='user_uid')), input_type=BodyVer1]
    For further information visit https://errors.pydantic.dev/2.6/v/model_type

Example Code
from typing import Generic, TypeVar

from pydantic import BaseModel, ConfigDict, Field

T = TypeVar("T")
V = TypeVar("V")

class BodyVer1(BaseModel, Generic[T]):
    model_config = ConfigDict(populate_by_name=True)

    ver_1_0_0: T = Field(alias="1.0.0")

class MessageEnvelope(BaseModel, Generic[V]):
    id: str  # noqa: A003
    producer: str
    body: V
    created_at: float = Field(description="Timestamp in seconds")

class Body(BaseModel):
    user_uid: str = 'user_uid'

MyMessageEnvelope = MessageEnvelope[BodyVer1[Body]]
msg = MyMessageEnvelope(
    id='id',
    producer='producer',
    body=BodyVer1(ver_1_0_0=Body(user_uid='user_uid')),
    created_at=0.0
)
print(msg)

Python, Pydantic & OS Version
pydantic version: 2.6.2
        pydantic-core version: 2.16.3
          pydantic-core build: profile=release pgo=true
                 install path: /Users/alexey/PycharmProjects/temp/venv/lib/python3.11/site-packages/pydantic
               python version: 3.11.2 (main, Feb 12 2024, 11:20:56) [Clang 15.0.0 (clang-15<IP_ADDRESS>.5)]
                     platform: macOS-14.3.1-arm64-arm-64bit
             related packages: typing_extensions-4.9.0
                       commit: unknown

@aleksey925,
Sure thing. There are two approaches you could take here. The first is that you could explicitly parametrize the BodyVer1 instance that you're creating, like follows:
from typing import Generic, TypeVar

from pydantic import BaseModel, ConfigDict, Field

T = TypeVar("T")
V = TypeVar("V")

class BodyVer1(BaseModel, Generic[T]):
    model_config = ConfigDict(populate_by_name=True)

    ver_1_0_0: T = Field(alias="1.0.0")

class MessageEnvelope(BaseModel, Generic[V]):
    id: str  # noqa: A003
    producer: str
    body: V
    created_at: float = Field(description="Timestamp in seconds")

class Body(BaseModel):
    user_uid: str = 'user_uid'

MyMessageEnvelope = MessageEnvelope[BodyVer1[Body]]
msg = MyMessageEnvelope(
    id='id',
    producer='producer',
    body=BodyVer1[Body](ver_1_0_0=Body(user_uid='user_uid')),
    created_at=0.0
)
print(repr(msg))
#> MessageEnvelope[BodyVer1[Body]](id='id', producer='producer', body=BodyVer1[Body](ver_1_0_0=Body(user_uid='user_uid')), created_at=0.0)

The second is that you could create a subclass of BodyVer1 parametrized with body, then use that as your constructor. For example:
from typing import Generic, TypeVar

from pydantic import BaseModel, ConfigDict, Field

T = TypeVar("T")
V = TypeVar("V")

class BodyVer1(BaseModel, Generic[T]):
    model_config = ConfigDict(populate_by_name=True)

    ver_1_0_0: T = Field(alias="1.0.0")

class MessageEnvelope(BaseModel, Generic[V]):
    id: str  # noqa: A003
    producer: str
    body: V
    created_at: float = Field(description="Timestamp in seconds")

class Body(BaseModel):
    user_uid: str = 'user_uid'

class BodyVer1Parametrized(BodyVer1[Body]):
    pass

MyMessageEnvelope = MessageEnvelope[BodyVer1Parametrized]
msg = MyMessageEnvelope(
    id='id',
    producer='producer',
    body=BodyVer1Parametrized(ver_1_0_0=Body(user_uid='user_uid')),
    created_at=0.0
)
print(repr(msg))
#> MessageEnvelope[BodyVer1Parametrized](id='id', producer='producer', body=BodyVer1Parametrized(ver_1_0_0=Body(user_uid='user_uid')), created_at=0.0)

Hope this helps! Let me know if you have any additional follow up questions.

Yeah, we have some commentary in the generic models section of the docs about isinstance irregularities!


error: Found argument 'lsp' which wasn't expected

When I run this addon I get an error in the extensions output stating:
[Error - 4:40:49 PM] Connection to server is erroring. Shutting down server.
error: Found argument 'lsp' which wasn't expected, or isn't valid in this context

USAGE:
    gleam <SUBCOMMAND>

For more information try --help

So maybe it's trying to run some kind old version of gleam that doesn't have the language server command available?
When I just run gleam lsp on the terminal it works just fine.

Oh nevermind this was my mistake, I had an outdated version installed just for the directory I was running vscode from


Move user.loginList data to new, specialized ONYX key

Problem
A user's loginList data is currently stored in the USER Onyx key, among lots of other user-related data. This is not ideal, since any time this key is updated, every page that subscribes to the USER onyx key will re-render (unless we specifically prevent it using componentShouldUpdate and checking prev vs current props).
Why is this important?
Unnecessary re-renders makes the app slower and can make the app behave unexpectedly so it's always best to limit the amount of rendering.
Solution
While reviewing the N7 Free Plan Account Settings doc (internal), we realized it would be better in the future to have the user's loginList separated from the USER Onyx key into its own key, like LOGIN_LIST. This way we don't have to think if some user data changed that isn't being displayed on each page subscribing to onyx data.
cc @tgolen since this was your idea :D

Triggered auto assignment to @dylanexpensify (External), see https://stackoverflow.com/c/expensify/questions/8582 for more details.

On it!

Internal: https://www.upwork.com/ab/applicants/1501589596015407104/job-details
External: https://www.upwork.com/jobs/~01466c5a04465e487c

Triggered auto assignment to Contributor-plus team member for initial proposal review - @parasharrajat (Exported)

Current assignee @Beamanator is eligible for the Exported assigner, not assigning anyone new.

Proposal
As the solution is to only refactor the code. The diff is little big so I am posting here you can review my proposal from https://github.com/mdneyazahmad/App/tree/refactor/8051-onyx-keys

I don't think there is some specific strategy required for this issue. The solution requires a straight refactor of code and @mdneyazahmad  is the first to show interest so I am fine with him taking up this task.
Few Notes:

Please use USER_LOGIN_LIST key name.
Carefully do the clean-up of USER subscription like you did in one of the files in your changes.
Remember to test every functionality carefully that your PR touches before requesting the PR review.

cc: @Beamanator
:ribbon: :eyes: :ribbon:  C+ reviewed

@parasharrajat Thanks for your review. I think this was the only changes required for this issue. But, I will test it throughly before creating a pr.

📣 @mdneyazahmad You have been assigned to this job by @Beamanator!
Please apply to this job in Upwork and leave a comment on the Github issue letting us know when we can expect a PR to be ready for review 🧑💻
Keep in mind: Code of Conduct | Contributing 📖

Thanks for the review @parasharrajat and thanks for the sample @mdneyazahmad 👍

Reassigning as I'm OOO next week!

Triggered auto assignment to @adelekennedy (External), see https://stackoverflow.com/c/expensify/questions/8582 for more details.

Thanks Adele! Will pick this up when I come back from OOO!

@mdneyazahmad do you mind applying to the role in upwork, I can't find you for some reason!

Update, I will create a pr by tomorrow.

Pr is ready, testing locally will create soon.

Any update here @parasharrajat?

PR deployed on staging 2 days ago.

Nice, thanks!

Payments sent, contracts ended, posting removed!


Improved console text alignment for the node stats

It was just a bit annoying to see the wrong padding.

I don't really see what's "wrong" about the previous padding. 🤔
All I can see here is that you've made the text a bit more condensed. Is that right, or have I missed something?

@bokobza the lines that have hashes in them were too long for the previous formatting so that caused splitting so the leftover of the hash would go to the next line.

Ofc this is only true for the default console settings (lines are 80 characters long) for both linux and windows.

is anyone using console in default?

As in standard terminal settings? for the most part I keep mine at default, and just adjust the height/width of the window with the cursor to see the output. Also I can zoom out as well in the terminal (dunno if that's smth doable in windows tho).

I use cmder, which is really cool.

but I'm happy for this to be in.


Disconnect the websocket on logout and connect appropiately

Tested on Build 159 and now included in release testing.


Backwards compatible solution for #2200

SourceFilter now has a Disable property which can be used to enable or
disable _source.  Instances that accepted Source(bool) now set this
property rather than ExcludeAll (which doesn't truly disable _source).
This is more of a workaround to maintain BWC in 2.x  In master, we will
use Union<bool, ISourceFilter> instead as proposed in #2200.

Sad that it's a Union<bool, ISourceFilter> on IMultiGetRequest :sad:

LGTM :+1:


suggestion: download more than one set of word vectors

for instance by passing a list:
chakin.download(number=[11,12,13,14], save_dir='./')

Is downloading multiple word vectors so frequent? I want to consider it on demand from its needs.

I usually, when setting up a new machine for experiments, get GoogleNews, GloVe and fasttext.

Thank you for your reply. I discussed with @Hironsan and decided not to support this feature.
Because we can execute list download by simple for loop.
vector_ids = [11, 12, ...]
for i in vector_ids:
   chakin.download(number=i, save_dir="./")

[chakin.download(number=i) for i in vector_ids]


Review Issue 10: Methods.js

Please review Methods.js, linked here
Use these guidelines:
Architecture
Design
JS
React
DUE: 11/18

Design-05: Lines 11, 12, 14 should be removed if commented out

updateHistoricalData could dynamically find 'year's instead of hard coding it.
Commented out code should be removed

Storing verification code in memory can be unreliable

Delete unused imports

Architecture OK
Design 03 - If the imports in the beginning are not used, delete them

are there more years that will be available in the historical data aside from 2020-24?
JS and ESLint OK
React OK

Remove commented code


Replay of imported landscapes

We require a new view / dialog that uses the data described in https://github.com/ExplorViz/explorviz-backend/issues/78, so that users can choose a landscape that they want to inspect.

Currently under development in combination with new timeline.

What is the status of this?


Adding a new project CoronaTracker in the repo

This project is to build an application to track covid-19 close contacts within last 14 days for a detected corona patient especially useful for government.

@hissain
Read the contribution guidelines please.


Are PowerShell runspaces, hosting, and etc. on the radars?

Per this StackOverflow question and answer PowerShellStandard.Library does not support these.
Is this functionality on the radars?

And a suggestion. For the time being, perhaps, it makes sense to throw a "not supported/implemented" exceptions instead of quietly returning nulls.

I have found just released https://www.nuget.org/packages/Microsoft.PowerShell.SDK
It looks like it is designed for hosting and etc.
Closing.


Why loss becomes nan when training gemma-2-2b-it for reward modeling.

Anyone faces same bug?

can you provide your rm-layer setting? and chat_template?

I find the reason since in the earlier version transformers, flash-attention of gemma-2 is wrong.

@catqaq I find loss becomes nan in any version of transformers when using flash-attn. (default chat-template and layer setting)


Wrong status for fiika and fikan

Reported by @nwhpt:

fiika: Ikaalinen not operating anymore
fikan: Kankaanpää is operating

@nwhpt note that we are getting data under radar code fiika: https://aloftdata.eu/browse/?prefix=baltrad/hdf5/fiika/ but not for fikan: https://aloftdata.eu/browse/?prefix=baltrad/hdf5/fikan/

Ikaalinen was discontinued at some point in spring. There must be an error in the code. I can try to check with IL radar staff. Perhaps they forgot to report it or so.

Apparently it seems that the Kankaanpää data is currently still delivered as fiika because of some ongoing tests, even though fiika is not working anymore. This should (apparently) change later, once the test phase is over. I don't know when that is.


Improve importer to handle students with no grades

from this:
Validation failed: Grade invalid grade:

      /app/vendor/bundle/ruby/2.3.0/gems/activerecord-5.1.6/lib/active_record/validations.rb:78:in `raise_validation_error'
	/app/vendor/bundle/ruby/2.3.0/gems/activerecord-5.1.6/lib/active_record/validations.rb:50:in `save!'
	/app/vendor/bundle/ruby/2.3.0/gems/activerecord-5.1.6/lib/active_record/attribute_methods/dirty.rb:43:in `save!'
	/app/vendor/bundle/ruby/2.3.0/gems/activerecord-5.1.6/lib/active_record/transactions.rb:313:in `block in save!'
	/app/vendor/bundle/ruby/2.3.0/gems/activerecord-5.1.6/lib/active_record/transactions.rb:384:in `block in with_transaction_returning_status'
	/app/vendor/bundle/ruby/2.3.0/gems/activerecord-5.1.6/lib/active_record/connection_adapters/abstract/database_statements.rb:235:in `block in transaction'
	/app/vendor/bundle/ruby/2.3.0/gems/activerecord-5.1.6/lib/active_record/connection_adapters/abstract/transaction.rb:194:in `block in within_new_transaction'
	/app/vendor/ruby-2.3.0/lib/ruby/2.3.0/monitor.rb:214:in `mon_synchronize'
	/app/vendor/bundle/ruby/2.3.0/gems/activerecord-5.1.6/lib/active_record/connection_adapters/abstract/transaction.rb:191:in `within_new_transaction'
	/app/vendor/bundle/ruby/2.3.0/gems/activerecord-5.1.6/lib/active_record/connection_adapters/abstract/database_statements.rb:235:in `transaction'
	/app/vendor/bundle/ruby/2.3.0/gems/activerecord-5.1.6/lib/active_record/transactions.rb:210:in `transaction'
	/app/vendor/bundle/ruby/2.3.0/gems/activerecord-5.1.6/lib/active_record/transactions.rb:381:in `with_transaction_returning_status'
	/app/vendor/bundle/ruby/2.3.0/gems/activerecord-5.1.6/lib/active_record/transactions.rb:313:in `save!'
	/app/vendor/bundle/ruby/2.3.0/gems/activerecord-5.1.6/lib/active_record/suppressor.rb:46:in `save!'
	/app/vendor/bundle/ruby/2.3.0/gems/scout_apm-2.4.10/lib/scout_apm/instruments/active_record.rb:354:in `save!'
	/app/app/importers/file_importers/students_importer.rb:44:in `import_row'
	/app/app/importers/file_importers/students_importer.rb:16:in `block in import'
	/app/vendor/ruby-2.3.0/lib/ruby/2.3.0/csv.rb:852:in `each'
	/app/vendor/ruby-2.3.0/lib/ruby/2.3.0/csv.rb:852:in `each'
	/app/app/importers/file_importers/students_importer.rb:15:in `each_with_index'
	/app/app/importers/file_importers/students_importer.rb:15:in `import'
	/app/app/importers/import_task.rb:136:in `block in import_all_the_data'
	/app/app/importers/import_task.rb:129:in `each'
	/app/app/importers/import_task.rb:129:in `import_all_the_data'
	/app/app/importers/import_task.rb:29:in `connect_transform_import'
	/app/app/jobs/import_job.rb:9:in `perform'
	/app/vendor/bundle/ruby/2.3.0/gems/delayed_job-4.1.4/lib/delayed/backend/base.rb:81:in `block in invoke_job'
	/app/vendor/bundle/ruby/2.3.0/gems/rollbar-2.15.5/lib/rollbar/plugins/delayed_job/plugin.rb:38:in `block in invoke_job_callback'
	/app/vendor/bundle/ruby/2.3.0/gems/delayed_job-4.1.4/lib/delayed/lifecycle.rb:79:in `block (2 levels) in add'
	/app/vendor/bundle/ruby/2.3.0/gems/scout_apm-2.4.10/lib/scout_apm/background_job_integrations/delayed_job.rb:71:in `block (3 levels) in install'
	/app/vendor/bundle/ruby/2.3.0/gems/delayed_job-4.1.4/lib/delayed/lifecycle.rb:79:in `block (2 levels) in add'
	/app/vendor/bundle/ruby/2.3.0/gems/delayed_job-4.1.4/lib/delayed/lifecycle.rb:61:in `block in initialize'
	/app/vendor/bundle/ruby/2.3.0/gems/delayed_job-4.1.4/lib/delayed/lifecycle.rb:79:in `block in add'
	/app/vendor/bundle/ruby/2.3.0/gems/delayed_job-4.1.4/lib/delayed/lifecycle.rb:79:in `block in add'
	/app/vendor/bundle/ruby/2.3.0/gems/delayed_job-4.1.4/lib/delayed/lifecycle.rb:66:in `execute'
	/app/vendor/bundle/ruby/2.3.0/gems/delayed_job-4.1.4/lib/delayed/lifecycle.rb:40:in `run_callbacks'
	/app/vendor/bundle/ruby/2.3.0/gems/delayed_job-4.1.4/lib/delayed/backend/base.rb:78:in `invoke_job'
	/app/vendor/bundle/ruby/2.3.0/gems/delayed_job-4.1.4/lib/delayed/worker.rb:230:in `block (2 levels) in run'
	/app/vendor/ruby-2.3.0/lib/ruby/2.3.0/timeout.rb:91:in `block in timeout'
	/app/vendor/ruby-2.3.0/lib/ruby/2.3.0/timeout.rb:101:in `timeout'
	/app/vendor/bundle/ruby/2.3.0/gems/delayed_job-4.1.4/lib/delayed/worker.rb:230:in `block in run'
	/app/vendor/ruby-2.3.0/lib/ruby/2.3.0/benchmark.rb:308:in `realtime'
	/app/vendor/bundle/ruby/2.3.0/gems/delayed_job-4.1.4/lib/delayed/worker.rb:229:in `run'
	/app/vendor/bundle/ruby/2.3.0/gems/delayed_job-4.1.4/lib/delayed/worker.rb:312:in `block in reserve_and_run_one_job'
	/app/vendor/bundle/ruby/2.3.0/gems/delayed_job-4.1.4/lib/delayed/lifecycle.rb:61:in `block in initialize'
	/app/vendor/bundle/ruby/2.3.0/gems/delayed_job-4.1.4/lib/delayed/lifecycle.rb:66:in `execute'
	/app/vendor/bundle/ruby/2.3.0/gems/delayed_job-4.1.4/lib/delayed/lifecycle.rb:40:in `run_callbacks'
	/app/vendor/bundle/ruby/2.3.0/gems/delayed_job-4.1.4/lib/delayed/worker.rb:312:in `reserve_and_run_one_job'
	/app/vendor/bundle/ruby/2.3.0/gems/delayed_job-4.1.4/lib/delayed/worker.rb:213:in `block in work_off'
	/app/vendor/bundle/ruby/2.3.0/gems/delayed_job-4.1.4/lib/delayed/worker.rb:212:in `times'
	/app/vendor/bundle/ruby/2.3.0/gems/delayed_job-4.1.4/lib/delayed/worker.rb:212:in `work_off'
	/app/vendor/bundle/ruby/2.3.0/gems/delayed_job-4.1.4/lib/delayed/worker.rb:175:in `block (4 levels) in start'
	/app/vendor/ruby-2.3.0/lib/ruby/2.3.0/benchmark.rb:308:in `realtime'
	/app/vendor/bundle/ruby/2.3.0/gems/delayed_job-4.1.4/lib/delayed/worker.rb:174:in `block (3 levels) in start'
	/app/vendor/bundle/ruby/2.3.0/gems/delayed_job-4.1.4/lib/delayed/lifecycle.rb:61:in `block in initialize'
	/app/vendor/bundle/ruby/2.3.0/gems/delayed_job-4.1.4/lib/delayed/lifecycle.rb:66:in `execute'
	/app/vendor/bundle/ruby/2.3.0/gems/delayed_job-4.1.4/lib/delayed/lifecycle.rb:40:in `run_callbacks'
	/app/vendor/bundle/ruby/2.3.0/gems/delayed_job-4.1.4/lib/delayed/worker.rb:173:in `block (2 levels) in start'
	/app/vendor/bundle/ruby/2.3.0/gems/delayed_job-4.1.4/lib/delayed/worker.rb:172:in `loop'
	/app/vendor/bundle/ruby/2.3.0/gems/delayed_job-4.1.4/lib/delayed/worker.rb:172:in `block in start'
	/app/vendor/bundle/ruby/2.3.0/gems/delayed_job-4.1.4/lib/delayed/plugins/clear_locks.rb:7:in `block (2 levels) in <class:ClearLocks>'
	/app/vendor/bundle/ruby/2.3.0/gems/delayed_job-4.1.4/lib/delayed/lifecycle.rb:79:in `block (2 levels) in add'
	/app/vendor/bundle/ruby/2.3.0/gems/delayed_job-4.1.4/lib/delayed/lifecycle.rb:61:in `block in initialize'
	/app/vendor/bundle/ruby/2.3.0/gems/delayed_job-4.1.4/lib/delayed/lifecycle.rb:79:in `block in add'
	/app/vendor/bundle/ruby/2.3.0/gems/delayed_job-4.1.4/lib/delayed/lifecycle.rb:66:in `execute'
	/app/vendor/bundle/ruby/2.3.0/gems/delayed_job-4.1.4/lib/delayed/lifecycle.rb:40:in `run_callbacks'
	/app/vendor/bundle/ruby/2.3.0/gems/delayed_job-4.1.4/lib/delayed/worker.rb:171:in `start'
	/app/vendor/bundle/ruby/2.3.0/gems/delayed_job-4.1.4/lib/delayed/tasks.rb:9:in `block (2 levels) in <top (required)>'
	/app/vendor/bundle/ruby/2.3.0/gems/rake-12.3.1/lib/rake/task.rb:271:in `block in execute'
	/app/vendor/bundle/ruby/2.3.0/gems/rake-12.3.1/lib/rake/task.rb:271:in `each'
	/app/vendor/bundle/ruby/2.3.0/gems/rake-12.3.1/lib/rake/task.rb:271:in `execute'
	/app/vendor/bundle/ruby/2.3.0/gems/rake-12.3.1/lib/rake/task.rb:213:in `block in invoke_with_call_chain'
	/app/vendor/ruby-2.3.0/lib/ruby/2.3.0/monitor.rb:214:in `mon_synchronize'
	/app/vendor/bundle/ruby/2.3.0/gems/rake-12.3.1/lib/rake/task.rb:193:in `invoke_with_call_chain'
	/app/vendor/bundle/ruby/2.3.0/gems/rake-12.3.1/lib/rake/task.rb:182:in `invoke'
	/app/vendor/bundle/ruby/2.3.0/gems/rake-12.3.1/lib/rake/application.rb:160:in `invoke_task'
	/app/vendor/bundle/ruby/2.3.0/gems/rake-12.3.1/lib/rake/application.rb:116:in `block (2 levels) in top_level'
	/app/vendor/bundle/ruby/2.3.0/gems/rake-12.3.1/lib/rake/application.rb:116:in `each'
	/app/vendor/bundle/ruby/2.3.0/gems/rake-12.3.1/lib/rake/application.rb:116:in `block in top_level'
	/app/vendor/bundle/ruby/2.3.0/gems/rake-12.3.1/lib/rake/application.rb:125:in `run_with_threads'
	/app/vendor/bundle/ruby/2.3.0/gems/rake-12.3.1/lib/rake/application.rb:110:in `top_level'
	/app/vendor/bundle/ruby/2.3.0/gems/rake-12.3.1/lib/rake/application.rb:83:in `block in run'
	/app/vendor/bundle/ruby/2.3.0/gems/rake-12.3.1/lib/rake/application.rb:186:in `standard_exception_handling'
	/app/vendor/bundle/ruby/2.3.0/gems/rake-12.3.1/lib/rake/application.rb:80:in `run'
	/app/vendor/bundle/ruby/2.3.0/gems/rake-12.3.1/exe/rake:27:in `<top (required)>'
	/app/vendor/bundle/ruby/2.3.0/bin/rake:23:in `load'
	/app/vendor/bundle/ruby/2.3.0/bin/rake:23:in `<top (required)>'
	/app/vendor/bundle/ruby/2.3.0/gems/bundler-1.15.2/lib/bundler/cli/exec.rb:74:in `load'
	/app/vendor/bundle/ruby/2.3.0/gems/bundler-1.15.2/lib/bundler/cli/exec.rb:74:in `kernel_load'
	/app/vendor/bundle/ruby/2.3.0/gems/bundler-1.15.2/lib/bundler/cli/exec.rb:27:in `run'
	/app/vendor/bundle/ruby/2.3.0/gems/bundler-1.15.2/lib/bundler/cli.rb:360:in `exec'
	/app/vendor/bundle/ruby/2.3.0/gems/bundler-1.15.2/lib/bundler/vendor/thor/lib/thor/command.rb:27:in `run'
	/app/vendor/bundle/ruby/2.3.0/gems/bundler-1.15.2/lib/bundler/vendor/thor/lib/thor/invocation.rb:126:in `invoke_command'
	/app/vendor/bundle/ruby/2.3.0/gems/bundler-1.15.2/lib/bundler/vendor/thor/lib/thor.rb:369:in `dispatch'
	/app/vendor/bundle/ruby/2.3.0/gems/bundler-1.15.2/lib/bundler/cli.rb:20:in `dispatch'
	/app/vendor/bundle/ruby/2.3.0/gems/bundler-1.15.2/lib/bundler/vendor/thor/lib/thor/base.rb:444:in `start'
	/app/vendor/bundle/ruby/2.3.0/gems/bundler-1.15.2/lib/bundler/cli.rb:10:in `start'
	/app/vendor/bundle/ruby/2.3.0/gems/bundler-1.15.2/exe/bundle:30:in `block in <top (required)>'
	/app/vendor/bundle/ruby/2.3.0/gems/bundler-1.15.2/lib/bundler/friendly_errors.rb:121:in `with_friendly_errors'
	/app/vendor/bundle/ruby/2.3.0/gems/bundler-1.15.2/exe/bundle:22:in `<top (required)>'
	/app/bin/bundle:3:in `load'
	/app/bin/bundle:3:in `<main>'

        {
  "importer": "StudentsImporter"
}

From looking at the import data in Somerville, this is from 13 students all withdrawn or graduated.  https://github.com/studentinsights/studentinsights/pull/1776 is a fix.

https://github.com/studentinsights/studentinsights/pull/1776 fixed this.


bug: Add options to SFTP

Noticed authentication errors when connected to a non localhost SFTP. It errored out when looking for ssh keys.
This gives us the option to not look for those. Which is correct if we are giving it user/password.

Ingest test on sftp source runs on localhost, which should be why we weren't able to catch this
Spinning / keeping a remote server alive just to catch similar issues in CI tests is possible, but not urgent
Defaults for --allow-agent and --look-for-keys being false makes sense, given that --username and --password are required

LGTM


Update owners

Changes are in line with the CLA and IP transfer.

LGTM. I noticed that Robin Freyler and George Oastler were removed from a few. Just want to make sure that was intentional.

Yeah intentional, the CLA and IP transfer allows this, I wanted to make the authors consistent everywhere.


Test: Terminal runner as default runner

Complexity: 3
Tests: #27078

[ ] Windows: @Lixire
[x] Linux: @bpasero
[ ] Mac: @chrisdias

One tester could be @Lixire
Default detection

start with a fresh workspace
install gulp into that workspace
create a gulpfile that exports some tasks like:

var gulp = require('gulp');

gulp.task('build', function() {
    console.log('Build');
});

gulp.task('watch', function() {
    console.log('Watch');
    console.log("src/protocol.ts(413,17): error TS2304: Cannot find name 'TextDocumentClientCapabilities'.");
    console.log("src/protocol.ts(413,17): error TS4033: Property 'textDocument' of exported interface has or is using private name 'TextDocumentClientCapabilities'.");
});

F1 > Run task.

Ensure that the tasks are listed. Selecting a task should execute the task in the terminal.
Additionally try:

npm: The script tasks should be listed as well as the install and test task.
TypeScript: create a tsconfig.json and a TS file. F1 > Run Task. Ensure that a tsc: build tsconfig.json entry is listed.

Customize contributed task in tasks.json

F1 > Run task
select the customize action (the settings icon to the left of the task name) of the gulp: watch task from above. Ensure that the task is inserted into the tasks.json file and that the editor did open on that file. The inserted task should look like this:

		{
			"taskName": "gulp: watch",
			"identifier": "gulp.watch"
		}

add a problem matcher to the task by changing the task as follows:

		{
			"taskName": "gulp: watch",
			"identifier": "gulp.watch"
			"problemMatcher": "$tsc"
		}

ensure that executing the tasks adds two probems to the problem view (the task simply prints two error messages)
rename the task (change the task name) and ensure that the task is only showing up under Configured Tasks (please note that tasks that annotate task coming from an extension can only change top level attributes right now. You can't change for example the terminal reveal or echo behavior)

Add configured task

add another task to the tasks.json that is not contributed by an extension. Start with something simple like

		{
			"taskName": "dir",
			"command": "dir",
			"type": "shell"
		}

ensure that the task is listed in F1 > Run task and if selected executes in the terminal.

For TSC I am hitting: https://github.com/Microsoft/vscode/issues/27516


Mixing mkldnn and some external code

Hi all,
Can I use some IPP/MKL code between 2 consecutive primitives execution?
Thanks
Elad

Well, as long as the data in the format that can be fed into Intel MKL or Intel IPP (i.e. nchw, nhwc, etc), no problem with interleaving Intel MKL-DNN primitives with functions from any other libraries.

Thanks


hi,face-editor can use in comfyui?

hope to use him in Comfyui

ComfyUI already has custom nodes (e.g., DZ FaceDetailer, ComfyUI-Impact-Pack) with similar functionality to this software, so it is likely that your wishes will be fulfilled by using them.

ComfyUI already has custom nodes (e.g., DZ FaceDetailer, ComfyUI-Impact-Pack) with similar functionality to this software, so it is likely that your wishes will be fulfilled by using them.

不好用，还是更喜欢 face editor 多一些


Inactive IAM Collaborator Deletion Required - Username: gavin.keane

The Collaborator-Inactivity-Monitoring workflow has detected that the username gavin.keane is inactive for more than 180 days.
Consult this documentation which describes the process for deleting the collaborator user.

Removed via PR - https://github.com/ministryofjustice/modernisation-platform/pull/6934


quiche: update tar and implement EnvoyQuicProofSource

Update QUICHE tar to 25da9198727ef05edeb99d9f4ce5b6acb3cb87b5 which turn on IETF QUIC by default.
Add QuicDownstream/UpstreamTransport protobuf to wrap tls.v3.Downstream/UpstreamTlsContext to distinguish QuicServer/ClientTransportSocketConfigFactory from Downstream/UpstreamSslSocketFactory by typed_config. And change configs in unit and integration tests accordingly. This is needed to retrieve filter chain correctly based on typed_config. Previously integration tests has been creating the wrong TransportSocketFactory which wasn't in use.
Fix quic_http_integration_test to work with IETF QUIC:

Add real implementation of ProofSource::GetCertChain() and ComputeTlsSignature() in EnvoyQuicProofSource which overrides EnvoyQuicFakeProofSource. The verifier is still a fake one which doesn't verify signature.
This QUICHE tar ball has an issue in ACK alarm which is not compatible with current implementation of Envoy event system(how timers work in libevent and timer granularity >1ms). So I added a walk-around in EnvoyQuicAlarm to make sure a timer scheduled within 1ms is triggered in next event loop. Otherwise QUIC ACK alarm keeps re-arm itself in same event loop and never exit. There will be an upstream fix to ensure QUICHE behavior doesn't assume platform event system behavior and timer granularity so.

Fix unit tests for ActiveQuicListener and EnvoyQuicDispatcher to work with IETF QUIC:

Add TestProofSource for unit tests
Add a util function for CHLO generation according to different versions

Risk Level: low, not in use
Testing: modify EnvoyQuicFakeProofSourceTest to test EnvoyQuicProofSource
Fixes #10767 #10422

/assign @wu-bin @htuch

@danzh1989 is it possible to split the tar update and the implementation part into distinct PRs?

Also @wu-bin can you provide a full QUIC review on this? I'm going to be able to speak to Envoy style and API use here, but I'm not familiar with the details of the QUIC implementation.

@danzh1989 is it possible to split the tar update and the implementation part into distinct PRs?

Unfortunately I can't separate them as this tar update is to provide the interface needed for the ProofSouce implementation, but itself also requires a fully implemented ProofSource to be able to run existing integration test.

@danzh1989 OK, then we should get a first pass from @wu-bin. @alyssawilk are you interested in this one? I'm happy to do a pure coding style / security review pass before merging, but I'm totally unfamiliar with QUIC from a functional perspective.

I'll take a look at this today.
On Mon, Jun 1, 2020 at 9:41 AM alyssawilk<EMAIL_ADDRESS>wrote:

Yeah, I can pick up after @wu-bin https://github.com/wu-bin
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/envoyproxy/envoy/pull/11316#issuecomment-636867264,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ALCMK5NJYIKNL7OPATDUWIDRUOVWXANCNFSM4NJ7MHGQ
.

/lgtm api

Thanks Dan, this looks good overall. It seems presubmit is failing, can you take a look at it?

Fixed those clang-tidy error. PTAL

coverage CI failed with error: Code coverage for extension source/extensions/transport_sockets/tls is lower than limit of 94.5 (94.4)
This PR didn't touch any files under tls directory.

@alyssawilk Can you take a look now?

This commit has broken Windows compilation due to upstream quiche.
bazel-out/x64_windows-opt/bin/external/com_googlesource_quiche/quiche/quic/core/crypto/certificate_view.cc(140): error C7555: use of designated initializers requires at least '/std:c++latest'
See https://developercommunity.visualstudio.com/idea/518768/c-designated-initializers.html and expand comments.
Until we are able to build against bleed (stdc++20), meaning all stdc++17 changes have been adopted, this patch is a nonstarter. Can this be reverted and tabled until envoy is at least at stdc++17, or until addressed upstream using stdc++?

cc @sunjayBhatia

This commit has broken Windows compilation due to upstream quiche.
bazel-out/x64_windows-opt/bin/external/com_googlesource_quiche/quiche/quic/core/crypto/certificate_view.cc(140): error C7555: use of designated initializers requires at least '/std:c++latest'
See https://developercommunity.visualstudio.com/idea/518768/c-designated-initializers.html and expand comments.
Until we are able to build against bleed (stdc++20), meaning all stdc++17 changes have been adopted, this patch is a nonstarter. Can this be reverted and tabled until envoy is at least at stdc++17, or until addressed upstream using stdc++?

It can be easily fixed in upstream. But we might easily run into same problem again in the future.

Please try to get an upstream fix in quiche done ASAP.  Reverting the PR
may still make sense to get back to a stable state.
We may want to enable one of these clang warning modes to prevent future
breakage:
-Wc99-designator
-Wc99-extensions
-Wc++20-designator (may require clang 10)
-Wc++20-extensions (may require clang 10)
On Thu, Jun 11, 2020 at 10:33 AM danzh<EMAIL_ADDRESS>wrote:

This commit has broken Windows compilation due to upstream quiche.
bazel-out/x64_windows-opt/bin/external/com_googlesource_quiche/quiche/quic/core/crypto/certificate_view.cc(140):
error C7555: use of designated initializers requires at least
'/std:c++latest'
See
https://developercommunity.visualstudio.com/idea/518768/c-designated-initializers.html
and expand comments.
Until we are able to build against bleed (stdc++20), meaning all stdc++17
changes have been adopted, this patch is a nonstarter. Can this be reverted
and tabled until envoy is at least at stdc++17, or until addressed upstream
using stdc++?
It can be easily fixed in upstream. But we might easily run into same
problem again in the future.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/envoyproxy/envoy/pull/11316#issuecomment-642697753,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AGZ33CNYPMK5Z6AVVTF66F3RWDTKFANCNFSM4NJ7MHGQ
.

Please try to get an upstream fix in quiche done ASAP. Reverting the PR may still make sense to get back to a stable state. We may want to enable one of these clang warning modes to prevent future breakage: -Wc99-designator -Wc99-extensions -Wc++20-designator (may require clang 10) -Wc++20-extensions (may require clang 10)
…
On Thu, Jun 11, 2020 at 10:33 AM danzh @.***> wrote: This commit has broken Windows compilation due to upstream quiche. bazel-out/x64_windows-opt/bin/external/com_googlesource_quiche/quiche/quic/core/crypto/certificate_view.cc(140): error C7555: use of designated initializers requires at least '/std:c++latest' See https://developercommunity.visualstudio.com/idea/518768/c-designated-initializers.html and expand comments. Until we are able to build against bleed (stdc++20), meaning all stdc++17 changes have been adopted, this patch is a nonstarter. Can this be reverted and tabled until envoy is at least at stdc++17, or until addressed upstream using stdc++? It can be easily fixed in upstream. But we might easily run into same problem again in the future. — You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub <#11316 (comment)>, or unsubscribe https://github.com/notifications/unsubscribe-auth/AGZ33CNYPMK5Z6AVVTF66F3RWDTKFANCNFSM4NJ7MHGQ .

Fix is in https://github.com/envoyproxy/envoy/pull/11562


Fix CEF 2171 build on Linux

Replaces #489.
Manually merge changes to cefclient sample app  into our linux implementation.

GYP file changes https://code.google.com/p/chromiumembedded/source/browse/branches/2171/cef3/cef.gyp
Client app changes https://code.google.com/p/chromiumembedded/source/browse/branches/2171/cef3/tests/cefclient/

I build this branch and it looks partly good, although better than before.

:+1: Terminating Brackets via the File->Quit works fine
:-1: closing the Brackets window results in a crash ([0128/225630:FATAL:cef_ref_counted.h(339)] Assert failed: ptr_ != __null.)

I have tested this on Ubuntu 14.10 32 Bit

@ingorichter yeah we ran into this too, while we were doing some unit testing. I am on it. I kind of figured out the problem. I will push more changes to this branch with my changes which should solve the problem.

@ingorichter @jasonsanjose I fixed this problem partially but this bug has lot of side effects(Especially when dealing with multiple Brackets windows). This does not seem to be an easy fix. Like @jasonsanjose said, the latest version of cefclient is a lot different than our appshell.  I think the right fix is to pick the latest linux counter parts of cefclient and then integrate our appshell changes into it. This definently is a big task. However I will see if we can fix this so that the side effects are minimal. In whatever case, I will update this thread with my findings and hopefully some solution.

@ingorichter @jasonsanjose I have managed to fix this problem. My latest commit to this branch has the solution for crash on quit. Could you guys pull down the latest changes and do some testing around this.

Closing via the window X button works great now, but I see a hang when quitting via File > Quit now where it was previously working fine. Almost there though!

@jasonsanjose That's strange. I am not able to reproduce this crash. In fact the new commit was to fix both the crashes. I don't know if I missed something in my commit.
If you are still able to crash Brackets with my new commit, I am going to have to power up my Linux system again to double check this. Bad thing I will have to wait until Monday as the Linux system is in the office. :disappointed:

@jasonsanjose @ingorichter at last I managed to repro the issue. The crash is evident only on VM. I am using VMWare Fusion. Weird thing that I observed is that, this crash is reproducible when the VM image's no of processors setting is set to 1. If I change it to 2, I am not able to repro the crash. Also I found another defect while doing code review, the fix for which I have already pushed in, though this does not fix the bug with crash/hang, when VM image's no of processors setting is set to 1.
Since the the hang is happening with VM, should we go ahead and merge this branch into master?

Ok with me.
Has anyone else tested these changes to make sure mac and windows still build without any new issues? It's worth sanity checking since we did change some cross-platform code here as well as the gyp files (though that's mostly isolated to the linux setup).

I tried building this branch on mac and it fails. I must have broken something in the gyp build. I'll take a look.
$ grunt build
Running "build" task

Running "build-mac" task
>> ** BUILD FAILED **
>>
>>
>> The following build commands failed:
>> 	CompileC xcodebuild/appshell.build/Release/appshell_helper_app.build/Objects-normal/i386/appshell_extensions.o appshell/appshell_extensions.cpp normal i386 c++ com.apple.compilers.llvm.clang.1_0.compiler
>> (1 failure)
Warning: Task "build-mac" failed. Use --force to continue.

Aborted due to warnings.

@jasonsanjose I figured this out too. This was because we have added an AfterClose() OVERRIDE in  client_handler.h and this is only overridden for the Linux platform. We could take the OVERRIDE out and subsitute it with empty method/call the base class version, so the clients interested in can override this. Even better, take this off, as this method is not getting called on Linux platform(in which case we will have to remove the definition in client_handler_gtk.cpp).

Good idea. I removed AfterClose.

I've just tried a new 1.2 preview (v1.2.0-15668 master 027de3046) in a Debian sid VM. Initially all was well, except it not remembering window size/position upon reopening. However now it's crashing on close, though only with the 'x' button it seems (which worked initially). File > quit continues to work fine.
In system manager I can see four brackets processes:

'brackets'
'brackets-node'
'brackets --type=zygote --no-sandbox --lang=en-US --log-severity=disable'
'brackets --type=renderer --no-sandbox --enable-deferred-image-decoding --lang=en-US --lang=en-US --log-severity=disable --enable-delegated-renderer --enable-impl-side-painting --num-raster-threads=1 --disable-accelerated-video-decode --channel=31900.1.2105914780'

When the problem occurs, the last of these disappears, the other three remain.
The repeated lang param is not a typo btw ;)
I'm running this VM in virtualbox, and I'm using gnome. The VM has 1 CPU core.

Good morning
See also thread https://github.com/adobe/brackets/issues/10255
As per posting in that thread from Jason, installed and tested build at https://github.com/adobe/brackets/releases/download/linux-cef-2171/Brackets.Release.1.2.64-bit.deb. For the very first time since have been using Brackets, it closes cleanly on the first click on the 'x'. Closing via 'File->Quit' still closing cleanly as before.
With greetings
Romane

Hi all
I was testing this request, but I found errors when running the brackets-shell.
Use fedora-20 x64.
The title page of this fixed "Brackets"
and after I maximixar the window, you can not write on inputs

I tryed in my Ubuntu VM and found that the close button works if I have the 3D acceleration enabled, otherwise it hangs the window.
When I hit File \ Close I always get a segfault. I tryed to debug with gdb but in the end I gave up...
@nethip What I can try to fix this?

@ficristo Are you talking about the crash happening on linux-1547?

I was talking about this PR and the issues about the crash on exit.
Maybe I misunderstood the issues?
Is linux-1547 crashing? I thought this PR was crashing...

@ficristo Nope linux-1547 is stable :smile:
It is this PR that is crashing. And about the fix, I think we need to study cefclient and migrate new changes to our appshell. You could download cefclient from https://cefbuilds.com.

Ah, ok!

Hello,
I tried to build this branch and create installer using 'grunt installer'. When I try to install the .deb file, I get the error
prateek@prateek-debian:~/work/open-source/brackets-shell$ sudo dpkg -i installer/linux/Brackets\ Release\ 1.2\ 64-bit.deb
(Reading database ... 189544 files and directories currently installed.)
Preparing to unpack .../Brackets Release 1.2 64-bit.deb ...
Unpacking brackets (1.8.0-16890) over (1.8.0-16890) ...
dpkg: dependency problems prevent configuration of brackets:
brackets depends on libgcrypt11 (>= 1.4.5); however:
Package libgcrypt11 is not installed.
dpkg: error processing package brackets (--install):
dependency problems - leaving unconfigured
Processing triggers for menu (2.1.47) ...
Processing triggers for hicolor-icon-theme (0.13-1) ...
Errors were encountered while processing:
brackets
Then I tried the solution provided in comment https://github.com/adobe/brackets/issues/10255#issuecomment-72337321 and I modified the control file and included libgcrypt20 and run 'grunt installer' again. This time the .deb file installation was successful.
When I try to run brackets by typing the command 'brackets' in terminal, I get the error:
prateek@prateek-debian:~/work/open-source/brackets-shell$ brackets
[0703/121909:ERROR:browser_main_loop.cc(163)] Running without the SUID sandbox! See https://code.google.com/p/chromium/wiki/LinuxSUIDSandboxDevelopment for more information on developing with the sandbox on.
[0703/121909:ERROR:renderer_main.cc(207)] Running without renderer sandbox
ATTENTION: default value of option force_s3tc_enable overridden by environment.
[0703/121909:ERROR:nss_util.cc(819)] After loading Root Certs, loaded==false: NSS error code: -8018
The quitting brackets using close button works fine but when I close brackets using file->quit, the error 'Segmentation fault' appears on terminal.
OS : Debian 8.5

Also when I try to run the file Brackets in out/Release folder and provide the path to index.html in brackets repository, nothing happens. I get the error :
prateek@prateek-debian:~/work/open-source/brackets-shell$ out/Release/./Brackets
[0703/122914:ERROR:browser_main_loop.cc(163)] Running without the SUID sandbox! See https://code.google.com/p/chromium/wiki/LinuxSUIDSandboxDevelopment for more information on developing with the sandbox on.
ATTENTION: default value of option force_s3tc_enable overridden by environment.
[0703/122914:ERROR:nss_util.cc(819)] After loading Root Certs, loaded==false: NSS error code: -8018
Even pressing Ctrl+C on the terminal window does nothing. I have to kill the processes in another window/tab.

Superceded by https://github.com/adobe/brackets-shell/pull/619