lz-string for Haxe

Just wanted to let you know I've ported lz-string to Haxe
Find the source here https://github.com/markknol/hx-lzstring
(This allows Haxe developers to use the library in all of Haxe's targets; JavaScript, PHP, C++, Lua, Python, Java, C# and its own interpreter / VM's)

Nice! I'm also curious what the JavaScript version of compiled Haxe lookes like

It will look like this
https://gist.github.com/markknol/1012a7ad76d9cffd363d7c29656e4105
Some notes to understand where you are looking at:

Including the test it is 18kb (Minified this will be ~7kb. gzipped thats ~3kb)
As comparison, the original lz-string.js in this repo is 16kb
Haxe always bundles all code into one file
In my version I changed the dictionaries for a typed Map, which work on all targets, but add some standard library code.
Haxe has a static analyzer that does dead code elimination, so unused functions are stripped. In my example I only use compressFromBase64 and decompressFromBase64, you won't see the compressFromUint8 function for example.

Nice, thanks for the explanation! Surprised Haxe doesn't optimize stuff
like this away though:
dictionary_h[0] = "" + 0;
dictionary_h[1] = "" + 1;
dictionary_h[2] = "" + 2;

On Fri, Apr 12, 2019, 10:46 Mark Knol<EMAIL_ADDRESS>wrote:

It will look like this
https://gist.github.com/markknol/1012a7ad76d9cffd363d7c29656e4105
Some notes to understand where you are looking at:

Including the test it is 18kb (Minified this will be ~7kb. gzipped
thats ~3kb)
As comparison, the original lz-string.js in this repo is 16kb
Haxe always bundles all code into one file
In my version I changed the dictionaries for a typed Map, which work
on all targets, but add some standard library code.
Haxe has a static analyzer that does dead code elimination, so
unused functions are stripped. In my example I only use compressFromBase64
and decompressFromBase64, you won't see the compressFromUint8 function for
example.

—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/pieroxy/lz-string/issues/133#issuecomment-482492429,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAP3AG5L3jTxrG3Ul424tl3JZl8OQPbgks5vgEfbgaJpZM4cpcH-
.

What do you mean with optimize away? It converts ints to string.
This case is actually already quite nice. it unrolls a loop, this is the code I wrote
		for (i in 0...3) {
			dictionary[i] = '$i';
		}

https://github.com/markknol/hx-lzstring/blob/master/src/lzstring/LZString.hx#L337-L339

Well, since these are constants it could have done further strength reduction to:
    var dictionary_h = { };
    /* ... */
    dictionary_h[0] = "0";
    dictionary_h[1] = "1";
    dictionary_h[2] = "2";

And since the full context of that bit of code is:
    var dictionary_h = { };
    /* ... */
    dictionary_h[0] = "" + 0;
    dictionary_h[1] = "" + 1;
    dictionary_h[2] = "" + 2;

Theoretically it could even have reduced it further to:
    var dictionary_h = { 0: 0, 1: 1, 2: 2 };

The last optimization would probably be a difficult pattern for the average compiler to detect, but the first one seems pretty straightforward.

Yes we don't optimize string concat in order to limit the number of strings in the string pool on some targets. We could optimize for JS.


Flickering in Video element when passing canvas stream

Hey, I'm trying to pass the mediastream from canvas to a video element. However, it leads to some weird flickering. I doubt if it's because of some re-renders.
https://github.com/rohg007/JeelizFaceDrawReact/commit/3213a5cf24b5862eaf19dfbb65b397a5f29d14ec
Here's my commit on the JeelizFaceDrawReact example repo demonstrating the same.

Please uncomment enableAsyncReadPixels: false in App.js
Currently async readpixels is enabled by default, so maybe sometimes the canvas frame is read when readpixels is over and then the video image is copied, and sometimes readpixels is still pending and the context fenced and a blank frame is copied.
It fixed the bug on my side.

I uncommented the given flag but the flickering still persists on my end.

You need to uncomment it then reload the page (hot reload does not take account of the change).

Did it work?

Yes, it did work, but I suspect that it still doesn't work for some of the users. Will reopen the issue, as soon as I catch something.


无法评估跟踪结果

我在leaderboard上提交了got10k测试集上的跟踪结果，然而过了20分钟，依然没有任何反馈，包括评估结果或者提交错误。

请问有规定每天提交结果的时间范围吗？或者如果格式错误会有反馈吗？

Hi, we checked your submission, the record file format is however not consistent with our requirements. Bounding box file lines should be "x1, y1, w, h" that values are separated by ",", however your submission is separated by spaces, causing errors in the evaluation.
Please see an example submission in our Submit Instructions page).
One can submit the results at any time, any day, and normally (if no errors) the scores will be updated within 1 minute.

Thank you, after careful comparison, I have successfully evaluated it. There was no error feedback before in the submission. I mistakenly thought that this format could be accepted. I hope that the submission format error can have simple feedback。 Thank you!

@noUmbrella can you tell me how to add filp in atom？ thank you very much

@huanglianghua hello,I also encountered similar problems. My tracking result file kept the same format with siamfc, and the results submitted to siamfc could return the results normally, but there was no feedback on my tracking file submitted. How can I solve this problem？

@huanglianghua I have solved this problem, thank you


[ci] update lockfile

This PR is auto-generated by a nightly GitHub action.  It should automatically be merged if tests pass. If you want to update manually: 1. npm install -g npm-check-updates (first time only) 2. ncu -u 3. npm install

Note that I've been having problem because of https://github.com/sveltejs/kit/issues/6440 - adapter-auto 80 doesnt work on netlify for server side rendered pages


[bug] When switching, it will ask you to switch networks twice

Is there an existing issue for this?

[X] I have searched the existing issues

RainbowKit Version
0.12.5
wagmi Version
0.12.8
Current Behavior
When I change networks, for example from mainnet to polygon, after confirming the change to polygon, metamask activates again and asks to change the network to goerli
Expected Behavior
I hope you don't get a request to change to goerli network, because I didn't ask for it
Steps To Reproduce
Click connect button
import { ConnectButton } from "@rainbow-me/rainbowkit";

function ProfileComponent() {
    return <ConnectButton/>
}

rainbowkit configuration:
import<EMAIL_ADDRESS>
import { getDefaultWallets, RainbowKitProvider } from "@rainbow-me/rainbowkit";
import { configureChains, createClient, WagmiConfig } from "wagmi";
import { mainnet, polygon, optimism, arbitrum, sepolia,goerli } from "wagmi/chains";
import { alchemyProvider } from "wagmi/providers/alchemy";
import { publicProvider } from "wagmi/providers/public";

const { chains, provider } = configureChains(
  [mainnet,polygon,optimism, sepolia],
  [
    publicProvider(),
  ]
);

const { connectors } = getDefaultWallets({
  appName: "My app",
  chains,
});

const wagmiClient = createClient({
  autoConnect: true,
  connectors,
  provider,
});

export { WagmiConfig, RainbowKitProvider, wagmiClient, chains };

last part file:
ReactDOM.createRoot(document.getElementById("root") as HTMLElement).render(
  <React.StrictMode>
      <WagmiConfig client={wagmiClient}>
        <RainbowKitProvider chains={chains}>
          <App />
        </RainbowKitProvider>
      </WagmiConfig>
  </React.StrictMode>
);

Link to Minimal Reproducible Example (CodeSandbox, StackBlitz, etc.)
No response
Anything else?
No response

This appears to be an issue in the 10.28.1 release of MetaMask. I was able to reproduce on Uniswap, and am seeing these console errors. Uniswap uses web3-react so this issue is likely unrelated to RainbowKit/wagmi.
MetaMask - RPC Error: networkConfigurationId [object Object] does not match a configured networkConfiguration
{code: -32603, message: 'networkConfigurationId [object Object] does not match a configured networkConfiguration', data: {
    "code": -32603,
    "message": "networkConfigurationId [object Object] does not match a configured networkConfiguration",
    "data": {
        "originalError": {}
    }
}

@paulflex87 It looks like these issues were fixed with v10.28.2 and v10.28.3. Let me know if you're still bumping into them!


Update/fix several python packages

Description of changes
In this PR I went through a few python packages. I updated/upgraded/fixed them.
Things done

Built on platform(s)

[x] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested, as applicable:

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

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

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

[x] Fits CONTRIBUTING.md.

  Assume -R? [n]
Apply anyway? [n]
Skipping patch.
...skipping...
Reversed (or previously applied) patch detected!  Assume -R? [n]
Apply anyway? [n]
Skipping patch.
1 out of 1 hunk ignored -- saving rejects to file src/transformers/models/vision_encode>
patching file src/transformers/models/whisper/modeling_flax_whisper.py
Reversed (or previously applied) patch detected!  Assume -R? [n]
Apply anyway? [n]
Skipping patch.
1 out of 1 hunk ignored -- saving rejects to file src/transformers/models/whisper/model>
patching file src/transformers/models/xglm/modeling_flax_xglm.py
Reversed (or previously applied) patch detected!  Assume -R? [n]
Apply anyway? [n]
Skipping patch.
1 out of 1 hunk ignored -- saving rejects to file src/transformers/models/xglm/modeling>
patching file src/transformers/models/xlm_roberta/modeling_flax_xlm_roberta.py
Reversed (or previously applied) patch detected!  Assume -R? [n]
Apply anyway? [n]
Skipping patch.
1 out of 1 hunk ignored -- saving rejects to file src/transformers/models/xlm_roberta/m>
patching file templates/adding_a_new_model/cookiecutter-template-{{cookiecutter.modelna>
Reversed (or previously applied) patch detected!  Assume -R? [n]
Apply anyway? [n]
Skipping patch.

Maybe it's just a matter of rebasing ?

Not relevant anymore.

@GaetanLepage  python3Packages.dalle-mini is still broken on master, can you elaborate why this PR not relevant anymore ?

@GaetanLepage python3Packages.dalle-mini is still broken on master, can you elaborate why this PR not relevant anymore ?

Yes, the problem is that this PR was a mess (it included at first a lot of packages).
I made a separate PR to address dalle-mini: #266430
I am also investigating the problem with distrax.

@GaetanLepage please feel free to ping me. I am happy to be pinged, and will let you know If i cant help with particular PR


[FR] - Edit nested metadata

    I've tried the version that implemented this issue and I can't understand what was really done.

The 2.6.7 release section says "Frontmatter editions now respect nested metadata". This means that nested metadata won't be messed up by the plugin or nested metadata will be supported by the plugin?
Because I thought the @kvietcong possible solution was accepted and implemented, where:
level1:
  level2:

would be considered as level1.level2 as the name field by the plugin.
When I create a field separating field levels by dot, the DB turns empty (error).
When I try to create a field that already exists in DB , only the level1 can be added
and the data is shown as json in DB: .
If this data is edited by plugin, the nested metadata in YAML will be messed up:
.
Is there another issue related to what I've described above?
Originally posted by @www-wagner in https://github.com/RafaelGB/obsidian-db-folder/issues/194#issuecomment-1261082733

I too thought we were getting this as part of #194

Support the edition could be much more complex. With https://github.com/RafaelGB/obsidian-db-folder/issues/194 atleast we do not break your yamls

First steps to allow objects on text column, stringinfy and parsing with JSON function.
https://user-images.githubusercontent.com/11924043/193642321-4937d161-0de2-4849-bf73-727fac573c75.mov
Advantages:

Edition of an object in any level of the tree
improvement to formulas. Now you can access all your nested metadata inside the formula function (I.E.: ${row.first.nestedSecond.third[0]} will return 1 in our video example)

The idea will be just render the deserved using a new config column. indicate your nested metadata: "first.second.third" to configure some tags for example [1,2,3] and adding 4. Then the entire object will be saved with the changes

Are you planning to separate tree items in different fields in the UI table?
In your example, the table would contain the following columns:

first.second: Text type
first.nestedSecond.third: List type
first.nestedSecond.anotherNested.testing1: Text type
and so on...

I guess the UI would be much more user friendly.
Or this would be so complex?

as we said, you can use formulas for it. So if you want multiple fields of the same tree you can create different formulas calling row.first.(whatever you want)

A column cant contain dots so your  label has to be another one. The property will be another

There are two new configurations (currently just for text). The first will enable the nested behaviour. The second one will modify the actual id of your column for a nested one separated by commas.
Read and write its working correctly! The next step will be allow multiple fields of the same nested column. I am keeping working on it. It will takes time.
Problems to resolve

[ ] modify label of the column that only affects the nested one
[ ] allow multiple fields for the same column
[ ] enable the nested behaviour for the rest of the types

https://user-images.githubusercontent.com/11924043/194858306-340ddfd1-919a-46bf-a778-1d1d38a0bc50.mov

due to the release of version 1.0.0 of Obsidian I am going to release a new minor version with everything developed at the moment and I will keep track of the improvements in another branch
pending issues:

[ ] re render animated values correctly once a parent one is edited
[ ] Better control of edit the parent key for multiple values if one is changed


fix(Deps): added tslib as dependency

Please describe the changes this PR makes and why it should be merged:
Fixes the Error: Cannot find module 'tslib' runtime error.
Status and versioning classification:

Code changes have been tested against the Discord API, or there are no code changes

Codecov Report

Merging #2 (bb49a4b) into main (085616e) will not change coverage.
The diff coverage is n/a.

@@            Coverage Diff            @@
##              main        #2   +/-   ##
=========================================
  Coverage   100.00%   100.00%
=========================================
  Files            1         1
  Lines           12        12
  Branches         4         4
=========================================
  Hits            12        12

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 085616e...bb49a4b. Read the comment docs.


Open ended dependencies

Would be cool if we could check for open ended dependencies like the Forge does for the scoring.

Should be implemented with #9

I have the same issue as reported here: https://github.com/dfarrell07/puppet-opendaylight/issues/18
" Dependency vcsrepo has an open ended dependency version requirement >= 1.0.0"
  "dependencies": [
    { "name":"vcsrepo", "version_requirement":">= 1.0.0" }
  ]

I rolled back #9. Sorry @electrical it created a bunch of problems. We really need puppetlabs to release the semantic lib as a gem.


Multi threaded access issue with functions in karate-base

This was a thought one to reproduce... I'll check in a scenario to reproduce soon.
Basically I get the Graal Multi threaded access requested by thread Thread[pool-1-thread-1,5,main] but is not allowed for language(s) js. in the following conditions:

A karate-base.js file exists and calls a "reusable" Feature file where a JS function is defined;
You are executing at least two dynamic Feature files;
You are running tests in parallel (Runner.parallel(2) or higher)
Calling the function from within the Feature files is irrelevant - Features that do no access that function still create this problem

Having the exact same "reusable" Feature file from karate-config.js and the above scenario (or use the function etc) does not reproduce this issue so it indicates to me something to do with the processing of karate-base which is different from karate-config. Maybe some missing re-hydrate variables etc.

@ptrthomas see https://github.com/intuit/karate/pull/1484
Was trying today with the attach/detach and it's that painful Graal limitation. Happens when reattaching the vars into the karate-config.js execution however I think it only happens in the second execution of the Scenario Outline. There must be a solution

I'm stopping for today but have some progress. Changing the line below fixes this particular issue as the Type of Value (JS_FUNCTION) is retained thus the dettach/attach feature works.

It does break a bunch of other tests which are mostly to see the results as JSON. E.g. below for reference of what breaks:
  $ | not equal | actual has 1 more key(s) than expected - {"baseHelper":"[type: MAP, value: {doSomething=[type: JS_FUNCTION, value: function(data) {\n  data.forEach(\n    function(elem) {\n      elem.newKey = 'newValue'\n    }\n  )\n  return data\n}]}]"} (MAP:MAP)
  {"configSource":"[type: STRING, value: normal]","baseHelper":"[type: MAP, value: {doSomething=[type: JS_FUNCTION, value: function(data) {\n  data.forEach(\n    function(elem) {\n      elem.newKey = 'newValue'\n    }\n  )\n  return data\n}]}]"}
  {"configSource":"normal"}

It makes me wonder whether for the inner processing of Karate we should store a second variable in FeatureRuntime where we keep the type of the Variable and in ScenarioEngine:1930 we return that to the caller Feature. I'd say leave the current results property untouched as it's used in a lot of places and potentially used by the matches etc so seems like too big of a refactor to try to change that instead.

@joelpramos finally took a look. I think this was related to callonce also. anyway please do confirm it works fine for you now

@ptrthomas fix is working. Opened a new PR with cleaned up unit tests for this issue: https://github.com/intuit/karate/pull/1496

awesome. I'll close this as this relates to an "in-development" version


Typo in Python demonstration on the web

URL: https://numba.pydata.org/
Replace line from numba import jit with from numba import njit.
from numba import njit
import random

@njit
def monte_carlo_pi(nsamples):
    acc = 0
    for i in range(nsamples):
        x = random.random()
        y = random.random()
        if (x ** 2 + y ** 2) < 1.0:
            acc += 1
    return 4.0 * acc / nsamples

Thanks for the report. That does indeed look like a typo!

duplicate of https://github.com/numba/numba.github.com/issues/8

fix is here: https://github.com/numba/numba.github.com/pull/9

Fix is merged.


Relabel GO:0022605 "Mammalian oogenesis stage"

The child terms are specific to mammals, and all experimental annotations are to mammalian gene products.

lots of non-mammal experimental annots:
http://amigo.geneontology.org/amigo/term/GO:0048477

That link is to the wrong GO term.  Try GO:0022605 instead.

oh right yes I see. I agree, needs renamed.
additional notes:
It looks like we have 3 experimental direct annotations onto stages - I think stages should not be annotated directly? We have that rule for cell cycle stages.
There is an argument for moving all anatomical structure specific stages out of GO. We already manage whole-organism life cycle stages in separate ontologies.

We can rename it as long as we don't think we will never add other children that aren't mammalian. Although these are named stages, according to what biologists call them, I think they actually refer to processes that make up oogenesis. So in this case, oogenesis stage is actually oogenesis part, but no one would ever search on that.


fix(cast): Harden cast send and provide more accurate error messages

Motivation
Closes #4831.
cast send right now assumes that if a signer can't be constructed, it must fall back to eth_sendTransaction in all cases. This is not exactly true, and will result in misleading error messages depending on the combination of flags passed in for the wanted signing method. Particular highlights were:

If a path to a folder that contains a keystore was passed in, it would try and walk the directory to try and find it. However, keystores no longer contain the address field that was being used to identify the correct keystore, so they were never found. This caused cast send to fall back to eth_sendTransaction hoping the remote RPC had the unlocked account to sign the tx.
If the ledger option was passed in but the ledger was not available or connected, cast send would again fall back to eth_sendTransaction. This would happen similarly with other available local signing methods.
If a --from address is passed in and no other information is provided, cast send would again fall back to eth_sendTransaction. This is actually "correct" behavior, but the user is kept in the dark as to why this is and is not given enough context.

Solution
The send command was lightly refactored and commented for future reference. The main changes are:

Defaulting to eth_sendTransaction is now only possible by passing the --unlocked flag, matching forge script's behavior. This flag also requires the --from flag to be passed, to ensure enough information is passed in by the user.
If not defaulting to eth_sendTransaction, we must now be able to construct a signer with the flags passed in, or we will bail and inform the user something is wrong.
THIS BREAKS COMPATIBILITY WITH DAPPTOOLS: We now don't walk directories looking for keystores if only a directory is passed in with the --keystore flag, and instead bail and tell the user to provide the keystore file directly. This is because keystores are no longer generated with the address inside of them. (This is a big discussion point, and while I favor being more strict, we could also try and decrypt all the keystores found and use the first one to succeed, but this has edge cases that could lead to bad scenarios).
If a ledger is not available for whatever reason, instead of defaulting to eth_sendTransaction, we bail and inform the user that they must only have the ledger unlocked and connected with no other conflicting wallet apps open.

EDIT: @DaniPopes @0xMelkor can't seem to be able to add you as reviewers, but as always, feel free to review!
TODO: fix tests pending discussion

EDIT: @DaniPopes @0xMelkor can't seem to be able to add you as reviewers, but as always, feel free to review!

On it


Prompt tokens are not subtracted

See:
https://platform.openai.com/docs/api-reference/chat/create#chat/create-max_tokens

Please provide more details, I don't know what is the issue here

The prompt counts toward the token limit. If you set the token limit to 4096 it breaks for any prompt.


--vars-env is not working and -vars-file not working well with the multiline variable

om version: 0.47.0
PCF version: 2.3.4
I have few problems with the new version of om.

As per the documentation, I should be able to use --vars-env but it looks like not working. I am running something like this
Code:

export OM_VAR_POE_SSL_CERT1="$POE_SSL_CERT1"
export OM_VAR_POE_SSL_KEY1="$POE_SSL_KEY1"
export OM_VAR_ROUTER_TLS_CIPHERS="$ROUTER_TLS_CIPHERS"

om \
  --target https://$OPSMAN_DOMAIN_OR_IP_ADDRESS \
  --username "$OPSMAN_USERNAME" \
  --password "$OPSMAN_PASSWORD" \
  --skip-ssl-validation \
  configure-product \
  --config pcf-pipelines/tasks/configure-isolation-segments/config.yml \
  --vars-env OM_VAR

Actual Result:
configuring product...
could not execute "configure-product": Expected to find variables:
OM_VAR_POE_SSL_CERT1
OM_VAR_POE_SSL_KEY1
OM_VAR_ROUTER_TLS_CIPHERS

I still managed to get pass by putting all the variables in a file and using --vars-file to point to it. But it has problem with the multiline string
Code:

om \
  --target https://$OPSMAN_DOMAIN_OR_IP_ADDRESS \
  --username "$OPSMAN_USERNAME" \
  --password "$OPSMAN_PASSWORD" \
  --skip-ssl-validation \
  configure-product \
  --config pcf-pipelines/tasks/configure-isolation-segments/config.yml \
  --vars-file varfile.yml

Var File:
OM_VAR_POE_SSL_CERT1: |-
  -----BEGIN CERTIFICATE-----
  *********
  *********
  -----END CERTIFICATE-----
OM_VAR_POE_SSL_KEY1: |-
  -----BEGIN RSA PRIVATE KEY-----
  *********
  *********
  -----END RSA PRIVATE KEY-----
OM_VAR_ROUTER_TLS_CIPHERS: TLS_RSA_WITH_AES_256_GCM_SHA384:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384

Actual Result:
/tmp/build/57f050bd
configuring product...
setting up network
finished setting up network
setting properties
could not execute "configure-product": failed to configure product: request failed: unexpected response:
HTTP/1.1 422 Unprocessable Entity
Transfer-Encoding: chunked
Cache-Control: no-cache, no-store
Connection: keep-alive
Content-Type: application/json; charset=utf-8
Date: Wed, 12 Dec 2018 15:59:34 GMT
Expires: Fri, 01 Jan 1990 00:00:00 GMT
Pragma: no-cache
Server: nginx/1.10.3 (Ubuntu)
Strict-Transport-Security: max-age=15552000; includeSubDomains
X-Content-Type-Options: nosniff
X-Frame-Options: SAMEORIGIN
X-Request-Id: 28cbbe0a-590e-414c-a33c-5a8893e73e65
X-Runtime: 0.102198
X-Xss-Protection: 1; mode=block

58
{"errors":{".properties.networking_poe_ssl_certs":["Record 1: Certificate is invalid"]}}
0

Note: The same certificate and key were working well with the earlier version of om

@gopisaba the error message in you "Acutal Result" showed us that we may need to document this feature a bit better.
When defined the environment variable.
export OM_VAR_hello="World"

Its usage with --vars-env OM_VAR the parameter should not include the prefix in the YAML file. For example,
hello: ((hello)) # don't use ((OM_VAR_hello))

It would help to have a better errors message, when using --vars-env to say we found OM_VAR_* but they were unused.
Let us know if that works for you,.

@jtarchie - Thanks for the help. That worked.
I was using OM_VAR_hello in the YAML file.


Feature/bump librarian puppet version

This should resolve the issue reported in #27

While this does resolve the problem I reported in #27, and passes the bundle exec vagrant up sanity check, it appears to be incompatible with vagrant 1.7.2.
[master] ~/github/vagrant-librarian-puppet $ /usr/bin/vagrant plugin install pkg/vagrant-librarian-puppet-0.8.0.gem
Installing the 'pkg/vagrant-librarian-puppet-0.8.0.gem' plugin. This can take a few minutes...
The plugin(s) can't be installed due to the version conflicts below.
This means that the plugins depend on a library version that conflicts
with other plugins or Vagrant itself, creating an impossible situation
where Vagrant wouldn't be able to load the plugins.

You can fix the issue by either removing a conflicting plugin or
by contacting a plugin author to see if they can address the conflict.

Vagrant could not find compatible versions for gem "i18n":
  In Gemfile:
    vagrant-librarian-puppet (= 0.8.0) ruby depends on
      librarian-puppet (~> 2.0.1) ruby depends on
        puppet_forge (>= 0) ruby depends on
          her (~> 0.6) ruby depends on
            activemodel (<= 4.2, >= 3.0.0) ruby depends on
              activesupport (= 4.2.0) ruby depends on
                i18n (~> 0.7) ruby

    vagrant (= 1.7.2) ruby depends on
      i18n (0.6.11)

Any ideas?

I've repushed with a kludge to get this to work with vagrant 1.7.2.  The best I could come up with is setting a a dep on the her gem < 0.7.3.

This patch helps alot.
:+1: for merging


fix: Fixed Button Color

Fixes #1435
Changes: Changed Button to Material Component Button.
Issue is fixed.
Screenshots for the change:
Before:

After:

We want a borderless button, like it was

@iamareebjamal
New Looks:


Context menu

Hi I look through the utils components, I'm looking to add context menu which is just AntdMenu where the mouse right-clicks?
To do that, I would implement a FefferyDiv with enableListenContextMenu=True and FefferyMousePosition to get position of the menu right? can you make a simple example and put it on fuc.feffery.tech that would be very useful.

@DarkCTO Please refer to: https://fac.feffery.tech/AntdDropdown#自由位置模式 , remember to upgrade fac to 0.2.6 first.

Thanks. This should work.
I'm implementing this on AntdTree, glad context menu is supported on AntdTree.

Thanks. This should work. I'm implementing this on AntdTree, glad context menu is supported on AntdTree.

Right, new feature from fac 0.2.6 🥳.


„Not supported“ Info in Home App when using Doorbell

Hello,
I tried setting up a ESP32 as a combined doorbell and door opener (Bridge with Switch Service and Doorbell service) but im getting an information in the home app that the doorbell is not supported.
(The Switch works fine)
Is there something I can do about it to have a working Homekit Doorbell with homepod ringtone support?

I just tried this myself and can confirm that the Home App seems to no longer support the Doorbell Service.   Unfortunately Apple continues to make changes to HomeKit but does not publish any changes to the specs.  The HAP-R2 document was last updated in 2019, and both the Apple and Espressif HomeKit SDKs are built off that spec.   As an aside, I am trying to compile a list of all changes in HAP-R2 (by experimentation) and will publish them on the HomeSpan site in the coming weeks.
That said, you should be able to create a HomeKit Doorbell by using the Service::StatelessProgrammableSwitch instead of Service::Doorbell.  Both use the ProgrammableSwitchEvent

Thanks for the fast response!
I switched to the following setup:
Bridge with SwitchService (that triggers a relay and opens my door) and StatelessProgrammableSwitch that detects when a pin is grounded (eg from a button or relay) and everything works as expected. But sadly not very reliably: After a certain amount of time (20min to an hour) the device is not responsible anymore and only recovers after a reset. I tried to reproduce it with a Serial Monitor connected but I did not get any error messages: in fact no output at all.
Do you have an idea what could be the error?
I can comment with my code if that helps.

Does the device become fully non-responsive.  For example, if you type 's' into the Serial Monitor does it output the status of connections, or is the whole thing frozen?  Also, what version of HomeSpan and what version of the Arduino-ESP libraries are you using?

I haven't tried the CLI when frozen yet, but sometimes it keeps responsive longer (multiple hours) and sometimes less long.
Im using the current 1.5.0 via PlatformIO and I am using an AZ-Delivery ESP32 D1 Mini because the ESP32 replaces an existing D1 Mini Project.
I am using no other library other than HomeSpan.

There are some issues with regard to MDNS in the Arduino-ESP32 board managers that were solved more recently in version 2.0.2 which caused connectivity problems.  When you first start the script, what version of the ESP32 library does HomeSpan report to the CLI?

In PlatformIO it shows Version 3.5.0

That's probably the version number of the underlying ESP32 IDF, in which case you are using older version 3 (I think 3.5.0 may have been the last update of version 3).  If possible, you should switch to the latest ESP32 IDF which is 4.4.   However, this assumes that the problem is indeed related to MDNS connectivity.  Have you been able to check that typing 's' into the CLI after the system hangs provided the expected response?  If the whole device is frozen that suggests a memory leak in your sketch somewhere.

Just got the versions from HomeSpan start:
Arduino-ESP Ver.: 1.0.6
ESP-IDF Version:  3.3.5
ESP32 Chip:       ESP32-D0WDQ6 Rev 1 dual-core 4MB Flash
ESP32 Board:      d1_mini32

So I need to find out how to update the ESP-IDF... PlatformIO apparently provides a layered board-manager solution which is updated much later than the original... 3.5.0 is the most current there.

After (hopefully) updating the framework-arduinoespressif32 I'm getting this error from Settings.h in HomeSpan src:

This is usually a problem with the Platform IO update.  Others have reported the same issue and solved by deleting previous ESP32 installs and starting from a fresh import of the ESP32 libraries.  I don't have Platform IO and unfortunately can't test directly.  The file "core_version.h" is definitely in the ESP32 library.

I have now reinstalled everything PlatformIO ESP32 related. When Building it shows that it uses the most current 2.0.3 of the framework-arduinoespressif32 package. Only then the error above occurs. When using the default framework-arduinoespressif32 version for the most current version of platformios ESP-32 platform version (2.0.0) everything compiles correctly.

The latest production version is 2.0.2 (recommended).  Version 2.0.3 is still in beta from Espressif.  That version is supposed to support ESP32-S3 chips.

Is the 2.0.2 link I commented wrong and a pre release? since I tried it with excactly that release-commit.

That is the correct release.  However, I generally install using the Board Manager in the Arduino IDE.  I've not tried to install directly from that link.

Which version does the ArduinoIDE Board Manager display for your esp32 boards?
1.0.6 is the most current if I add the boards via _https://dl.espressif.com/dl/package_esp32_index.json_

Phew Okay theres something strange with the Arduino ESP32 Github releases.
When I download the Source code (ZIP) (just like PlatformIO would) the package does not include the core_version.h file.
When I download the esp32-2.0.2.zip listed along the Source Code ZIP (This is the one ArduinoIDE uses) the core_version.h file is included but a file necessary for PlatformIO (package.json) is not included in that ZIP.
So I will now try to Frankenstein the two ZIP releases and try to use it with PlatformIO.

I use https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_index.json.
Also, I think I see the discrepancy on the ESP32 Github web site.  If you download the zip file of 2.0.2 under the releases page, the core_version.h file is missing.  But if you download the master branch from the main page, the file is indeed present.

I use https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_index.json.
Also, I think I see the discrepancy on the ESP32 Github web site. If you download the zip file of 2.0.2 under the releases page, the core_version.h file is missing. But if you download the master branch from the main page, the file is indeed present.

I think we found the same issue 😅

Looks like our messages crossed!  Not sure why core_version.h only shows up in some packages, but I did notice there is a similar file with a different name that contains version numbers.  I will explore and if it is present in all packages will use that instead of core_version.h in an upcoming HomeSpan release (v1.5.1 - hopefully within the next week or so).

Great! Thanks for your feedback.
For now everything seems to work when I just copy the core_version.h file to the current github version.
HomeSpan now reports:
HomeSpan Version: 1.5.0
Arduino-ESP Ver.: 2.0.2
ESP-IDF Version:  4.4.0

And now HomeSpan reports
Starting HAP Server on port 80 supporting 13 simultaneous HomeKit Controller Connections...
instead of 7 simultaneous connections!
Thanks again for your help!
I really love the possibilities of your library!


Revise CONTRIBUTING

These are changes I think belong in CONTRIBUTING. Let's have a discussion. There are some policy changes in here (two reviewers for all PRs) and some long-practiced-but-newly-stated polices added. I appreciate critique from a technical writing perspective as well.

will merge this today; if anyone has any issues with it, please open a new issue or PR with your desired changes


The input fields in the “Register Here” and “Keep In Touch”sections does not have any format validation.

Description:
When the user fill out the inputs the application does not validate if the introduced data has the correct format for the field.
-Env:
Device: Android 7.1.1
Google Chrome Version 55.0.2883.79
Mozilla Firefox 53.0.2
Device: Iphone 7
Google Chrome Version <IP_ADDRESS>.113
Safari IOS 10.3
STEPS:
Steps

Open the Crafter studio with the Event site.
Go to the “Register” section.
3 Fill out the fields with the next text.
First name: leave in blank
Last Name: leave in blank
Phone Number: leave in blank
Email: juan.com
4.Click on the Register Button.

*Same test for the “Keep In Touch” section.
CURRENT RESULT:
The application allows the user to registered successfully by displaying a “Your request has been processed correctly.” message, although some fields are with no data and the email has an incorrect format.
EXPECTED RESULT:
The application should not allow the user to register, unless all the fields are filled out and have the correct format.

Fixed

Bug verified and closed as fixed in build b0bc526.


[FileExplorerPreview] Move everything from WebBrowser to WebView2

Summary of the Pull Request
FIXED: Why WIP? Same issue as with Monaco, can't test it properly because of all of the async stuff going on while initializing WebView environment. Looking into this...
What is this about:
OPEN QUESTIONS:

Do we want context menu? EDIT: Context menu disabled

WebView allows opening link in the Preview Pane. I guess we don't want that, I just need to find a way to disable it.
@Aaron-Junker Do you know how to do this? EDIT: Links are now opened in default browser

What is included in the PR:
How does someone test / validate:

Build installer
Confirm that all p preview and thumbnail handlers works correctly

Quality Checklist

[ ] Linked issue: #xxx
[ ] Communication: I've discussed this with core contributors in the issue.
[ ] Tests: Added/updated and all pass
[ ] Installer: Added/updated and all pass
[ ] Localization: All end user facing strings can be localized
[ ] Docs: Added/ updated
[ ] Binaries: Any new files are added to WXS / YML

[ ] No new binaries
[ ] YML for signing for new binaries
[ ] WXS for installer for new binaries

Contributor License Agreement (CLA)
A CLA must be signed. If not, go over here and sign the CLA.

OPEN QUESTIONS:

Do we want context menu?

I think if we want one we should create our own because of elemts like back and forward and inspect which we don't want

WebView allows opening link in the Preview Pane. I guess we don't want that, I just need to find a way to disable it.
@Aaron-Junker Do you know how to do this?

My suggestion would be to execute JavaScript from the C# code (https://docs.microsoft.com/en-us/microsoft-edge/webview2/how-to/javascript) which adds a <base target="_blank" /> tag. This should open the links in a new window.

I disabled context menu for now, as it didn't exist previously.
Also links are now opened in default browser.

This should be fully ready for review now. Tests are fixed.
@Aaron-Junker Are willing to check what I did with tests and add tests for Monaco in the same fashion? (e.g. in MarkdownPreviewHandlerUnitTests)

This should be fully ready for review now. Tests are fixed.
@Aaron-Junker Are willing to check what I did with tests and add tests for Monaco in the same fashion? (e.g. in MarkdownPreviewHandlerUnitTests)

Maybe I can do this this week(end). Do you want it in this PR?

Maybe I can do this this week(end). Do you want it in this PR?

Great, thanks! If this doesn't get merged until then, then you can add it to this PR.

This issue can be linked: https://github.com/microsoft/PowerToys/issues/15764

Actually, https://github.com/microsoft/PowerToys/issues/17527 is not fixed by this, my bad.

Actually, #17527 is not fixed by this, my bad.

removed

Ok I guess then I make my own PR.

@stefansjfw When I do it. Is it ok to just commit against your branch?

@Aaron-Junker , let's make that a separate PR ;)
Thank you

using Blink is a terrible idea due to text rendering and image scaling issues

take a look at this comparison, upper one is rendered by Blink and is barely readable while the lower one is rendered using the default preview and looks much better


S3 to Kafka

Any documented approach for getting the dumps from S3 back onto a fresh kafka?

@imduffy15 This is a S3 sink connector, which means means only Kafka to S3. You would need to use a S3 source connector to get data from S3 to Kafka.


Add tk

Add the Tk GUI library.

Thanks!

(Btw, you're missing a repository field in your Cargo.toml, which also means that AreWeGuiYet doesn't know how to link to https://github.com/oooutlk/tcltk).


resolve() works incorrectly under windows

Describe the bug
I have directory D:\work, that is symbolic link to the directory D:\gdrive.
I start vim in D:\work and open some file from this dir, for example, :e TODO.txt.
If I exec :echo resolve(expand('%:p')) it returns C:\gdrive\TODO.txt.
This is incorrect, because it should return D:\gdrive\TODO.txt.
To Reproduce
mkdir d:\111
mklink /D "d:\222" "d:\111" (need to run from Administrator)
cd /D "d:\222"
touch 1.txt (or create d:\222\1.txt somehow, if you don't have touch command)
vim 1.txt
:echo resolve(expand('%:p'))
Expected behavior
It should return d:\111\1.txt, but it returns c:\111\1.txt. Drive letter is incorrect.
Environment (please complete the following information):

Vim version 8.1.1670;
OS: Windows 10;
GUI;

Just for reference: according to https://github.com/mhinz/vim-signify/issues/299, this was caused by patch v8.1.1417

Couldn't reproduce on Windows 10 1803. It returns D:\111\1.txt.
@mattn Any comments?

I could not reproduce this on Windows 7.

Couldn't reproduce on Windows 10 1803. It returns D:\111\1.txt

Same for me using Win 10 1803 and vim_8.1.1705_x64

Hmm, for me it works incorrectly.
My vimrc is located on c:, maybe this cause the problem?
I will try.

Ah, when I assign a drive letter to a directory with the subst command, resolve() also resolves the subst drive.
C:\>md 000
C:\>subst f: 000
C:\>f:
F:\>md tmp
F:\>mklink /j link tmp
F:\>vim
:echo resolve('link')
C:\000\tmp          " Doesn't return F:\tmp

Not sure if this is the same case with you. Is your D: drive something special?

No, just a standard partition.

I just tested with the empty vimrc - still not working, so the problem not in the configuration.
My C: and D: drives - simple partitions.

so what windows version is this?

latest windows 10 Pro 1903 x64 with the all updates installed.

Could you please show me BEFORE and AFTER?
:echo expand('%:p')
:echo resolve(expand('%:p'))

before: d:\222\1.txt
after: C:\111\1.txt

windows resolves link correctly:
dir /A

01.07.2019  11:21    <DIR>          $RECYCLE.BIN
17.07.2019  12:23    <DIR>          111
17.07.2019  12:20    <SYMLINKD>     222 [d:\111]
....

I tried this on Windows 10 too. But could not reproduce.

I am building vim manually under msys2 environment. Can this be a build issue?
Could someone provide latest vim exe for test on my side?

Ok, I already tested with the vim from here https://github.com/vim/vim-win32-installer/releases
Issue still present

Is it possible to debug it on my computer?

you possible need to compile your own version and debug the issue using a debugger (depends on how you compile your version).

I don;t have required skills to debug binary code.

Maybe it is possible to create custom build, that will write debug log?

listvol.zip
Could you execute listvol.exe from the Command Prompt, and paste the result here?

I have no such command.
'listvol' is not recognized as an internal or external command,
operable program or batch file.

Download the zip file from my previous comment.

d:\downloads>.\listvol.exe
\\?\Volume{8ab503a4-7948-4481-bf50-64fdd2961ce7}\: : 0xa0e61476
\\?\Volume{1341d48d-37fd-4a18-9842-9de6bfb44134}\: C:\: 0x12345678
\\?\Volume{1981d456-a904-4e52-a2a4-29dec5b9a494}\: D:\: 0x12345678
\\?\Volume{346c1185-010e-4c74-81b1-b15d4cc6b2a9}\: : 0xd2e76bef
\\?\Volume{025af2ff-b9a3-11e8-b667-34415dcc2aaa}\: S:\: 0x12345678

Hmm, it's very strange that C:, D: and S: drives have the same volume serial number 0x12345678.

I set it manually, it was required by some software.

How is basInterval calculated?

That's the reason why resolve() returns the incorrect drive. resolve()'s processing depends on the volume serial numbers.

hmm, it shouldn't depent on serial numbers, they means nothing and windows don;t guarantee, that they will be different.

disagree

Duplicate Volume Serial Numbers
Since volume serial numbers are not generated at random and without knowledge of the volume serial numbers on other drives in the computer, there's a chance that two drives on the same computer could end up having the same volume serial number.

Well yes, but https://www.lifewire.com/volume-serial-number-2626046 mentions those should be unique. Also it explicitly says:

While the probability of two drives in a single computer getting the same volume serial number is
technically possible, the chance is infinitesimally small and isn't usually a concern.

Not saying it shouldn't be fixed (if we can), but this is a useful information you should have given us earlier.

VSN can be changed by user or by the third party software, like in my case, so it is bad point for using in resolve(). From this point of view - volume letter, for example, is much better, because it is 100% unique under windows.

How about this patch?
https://gist.github.com/k-takata/52d0a677ca9a27bdbaed21d77533244e
This uses GetFinalPathNameByHandleW instead of GetFileInformationByHandleEx, GetVolumeInformationByHandleW and other volume APIs. This makes the implementation simpler. Now, this doesn't use volume serial numbers to retrieve the drive name. (However, it might fail if it uses volume serial numbers internally.)

I noticed that the current implementation doesn't resolve a symlink to a network path. (E.g. link to \\server\share\foo.txt
My above patch also fixes this problem.

@zdm Have you tried the above patch?
Can you compile Vim by yourself?
@mattn Could you also check if this works on Windows 7?

I tested patch, it works.
Not tested with the links to network path.

@k-takata I will check this in monday.

I checked this on Windows7. Seems works fine for me. (Sorry, I can not check with same volume serial number)

Thank you.
@brammool
I think that my patch is ready to be merged.


[BUG] wadm spreadscaler requirements don't work as numbers

I defined a spreadscaler requirement as a number, like below.
        spread:
          - name: myspread
            weight: 100
            requirements:
              host_number: 0

Unfortunately, it seems we can parse that number as a JSON value that's not a string, so even though my host had the label host_number=0 it did not match the scaler property. The fix was as follows:
        spread:
          - name: myspread
            weight: 100
            requirements:
              host_number: "0"

Because host labels are always interpreted as string:string maps, we should either enforce that in our parsing of the manifest or parse host labels as JSON values. I think the better solution is to keep it simple and parse spread key/value requirements as strings, but am open to other opinions as well.

Additionally, as just tested, this doesn't work with booleans either. It has to be a String.
I think it would be better to allow people to put in normal YAML values and just convert it on the wadm side.

closed in favor of the larger validation story in #122


Styling of sticky

I'm submitting a feature request
Code Sandbox
So currently if I pass any additional styling to {style} it updates the style if the container even when it's not sticky. Is there a way to change the style of a component only when it sticks?
And another thing related to this would be how to use to  in the same  side by side. I've tried and one overlaps another one.

It would be great to apply certain styles depending on if the item is sticky or not. Or at least the ability to toggle a CSS class.

Hi @judygab,
I was able to do this with a CSS class by using the built-in isSticky property. Example:
                    <Sticky>                         {({ style, isSticky }) => (
                                 {banner}                                 <ProfileHeader user={this.props.user} />                                 <JumpNav links={jumpLinks} />

                         )}                     </Sticky>
Then your CSS class would be something like...
.is-sticky {background: red;} .not-sticky {background: blue;}


GPU process isn't usable. Goodbye.

Green tunnel does not launch, neither from cli or gui, cli gives this error:
[3919257:0722/180911.448140:FATAL:gpu_data_manager_impl_private.cc(439)] GPU process isn't usable. Goodbye.
Trace/breakpoint trap (core dumped)
OS:pop!_os

hi, same problem on ubuntu 22.04.1, GNOME 42.4

Launch the app using green-tunnel --no-sandbox from your terminal

Fixed by running the command provided by slientninja green-tunnel --no-sandbox


Rename lock files to correct name to match cabal definition

@markhibberd @olorin @jystic
Mafia will use the cabal project name to find lock files by default, in this case ambiata-tinfoil

👍 on 🍏

👍

:+1:, but please be careful making changes here - see https://github.com/ambiata/tinfoil/pull/41#issuecomment-224188899 for the reasoning for the double-signoff requirement in the readme.

@olorin maybe this should be locked down like butter?

@olorin maybe this should be locked down like butter?

Yeah agreed, if we keep the policy it'd be good to have a technical reminder behind it, too easy for people to overlook otherwise. Not critical in the same way ops repos are, but still useful (I think @markhibberd had a plan to do this at some point).


Document how to publish to TestPyPI

Closes https://github.com/takluyver/flit/issues/122

Codecov Report

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

@@           Coverage Diff           @@
##           master     #123   +/-   ##
=======================================
  Coverage   77.85%   77.85%
=======================================
  Files          19       19
  Lines        1377     1377
=======================================
  Hits         1072     1072
  Misses        305      305

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 eed93cc...6cc6b4c. Read the comment docs.

Thanks for this. I don't think publishing to testpypi is common enough to go in the README, though - I like to keep the README short - just the essentials of using flit - and refer people to the docs for more info. Could I ask you to create a new file in the doc folder and add it to the table of contents in doc/index.rst?

No prob :) I moved the content to a separate file called testpypi.rst, and added it to the Table of content in index.rst.
Hope this works. Thanks.

Thanks, that looks good.


Suggestion: Adding Blackbone to vcpkg

Have you thought about adding Blackbone to vcpkg?
https://github.com/Microsoft/vcpkg

I'll think about it. Maybe also add it to NuGet.

@WasserEsser  thats a good tool. but yeah blackbone should be added vcpkg manager ♥

Any update on this? vcpkg makes it a lot more convenient for users to access libraries

Yep, would love to see it on vcpkg!

+1 vcpkg

+1 vcpkg

+1 vcpkg

CompileUnboundScript


Render pass area is not inherited to secondary command buffers

CTS test dEQP-VK.api.command_buffers.render_pass_continue is failing with:
ERROR: vkCmdClearAttachments(): The area defined by pRects[0] is not contained in the area of the current render pass instance. For more information refer to Vulkan Spec Section '17.2. Clearing Images Inside A Render Pass Instance' which states 'The rectangular region specified by a given element of pRects must be contained within the render area of the current render pass instance' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#vkCmdClearAttachments) (code 0x0000045b from DS at Unknown:1475)

It seems that the issue is that render area is not inherited from primary command buffer to the secondary buffer where vkCmdClearAttachments is issued.

Difficult to do a good job here -- render area isn't included in VkCommandBufferInheritanceInfo, so we're never going to know it in a secondary command buffer.

There is an issue like this logged in LunarG's LunarXchange (#654).
I got "Vulkan internal report (code 1115): vkCmdClearAttachments(): The
area defined by pRects[0] is not contained in the area of the current
render pass instance."
but I'm only recording secondary command buffer, primary command buffer
didn't yet got vkCmdBeginRenderPass! Like in this case:
vkBeginCommandBuffer( vkSecondaryCmdBuffer, &vkCmdBufferBeginInfo);
VkClearAttachment vkClear; vkClear.colorAttachment = 0; vkClear.aspectMask
= VK_IMAGE_ASPECT_COLOR_BIT; vkClear.clearValue.color.float32[0] = 0.0;
vkClear.clearValue.color.float32[1] = 0.0;
vkClear.clearValue.color.float32[2] = 0.0;
vkClear.clearValue.color.float32[3] = 0.0; const VkClearRect vkRect = { { {
0,0 },{ 128,128 }, }, 0,1 }; pvkCmdClearAttachments( vkCmdBuffer, 1,
&vkClear, 1, &vkRect);
And right here VL reports! It's true that at that time primary command
buffer didn't record begin render pass yet, but I think this report should
be moved to execution of secondary command buffer.
It is a new-ish issue and has not been resolved yet.
But in the validation layer code, in PreCallValidateCmdClearAttachments(),
there is:
// TODO: This check should be moved to CmdExecuteCommands or
QueueSubmit to cover secondary CB cases
Chris, do you think that this can/should be resolved by moving the check?
On Tue, Mar 21, 2017 at 4:53 PM, Chris Forbes<EMAIL_ADDRESS>wrote:

Difficult to do a good job here -- render area isn't included in
VkCommandBufferInheritanceInfo, so we're never going to know it in a
secondary command buffer.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/KhronosGroup/Vulkan-LoaderAndValidationLayers/issues/1601#issuecomment-288244565,
or mute the thread
https://github.com/notifications/unsubscribe-auth/APq0i0o_6ZVK6BMrakh0pfsJW2rPU59uks5roFUEgaJpZM4Misus
.

--
Karl Schultz
LunarG
<EMAIL_ADDRESS>

There's a similar issue in LunarG's LunarXchange (654).  Probably exactly the same.

If possible it would be best to do the check in vkCmdExecuteCommands(). At
that point the primary command buffer has seen vkCmdBeginRenderPass() and
knows the render area. That is also off the critical path, unlike
vkQueueSubmit().
On Wed, Mar 22, 2017 at 10:54 AM Karl Schultz<EMAIL_ADDRESS>wrote:

There is an issue like this logged in LunarG's LunarXchange (#654).
I got "Vulkan internal report (code 1115): vkCmdClearAttachments(): The
area defined by pRects[0] is not contained in the area of the current
render pass instance."
but I'm only recording secondary command buffer, primary command buffer
didn't yet got vkCmdBeginRenderPass! Like in this case:
vkBeginCommandBuffer( vkSecondaryCmdBuffer, &vkCmdBufferBeginInfo);
VkClearAttachment vkClear; vkClear.colorAttachment = 0; vkClear.aspectMask
= VK_IMAGE_ASPECT_COLOR_BIT; vkClear.clearValue.color.float32[0] = 0.0;
vkClear.clearValue.color.float32[1] = 0.0;
vkClear.clearValue.color.float32[2] = 0.0;
vkClear.clearValue.color.float32[3] = 0.0; const VkClearRect vkRect = { { {
0,0 },{ 128,128 }, }, 0,1 }; pvkCmdClearAttachments( vkCmdBuffer, 1,
&vkClear, 1, &vkRect);
And right here VL reports! It's true that at that time primary command
buffer didn't record begin render pass yet, but I think this report should
be moved to execution of secondary command buffer.
It is a new-ish issue and has not been resolved yet.
But in the validation layer code, in PreCallValidateCmdClearAttachments(),
there is:
// TODO: This check should be moved to CmdExecuteCommands or
QueueSubmit to cover secondary CB cases
Chris, do you think that this can/should be resolved by moving the check?
On Tue, Mar 21, 2017 at 4:53 PM, Chris Forbes<EMAIL_ADDRESS>wrote:

Difficult to do a good job here -- render area isn't included in
VkCommandBufferInheritanceInfo, so we're never going to know it in a
secondary command buffer.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
<
https://github.com/KhronosGroup/Vulkan-LoaderAndValidationLayers/issues/1601#issuecomment-288244565
,
or mute the thread
<
https://github.com/notifications/unsubscribe-auth/APq0i0o_6ZVK6BMrakh0pfsJW2rPU59uks5roFUEgaJpZM4Misus
.

--
Karl Schultz
LunarG
<EMAIL_ADDRESS>—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/KhronosGroup/Vulkan-LoaderAndValidationLayers/issues/1601#issuecomment-288484617,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AASCSA_Xo6SjshhnPVWU2ffcVVpgyl6pks5roWBsgaJpZM4Misus
.


Use dependencies from pyproject.toml when running ci

What maintenance does this project need?
We should not need a separate requirements file for these dependencies. Our GitHub Actions ci is being upgraded to allow dependencies to be installed from pyproject.toml, and earthkit-data is the first test of it!
Organisation
ECMWF

Fixed by #416


[Question] <Could you please confirm if this alert logic is supported: Trigger an alarm if no data is received within 90 seconds (for example)?>

Question
Could you please confirm if this alert logic is supported: Trigger an alarm if no data is received within 90 seconds (for example)?

可以通过配置监控的采集周期来控制90s触发时间。当监控不可用时会无数据，发出可用性监控告警。但是还不能对空数据进行阈值判断，我们想想这个怎么实现，理论可以通过实现一个配置阈值表达式的判断是否为空的函数来实现。

Bot detected the issue body's language is not English, translate it automatically. 👯👭🏻🧑🤝🧑👫🧑🏿🤝🧑🏻👩🏾🤝👨🏿👬🏿

The 90s trigger time can be controlled by configuring the monitoring acquisition period. When monitoring is unavailable, there will be no data, and an availability monitoring alarm will be issued. But it is still not possible to judge the threshold value of empty data. Let's think about how to realize this. In theory, it can be realized by implementing a function that configures the threshold expression to judge whether it is empty.


Update code structure to export an NgModule

I'm submitting a ...
[ ] bug report
[ X] feature request
[ ] question about the decisions made in the repository

Do you want to request a feature or report a bug?
Feature

What is the current behavior?
Exporting provides and directives

If the current behavior is a bug, please provide the steps to reproduce and if possible a minimal demo of the problem via https://plnkr.co or similar.

What is the expected behavior?
Allow the package to export a class as an NgModule for consumption in applications

What is the motivation / use case for changing the behavior?
As of RC6 the bootstrap process is focused on structuring libraries as NgModules.

Please tell us about your environment:

Angular version: 2.0.0-rc.X
Browser: [all | Chrome XX | Firefox XX | IE XX | Safari XX | Mobile Chrome XX | Android X.X Web Browser | iOS XX Safari | iOS XX UIWebView | iOS XX WKWebView ]

Other information (e.g. detailed explanation, stacktraces, related issues, suggestions how to fix, links for us to have context, eg. stackoverflow, gitter, etc)

If this is something you'd like me to work on (I might anyway) please let me know!

FYI, I have started working on this here: https://github.com/Brocco/ng2-dnd/tree/ng-upgrade
and have been getting this error when importing it into my application:
metadata_resolver.js:230Uncaught Error: Unexpected value 'DndModule' imported by the module 'AppModule'

Please latest 2.0.0 and confirm that issue still exists.

Any news when this is going to be released and published to npm?

Released yesterday: https://www.npmjs.com/package/ng2-dnd

@akserg I did see it live on npm (using it too) but the confusion may lie in that the release wasn't tagged ;-)

Yep. I had a problem with Travis. It didn't publish the build 2.0.0 into the npm repo, so I had to do that manually. The latest build (2.0.1) is tagged.


[Bug] Embedding microservice in ChatQnA fails on Oracle Cloud

Priority
Undecided
OS type
Ubuntu
Hardware type
Xeon-ICX
Installation method

[X] Pull docker images from hub.docker.com
[ ] Build docker images from source

Deploy method

[X] Docker compose
[ ] Docker
[ ] Kubernetes
[ ] Helm

Running nodes
Single Node
What's the version?
0.9
Description
Embedding microservice fails with Ubuntu on Oracle Cloud
Reproduce steps
https://gist.github.com/arun-gupta/b4c13de906e5fe66024018ba48e3f6c3
Raw log
ubuntu@ociopeaint1:~$ sudo docker container logs embedding-tei-server
/usr/local/lib/python3.11/site-packages/pydantic/_internal/_fields.py:184: UserWarning: Field name "downstream_black_list" shadows an attribute in parent "TopologyInfo";
  warnings.warn(
/usr/local/lib/python3.11/site-packages/pydantic/_internal/_fields.py:149: UserWarning: Field "model_name_or_path" has conflict with protected namespace "model_".

You may be able to resolve this warning by setting `model_config['protected_namespaces'] = ()`.
  warnings.warn(
[2024-09-06 23:05:32,567] [    INFO] - Base service - CORS is enabled.
[2024-09-06 23:05:32,568] [    INFO] - Base service - Setting up HTTP server
[2024-09-06 23:05:32,569] [    INFO] - Base service - Uvicorn server setup on port 6000
INFO:     Waiting for application startup.
INFO:     Application startup complete.
INFO:     Uvicorn running on http://<IP_ADDRESS>:6000 (Press CTRL+C to quit)
[2024-09-06 23:05:32,573] [    INFO] - Base service - HTTP server setup successful
[2024-09-06 23:05:32,663] [    INFO] - embedding_tei_langchain - TEI Gaudi Embedding initialized.
INFO:     <IP_ADDRESS>:58900 - "POST /v1/embeddings HTTP/1.1" 500 Internal Server Error
ERROR:    Exception in ASGI application
Traceback (most recent call last):
  File "/usr/local/lib/python3.11/site-packages/urllib3/connection.py", line 203, in _new_conn
    sock = connection.create_connection(
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/site-packages/urllib3/util/connection.py", line 85, in create_connection
    raise err
  File "/usr/local/lib/python3.11/site-packages/urllib3/util/connection.py", line 73, in create_connection
    sock.connect(sa)
OSError: [Errno 113] No route to host

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/usr/local/lib/python3.11/site-packages/urllib3/connectionpool.py", line 790, in urlopen
    response = self._make_request(
               ^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/site-packages/urllib3/connectionpool.py", line 496, in _make_request
    conn.request(
  File "/usr/local/lib/python3.11/site-packages/urllib3/connection.py", line 395, in request
    self.endheaders()
  File "/usr/local/lib/python3.11/http/client.py", line 1289, in endheaders
    self._send_output(message_body, encode_chunked=encode_chunked)
  File "/usr/local/lib/python3.11/http/client.py", line 1048, in _send_output
    self.send(msg)
  File "/usr/local/lib/python3.11/http/client.py", line 986, in send
    self.connect()
  File "/usr/local/lib/python3.11/site-packages/urllib3/connection.py", line 243, in connect
    self.sock = self._new_conn()
                ^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/site-packages/urllib3/connection.py", line 218, in _new_conn
    raise NewConnectionError(
urllib3.exceptions.NewConnectionError: <urllib3.connection.HTTPConnection object at 0x7910da77f910>: Failed to establish a new connection: [Errno 113] No route to host

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/usr/local/lib/python3.11/site-packages/requests/adapters.py", line 486, in send
    resp = conn.urlopen(
           ^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/site-packages/urllib3/connectionpool.py", line 844, in urlopen
    retries = retries.increment(
              ^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/site-packages/urllib3/util/retry.py", line 515, in increment
    raise MaxRetryError(_pool, url, reason) from reason  # type: ignore[arg-type]
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
urllib3.exceptions.MaxRetryError: HTTPConnectionPool(host='<IP_ADDRESS>', port=6006): Max retries exceeded with url: / (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7910da77f910>: Failed to establish a new connection: [Errno 113] No route to host'))

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/home/user/.local/lib/python3.11/site-packages/uvicorn/protocols/http/h11_impl.py", line 406, in run_asgi
    result = await app(  # type: ignore[func-returns-value]
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/user/.local/lib/python3.11/site-packages/uvicorn/middleware/proxy_headers.py", line 70, in __call__
    return await self.app(scope, receive, send)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/user/.local/lib/python3.11/site-packages/fastapi/applications.py", line 1054, in __call__
    await super().__call__(scope, receive, send)
  File "/home/user/.local/lib/python3.11/site-packages/starlette/applications.py", line 123, in __call__
    await self.middleware_stack(scope, receive, send)
  File "/home/user/.local/lib/python3.11/site-packages/starlette/middleware/errors.py", line 186, in __call__
    raise exc
  File "/home/user/.local/lib/python3.11/site-packages/starlette/middleware/errors.py", line 164, in __call__
    await self.app(scope, receive, _send)
  File "/home/user/.local/lib/python3.11/site-packages/prometheus_fastapi_instrumentator/middleware.py", line 174, in __call__
    raise exc
  File "/home/user/.local/lib/python3.11/site-packages/prometheus_fastapi_instrumentator/middleware.py", line 172, in __call__
    await self.app(scope, receive, send_wrapper)
  File "/home/user/.local/lib/python3.11/site-packages/starlette/middleware/cors.py", line 85, in __call__
    await self.app(scope, receive, send)
  File "/home/user/.local/lib/python3.11/site-packages/starlette/middleware/exceptions.py", line 65, in __call__
    await wrap_app_handling_exceptions(self.app, conn)(scope, receive, send)
  File "/home/user/.local/lib/python3.11/site-packages/starlette/_exception_handler.py", line 64, in wrapped_app
    raise exc
  File "/home/user/.local/lib/python3.11/site-packages/starlette/_exception_handler.py", line 53, in wrapped_app
    await app(scope, receive, sender)
  File "/home/user/.local/lib/python3.11/site-packages/starlette/routing.py", line 754, in __call__
    await self.middleware_stack(scope, receive, send)
  File "/home/user/.local/lib/python3.11/site-packages/starlette/routing.py", line 774, in app
    await route.handle(scope, receive, send)
  File "/home/user/.local/lib/python3.11/site-packages/starlette/routing.py", line 295, in handle
    await self.app(scope, receive, send)
  File "/home/user/.local/lib/python3.11/site-packages/starlette/routing.py", line 77, in app
    await wrap_app_handling_exceptions(app, request)(scope, receive, send)
  File "/home/user/.local/lib/python3.11/site-packages/starlette/_exception_handler.py", line 64, in wrapped_app
    raise exc
  File "/home/user/.local/lib/python3.11/site-packages/starlette/_exception_handler.py", line 53, in wrapped_app
    await app(scope, receive, sender)
  File "/home/user/.local/lib/python3.11/site-packages/starlette/routing.py", line 74, in app
    response = await f(request)
               ^^^^^^^^^^^^^^^^
  File "/home/user/.local/lib/python3.11/site-packages/fastapi/routing.py", line 278, in app
    raw_response = await run_endpoint_function(
                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/user/.local/lib/python3.11/site-packages/fastapi/routing.py", line 193, in run_endpoint_function
    return await run_in_threadpool(dependant.call, **values)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/user/.local/lib/python3.11/site-packages/starlette/concurrency.py", line 42, in run_in_threadpool
    return await anyio.to_thread.run_sync(func, *args)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/site-packages/anyio/to_thread.py", line 56, in run_sync
    return await get_async_backend().run_sync_in_worker_thread(
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/site-packages/anyio/_backends/_asyncio.py", line 2134, in run_sync_in_worker_thread
    return await future
           ^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/site-packages/anyio/_backends/_asyncio.py", line 851, in run
    result = context.run(func, *args)
             ^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/user/comps/embeddings/langchain/embedding_tei.py", line 46, in embedding
    embed_vector = embeddings.embed_query(input.text)
                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/user/.local/lib/python3.11/site-packages/langchain_huggingface/embeddings/huggingface_endpoint.py", line 138, in embed_query
    response = self.embed_documents([text])[0]
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/user/.local/lib/python3.11/site-packages/langchain_huggingface/embeddings/huggingface_endpoint.py", line 107, in embed_documents
    responses = self.client.post(
                ^^^^^^^^^^^^^^^^^
  File "/home/user/.local/lib/python3.11/site-packages/huggingface_hub/inference/_client.py", line 289, in post
    response = get_session().post(
               ^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/site-packages/requests/sessions.py", line 637, in post
    return self.request("POST", url, data=data, json=json, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/site-packages/requests/sessions.py", line 589, in request
    resp = self.send(prep, **send_kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/site-packages/requests/sessions.py", line 703, in send
    r = adapter.send(request, **kwargs)
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/user/.local/lib/python3.11/site-packages/huggingface_hub/utils/_http.py", line 66, in send
    return super().send(request, *args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/site-packages/requests/adapters.py", line 519, in send
    raise ConnectionError(e, request=request)
requests.exceptions.ConnectionError: (MaxRetryError("HTTPConnectionPool(host='<IP_ADDRESS>', port=6006): Max retries exceeded with url: / (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7910da77f910>: Failed to establish a new connection: [Errno 113] No route to host'))"), '(Request ID: f4171a93-6a8a-4121-9fa3-34c271fef40d)')
INFO:     <IP_ADDRESS>:56848 - "POST /v1/embeddings HTTP/1.1" 500 Internal Server Error
ERROR:    Exception in ASGI application
Traceback (most recent call last):
  File "/usr/local/lib/python3.11/site-packages/urllib3/connection.py", line 203, in _new_conn
    sock = connection.create_connection(
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/site-packages/urllib3/util/connection.py", line 85, in create_connection
    raise err
  File "/usr/local/lib/python3.11/site-packages/urllib3/util/connection.py", line 73, in create_connection
    sock.connect(sa)
OSError: [Errno 113] No route to host

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/usr/local/lib/python3.11/site-packages/urllib3/connectionpool.py", line 790, in urlopen
    response = self._make_request(
               ^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/site-packages/urllib3/connectionpool.py", line 496, in _make_request
    conn.request(
  File "/usr/local/lib/python3.11/site-packages/urllib3/connection.py", line 395, in request
    self.endheaders()
  File "/usr/local/lib/python3.11/http/client.py", line 1289, in endheaders
    self._send_output(message_body, encode_chunked=encode_chunked)
  File "/usr/local/lib/python3.11/http/client.py", line 1048, in _send_output
    self.send(msg)
  File "/usr/local/lib/python3.11/http/client.py", line 986, in send
    self.connect()
  File "/usr/local/lib/python3.11/site-packages/urllib3/connection.py", line 243, in connect
    self.sock = self._new_conn()
                ^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/site-packages/urllib3/connection.py", line 218, in _new_conn
    raise NewConnectionError(
urllib3.exceptions.NewConnectionError: <urllib3.connection.HTTPConnection object at 0x7911a3e85450>: Failed to establish a new connection: [Errno 113] No route to host

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/usr/local/lib/python3.11/site-packages/requests/adapters.py", line 486, in send
    resp = conn.urlopen(
           ^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/site-packages/urllib3/connectionpool.py", line 844, in urlopen
    retries = retries.increment(
              ^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/site-packages/urllib3/util/retry.py", line 515, in increment
    raise MaxRetryError(_pool, url, reason) from reason  # type: ignore[arg-type]
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
urllib3.exceptions.MaxRetryError: HTTPConnectionPool(host='<IP_ADDRESS>', port=6006): Max retries exceeded with url: / (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7911a3e85450>: Failed to establish a new connection: [Errno 113] No route to host'))

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/home/user/.local/lib/python3.11/site-packages/uvicorn/protocols/http/h11_impl.py", line 406, in run_asgi
    result = await app(  # type: ignore[func-returns-value]
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/user/.local/lib/python3.11/site-packages/uvicorn/middleware/proxy_headers.py", line 70, in __call__
    return await self.app(scope, receive, send)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/user/.local/lib/python3.11/site-packages/fastapi/applications.py", line 1054, in __call__
    await super().__call__(scope, receive, send)
  File "/home/user/.local/lib/python3.11/site-packages/starlette/applications.py", line 123, in __call__
    await self.middleware_stack(scope, receive, send)
  File "/home/user/.local/lib/python3.11/site-packages/starlette/middleware/errors.py", line 186, in __call__
    raise exc
  File "/home/user/.local/lib/python3.11/site-packages/starlette/middleware/errors.py", line 164, in __call__
    await self.app(scope, receive, _send)
  File "/home/user/.local/lib/python3.11/site-packages/prometheus_fastapi_instrumentator/middleware.py", line 174, in __call__
    raise exc
  File "/home/user/.local/lib/python3.11/site-packages/prometheus_fastapi_instrumentator/middleware.py", line 172, in __call__
    await self.app(scope, receive, send_wrapper)
  File "/home/user/.local/lib/python3.11/site-packages/starlette/middleware/cors.py", line 85, in __call__
    await self.app(scope, receive, send)
  File "/home/user/.local/lib/python3.11/site-packages/starlette/middleware/exceptions.py", line 65, in __call__
    await wrap_app_handling_exceptions(self.app, conn)(scope, receive, send)
  File "/home/user/.local/lib/python3.11/site-packages/starlette/_exception_handler.py", line 64, in wrapped_app
    raise exc
  File "/home/user/.local/lib/python3.11/site-packages/starlette/_exception_handler.py", line 53, in wrapped_app
    await app(scope, receive, sender)
  File "/home/user/.local/lib/python3.11/site-packages/starlette/routing.py", line 754, in __call__
    await self.middleware_stack(scope, receive, send)
  File "/home/user/.local/lib/python3.11/site-packages/starlette/routing.py", line 774, in app
    await route.handle(scope, receive, send)
  File "/home/user/.local/lib/python3.11/site-packages/starlette/routing.py", line 295, in handle
    await self.app(scope, receive, send)
  File "/home/user/.local/lib/python3.11/site-packages/starlette/routing.py", line 77, in app
    await wrap_app_handling_exceptions(app, request)(scope, receive, send)
  File "/home/user/.local/lib/python3.11/site-packages/starlette/_exception_handler.py", line 64, in wrapped_app
    raise exc
  File "/home/user/.local/lib/python3.11/site-packages/starlette/_exception_handler.py", line 53, in wrapped_app
    await app(scope, receive, sender)
  File "/home/user/.local/lib/python3.11/site-packages/starlette/routing.py", line 74, in app
    response = await f(request)
               ^^^^^^^^^^^^^^^^
  File "/home/user/.local/lib/python3.11/site-packages/fastapi/routing.py", line 278, in app
    raw_response = await run_endpoint_function(
                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/user/.local/lib/python3.11/site-packages/fastapi/routing.py", line 193, in run_endpoint_function
    return await run_in_threadpool(dependant.call, **values)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/user/.local/lib/python3.11/site-packages/starlette/concurrency.py", line 42, in run_in_threadpool
    return await anyio.to_thread.run_sync(func, *args)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/site-packages/anyio/to_thread.py", line 56, in run_sync
    return await get_async_backend().run_sync_in_worker_thread(
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/site-packages/anyio/_backends/_asyncio.py", line 2134, in run_sync_in_worker_thread
    return await future
           ^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/site-packages/anyio/_backends/_asyncio.py", line 851, in run
    result = context.run(func, *args)
             ^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/user/comps/embeddings/langchain/embedding_tei.py", line 46, in embedding
    embed_vector = embeddings.embed_query(input.text)
                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/user/.local/lib/python3.11/site-packages/langchain_huggingface/embeddings/huggingface_endpoint.py", line 138, in embed_query
    response = self.embed_documents([text])[0]
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/user/.local/lib/python3.11/site-packages/langchain_huggingface/embeddings/huggingface_endpoint.py", line 107, in embed_documents
    responses = self.client.post(
                ^^^^^^^^^^^^^^^^^
  File "/home/user/.local/lib/python3.11/site-packages/huggingface_hub/inference/_client.py", line 289, in post
    response = get_session().post(
               ^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/site-packages/requests/sessions.py", line 637, in post
    return self.request("POST", url, data=data, json=json, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/site-packages/requests/sessions.py", line 589, in request
    resp = self.send(prep, **send_kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/site-packages/requests/sessions.py", line 703, in send
    r = adapter.send(request, **kwargs)
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/user/.local/lib/python3.11/site-packages/huggingface_hub/utils/_http.py", line 66, in send
    return super().send(request, *args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/site-packages/requests/adapters.py", line 519, in send
    raise ConnectionError(e, request=request)
requests.exceptions.ConnectionError: (MaxRetryError("HTTPConnectionPool(host='<IP_ADDRESS>', port=6006): Max retries exceeded with url: / (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7911a3e85450>: Failed to establish a new connection: [Errno 113] No route to host'))"), '(Request ID: c81b87b0-9041-47ca-8546-3bb6f7b27542)')
INFO:     <IP_ADDRESS>:41108 - "POST /v1/embeddings HTTP/1.1" 500 Internal Server Error
ERROR:    Exception in ASGI application
Traceback (most recent call last):
  File "/usr/local/lib/python3.11/site-packages/urllib3/connection.py", line 203, in _new_conn
    sock = connection.create_connection(
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/site-packages/urllib3/util/connection.py", line 85, in create_connection
    raise err
  File "/usr/local/lib/python3.11/site-packages/urllib3/util/connection.py", line 73, in create_connection
    sock.connect(sa)
OSError: [Errno 113] No route to host

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/usr/local/lib/python3.11/site-packages/urllib3/connectionpool.py", line 790, in urlopen
    response = self._make_request(
               ^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/site-packages/urllib3/connectionpool.py", line 496, in _make_request
    conn.request(
  File "/usr/local/lib/python3.11/site-packages/urllib3/connection.py", line 395, in request
    self.endheaders()
  File "/usr/local/lib/python3.11/http/client.py", line 1289, in endheaders
    self._send_output(message_body, encode_chunked=encode_chunked)
  File "/usr/local/lib/python3.11/http/client.py", line 1048, in _send_output
    self.send(msg)
  File "/usr/local/lib/python3.11/http/client.py", line 986, in send
    self.connect()
  File "/usr/local/lib/python3.11/site-packages/urllib3/connection.py", line 243, in connect
    self.sock = self._new_conn()
                ^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/site-packages/urllib3/connection.py", line 218, in _new_conn
    raise NewConnectionError(
urllib3.exceptions.NewConnectionError: <urllib3.connection.HTTPConnection object at 0x7911a3e91850>: Failed to establish a new connection: [Errno 113] No route to host

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/usr/local/lib/python3.11/site-packages/requests/adapters.py", line 486, in send
    resp = conn.urlopen(
           ^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/site-packages/urllib3/connectionpool.py", line 844, in urlopen
    retries = retries.increment(
              ^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/site-packages/urllib3/util/retry.py", line 515, in increment
    raise MaxRetryError(_pool, url, reason) from reason  # type: ignore[arg-type]
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
urllib3.exceptions.MaxRetryError: HTTPConnectionPool(host='<IP_ADDRESS>', port=6006): Max retries exceeded with url: / (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7911a3e91850>: Failed to establish a new connection: [Errno 113] No route to host'))

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/home/user/.local/lib/python3.11/site-packages/uvicorn/protocols/http/h11_impl.py", line 406, in run_asgi
    result = await app(  # type: ignore[func-returns-value]
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/user/.local/lib/python3.11/site-packages/uvicorn/middleware/proxy_headers.py", line 70, in __call__
    return await self.app(scope, receive, send)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/user/.local/lib/python3.11/site-packages/fastapi/applications.py", line 1054, in __call__
    await super().__call__(scope, receive, send)
  File "/home/user/.local/lib/python3.11/site-packages/starlette/applications.py", line 123, in __call__
    await self.middleware_stack(scope, receive, send)
  File "/home/user/.local/lib/python3.11/site-packages/starlette/middleware/errors.py", line 186, in __call__
    raise exc
  File "/home/user/.local/lib/python3.11/site-packages/starlette/middleware/errors.py", line 164, in __call__
    await self.app(scope, receive, _send)
  File "/home/user/.local/lib/python3.11/site-packages/prometheus_fastapi_instrumentator/middleware.py", line 174, in __call__
    raise exc
  File "/home/user/.local/lib/python3.11/site-packages/prometheus_fastapi_instrumentator/middleware.py", line 172, in __call__
    await self.app(scope, receive, send_wrapper)
  File "/home/user/.local/lib/python3.11/site-packages/starlette/middleware/cors.py", line 85, in __call__
    await self.app(scope, receive, send)
  File "/home/user/.local/lib/python3.11/site-packages/starlette/middleware/exceptions.py", line 65, in __call__
    await wrap_app_handling_exceptions(self.app, conn)(scope, receive, send)
  File "/home/user/.local/lib/python3.11/site-packages/starlette/_exception_handler.py", line 64, in wrapped_app
    raise exc
  File "/home/user/.local/lib/python3.11/site-packages/starlette/_exception_handler.py", line 53, in wrapped_app
    await app(scope, receive, sender)
  File "/home/user/.local/lib/python3.11/site-packages/starlette/routing.py", line 754, in __call__
    await self.middleware_stack(scope, receive, send)
  File "/home/user/.local/lib/python3.11/site-packages/starlette/routing.py", line 774, in app
    await route.handle(scope, receive, send)
  File "/home/user/.local/lib/python3.11/site-packages/starlette/routing.py", line 295, in handle
    await self.app(scope, receive, send)
  File "/home/user/.local/lib/python3.11/site-packages/starlette/routing.py", line 77, in app
    await wrap_app_handling_exceptions(app, request)(scope, receive, send)
  File "/home/user/.local/lib/python3.11/site-packages/starlette/_exception_handler.py", line 64, in wrapped_app
    raise exc
  File "/home/user/.local/lib/python3.11/site-packages/starlette/_exception_handler.py", line 53, in wrapped_app
    await app(scope, receive, sender)
  File "/home/user/.local/lib/python3.11/site-packages/starlette/routing.py", line 74, in app
    response = await f(request)
               ^^^^^^^^^^^^^^^^
  File "/home/user/.local/lib/python3.11/site-packages/fastapi/routing.py", line 278, in app
    raw_response = await run_endpoint_function(
                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/user/.local/lib/python3.11/site-packages/fastapi/routing.py", line 193, in run_endpoint_function
    return await run_in_threadpool(dependant.call, **values)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/user/.local/lib/python3.11/site-packages/starlette/concurrency.py", line 42, in run_in_threadpool
    return await anyio.to_thread.run_sync(func, *args)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/site-packages/anyio/to_thread.py", line 56, in run_sync
    return await get_async_backend().run_sync_in_worker_thread(
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/site-packages/anyio/_backends/_asyncio.py", line 2134, in run_sync_in_worker_thread
    return await future
           ^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/site-packages/anyio/_backends/_asyncio.py", line 851, in run
    result = context.run(func, *args)
             ^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/user/comps/embeddings/langchain/embedding_tei.py", line 46, in embedding
    embed_vector = embeddings.embed_query(input.text)
                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/user/.local/lib/python3.11/site-packages/langchain_huggingface/embeddings/huggingface_endpoint.py", line 138, in embed_query
    response = self.embed_documents([text])[0]
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/user/.local/lib/python3.11/site-packages/langchain_huggingface/embeddings/huggingface_endpoint.py", line 107, in embed_documents
    responses = self.client.post(
                ^^^^^^^^^^^^^^^^^
  File "/home/user/.local/lib/python3.11/site-packages/huggingface_hub/inference/_client.py", line 289, in post
    response = get_session().post(
               ^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/site-packages/requests/sessions.py", line 637, in post
    return self.request("POST", url, data=data, json=json, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/site-packages/requests/sessions.py", line 589, in request
    resp = self.send(prep, **send_kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/site-packages/requests/sessions.py", line 703, in send
    r = adapter.send(request, **kwargs)
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/user/.local/lib/python3.11/site-packages/huggingface_hub/utils/_http.py", line 66, in send
    return super().send(request, *args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/site-packages/requests/adapters.py", line 519, in send
    raise ConnectionError(e, request=request)
requests.exceptions.ConnectionError: (MaxRetryError("HTTPConnectionPool(host='<IP_ADDRESS>', port=6006): Max retries exceeded with url: / (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7911a3e91850>: Failed to establish a new connection: [Errno 113] No route to host'))"), '(Request ID: 84ec5480-daab-48e1-a7cf-fe52d8644f1d)')

@arun-gupta,
Could you please share the Docker logs for the TEI embedding serving container? The trace indicates that the embedding microservice is unable to connect to the TEI serving.
requests.exceptions.ConnectionError: (MaxRetryError("HTTPConnectionPool(host='<IP_ADDRESS>', port=6006): Max retries exceeded with url: / (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7911a3e91850>: Failed to establish a new connection: [Errno 113] No route to host'))"), '(Request ID: 84ec5480-daab-48e1-a7cf-fe52d8644f1d)')

I used the stock Docker Compose file, so it should be using the latest tag.

@arun-gupta
In order to debug this network issue, could you get logs from below commands?

ifconfig -a
route
docker ps
docker container logs tei-embedding-server

@arun-gupta
is the network issue still there in Oracle Cloud?
if needed, we could also debug in Oracle Cloud.

@louie-tsai ssh to OCI instance has been timing out for a few weeks now. I tried again and still the same status. Will try creating a different account and then debug.

Invoking the following command gives an error:
ubuntu@opea-demo:~$ curl http://${host_ip}:6000/v1/embeddings  -X POST   -d '{"text":"hello"}'   -H 'Content-Type: application/json'
curl: (7) Failed to connect to localhost port 6000 after 0 ms: Couldn't connect to server

Even the following command gives the error:
ubuntu@opea-demo:~$ curl http://${host_ip}:8888/v1/chatqna \
    -H "Content-Type: application/json" \
    -d '{
        "messages": "What is the revenue of Nike in 2023?"
    }'
Internal Server Error

Here is the list of containers:
ubuntu@opea-demo:~$ sudo docker container ls
CONTAINER ID   IMAGE                                                                 COMMAND                  CREATED          STATUS          PORTS                                                                                NAMES
38c6f8885d63   opea/chatqna-ui:latest                                                "docker-entrypoint.s…"   45 minutes ago   Up 45 minutes   <IP_ADDRESS>:5173->5173/tcp, :::5173->5173/tcp                                              chatqna-xeon-ui-server
f4a2073d9b27   opea/chatqna:latest                                                   "python chatqna.py"      45 minutes ago   Up 45 minutes   <IP_ADDRESS>:8888->8888/tcp, :::8888->8888/tcp                                              chatqna-xeon-backend-server
16d874753ad2   opea/dataprep-redis:latest                                            "python prepare_doc_…"   45 minutes ago   Up 45 minutes   <IP_ADDRESS>:6007->6007/tcp, :::6007->6007/tcp                                              dataprep-redis-server
1df85d99c0f1   opea/retriever-redis:latest                                           "python retriever_re…"   45 minutes ago   Up 4 minutes    <IP_ADDRESS>:7000->7000/tcp, :::7000->7000/tcp                                              retriever-redis-server
350fc041dceb   ghcr.io/huggingface/text-generation-inference:sha-e4201f4-intel-cpu   "text-generation-lau…"   45 minutes ago   Up 45 minutes   <IP_ADDRESS>:9009->80/tcp, [::]:9009->80/tcp                                                tgi-service
8bd8fb156225   redis/redis-stack:7.2.0-v9                                            "/entrypoint.sh"         45 minutes ago   Up 45 minutes   <IP_ADDRESS>:6379->6379/tcp, :::6379->6379/tcp, <IP_ADDRESS>:8001->8001/tcp, :::8001->8001/tcp   redis-vector-db
4a36cc2d29d6   ghcr.io/huggingface/text-embeddings-inference:cpu-1.5                 "text-embeddings-rou…"   45 minutes ago   Up 45 minutes   <IP_ADDRESS>:8808->80/tcp, [::]:8808->80/tcp                                                tei-reranking-server
646b7204f7d4   ghcr.io/huggingface/text-embeddings-inference:cpu-1.5                 "text-embeddings-rou…"   45 minutes ago   Up 45 minutes   <IP_ADDRESS>:6006->80/tcp, [::]:6006->80/tcp                                                tei-embedding-server

Here is the next error: https://github.com/opea-project/GenAIExamples/issues/949

@arun-gupta
Since OCI environment was tested for getting started document, there should be no issue in OCI.
https://opea-project.github.io/latest/getting-started/README.html
close the ticket for now. Let us know if issue still exists.


Schema registry support

This PR adds support for Confluent and Redpanda schema registries.
It also refactors the kafka input connector so that the items emitted have all the metadata in each message, supported by a new KafkaMessage dataclass.
Kafka input and output connectors can be configured to use a specific instance of a SchemaRegistry subclass. The SchemaRegistry implementation handles fetching schemas, that can be specified using a SchemaConf dataclass, since each schema can be retrieved by either schema_id or a combination of subject and an optional version number,
Currently it only supports avro (de)serialization, but support for more formats can be easily added. Users can implement their own SchemaRegistry and (de)serializers too.
Notes
ConfluentSchemaRegistry follows confluent_kafka behaviors, and always fetches the correct schema when deserializing a message. The serialization schema must be specified instead.
RedpandaSchemaRegistry requires to specify the schema for deserialization too.
The KafkaSource has a new flag, raise_on_deserialization_error, that defaults to True. If set to False, when a deserialization error occurs, instead of crashing the dataflow, messages will be sent down the stream, using the raw bytes in place of the deserialized value, and the exception will be saved in a field for introspection. Users will have to handle errors manually in a later step. This could be improved by a custom operator once the py-operators branch is merged
This PR adds 2 dependencies: fastavro, which was already a transient dependency, since confluent_kafka uses it too, and requests, used to make requests to the RedpandaSchemaRegistry.

I'm closing this PR and will soon open a new one based on the new py-operators api