Problems trying to load cached images into minikube

Is this a BUG REPORT or FEATURE REQUEST?:
/kind bug
Description
Not being able to load images, not getting any error reports (only "failed, and dir:")
Steps to reproduce the issue:

https://github.com/kubernetes/minikube/pull/2757

make out/minikube out/minikube.iso

./out/minikube --container-runtime=cri-o --iso-url=file://$PWD/out/minikube.iso

Describe the results you received:
$ sudo podman load -i /tmp/busybox_latest
Getting image source signatures
Copying blob sha256:4febd3792a1fb2153108b4fa50161c6ee5e3d16aa483a63215f936a113a88e9a
 1.30 MB / 706.12 KB [======================================================] 0s
Failed
Failed
error pulling "dir:/tmp/busybox_latest": unable to pull dir:/tmp/busybox_latest

Describe the results you expected:
Sucessfully being able to load all the images from cache, just like docker load
Additional information you deem important (e.g. issue happens only occasionally):
Seems to pull the images correctly from the network, just not from the load disk.
Output of podman version:
Version:       0.4.3
Go Version:    go1.9
Git Commit:    "9dd76697ccd2bac65a78fd7687899e1c9ca14465"
Built:         Sat Apr 21 07:27:19 2018
OS/Arch:       linux/amd64

Output of podman info:
$ podman info
could not get runtime: mkdir /var/run/containers/storage: permission denied
$ sudo podman info
host:
  MemFree: 22269952
  MemTotal:<PHONE_NUMBER>
  SwapFree: 983404544
  SwapTotal:<PHONE_NUMBER>
  arch: amd64
  cpus: 2
  hostname: minikube
  kernel: 4.9.64
  os: linux
  uptime: 4h 10m 21.66s (Approximately 0.17 days)
insecure registries:
  registries: []
registries:
  registries:
  - docker.io
store:
  ContainerStore:
    number: 27
  GraphDriverName: overlay
  GraphOptions: null
  GraphRoot: /var/lib/containers/storage
  GraphStatus:
    Backing Filesystem: extfs
    Native Overlay Diff: "true"
    Supports d_type: "true"
  ImageStore:
    number: 13
  RunRoot: /var/run/containers/storage

Additional environment details (AWS, VirtualBox, physical, etc.):
VirtualBox

@afbjorklund Any chance we can get a reproducer without Minikube? It would be a lot easier if we could pull the image it's trying to import out so we can directly inspect it and try and figure out what's going on.
Also, could you add --log-level=debug and see if you get more detailed error information?

Sure, will try to do that (and the ISO?)
Also : pull + save + rmi + load works OK

does it work outside minicube ?

podman is not part of minikube.  This example looks like he is prestaging the container with podman and then attempting to run a container with CRI-O.  The problem is here.
$ sudo podman load -i /tmp/busybox_latest
Getting image source signatures
Copying blob sha256:4febd3792a1fb2153108b4fa50161c6ee5e3d16aa483a63215f936a113a88e9a
 1.30 MB / 706.12 KB [======================================================] 0s
Failed
Failed
error pulling "dir:/tmp/busybox_latest": unable to pull dir:/tmp/busybox_latest

How did you create  /tmp/busybox_latest

@umohnani8 PTAL

I think it was created by Docker in the client originally, and then copied from the cache...
I have kubeadm running OK with curio/crictl, so trying to replace the docker load now

The busybox was just an example, the main containers are all cached from kubernetes

@rhatdan : minikube 0.26 still had kpod

podman load on an image from docker export should work, though I'm not sure we verify that in our test suite right now. Worth adding if we don't.

Looks like podman load cannot figure out what transport was used to create tmp/busybox_latest so it is trying the three we support (docker-archive, oci-archive, and dir) and then failing.
podman load works with docker save:
➜  libpod git:(user) sudo docker save -o busybox.tar busybox
➜  libpod git:(user) ✗ sudo podman load -i busybox.tar
Getting image source signatures
Skipping fetch of repeat blob sha256:0314be9edf00a925d59f9b88c9d8ccb34447ab677078874d8c14e7a6816e21e1
Copying config sha256:8ac48589692a53a9b8c2d1ceaa6b402665aa7fe667ba51ccc03002300856d8c7
 1.46 KB / 1.46 KB [========================================================] 0s
Writing manifest to image destination
Storing signatures
Loaded image:  docker.io/busybox:latest

Most probably something with the /tmp/busybox_latest  cached image.

Here is the image, had to gzip it to attach it: busybox_latest.gz

Here is the image caching code: https://github.com/kubernetes/minikube/blob/master/pkg/minikube/machine/cache_images.go#L291
I think it is using this library to do it:
https://github.com/containers/image/blob/master/copy/copy.go#L107

@afbjorklund Thanks, that helps a lot

Here is the entire log, with debugging enabled:
                         _             _
            _         _ ( )           ( )
  ___ ___  (_)  ___  (_)| |/')  _   _ | |_      __
/' _ ` _ `\| |/' _ `\| || , <  ( ) ( )| '_`\  /'__`\
| ( ) ( ) || || ( ) || || |\`\ | (_) || |_) )(  ___/
(_) (_) (_)(_)(_) (_)(_)(_) (_)`\___/'(_,__/'`\____)

$ sudo podman --log-level=debug load -i /tmp/busybox_latest
DEBU[0000] overlay test mount with multiple lowers succeeded
DEBU[0000] backingFs=extfs, projectQuotaSupported=false, useNativeDiff=true
INFO[0000] [graphdriver] using prior storage driver: overlay
INFO[0000] CNI network rkt.kubernetes.io (type=bridge) is used from /etc/cni/net.d/k8s.conf
INFO[0000] Initial CNI setting succeeded
DEBU[0000] parsed reference to refname into "[overlay@/var/lib/containers/storage+/var/run/containers/storage]docker.io/library/busybox:latest"
DEBU[0000] IsRunningImageAllowed for image docker-archive:
DEBU[0000]  Using default policy section
DEBU[0000]  Requirement 0: allowed
DEBU[0000] Overall: allowed
Getting image source signatures
DEBU[0000] Manifest has MIME type application/vnd.docker.distribution.manifest.v2+json, ordered candidate list [application/vnd.docker.distribution.manifest.v2+json, application/vnd.docker.distribution.manifest.v1+prettyjws, application/vnd.oci.image.manifest.v1+json, application/vnd.docker.distribution.manifest.v1+json]
DEBU[0000] ... will first try using the original manifest unmodified
Copying blob sha256:4febd3792a1fb2153108b4fa50161c6ee5e3d16aa483a63215f936a113a88e9a
DEBU[0000] Detected compression format gzip
DEBU[0000] No compression detected
 0 B / 706.12 KB [-------------------------------------------------------------]DEBU[0000] Using original blob without modification
 1.30 MB / 706.12 KB [======================================================] 0s
Failed
DEBU[0000] parsed reference to refname into "[overlay@/var/lib/containers/storage+/var/run/containers/storage]docker.io/tmp/busybox_latest:latest"
Failed
ERRO[0000] error pulling "dir:/tmp/busybox_latest": unable to pull dir:/tmp/busybox_latest
$

Here is the actual list of containers, from the minikube cache:
Attempting to cache image: k8s.gcr.io/k8s-dns-sidecar-amd64:1.14.4 at /home/anders/.minikube/cache/images/k8s.gcr.io/k8s-dns-sidecar-amd64_1.14.4
Attempting to cache image: k8s.gcr.io/kubernetes-dashboard-amd64:v1.8.1 at /home/anders/.minikube/cache/images/k8s.gcr.io/kubernetes-dashboard-amd64_v1.8.1
Attempting to cache image: k8s.gcr.io/kube-scheduler-amd64:v1.10.0 at /home/anders/.minikube/cache/images/k8s.gcr.io/kube-scheduler-amd64_v1.10.0
Attempting to cache image: k8s.gcr.io/etcd-amd64:3.0.17 at /home/anders/.minikube/cache/images/k8s.gcr.io/etcd-amd64_3.0.17
Attempting to cache image: gcr.io/k8s-minikube/storage-provisioner:v1.8.0 at /home/anders/.minikube/cache/images/gcr.io/k8s-minikube/storage-provisioner_v1.8.0
Attempting to cache image: k8s.gcr.io/kube-proxy-amd64:v1.10.0 at /home/anders/.minikube/cache/images/k8s.gcr.io/kube-proxy-amd64_v1.10.0
Attempting to cache image: k8s.gcr.io/pause-amd64:3.0 at /home/anders/.minikube/cache/images/k8s.gcr.io/pause-amd64_3.0
Attempting to cache image: k8s.gcr.io/kube-controller-manager-amd64:v1.10.0 at /home/anders/.minikube/cache/images/k8s.gcr.io/kube-controller-manager-amd64_v1.10.0
Attempting to cache image: k8s.gcr.io/kube-addon-manager:v6.5 at /home/anders/.minikube/cache/images/k8s.gcr.io/kube-addon-manager_v6.5
Attempting to cache image: k8s.gcr.io/kube-apiserver-amd64:v1.10.0 at /home/anders/.minikube/cache/images/k8s.gcr.io/kube-apiserver-amd64_v1.10.0
Attempting to cache image: k8s.gcr.io/k8s-dns-kube-dns-amd64:1.14.4 at /home/anders/.minikube/cache/images/k8s.gcr.io/k8s-dns-kube-dns-amd64_1.14.4
Attempting to cache image: k8s.gcr.io/k8s-dns-dnsmasq-nanny-amd64:1.14.4 at /home/anders/.minikube/cache/images/k8s.gcr.io/k8s-dns-dnsmasq-nanny-amd64_1.14.4
Successfully cached all images.

Thanks!

The actual error is "Error writing blob: blob size mismatch", but it only writes "Failed".
Seems like it is not expecting a mix of uncompressed and compressed blobs perhaps ?
./sha256:57310166fe88e0dc63a80ca5c219283a932db0f3969712e2f8a86ada143bf566: gzip compressed data
./sha256:5b0d59026729b68570d99bc4f3f7c31a2e4f2a5736435641565d93e7c25bd2c3: ASCII text, with very long lines, with no line terminators
manifest.json:                                                             ASCII text, with no line terminators

Also seen by the progressbar overflowing while copying, 1.30 MB / 706.12 KB
method  crc     date  time           compressed        uncompressed  ratio uncompressed_name
defla 1634ab94 Jan  1 01:00              723070             1360384  46.8% ./sha256:57310166fe88e0dc63a80ca5c219283a932db0f3969712e2f8a86ada143bf566

This sounds like it could be a c/image bug

@mtrmac PTAL

For starters, https://github.com/projectatomic/libpod/blob/27107fdac1d75f97caab47cd13efb1d9900cf350/libpod/image/image.go#L141 is swallowing the underlying error report.
The error is, per skopeo --insecure-policy copy docker-archive:$path dir:t
FATA[0000] Error writing blob: Size mismatch when copying sha256:4febd3792a1fb2153108b4fa50161c6ee5e3d16aa483a63215f936a113a88e9a, expected 723070, got 1360384

So that's where our debug was going... Nice catch @mtrmac
I'll get a patch in to get more detailed logging output from there.

… the flip side, though, is that c/image/docker/tarfile.Source.GetBlob is trying to transparently decompress the blobs, while …/tarfile.Source.prepareLayerData creates a manifest with the compressed sizes.
That can’t work, and is mostly fixed (a bit stalled?) in https://github.com/containers/image/pull/427 .

@mtrmac: please rebase the minikube version of c/image to something fresh, maybe master

Hmm, this is starting to have more far-reaching implications than a simple s/docker/podman/ :-)

please rebase the minikube version of c/image to something fresh, maybe master

Hmm, this is starting to have more far-reaching implications than a simple s/docker/podman/ :-)

:) IIRC fixing either the minikube or the  podman side would be sufficient—but the podman-side fix is not quite available right now.

Seems like minikube is aiming for switching to another library instead: https://github.com/kubernetes/minikube/pull/2730
Not sure if this makes matters better or worse, or just different ? Or if it even changes the cache at all.

@mheon What is the current state of this?

The c/image fix upstream seems to be stalled.

And minikube still has kpod-b85d0fa (Dec 2017)

Still blocked , but I have pinged @cyphar to see if the PR can get some movement.


WidePieStat card

design url: https://xd.adobe.com/view/acfb7ef1-5b99-4129-97b2-b30f8086c239-f9a8/
Proposed API

@lo5 Do we want to go with g2 to be consistent with our existing plots (https://g2.antv.vision/en/examples/case/pie#pie3) or pick a D3 instead?

ui.pie_stat_card(
    title='...', # The card's title
    pies=[ # The pies to be included in the pie chart
        ui.pie(
            label='During the previous day', # The description for the pie, displayed in the legend (required).
            value='35%', # The formatted value displayed on the pie (required).
            fraction=0.35, # A value between 0 and 1 indicating the size of the pie (required).
            color='$red', # The color of the pie (required).
            aux_value='$35.00', # The auxiliary value, displayed below the label (optional).
        ),
       ui.pie(...),
       ui.pie(...),
       ui.pie(...),
    ]
)

Note:

If aux_value is omitted, display only label.
unit is not required - the value needs to be formatted by the app developer like in all other stat cards.
Handle data-binding expressions and data, similar to ui.wide_bar_stat_card().
Use d3 or plain SVG like in the gauge cards (G2 will complicate usage).


Input labelFontFamily on Custom Mapping

(First of all, sorry for my bad english)
🐛 Bug Report
I'm using custom mapping to change all project fonts. I'm using the font TitilliumWeb, and to change all components fonts I created 3 vars:
"text-font-family": "TitilliumWeb-Regular",
"text-font-family-semibold": "TitilliumWeb-SemiBold",
"text-font-family-bold": "TitilliumWeb-Bold",

Then I passed this vars to labelFontFamily on Input, DatePicker and Select components, and changed as they use the text-label-font-weight var, I changed that to "normal". So it should use "TitilliumWeb-Bold" and normal weight. On DatePicker and Select it worked, but Input label keeps using "text-font-family".
I know I can deal this using "labelStyle" prop, but I wanted to keep everything on a pattern.
To Reproduce
Custom-mapping.json:
 "strict": {
        "text-font-family": "TitilliumWeb-Regular",
        "text-font-family-semibold": "TitilliumWeb-SemiBold",
        "text-font-family-bold": "TitilliumWeb-Bold",
         ...
        "text-label-font-size": 12,
        "text-label-line-height": 16,
        "text-label-font-weight": "normal",
  }
  ...
"Input": {
           ...
            "appearances": {
                "default": {
                    "mapping": {
                        ...
                        "labelFontWeight": "text-label-font-weight",
                        "labelLineHeight": "text-label-line-height",
                        "labelFontFamily": "text-font-family-bold",
                         ...
                    },
...

Expected behavior
Like the DatePicker and Select, Input label to use the labelFontFamily.
Link to runnable example or repository (highly encouraged)
Sorry for not providing it.
UI Kitten and Eva version

Package
Version

@eva-design/eva
^1.4.0

@ui-kitten/components
^4.4.0

Environment information

System:
    OS: Windows 10 10.0.18362
    CPU: (4) x64 Intel(R) Core(TM) i5-7200U CPU @ 2.50GHz
  Binaries:
    Node: 10.16.0 - C:\Program Files\nodejs\node.EXE
    Yarn: 1.21.1 - C:\Program Files (x86)\Yarn\bin\yarn.CMD
    npm: 6.9.0 - C:\Program Files\nodejs\npm.CMD
  IDEs:
    Android Studio: Version  <IP_ADDRESS> AI-191.8<IP_ADDRESS>10548
  npmPackages:
    react: 16.9.0 => 16.9.0
    react-native: 0.61.5 => 0.61.5

@llcernicchiaro looks like a bug in current implementation, meaning it can't be changed with mapping. Please use labelStyle as a temporary solution


wish: explicit configuration

I'm interested in using this module in a large project that already has a centralized configuration system in place. Would there be willingness to accept a pull request that allows an explicit config to be loaded?
    var strava = require('strava-v3');
    strava.fetchConfig(config)
    strava.athlete.get(...);

This would be implemented by exposing the existing authenticator/fetchConfig() method on the main object and updating it to accept an explicit config. If an explicit configuration was provided, it would be preferred over the other options.
The change would be backwards compatible. If an explicit configuration was not provided, the functionality would remain as before.

Hi @markstos,
I would love to see this feature in the library. In fact, it was requested before, see e.g. #12, but not implemented yet.
Feel free to submit a pull request for this, and I will gladly merge it.
-- Timo

Explicit configuration will be supported in the next release.


1000th closed issue

I had achieved the 500th, now 1000th, congrats to me on the dead repo i guess

#1336

off by one

awww

eeee boy!!


Fix misspecified url in docs/model_config.md

nvm, it looks like there is another open pull request for the same issue https://github.com/triton-inference-server/fil_backend/pull/379


added youtube-like video information display

🛠 Fixes Issue: #87

👨💻 Changes proposed:

Addition of description section which contains clickable links, addition of feature that displays  video title, channel name, like count similar to how YouTube presents these details.
Discord username
Pratyush Kumar Singh#4811

📷 Screenshots

✔ Check List (Check all the applicable boxes)

[x] My code follows the code style of this project.
[x] The title of my pull request is a short description of the requested changes.
[x] I am a participant of GSSOC23

If the description is too long then how would you handle?

hey @pratyush-ksingh there is some conflict in VideoDetail.jsx file, Please review it.

If the description is too long then how would you handle?

there is no problem in that, it is already working fine

hey @pratyush-ksingh there is some conflict in VideoDetail.jsx file, Please review it.

ok, I will review it

If the description is too long then how would you handle?

there is no problem in that, it is already working fine

But how? Would it be working like Youtube, i.e., when the description is long it would trim it and show more would be displayed?

Is anyone working on this issue?


Add audits for vulnerabilities in Ruby dependencies

For auditing Ruby dependencies for CVEs, using https://github.com/rubysec/bundler-audit and https://github.com/civisanalytics/ruby_audit

selfie


add notebook to demonstrate patch saving in tfrecord format

Would be good to have a notebook that takes patch images and writes them out as a tfrecord file for training the VAE.

We should use the cellx library for this:
https://github.com/quantumjot/cellx/blob/53015f8a45c8fc7236fe382431f8f55f6edf08c4/cellx/tools/dataset.py#L24-L37


Sending daily messages

Bot send daily messages in telegram chat, where is assigned time of this daily messages.

Superseded by https://github.com/team-work-tools/team-work-telegram-bot/issues/77


ODP version upgrade

@lucasbak Hello
centos7/odp-release/<IP_ADDRESS>-130/repos.tar.gz
Can ODP be upgraded from the above version to the following version？
centos7-python3/odp-release/<IP_ADDRESS>-138/repos.tar.gz

ODP python version is tied to AMBARI python version
If you want ODP python3 yo need to use Ambari python3 version first.
we did not test the upgrade from ODP <IP_ADDRESS>-130-python2 to <IP_ADDRESS>-138-python3 on centos7
You should first test it in dev env with Ambari python3 upgrade prior to ODP <IP_ADDRESS> python3 upgrade

@lucasbak  Hello，I remember you told me before that CentOS7 no longer supports the Python3 version of the ODP cluster. Now is it adapted to CentOS7?

Hi @SGITLOGIN,
ODP <IP_ADDRESS> (whatever the build) is the latest version to support redhat7 based os and python2.
We recommend not using centos7 any more. It is supported but you should migrate base os instead of using python3+centos7. As some of the functionalities can be impacted.
The upgrade you mentioned was between ODP <IP_ADDRESS>-130 (not officially release) and ODP <IP_ADDRESS>-138.


Prime references only from eagerCursor

This PR fixes a potential performance issue introduced with #1068. When using reference primers with non-eager cursors, the query would be executed multiple times, sometimes producing inconsistent results.
Using reference priming now implies using an eager cursor. Using eagerCursor = false and reference primers will result in an error.
Unfortunately, this re-introduces an issue described in #520, where calling getSingleResult() on a cursor with reference primers will always prime the entire result set.

Making a note that we should follow up on #1112 later on to see if this actually resolves the increased query load.

LGTM with the changes requested above.


Fix typo in zstandard message

It has an 'e' which should not be in "zstandard" + missing 'r' in
"library"

Sorry, we have complete refactored the structure of the repo. I have to close this request and fix the typos directly on main.


Cover PPGetEventOperation and PPGetRecentArticles with tests

PPLoginOperationSpec can be taken as an example

(PPGetEventOperation part)[c67661d3614829197fa6c38e7257e6d903420075]


Autocasting of array literals

It would be nice if autocasting would work for array literals, so you don't have to use of suffix to declare the type explicitly when it can be resolved from the type restrictions of a method call:
class Foo
  def initialize(@ary : Array(String | Int32))
  end
end

Foo.new ["foo"]

Related: #10036
If autocasting is applied recursively, we should be able to do this too:
Foo.new [1_u8] # okay, UInt8 literal is compatible with Int32 here so
               # the array literal is compatible with Array(String | Int32)

The benefit is more obvious if the value type isn't Int32:
class Foo
  def initialize(@ary : Array(Float64))
  end
end

Foo.new [1] # okay, Int32 literal is compatible with Float64 here

Another useful case is #9184; if we rewrite the constructor we could have
abstract class Animal; end

class Dog < Animal; end

class Cat < Animal; end

class House
  @animals : Array(Animal)

  def initialize(@animals : Array(Animal))
  end
end

House.new [Cat.new, Cat.new] # okay, Array(Cat) literal is compatible with Array(Animal)

Related: #10036
If autocasting is applied recursively, we should be able to do this too:
Foo.new [1_u8] # okay, UInt8 literal is compatible with Int32 here so
               # the array literal is compatible with Array(String | Int32)

The benefit is more obvious if the value type isn't Int32:
class Foo
  def initialize(@ary : Array(Float64))
  end
end

Foo.new [1] # okay, Int32 literal is compatible with Float64 here

Another useful case is #9184; if we rewrite the constructor we could have
abstract class Animal; end

class Dog < Animal; end

class Cat < Animal; end

class House
  @animals : Array(Animal)

  def initialize(@animals : Array(Animal))
  end
end

House.new [Cat.new, Cat.new] # okay, Array(Cat) literal is compatible with Array(Animal)

I wonder if having this kind of autocasting will fix #6997 either.

I wonder if having this kind of autocasting will fix #6997 either.

This is a bit hard to implement. For integers and numbers it's really easy: instead of producing the number type that was written, we produce a different type. For an array literal we need to rewrite it so that it's an array literal of a different type, and that includes changing its type and expansion. Maybe it's possible, I don't know. I feel this is too much.

This is a bit hard to implement. For integers and numbers it's really easy: instead of producing the number type that was written, we produce a different type. For an array literal we need to rewrite it so that it's an array literal of a different type, and that includes changing its type and expansion. Maybe it's possible, I don't know. I feel this is too much.

Why this issue got closed?

Why this issue got closed?

Apparently a PR was incorrectly linked to this issue.

Apparently a PR was incorrectly linked to this issue.


Update MRML?

It looks like MRML is now on version 3? The versioning is a little weird since the changelog has a different version than the Rust crate, but there does seem to be a version that has the mj-include tag added now.

Awesome! Thank you.


Stop server, but only if it's empty.

Feature Request
Feature Information:

It is a new task for scheduler. Like restart application server but only if it's empty, except this stops the server.
I only want it for minecraft, but I am sure it could be applied to many modules.

I confirm:

[x] that I have searched for an existing feature request matching the description.

This is automatically enabled by default on Minecraft servers. It is referred to as "Sleep Mode" and can be disabled from "Performance and Limits" within the configuration for your Minecraft instance.
Enable Sleep Mode
"Save resource consumption by stopping the Minecraft server when it's empty, and automatically restarting it when someone joins. Not available on certain server types."

@ZachZeop the sleep mode you're referring has nothing to do with the scheduler. The sleep mode doesn't fullfill the feature request.

@ZachZeop the sleep mode you're referring has nothing to do with the scheduler. The sleep mode doesn't fullfill the feature request.

@BroOtti His FR is to restart his Minecraft server if it's empty. You're correct that Sleep Mode doesn't make use of the Scheduler,however it most certainly fulfills this specific FR use-case regardless.

Unfortunately, no, the sleep mode is not what I am asking for. I am asking for sleep mode on steroids through the scheduler, I want the ability to turn the server OFF if there are no players. That is not currently an option and I would like that as a compromise to not having sleep mode for modded MC servers.

Unfortunately, no, the sleep mode is not what I am asking for. I am asking for sleep mode on steroids through the scheduler, I want the ability to turn the server OFF if there are no players. That is not currently an option and I would like that as a compromise to not having sleep mode for modded MC servers.

Understandable, although it would have been helpful had this information been provided in the original post.

Unfortunately, no, the sleep mode is not what I am asking for. I am asking for sleep mode on steroids through the scheduler, I want the ability to turn the server OFF if there are no players. That is not currently an option and I would like that as a compromise to not having sleep mode for modded MC servers.

Understandable, although it would have been helpful had this information been provided in the original post.

Agreed, I can't predict how people will interpret what I say, but now it's clarified. I have looked into coding my own mod to do this, and even looked into automation through a discord bot. This will be the simplest and as close to "best practice" that I can think of.

Agreed, I can't predict how people will interpret what I say, but now it's clarified. I have looked into coding my own mod to do this, and even looked into automation through a discord bot. This will be the simplest and as close to "best practice" that I can think of.

The simplest way I can think of doing this for yourself would be to use a Minecraft RCON Wrapper like this one I found on GitHub written in TypeScript and node-cron to setup your own scheduler of sorts.

Agreed, I can't predict how people will interpret what I say, but now it's clarified. I have looked into coding my own mod to do this, and even looked into automation through a discord bot. This will be the simplest and as close to "best practice" that I can think of.

The simplest way I can think of doing this for yourself would be to use a Minecraft RCON Wrapper like this one I found on GitHub written in TypeScript and node-cron to setup your own scheduler of sorts.

This is an avenue I haven't explored. I ran into issues trying to stop the server with a mod because I didn't know which stop function to use. The server saves all of the world files and a bunch of other things happen when you run /stop, but I am hoping that the rcon stuff doesn't have the same issue. It seems like I can run commands from an external program like a discord bot.
I will keep this open until I find a fix, or the feature is implemented.

/stop or /restart just don’t work with AMP, since it’ll think the server has crashed and attempt to restart it. The proper way would be to use some code with the AMP API to check the number of players, then shut down the server if it’s been empty for X amount of time.

/stop or /restart just don’t work with AMP, since it’ll think the server has crashed and attempt to restart it. The proper way would be to use some code with the AMP API to check the number of players, then use the AMP API to shut down the server if it’s been empty for X amount of time.

Where do you recommend I learn to use the AMP API?
This sounds more promising and better than rcon.

https://github.com/CubeCoders/AMP/wiki/Developers:-How-do-I-start-working-with-AMP's-API%3F

The development channel in the discord would be your best bet, got lots of cool and helpful peeps in there

complete +1 for @p0t4t0sandwich's comments. I have no experience running modded Minecraft servers nor making requests to the AMP API and should have stopped commenting a while ago but I'm glad OP got the help he needed

No worries! Brainstorming is always a blast, get some cool ideas that way


Adding donut charts

It would be perfect to add donuts to the range of possible charts types.
Something like this https://datavizcatalogue.com/methods/donut_chart.html

Hello boys,
I created a donut chart adding a circle on the pie-chart and moving externally the legends.

yeah you can compose some elements to create this yourself, we can add some recipes for doing it to make it easier though

Hello Will, thanks for the charts.
If it helps I can share my donut version of pie-chart.


StyleService: extend defaultStyle handling

fixes #2721

Pull Request Test Coverage Report for Build<PHONE_NUMBER>4
Details

4 of 4 (100.0%)  changed or added relevant lines in 1 file are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 99.68%

Totals

Change from base Build<PHONE_NUMBER>5:
0.0%

Covered Lines:
13499

Relevant Lines:
13500

💛  - Coveralls


Not stack safe

A simple parser like many (string "a") will fail on an input of size 3000.
Due to lack of general TCO - not sure if it's inherent in the continuation based design of the Parser type or just the mutual recursion of things like many/many1 and similar.

Hmm, I'm not sure if it's possible to get TCO given the CPS approach, as you say. I used CPS to be able to exit early in case of failure, but perhaps it's not worth it, and we should measure the performance difference.

Do you have an idea what would be a good example where "early exit" should work well? I've put together a version using a basic Parser a = PosString -> Either Failure (Success a), for a tail recursive many success and failure cost the same (with purescript-parsing version much slower)

didn't really see a difference on a non-tailrec case

...backtracking with try?

Thanks for the analysis! Yes, I think the CPS approach shines when there is a lot of backtracking, since you don't have to pay for a bunch of unnecessary binds, but of course, you lose the tail recursive property :cry:

The latest version uses your Parser a = PosString -> Either Failure (Success a) model. Would you be interested in implementing many etc. in terms of the new MonadRec instance? (I think it should be possible)

Sure, I'll have a look


WIP: Add func tests job

Codecov Report

Merging #17 into master will not change coverage.
The diff coverage is n/a.

@@          Coverage Diff          @@
##           master    #17   +/-   ##
=====================================
  Coverage     100%   100%
=====================================
  Files           5      5
  Lines         198    198
=====================================
  Hits          198    198

Continue to review full report at Codecov.

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


fix: allow php 8.3.1 etc. as well

I was not able to install this on a system with php 8.3.1 due to the composer requirement. I am assuming <= 8.3 was intended to allow 8.3.1 as well, so I changed it to < 8.4

Indeed! It should work on 8.3.x, thanks for the notice and PR!


Improvement Separate fixed key hash map context creator

Proposed changes
Separate fixed key hash map context creator
Further comments
If this is a relatively large or complex change, kick off the discussion at<EMAIL_ADDRESS>by explaining why you chose the solution you did and what alternatives you considered, etc...

run buildall


[Request] Can we add the 2022 GSoC accepted proposals

Since GSoC 2022 is ended, can we start adding the proposals? It would be helpful to 2023 contributors.

I have added the GSOC 2022 Accepted proposals for the respective organisations and will be adding more.. DO contribute if you find any proposals for 2022 do add it here

hey @jaiakash. Can I work on this issue?
I have some GSOC 2022 accepted proposals

@IshitaPathak I don't think This is active, I have opened a PR for 2022 accepted proposals but no action on  the PR yet

@cybergeekgyan Oh,OK! Thanks for letting me know.

Hello folks. I just merged all of your PRs.
Kindly circulate the repo link amongst 2022 folks that you know of!


Add etag information to the API

It also reorders the Dockerfile to better leverage the cache.
Fixes #20

Perfect! Thanks for your submitting @alvarosanchez


Ellipsize long strings

[x] joeferner
[x] sfeng88
[ ] mwizeman joeybrk372 jharwig

Testing Instructions: check that long property types, values, and element titles do not overflow their containers in activity display, edge/vertex/property selector inputs, diff panel, element inspector, & search filters.
CHANGELOG
Fixed: Many places where long names and values would overflow their containers.

@jharwig I agree with preferring flex/overflow over truncation, but for the LRP titles in the activity panel I wanted to allow multiple lines, the truncating gives ~3. I'd rather leave the truncation here than do a hairier multiline overflow solution


Add ENV support

We should support loading the list of servers and SASL auth from the environment. Probably best to have a new cluster creation function that explicitly looks to load form ENV.

wont do

wont do


Force re-render scene after pop

Hi,
Is it possible to force re-render scene after a click on Back button on a previous state ?
Thx

You mean simply calling Actions.pop(); Actions.refresh(); ?

Thanks for your answer but, not work ;)
It doesnt refresh the previous view ...

I guess it should refresh it if something is changed within its state. So set some random value within refresh

On 09 Apr 2016, at 09:51, rtrompier<EMAIL_ADDRESS>wrote:
Thanks for your answer but, not work ;)
It doesnt refresh the previous view ...
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub https://github.com/aksonov/react-native-router-flux/issues/465#issuecomment-207737400

Could anyone tell me how to refresh after Actions.pop()?

Again, you must change state of previous component to be refreshed. It is how NavigationExperimental API works.

@aksonov I am having the same issue as @helloworld123456 and @rtrompier .  My navigation flow looks as follows:
Scene A => Scene B => Scene C
When I pop from C to B, I need to rerender Scene B.  I see that you have suggested using Actions.pop(); Actions.refresh();  I have two questions:

Will calling Actions.refresh() rerender Scene C or B?
Is it possible to override the onPress handler of the back button in the navbar?  It does not look like it is possible after looking at the code.

It should refresh B, but why don't you test it and find out!
Use renderBackButton to pass in your own back button, custom onPress and all.

Got it - thanks @cridenour

@samdturner can you tell me how?
Thank you

@alfan2305
Actions.pop();
Actions.refresh();

what about within the navBar? Shouldn't we have a refresh="true". Otherwise I have to override the onPress for the backButton to a function that calls the above two calls.

@ssomnoremac What's wrong with overriding the button? Pretty simple to do. If this issue was more popular I'd say we add the functionality but it seems to be an edge case.

@cridenour I believe it goes beyond the scope of this question to have the ability to re-render a scene on route change. In my case I want to go back from a registration sequence and have the state of the registration reset in my Redux store by firing an action on re-render instead of hooking the reset into the back button. Is there a better way to accomplish this?

I would think your registration component would receive the change by listening to redux would it not? Or is the issue the scene doesn't re-render after receiving new props when another component rests on top?
I mean we provide an onBack so when defining the registration scene should be as simple as
const refreshOnBack = () => { Actions.pop(); Actions.refresh(); }

...
<Scene key="registration" component={Registration} onBack={refreshOnBack} />
...

thanks, didn't know about onBack as I use the detailedExample as my docs.

No problem. Definitely take a glance through https://github.com/aksonov/react-native-router-flux/blob/master/docs/API_CONFIGURATION.md as there's a lot of flexibility there for when you go "off book" :)

Hello guys,
First of all : thanks you all for your insights they are really useful as I'm quite a newbie in react & javascript coding.
I just tried out the "refreshOnBack" solution from @cridenour : unfortunately I stumbled upon some difficulties.
Now the button just do nothing. I just stay on my "C" Scene (referring to @ssomnoremac example) even if the button highlighted itself. If I just set :
const refreshOnBack = () => { Actions.pop(); }
I've the expected behaviour without an update of my parent view.
What am I missing ? :/

I have the same experience as @Brokray

If you debug remotely do you see an error in the console?

@cridenour no errors in the console.
Is there anything I can log to the console to figure out what's going on?  Something from the reducer maybe?
The reducer is still a bit of a mystery to me.
Thanks.

Hmm! Maybe try doing the refresh first.
Actions.refresh({key: 'yourSceneKey'}); Actions.pop();

Thanks you for your help @cridenour : I just tried your idea but unfortunately it doesn't work neither. I go from C to B without any problems but "B" didn't changed.
It seems that the problem come from the refresh() method for me : even if I put a refresh button on the 'B' scene (calling to Actions.refresh()) nothing happens.
@jholton I don't know if it can help you but  : I found a custom way to update my scene  :
I have a reducer for each scene (B & C), when I call my POST action in 'C' both of my reducers catch the call, C does what he need to do and B set a state variable 'update' to true.
This way, in the "ComponentWillReceiveProps" of B, I test 'update', and call again what I need to refresh the scene.
If somebody have more insights on the Actions.refresh() problem, do not hesitate !
Thanks.

@Brokray Interesting that it didn't work - but you have the better solution anyways. I don't believe in trying to use the navigation system to pass app state - I always stick to flux stores.

@Brokray if it's not too much trouble, can you provide an example?  How to you have a reducer for a single scene?  I've read all the documentation, but it's a bit over my head at this point.
@cridenour Yeah, I don't want to pass app state per se.  I just want scene B to re-render.
In scene B, I display some data from by database.  In scene C, I have a form that adds data to the database.  When the user pops back to scene B, I just want all the lifecycle methods (e.g. getInitialState, componentWillMount, etc) to fire so the newly added data is retrieved and displayed.  Those lifecycle methods don't fire.

@jholton Correct, and that is by design from React, for better or worse. I highly suggest you try out a flux implementation (a lot of people like redux, I personally use Alt) and manage the data there. That way, when you update the data, the component will re-render (this means re-running render()) and not be reliant on the initialization of the component. A lot of react problems in React become much easier once you move the data layer away from components (and they just read data and display).
That said, Actions.refresh() will only cause new props and a re-render (again, just render()) but will not call componentWillMount, etc.

@jholton Well, as @cridenour said I use a flux implementation (redux indeed) which allow you to manage your data through actions, state and reducer. Once you're familiar with flux implementation I will gladly provide you an example !
@cridenour Thank you again for your help !

@Brokray Yeah, I'm diving into Redux tutorials now.  I'll revisit this thread when I can discuss flux/redux more intelligently.  Thanks.

will i succeed in updated props but when i try to move to next view again then its gives me error
this code is written in me setting screen
Actions.pop();
Actions.refresh({key: 'pageOne', name:'wwwww'});
Only this will work and update the view but when i try to again go to the setting screen then it gives me error

will I finally solve it by calling empty refresh with props
Actions.popTo('pageOne');
setTimeout(() => {
Actions.refresh({name:'zzzzar'});
console.log("zzzz");
}, 10);

@washaq: That did the trick for me

@ronyv89 glade it work for u can any one help me on this? "https://github.com/facebook/react-native/issues/9280"

Actions.pop(); Actions.refresh();
just refresh the page but does not go to previous scene.

It would be nice if Actions methods could be promised based so you can chain them together like
Actions.pop().then(Actions.refresh()).
or
Actions.pop().refresh()

@israrhnrtech  and @tuneZola  its not working if you want to call refresh of previous then u need to call it after delay then it will called properly like that
Actions('pageOne');
setTimeout(() => {
Actions.refresh({name:'zzzzar'});
console.log("zzzz");
}, 10);

First of all Thanks for the Reply @tuneZola and @washaq .
Actions('pageOne');
setTimeout(() => {
Actions.refresh({name:'zzzzar'});
console.log("zzzz");
}, 10);
this code is working very well ..
thanks again ..

@israrhnrtech  no problem dude i find that really lot of hit and trail lol its looks simple know but when u r new on react native and doesn't know how to do that then its different story :)

I'm facing this same problem, on my Scenes:
A => B
on B I change my redux store state, but when I do a Router.pop(), componentWillReceiveProps is not triggered on A.
My router.pop lives locally inside the B page (not using default navBar), so
Router.pop()
Router.refresh()

does not work, setting a timeout does not work either, any ideas on how to achieve this?

i will only update when you pass your props that you want to change i.e
Actions.pop();
setTimeout(() => {
Actions.refresh({name:'zzzzar'});
console.log("zzzz");
}, 10);

in this i pass name as props in my main view that means if i m using this.props.name to update text then its updated you need to pass updated state as a props in refresh because thats how view know its updated.
Hope this will help you

For me applying this worked:
navigator.replacePreviousAndPop(previousRoute);

@phpscrpt  , can you brief more with some codes that how its working ?

@israrhnrtech sorry it is for react-native's built in Navigator component. If react-native-router-flux is inherited from the Navigator component somehow it may work.

@washaq  The timeout solution, as implemented below, did not working for me:
backAndRefresh(){
Actions.pop();
setTimeout(() => {
Actions.refresh({name:'zzzzar'});
console.log("zzzz");
}, 10);
}
<TouchableOpacity onPress={() => backAndRefresh()}>
GO BACK AND REFRESH

Am I missing something?
Thanks!

@ivansifrim did you found a solution for this?
we're also trying to find a way to trigger an action after landing on the screen

This works for me: Actions.pop({ refresh: {} });
It pops the current screen and refreshes the parent screen.

@JeroenNelen - I haven't yet but I'll try what @Bertjuhh suggested

Any solution for the problem mentioned ?

This is working well for me:
const refreshOnBack = () => { Actions.pop({ refresh: {} }); }
...
// child scene
<Scene key="settings" component={SettingsScreen} onBack={refreshOnBack}/>
...

In a simple app I've recently done I've worked around this like so
Actions.pop = () => Actions.NAME_OF_PREVIOUS({ type: ActionConst.RESET });

You'll have to do some conditional logic in the function you're using to override pop. Worked beautifully in my case (granted I don't mind the alternate back transition while using ActionConst.RESET).

Is there finally anything working well here ? None of the propositions above are really working...

+1

@ivansifirm it should be working last I used it remember in refresh pass the props you want to undate I.e above 'name' is the props that I want u update in my previous view

same issue here, very strange.
sometimes it works, sometimes it doesn't work.
Here is my code. (In my case, there are scene A and B, A=>B by navigating, B=>A by poping)
Scene A:
componentWillReceiveProps(nextProps) {
   if (this.props.test !== nextProps.test) {
     this._getUser()  // I need call this func after pop
   }
 }

Scene B
NavigationActions.pop({refresh:{test:true}})
What's wrong with me ?
Thanks.

NavigationActions.pop({refresh:{test:true}})
can you change it to
NavigationActions.pop({refresh:{test:!test}})
On Tue, Jun 20, 2017 at 7:29 PM, MobileStar<EMAIL_ADDRESS>wrote:

same issue here, very strange.
sometimes it works, sometimes it doesn't work.
Here is my code. (In my case, there are scene A and B, A=>B by navigating,
B=>A by poping)
Scene A:
componentWillReceiveProps(nextProps) {
if (this.props.test !== nextProps.test) {
this._getUser()  // I need call this func after pop
}
}
Scene B
NavigationActions.pop({refresh:{test:true}})
What's wrong with me ?
Thanks.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/aksonov/react-native-router-flux/issues/465#issuecomment-309945049,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AExqB3CZM4U1yuwKslfuBj88uVVJulGtks5sGIAbgaJpZM4H_0pN
.

@nikitph  Thanks for your help.
Yeah, I tried with it.
But componentWillReceiveProps doesn't fire always after pop.
Could you possibly let me know when componentWillReceiveProps is fired or there is a other lifecycle func is fired after pop ?
Regards.

@SelfnessAid ahh now i remember why i gave up on solving this issue. i had a similar problem. "But componentWillReceiveProps doesn't fire always after pop." I think i have worked around it by having the index of a swipeable view which i have on the target page drive the refresh. yes it sucks but i m getting my problem solved.

I figured something out. I don't really think it is clean at all but for me it does the job, so here it is. (I'm using Redux to do this)
I needed to call a fetch function whenever I did an Action.scene() or Action.pop(). This fetch was initially called in the componentWillMount method but as it isn't called when using Action.pop() I changed all my Action.scene() and Action.pop() calls to 2 custom functions which are actions which means that I have more redux containers than I normally should but eh :/. So here they are:
const goTo = (scene, label, sceneParams = {}, pushed = true) => ( // Equivalent of `Action.scene()`
   (dispatch) => {
     dispatch(setAppLabel(scene, label, sceneParams, pushed)); // I'm storing some infos about the scene in my store. Will be used in custom `pop()` later.
     mapSceneToAction(scene, dispatch, sceneParams); // // Calls the function initially used in the componentWillMount. I'll show a sample further
     Actions[scene](sceneParams);
   }
);

const pop = () => (  // Equivalent of `Action.pop()`
   (dispatch, getState) => {
     Actions.pop();
     mapSceneToAction(getState().sceneReducer.previousScene, dispatch, getState().sceneReducer.previousScene.itemProps); // Retrieving some infos stored in the store during `goTo()`
   }
);

And here is how mapSceneToAction() looks like:
const mapSceneToAction = (scene, dispatch, itemProps) => {
  switch (scene) {
    case 'events':
      dispatch(fetchEvents()); // Or any other action :P
      break;
    case 'anyScene':
      dispatch(anyAction(withAnyParams));
      break;
    default:
  }
};

It is a bit tricky, heavy and probably not really clean but since I'm using this method I've managed to fix all the problems I had.

Pass a function prop to the next scene..
Actions.YourRoute({ onPress: () => setState.. });
Then on the next scene, call the function pop
this.props.onPress();

@bethuel11  This is re rendering the component in a loop. Not a good solution though

i found simple trick...
current state / current page =>
Actions.pop();
setTimeout(() => {
Actions.refresh({
isRefresh: true,
});
}, 0);
pervious state / page => inside render add below condition,
if(this.props.isRefresh){
Actions.refresh({
isRefresh: false,
});
//if u call set state here it will automatically rerender itself...
this.setState({isloading:true});
Thanks.
}

Having tried everything above, what ended up working for me is:
Actions.pop();
setTimeout(() => {
Actions.refresh({key: Math.random()});
console.log("zzzz");
}, 10);


Replaced unavailable image in https://k8s.io/docs/tutorials/stateless-application/guestbook/

resolve #44190

Changed the wrong file at first, but fixed it now.

Per https://github.com/kubernetes/website/pull/44290#discussion_r1421843760

Why is this container image a good choice / could we switch to another image (maybe one that we, the Kubernetes project, control)?

We'll need an answer to that question.

@sftim

The image is a good choice because it's the image that's now used in the original tutorial that the one on k8s.io is based on, and it works well with the rest tutorial. The previous image used was also Google's, but they seem to have taken it down in favor of this updated one.
The Kubernetes project doesn't seem to own any compatible images, as the images used in the tutorial (aside from the redis iamge) are both controlled by Google. If necessary, we could upload copies of the images to a registry owned by the Kubernetes project, but I don't personally know of any.
Also looks like Google replaced the gb-redis-follower currently reference in the k8s.io tutorial (gcr.io/google_samples/gb-redis-follower:v2) with us-docker.pkg.dev/google-samples/containers/gke/gb-redis-follower:v2. I can go ahead and update this one as well.

/lgtm

/assign @natalisucks
for approval

It would be great to expedite the approval for this PR as it fixes an issue that is repeatedly being reported by multiple users.

pinging @natalisucks for approval

Hi folks – SIG Docs has PR wranglers assigned each week in order to move through the contribution queue of PRs, of which the schedule can be found here: https://github.com/kubernetes/website/wiki/PR-Wranglers
Feel free to ping the relevant PR wrangler in a PR, or in the #sig-docs channel on Kubernetes Slack, to have your work looked at as needed.
/approve


Problems with GCoV usage

hi，
Thank you very much for the powerful tool, I encountered a problem in using it.
In my YAML project ，Import other path YAML project
project.yaml
:import:
  :confighmi: ../source/Component/app/app_sensor/hmi/config.yml

:paths:
  # :test:
    # - +:test/**
  # :source:
    # - src/**
  :include:
   - +:rtos/inc/*
   - +:rtos/src/*
   - +:MyTest/*

config.yml
:paths:
  :test:
      - ../source/Component/app/app_sensor/hmi/ut/*
  :source:
      - ../source/Component/app/app_sensor/hmi/src/*

  :include:
    - +:../source/Component/app/app_sensor/hmi/inc/*

Generate coverage test report containing test files

the trouble is
Can you remove UT test code from coverage report

Interesting. Honestly, I'm surprised that the unit test IS part of you test code in this instance. Does this only occur when you have a yaml file including another?

Interesting. Honestly, I'm surprised that the unit test IS part of you test code in this instance. Does this only occur when you have a yaml file including another?

Interesting. Honestly, I'm surprised that the unit test IS part of you test code in this instance. Does this only occur when you have a yaml file including another?

Yes, I have tested that this problem only occurs when importing YAML files

Interesting. Honestly, I'm surprised that the unit test IS part of you test code in this instance. Does this only occur when you have a yaml file including another?

Yes, I have tested that this problem only occurs when importing YAML files

Interesting. Honestly, I'm surprised that the unit test IS part of you test code in this instance. Does this only occur when you have a yaml file including another?

Can this problem be solved?

@jifengtx
A way to solve that is to use a filter directly into the tool you're using to generate the HTML. In your case, it seems to be the GCOVR.
For example, I've faced this issue using ReportGenerator instead of GCOVR, and I could remove these undesired modules from the report, using the filter configuration:
:file_filters: "-.\\..\\common\\*;-.\\test\\support\\*"
On the other hand, those filter for GCOVR you can find on the GCOV documentation, in this link: https://github.com/ThrowTheSwitch/Ceedling/tree/master/plugins/gcov
You'll see some way to solve your problems through the configurations:
`# Keep only source files that match this filter. (gcovr --filter).
:report_include: "^src"
# Exclude source files that match this filter. (gcovr --exclude).
:report_exclude: "^vendor.*|^build.*|^test.*|^lib.*"

# Keep only gcov data files that match this filter. (gcovr --gcov-filter).
:gcov_filter: <gcov_filter>

# Exclude gcov data files that match this filter. (gcovr --gcov-exclude).
:gcov_exclude: <gcov_exclude>

# Exclude directories that match this regex while searching
# raw coverage files. (gcovr --exclude-directories).
:exclude_directories: <exclude_dirs>`

Finally, it's important to note that with this solution you'll be applying the filter only to the report tool. It means that GCOV will still be applied to all those modules, consuming process time and will also appear on the log.

@beckerzito
I have tried the method you gave me, but I still can't solve the problem
project.yaml
:gcov:
  :file_filters: "-..\\source\\Component\\app\\app_sensor\\hmi\\ut\\*"
  # :report_exclude: "^ut.*"
  # :html_report_type: basic
  # :html_report_type: detailed

:libraries:
  :system:
    - m

:plugins:
  :load_paths:
    - vendor/ceedling/plugins
  :enabled:
    # - stdout_pretty_tests_report
    - module_generator
    - xml_tests_report
    - warnings_report
    - gcov
...

@beckerzito
Thank problem has been resolved, the solution is https://github.com/ThrowTheSwitch/Ceedling/issues/493


indication of more to scroll

Problem/Need:
Otherwise you don't realize there are more templates available.
Suggestions:

[ ] shadow effect or background gradient?

taken care of by the white bar on the top/bottom of the left panel


Download zip file via AdminCP?

Is there a way to have this functionality added to the backend, so that there's a "Download All" button next to each Assets field in the AdminCP?

I made the changes you requested, except for using Craft.postActionRequest
If I use Craft.postActionRequest it returns the zip file in the response, which is probably not what we want. Can we compromise and use Craft.getActionUrl and link to that instead?

It would be neat if this could be done within the assets section of the Control Panel as well, maybe in the dropdown list when two or more assets are selected.

I could probably figure this out using the url ( /actions/zipAssets/download?filename=your-zipfile&files[]=123&files[]=234) example provided in the readme, just don't have the time at the moment. Wasn't sure if there was something out of the box that did this.


[BUG]

.
.
.
I'm having this issue, I've updated every single mod I could, and there are no conflicts with any other mod but I'm seeing GUI issues with Jotun in the console. Jotun is installed but I don't think correctly, as I had all the Jotun files just sitting in my plugins folder on my old PC where Xportal WAS working, but I looked on the ThunderStore and it says to just drop the Xportal and the Jotun folders into the Plugins folder
.
.
.

.
.
For reference, I DID have both folders emptied into the plugins folder before these screenshots, but it wasn't working then either
.
.
.
Describe the bug
When I attempt to use the portal, I am met with the Vanilla portal UI and cannot select other portals as a destination. ALSO cannot see Ore Support elements from the mod Ore_Support, ALSO signs do not appear correctly, they only have "..." any text will produce that
.
.
To Reproduce
both on my, my brothers, and my friends' clients.
.
.
Environment
Multiplayer Host
Multiplayer Client    (ALL)
Singleplayer
.
.
Other mods
I've isolated to only Bepin(<IP_ADDRESS>), Jotun (2.19.3), and Xportal (1.2.20) in the plugins folder, then deleted all the configs(which shouldn't affect if it doesn't have DLLs) and it still wouldn't work.
You'll see the other mods I normally play within the pictures.
.
.
Details:
Jotunn Version:  2.19.3
Jotunn Submodule(if applicable):
Repeatability(Consistent(100%)
.
.
Problem Description:
I did post this to Xportals but I copied the entire contents into this report and I think it is an issue with the GUIManager from Jotun
.
.
Expected Behaviour:
GUI/elements to appear.
.
.
Actual Behaviour:
GUI's not appearing, and other elements are not appearing correctly
.
.
Link to your server's and client's LogOutput.log
LogOutput.log

https://github.com/SpikeHimself/XPortal/issues/98

Spike said it wasnt Jotun, so ill close this end

It looks like a different BepInEx pack than https://thunderstore.io/c/valheim/p/denikson/BepInExPack_Valheim/ was installed, or the BepInEx install is broken. Please reinstall the mods with the pack above, any other may not work as expected.

THAT WAS IT!!! thank you so much, and I'm sorry for the wild goose chase, thank you. https://github.com/BepInEx/BepInEx/releases   this is where I got it


zsh-history-substring-search: 1.0.1 -> 1.0.2

Semi-automatic update generated by https://github.com/ryantm/nixpkgs-update tools. This update was made based on information from https://repology.org/metapackage/zsh-history-substring-search/versions.
meta.description for zsh-history-substring-search is: '"Fish shell history-substring-search for Zsh"'.
meta.homepage for zsh-history-substring-search is: '"https://github.com/zsh-users/zsh-history-substring-search"
Release on GitHub
Compare changes on GitHub

Checks done (click to expand)

built on NixOS

The tests defined in passthru.tests, if any, passed

0 of 0 passed binary check by having a zero exit code.

0 of 0 passed binary check by having the new version present in output.

directory tree listing: https://gist.github.com/c3b81aa452529e7e7e5836f60eed7477

du listing: https://gist.github.com/35e196547a3fddb300aa6bfd5b723279

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

4 total rebuild path(s)
1 package rebuild(s)
1 x86_64-linux rebuild(s)
1 i686-linux rebuild(s)
1 x86_64-darwin rebuild(s)
1 aarch64-linux rebuild(s)
First fifty rebuilds by attrpath
zsh-history-substring-search

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/hl3dh4f43fzq63z9xvswlfyl1f5yh0b1-zsh-history-substring-search-1.0.2 \
  --option binary-caches 'https://cache.nixos.org/ https://r-ryantm.cachix.org/' \
  --option trusted-public-keys '
  r-ryantm.cachix.org-1:gkUbLkouDAyvBdpBX0JOdIiD2/DP1ldF3Z3Y6Gqcc4c=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

(r-ryantm's Cachix cache is only trusted for this store-path realization.)
Or, build yourself:
nix-build -A zsh-history-substring-search https://github.com/r-ryantm/nixpkgs/archive/65d2c93bd0b657c372427c8828502fdca9f475d6.tar.gz

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/hl3dh4f43fzq63z9xvswlfyl1f5yh0b1-zsh-history-substring-search-1.0.2
ls -la /nix/store/hl3dh4f43fzq63z9xvswlfyl1f5yh0b1-zsh-history-substring-search-1.0.2/bin

cc @alyssais for testing.

Backports:

19.09: 6780988df1a
19.03: 54fe0ae50ff


perl: No such file or directory on installDBBinaries.sh 94

error

12.15 A log of this session is currently saved as: /tmp/OraInstall2024-08-22_12-48-10PM/installActions2024-08-22_12-48-10PM.log. Oracle recommends that if you want to keep this log, you should move it from the temporary location.
12.32 /opt/install/installDBBinaries.sh: line 94: /opt/oracle/product/<IP_ADDRESS>/dbhome_1/perl/bin/perl: No such file or directory
12.32 mv: cannot stat '/opt/oracle/product/<IP_ADDRESS>/dbhome_1/perl': No such file or directory

perl is installed via the installPerl.sh script. The highlighted text in the screenshot shows that installDBBinaries.sh checks for the version on line 94. If that command fails, it runs the $INSTALL_DIR/$PERL_INSTALL_FILE on the next line. The double pipe (||) is the bash "if there's a non-zero return code, run the next command" while the backslash (\) is a line continuation.
Since the $ORACLE_HOME/perl/bin/perl -v version check isn't redirected to stdout, this will return the error you're seeing, but it's followed by execution of the perl install script:
# $ORACLE_HOME/perl/bin/perl -v || echo "Error handler"
/opt/oracle/product/<IP_ADDRESS>/dbhome_1/perl/bin/perl: No such file or directory
Error handler

@rolkey did the image build fail, or is your concern that the display of the error message is confusing?

Hi @oraclesean @yunus-qureshi
I'm having the same issue while trying to apply the last patch p36538667 of version 19.3.0 I had attached error
( /opt/oracle/product/19c/dbhome_1/OPatch/opatchauto: line 44: /opt/oracle/product/19c/dbhome_1/perl/bin/perl: No such file or directory)
Note: under one_offs I have p6880880_190000_Linux-x86-64.zip and under release_update I have p36538667_190000_Linux-x86-64.zip

@eyaneylii please list the steps with the full command lines that you are attempting

@yunus-qureshi Thanks for your response
As mentionned I placed under one_offs p6880880_190000_Linux-x86-64.zip and under release_update I have p36538667_190000_Linux-x86-64.zip
under the extensions/ folder I run below command :
./buildExtensions.sh -a -x patching -b oracle/database:<IP_ADDRESS>-ee -t "oracle/database:<IP_ADDRESS>-ee-P" "--build-arg SLIMMING=false"


Rephrase README so that it is less discouraging for newbies

Good point raised by @cassieevans : https://twitter.com/cassiecodes/status/1272881499449315329
Any suggestion that help encouraging beginners without being too discouraging about expectation is welcome.

Suggested change:

Can I submit any SVG like a simple circle?
We do not have any formal acceptance criteria, we only expect you to push forward the limit of your knowledge of the technology. Regardless about what we subjectively think about your submission we will do our best to provide constructive feedback on your PR to improve your submission in a way it will be awesome (and we're pretty sure you can do better than a circle 😉).

@cassieevans do you think it's better? Any suggestion to improve this would be awesome and let me know if you've spotted other area where the text is somewhat "yikes".

That sounds a lot better, I wrote this up too -
Will all submissions be featured on the site?
We don't have any formal acceptance criteria, but whatever your knowledge of SVG, we encourage you to push the boundaries and experiment!
We will showcase the submissions we feel best push the limits of the technology. We can't guarantee your contribution will be accepted, but we will do our best to provide constructive feedback on your PR if we see a way to make it even better!

I've update the README with something highly inspired by your suggestion. Let me knows if there are other things that can be improved in any ways.


timewarrior: manpages not installed properly

I post this as issue because I do not know how to fix it
Issue description
man timew

results in not found.
Steps to reproduce
See above
Technical details

System: 16.09pre87999.20f009d (Flounder)
Nix version: nix-env (Nix) 1.11.2
Nixpkgs version: "16.09pre87999.20f009d"

The manpages were installed in a wrong directory. #17667 fixes it.


Add controller tests to the build.

A number of important controller-side tests got added recently, but they
are not being run in CI. Well, let's add them.

@mrjerryjohns Sorry, can you take a look at the merge conflict, and build failures?


V1.4.x RAT check fix

Description
#14142 #14148
Checklist
Essentials
Please feel free to remove inapplicable items for your PR.

[ ] The PR title starts with [MXNET-$JIRA_ID], where $JIRA_ID refers to the relevant JIRA issue created (except PRs with tiny changes)
[ ] Changes are complete (i.e. I finished coding on this PR)
[ ] All changes have test coverage:
Unit tests are added for small changes to verify correctness (e.g. adding a new operator)
Nightly tests are added for complicated/long-running ones (e.g. changing distributed kvstore)
Build tests will be added for build configuration changes (e.g. adding a new build option with NCCL)
[ ] Code is well-documented:
For user-facing API changes, API doc string has been updated.
For new C++ functions in header files, their functionalities and arguments are documented.
For new examples, README.md is added to explain the what the example does, the source of the dataset, expected performance on test set and reference to the original paper if applicable
Check the API doc at http://mxnet-ci-doc.s3-accelerate.dualstack.amazonaws.com/PR-$PR_ID/$BUILD_ID/index.html
[ ] To the my best knowledge, examples are either not affected by this change, or have been fixed to be compatible with this change

Changes

[ ] Feature1, tests, (and when applicable, API doc)
[ ] Feature2, tests, (and when applicable, API doc)

Comments

If this change is a backward incompatible change, why must this change be made.
Interesting edge cases to note here

http://mxnet-ci-doc.s3-accelerate.dualstack.amazonaws.com/PR-14156/3/faq/index.html


Include  in test suite for std::runtime_error

What needs it? Under what compiler it fails to build because of that?

The backstory is that I'm trying to set up an automatic test build for Travis-CI (but it's not quite working yet). One of the compilers there complained about the use of std::runtime_error (sorry, I don't recall which one). I looked up http://en.cppreference.com/w/cpp/error/runtime_error and the required header file is <stdexcept>. That fixed the problem on Travis-CI, and seemed like a safe, appropriate change to make.

If you find out which compiler, I am more than happy to merge. But so far it's too vague for me :)

In cases like this, my usual approach is to follow the documentation for which header should be included, rather than relying on finding a counterexample on a particular platform/compiler combination.
In any case, the compiler with the problem appeared to be g++ 4.8. You can see the output from the Travis-CI build here: https://travis-ci.org/ghewgill/minijson_writer/jobs/78293432 although I'm not sure how long that link will remain available.

Same approach here -- the problem is that I simply forgot I was catching a std::runtime_error on line 388, which is a recent addition by the way. You could have told me: "you catch std::runtime_error and you forgot to add the appropriate header". Travis-Cl, and any backstory for that matter, is distracting in this case.

Ah, got it. I should have explained more about the change in the description. Thanks.

Well actually I should have searched in the source code but was busy doing something else. Next time, please shout pointing at the very offending line! :+1:


Factory seed not working with laradock

Following the youtube video tutorial by the author. I implemented it in  laradock.
After  adding additional field phone in admins table migration and AdminFactory.php. I ran php artisan multiauth:seed --role=super
I get error:

General error: 1364 Field 'phone' doesn't have a default value

though I have given value to phone field in AdminFactory.php it is not being inserted in the DB.

Yes, package factory doesn't have phone field in the factory, you can't use seed of package


Deis builder should do best effort to keep git checkout

I udnerstand that deis builder will throw away all git checkouts it has on a reboot / node movement.
Problem is when pushing a branch with rather some history, this might take a while every time.
I think deis builder should do a best (better than currently) to keep a quick checkout of branches.
I am thinking of a new container / volume that has all repos, that can be fetched.
Ofcourse in case that is down, or the repo isn't available there it must keep current behaviour to just repush the branch from scratch..
This will be even more important when deis builder is scalable (I hope there are plans for this) in large clusters
Hreoku displays "fetching branch" when pushign to an existing app, so I assume they push branches to a central (but distributed) location, fetch it locally from the datacenter (which should be fast), and then accepts new pushes from there on.
I hope we can achieve something similar...

I think this could be achieved by having builder consume a deis-store-volume mount. This is an optimization that we could see being optional for users who want this performance improvement.

This issue was moved to deis/builder#471


Set alpine version to 3.12

Just released alpine 3.13 seems to have DNS resolving issues
Signed-off-by: Dinar Valeev<EMAIL_ADDRESS>

I just gave my approval there, even though its not needed :P

I just gave my approval there, even though its not needed :P


The product addition button is not visible in AMOLED mode

What

The product addition button is not visible in dark AMOLED mode

Screenshot/Mockup/Before-After

Could not reproduce with the latest version.
@teolemon How come you have blue/teal buttons on top?

light mode
dark mode

ah, I'm in AMOLED mode

Will probably be fixed by https://github.com/openfoodfacts/smooth-app/issues/4406


mimalloc 2.0.3 - Solaris code regression

os.c, line 426:
void* p = mmap(try_alignment, size, protect_flags, flags | MAP_ALIGN, fd, 0);
Did you mean "addr" as a first argument instead of "try_alignment"?
Also, madvise/memcntl calls require arguments of caddr_t type to be explicitly cast to caddr_t, otherwise it doesn't compile.
Tested on Solaris 11.3 (SPARC and x86) with GCC 7.3.0.

Hi @t0x1c, thanks for the report -- I cannot test Solaris myself so you testing is really appreciated!
According to https://docs.oracle.com/cd/E88353_01/html/E37841/mmap-2.html, the addr parameter is interpreted as the alignment requirement when MAP_ALIGN is passed. So I think it should work?  Can you test this?

I pushed potential fixes to the dev branch; let me know if this works

Oh, in that case the code is correct, I just didn't know the intention behind it and compared it to the similar code above which used addr as a first parameter. But it didn't compile anyway because of incompatible types.
I can't use dev code right now, but I checked your changes in the commit and it looks like all casts are in place now. Thanks.
Just FYI, I modified my local source files earlier, by hard-coding those cast to caddr_t directly (without thunk function with OS-specific checks) and it compiled everywhere I tried: Windows/x64, Linux/x64, Linux/PPC64LE, AIX/PPC64, Solaris/x64, Solaris/SPARC. So it seems like caddr_t is an standard type for these functions across platforms, though I haven't tried all supported platforms.

Ah, good to hear as I have no access to most of the systems you tried it on :-)  nice


Align naming convention to cursor

What problem does your feature solve?
There is some confusion for developers about what is cursor. For example in getEvents, we call cursor in the request and pagingToken in the response.
Discord thread: https://discord.com/channels/897514728459468821/966788672164855829/1222799292344045619
Developers are confusing that pagingToken is the cursor. We should rename it to cursor in the response.

Agreed, wait after one or two protocol releases before we remove duplicated field is a great idea.

We'd like to consider adding a separate cursor field to the top-level response, at the same level as events. The value of cursor would be the same as the value of the pagingToken from the last element in the list of events. Note that this format should apply to all future paginated endpoints, not just events, and will require updates to our Pagination documentation pages.

Instead of removing pagingToken for each events how about we rename pagingToken to eventId. I believe this id might be useful for devs/clients to uniquely identify events on their end.
Cursor will still be present as a top level field for pagination purpose.

Another recommendation that we can take or leave, given I know we're trying to get this into p22 and I'm not sure how much work it may be. I think we should consider making the cursor completely opaque to the client/end-user and encoding the filter/sort information into it.
For example, the cursor that the API returns could be a base64 encoded string representation of something like the following dictionary:
{
    startLedger: 10,
    endLedger: 20
    event_id: 4000,
    order: desc
}

This would give us a couple advantages:

Future proofs, as the cursor is clearly not an event_id, so it prevents clients from relying on it as one, and therefore let's us change it in the future when we need to
Removes the need for the client to pass in all of their filter params + sort params on every single request. If they have a live cursor they effectively have a stateful scroll id that they can use to continue their scrolling session
If it helps us performance-wise, we could actually effectively change the filter parameters for the next request in the scroll (ex. moving startLedger up)


Fix lints

Fix a couple of SonarLint problems.

Yeah, it was an accidental pull request from our down stream repo(its happened a few times).  We're working on v2 milestones with v1.3.0 in flight.  We're managing access, issues, and things there and making sure we're merge-ready with merging changes from this upstream repo.  If you feel this strategy is ill advised, let's discuss it.  Thanks Steve.

Personally, I'd rather see this work done in the daffodil-vscode repo. If you don't think it can be done in an incremental way in the main branch, as an alternative we could create a dev branch and merge PR's into that branch. Then when the changes are ready for main, we can just merge it in. This way most of the development happens in a public and more easily reviewable manner. It also means if there are any other people checking out the project, they are more likely to see this work and potentially get involved. It also avoids any potential intellectual property clearance stuff, though I'm not positive if that would be required or not.
This is just a personal preference though. It's ultimately up to the community how to handle this work. If everyone else is fine with it where it is and is okay with merge it in later in a big PR, that's fine with me.

I don't disagree with any of that, as it's both reasonable, and pragmatic.  Our little group is focused on a 1.3.0 milestone that introduces some basic hex-editing capabilities to the debugger.  Once that's ready, I'd feel better about migrating over.  It would be great to get more visibility and engagement, but we're striving to provide something of reasonable demonstrable value (e.g., not completely busted or half baked) before throwing it over the fence.  I'm very much in favor of small, working, increments over massive PRs.  I'm sure we can converge on a good, productive path forward.  For engaging with the community, shall I present what we're working on to the dev mailing list, or a discussion here on the project GitHub, or somewhere else?  Thanks again Steve.


Expand PIP train and validation datasets even more

[ ] Test the mid-sized model on more images to catch potential uncovered types of photographs
[ ] Prepare a bigger training dataset
[ ] Validate the results

Not relevant anymore, no time. We put our available time on the documentation and tuning the CLI tool for the partner. We are sticking with the mid-size dataset which still gives good performance on the validation dataset.


added HowToPlayComponent and changed the title

Guidelines for creating Pull Requests
I have added the howtoplay component and also changed the title in heading. I have attached the screenshot below

Thanks for contributing to the project. Please follow the guidelines
below:

Make sure you've read the Contributing guide.
Describe how this PR will make our project even more awesome.
If this solves an issue, please reference it in this PR.

Sure will change it

Looks good to me.@skyshader what do you think??


Azure Devops token error

I'm having some problems getting the generation to work due to token errors. It errors out with:

"Could not access the resources. Ensure the 'PR_Metrics_Access_Token' secret environment variable has access to 'Code' > 'Read' and 'Pull Request Threads' > 'Read & write'.

I've tried using it both as my own PAT with those credentials, setup as a pipeline secret variable:
      - task: PRMetrics@1
        displayName: PR Metrics
        env:
          PR_METRICS_ACCESS_TOKEN: $(PR_Metrics_Access_Token)
        continueOnError: true

and by using the, to my knowledge not limited, system access token:
      - task: PRMetrics@1
        displayName: PR Metrics
        env:
          PR_METRICS_ACCESS_TOKEN: $(System.AccessToken)
        continueOnError: true

Both give the same error. Is there anything else that needs to be done?

Hi @denravonska, the process you followed sounds right, but that message should only be appearing if Azure DevOps is complaining that it doesn't have sufficient access. I can't tell offhand what the issue is as I haven't seen this before, but I'd try the following steps:

Deleting and creating a new PAT. I've seen issues before where the PAT doesn't work even though everything is set up correctly. For some reason, it seems that Azure DevOps might fail to register the PAT correctly, although this is very rare.
Setting the system.debug variable to true, which will provide more details and let us see exactly where the issue is occurring and what Azure DevOps is reporting as the internal error.
Creating a PAT with all access as a temporary step, to see if that would resolve the issue. I wouldn't encourage this as a long-term solution as it could create a potential attack vector, but it would be good to validate that it is possible to create a working PAT.

Let me know what you see, and I can investigate further. In particular, the outcome of the system.debug test run should be very useful for proceeding further.

Running it with full permissions seems to have worked just fine. How can I enable the debug flag? The step is skipped if it's not triggered by a pull request, at which point the debug flag is off.

Seems like the problem is still there with the limited scoped PAT. It can add a comment to the PR containing the stats, but it cannot (or does not) add the PR size to the title.
I added a global System.Debug=true flag to this run but it doesn't look like it added much. Company URLs and hashes have been redacted.
log.txt

Thanks for sending on the logs. I agree that the issue looks like the update of the title.
Looking at https://docs.microsoft.com/en-us/rest/api/azure/devops/git/pull-requests/update?view=azure-devops-rest-6.0#security, it looks like the scope 'Code' > 'Read & write' may be required for accessing this API. Based on that, I'm not sure why it would have worked previously or why it still works on my test servers.
I think you should try changing the PAT to have the scopes 'Code' > 'Read & write' and 'Pull Request Threads' > 'Read & write' and see if that works.
If that doesn't work, the next best thing I can think of is to essentially binary search through the scopes by starting with full access and gradually removing scopes until you narrow it down to the required subset.
If you find the required scope, do let me know as it would be better to update this for others going forwards.

I think you should try changing the PAT to have the scopes 'Code' > 'Read & write' and 'Pull Request Threads' > 'Read & write' and see if that works.

I enabled 'Code' > 'Read & write' on the PAT and now it passed without warnings. Will try again on a fresh PR tomorrow just to see that it isn't a cumulative fix.

It worked like a charm on the new PR :)

Thanks for confirming. I'll update the details in the code.


RT-479: Feature/scd details

Changes

New URL and view for SupplyChain details info
Update link from listing page
Tests

Codecov Report

Merging #248 (775f1b6) into develop (40907c9) will decrease coverage by 0.06%.
The diff coverage is n/a.

@@             Coverage Diff             @@
##           develop     #248      +/-   ##
===========================================
- Coverage    95.54%   95.48%   -0.07%
===========================================
  Files           84       84
  Lines         4826     4826
===========================================
- Hits          4611     4608       -3
- Misses         215      218       +3

Impacted Files
Coverage Δ

...te_supply_chain_information/supply_chains/forms.py
92.02% <0.00%> (-1.33%)
:arrow_down:

...te_supply_chain_information/supply_chains/views.py
94.25% <0.00%> (+0.33%)
:arrow_up:

Continue to review full report at Codecov.

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


ImportError: No module named queue

环境

操作系统: Windows 10
Anaconda版本: 如Anaconda 4.0.0 Python 2.7 32位
vn.py版本: v 1.8.1

Issue类型
三选一：Question
PS D:\VNPY研究\vnpy-1.8.1\examples\VnTrader> python run.py
Traceback (most recent call last):
File "run.py", line 17, in
from vnpy.event import EventEngine
File "C:\Python27\lib\site-packages\vnpy-1.8.1-py2.7.egg\vnpy\event_init_.py", line 3, in
from .eventEngine import EventEngine, EventEngine2, Event, EVENT_TIMER
File "C:\Python27\lib\site-packages\vnpy-1.8.1-py2.7.egg\vnpy\event\eventEngine.py", line 4, in
from queue import Queue, Empty
ImportError: No module named queue
完全按照建议步骤安装，请教大侠如何解决？

已经安装 future，snappy，但还是没解决问题
PS C:\WINDOWS\system32> pip install future
Requirement already satisfied: future in c:\programdata\anaconda2\lib\site-packages
You are using pip version 9.0.1, however version 10.0.1 is available.
You should consider upgrading via the 'python -m pip install --upgrade pip' command.
PS C:\WINDOWS\system32> pip install snappy
Requirement already satisfied: snappy in c:\programdata\anaconda2\lib\site-packages
Requirement already satisfied: pyreadline>=2.0 in c:\programdata\anaconda2\lib\site-packages (from snappy)
Requirement already satisfied: FXrays>=1.3 in c:\programdata\anaconda2\lib\site-packages (from snappy)
Requirement already satisfied: decorator in c:\programdata\anaconda2\lib\site-packages (from snappy)
Requirement already satisfied: ipython>=0.13 in c:\programdata\anaconda2\lib\site-packages (from snappy)
Requirement already satisfied: future in c:\programdata\anaconda2\lib\site-packages (from snappy)
Requirement already satisfied: cypari>=2.2 in c:\programdata\anaconda2\lib\site-packages (from snappy)
Requirement already satisfied: spherogram>=1.8 in c:\programdata\anaconda2\lib\site-packages (from snappy)
Requirement already satisfied: plink>=2.2 in c:\programdata\anaconda2\lib\site-packages (from snappy)
Requirement already satisfied: snappy-manifolds>=1.0 in c:\programdata\anaconda2\lib\site-packages (from snappy)
Requirement already satisfied: pypng in c:\programdata\anaconda2\lib\site-packages (from snappy)
Requirement already satisfied: setuptools>=18.5 in c:\programdata\anaconda2\lib\site-packages (from ipython>=0.13->snappy)
Requirement already satisfied: pickleshare in c:\programdata\anaconda2\lib\site-packages (from ipython>=0.13->snappy)
Requirement already satisfied: simplegeneric>0.8 in c:\programdata\anaconda2\lib\site-packages (from ipython>=0.13->snappy)
Requirement already satisfied: traitlets>=4.2 in c:\programdata\anaconda2\lib\site-packages (from ipython>=0.13->snappy)
Requirement already satisfied: prompt_toolkit<2.0.0,>=1.0.4 in c:\programdata\anaconda2\lib\site-packages (from ipython>=0.13->snappy)
Requirement already satisfied: pygments in c:\programdata\anaconda2\lib\site-packages (from ipython>=0.13->snappy)
Requirement already satisfied: backports.shutil_get_terminal_size in c:\programdata\anaconda2\lib\site-packages (from ipython>=0.13->snappy)
Requirement already satisfied: pathlib2 in c:\programdata\anaconda2\lib\site-packages (from ipython>=0.13->snappy)
Requirement already satisfied: colorama in c:\programdata\anaconda2\lib\site-packages (from ipython>=0.13->snappy)
Requirement already satisfied: win_unicode_console>=0.5 in c:\programdata\anaconda2\lib\site-packages (from ipython>=0.13->snappy)
Requirement already satisfied: six in c:\users\qiumy\appdata\roaming\python\python27\site-packages (from cypari>=2.2->snappy)
Requirement already satisfied: networkx>=1.3 in c:\programdata\anaconda2\lib\site-packages (from spherogram>=1.8->snappy)
Requirement already satisfied: ipython_genutils in c:\programdata\anaconda2\lib\site-packages (from traitlets>=4.2->ipython>=0.13->snappy)
Requirement already satisfied: enum34 in c:\programdata\anaconda2\lib\site-packages (from traitlets>=4.2->ipython>=0.13->snappy)
Requirement already satisfied: wcwidth in c:\programdata\anaconda2\lib\site-packages (from prompt_toolkit<2.0.0,>=1.0.4->ipython>=0.13->snappy)
Requirement already satisfied: scandir in c:\programdata\anaconda2\lib\site-packages (from pathlib2->ipython>=0.13->snappy)
You are using pip version 9.0.1, however version 10.0.1 is available.
You should consider upgrading via the 'python -m pip install --upgrade pip' command.


[Event Request] Report 730 - Copy Item - OnBeforeCopyItem

Dear ALAppExtensions team,
Through this issue we would like to request event OnBeforeCopyItem to be added to report 730 "Copy Item" which would have the following signature:
    [IntegrationEvent(true, false)]
    local procedure OnBeforeCopyItem(SourceItem: Record Item)
    begin
    end;

with IncludeSender=true (This is so that we can act on additional options added to the request page, that can hopefully be added in the future via report-extensions).
This event publisher would be called as follows in procedure CopyItem:
    procedure CopyItem(CopyCounter: Integer)
    var
        TargetItem: Record Item;
    begin
        OnBeforeCopyItem(SourceItem); // << New event

        InsertTargetItem(TargetItem, CopyCounter);

        if not (CopySalesLineDisc or CopyPurchLineDisc) then begin
            TargetItem."Item Disc. Group" := '';
            TargetItem.Modify;
        end;

        CopyItemPicture(SourceItem, TargetItem);
        CopyItemComments(SourceItem."No.", TargetItem."No.");
        ...
    end;

This is so that we can add preliminary checks before the procedure goes through copying all records to the target item.

Thanks for reporting this. We agree, and we’ll publish a fix asap, either in an update for the current version or in the next major release. We will update this issue with information about availability.


Add utilities for interfacing std::hash and llvm hashing

All this PR does is add some utilities that can be used to define an implementation of std::hash that wraps an existing llvm::hash_value implementation.
/stack #672

@Mergifyio rebase


[#263] Implements Proof of Concept for Handwritten Character Recognition

[#263]

[x] Implements Proof of Concept for Handwritten Character Recognition

What do we do with this feature? Merge and leave it be?

It is a functional proof of concept that can be used in the future, so we should keep it. It isn't integrated with existing services either.

Anything concerns blocking this from being merged? Still need an approval from one of you.


fix pub not found when flutter installed from snap

when running conduit create I am getting the following error

and when I read the code Found this line
final cmd = Platform.isWindows ? "pub.bat" : "pub";

which can be better if pub called through dart command

@mostafaElspagh0 sorry I haven't been able to get back to you on this, I've been busy and notifications and emails got buried, I can more reliably be reached from discord. I'll be checking the tests tonight to see what needs fixing.

Hello @j4qfrost can you get me your discord handle

frosty#1337

Resolved in another branch.


Blocks: How to check is any block passed to slot?

Just tryed the Pruvious module with NuxtUI. I created a wrapper around UPage component (from NuxtUI) to use it as root element in Pruvious pages collection:

<template>
  <UContainer>
    <UPage>
      <template #left>
        <slot name="left" />
      </template>
      <template #right>
        <slot name="right" />
      </template>
      <slot />
    </UPage>
  </UContainer>
</template>

The problem is when I fill only default slot in Pruvious page editor /dashboard/collections/pages/, the left and right slots are rendered too. If I could check is block slot used, than I could solve it something like this:

<template>
  <UContainer>
    <UPage>
      <template v-if="block.slots.left?.length" #left>
        <slot name="left" />
      </template>
      <template v-if="block.slots.right?.length" #right>
        <slot name="right" />
      </template>
      <slot />
    </UPage>
  </UContainer>
</template>

Any idea how to solve this?

Hey! I just tried your example, and it works as expected for me:

I also removed the <template> elements surrounding <slot>:
<template>

      <slot name="left" />
      <slot name="right" />
      <slot />

</template>

Generally, you get obtain the number of blocks in a slot like this:
<template>
  {{ $slots.left?.()[0].props?.blocks.length }}
  {{ $slots.right?.()[0].props?.blocks.length }}
  {{ $slots.default?.()[0].props?.blocks.length }}
</template>

@murisceman you tried with a plain template (without passing block's slots to slots of other Vue-components).
In my example UPage is a component (from NuxtUI Pro that already has left and right slots. But for use it in Pruvious pages I need to create a wrapper (block component in Pruvious terminology) around UPage:

<template>
  <UContainer>
    <UPage>

      <template #left>
        <slot name="left" />
      </template>

      <template #right>
        <slot name="right" />
      </template>

      <slot />
    </UPage>
  </UContainer>
</template>

There is rendered (by UPage component of NuxtUI) empty left slot, also you can see empty space in a right side of empty right slot.

The problem is not NuxtUI related. Just some components from some UI-libraries can render additional markup if detects that some scoped slot is used (even if it's just empty <template #some-scoped-slot-name></template>). The workaround is use v-if when using this slot: <template v-if="condition" #some-scoped-slot-name></template>
For Pruvious blocks the condition could be block's length passed to block's slots...

Generally, you can get the number of blocks in a slot like this:
<template>
  {{ $slots.left?.()[0].props?.blocks.length }}
  {{ $slots.right?.()[0].props?.blocks.length }}
  {{ $slots.default?.()[0].props?.blocks.length }}
</template>

I'm not an expert in how Vue rendering system works in deep. Correct me please, if I'm thinking wrong. But calling $slots.['slot-name']?.() will trigger rendering of the slot with all nested components passed to it (which will be already rendered at least once by parent component's template) and it can be very expensive just to check nested blocks count.

Ah, I see now. The <UPage> component probably just checks if there's a slot provided at all on the column elements, which is always true in your <PageRoot> block because <template #left> is provided. So yeah, v-if on it will solve the problem.

I'm not an expert in how Vue rendering system works in deep. Correct me please, if I'm thinking wrong. But calling $slots.['slot-name']?.() will trigger rendering of the slot with all nested components passed to it (which will be already rendered at least once by parent component's template) and it can be very expensive just to check nested blocks count.

Calling the slot this way takes up to 0.1 ms, subsequent calls are cached, and no rendering will be triggered. As an alternative approach, I've implemented the props __block, __index, and __list in block components (b58d71b5512d0e4f4c28de09acbc06645b84db7b). You can use them like this:
<template>
  <UPage>
    <template v-if="__block?.slots?.left.length" #left>
      <slot name="left" />
    </template>

    <template v-if="__block?.slots?.right.length" #right>
      <slot name="right" />
    </template>

    <slot />
  </UPage>
</template>

These props will be available in the next release, so please use $slots in the meantime.

As an alternative approach, I've implemented the props __block, __index, and __list in block components (b58d71b).

Nice. Thanks. But I have a few questions/suggestions:

In template section usually used $ prefix for injected plugins fields/functions (like $route or $pinia), so I suggest:

Rename __block to $block
Rename __index to $blockIndex
Rename __list to $blockSiblings and add $blockParent property to get full access to page block's hierarchy
(Optional) May be merge this properties to a single object like $blocks and use current/index/siblings/parent names instead of names above to use it like this:

<template>
  <UPage>
    <template v-if="$blocks?.current?.slots?.left.length" #left>
      <slot name="left" />
    </template>

    <template v-if="$blocks?.current?.slots?.right.length" #right>
      <slot name="right" />
    </template>

    <slot />
  </UPage>
</template>

May be would be better to return block props from defineBlock macro (like defineProps macro works and without underscores)?

Or add composable instead:

I think, original issue is fixed. Tested it with this:

<template>
  <UContainer>
    <UPage>

      <template v-if="$slots.left" #left>
        <slot name="left" />
      </template>

      <template v-if="$slots.right" #right>
        <slot name="right" />
      </template>

      <slot />
    </UPage>
  </UContainer>
</template>

And it's worked in my case.


[DIP] Reconstruct resize2D.

Reconstruct resize2D operation. Current op acts the same as opencv.

Please make the API compatible with current Img container in buddy-mlir. The PR can't be benchmarked in its current state and we can't determine the performance improvement due to it.


Support struct for Java

Read then delete this section
TL;DR
Support nested auto-value as input parameters.
Type

[ ] Bug Fix
[x] Feature
[ ] Plugin

Are all requirements met?

[x] Code completed
[x] Smoke tested
[x] Unit tests added
[ ] Code documentation added
[ ] Any pending items have an associated Issue

Complete description
This is to add support for things like:
@AutoValue
class Foo {
  public abstract SdkBindingData<String> foo();

  public abstract SdkBindingData<Bar> bar();
}

@AutoValue
class Bar {
  // note that this is not an SdkBindingData because it doesn't make sense since the whole class is wrapped as a promise
  // this also matches the direction of the existing but disabled IT
  public abstract String bar();
}

Scala layer is not supported yet because it is completely different mechanism.
Tracking Issue
_NA
Follow-up issue
NA

I can no longer run IT locally because testcontainers generates a warning Unable to mount a file from test host into a running container. This may be a misconfiguration or limitation of your Docker environment. Some features might not work. so I cannot mount things properly during IT.

I can no longer run IT locally because testcontainers generates a warning Unable to mount a file from test host into a running container. This may be a misconfiguration or limitation of your Docker environment. Some features might not work. so I cannot mount things properly during IT.

Trying a fix in #261.

This branch targets blob branch. Now #258 is a bit hard to review.

This branch targets blob branch. Now #258 is a bit hard to review.

oh! I didn't notice that, don't worry, I will continue with the blob's PR


diagrams: show conditions on edge labels

On diagrams, change edge label to show the condition, e.g. 'heat / is_flammable'.
Conditions are separated with '&' and "unless conditions" are preceded by '!', e.g. 'heat / !is_flammable & !is_really_hot'.

Hi @khigia,
interesting addition. Could you make this an optional feature by adding a keyword (e.g. show_conditions) to MachineGraphSupport and get_graph. show_conditions could be handled like the title keyword.

Added a parameter show_conditions to make this behaviour optional (and default is disable).

Hum ... sorry, will change again, to follow UML-like notation: transition [condition] / action

neat, could you attach an image of an example graph with this features enabled?

Hi @khigia, just wanted to follow-up on this issue. If you can, will you post a pic of the graph with this option enabled and then we can get this merged.
Thanks!

Sure! Sorry, missed the comment asking for pic :(.
Here is code example and result in attached png file:
from transitions.extensions.diagrams import MachineGraphSupport

fsm = MachineGraphSupport(
    states=['A', 'B', 'C'],
    initial='A',
    auto_transitions=False,
    transitions=[
        {'trigger': 'e0', 'source': 'A', 'dest': 'B', 'conditions': ['ready']},
        {'trigger': 'e1', 'source': 'B', 'dest': 'C', 'conditions': ['bored'], 'unless': ['bad-c']},
    ],
    show_conditions=True,
)

g = fsm.get_graph(title='Condition example', force_new=True)
g.draw('cond-ex.png', prog='dot')

Looks good to me, except I would suggest maybe adding a space before and after the ampersand (just for readability).

Here is code example and result in attached png file
:+1:
except I would suggest maybe adding a space before and after the ampersand
:+1:

Space added around ampersand.