Implement Hash for Number.

This is the minimal version of my previous PR #790. I implemented the Eq and Hash traits for the Number type, regardless of its definition. Contrarily to my previous PR, this is strictly limited to the Number type.
I was originally going to use the ordered_float crate for that, but it turns out it is much simpler to do it manually. It avoids a dependency, and this library is not compatible with Rust 1.31.0 because it uses const parameters somewhere in the code of an optional feature, which has a syntax that is not supported with this version of Rust.
I had to manually implement PartialEq for Number to please clippy.

I've added a test in the hash function to use the +0 hash for both +0 and -0. I've also added a test that cover this case.
With the arbitrary_precision feature, +0 and -0 are not equals so no problem here.

Oh right, my test does not work with arbitrary_precision of course, let me fix that.


avoid build script failed if multi path exist in GOPATH

Signed-off-by: Crazykev<EMAIL_ADDRESS>

LGTM. Thanks for fix.


Add json tags to internal api fields

Fixes #1121
Plugin arg objects refer to the internal API type for some settings, but those types don't have json tags which causes an error trying to decode the config. This adds json tags to those types and sets up a new github workflow for testing that the descheduler is deployed in a kind cluster and starts running successfully.
As a follow up, we should expand the test suite to cover all possible plugin configurations (ie, a big config file that uses every setting possible) for both v1alpha1 and v1alpha2.
We also might want to just copy these internal types to the v1alpha2 package and use those, if possible.

/lgtm

I think the test above tests all inner args of the strategy plugins, but now thinking about it you mean like e2e tests that actually tests the file, right (instead of direct go types)? That makes sense

yup, that's what I mean. the yaml->go type decoding can bring up tiny bugs like this

which internal types?

api.Namespaces and api.PriorityThreshold

Plugin arg objects refer to the internal API type for some settings, but those types don't have json tags which causes an error trying to decode the config.

I wonder why these errors have not been caught by the unit tests. There are some unit tests with the policy configuration as a string.

As a follow up, we should expand the test suite to cover all possible plugin configurations (ie, a big config file that uses every setting possible) for both v1alpha1 and v1alpha2.
We also might want to just copy these internal types to the v1alpha2 package and use those, if possible.

I don't think we have touched the topic of plugin versioning when it comes to using internal types in the plugin arguments. Internal types can change at any point. For that they should not be directly imported by any versioned type. Given the namespace filtering is plugin-scoped, there's no need to have an internal type for it. On the other hand it is a common field shared across plugin arguments. So we need to make sure the same sets of fields will get used in every in-tree plugin so we can still publish a common API for configuring it. The priority thresholds might be easier to remove from the internal types as they should be used only by the DefaultEvictor.
Anyway, something to follow up later on.


Allow existing role when creating new AutoScalingGroup

My company does not allow the creation of roles except by our InfoSec department. Because of this we need to separate all cloudformation into parts. One that the AWS admins can run which includes only roles, and the other for developers.
Issue #205 has a good discussion regarding whether to allow users to bring their own roles when defining new resources. #205 was eventually closed with a fix to allow a preexisting role to be passed in when creating new lambdas.
Does AutoScalingGroup allow a role to be passed in somehow? If not, the same type of fix should be made for AutoScalingGroupProps which currently does not accept a role. Perhaps the fix should look like this:

Add the following property to AutoScalingGroupProps
role?: iam.IRole;

Add conditional to this.role = ... in AutoScalingGroup (auto-scaling-group.ts)
this.role = props.role || new iam.Role(this, ...

Thanks for raising this. I think a role property to ASG makes sense


Updating attributes does not always work

If you sent a message with action="update" with the intent to update color or text, neither will not be updated. The only way to "update" color and text is by making an action="create" message. I do not think this should be the desired way to update color and text.

Managed to get color updates working in 4fbb99a, but text is a bit tougher.

Added text updates, but am not sure if there are more specific cases like these I need to account for when action="update". Closing for now.


semantic-release with support for Github/npm

Website
https://semantic-release.gitbook.io/semantic-release
Documentation
https://semantic-release.gitbook.io/semantic-release
Integration summary

Install the following dependencies: semantic-releae, @semantic-release/commit-analyzer,                 @semantic-release/npm, @semantic-release/github, husky and lint-staged (see notes below)
modify package.json and the following section:

        "release": {
                "plugins": [
                        "@semantic-release/commit-analyzer",
                        "@semantic-release/release-notes-generator",
                        "@semantic-release/github"
                ],
                "branches": [
                        "main",
                        "next"
                ]
        },
        "lint-staged": {
                "**/*.{js,jsx,ts,tsx,html,css,json}": [
                        "pnpm run format"
                ]
        }
}

Also add the following scripts to package.json:

                "lint": "prettier --check . && eslint .",
                "lint-staged": "lint-staged",
                "format": "prettier --write .",
                // setup husky
                "prepare": "husky",
                // ensure everyone has commit hooks set up
                "postinstall": "pnpm run prepare",
                // actual semantic-release script
                "release": "semantic-release"

Add the following to `.husky/pre-commit'

#!/bin/sh
. "$(dirname "$0")/_/husky.sh"

# dlx downloads "lint-staged" every time, resulting in long commit delays
# when internet connection is slow
# Solution: Install as dev dependency and run as target from package.json instead
pnpm run lint-staged

Add the following to Github actions (further configuration for repository permissions is required)

      - name: Release
        env:
          GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
          # Publishing to NPM is not necessary for websites
          # NPM_TOKEN: ${{ secrets.NPM_TOKEN }}
        run: pnpm run release

Further details
Explanation
This request is augmenting the Github pages composer.
As a note ahead, the formatting and linting might be a seperate composer. It is just how I did it.
Setting up a Continuous Integration, Delivery and Deployment pipeline can take several hours per repository.
Using Conventional Commits and semantic-release can help to fully automated the process, including

automated semantic versioning
tagging in Git
publishing a release to npm or Github pages
Release notes on Github

The composer should take over additional tasks to ensure a consistent and productive development experience:

check format of commit messages using husky
Lint and fix any changed files using lint-staged for consistent formatting using prettier (shipped with sveltekit)

Options
Ask for

github and npm plug-ins of semantic-releae
ask for lint-staged, and husky

Configure Github Actions
The Github Actions are already configured to build and deploy the project to Github Pages.
Therefor you need to set two permissions in the settings of your repository:

In your browser, open the repository settings
Go to the Actions section
In the Workflow permissions, select Read and write permissions
Check Allow GitHub Actions to create and approve pull requests

Initially brought up by @tburny in https://github.com/svelte-compose/svelte-compose/issues/22

is this meant to be an adder? or is this meant for this repo? if the latter, then I think changesets are a fine enough solution for this. if it's the former, then i feel it's out of the scope of being a "svelte adder"

It was meant as the first one. Now that we have a clearer image on what svelte-add is and will be, I totally agree. Therefore closing.


Success Method after loading

Very interesting and amazing concept. Would be perfect if add a method of success (at the end of progress show successful label or icon) before back for the initial button label.

Is it enough to put a check box symbol ✔ instead of spinner for a second before returning to the initial button label?

@terales I think that would be great.

I have no capacity to implement it, so anyone is welcome to contribute.

@theodorejb @terales
Can this feature gets assigned to me? I am willing to create PR. Thanks

Go ahead! This issue has been waiting for several years for you

Thanks @terales  i will start work on this.

Hello together i have finished this long awaited feature and it works flawlessly.
Very soon i will post it here.
Stay tuned!

So its showtime ^_^
Both types are supported normal ladda's and ladda's with progressbar.
In the demo i only show progessbars with this functionality.
Eventually more is planned.
https://jsfiddle.net/ThinkBIGCompany/btxqcjgv/


Multi domain rewrite to a subpath

Before opening, please confirm:

[X] I have checked the custom domains troubleshooting guide.
[X] I have read the guide for submitting bug reports.
[X] I have done my best to include a minimal, self-contained set of instructions for consistently reproducing the issue.

App Id
d5iylbmcud474
Region
eu-west-1
Step
Rewrite to a subpath
Status
not working
Issue or question
hi,
In My app I have to different domain, and I need to redirect from root of domain to a subpath i.e.
www.first.domain.com redirect to www.first.domain.com/something
and
www.second.domain.com redirect to www.second.domain.com/something-else
i tried to use rewrite and redirect rules, but the only one that works is this one:
 {         "source": "/",         "target": "/something",         "status": "200",         "condition": null     }
but with this rule both domains will be redirected in the same subpath.
is possible to do that?
Error message
No response
Additional information
No response

Hi, we are having the same issue. If we try to add a rewrite like this it doesn't work
 { "source": "https://sub1.domain1.com/path<*>", "target": "https://domain2/<*>", "status": "200", "condition": null }

The only thing that works is this
 { "source": "/path<*>", "target": "https://domain2/<*>", "status": "200", "condition": null }

We want to do a rewrite for different subdomains but it's not letting us do that.


Some stylistic changes in Ukrainian translations. Better style is used

Please see the explanation of why previous variant was worse:
goo.gl/RjBwEX

Accepted and merged. Thanks!


Atomics Required?

Wondering why Atomics are needed in Box2D? I dont see any other code spawning new threads, and thought Box2D was single threaded.
https://github.com/HumMan/box2d-rs/blob/c6e0929ed5dd473c20fef9a168ca254653dd5e84/src/b2_time_of_impact.rs#L5

Wondering why Atomics are needed in Box2D? I dont see any other code spawning new threads, and thought Box2D was single threaded.
https://github.com/HumMan/box2d-rs/blob/c6e0929ed5dd473c20fef9a168ca254653dd5e84/src/b2_time_of_impact.rs#L5

Hi, it is here only for safe way to use global static variables,
pub static B2_TOI_TIME: AtomicU64 = AtomicU64::new(0);
/// ns
pub static B2_TOI_MAX_TIME: AtomicU64 = AtomicU64::new(0);

pub static B2_TOI_CALLS: AtomicUsize = AtomicUsize::new(0);
pub static B2_TOI_ITERS: AtomicUsize = AtomicUsize::new(0);
pub static B2_TOI_MAX_ITERS: AtomicUsize = AtomicUsize::new(0);
pub static B2_TOI_ROOT_ITERS: AtomicUsize = AtomicUsize::new(0);
pub static B2_TOI_MAX_ROOT_ITERS: AtomicUsize = AtomicUsize::new(0);

example of changing value of it
B2_TOI_ROOT_ITERS.store(0, Ordering::SeqCst);
let load_b2_toi_root_iters = B2_TOI_ROOT_ITERS.load(Ordering::SeqCst);
B2_TOI_ROOT_ITERS.fetch_add(1, Ordering::SeqCst);

Ahh gotcha, its because one of the goals you outlined was to not use unsafe.
I've forked the repo and removed the atomics, in case anyone is interested: https://github.com/tenetcomputer/box2d-rs
Closing the issue now.


Same Input, Different Explanation

Thanks for your code.
I used LIME in Tensorflow for MNIST. Why the same input for explanation e.g. "7" has different explained outputs? I run this code several times, and each time the image from explanation has minor differences with others. Is this because each time we have different num_samples=1000 ? If yes how can we fix these samples? I also tried this solution https://github.com/marcotcr/lime/issues/67 , but still get different outputs for the same input.
explainer = LimeImageExplainer()
explanation = explainer.explain_instance(test_d['features'][0].astype('float32'), predict_proba,
                                         top_labels=10, num_samples=1000,
                                         random_seed=42)
temp, mask = explanation.get_image_and_mask(explanation.top_labels[0], positive_only=True, num_features=5, hide_rest=True)
plt.imsave('MNIST_LIME.png', mark_boundaries(temp / 255, mask))

explainer = LimeImageExplainer()
def explain(instance, predict_fn, top_labels, num_samples):
    np.random.seed(16)
    return explainer.explain_instance(instance, predict_fn, top_labels, num_samples)

explanation = explain(test['features'][0].astype('float32'), predict_proba, top_labels=1, num_samples=1000)
temp, mask = explanation.get_image_and_mask(explanation.top_labels[0], positive_only=True, num_features=5, hide_rest=True)
plt.imsave('MNIST_LIME.png', mark_boundaries(temp / 255, mask))

Sorry. Try calling explainer.random_state.seed(1) instead of np.random.seed(16), reopen if it doesn't fix it (it should)


[suggestion] ChangeBuilder to check visible type before writeType()

To handle DartEditBuilder.writeType() for unreferenceable type, there is a pattern of checking the visible type:
https://github.com/dart-lang/sdk/blob/fc4d4144fb0503cc4bebb46cc478ef7a9538fced/pkg/analysis_server/lib/src/services/correction/dart/add_type_annotation.dart#L84-L86
How about if we add two methods in ChangeBuilder and DartEditBuilder, so that we have something like:
ChangeBuilder builder = ...
DartEditBuilder dartEditBuilder = builder.getDartEditBuilder(String path);
// expose the existing _getVisibleType()
if (dartEditBuilder.getVisibleType(type) != null) {
  // make the needed changes
}

I believe this would be better pattern to use.

I would rather have a method like
bool canWriteType(DartType type) { ... }

that returns the same value as writeType would return when given the same type. That way, if writeType needs to fail under other circumstances in the future user code will still be predicated on the correct semantics.

https://dart-review.googlesource.com/c/sdk/+/210463

Fixed in https://github.com/dart-lang/sdk/commit/86898c2ee6ad46758a43a197bcdc374591f2c5a5


Breaking due to infinite recursion install bug with CircleCI CLI

The Install CircleCI CLI step is currently failing. See https://github.com/CircleCI-Public/circleci-cli/issues/941 for context.
A potential workaround is pinning the version but that currently fails due to https://github.com/CircleCI-Public/circleci-cli-orb/issues/13. Its not clear to me whether the repository is being maintained given that the PR has been up for a while.
I see two main options here:

Wait for CircleCI CLI team to merge and publish a fix.
Hotfix this orb by replacing the circleci/install call. I.e. Copy the fixed version of the script that respects the VERSION parameter (from the PR linked above) and use that in-place of the call.

This is breaking some builds for me, so I'll prefer 2, but I understand that requires some additional resources and increases the maintenance surface area.

This is also affecting me as well from using this orb

@Joshua-Igoni fyi this should be resolved now. They've fixed the upstream circleci-cli issue.
I'm going to close this issue. There is still a longer-term issue but ideally that'll be fixed by https://github.com/CircleCI-Public/circleci-cli-orb/issues/13 now that there's more visibility

I didn't see this. I've since hit issues with the CLI, also, so I've pinned the version as of several releases ago.


Travis failing when using Julia v0.4 (nightlies) because it cannot load Requests object

WARNING: type JLD.AssociativeWrapper{Core.String,Core.String,Base.Dict{Core.String,Core.String}} not present in workspace; reconstructing
WARNING: type Core.String not present in workspace; interpreting array as Array{Any}
WARNING: type Core.String not present in workspace; interpreting array as Array{Any}
ERROR: LoadError: LoadError: MethodError: `convert` has no method matching convert(::Type{Dict{AbstractString,AbstractString}}, ::JLD.##JLD.AssociativeWrapper{Core.String,Core.String,Base.Dict{Core.String,Core.String}}#31615)
This may have arisen from a call to the constructor Dict{AbstractString,AbstractString}(...), since type constructors fall back to convert methods in julia v0.4.
Closest candidates are:
  convert{T}(::Type{Nullable{T}}, ::T)
  convert{T}(::Type{T}, ::T)
  convert{T}(::Type{FloatRange{T}}, !Matched::FloatRange{T<:FloatingPoint})
  ...

 in jlconvert at /home/travis/.julia/v0.4/HDF5/src/jld_types.jl:406
 in read_scalar at /home/travis/.julia/v0.4/HDF5/src/JLD.jl:359
 in read at /home/travis/.julia/v0.4/HDF5/src/JLD.jl:331
 in read at /home/travis/.julia/v0.4/HDF5/src/JLD.jl:316
 in anonymous at /home/travis/.julia/v0.4/HDF5/src/JLD.jl:978
 in jldopen at /home/travis/.julia/v0.4/HDF5/src/JLD.jl:237
 in load at /home/travis/.julia/v0.4/HDF5/src/JLD.jl:977
 in include at ./boot.jl:249
 in include_from_node1 at ./loading.jl:128
 in include at ./boot.jl:249
 in include_from_node1 at loading.jl:128
 in process_options at ./client.jl:312
 in _start at ./client.jl:396
while loading /home/travis/.julia/v0.4/Quandl/test/timearray.jl, in expression starting on line 6
while loading /home/travis/.julia/v0.4/Quandl/test/runtests.jl, in expression starting on line 3

===============================[ ERROR: Quandl ]================================

failed process: Process(`/usr/bin/julia --check-bounds=yes --code-coverage=user --inline=no --color=no /home/travis/.julia/v0.4/Quandl/test/runtests.jl`, ProcessExited(1)) [1]

Here is the entire log

Closing this for now, testing suite under review.


Training is stuck at some point, I'm not sure if it is a PyTorch problem

Expected results
There should be no problem for training.
Actual results
Training is stuck at [Step 553061 / 720000]. GPU utilization is 0% but memory is not released.
I waited for 2 days but it didn't resume so I killed the job.
It seems the problem is caused by dataloader deadlock, I got the following message when I killed the job:
Exception ignored in: <bound method _DataLoaderIter.__del__ of <torch.utils.data.dataloader._DataLoaderIter object at 0x7f33d805aa20>>
Traceback (most recent call last):
  File "/home/bcheng/anaconda3/lib/python3.6/site-packages/torch/utils/data/dataloader.py", line 349, in __del__
Process Process-19:
    self._shutdown_workers()
  File "/home/bcheng/anaconda3/lib/python3.6/site-packages/torch/utils/data/dataloader.py", line 340, in _shutdown_workers
    self.worker_result_queue.put(None)
  File "/home/bcheng/anaconda3/lib/python3.6/multiprocessing/queues.py", line 346, in put
    with self._wlock:
  File "/home/bcheng/anaconda3/lib/python3.6/multiprocessing/synchronize.py", line 96, in __enter__
    return self._semlock.__enter__()
KeyboardInterrupt:
Traceback (most recent call last):
  File "tools/train_net_step.py", line 415, in main
    input_data = next(dataiterator)
  File "/home/bcheng/anaconda3/lib/python3.6/site-packages/torch/utils/data/dataloader.py", line 276, in __next__
    raise StopIteration
StopIteration

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/home/bcheng/anaconda3/lib/python3.6/multiprocessing/process.py", line 258, in _bootstrap
    self.run()
  File "/home/bcheng/anaconda3/lib/python3.6/multiprocessing/process.py", line 93, in run
    self._target(*self._args, **self._kwargs)
  File "/home/bcheng/anaconda3/lib/python3.6/site-packages/torch/utils/data/dataloader.py", line 61, in _worker_loop
    data_queue.put((idx, samples))
  File "/home/bcheng/anaconda3/lib/python3.6/multiprocessing/queues.py", line 346, in put
    with self._wlock:
  File "/home/bcheng/anaconda3/lib/python3.6/multiprocessing/synchronize.py", line 96, in __enter__
    return self._semlock.__enter__()
KeyboardInterrupt

INFO train_net_step.py: 442: Save ckpt on exception ...
INFO train_net_step.py: 135: save model: Outputs/e2e_faster_rcnn_R-50-FPN_1x/Aug20-13-57-33_ifp-gup-03_step/ckpt/model_step553070.pth
INFO train_net_step.py: 444: Save ckpt done.
Traceback (most recent call last):
  File "tools/train_net_step.py", line 424, in main
    net_outputs = maskRCNN(**input_data)
  File "/home/bcheng/anaconda3/lib/python3.6/site-packages/torch/nn/modules/module.py", line 491, in __call__
    result = self.forward(*input, **kwargs)
  File "/home/bcheng/Codes/github/Detectron.pytorch/lib/nn/parallel/data_parallel.py", line 108, in forward
    outputs = [self.module(*inputs[0], **kwargs[0])]
  File "/home/bcheng/anaconda3/lib/python3.6/site-packages/torch/nn/modules/module.py", line 491, in __call__
    result = self.forward(*input, **kwargs)
  File "/home/bcheng/Codes/github/Detectron.pytorch/lib/modeling/model_builder.py", line 144, in forward
    return self._forward(data, im_info, roidb, **rpn_kwargs)
  File "/home/bcheng/Codes/github/Detectron.pytorch/lib/modeling/model_builder.py", line 175, in _forward
    box_feat = self.Box_Head(blob_conv, rpn_ret)
  File "/home/bcheng/anaconda3/lib/python3.6/site-packages/torch/nn/modules/module.py", line 491, in __call__
    result = self.forward(*input, **kwargs)
  File "/home/bcheng/Codes/github/Detectron.pytorch/lib/modeling/fast_rcnn_heads.py", line 110, in forward
    sampling_ratio=cfg.FAST_RCNN.ROI_XFORM_SAMPLING_RATIO
  File "/home/bcheng/Codes/github/Detectron.pytorch/lib/modeling/model_builder.py", line 291, in roi_feature_transform
    resolution, resolution, sc, sampling_ratio)(bl_in, rois)
  File "/home/bcheng/Codes/github/Detectron.pytorch/lib/modeling/roi_xfrom/roi_align/functions/roi_align.py", line 16, in forward
    def forward(self, features, rois):
  File "/home/bcheng/anaconda3/lib/python3.6/site-packages/torch/utils/data/dataloader.py", line 178, in handler
    _error_if_any_worker_fails()
RuntimeError: DataLoader worker (pid 10494) is killed by signal: Killed.

Detailed steps to reproduce
E.g.:
CUDA_VISIBLE_DEVICES=2 python3 tools/train_net_step.py --dataset coco2017 --cfg configs/baselines/e2e_faster_rcnn_R-50-FPN_1x.yaml --bs 2 --nw 4

System information

Operating system: Ubuntu 16.04.4
CUDA version: 9.1
cuDNN version: 7
GPU models (for all devices if they are not all the same): 1080ti
python version: 3.6.5
pytorch version: 0.4.0
Anything else that seems relevant: I did not modify any code.

@bowenc0221 , I am facing similar issues. This usually happens when the GPU memory usage approaches its max limit i.e when the GPU is almost out of memory.
Another problem I am facing is that the GPU memory usage gradually grows during the course of training until the training crashes/hangs

@ShethR Thanks for your reply.
For the second problem, I guess it is because the spatial resolution in a minibatch size keeps changing during training. Especially when padding is needed.

I also met this problem  when using TITANV and V100 with 2 images per GPU.

As @bowenc0221 mentioned, this problem is caused by a deadlock inside the dataloader when num_workers > 1.
Using num_workers=1 temporarily solves this issue for me.

As @bowenc0221 mentioned, this problem is caused by a deadlock inside the dataloader when num_workers > 1.
Using num_workers=1 temporarily solves this issue for me.

Actually I can't solve the problem by setting  num_workers==1. Any other method? Thanks

Same here, any updates? Thanks.

same here..in multi gpu training one gpu utilization set to 0 and rest are using their 100%...no error message ...any update ?


Using a private repository for targets

I'm currently evaluating Yotta for use in building some of our embedded systems.  A majority of these systems are custom hardware (most likely based around a standard SoC).  Currently, there does not seem to be a way to use a Yotta target that is not published (without target-link).  For example, for a given project, I might want to instruct other developers to do the following:
$ yotta target git+ssh://internal.git.server/project/target-custom-board.git

But this currently gives the following error:
 yotta.lib.access_common.AccessException: Target name "git+ssh://internal.git.server/project/target-custom-board.git" is not valid (must contain only lowercase letters, hyphen, plus, and numbers)

Putting this as the target in .yotta.json does not work either.  This seems like functionality that will be critical for use in real systems moving forward as customer do not and should not have any interesting in publicly releasing targets for their custom boards.

We are using the following .yotta.json
{
  "build": {
    "target": "st-nucleo-f091rc-gcc,tridonic-com/st-nucleo-f091rc-gcc"
  }
}

to point to our target on GitHub. TO point to non-GitHub repos use the following syntax:
<EMAIL_ADDRESS>

:thumbsup: that will work.

in general the same mechanism is used for downloading targets and modules, so the things here will work: http://yottadocs.mbed.com/tutorial/privaterepos.html except instead of specifying the source URL in "dependencies" of a module.json file, it needs to be specified where the target is set (either in the current directory's .yotta.json file, or in your global ~/.yotta/config.json file if there isn't a local one). You can also use this syntax in the inherits: property in target.json files.
I will leave this issue open to track the need for better documentation & a simpler way of doing this.

Sounds good.  One issue I am running into now is that some URLs in our system use the tilde (~) character in paths which seem to be disallowed.
The examples in the documentation start with git+ssh:// which does not seem to be allowed in this context.

OK, both of those sound like bugs. What are the error messages when you try to use ~ / git+ssh?

(if I set, for example:
yotta target custom-board,git+ssh://internal.git.server/~project/target-custom-board.git
or equivalently:
{
  "build": {
    "target": "custom-board,git+ssh://internal.git.server/~project/target-custom-board.git"
  }
}

yotta correctly tries to access the git repo at git+ssh://internal.git.server/~project/target-custom-board.git
Does it fail later than that?

I think I was missing the target name as the first part of the comma-separated tuple before.  That was probably what was going wrong.

ok, that sounds like it would have caused the error you saw :+1:

Indeed.  I was able to get this working as described last night when testing out the frdm-k22f-gcc target I added (published in the registry now as well): https://github.com/posborne/target-frdm-k22f-gcc


Expose playerVars

Such as rel, controls, etc...
https://developers.google.com/youtube/player_parameters?hl=en

Yes, the internal version has it. I'll update the OSS version soon.

Nice one :)

Fixed! Please try out v0.2.0 from npm.
https://github.com/paramaggarwal/react-native-youtube/releases/tag/v0.2.0

An example of how to use this? @paramaggarwal


kubectl returns "connection refused" error after upgrade/rollback

Rancher versions:
rancher/server: Upgrade from 1.6.2 to 1.6.5 and rollback
**Docker version: (docker version,docker info preferred)**1.12.6
**Operating system and kernel: (cat /etc/os-release, uname -r preferred)**Ubuntu
**Type/provider of hosts: (VirtualBox/Bare-metal/AWS/GCE/DO)**GCE
**Setup details: (single node rancher vs. HA rancher, internal DB vs. external DB)**Single node
**Environment Template: (Cattle/Kubernetes/Swarm/Mesos)**Cattle
Steps to Reproduce:

Create a Kubernetes setup in v1.6.2 with no auth enabled
Upgrade to rancher v1.6.5. Upgrade Kubernetes to v1.6
Rollback rancher to v1.6.2. Rollback Kubernetes to v1.5.4

Results:
After rollback, kubectl returns the below error
root@4498a8c1a420:/# kubectl get node
The connection to the server localhost:8080 was refused - did you specify the right host or port?

Kubernetes API server logs:
Unknown Date
7/27/2017 5:08:46 PME0728 00:08:46.832410       1 cacher.go:260] unexpected ListAndWatch error: pkg/storage/cacher.go:201: Failed to list *rbac.ClusterRoleBinding: no kind "ClusterRoleBinding" is registered for version "rbac.authorization.k8s.io/v1beta1"
Unknown Date
7/27/2017 5:08:47 PME0728 00:08:47.598322       1 cacher.go:260] unexpected ListAndWatch error: pkg/storage/cacher.go:201: Failed to list *rbac.ClusterRoleBinding: no kind "ClusterRoleBinding" is registered for version "rbac.authorization.k8s.io/v1beta1"
Unknown Date
7/27/2017 5:08:47 PME0728 00:08:47.834218       1 cacher.go:260] unexpected ListAndWatch error: pkg/storage/cacher.go:201: Failed to list *rbac.ClusterRoleBinding: no kind "ClusterRoleBinding" is registered for version "rbac.authorization.k8s.io/v1beta1"
Unknown Date
7/27/2017 5:08:48 PME0728 00:08:48.600455       1 cacher.go:260] unexpected ListAndWatch error: pkg/storage/cacher.go:201: Failed to list *rbac.ClusterRoleBinding: no kind "ClusterRoleBinding" is registered for version "rbac.authorization.k8s.io/v1beta1"
Unknown Date
7/27/2017 5:08:48 PME0728 00:08:48.840555       1 cacher.go:260] unexpected ListAndWatch error: pkg/storage/cacher.go:201: Failed to list *rbac.ClusterRoleBinding: no kind "ClusterRoleBinding" is registered for version "rbac.authorization.k8s.io/v1beta1"
Unknown Date
7/27/2017 5:08:49 PME0728 00:08:49.602627       1 cacher.go:260] unexpected ListAndWatch error: pkg/storage/cacher.go:201: Failed to list *rbac.ClusterRoleBinding: no kind "ClusterRoleBinding" is registered for version "rbac.authorization.k8s.io/v1beta1"
Unknown Date
7/27/2017 5:08:49 PME0728 00:08:49.843025       1 cacher.go:260] unexpected ListAndWatch error: pkg/storage/cacher.go:201: Failed to list *rbac.ClusterRoleBinding: no kind "ClusterRoleBinding" is registered for version "rbac.authorization.k8s.io/v1beta1"
Unknown Date
7/27/2017 5:08:50 PME0728 00:08:50.604878       1 cacher.go:260] unexpected ListAndWatch error: pkg/storage/cacher.go:201: Failed to list *rbac.ClusterRoleBinding: no kind "ClusterRoleBinding" is registered for version "rbac.authorization.k8s.io/v1beta1"
Unknown Date
7/27/2017 5:08:50 PME0728 00:08:50.845012       1 cacher.go:260] unexpected ListAndWatch error: pkg/storage/cacher.go:201: Failed to list *rbac.ClusterRoleBinding: no kind "ClusterRoleBinding" is registered for version "rbac.authorization.k8s.io/v1beta1"
Unknown Date
7/27/2017 5:08:51 PME0728 00:08:51.606789       1 cacher.go:260] unexpected ListAndWatch error: pkg/storage/cacher.go:201: Failed to list *rbac.ClusterRoleBinding: no kind "ClusterRoleBinding" is registered for version "rbac.authorization.k8s.io/v1beta1"
Unknown Date
7/27/2017 5:08:51 PME0728 00:08:51.847989       1 cacher.go:260] unexpected ListAndWatch error: pkg/storage/cacher.go:201: Failed to list *rbac.ClusterRoleBinding: no kind "ClusterRoleBinding" is registered for version "rbac.authorization.k8s.io/v1beta1"

Upgraded from rancher v1.5.7 with Kubernetes environment to v1.6.6-rc5. Upgraded Kubernetes from v1.5.4-rancher-1-4 to v1.7.2-rancher5. Upgrade succeeded and post upgrade checks were ok.
Rolledback rancher from v1.6.6-rc5 to v1.5.7. Rolled back all the infra stacks followed by rollingback Kubernetes to v1.5.4-rancher-1-4.
Results:
After rollback kubectl returns the below error:
root@98e4c55f3a74:/# kubectl get node
The connection to the server localhost:8080 was refused - did you specify the right host or port?

Kubernetes API server logs
Unknown Date
7/28/2017 2:59:19 PME0728 21:59:19.771855       1 cacher.go:260] unexpected ListAndWatch error: pkg/storage/cacher.go:201: Failed to list *rbac.ClusterRoleBinding: no kind "ClusterRoleBinding" is registered for version "rbac.authorization.k8s.io/v1beta1"
Unknown Date
7/28/2017 2:59:19 PME0728 21:59:19.912778       1 cacher.go:260] unexpected ListAndWatch error: pkg/storage/cacher.go:201: Failed to list *rbac.ClusterRoleBinding: no kind "ClusterRoleBinding" is registered for version "rbac.authorization.k8s.io/v1beta1"
Unknown Date
7/28/2017 2:59:20 PME0728 21:59:20.775097       1 cacher.go:260] unexpected ListAndWatch error: pkg/storage/cacher.go:201: Failed to list *rbac.ClusterRoleBinding: no kind "ClusterRoleBinding" is registered for version "rbac.authorization.k8s.io/v1beta1"
Unknown Date
7/28/2017 2:59:20 PME0728 21:59:20.918119       1 cacher.go:260] unexpected ListAndWatch error: pkg/storage/cacher.go:201: Failed to list *rbac.ClusterRoleBinding: no kind "ClusterRoleBinding" is registered for version "rbac.authorization.k8s.io/v1beta1"
Unknown Date
7/28/2017 2:59:21 PME0728 21:59:21.779770       1 cacher.go:260] unexpected ListAndWatch error: pkg/storage/cacher.go:201: Failed to list *rbac.ClusterRoleBinding: no kind "ClusterRoleBinding" is registered for version "rbac.authorization.k8s.io/v1beta1"
Unknown Date
7/28/2017 2:59:21 PME0728 21:59:21.921694       1 cacher.go:260] unexpected ListAndWatch error: pkg/storage/cacher.go:201: Failed to list *rbac.ClusterRoleBinding: no kind "ClusterRoleBinding" is registered for version "rbac.authorization.k8s.io/v1beta1"
Unknown Date
7/28/2017 2:59:22 PME0728 21:59:22.784178       1 cacher.go:260] unexpected ListAndWatch error: pkg/storage/cacher.go:201: Failed to list *rbac.ClusterRoleBinding: no kind "ClusterRoleBinding" is registered for version "rbac.authorization.k8s.io/v1beta1"
Unknown Date
7/28/2017 2:59:22 PME0728 21:59:22.925577       1 cacher.go:260] unexpected ListAndWatch error: pkg/storage/cacher.go:201: Failed to list *rbac.ClusterRoleBinding: no kind "ClusterRoleBinding" is registered for version "rbac.authorization.k8s.io/v1beta1"
Unknown Date
7/28/2017 2:59:23 PME0728 21:59:23.787953       1 cacher.go:260] unexpected ListAndWatch error: pkg/storage/cacher.go:201: Failed to list *rbac.ClusterRoleBinding: no kind "ClusterRoleBinding" is registered for version "rbac.authorization.k8s.io/v1beta1"
Unknown Date
7/28/2017 2:59:23 PME0728 21:59:23.929070       1 cacher.go:260] unexpected ListAndWatch error: pkg/storage/cacher.go:201: Failed to list *rbac.ClusterRoleBinding: no kind "ClusterRoleBinding" is registered for version "rbac.authorization.k8s.io/v1beta1"

This is a known issue in k8s 1.5.4 from upgrading and rolling back from a k8s 1.6.+ release.
https://github.com/kubernetes/kubernetes/issues/43668


dts: x86: Add serial over usb support.

choose console as usb_cdc when the config USB_UART_CONSOLE is
selected for arduino_101 and tinytile
Signed-off-by: Savinay Dharmappa<EMAIL_ADDRESS>

@galak  could you please review this patch.


A possible y2k issue in a long run.

If you visit this URL, it will show you an APOD from 27th May 1999, cool, right? But what will happens in 2099? Again a Y2k problem?
https://apod.nasa.gov/apod/ap990527.html

This repository is for the API that basically grabs data from APOD. It is not APOD itself.


Internet connection problem

I'm having a problem when ESP32 is connected to the wifi but it doesn't have internet connection.
In this case, the following message is showing in serial monitor:

[E][WiFiGeneric.cpp:654] hostByName(): DNS Failed for xxxxxxxx.firebaseio.com
[E][FB_WCS32.cpp:160] connect(): start_ssl_client: -1

I am using WiFi.mode (WIFI_AP_STA) because I am also using ESP32 as an access point to configure wifi credentials and another parameters.
But when I have this internet connection problem, the code is blocked on firebase function and my local page doesn't work anymore. And because of that I can't change wifi credentials.
Is there any way in the library that I can identify the problem with the connection and stop the process to not block my local page and allow the user to change the wifi?
Thank you.

Nothing actually block as you understand in ESP32 due to it can assign others task for multitasking and it has two cores cpu.  You can create the new RTOS task to do your work.
Firebase call has the highest priority of the library when it trying to send request and response.
Library does not has any blocking code unless the internal operation of SSL client. The blocking operations in SSL client (mbedTLS) happen duringg SSL handshaking, reading and writing data which all are blocking (waiting for response) process in secured connection.
You can call fbdo.pauseFirebase(true) to by pass the Firebase call anytime you want. And call pauseFirebase(false) later for enanble the Firebase call.

Yes, I'm already using the other core to control critical sensors.
So I need all the wifi, local webserver and firebase tasks to work in the other core.
I will try to identify this situation with internet connection problem and use pauseFirebase.
Thank you.

I will not block unless you use the Firebase in main task calling from set up and loop.

I'm calling everything on loop, because wifi may not be connected or configured on the start and can be done later. Therefore, I can't garantee that wifi is connected on setup.
So, when wifi is connected I initialize firebase and stream, only once:
`Firebase.begin(FIREBASE_HOST, FIREBASE_AUTH);
Firebase.reconnectWiFi(true);
path = "/" + devMacId + "/config";
initData();
if (!Firebase.beginStream(firebaseData1, path))
{
initStream = false;
Serial.println("------------------------------------");
Serial.println("Can't begin stream connection...");
Serial.println("REASON: " + firebaseData1.errorReason());
Serial.println("------------------------------------");
Serial.println();
}
else
initStream = true;
Firebase.setStreamCallback(firebaseData1, streamCallback, streamTimeoutCallback, 10000);  `
On initData() I'm seting some values with setJSON.
Then, when I have changes I use updateNode to update.
Do you thing because of that if I use pauseFirebase can I have a problem? Or is it okay?

Since you set the stream callback, the stream task runs in the RTOS task in core 1 which will be ok and not blocking main task.
Don't use firebaseData1 for other Firebase calls because it used in stream task already and not need to pause it.
If you use other Firebase Data object for Firebase calls (read/store operation) and use it in main task, you can pause it to bypass the operation.

Yes, I'm using another FirebasaData object to upload data.
But I observed that my problem is occuring with the stream too.
Now, I updated platform-espressif32 to latest version 3.1.0 that updated Arduino core to v1.0.5 and the error is occuring when wifi is disconnected too.
The web configuration portal doesn't work when wifi disconnects and the stream was already working. The same occurs if wifi connects but has internet connection problem.
I tried using endStream when wifi disconnects but it didn't work.
Maybe it is something on the core side. Do you have any suggestion that can solve this?

From the first post, you mention about blocking code and I provide the solution to bypass all Firebase calls and stream operation too.
You should debug your Webserver code instead because when you pause the Firebase Data object, all functions will exit immediately, no code execution.
I don't have no suggestion because it's not related to the library, unless check your program flow and memory concerns.

Ok, about the problem when wifi disconnects I could solve, it was a conflict between my code and reconnectWiFi.
But the other problem I couldn't solve even with pauseFirebase. Because it looks like that the code is blocked on something that is calling start_ssl_client all the time. Then it can't reach my code to pause.
Sometimes it could reach the code, execute pauseFirebase and keeps calling start_ssl_client.
If I understood correctly, the stream is trying to connect and calls start_ssl_client right? There is a way to stop it, or to know which function is calling start_ssl_client ?

You can call fbdo.pauseFirebase(true) to by pass the Firebase call anytime you want. And call pauseFirebase(false) later for enanble the Firebase call.

Did you pause the stream's Firebase Data object?

The SSL client created inside the object, you can control it by set the reference and pointer to it too.

This should be the last discussion about this.


Patrick steveson - Register

Description
Implemented a basic register form using our currently implemented endpoint.
Fixes # (issue)
Type of change
Please delete options that are not relevant.

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

Change Status

[x] Complete, tested, ready to review and merge
[ ] Complete, but not tested (may need new tests)
[ ] Incomplete/work-in-progress, PR is for discussion/feedback

How Has This Been Tested?

[x] Test A: able to register a new user directly from the react app client, also manually tested the endpoint using postman to double check functionality.

Checklist

[x] My code follows the style guidelines of this project
[x] I have performed a self-review of my own code
[ ] My code has been reviewed by at least one peer
[ ] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation
[x] My changes generate no new warnings
[ ] I have added tests that prove my fix is effective or that my feature works
[ ] New and existing unit tests pass locally with my changes
[ ] There are no merge conflicts

Also, updated the migrations on heroku to reflect the changes to our tables that were implemented previously, which was result of all of my 500 errors. Re-ran our seed files as well to repopulate our dummy data.


[DOC] - Add accessibility statement to JLab docs

    @isabela-pf discussed the Accessibility statement at the global council meeting

Next: recorded stuff -> contribute to JupyterLab (from https://jupyter-accessibility.readthedocs.io/en/latest/resources/JupyterLab-a11y-statement.html)
Originally posted by @trallard in https://github.com/Quansight-Labs/jupyter-a11y-mgmt/issues/173#issuecomment-1314124665

@isabela-pf we need to prioritise this once you are back from PTO

Marking as done as the PR is there and we are just waiting on merge/reject whatever is on the JLAb side folks


Record Macro Button?

Hello Tim,
I was reading awhile ago of something like this but forgot to bring it up, but a friend talked to me about it last night and we were wondering if is possible to do the following.
A "Macro Recorder" so you can push a "REC" button and then "STOP" when you are done hitting any keys/spells. Then it will put them either as a sequence or as individual lines where you can edit from there or at least just to have the order in which you hit them, kinda like the macro debugger but without having a macro made yet if that makes sense.
Here is an example: [https://youtu.be/pqjs9ytm69c?t=91]
Sorta reminds me of when using/creating macros on my Logitech keyboard software where it also records input latency but that is a bit more advanced and not needed I think.

Complete


try using 4 core gh runner for e2e workflow

What
use 4 core gh runner for e2e workflow, and see if the duration times are still good with that compute level.
Why
potential savings in compute costs by using a lower core runner
Known limitations
the duration time for gha workflow of e2e is compute intensive

on 16 core gha runner, the times were:
build: 22 mins
run tests: 5 mins
On this pr with reduction to 4 core gha runner, the overall times increased to:
build: 40 mins
run tests: 7mins
so, the build times appear to be proportional to number of cores available. If 45 minutes overall for e2e to complete is acceptable, I'll merge this?


[BUG] send a buttons message not working and not shown in mobile apps

Describe the bug
send a buttons message not working and not shown in mobile apps.
To Reproduce
// send a buttons message!
const buttons = [
  {buttonId: 'id1', buttonText: {displayText: 'Button 1'}, type: 1},
  {buttonId: 'id2', buttonText: {displayText: 'Button 2'}, type: 1},
  {buttonId: 'id3', buttonText: {displayText: 'Button 3'}, type: 1}
]

const buttonMessage = {
    text: "Hi it's button message",
    footer: 'Hello World',
    buttons: buttons,
    headerType: 1
}

const sendMsg = await sock.sendMessage(id, buttonMessage)

Expected behavior
Button 1, Button 2, and Button 3 should be showed in mobile apps

There are no bugs regarding the buttons, they are discontinued, close this issue now, if you had read the functions correctly, you would be aware that WhatsApp has discontinued the buttons outside the official API

I tested the buttons and the list again, they worked again on IOS.

Remove button from docs, please.

Algumas apis já estão usando listas e botões.

@renatoiub quais?

Evolutivos já está, pelo menos lista eu já testei e funciona.

https://github.com/EvolutionAPI/evolution-api/pull/322

Lista tem o wppconnect, que eh a que eu uso hoje. Mas vou dar uma olhada
nessa também.
Em qui., 28 de dez. de 2023 08:33, renatoiub @.***>
escreveu:

EvolutionAPI/evolution-api#322
https://github.com/EvolutionAPI/evolution-api/pull/322
—
Reply to this email directly, view it on GitHub
https://github.com/WhiskeySockets/Baileys/issues/443#issuecomment-1871081126,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAVT4SIBGDNZOTBQQYWAPDTYLVKHTAVCNFSM6AAAAAA6CMBCMSVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTQNZRGA4DCMJSGY
.
You are receiving this because you commented.Message ID:
@.***>

O pessoal está usando e atualizando. Eu consegui usar no meu projeto mas tive que mexer nos arquivos da baileys.

Vamos trocar uma ideia depois
Em qui., 28 de dez. de 2023 às 08:42, renatoiub @.***>
escreveu:

O pessoal está usando e atualizando. Eu consegui usar no meu projeto mas
tive que mexer nos arquivos da baileys.
—
Reply to this email directly, view it on GitHub
https://github.com/WhiskeySockets/Baileys/issues/443#issuecomment-1871088122,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAVT4SJUWESDAXH2VCXHVEDYLVLL5AVCNFSM6AAAAAA6CMBCMSVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTQNZRGA4DQMJSGI
.
You are receiving this because you commented.Message ID:
@.***>

Se quiser fazer um teste, nos meus repositórios está uma versão que funciona lista. Porém após instalar vc tem que alterar uma linha em um arquivo da baileys pra funcionar.

Hi,
In our software, you can send different types of WhatsApp messages, including btn messages.
To ensure everything is working correctly, please follow the steps below to test various message types. Send your test messages to +917878222906:

Poll Message > Type .poll to test a poll message.

BTN Message > Type .btn to test a standard reply btn.

Call to Action BTN > Type .cta to test a call-to-action btn (call & URL).

BTN with Media Message > Type .btnmedia to test the btn integrated with media content.

Menu Message > Type .menu to test the menu btn.

By following these steps, you can ensure that all the different types of WhatsApp messages function as expected.
Digi Bulk Marketing

How to make This?
Em sex., 15 de nov. de 2024, 09:11, radhesolution @.***>
escreveu:

Hi,
In our software, you can send different types of WhatsApp messages,
including btn messages.
To ensure everything is working correctly, please follow the steps below
to test various message types. Send your test messages to +917878222906:
Poll Message > Type .poll to test a poll message.
BTN Message > Type .btn to test a standard reply btn.
Call to Action BTN > Type .cta to test a call-to-action btn (call & URL).
BTN with Media Message > Type .btnmedia to test the btn integrated with
media content.
Menu Message > Type .menu to test the menu btn.
By following these steps, you can ensure that all the different types of
WhatsApp messages function as expected.
Digi Bulk Marketing
—
Reply to this email directly, view it on GitHub
https://github.com/WhiskeySockets/Baileys/issues/443#issuecomment-2478680795,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAVT4SJJH2WJBAKB7HXWZOT2AXQIRAVCNFSM6AAAAABR3B425OVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDINZYGY4DANZZGU
.
You are receiving this because you commented.Message ID:
@.***>


Change design for dispatch

Currently we define two methods for gcp:

https://github.com/dahong67/GCPDecompositions.jl/blob/6c3c18de9da0ec166f96d766404425bcbb5c89a2/src/gcp-opt.jl#L18-L25
https://github.com/dahong67/GCPDecompositions.jl/blob/6c3c18de9da0ec166f96d766404425bcbb5c89a2/ext/LossFunctionsExt.jl#L8-L15

These call the following _gcp method: https://github.com/dahong67/GCPDecompositions.jl/blob/6c3c18de9da0ec166f96d766404425bcbb5c89a2/src/gcp-opt.jl#L55
Idea: unify the two gcp methods and pass the inputs directly to _gcp so we just have gcp(X, r, loss = LeastSquaresLoss()) = _gcp(X, r, loss). Handle LossFunctions.jl losses by adding methods for value, deriv and domain.
With this design:

gcp provides the user-friendly interface and handles defaults
_gcp does not handle defaults - it only implements the algorithms

Separating concerns this way has some potential benefits:

reduces duplication in LossFunctionsExt - don't need to duplicate code for defaults, etc.
prepares for adding specialized _gcp methods, e.g., ALS for least-squares (ALS doesn't apply to other loss functions), etc.

One more TODO remaining:
https://github.com/dahong67/GCPDecompositions.jl/blob/4b5431a4248ef9b50dbe20b9fafb0f16350246cc/src/gcp-opt.jl#L48-L55
Will require reworking how we do the testing since we currently use that signature. For example:
https://github.com/dahong67/GCPDecompositions.jl/blob/4b5431a4248ef9b50dbe20b9fafb0f16350246cc/test/items/gcp-opt.jl#L51-L58
Since this would affect ongoing work in #20, can address this in a separate PR after #20 is merged. Should probably rethink how we do this testing anyway.


Add WSGIserver support

https://fgallaire.github.io/wsgiserver/

Sorry, but we try to do accept new adapters only if there is a significant demand for it. There are just to many WSGI servers and forks out there to support them all. Since no one commented on this pull request for a while, I'll have to close it. Please feel free to re-open the pull request if the new server adapter matches one of the following conditions:

The adapter replaces a popular but abandoned project with an actively maintained fork and solves problems/bugs still present in the original project. In this case, you should also add a deprecation warning to the old adapter.
The adapter introduces a new server implementation. In this case, the project should be mature enough for productive use and be supported by an active community.  Python 3 support is required, Python 2 support very welcomed.

CherryPy adapter is problematic:
https://github.com/bottlepy/bottle/pull/685
WSGIserver fix the CherryPy API problem and permit a clean adapter.

WSGIserver is a (pure Python, mature and performant) one file project, so it's a perfect fit for Bottle (and other Python microframeworks). As opposite of the 30k lines of code of CherryPy which are quite a gigantic dependance.

I'll reopen for a public discussion.

Personally i think this should be added. It makes bottle projects easy to deploy to places like Heroku quickly and easily.

I'm using WSGIserver and its fine. Thanks.

wsgiserver has:

last release 2016-09-29
last commit to master on 2018-08-19

Close as obsolete or rebase against latest bottle master to see if recent CI still likes it?

For CI to test it, it would require tests in the first place :)

It's not in the backend blacklist for testing — I thought/remember it would get minimal testing then. I guess I'm missing something?

The test_server.py tests are extremely limited, they do not really test much, so I do not have much confidence even if they pass.
The topic is tricky. On one hand, I do not want to blindly add more and more adapters as I did in the early days without actual need or testing. We already have multiple adapters for stable pure-python WSGI servers. Why add another? They break, give new users a false sense of simplicity (no real production setup should use the unchanged server adapter that comes with bottle) and only save a couple of lines of setup code. Maybe this feature was a bad idea in the first place.
On the other hand, it is nice and handy to have them, and who am I to decide which server implementation is 'worthy' without actually testing them myself? There are a couple of upvotes on this issue, so why not?
So, one way to deal with this is to is to raise the bar. New adapters should be stable, well maintained, widely used, should have a unique feature that the others don't have, and the pull request should have some tests and documentation attached. Sounds good?

So, one way to deal with this is to is to raise the bar. New adapters should be stable, well maintained, widely used, should have a unique feature that the others don't have, and the pull request should have some tests and documentation attached. Sounds good?

Sounds good to me in general.
"stable" might be hard to evaluate and "widely used" may hinder the adoption of rising stars.
Maybe it would also be good to specify what kind of tests and documentation you'd want to see added.
Are there plans to set these upcoming rules in stone somewhere visible?

If a bunch of the adapters are old, not necessarily well tested, and not necessarily for now-popular servers, maybe it would make sense to bend the "bottle is one file" rule, and drop all adapters from bottle.py and have a collection of files, each containing one adapter? And somehow indicate what level of testing it gets, or perhaps the last version it was tested against?
While my use of bottle is in a testing environment, I'm curious why you say "(no real production setup should use the unchanged server adapter that comes with bottle)"? Does that apply to any particular server adaptor, or all server adaptors presently included in bottle.py? But if that is true for whatever reason, it lends support for the idea of separating them into add-on files.
It also raises a concern for me, wondering what I should do when I move to a production environment. Which might want to be behind a LiteSpeed server which I don't see in the list of server adaptors.

@v-python I think by "unchanged" @defnull was refering to leaving the backend choice at its default rather than using any of them without changing their code. @defnull can you clarify?

no real production setup should use the unchanged server adapter that comes with bottle

I exaggerated a bit, but it is important to know and understand the settings a server implementation provides. The defaults are sane most of the time, but in reality, it is often more complicated than 'just use cheroot'. Most server adapters only allow you to define IP and port, nothing more. You have to side-step them for any customization, which shows that server-adapters kind of restricted and maybe too abstract. Most are also extremely simple. Just an import, 1-2 lines of setup, and that's it. It does not feel very pythonic to hide this behind an intransparent 'server adapter' concept.
But while we are at it: For a real productive environment, I'd recommend nginx+uwsgi, which does not play well with bottle server adapters anyway. You would not call bottle.run(), but instead, uwsgi loads your app directly.

what will be the benefits of this backend, facing cheroot (also pure python)
note : cheroot is not documented @defnull


hyper-v migration to Azure

[Enter feedback here]
Hi Team, we are planning to migrate Hyper-V VMs from on-prem to Azure , we have used  Movere tool as discovery & assessment. could you please confirm do we need to still deploy Azure migrate: server migration tool for hyper-V VMs migration as we don't want to discover and asses VMs now as all these VMs are already discovered by Movere tool or we just need to install  Hyper-V Replication provider on hyper-v hosts and it will automatically discovery VMs on Hyper-V hosts for replication.
Sorry i am not able to find this information properly.

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

ID: 0f6cf488-07d3-1b2b-69f2-f04c7890bd55
Version Independent ID: fd658be4-17c5-19c7-b6c9-630090880c3c
Content: Migrate Hyper-V VMs to Azure with Azure Migrate Server Migration - Azure Migrate
Content Source: articles/migrate/tutorial-migrate-hyper-v.md
Service: azure-migrate
GitHub Login: @bsiva
Microsoft Alias: bsiva

@Gouravkala Thank you for posting your question. We will look into this and get back to you soon.

Hi Team, any update on this please?

@Gouravkala Azure migrate: server migration tool for Hyper-V is the same as Hyper-V replication provider.
Azure migrate: server assessment is what’s used for the discovery and assessment of VM while the server migration tool is what’s used to replicate the VMs.
This is the document to follow.

Thank you for the update. So in the case of hyper-V VMs migration to Azure we don't need any virtual appliance in on-prem environment  , we just need to install the Microsoft Azure Site Recovery provider on every hyper-v hosts which we wants to migrate. if we are migrating 20 VMs from 10 Hyper-V hosts we need to install Microsoft Azure Site Recovery provider and vault creds on each and every hyper-v hosts.  Please confirm if i understood correctly.

Please confirm if my understanding is correct

@Gouravkala Sorry for the delayed response. That’s correct. It’s also mentioned in detail in the document I referenced below in case you have any doubts.

@Gouravkala We haven't heard back from you, so we will now close this issue. If this remains an issue, please reply and we will gladly continue the discussion.


Hi

How can i download?

This is a Python module/package.
Hope this helped!


SpringBoot OpenFeign  Ignores Custom  CloseablehttpClient

I am trying to create a custom closeablehttpclient using OpenFeign that is behind an NTLM proxy. After searching thru internet I finally discovered an example of a Closeablehttpclient that supposedly works going thru NTLM proxy.
When I create a bean of the client  ... Spring Boot Simply ignores it ... I THINK.  Now This is what I observed:

if I used the exact same bean in a tiny standalone java application .... it works and connects to an external client thru the NTLM proxy.
if I used the exact same bean in a SpringBoot Openfeign client , spring seems to use some other default client ?

Question:
If there a bug or limitation in SpringBoot when it comes to using CloseableHttpClients ?
I am looking for a simple, clear and concise answer to this if there is such an answer.  I can supply additional information if required, however my source code is proprietary and basically illegal for me to share it exactly.  I have updated properties file as follows:
feign.httpclient.enabled=true
feign.httpclient.disableSslValidation=true
Mave Pom as followsI
added these dependencies:
feign-httpclient
httpclient ( 4.5.13 )
Spring boot version 2.6.1
Now the code I use for the http client works stand alone ... but is not called if I try to use it as a custom feign client ..
Thanks for any info you can supply.

I think there is a bug.
in FeignAutoConfiguration class, defined how to inject HttpClient:
@Configuration(proxyBeanMethods = false)
@ConditionalOnClass(ApacheHttpClient.class)
@ConditionalOnMissingBean(CloseableHttpClient.class)
@ConditionalOnProperty(value = "spring.cloud.openfeign.httpclient.enabled", matchIfMissing = true)
@Conditional(HttpClient5DisabledConditions.class)
protected static class HttpClientFeignConfiguration {

	private final Timer connectionManagerTimer = new Timer(
				"FeignApacheHttpClientConfiguration.connectionManagerTimer", true);

	@Autowired(required = false)
	private RegistryBuilder registryBuilder;

	private CloseableHttpClient httpClient;

	@Bean
	@ConditionalOnMissingBean(HttpClientConnectionManager.class)
	public HttpClientConnectionManager connectionManager(
			ApacheHttpClientConnectionManagerFactory connectionManagerFactory,
			FeignHttpClientProperties httpClientProperties) {
		final HttpClientConnectionManager connectionManager = connectionManagerFactory.newConnectionManager(
				httpClientProperties.isDisableSslValidation(), httpClientProperties.getMaxConnections(),
				httpClientProperties.getMaxConnectionsPerRoute(), httpClientProperties.getTimeToLive(),
				httpClientProperties.getTimeToLiveUnit(), this.registryBuilder);
		this.connectionManagerTimer.schedule(new TimerTask() {
			@Override
			public void run() {
				connectionManager.closeExpiredConnections();
			}
		}, 30000, httpClientProperties.getConnectionTimerRepeat());
		return connectionManager;
	}

	@Bean
	public CloseableHttpClient httpClient(ApacheHttpClientFactory httpClientFactory,
			HttpClientConnectionManager httpClientConnectionManager,
			FeignHttpClientProperties httpClientProperties) {
		RequestConfig defaultRequestConfig = RequestConfig.custom()
				.setConnectTimeout(httpClientProperties.getConnectionTimeout())
				.setRedirectsEnabled(httpClientProperties.isFollowRedirects()).build();
		this.httpClient = httpClientFactory.createBuilder().setConnectionManager(httpClientConnectionManager)
				.setDefaultRequestConfig(defaultRequestConfig).build();
		return this.httpClient;
	}

	@Bean
	@ConditionalOnMissingBean(Client.class)
	public Client feignClient(HttpClient httpClient) {
		return new ApacheHttpClient(httpClient);
	}

	@PreDestroy
	public void destroy() {
		this.connectionManagerTimer.cancel();
		if (this.httpClient != null) {
			try {
				this.httpClient.close();
			}
			catch (IOException e) {
				if (LOG.isErrorEnabled()) {
					LOG.error("Could not correctly close httpClient.");
				}
			}
		}
	}

}

this class not inject bean otherwise has some Condition like annotation.
be attention of ConditionalOnMissingBean annotation, this annotation means that only inject httpClient when spring context dose not have CloseableHttpClient, so if u declare other Configuration that include CloseableHttpClient bean, openfeign config feign.httpclient.disableSslValidation will be invalid.
from version 4.0.0-SNAPSHOT

Not sure if this helps you but I have openfeign use apache httpclient4 ( and httclient5 ) to connect through an outbound proxy that requires NTLM authentication.
  <dependency>
    <groupId>io.github.openfeign</groupId>
    <artifactId>feign-hc5</artifactId>
  </dependency>

@Bean
public ApacheHttp5Client feignClient() {
  ....
  // Proxy credentials
  BasicCredentialsProvider credentialsProvider = new BasicCredentialsProvider();
  credentialsProvider.setCredentials(new AuthScope(proxyHost, proxyPort),
    new NTCredentials(proxyUser, proxyPwd.toCharArray(), "", proxyDomain));

  // Proxy
  clientBuilder.setProxy(new HttpHost(proxyHost, proxyPort));
  clientBuilder.setDefaultCredentialsProvider(credentialsProvider);
  clientBuilder.setProxyAuthenticationStrategy(new DefaultAuthenticationStrategy());

  ....
  return new ApacheHttp5Client(clientBuilder.build());
}

You can also use HttpClient4 if you want.

Closing as confirmed as resolved by the reporter.


Fix tagging to prevent inheritence from base image

Summary of Changes
To pass RHTAP security scans in Enterprise Contract, we can't inherit certain tags form the base image, this PR sets those flags in the Containerfile to prevent inheritance.

Note: EC will still fail on a known (or possibly known) issue!

LGTM


Create study for UGent HG trackers HG_JUVENILE

Info to be provided by @ReinoudAllaert

Metadata for the study as required for movebank:
HG_movebank_meta.pdf

Thanks! Some updates:

I've changed haid-raised to handraised in the title, as that seems to be the more common spelling.
I've rephrased the description somewhat, to:

HG_JUVENILE - Juvenile herring gulls (Larus argentatus, Laridae) hatched and handraised in Ostend (Belgium) is a bird tracking dataset published by the Cognition, Behavior, and Ecology lab at Ghent University. It contains animal tracking data for the project/study HG_JUVENILE, using trackers developed by Interrex (http://www.interrex-tracking.com/). The study has been operational since 2022. In total 60 individuals of European herring gull (Larus argentatus) have been tagged and released in the IJzermonding, Nieuwpoort (Belgium). All individuals were raised from egg by Ghent University researchers at the Wildlife Rescue Center in Ostend and completed several cognitive and behavioural tests when approximately three weeks old. The main goal of the study is to link cognitive performance in the lab to behaviour in the wild. Data are automatically synced with Movebank and from there periodically archived on Zenodo (see https://github.com/inbo/bird-tracking).

I typically include myself as author for the tracking datasets I contribute to. Ok if I update the citation to:

Allaert RA, Stienen EWM, Lens L, Desmet P, Verbruggen F (2020) HG_JUVENILE - Juvenile herring gulls (Larus argentatus, Laridae) hatched and handraised in Ostend (Belgium). Dataset. https://www.movebank.org/cms/webapp?gwt_fragment=page=studies,path=study2217728245

Perfect, thanks for checking the description. Updating the citation is no problem. Let me know if there is any other information you need.

Great! The study metadata is now ok and the tag data are synced. Next step, see #190.


Add environment to workflow

You could also change the url in the sidebar and the readme.

I have no rights to merge the PR. Please assign appropriate rights or merge yourself. Thanks 🙏


Bitcoin transfer

How do I transfer theses addresses to a wallet please tell

Tell me something

Tell me something


Make build file copy static folder to localtion of binary

If not, when executing from source, the user will get a 404

Done


Fixed the create account link which is hidden with the link to go to the Github project of the app.

Bugs:

On the screen with height <740px the link to go to the Github project of the app start to hide the create account link due to the fact that it is set to position absolute.

Changes:

Modified and made the link to go to the Github project of the app to be position absolute when the screen height is >764px

Other:

reduced the font size of the link to go to the Github project of the app because it was catching the user eye than the create account link.

Closes #187


Explicitly allow implicit casts for direction 'in' arguments

Intended to address issue https://github.com/p4lang/p4-spec/issues/842

This is a tiny bug fix.


{sql} Fix #17345: Add note to create the key first

Fix https://github.com/Azure/azure-cli/issues/17345 and https://github.com/Azure/azure-cli/issues/17337
Related command

Description

Testing Guide

History Notes

[Component Name 1] BREAKING CHANGE: az command a: Make some customer-facing breaking change
[Component Name 2] az command b: Add some customer-facing feature

This checklist is used to make sure that common guidelines for a pull request are followed.

[ ] The PR title and description has followed the guideline in Submitting Pull Requests.

[ ] I adhere to the Command Guidelines.

[ ] I adhere to the Error Handling Guidelines.

sql


Message boxes used to report issues often don't stay open

What You Are Seeing?
In issues #864 and #897 both should display a message box, but even when debugging that message box almost immediately disappears.
What is Expected?
The message boxes stay open allowing the user to see them and acknowledge them.
How Did You Get This To Happen? (Steps to Reproduce)
See issues #864 and #897 for reproduction steps of those and see the messagebox staying open.
A potential workaround is documented in this forum post from 2009: https://social.msdn.microsoft.com/Forums/vstudio/en-US/116bcd83-93bf-42f3-9bfe-da9e7de37546/messagebox-closes-immediately-in-dispatcherunhandledexception-handler?forum=wpf
System Details

OS Build (In PowerShell run [System.Environment]::OSVersion.version.tostring()): Windows 10 and 11
Windows PowerShell version (Run: $PSVersionTable): 5.1
Chocolatey version (Run choco --version): 0.11.3

Output Log
I don't have a log as this is a GUI issue, and in at least the two mentioned there's not actually anything logged to any Chocolatey log, you might see exceptions logged to Event Viewer after the fact though.

:tada: This issue has been resolved in version 0.20.0 :tada:
The release is available on:

GitHub Release
Chocolatey Package

Your GitReleaseManager bot :package::rocket:


Spawn electron apps as plugins

This issue originally came from: https://github.com/zeit/hyper/issues/254
@OJFord excellently described my case:

Just imagine: editing something in atom, you save it, and change pane to the small one on Atom's left; deploy your changes. You switch tab - boom - no editor in sight, you have a couple of panes related to wherever you just deployed your code, SSH and htop say.
If Hyper was an Atom plugin, then there'd be no escaping Atom. Suddenly all of your shell activity is inexplicably inside a text editor. This is sort of okay, since Atom does support horizontal and vertical splits; there's no reason that any one of them need actually be editing text. There'd still be no tabbing. But it also just feels wrong.
TL;DR:

You launch editors from your terminal; not the other way around.
Hyper in Atom would destroy tabs and (Hyper's) panes.

Proposal
Spawn electron apps within a terminal pane

Hyper is finally a terminal that could do more than just a hacked on implementation of code editors.. it could integrate a real code editor with all the functionality that comes with it.

This way you could use hyper's panes functionality to manage and save your sessions including dedicated apps.
and it could look like this:

cc: @controversial @amilajack @hharnisc

`This still sounds really cool. Is anyone working on this?


$current and $parent Variables Not Working in traverse Command

OrientDB Version: 3.2.32
Java Version: 17
OS: Windows
I encountered an issue when using the traverse command in OrientDB. Specifically, the variables $current and $parent, documented as usable within the traverse command, do not work as expected. Instead of allowing traversal operations with these variables, the command fails, and OrientDB throws an error indicating that the class or variable does not exist:
com.orientechnologies.orient.core.exception.OCommandExecutionException: Class $current not found DB name="dbName"
Expected Behavior:
According to the documentation, $current should refer to the current element being traversed, and it should allow for operations within the traverse command. Similarly, $parent should refer to the parent of the current element. The query should execute without errors and return the expected traversal results.
Actual Behavior:
The query fails with an error indicating that $current (or $parent when used) is not recognized as a valid variable or class. This prevents the traverse command from functioning as described in the documentation.
But it works for old API (3 test case)
Unit test for reproduction:

import com.orientechnologies.orient.core.command.OCommandRequest;
import com.orientechnologies.orient.core.db.ODatabaseDocumentInternal;
import com.orientechnologies.orient.core.db.ODatabaseSession;
import com.orientechnologies.orient.core.db.OrientDB;
import com.orientechnologies.orient.core.db.OrientDBConfig;
import com.orientechnologies.orient.core.db.document.ODatabaseDocumentTx;
import com.orientechnologies.orient.core.metadata.schema.OSchema;
import com.orientechnologies.orient.core.record.OEdge;
import com.orientechnologies.orient.core.record.OVertex;
import com.orientechnologies.orient.core.record.impl.ODocument;
import com.orientechnologies.orient.core.sql.executor.OResultSet;
import com.orientechnologies.orient.core.sql.query.OConcurrentLegacyResultSet;
import com.orientechnologies.orient.core.sql.query.OSQLSynchQuery;
import com.tinkerpop.blueprints.impls.orient.OrientGraph;
import com.tinkerpop.frames.FramedGraphFactory;

import org.junit.jupiter.api.AfterEach;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;

import static org.junit.jupiter.api.Assertions.assertTrue;

class OrientDBTraversalTest {

    private ODatabaseSession db;

    @BeforeEach
    public void setup() {
        final OrientDB orientDB = new OrientDB("remote:localhost", OrientDBConfig.defaultConfig());
        db = orientDB.open("test", "root", "root");
        OSchema schema = db.getMetadata().getSchema();
        if (!schema.existsClass("Person")) {
            db.command("CREATE CLASS Person EXTENDS V");
        }
        if (!schema.existsClass("Pet")) {
            db.command("CREATE CLASS Pet EXTENDS V");
        }
        if (!schema.existsClass("Owns")) {
            db.command("CREATE CLASS Owns EXTENDS E");
        }

        OVertex person = db.newVertex("Person");
        person.setProperty("name", "John Doe");
        person.save();

        OVertex pet = db.newVertex("Pet");
        pet.setProperty("name", "Buddy");
        pet.save();

        OEdge ownsEdge = person.addEdge(pet, "Owns");
        ownsEdge.save();
    }

    @Test
    void testSimplifiedTraversalQuery() {
        String query = """
                select $current as person,
                       $current.out('Owns').name as petName,
                       (traverse out('Owns') from $current)
                from (select from Person where name = 'John Doe')""";

        try (OResultSet resultSet = db.query(query)) {
            assertTrue(resultSet.hasNext());

            while (resultSet.hasNext()) {
                System.out.println(resultSet.next().toJSON());
            }
        }
    }

    @Test
    void testSimplifiedTraversalQuery1() {
        String query = """
                select $current as person,
                       $current.out('Owns').name as petName,
                       $path
                from (select from Person where name = 'John Doe')
                let $path = (traverse out('Owns') from $current)""";
        try (OResultSet resultSet = db.query(query)) {
            assertTrue(resultSet.hasNext());

            while (resultSet.hasNext()) {
                System.out.println(resultSet.next().toJSON());
            }
        }
    }

    @Test
    void oldApi() {
        final FramedGraphFactory framedGraphFactory = new FramedGraphFactory();
        String query = """
                select $current as person,
                       $current.out('Owns').name as petName,
                       $path
                from (select from Person where name = 'John Doe')
                let $path = (traverse out('Owns') from $current)""";
        final ODatabaseDocumentTx rawGraph = framedGraphFactory.create(new OrientGraph((ODatabaseDocumentInternal) db))
                .getBaseGraph()
                .getRawGraph();
        final OCommandRequest cmdQuery = rawGraph.command(new OSQLSynchQuery<ODocument>(query));
        final OConcurrentLegacyResultSet<Object> resultSet = cmdQuery.execute();
        assertTrue(resultSet.iterator().hasNext());
    }

    @AfterEach
    public void tearDown() {
        db.command("DELETE VERTEX Person");
        db.command("DELETE VERTEX Pet");
        db.command("DELETE EDGE Owns");

        db.close();
    }
}

Hi,
Thanks to report this, will check it soon.

The bug related to the usage of $current has been resolved. However, it is still not possible to access a variable or result in the context using $current as was possible in the old API.
Updated test:
import com.orientechnologies.orient.core.command.OCommandRequest;
import com.orientechnologies.orient.core.config.OGlobalConfiguration;
import com.orientechnologies.orient.core.db.ODatabaseDocumentInternal;
import com.orientechnologies.orient.core.db.ODatabaseSession;
import com.orientechnologies.orient.core.db.ODatabaseType;
import com.orientechnologies.orient.core.db.OrientDB;
import com.orientechnologies.orient.core.db.OrientDBConfig;
import com.orientechnologies.orient.core.db.document.ODatabaseDocumentTx;
import com.orientechnologies.orient.core.metadata.schema.OSchema;
import com.orientechnologies.orient.core.record.OEdge;
import com.orientechnologies.orient.core.record.OVertex;
import com.orientechnologies.orient.core.record.impl.ODocument;
import com.orientechnologies.orient.core.sql.executor.OResultSet;
import com.orientechnologies.orient.core.sql.query.OConcurrentLegacyResultSet;
import com.orientechnologies.orient.core.sql.query.OSQLSynchQuery;
import com.tinkerpop.blueprints.impls.orient.OrientBaseGraph;
import com.tinkerpop.blueprints.impls.orient.OrientGraph;
import com.tinkerpop.frames.FramedGraphFactory;

import org.junit.jupiter.api.AfterEach;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;

import static org.junit.jupiter.api.Assertions.assertTrue;

class OrientDBTraversalTest {

    private ODatabaseSession db;

    @BeforeEach
    public void setup() {
        var builder = OrientDBConfig.builder()
                .addConfig(OGlobalConfiguration.CREATE_DEFAULT_USERS, true);
        final OrientDB orientDB = new OrientDB("memory:",
                OrientBaseGraph.ADMIN,
                OrientBaseGraph.ADMIN,
                builder.build());
        orientDB.create("test", ODatabaseType.MEMORY);
        db = orientDB.open("test", "admin", "admin");
        OSchema schema = db.getMetadata().getSchema();
        if (!schema.existsClass("Person")) {
            db.command("CREATE CLASS Person EXTENDS V");
        }
        if (!schema.existsClass("Pet")) {
            db.command("CREATE CLASS Pet EXTENDS V");
        }
        if (!schema.existsClass("Owns")) {
            db.command("CREATE CLASS Owns EXTENDS E");
        }

        OVertex person = db.newVertex("Person");
        person.setProperty("name", "John Doe");
        person.save();

        OVertex pet = db.newVertex("Pet");
        pet.setProperty("name", "Buddy");
        pet.save();

        OEdge ownsEdge = person.addEdge(pet, "Owns");
        ownsEdge.save();
    }

    @Test
    void testSimplifiedTraversalQuery() {
        String query = """
                select $current as person,
                       $current.out('Owns').name as petName,
                       (traverse out('Owns') from $current.person)
                from (select from Person where name = 'John Doe')""";

        try (OResultSet resultSet = db.query(query)) {
            assertTrue(resultSet.hasNext());

            while (resultSet.hasNext()) {
                System.out.println(resultSet.next().toJSON());
            }
        }
    }

    @Test
    void testSimplifiedTraversalQuery1() {
        String query = """
                select $current as person,
                       $current.out('Owns').name as petName,
                       $path
                from (select from Person where name = 'John Doe')
                let $path = (traverse out('Owns') from $current.person)""";
        try (OResultSet resultSet = db.query(query)) {
            assertTrue(resultSet.hasNext());

            while (resultSet.hasNext()) {
                System.out.println(resultSet.next().toJSON());
            }
        }
    }

    @Test
    void oldApi() {
        final FramedGraphFactory framedGraphFactory = new FramedGraphFactory();
        String query = """
                select $current as person,
                       $current.out('Owns').name as petName,
                       $path
                from (select from Person where name = 'John Doe')
                let $path = (traverse out('Owns') from $current.person)""";
        final ODatabaseDocumentTx rawGraph = framedGraphFactory.create(new OrientGraph((ODatabaseDocumentInternal) db))
                .getBaseGraph()
                .getRawGraph();
        final OCommandRequest cmdQuery = rawGraph.command(new OSQLSynchQuery<ODocument>(query));
        final OConcurrentLegacyResultSet<Object> resultSet = cmdQuery.execute();
        assertTrue(resultSet.iterator().hasNext());
    }

    @AfterEach
    public void tearDown() {
        db.command("DELETE VERTEX Person");
        db.command("DELETE VERTEX Pet");
        db.command("DELETE EDGE Owns");

        db.close();
    }
}

There is a bug when trying to access the result of a traversal using $path.out('Owns'). Specifically, the issue occurs when you attempt to reference the out('Owns') on the result of the traverse operation stored in the $path variable. This causes an error and does not work as expected.
@Test
    void testSimplifiedTraversalQuery1() {
        String query = """
                select $current as person,
                       $current.out('Owns').name as petName,
                       $path
                from (select from Person where name = 'John Doe')
                let $path = (traverse out('Owns') from $current),
                    $path1 = $path.out('Owns')""";
        try (OResultSet resultSet = db.query(query)) {
            assertTrue(resultSet.hasNext());

            while (resultSet.hasNext()) {
                System.out.println(resultSet.next().toJSON());
            }
        }
    }

Hi,
So I see you opened a new issue with the new case, is this case solved in your test ? In case we can close this.


how to auto size

I want the QR code size to automatically change with parameters such as content, error correction level, and code width, rather than fixed size. What should I do？

I have the same exact use case here. Specifically these situations

SafeArea
When a bounding container has Max Width expand to that size
Reactively shring when screen shrinks - preferrably to a min width as well

@sweetyguazi I had the same issue. I ended up not using this package and used the SvgXml component from the react-native-svg package directly with the output from the qrcode toString method.
For instance:
import {useEffect, useState} from 'react';
import {SvgXml} from 'react-native-svg';
import QRCode from 'qrcode';

export default ({data}) => {
  const [svgXml, setSvgXml] = useState();

  useEffect(() => {
    QRCode.toString(data, {type: 'svg' /* other options */ })
      .then(setSvgXml)
      .catch(error => {
        console.error('Unable to render SVG Code', error);
        // Do something with the error
      });
  }, [data]);

  return svgXml ? <SvgXml xml={svgXml} width="100%" height="100%" /> : null /* ActivityIndicator? */;
}

The only downside is that you'll have to handle the logo yourself. I didn't need the logo yet, so I haven't tried implementing this myself.  However, if I had to take a stab at implementing it, this is what I would do: I would nest the QRCode SVG inside a root SVG with a predefined view box and nest the logo inside the root, centering the logo to the root SVG and not the QRCode SVG.
Hope this helps.

@jefawks3 , this gave it an extra padding....🤷🏽♀


The Reorderer.sendReq function is misinterpreting the Arbiter immediate response packet

The valid field in the Arbiter immediate response packet indicates whether or not a memory device accepted the request and will call a callback with a full response. The current version of the Reorderer.sendReq function interprets this field as saying that the Arbiter/device is busy and that the request should be resent. The valid field can be false while the packet contains a valid memory error packet. The sendReq function must check to see if the valid field is true or the memory error packet contains an error when deciding whether or not it's done.

c96d74a


Not all files extracted?

Thank you for your tool. I tried extract the English speech files and the JSON file lists a lot of missing files. Where could they be?

@Xehanort88
eng.subtitles in core.psarc

oh, so the string file is actually a reference to a text rather an audio file?

yes

Thank you. So where can I find the files referenced? Are they all in the
English dialogue archive?
Sent from my Samsung Galaxy smartphone and typed with big fingers on a
small touchscreen. Please excuse any typographical errors.
Il Gio 6 Lug 2023, 11:03 PM Amr Shaheen @.***> ha
scritto:

yes
—
Reply to this email directly, view it on GitHub
https://github.com/amrshaheen61/TLOU_PSARC_Tool/issues/2#issuecomment-1624363072,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AHHZ4FXQQTBPXOLWF4H7PK3XO4YZVANCNFSM6AAAAAAZTBSNUI
.
You are receiving this because you were mentioned.Message ID:
@.***>

after unpack core.psarc you can find all game strings files in "text2" folder


New version: JetBrains.CLion.EAP version 241.12662.59

Created by 🥟 Dumplings in Run #3400.


Percentile algorithm support to use real time data provider as model update datasource

Describe the feature

There is no real time data provider, implement metrics server as real time data provider, this can reduce the prometheus traffic when the cluster is large

我把craned的nodesource功能转移到了crane-agent里面，并且实现了使用实时数据兜底的逻辑，等我完善一下提一个issue出来


Unable to build with ArchLinux

I am trying to use https://github.com/omnisharp/omnisharp-vim and have installed mono 5.2 via the mono-beta package from AUR. However, it fails to build with the following output:
❯ ./build.sh
Feeds used:
  /home/ia/.nuget/packages/
  https://api.nuget.org/v3/index.json
  https://dotnet.myget.org/F/dotnet-core/api/v3/index.json
  https://dotnet.myget.org/F/cli-deps/api/v3/index.json
  https://www.myget.org/F/xunit/api/v3/index.json

All packages listed in /home/ia/src/vim/omnisharp-vim/omnisharp-roslyn/tools/packages.config are already installed.
Analyzing build script...
Processing build script...
Installing addins...
Compiling build script...
Current platform: Linux (x64)

========================================
Cleanup
========================================
Executing task: Cleanup
Finished executing task: Cleanup

========================================
ValidateMono
========================================
Executing task: ValidateMono
Detected Mono version <IP_ADDRESS>
Finished executing task: ValidateMono

========================================
InstallDotNetCoreSdk
========================================
Executing task: InstallDotNetCoreSdk
/home/ia/src/vim/omnisharp-vim/omnisharp-roslyn/.dotnet/dotnet-install.sh: line 70: VERSION_ID: unbound variable
An error occurred when executing task 'InstallDotNetCoreSdk'.
Error: Failed to Install .NET Core SDK 1.0.4

The HEAD is at * (HEAD detached at 4c00f3a0)
EDIT: I have also found omnisharp-roslyn on AUR, so will try to use it, but it would be greate if it was possible to use the official instructions to build the package on my OS.

@aignas,  you could take a look at this issue I opened on omnisharp-vim  a while back. It still uses an older version of dotnet, but the instructions should still be able to guide you to a working solution.
Concerning your current issue, it is closely related to the issue by @lwiechec

OmniSharp VIM has moved to consume binaries instead of using the submodule approach so I will close this as not applicable anymore.


Switch tutorials repo to a condo install?

As the tutorials get more extensive, and start including e.g ARG-viz methods (which require graphviz) and perhaps even SLiM installed, it would be helpful to be able to install non-python packets via conda. Is this an easy thing to set up @benjeffery ? ISTR it's a bit of a fiddle, which is why we've been keeping it simple on this repo so far.

The graph viz stuff can all be installed with apt.  IMO, that's preferable to conda.

Agreed - conda is nearly always slower than any other option

But then you can't get it working on different platforms? And we'd have to make the change in the repo somehow anyway? Not sure this applies to SLiM either?

Compiling SLiM might be the counter-example. We only have to get stuff working on Linux for this, right? Or are you thinking about the dev environments?

I thought there were folks working on official packages for slim? A flatpak would solve the problem nicely for any linux distro.

I guess we only need it on Linux, true. It's just that we had the other repos set up with Conda, so I thought this might be an easy thing to do (or perhaps, easier than any other method), especially as there's a SLiM conda package. But maybe not 🤷

I bet @benjeffery can come up w/a clever way to cache a built slim binary? :smile:

We already use SlIM in the site repo, it's no big deal. Please just use whatever you want (except conda) and I'll figure it out as we can cache stuff.


error LNK2019: 无法解析的外部符号 "private: static class RegistrationToken::RegistrationToken const mediapipe::tool::OptionsRegistry::registration_token"

error LNK2019: 无法解析的外部符号 "private: static class RegistrationToken::RegistrationToken const mediapipe::tool::OptionsRegistry::registration_token"

This is due to probably a static variable not initialized in a c++ class (RegistrationToken::RegistrationToken const mediapipe::tool::OptionsRegistry).
need to investigate further.

inference_calculator_options_registry.lo.lib(inference_calculator_options_lib.obj) : error LNK2019: unresolved external symbol "private: static class RegistrationToken::RegistrationToken const mediapipe::tool::OptionsRegistry::registration_token<class mediapipe::InferenceCalculatorOptions>" (??$registration_token@VInferenceCalculatorOptions@mediapipe@@@OptionsRegistry@tool@mediapipe@@0VRegistrationToken@3@B)
referenced in function "??__E?$registration_token@VInferenceCalculatorOptions@mediapipe@@@OptionsRegistry@tool@mediapipe@@YAXXZ" (??__E?$registration_token@VInferenceCalculatorOptions@mediapipe@@@OptionsRegistry@tool@mediapipe@@YAXXZ)
bazel-out\x64_windows-opt\bin\mediapipe\examples\desktop\hand_tracking\hand_tracking_cpu.exe : fatal error LNK1120: 1 unresolved externals

I'm seeing the exact same problem as @jinfagang when I try to build the MediaPipe Hands example on Windows. I was able to build the Hello World example successfully, but not this one.

I worked around this problem by commenting these two lines in mediapipe\framework\tool\options_registry.h:
template <class MessageT>
static const RegistrationToken registration_token;

And by commenting this in mediapipe\framework\tool\options_lib_template.cc:
namespace mediapipe {
// The protobuf descriptor for an options message type.
template <>
const RegistrationToken tool::OptionsRegistry::registration_token<
    MP_OPTION_TYPE_NS::MP_OPTION_TYPE_NAME> =
    tool::OptionsRegistry::Register(ReadFileDescriptorSet(
        std::string(kDescriptorContents, sizeof(kDescriptorContents) - 1)));
}  // namespace mediapipe

Once I did that, the MediaPipe Hands example built successfully and worked perfectly.
This is a hacky workaround, but I'll share it here in case it helps anyone.

@diegomacario  waw, nice catch, I will test on my side. I am building face detection on desktop.

@diegomacario @jaydeepsaravaiya  I think it because of the VirtualStudio version problem. for 2022 version, it fails. 2019 can build.

Oh good to know, thanks @jinfagang!

I can verify it was MSVC 2022 failed, @google-admin  Please fix mediapipe MSVC 2022 build, since we are in 2023 now.

I'm seeing the exact same problem as @jinfagang when I try to build the MediaPipe Hands example on Windows. I was able to build the Hello World example successfully, but not this one.

Did Hello world worked properly for you. For me it builds but doesnt do anything.

Hello @jinfagang Is your issue resolved?

Yes. but another issue happend.

This seems to be an issue with VS 2022 17.4+. I've filed a bug report with some more details here. If you can, please consider upvoting it to ensure that we can build MediaPipe with future versions of VS!

I can confirm that the underlying bug in VS 2022 and has been fixed in version 17.6 Preview 1. So, the permanent solution is to avoid using VS 2022 17.4.x & 17.5.x and either use VS 2022 <=17.3 or >=17.6 upon release.


Custom tab icon not working

Thanks for this awesome plugin. I have a bit of issue to make the custom icons work with the tab view. While the color is changed properly, the original icon is maintained. All works in treeview as expected. Following is an example of my configuration:
@import "packages/file-icons/styles/colors"; // to use the colours
@import "packages/file-icons/styles/icons";  // to use the defined icons
@import "packages/file-icons/styles/items";

.container-icon { .fa; content: "\f0f2"}

&[data-name$="container.ts"]           { .medium-red;             } // Colours icon and filename
&[data-name$="container.ts"]:before   { .container-icon; .medium-red; } // Colours icon only

The container icon and color is modified in the trreview, but the tabview is showin the original typescript icon, but the changed color of the text.

Solved by marking styles as important
@import "packages/file-icons/styles/colors"; // to use the colours
@import "packages/file-icons/styles/icons";  // to use the defined icons
@import "packages/file-icons/styles/items";

.container-icon { .fa; content: "\f0f2"}

&[data-name$="container.ts"]           { .medium-red;             } // Colours icon and filename
&[data-name$="container.ts"]:before   { .container-icon!important; .medium-red!important; } // Colours icon only


Revert "Bump path-parse from 1.0.6 to 1.0.7"

Reverts 5446812/webtest#1
https://github.com/marketplace/f7-8-5/upgrade/1/CUSTOMER_ACCOUNT_ID

https://github.com/5446812/webtest.git


FPN for Mask R-CNN

Hi,
Any plan for adding FPN in Mask R-CNN?

No plan.

Cool

Added in examples: https://github.com/ppwwyyxx/tensorpack/tree/master/examples/FasterRCNN


Use absolute URI for memsourced files (ECJ compatibility)

When codegen is used with the Eclipse compiler rather than the Sun one, it attempts to prepend file:// to non-absolute URIs for every JavaFileObject. URIs of type file://filename.java fail, complaining about having an authority component.
The below patch fixes this.
http://privatepaste.com/9251cf336c

Thanks for the bug report. Fixed.

released in 0.4.8


feat: live auctions android

The type of this PR is: Feature
This PR resolves CX-1279
Description
Shows live auctions in a webview for Android builds.
Prediction (Live Auctions) Auth:
Prediction uses gravity oauth authentication and so sessions are not automatically shared with artsy.net and without extra work user would have to login to live auctions again in the webview. To workaround this on user login I am logging into gravity with the same user. Then when showing prediction initially we redirect to '{original_url}/login' to kick off gravity oauth and give the user a valid session. Inspired by this PR: https://github.com/artsy/force/pull/4379  thanks @dblandin for pointing me in the right direction!
PR Checklist (tick all before merging)

[x] I have included screenshots or videos to illustrate my changes, or I have not changed anything that impacts the UI.
[x] I have added tests for my changes, or my changes don't require testing, or I have included a link to a separate Jira ticket covering the tests.
[x] I have documented any follow-up work that this PR will require, or it does not require any.
[x] I have added an app state migration, or my changes do not require one. (What are migrations?)
[x] I have added a CHANGELOG.yml entry or my changes do not require one.

@brainbicycle I think all the auth stuff can be done with just this one line change in ArtsyReactWebView.tsx

This is my bad, I didn't check the prediction auth status thoroughly when doing the original web view infra work.
As for the routes.tsx bit I think we could also simplify that to

proof that the simplified auth change works:

yay 🎉


[function] Support millisecond unix to datetime

when it comes to unix time, there are two ways to specify milliseconds. most system will be either using float like 159830640.123 , or append millisecond in the last like<PHONE_NUMBER>123 to represent datetime with milliseconds.
In StarRocks, we use the standard UNIX time without any milli or micro , nano seconds. However, there may be some case that user import data from other system who use other kinds of UNIX time format that starrocks cannot recognize and need further transformation.
so here I propose a function that may help to make this process easier.
from_unixtime
Converts a number of milliseconds since the epoch (1970-01-01 00:00:00 UTC) into a timestamp.
from_unixtime_milliseconds (INT unix_timestamp_milliseconds[, VARCHAR string_format])

this function's behavior is similar to from_unixtime the only difference is that:
the from_unixtime_milliseconds need to be a UNIX timestamp with millisecond as int.
for example
select from_unixtime_milliseconds(1196440219123)

2007-12-01 12:30:19.123000

furthermore, if the data use decimal to  represent milliseconds, it can be
select from_unixtime_milliseconds(1196440219.123*1000)

2007-12-01 12:30:19.123000

@jiangyinzuo, by the way, would you be interested in implementing a to_unixtime_milliseconds function as a backward function to from_unixtime_milliseconds?
bigint to_unixtime_milliseconds(datetime dt)

> select to_unixtime_milliseconds("2007-12-01 12:30:19.123000")
1196440219123

yeah btw for Dshadowzh's comment, this one unix_timestamp is a good reference if you are interested.

@jiangyinzuo, by the way, would you be interested in implementing a to_unixtime_milliseconds function as a backward function to from_unixtime_milliseconds?

OK

@wangsimo0 There is a function from_unixtime_ms which is used in expression partition.

As an alternative, why not implement a variant of DATETIME which has different precision? This makes it generally easier to work with as a native type. This is also how Clickhouse, Doris, and most other similar databases seem to do it.

Clickhouse's DateTime64
Apache Doris' DateTime

As an alternative, why not implement a variant of DATETIME which has different precision? This makes it generally easier to work with as a native type. This is also how Clickhouse, Doris, and most other similar databases seem to do it.

Clickhouse's DateTime64
Apache Doris' DateTime

EDIT: Apologies, I'm new to StarRocks - DATETIME does support fractional seconds just fine.
The docs don't specify this at all though and suggest that only second-granularity is supported. It'd be great to make clear that it's actually arbitrary (or microsecond? nanosecond?) precision which is supported - https://docs.starrocks.io/docs/sql-reference/data-types/date-types/DATETIME/

this feature is under testing so we didn't release it. will be released in 3.3.5