major refactoring for setup.sh (#1590)

Improvements for setup.sh
Following #1590, I re-wrote and refactored setup.sh to

make shellcheck happy
improve the overall readability of the script
make the script consistent

This PR obsoletes #1258.
Rationale
Looking at #1258, I adopted some changes, namely set -eu and the use of default values. This PR has the podman changes already in it and does therefore not need to be rebased. Looking at the use of set -eu, I am really not sure whether this is the best solution to be honest, and I would like to hear an opinion on this.
Furthermore, I restructured the script, setting description and default values in the beginning, followed by all functions. I believe this to be more consistent.
I also included the changes to README.md to reflect what @fbartels already did in #1258.
Disclaimer
Not sure whether I made (one or more) (minor / major) mistakes while refactoring. The test will show. Bash is still Bash in the end.

Thanks for reviving and completing my work from #1258 I did close this pr just now.

Looking at the use of set -eu, I am really not sure whether this is the best solution to be honest, and I would like to hear an opinion on this.

The main intention behind this is to force some "hygiene" when working with bash scripts. set -u makes scripts terminate when an assigned variable does not have a value and set -e terminates the script when one of the commands it uses gives a non-zero return code (i.e. produced an error).

Alright. I was aware of what set -eu does, I was just curious because I read that the use of set -e can have unintentional side effects. Sadly, the Travis build failed. Not sure why thought. @fbartels, can you help?

the use of set -e can have unintentional side effects

I would say it the other way around. If a step in between fails, but the script continues that could very much have unintentional side effects. But yes, forcing set -e will mean that scripts need to come with a certain level of robustness, make them clean up after themselves, etc. I am ok with removing it, but keeping it forces a higher level of care.
The concrete errors I see are:
not ok 257 checking setup.sh: setup.sh email add and login
# (from function `assert_output' in file test/test_helper/bats-assert/src/assert.bash, line 239,
#  in test file test/tests.bats, line 1251)
#   `assert_output "passdb<EMAIL_ADDRESS>auth succeeded"' failed
#
# -- output differs --
# expected : passdb<EMAIL_ADDRESS>auth succeeded
# actual   : passdb<EMAIL_ADDRESS>auth failed
# --
#

Test https://github.com/tomav/docker-mailserver/blob/f225e14a219824e4ebb34e63b144e6d7c1314bcb/test/tests.bats#L1250-L1251
This indeed looks like its unrelated to your change.
not ok 267 checking setup.sh: setup.sh config dkim
# (from function `assert_success' in file test/test_helper/bats-assert/src/assert.bash, line 114,
#  in test file test/tests.bats, line 1415)
#   `assert_success' failed
#
# -- command failed --
# status : 2
# output : ./setup.sh: 279: ./setup.sh: 2: parameter not set
# --
#

Not enough parameters left after fail2ban       ) shift ; _docker_container fail2ban "$@" ;;?
ot ok 268 checking setup.sh: setup.sh debug fetchmail
# (in test file test/tests.bats, line 1426)
#   `[ "$status" -eq 11 ]' failed

this is the line of the tests https://github.com/tomav/docker-mailserver/blob/f225e14a219824e4ebb34e63b144e6d7c1314bcb/test/tests.bats#L1424-L1426. what happens when you manually run setup.sh with these parameters?

Seems like you mixed up line 279 with 297. The script fails because with set -u, the default value (2048) is not being used - instead the script is stopped with a non-zero exit code. I corrected this with
279 dkim     ) _docker_image generate-dkim-config "${2:-2048}" ;;

instead of just $2.

Investigated error tracking. There was the idea of showing where an error was, and that there was an error. I tried
set -euE
trap '_report_err() $LINENO' ERR

function _report_err()
{
  echo "Error happened on line $1" | tee -a $LOG
}

until I realized:

set -E is not standard POSIX sh and therefore incompatible
trap '...' ERR is not standard POSIX sh and therefore incompatible
the function keyword is not POSIX sh too!?

The first two are important (obviously). Unless we switch to a different interpreter (looking at you, bash), this feature cannot easily be implemented in sh.

Well, personally I wouldn't mind using bash. The setup script does run on the host though, so bash may not be available. In practice I haven't seen a Linux host without bash for ages, though. @fbartels what do you think? Upgrade to bash?

Well, personally I wouldn't mind using bash. The setup script does run on the host though, so bash may not be available. In practice I haven't seen a Linux host without bash for ages, though. @fbartels what do you think? Upgrade to bash?

In addition to the already mentioned points, setup.sh uses EUID as an environment variable. This variable is not defined in POSIX sh too, making the podman part basically unreliable. I had to default to a value to not trigger set -u.

Yes I agree. Almost every host (especially if its also running Docker) will have bash or something that provides the ability to interpret bash. So upgrading this helper script should be no problem.

Implemented the feature, but still: 268 is failing. Something seems wrong in setup.sh.

Yes, nevermind. My refactoring was incomplete. This should in practice work now. Can you approve @fbartels @erik-wramner ?

@fbartels I am currently working on a bigger PR obsoleting #1228 and #1137
Therefore, I would like to know when this PR (#1595) is to be merged. I'd like to become a contributor to manage these PR's. But first, this and #1596 must be merged, as the new PR I'm currently working on is based on them.
Do you have any information? What about @erik-wramner ?

Usually I leave the merging to @erik-wramner, but you changes look good to me so I'll merge them in now.

Image/Container name detection was removed. Was that on purpose?
INFO=$($CRI ps \
  --no-trunc \
  --format "{{.Image}};{{.Names}}" \
  --filter label=org.label-schema.name="docker-mailserver" | \
  tail -1)

IMAGE_NAME=${INFO%;*}
CONTAINER_NAME=${INFO#*;}

Image/Container name detection was removed. Was that on purpose?
INFO=$($CRI ps \
  --no-trunc \
  --format "{{.Image}};{{.Names}}" \
  --filter label=org.label-schema.name="docker-mailserver" | \
  tail -1)

IMAGE_NAME=${INFO%;*}
CONTAINER_NAME=${INFO#*;}

Not sure what you mean @casperklein, but looking at lines 186 ff. in function main(), both in this PR as well as on master, name detection is there.

You are absolutely right. I don't know, why I missed that. Sorry for the noise.


Fix typo

/rest/i -> REST

@changeworld : Thanks for your contribution! The author(s) have been notified to review your proposed change.

@changeworld , I have reviewed it. you can sign-off this for merging.

#sign-off

Thanks. Due to the upcoming Build conference, all merging and publishing is on hold until the morning of May 24.
This PR is ready for merge on 5/24.


Exclude set-presence from the cloudwatch logs in prod

Should reduce our log expenses and maybe make things a little faster.

Nice!


Remove suffex 'Payload' from all calls and call results

All the calls and call result types are suffixed with the term 'Payload'.
This term makes lengthy type names even more verbose and should be removed.
This change will break every application relying on this library. So I suggest we deprecate these old style types and urge users to use the new types. In a v2 of this library we can remove them.

Satisfied with PR - https://github.com/mobilityhouse/ocpp/pull/584 - so will close


Fix/660-512/category-form-list-issues

fixes #660
fixes #512
updated test cases

need to update delete in server code.


Delete CbeNumber from this openapi

@pvdbosch Delete CbeNumber from this openapi

Removal can only be done in a openapi-organization version 2.x which should then be maintained in parallel with the 1.x versions; this may not be worthwhile yet.
It's already marked as deprecated in current version however:
deprecated: true # Use either EnterpriseNumber or EstablishmentUnitNumber, as two separate properties if needed

I noticed the version with CbeNumber marked as deprecated was updated in github, but not yet released. I released this as version 1.0.1. It will also become available on maven central within the next couple days (after index update).

When there's a trigger to create a new major version, all deprecated types are review and probably removed. I'll close this issue because there's nothing to do for now.


Fix reference cycles between python and C++

Kick out py_shared_ptr and instead keep the python instance alive manually by holding a reference to it
See pybind/pybind11#1389 for why py_shared_ptr was needed in the first place, and the comment from May 27 why we may not want to use it (reference cycle)

Thanks @florianwechsung


sum over properties

Is there a way to do sum over properties? Would be handy for aggregation in kernels, not high priority.

I don't see what you mean by "aggregation in kernels"? Computing the kernels from two feature vectors? Or something different?

I mean the sum/mean over central atoms with aggregation. In a full kernel there are centers in the property axis which one want to aggregate. For the sparse kernel this is not really important, because one only has to do it over the one axis. But there are other use cases where this might be useful.

Right, for going from a per-atom full kernel to a per-structure full kernel. That sounds good!


Fedora package orphaned

The Fedora package has been orphaned: https://src.fedoraproject.org/rpms/keylime

@sergio-correia or @ansasaki can you comment on this?

@mpeters I think @sergio-correia can take it, as he is a co-maintainer, but he is on PTO this week. I can try to take the package maintenance if we can't wait for Sergio

I'd suggest someone from the project here take the package and then orphans it again if needed to transfer it to someone else.

I'll take it then, we can transfer it later if needed


Sign in to the Additional Security Verification page and select Application Password.

Hi team,
I moved this from here: https://github.com/MicrosoftDocs/azure-docs.zh-tw/issues/605
I couldn't repro the issue because it doesn't let me log in when I go to https://account.activedirectory.windowsazure.com/Proofup.aspx
The comments below were machine-translated
@doggy8088 commented 2 days ago — with docs.microsoft.com
I can’t find the link for “App Password” after logging in to the “Other Security Verification” page!

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

ID: 8751595d-4839-d2ee-1e2c-16d07ef84a2d
Version Independent ID: e66f96b3-5b88-9304-1ec0-9e3bb8a2cfbe
Content: How to manage app passwords - Azure Active Directory
Content Source: articles/active-directory/user-help/multi-factor-authentication-end-user-app-passwords.md
Service: active-directory
Sub-service: user-help
GitHub Login: @eross-msft
Microsoft Alias: lizross

@doggy8088 Thanks for your feedback! We will investigate and update as appropriate.
cc : @CeciAc

Hi @doggy8088 ,
You are likely having this issue because of the way your MFA enforcement is turned on. If you have MFA enforcement turned on through a conditional access policy, app passwords won't work and won't show up. This is intended behavior.
If you are using conditional access to deploy MFA then you should be using modern authentication and thereby app passwords are unnecessary.
https://docs.microsoft.com/azure/active-directory/authentication/howto-mfa-getstarted#enable-multi-factor-authentication-with-conditional-access
If you are enforcing MFA per user by changing user state (in the old style MFA phonefactor portal) and not doing it via conditional access that allows app passwords to be used.
https://docs.microsoft.com/azure/active-directory/authentication/howto-mfa-userstates#enable-azure-mfa-by-changing-user-state

We will now proceed to close this thread. If you have further questions or run into other issues, feel free to reach out on Microsoft Q&A. https://docs.microsoft.com/answers/topics/azure-active-directory.html?filter=unanswered


flutter analyze reports Target of URI doesn't exist:

Copied from https://github.com/rrousselGit/provider/issues/164.
Running flutter analyze from terminal results in an error, as follows.
> git clean -dfx
> cd packages/provider
> flutter analyze
Analyzing provider...

  error • Target of URI doesn't exist: 'package:example/main.dart' • packages/provider/example/test/widget_test.dart:11:8 •
         uri_does_not_exist

1 issue found. (ran in 4.5s)

My version of flutter is as follows.
>  flutter --version
Flutter 1.7.8+hotfix.3 • channel stable • https://github.com/flutter/flutter.git
Framework • revision b712a172f9 (10 days ago) • 2019-07-09 13:14:38 -0700
Engine • revision 54ad777fd2
Tools • Dart 2.4.0

I can do this with flutter create --template=plugin, then git clean -dfx and flutter analyze. But doing flutter packages get fixes it. Perhaps if flutter analyze or similar tools knew to do a flutter packages get, it would improve user experience?
$ flutter analyze
Running "flutter pub get" in uri_picker...                          2.1s
Analyzing uri_picker...

  error • Target of URI doesn't exist: 'package:uri_picker_example/main.dart' • example/test/widget_test.dart:11:8 • uri_does_not_exist
  error • The function 'MyApp' isn't defined • example/test/widget_test.dart:16:29 • undefined_function

2 issues found. (ran in 3.9s)


Swift 4 and Xcode 9 conversion

Thanks @maxsz, would you be able to bump the Xcode version in the .travis.yml file to xcode9. This should hopefully fix CI for this PR.

@kylef sure. Also had to add a .swift-version file for the checks to pass.

Merged this in as 905dd93


build.gradle fix for Apache 2.4 in otel-webserver-module

Hi
I was working with the webserver-module and compiling it to test it and found a problem.
#0 53.23 > Task :configureApache24 FAILED
#0 53.23 checking for chosen layout... Apache
#0 53.23 checking for working mkdir -p... yes
#0 53.23 checking for grep that handles long lines and -e... /bin/grep
#0 53.23 checking for egrep... /bin/grep -E
#0 53.23 checking build system type... x86_64-unknown-linux-gnu
#0 53.23 checking host system type... x86_64-unknown-linux-gnu
#0 53.23 checking target system type... x86_64-unknown-linux-gnu
#0 53.23 configure:
#0 53.23 configure: Configuring Apache Portable Runtime library...
#0 53.23 configure:
#0 53.23 configure: error: Bundled APR requested but not found at ./srclib/. Download and unpack the corresponding apr and apr-util packages to ./srclib/.
#0 53.33
#0 53.33 FAILURE: Build failed with an exception.
#0 53.33
#0 53.33 * What went wrong:
#0 53.33 Execution failed for task ':configureApache24'.
#0 53.33 > Process 'command './configure'' finished with non-zero exit value 1
#0 53.33
#0 53.33 * Try:
#0 53.33 Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.
#0 53.33
#0 53.33 * Get more help at https://help.gradle.org
#0 53.33
#0 53.33 Deprecated Gradle features were used in this build, making it incompatible with Gradle 5.0.
#0 53.33 Use '--warning-mode all' to show the individual deprecation warnings.
#0 53.33 See https://docs.gradle.org/4.10.2/userguide/command_line_interface.html#sec:command_line_warnings
#0 53.33
#0 53.33 BUILD FAILED in 49s
#0 53.33 4 actionable tasks: 4 executed
The current build.gradle file can't compile Apache 2.4 in the webserver container. The APR dependencies are not copied.
I was able to fix it by just including "inputs.dir bundleAprSources" at the beginning of the task configureApache24. Maybe this can be added to the current graddle file.

Hi @DebajitDas
Is the default profile (centos6). I used the "docker-compose build" command.
I modified the Dockerfile to stop when the Apache24 was compiling, to ssh into the container, and fix the gradle script. After fixing the container I executed again the "docker compose -t webserver ." and "docker build -t webserver ." to finish the process.

Hi @kpratyus
The gradle fails always because the APR lib is not copied before compiling Apache2.4
If you check the gradle file, for Apache2.2 the APR lib is copied just before compiling, I guess that in your test you're using this version instead of Apache2.4, and works for you.
Is that possible?

@david-perez-martin We have added the CI and all the builds are successful for centos6, centos7 and ubuntu20.04 (https://github.com/open-telemetry/opentelemetry-cpp-contrib/actions/runs/2567650521). Ideally, the same APR files is used for configuring, therefore, configureApache24 should work because its previous task configureApache22 has already copied the APR to the right directory. Still wondering how this issue got caught?
Could you please list down the exact steps to reproduce this issue?

I followed the instructions here: https://opentelemetry.io/blog/2022/instrument-apache-httpd-server/#installing-opentelemetry-module-in-target-system
git clone https://github.com/open-telemetry/opentelemetry-cpp-contrib
cd  opentelemetry-cpp-contrib/instrumentation/otel-webserver-module

This is the error I get when I run docker-compose --profile centos7 build:
 => ERROR [29/34] RUN cp -r /dependencies /otel-webserver-module/     && cp -r /build-dependencies /otel-webserver-module/     && cd otel-webserver-module       3.8s
------
 > [29/34] RUN cp -r /dependencies /otel-webserver-module/     && cp -r /build-dependencies /otel-webserver-module/     && cd otel-webserver-module     && ./gradlew assembleWebServerModule:
: No such file or directory
------
executor failed running [/bin/sh -c cp -r /dependencies /otel-webserver-module/     && cp -r /build-dependencies /otel-webserver-module/     && cd otel-webserver-module     && ./gradlew assembleWebServerModule]: exit code: 127
ERROR: Service 'webserver_centos7' failed to build : Build failed

On another note, since these take about an hour to build, can opentelemetry-webserver-sdk-x64-linux.tgz be uploaded to the GitHub releases to save time building these?

@pnvnd Thanks for raising this concern. Let me look at  this and will get back on the build.
Yes, we have a plan to make a release this month and package would be available there.
Currently, On every merge to main, we are building on centos7 and the package can be downloaded from
https://github.com/open-telemetry/opentelemetry-cpp-contrib/actions/runs/2711112662#artifacts
Hope this helps.

Hi @pnvnd, I have tried locally but I am able to build successfully. However, I have submitted a potential issue in dockerfile. Also, our CI builds are successful.
However, you can use https://github.com/open-telemetry/opentelemetry-cpp-contrib/actions/workflows/webserver.yml?query=event%3Apush+branch%3Amain to download any recent builds in main.

Hi
For me failed with profile default I guess. I tried again with centos7 profile and worked fine.

BTW: For WSL users is very important to modify .wslconfig file and add this property to allow centos compilation.
kernelCommandLine = vsyscall=emulate


added support and test for microsoft guid

A microsoft guid i.e. 2400ee73-282c-4334-e153-08d8f922d1f9 wasn't matched by your isValidUUID regex pattern.
I think it makes sense, to be not stricter then really needed. Especially also I couldn't find the place in the RFC4122 where the first digit of the 'clock-seq-low' part of a uuid is limited, as it was by you regex pattern.  Probably there are many cases, where a rest api call and deserialization from json is made for uuid/guids from a Microsoft backend.
I hope that you're ok with this approach. Otherwise we also could implement a "strict" mode or v4guid or similar. But this makes the code unnecessarily complex.

Here is the issue. I never originally intended to support Microsoft GUIDs and anything outside of standard UUIDs. Also, the restriction isn't on the clock-seq-low but on the clock-hi-and-reserved which is where the variant is set. If you look at section 4.1.1 you will see all the variants listed. The RFC4122 document specifically covers only 1 variant. Which is the 1 0 x variant. Which is what limits the clock-hi to 8,9, a, or b.
They mention the other variants, but never go into deep conversation about it. Also this library is written in a way that will only generate this one variant.
I also have already made concessions for supporting GUIDs, just flip the validate flag. Both parse and UuidValue have options to disable validation so you can validate if its true.
An option is to add a isValidGUID and add a flag like microsoft_mode = true or guid = true and it will use the GUID validator and not the Non-guid validator.
If I add this change, I will then have to start supporting many other GUID things. Like recently someone opened an issue that even started all this GUID talk and validation disabling because they were using a ASP.NET boilerplate or something, and the SQLSServerGUID Generator had 4 modes, and 2 of them completely change the structure of GUIDs (like putting the random bits at the start, and the timestap at the end).
While I won't close this because I am open to the discussion and potentially having my mind changed, but at this point, continually adding support for GUIDs is going to balloon this library to something it was never designed to support.
If anything, Microsoft should stop using custom variants, and follow the standard UUID variants instead.

I fully understand your problem and I'am also annoyed by the different standards. The most cases in C#/.Net/.NetCore/ASP.Net it is considered as simple 128-bit number. As you mention SQL, exactly these guid's have the issue. .net generated guid seems to follow the standard. Let's consider following facts:

using a v4 (v1) uuid as a guid is always possible
using a guid as v4 UuidValue will leed's sometimes to validation issues
other uuid implementations in different languages are not as strict as yours
the standard is 15 year old and could need a update
uuid/guids play a essential role in today's communication (rest, json)
60% of flutter developers use Windows (https://medium.com/flutter/flutter-spring-2020-update-f723d898d7af)

We should answer the following questions?

What are the risks of not being strict in parsing a guid/uuid ?
Same time is there a downside being strict in v4 generation?

I think your suggestion for a flag is the right approach. I would like to add to your approach a fail proof developer friendly response, by throwing a special FormatException
'The provided UUID is not RFC4122. Probably you are using a Microsoft GUID. Try to set validationMode=nonStrict'
Adding to parse and UuidValue a optional parameter "validationMode" as a enum

nonStrict
strictRFC4122 (default)
The enum could also be extended in future.
What do you think?

I thank you for taking the time to discuss this and I now agree we should add this. I like the implementation changes you made, and I will be merging this. I might change some of the Error messages to improve the English a little bit, but everything else looks great.
Thank you for contributing this to the library, I will be merging and pushing out a new version shortly.

Version 3.0.4 has been released. Thanks again.

Thank you too, for the good discussion and fast support


Is it possible to prevent auto alignment of MultiTooltip ?

I'm trying to create a sparkline with a custom tooltip (horizontal line with a label).
This is what I got so far.
As you can see when hovering the chart the line is not always aligned with the dot.
My problem is that when using a MultiTooltip Chart.js will attempt to align the tooltip properly and override the actual x position of the point. Source here.
First, I think that overriding the original position is not a good idea either way (Maybe there should be an original_x/y somewhere).
Second, Is there a non intrusive way of preventing chart.js from overriding the original x value ?

Hello, I'm sorry this issue hasn't received much attention yet. It seems this is an implementation question, could you please post your question to StackOverflow with the Chart.js tag and include a link here. This will ensure your question reaches the largest audience.
https://stackoverflow.com/questions/tagged/chart.js

There's currently no way to do this. By the time the tooltip is being created / shown the event that triggered it is no longer available. A better way might be to add your own listener to the canvas and then draw the line / points that way.


Initial work

This pull includes all of the initial work done by Danny

Codecov Report

:exclamation: No coverage uploaded for pull request base (main@b0e2464). Click here to learn what that means.
The diff coverage is n/a.

@@           Coverage Diff           @@
##             main      #18   +/-   ##
=======================================
  Coverage        ?   33.33%
=======================================
  Files           ?        3
  Lines           ?       15
  Branches        ?        0
=======================================
  Hits            ?        5
  Misses          ?        9
  Partials        ?        1

Continue to review full report at Codecov.

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


new: added AtomicJob

This patch adds the function AtomicJob that
allows to make a function execution atomic
while still returning any eventual error to every callers.

/build

/build


[Bug]: Error Running Extension in GitHub Codespaces

Extension Version
v0.1.11
PHP Binary
Other
Operating System
Other
What happened?
Running in GitHub Code Spaces, I get the following error, and the extension crashes
2024-12-16 17:13:20.250 [error] /bin/sh: 1: /home/codespace/.vscode-remote/data/User/globalStorage/laravel.vscode-laravel/file-downloader-downloads/php-parser-0.1.6: Exec format error
Mimimal Code Sample
No response

Same problem here


Can't choose Raspberry in Spotify

It's impossible to choose my raspberry with raspotify in spotify application.
I'm using the last version of raspotify on my raspberry pi4 and raspberry pi zero.

I get a similar message from my daughter's Spotify's account because she does not have a Spotify Premium account. Free accounts are not supported by Raspotify/librespot.

I got the same issue, and I got a Premium account :(. I suppose something else could be the reason.

I get this message when trying to start a Podcast directly. I choose first a music Track (can select raspotify) and then switch to podcast.

If it's a matter of podcasts then yes librespot has issues currently with podcasts sometimes. Podcasts were not a thing when librespot was initially written AFAIK. Librespot can only decode Ogg Vorbis audio at the moment which works fine for music 99.9% of the time because that's generally an available format. Some podcasts however are only available in MP3 or AAC formats.
There is a lot of work being done to reverse engineer the latest and greatest Spotify API(s) to stay current and to be able to enable Spotify HiFi when it rolls out. Part of that would be switching to some kind of audio framework maybe or at least a decoder that can handle multiple different formats. The ideal decoder would be able to do MP3, AAC, Ogg Vorbis, and FLAC gapeless, be relatively small, cross-platform and be written in pure Rust. (the current Ogg Vorbis is pure Rust) I think generally the idea is to try to stay away from huge (non-Rust) frameworks like Gstreamer and FFmpeg.

I'm going to call this an upstream librespot issue.


Upstream Update (file-updates)

The file-updates branch is 2 commits behind dev.
This pull request was created automatically. If you wish to be excluded from automatic pr creation, open an issue here. Contact DonovanDMC if you find any other issues.

upstream branch name change


Should didpay also be a web app (from flutter)

It is possible theoretically to run this as a web app (PWA even).
flutter create --platforms web .
Will create it as a web app and
flutter run -d chrome to test it out.
This may be of interest to avoid the barrier for some to install the app the first time (or places where the app store isnt' available).
To do this the main things are:

don't use dart:io
don't use webview (there are other ways on the web)

But mostly things can work (as to how people could migrate from web storage to native storage - that is another matter).
Worth consideration?

definitely worth consideration! personally, i'd love to make the mobile version of didpay the "star of the show" and have the web app (and maybe PWA) version be somewhat simpler. i say this because mobile-first behavior would allow us to focus on making didpay (and thus tbDEX) associated with quick, on-the-go transactions. not to mention push notifications and consistent ui/ux are better associated with mobile experiences!

@wesbillman @mistermoe any additional thoughts?

yeah a webapp would have less persistence and power (at least PWAs are for the forseeable future) but very useful. not sure if that is the job of the flutter app to provide or a seperate simply web/PWA experience for some subset of functionality.

I think it's great. The downside is that it's not super "webby" like the layouts and accessibility/navigation stuff can get a bit weird. I like we should prototype it to get some thoughts from others though. In the past I've keep the web and mobile stuff separate for this reason, but maybe it's time for that to change :)
Also, even if we make this a web app, we should be able to generate all the FTL stuff for both mobile and web, which reduces the amount of web work a bit.

yeah its fine if it is seperate I think - but I also don't mind web apps that are minimalist too (which mobile encourages, and this one would be) as long as it isn't "trying too hard" and feels too weird on the web.
What do you mean "generate the FTL stuff"?

@ethan-tbd did this end up being done - or we decided not to?

yea, we decided to re-introduce the web folder to allow didpay to be a web app in this pr (but won't be a priority as we want to focus on the mobile experience)


wish: thrift

thrift: a lightweight, language-independent software stack for point-to-point RPC implementation. https://github.com/apache/thrift

https://github.com/build2-packaging/thrift

see #25


Add --drive-base-url option to override base url for Google Drive backend

I have a multihoming setup at home with multiple outgoing internet connections.
It was useful for me to be able to override the base url and point it to a haproxy load balancer.
I'm not sure if this is a useful feature for everyone but it's relatively out of the way for people that don't need it -- happy to keep this on my own fork as well!

I wonder if go's proxy support would work for you instead of this?
That could send all http traffic via your load balancer and works with rclone as-is.

I tried doing that at first but because Google's APIs uses SSL, the proxy servers need to do SSL tunneling. This together with go trying to reuse HTTP connections between requests, HAProxy wasn't able to inspect the traffic inside the tunnel to effectively load balance across the multiple internet facing interfaces.
The current set up that I have terminates SSL on HAProxy itself which allows it to inspect the individual HTTP requests that rclone makes and send them down different backends even though rclone is doing KeepAlives between itself and HAProxy.
This worked much better than the proxy solution at least for my specific usecase!
Please feel free to close if you think this is much too specific for general users!

I was just wondering if we could generalise this solution somehow.
Thinking about it some more, quite a few remotes have the endpoint flag
      --azureblob-endpoint string                Endpoint for the service
      --b2-endpoint string                       Endpoint for the service.
      --qingstor-endpoint string                 Enter a endpoint URL to connection QingStor API.
      --s3-endpoint string                       Endpoint for S3 API.
      --swift-endpoint-type string               Endpoint type to choose from the service catalogue (OS_ENDPOINT_TYPE) (default "public")

So could you re-work this slightly so that the config parameter is called endpoint.  I think it should probably take the full endpoint URL so the default if blank would be https://www.googleapis.com/drive/v3 that would fit in with the other endpoints better I think - what do you think - would that work for you?
Note that you'll need to gofmt stuff with go1.11 as the formatting changed slightly from go1.10 (see c19d1ae9a55fbe080cd0c646c3ddc11a6f44e97a)

@kelvl just wondering if you were planning to finish this off?

I'm going to close this since I haven't heard from you.  If you'd like to re-submit then please open a new PR - thank you :-)


Dark mode

enhance the readability nd watch time ..
please assign this work to me i will complete it very soon

Already tracked by #49. Closing as duplicate. Please re-open if necessary.


Adds Snowflakereceiver component

Description:
Adds Snowflake DB receiver from contrib into splunk-otel-collector.
We currently have work tickets for the OOTB content that relies on this receiver.
Content for this receiver exists publicly at: https://github.com/splunk/observability-content-contrib/tree/main/dashboards-and-dashboard-groups/snowflakedb
Link to Splunk idea: Discussed internally on Slack
Testing:
If you have suggestions on tests for a SaaS service like Snowflake let me know.
Documentation:

The failing test and lint feel unassociated to my changes. If you believe they are or you'd like me to fix them in this PR let me know.


[Proposal] Put each nimble package in its own file

Proposal
Put each nimble package in its own file/directory, or let each user create a subdirectory for themselves and put each package into one file.
Benefits

User only has to add a file to the repo instead of editing one big file. Multiple users can add packages without conflicts
Parser won't eventually be overwhelmed by packages (since Nim and nimble will be super popular one day!)
Better git history
If each user has their own directory, packages can be found easily by the same user (not that it isn't easy already with nimble search, but just browsing the github repo could be a fun discovery)

Downsides

Lots of files. But git can handle it.
Higher code complexity. Must write recursive directory walker and gather packages.

So what do you think? It's just an idea, but maybe it'll be of use?

You are talking about packages.json, right?

@Araq yep!

Sure, we can do this :)

Parser won't eventually be overwhelmed by packages
This is not correct. The most common searches are by package name, tag and words from the description.
Indexing the packages require scanning the whole packages.json file. With separate files this would require recursive walks and parsing a large number of manifest files which is even slower.

The usual solution for large archieves is to precompute index files centrally (essentially a keyword -> package name k/v map) and ship those. Yet, we are not going to need this for quite a while!

@FedericoCeratto You make a good point about the package scanner and it taking more time to do recursive walks, however, the main point (which I failed to emphasize) is the greater ease of use.
It's not happening so much now, but when lots of users start submitting lots of packages to Nim, there are potentially going to be many PRs for packages.json and many conflicts to resolve either by the user or by @dom96 and yourself, or whoever is maintaining it in the future.
Again, this is just an idea. If it makes things too difficult or my reasoning is faulty, maybe package.json fine the way it is. I haven't looked at the source, so maybe this is the most efficient way.

One potential drawback with this proposal is that you won't be able to as easily add a new package using just the GitHub web interface.

@dom96 that's true as well. It's pretty easy to just add a package like that.

You can still fairly easily add new packages using the GitHub UI by clicking Create new file, you just have to then copy the JSON (or whatever) structure into the editor.

@euantorano that's a good point as well. I'm still a proponent of this change and I'll look into the effort when I have some time.

@jyapayne I'll create a proposal on the Nimble issue tracker for a package publishing service.

@FedericoCeratto that would be equally awesome!

One potential drawback with this proposal is that you won't be able to as easily add a new package using just the GitHub web interface.

Actually you can create files through web interface.

You can also create a folder structure using tab though its not intuitive.

Problems
The packages.json file is getting bigger. It could become slow to parse. It is awkward to edit. It requires contributors to have a GitHub account. It requires PR approval to prevent package hijacking.
Also: sometimes GH repos ar deleted, and some countries block GitHub, and GitHub refuses to serve some other countries.
Proposal
Precompute index files centrally: a  ->  k/v map, to look up packages by keyword/tag; Also a  ->  map. Ship the two indexes as binary/compressed files for fast transfer and fast lookup time.
Run a simple service similar to pypi.org to handle package creation/update and generate the indexes. Initially it could feed from GH and/or use GH as a backend to store the indexes.
future goals
Store compressed tarballs of released packages. This is useful in case of dead repos, and in countries that block GitHub, and countries that GitHub refuses to serve.
Check URL / git repo existence before accepting a new package.
moonshot goals
Let package owners sign metadata. Also use the signature to allow allow owners to update/delete packages without having to store logins and passwords.
Verify signed tarballs from GH (and other sources) against the owner pubkey.
A pool of "admin" pubkeys is allowed to update/delete other packages.
A pool of "contributor" pubkeys can vet trusted packages by adding a "vote +1" signature. Nimble can warn before installing unvetted packages.

A small database is preferred over a directory because it can be: downloaded easily over plain http, replaced atomically on disk, checksummed to verify integrity, signed.
SQLite is supported by the stdlib, has a stable format, works cross-platform, has really good lookup timing.

Nothing is simpler than a directory structure. SQLite is a dependency and I would not wish to make Nimble depend on it.
Everything else sounds good to me on the surface. It'll be the details of how you implement this that I may disagree with, but just go for it :)

Any progress here? I'm learning Nim but found the package list is pretty ugly. Maybe we can separate it to single files using a script and compile them into a single json file using CI for backward compability. Use git or tarball to fetch the package repo is preferred by me though.


SA1313: Allow to use unlimited number of underscores in lambda expressions

For now the following expression raises no error
Func<int, bool> Do = _ => true;

But if you need the following expression an error occurs as double underscore "__" is not allowed.
Func<int, int, bool> Action = (_, __) => true;

Could you please add support for unlimited number of underscores in lambda expressions?

Duplicate of #1606


[FEA] Add an update-version.sh

Like other RAPIDS repos, it would be nice to have a script that bumps the patch version in the three places it's hardcoded:
https://github.com/rapidsai/pynvjitlink/blob/main/CMakeLists.txt#L5
https://github.com/rapidsai/pynvjitlink/blob/main/pynvjitlink/VERSION#L1
https://github.com/rapidsai/pynvjitlink/blob/main/pyproject.toml#L14
Concretely update_version.sh should += the patch version in these three places and possibly remind the user the commit the result.

Done in PR ( https://github.com/rapidsai/pynvjitlink/pull/44 )


[docs] rh-tag: fix example formatting under Best Practices

The best practices examples for <rh-tag> are formatted like this:

The border should be red and have an error/danger icon like this:

use {% example %} shortcode


CI: Caching

This PR strives to add caching to the CI. I've just blindly installed the action which supposedly has "sensible defaults". Let's see whether it reduced CI time.

Seems like we didn't get a cache hit on this first commit. I'll merge master in a few times over the next days and see if it makes a difference.

Woah! Finished in < 5 min! :fire:
I'm starting to think this is worth merging, at least to see how often we get useful cache hits.


about us page

Fixes #52
Describe the changes you've made
Redesigned about us page.
Describe if there is any unusual behaviour of your code(Write NA if there isn't)
NA
Additional context

https://navyasrisangem.github.io/Apni-Dukaan/
checklist

[yes ] I have mentioned related issue number in PR description.
[yes] I have added screenshots and related demo links of my changes..
[yes ] The title of my pull request is a short description of the requested changes.
[yes ] My code follows the code style of this project.
[ ] My change requires a change to the documentation.
[ ] I have updated the documentation accordingly.
[ ] Open Source Program names(OPTIONAL: If you participated in any open-source program then please mention the program name here)

Correct the navbar on the about us page.


Updated single line install to recreate temp directory when make is not installed

As the title says

Looks like this just adds rm -rf sexy-bash-prompt to the one-line install command. I'm not sure how to square that with your description. Can you explain a bit more please?

Sure! When we try the command without make installed, git creates the folder, so, to run again we need to delete this folder...
This change avoids it!

Arguably it would be better to explicitly list make as an installation dependency. In the "manual install" section we call make again.

This is clear when the install fails... But... When you run the single LINE install command again It fails because of the folder exists, the rm solves It!

I understand. What I'm suggesting is that you might not have had that problem if we had called out make as an install dependency.

:+1: to both proposed options. Even more options:

Switch from rm -rf sexy-bash-prompt && git clone to (test -d sexy-bash-prompt || git clone) to cut down on bandwidth reuse

It's very unlikely someone will be upgrading without having a wiped /temp folder

Drop make entirely, we aren't using it except as a large script container (would make PR much larger)

Example: Simple bash function wrapper -- ./install.sh (alias for default), ./install.sh default, ./install.sh symlink -- ./install.sh would have function _sexy_bash_prompt_install_default () and the last line would invoke said function

I disagree with this:
"It's very unlikely someone will be upgrading without having a wiped /temp folder"
Since the first time i run the command it fails because of not having make installed, my temp folder almost aways have the sexy-bash-prompt folder and the git clone command fails!

I think you might have missed the line above that one =/ That was in the context of switching from rm -rf sexy-bash-prompt && git clone to (test -d sexy-bash-prompt || git clone) to cut down on bandwidth reuse

What test -d folder does?

test is a built-in bash function which allows for performing various assertions. test -d verifies that a directory exists (in this case sexy-bash-prompt). We use the || to run git clone if it doesn't

Here's the documentation (same as man bash):
https://www.gnu.org/software/bash/manual/html_node/Bash-Conditional-Expressions.html
test can also be installed as a separate command (e.g. for sh) but bash has it built-in as mentioned

Nice! Changing...

@tnatanael :+1:
@rpdelaney How are you feeling on this PR? Is it good to land or do something about the make requirement (e.g. document, removal)?

This saturday i could make the install.sh script if you guys could w8 a little...

I have a moderate concern and a mild one.
Mild: [[ -d $thing ]] is a bit more idiomatic in bash than test -d "$thing". But the behavior should be the same in this case.
Moderate: Now that I've looked at it I feel like there's a growing smell about whether this is simple enough to be called a "one line install". A careful arrangement of nested subshells using && and || in place of "and" and "or" (which they aren't, really, especially when they are chained like this) will become unmaintainable if it grows any more complex than this. Do we need tests for our "one-line" install?
In other places I've seen the one-line install be curl -Ss https://github.com/path/to/raw/install.script | bash. I'm not sure where exactly to draw the line but I'm not sure what we had originally is preferable to that even before this PR.
Thoughts?

Using [[ ]] for conditionals is fine with me. I think I wrote test -d as it feels a little more human friendly for a command that's being copy/pasted
We're not using any logic or subshells except for the new || we just added. All the other && are for chaining commands, nothing more.
Manual testing is good enough for this case, it's not something we have a lot of edge cases for. I think this is either the first or second bug report ever and we've had one line install since the start
I'd prefer to avoid curl | bash. It's practical for large installs with lots of dependencies but also makes everyone a little more paranoid when copying/pasting. It's nice here as the auditing of the code is very obvious

To summarize my thoughts, let's:

Switch from test to [[ ]] as @rpdelaney would like (also helps with consistency with library)
Add make requirement documentation
Call it a day, we've spent so much time bikeshedding ._. :shipit:

I'm going to add these changes to the PR, then y'all can review and we can ship it =)

Alright, ready for review =)

First, a parting shot on the bikeshed:

I'd prefer to avoid curl | bash. It's practical for large installs with lots of dependencies but also makes everyone a little more paranoid when copying/pasting. It's nice here as the auditing of the code is very obvious

I share that concern, but I still have to look in the repo to read the Makefile if I want to know what's going happen as a result of the command we have, don't I? It seems like the workflow where we clone the repo and make install has the same concerns attached, since arbitrary code can be executed in a Makefile just as easily as in a bash script.
That said:
927fc97  is an uncontroversial improvement. Strict upgrades like that are rare in this life. Ship it!

Ah, great counterpoint @rpdelaney. I think at that point we fall into the hole where the entire curl | bash security concern falls apart, e.g. people should also read our entire source code, how do they know there isn't something malicious in the .bash_prompt =o
Cool, landing this PR :shipit:
Thanks for the discussion and work @tnatanael and @rpdelaney !


Does the powergate-docker support arm?

I downloaded powergate-docker, but after i run the make localnet,it occured "exec format error".If powergate-docker support arm support arm, where can i download it?

I've never compiled Powergate on ARM. I wouldn't expect that to be a problem, but yes, all Docker images we make are for x86_64/linux.
If you have an ARM machine, you could run: docker build -t powergate:arm . in the root of the powergate repo.

I've never compiled Powergate on ARM. I wouldn't expect that to be a problem, but yes, all Docker images we make are for x86_64/linux.
If you have an ARM machine, you could run: docker build -t powergate:arm . in the root of the powergate repo.

Thanks,i have complete images of powergate and go-ipfs, but i didn't find textile/lotus-devnet image or dockerfile,where can i find it?

Sure. The code of textile/lotus-devnet is here.
That build requires Rust, OpenCL so it's a bit hairier. I'm not even sure the Lotus dependencies might be compilable in ARM, but you'll soon discover. :)


When is the next meetup meeting?

I'm a developer with Triton. May I know when the next meetup meeting will be arranged? And how to attend it? Thanks a lot!

bro thinks its in team


Add benchmarks for various ways of indexing / iterating on an array

It would be useful to have benchmarks of .flat iteration vs .flat indexing vs. np.ndindex() vs plain range().

Fixed in 41bf073e5da519090e632c21a0fef7fd1d414f6d.


NFT example projects support

NFT Collection and NFT item added to toncli.
Quite a bit of tests and helpers related to nft messages and data standards.
Close to none documentation.
Enjoy!

Guys! Your current Codacy config seems to be using both markdownlint
And remark-lint.
Which have different views on how list items should be indented. One requires single space and the other requires 2.
Pick one please.

Jetton added

@Trinketer22 thanks, i've removed remark-lint from codacy


What is -haproxy.pid-file used for?

I can't find any information in README about it and -help only states

Path to haproxy's pid file.

Do I need it? When should I need it? I propose improving the -help message somewhat.

It's an optional flag. If you set it the exporter will export standard Prometheus process metrics about the HAProxy process. For that to work, the exporter will need read access to the HAProxy process procfs files.


Same collection but different sort order for each user

I have a collection of Issues and Users. Each user can be subscribed to some arbitrary number of issues, and multiple users could be watching the same issue. The intention is that on a user's individual dashboard they can drag and drop their specific watched issues and save the order (priority).
Right now if I add an "order" field to the Issues collection Sortable will work correctly, but will reorder everyone's list in the same order. I need the order to be associated with each user's watchlist of issues and be specific to that user. Is there a suggested solution for this usecase?

This has nothing to do with Sortable, but with your own implementation...

Nope.

Yes. I figured it out. Sorry for the spam. I used a separate collection to manage the watchlist, then pulled in the references from there. Thanks.


Change cachePath string declaration

What did I change?
Fixed a bug that prevented the use of the script when a url was sent. #49
When trying to send a url, the script gave an error when trying to write the cache file.
This is an example with my own website
./google-indexing-script/.cache/https_teenbiscuits.github.io_Pro2324/.json
Now this is the new output
./google-indexing-script/.cache/https_teenbiscuits.github.io_Pro2324.json
Now when converting from url to path and adding the .json ending, the residual "/" is also removed.
I'm a bit new to js so this is an easy patch for my use case.

I think it's better to do this inside the convertToFilePath as that already has a lot of logic around sanitisation. There's also one for / to replace with _, why did that not work though?

I don't know exactly, I think is because of convertToSiteUrl that still adds the last "/" but I realy dont know

I don't know exactly, I think is because of convertToSiteUrl that still adds the last "/" but I realy dont know

because if you print the value of convertToFilePath(siteUrl) it has the last "/"

I think it's because replace only replaces the first occurrence, can you try with replaceAll instead?

Okey. I had to change the lib from es2017 to es2021, to use ReplaceAll, but if you are okey with that is done.

👍


Germline study app helper used in cancer study app plugin tests

Namely get_pedigree_file_path(). This seems to be a copy-paste error. I'll fix this as a part of #1908.

Fixed.


streaming curve points bug

Please go to Stack Overflow for help and support:
https://stackoverflow.com/questions/tagged/tensorflow
If you open a GitHub issue, here is our policy:

It must be a bug, a feature request, or a significant problem with documentation (for small docs fixes please send a PR instead).
The form below must be filled out.
It shouldn't be a TensorBoard issue. Those go here.

Here's why we have that policy: TensorFlow developers respond to issues. We want to focus on work that benefits the whole community, e.g., fixing bugs and adding features. Support only helps individuals. GitHub also notifies thousands of people when issues are filed. We want them to see you communicating an interesting problem, rather than being redirected to Stack Overflow.

System information

Have I written custom code (as opposed to using a stock example script provided in TensorFlow): yes
OS Platform and Distribution (e.g., Linux Ubuntu 16.04): Linux Ubuntu 16.04
TensorFlow installed from (source or binary): source
TensorFlow version (use command below): 1.5
Python version: 2.7
Bazel version (if compiling from source):
GCC/Compiler version (if compiling from source):
CUDA/cuDNN version: 9/7
GPU model and memory: titan x 12g
Exact command to reproduce: eval_train_classifier.py

You can collect some of this information using our environment capture script:
https://github.com/tensorflow/tensorflow/tree/master/tools/tf_env_collect.sh
You can obtain the TensorFlow version with
python -c "import tensorflow as tf; print(tf.GIT_VERSION, tf.VERSION)"
Describe the problem
Describe the problem clearly here. Be sure to convey here why it's a bug in TensorFlow or a feature request.
In the metrics_ops, there is streaming_curve_points. I added it to evaluation below code.
Everything else works flawless, but the ROC curve doesn't.
Source code / logs
Include any logs or source code that would be helpful to diagnose the problem. If including tracebacks, please include the full traceback. Large logs and files should be attached. Try to provide a reproducible test case that is the bare minimum necessary to generate the problem.
Source code:
  # Define the metrics:     names_to_values, names_to_updates = slim.metrics.aggregate_metric_map({         'Accuracy': slim.metrics.streaming_accuracy(predictions, labels),         'FPs': slim.metrics.streaming_false_positives(predictions, labels),         'FNs': slim.metrics.streaming_false_negatives(predictions, labels),         'TPs': slim.metrics.streaming_true_positives(predictions, labels),         'TNs': slim.metrics.streaming_true_negatives(predictions, labels),         'AUC': slim.metrics.streaming_auc(predictions, labels),         'ROC curve': slim.metrics.streaming_curve_points(labels=labels,                                                          predictions=tf.cast(predictions, tf.float32)),     })
Logs:

2018-03-09 01:26:50.313306: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1206] Found device 0 with properties:                                                                                [157/1802]
name: GeForce GTX TITAN X major: 5 minor: 2 memoryClockRate(GHz): 1.2155
pciBusID: 0000:03:00.0
totalMemory: 11.92GiB freeMemory: 11.80GiB
2018-03-09 01:26:50.313398: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1300] Adding visible gpu device 0
2018-03-09 01:26:50.674278: I tensorflow/core/common_runtime/gpu/gpu_device.cc:987] Creating TensorFlow device (/job:localhost/replica:0/task:0/device:GPU:0 with 11431 MB memory) -> physical GPU (device: 0, name: GeForce GTX TITAN X, pci b
us id: 0000:03:00.0, compute capability: 5.2)
INFO:tensorflow:Restoring parameters from /tmp/glaucoma-models/resnet_v2_152_new/model.ckpt-3013
INFO:tensorflow:Evaluation [1/2]
INFO:tensorflow:Evaluation [2/2]
eval/FNs[21]
eval/FPs[11]eval/TNs[44]
eval/TPs[34]

eval/Accuracy[0.709090889]
Traceback (most recent call last):
File "eval_image_classifier.py", line 196, in
tf.app.run()
File "/root/anaconda2/lib/python2.7/site-packages/tensorflow/python/platform/app.py", line 124, in run
_sys.exit(main(argv))
File "eval_image_classifier.py", line 192, in main
variables_to_restore=variables_to_restore)
File "/root/anaconda2/lib/python2.7/site-packages/tensorflow/contrib/slim/python/slim/evaluation.py", line 212, in evaluate_once
config=session_config)
File "/root/anaconda2/lib/python2.7/site-packages/tensorflow/python/training/evaluation.py", line 212, in _evaluate_once
session.run(eval_ops, feed_dict)
File "/root/anaconda2/lib/python2.7/site-packages/tensorflow/python/training/monitored_session.py", line 651, in exit
self._close_internal(exception_type)
File "/root/anaconda2/lib/python2.7/site-packages/tensorflow/python/training/monitored_session.py", line 683, in _close_internal
h.end(self._coordinated_creator.tf_sess)
File "/root/anaconda2/lib/python2.7/site-packages/tensorflow/contrib/training/python/training/evaluation.py", line 311, in end
summary_str = session.run(self._summary_op, self._feed_dict)
File "/root/anaconda2/lib/python2.7/site-packages/tensorflow/python/client/session.py", line 895, in run
run_metadata_ptr)
File "/root/anaconda2/lib/python2.7/site-packages/tensorflow/python/client/session.py", line 1128, in _run
feed_dict_tensor, options, run_metadata)
File "/root/anaconda2/lib/python2.7/site-packages/tensorflow/python/client/session.py", line 1344, in _do_run
options, run_metadata)
File "/root/anaconda2/lib/python2.7/site-packages/tensorflow/python/client/session.py", line 1363, in _do_call
raise type(e)(node_def, op, message)
tensorflow.python.framework.errors_impl.InvalidArgumentError: tags and values not the same shape: [] != [200,2] (tag 'eval/ROC_curve')
[[Node: eval/ROC_curve = ScalarSummary[T=DT_FLOAT, _device="/job:localhost/replica:0/task:0/device:CPU:0"](eval/ROC_curve/tags, curve_points/stack_1/_5417)]]
Caused by op u'eval/ROC_curve', defined at:
File "eval_image_classifier.py", line 196, in
tf.app.run()
File "/root/anaconda2/lib/python2.7/site-packages/tensorflow/python/platform/app.py", line 124, in run
_sys.exit(main(argv))
File "eval_image_classifier.py", line 168, in main
op = tf.summary.scalar(summary_name, value, collections=[])
File "/root/anaconda2/lib/python2.7/site-packages/tensorflow/python/summary/summary.py", line 100, in scalar
val = _gen_logging_ops._scalar_summary(tags=tag, values=tensor, name=scope)
File "/root/anaconda2/lib/python2.7/site-packages/tensorflow/python/ops/gen_logging_ops.py", line 402, in _scalar_summary
"ScalarSummary", tags=tags, values=values, name=name)
File "/root/anaconda2/lib/python2.7/site-packages/tensorflow/python/framework/op_def_library.py", line 787, in _apply_op_helper
op_def=op_def)
File "/root/anaconda2/lib/python2.7/site-packages/tensorflow/python/framework/ops.py", line 3160, in create_op
op_def=op_def)
File "/root/anaconda2/lib/python2.7/site-packages/tensorflow/python/framework/ops.py", line 1617, in init
self._traceback = self._graph._extract_stack()  # pylint: disable=protected-access
InvalidArgumentError (see above for traceback): tags and values not the same shape: [] != [200,2] (tag 'eval/ROC_curve')
[[Node: eval/ROC_curve = ScalarSummary[T=DT_FLOAT, _device="/job:localhost/replica:0/task:0/device:CPU:0"](eval/ROC_curve/tags, curve_points/stack_1/_5417)]]

Nagging Assignee @sguada: It has been 14 days with no activity and this issue has an assignee. Please update the label and/or status accordingly.


Add support for Azure provider

Serverless 1.8 comes with Azure provider support. While it also requires Node >= 6.5.x, Babel support is less required, but also Azure functions could take the advantage of optimized code.
Currently, the deployment fails with error:
ENOENT: no such file or directory, stat
'/Users/juha/Projects/azure-test/_optimize/azure-test-dev-httpjs/functions/handler.js'

@juhamust Thanks for reporting this.
I don't work with Azure and I am super busy right now to dedicate time to whatever is required to be able to run SLS with azure provider. Will be faster if someone working already with Azure provider can have a play and fix.
PR's are very welcomed! 👍


Callback executing twice?

Originally reported in yoshuawuyts/choo#193:

I have an effect that calls multiple effects using run-waterfall. The "sub" effects use the choo/http module to make an http request. When the requests encounter an error, they return done('Bad request'). This error message bubbles up to the parent effect, which calls done(err) itself, bubbling it up to the application event handler, which logs an uncaught error.

The problem is the uncaught error is being logged twice. Here's a test case to demonstrate. If you switch out the http call with the setTimeout call, it only logs once. Also if you comment out the done(err) in the parent effect, it only logs once.

Am I crazy or is this unexpected behaviour?

@yoshuawuyts investigated and believes xhr is calling the callback twice. Would it be helpful to alter the test case to demonstrate it without choo? Or is this enough to diagnose?
Thanks for your help

I'll try to diagnose based on what you already have and lat you know in an hour.

Quick note: this only happens when used in choo, but not without it. There's no obvious interaction between the two libs tho so I've got no idea why xhr is calling back twice

I couldn't reproduce with just xhr either. In debugger now.
Sourcemaps in the testcase would help... ;)

Observation:
first call goes through this in callstack:
callback(...)
callback=noop

second call does
callback(...)

and is not invoking a noop function.
Possible explanations:

callback is somehow calling xhr again or changing state of the XMLHttpRequest object being handled before it returns
I'm going insane

Ok, found it.
Root cause is: if you throw inside xhr callback, the code that guarantees it runs only once does not execute.
I'll have a fix for that in minutes

Yay, nice! :grin:


Azure Pipelines as CI

PR Summary:
Adding Azure Pipelines as a new CI.
This is a draft PR for azure pipelines integration with foyer.
PR Checklist

[ ] Includes appropriate unit test(s)
[ ] Appropriate docstring(s) are added/updated
[ ] Code is (approximately) PEP8 compliant
[ ] Issue(s) raised/addressed?

Eventhough, the tests are failing, I think this PR is ready to be merged.

It has all tests along with a separate job for bleeding mbuild
It favors cmd to test in windows vs powershell also, it has a cron schedule that runs daily regardless of the code changes.

Could you merge master in?

Why is the AZP Windows_no_bleeding Python36 from the previous build still showing up in the status checks? This is happening in mbuild too.
Otherwise I think this is good to go. Feel free to merge this; I'll add in codecov/pytest results upload bit at some point, but I don't want to hold back this PR

Thanks @umesh-timalsina!


add idea

I enjoyed the story!

Oh thanks.
Le mar. 13 oct. 2020 à 12:01, Lilia Mehamli<EMAIL_ADDRESS>a
écrit :

Merged #91 https://github.com/openmindsclub/H4ckT0b3rF3st-2k20/pull/91
into main.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/openmindsclub/H4ckT0b3rF3st-2k20/pull/91#event-3870419997,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AOYVFDAUG5Q7SHXZX7DAFOTSKQQOJANCNFSM4SNKDVCA
.


Feature/83 remove password validation

Resolves #83

#83

I know, there will be a test that will be failing.
I just want to see whether test-pipeline is running for mobile/** file change.
Besides, I want to see whether test will return back Fail-result.
Namely, it's a kind of test-of-test.

I know, there will be a test that will be failing.

[x]  I just want to see whether test-pipeline is running for mobile/** file change.
[x]  Besides, I want to see whether test will return back Fail-result.

Namely, it's a kind of test-of-test.

Both are ok ✅


time value is incorrect

value in excel is 14:37:30 ,  why GetRows and Print it is 15:37:30?

Thanks for your issue. Which version of the Excelize library are you using? Could you follow the issue template, and show us a complete, standalone example program or reproducible demo? Could you provide your input file attachment without confidential info?

testxlsx.xlsx
I found  problem  cell format is [HH]:mm:ss


[Dialog] fix the modal tabindex

related to #17937 issue, Modal need to know the children tabindex if present

invalid fix


Cant use es6 imports in globalSetup

Do you want to request a feature or report a bug?
Bug
What is the current behavior?
my code base is written in es6 also my test files.
now i need to run a globalSetup script but i cant use es6 in it.
it throws SyntaxError: Unexpected token import
my jest config:
module.exports = {
  testEnvironment: 'node',
  globalSetup: './scripts/globalSetup.js',
};

What is the expected behavior?
globalSetup script run w/o errors;
Please provide your exact Jest configuration and mention your Jest, node,
yarn/npm version and operating system.
jest: 22.4.2
node: v8.9.4 LTS
yarn: 1.5.1
OS: Ubuntu 16.04

Duplicate of https://github.com/facebook/jest/issues/5164


Adds generic support additional OAuth providers

Proposed fix for #241  and #40
Adds additional OAuth providers, may need a refactor to reduct the boilerplate request code.
No coverage of the network request, needs to be tested against real keys and tokens unfortunately.
Because Facebook auth validation is refactored, the methodology should work for all other providers.

Twitter is a bit trickier because it requires header signature with OAuth1.

@nlutsenko there seems to be a problem with the test suite as it randomly fails after downloading a certain version of mongo-db... Not sure what's happening here.

Twitter is giving me some pain... Stupid OAuth 1.0

This is beautiful. :+1:

@gfosco, I'll refactor to pass just authData and options to both validation calls, it will be cleaner and more extensible

@gfosco refactor is done, adds ability also to pass custom modules as validators :) that will help with extensibility.

+1

YES! Please merge already.

+1

hi @flovilmart
I have a problem about twitter aouth.
I using like that.
curl -X POST
-H "X-Parse-Application-Id: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
-H "X-Parse-REST-API-Key: yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy"
-H "X-Parse-Revocable-Session: 1"
-H "Content-Type: application/json"
-d '{
"authData": {
"twitter": {
"id": "12345678",
"screen_name": "ParseIt",
"consumer_key": "SaMpLeId3X7eLjjLgWEw",
"consumer_secret": "SaMpLew55QbMR0vTdtOACfPXa5UdO2THX1JrxZ9s3c",
"auth_token": "12345678-SaMpLeTuo3m2avZxh5cjJmIrAfx4ZYyamdofM7IjU",
"auth_token_secret": "SaMpLeEb13SpRzQ4DAIzutEkCE2LBIm2ZQDsP3WUU"
}
}
}'
http://localhost/users
response come like that
{
"code": 200
"error": "bad or missing username"
}
What is my wrong ?
Thank you

@kkaradag2 I didn't test with the REST API, I'll add the according Unit tests to make sure that work. please stay tuned!

@flovilmart I finaly run twitter register. I notice that, git clone come someting is wrong or miss. I read carefully your comments and changes so I created a running version on m local.
Now I can work with parse-server but I want to say http://localhost:1337/users registration for twitter accounts need for check user already has. Because I can create one than more same user.
Thank you for your response.

@kkaradag2 does your bug reproduces with Facebook as well? this is maybe a more generalized bug

I didn't try to create a user with Facebok. May be yes this is a general problem with oauth. Because normal registration (username and password one) say
{
"code": 202
"error": "Account already exists for this username"
}
oauth registration needs same control.
Thank you

I'm adding more unit tests, but the logic should be exactly the same for any auth provider

is it  possible to share finalized  project files. I am trying git clone https://github.com/flovilmart/parse-server.git
May be I am clone wrong place.

not on master, but on the fix-241 branc

@kkaradag2 I added more tests to the REST API, it seems to be OK with a random custom provider.

@gfosco I had forgotten to add the keys in the transform.js. I refactored so all Facebook, anonymous use the same code path through a regexp the allowed names are [a-zA-Z0-9_]+.

@kkaradag2 is it working now with your test?

Hi @flovilmart ,
I am trying fix-214.   I just try on two enviorments windows server 2012 and ubuntu. All enviroment take some error.
ERROR :
kemal@kemal-VirtualBox:/parse/parse-server/src$ nodejs index.js
/parse/parse-server/src/index.js:14
import { GridStoreAdapter } from './Adapters/Files/GridStoreAdapter';
^^^^^^
SyntaxError: Unexpected reserved word
at Module._compile (module.js:439:25)
at Object.Module._extensions..js (module.js:474:10)
at Module.load (module.js:356:32)
at Function.Module._load (module.js:312:12)
at Function.Module.runMain (module.js:497:10)
at startup (node.js:119:16)
at node.js:902:3
kemal@kemal-VirtualBox:/parse/parse-server/src$
INSTALLATIONS:
git clone -b fix-214 https://github.com/flovilmart/parse-server.git
cd parse-server
npm install
cd parse-server\src
node index.js

Just took a quick spin trying out Twitter login on your fix-241 branch and there are 2 issues I've come across so far.
In twitter.js line:7,
instead of
var client = new OAuth(options);
it should be
var client = new OAuth(authData);
After this it correctly gets the twitter authData but I'm still facing a {"code":32,"message":"Could not authenticate you."} issue.
I'm guessing it might be due to incorrect HMAC signing or some missing parameter. I'll try to investigate this further and get back.

@tanmays :

instead of
 client.auth_token = authData.access_token;
 it should be
 client.auth_token = authData.auth_token;

That is on purpose, the original SDK uses access_token instead of auth token.

var client = new OAuth(options);
Did you properly initialized twitter auth options with:

{
...
oauth: {
 twitter: {
    consumer_key: "",
    consumer_secret: ""
  }
}
}

This is actually by design so the consumer key and secret are validated on the server instead of using the ones passed from the client.

@flovilmart
Just checked. From the Parse REST guide here: https://parse.com/docs/rest/guide#users-twitter-code-authdata-code-
Twitter uses auth_token whereas Facebook uses access_token
Original request is in format:
"authData": {
          "twitter": {
            "id": "12345678",
            "screen_name": "ParseIt",
            "consumer_key": "SaMpLeId3X7eLjjLgWEw",
            "consumer_secret": "SaMpLew55QbMR0vTdtOACfPXa5UdO2THX1JrxZ9s3c",
            "auth_token": "12345678-SaMpLeTuo3m2avZxh5cjJmIrAfx4ZYyamdofM7IjU",
            "auth_token_secret": "SaMpLeEb13SpRzQ4DAIzutEkCE2LBIm2ZQDsP3WUU"
          }
        }

As for 2nd problem on Twitter.js:line:9
On passing options to OAuth here's the error that I'm getting:
error: [TypeError: Cannot read property 'consumer_key' of undefined]
Uncaught internal server error. [TypeError: Cannot read property 'consumer_key' of undefined] TypeError: Cannot read property 'consumer_key' of undefined
    at new OAuth (/Users/tanmay/parse-server/parse-server-example/node_modules/parse-server/lib/oauth/OAuth1Client.js:7:30)
    at validateAuthData (/Users/tanmay/parse-server/parse-server-example/node_modules/parse-server/lib/oauth/twitter.js:10:16)
    at RestWrite.handleOAuthAuthData (/Users/tanmay/parse-server/parse-server-example/node_modules/parse-server/lib/RestWrite.js:264:10)
    at RestWrite.validateAuthData (/Users/tanmay/parse-server/parse-server-example/node_modules/parse-server/lib/RestWrite.js:167:19)
    at /Users/tanmay/parse-server/parse-server-example/node_modules/parse-server/lib/RestWrite.js:81:18
    at process._tickDomainCallback (node.js:411:9)

Here's a log of my request:
POST /parse/users/ { host: 'localhost:1337',
  'content-type': 'application/json',
  'content-length': '379',
  connection: 'keep-alive',
  accept: '*/*',
  'user-agent': 'CocoaRestClient/14 CFNetwork/760.2.6 Darwin/15.3.0 (x86_64)',
  'x-parse-application-id': 'Qijjm4viFSG7jL92TGyNkLtPcZzJxQp2ZSrdgj1y',
  'accept-language': 'en-us',
  'accept-encoding': 'gzip, deflate' } {
  "authData": {
    "twitter": {
      "auth_token": "<snipped>",
      "id": "14227194",
      "screen_name": "tanmays",
      "consumer_key": "<snipped>",
      "consumer_secret": "<snipped>",
      "auth_token_secret": "<snipped>"
    }
  }
}

I am sending my request correctly, if you do a console log for options you'll find it's empty. So client object is created without any authData. Passing authData correctly creates the client object and the Twitter login works.

@tanmays that's exactly what I mean, when setting up ParseServer, you have to pass the object I just mentioned as OAuth parameters to make sure the twitter app is completely configured server side as it's unsafe to rely on the client side passed options.
var options = {
   appId: "XXXX",
   masterKey: "XXX",
   oauth: {
       twitter: {
          consumer_key: "XXXX",
          consumer_secret: "YYYY",
       }
   }
}

var server = new ParseServer(options);

I'll update with the code with the auth_token instead of access_token

@tanmays I've updated the code to use the client passed auth token and secret but that's pretty unsafe IMHO. The consumer_key and consumer_secret should be specified server side.

Ahh I see. Just tried and it's working. Thanks for all the hard work. Cheers!

@gfosco this one seems to be working and stable enough for merging. What do you think?

One last thing :) Can you add something about this in the README covering the options here?

yeah sure, my bad :)

Hey total beginner here. How might one utilize this via the iOS/Android Client SDK's?
Does this give the ability for my users to continue using twitter login as seamlessly as Facebook post-migration?
If not, what would have to be done to implement these advantages in the Parse Client SDK's?

@FridayDevGroup there is a gist there: https://gist.github.com/flovilmart/68a6c538496953408bb1 with the example for the twitter login

@flovilmart Thank you very very much. That example is gorgeous. So for the Twitter users currently registered to my app, this will query and return the user account created pre-migration? Apologies if the answer to that is ubiquitous.

@FridayDevGroup it definitely should. The original SDK also pass the consumer_key and consumer_secret alongside the authData, you can pass them also but that's optional as the token verification is made based on the oauth configuration as described in the readme.

@flovilmart Awesome, thank you. I'm going to get going with all of this soon. About the readme, I tried to take a look at the example links you dropped in there earlier and they're all returning 404. I think they may have gotten moved around when the Parse-Server folder restructuring pr got merged, but I couldn't track down the new locations.

@FridayDevGroup it's because it's not merged yet :) On another point, you should not need those links :)

@flovilmart Yeah.. I had a feeling it was my own misunderstanding haha. Thanks again for the guidance.

no problemo!

Hello @flovilmart
I'm not sure if this issue is related with oAuth specifically or the parse save function but here's what I'm facing.
I'm trying to link a Twitter account to an existing parse account using Cloud Code and I'm getting a code: 206, message: 'cannot modify user error.
It seems a request.user.save() function when run within Cloud Code does not pass the sessionToken in this case.
Here's my request:
PUT /parse/classes/_User/NSME8tT0tf { 'user-agent': 'node-XMLHttpRequest, Parse/js1.7.0 (NodeJS 4.2.6)',
  accept: '*/*',
  'content-type': 'text/plain',
  host: 'localhost:1337',
  'content-length': '500',
  connection: 'close' } {
  "authData": {
    "twitter": {
      "auth_token": "<snipped>",
      "id": "<snipped>",
      "screen_name": "<snipped>",
      "consumer_key": "<snipped>",
      "consumer_secret": "<snipped>",
      "auth_token_secret": "<snipped>"
    }
  }
}

Here's my cloud code
< Code to cleanup a few here is omitted >

request.user.set("authData", socialAuthData);
// Save user
request.user.save({useMasterKey:true}).then(function(userObject) {
  response.success(userObject);
  }, function(error) {
    console.log("Unable to save current user" + error.message);
    response.error("There was a problem creating your account, please try again");
});

Specifying a master key too doesn't help and I still get the 206 error code which is for missing sessionToken.

I don't think you can explicitly set authData like that. What does the JS SDK suggest for linking?

Just tried it again with useMasterKey:true and it worked. I think any changes made to request.user within a cloud code function will still need to use the masterkey. I think one shouldn't be required to use masterKey to modify request.user objects, what do you think? Should I open this as a separate issue?
Anyhow this issue thankfully isn't related to this pull request, hope this gets merged asap.

Can you try on the master branch with a Facebook auth data? See if it's a regression or not.

Looks awesome! Thanks a lot @flovilmart

:tada: !

Whee!! We finally have it!

Ahah! I'm drinking a beer to cheer on that! :beers: for everyone at Parse HQ!

What about adding documentation for this?

Lot going on here but not enough documentation, so is the new syntax for index.js as such:
    auth: { 	    facebook: {             appIds: ["XXXXXXXXXX"] 	    }     },     oauth: {         twitter: {         consumer_key: "XXXXXXXXXX",         consumer_secret: "XXXXXXXXXX"     },

oauth is deprecated in favor of auth.

Ok so does that mean Parse Server doesn't support Twitter login? I thought this was covered in #247
Something like this, didn't work either
    auth: {
	    facebook: {
            appIds: ["XXXXXXXXXXXXXXXXx"]
	    },
        twitter: {
            consumer_key: "XXXXXXXXXXXXXXXXx",
            consumer_secret: "XXXXXXXXXXXXXXXXx"
        }
    },

It just means that parse-server prefers the auth option instead of oauth. It doesn't change what's supported, just the option name.

Alright. So is there any documentation to follow because the above code doesn't seem to work.


Fix ModeChanged triggered by

This also fixes another problem that changing the motion force of an operator triggers ModeChanged twice.


upgrade spring boot to 1.5.7

Most API changes should relate to Spring Data Starter.

Already updated. https://github.com/Microsoft/azure-spring-boot/blob/0.1.x/azure-spring-boot-parent/pom.xml#L30


fix: avoid errors if no pipeline user defined in requirements

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by:
To complete the pull request process, please assign jstrachan
You can assign the PR to them by writing /assign @jstrachan in a comment when ready.
The full list of commands accepted by this bot can be found here.

Needs approval from an approver in each of these files:

OWNERS

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


latest XAML install has rendered VS 2017 Unusable

I've already reported the details on the failed pm install; now I can't build a WinForm project that is not using anything but standard features. I have followed the instructions given for setting the pm options at the recommended link 322105/l no improvement.
Severity	Code	Description	Project	File	Line	Suppression State
Error		This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them.  For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is ..\packages\Microsoft.UI.Xaml.2.0.181018003\build\Microsoft.UI.Xaml.props.	MultiPanel 2018	C:\Users\test_user\Desktop\Google Drive\VS 2016\MultiPanel 2018\MultiPanel 2018\MultiPanel 2018.csproj	175

Issue moved to NuGet/Home #7543 via ZenHub


Import-Csv / ConvertFrom-Csv misinterpret a double-quoted hash  (#) as starting a comment line

Follow-up from #13857:
In #2480, a deliberate enhancement was introduced for ignoring one or more #-prefixed comment (metadata) lines at the start of data passed to Import-Csv / ConvertFrom-Csv, so as to support common logging file formats.
However, the detection of such comment lines is overzealous in that even a double-quoted # ("#" as opposed to #) as the first non-whitespace token at the start of the line is misidentified as a comment.
For instance, the following valid CSV data is mishandled:
"#Tag","Name"
"10","foo"

(An unquoted # at the start of the line can similarly be part of a valid header row, though in that case there is unavoidable ambiguity, and defaulting to interpretation as a comment line, as is already the case, is defensible. Fortunately, Export-Csv and ConvertTo-Csv always double-quote fields by default.)
Steps to reproduce
[pscustomobject]@{ '#Tag' = 10; Name = 'foo' } | ConvertTo-Csv | ConvertFrom-Csv |
  ConvertTo-Json -compress | Should -Be '{"#Tag":"10","Name":"foo"}'

Expected behavior
The test should succeed due to successful round-trip conversion to and from CSV.
Actual behavior
The test fails, because the first line is misidentified as a comment, despite the # being double-quoted.
Expected '{"#":"10","Name":"foo"}', but got $null.

Environment data
PowerShell Core 7.1.0-rc.2

@mklement0 I don't understand why you open the issue if this was approved and implemented as by-design. For several years, no one has brought an important scenario for which it would be worth changing something. As soon as such a scenario appears, we can start a discussion on the merits

@iSazonov: Treating a double-quoted # as the start of a comment line isn't by design - it is a bug, and that's what this issue is about.
In no language / file format where # is used as the line-initial comment / annotation sigil does "#" work as well - obviously, it shouldn't.

@iSazonov, I've updated the OP to make it clearer that this is only about "#",  not about #` - let me know if anything is still unclear.

There one parser is used for all lines and it was design decision.

By relabeling to "up-for-grabs" I see that you now agree that this should be fixed, but just to spell it out: whether it was by design or not, the current behavior, as described in the OP, is flawed.
Yes, some refactoring is needed, but I'm pretty sure it's not that hard and can be done without a noticeable impact on performance.
Just to throw a quick idea out there: add a bool out parameter named firstValueWasDoubleQuoted to ParseNextRecord() that tells the caller whether the first non-whitespace token was double-quoted - if it was, the row is by definition not a comment.

I had the same problem.
This issue mentions a header, but the same problem occurs in the first line of the csv
$csv_header = @("key", "value")
$csv = @"
#1,aaa
2,bbb
3,ccc
"@ | ConvertFrom-Csv -Header $csv_header

$csv
key value
--- -----
2   bbb
3   ccc

# Nothing on the first line.

$var1="#aaa"
$var2="bbb"
$array = @($var1, $var2)
$csv_header = @("key", "value")
$csv = $array -join "," | ConvertFrom-Csv -Header $csv_header

$csv
# Nothing

In cases like the second one, the first item may unintentionally start with #, in which case some may not even notice the problem
PowerShell 7.3.3


Add spanish language

Thought it would be nice to also have Spanish as an option. I used the diceware list by Manuel Palao, CISM, CISA<EMAIL_ADDRESS>found on http://world.std.com/~reinhold/diceware_espanol/DW-Espanol-2.txt.

Pushed!  Thank you for the pull request.  Thanks also for updating the SRI hashes.  I tested them just now with:
https://sritest.io/#report/0b623db6-a879-44a8-81a5-4625e4279a79

My pleasure!! Didn't know about sritest.io, thanks for sharing it... and good work with this repo, I found it very useful.


Exempt Views from CSRF verification

fix conflict of #4 by @Alir3z4

if fails only python 3.2 test. strange

Dropped support for Python 3.2

@bskim45 thanks

awesome
===================================================
김범수 Bumsoo Kim
Dept. Computer Science & Engineering, POSTECH
PoApper (Developers Network of POSTECH)
ENP (Entrepreneurs Network of POSTECH)
(+82) 10-9094-0869
http://bsk.im
<EMAIL_ADDRESS>On Mon, Dec 28, 2015 at 10:13 PM, José Padilla<EMAIL_ADDRESS>wrote:

Merged #5 https://github.com/jpadilla/django-jwt-auth/pull/5.
—
Reply to this email directly or view it on GitHub
https://github.com/jpadilla/django-jwt-auth/pull/5#event-501320580.


hyper client happens cacel error which should retry

Version
List the version(s) of hyper, and any relevant hyper dependency (such as h2 if this is related to HTTP/2).
hyper = { version = "1.1.0", features = ["full"] }
hyper-util = { version = "0.1.3", features = ["full"] }
Platform
The output of uname -a (UNIX), or version and 32 or 64-bit (Windows)
linux 64
Description
hyper client happens cacel error which should retry
[short summary of the bug]
  let mut connector = HttpConnector::new();
    connector.set_nodelay(true);
    //禁止使用该功能，其会在拿到IPV6和IPV4的时候优先尝试链接IPV6
    connector.set_happy_eyeballs_timeout(None);
    connector.set_connect_timeout(Some(Duration::from_millis(constant::constant_config::CONNECT_TIME_OUT)));
    // connector.set_send_buffer_size(Some(constant::constant_config::BUFFER_SIZE));
    // connector.set_recv_buffer_size(Some(constant::constant_config::BUFFER_SIZE));
    connector.set_reuse_address(true);

    //hyper_util::rt::TokioExecutor::new() 是否会导致上下文切换更多？
    let http_client = Client::builder(TokioExecutor::new())
        .http1_preserve_header_case(true)
        .http1_title_case_headers(false)
        .pool_idle_timeout(Duration::from_millis(constant::constant_config::CLIENT_IDLE_TIME_OUT)) //空闲链接
        // .pool_max_idle_per_host(constant::constant_config::MAX_IDLE_CONNECTIONS_PER_HOST_HTTP_ALL)
        // .executor()
        // .http1_max_buf_size(constant::constant_config::BUFFER_SIZE)
        .http1_ignore_invalid_headers_in_responses(false)
        .http1_allow_spaces_after_header_name_in_responses(false)
        .http1_allow_obsolete_multiline_headers_in_responses(false)
        .timer(TokioTimer::default())
        .pool_timer(TokioTimer::default())
        .build(connector);

    http_client

when  use http_client send request,i got some error message as follows:
request::error("message", "Error { kind: SendRequest, source: Some(hyper::Error(Canceled, \"connection closed\")) }"
equest::error("message", "Error { kind: SendRequest, source: Some(hyper::Error(Canceled, \"connection was not ready\")) }")

retry_canceled_requests default is true, i think it should not happen these errors

i found the error msg from the drop func,just as follow
if Envelope still has req, it means req never send ,should it has the chance to retry?
struct Envelope<T, U>(Option<(T, Callback<T, U>)>);
impl<T, U> Drop for Envelope<T, U> {
fn drop(&mut self) {
if let Some((val, cb)) = self.0.take() {
cb.send(Err((
crate::Error::new_canceled().with("connection closed"),
Some(val),
)));
}
}
}

hyper client idle timeout is 20s,and server is tomcat,default keep alive timeout is 60s, it should not cause connection close error

interesting,keep eye on it

   async fn send_request(
        self,
        mut req: Request<B>,
        pool_key: PoolKey,
    ) -> Result<Response<hyper::body::Incoming>, Error> {
        let mut pooled = self.connection_for(pool_key).await?;

        req.extensions_mut()
            .get_mut::<CaptureConnectionExtension>()
            .map(|conn| conn.set(&pooled.conn_info));

        if pooled.is_http1() {
            if req.version() == Version::HTTP_2 {
                warn!("Connection is HTTP/1, but request requires HTTP/2");
                return Err(e!(UserUnsupportedVersion));
            }

            if self.config.set_host {
                let uri = req.uri().clone();
                req.headers_mut().entry(HOST).or_insert_with(|| {
                    let hostname = uri.host().expect("authority implies host");
                    if let Some(port) = get_non_default_port(&uri) {
                        let s = format!("{}:{}", hostname, port);
                        HeaderValue::from_str(&s)
                    } else {
                        HeaderValue::from_str(hostname)
                    }
                    .expect("uri host is valid header value")
                });
            }

            // CONNECT always sends authority-form, so check it first...
            if req.method() == Method::CONNECT {
                authority_form(req.uri_mut());
            } else if pooled.conn_info.is_proxied {
                absolute_form(req.uri_mut());
            } else {
                origin_form(req.uri_mut());
            }
        } else if req.method() == Method::CONNECT {
            authority_form(req.uri_mut());
        }

        let fut = pooled.send_request(req);
        //.send_request_retryable(req)
        //.map_err(ClientError::map_with_reused(pooled.is_reused()));

        // If the Connector included 'extra' info, add to Response...
        let extra_info = pooled.conn_info.extra.clone();
        let fut = fut.map_ok(move |mut res| {
            if let Some(extra) = extra_info {
                extra.set(res.extensions_mut());
            }
            res
        });

        // As of<EMAIL_ADDRESS>there is a race condition in the mpsc
        // channel, such that sending when the receiver is closing can
        // result in the message being stuck inside the queue. It won't
        // ever notify until the Sender side is dropped.
        //
        // To counteract this, we must check if our senders 'want' channel
        // has been closed after having tried to send. If so, error out...
        if pooled.is_closed() {
            return fut.await;
        }

        let res = fut.await?;

        // If pooled is HTTP/2, we can toss this reference immediately.
        //
        // when pooled is dropped, it will try to insert back into the
        // pool. To delay that, spawn a future that completes once the
        // sender is ready again.
        //
        // This *should* only be once the related `Connection` has polled
        // for a new request to start.
        //
        // It won't be ready if there is a body to stream.
        if pooled.is_http2() || !pooled.is_pool_enabled() || pooled.is_ready() {
            drop(pooled);
        } else if !res.body().is_end_stream() {
            //let (delayed_tx, delayed_rx) = oneshot::channel::<()>();
            //res.body_mut().delayed_eof(delayed_rx);
            let on_idle = future::poll_fn(move |cx| pooled.poll_ready(cx)).map(move |_| {
                // At this point, `pooled` is dropped, and had a chance
                // to insert into the pool (if conn was idle)
                //drop(delayed_tx);
            });

            self.exec.execute(on_idle);
        } else {
            // There's no body to delay, but the connection isn't
            // ready yet. Only re-insert when it's ready
            let on_idle = future::poll_fn(move |cx| pooled.poll_ready(cx)).map(|_| ());

            self.exec.execute(on_idle);
        }

        Ok(res)
    }

        // As of<EMAIL_ADDRESS>there is a race condition in the mpsc
        // channel, such that sending when the receiver is closing can
        // result in the message being stuck inside the queue. It won't
        // ever notify until the Sender side is dropped.
        //
        // To counteract this, we must check if our senders 'want' channel
        // has been closed after having tried to send. If so, error out...
        if pooled.is_closed() {
            return fut.await;
        }

then
Is mpsc::UnboundedSender dropped causing this problem?
Any suggestions for modifications?


Search patterns with \V are case sensitive with smartcase

Describe the bug
Search patterns with \V (i.e. switching to very nomagic mode) are considered capital, and therefore case sensitive with smartcase.
To Reproduce
Detailed steps to reproduce the behavior:

Run vim --clean
Set ignorecase and smartcase
Enter the following text:

abc
Abc
ABC

Search for \Vabc, and press n to find all matches
Only the first line is matched

Expected behavior
\Vabc is a all-lowercase pattern, so it should match case-insensitively, and therefore matching all three lines.
Environment (please complete the following information):

Vim version: 8.2.3281
OS: Gentoo Linux

I believe this is a regression caused by v8.2.3265 (#8682), and the offending code is the following block:
else if (*p == '\\' && magic_val == MAGIC_ON)
{
    if (p[1] == '_' && p[2] != NUL)  // skip "\_X"
	p += 3;
    else if (p[1] == '%' && p[2] != NUL)  // skip "\%X"
	p += 3;
    else if (p[1] != NUL)  // skip "\X"
	p += 2;
    else
	p += 1;
}

Here, \X with alphabetic X should be skipped over independent of the magic mode.

fix should be in #8707

Morality: don't set Very Magic :-P
I set 'smartcase' in my vimrc, and various ftplugins (including help.vim and html.vim) use 'ignorecase' but I always remain at the default Magic value when searching.
What I sometimes do is use a pattern with \C when I want to find only lowercase matches.
Best regards,
Tony.


Move ruby_install to languages cookbook.

Ping @chef-cookbooks/delivery-migration-team
Relates to https://github.com/chef-cookbooks/languages/pull/4
TODO

[x] Remove chef-install installation since chef_install does that for you now? Main difference between this and languages implementation is -j #{node.builders}. https://github.com/chef-cookbooks/omnibus/blob/master/recipes/_ruby.rb#L38-L46

This PR has passed 'Verify' and is ready for review and approval!
Use: '@delivery approve' when code review is complete.

We should be able to validate this by running:
kitchen verify default-ubuntu-1404

I think we need to nuke:
https://github.com/chef-cookbooks/omnibus/blob/aedb966e1507c048572f3ff1ee642d93d2c0de14/recipes/_ruby.rb#L38-L46

This PR has passed 'Verify' and is ready for review and approval!
Use: '@delivery approve' when code review is complete.

:+1:

This PR has passed 'Verify' and is ready for review and approval!
Use: '@delivery approve' when code review is complete.

This PR has passed 'Verify' and is ready for review and approval!
Use: '@delivery approve' when code review is complete.

This PR has passed 'Verify' and is ready for review and approval!
Use: '@delivery approve' when code review is complete.

@delivery approve

Change: ca3d01fb-0bea-489c-a0de-ab3d3247c9b8 approved by: @schisamo

This PR has passed 'Acceptance' and is ready to be delivered!
Use: '@delivery deliver' when validated in acceptance.

@delivery deliver

Change: ca3d01fb-0bea-489c-a0de-ab3d3247c9b8 delivered by: @schisamo