Added 1.3 release notes.

Signed-off-by: AWSHurneyt<EMAIL_ADDRESS>Issue #, if available:
https://github.com/opensearch-project/alerting/issues/314
Description of changes:
Adding release notes for 1.3.
CheckList:
[x] Commits are signed per the DCO using --signoff
By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
For more information on following Developer Certificate of Origin and signing off your commits, please check here.

Codecov Report

Merging #336 (9762198) into main (a5c5cb3) will increase coverage by 0.01%.
The diff coverage is n/a.

:exclamation: Current head 9762198 differs from pull request most recent head 7d06e73. Consider uploading reports for the commit 7d06e73 to get more accurate results

@@             Coverage Diff              @@
##               main     #336      +/-   ##
============================================
+ Coverage     78.43%   78.45%   +0.01%
  Complexity      214      214
============================================
  Files           173      173
  Lines          6975     6975
  Branches        916      916
============================================
+ Hits           5471     5472       +1
- Misses         1011     1013       +2
+ Partials        493      490       -3

Impacted Files
Coverage Δ

...ing/model/destination/DestinationContextFactory.kt
66.66% <0.00%> (ø)

.../kotlin/org/opensearch/alerting/core/JobSweeper.kt
72.00% <0.00%> (+0.50%)
:arrow_up:

Continue to review full report at Codecov.

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


No mixed mode???

I would like to search in Files, Buffers and MRU files at the same time.

Yes, there is no mixed mode. I don't think it is necessary.

But I think that a mixed mode is very useful. With an all-in-one keybinding, I can search everything in it without thinking where it is placed and which shortcut I should press.

Yes, there is no mixed mode. I don't think it is necessary.


Generate resolvers under a trait

Hi there!
I have a problem with the current way the library implements the resolvers for fields. For instance, let's take the following code:
#[derive(SimpleObject)]
struct A {
  field: String
}

impl A {
    pub fn new(field: String) -> Self {
         // do some validation stuff here
        Self { field }
    }

    // ERROR
    pub fn field(&self) -> &str {
        &self.field
    }
}

I want field to stay private to make the struct non-constructable without using the new() method.
But I'm blocked when I make a field() getter, as this method is already used for SimpleObject. It's also confusing when using IDE autocompletion as the IDE displays a lot of methods which are in fact for GraphQL.
My request here: could it be possible to make a trait and put these resolvers under it? This would avoid "polluting" the main struct and make the code above work.
If it's not possible, how could I implement the example I provided without using some more complex names like get_field()?
Thanks in advance for your help!

Indeed but I'd like to have both a resolver for the field and a getter with the same name for Rust itself.
Which si why the idea of a trait would solve this problem.

It's a good idea👍, I didn't think about it at first, maybe I'll do it in the next major release.


Can't build the project

Hello,
I just cloned the repo, and I got an issue on the build.
I followed the step :

Clone the repo
Run build.cmd Build

I have an error on the RunScript task.
Here is the log of the build, it seems that Fable can't find a reference, but I have no idea on how to fix it.
Paket also show an error paket.dependencies and paket.lock are out of sync, Please run 'paket install' ...
I tried to delete the paket.lock and make a paket install, but the warning is still there.
Does there's any requirements on npm/nodejs/fsc version?
Mine are :

Npm : 2.15.5
Node : 4.4.5
FSC : 14.0.23413.0

I'm running on Windows 10.

fixed


Intermittent PUT blob failed when updating checkpoint store

(note: I (@richardpark-msft) reformatted this slightly so the output is a bit more readable)
Issue:
We encountered below error intermittently while using EH GO SDK to fetch data from the Event Hub. It states that the blob already exists but we didn't change anything from our end just using the SDK to store the checkpoint.
ERROR:
-> github.com/Azure/azure-storage-blob-go/azblob.newStorageError, /go/pkg/mod/github.com/!azure/azure-storage-blob-go@v0.8.0/azblob/zc_storage_error.go:42
===== RESPONSE ERROR (ServiceCode=BlobAlreadyExists) =====
Description=The specified blob already exists.
RequestId:23be6173-101e-0037-6a0c-f19f9d000000
Time:2023-09-27T06:30:10.7840577Z, Details:
Code: BlobAlreadyExists
PUT https://himsdata.blob.core.windows.net/irentblob/0?timeout=61
Authorization: REDACTED
Content-Length: [80]
If-None-Match: [*]
User-Agent: [Azure-Storage/0.7 (go1.14.14; linux)]
X-Ms-Blob-Cache-Control: []
X-Ms-Blob-Content-Disposition: []
X-Ms-Blob-Content-Encoding: []
X-Ms-Blob-Content-Language: []
X-Ms-Blob-Content-Type: []
X-Ms-Blob-Type: [BlockBlob]
X-Ms-Client-Request-Id: [c23d830c-8bd6-42b7-6582-7c924ea1feb3]
X-Ms-Date: [Wed, 27 Sep 2023 06:30:10 GMT]
X-Ms-Version: [2018-11-09]#012
github.com/Azure/azure-event-hubs-go
we are using v3 version by this command: go get -u github.com/Azure/azure-event-hubs-go/v3
import (
"context"
"fmt"
"os"
"os/signal"
"time"
"github.com/Azure/azure-event-hubs-go/v3"
)

I'm not able to repro this particular bug.
I'm curious if it's related to using an older version of the package, or storage (above you've got azure/azure-storage-blob-go@v0.8.0).
In my go.mod for my test application, based on the latest azure-event-hubs-go package:
require(
  github.com/Azure/azure-storage-blob-go v0.15.0
  github.com/Azure/azure-event-hubs-go/v3 v3.6.1
)

What does your go.mod show?

Hi @Hilda-S, I'm closing this issue out but please reopen if you are able to try with the latest storage.


ci,graph/layout,mat: fix env var handling by ci.yml

Please take a look.
Updates #1606.

The changes in ci.yml are demonstrated to catch the bug via the failure of #1608.


Contributing.md

Hi.
Since Main repository is not maintained anymore, I and many other people use your repo as best alternative.
However, I'd like to do some contributions.
Issue is when I want to run the stack as mentionned in this famous 'contributing.md'...
Do you think you could get some times in order to update the way other people can contribute in creating the workspace as mentioned ?
Thanks for your time and all your works even done.

Hi,
I dropped Contributing.md and added a basic guide to README.
Also fixed various build issues & updated the deps.
Hopefully that helps!


Incorrect display of special characters encoded in ISO 8859-1

Special characters (i.e. non ascii) encoded in ISO 8859-1 are incorrectly displayed in the todo-show panel:

What characters are these? Please paste them here, so I can reproduce. What font type are your editor / theme using?
I tried with some different extended characters below, but they all render fine.

The encoding needs to be ISO 8859-1 (I see your file is in UTF-8), and the "what to search" needs to be set to project or workspace (a search in open files or active files works fine).
Here is an example of two characters that don't work : à é
I have logged a similar issue with the "find-and-replace" package, it might be the same problem ?
https://github.com/atom/find-and-replace/issues/741

Ahh, I see. Well I am 95% sure that this is the same problem as find-and-replace, since it uses the same mechanism to scan the project for a regular expression. This is a bug that needs to be fixed on Atom core, so posting an issue on the find-and-replace repo is the way to go. Well done @fthebaud.


[AutoPR sqlvirtualmachine/resource-manager] introducing the SqlManagement in Microsoft.SqlVirtualMachine

Created to sync https://github.com/Azure/azure-rest-api-specs/pull/6524

(message created by the CI based on PR content)

This PR has been merged into https://github.com/Azure/azure-sdk-for-python/pull/5768


[#128160309] Remove some unused entries from generated cf-secrets.

What
While working on the secret rotation story, I noticed that these 2 entries are being generated, but are not used in the manifests anywhere. We should get rid of them to avoid confusion.
How to review
Verify that these aren't referenced anywhere. Verify that the unit tests pass with the updated fixture.
Who can review
Anyone but myself.

Verify that these aren't referenced anywhere.

Is grep <name> manifests/cf-manifest/ sufficient?
Unlike some CF properties there would have to be an explicit grab <name>, because we don't import the whole hash, right?

Is grep  manifests/cf-manifest/ sufficient?

That should be. I used ack to search for the string throughout the whole repo, and found only these 2 entries. I'm not aware of anywhere that we're pulling in the whole secrets hash.

👍
Is it worth removing these from persistent environments when you're doing secret rotation, to surface any possible problems early?


Inject RetryOOM in CI where retry iterator is used

Closes https://github.com/NVIDIA/spark-rapids/issues/7813
This adds RetryOOM injection for every place that the retry iterator is used.
It adds a flag test_oom_injection_mode to the integration tests, set to "random" by default (other valid choices are "always" and "none", where "always" tries to inject all tests). If a test is being injected for OOM, it will be printed in the test name:
test_hash_reduction_decimal_overflow_sum[38][INJECT_OOM]

The way the injection happens is that the CI is toggling a config: spark.rapids.sql.test.injectRetryOOM, that lets the retry iterator know it should inject.
This is using the RmmSpark injection framework. So the injected OOM shows up at the first allocation within a retry block. If in the future we add features to the injection framework to inject, say, aftert N allocations, we should make changes to the CI to adapt.

build

build

build

build

build

build

build

build

Interesting failure. I do not know how a build could fail with different shas of the plugin (or shims? that makes little sense). @gerashegalov in case you have ideas.
2023-03-30T00:03:22.441Z] [ERROR] Failed to execute goal org.apache.maven.plugins:maven-antrun-plugin:3.1.0:run (create-parallel-world) on project rapids-4-spark_2.12: An Ant BuildException has occured: The following error occurred while executing this line:
[2023-03-30T00:03:22.441Z] [ERROR] dist/maven-antrun/build-parallel-worlds.xml:178: check-shims-revisions.sh failed: exitCode=1 error=Check Failed: git revisions between shims are not equal
[2023-03-30T00:03:22.441Z] [ERROR] Please check the revisions of each shim to see which one is inconsistent. Note, if building with Databricks those jars are built separately.
[2023-03-30T00:03:22.441Z] [ERROR] -------------
[2023-03-30T00:03:22.441Z] [ERROR] Version file dist/target/parallel-world/spark322/rapids4spark-version-info.properties, revision is f7d7e4f93ecc5a47172449a40c490640f65fbf31
[2023-03-30T00:03:22.441Z] [ERROR] Version file dist/target/parallel-world/spark323/rapids4spark-version-info.properties, revision is eebd3f685207a58e91c8a6b88fd8c8f6d4bcb5ef

build

Interesting failure. I do not know how a build could fail with different shas of the plugin (or shims? that makes little sense). @gerashegalov in case you have ideas.
2023-03-30T00:03:22.441Z] [ERROR] Failed to execute goal org.apache.maven.plugins:maven-antrun-plugin:3.1.0:run (create-parallel-world) on project rapids-4-spark_2.12: An Ant BuildException has occured: The following error occurred while executing this line:
[2023-03-30T00:03:22.441Z] [ERROR] dist/maven-antrun/build-parallel-worlds.xml:178: check-shims-revisions.sh failed: exitCode=1 error=Check Failed: git revisions between shims are not equal
[2023-03-30T00:03:22.441Z] [ERROR] Please check the revisions of each shim to see which one is inconsistent. Note, if building with Databricks those jars are built separately.
[2023-03-30T00:03:22.441Z] [ERROR] -------------
[2023-03-30T00:03:22.441Z] [ERROR] Version file dist/target/parallel-world/spark322/rapids4spark-version-info.properties, revision is f7d7e4f93ecc5a47172449a40c490640f65fbf31
[2023-03-30T00:03:22.441Z] [ERROR] Version file dist/target/parallel-world/spark323/rapids4spark-version-info.properties, revision is eebd3f685207a58e91c8a6b88fd8c8f6d4bcb5ef

This is a very useful check saving time debugging weird issues with inconsistent mixed builds. So better get this very clear message instead of chasing weird CCE, NoCalssDefFoundErrors, LinkageError, etc. Originally motivated by Databricks shim snapshot builds falling behind due to build issues specific to Db, where the dist part ends picking up snapshots. Can be prevented by using shas in the version https://github.com/NVIDIA/spark-rapids-jni/issues/387
As to why depends on your particular build workflow, and the errors encountered. If you were to do it on purpose it would look like
git checkout branch-23.04
mvn clean
# build 322 on HEAD
mvn package -pl aggregator -am -Dbuildver=322 -DskipTests -Dskip -Dmaven.javadoc.skip
# build 323 on a different sha in branch-23.04
git checkout HEAD~2
mvn package -pl aggregator -am -Dbuildver=323 -DskipTests -Dskip -Dmaven.javadoc.skip
# hit the equal sha assert
mvn package -pl dist -Dincluded_buildvers=322,323 -Ddist.jar.compress=false

@gerashegalov thanks for the info on the CI failure. I learned something and it makes perfect sense why it is happening now.


URI::InvalidURIError on endpoints with an underscore

I get the following error:
[1] pry> client = RestClient::Resource.new('http://unusual_host.example.com', headers: { accept: :json })
=> #<RestClient::Resource:0x0000000308d560 @block=nil, @options={:headers=>{:accept=>:json}}, @url="http://unusual_host.example.com">
[2] pry> client.get
URI::InvalidURIError: the scheme http does not accept registry part: unusual_host.example.com (or bad hostname?)
from /local/rvm/rubies/ruby-2.1.7/lib/ruby/2.1.0/uri/generic.rb:214:in `initialize'

This endpoint is being served from nginx, AFAIK, is a valid domain name even if not a valid hostname?  I'm not clear on the RFC here.  Can someone explain?
Either way, it would be nice to override the default parse behavior.  Is there a way to do that with rest-client?  I tried Addressable, but that did not solve the problem... I'm not clear on how to create a RestClient::Resource using other means.
Thanks!

This is an existing open issue with Ruby core:
https://bugs.ruby-lang.org/issues/8241

Note: here is an unobtrusive workaround by creating a custom parser:
module URI
  DEFAULT_PARSER = Parser.new(:HOSTNAME => "(?:(?:[a-zA-Z\\d](?:[-\\_a-zA-Z\\d]*[a-zA-Z\\d])?)\\.)*(?:[a-zA-Z](?:[-\\_a-zA-Z\\d]*[a-zA-Z\\d])?)\\.?")
end

See my answer: http://stackoverflow.com/a/41048816/555187


Strange iOS Symbol Name(build error)

DLLExport seems not working.
sym.txt
After searching with MachOViewer, All DLLEXPORT defined symbols are missing, contrary to that, others existed.
Undefined symbols for architecture armv7:
"_DestroyBaseScriptBehaviour", referenced from:
_Bindings_DestroyBaseScriptBehaviour_m8902A94D1481D5392530675EDA206EF110B978DA in Bulk_Assembly-CSharp_0.o
_Bindings_DestroyAll_mC7E16F5CEAA259CD101B934545B17961A30AF6D3 in Bulk_Assembly-CSharp_0.o
(maybe you meant: _Bindings_DestroyBaseScriptBehaviour_m8902A94D1481D5392530675EDA206EF110B978DA)
"_Init", referenced from:
_Bindings_Init_mFDCC5D76C6205E05490541E9710E6D9B951879E5 in Bulk_Assembly-CSharp_0.o
_Bindings_OpenPlugin_mCE61B4740ED49E2A40A7E23E0E50AE8DF639EC4F in Bulk_Assembly-CSharp_0.o
(maybe you meant: OBJC_IVAR$_AVFoundationMediaLoader.m_Initialized, _UNITY_TT_Init_Glyph_Loading ,

After removing fvisibility flag generated by Cmake in Xcode.
This issue has been solved.


writeroom-mode should restore windows configuration after exit writeroom-mode

When I enable writeroom-mode, it setting something and keep only one window. When I exit it with command writeroom-mode too. The original windows configuration is gone.  I hope writeroom-mode can save and restore around toggling writeroom-mode.

There is an option that controls this: writeroom-restore-window-config. By default, this is unset, but you can set it in the customization group for writeroom, or in your init file:
(setq writeroom-restore-window-config t)

Thanks @joostkremers


Chromium: Pass coverage tests

Related to #80

why does src/PlaywrightSharp.Chromium/Protocol/Protocol.Generated.cs have changes?

why does src/PlaywrightSharp.Chromium/Protocol/Protocol.Generated.cs have changes?

dotnet format 🤷


Tests occasionally fail (Apple M2 Max)

On an M2 Max MacBook Pro, I am experiencing unexpected causality issues tied to using ThreadLocal. I ran the library's tests to see if I could exhibit similar behavior, given that the iter() test in particular looks like a decent model of my real-world situation, and indeed I get occasional test failures within seconds of repeatedly running the test suite. Here are a few:
running 6 tests
test thread_id::test_thread ... ok
test tests::same_thread ... ok
test tests::is_sync ... ok
test tests::different_thread ... ok
test tests::test_drop ... FAILED
test tests::iter ... ok

failures:

---- tests::test_drop stdout ----
thread 'tests::test_drop' panicked at 'assertion failed: `(left == right)`
  left: `0`,
 right: `1`', src/lib.rs:641:9
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace

running 6 tests
test tests::test_drop ... ok
test thread_id::test_thread ... ok
test tests::is_sync ... ok
test tests::same_thread ... ok
test tests::different_thread ... ok
test tests::iter ... FAILED

failures:

---- tests::iter stdout ----
thread 'tests::iter' panicked at 'assertion failed: `(left == right)`
  left: `[1, 2, 3]`,
 right: `[1]`', src/lib.rs:616:9
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace

running 6 tests
test tests::is_sync ... ok
test thread_id::test_thread ... ok
test tests::test_drop ... ok
test tests::same_thread ... ok
test tests::different_thread ... ok
test tests::iter ... FAILED

failures:

---- tests::iter stdout ----
thread 'tests::iter' panicked at 'assertion failed: `(left == right)`
  left: `[1, 2, 3]`,
 right: `[1, 3]`', src/lib.rs:616:9
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace

running 6 tests
test tests::is_sync ... ok
test thread_id::test_thread ... ok
test tests::test_drop ... ok
test tests::same_thread ... ok
test tests::different_thread ... ok
test tests::iter ... FAILED

failures:

---- tests::iter stdout ----
thread 'tests::iter' panicked at 'assertion failed: `(left == right)`
  left: `[1, 2, 3]`,
 right: `[2, 3]`', src/lib.rs:616:9
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace

Note that exhibiting failures is much harder if you don't run the complete test suite, so I suspect the issue has something to do with threads being reused.

I can't reproduce this and it's very difficult for me to figure out what is going on without being able to see it myself. It could even be something specific to macOS.

I can't reproduce this

Where (on which platform) are you trying to reproduce this? I can reproduce this within seconds on my MacBook with an M2 Max chip running macOS Ventura 13.X with the following:
while cargo test --all-features --release --lib; do sleep :; done

I also tried on an M2 MacBook Air running macOS Monterrey with the same results, so this is certainly not specific to the version of macOS, though it could be macOS, or it could be the CPU (I don't have an Intel Mac to check on).
Nevertheless, this seems like a fairly serious bug.

One approach you could take is to use the GitHub CI to run this on macOS, if you don't have access to a Mac yourself and can't or don't want to set-up a VM. Given the above, I would imagine running the loop for something like 30s to a minute should suffice.

Cannot reproduce on M2 MacBook Pro with Ventura 13.4.1.
Could this already have been fixed?

I also hit this just now, but only with a high cargo test -- --test-threads count.
I opened #68 as I believe this regression was introduced recently, and included a regression test as well.


Numpy integration

What are they?

I don't know :(

Which functions to consider as numpy integration?

You can choose work done which is basically line integration.

@Mosaddeq107 I have completed you can check it in the main repo.


Helpers for ease of use

Some functionality I could not find in the library, but would help adaptation IMO.
fork.path - I am currently prepending the prefixes of forks, in order to get full paths in the end. Maybe this could be done during load by the library and provide it as a string or Uint8Array on Fork
findAllValueForks - For a given node, collect all value Forks, so user space code does not have to recursively walk through the forks and filter them.
addFork and removePath - could accept string | Uint8Array instead of Uint8Array only, so the user space code does not need to apply new TextEncoder().encode(path) for all the calls. Similarly, reference could accept string too, assumed to be a hex representation of 32 or 64 bytes data.

fork.path - I am currently prepending the prefixes of forks, in order to get full paths in the end. Maybe this could be done during load by the library and provide it as a string or Uint8Array on Fork

I would rather create a separate utility function or abstraction for this feature, but surely I wouldn't put any additional property to the mantaray fork or node which is related to the trie structure. I'm saying this because many cases you want to move fork/node to one place to another and you shouldn't maintain/update these additional meta-properties during these kind of processes.

findAllValueForks - For a given node, collect all value Forks, so user space code does not have to recursively walk through the forks and filter them.

good idea : )

addFork and removePath - could accept string | Uint8Array instead of Uint8Array only, so the user space code does not need to apply new TextEncoder().encode(path) for all the calls. Similarly, reference could accept string too, assumed to be a hex representation of 32 or 64 bytes data.

I think this convenient feature is justified to be added and with it little bit diverge from the reference implementation's interface.


Implement model spin-up

From the proposal

We need a mechanism to allow a model to run for many years while holding everything else constant. The principal use of this is to allow initial estimates of input data to converge to a biologically stable state before starting the ‘actual’ simulation from those stable conditions.
There are two possible mechanisms for terminating the spin up process: run for a fixed number of years or run until a set of watched variables generate stable results to a given precision. It’s probably good to have both options and they could work together.
In most cases, the spin up process can be thought of as a set of sequential runs with initial runs that we might want to converge to a steady state before we start the simulation, and then an actual simulation using outputs from those convergence runs. For example:

Run models with all frozen apart from Hydrology for 10 years, save soil moisture.
Run models with all frozen apart from Soil for 500 years, save carbon variables.
Run models with all active for 100 years, using the saved outputs from the first two runs (the actual simulation).

That could be done manually using three runs and configs but it would be useful to have a configuration mechanism that:

Specifies a set of spin up “epochs” with different model settings and spin up termination rules
Identifies which variables should pass from spin up into the main simulation.
In many cases, we will want to restart the ‘actual’ simulation with different scenarios after the burn in, so it might be cleaner to setup a burn in process that runs models and then updates the input data, ready for the actual simulation.

The immediate use case here is the Hydrology model, but any model could conceivably want to use this process.

@vgro , we will need example models to run and test if what we are implementing actually works, ideally the three scenarios described above of running hydrology only, soil only and finally the full thing.

@vgro , do you have any update on this. I can give a start - probably next week - but proper testing will not be possible without some exemplar scenario to run.


v1.1.2 redisquota overrides configuration not work

Bug description
redisquota override not work
Expected behavior
overrides setting take effect
Steps to reproduce the bug
apiVersion: "config.istio.io/v1alpha2"
kind: redisquota
metadata:
  name: handler
  namespace: istio-system
spec:
  redisServerUrl: <IP_ADDRESS>:6379
  connectionPoolSize: 10
  quotas:
  - name: requestcount.quota.istio-system
maxAmount: 1
validDuration: 1s
bucketDuration: 1s
rateLimitAlgorithm: FIXED_WINDOW
overrides:
- dimensions:
destination: backend
  maxAmount: 10000
- dimensions:
destination: gateway
  maxAmount: 10000
---
apiVersion: "config.istio.io/v1alpha2"
kind: quota
metadata:
  name: requestcount
  namespace: istio-system
spec:
  dimensions:
destination: source.workload.name
---
apiVersion: config.istio.io/v1alpha2
kind: rule
metadata:
  name: quota
  namespace: istio-system
spec:
  actions:
  - handler: handler.redisquota
instances:
- requestcount.quota
---
apiVersion: config.istio.io/v1alpha2
kind: QuotaSpec
metadata:
  name: request-count
  namespace: istio-system
spec:
  rules:
  - quotas:
- charge: 1
  quota: requestcount
---
apiVersion: config.istio.io/v1alpha2
kind: QuotaSpecBinding
metadata:
  name: request-count
  namespace: istio-system
spec:
  quotaSpecs:
  - name: request-count
namespace: istio-system
  services:
  - name: appgateway
namespace: istio-test
  - name: appgateway
namespace: istio-test
#  - service: '*'  # Uncomment this to bind *all* services to request-count

But The limit threshold value is 1/s when  I use jmeter test.
This is Mixer log:
2019-04-22T02:57:43.657225Z infoPublishing 8 events
2019-04-22T02:57:43.660286Z infoBuilt new config.Snapshot: id='62'
2019-04-22T02:57:43.660379Z infoadaptersgetting kubeconfig from: "" {"adapter": "kubernetesenv.istio-system"}
2019-04-22T02:57:43.660391Z warnNeither --kubeconfig nor --master was specified.  Using the inClusterConfig.  This might not work.
2019-04-22T02:57:43.661442Z infoadaptersWaiting for kubernetes cache sync...{"adapter": "kubernetesenv.istio-system"}
gc 4384 @514484.442s 0%: 0.013+9.8+0.046 ms clock, 0.055+3.7/10/10+0.18 ms cpu, 24->25->14 MB, 25 MB goal, 6 P
2019-04-22T02:57:43.761568Z infoadaptersCache sync successful.  {"adapter": "kubernetesenv.istio-system"}
2019-04-22T02:57:43.761619Z infoadaptersgetting kubeconfig from: "" {"adapter": "kubernetesenv.istio-system"}
2019-04-22T02:57:43.761624Z warnNeither --kubeconfig nor --master was specified.  Using the inClusterConfig.  This might not work.
2019-04-22T02:57:43.762598Z infoSetting up event handlers
2019-04-22T02:57:43.763088Z infoStarting Secrets controller
2019-04-22T02:57:43.763161Z infoWaiting for informer caches to sync
2019-04-22T02:57:43.764824Z infoCleaning up handler table, with config ID:61
2019-04-22T02:57:43.764859Z infoadaptersdeleted remote controller   {"adapter": "kubernetesenv.istio-system"}
2019-04-22T02:57:43.764884Z infoadaptersadapter closed all scheduled daemons and workers{"adapter": "prometheus.istio-system"}
2019-04-22T02:57:43.764900Z infoadaptersadapter closed all scheduled daemons and workers{"adapter": "newhandler.stdio.istio-system"}
2019-04-22T02:57:43.765054Z infoadaptersshutting down daemon... {"adapter": "kubernetesenv.istio-system"}
2019-04-22T02:57:43.765075Z infoadaptersshutting down daemon... {"adapter": "kubernetesenv.istio-system"}
2019-04-22T02:57:43.765085Z infoadaptersadapter closed all scheduled daemons and workers{"adapter": "handler.redisquota.istio-system"}
2019-04-22T02:57:43.765136Z infoadaptersshutting down daemon... {"adapter": "kubernetesenv.istio-system"}
2019-04-22T02:57:43.765197Z infoadaptersshutting down daemon... {"adapter": "kubernetesenv.istio-system"}
2019-04-22T02:57:44.765170Z infoadaptersadapter closed all scheduled daemons and workers{"adapter": "kubernetesenv.istio-system"}
2019-04-22T02:57:49.147712Z infoPublishing 10 events
2019-04-22T02:57:49.150205Z infoBuilt new config.Snapshot: id='63'
2019-04-22T02:57:49.157038Z infoadaptersgetting kubeconfig from: "" {"adapter": "kubernetesenv.istio-system"}
2019-04-22T02:57:49.157062Z warnNeither --kubeconfig nor --master was specified.  Using the inClusterConfig.  This might not work.
2019-04-22T02:57:49.157856Z infoadaptersWaiting for kubernetes cache sync...{"adapter": "kubernetesenv.istio-system"}
2019-04-22T02:57:49.258031Z infoadaptersCache sync successful.  {"adapter": "kubernetesenv.istio-system"}
2019-04-22T02:57:49.258089Z infoadaptersgetting kubeconfig from: "" {"adapter": "kubernetesenv.istio-system"}
2019-04-22T02:57:49.258099Z warnNeither --kubeconfig nor --master was specified.  Using the inClusterConfig.  This might not work.
2019-04-22T02:57:49.259828Z infoSetting up event handlers
2019-04-22T02:57:49.259920Z infoStarting Secrets controller
2019-04-22T02:57:49.259950Z infoWaiting for informer caches to sync
2019-04-22T02:57:49.263970Z infoCleaning up handler table, with config ID:62
2019-04-22T02:57:49.264699Z infoadaptersdeleted remote controller   {"adapter": "kubernetesenv.istio-system"}
2019-04-22T02:57:49.264744Z infoadaptersadapter closed all scheduled daemons and workers{"adapter": "prometheus.istio-system"}
2019-04-22T02:57:49.264973Z infoadaptersshutting down daemon... {"adapter": "kubernetesenv.istio-system"}
2019-04-22T02:57:49.265032Z infoadaptersshutting down daemon... {"adapter": "kubernetesenv.istio-system"}
2019-04-22T02:57:49.265055Z infoadaptersshutting down daemon... {"adapter": "kubernetesenv.istio-system"}
2019-04-22T02:57:49.265077Z infoadaptersshutting down daemon... {"adapter": "kubernetesenv.istio-system"}
2019-04-22T02:57:49.265097Z infoadaptersadapter closed all scheduled daemons and workers{"adapter": "kubernetesenv.istio-system"}

Version (include the output of istioctl version --remote and kubectl version)
istio 1.1.2
kube 1.13
How was Istio installed?
helm
Environment where bug was observed (cloud vendor, OS, etc)
Local Kubernates
CentOS 7.6.1810
Additionally, please consider attaching a cluster state archive by attaching
the dump file to this issue.

Have you verified that source.workload.name for your destination label matches "gateway" and "backend"?
For istio ingressgateway, value is generally "istio-ingressgateway" I think...

Hello,Thank for your help.There are all demo's' configuration.
apiVersion: networking.istio.io/v1alpha3
kind: Gateway
metadata:
  name: demo-gateway
spec:
  selector:
istio: ingressgateway
  servers:
  - port:
  number: 80
  name: http
  protocol: HTTP
hosts:
- "demo.istio.test"
- "demo-backend.istio.test"
---
apiVersion: apps/v1beta1
kind: Deployment
metadata:
  name: backend-v1
  labels:
app: backend
spec:
  template:
metadata:
  labels:
app: backend
version: v1
spec:
  containers:
  - name: backend
image: bulls/backend:v1
imagePullPolicy: Always
ports:
  - containerPort: 8080
---
apiVersion: apps/v1beta1
kind: Deployment
metadata:
  name: backend-v2
  labels:
app: backend
spec:
  template:
metadata:
  labels:
app: backend
version: v2
spec:
  containers:
  - name: backend
image: bulls/backend:v2
imagePullPolicy: Always
ports:
  - containerPort: 8080
---
apiVersion: apps/v1beta1
kind: Deployment
metadata:
  name: backend-v3
  labels:
app: backend
spec:
  template:
metadata:
  labels:
app: backend
version: v3
spec:
  containers:
  - name: backend
image: bulls/backend:v3
imagePullPolicy: Always
ports:
  - containerPort: 8080
env:
- name: "DATASOURCE_URL"
  value: "<IP_ADDRESS>:5432/istio-demo"
- name: "DATASOURCE_USERNAME"
  value: "postgres"
- name: "DATASOURCE_PASSWORD"
  value: "postgres"
---
apiVersion: apps/v1beta1
kind: Deployment
metadata:
  name: backend-v4
  labels:
app: backend
spec:
  template:
metadata:
  labels:
app: backend
version: v4
spec:
  containers:
  - name: backend
image: bulls/backend:v4
imagePullPolicy: Always
ports:
  - containerPort: 8080
---
apiVersion: apps/v1beta1
kind: Deployment
metadata:
  name: gateway
  labels:
app: gateway
spec:
  template:
metadata:
  labels:
app: gateway
version: v1
spec:
  containers:
  - name: gateway
image: bulls/gateway:1
imagePullPolicy: Always
ports:
  - containerPort: 8089
env:
-  name: "DEMO_ADDRESS"
   value: "appbackend:8081"
---
apiVersion: networking.istio.io/v1alpha3
kind: DestinationRule
metadata:
  name: app-gateway
spec:
  host: appgateway
  subsets:
  - name: v1
labels:
  version: v1
---
apiVersion: networking.istio.io/v1alpha3
kind: DestinationRule
metadata:
  name: app-backend
spec:
  host: appbackend
  trafficPolicy:
loadBalancer:
  simple: RANDOM
  subsets:
  - name: v1
labels:
  version: v1
  - name: v2
labels:
  version: v2
  - name: v3
labels:
  version: v3
---
apiVersion: v1
kind: Service
metadata:
  name: appbackend
spec:
  ports:
  - name: http
targetPort: 8080
port: 8081
  selector:
app: backend
---
apiVersion: networking.istio.io/v1alpha3
kind: ServiceEntry
metadata:
  name: baidu-external
spec:
  hosts:
  - www.baidu.com
  ports:
  - name: http
number: 80
protocol: http
  location: MESH_EXTERNAL
  resolution: DNS
---
apiVersion: networking.istio.io/v1alpha3
kind: ServiceEntry
metadata:
  name: pg-external
spec:
  hosts:
  - mypg.nestvision.com
  addresses:
  - <IP_ADDRESS>/24
  ports:
  - name: tcp
number: 5432
protocol: tcp
  location: MESH_EXTERNAL
  resolution: STATIC
  endpoints:
  - address: <IP_ADDRESS>
---
apiVersion: v1
kind: Service
metadata:
  name: appgateway
spec:
  ports:
  - name: http
targetPort: 8089
port: 8080
  selector:
app: gateway
---
---
apiVersion: networking.istio.io/v1alpha3
kind: VirtualService
metadata:
  name: app-gateway
spec:
  hosts:
  - demo.istio.test
  gateways:
- demo-gateway
- mesh
  http:
  - route:
- destination:
host: appgateway
#subset: v1
---
apiVersion: networking.istio.io/v1alpha3
kind: VirtualService
metadata:
  name: app-backend
spec:
  hosts:
  - demo-backend.istio.test
  gateways:
- demo-gateway
- mesh
  http:
  - route:
- destination:
host: appbackend
#subset: v1
---

And this is HTTP request
GET /gateway HTTP/1.1
Host: <IP_ADDRESS>:31380
Host: demo.istio.test
cache-control: no-cache
Postman-Token: 27ff6edb-3a6b-4381-81a6-b831c4c1096b

Thanks for the config file.. Few things stand out:

destination: source.workload.name in requestcount quota instance spec => I think given you have multiple versions of backends this value might be of the form backend-v1, backend-v1 etc.. I am guessing you want to ratelimit irrespective of the version? In that case you can use destination: destination.labels["app"] | "unknown"
As you mentioned you want to limit traffic from appgateway to appbackend, I think you should have source dimension too. You can specify it as: source: source.labels["app"] | "unknown" in requestcount quota instance and in your overrides, you can add source dimension and its value as gateway

Also, to help debugging this more, it would be good to get logs from istio policy and telemetry pods...

@Bulls1986 : Config like yours should work.. I tested it in TestRateLimiting_DefaultLessThanOverride test in https://github.com/istio/istio/pull/11209

@gargnupur There are still some problems.
I update my quota and redisquota config.
apiVersion: "config.istio.io/v1alpha2"
kind: quota
metadata:
  name: requestcount
  namespace: istio-system
spec:
  dimensions:
destinationApp: destination.labels["app"] | "unknown"
sourceApp: source.labels["app"] | "unknown"

And
overrides:
- dimensions:
    sourceApp: gateway
    destinationApp: backend
  maxAmount: 1
- dimensions:
    sourceApp: istio-ingressgateway
    destinationApp: gateway
  maxAmount: 100

The istio-ingressgateway to the gateway path  can limit-rate work good.
But the gateway to the backend still not work.
I visited the istio telemetry pods' log.
{"level":"info","time":"2019-04-26T06:47:56.911925Z","instance":"newlog.logentry.istio-system","destination":"backend","latency":"2.979353127s","responseCode":200,"responseSize":67,"source":"gateway","user":"unknown"}
{"level":"info","time":"2019-04-26T06:47:56.911188Z","instance":"newlog.logentry.istio-system","destination":"backend","latency":"2.980446017s","responseCode":200,"responseSize":67,"source":"gateway","user":"unknown"}

The destination and source name is right but it isn't not work good yet.

Config looks right now... I see you have validDuration set to 1s above, by any chance could you be hitting this bug : https://github.com/istio/istio/issues/3028?

@gargnupur request-count

@gargnupur Thank.
I have found the mistake in my quotaSpecBinding configuration. I make double services configuration but All name is appgateway.  The gateway to backend Path Rate-limit has been worked after I update config.  I seem to have been hitting : #3028 as you said.
This is my new redisquota configuration:
apiVersion: "config.istio.io/v1alpha2"
kind: redisquota
metadata:
  name: handler
  namespace: istio-system
spec:
  redisServerUrl: <IP_ADDRESS>:6379
  connectionPoolSize: 10
  quotas:
  - name: requestcount.quota.istio-system
maxAmount: 1
validDuration: 1s
bucketDuration: 1s
rateLimitAlgorithm: FIXED_WINDOW
overrides:
- dimensions:
    sourceApp: gateway
    destinationApp: backend
  maxAmount: 100
- dimensions:
    sourceApp: istio-ingressgateway
    destinationApp: gateway
  maxAmount: 1000000

I use 100 threads to access 1 time.I expect 100% successful but 28% failure.

What are the success and failure numbers you are seeing with your config?

It is not fixed value.
I try to test 5 times.
the result following:
total success Failure
100 85 15
100 82 12
100 80 20
100 83 17
100 86 14
the error messages are "429 Too Many Requests".
I use The Jmeter 5.0 r1840935
The Thread properties is 100 Threads,1 Loop Count and 1s Ramp-up Period.
So I think they should all succeed but they shouldn't.

Closing as configuration works and rest discrepancy seen in quota fetching is because of https://github.com/istio/istio/issues/3028


New package: AllenNeuropixels v0.1.0

Registering package: AllenNeuropixels
Repository: https://github.com/brendanjohnharris/AllenNeuropixels.jl
Created by: @brendanjohnharris
Version: v0.1.0
Commit: 5929e180323e9359b32270b77dc40cfe143e8fae
Reviewed by: @brendanjohnharris
Reference: https://github.com/brendanjohnharris/AllenNeuropixels.jl/issues/48#issuecomment-2297863576
Description: Wrap some functions from the Python allensdk in Julia

Thank you for submitting your package! However, please make sure to add some documentation before registering. At the very least, that would be a small usage example in the README. But based on the description, a Documenter-based API documentation seems more appropriate.

No worries, I've added a documenter page with some basic usage examples and lists of documented functions

[noblock] Thanks! Make sure to add [noblock] to your comment

Cool, thanks! [noblock]


support empty cost in posting

currently zhang does not support empty cost in posting, and it raise an error
1970-01-01 "" ""
  Assets:BankCard
  Assets:BankCard 1 CNY {}

but it should be supported, the logic would be like

if the cost is defined, we need to calculate the lots
if the cost is not defined, we need to use the account's booking_method to calculate the lots

in this issue, we plan to calibrate the logic of financial support.

case 1: only have price
2024-05-16 * "" ""
  Assets:A   10 USD @ 10 CNY
  Income:I -100 CNY

lot info is None, means default lot

case 2: only have cost amount
2024-05-16 * "" ""
  Assets:A   10 USD {10 CNY}
  Income:I -100 CNY

lot info is from cost and txn date  (10 CNY, 2024-05-16)

case 3: have cost and single price
2024-05-16 * "" ""
  Assets:A   10 USD { 10 CNY } @ 11 CNY
  Income:I -100 CNY

lot info is fron the cost, and price will be ignore

case 4: given lot(10 CNY, 2024-05-16) is 10 unit, and we sub 20 unit
2024-05-16 * "" ""
  Assets:A   10 USD { 10 CNY }
  Income:I -100 CNY

2024-05-16 * "" ""
  Assets:A   -20 USD { 10 CNY }
  Income:I 200 CNY

error raise Not enough lots to reduce "-20 USD {10 CNY}": 10 USD {10 CNY, 2024-05-16}

case 5: given lot(10 CNY, 2024-05-16) is 10 unit, and we sub 5 unit
2024-05-16 * "" ""
  Assets:A   10 USD { 10 CNY }
  Income:I -100 CNY

2024-05-16 * "" ""
  Assets:A   -5 USD { 10 CNY }
  Income:I 50 CNY

we will sub 5 unit

case 6: given lot(10 CNY, 2024-05-16) is 10 unit, and we sub 5 unit with same cost and same date
2024-05-16 * "" ""
  Assets:A   10 USD { 10 CNY }
  Income:I -100 CNY

2024-05-18 * "" ""
  Assets:A   -5 USD { 10 CNY, 2024-05-16 }
  Income:I 50 CNY

we will sub 5 unit

case 6: given lot(10 CNY, 2024-05-16) is 10 unit, and we sub 5 unit with same cost and diff date
2024-05-16 * "" ""
  Assets:A   10 USD { 10 CNY }
  Income:I -100 CNY

2024-05-18 * "" ""
  Assets:A   -5 USD { 10 CNY, 2024-05-17 }
  Income:I 50 CNY

error raise

No position matches "Posting(account='Assets:A', units=-5 USD, cost=CostSpec(number_per=Decimal('10'), number_total=None, currency='CNY', date=datetime.date(2024, 5, 17), label=None, merge=False), price=None, flag=None, meta={'filename': '/Users/kilerd/Projects/zhang-example/test.bean', 'lineno': 46})" against balance (10 USD {10 CNY, 2024-05-16})

case 7

2024-05-16 * "" ""
  Assets:A   10 USD { 10 CNY }
  Income:I -100 CNY

2024-05-17 * "" ""
  Assets:A   10 USD { 11 CNY }
    narration: "123"
  Income:I -110 CNY

2024-05-16 * "" ""
  Assets:A   -15 USD {}
  Income:I 150 CNY

base on the document of beancount: https://beancount.github.io/docs/how_inventories_work.html#fifo-and-lifo-booking
we need to handle it and do the reduction,and get result of Assets:A  5 USD (11 CNY, 2024-05-17)
but fava report and error
I'm still stuck on it


[Updater] Programme modules rework

Right now different curricula and their structures exist in importer-db in table "module", column "rule" (as JSON describing the modules and courses). Updater brings only one of the "root" modules, for example KH50_005, and it only keeps the first "level" of modules after the root, and when fetching a curricula, all of the courses of different versions are returned.
This should be changed so that different versions of the curricula are saved by updater as separate structures, and the structure should be saved fully (although we could cut modules between depending of the view). This can be then used to let user select different curricula (with default set based on associated year of pop.) in for example courses of population ( see issue #3985 ), also probably necessary for criteria ( #4176 ).
Notice also that codes "KK-" are cut out at some point in the logic, check if this is ok.
Also, only the newest modules are brought in, which should be fixed because the updater doesnt bring all data in, and trusts that the data is already in the database.
Also, the job isn't scheduled anywhere, meaning it is never run unless someone clicks the updater button from Oodikone UI.

[x] Preserve the full structure of programmes
[x] Bring in all versions of programmes, not just the newest modules
[x] Fix bugs and possible bugs in the code and make it simply more robust and understandable
[x] Find out if KK- modules should be cut out
[x] Make the job scheduled

This is mostly done, but merging with #3985


API: prevent iterator invalidation

When defining more than 1 container the API node crahes.
The cause it that as the vector grows its iterators may get invalidated. The std::list offers stable iterators.
The overhead between the vector and list in this case should not affect us since we're never iterating over info or hw_capabilities_json.

Could you sign off the commit (see DCO guidelines from the Linux foundation)?


net: net_pkt_clone

net_pkt_clone doesn't change the lladdr pointer to the new packet
net_pkt_clone copies the lladdr_src and lladdr_dst from the source to the clone.
Usually those link layer address points to the buffer from the net_pkt itself. When the original pkt is de-referenced  those addresses become invalid.
The clone is not an exact copy of the source
The clone is not an exact copy because data that was pulled before is not taken into account. Ethernet for example pulls the addresses and therefor they are not copied by net_pkt_copy.
Describe the solution you'd like

Maybe a check for  'destination is inside the buffer' and if it's true, move the destination to the new buffer. This will only works when the address in the source pkt was not pulled before!
Maybe net_pkt_copy should have a flag for an exact copy.

I think this was fixed with #51266 and commit 389bd577536a3a3e783ea3fa1d2cf9b9f31541ac -- @fgrandel to confirm

@kartben Absolutely - didn't know about this issue. IMO can be closed as fixed.


Ensure that cloud.redhat.com address is not wired in the code

Ensure that cloud.redhat.com address is not wired in the code

Pull request https://gitlab.cee.redhat.com/ccx/ccx-data-pipeline/-/merge_requests/454

We use - apiVersion: cloud.redhat.com/v1alpha1 in ClowdApp (Clowder) configuration for our services. But it won't move.


HDDS-6211. [Docs] Image styling on deployed site does not replicate local builds.

What changes were proposed in this pull request?
It was noticed that the images on the ozone docs website are not responsive despite being rendered with the appropriate CSS applied to their shortcode. This problem is not seen when building the website locally.
This might be due to bootstrap CSS classes being loaded after the inline styles and hence overriding them.
This task makes the image shortcode use a built-in bootstrap class for sizing the images down to prevent such conflicts.
What is the link to the Apache JIRA
https://issues.apache.org/jira/browse/HDDS-6211
How was this patch tested?
Screenshot

Thanks @JyotinderSingh for the patch.
When I'm verifying the patch locally, I don't really see any change on the page before and after the patch when scaling (shrinking and extending page width, zooming in and out): http://localhost:1313/feature/prefixfso.html
cd hadoop-hdds/docs
hugo serve

But I do notice the CSS of class img-responsive includes max-width: 100%:
// Responsive image
//
// Keep images from scaling beyond the width of their parents.
.img-responsive(@display: block) {
  display: @display;
  max-width: 100%; // Part 1: Set a maximum relative to the parent
  height: auto; // Part 2: Scale the height according to the width, otherwise you get stretching
}

So img-responsive seems to be the proper way to do this. I am +1 on this.


Slideshow autoplays even when $AutoPlay: false

I'm using jssor.slider.mini.js which I just grabbed off the Github repo. Why does the slideshow starts playing automatically even though I have set $AutoPlay: false?
Here's the JS code I've used, mainly copy pasted from the image-gallery.source demo
var _SlideshowTransitions = [
    //Fade in L
        {$Duration: 1200, x: 0.3, $During: { $Left: [0.3, 0.7] }, $Easing: { $Left: $JssorEasing$.$EaseInCubic, $Opacity: $JssorEasing$.$EaseLinear }, $Opacity: 2 }
    //Fade out R
        , { $Duration: 1200, x: -0.3, $SlideOut: true, $Easing: { $Left: $JssorEasing$.$EaseInCubic, $Opacity: $JssorEasing$.$EaseLinear }, $Opacity: 2 }
    //Fade in R
        , { $Duration: 1200, x: -0.3, $During: { $Left: [0.3, 0.7] }, $Easing: { $Left: $JssorEasing$.$EaseInCubic, $Opacity: $JssorEasing$.$EaseLinear }, $Opacity: 2 }
    //Fade out L
        , { $Duration: 1200, x: 0.3, $SlideOut: true, $Easing: { $Left: $JssorEasing$.$EaseInCubic, $Opacity: $JssorEasing$.$EaseLinear }, $Opacity: 2 }
    //Fade in T
        , { $Duration: 1200, y: 0.3, $During: { $Top: [0.3, 0.7] }, $Easing: { $Top: $JssorEasing$.$EaseInCubic, $Opacity: $JssorEasing$.$EaseLinear }, $Opacity: 2, $Outside: true }
    //Fade out B
        , { $Duration: 1200, y: -0.3, $SlideOut: true, $Easing: { $Top: $JssorEasing$.$EaseInCubic, $Opacity: $JssorEasing$.$EaseLinear }, $Opacity: 2, $Outside: true }
    //Fade in B
        , { $Duration: 1200, y: -0.3, $During: { $Top: [0.3, 0.7] }, $Easing: { $Top: $JssorEasing$.$EaseInCubic, $Opacity: $JssorEasing$.$EaseLinear }, $Opacity: 2 }
    //Fade out T
        , { $Duration: 1200, y: 0.3, $SlideOut: true, $Easing: { $Top: $JssorEasing$.$EaseInCubic, $Opacity: $JssorEasing$.$EaseLinear }, $Opacity: 2 }
    //Fade in LR
        , { $Duration: 1200, x: 0.3, $Cols: 2, $During: { $Left: [0.3, 0.7] }, $ChessMode: { $Column: 3 }, $Easing: { $Left: $JssorEasing$.$EaseInCubic, $Opacity: $JssorEasing$.$EaseLinear }, $Opacity: 2, $Outside: true }
    //Fade out LR
        , { $Duration: 1200, x: 0.3, $Cols: 2, $SlideOut: true, $ChessMode: { $Column: 3 }, $Easing: { $Left: $JssorEasing$.$EaseInCubic, $Opacity: $JssorEasing$.$EaseLinear }, $Opacity: 2, $Outside: true }
    //Fade in TB
        , { $Duration: 1200, y: 0.3, $Rows: 2, $During: { $Top: [0.3, 0.7] }, $ChessMode: { $Row: 12 }, $Easing: { $Top: $JssorEasing$.$EaseInCubic, $Opacity: $JssorEasing$.$EaseLinear }, $Opacity: 2 }
    //Fade out TB
        , { $Duration: 1200, y: 0.3, $Rows: 2, $SlideOut: true, $ChessMode: { $Row: 12 }, $Easing: { $Top: $JssorEasing$.$EaseInCubic, $Opacity: $JssorEasing$.$EaseLinear }, $Opacity: 2 }
    //Fade in LR Chess
        , { $Duration: 1200, y: 0.3, $Cols: 2, $During: { $Top: [0.3, 0.7] }, $ChessMode: { $Column: 12 }, $Easing: { $Top: $JssorEasing$.$EaseInCubic, $Opacity: $JssorEasing$.$EaseLinear }, $Opacity: 2, $Outside: true }
    //Fade out LR Chess
        , { $Duration: 1200, y: -0.3, $Cols: 2, $SlideOut: true, $ChessMode: { $Column: 12 }, $Easing: { $Top: $JssorEasing$.$EaseInCubic, $Opacity: $JssorEasing$.$EaseLinear }, $Opacity: 2 }
    //Fade in TB Chess
        , { $Duration: 1200, x: 0.3, $Rows: 2, $During: { $Left: [0.3, 0.7] }, $ChessMode: { $Row: 3 }, $Easing: { $Left: $JssorEasing$.$EaseInCubic, $Opacity: $JssorEasing$.$EaseLinear }, $Opacity: 2, $Outside: true }
    //Fade out TB Chess
        , { $Duration: 1200, x: -0.3, $Rows: 2, $SlideOut: true, $ChessMode: { $Row: 3 }, $Easing: { $Left: $JssorEasing$.$EaseInCubic, $Opacity: $JssorEasing$.$EaseLinear }, $Opacity: 2 }
    //Fade in Corners
        , { $Duration: 1200, x: 0.3, y: 0.3, $Cols: 2, $Rows: 2, $During: { $Left: [0.3, 0.7], $Top: [0.3, 0.7] }, $ChessMode: { $Column: 3, $Row: 12 }, $Easing: { $Left: $JssorEasing$.$EaseInCubic, $Top: $JssorEasing$.$EaseInCubic, $Opacity: $JssorEasing$.$EaseLinear }, $Opacity: 2, $Outside: true }
    //Fade out Corners
        , { $Duration: 1200, x: 0.3, y: 0.3, $Cols: 2, $Rows: 2, $During: { $Left: [0.3, 0.7], $Top: [0.3, 0.7] }, $SlideOut: true, $ChessMode: { $Column: 3, $Row: 12 }, $Easing: { $Left: $JssorEasing$.$EaseInCubic, $Top: $JssorEasing$.$EaseInCubic, $Opacity: $JssorEasing$.$EaseLinear }, $Opacity: 2, $Outside: true }
    //Fade Clip in H
        , { $Duration: 1200, $Delay: 20, $Clip: 3, $Assembly: 260, $Easing: { $Clip: $JssorEasing$.$EaseInCubic, $Opacity: $JssorEasing$.$EaseLinear }, $Opacity: 2 }
    //Fade Clip out H
        , { $Duration: 1200, $Delay: 20, $Clip: 3, $SlideOut: true, $Assembly: 260, $Easing: { $Clip: $JssorEasing$.$EaseOutCubic, $Opacity: $JssorEasing$.$EaseLinear }, $Opacity: 2 }
    //Fade Clip in V
        , { $Duration: 1200, $Delay: 20, $Clip: 12, $Assembly: 260, $Easing: { $Clip: $JssorEasing$.$EaseInCubic, $Opacity: $JssorEasing$.$EaseLinear }, $Opacity: 2 }
    //Fade Clip out V
        , { $Duration: 1200, $Delay: 20, $Clip: 12, $SlideOut: true, $Assembly: 260, $Easing: { $Clip: $JssorEasing$.$EaseOutCubic, $Opacity: $JssorEasing$.$EaseLinear }, $Opacity: 2 }
    ];

var options = {
    $AutoPlay: false,                                    //[Optional] Whether to auto play, to enable slideshow, this option must be set to true, default value is false
    $AutoPlayInterval: 1500,                            //[Optional] Interval (in milliseconds) to go for next slide since the previous stopped if the slider is auto playing, default value is 3000
    $PauseOnHover: 1,                                //[Optional] Whether to pause when mouse over if a slider is auto playing, 0 no pause, 1 pause for desktop, 2 pause for touch device, 3 pause for desktop and touch device, 4 freeze for desktop, 8 freeze for touch device, 12 freeze for desktop and touch device, default value is 1
    $DragOrientation: 1,                                //[Optional] Orientation to drag slide, 0 no drag, 1 horizental, 2 vertical, 3 either, default value is 1 (Note that the $DragOrientation should be the same as $PlayOrientation when $DisplayPieces is greater than 1, or parking position is not 0)
    $ArrowKeyNavigation: true,   			            //[Optional] Allows keyboard (arrow key) navigation or not, default value is false
    $SlideDuration: 800,                                //Specifies default duration (swipe) for slide in milliseconds
    $SlideshowOptions: {                                //[Optional] Options to specify and enable slideshow or not
        $Class: $JssorSlideshowRunner$,                 //[Required] Class to create instance of slideshow
        $Transitions: _SlideshowTransitions,            //[Required] An array of slideshow transitions to play slideshow
        $TransitionsOrder: 1,                           //[Optional] The way to choose transition to play slide, 1 Sequence, 0 Random
        $ShowLink: true                                    //[Optional] Whether to bring slide link on top of the slider when slideshow is running, default value is false
    },
    $ArrowNavigatorOptions: {                       //[Optional] Options to specify and enable arrow navigator or not
        $Class: $JssorArrowNavigator$,              //[Requried] Class to create arrow navigator instance
        $ChanceToShow: 1                               //[Required] 0 Never, 1 Mouse Over, 2 Always
    },
    $ThumbnailNavigatorOptions: {                       //[Optional] Options to specify and enable thumbnail navigator or not
        $Class: $JssorThumbnailNavigator$,              //[Required] Class to create thumbnail navigator instance
        $ChanceToShow: 2,                               //[Required] 0 Never, 1 Mouse Over, 2 Always
        $ActionMode: 1,                                 //[Optional] 0 None, 1 act by click, 2 act by mouse hover, 3 both, default value is 1
        $SpacingX: 8,                                   //[Optional] Horizontal space between each thumbnail in pixel, default value is 0
        $DisplayPieces: 10,                             //[Optional] Number of pieces to display, default value is 1
        $ParkingPosition: 360                          //[Optional] The offset position to park thumbnail
    }
};

var jssor_slider1 = new $JssorSlider$('slider1_container', options);

//responsive code begin
//you can remove responsive code if you don't want the slider scales while window resizes
function ScaleSlider() {
    var parentWidth = jssor_slider1.$Elmt.parentNode.clientWidth;
    if (parentWidth)
        jssor_slider1.$ScaleWidth(Math.max(Math.min(parentWidth, 800), 300));
    else
        window.setTimeout(ScaleSlider, 30);
}
ScaleSlider();
$(window).bind("load", ScaleSlider);
$(window).bind("resize", ScaleSlider);
$(window).bind("orientationchange", ScaleSlider);
//responsive code end

No such problem found.


Scrolling mismatched by a slight "gap" / "offset"

See Screen Capture: https://capture.dropbox.com/eOWwA16wT0yK9fga?autoPreview=1

Same issue. And if I scroll very fast, the scroll on the other side may occasionally lag resulting in larger gap between 2 scrolls.

I can not get it to work at all; I might be missing something. I installed the extension. I opened my files in Split. Set the Sync Scroll to Normal.

I installed today and it seems working fine apart from Word Wrap and Sticky Scroll do not play well with this extension. Turn those off.
Any issues upon install- start fresh by turning sync scroll off, have no split editor, and do a Reload Window. Split the editor, go to line 1 in both your files, turn Sync Scroll ON.
Any gap/offset I'm getting is less than 1 line. Even Alt-Scroll works fine.

thanks @mal2994 sticky scroll was causing a 5 line offset for me even though the files I'm working with weren't showing any sticky sections


⚠ Syncthing-KA-BI has degraded performance

In e223790, Syncthing-KA-BI ($URL_SYNCTHING_MERZ_NIMBUS_BI) experienced degraded performance:

HTTP code: 200
Response time: 9765 ms

Resolved: Syncthing-KA-BI performance has improved in 379c24d after 4 minutes.


Add missing requirements for conditional generation

Adding the missing requirements for when executing the conditional generation with text. I found the missing packages below that were added in setup.py.
I am not sure if the repository requires any specific version for them. Let me know if this is the case. But I tested with their last version and worked fine.
pip install huggingface-hub
pip install safetensors
pip install tokenizers
pip install sentencepiece
pip install sacremoses

Obs: I also ran autopep8 at the file.

@kkedich hey Karina! i wonder if this could be subsumed into requiring one package

@kkedich want to try 0.6.1 first? i'm happy to add that requirements.txt if somehow that doesn't work

@lucidrains Hi Phil, the transformers[torch] was in fact enough to handle the huggingface-hub, safetensors, tokenizers = )
But the sacremoses and  sentencepiece are still missing. Could you please, check this version?


Correct gnoi-5.3 test id

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

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 55.461%

Totals

Change from base Build<PHONE_NUMBER>:
0.0%

Covered Lines:
1173

Relevant Lines:
2115

💛  - Coveralls


updated the list view to use card view

Fixes #5

@thedevelopersanjeev It would nice if you can send the screenshots of the same.


ssl support

Does the Objective-C implementation of the mosquito lib support TLS connections?

Worked perfectly with pod 'OpenSSL-Framework', '~> 1.0'

I am using https://github.com/jmesnil/MQTTKit/blob/TLS_support/MQTTKitTests/MQTTKitTests.m#L227).
can any one help me. it give me error message.

mosquitto_tls_set keeps returning MOSQ_ERR_NOT_SUPPORTED because WITH_TLS is not defined. How can I set this ?

@GuriSarao @kirang89 I forked @jmesnil 's repo and finished the TLS_support branch, just for testing my project. My codes are not good enough for production, you should consummate that codes before use in an online app I think. :)
https://github.com/zwf/MQTTKit/tree/TLS_support

@zwf I had tried adding -DWITH_TLS=1 as a compiler flag and I had got it to work. I forked your branch and tested it out as well. Seems to work fine for now :)

Hi can you please send me your working source code as i am already stuck in this from last 2 week and can't get any solution yet. My email is is<EMAIL_ADDRESS>I will be very thankful to you.
Sent from my iPhone

On May 2, 2015, at 7:16 PM, Kiran Gangadharan<EMAIL_ADDRESS>wrote:
@zwf I had tried adding -DWITH_TLS=1 as a compiler flag and I had got it to work. I forked your branch and tested it out as well. Seems to work fine for now :)
—
Reply to this email directly or view it on GitHub.

@GuriSarao Checkout @zwf 's fork. It works fine for me.

@viteinfinite Did you have issues with OpenSSL-Universal ?

I am getting same error with @zwf fork when i define WITH_TLS.there are lots os error come in my code when i define WITH_TLS. can anyone have solution?

@GuriSarao You don't have to define anything. Just add
pod 'MQTTKit', :git => 'https://github.com/zwf/MQTTKit', :branch => 'TLS_support'
to your Podfile, pod install it and run your project. If that failed as well, could you provide a link to your repo so that I can take a look at it ?

@GuriSarao just follow @kirang89 's comment :) thx @kirang89
and it's better to use :comment not :branch, that is good for pod to download the right codes, cause I'll push some codes some day, maybe~ :)
pod 'MQTTKit', :git => 'https://github.com/zwf/MQTTKit.git', :commit => '15ba0a41f'

@zwf I keep getting EXC_BAD_ACCESS issues when trying to load one client after another. Have you faced such issues ?

@kirang89 I didn't face this. I guess the issue brought by async part in MQTTKit.

My thoughts exactly. I raised it as an issue (#31)

Will there be a chance that the branch will get merged to master original repo? Thank.

bump

bump because this is a great feature!

bump because this is a great feature![2]

@kirang89 / @zwf  Im also trying to integrate your implementation. But facing some issues. Could you kindly share any example project for me to refer. Thanks.

I just used @zwf's fork and got it to work well.
I had to setup MQTT with TLS for work, but I ended up using a non-TLS implementation because of threading issues. Unfortunately I don't have any project that I can share but I'll try and highlight a few key things I did:

Set the TLS support branch in your Podfile like so:

  pod 'MQTTKit', :git => 'https://github.com/zwf/MQTTKit/tree/TLS_support', :branch => 'TLS_support'

Setup client appropriately before connecting:

MQTTClient *client = [[MQTTClient alloc]initWithClientId:id];
[client setUsername:username];
[client setPassword:password];

Set the CA file to use for server validation

[client setCafile:[[NSBundle mainBundle]pathForResource:@"ca" ofType:@"crt"]]

Finally connect to the server

[client connectToHost:MQSERVER completionHandler:handler];

Is it possible to use @zwf's fork without a username and password? I'm using the AWS IoT MQTT broker and it doesn't support username/password credentials. It will only accept a CA file and certificates.


Unable to load H265-compressed video

Hi there,
I compressed a video (using FFMPEG) with the H265 codec so it would use up less memory before uploading to one of the hosts for annotation (that way there's less strain on your end). The video plays properly, but it cannot be read by Vidat on the first host. Any idea as to what might be going on here?
Thanks,
Vineet

(For context this works with H264 codec, so I think it's just a matter of supporting the new codec)

Hi Vinnet,

I compressed a video (using FFMPEG) with the H265 codec so it would use up less memory before uploading to one of the hosts for annotation (that way there's less strain on your end)

At present, there is no workload on my server regarding video processing. The Vidat tool is a frontend-only application that operates entirely within the browser on your computer. Thus, there is no necessity to compress the video using h265 to save memory. In fact, doing so could potentially decrease the performance of your computer.
As for the h265 codec, I managed to have a hotfix on that, can you have a try on the second host?

oddly enough I'm getting Could not load the video: InvalidStateError: Failed to execute 'decode' on 'VideoDecoder': Cannot call 'decode' on a closed codec. when attempting to run on the second host (using Chrome on Ubuntu).

Can you provide the version of the chrome you are using and, if possible, the h265 encoded mp4 file?


Pause cluster and datacenter webhook validation during upgrade

Issue #, if available:
Description of changes:
During CLI upgrade w controller v2, the Applying eksa yaml resources to cluster step failed due to the eksa cluster webhook validation error: admission.anywhere.amazonaws.com\" denied the request: upgrading self managed clusters is not supported
We are adding the paused annotation to cluster/datacenterconfig during CLI upgrade, similar to create.
Testing (if applicable):
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

upgrade test passed on snow admin instance.
/unhold
/approve


Dashboard last build status per project

Tiny contribution. Solves #265. Questionable: I've added build_status.erb but it basically contains mapping from status to status emoji.

I think that's perfect, love that you extracted out that logic. We might update it in the future, so that makes it easier once we have designs 🎉


MV3 on Firefox

Describe the task
Perform testing for MV3 on Firefox

Version test: http://<IP_ADDRESS>:8900/s/ZsHGCcemJYiFoJy

[ ] Unable to connect SubWallet extension when connect dApp

Version test: http://<IP_ADDRESS>:8900/s/Qbg9Ks2HeoZbx5w

[ ] Unable to connect with dApp
https://media.discordapp.net/attachments/1244959096348872805/1249941593260032000/image.png?ex=66692252&is=6667d0d2&hm=33c394ed90a217535b3beb111b7e4551d5e28c1f0e41836cd253967b69e549cd&=&format=webp&quality=lossless&width=1274&height=660

Version test: http://<IP_ADDRESS>:8900/s/nqD9CFCZxQ7PXMd

[ ] Request duplicate permission

[ ] UI bug

[ ] Update content, update icon when request permission

[ ] Auto accept permission in case upgrade version(Access your data for all websites)

Re-check on new build https://discord.com/channels/447263980252037141/947710670344945664/1275693119161237504
Re-check with:

Firefox browser
Chrome browser

Will resolve in https://github.com/Koniverse/SubWallet-Extension/issues/3364


Fix snupkg documentation

The correct msbuild property is SymbolPackageFormat. See: https://github.com/NuGet/NuGet.Client/blob/3c9b61826814dc800a2a295f0985ce4f295483d6/src/NuGet.Core/NuGet.Build.Tasks.Pack/NuGet.Build.Tasks.Pack.targets#L42
cc @karann-msft

:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

docs/create-packages/Symbol-Packages-snupkg.md
:white_check_mark:Succeeded
View

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.

/cc @karann-msft


ISSUE-3941 fix: "Rebot removes sourcename attribute from kw tag"

@pekkaklarck @rasjani Guys, I hope that I have fixed this problem.

Fix looks good but a test making sure we don't break this again would still be needed.

Fix looks good but a test making sure we don't break this again would still be needed.

Tests have done

I only see code changes in this PR. An acceptance test should be added or an existing edited to cover the change.

I only see code changes in this PR. An acceptance test should be added or an existing edited to cover the change.

Sorry, my English is not good. I thought that you told about running of existed tests.
Now I have added simple tests for checking.

@pekkaklarck Hi! Do you have any remarks?

Thanks for adding tests. It would, however, be better to validate the attribute using XML tooling, not just by looking what the output file contains. You found the right suite where to add the test and it would actually be very easy to enhance the existing test there so that it validates the fix. I just verified that changing it as below fails the test locally, and I'm fairly certain your fix would then fix it. If that's the case no new tests need to be added.
diff --git a/atest/robot/rebot/output_file.robot b/atest/robot/rebot/output_file.robot
index 512afdad7..293461f9a 100644
--- a/atest/robot/rebot/output_file.robot
+++ b/atest/robot/rebot/output_file.robot
@@ -14,6 +14,7 @@ Generate output with Robot
     ...    misc/for_loops.robot
     ...    misc/if_else.robot
     ...    misc/warnings_and_errors.robot
+    ...    keywords/embedded_arguments.robot
     Run tests    -L TRACE    ${inputs}
     Run keyword and return    Parse output file

Thanks for adding tests. It would, however, be better to validate the attribute using XML tooling, not just by looking what the output file contains. You found the right suite where to add the test and it would actually be very easy to enhance the existing test there so that it validates the fix. I just verified that changing it as below fails the test locally, and I'm fairly certain your fix would then fix it. If that's the case no new tests need to be added.
diff --git a/atest/robot/rebot/output_file.robot b/atest/robot/rebot/output_file.robot
index 512afdad7..293461f9a 100644
--- a/atest/robot/rebot/output_file.robot
+++ b/atest/robot/rebot/output_file.robot
@@ -14,6 +14,7 @@ Generate output with Robot
     ...    misc/for_loops.robot
     ...    misc/if_else.robot
     ...    misc/warnings_and_errors.robot
+    ...    keywords/embedded_arguments.robot
     Run tests    -L TRACE    ${inputs}
     Run keyword and return    Parse output file

Thanks!!! Run test after adding existed test with sourcename and remove fix and catch

Yeah, that was the error I got as well. I assume the error went away with the fix.

Thanks for the PR @miktuy!


FIX Allow __call() to trigger __call() in other classes

Fixes https://github.com/silverstripe/silverstripe-elemental/actions/runs/12128337221/job/33818161207
Basically VirtualPage couldn't be viewed at all, so that's easy to test.
If a class wraps another class, it may rely on calling methods in that other class. If that throws BadMethodCallException we should swallow that in ViewLayerData because it's the same as the method not existing on the object we're directly calling it on.
Issue

https://github.com/silverstripe/.github/issues/348

inmemorycache CI failure is unrelated to this PR


smooth on label viewer

Label viewer labels should not be smoothed by default. Only if a user specifically wants it.

From what I understand in the viewer preference the value of smooth display should be set to False by default in this case right?
I want to pick up this issue.

@igaurab just noticed your comment. We have a completely new viewer now: NiiVue and this issue is not as pressing, unless you want to fix it in the pervious version v3. Thank you for offering your help!


Codegen Whoops in complex property test

What Git revision are you using?
main
What operating system are you using, and which version?

[ ] Linux / Ubuntu
[X] Linux / Other
[ ] macOS
[ ] Windows

Describe what the problem is?
   aiken::fatal::error
   Whoops! You found a bug in the Aiken compiler.

   Please report this error at https://github.com/aiken-lang/aiken/issues/new.
   In your bug report please provide the information below and if possible the code
   that produced it.

   Operating System: linux
   Architecture:     x86_64
   Version:          v1.0.24-alpha+c51741c

   crates/aiken-lang/src/gen_uplc.rs:4193:72

       called `Result::unwrap()` on an `Err` value: FreeUnique(Name { text: "list_bytearray", unique: Unique(2090) })

When running aiken check on this branch. Not sure exactly what's causing it, but the most recent thing I wrote is the test_case method in lib/tests/ex_multisig.ak
What should be the expected behavior?
Not crash

Found the issue was with function aliases. Gonna push up a fix

Closed by b761d6a


Reformat, and enforce format, fix #125 - [merged]

In GitLab by @nim65s on Mar 11, 2019, 13:01
Merges topic/format -> devel
Hi,
This PR:

heavily reformats all python files, with the help of tools like isort, flake8 & yapf.
enforces this new format to be followed by a CI check.
fixes the CI to run tests, in order to be sure that this reformatting did not break anything.

I had to make a few choices about the format, and they are documented in the setup.cfg file.
The most obvious one is the line length. Linters usually set this to 79. I find it way to short, but I am open to discussions about this.
Then, I had to ignore several issues for flake8:

you are using a C++ naming convention. I hate that, but I will not try to make you change this, so these are disabled:

N802: function name should be lowercase
N803: argument name should be lowercase
N806: variable in function should be lowercase

you are assigning lambda expressions everywhere, I don't understand why. As it would require more work to fix this, I disabled:

E731: do not assign a lambda expression, use a def

I was a bit lazy about those, but I should be able to fix them soon (so this PR is in WIP state):

E722: do not use bare except, specify exception instead
E741: do not use variables named ‘l’, ‘O’, or ‘I’
W504: line break after binary operator

In GitLab by @nim65s on Mar 11, 2019, 13:03
changed the description

In GitLab by @nim65s on Mar 11, 2019, 15:30
added 4 commits
9a46e00d - [Format] fix E741f2f48f20 - [Format] fix W5044b88ebb2 - [Format] fix E722d60178cf - [Format] fix E731
Compare with previous version

In GitLab by @nim65s on Mar 11, 2019, 15:32
added 1 commit
7d948652 - [Format] fix isort
Compare with previous version

In GitLab by @proyan on Mar 11, 2019, 15:42
This may be a silly question, but does this mean that all future commits will need to conform to the formatting of isort, flake8 and yapf?

In GitLab by @nim65s on Mar 11, 2019, 16:37
Yes. The general idea is that it is useless to reformat this if we don't enforce subsequent commits to comply with the new format.
But we can discuss about which and how many tools we should use for the format of this project.
Also, when we will start to add c++ code, I think we will have to add other tools, like clang-tidy & clang-format.

In GitLab by @nim65s on Mar 11, 2019, 16:40
Please note that this is a separate test, meaning that you can work in your fork / on the branch of your choice, and make / push several commits, while just checking that the tests are not unexpectedly broken, and ignoring the format.
When you are done with it, you can look at the results of the format CI check, and reformat stuff as needed in one commit before creating a MR.

In GitLab by @nim65s on Mar 13, 2019, 15:48
added 5 commits
7d948652...3269cf78 - 4 commits from branch loco-3d:develfee8d727 - Merge remote-tracking branch 'main/devel' into topic/format
Compare with previous version

In GitLab by @nim65s on Mar 13, 2019, 15:50
unmarked as a Work In Progress

In GitLab by @nim65s on Mar 13, 2019, 15:53
Flake8 flags E722, E731, E741 & W504 have been fixed. I'm ready to merge it, if you don't need to discuss this more.

In GitLab by @cmastalli on Mar 15, 2019, 08:54
We don't need anymore talos-data. Maybe we should remove it in this PR.

In GitLab by @cmastalli on Mar 15, 2019, 09:06
I also agree that we shouldn't use lambda functions. However this can be tackle in a next PR.
I have two questions:

what is the maximum line length allowed?
how should we test our format code before PR? is there a run script here?

I think point 2 is important, every developer should know how to test his/her format. I would like to avoid people creating commits after CI complains. We should have a documented policy that it can be added in this PR.
@nim65s could you rebase your PR? I apologize if we don't tackle before, let's try to merge it today.

In GitLab by @nim65s on Mar 15, 2019, 09:09
changed this line in version 5 of the diff

In GitLab by @nim65s on Mar 15, 2019, 09:09
added 1 commit
1a472946 - [CI] no more need for the private talos-data dependency
Compare with previous version

In GitLab by @nim65s on Mar 15, 2019, 09:09
Nice catch, thanks :)

In GitLab by @nim65s on Mar 15, 2019, 09:15
I already fixed the named lambdas in d60178cf.

The maximum line length allowed has been set to 119 in this PR. By default, it would have been 79.

To test the format, you can run the same commands as in the CI:

isort -c
flake8 .
yapf -dr .

These commands can be run automatically in your IDE, but if you don't want to spend time to configure it, I understand that this is not easy enough.
Maybe I can add a make target that run all of these.
What do you think ?

I will not rebase it as it would be too much work, but merge devel in it instead.

In GitLab by @nim65s on Mar 15, 2019, 09:19
added 8 commits
1a472946...f1f8858c - 7 commits from branch loco-3d:devel5337db6d - Merge remote-tracking branch 'main/devel' into topic/format
Compare with previous version

In GitLab by @nim65s on Mar 15, 2019, 09:24
changed the description

In GitLab by @cmastalli on Mar 15, 2019, 09:25
I think this discussion is resolved. Feel free to re-open it.

In GitLab by @cmastalli on Mar 15, 2019, 09:25
resolved all discussions

In GitLab by @cmastalli on Mar 15, 2019, 13:24
I have detected an issue in this PR. I have fixed here https://gepgitlab.laas.fr/gsaurel/crocoddyl/merge_requests/1. @nim65s please have a look on it, let me know how to solve the format issue. For some reason, isort doesn't trigger it in my PC

In GitLab by @nim65s on Mar 22, 2019, 18:48
added 7 commits
3303bebc - [bugfix] Removed wrong module inclusion in the bipedal example7d44368c - [bugfix] Updated the CallbackDDPVerbose inside unicycle notebookbcf9c3fa - [bugfix] Fixed error with the display7f6bf4c9 - [bugfix] Added a missed module842a8c04 - [bugfix] Passed isort, I hope this works11cc2c39 - [isort] Done for python scripts inside notebooks folder77907f20 - Merge branch 'topic/format' into 'topic/format'
Compare with previous version

In GitLab by @nim65s on Mar 22, 2019, 19:12
added 1 commit
b799b827 - [CI] remove isort
Compare with previous version

In GitLab by @nim65s on Mar 22, 2019, 19:13
added 1 commit
a3f43285 - [Style] fix flake8
Compare with previous version

In GitLab by @nim65s on Mar 22, 2019, 19:31
added 25 commits
a3f43285...0f50baa1 - 23 commits from branch loco-3d:develf9b7662a - Merge remote-tracking branch 'main/devel' into topic/format1e5760d1 - [Style] Ignore sandbox
Compare with previous version

In GitLab by @nim65s on Mar 22, 2019, 19:33
LGTM, feel free to merge if needed :)

In GitLab by @nim65s on Mar 23, 2019, 08:15
added 11 commits
1e5760d1...77c18f36 - 10 commits from branch loco-3d:devel6b7d3a7b - Merge remote-tracking branch 'main/devel' into topic/format
Compare with previous version

In GitLab by @nim65s on Mar 23, 2019, 08:36
added 1 commit
0c565b76 - [Tests] add . to PYTHONPATH for ctest
Compare with previous version

In GitLab by @cmastalli on Mar 27, 2019, 11:48
@nim65s I agree with 79 charateres is too short, however it might be too long 119. What about 99?

In GitLab by @nim65s on Mar 27, 2019, 11:53
I think this kind of details should be discussed for the whole team, not just on this project.

In GitLab by @cmastalli on Mar 27, 2019, 11:56
I agree, did you already discuss it? Probably we should have two different answers for Python and c++.
I would like to define c++ standards before starting to c++ version. And as a consequence, to enable it from the very beginning

In GitLab by @nim65s on Mar 27, 2019, 11:59
C++ linters are already run on this project, starting from this PR, that's the check-clang-format.sh in https://gepgitlab.laas.fr/gsaurel/crocoddyl/-/jobs/15850 which just show that it can't find any C++ header or source for now.
This comes from there: https://gepgitlab.laas.fr/gepetto/linters

In GitLab by @nim65s on Mar 28, 2019, 12:19
added 5 commits
0c565b76...2fb8a27b - 4 commits from branch loco-3d:devel92ea2532 - Merge remote-tracking branch 'main/devel' into topic/format
Compare with previous version

In GitLab by @nim65s on Apr 3, 2019, 15:46
added 17 commits
92ea2532...c91c4c40 - 15 commits from branch loco-3d:devel934c841c - Merge remote-tracking branch 'main/devel' into topic/format6e5ae36b - [format] fix flake8
Compare with previous version

In GitLab by @nim65s on Apr 4, 2019, 11:40
added 34 commits
6e5ae36b...7e160284 - 31 commits from branch loco-3d:develacf55086 - Merge remote-tracking branch 'main/devel' into topic/formatc831ba7b - [format] fix flake85422c90c - [CI] add quadprog to docker image
Compare with previous version

In GitLab by @nim65s on Apr 4, 2019, 12:01
added 1 commit
ec6021eb - fix imports
Compare with previous version

In GitLab by @nim65s on Apr 4, 2019, 13:20
added 6 commits
1560adc1 - [CMake] update tests1e46715e - fix catch_warningse5bbdad7 - [CMake] add locomotionba80bcb7 - [CI] add multicontact-api to docker image226f9633 - [Tests] locomotion: fix multicontact_api import & path to xml file7dc136dd - [CMake] set dependencies
Compare with previous version

In GitLab by @nim65s on Apr 4, 2019, 14:14
I updated this MR a bit, and a few tests are failing. At this point, after so many merges, it is becoming hard for me to find if an issue comes from one of the merge I did or from somewhere else. These issues, shown in https://gepgitlab.laas.fr/gsaurel/crocoddyl/-/jobs/16940 are the following:
 4/17 Test  #5: py-boxsolvers ....................***Failed    0.46 sec
Traceback (most recent call last):
  File "/builds/gsaurel/crocoddyl/unittest/test_boxsolvers.py", line 83, in <module>
    assert (uddp_box[0][limit_id] == ddpbox.ul[limit_id])
AssertionError

 5/17 Test  #7: py-costs .........................***Failed    0.40 sec
Traceback (most recent call last):
  File "/builds/gsaurel/crocoddyl/unittest/test_costs.py", line 173, in <module>
    NUMDIFF_MODIFIER * costModelND.disturbance)  # threshold was 1e-4, is now 2.11e-4 (see assertNumDiff.__doc__)
  File "/builds/gsaurel/crocoddyl/unittest/testutils.py", line 23, in assertNumDiff
    raise NumDiffException("NumDiff exception, with residual of %.4g, above threshold %.4g" % (value, threshold))
testutils.NumDiffException: NumDiff exception, with residual of 3.119, above threshold 0.0002107

 9/17 Test #10: py-dynamic_derivatives ...........***Failed    0.61 sec
Traceback (most recent call last):
  File "/builds/gsaurel/crocoddyl/unittest/test_dynamic_derivatives.py", line 450, in <module>
    KJn = K * dcid_dqn
  File "/usr/lib/python2.7/dist-packages/numpy/matrixlib/defmatrix.py", line 343, in __mul__
    return N.dot(self, asmatrix(other))
ValueError: shapes (13,13) and (10,7) not aligned: 13 (dim 1) != 10 (dim 0)

13/17 Test #12: py-locomotion ....................***Exception: Other  1.48 sec
terminate called after throwing an instance of 'boost::archive::archive_exception'
  what():  input stream error

In GitLab by @cmastalli on Apr 4, 2019, 14:32
Scipy isn't optional one.

In GitLab by @nim65s on Apr 4, 2019, 14:34
Yes, but it doesn't provide a .pc, so if we put a REQUIRED, CMake will fail.
I will handle this later, this is just a placeholder to remind that scipy is indeed a dependency

In GitLab by @cmastalli on Apr 4, 2019, 14:35
Ok, you know your business.

In GitLab by @cmastalli on Apr 4, 2019, 14:35
resolved all discussions

In GitLab by @cmastalli on Apr 4, 2019, 15:06
@nim65s You have four type of errors:

Regarding box DDP (1 message, PR !129)
Regarding NumDiff changes (!121) (2 message, PR !121)
Unknown for me (3 message)
Regarding multicontact-api (4 messages)

I would comment each one. In any case all the unit-test are passing (devel branch), with the exception of test_locomotion. I reported this issue here #154, maybe @nmansard could help with this.

Box DDP:
I have no idea how it's happening here, @proyan is your guy.

NumDiff:
Inspecting your branch, I see that there is a missing piece of code before the failing assertNumDiff, i.e.:
costModelND = CostModelNumDiff(costModel,StatePinocchio(rmodel),withGaussApprox=True,
                               reevals = [ lambda m,d,x,u: pinocchio.forwardKinematics(m,d,a2m(x[:rmodel.nq]),a2m(x[rmodel.nq:])),
                                           lambda m,d,x,u: pinocchio.computeJointJacobians(m,d,a2m(x[:rmodel.nq])),
                                           lambda m,d,x,u: pinocchio.updateFramePlacements(m,d) ])
costDataND  = costModelND.createData(rdata)

costModelND.calcDiff(costDataND,x,u)
...
# then the asserts

Did you get merge conflicts? Could be possible just re-run the formater from devel branch + plus adding CI setups? (instead of merging devel into this branch). I'm trying to figure out the less risky and easiest way of doing this.

Unknown error:
Since I saw missing code, I suspect that here is passing the same. I believe recent PRs aren't connected with this.
--
Multicontact-API:
This error is weird and it's not connected with #154 (another one). Maybe merge request conflicts? In any case, we should tackle #154.

In GitLab by @nim65s on Apr 5, 2019, 09:09
added 1 commit
9395362c - fix merges
Compare with previous version

In GitLab by @nim65s on Apr 5, 2019, 09:09
Thanks, I should have figured out how to fix this. the 3 first errors have been fixed.

In GitLab by @nim65s on Apr 5, 2019, 09:23
added 1 commit
16a70c8b - [Format] fix flake8 with functools.partial
Compare with previous version

In GitLab by @nim65s on Apr 5, 2019, 17:29
added 12 commits
16a70c8b...9c22a62d - 9 commits from branch loco-3d:devel87d47fcf - Merge remote-tracking branch 'main/devel' into topic/formatbc471035 - [Format] sandbox/expectfc3da4b2 - [Tests] disable locomotion for now
Compare with previous version

In GitLab by @nim65s on Apr 5, 2019, 17:30
merged

In GitLab by @nim65s on Apr 5, 2019, 17:30
mentioned in commit d42e2654ebabf92d7bc7b693158987459274bf07


Add Encryption to Chat Service

We should add an encryption feature such as using RSA in the chat service.

we should add encryption to the README.md

and the LICENSE


terraform provider phpipam provider intialization fails

kthakur@node: ~/terraform/vsphere/.terraform/plugins/linux_amd64$ cp /home/kthakur/terraform-provider-phpipam/terraform-provider-phpipam .
kthakur@node: ~/terraform/vsphere/.terraform/plugins/linux_amd64$ ls
lock.json  terraform-provider-null_v2.1.2_x4  terraform-provider-restapi_v1.12.0
phpipam    terraform-provider-phpipam         terraform-provider-vsphere_v1.18.1_x4

kthakur@: ~/terraform/vsphere$ terraform init
kthakur@node: ~/terraform/vsphere$ terraform init
There are some problems with the configuration, described below.

The Terraform configuration must be valid before initialization so that
Terraform can determine which modules and providers need to be installed.

Error: Missing name for resource

  on phpipam.tf line 18, in resource "phpipam_address":
  18: resource "phpipam_address" {

All resource blocks must have 2 labels (type, name).

when i remove phpipa_address resource

but using terraform --version command provider doesn't show.
kthakur@node: ~/terraform/vsphere$ terraform --version
Terraform v0.12.13
+ provider.null v2.1.2
+ provider.restapi v1.12.0
+ provider.vsphere v1.18.1

Your version of Terraform is out of date! The latest version
is 0.12.25. You can update by downloading from www.terraform.io/downloads.html

even i use http in phpipam address it showing error.
provider "phpipam" {
  app_id   = "test"
  endpoint = "http:/test/api"
  password = "test"
  username = "admin"
  insecure = true
}

data "phpipam_subnet" "subnet" {
  subnet_address = "<IP_ADDRESS>"
  subnet_mask    = 24
}

data "phpipam_first_free_address" "next_address" {
  subnet_id = data.phpipam_subnet.subnet.subnet_id
}

Hi @thatsk
I am don't see issue with phpipam provider itself here.
There are several wrong documentation examples. I've updated README:

https://github.com/lord-kyron/terraform-provider-phpipam/commit/e9094848bbe00a90fff1d6fa7c9b36b81fa7e817
https://github.com/lord-kyron/terraform-provider-phpipam/commit/35f7199336709a4941dd26869feac3ed5da0a50f

Error 1:

Error: Missing name for resource
on phpipam.tf line 18, in resource "phpipam_address":
18: resource "phpipam_address" {
All resource blocks must have 2 labels (type, name).

Should be used resource declaration with name. Example :
resource "phpipam_address" "newip" {
  subnet_id   = data.phpipam_subnet.subnet.subnet_id
  ip_address  = data.phpipam_first_free_address.next_address.ip_address
  hostname    = "tf-test-host.example.internal"
  description = "Managed by Terraform"

  custom_fields = {
    CustomTestAddresses = "terraform-test"
  }

  lifecycle {
    ignore_changes = [
      subnet_id,
      ip_address,
    ]
  }
}

Error 2:
Error: Error logging into PHPIPAM: Error from API (503): Invalid enc_request

  on phpipam.tf line 1, in provider "phpipam":
   1: provider "phpipam" {

provider "phpipam" {
  app_id   = "test"
  endpoint = "http:/test/api"
  password = "test"
  username = "admin"
  insecure = true
}

Was used option insecure = true for non SSL connection.
For HTTP connection insecure option should not be used.
Example:
provider "phpipam" {
  app_id   = "test"
  endpoint = "http:/test/api"
  password = "test"
  username = "admin"
}

I am close this issue as solved.


Replace Data.FileCache with a plain cache with no watch

Watching for file changes it useless in the current client only setting.
If a server settings is set up, it would be nice to change the filecache package
to work with OS X. That would anyway require changing the APIs because the
underline fsnotify package is using a 'withXXX' pattern.

I don't know if this is a good idea but the point of this PR is to fix #197 (as I have now two interested users on OSX).
I am unsure about https://github.com/bartavelle/filecache/blob/master/Data/FileCache.hs#L75. Is 'id' a way to catch everything else ? Is it useful without the watch ?

id is indeed here to catch all the other exceptions. It sucks that function types do not explain what type of exceptions they can throw, so I do not really know if there are other kind of exceptions (division by 0?).
However, I would rather keep the filecache functionality. Isn't it possible to alter filecache so that it uses polling on non Linux OSes?

I first try to add OS X support in FileCache but as I am saying in the commit message I believe this would require changing the FileCache API. It seems odd that the current FileCache implementation is doing an initINotify without any clean up (providing instead a killFileCache function that is not used in language-puppet). At that point, I thought that it might be a good idea to just use a plain cache because the watching feature is not used today.

Why would another type of cache require an API change?

To be more precise, even if this doesn't look like a big deal. initDaemon would become withDaemon .... because fsnotify works with a withManager ...

Those are details that are hidden by the cache implementation. The cache could run another thread that handles the events (just like the inotify package does as I understand it).

killFileCache calls killINotify.

Yep but where is it called ?

It is not called in the puppet daemon, as it is not (yet) required.

This is for other uses of this library, where you might want to stop watching at some point.

 That's why withManager is provided. It actually seems odd to me that you would initialize with initINotify (as the cache is doing currently) and then don't kill anything because it is not (yet) required ?

But of course we could do the same with fsnotify.  It just seems a bit dangerous to me.

You would need to kill the watch as soon as you want the  "demon thread"  to stop. In a server situation, this means never. In the puppetresources program, this happens when the program stops.
in fsnotify, withManager is just bracket (startManagerConf conf) stopManager.

Apparently the fsnotify package can't just watch a file. This is annoying, but manageable.

When using the puppetresouces programs there is no need to stop the manager or kill inotify as this is kind of happening by the fact the program dies ?

Exactly! Just like you do not need to close open file handles, or free remaining memory, the kernel does that for you.

Ok that's something I was unsure about :-)
It seems possible to watch only one file by just appending the file with '/'. This is what https://hackage.haskell.org/package/spy is doing if I read the code correctly.

I'll try to adapt the filecache

Thanks ;-)

I do not believe it can watch a single file, this throws exceptions :(

I have skimmed this issue https://github.com/haskell-fswatch/hfsnotify/issues/32 and the related https://github.com/haskell-fswatch/hfsnotify/issues/41

I updated the filecache git, but have not really tested it. I updated the test suite though!

Well, if you understand what is going on here, as I have no mac : https://travis-ci.org/bartavelle/filecache/jobs/316932446


请问大家，这个AT指令可以支持 ESP32 S3 吗？

Answers checklist.

[x] I have read the documentation ESP-AT Programming Guide and the issue is not addressed there.
[X] I have used the latest released firmware or have updated my ESP-AT branch (master or release) to the latest version and checked that the issue is present there.
[X] I have searched the issue tracker for a similar issue and not found a similar issue.

General issue report
请问大家，这个AT指令是不是不支持 ESP32 S3 芯片？如果可以的话，请告诉我一下怎么操作。谢谢！

@ChowSings 你好，AT 暂时未支持 ESP32-S3 系列芯片。如果你有项目需求，考虑联系本司商务：
https://www.espressif.com/zh-hans/contact-us/sales-questions
~

Closing due to inactivity. Please feel free to re-open or file a new issue if you have any more questions.


Hyphen in option name is not supported

@click.option('--cov-report')
def pytest(cov_report):
   print(cov_report)

It looks like cov_report in the above example can not be got? Besides, cov-report as function arugment is not legal in Python

Sorry, it is supported. It is error in my program, sorry for the noise again.


libmwaw: 0.3.18 -> 0.3.19

Automatic update generated by nixpkgs-update tools. This update was made based on information from https://repology.org/metapackage/libmwaw/versions.
meta.description for libmwaw is: "Import library for some old mac text documents"
meta.homepage for libmwaw is: ""
meta.changelog for libmwaw is: ""
Updates performed

Version update

To inspect upstream changes
Impact

Checks done (click to expand)

built on NixOS

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

/nix/store/pxw1him1p1zgv4n4vd3scmjhg0l7f7dm-libmwaw-0.3.19/bin/mwawFile passed the binary check.

/nix/store/pxw1him1p1zgv4n4vd3scmjhg0l7f7dm-libmwaw-0.3.19/bin/mwawZip passed the binary check.

/nix/store/pxw1him1p1zgv4n4vd3scmjhg0l7f7dm-libmwaw-0.3.19/bin/mwaw2csv passed the binary check.

/nix/store/pxw1him1p1zgv4n4vd3scmjhg0l7f7dm-libmwaw-0.3.19/bin/mwaw2html passed the binary check.

/nix/store/pxw1him1p1zgv4n4vd3scmjhg0l7f7dm-libmwaw-0.3.19/bin/mwaw2raw passed the binary check.

/nix/store/pxw1him1p1zgv4n4vd3scmjhg0l7f7dm-libmwaw-0.3.19/bin/mwaw2svg passed the binary check.

/nix/store/pxw1him1p1zgv4n4vd3scmjhg0l7f7dm-libmwaw-0.3.19/bin/mwaw2text passed the binary check.

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

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

found 0.3.19 with grep in /nix/store/pxw1him1p1zgv4n4vd3scmjhg0l7f7dm-libmwaw-0.3.19

found 0.3.19 in filename of file in /nix/store/pxw1him1p1zgv4n4vd3scmjhg0l7f7dm-libmwaw-0.3.19

directory tree listing: https://gist.github.com/7de3371dd857274b3326da185d287646

du listing: https://gist.github.com/2a6821f95a6c171f1d9579b5dac079b1

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

32 total rebuild path(s)

10 package rebuild(s)

10 x86_64-linux rebuild(s)
10 i686-linux rebuild(s)
2 x86_64-darwin rebuild(s)
10 aarch64-linux rebuild(s)

First fifty rebuilds by attrpath
libmwaw
libreoffice
libreoffice-fresh
libreoffice-fresh-unwrapped
libreoffice-qt
libreoffice-still
libreoffice-still-unwrapped
libreoffice-unwrapped
odpdown
unoconv

Instructions to test this update (click to expand)

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

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

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/pxw1him1p1zgv4n4vd3scmjhg0l7f7dm-libmwaw-0.3.19
ls -la /nix/store/pxw1him1p1zgv4n4vd3scmjhg0l7f7dm-libmwaw-0.3.19/bin

Pre-merge build results
We have automatically built all packages that will get rebuilt due to
this change.
This gives evidence on whether the upgrade will break dependent packages.
Note sometimes packages show up as failed to build independent of the
change, simply because they are already broken on the target branch.
nixpkgs-review took longer than 45m and timed out

Maintainer pings
cc @7c6f434c for testing.

Result of nixpkgs-review pr 123061 at 777c73d7 run on x86_64-linux 1

1 package marked as broken and skipped:

odpdown

6 packages skipped due to time constraints:

libreoffice (libreoffice-still)
libreoffice-fresh
libreoffice-fresh-unwrapped
libreoffice-qt
libreoffice-unwrapped (libreoffice-still-unwrapped)
unoconv

1 package built successfully:

libmwaw

1 suggestion:

warning: name-and-version
Did you mean to pass pname instead of name to mkDerivation?
Near pkgs/development/libraries/libmwaw/default.nix:19:14:
   |
19 |   inherit (s) name version;
   |              ^

Near pkgs/development/libraries/libmwaw/default.nix:19:14:
   |
19 |   inherit (s) name version;
   |              ^