Update AnnotationBean.java delete duplicate code

delete useless code
What is the purpose of the change
delete useless code
Brief changelog
XXXXX

duplicate code
Verifying this change
XXXXX
Follow this checklist to help us incorporate your contribution quickly and easily:

[x] Make sure there is a GITHUB_issue field for the change (usually before you start working on it). Trivial changes like typos do not require a GITHUB issue. Your pull request should address just this issue, without pulling in other changes - one PR resolves one issue.
[ ] Format the pull request title like [Dubbo-XXX] Fix UnknownException when host config not exist #XXX. Each commit in the pull request should have a meaningful subject line and body.
[ ] Write a pull request description that is detailed enough to understand what the pull request does, how, and why.
[ ] Write necessary unit-test to verify your logic correction, more mock a little better when cross module dependency exist. If the new feature or significant change is committed, please remember to add integration-test in test module.
[ ] Run mvn clean install -DskipTests=false & mvn clean test-compile failsafe:integration-test to make sure unit-test and integration-test pass.
[ ] If this contribution is large, please follow the Software Donation Guide.

Codecov Report

Merging #3021 into master will increase coverage by 0.08%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master    #3021      +/-   ##
==========================================
+ Coverage   64.24%   64.33%   +0.08%
==========================================
  Files         584      584
  Lines       26056    26056
  Branches     4562     4562
==========================================
+ Hits        16740    16762      +22
+ Misses       7132     7111      -21
+ Partials     2184     2183       -1

Impacted Files
Coverage Δ

.../remoting/transport/netty4/NettyClientHandler.java
75% <0%> (-11.12%)
:arrow_down:

...in/java/org/apache/dubbo/common/utils/JVMUtil.java
73.58% <0%> (-7.55%)
:arrow_down:

...he/dubbo/remoting/transport/netty/NettyServer.java
67.85% <0%> (-3.58%)
:arrow_down:

...org/apache/dubbo/rpc/protocol/AbstractInvoker.java
62.9% <0%> (-3.23%)
:arrow_down:

...a/org/apache/dubbo/monitor/dubbo/DubboMonitor.java
87.85% <0%> (-1.87%)
:arrow_down:

...he/dubbo/registry/multicast/MulticastRegistry.java
63.79% <0%> (-1.73%)
:arrow_down:

...pache/dubbo/registry/support/AbstractRegistry.java
80.82% <0%> (-0.38%)
:arrow_down:

.../java/org/apache/dubbo/config/ReferenceConfig.java
56.39% <0%> (+0.37%)
:arrow_up:

...dubbo/remoting/exchange/support/DefaultFuture.java
68.45% <0%> (+0.67%)
:arrow_up:

...apache/dubbo/rpc/protocol/dubbo/DubboProtocol.java
66.66% <0%> (+0.83%)
:arrow_up:

... and 9 more

Continue to review full report at Codecov.

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

I don't quite understand.

Looks good to me.

AnnotationBean is deprecated, never should be used again.


Added --no-metada-server option

Sometimes autodetection of metadata servers can stall on particular
network configuration. This option bypass it and force a cluster mode.

New images to test are at https://ocd.appscale.com:8080/job/All-Image-Formats/323/

Run tests https://github.com/AppScale/appscale-testing/pull/262 and results are https://ocd.appscale.com:8080/job/All-Image-Formats/325/ https://ocd.appscale.com:8080/view/All/job/KVM-test-faststart/2/

OCD daily run https://ocd.appscale.com:8080/job/Daily Build/4109/
All-images build https://ocd.appscale.com:8080/job/All-Image-Formats/327/
new kvm test https://ocd.appscale.com:8080/view/All/job/KVM-test-faststart/4/
the sleep seems to be needed to allow the system to settle (possibly cloud-init?)

New OCD build used to test the new QA tests: https://ocd.appscale.com:8080/job/Daily Build/4151/


it's possible to return raw array insted of numbered elements?

i have a field called email that is an array with multiple emails,when i print the getValidData the result is:
Array
(
    [email.0] =><EMAIL_ADDRESS>    [email.1] =><EMAIL_ADDRESS>)

it's possible to only return the 'raw' array of the valid emails?
something like this:
[email] => Array
        (
            [0] =><EMAIL_ADDRESS>            [1] =><EMAIL_ADDRESS>        )

used this rule:
'email.*' => 'required|email'

No it's not possible right now. But we can provide that using Rakit\Validation\Helper::arraySet.
But I should have done my deadline right now. I would add this after that.

This fixed in v0.17.1 (#38). I will close this. You can open it again if it doesn't works.


python310Packages.vivisect: 1.0.8 -> 1.1.0

Automatic update generated by nixpkgs-update tools. This update was made based on information from passthru.updateScript.
meta.description for python310Packages.vivisect is: Pure python disassembler, debugger, emulator, and static analysis framework
meta.homepage for python310Packages.vivisect is: https://github.com/vivisect/vivisect
Updates performed

Ran passthru.UpdateScript

To inspect upstream changes
Impact

Checks done (click to expand)

built on NixOS
The tests defined in passthru.tests, if any, passed
found 1.1.0 with grep in /nix/store/nclvazgln0xcx0h4lcyjvza6piacnaf6-python3.10-vivisect-1.1.0
found 1.1.0 in filename of file in /nix/store/nclvazgln0xcx0h4lcyjvza6piacnaf6-python3.10-vivisect-1.1.0

Rebuild report (if merged into master) (click to expand)

6 total rebuild path(s)

6 package rebuild(s)

First fifty rebuilds by attrpath
flare-floss
python310Packages.viv-utils
python310Packages.vivisect
python311Packages.viv-utils
python311Packages.vivisect
vivisect

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/nclvazgln0xcx0h4lcyjvza6piacnaf6-python3.10-vivisect-1.1.0 \
  --option binary-caches 'https://cache.nixos.org/ https://nix-community.cachix.org/' \
  --option trusted-public-keys '
  nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

(The Cachix cache is only trusted for this store-path realization.)
For the Cachix download to work, your user must be in the trusted-users list or you can use sudo since root is effectively trusted.
Or, build yourself:
nix-build -A python310Packages.vivisect https://github.com/r-ryantm/nixpkgs/archive/e7a6b17d575040d4682cc0d92fda5bec28a38263.tar.gz

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/nclvazgln0xcx0h4lcyjvza6piacnaf6-python3.10-vivisect-1.1.0
ls -la /nix/store/nclvazgln0xcx0h4lcyjvza6piacnaf6-python3.10-vivisect-1.1.0/bin

Pre-merge build results
We have automatically built all packages that will get rebuilt due to
this change.
This gives evidence on whether the upgrade will break dependent packages.
Note sometimes packages show up as failed to build independent of the
change, simply because they are already broken on the target branch.
Result of nixpkgs-review run on x86_64-linux 1

6 packages built:

flare-floss
python310Packages.viv-utils
python310Packages.vivisect
python311Packages.viv-utils
python311Packages.vivisect
vivisect

Maintainer pings
cc @cole-h @grahamc @Hoverbear @lheckemann for testing.

Result of nixpkgs-review pr 218088 run on x86_64-linux 1

6 packages built:

flare-floss
python310Packages.viv-utils
python310Packages.vivisect
python311Packages.viv-utils
python311Packages.vivisect
vivisect


Can I use this in production environment?

Hello,
Can I use this in production environment? When you will do an release?
Thanks.

Hello,
yes you can use it in production environment.
i hope to find people with this project to extension the original project and work from wiredesignz, they have no code added since 2015 in this own project.
i have make little fixes in the code and bring PHP PSR 1-2 standards in code,
i make little fixes to run this code at different php versions, regarding outdated php function in version 7.
If you want the original code you can find in my project under the branch "untouched" or you use the original code from the original developer from here https://bitbucket.org/wiredesignz/codeigniter-modular-extensions-hmvc
Also you can use this project from me, i have added this HMVC project to Codeigniter 3.1.10 https://github.com/N3Cr0N/CodeIgniter-HMVC
Kind regards

What issues do you want to resolve until release it?

It is released, i have found no bugs at the moment in the "master" and "php-backward" branch, i hope more people make a look at the code, and checked the code or/and found bugs or/and extended the code.
The "Support-Namespaces" branch is a copy of a commit at bitbucket, at the moment i have not the time to checked this code function.


Need to restore Everything.

Need to restore Everything.

Try using the system restore point that’s created when running the GUI.
Sent from my iPhone

On Apr 4, 2021, at 3:35 AM, YusufSuleman @.***> wrote:

Need to restore Everything.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub, or unsubscribe.

@YusufSuleman - did this help resolve your issue, using the system restore point?

Restore points dont help. I had major issues with microsft store and couldnt use any of those apps.
Luckily i found a solution on a forum that seems to work :

launch powershell
Set-ExecutionPolicy Unrestricted
Get-AppXPackage -AllUsers | Foreach {Add-AppxPackage -DisableDevelopmentMode -Register "$($_.InstallLocation)\AppXManifest.xml"}

Restart your system.


[obsolete] save to cloud or gist via jpfiddle infrastructure

This reorganizes the persisting of analyses by piggy-backing on jpfiddle.
With jpfiddle you can save directories of code (text files) in either the cloud (in a cloud bucket) or as github gists. In order to avoid having another server-side component, and reduce the duplication of code and infrastructure, this PR has SP utilize the jpfiddle database and API. (An added benefit is that you can open any SP analysis as a jpfiddle fiddle and browse and edit it using jupyterhub.)
The left panel has been replaced, and is equal to the left panel of jpfiddle, with some different configuration options. This includes basic info about the analysis/fiddle, list of recent analysis, buttons to save to the cloud, buttons to save as gist, and a list of examples. The two current examples are stored in gists.
To get an idea of how everything looks and fits together, here's one example as a SP analysis: (I've deployed to production -- we're at early stage so I feel okay doing this)
https://stan-playground.vercel.app/?p=/&f=https://gist.github.com/magland/d5bc7d37561539dca14256061c829cc9&t=SP%3A Disease transmission
The same viewed using jpfiddle
https://jpfiddle.vercel.app/?f=https://gist.github.com/magland/d5bc7d37561539dca14256061c829cc9&t=SP%3A Disease transmission
And viewed as a gist
https://gist.github.com/magland/d5bc7d37561539dca14256061c829cc9
Saving as a gist is good for long-term persistence. But if you want to quickly save your work, you can "save to cloud", which will store it temporarily in a cloud bucket. In order to do this, you need to know a secret passcode, which I can tell you.
Your edits for each analysis are saved in the browser storage, and the left panel shows which files have been changed compared with the cloud/gist version. You can discard those changes by using the "reset from cloud version" button.

@WardBrian @jsoules
I put you as reviewer, but I don't expect you to be too thorough looking through the frontend code, since there are a lot of complex changes. Happy to answer any questions.

This replaces #20, right?
Looking at it now, it seems like the UI changes have lead to even worse alignment/overlapping issues than what I've previously seen in #11. See the green checkmark's location here:

A couple other general thoughts:

is a Github PAT really the best authentication method we have? Is it possible to get a "log in with Github" page?

if PATs are our best choice, we should explicitly state which of the fine-grained permissions it needs

Do you think that some of the shared infrastructure will end up in an npm package?

Did we lose the "Reset local storage" button?

A couple other general thoughts:

is a Github PAT really the best authentication method we have? Is it possible to get a "log in with Github" page?

I agree the PAT method is not ideal. I did try creating a proper github app, with log in window etc. But there didn't seem to be the option of limiting the scope of the permissions to gists. Even if that were possible, I as a user would not want to trust another entity with permission to edit/delete/add all gists. The PAT is also a matter of trust, but it's open source and one can see that the code does not store the token anywhere. At this point I don't think there is a better way unfortunately.

if PATs are our best choice, we should explicitly state which of the fine-grained permissions it needs

I agree. This will require making a different kind of modal dialog that can display this information. Will require more work compared to just a system popup.

Do you think that some of the shared infrastructure will end up in an npm package?

Eventually yes I think so. Too much in flux right now though.

@WardBrian Regarding GitHub PAT. I'm going to take a crack at making this more user-friendly, and experiment with allowing the user to save the token in the browser storage for convenience, while giving them a warning about the potential security vulnerability. It is possible to limit the scope of the token to gists only, which I think helps a lot.
As I mentioned, I don't think it's possible to do a proper login as a github app while restricting to gist-only scope. I'll look into that further though.

Replaced by a different series of PRs.
#40 #41 #42 #43


v4: Simpler modal footer buttons

Fixes #18949 by outright removing the CSS that caused it. The example modal in the docs looks just fine right now—if folks want something else, utilities and custom CSS can accomplish the rest.

:shipit:

Ugh, broken builds. Hmm...

Hoping #19138 fixes things.


Zack

I uploaded my circuit to rotate GC Paulis to QWC, all form

should work now

Merged in different PR


drop lib: test_scanf patch

example failure to apply: https://github.com/ClangBuiltLinux/continuous-integration2/actions/runs/6242435717/job/16946520267#step:6:72

I think that failure should have been taken care of by #631? I think this is still needed for arm64, as for-next/core has not fast forwarded to a 6.6 tag.

I see, failures in runs since then are addressed by the message you just sent to stable. Thanks!


Misnamed outputs file on net-vlan-attachment

output.tf is used instead of outputs.tf, thus preventing automatic doc generation and escaping linting.

quicker to send a PR than log an issue :p

I'm creating opportunities here.

Fixed in #1535


Field Type - Image: Prefix Path to Image Name

Add Prefix To Image Name
I am saving images with the 'random' option to my database. Hence the random name will get posted as per the first entry on the image below . However, what I'd prefer to do was to save the random image name with a prefix to the image column in my database, e.g.  IFUvCMdWtQyEOtmFp2zX.jpg  => pics/products/IFUvCMdWtQyEOtmFp2zX.jpg
Is there a way to achieve this with the current features or do I have to hard code that to the source files?

this is not possible currently


Implement basic geocode functionality for Amazon Location Services.

Haven't written the tests yet, I'm not sure how to go about it as it requires and AWS account (I believe, still to investigate a bit more).
Happy for some feedback and further direction, especially want some feedback on putting optional dependencies behind a feature flag.
Changes:

Added AmazonLocationServices as a new Geocoder.
Put the AmazonLocationServices Geocoder behind a 'feature flag' as it
pulls in boto3 as a dependency. This involves a bit of lazy importing
hackery to make sure the library functions as normal for everyone who does
not care about this particular Geocoder.

boto3 is a quite large dependency, and pulling it just for a single geocoder, which many people won't even use, doesn't sound appropriate.
And it's not just about the size. geopy has it's own way of making http requests, which respects async/sync mode, ssl_context and proxy settings (see https://geopy.readthedocs.io/en/stable/#module-geopy.adapters). boto3 doesn't allow to use that.
I'm going to decline this PR for that reason. If boto3 is absolutely required, I'd suggest to keep the implementation of such a geocoder outside of geopy. Otherwise an implementation based on the geopy adapters using the raw HTTP API (e.g. https://docs.aws.amazon.com/location/latest/APIReference/API_SearchPlaceIndexForText.html) might be suitable for merging into geopy.
Thanks for the attempt and I'm sorry for such a late feedback!

No problems, that is totally fair - thank you.


⚠ Account has degraded performance

In 1ec4895, Account (https://account.wrk.com/health) experienced degraded performance:

HTTP code: 200
Response time: 237 ms

Resolved: Account performance has improved in 38a9686.


⚠ Bofrost.de has degraded performance

In 7840010, Bofrost.de (https://www.bofrost.de) experienced degraded performance:

HTTP code: 200
Response time: 1014 ms

Resolved: Bofrost.de performance has improved in c433269.


feat(keyboard): implement GetKeyState

Description
Add GetKeyState that gets the state of a key.
Fixes #27
Type of change

[ ] Bug fix (non-breaking change which fixes an issue)
[x] New feature (non-breaking change which adds functionality)
[ ] Documentation (non-breaking change that updates the documentation)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] This change requires a documentation update

Thanks!


Move dependabot to weekly

Also try to prevent it from bumping the minor version of Go until we explicitly want it to do that. I wanted to set this to > 1.22 but I have no idea how that will be interpreted. It could assume that 1.22.4 > 1.22 and thus keep us stuck. So I've picked an abnormally large patch version and hopefully that is clear.

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

Please upload report for BASE (main@7bac765). Learn more about missing BASE report.

Additional details and impacted files
@@           Coverage Diff           @@
##             main     #183   +/-   ##
=======================================
  Coverage        ?   31.17%
=======================================
  Files           ?        8
  Lines           ?      526
  Branches        ?        0
=======================================
  Hits            ?      164
  Misses          ?      333
  Partials        ?       29

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

Is there a syntax to opt-out "rc" versions?

Not that I can see: https://docs.github.com/en/code-security/dependabot/dependabot-version-updates/configuration-options-for-the-dependabot.yml-file#ignore


5.0

This looks like a merge PR. Can you rebase your changes?

I was just trying to pull it. I have not changed anything
sent from HTC one mobile device
Regards
Abhinav Jain
On 25-Feb-2016 9:42 pm, "Vlad Mihalcea"<EMAIL_ADDRESS>wrote:

This looks like a merge PR. Can you rebase your changes?
—
Reply to this email directly or view it on GitHub
https://github.com/hibernate/hibernate-orm/pull/1276#issuecomment-188975179
.


Adding an Option for Removing Turkish Stop Words During Preprocessing

Adding a text file having Turkish stop words and an option for removing them during text preprocessing can be useful. It would also benefit sadedegel by making it closer to state of art NLP libraries for English.
I found a work that was done on Turkish stop words (on this link  https://github.com/ahmetax/trstop). We can use the text file with Turkish stop words there. Then by using the list of stopwords we can make changes in the code for giving the user an option for possibly removing them during the preprocessing stage.

Closing this issue as it was already implemented by:

Adding a text file of Turkish stop words (stop-words.txt) under "sadedegel/bblock/data/".
Implementing a method for loading the stop words as load_stopwords() under "sadedegel/bblock/util.py".
Implementing a method for checking stop word status of the Token object by is_stopword() property of the Token object under "sadedegel/bblock/token.py".
Using this property of Token object throughout "sadedegel/bblock/token.py" and "sadedegel/bblock/doc.py".


Performance problem, update state should concurrency

maybe
go state = reducer

?

trying work on subscribtor

                easy 2 Subscritor, heavy 2 Subscritor, easy 10000 Subscritor

squen                  246ns/op            1104092ns/op         203ns/op
concurrent           953ns/op            2198266ns/op         246ns/op

Maybe provide a concurrency version is the only way to solve this problem

I will provide a API for concurrency, but you should make sure choose it is make sense.

API could be DispatchC

dispatchC is already in dev branch, not complete yet

Done DispatchC


Any plans to release the cleaned datasets ?

Pretty much what it says in the title.

We can't release directly the full dataset for legal reasons. The text from websites doesn't belong to Facebook, so Facebook can't distribute it.
But we are distributing a version of the dataset without the text (URL, LID, perplexity) and provide the code to fetch the corresponding text. Let me know if the instructions in the README aren't clear:
https://github.com/facebookresearch/cc_net/blob/master/README.md#reproducing-our-work

Closing, feel free to reopen if I haven't fully answer your question. Thanks.

@gwenzek Yes, thank you for the detailed answer !

Hi @gwenzek , Can the scripts to preprocess, dedupe etc be used for commercial purposes.

Currently all the code is under the Creative Common "Attribution-NonCommercial 4.0 International" license, as specified by the LICENSE file.

@gvskalyan Code has been relicensed to MIT: 242e10d


Request: Add a way to subscribe to an action

The library works well as is, but I personally have a preference to attach an event listener and have the library call my function when the action occurs rather than having to check it manually in the update loop.  It essentially does the same thing but eliminates some boilerplate for the users of the library.

One issue is to choose how to represent these listeners.
The ebitenui uses its own listener pattern.
I'm using gsignal library for my games (but I don't want to add it as a dependency of ebitengine-input).
I feel like people should use whatever events system they have available in their game/app.
But I can add some fundamental primitive to make such an event-driven wrapper possible.


Remove datafusion-data-access crate

Which issue does this PR close?

Closes #2903.
Rationale for this change

What changes are included in this PR?

Are there any user-facing changes?

Codecov Report

Merging #2904 (15aeef2) into master (6dc9dea) will increase coverage by 0.02%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master    #2904      +/-   ##
==========================================
+ Coverage   85.25%   85.27%   +0.02%
==========================================
  Files         277      274       -3
  Lines       49371    49208     -163
==========================================
- Hits        42092    41963     -129
+ Misses       7279     7245      -34

Impacted Files
Coverage Δ

datafusion/expr/src/window_frame.rs
92.43% <0.00%> (-0.85%)
:arrow_down:

datafusion/core/src/physical_plan/metrics/value.rs
86.43% <0.00%> (-0.51%)
:arrow_down:

datafusion/expr/src/logical_plan/plan.rs
76.02% <0.00%> (-0.19%)
:arrow_down:

datafusion/common/src/scalar.rs
75.66% <0.00%> (-0.12%)
:arrow_down:

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 6dc9dea...15aeef2. Read the comment docs.

🎉

Thank you @yahoNanJing and @xudong963


Error while building for Windows - curl configuration not found

Bug report
Required Info:

Operating System:

Windows 10

Installation type:

source

Version or commit hash:

bf9bd0d837fbe9d2bdeea044edd96cd358d9773f (ros2 branch)

Steps to reproduce issue
Follow ROS2 Windows build instructions.
Expected behavior
Build succeeded
Actual behavior
Error while building resource_retriever
Additional information
Starting >>> resource_retriever
-- Selecting Windows SDK version 10.0.18362.0 to target Windows 10.0.19043.
-- The C compiler identification is MSVC 19.29.30037.0
-- The CXX compiler identification is MSVC 19.29.30037.0
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: C:/Program Files (x86)/Microsoft Visual Studio/2019/Community/VC/Tools/MSVC/14.29.30037/bin/Hostx64/x64/cl.exe - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: C:/Program Files (x86)/Microsoft Visual Studio/2019/Community/VC/Tools/MSVC/14.29.30037/bin/Hostx64/x64/cl.exe - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Found ament_cmake_ros: 0.10.0 (C:/dev/ros2_rolling/install/share/ament_cmake_ros/cmake)
-- Found Python3: C:/Python38/python.exe (found version "3.8.3") found components: Interpreter
-- Found ament_index_cpp: 1.4.0 (C:/dev/ros2_rolling/install/share/ament_index_cpp/cmake)
-- Found libcurl_vendor: 3.1.0 (C:/dev/ros2_rolling/install/share/libcurl_vendor/cmake)
-- Setting curl_DIR to: 'C:/dev/ros2_rolling/install/share/libcurl_vendor/cmake/../../../opt/libcurl_vendor/CMake'
CMake Error at C:/dev/ros2_rolling/install/share/libcurl_vendor/cmake/libcurl_vendor-extras.cmake:16 (find_package):
  Could not find a package configuration file provided by "curl" with any of
  the following names:

    curlConfig.cmake
    curl-config.cmake

  Add the installation prefix of "curl" to CMAKE_PREFIX_PATH or set
  "curl_DIR" to a directory containing one of the above files.  If "curl"
  provides a separate development package or SDK, be sure it has been
  installed.
Call Stack (most recent call first):
  C:/dev/ros2_rolling/install/share/libcurl_vendor/cmake/libcurl_vendorConfig.cmake:41 (include)
  CMakeLists.txt:16 (find_package)

-- Configuring incomplete, errors occurred!
See also "C:/dev/ros2_rolling/build/resource_retriever/CMakeFiles/CMakeOutput.log".
--- stderr: resource_retriever
CMake Error at C:/dev/ros2_rolling/install/share/libcurl_vendor/cmake/libcurl_vendor-extras.cmake:16 (find_package):
  Could not find a package configuration file provided by "curl" with any of

    curlConfig.cmake
    curl-config.cmake

  Add the installation prefix of "curl" to CMAKE_PREFIX_PATH or set
  "curl_DIR" to a directory containing one of the above files.  If "curl"
  provides a separate development package or SDK, be sure it has been
  installed.
Call Stack (most recent call first):
  C:/dev/ros2_rolling/install/share/libcurl_vendor/cmake/libcurl_vendorConfig.cmake:41 (include)
  CMakeLists.txt:16 (find_package)

---
Failed   <<< resource_retriever [6.25s, exited with code 1]

Even on the latest for ROS2 Iron, fix #76 did not solve this for me.
libcurl_vendor log
Microsoft (R) Build Engine version 16.11.2+f32259642 for .NET Framework
Copyright (C) Microsoft Corporation. All rights reserved.

-- Up-to-date: C:/iron/install/opt/libcurl_vendor
-- Up-to-date: C:/iron/install/opt/libcurl_vendor/bin
-- Up-to-date: C:/iron/install/opt/libcurl_vendor/bin/curl-config
-- Up-to-date: C:/iron/install/opt/libcurl_vendor/bin/curl.exe
-- Up-to-date: C:/iron/install/opt/libcurl_vendor/bin/libcurl.dll
-- Up-to-date: C:/iron/install/opt/libcurl_vendor/include
-- Up-to-date: C:/iron/install/opt/libcurl_vendor/include/curl
-- Up-to-date: C:/iron/install/opt/libcurl_vendor/include/curl/curl.h
-- Up-to-date: C:/iron/install/opt/libcurl_vendor/include/curl/curlver.h
-- Up-to-date: C:/iron/install/opt/libcurl_vendor/include/curl/easy.h
-- Up-to-date: C:/iron/install/opt/libcurl_vendor/include/curl/mprintf.h
-- Up-to-date: C:/iron/install/opt/libcurl_vendor/include/curl/multi.h
-- Up-to-date: C:/iron/install/opt/libcurl_vendor/include/curl/options.h
-- Up-to-date: C:/iron/install/opt/libcurl_vendor/include/curl/stdcheaders.h
-- Up-to-date: C:/iron/install/opt/libcurl_vendor/include/curl/system.h
-- Up-to-date: C:/iron/install/opt/libcurl_vendor/include/curl/typecheck-gcc.h
-- Up-to-date: C:/iron/install/opt/libcurl_vendor/include/curl/urlapi.h
-- Up-to-date: C:/iron/install/opt/libcurl_vendor/lib
-- Up-to-date: C:/iron/install/opt/libcurl_vendor/lib/cmake
-- Up-to-date: C:/iron/install/opt/libcurl_vendor/lib/cmake/CURL
-- Up-to-date: C:/iron/install/opt/libcurl_vendor/lib/cmake/CURL/CURLConfig.cmake
-- Up-to-date: C:/iron/install/opt/libcurl_vendor/lib/cmake/CURL/CURLConfigVersion.cmake
-- Up-to-date: C:/iron/install/opt/libcurl_vendor/lib/cmake/CURL/CURLTargets-release.cmake
-- Up-to-date: C:/iron/install/opt/libcurl_vendor/lib/cmake/CURL/CURLTargets.cmake
-- Up-to-date: C:/iron/install/opt/libcurl_vendor/lib/libcurl_imp.lib
-- Up-to-date: C:/iron/install/opt/libcurl_vendor/lib/pkgconfig
-- Up-to-date: C:/iron/install/opt/libcurl_vendor/lib/pkgconfig/libcurl.pc
-- Up-to-date: C:/iron/install/share/libcurl_vendor/environment/libcurl_vendor_library_path.bat
-- Up-to-date: C:/iron/install/share/libcurl_vendor/environment/libcurl_vendor_library_path.dsv
-- Up-to-date: C:/iron/install/share/ament_index/resource_index/package_run_dependencies/libcurl_vendor
-- Up-to-date: C:/iron/install/share/ament_index/resource_index/parent_prefix_path/libcurl_vendor
-- Up-to-date: C:/iron/install/share/libcurl_vendor/environment/ament_prefix_path.bat
-- Up-to-date: C:/iron/install/share/libcurl_vendor/environment/ament_prefix_path.dsv
-- Up-to-date: C:/iron/install/share/libcurl_vendor/environment/path.bat
-- Up-to-date: C:/iron/install/share/libcurl_vendor/environment/path.dsv
-- Up-to-date: C:/iron/install/share/libcurl_vendor/local_setup.bat
-- Up-to-date: C:/iron/install/share/libcurl_vendor/local_setup.dsv
-- Installing: C:/iron/install/share/libcurl_vendor/package.dsv
-- Up-to-date: C:/iron/install/share/ament_index/resource_index/packages/libcurl_vendor
-- Up-to-date: C:/iron/install/share/libcurl_vendor/cmake/libcurl_vendor-extras.cmake
-- Up-to-date: C:/iron/install/share/libcurl_vendor/cmake/libcurl_vendorConfig.cmake
-- Up-to-date: C:/iron/install/share/libcurl_vendor/cmake/libcurl_vendorConfig-version.cmake
-- Up-to-date: C:/iron/install/share/libcurl_vendor/package.xml

resource_retriever log output
-- Selecting Windows SDK version 10.0.19041.0 to target Windows 10.0.19045.
-- Found ament_cmake_ros: 0.11.2 (C:/iron/install/share/ament_cmake_ros/cmake)
-- Found ament_index_cpp: 1.5.2 (C:/iron/install/share/ament_index_cpp/cmake)
-- Found libcurl_vendor: 3.2.2 (C:/iron/install/share/libcurl_vendor/cmake)
-- Setting curl_DIR to: 'C:/iron/install/share/libcurl_vendor/cmake/../../../opt/libcurl_vendor/CMake'
CMake Error at C:/iron/install/share/libcurl_vendor/cmake/libcurl_vendor-extras.cmake:16 (find_package):
  Could not find a package configuration file provided by "curl" with any of
  the following names:

    curlConfig.cmake
    curl-config.cmake

  Add the installation prefix of "curl" to CMAKE_PREFIX_PATH or set
  "curl_DIR" to a directory containing one of the above files.  If "curl"
  provides a separate development package or SDK, be sure it has been
  installed.
Call Stack (most recent call first):
  C:/iron/install/share/libcurl_vendor/cmake/libcurl_vendorConfig.cmake:41 (include)
  CMakeLists.txt:16 (find_package)

-- Configuring incomplete, errors occurred!

I can't reproduce this on my Windows installation; this all builds fine.  That is also the case on our nightly builds: https://ci.ros2.org/view/nightly/job/nightly_win_rel/3032/ .
There must be some kind of difference in your setup.  One thing that can happen here is that cmake can end up "caching" some stuff in the registry, which can confuse things later on.
Can you run reg query HKEY_CURRENT_USER\SOFTWARE\Kitware\CMake\Packages and paste the output here?

Yes, the output of reg query HKEY_CURRENT_USER\SOFTWARE\Kitware\CMake\Packages for my system is:
HKEY_CURRENT_USER\SOFTWARE\Kitware\CMake\Packages\cpptoml
HKEY_CURRENT_USER\SOFTWARE\Kitware\CMake\Packages\orocos_kdl
HKEY_CURRENT_USER\SOFTWARE\Kitware\CMake\Packages\Pangolin

This should be fixed by #96

Yes, this fixed the issue for me. Thank you!


[libvpx[core]:x64-windows] build failure

Host Environment

OS: Windows 10 Home Single Language (Russian) x64
Compiler: Microsoft (R) C/C++ Optimizing Compiler Version 19.27.29110

To Reproduce
Steps to reproduce the behavior:
./vcpkg install libvpx[core]:x64-windows
Failure logs
C:\misc\vcpkg>vcpkg install libvpx[core]:x64-windows
Computing installation plan...
The following packages will be built and installed:
    libvpx[core]:x64-windows
Detecting compiler hash for triplet x64-windows...
Starting package 1/1: libvpx:x64-windows
Building package libvpx[core]:x64-windows...
Could not locate cached archive: C:\Users\user\AppData\Local\vcpkg\archives\3f\3f5f6426b4370fcf9fd7812ce359cb51167ac16c.zip
-- Note: libvpx only supports static library linkage. Building static library.
-- Using cached C:/misc/vcpkg/downloads/webmproject-libvpx-v1.9.0.tar.gz
-- Cleaning sources at C:/misc/vcpkg/buildtrees/libvpx/src/v1.9.0-8ebe882649.clean. Use --editable to skip cleaning for the packages you specify.
-- Extracting source C:/misc/vcpkg/downloads/webmproject-libvpx-v1.9.0.tar.gz
-- Using source at C:/misc/vcpkg/buildtrees/libvpx/src/v1.9.0-8ebe882649.clean
-- Using msys root at C:/misc/vcpkg/downloads/tools/msys2/b1b4e6089ab84adb
CMake Error at installed/x64-windows/share/yasm-tool-helper/yasm-tool-helper.cmake:16 (message):
  Cross-targetting and x64 ports requiring yasm require the x86-windows
  yasm-tool to be available.  Please install yasm-tool:x86-windows first.
Call Stack (most recent call first):
  ports/libvpx/portfile.cmake:27 (yasm_tool_helper)
  scripts/ports.cmake:136 (include)

Error: Building package libvpx:x64-windows failed with: BUILD_FAILED
Please ensure you're using the latest portfiles with `.\vcpkg update`, then
submit an issue at https://github.com/Microsoft/vcpkg/issues including:
  Package: libvpx:x64-windows
  Vcpkg version: 2020.06.15-nohash

Additionally, attach any relevant sections from the log files above.

Additional context
As far as I know, if some vcpkg packages require some other packages, vcpkg manages to install them all in the right order. However, for some reason yasm-tool:x86-windows is not among these dependencies, and when vcpkg tries to install libvpx[core]:x64-windows without yasm-tool:x86-windows being available it simply fails. Shouldn't such behaviour be fixed?

Now we have to manually install the dependencies of different triplet.

Yes, it is annoying to have to manually install this dependency. I'm working on a patch to switch the libvpx build from yasm to nasm (this issue being one of the reasons).


Clarifies that Gratipay doesn't take a cut of payments

This is stated on the FAQ - "How is Gratipay funded?", but it's not very clear there, nor is it explicitly stated anywhere that Gratipay doesn't make money unless users pay it like any other account.
The FAQ probably could be updated, too, if the language I've proposed here is acceptable there, too.

Have you seen http://localhost:8537/about/pricing?

Have you seen https://gratipay.com/about/pricing?

Yeah. Hmm. I think maybe I should add a link to the pricing information in this blurb. I'll rework it a little.

That's a little better, but I think it could be worded even better. I'll think about it for a bit and see what I can come up with.

Ping @colindean.

Made some modifications. Better, but I could use some input.

Fixed the links and reworded.

wfm


Linking main.c example fails.

After successfully compiling the tigerbeetle executable, when I try compiling the c client example with
gcc -I../tb_client main.c

I obtain the following link error:
/usr/bin/ld: /tmp/cc3l7V92.o: in function `main':
main.c:(.text+0xd7): undefined reference to `tb_client_init'
/usr/bin/ld: main.c:(.text+0x8c4): undefined reference to `tb_client_deinit'
/usr/bin/ld: /tmp/cc3l7V92.o: in function `send_request':
main.c:(.text+0x9df): undefined reference to `tb_client_submit'
collect2: error: ld returned 1 exit status

Apparently, it needs linking with a tigerbeetle library, but I can't find any... What must be done to create it? Thanks.

SOLVED by running ./zig/zig build client:c.

Hello @stustd! I was just writing you a reply and saw you figured it out! Well done!
We just pack binaries for the language clients, not for the static libraries. But it can easily be compiled from source.
Also, you can replace gcc and compile the sample program with Zig as well ./zig/zig build client:c:sample

SOLVED by running ./zig/zig build client:c.

@stustd, you can also use the cmake build-system generator to develop or test a C and/or C++ project.
https://github.com/kassane/tigerbeetle-cmake (template-project), by default src, same C sample client.

@batiati Command ./zig/zig build client:c:sample doesn't seem to exist:
stustd@ax010:[tigerbeetle]: ./zig/zig build client:c:sample
no step named 'client:c:sample'
  access the help menu with 'zig build -h'
error: the following build command failed with exit code 1:
/home/stustd/workspace/thirdparty/src/tigerbeetle/tigerbeetle-db/tigerbeetle/.zig-cache/o/fcf80939aa30358f17b0ccdf9012ba06/build /home/stustd/workspace/thirdparty/src/tigerbeetle/tigerbeetle-db/tigerbeetle/zig/zig /home/stustd/workspace/thirdparty/src/tigerbeetle/tigerbeetle-db/tigerbeetle /home/stustd/workspace/thirdparty/src/tigerbeetle/tigerbeetle-db/tigerbeetle/.zig-cache /home/stustd/.cache/zig --seed 0x99a5550d -Z69e75a46ccdb219d client:c:sample

... so I decided to compile tigerbeetle/src/clients/c/samples/main.c myself:
clang -o main-static -I../tb_client main.c ../lib/x86_64-linux-gnu.2.27/libtb_client.a

Then initiating and starting the tigerbeetle db:
tigerbeetle  format --cluster=0 --replica=0 --replica-count=1 --development 0_0.tigerbeetle
tigerbeetle/tigerbeetle start --addresses=3000 --development 0_0.tigerbeetle

.. and running main-static produces however problems at create_transfers:
stustd@ax010:[samples]: ./main-static
TigerBeetle C Sample
Connecting...
debug(tb_client_context):<PHONE_NUMBER>77863377466864052585498689747: init: parsing vsr addresses: 3000
debug(tb_client_context):<PHONE_NUMBER>77863377466864052585498689747: init: initializing IO
debug(tb_client_context):<PHONE_NUMBER>77863377466864052585498689747: init: initializing MessagePool
debug(tb_client_context):<PHONE_NUMBER>77863377466864052585498689747: init: initializing client (cluster_id=00000000000000000000000000000000, addresses={ <IP_ADDRESS>:3000 })
debug(vsr):<PHONE_NUMBER>77863377466864052585498689747: ping_timeout started
debug(tb_client_context):<PHONE_NUMBER>77863377466864052585498689747: init: initializing signal
debug(client):<PHONE_NUMBER>77863377466864052585498689747: register: registering a session with the cluster user_data=105711737980592
debug(client):<PHONE_NUMBER>77863377466864052585498689747: send_request_for_the_first_time: request=0 checksum=54509755786618135715079550728882441313
debug(vsr):<PHONE_NUMBER>77863377466864052585498689747: request_timeout started
debug(client):<PHONE_NUMBER>77863377466864052585498689747: sending request to replica 0: vsr.message_header.Header{ .checksum =<PHONE_NUMBER>6618135715079550728882441313, .checksum_padding = 0, .checksum_body =<PHONE_NUMBER>4338905420932325260476423013, .checksum_body_padding = 0, .nonce_reserved = 0, .cluster = 0, .size = 512, .epoch = 0, .view = 0, .release = 0.0.1, .protocol = 0, .command = vsr.Command.request, .replica = 0, .reserved_frame = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, .reserved_command = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 211, 64, 144, 150, 242, 163, 190, 140, 222, 170, 24, 218, 100, 37, 158, 229, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } }
debug(message_bus): no active connection to replica 0, dropping message with header vsr.message_header.Header{ .checksum =<PHONE_NUMBER>6618135715079550728882441313, .checksum_padding = 0, .checksum_body =<PHONE_NUMBER>4338905420932325260476423013, .checksum_body_padding = 0, .nonce_reserved = 0, .cluster = 0, .size = 512, .epoch = 0, .view = 0, .release = 0.0.1, .protocol = 0, .command = vsr.Command.request, .replica = 0, .reserved_frame = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, .reserved_command = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 211, 64, 144, 150, 242, 163, 190, 140, 222, 170, 24, 218, 100, 37, 158, 229, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } }
debug(tb_client_context):<PHONE_NUMBER>77863377466864052585498689747: init: spawning thread
Creating accounts...
debug(message_bus): connecting to replica 0 in 99ms...
debug(message_bus): connecting to replica 0...
info(message_bus): connected to replica 0
debug(vsr):<PHONE_NUMBER>77863377466864052585498689747: request_timeout fired
debug(vsr):<PHONE_NUMBER>77863377466864052585498689747: request_timeout backing off
debug(vsr):<PHONE_NUMBER>77863377466864052585498689747: request_timeout after=60..90 (rtt=30 min=10 max=1000 attempts=1)
debug(client):<PHONE_NUMBER>77863377466864052585498689747: on_request_timeout: resending request=0 checksum=54509755786618135715079550728882441313
debug(client):<PHONE_NUMBER>77863377466864052585498689747: sending request to replica 0: vsr.message_header.Header{ .checksum =<PHONE_NUMBER>6618135715079550728882441313, .checksum_padding = 0, .checksum_body =<PHONE_NUMBER>4338905420932325260476423013, .checksum_body_padding = 0, .nonce_reserved = 0, .cluster = 0, .size = 512, .epoch = 0, .view = 0, .release = 0.0.1, .protocol = 0, .command = vsr.Command.request, .replica = 0, .reserved_frame = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, .reserved_command = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 211, 64, 144, 150, 242, 163, 190, 140, 222, 170, 24, 218, 100, 37, 158, 229, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } }
info(message_bus): connection from client<PHONE_NUMBER>77863377466864052585498689747
debug(client):<PHONE_NUMBER>77863377466864052585498689747: on_message: vsr.message_header.Header{ .checksum =<PHONE_NUMBER>6661650675752549537084168701, .checksum_padding = 0, .checksum_body =<PHONE_NUMBER>01491735292641779396715990287, .checksum_body_padding = 0, .nonce_reserved = 0, .cluster = 0, .size = 320, .epoch = 0, .view = 1, .release = 0.0.1, .protocol = 0, .command = vsr.Command.reply, .replica = 0, .reserved_frame = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, .reserved_command = { 97, 76, 85, 13, 216, 52, 183, 101, 2, 188, 250, 176, 116, 50, 2, 41, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 148, 142, 106, 250, 89, 34, 167, 24, 5, 55, 232, 103, 231, 13, 56, 187, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 211, 64, 144, 150, 242, 163, 190, 140, 222, 170, 24, 218, 100, 37, 158, 229, 2, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 28, 56, 157, 44, 53, 40, 237, 23, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } }
debug(client):<PHONE_NUMBER>77863377466864052585498689747: on_reply: user_data=105711737980592 request=0 size=320 register
debug(client):<PHONE_NUMBER>77863377466864052585498689747: on_reply: newer view=0..1
debug(vsr):<PHONE_NUMBER>77863377466864052585498689747: request_timeout stopped
debug(client):<PHONE_NUMBER>77863377466864052585498689747: request: user_data=2596079278275188697442621291185840 request=1 size=512 create_accounts
debug(client):<PHONE_NUMBER>77863377466864052585498689747: send_request_for_the_first_time: request=1 checksum=45810559728976295265833909075969668294
debug(vsr):<PHONE_NUMBER>77863377466864052585498689747: request_timeout started
debug(client):<PHONE_NUMBER>77863377466864052585498689747: sending request to replica 0: vsr.message_header.Header{ .checksum =<PHONE_NUMBER>8976295265833909075969668294, .checksum_padding = 0, .checksum_body =<PHONE_NUMBER>64227195924389630865159909503, .checksum_body_padding = 0, .nonce_reserved = 0, .cluster = 0, .size = 512, .epoch = 0, .view = 1, .release = 0.0.1, .protocol = 0, .command = vsr.Command.request, .replica = 0, .reserved_frame = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, .reserved_command = { 148, 142, 106, 250, 89, 34, 167, 24, 5, 55, 232, 103, 231, 13, 56, 187, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 211, 64, 144, 150, 242, 163, 190, 140, 222, 170, 24, 218, 100, 37, 158, 229, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 129, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } }
debug(client):<PHONE_NUMBER>77863377466864052585498689747: on_message: vsr.message_header.Header{ .checksum =<PHONE_NUMBER>21879183462621414976985510470, .checksum_padding = 0, .checksum_body =<PHONE_NUMBER>0187652707502696638535748739, .checksum_body_padding = 0, .nonce_reserved = 0, .cluster = 0, .size = 256, .epoch = 0, .view = 1, .release = 0.0.1, .protocol = 0, .command = vsr.Command.reply, .replica = 0, .reserved_frame = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, .reserved_command = { 198, 116, 9, 9, 254, 127, 89, 211, 98, 172, 27, 221, 249, 202, 118, 34, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 144, 85, 59, 145, 152, 199, 124, 16, 252, 199, 107, 75, 250, 208, 134, 18, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 211, 64, 144, 150, 242, 163, 190, 140, 222, 170, 24, 218, 100, 37, 158, 229, 3, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 219, 151, 184, 44, 53, 40, 237, 23, 1, 0, 0, 0, 129, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } }
debug(client):<PHONE_NUMBER>77863377466864052585498689747: on_reply: user_data=2596079278275188697442621291185840 request=1 size=256 create_accounts
debug(vsr):<PHONE_NUMBER>77863377466864052585498689747: request_timeout stopped
Accounts created successfully
Creating transfers...
Error calling create_transfers (ret=1)
stustd@ax010:[samples]: info(message_bus): peer performed an orderly shutdown: message_bus.MessageBusType(.replica).Connection.Peer{ .client =<PHONE_NUMBER>77863377466864052585498689747 }

Any idea? Thanks.

Command ./zig/zig build client:c:sample doesn't seem to exist:

Sorry, just a typo the correct is ./zig/zig build clients:c:sample.
This command builds the binary at ./zig-out/bin/c_sample[.exe]
By default it connects to a TB cluster on the address <IP_ADDRESS>:3000 that can be overloaded by setting the address to an environment variable TB_ADDRESS.

@batiati

Sorry, just a typo the correct is ./zig/zig build clients:c:sample.

Ah sorry (should have discovered myself ...).
However, now having initiated and started the tigerbeetle db as before, and running ./zig-out/bin/c_sample, I encounter the same error at create_transfers ... :
Accounts created successfully
Creating transfers...
Error calling create_transfers (ret=1)
stustd@ax010:[samples]: info(message_bus): peer performed an orderly shutdown: message_bus.MessageBusType(.replica).Connection.Peer{ .client =<PHONE_NUMBER>77863377466864052585498689747 }

Can you replicate this?
(I'm on TigerBeetle version 0.0.1+2e00809)

The message Error calling create_transfers (ret=1 means TB_PACKET_TOO_MUCH_DATA.
You're probably running the TigerBeetle cluster in --development mode, so the maximum batch size is much smaller. You can either run the cluster without this flag or adjust the sample to submit a smaller batch.

@batiati

The message Error calling create_transfers (ret=1) means TB_PACKET_TOO_MUCH_DATA.
You're probably running the TigerBeetle cluster in --development mode, so the maximum batch size is much smaller. You can either run the cluster without this flag or adjust the sample to submit a smaller batch.

Indeed, that's the case; thank you! Now, after running a large sequence of transactions, segfaults with gdb output:
...
debug(client):<PHONE_NUMBER>32120053507969047606231471548: on_reply: user_data=2596148409466973873591332166926368 request=102 size=512 lookup_accounts
debug(vsr):<PHONE_NUMBER>32120053507969047606231471548: request_timeout stopped
2 Account(s) found
============================================

Thread 1 "c_sample" received signal SIGILL, Illegal instruction.
0x000000000104f88f in main (argc=1, argv=0x7fffffff9f08) at src/clients/c/samples/main.c:234
234	            printf("id=%ld\n", (long)results[i].id);
(gdb)

I will look into that ...

I will look into that ...

With GCC this works:
          ...
          //printf("id=%ld\n", (long)results[i].id);
          //printf("debits_posted=%ld\n", (long)results[i].debits_posted);
          //printf("credits_posted=%ld\n", (long)results[i].credits_posted);
          // GCC
          printf("id=%llu\n", (unsigned long long)(results[i].id));
          printf("debits_posted=%llu\n", (unsigned long long)(results[i].debits_posted));
          printf("credits_posted=%llu\n", (unsigned long long)(results[i].credits_posted));
          // TODO: CLang
          // ...

... with result:
...
============================================
id=1
debits_posted=819000
credits_posted=0

id=2
debits_posted=0
credits_posted=819000

Haven't worked out for clang yet; probably will use fmt library.


support piping

In the commander branch
./bin/wd data Q1 | head
{
    "pageid": 129,
    "ns": 0,
    "title": "Q1",
    "lastrevid": 369618258,
    "modified": "2016-08-26T03:50:30Z",
    "type": "item",
    "id": "Q1",
    "labels": {
        "en": {
events.js:141
      throw er; // Unhandled 'error' event
      ^

Error: write EPIPE
    at Object.exports._errnoException (util.js:870:11)
    at exports._exceptionWithHostPort (util.js:893:20)
    at WriteWrap.afterWrite (net.js:763:14)

this seems to be a known issue in node but with no clear solution


WARN: bun: missing `bun:",autoincrement" on Migration.ID and MigrationLock.ID field

After upgrade from v1.0.21 to v1.0.24:
WARN: bun: missing `bun:",autoincrement" on Migration.ID field`
WARN: bun: missing `bun:",autoincrement" on MigrationLock.ID field`

Thanks for the report. Looks like v1.1 already has the missing options so I will just add it to the v1.0.x branch as well. Overall, the warning is harmless.


Make a launchd?

I have noticed that with this running on check in it means the policy logs for it get massive, I was thinking this might be a good thing to turn into a daemon instead, then have it run once an hour or something instead?

@charliwest I was thinking the same thing! I'll write up a branch for that option.


Browser build request

Is it possible to put together a browser build for this? It would be really valuable in PWA production.
Thanks so much for your great projects!

+1

Unfortunately, the Tokenizers library used internally for tokenization doesn't provide bindings for the browser but only for Nodejs (see huggingface/tokenizers#63), so no build possible for the browser for now :/

Thanks for the update. Are there plans to expand the bindings in the near future?

Currently it's not a priority in our pipeline, but we'll welcome any external contribution :)

is there another way to Browserify this?


Issues with memory views/windows, they are snapshots

Type: Bug Report
Describe the bug

OS and Version: MacOS 12.4
VS Code Version: 1.69.2
Embedded Tools Extension Version: v0.1.220728001
Target embedded device: STM32F429ZI
RTOS version: FreeRTOS. don't know the version
Other extensions you installed (and if the issue persists after disabling them):
A clear and concise description of what the bug is.

Several issues with memory views/windows launched from the RTOS view. Most of them are probably inherent to core VSCode, but I wanted to highlight some that can be perhaps be addressed (or forwarded) here.

They are never updated. They seem to be a static snapshot. This would be very unexpected of a memory view even if the intent was different. The expectation would be that it updates whenever the session pauses at minimum
The memory views/windows created demand too much memory. On embedded devices, this can be a problem

Some devices are not big. They can have errors in reading memory. Asking for 1-2K is enough
If/when memory views are updated upon a pause, it will be bad for performance and UX. Once such a large gdb request is made, it cannot be aborted and further instructions will block. Makes single stepping intolerable

To Reproduce
Steps to reproduce the behavior:

In your launch.json, add the enable engine logging as shown below for cppdbg

            "logging": {
                "engineLogging": true,
                ...
            },

Launch any debug session, run and pause until an RTOS is displayed by this extension
Click on any link in the RTOS view that will open a memory view. I use one of the stack pointers. You will notice in the debug console that a read memory request is made for 128KB (131072 bytes). Here are all the memory reads

1: (480376) <-1171-data-read-memory-bytes 0x2000657c 131072

Single step in any way until you get back into a paused state
You will notice in the Debug Console that if no new memory requests were made. I can change memory contents manually using gdb/programmatically and this window never refreshes
FYI: Same applies if you launch the memory viewer from anywhere -- as in Watch/Variable panels.

Expected behavior

Any memory views created should be updated just like how Watch/Variable windows are updated. Including REPL. Memory windows are supposed to be alive. They should have a lifecycle of their own.
I did notice that clicking on the link again will refresh the display, no one would know that
Please don't read 128KB. 1-2KB is enough, updated with scrolling -- like how disassembly works
Memory views should be persistent. What an embedded developer expects The lifecycle of these memory windows should be re-thought.

Code sample and logs

Code sample
launch.json
Logs from the Embedded Tools Output Window
Logs from the Debug Console

Screenshots

Additional context
I can duplicate all this with the Cortex-Debug debugger as well.
Maybe I am doing something wrong.

Now, I realize that this probably has nothing to do with this extension. Its is the way VSCode and the Hex Editor are designed to work with each other. Not sure I can transfer this to somewhere else or what benefit that would provide.
Regardless, there are a lot of issues with Hex Edit and VSCode for memory viewing. I don't think the focus should be on the editor part. It should be for efficiency, viewing and debugging experience.
I have an extension in preview right now that you might be interested in and supporting it as a choice for users to say which hex view/edit they want to use.
https://github.com/haneefdm/memview
We can close this but we should continue this conversation (elsewhere) as it is important to the embedded folks. I know my extension is very RAW but try it out and compare it to the Hex Editor experience. I know Hex Editor is much better in many ways but it does not play well with debuggers.

We're going to mark this one as won't fix as conversations continue around the memory view extension you have created @haneefdm and leave #7 open to track this longer term.


Semantics link:true does not work on web.

Internal Bug: b/300247612
Is there an existing issue for this?

[X] I have searched the existing issues
[X] I have read the guide to filing a bug

Steps to reproduce
This can be reproduced on dartpad with the code sample below.
Expected results
Wrapping a widget with
Semantics(
  link: true,
  child: Foo(),
)

should be labeled as a link.
Actual results
Instead, it's just labeled as a group.
Code sample
Code sample
import 'package:flutter/material.dart';

const Color darkBlue = Color.fromARGB(255, 18, 32, 47);

void main() {
  runApp(MyApp());
}

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      theme: ThemeData.dark().copyWith(
        scaffoldBackgroundColor: darkBlue,
      ),
      debugShowCheckedModeBanner: false,
      home: Scaffold(
        body: Center(
          child: MyWidget(),
        ),
      ),
    );
  }
}

class MyWidget extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return Semantics(
      link: true,
      child: Text(
        'Hello, World!',
        style: Theme.of(context).textTheme.headlineMedium,
      ),
    );
  }
}

Screenshots or Video
No response
Logs
No response
Flutter Doctor output
This can be reproduced on dartpad Based on Flutter 3.13.4 Dart SDK 3.1.2

P0 maps to the priority of the internal bug provided by the customer.

I think the internal bug is translate 1 to 1 per new triage process. cc @Hixie
I just check the web engine, it doesn't seem like the SemanticsNode.isLink is used anywhere. It should probably build an anchor tag if isLink is true

also cc @yjbanov

I think the internal bug is translate 1 to 1 per new triage process.

Please readjust the priorities I'm mistaken, but according to the mapping (recently updated by Ian in cl/553231427), the internal priority maps to P0 here though.

This is probably a dupe of https://github.com/flutter/flutter/issues/117011


Execution order problems

Here's some pseudo code:
function myController($scope,$reactive,userId) {
  var self = this;
  let $meteorData = $reactive(this).attach($scope);
  $meteorData.helpers({
    user() {
      console.log(Users.findOne(userId));
      return Users.findOne(userId);
    }
  });

  $meteorData.subscribe('userDetails', () => [
    userId,
    {onReady: () => {console.log("ready");}}
  ]);
};

Subscribing to userDetails results in some fields of that user being published to the client.
The problem is that if I execute the code above I get:
undefined (from console.log(Users.findOne(userId));)
ready (from console.log("ready");)
{...userobject...} (from console.log(Users.findOne(userId));)
Is this correct behavior? I would expect the order to be:
undefined (from console.log(Users.findOne(userId));)
{...userobject...} (from console.log(Users.findOne(userId));)
ready (from console.log("ready");)
That is because the ddp protocol works in this order (first the user details are published, then a ready message) and one would expect the data to be there in the onReady call...

To me it makes sense. I think what happens is that the data arrives from
the subscription and the onReady gets called in one execution frame and the
findOne gets invalidated. But the autorun of the helper runs in the next
execution frame because that is when the Tracker flushes.
If you'll try to access the subscription data on the onReady callback, I
believe it will be there..
On Fri, Dec 11, 2015, 17:03 Seba Kerckhof<EMAIL_ADDRESS>wrote:

Here's some pseudo code:
function myController($scope,$reactive,userId) {
var self = this;
let $meteorData = $reactive(this).attach($scope);
$meteorData.helpers({
user() {
console.log(Users.findOne(userId));
return Users.findOne(userId);
}
});
activate();
function activate(){
$meteorData.subscribe('userDetails', () => [
userId,
{onReady: () => {console.log("ready");}}
]);
}
};
Subscribing to userDetails results in some fields of that user being
published to the client.
The problem is that if I execute the code above I get:
undefined (from console.log(Users.findOne(userId));)
ready (from console.log("ready");)
{...userobject...} (from console.log(Users.findOne(userId));)
Is this correct behavior? I would expect the order to be:
undefined (from console.log(Users.findOne(userId));)
{...userobject...} (from console.log(Users.findOne(userId));)
ready (from console.log("ready");)
That is because the ddp protocol works in this order (first the user
details are published, then a ready message) and one would expect the data
to be there in the onReady call...
—
Reply to this email directly or view it on GitHub
https://github.com/Urigo/angular-meteor/issues/942.

Well, I have never used Blaze, I always used angular-meteor, so I should read up on how tracker works.
Thing is I have a lot of code that looks like:

 ... will give errors when parts of data is not available ...

this.data = $meteor.object(...);
$meteor.subscribe('subscription').then(()=>{this.loaded = true;});

In 1.2, when the promise was resolved, this.data was already updated. Using the onReady function in 1.3 it's not (I guess for the reason you mentioned). But that's a problem in the code above.
Now I just wrap the onReady function in a 0ms timeout, but that's probably not the best way to do it.

I suppose that you shouldn't be relying on execution order at this fine level of detail.
The intention of "on ready" is to indicate that the subscription is initialized, it doesn't (necessarily) indicate that all reactive variables have finished reacting (if that makes sense).
Perhaps something like this could work for you:

show user

Basically, only show if there's a valid user object.

I agree with @eugenious on this.
@sebakerckhof what do you think?

@eugenious Yeah, I've thought of that, but the problem is that there are already some fields of vm.user available from another subscription. So then I'd have to start looking for specific fields being present which gets ugly.
@Urigo Yeah, it surely isn't a bug if the system was designed like this. It's just that in my use cases it made sense that onReady was called after the reactive vars have updated. But I can imagine other use cases where it's the other way around. I can take other approaches for my usecases.

@sebakerckhof how would a Meteor developer who use Blaze would handle your use case?
Maybe we can add back something?


Fix package structure for installing with pip

Thanks for the PR. The structure of the folder was indeed misconfigured, much better now 👍


weave version broken unless built with Go 1.5

#1386 contains https://github.com/weaveworks/weave/pull/1386/files#diff-b67911656ef5d18c4ae36cb6741b7965L46, which broke this.
From https://golang.org/cmd/link/

-X importpath.name=value
Set the value of the string variable in importpath named name to value.
Note that before Go 1.5 this option took two separate arguments.
Now it takes one argument split on the first = sign.

The = notation does not work in 1.4; just gets ignored.

Because of the impact this has on snapshot releases we need to fix this urgently. @tomwilkie @dpw

I've reverted the relevant commit.  @rade, please verify.


leaflet-grids with proj4

Some help with leaflet-grids and proj4.js different projection?
Sample map with custom projection:
var crs = new L.Proj.CRS.TMS('EPSG:3067',
    '+proj=utm +zone=35 +ellps=GRS80 +units=m +towgs84=0,0,0,-0,-0,-0,0 +no_defs',
    [-548576.0, 6291456.0, 1548576.0, 8388608],
    {
        resolutions: [
            8192,
            4096,
            2048,
            1024,
            512,
            256,
            128,
            64,
            32,
            16,
            8,
            4,
            2,
            1,
            0.5,
            0.25,
            0.125,
            0.0625,
            0.03125,
            0.015625
        ]
    });

var map = new L.Map('map', {
    crs: crs,
    continuousWorld: true,
    worldCopyJump: false,
    zoomControl: true
});

var tilelayer = new L.Proj.TileLayer.TMS('http://{s}.map-place.abc/map/{z}/{x}/{y}.png', crs, {
        maxZoom: 19,
        minZoom: 0,
        tileSize: 256,
        tms: true,
        continuousWorld: true,
        attribution: '©',
        subdomains: ['tile1','tile2']
});

Hello, Currently leaflet-grids does not support using a custom CRS. If you would like to implement that I would welcome a pull request.

Thats the problem, I don'n know how to do that.


Please help me on this.

OS: Windows 7, 32-bit
Node: 0.12.0
Imagemagick: 6.9.0
client.upload('/uploads/site-logo.png', {}, function(err, versions, meta) {
                  if (err) { throw err; }

                  versions.forEach(function(image) {
                    console.log(image.width, image.height, image.url);
                  });
                });

Please help me on this.

What does the error message say?

              if (err) { throw err; }
                               ^

ChildProcess.exithandler (child_process.js:744:12),ChildProcess.emit
(events.js:110:17),maybeClose
(child_process.js:1008:16),Process.ChildProcess._handle.on
exit (child_process.js:1080:5)
On Sun, Dec 13, 2015 at 10:58 PM, Hans Kristian Flaatten <
<EMAIL_ADDRESS>wrote:

What does the error message say?
—
Reply to this email directly or view it on GitHub
https://github.com/Turistforeningen/node-s3-uploader/issues/67#issuecomment-164278914
.

--
Thanks,
Harikrishna Kanta

Please find the below error:
{ [Error: Command failed: C:\Windows\system32\cmd.exe /s /c "convert
uploads/site-logo.png -auto-orient -strip -write mpr:uploads/site-logo.png
+delete mpr:u
ploads/site-logo.png -quality 80 -resize "1040x1040" -write
uploads\site-logo-large.jpg +delete mpr:uploads/site-logo.png -quality 70
-crop "NaNxNaN+NaN+NaN"
-resize "780" -write uploads\site-logo-medium.png +delete
mpr:uploads/site-logo.png -quality 70 -crop "NaNxNaN+NaN+NaN" -resize "320"
-write uploads\site-lo
go-small.png +delete mpr:uploads/site-logo.png -quality 70 -crop
"NaNxNaN+NaN+NaN" -resize "x100" -write uploads\site-logo-thumb1.png
+delete mpr:uploads/sit
e-logo.png -quality 70 -crop "NaNxNaN+NaN+NaN" -resize "250x250"
uploads\site-logo-thumb2.png"
convert.exe: invalid argument for option `-crop': NaNxNaN+NaN+NaN @
error/convert.c/ConvertImageCommand/1156.
]
killed: false,
code: 1,
signal: null,
cmd: 'C:\Windows\system32\cmd.exe /s /c "convert uploads/site-logo.png
-auto-orient -strip -write mpr:uploads/site-logo.png +delete
mpr:uploads/site-log
o.png -quality 80 -resize "1040x1040" -write uploads\site-logo-large.jpg
+delete mpr:uploads/site-logo.png -quality 70 -crop "NaNxNaN+NaN+NaN"
-resize "780"
-write uploads\site-logo-medium.png +delete mpr:uploads/site-logo.png
-quality 70 -crop "NaNxNaN+NaN+NaN" -resize "320" -write
uploads\site-logo-small.png
+delete mpr:uploads/site-logo.png -quality 70 -crop "NaNxNaN+NaN+NaN"
-resize "x100" -write uploads\site-logo-thumb1.png +delete
mpr:uploads/site-logo.png
-quality 70 -crop "NaNxNaN+NaN+NaN" -resize "250x250"
uploads\site-logo-thumb2.png"' }
d:\Hari\node\yadva\application\controllers\help_desk.js:229
versions.forEach(function(image) {
^
d:\Hari\node\yadva\application\controllers\help_desk.js:229:27,d:\Hari\node\yadva\node_modules\s3-uploader\lib\index.js:126:12,d:\Hari\node\yadva\node_module
s\s3-uploader\node_modules\async\lib\async.js:52:16,d:\Hari\node\yadva\node_modules\s3-uploader\node_modules\async\lib\async.js:543:21,d:\Hari\node\yadva\nod
e_modules\s3-uploader\node_modules\async\lib\async.js:173:37,d:\Hari\node\yadva\node_modules\s3-uploader\node_modules\im-resize\index.js:12:21,ChildProcess.e
xithandler (child_process.js:751:5),ChildProcess.emit
(events.js:110:17),maybeClose
(child_process.js:1008:16),Process.ChildProcess._handle.onexit (child_pro
cess.js:1080:5)
On Sun, Dec 13, 2015 at 11:02 PM, hari krishna<EMAIL_ADDRESS>wrote:

              if (err) { throw err; }
                               ^

ChildProcess.exithandler (child_process.js:744:12),ChildProcess.emit
(events.js:110:17),maybeClose
(child_process.js:1008:16),Process.ChildProcess._handle.on
exit (child_process.js:1080:5)
On Sun, Dec 13, 2015 at 10:58 PM, Hans Kristian Flaatten <
<EMAIL_ADDRESS>wrote:

What does the error message say?
—
Reply to this email directly or view it on GitHub
https://github.com/Turistforeningen/node-s3-uploader/issues/67#issuecomment-164278914
.

--
Thanks,
Harikrishna Kanta

--
Thanks,
Harikrishna Kanta

Issue resolved.
Thank you.
On 13 Dec 2015 23:08, "hari krishna"<EMAIL_ADDRESS>wrote:

Please find the below error:
{ [Error: Command failed: C:\Windows\system32\cmd.exe /s /c "convert
uploads/site-logo.png -auto-orient -strip -write mpr:uploads/site-logo.png
+delete mpr:u
ploads/site-logo.png -quality 80 -resize "1040x1040" -write
uploads\site-logo-large.jpg +delete mpr:uploads/site-logo.png -quality 70
-crop "NaNxNaN+NaN+NaN"
-resize "780" -write uploads\site-logo-medium.png +delete
mpr:uploads/site-logo.png -quality 70 -crop "NaNxNaN+NaN+NaN" -resize "320"
-write uploads\site-lo
go-small.png +delete mpr:uploads/site-logo.png -quality 70 -crop
"NaNxNaN+NaN+NaN" -resize "x100" -write uploads\site-logo-thumb1.png
+delete mpr:uploads/sit
e-logo.png -quality 70 -crop "NaNxNaN+NaN+NaN" -resize "250x250"
uploads\site-logo-thumb2.png"
convert.exe: invalid argument for option `-crop': NaNxNaN+NaN+NaN @
error/convert.c/ConvertImageCommand/1156.
]
killed: false,
code: 1,
signal: null,
cmd: 'C:\Windows\system32\cmd.exe /s /c "convert
uploads/site-logo.png -auto-orient -strip -write mpr:uploads/site-logo.png
+delete mpr:uploads/site-log
o.png -quality 80 -resize "1040x1040" -write uploads\site-logo-large.jpg
+delete mpr:uploads/site-logo.png -quality 70 -crop "NaNxNaN+NaN+NaN"
-resize "780"
-write uploads\site-logo-medium.png +delete mpr:uploads/site-logo.png
-quality 70 -crop "NaNxNaN+NaN+NaN" -resize "320" -write
uploads\site-logo-small.png
+delete mpr:uploads/site-logo.png -quality 70 -crop "NaNxNaN+NaN+NaN"
-resize "x100" -write uploads\site-logo-thumb1.png +delete
mpr:uploads/site-logo.png
-quality 70 -crop "NaNxNaN+NaN+NaN" -resize "250x250"
uploads\site-logo-thumb2.png"' }
d:\Hari\node\yadva\application\controllers\help_desk.js:229
versions.forEach(function(image) {
^
d:\Hari\node\yadva\application\controllers\help_desk.js:229:27,d:\Hari\node\yadva\node_modules\s3-uploader\lib\index.js:126:12,d:\Hari\node\yadva\node_module
s\s3-uploader\node_modules\async\lib\async.js:52:16,d:\Hari\node\yadva\node_modules\s3-uploader\node_modules\async\lib\async.js:543:21,d:\Hari\node\yadva\nod
e_modules\s3-uploader\node_modules\async\lib\async.js:173:37,d:\Hari\node\yadva\node_modules\s3-uploader\node_modules\im-resize\index.js:12:21,ChildProcess.e
xithandler (child_process.js:751:5),ChildProcess.emit
(events.js:110:17),maybeClose
(child_process.js:1008:16),Process.ChildProcess._handle.onexit (child_pro
cess.js:1080:5)
On Sun, Dec 13, 2015 at 11:02 PM, hari krishna<EMAIL_ADDRESS>
wrote:

              if (err) { throw err; }
                               ^

ChildProcess.exithandler (child_process.js:744:12),ChildProcess.emit
(events.js:110:17),maybeClose
(child_process.js:1008:16),Process.ChildProcess._handle.on
exit (child_process.js:1080:5)
On Sun, Dec 13, 2015 at 10:58 PM, Hans Kristian Flaatten <
<EMAIL_ADDRESS>wrote:

What does the error message say?
—
Reply to this email directly or view it on GitHub
https://github.com/Turistforeningen/node-s3-uploader/issues/67#issuecomment-164278914
.

--
Thanks,
Harikrishna Kanta

--
Thanks,
Harikrishna Kanta

I am having the same issue. How did you solve this?

@kantaharikrishna would you mind letting myself and @shravanjha know how you resolved the issue? I am having the same issue.
-Thanks.
Joe

@jlissner @shravanjha options for the Upload class for the updated version has been changed and those changes seems not been updated on document. It's better you contact the author for proper documentation for a required package version.

hi @kantaharikrishna how do you resolve this issue? I'm having the exact issue.. What do you change in the upload class if I may ask?

In case it helps anyone: I fixed this issue by making sure that the file name passed to client.upload() has an extension. My file was named /tpm/foo/random-name-with-no-enxtension - renaming it with a .jpg at the end fixed the issue.


Correcting typos and applying French capitalization, punctuation and …

…accentuation rules. I hope I missed none of them :-)
(Following dictionaries and rules that I learned from a scientific publisher when I wrote a  book - French is also my native language...).

@KipK are you able to check this?

Thanks @tschiex

Avec plaisir Guillaume.


Failed to open Berkeley Packet Filter list

Hello congratulations for the hard work, I was asking if you can help, some time ago I found your post where you published two methods of attack, when I run them I get this error:
Failed to open Berkeley Packet Filter list own.bpfc
would you be kind to explain to me where I am wrong with the commands ?
below are the commands that fail:
hcxdumptool -i wlan0 -o vector1.pcapng --stop_ap_attacks=6000 --resume_ap_attacks=12000 --bpfc=own.bpfc --active_beacon --tot=10 --enable_status=1
initialization...
failed to open Berkeley Packet Filter list own.bpfc
start capturing (stop with ctrl+c)
NMEA 0183 SENTENCE........: N/A
INTERFACE NAME............: wlan0
INTERFACE HARDWARE MAC....: 3a6bb7cc7acd
DRIVER....................: iwlwifi
DRIVER VERSION............: 5.9.0-kali2-amd64
DRIVER FIRMWARE VERSION...: 46.8902351f.0 9000-pu-b0-jf-b0-
ERRORMAX..................: 100 errors
BPF code blocks...........: 0
FILTERLIST ACCESS POINT...: 0 entries
FILTERLIST CLIENT.........: 0 entries
FILTERMODE................: unused
WEAK CANDIDATE............: 12345678
ESSID list................: 0 entries
ROGUE (ACCESS POINT)......: a468bca17d7c (BROADCAST HIDDEN)
ROGUE (ACCESS POINT)......: a468bc007d7d (BROADCAST OPEN)
ROGUE (ACCESS POINT)......: a468bca17d7e (incremented on every new client)
ROGUE (CLIENT)............: c02250ba7efd
EAPOLTIMEOUT..............: 20000 usec
REPLAYCOUNT...............: 64809
ANONCE....................: 223a55602bbfb2f93a4d8ddeb58cda7325d183a028ec8e907424996f61156738
SNONCE....................: b95555a576beae360d5a3ced5f466b7c2dfa322e60da66c85d0282cefb3c080d
^C
terminating...
hcxdumptool -i wlan0 -o vector2.pcapng --tot=1440 --bpfc=own.bpfc --disable_deauthentication --disable_ap_attacks --active_beacon -c 1,9,6,3,11, -t 3600 --enable_status=1
initialization...
failed to open Berkeley Packet Filter list own.bpfc
Same mistake...!
Thanks for your kind attention.

To use a BERKELEY PACKET FILTER, you have to create the BERKELEY PACKET FILTER CODE first as described in --help:
--bpfc=<file>                      : input kernel space Berkeley Packet Filter (BPF) code
                                     affected: incoming and outgoing traffic - that include rca scan
                                     steps to create a BPF (it only has to be done once):
                                      set hcxdumptool monitormode
                                       $ hcxumptool -m <interface>
                                      create BPF to protect a MAC
                                       $ tcpdump -i <interface> not wlan addr1 11:22:33:44:55:66 and not wlan addr2 11:22:33:44:55:66 -ddd > protect.bpf
                                       recommended to protect own devices
                                      or create BPF to attack a MAC
                                       $ tcpdump -i <interface> wlan addr1 11:22:33:44:55:66 or wlan addr2 11:22:33:44:55:66 -ddd > attack.bpf
                                       not recommended, because important pre-authentication frames will be lost due to MAC randomization of the CLIENTs
                                      use the BPF code
                                       $ hcxumptool -i <interface> --bpfc=attack.bpf ...
                                     notice: this is a protect/attack, a capture and a display filter
                                     see man pcap-filter for a list of all filter options

General  information about BPF is here:
https://en.wikipedia.org/wiki/Berkeley_Packet_Filter

example:
protect AP (BSSID MAC:11:22:33:44:55:66)
$ hcxdumptool -m interface
$ tcpdump -i <interface> not wlan addr1 11:22:33:44:55:66 and not wlan addr2 11:22:33:44:55:66 -ddd > protect.bpf

Now you can add the filter code to hcxdumptool to protect this AP:
$ hcxdumptool -i wlan0 -o vector2.pcapng --tot=1440 --bpfc=protect.bpfc --disable_deauthentication --disable_ap_attacks --active_beacon -c 1,9,6,3,11, -t 3600 --enable_status=1

Closed this report, because it is not an issue, but you can still ask your questions here.

Heartfelt thanks for the help now all clear .... a hug

Nice to hear that.
The example is an advanced command line.

Hi Zerbea another help, always if possible, I would like both the attack and the client mode to be directed on a single Access Point target chosen by me, I do not want to attack or acquire all the traffic of all the Access Points or Clients, you would be kind to help me better filter both the attack and the monitor mode of customers directed towards a single Access Point ?
ATTACK:
hcxdumptool -i wlan0 -o vector1.pcapng --stop_ap_attacks=6000 --resume_ap_attacks=12000 --bpfc=own.bpfc --active_beacon --tot=10 --enable_status=1
Which filters should I add for a single Access Point attack ?
CLIENTS:
hcxdumptool -i wlan0 -o vector2.pcapng --tot=1440 --bpfc=own.bpfc --disable_deauthentication --disable_ap_attacks --active_beacon -c 1,9,6,3,11, -t 3600 --enable_status=1
Which filters should I add to filter clients traffic directed to a single Access Point ?
Thanks always for your kind attention.

First of all you should know that filtermode (in combination with filterlists) is not(!) a display filter.
Adding APs or CLIENTs to the lists will allow/prevent to attack them, but they are still shown in the waterfall status.
The BPF is working as a display filter, too.
Both methods have pros and cons, especially if the CLIENT use MAC RANDOMIZATION.
https://www.centurylink.com/home/help/internet/secure-wifi/What-is-MAC-randomization.html
If you knwo the AP MAC and the CLIENT MAC you can use a BPF. But be warned, all additional information from CLIENTs running MAC RANDOMIZATION is filtered out:
$ sudo hcxdumptool -m wlan0
$ sudo tcpdump -i wlan0  wlan addr1 11:11:11:11:11:11 or wlan addr2 11:11:11:11:11:11 or  wlan addr1 22:22:22:22:22:22 or wlan addr2 22:22:22:22:22:22 -ddd > attack.bpf
$ sudo hcxdumptool -i wlan0 -o vector1.pcapng --stop_ap_attacks=6000 --resume_ap_attacks=12000 --bpfc=attack.bpfc --enable_status=1

where
11:11:11:11:11:11 is your MAC AP
and
22:22:22:22:22:22 is your MAC CLIENT
Now wait until you got an EAPOL handshake or a PMKID.
If you have more CLIENTs, just add them to the tcpdump BP command line, separated by "or".

Perfect just tried thanks for the help....

Nice to hear that.
BTW:
You should know that hcxdumptool/hcxtools are designed as analysis tools. They have lots of options and are not easy to use unless you understand the whole 802.11 stuff.


Support interdependent vajram execution

Closing this as krystex design has changed significantly and the feature has been incorporated in the new design

Closing this as krystex design has changed significantly and the feature has been incorporated in the new design


Kotlinize the ScrollerCustomDuration

Converted the Scroller.
Although @paolorotolo I wasn't really able to make it work (haven't tried much honestly).
Do you know if this is like dead code?

Yes, I think it's needed for our public method setScrollDurationFactor() in AppIntroViewPager. Rewrite looks good BTW, thanks


Update styling of profile display + description

Looks like this now:

Used to look like:

Changes:

Radio button is vertically centered in the profile
Profile display name is a <h4>, and the description (if present) is rendered as a <p>, instead of being in parantheses.
Small bottom border to differentiate between profiles

@oliverroick would you have the time to give this a quick review?
These changes look good to me!


Introduce channel producer.

I took the liberty of trying out a new Distributing producer that works like random producer, but favors destinations that accept messages rather than producing errors.
I create a goroutine for each (topic, partitionNo) pair. If a goroutine encounters persistent errors writing to its topic and partition, it accepts new jobs less and less often using exponential back off. By accepting jobs less frequently, a goroutine encountering persistent errors leaves jobs available to goroutines that write successfully. Ultimately this strategy increases write throughput.
For my environment where I have one out of 5 KAFKA destinations permanently down, this strategy increases my write throughput by at least an order of magnitude. My application receives messages from various sources and writes them out to KAFKA. Using a round robin distributor, my application was unable to write data to KAFKA as fast as it was receiving data (80 thousand messages written for 1 million messages received). With this new channel producer, my application is able to write messages out to KAFKA as fast as it receives them in spite of persistent failures. At the beginning, my application falls behind as it tries to write to the failed destination, but within a few minutes, it catches up as the goroutines encountering errors eventually quit taking work.
This new distributing producer can only be used when each message can be written to any partition.

Pull request seem to be stale, assigning @PragmaticCypher as the responsible developer.

Hey, thanks for the pull request. I don't have time right now to review the code. I will read and comment as soon as I think this through.

I went trough your code, and first thing I noticed is that channelTopicProducerType does not implement neither Producer nor DistributingProducer interface.
I find it also very confusing that producer has consumePartition method that does not consume at all.
How about something like this:
func NewDistributingProducersPool(producers ...kafka.DistributingProducer) kafka.DistributingProducer {
        dpc := make(chan kafka.DistributingProducer, len(producers))
        for _, p := range producers {
                dpc <- p
        }
        return &distributionPool{producers: dpc}
}

type distributionPool struct {
        topic     string
        producers chan kafka.DistributingProducer
}

func (pool *distributionPool) Distribute(topic string, messages ...*proto.Message) (int64, error) {
        d := <-pool.producers
        off, err := d.Distribute(topic, messages...)
        pool.producers <- d
        return off, err
}

type constDistributingProducer struct {
        producer  kafka.Producer
        partition int32
}

func ConstDistributingProducer(p kafka.Producer, partition int32) kafka.DistributingProducer {
        return &constDistributingProducer{
                producer:  p,
                partition: partition,
        }
}

func (p *constDistributingProducer) Distribute(topic string, messages ...*proto.Message) (int64, error) {
        return p.producer.Produce(topic, p.partition, messages...)
}

/// create pool and publish messages from multiple goroutines
pool := NewDistributingProducersPool(
        ConstDistributingProducer(producer1, 0),
        ConstDistributingProducer(producer2, 1),
        ConstDistributingProducer(producer3, 2))
pool.Distribute("foo", &proto.Message{})

Idea behind this code is that slow producers will block single Distribute call, but if you're publishing from several goroutines, only one of them is slowed down.

It appears that you are proposing that each goroutine write to a particular
partition. This was the very strategy that I adopted at the beginning.
However, when I noticed in the existing kafka code a map of (topic,
partition) -> node, I understood that partition alone does not determine
the node/endpoint. Correct me if I am wrong, but it partition 1 for topic
"foo" may map to kiafka1.mykafka.net:9092 whereas partition 1 for topic
"bar" may map to kafka4.mykafka.net:9092.
The objective of adding channels and go-routines is simply to allow
producing to continue at a reasonable speed even if one or more kafka nodes
are down.
The success of my algorithm depends on each goroutine always producing to
the same node every time. If a node is down, its goroutine(s) will back off
of it exponentially taking work off the queue less and less often leaving
more and more work to the goroutines producing to the nodes that are up.
If a single go-routine could send request to any kafka node, and one kafka
node happens to be down, all goroutines will be affected equally by the
outage and be equally slow. This is not what we want. Instead we want to
slow down only the goroutines that always write to nodes that are already
down so that goroutines that write to the nodes that are up get all the
work.
This code change does not prevent errors if a kafka node happens to be
down. Callers will still see errors, if the distributing producer happens
to send their request to the failed node. However, over time, this code
change sends fewer and fewer requests to failed nodes so that the caller
sees fewer and fewer errors. Ultimately this increases throughput for the
caller as sending requests to a failed node is expensive because of all the
retries.
On Tue, Mar 1, 2016 at 7:13 AM, Piotr Husiatyński<EMAIL_ADDRESS>wrote:

I went trough your code, and first thing I noticed is that
channelTopicProducerType does not implement neither Producer nor
DistributingProducer interface.
I find it also very confusing that producer has consumePartition method
that does not consume at all.
How about something like this:
func NewDistributingProducersPool(producers ...kafka.DistributingProducer) kafka.DistributingProducer {
dpc := make(chan kafka.DistributingProducer, len(producers))
for _, p := range producers {
dpc <- p
}
return &distributionPool{producers: dpc}
}
type distributionPool struct {
topic     string
producers chan kafka.DistributingProducer
}
func (pool *distributionPool) Distribute(topic string, messages ...*proto.Message) (int64, error) {
d := <-pool.producers
off, err := d.Distribute(topic, messages...)
pool.producers <- d
return off, err
}
type constDistributingProducer struct {
producer  kafka.Producer
partition int32
}
func ConstDistributingProducer(p kafka.Producer, partition int32) kafka.DistributingProducer {
return &constDistributingProducer{
producer:  p,
partition: partition,
}
}
func (p *constDistributingProducer) Distribute(topic string, messages ...*proto.Message) (int64, error) {
return p.producer.Produce(topic, p.partition, messages...)
}
/// create pool and publish messages from multiple goroutinespool := NewDistributingProducersPool(
ConstDistributingProducer(producer1, 0),
ConstDistributingProducer(producer2, 1),
ConstDistributingProducer(producer3, 2))
pool.Distribute("foo", &proto.Message{})
Idea behind this code is that slow producers will block single Distribute
call, but if you're publishing from several goroutines, only one of them is
slowed down.
—
Reply to this email directly or view it on GitHub
https://github.com/optiopay/kafka/pull/56#issuecomment-190764151.

Sorry for long absence.
Thanks for explanation, now I understand your problem better and I think your way of solving is good. That said, I think this is solving problem that not many users of this package may have. That's why I prefer not to include it. I can assure that code in this package is live tested and working.
If you think this package would benefit from having this producer, I would like to see those two things to happen:

at least one more library user must confirm that this functionality is useful (we can use new +1 feature of github for this)
code has to be cleaned and commented

Understood. Thank you for looking over my pull request. What you say makes
sense. We can move this new producer into our own code base as I did not
have to change any of your code.  I agree that adding this producer to our
own code base makes the most sense.
Thanks again.
On Tue, Mar 15, 2016 at 5:51 AM, Piotr Husiatyński<EMAIL_ADDRESS>
wrote:

Sorry for long absence.
Thanks for explanation, now I understand your problem better and I think
your way of solving is good. That said, I think this is solving problem
that not many users of this package may have. That's why I prefer not to
include it. I can assure that code in this package is live tested and
working.
If you think this package would benefit from having this producer, I would
like to see those two things to happen:

at least one more library user must confirm that this functionality
is useful (we can use new +1 feature of github for this)
code has to be cleaned and commented

—
You are receiving this because you authored the thread.
Reply to this email directly or view it on GitHub:
https://github.com/optiopay/kafka/pull/56#issuecomment-196804460


Random formula

I think You should not be so strict with the expression with which the random number must be generated, forcing to use the expression Math.floor(Math.random( * (3 - 1 + 1)) + 1 (by the way is very silly -1+1 ) cuts creativity and interest in thinking in how to solve the problem the expression Math.floor(Math.random()*3)+1 is also valid but not accepted.

Already discussed and considered in #4009.

Closing as duplicate of  #4009


make a sample in the readme

[x] make a nice test suite example in the readme showing some of the nice tools
[x] also improve the readme to add a link to the documentation section from that first link instead of it going to the webpage.
[x] also think about making a script to generate the docs into the document browser instead of them having to type out that command. maybe overkill?

I think it is better for them to type out the command


Trouble training temporal cycle consistency model on a new dataset

I'm getting this error while trying to train the model on a new dataset:
tensorflow.python.framework.errors_impl.InvalidArgumentError: {{function_node __inference_<lambda>_59670}} Name: , Feature list 'frame_labels' is required but could not be found.  Did you mean to include it in feature_list_dense_missing_assumed_empty or feature_list_dense_defaults?          [[{{node ParseSingleSequenceExample/ParseSingleSequenceExample}}]]          [[MultiDeviceIteratorGetNextFromShard]]          [[RemoteCall]]          [[IteratorGetNext]] [Op:__inference_<lambda>_59670]

This means that your dataset doesn't have per-frame labels but your config.py does.  You can set
DATA.FRAME_LABELS: false
in config.py. Also remove 'classification', 'few_shot_classification' , 'event_completion' from EVAL.TASKS in config.py. These tasks also need per-frame labels for evaluation.

Hi @debidatta
I'm trying to create my own dataset too, but have trouble to convert per frame labels and converted to the tfrecord? I saw the create_tfrecords function which will take a JSON label file, do you have an example of how this JSON file will look like?

Apologies for the inconvenience.
JSON should be in following format:
{
  "VIDEO_NAME1": {
    "LABELER_ID": {
      "PHASE LABEL 1": [
        START TIME IN MICROSECOND,
        END TIME IN MICROSECOND
      ],
     "PHASE LABEL 2": [
        START TIME IN MICROSECOND,
        END TIME IN MICROSECOND
      ],
    }
  },
"VIDEO_NAME2": {
    "LABELER_ID": {
      "PHASE LABEL 1": [
        START TIME IN MICROSECOND,
        END TIME IN MICROSECOND
      ],
     "PHASE LABEL 2": [
        START TIME IN MICROSECOND,
        END TIME IN MICROSECOND
      ],
    }
  },
}

An example of JSON entry looks like this:
{
  "clearsoda_to_white12_real_view_0": {
    "0": {
      "0": [
        42246.0,
        1232406.0
      ],
      "1": [
        1265775.0,
        2111123.0
      ],
      "2": [
        2144492.0,
        4469198.0
      ],
      "3": [
        4502567.0,
        4847380.0
      ],
      "4": [
        4880749.0,
        6226631.0
      ]
    }
  },
}

Please note that by default we extend the first label to beginning of video and the last label to the end of video. We also assign the nearest timestamp's label to to any timestamp that doesn't fall in the segments in the JSON file. This is done to ensure that each frame has a label. You might want to provide your own dummy labels for frames not covered by any segments. Also consider modifying the annotation generating function.

Really appreciate the quick response!! That example helps a lot, thanks!

No problem. Happy to help.

Hi @debidatta sorry to pin you again. Maybe you can help with this issue too when you have time: https://github.com/google-research/google-research/issues/52 as well. Basically do we actually need per frame label to train TCC? Seems like per frame label is just for evaluation, right? Thank you!

Found it, need to set CONFIG.DATA.FRAME_LABELS = False

I thought that is unsupervised model, but it requires to label something :-\

Per-frame labels are only required to evaluate the model. You can still train a model without those labels. The default config has CONFIG.DATA.FRAME_LABELS = True. Setting it to False should allow you train a model and evaluate on 2 tasks: algo_loss and kendalls_tau.


Some problems with createuser.php

There is message appear on the browser here
"Fatal error: Can't use function return value in write context in C:\xampp\htdocs\PHP-Login-master\login\createuser.php on line 37"
Please kindly teach me how may I fix them. Sorry, I am very beginner programming.
Thank you in advance!

Hi, did you add anything to the code? If so, could you please post that
page's code for me? Thanks.
You might want to use the dev branch version for now, it's been drastically
updated from this version, just fyi.
On Thu, Jul 27, 2017 at 2:38 AM, Kenya Kobayahsi<EMAIL_ADDRESS>wrote:

There is message appear on the browser here
"Fatal error: Can't use function return value in write context in
C:\xampp\htdocs\PHP-Login-master\login\createuser.php on line 37"
Please kindly teach me how may I fix them. Sorry, I am very beginner
programming.
Thank you in advance!
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/fethica/PHP-Login/issues/100, or mute the thread
https://github.com/notifications/unsubscribe-auth/AH24ApHnaXpqgnxd4GDXwfAOIbUN7CKYks5sSDB9gaJpZM4Ok2jW
.

Having the same problem here, not sure how to fix it? Does it have to do with the config settings?

What is the dev branch version?  I noticed also someone used an installer to setup the login.php.  Please send the link to it.  - Rolfe

Pull the dev branch (on my fork) in using this command in your command
line: git clone -b dev https://github.com/therecluse26/PHP-Login.git
There are still a few bugs with the installer (but it might work just fine
for you, ymmv) on certain platforms, but the base platform is functioning
properly and has quite a few more features than the master branch. Hope
that helps! Basically, once you clone that, navigate in your web browser to
http://{base-directory-of-project}/install/index.php to start the
installation process
On Wed, Sep 13, 2017 at 4:32 PM, comconet<EMAIL_ADDRESS>wrote:

What is the dev branch version? I noticed also someone used an installer
to setup the login.php. Please send the link to it. - Rolfe
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/fethica/PHP-Login/issues/100#issuecomment-329288304,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AH24Ap66dqKqQFGQMLOlDLGUaaWsexMPks5siDvSgaJpZM4Ok2jW
.


Strip compiler generated stuff from completions

Fix for https://github.com/haskell/haskell-ide-engine/issues/903
While working on this I noticed that there's similar issue when you hover over record selectors with DuplicateRecordFields enabled. I'd treat that in separate PR

LGTM, happy for the other to be a separate PR.  And we can perhaps make one for the $f prefix too, once we have an appropriate test case for it.
I wonder if we should just strip anything of the form $[a-z]+:.

And it looks like it is going to need a fixup, based on the PR that just landed.

Rebased onto master.
$[a-z]+:.  doesn't seem to cover the $f and $fx thing.
But I agree this should be generalized. I'll grep through the GHC codebase to see how to best generalize stripAutoGenerated so it can also be reused for on hover functionality.


[Feature] Add a flag to make zero downtime upgrades optional

Why are these changes needed?
For LLM serving, some users might not have sufficient GPU resources to run two RayClusters simultaneously.
Therefore, KubeRay offers ENABLE_ZERO_DOWNTIME as a feature flag for zero-downtime upgrades.
Related issue number
Closes #1476
Checks

[ ] I've made sure the tests are passing.
Testing Strategy

[x] Unit tests
[x] Manual tests
[ ] This PR is not tested :(

# Modify `values.yaml` to disable zero-downtime upgrade
# - name: ENABLE_ZERO_DOWNTIME
#   value: "false"

# (Path: helm-chart/kuberay-operator)
helm install kuberay-operator . --set image.repository=controller,image.tag=latest

# Install a RayService.
kubectl apply -f ray_v1alpha1_rayservice.yaml

# Forward the port for serving in a new terminal
kubectl port-forward svc/rayservice-sample-serve-svc 8000

# Send a request to the serve port.
curl -X POST -H 'Content-Type: application/json' localhost:8000/fruit/ -d '["PEAR", 12]'
# [Expected output]: 12

# Test in-place update
# Update the price of `PearStand` from 1 to 2.
#  - name: PearStand
#     num_replicas: 1
#     user_config:
#         price: 2
kubectl apply -f ray_v1alpha1_rayservice.yaml

# Send a request to the serve port again.
curl -X POST -H 'Content-Type: application/json' localhost:8000/fruit/ -d '["PEAR", 12]'
# [Expected output]: 24

# Test zero-downtime upgrade.
# Set `rayVersion: '2.100.0'` in the RayService YAML to trigger the Zero-downtime upgrade.
kubectl apply -f ray_v1alpha1_rayservice.yaml

# [Expected result]: No new RayCluster will be created.

# Check logs
kubectl logs kuberay-operator-8fd6754b4-zvlxb | grep "Zero-downtime upgrade is disabled"
# You should see something like:
# 2023-10-25T18:08:47.993Z        INFO    controllers.RayService  Zero-downtime upgrade is disabled (ENABLE_ZERO_DOWNTIME: false). Skip preparing a new RayCluster.

@architkulkarni I have already added the details about manual tests.

cc @YQ-Wang