add support of OAuth 2.0/OIDC 'code with PKCE' flow (back-end)

https://issues.apache.org/jira/browse/SOLR-16897
This is the "back-end" part of 'code with PKCE' contribution.
The back-end code is mainly for configuration. This is where the different options are configured.
This PR adds tokenEndpoint and authorizationFlow options.
Checklist
Please review the following and check all that apply:

[x] I have reviewed the guidelines for How to Contribute and my code conforms to the standards described there to the best of my ability.
[x] I have created a Jira issue and added the issue ID to my pull request title.
[x] I have given Solr maintainers access to contribute to my PR branch. (optional but recommended)
[x] I have developed this patch against the main branch.
[x] I have run ./gradlew check.
[x] I have added tests for my changes.
[ ] I have added documentation for the Reference Guide

Looks overall good.
Please do a stab on RefGuide docs. The ref guide should encourage the use of code flow and warn that implicit flow support is deprecated.
Perhaps we can also print a WARN log in backend if implicit is in use (either explicitly or implicitly) so that users upgrading to 9.4 without reading the release notes will at least get a warn log that they should switch.

Thank you @janhoy for the review.
I am planning to add a new entry to the ref guide.
BTW, I have added a WARN message.

BTW, I have added a WARN message.

Thanks, the validation and warn log looks good 👍
Will do a final review when refguide docs are in. Also remember CHANGES.txt.

Eager to get this into 9.4. Let me know if we can help finalizing these two PRs

Eager to get this into 9.4. Let me know if we can help finalizing these two PRs
@janhoy
I should push a new commit sometime today. I have changed little bit your CSP patch, I just need to add a test class for LoadAdminUiServlet.

Eager to get this into 9.4. Let me know if we can help finalizing these two PRs

@janhoy I should push a new commit sometime today. I have changed little bit your CSP patch, I just need to add a test class for LoadAdminUiServlet.

Cool. In my patch i completely disabled CSP response for all other endpoints than the AdminUIServlet. I cannot see a reason to return that header for other endpoints. The only I can think of is if you have a solr package that exposes another UI on some path, it could be nice to protect that UI with CSP rules, so if it would be possible to have some fallback CSP header for all other requests perhaps?

Eager to get this into 9.4. Let me know if we can help finalizing these two PRs

@janhoy I should push a new commit sometime today. I have changed little bit your CSP patch, I just need to add a test class for LoadAdminUiServlet.

Cool. In my patch i completely disabled CSP response for all other endpoints than the AdminUIServlet. I cannot see a reason to return that header for other endpoints. The only I can think of is if you have a solr package that exposes another UI on some path, it could be nice to protect that UI with CSP rules, so if it would be possible to have some fallback CSP header for all other requests perhaps?

Yes I was thinking the same thing, we don't need this header for non browser targeted servlets (API endpoint, etc), so it will be just ignored by other endpoints. Now, I am not sure of a scenario where we would need a different UI servlet exposed on a different path. Let me think about it and get back to you hopefully by tomorrow.

Add refguide docs
CHANGES entry
Constant naming
Backend part of CSP header

Will the CHANGEs entry.
Here are the main changes to the patch:

In line with the security best practice of granting minimal necessary permissions, adjusted the registerTokenEndpointForCsp() method to incorporate the precise URL for the /token endpoint rather than a more general host:port based URL.

Thought providing the capability of passing the URLs as a comma-separated list is less confusing for the end-user/operator compared to using a prefix-based system property name. This approach also enables more concise implementation.

We do have two packages "in the wild" that come with a UI, the YASA package https://github.com/yasa-org/yasa and Splainer, https://github.com/o19s/splainer/tree/main/solr-splainer-package.    Will these packages need to be updated?
If we want to make this change, and that ripples down to packages, then we should do it now before more Packages are developed ;-).
We do have a test (commented out) that validates deploying Packages that might be useful: https://github.com/apache/solr/blob/main/solr/packaging/test/test_packages.bats#L69

We do have two packages "in the wild" that come with a UI

As stated anove, we never really needed to disable the old CSP header config in jetty.xml. Turns out the LoadAdminUiServlet simply replaces the header, which is nice.

I'm going to force-push a squashed git-history in order for full test suite to run.


Support two apiversion for container service

This checklist is used to make sure that common issues in a pull request are addressed. This will expedite the process of getting your pull request merged and avoid extra work on your part to fix issues discovered during the review process.
PR information

[x] The title of the PR is clear and informative.
[x] There are a small number of commits, each of which have an informative message. This means that previously merged commits do not appear in the history of the PR. For information on cleaning up the commits in your pull request, see this page.
[x] Except for special cases involving multiple contributors, the PR is started from a fork of the main repository, not a branch.
[ ] If applicable, the PR references the bug/issue that it fixes.
[x] Swagger files are correctly named (e.g. the api-version in the path should match the api-version in the spec).

Quality of Swagger

[x] I have read the contribution guidelines.
[x] My spec meets the review criteria:

[x] The spec conforms to the Swagger 2.0 specification.
[x] The spec follows the guidelines described in the Swagger checklist document.
[x] Validation tools were run on swagger spec(s) and have all been fixed in this PR.

Can one of the admins verify this patch?

Automation for azure-sdk-for-python

Automation for azure-sdk-for-js

Adding @ravbhatnagar for ARM review of new API version.
@zqingqing1 - the changes you made to the readme have removed the OpenShiftManagedClusters spec - was this intentional?

Automation for azure-sdk-for-go

Automation for azure-sdk-for-node

@annatisch , thanks for reminding, it should be included.

Hi, @annatisch @ravbhatnagar please help to review :)

@zqingqing1 - please address the model validation errors in the CI:
error:
operationId: ManagedClusters_List
scenario: List Managed Clusters
source: response
responseCode: '200'
errorCode: OBJECT_ADDITIONAL_PROPERTIES
errorDetails:
  message: 'Additional properties not allowed: storageProfile'

error:
operationId: ManagedClusters_ListByResourceGroup
scenario: Get Managed Clusters by Resource Group
source: response
responseCode: '200'
errorCode: OBJECT_ADDITIONAL_PROPERTIES
errorDetails:
  message: 'Additional properties not allowed: storageProfile'

error:
operationId: ManagedClusters_Get
scenario: Get Managed Cluster
source: response
responseCode: '200'
errorCode: OBJECT_ADDITIONAL_PROPERTIES
errorDetails:
  message: 'Additional properties not allowed: storageProfile'

error:
operationId: ManagedClusters_CreateOrUpdate
scenario: Create/Update Managed Cluster
source: response
responseCode: '200'
errorCode: OBJECT_ADDITIONAL_PROPERTIES
errorDetails:
  message: 'Additional properties not allowed: storageProfile'

error:
operationId: ManagedClusters_CreateOrUpdate
scenario: Create/Update Managed Cluster
source: response
responseCode: '201'
errorCode: OBJECT_ADDITIONAL_PROPERTIES
errorDetails:
  message: 'Additional properties not allowed: storageProfile'

error:
operationId: ManagedClusters_UpdateTags
scenario: Update Managed Cluster Tags
source: response
responseCode: '200'
errorCode: OBJECT_ADDITIONAL_PROPERTIES
errorDetails:
  message: 'Additional properties not allowed: storageProfile'

@KrisBash , I just saw your comments about api deprecation from email. Not sure why I cannot see the comments here. Anyway, for your question:

@@ -179,58 +179,6 @@
}
}
},

"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/accessProfiles/{roleName}/listCredential": {
This appears to be deprecation of an API from a stable version. Do you have a deprecation policy in place? Has this been communicated?

No, right now we don't have the deprecation policy. This is a long-term work item, and needs extra discussion with PM team. For now, we just keep it there.

As of latest commit, looks good to me from ARM

@AutorestCI regenerate azure-sdk-for-go

@annatisch @KrisBash @jhendrixMSFT, I am blocked by this. Can anyone of you help to merge the PR?  Thanks in advance.

@zqingqing1 - the PR name implies that you wish to support two api versions - yet the readme changes do no reflect this. What is your intention here?

Synced up with @lmazuel before, after this PR gets merged, he will help to support both apiversion for Azure-SDK-for-Python.

Thanks @zqingqing1 - please address my earlier comment on breaking changes/major SDK version bump :)

@annatisch , yes.

Thanks @zqingqing1 - This will result in your new public API not being available in other SDKs.
Adding multi-api support only affects Python - whereas reverting the tag will make the public API not available in other languages. If this API is live and public, the SDK generation tags should reflect this and then you can work further with @lmazuel around the specifics of the Python release.

@AutorestCI regenerate azure-sdk-for-go


Add .circleci/config.yml

CircleCi configuration file generated automatically by Circle Ci tool and pushed to this repository.

Merging circleci-project-setup branch with the main branch


Make emoji category order in typeahead consistent

For matches of the same quality, we should consistently use the following prioritization of emoji categories:

"Popular"
Custom emoji
Everything else, in the category order we have now.

The order should be the same before and after you start typing.

CZO thread

Hii, I am new here and don't know that much but i think i can solve this issue . So can i start working on it ??


Configure API projects to use Postgres

What is the expected enhancement?
To simplify the process for repository and for gateway we started the MVP's using SQLite. Preparing the projects for production we would like to configure Postgres as the database to use.

I'll try this one.

Thank you @akihikokuroda !

Thank you @akihikokuroda ! In case you want some inspiration I was reading some entries to prepare for production the applications:

https://dragonprogrammer.com/django-drf-api-production-docker/

@Tansito I'll take a look.  Thanks!


how to contirubte

resolve issue #3   - CONTRIBUTION

resolve issue3 #4   - LICENSE

Please review and merge it


Add target name to pipeline's input_feature_names

Note: migrated from #1493 which tracks simply adding target names to the output of predict; this issue tracks a suggestion also made in the thread.
Based on the discussion raised by @gsheni and @kmax12 in Slack we should update the .input_feature_names value held our pipelines to hold both the feature column names, as well as the target name.
Currently, .input_feature_names returns a dictionary, where the keys are the components and the corresponding values are the feature names that the component gets. We could update this to be a tuple, where the first element of the tuple is the current list of feature names, and the second element of the tuple is the name of the target.
That is, currently we have something like:
{"OHE": ["col1", "col2", "col3"], "Imputer: ["col1_1", "col1_2", "col2", "col3"]}

We could update this to:
{"OHE": (["col1", "col2", "col3"], "target"), "Imputer: (["col1_1", "col1_2", "col2", "col3"], "target")}

I don't see the target name changing, so maybe this is a bit silly, but it also keeps the nice structure we have now where we keep track of what every component sees.

@angela97lin @dsherry : Didn't you merge a PR that addressed this already? I swear I reviewed it.

@angela97lin @dsherry : Didn't you merge a PR that addressed this already? I swear I reviewed it.

@chukarsten Ah, similar! I merged in https://github.com/alteryx/evalml/pull/1578 which keeps track of the target name, but it doesn't update input_feature_names to do so. I guess this issue would track adding / consolidating this to the input_feature_names attribute, if we still think that's useful.

@chukarsten Ah, similar! I merged in https://github.com/alteryx/evalml/pull/1578 which keeps track of the target name, but it doesn't update input_feature_names to do so. I guess this issue would track adding / consolidating this to the input_feature_names attribute, if we still think that's useful.

Once #1757 is done, this issue tracks also adding target name to estimators. (Accessible from pandas Series as name attr)


PoachDBCached 0.1.0

Not sure if you will be supporting v0.1.0 for leaflet 0.7x, with the new realease of PoachDB 4.01 it seem that the tiles no longer saved to the DB? It still work fine with PDB v3.60
Thanks for a great plugin

No, unfortunately I don't have the time to support plugins for Leaflet 0.7.x.


Failed to get /openapi/v2 and /swagger.json: unable to get issuer certificate

Getting below error while installation. used latest helm charts. is there a way to skip this check
Error: Failed to get /openapi/v2 and /swagger.json: unable to get issuer certificate
at /app/node_modules/kubernetes-client/lib/swagger-client.js:58:15
at processTicksAndRejections (internal/process/task_queues.js:97:5)
at async main (/app/bin/daemon.js:33:3)
npm info lifecycle<EMAIL_ADDRESS>Failed to exec start script
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR<EMAIL_ADDRESS>start: ./bin/daemon.js
npm ERR! Exit status 1

Duplicate #511


Correct ring expression

Type: Ambiguous
Summary:
Correct ring expression
Details:
The ring project has very complicated licensing due to its ancestry, but it is clearly stated in the LICENSE file in the project itself
Resolution:
This PR applies my understanding of the licensing terms spelled out in the top of the LICENSE file into the (I believe) correct top-level SPDX expression for the project
Affected definitions:

ring 0.16.11

More details from the LICENSE file.

ring uses an ISC-style license like BoringSSL for code in new files, including in particular all the Rust code

BoringSSL is a fork of OpenSSL. As such, large parts of it fall under OpenSSL licensing. Files that are completely new have a Google copyright and an ISC license. This license is reproduced at the bottom of this file.

Files in third_party/ have their own licenses, as described therein. The MIT license, for third_party/fiat, which, unlike other third_party directories, is compiled into non-test libraries, is included below.

The OpenSSL toolkit stays under a dual license, i.e. both the conditions of the OpenSSL License and the original SSLeay license apply to the toolkit. See below for the actual license texts.

AFAIK, as far as SPDX is concernced, the OpenSSL license is the singular correct license identifier for the "OpenSSL" license, which includes the "SSLeay" license.


[HW] Jimit Kishor Mehta

Name: Jimit Kishor Mehta
Email<EMAIL_ADDRESS>Linkedin Profile: https://www.linkedin.com/in/jimitmehta16/
Attach the homework step I screenshots below:
STEP 1.2

STEP 1.3

STEP 1.4

STEP 1.5

STEP 1.7

STEP 1.8

STEP 1.9

STEP 1.10

Attach the homework step II screenshots below:
WORKING ON IT

Well done! Enjoy your badge and see you on the third episode of the series this week!

Hey Jimit Kishor Mehta, great job! Congrats! Here is your badge! https://api.badgr.io/public/assertions/4NYttlUZTH2Hni87tIswFQ

Thank you!!


drivers: can: stm32_can: bitrate ignored

The CAN peripheral prescaler is not calculated based on the bitrate passed in or overridden if not passed in, but always on cfg->bus_speed
Also the can.h interface doesn't really specify that bitrate can be zero and will then be overridden with a value from dts or kconfig, not sure if that matters
https://github.com/zephyrproject-rtos/zephyr/blob/8364b223e485c331f99c0c55c8064bce80dd857e/drivers/can/stm32_can.c#L165

ping @alexanderwachter as the author

Thats a bug. Sorry for that. I will korrekt it in my next rework PR.
Thanks for that!

Fixed by #8001


Print not working correctly in irb

Using the Fibonnaci code in the README
lokeshh:~/workspace/rubex/fib $ irb
2.3.0 :001 > require_relative 'fib.so'
 => true
2.3.0 :002 > Fibonnaci.new.compute(10)
 => false
2.3.0 :003 > quit
1"\n"1"\n"2"\n"3"\n"5"\n"8"\n"13"\n"21"\n"34"\n"55"\n"89"\n"lokeshh:~/workspace/rubex/fib $

So, its printing the all the output when I quit irb.

Nice find! print works with printf() underneath so it prints out to C's STDOUT and not Ruby's STDOUT.
Having a separate statement puts that works with Ruby's STDOUT should fix the problem.


overriding exit codes?

We're exting with 0 from our test suite, but somehow the emacs process is exiting with 1.
https://travis-ci.org/ensime/ensime-emacs/builds/52718969
It looks like comms with coveralls.io is happening after we exit 0.

Is undercover/coveralls perhaps changing the exit code?
Is there a way to delay upload so that it can be done in a separate process?

Is undercover/coveralls perhaps changing the exit code?

No it's shouldn't.

Is there a way to delay upload so that it can be done in a separate process?

Yes. You can use :report-file option:
(undercover "*.el" (:report-file "/tmp/local-report.json"))

and then send it with something like that:
curl -v -include --form<EMAIL_ADDRESS>https://coveralls.io/api/v1/jobs

ok cool, thanks, I'll try that and see if it solves the problem.

well, I'm still getting my exit 1 after disabling undercover, so it's definitely not a valid ticket.


WebChat RoadMap -Query

Please let us know the road-map or planned releases.  We have latest v0.12.1 Tagged and Adaptive-Cards 1.0 branch. What is our plan moving ahead?

We are planning more customizability. Instead of forks, we have some cool ideas to let you customize without forking, and less painful to update to latest Web Chat even you have customized it a lot. And lots of samples to show how to customize Web Chat.
For customization, it is not only about color/themeing, but also something like adding new types of bubbles, replacing Markdown engine, replacing carousel with stack.
Not to mention we have a new UI design. We will try to keep both the old/new UI by a pluggable UI engine. You can even bring a headless UI (e.g. command-line interface). The backend engine will be isolated and runnable under pure JavaScript (e.g. NodeJS).
All the development work will be done public on GitHub so contributions are always welcome.

@telkomops please look at our GitHub Projects page, we are currently triaging issue that target IGNITE event.


Add texinfo lexer

Hi,
this adds a lexer for Texinfo, the documentation language used by GNU projects. I tested the output on a few manuals and it looks fine.

Thanks for enabling the workflow. I think I managed to fix the reported issues, although I'm not sure if I should commit the result of "make mapfiles" in this PR or not?

@Jean-Abou-Samra Thanks for taking the time to review, that is indeed very helpful!


Unreliable Zip Deploy

Troubleshooting
Text logs below
Environment

Server - Azure Release Pipelines

Agent - Private:

If using Hosted agent ; Hosted Agent, Pool: Hosted Ubuntu 1604

Issue Description
Unreliable Release Zip Deployment
Task logs
1st Try
2018-10-08T16:51:55.5416494Z ##[section]Starting: Azure App Service Deploy: apiTfcAppSvr
2018-10-08T16:51:55.5425184Z ==============================================================================
2018-10-08T16:51:55.5425297Z Task         : Azure App Service Deploy
2018-10-08T16:51:55.5425447Z Description  : Update Azure App Services on Windows, Web App on Linux with built-in images or Docker containers, ASP.NET, .NET Core, PHP, Python or Node.js based Web applications, Function Apps, Mobile Apps, API applications, Web Jobs using Web Deploy / Kudu REST APIs
2018-10-08T16:51:55.5425590Z Version      : 3.4.10
2018-10-08T16:51:55.5425656Z Author       : Microsoft Corporation
2018-10-08T16:51:55.5425749Z Help         : More information
2018-10-08T16:51:55.5425851Z ==============================================================================
2018-10-08T16:51:55.9924165Z Got connection details for Azure App Service:'apiTfcAppSvr'
2018-10-08T16:51:57.6759705Z Package deployment using ZIP Deploy initiated.
2018-10-08T16:56:24.8137440Z Updating submodules.
2018-10-08T16:56:24.8138480Z Preparing deployment for commit id '0cb04468b2'.
2018-10-08T16:56:24.8138897Z Generating deployment script.
2018-10-08T16:56:25.4741472Z Using cached version of deployment script (command: 'azure -y --no-dot-deployment -r "/tmp/zipdeploy/extracted" -o "/home/site/deployments/tools" --basic --sitePath "/tmp/zipdeploy/extracted"').
2018-10-08T16:56:25.4742732Z Running deployment command...
2018-10-08T16:56:25.9427622Z Command: "/home/site/deployments/tools/deploy.sh"
2018-10-08T16:56:25.9428389Z Handling Basic Web Site deployment.
2018-10-08T16:56:25.9429061Z Kudu sync from: '/tmp/zipdeploy/extracted' to: '/home/site/wwwroot'
2018-10-08T16:56:25.9429431Z Ignoring: .git
2018-10-08T16:56:25.9430021Z Copying file: 'node_modules/.bin/json2yaml'
2018-10-08T16:56:25.9430556Z Copying file: 'node_modules/.bin/mkdirp'
2018-10-08T16:56:25.9431431Z Copying file: 'node_modules/.bin/needle'
2018-10-08T16:56:25.9431934Z Copying file: 'node_modules/.bin/node-pre-gyp'
2018-10-08T16:56:25.9432441Z Copying file: 'node_modules/.bin/nopt'
2018-10-08T16:56:25.9432935Z Copying file: 'node_modules/.bin/pbjs'
2018-10-08T16:56:25.9433877Z Copying file: 'node_modules/.bin/pbts'
2018-10-08T16:56:25.9434897Z Copying file: 'node_modules/.bin/pino'
2018-10-08T16:56:25.9435557Z Error: ENOENT: no such file or directory, open '/home/site/wwwroot/node_modules/.bin/pbjs'
2018-10-08T16:56:25.9435988Z An error has occurred during web site deployment.
2018-10-08T16:56:25.9436321Z Kudu Sync failed
2018-10-08T16:56:25.9436632Z \n/opt/Kudu/bin/Scripts/starter.sh "/home/site/deployments/tools/deploy.sh"
2018-10-08T16:56:25.9437140Z App container will begin restart within 10 seconds.
2018-10-08T16:56:25.9508983Z ##[error]Failed to deploy web package to App Service.
2018-10-08T16:56:25.9518657Z ##[error]Error: Package deployment using ZIP Deploy failed. Refer logs for more details.
2018-10-08T16:56:29.1741942Z Successfully updated deployment History at https://apitfcappsvr-staging.scm.azurewebsites.net/api/deployments/331539017786341
2018-10-08T16:56:29.2047936Z ##[section]Finishing: Azure App Service Deploy: apiTfcAppSvr
2nd Try
2018-10-08T17:14:43.1645601Z ##[section]Starting: Azure App Service Deploy: apiTfcAppSvr
2018-10-08T17:14:43.1654021Z ==============================================================================
2018-10-08T17:14:43.1654113Z Task         : Azure App Service Deploy
2018-10-08T17:14:43.1654241Z Description  : Update Azure App Services on Windows, Web App on Linux with built-in images or Docker containers, ASP.NET, .NET Core, PHP, Python or Node.js based Web applications, Function Apps, Mobile Apps, API applications, Web Jobs using Web Deploy / Kudu REST APIs
2018-10-08T17:14:43.1654467Z Version      : 3.4.10
2018-10-08T17:14:43.1654520Z Author       : Microsoft Corporation
2018-10-08T17:14:43.1654600Z Help         : More information
2018-10-08T17:14:43.1654684Z ==============================================================================
2018-10-08T17:14:43.5861849Z Got connection details for Azure App Service:'apiTfcAppSvr'
2018-10-08T17:14:45.7664407Z Package deployment using ZIP Deploy initiated.
2018-10-08T17:20:36.1862935Z Updating submodules.
2018-10-08T17:20:36.1864555Z Preparing deployment for commit id '69319fe338'.
2018-10-08T17:20:36.1864892Z Generating deployment script.
2018-10-08T17:20:36.7130125Z Using cached version of deployment script (command: 'azure -y --no-dot-deployment -r "/tmp/zipdeploy/extracted" -o "/home/site/deployments/tools" --basic --sitePath "/tmp/zipdeploy/extracted"').
2018-10-08T17:20:36.7131070Z Running deployment command...
2018-10-08T17:20:37.3864686Z Command: "/home/site/deployments/tools/deploy.sh"
2018-10-08T17:20:37.3865061Z Handling Basic Web Site deployment.
2018-10-08T17:20:37.3865632Z Kudu sync from: '/tmp/zipdeploy/extracted' to: '/home/site/wwwroot'
2018-10-08T17:20:37.3866030Z Ignoring: .git
2018-10-08T17:20:37.3866607Z Copying file: 'node_modules/.bin/sshpk-verify'
2018-10-08T17:20:37.3867129Z Copying file: 'node_modules/.bin/uuid'
2018-10-08T17:20:37.3867683Z Copying file: 'node_modules/.bin/yaml2json'
2018-10-08T17:20:37.3868195Z Copying file<EMAIL_ADDRESS>2018-10-08T17:20:37.3868776Z Copying file<EMAIL_ADDRESS>2018-10-08T17:20:37.3869364Z Copying file<EMAIL_ADDRESS>2018-10-08T17:20:37.3870320Z Copying file: 'node_modules/<EMAIL_ADDRESS>2018-10-08T17:20:37.3871292Z Copying file<EMAIL_ADDRESS>2018-10-08T17:20:37.3871959Z Copying file<EMAIL_ADDRESS>2018-10-08T17:20:37.3872604Z Copying file<EMAIL_ADDRESS>2018-10-08T17:20:37.3873292Z Copying file<EMAIL_ADDRESS>2018-10-08T17:20:37.3874293Z Copying file<EMAIL_ADDRESS>2018-10-08T17:20:37.3874839Z Copying file<EMAIL_ADDRESS>2018-10-08T17:20:37.3875366Z Copying file<EMAIL_ADDRESS>2018-10-08T17:20:37.3875947Z Copying file<EMAIL_ADDRESS>2018-10-08T17:20:37.3876536Z Copying file<EMAIL_ADDRESS>2018-10-08T17:20:37.3877081Z Copying file<EMAIL_ADDRESS>2018-10-08T17:20:37.3877627Z Copying file<EMAIL_ADDRESS>2018-10-08T17:20:37.3878464Z Copying file<EMAIL_ADDRESS>2018-10-08T17:20:37.3879219Z Copying file<EMAIL_ADDRESS>2018-10-08T17:20:37.3880004Z Copying file: 'node_modules/@google-cloud/common/node_modules/split-array-stream/license'
2018-10-08T17:20:37.3881581Z Copying file<EMAIL_ADDRESS>2018-10-08T17:20:37.3882298Z Copying file<EMAIL_ADDRESS>2018-10-08T17:20:37.3883251Z Copying file<EMAIL_ADDRESS>2018-10-08T17:20:37.3884010Z Copying file<EMAIL_ADDRESS>2018-10-08T17:20:37.3884832Z Copying file<EMAIL_ADDRESS>2018-10-08T17:20:37.3885380Z Copying file<EMAIL_ADDRESS>2018-10-08T17:20:37.3885896Z Copying file<EMAIL_ADDRESS>2018-10-08T17:20:37.3886434Z Copying file<EMAIL_ADDRESS>2018-10-08T17:20:37.3887751Z Copying file<EMAIL_ADDRESS>2018-10-08T17:20:37.3888358Z Copying file<EMAIL_ADDRESS>2018-10-08T17:20:37.3888896Z Copying file<EMAIL_ADDRESS>2018-10-08T17:20:37.3889489Z Copying file<EMAIL_ADDRESS>2018-10-08T17:20:37.3890712Z Copying file<EMAIL_ADDRESS>2018-10-08T17:20:37.3891570Z Error: ENOENT: no such file or directory, utime<EMAIL_ADDRESS>2018-10-08T17:20:37.3892034Z An error has occurred during web site deployment.
2018-10-08T17:20:37.3892368Z Kudu Sync failed
2018-10-08T17:20:37.3892691Z \n/opt/Kudu/bin/Scripts/starter.sh "/home/site/deployments/tools/deploy.sh"
2018-10-08T17:20:37.3893065Z App container will begin restart within 10 seconds.
2018-10-08T17:20:37.3950740Z ##[error]Failed to deploy web package to App Service.
2018-10-08T17:20:37.3959700Z ##[error]Error: Package deployment using ZIP Deploy failed. Refer logs for more details.
2018-10-08T17:20:42.1947884Z Successfully updated deployment History at https://apitfcappsvr-staging.scm.azurewebsites.net/api/deployments/341539019237947
2018-10-08T17:20:42.2374520Z ##[section]Finishing: Azure App Service Deploy: apiTfcAppSvr
3rd Try
It succeeds
..
..
..
2018-10-08T17:59:50.0599136Z Copying file: 'node_modules/grpc/node_modules/npm-packlist/package.json'
2018-10-08T17:59:50.0599811Z Omitting next output lines...
2018-10-08T17:59:50.0600205Z Processed 505 files...
2018-10-08T17:59:50.0600581Z Processed 1355 files...
2018-10-08T17:59:50.0600932Z Processed 2119 files...
2018-10-08T17:59:50.0601556Z Processed 2827 files...
2018-10-08T17:59:50.0601938Z Processed 3500 files...
2018-10-08T17:59:50.0630476Z Processed 4224 files...
2018-10-08T17:59:50.0630995Z Processed 4895 files...
2018-10-08T17:59:50.0631375Z Finished successfully.
2018-10-08T17:59:50.0631825Z Running post deployment command(s)...
2018-10-08T17:59:50.0632225Z Deployment successful.
2018-10-08T17:59:50.0632587Z App container will begin restart within 10 seconds.
2018-10-08T17:59:50.0632969Z Successfully deployed web package to App Service.
As you can see, the 2nd try sort of able to continue where the first try failed ( at pbts ) .
Actually, I have done about 8 tries on this  redeployment before things go right.
Before, about 10 tries..
Error logs
2018-10-08T16:56:25.9435557Z Error: ENOENT: no such file or directory, open '/home/site/wwwroot/node_modules/.bin/pbjs'
2018-10-08T16:56:25.9435988Z An error has occurred during web site deployment.
2018-10-08T16:56:25.9436321Z Kudu Sync failed
2018-10-08T16:56:25.9436632Z \n/opt/Kudu/bin/Scripts/starter.sh "/home/site/deployments/tools/deploy.sh"
2018-10-08T16:56:25.9437140Z App container will begin restart within 10 seconds.
2018-10-08T16:56:25.9508983Z ##[error]Failed to deploy web package to App Service.
2018-10-08T16:56:25.9518657Z ##[error]Error: Package deployment using ZIP Deploy failed. Refer logs for more details.

@jdadojr CAn you share detailed logs at<EMAIL_ADDRESS>for further investigation.

Hello everyone, any update regarding this issue. I have the same error!
In advance, thanks!

@sofipacifico CAn you share detailed logs at<EMAIL_ADDRESS>To get logs add 'System.debug' variable with value 'true' in your release and redeploy. Collect the logs generated and share.

Looks like it is solved
I see a lot of these retries, but eventually, it will succeed.
Deployment status: 0 'Receiving changes.'. retry after 5 seconds
[GET]https://apitfcappdev.scm.azurewebsites.net/api/deployments/latest?deployer=VSTS_ZIP_DEPLOY&time=2018-10-19_19-02-28Z
POLL URL RESULT: {"id":"temp-0ad3ddc7","status":0,"status_text":"Receiving changes.","author_email":"N/A","author":"N/A","deployer":"VSTS_ZIP_DEPLOY","message":"Deploying from pushed zip file","progress":"Fetching changes.","received_time":"2018-10-19T19:02:28.396633Z","start_time":"2018-10-19T19:02:28.396633Z","end_time":null,"last_success_end_time":null,"complete":false,"active":false,"is_temp":true,"is_readonly":false,"url":null,"log_url":null,"site_name":"apitfcappdev"}
Deployment status: 0 'Receiving changes.'. retry after 5 seconds
[GET]https://apitfcappdev.scm.azurewebsites.net/api/deployments/latest?deployer=VSTS_ZIP_DEPLOY&time=2018-10-19_19-02-28Z
POLL URL RESULT: {"id":"506bccf522c94efb9e21d24b4fd210c3","status":1,"status_text":"Building and Deploying '506bccf522c94efb9e21d24b4fd210c3'.","author_email":"N/A","author":"N/A","deployer":"VSTS_ZIP_DEPLOY","message":"Created via a push deployment","progress":"Running deployment command...","received_time":"2018-10-19T19:06:39.829046Z","start_time":"2018-10-19T19:06:40.231065Z","end_time":null,"last_success_end_time":null,"complete":false,"active":false,"is_temp":false,"is_readonly":true,"url":null,"log_url":null,"site_name":"apitfcappdev"}
...
...
...
2018-10-19T19:01:05.1350799Z ##[debug]task result: Succeeded
2018-10-19T19:01:05.1371610Z ##[debug]Processed: ##vso[task.complete result=Succeeded;]

We are working on making these calls more reliable. Closing the issue now, please fell free to re-open if failure is seen again.

We are working on making these calls more reliable. Closing the issue now, please fell free to re-open if failure is seen again.

We are working on making these calls more reliable. Closing the issue now, please fell free to re-open if failure is seen again.

Hello,
I am still having problem:
2019-02-21T13:24:00.7162377Z ##[section]Starting: Deploy Azure App Service
2019-02-21T13:24:00.7172800Z ==============================================================================
2019-02-21T13:24:00.7172944Z Task         : Azure App Service Deploy
2019-02-21T13:24:00.7173048Z Description  : Update Azure App Services on Windows, Web App on Linux with built-in images or Docker containers, ASP.NET, .NET Core, PHP, Python or Node.js based Web applications, Function Apps, Mobile Apps, API applications, Web Jobs using Web Deploy / Kudu REST APIs
2019-02-21T13:24:00.7173389Z Version      : 3.4.21
2019-02-21T13:24:00.7173450Z Author       : Microsoft Corporation
2019-02-21T13:24:00.7173559Z Help         : More information
2019-02-21T13:24:00.7173637Z ==============================================================================
2019-02-21T13:24:01.1496875Z Got connection details for Azure App Service:'timesheet-backend'
2019-02-21T13:24:20.8918844Z Package deployment using ZIP Deploy initiated.
2019-02-21T13:25:01.8320020Z Updating submodules.
2019-02-21T13:25:01.8321082Z Preparing deployment for commit id '737d83a86b'.
2019-02-21T13:25:01.8321498Z Generating deployment script.
2019-02-21T13:25:03.1705666Z Using cached version of deployment script (command: 'azure -y --no-dot-deployment -r "/tmp/zipdeploy/extracted" -o "/home/site/deployments/tools" --basic --sitePath "/tmp/zipdeploy/extracted"').
2019-02-21T13:25:03.1705917Z Running deployment command...
2019-02-21T13:25:04.6121811Z Command: "/home/site/deployments/tools/deploy.sh"
2019-02-21T13:25:04.6121950Z Handling Basic Web Site deployment.
2019-02-21T13:25:04.6122305Z Kudu sync from: '/tmp/zipdeploy/extracted' to: '/home/site/wwwroot'
2019-02-21T13:25:04.6122378Z Ignoring: .git
2019-02-21T13:25:04.6122607Z Copying file: 'node_modules/.bin/handlebars'
2019-02-21T13:25:04.6122852Z Copying file: 'node_modules/.bin/js-yaml'
2019-02-21T13:25:04.6123071Z Copying file: 'node_modules/.bin/semver'
2019-02-21T13:25:04.6123310Z Copying file: 'node_modules/.bin/sshpk-conv'
2019-02-21T13:25:04.6123565Z Copying file: 'node_modules/.bin/sshpk-sign'
2019-02-21T13:25:04.6123807Z Copying file: 'node_modules/.bin/sshpk-verify'
2019-02-21T13:25:04.6124027Z Copying file: 'node_modules/.bin/uglifyjs'
2019-02-21T13:25:04.6124465Z Copying file: 'node_modules/.bin/uuid'
2019-02-21T13:25:04.6124802Z Error: ENOENT: no such file or directory, open '/home/site/wwwroot/node_modules/.bin/sshpk-conv'
2019-02-21T13:25:04.6124899Z An error has occurred during web site deployment.
2019-02-21T13:25:04.6124964Z Kudu Sync failed
2019-02-21T13:25:04.6125045Z \n/opt/Kudu/bin/Scripts/starter.sh "/home/site/deployments/tools/deploy.sh"
2019-02-21T13:25:04.6125121Z App container will begin restart within 10 seconds.
2019-02-21T13:25:04.6195870Z ##[error]Failed to deploy web package to App Service.
2019-02-21T13:25:04.6211990Z ##[error]Error: Package deployment using ZIP Deploy failed. Refer logs for more details.
2019-02-21T13:25:07.8597592Z Successfully added release annotation to the Application Insight : timesheet-backend
2019-02-21T13:25:09.7921504Z Successfully updated deployment History at https://timesheet-backend.scm.azurewebsites.net/api/deployments/91550755507860
2019-02-21T13:25:09.7954513Z ##[section]Finishing: Deploy Azure App Service

Just FYI - I was having same problem with tomcat runtime. Java SE runtime wokrs tho.

Same problem on Node 10.14 deployment. Right now my solution is to do the npm install and build in post-deployment script.
2019-03-15T10:00:28.6009617Z Command: "/home/site/deployments/tools/deploy.sh"
2019-03-15T10:00:28.6010078Z Handling Basic Web Site deployment.
2019-03-15T10:00:28.6010454Z Kudu sync from: '/tmp/zipdeploy/extracted' to: '/home/site/wwwroot'
2019-03-15T10:00:28.6010711Z Copying file: '.dockerignore'
....
2019-03-15T10:00:28.6026397Z Copying file: 'dist/models/index.js'
2019-03-15T10:00:28.6026635Z Omitting next output lines...
2019-03-15T10:00:28.6026871Z Error: ENOENT: no such file or directory, utime '/home/site/wwwroot/node_modules/.bin/escodegen'
2019-03-15T10:00:28.6027124Z An error has occurred during web site deployment.
2019-03-15T10:00:28.6027354Z Kudu Sync failed
2019-03-15T10:00:28.6027580Z \n/opt/Kudu/Scripts/starter.sh "/home/site/deployments/tools/deploy.sh"
2019-03-15T10:00:28.6027824Z App container will begin restart within 10 seconds.
2019-03-15T10:00:28.6113580Z ##[error]Failed to deploy web package to App Service.
2019-03-15T10:00:28.6123485Z ##[error]Error: Package deployment using ZIP Deploy failed. Refer logs for more details.

@AltarBeastiful , Can you post the issue here?

Nevermind, tried again and it worked. Will post error on the correct repo if it happens again.

It hapened again on different files of then node_modules,
opened an issue on kudu to track this: https://github.com/projectkudu/kudu/issues/2946

same problem here


loot.db is missing

You are missing loot.db in your repository, check loot.py please, thats why /loot command is not working.

Fixed in 7cacf0ef21c7005613c34bd2fed24f8f7cc6e708.
Added loot_template.db, when NabBot is executed, if loot.db doesn't exists, the template is copied to the location.


feat: a solution to if-normalization

This is Chris Hughes' solution to the if-normalization problem from https://leanprover.zulipchat.com/#narrow/stream/113488-general/topic/Rustan's.20challenge, polished slightly further to try to show off aesop.
(For comparison I've also made WithoutAesop.lean. I'm happy to remove this if we don't want it.)
Co-authored-by: Chris Hughes<EMAIL_ADDRESS>

Thanks :tada:
bors merge

bors r-
Can you merge master, fix the build, and send it back again?


[Bug Report] Series suddenly disappeared from "Continue Reading"

Describe the bug
I have been reading through Demon Slayer (Kimetsu no Yaiba) - and when I reached the latest chapter, instead of the "Next" button taking me to the next chapter, it instead took me back to the Library for Demon Slayer. When I now look at the Home page, the entry for Demon Slayer is no longer there. There are more chapters that are unread, and even a chapter currently in progress, as you can see here:

To Reproduce
Steps to reproduce the behavior:
I was reading using the browser reader on Chrome (latest).
Clicked the "Next" button at the bottom of the reader to go to the next chapter, but took me back to the Demon Slayer library overview.
Expected behavior
Demon Slayer should be showing up in the Continue Reading section.
Environment (please complete the following information):

Android, Chrome OS, Windows
Chrome 83.0.4103.116, Edge latest
Mango Version 0.7.2

Additional context
Not sure if it's related, but on Android and Chrome OS the "..." on the title cards has reappeared again. I have cleared cache, temp storage, application storage, restarted the app, and nothing seems to fix it. Yet Chrome on Windows 10 it shows the title properly.

@cglatot could you post the filenames for those 3? And are all files for the series in a single folder or do you have subfolders? I wonder if there is a naming discrepancy that's confusing things (just a guess).

@jaredlt yup - seems to be a naming convention. The last chapters I read that were tracked have this naming:

And the next set of chapters are like this:

This is a format that is likely going to be an issue for many series - as ones that have volumes out will often have the Vol number - but for issues where they have only been in Shonen Jump, but no volume released yet, will only have the Chapter numbers. It would be nice if the logic / parser could honor that, as the Chapter numbers are still progressive.

Thanks for reporting. Yes, it's indeed due to the different naming conventions. The web interface and the Mango core use different algorithms to sort the files in a folder, and in this case, the core algorithm thinks "Vol.20 Ch.178.5 Extras.cbz" is the last chapter in the folder. I agree it's a terrible design that breaks user expectations. I will try to find a way to fix it .

Fixed in v0.8.0. Thanks for the bug report!

@hkalexling fantastic work with these updates - really loving it :)
Can confirm that this automatically picked up my next chapter again and seems to be working well so far :D


Allow removal of plugins

I would like to disable the InteractionManager plugin completely as I use my own.
It seems that when the InteractionManager is enabled, which is the default case if I'm not mistaken, it also activates the Ticker, which I don't use as I managed render cycles myself.
It will be nice to have convenience method for the removal of plugins. Thanks.

You can exclude plugins completely from the build:
https://github.com/GoodBoyDigital/pixi.js#how-to-build

@englercj I hacked the removal of the InteractionManager by reversing the logic used to add the plugin and it seems to work. But this is obviously very dirty.
function removePlugin(name, renderer) {
    var plugin = renderer.plugins[name];
    if (plugin) {
        plugin.destroy();
    }
    delete renderer.plugins[name];
}

Was doing a custom build not working for you?

It failed. I admit that I didn't put to much effort into it as I'm rushing to a deadline. I got this error when doing npm install
Error: ENOENT, no such file or directory '/Users/yotamlaufer/Work/player/player/public/src/bower_components/pixi/gulp/tasks'

I used bower to install PIXI, so maybe it requires a git clone instead.

To do a custom build you need to clone (or download the repo tar), you can't do it from a distributable package.

That's what I thought. No time for this right now, but good to know. Thanks!


Feature Request: update in the background

Your plugin is awesome! I would like to request for a feature:
Is it possible to upgrade plugins in the background so I don't have to wait before starting my job?
I accept changes to taking effective in the next login

Wow...
How many plugins do you have installed that you have to wait a long time for them to update?
And why does it seem to me that you have a plugin update every time you open a terminal window?

Actually the wait time is not too long, but I prefer this thing can happen in the background.

why does it seem to me that you have a plugin update every time you open a terminal window?
haha, no, this is the first time I use this plugin.

By default, OMZ is updated every 13 days. Along with it, a OMZ-full-autoupdate is also launched. Are you really so nervous about the extra two seconds of waiting a couple of times a month?)
You can run an OMZ update like this omz update &. This will start the update in the background. You can see how the background works in the terminal.


[Feature Request] Connecting trims and cables

I've been trying to find a mod to make my storage easier to deal with while not giving up the vanilla feel.
I've tried making the following storage room design

And I've managed to find that this design perfectly connects all the chests together.

However, I ran into a problem as I've tried to stack this design as such.

Connecting the two isles like so does not work

And neither does it work when I try to replace the two with cable connectors.
And I can't just use a single inventory connector, because cables don't connect with trims, even when I use a cable connector. Terminals also don't connect with trims which I find quite disappointing, as it would make routing everything so much easier. It could let me turn the initial design into quite literally just this

In conclusion, I might just be coping and seething at the fact that the simple storage mod isn't as simple as I had hoped for, but like... These things feel like they should work, and yet they don't which I find extremely frustrating.

Hi Emily
I know this post was 2 weeks ago and you've probably moved on, but I'll comment anyway.
Btw I'm not a mod developer, just a fellow user.
Firstly, when asking for something, especially from people who don't owe you anything, perhaps leave out the "coping and seething" as you put it. It can get in the way of what may be a very reasonable request.
As for the recipes being nonsensical and expensive, I both agree and disagree. This is a vanilla style mod, which I believe doesn't add any extra "recipe only" items, and tries to be balanced and not too op. So some of the items used in the recipes do feel a little weird at first, but lots of Minecraft recipes are weird really. Compared to the possibilities and requirements of a purely vanilla storage system, this mod is extremely powerful, and some would say that these recipes are cheap, especially compared to other storage mods.
At the end of the day, mod packs will often change these recipes to fit their progression, usually making them even harder. And if you're in control of your pack (sound like you are), with a very simple datapack you could change the recipes to something that feels logical and balanced to you - if you haven't made a datapack before, it's seriously very easy.
All that aside, there is a solution to your problem using current features. What you need is an Inventory Proxy.

Take note of which way the arrow on the Proxy is facing, you have to place a temporary block where the Inventory Cable Connector is, place the Proxy onto that, remove the temp block and place the Cable Connector on to the Proxy.
However, with this setup, as you remove and add items via the terminals, they wont automatically get put back in the exact specific chests that you want them in, as by default all connected inventories are just mass storage space. Not worrying about where stuff is stored is by far the cheapest way to use this mod!
But with the storage room design you have, it looks like you'll be wanting items to go to specific chests, in which case you'd need to use Filtered Inventory Cable Connectors on each chest, with the appropriate filters set.

Each filtered connector has 9 item filter slots, but by using Item Filter items you could filter up to 81 items. This would be quite time consuming to set up though, so I recommend using the Polymorphic Item Filter, filling all slots in every chest and setting Keep last item in slot. This will filter items based on the contents of the chests, and wont allow any slots to ever become empty end then fill with some other random item. This is similar to how some completely vanilla storage systems work, but way more compact.

I hope that helps.
@tom5454 All of that side, I know the tool tips explain what is possible pretty well, but is there a reason cables couldn't connect to trims as though they were the inventory connector or another cable? It's definitely a "huh?" moment when you first try doing that.


Sum of the lowest two positive integers using math.min

I ran the code in iTerm and got 3 PASS checks. Unsure if this means the code block is working as intended. It didn't return any actual numerical values.

Nice! This is one solution to this problem. Also leads to an important discussion about time complexity that we need to have. I'm going to approve and merge this, but let's discuss time complexity next, and then talk about how we can potentially improve this solution after.
Great work though, this will solve the problem 100% of the time!


fix(di): optimize DI bootstrap

Information

:tada: This PR is included in version 6.115.1 :tada:
The release is available on:

v6.115.1
GitHub release

Your semantic-release bot :package::rocket:

:tada: This PR is included in version 7.0.0-beta.13 :tada:
The release is available on:

v7.0.0-beta.13
GitHub release

Your semantic-release bot :package::rocket:


Suggestion - Setting for custom output elements

First of all, thank you for this awesome class.
I have a request / suggestion for a future enhancement:
It would be nice to be able to overrule the html output via the settings.
For example:
I stumbled upon a performance issue when dealing with a list of 1500 items including image previews.
Allthough the image are only a few kb, i t's quite a performance hit.
Therefor I needed to lazy-load them.
To be able to do that I had to modify the source code.
 // Check for Attachment
 if (optionImg) {
    var has_attachment = "<img data-src=" + optionImg + " class='lazyload'>";
}

No big deal ofcourse, but it would be super nice if such alteration could be added to the settings object.

Hey there!
It is actually a really good sugestion, it might take a while since im running short on time, but i will do that.
Be welcome to open a PR!
Have a nice day!

Thanks in advance!
Great to here you like such a feature.
Like you, I'm short on time too.
If I'm more or less back on schedule I can look into opening a PR.


[py23] fix ImportError when trying to import names when already defined

When one does from fontTools.misc.py23 import *, everything seems to work fine.
However, linters will complain when one uses the asterisk to import all names from a module, since they can't detect when names are left undefined -- asterisks are greedy and will eat all names!
If one avoids the asterik and attempts to import explicitly, like in from fontTools.misc.py23 import basestring, the problem then is that, if py23 does not re-define the name -- e.g. under python2 basestring or unicode are built-ins -- then the import statement raises ImportError.
The same happens for the unichr function on a "wide" Python 2 build (i.e. on in which sys.maxunicode == 0x10FFFF).
Now, to work around this, we need to re-assign those built-ins to their very same names. This may look silly, but at least it works.

Good catch.  Thanks.


fix: 🐛 fix bug where only the default signer was used

Description
in Procedure prepare method, the passed in, non modified context was
used, when ctx was supposed to be used instead
Breaking Changes

JIRA Link
DA-405
Checklist

[ ] Updated the Readme.md (if required) ?

alternatively, we could change
const ctx = await this.setup(procArgs, context, opts);  to
context = await this.setup(procArgs, context, opts);
overriding the passed in context, so it would be harder to use by mistake. It should be safe since the given variable is a pointer and should leave the caller context unchanged as setup clones it.

Since the REST API lets the SDK initialize first and then set account it would always throw
InternalServerErrorException: There is no signing Account associated with the SDK instance

Which is probably better behavior than only using the same signer no matter what its told to use.

Can't believe this one got through unnoticed for so long

It was only in alpha branch besides the eliminate TQ PR.
Usually with sandbox I always init the signer before the SDK so I probably wouldn't have caught it either. It also looks right when reviewing it.

:tada: This PR is included in version 15.1.0-alpha.2 :tada:
The release is available on:

npm package (@alpha dist-tag)
GitHub release

Your semantic-release bot :package::rocket:

:tada: This PR is included in version 17.0.0-beta.1 :tada:
The release is available on:

npm package (@beta dist-tag)
GitHub release

Your semantic-release bot :package::rocket:

:tada: This PR is included in version 17.0.0 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


TripleStore error

Currently not workin since update to agraph 2.0 - work in progress
from rdflib import Graph
from streamlit_agraph import TripleStore, agraph

graph = Graph()
graph.parse("http://www.w3.org/People/Berners-Lee/card")
store = TripleStore()

for subj, pred, obj in graph:
    store.add_triple(subj, pred, obj, "")

agraph(list(store.getNodes()), list(store.getEdges()), config)

Thanks for that. I am aware and working on a fix. It's simply because the node id is already taken.


bump falcosidekick dependency version to v0.8.0, for falcosidekick 2.29.0

What type of PR is this?

Uncomment one (or more) /kind <> lines:

/kind bug

/kind cleanup

/kind design

/kind documentation

/kind failing-test

/kind feature

If this PR will release a new chart version please make sure to also uncomment the following line:

/kind chart-release

Any specific area of the project related to this PR?

Uncomment one (or more) /area <> lines:

/area falco-chart

/area falco-exporter-chart

/area falcosidekick-chart

/area event-generator-chart

/area k8s-metacollector

What this PR does / why we need it:
bump falcosidekick dependency version to v0.8.0, for falcosidekick 2.29.0
Which issue(s) this PR fixes:

Fixes #
Special notes for your reviewer:
Checklist

[x] Chart Version bumped
[x] Variables are documented in the README.md
[x] CHANGELOG.md updated

[APPROVALNOTIFIER] This PR is APPROVED
This pull-request has been approved by: Issif
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

OWNERS [Issif]

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

[APPROVALNOTIFIER] This PR is APPROVED
This pull-request has been approved by: alacuku, Issif
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

OWNERS [Issif,alacuku]

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

LGTM label has been added.  Git tree hash: 482144ab5180ce421fcd07b143096fce477ea097


Unable to use CloudFormation

I am relatively new to AWS and running into an issue when testing this solution.  When the stack is building I am getting the following error message and unable to move forward.
IoTVPCEndpoint

Resource handler returned message: "The VPC endpoint service com.amazonaws.us-east-1.iot.data does not support the availability zone of the subnet: subnet-XXXX."

I realize this may be more of a CloudFormation or account configuration however I did not see anything that I immediately suspected as an issue.

Hi @itguy614,
in some AWS Regions the IoT Data VPCE is not deployed in all Availability Zones, and furthermore, the traditional -1a and -1b AZ names might not map to the same physical AZ ID for a given AWS Account.
I've pushed a new version of the CloudFormation template to allow for explicit selection of which AZ you want to use:
https://github.com/aws-samples/aws-iot-endpoint-with-static-ips/blob/az-vpce-fix/cloudformation/iot-endpoint-static-ips.yaml
Please check in which AZs in your AWS Account the VPCEs are available, and then use these names as parameter for the CloudFormation template. You can easily check using the AWS Console, e.g., https://console.aws.amazon.com/vpc/home#CreateVpcEndpoint: , verify your region, select the IoT Data endpoint, then select an existing VPC, and note down AZ names (e.g., us-east-1b) under the Subnet section.

This was great information, you were correct, I seem to be in -1a and -1c, the default of -1b wouldn't work.  I tried your update and this is the error I'm getting now.
Parameter validation failed:
Invalid type for parameter Parameters[3].ParameterValue, value: ['us-east-1a', 'us-east-1c'], type: <class 'list'>, valid types: <class 'str'>

@itguy614 are you deploying the template via AWS CLI or via the AWS Console?
How are you specifying the parameter values? As comma-separated list? with a space or without space after the comma?

I tried to deploy using the AWS console.  I added the following however I don't think this is the correct syntax.
ParameterKey=AvailabilityZones,ParameterValue="us-east-1a,us-east-1c"

Deploying through the AWS Console was successful.  Thank you for the updated template, it worked great.  Hopefully this information helps with your documentation.
I was wondering though, if you could see the AZs the IOT data endpoint is deployed in, couldn't that be calculated within the template as well?

If you use the AWS CLI, you need the escape the comma inside the value with \, to make it a proper list of AZ names:
aws cloudformation create-stack \
  --stack-name ... \
  --template-url .../iot-endpoint-static-ips.yaml \
  --capabilities CAPABILITY_IAM CAPABILITY_AUTO_EXPAND \
  --parameters \
ParameterKey=CertificateArn,ParameterValue= \
ParameterKey=Route53HostedZoneId,ParameterValue=... \
ParameterKey=DomainName,ParameterValue=iot.example.com \
ParameterKey=AvailabilityZones,ParameterValue='us-east-1a\,us-east-1c'


Testing the ! operator

Testing
Test the ! operator for token constraints.
E.g., [tag=/N.*/ & !lemma=puppy]
also test -- [tag=/N.*/ & lemma!=puppy]

push to after benchmarking


v4.0.2

Improve extracting from HTML input

Coverage increased (+0.2%) to 93.384% when pulling 74902db1c7ffb37078a12e24d7edce538e34dfa6 on dev into d4fa8b335f81d3eb0e7918e9895067231c2f761a on master.

Coverage increased (+0.2%) to 93.384% when pulling 74902db1c7ffb37078a12e24d7edce538e34dfa6 on dev into d4fa8b335f81d3eb0e7918e9895067231c2f761a on master.


Apparent Problem Getting near_dupe_test.c to Work

First, great stuff. Very useful, and I've been using it very happily. Thanks for your efforts. Hopefully this is as easy as straightening me out with a test input for near_dupe_test.c.
As context, I've been trying to get LIEU to run,  as it is very close to what I want/need, but may just wind up pounding out some C code depending on how this all works out. In tracing code down into libpostal, it appears I'm having difficulty with the near_dupe functions. I use the python bindings frequently and with great success, so my build is presumably at least somewhat correct.  I seem to have successfully built the near_dupe_test as a standalone, and set the LD_LIBRARY_PATH to pick up the library:
gcc near_dupe_test.c -o myndtest -lpostal
My gcc particulars are  gcc (Debian 6.3.0-18+deb9u1) 6.3.0 20170516
But then I try to execute the following (having hopefully correctly sussed out the parameter format from address_parser.h, correctly, but maybe it's as simple as that):
./myndtest  house_number 1600 road "Pennsylvania Avenue" city  "Washington DC" postcode 20500 house_number 1600 road "Pennsylvania Avenue" city  "Washington DC" postcode 20500
And it produces no output.
Along the same lines, if I use the included test scripts:
../test-driver  --log-file /software/libpostal/src/ZZZ --trs-file ./XXX --test-name near_dupe_test ./near_dupe_test house_number 1600 road "Pennsylvania Avenue" city  "Washington DC" postcode 20500 house_number 1600 road "Pennsylvania Avenue" city  "Washington DC" postcode 20500

I get:
PASS: near_dupe_test

and looking at the file XXX:
:test-result: PASS
:global-test-result: PASS
:recheck: no
:copy-in-global-log: no
and looking at the log file ZZZ:
PASS near_dupe_test (exit status: 0)
Reading the code suggests sending in a near dupe should have reported the (in this case actual duplicates) data as near dupes. I also tried changing Avenue to Ave., in one of the inputs. But it made no difference.
I'll keep poking at this (though it seems my next step is to build hacked libraries, which seems scary), and hopefully it's just a matter of malformed input which you can quickly set me straight on.
 Thanks again.

Probably sorted my own question , as it seems to need some sort of key argument, presumably to match exactly on to then go on to run the rest of the process:
./myndtest --address-only-keys house_number 1600 road "Pennsylvania Avenue" city  "Washington DC" postcode 20500 house_number 1600 road "Pennsylvania Avenue" city  "Washington DC" postcode 20500
 produces:
act|pennsylvania avenue|1600|washington
act|pennsylvania|1600|washington
apc|pennsylvania avenue|1600|20500
apc|pennsylvania|1600|20500


Publish 3.0.0 release

Before publishing 3.0.0

[ ] #3
[ ] #8

After publishing 3.0.0

[ ] #9

@mike-sheppard , are you able to do #3 and maybe #8 ?  If you need some help we can jump into a quick Teams call.

hey @Levdbas I'm not going to have much time to dedicate to this until we've launched the site we're working on (next week 🤞) please feel free to push any updates & PR's, I'm always happy to review :)

My focus was "just get it working with ACF 6.3" 😅 haha

Did some last minor things and published the release. Readme is updated as well!


test: sync test.yaml file to use cluster admin role

test: sync test.yaml file with PR https://github.com/longhorn/longhorn-tests/pull/1486 to use cluster admin role to run the test
Signed-off-by: Yang Chiu<EMAIL_ADDRESS>

Need this otherwise test_backuptarget_invalid fails on v1.5.x.

@Mergify backport v1.4.x


Remove the libc dependency entirely

Replaces libc::c_foo with std::os::raw::c_foo.
Replaces intptr_t and ptrdiff_t with isize because these types are not in std::os::raw.
Replaces c_void with () because they say that c_void shouldn't be used for FFI: https://doc.rust-lang.org/stable/std/os/raw/enum.c_void.html.

Ah nevermind, *const () should really be *const c_void.

Note that we should probably switch from std::os::raw to core::os::raw once it's stable, so that people can use gl-rs without a stdlib.

cc bjz/glfw-rs#328 #364 #366

Clarified the PR title. Will merge. I'm not in the position to update to 0.4.0 right now - you are welcome to do it @tomaka.


Caused by: org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.springframework.data.elasticsearch.repository.support.SimpleElasticsearchRepository]: Constructor threw exception; nested exception is com.github.vanroy.springdata.jest.exception.JestElasticsearchException: Cannot execute jest action , response code : 403 , error : 403 Forbidden , message : null

I've had the same issue.
Steps to reproduce:

Create aws Elasticsearch service
Copy spring-boot-sample-data-jest-aws to you local machine
change config in application.properties
spring.data.jest.uri=https://AWS_HOST_URI cloud.aws.region.static=us-east-1
Start spring boot application
Get this:
Caused by: com.github.vanroy.springdata.jest.exception.JestElasticsearchException: Cannot execute jest action , response code : 403 , error : 403 Forbidden , message : null  at com.github.vanroy.springdata.jest.mapper.DefaultErrorMapper.mapError(DefaultErrorMapper.java:30)  at com.github.vanroy.springdata.jest.JestElasticsearchTemplate.execute(JestElasticsearchTemplate.java:1218)  at com.github.vanroy.springdata.jest.JestElasticsearchTemplate.executeWithAcknowledge(JestElasticsearchTemplate.java:1228)  at com.github.vanroy.springdata.jest.JestElasticsearchTemplate.indexExists(JestElasticsearchTemplate.java:848)  at com.github.vanroy.springdata.jest.JestElasticsearchTemplate.createIndexIfNotCreated(JestElasticsearchTemplate.java:1423)  at com.github.vanroy.springdata.jest.JestElasticsearchTemplate.createIndex(JestElasticsearchTemplate.java:177)  at org.springframework.data.elasticsearch.repository.support.AbstractElasticsearchRepository.createIndex(AbstractElasticsearchRepository.java:96)  at org.springframework.data.elasticsearch.repository.support.AbstractElasticsearchRepository.<init>(AbstractElasticsearchRepository.java:87)  at org.springframework.data.elasticsearch.repository.support.SimpleElasticsearchRepository.<init>(SimpleElasticsearchRepository.java:36)  at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)  at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)  at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)  at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:488)  at org.springframework.beans.BeanUtils.instantiateClass(BeanUtils.java:170)  ... 41 more

I've overcome this issue:
When setup ElasticSearch Service at AWS I choose - public access. But, when diggin into httpRequest I found aws auth header - AWSSigningRequestInterceptor took it from my credentials folder at ~/.aws (I use Mac). So, when AWS sees auth it tries to match it and when it doesn't find the match - it fails response with 403 error
I add ElasticSearch policies in IAM to my user that I have in ~/.aws/credentials and it worked out

Hi @jeronimo13 , thanks a lot for your feedback.

I've overcome this issue:
When setup ElasticSearch Service at AWS I choose - public access. But, when diggin into httpRequest I found aws auth header - AWSSigningRequestInterceptor took it from my credentials folder at ~/.aws (I use Mac). So, when AWS sees auth it tries to match it and when it doesn't find the match - it fails response with 403 error
I add ElasticSearch policies in IAM to my user that I have in ~/.aws/credentials and it worked out

Thanks for this solution. I had the same issue but it is working now.


Scroll bar not re-appearing after closing pop-up

After closing the aspace-import-excel popup window, the screen "un-greys", but the browser's right scroll bar does not appear.  This seems to occur when there are errors such that no Archival Objects are created.
Before running the plugin:

After running the plugin:

Fixed in tree_extensions.js


Adding tests for all possible assessment statuses

As part of the work to update the assessment endpoint to use ‘in database’ paging, we need to move the logic that filters on status into the database queries.
As a pre-requisite to this work this commit ensures there is an integration test for each possible CAS1/CAS3 status, and tests to ensure multiple statuses can be used for filtering
This commit also adds a script to ensure docker is running locally before starting starting the test database

@sudhakar-plr I know we were working on making CAS3 application statuses explicit with the use of a status field rather than being inferred so this may be useful for you to be involved with 👍


Fix simple composability example

Also showcase Form.mapValues.

I've reverted changes to examples/src/Page/Composability/WithExtensibleRecords.elm as suggested.

Nice! :beers:


Incorrect function signature for GetModuleFileNameW

Binja seems to mistakenly think that GetModuleFileNameW has the following signature:

However, the correct signature is DWORD GetModuleFileNameW(HMODULE hModule, LPWSTR lpFilename, DWORD nSize); (docs).
I'm guessing this error is from using the signature for GetModuleFileNameEx function, which has that extra hProcess param.

This is already fixed before 3.2.3946-dev (Build ID a5936bc8)
>>> bv.import_library_object('GetModuleFileNameW')
<type: immutable:FunctionTypeClass 'uint32_t __stdcall(HINSTANCE hModule, char* lpFilename, uint32_t nSize)'>


Updated the two heros outside of wagtail and the prototype

The heros broke during the transition to wagtail. Updated where they were used to pass values to the hero macro.
Changes

Updated the-bureau and careers/application-process to correctly pass data to the hero macro.

Testing

checkout /careers/application-process/ and /the-bureau/ locally

Review

@kave
@kurtw
@rosskarchner

Checklist

[ ] Changes are limited to a single goal (no scope creep)
[ ] Code can be automatically merged (no conflicts)
[ ] Code follows the standards laid out in the front end playbook
[ ] Passes all existing automated tests
[ ] New functions include new tests
[ ] New functions are documented (with a description, list of inputs, and expected output)
[ ] Placeholder code is flagged
[ ] Visually tested in supported browsers and devices
[ ] Project documentation has been updated (including the "Unreleased" section of the CHANGELOG)

:+1:

Weird /the-bureau/index.html is broken, but out of scope here. LGTM :+1:


Windows_task: task_name property and always force deletion

This pull request addresses #165 and #201

:+1:

@rlaveycal I'm in the process of getting this merged in (see #204) along with some more tests.  I have a few more items to add and we'll cut a new release of this cookbook.


mention colcon in install instructions

fixes https://github.com/eclipse/iceoryx/issues/8
Signed-off-by: Knese Karsten<EMAIL_ADDRESS>

any opinions on this?

Hi @Karsten1987, thanks for this PR :-) Adding the ROS2 build instructions is a good idea. Could you please add the "Signed-off-by" footer to your commit message, that is currently preventing the merge.
Cheers!

done


copy and paste password

you can copy and paste your password to confirm it instead of just retyping it

wow what a great bug report!

I'll look into this. I don't consider this a bug report, more a feature request or a hybrid of the two.

@Borumer Don't do it. Don't mess with the user's browser. By Copy + Pasting into an E-Mail confirmation field, the user accepts responsibility over what they type.

If you want to make sure that the E-Mail confirmation works out, have the user check their E-Mail while your site waits ("Please open your webmail program in a new window"). Show the E-Mail address in big fat letters ("The confirmation E-Mail was sent to.... made an error? CLick here to change).
Even better, if you can, let the user have some kind of limited access without confirming. That way, they can log in straight away and you improve your chances to keep in touch with the visitor even if the confirmation mail is blocked due to other reasons (e.g. spam filters).
This comment and the above one was pasted from https://stackoverflow.com/a/1725500/9860982


Serial might be larger than Integer

The serial and notified_serial columns in the domain table are defined as sa.Integer() which renders to 32bit signed integers on most DBMS (at least MySQL and PostgreSQL).
But per RFC 1035 the serial of a SOA record is defined as a 32bit unsigned integer and so can be up to 2^32-1 but the current database layout only allows 2^31-1 (because of signed int).
Even though it doesn't happen often, I'd suggest to increase the serial columns in the managed database layout to sa.BigInteger to be safe (MySQL has an unsigned integer type but it's not portable, other DBMS do not support unsigned integers and so BigInteger is the next best choice).
This did actually happened in our PowerDNS instance and caused warnings like:
/usr/local/lib/python3.6/dist-packages/sqlalchemy/engine/default.py:507: Warning: (1264, "Out of range value for column 'serial' at row 1") cursor.execute(statement, parameters).

To be clear: this is not only a warning but actually causes the domain to be updated every time as the serial differs between PowerDNS and the database as the serial in the database is truncated to 2^31-1.

Thanks for raising the issue. Yes, we should increase the range of those serial fields. I am gonna submit a fix for this.

I noticed that PDNS db schema also use int(11) for the notified_serial. It doesn't make sense to just update it in PDA db schema.
## in PDNS
mysql> desc domains;
+-----------------+--------------+------+-----+---------+----------------+
| Field           | Type         | Null | Key | Default | Extra          |
+-----------------+--------------+------+-----+---------+----------------+
| id              | int(11)      | NO   | PRI | NULL    | auto_increment |
| name            | varchar(255) | NO   | UNI | NULL    |                |
| master          | varchar(128) | YES  |     | NULL    |                |
| last_check      | int(11)      | YES  |     | NULL    |                |
| type            | varchar(6)   | NO   |     | NULL    |                |
| notified_serial | int(11)      | YES  |     | NULL    |                |
| account         | varchar(40)  | YES  |     | NULL    |                |
+-----------------+--------------+------+-----+---------+----------------+
7 rows in set (0.00 sec)

## in PDA
mysql> desc domain;
+-----------------+--------------+------+-----+---------+----------------+
| Field           | Type         | Null | Key | Default | Extra          |
+-----------------+--------------+------+-----+---------+----------------+
| id              | int(11)      | NO   | PRI | NULL    | auto_increment |
| name            | varchar(255) | YES  | UNI | NULL    |                |
| master          | varchar(128) | YES  |     | NULL    |                |
| type            | varchar(6)   | NO   |     | NULL    |                |
| serial          | int(11)      | YES  |     | NULL    |                |
| notified_serial | int(11)      | YES  |     | NULL    |                |
| last_check      | int(11)      | YES  |     | NULL    |                |
| dnssec          | int(11)      | YES  |     | NULL    |                |
| account_id      | int(11)      | YES  | MUL | NULL    |                |
+-----------------+--------------+------+-----+---------+----------------+
9 rows in set (0.01 sec)

According to the docs at https://doc.powerdns.com/authoritative/backends/generic-mysql.html#default-schema, the default schema defines an unsigned int.
It seems the unsigned flag was introduced in PowerDNS 4.1.1:
https://github.com/PowerDNS/pdns/commit/bd441912863b91ce0f32c8d3eac4e5ff9745e135
and https://doc.powerdns.com/authoritative/upgrading.html#to-4-1-1

Oops, my PDNS schema is outdated actually. I pushed a new commit to change the data type. Thanks!


Add bulk upgrade CLI

Closes: #763
Description

Add a bulk upgrade CLI command that takes a source chain's id as input and upgrades clients for all chains in config target the specified source chain client.

For contributor use:

[ ] Updated the Unreleased section of CHANGELOG.md with the issue.
[ ] If applicable: Unit tests written, added test to CI.
[ ] Linked to Github issue with discussion and accepted design OR link to spec that describes this work.
[ ] Updated relevant documentation (docs/) and code comments.
[ ] Re-reviewed Files changed in the Github PR explorer.

I tried testing this using hermes guide - testing client upgrade. I modified the procedure slightly to test with multiple host chains (i.e. ibc-1 & ibc-2) targeting a single chain (i.e. ibc-0) using the following commands ->
$ cat ~/.hermes/config.toml
[global]
strategy = 'packets'
log_level = 'info'

[[chains]]
id = 'ibc-0'
rpc_addr = 'http://<IP_ADDRESS>:26657'
grpc_addr = 'http://<IP_ADDRESS>:9090'
websocket_addr = 'ws://localhost:26657/websocket'
rpc_timeout = '10s'
account_prefix = 'cosmos'
key_name = 'testkey'
store_prefix = 'ibc'
gas = 200000
fee_denom = 'stake'
fee_amount = 10
clock_drift = '5s'
trusting_period = '14days'

[chains.trust_threshold]
numerator = '1'
denominator = '3'

[[chains]]
id = 'ibc-1'
rpc_addr = 'http://<IP_ADDRESS>:26557'
grpc_addr = 'http://<IP_ADDRESS>:9091'
websocket_addr = 'ws://localhost:26557/websocket'
rpc_timeout = '10s'
account_prefix = 'cosmos'
key_name = 'testkey'
store_prefix = 'ibc'
gas = 200000
fee_denom = 'stake'
fee_amount = 10
clock_drift = '5s'
trusting_period = '14days'

[chains.trust_threshold]
numerator = '1'
denominator = '3'

[[chains]]
id = 'ibc-2'
rpc_addr = 'http://<IP_ADDRESS>:26457'
grpc_addr = 'http://<IP_ADDRESS>:9092'
websocket_addr = 'ws://localhost:26457/websocket'
rpc_timeout = '10s'
account_prefix = 'cosmos'
key_name = 'testkey'
store_prefix = 'ibc'
gas = 200000
fee_denom = 'stake'
fee_amount = 10
clock_drift = '5s'
trusting_period = '14days'

[chains.trust_threshold]
numerator = '1'
denominator = '3'
$ ./scripts/dev-env ~/.hermes/config.toml ibc-0 ibc-1 ibc-2
$ ./scripts/dev-env ~/.hermes/config.toml ibc-0 ibc-1 ibc-2
WARNING: ./scripts/setup-chains will DELETE the '/home/hussaini/Documents/ibc-rs/data' folder.
> Do you wish to continue? (y/n): y
GAIA VERSION INFO: v4.2.1
Generating gaia configurations...
Creating gaiad instance: home=./data | chain-id=ibc-0 | p2p=:26656 | rpc=:26657 | profiling=:6060 | grpc=:9090 | samoleans=:100000000000
Change settings in config.toml file...
Start gaia on grpc port: 9090...
Balances for validator 'cosmos1hp2dcwqycyfcpn9xtg4tn9hv65klfks33szfgv' @ 'tcp://localhost:26657'
balances:
- amount: "0"
  denom: stake
pagination:
  next_key: null
  total: "0"
Balances for user 'cosmos1x9ueqshn8grl7qtj8agp6j359f4snm8yfgznd9' @ 'tcp://localhost:26657'
balances:
- amount: "100000000000"
  denom: samoleans
- amount: "100000000000"
  denom: stake
pagination:
  next_key: null
  total: "0"
Balances for user 'cosmos1qhv4lcqm772h4d9k2dfrsx2gvyfeh0gr8jf4zv' @ 'tcp://localhost:26657'
balances:
- amount: "100000000000"
  denom: samoleans
- amount: "100000000000"
  denom: stake
pagination:
  next_key: null
  total: "0"
Creating gaiad instance: home=./data | chain-id=ibc-1 | p2p=:26556 | rpc=:26557 | profiling=:6061 | grpc=:9091 | samoleans=:100000000000
Change settings in config.toml file...
Start gaia on grpc port: 9091...
Balances for validator 'cosmos196rtz4g28e5mc3nuwtd0j4tw5uxkkye6mv5hs7' @ 'tcp://localhost:26557'
balances: []
pagination:
  next_key: null
  total: "0"
Balances for user 'cosmos1ph9cnw62mlgd997whfjdrgcuaq3a7usypt090f' @ 'tcp://localhost:26557'
balances: []
pagination:
  next_key: null
  total: "0"
Balances for user 'cosmos1t3mmfnrprxl46gn4cru654gktzu5t7uf64flst' @ 'tcp://localhost:26557'
balances: []
pagination:
  next_key: null
  total: "0"
Creating gaiad instance: home=./data | chain-id=ibc-2 | p2p=:26456 | rpc=:26457 | profiling=:6062 | grpc=:9092 | samoleans=:100000000000
Change settings in config.toml file...
Start gaia on grpc port: 9092...
Balances for validator 'cosmos1ug9yrmkta2suar9cu4c3cfgh4d4gc4p5pekdne' @ 'tcp://localhost:26457'
balances: []
pagination:
  next_key: null
  total: "0"
Balances for user 'cosmos1d7llpvl2jt3ndwk3h3gjstxv7mlj9cjlhandyx' @ 'tcp://localhost:26457'
balances: []
pagination:
  next_key: null
  total: "0"
Balances for user 'cosmos1z7cvy9pz5emvshrqtplquyy2rw42fnn66m6fzt' @ 'tcp://localhost:26457'
balances: []
pagination:
  next_key: null
  total: "0"
ibc-0 initialized. Watch file /home/hussaini/Documents/ibc-rs/data/ibc-0.log to see its execution.
ibc-1 initialized. Watch file /home/hussaini/Documents/ibc-rs/data/ibc-1.log to see its execution.
ibc-2 initialized. Watch file /home/hussaini/Documents/ibc-rs/data/ibc-2.log to see its execution.
Building the Rust relayer...

Importing keys...
Success: Added key 'testkey' (cosmos1x9ueqshn8grl7qtj8agp6j359f4snm8yfgznd9) on chain ibc-0
Success: Added key 'user2' (cosmos1qhv4lcqm772h4d9k2dfrsx2gvyfeh0gr8jf4zv) on chain ibc-0
Success: Added key 'testkey' (cosmos1ph9cnw62mlgd997whfjdrgcuaq3a7usypt090f) on chain ibc-1
Success: Added key 'user2' (cosmos1t3mmfnrprxl46gn4cru654gktzu5t7uf64flst) on chain ibc-1
Success: Added key 'testkey' (cosmos1d7llpvl2jt3ndwk3h3gjstxv7mlj9cjlhandyx) on chain ibc-2
Success: Added key 'user2' (cosmos1z7cvy9pz5emvshrqtplquyy2rw42fnn66m6fzt) on chain ibc-2

$ hermes create client ibc-1 ibc-0
Success: CreateClient(
    CreateClient(
        Attributes {
            height: Height {
                revision: 1,
                height: 1858,
            },
            client_id: ClientId(
                "07-tendermint-0",
            ),
            client_type: Tendermint,
            consensus_height: Height {
                revision: 0,
                height: 1864,
            },
        },
    ),
)

$ hermes create client ibc-2 ibc-0
Jul 06 14:56:05.675  INFO ibc_relayer_cli::commands: using default configuration from '/home/hussaini/.hermes/config.toml'
Success: CreateClient(
    CreateClient(
        Attributes {
            height: Height {
                revision: 2,
                height: 1923,
            },
            client_id: ClientId(
                "07-tendermint-0",
            ),
            client_type: Tendermint,
            consensus_height: Height {
                revision: 0,
                height: 1942,
            },
        },
    ),
)

$ hermes tx raw upgrade-chain ibc-0 ibc-1 07-tendermint-0 10000000 300
Jul 06 15:00:01.034  INFO ibc_relayer_cli::commands: using default configuration from '/home/hussaini/.hermes/config.toml'
Jul 06 15:00:01.035  INFO ibc_relayer_cli::commands::tx::upgrade: Message UpdatePlanOptions { src_chain_config: ChainConfig { id: ChainId { id: "ibc-1", version: 1 }, rpc_addr: Url { inner: Url { scheme: "http", cannot_be_a_base: false, username: "", password: None, host: Some(Ipv4(<IP_ADDRESS>)), port: Some(26557), path: "/", query: None, fragment: None }, scheme: Http, host: "<IP_ADDRESS>", port: 26557 }, websocket_addr: Url { inner: Url { scheme: "ws", cannot_be_a_base: false, username: "", password: None, host: Some(Domain("localhost")), port: Some(26557), path: "/websocket", query: None, fragment: None }, scheme: WebSocket, host: "localhost", port: 26557 }, grpc_addr: Url { inner: Url { scheme: "http", cannot_be_a_base: false, username: "", password: None, host: Some(Ipv4(<IP_ADDRESS>)), port: Some(9091), path: "/", query: None, fragment: None }, scheme: Http, host: "<IP_ADDRESS>", port: 9091 }, rpc_timeout: 10s, account_prefix: "cosmos", key_name: "testkey", store_prefix: "ibc", gas: Some(200000), fee_denom: "stake", fee_amount: Some(10), max_msg_num: None, max_tx_size: None, clock_drift: 5s, trusting_period: 1209600s, trust_threshold: TrustThresholdFraction { numerator: 1, denominator: 3 } }, dst_chain_config: ChainConfig { id: ChainId { id: "ibc-0", version: 0 }, rpc_addr: Url { inner: Url { scheme: "http", cannot_be_a_base: false, username: "", password: None, host: Some(Ipv4(<IP_ADDRESS>)), port: Some(26657), path: "/", query: None, fragment: None }, scheme: Http, host: "<IP_ADDRESS>", port: 26657 }, websocket_addr: Url { inner: Url { scheme: "ws", cannot_be_a_base: false, username: "", password: None, host: Some(Domain("localhost")), port: Some(26657), path: "/websocket", query: None, fragment: None }, scheme: WebSocket, host: "localhost", port: 26657 }, grpc_addr: Url { inner: Url { scheme: "http", cannot_be_a_base: false, username: "", password: None, host: Some(Ipv4(<IP_ADDRESS>)), port: Some(9090), path: "/", query: None, fragment: None }, scheme: Http, host: "<IP_ADDRESS>", port: 9090 }, rpc_timeout: 10s, account_prefix: "cosmos", key_name: "testkey", store_prefix: "ibc", gas: Some(200000), fee_denom: "stake", fee_amount: Some(10), max_msg_num: None, max_tx_size: None, clock_drift: 5s, trusting_period: 1209600s, trust_threshold: TrustThresholdFraction { numerator: 1, denominator: 3 } }, src_client_id: ClientId("07-tendermint-0"), amount: 10000000, height_offset: 300 }
Success: []

$ gaiad tx gov vote 1 yes --home data/ibc-0/data/ --keyring-backend test --keyring-dir data/ibc-0/ --chain-id ibc-0 --from validator
{"body":{"messages":[{"@type":"/cosmos.gov.v1beta1.MsgVote","proposal_id":"1","voter":"cosmos1hp2dcwqycyfcpn9xtg4tn9hv65klfks33szfgv","option":"VOTE_OPTION_YES"}],"memo":"","timeout_height":"0","extension_options":[],"non_critical_extension_options":[]},"auth_info":{"signer_infos":[],"fee":{"amount":[],"gas_limit":"200000","payer":"","granter":""}},"signatures":[]}

confirm transaction before signing and broadcasting [y/N]: y
{"height":"2294","txhash":"A2AD88BA7C21B06773C9F2936EF506DF2670DE0309A7E3FBF00C5CD8AA8243F7","codespace":"","code":0,"data":"0A060A04766F7465","raw_log":"[{\"events\":[{\"type\":\"message\",\"attributes\":[{\"key\":\"action\",\"value\":\"vote\"},{\"key\":\"module\",\"value\":\"governance\"},{\"key\":\"sender\",\"value\":\"cosmos1hp2dcwqycyfcpn9xtg4tn9hv65klfks33szfgv\"}]},{\"type\":\"proposal_vote\",\"attributes\":[{\"key\":\"option\",\"value\":\"VOTE_OPTION_YES\"},{\"key\":\"proposal_id\",\"value\":\"3\"}]}]}]","logs":[{"msg_index":0,"log":"","events":[{"type":"message","attributes":[{"key":"action","value":"vote"},{"key":"module","value":"governance"},{"key":"sender","value":"cosmos1hp2dcwqycyfcpn9xtg4tn9hv65klfks33szfgv"}]},{"type":"proposal_vote","attributes":[{"key":"option","value":"VOTE_OPTION_YES"},{"key":"proposal_id","value":"1"}]}]}],"info":"","gas_wanted":"200000","gas_used":"43716","tx":null,"timestamp":""}

$ gaiad query gov proposal 1 --home data/ibc-0/
content:
  '@type': /cosmos.upgrade.v1beta1.SoftwareUpgradeProposal
  description: upgrade the chain software and unbonding period
  plan:
    height: "2564"
    info: upgrade the chain software and unbonding period
    name: test
    time: "0001-01-01T00:00:00Z"
    upgraded_client_state:
      '@type': /ibc.lightclients.tendermint.v1.ClientState
      allow_update_after_expiry: false
      allow_update_after_misbehaviour: false
      chain_id: ibc-0
      frozen_height:
        revision_height: "0"
        revision_number: "0"
      latest_height:
        revision_height: "2565"
        revision_number: "0"
      max_clock_drift: 0s
      proof_specs:
      - inner_spec:
          child_order:
          - 0
          - 1
          child_size: 33
          empty_child: null
          hash: SHA256
          max_prefix_length: 12
          min_prefix_length: 4
        leaf_spec:
          hash: SHA256
          length: VAR_PROTO
          prefix: AA==
          prehash_key: NO_HASH
          prehash_value: SHA256
        max_depth: 0
        min_depth: 0
      - inner_spec:
          child_order:
          - 0
          - 1
          child_size: 32
          empty_child: null
          hash: SHA256
          max_prefix_length: 1
          min_prefix_length: 1
        leaf_spec:
          hash: SHA256
          length: VAR_PROTO
          prefix: AA==
          prehash_key: NO_HASH
          prehash_value: SHA256
        max_depth: 0
        min_depth: 0
      trust_level:
        denominator: "0"
        numerator: "0"
      trusting_period: 0s
      unbonding_period: 1440000s
      upgrade_path:
      - upgrade
      - upgradedIBCState
  title: upgrade_ibc_clients
deposit_end_time: "2021-07-06T09:38:52.973644456Z"
final_tally_result:
  abstain: "0"
  "no": "0"
  no_with_veto: "0"
  "yes": "100000000000"
proposal_id: "1"
status: PROPOSAL_STATUS_PASSED
submit_time: "2021-07-06T09:35:32.973644456Z"
total_deposit:
- amount: "10000000"
  denom: stake
voting_end_time: "2021-07-06T09:38:52.973644456Z"
voting_start_time: "2021-07-06T09:35:32.973644456Z"

But when I try the upgrade clients command I get the below error ->
$ hermes upgrade clients ibc-0
Jul 06 15:11:36.189  INFO ibc_relayer_cli::commands: using default configuration from '/home/hussaini/.hermes/config.toml'
Jul 06 15:11:36.270  INFO ibc_relayer::foreign_client: [ibc-1 -> ibc-0:07-tendermint-0] upgrade Height: 1-2465
Jul 06 15:11:36.323  INFO ibc_relayer::foreign_client: [ibc-2 -> ibc-0:07-tendermint-0] upgrade Height: 2-2454
Error: .
├─.
├─.
│ └─ query error: error raised while updating client: failed querying client state on dst chain 07-tendermint-0 with error: Query error occurred (failed to query for client state): error converting message type into domain type: the client state was not found
└─.
  └─ query error: error raised while updating client: failed querying client state on dst chain 07-tendermint-0 with error: Query error occurred (failed to query for client state): error converting message type into domain type: the client state was not found

Interestingly, when I change the ForeignClient::restore() with ForeignClient::find() based on what the upgrade client command is doing, the upgrade clients command works without a problem. Still trying to figure out why this is the case.

So, there was a bug in the code that @adizere identified during our call - the order of args for the ForeignClient::restore() function was wrong. I fixed that and now I have a different error ->
$ hermes upgrade clients ibc-0
    Finished release [optimized] target(s) in 0.21s
     Running `target/release/hermes upgrade clients ibc-0`
Jul 08 17:39:02.511  INFO using default configuration from '/home/hussaini/.hermes/config.toml'
Jul 08 17:39:02.517 TRACE subscribing to query: tm.event = 'Tx' chain.id=ibc-0
Jul 08 17:39:02.517 TRACE subscribing to query: tm.event = 'NewBlock' chain.id=ibc-0
Jul 08 17:39:02.518 TRACE subscribed to all queries chain.id=ibc-0
>>> upgrading clients ChainId { id: "ibc-0", version: 0 } -> ChainId { id: "ibc-1", version: 1 }
Jul 08 17:39:02.518 DEBUG starting event monitor chain.id=ibc-0
Jul 08 17:39:02.522 TRACE subscribing to query: tm.event = 'Tx' chain.id=ibc-1
Jul 08 17:39:02.523 TRACE subscribing to query: tm.event = 'NewBlock' chain.id=ibc-1
Jul 08 17:39:02.523 TRACE subscribed to all queries chain.id=ibc-1
Jul 08 17:39:02.523 DEBUG starting event monitor chain.id=ibc-1
>>> upgrading ChainId { id: "ibc-0", version: 0 } -> ChainId { id: "ibc-1", version: 1 }: ClientId("07-tendermint-0")
Jul 08 17:39:02.526  INFO [ibc-0 -> ibc-1:07-tendermint-0] upgrade Height: 0-225
Jul 08 17:39:02.528 TRACE light client verification trusted=0-73 target=0-225
Jul 08 17:39:02.535 TRACE adjusting headers with 0 supporting headers trusted=0-73 target=225
Jul 08 17:39:02.535 TRACE fetching header height=0-74
Jul 08 17:39:02.539 DEBUG [ibc-0 -> ibc-1:07-tendermint-0] MsgUpdateAnyClient from trusted height 0-73 to target height 0-225
Jul 08 17:39:02.541 DEBUG [ibc-0 -> ibc-1:07-tendermint-0] upgraded client state Tendermint(ClientState { chain_id: ChainId { id: "ibc-0", version: 0 }, trust_level: TrustThresholdFraction { numerator: 0, denominator: 0 }, trusting_period: 0ns, unbonding_period: 1440000s, max_clock_drift: 0ns, frozen_height: Height { revision: 0, height: 0 }, latest_height: Height { revision: 0, height: 383 }, upgrade_path: ["upgrade", "upgradedIBCState"], allow_update: AllowUpdate { after_expiry: false, after_misbehaviour: false } })
>>> upgrading clients ChainId { id: "ibc-0", version: 0 } -> ChainId { id: "ibc-2", version: 2 }
Jul 08 17:39:02.559 TRACE subscribing to query: tm.event = 'Tx' chain.id=ibc-2
Jul 08 17:39:02.559 TRACE subscribing to query: tm.event = 'NewBlock' chain.id=ibc-2
Jul 08 17:39:02.559 TRACE subscribed to all queries chain.id=ibc-2
Jul 08 17:39:02.560 DEBUG starting event monitor chain.id=ibc-2
>>> upgrading ChainId { id: "ibc-0", version: 0 } -> ChainId { id: "ibc-2", version: 2 }: ClientId("07-tendermint-0")
Jul 08 17:39:02.562  INFO [ibc-0 -> ibc-2:07-tendermint-0] upgrade Height: 0-225
Jul 08 17:39:02.566 TRACE light client verification trusted=0-77 target=0-225
Jul 08 17:39:02.571 TRACE adjusting headers with 0 supporting headers trusted=0-77 target=225
Jul 08 17:39:02.571 TRACE fetching header height=0-78
Jul 08 17:39:02.574 DEBUG [ibc-0 -> ibc-2:07-tendermint-0] MsgUpdateAnyClient from trusted height 0-77 to target height 0-225
Jul 08 17:39:02.577 DEBUG [ibc-0 -> ibc-2:07-tendermint-0] upgraded client state Tendermint(ClientState { chain_id: ChainId { id: "ibc-0", version: 0 }, trust_level: TrustThresholdFraction { numerator: 0, denominator: 0 }, trusting_period: 0ns, unbonding_period: 1440000s, max_clock_drift: 0ns, frozen_height: Height { revision: 0, height: 0 }, latest_height: Height { revision: 0, height: 383 }, upgrade_path: ["upgrade", "upgradedIBCState"], allow_update: AllowUpdate { after_expiry: false, after_misbehaviour: false } })
Error: .
├─.
│ └─ query error: failed while trying to upgrade client id 07-tendermint-0 with error: failed while fetching from chain ibc-0 the upgraded client consensus state: GRPC error: status: InvalidArgument, message: "upgraded consensus state not found in store for height: 225: invalid request: invalid request", details: [], metadata: MetadataMap { headers: {"content-type": "application/grpc"} }
└─.
  └─ query error: failed while trying to upgrade client id 07-tendermint-0 with error: failed while fetching from chain ibc-0 the upgraded client consensus state: GRPC error: status: InvalidArgument, message: "upgraded consensus state not found in store for height: 225: invalid request: invalid request", details: [], metadata: MetadataMap { headers: {"content-type": "application/grpc"} }

After much debugging, I realised that this error is also happening on master with hermes upgrade client ibc-1 07-tendermint-0, this means that the Testing Client Upgrade procedure in the hermes guide is not working on latest master. Strangely, the problem resolves by itself after some time.

This is just a nice to have, so feel free to open a follow-up issue to capture this problem and merge this PR as it is! Or alternatively fix it in this PR, as you wish.

Thanks for the suggestions and the detailed comment @adizere! I agree that having the host chain id in the error will be very helpful. 👌 I have applied your suggestions to this PR itself.


Update SwitchSelector.css

Reduce the font-size off the buttons on screens < 1024px so text fits better

Not sure if this is the best way to do this, so if it's not in line with your CSS styling then just reject this request

What exactly are you fixing here ? Could you maybe show me before/after screenshots ?

The text on the selector switch buttons is a bit big on a phone. This change makes the font-size a bit smaller so more text fits on the button (on screens with a width of < 1024px).
Before

After

I'm a bit worried that this makes the text rather small. Here are a few suggestions:

limit the device width in your media query to 736px (iPhone 6 plus)
use pixels or points to define the font size and make it a bit less small
Some alternatives:
make rows of selector switches with only 2 buttons so that they can take up more horizontal space
use Unicode characters for your button labels, such as ⏸ and ▶ (add a whitespace if Domoticz isn't happy, I just tried it works great except that Pause looks rather ugly, but you could use two vertical bars instead eg. || or ❚❚)

I can even limit the width to 414, which is the width of the iPhone 7+ (736 is thei height, see https://www.paintcodeapp.com/news/ultimate-guide-to-iphone-resolutions).
I will change the font-size to 16px.
I will use the ❚❚ and ▶ :)
With only 2 buttons I need a lot more switch selectors and a lot more scrolling, so I prefer this change.
Just let me know if you can agree with it.

OK, thanks!


Automated UI/UX testing

Specific Demand
We should have a suite of automated tests and a code coverage report so everything you can do with Dioxus is thoroughly tested.
Areas of testing:

[x] Router
[ ] Hooks
[ ] Shared State
[ ] Fermi
[x] Core
[x] Desktop
[x] Web

[x] hydration

[x] SSR
[x] TUI
[x] Readme/Docs are up to date

For the Router ...

Route matching against paths
Nested routes - Route inside a Route
All the methods on the UseRoute struct - query, segment methods, current_location
The onchange subscriber stuff

I believe we should distinguish between build and runtime tests. Build tests is easily catchable whereas runtime tests should be run in a browser environment.
In this doc we have some hints how to perform these.
disclaimer: inspired by yew ci/di pipeline
I would then propose this example for testing runtime:
use wasm_bindgen_test::{wasm_bindgen_test as test, wasm_bindgen_test_configure};
// import necessary dioxus libs
use dioxus_core::prelude::*;
use dioxus_core_macro::*;
use dioxus_html as dioxus_elements;
use dioxus_router::*;
use serde::{Deserialize, Serialize};

wasm_bindgen_test_configure!(run_in_browser);

// for each test case
#[wasm_bindgen_test]
fn some_desc_of_the_test() {
    fn main() {
        console_error_panic_hook::set_once();
        wasm_logger::init(wasm_logger::Config::new(log::Level::Debug));
        dioxus_web::launch(APP);
    }

    static APP: Component = |cx| {
        cx.render(rsx! {
            Router {
                onchange: move |route| log::info!("route changed to {}", route),
                Route { to: "/", Home {} }
                Route { to: "blog"
                    Route { to: "/", BlogList {} }
                    Route { to: ":id", BlogPost {} }
                }
            }
        })
    };

    fn Home(cx: Scope) -> Element {
        cx.render(rsx! {
            div {
                h1 { "Home" }
            }
        })
    }

    fn BlogList(cx: Scope) -> Element {
        cx.render(rsx! {
            div {

            }
        })
    }

    fn BlogPost(cx: Scope) -> Element {
        let id = use_route(&cx).segment::<usize>("id")?;

        cx.render(rsx! {
            div {

            }
        })
    }

    main();
    // perform some tests with gloo_utils or other for instance in this section:
    // assert(...);
}

The tests should be located in a test folder in each packages along with a Makefile.toml with this for instance:
[tasks.test]
extend = "core::wasm-pack-base"
command = "wasm-pack"
args = [
    "test",
    "@@split(DIOXUS_TEST_FLAGS, )",
    "--",
    "--features",
    "${DIOXUS_TEST_FEATURES}",
]

In the Cargo.toml of the package, we should include at minima:
[dev-dependencies]
wasm-bindgen-test = "0.3"

In the root repo, we should have a Makefile.toml with for instance:
[tasks.tests]
category = "Testing"
description = "Run all tests"
dependencies = ["tests-setup"]
env = { CARGO_MAKE_WORKSPACE_SKIP_MEMBERS = ["**/examples/*", "**/packages/changelog"] }
run_task = { name = ["test-flow", "doc-test-flow", "ssr-test", "website-test"], fork = true }

[tasks.tests-setup]
private = true
script_runner = "@duckscript"
script = [
    """
    test_flags = array --headless --firefox
    dioxus_test_features = set wasm_test
    dioxus_test_flags = array_join ${test_flags} " "
    echo "running tests with flags: ${dioxus_test_flags} and features: ${dioxus_test_features}"
    set_env DIOXUS_TEST_FLAGS ${dioxus_test_flags}
    set_env DIOXUS_TEST_FEATURES ${dioxus_test_features}
    """,
]

I'll try to do some PR regarding that.

#190

@jkelleyrtp maybe remove fermi now that it has been replaced by signals ?

We've added a lot more tests, but this issue is still quite vague and doesn't make sense to keep open.


Make WCT tests less flaky

For instance, https://ci.cloudware.io/googlecodelabs/codelab-components/31:
02:06:11.228 INFO - Creating a new session for Capabilities [{platform=ANY, javascriptEnabled=true, browserName=chrome, chromeOptions={binary=/usr/bin/google-chrome, args=[start-maximized]}, version=48}]
Starting ChromeDriver 2.20.353124<PHONE_NUMBER>62d32c80f1dce587c8154a1efa0c3b) on port 4348
Only local connections are allowed.
[info] Timeout request received, killing process

Won't fix. However, the drop-in replacement using just Custom Elements spec, without Polymer or other frameworks/libs in https://github.com/googlecodelabs/codelab-elements, provides a solid base for testing.


Doc - Known Issues 3.4

Build scheduled

number 159

@sleto-it Please have a look at my suggestions: https://github.com/arangodb/arangodb/pull/7613
You may wanna pull the changes into this PR too.

@Simran-B thanks for the suggestions - let's continue the discussion there and in case we will backport the changes.  This one can be merged for now.


No verification e-mails

Platform
This bug report concerns: (select all that apply)

[X] Client
[X] Server

Details
When I create a new account, with a valid e-mail, I don't receive it in my Inbox nor in Spam.
I can't upload beatmap.
Reproducing the Problem
Create a new account with valid e-mail
Further Detail
I've tried with two accounts, one in gmail and the other one in protonmail.
Accounts are Adraenor and Adraenor2

This seems like a problem for the people who operate BeatSaver, which this repo clearly states is not me.