siddhi http sink Content-Length

Description:
I use WSO2 stream processor. When I want tu use siddhi http sink to make a POST request, the Content-Length of the http request header is always set to 0 even when I set the header manualy.
Affected Product Version:
Siddhi packaged with WSO2 stream processor
OS, DB, other environment details and versions:
Debian 8
WSO2 stream processor 4.1.0
Steps to reproduce:
Without headers :

With headers :

Thanks for your help.

Hi @Navino16,
Please note that including custom values as content-type is not supported.
If the chunking is disabled, the content-length will automatically be calculated and added in the content-length header. If chunking is enabled, the content-length header will not be added.
We have corrected the documentation as well.

Hello @minudika.
First of all, thanks for your answer.
Good to know that was an error in your documentation. But as you can see, in the first screen, I didn't put any custom Header and it still not working.
And just for information, I don't know if it's a mistake or not but you have let a content-length header in the first exemple of your documentation.

Hi @Navino16 ,
We were able to reproduce this issue in WSO2 SP 4.1.0.
Please note that this issue has been resolved in WSO2 SP 4.2.0.
You can download it from here.
Also, thanks for reporting the issues in the docs. We will correct them as well.


Renaming a route on the canvas is broken

Closing in favor of #351 which has more complete error description.


Vue2.7 should support events on tsx

What problem does this feature solve?
Hello.tsx
import { defineComponent } from "vue";
export default defineComponent({
  emits: ["confirm"],
  setup() {
    return () => <div />;
  },
});

app.tsx
import Hello from "./Hello";
defineComponent({
  setup() {
    return () => <Hello onConfirm={() => "test"} />;
  },
});

What does the proposed API look like?
no

Since the "listeners" are gone from the setup context, I cannot pass any event to the child components anymore.
They are nowhere to be found. Not on the attrs either, not even with inheritAttrs:false.

Vue 2 JSX transform doesn't support transforming onXXX listeners, nor does Vue 2 accept onXXX props for emit-declared events. Basically, this is a feature that does not exist in Vue 2 and we do not intend to backport this since it's a niche feature and doesn't justify the effort needed to implement and maintain it.
@JorisAerts your issue is valid but is unrelated to this one.

Added context.listeners in adf3ac8a

@yyx990803
There is no needs for us to have emit-declared,but we just needs type-check on tsx for custom events.

Or fallback to any?
The problem is tsx will not pass the type checker now.

try it :
<Hello {on: { confirm: () => test()}} />


Any dlib related js file for client side face recognition?

Hi,
currently we are using dlib_face_recognition_resnet_model_v1.dat to extract face descriptor values which is used for face recognition.
Could  you pls suggest relavant javascript  framework by which i can extract face descriptor values from the  dlib_face_recognition_resnet_model_v1.dat  file.
Thanks

I don't use js so I can't say.


Should BLEU score be dependent on the order of the sequences?

Hey! Using sacrebleu to evaluate a model for a project of mine, and just noticed this:
        bleu = sacrebleu.corpus_bleu(decoded_cands, decoded_refs).score

        randper = torch.randperm(len(decoded_refs))
        decoded_refs = [decoded_refs[i] for i in randper]
        decoded_cands = [decoded_cands[i] for i in randper]
        bleu_rand0 = sacrebleu.corpus_bleu(decoded_cands, decoded_refs).score

        randper = range(len(decoded_refs))
        decoded_refs = [decoded_refs[i] for i in randper]
        decoded_cands = [decoded_cands[i] for i in randper]
        bleu_rand1 = sacrebleu.corpus_bleu(decoded_cands, decoded_refs).score

        print("bleu 0: ", bleu, "bleu 1: ", bleu_rand0, "bleu 2: ", bleu_rand1)

Here, the order of the sentences make the BLEU score change. bleu is identical to bleu_rand1 but varies drastically with bleu_rand0 (randomly permuted). I am not an expert in this, but what is the reason it can vary so much (some permutations will result in about a score 20 and others in a score in the 60s). Am I doing something wrong? Thanks in advance!

If you have a single reference translation for each sentence, you should use corpus_bleu(decoded_cands, [decoded_refs]) instead of corpus_bleu(decoded_cands, decoded_refs). Otherwise, you are treating each character in decoded_refs as a (single-character) sentence, so the BLEU scores are meaningless.
See https://github.com/mjpost/sacrebleu/tree/master#using-sacrebleu-from-python, which shows a 2-reference example:
refs = [ # First set of references
         ['The dog bit the man.', 'It was not unexpected.', 'The man bit him first.'],
         # Second set of references
         ['The dog had bit the man.', 'No one was surprised.', 'The man had bitten the dog.'],
       ]
sys = ['The dog bit the man.', "It wasn't surprising.", 'The man had just bitten him.']

from sacrebleu.metrics import BLEU
bleu = BLEU()
bleu.corpus_score(sys, refs)

where the last three lines are equivalent (unless the language is zh, ja or ko) to the legacy way you use:
import sacrebleu
sacrebleu.corpus_bleu(sys, refs)

I admit corpus_bleu(hypotheses, references) may be misleading because "hypotheses" means a single hypothesis for each sentence in the document, while "references" means "A sequence of reference documents with document being defined as a sequence of reference strings" (according to the documentation). This is also reflected in the method parameters signature (hypotheses: Sequence[str], references: Sequence[Sequence[str]]).
Unfortunately, both [["sent 1", "sent 2"]] and ["sent 1", "sent 2"] and even a single string "sent 1" pass the Sequence[Sequence[str]] type check (I am not sure why). Maybe we could add an explicit check for this common misuse.

If you have a single reference translation for each sentence, you should use corpus_bleu(decoded_cands, [decoded_refs]) instead of corpus_bleu(decoded_cands, decoded_refs). Otherwise, you are treating each character in decoded_refs as a (single-character) sentence, so the BLEU scores are meaningless. See https://github.com/mjpost/sacrebleu/tree/master#using-sacrebleu-from-python, which shows a 2-reference example:
refs = [ # First set of references
         ['The dog bit the man.', 'It was not unexpected.', 'The man bit him first.'],
         # Second set of references
         ['The dog had bit the man.', 'No one was surprised.', 'The man had bitten the dog.'],
       ]
sys = ['The dog bit the man.', "It wasn't surprising.", 'The man had just bitten him.']

from sacrebleu.metrics import BLEU
bleu = BLEU()
bleu.corpus_score(sys, refs)

where the last three lines are equivalent (unless the language is zh, ja or ko) to the legacy way you use:
import sacrebleu
sacrebleu.corpus_bleu(sys, refs)

I admit corpus_bleu(hypotheses, references) may be misleading because "hypotheses" means a single hypothesis for each sentence in the document, while "references" means "A sequence of reference documents with document being defined as a sequence of reference strings" (according to the documentation). This is also reflected in the method parameters signature (hypotheses: Sequence[str], references: Sequence[Sequence[str]]). Unfortunately, both [["sent 1", "sent 2"]] and ["sent 1", "sent 2"] and even a single string "sent 1" pass the Sequence[Sequence[str]] type check (I am not sure why). Maybe we could add an explicit check for this common misuse.

Oh, got it. Yes, I was using it wrong. Thanks for the help:)


Query : Add Case Insensitive System Functions

Query : Add Case Insensitive System Functions
Description
Adds baseline tests for case insensitive system functions, so that we know they will compile with the current version of ServiceInterop. The following are now available:
CONTAINS(<string>, <string>, [bool])
ENDSWITH(<string>, <string>, [bool])
STARTSWITH(<string>, <string>, [bool])
STRINGEQUALS(<string>, <string>, [bool])
where the optional bool determines if the function should ignore casing. If the bool is not passed in then the functions by default checks for casing.

@bchong95 / @sboshra what impact will it have on other SDK's (Java, JS, Python)?


feat: add string removeprefix and removesuffix builtin member functions.

1. Does this PR affect any open issues?(Y/N) and add issue references (e.g. "fix #123", "re #123".):

[ ] N
[x] Y

re #313
feat: add string removeprefix and removesuffix builtin member functions.

2. What is the scope of this PR (e.g. component or file name):

kclvm_sema crate
kclvm_runtime crate

3. Provide a description of the PR(e.g. more details, effects, motivations or doc link):

[ ] Affects user behaviors
[ ] Contains syntax changes
[ ] Contains variable changes
[ ] Contains experimental features
[ ] Performance regression: Consumes more CPU
[ ] Performance regression: Consumes more Memory
[x] Other

4. Are there any breaking changes?(Y/N) and describe the breaking changes(e.g. more details, motivations or doc link):

[x] N
[ ] Y

5. Are there test cases for these changes?(Y/N) select and add more details, references or doc links:

[x] Unit test
[ ] Integration test
[ ] Benchmark (add benchmark stats below)
[ ] Manual test (add detailed scripts or steps below)
[ ] Other

kclvm/tests/test_units/runtime/str/test_str.py

6. Release note

Please refer to Release Notes Language Style Guide to write a quality release note.
None

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

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

Totals

Change from base Build<PHONE_NUMBER>:
0.0%

Covered Lines:
2300

Relevant Lines:
2614

💛  - Coveralls


Issue: Agent Executor tends to answer user question directly and set it as Action Input during the iterative thought process.

I am trying on the Custom Agent with Tool Retrieval example, there are some times (not always 100%) when the Agent Executor will return the answer itself in the Action Input. The inconsistency make things even worse.
For example: I have a Small Talk Tool that will be in charge of answering casual conversation from user. I have given a profile to my agent (name: Sam). Here is one of the scenario that I got:
Question: Hello I am Bob, what is your name?
Thought: The user is initiating a small talk conversation
Action Input: Hi Bob, I am Sam, your personal assistant. How can I assist you today?
Observation: As an AI language model, I don't need any assistance, Sam. But thank you for asking! How about you? Is there anything I can help you with?
So the expected response by the agent became the action input, which in the end output another response which doesnt make sense at all. This goes on to happen to other tools as well such as querying content from Vectorstore.
Suggestion:
Is there a possibility where we can restrict the action input to just the user question instead of allowing the agent to answer it and modify the initial context?
Be it the prompt or temperature? I'm open to any advice. Thanks!

+1
I only want the final answer, and don't want to see the AI's thought process

I am trying on the Custom Agent with Tool Retrieval example, there are some times (not always 100%) when the Agent Executor will return the answer itself in the Action Input. The inconsistency make things even worse.
For example: I have a Small Talk Tool that will be in charge of answering casual conversation from user. I have given a profile to my agent (name: Sam). Here is one of the scenario that I got:
Question: Hello I am Bob, what is your name? Thought: The user is initiating a small talk conversation Action Input: Hi Bob, I am Sam, your personal assistant. How can I assist you today? Observation: As an AI language model, I don't need any assistance, Sam. But thank you for asking! How about you? Is there anything I can help you with?
So the expected response by the agent became the action input, which in the end output another response which doesnt make sense at all. This goes on to happen to other tools as well such as querying content from Vectorstore.
Suggestion:
Is there a possibility where we can restrict the action input to just the user question instead of allowing the agent to answer it and modify the initial context?
Be it the prompt or temperature? I'm open to any advice. Thanks!

I am also facing the same issue, Needs help

+1


feat: bump cdk8s to version 2.x (#696)

Backport
This will backport the following commits from k8s-22/main to k8s-21/main:

feat: bump cdk8s to version 2.x (#696)

Questions ?
Please refer to the Backport tool documentation

⚪ Backport skipped
The pull request was not backported as there were no branches to backport to. If this is a mistake, please apply the desired version labels or run the backport tool manually.
Manual backport
To create the backport manually run:
backport --pr 698

Questions ?
Please refer to the Backport tool documentation


No Intro Skip

while there is a skip button it's to go to the end of the video. does on all videos from Crunchyroll. i am using the websites beta. not sure if it'll help.

We are talking about the dub versions, aren't we? if it's the case, it should start to handle them

Yes, i'm sure cause of funimation merge thing, it'll take a bit to add in the time. Thank you on this btw. this addon is by far, my favorite cause of stuff they can't do themselves. lol

Closing the issue as it now supports dubs


Email Authentication

Need this feature In order to use VMS account to login to Ushahidi. Thanks!!!

Done. Wait for deployment.

It works. Thanks!


Please add a license

Hi,
Could you please add the MIT or Apache v2 license to this codebase?
I need to modify it for my specific mesos/marathon environment, and I need to keep my legal team happy.

Done.


update xx to v1.6.1 for compatibility with alpine 3.21 and file 5.46+

This fixes compatibility with alpine 3.21 and file 5.46+

Fix additional possible xx-cc/xx-cargo compatibility issue with Alpine 3.21
Support for Alpine 3.21
Fix xx-verify with file 5.46+
Fix possible error taking lock in xx-apk in latest Alpine without coreutils

full diff: https://github.com/tonistiigi/xx/compare/v1.5.0...v1.6.1

cc @crazy-max @tonistiigi


RFC 0023: minify connection invitation?

Connection invitations are often going to be represented as QR codes. Having them be as short as possible would decrease the visual bandwidth we need. This is not just a nice-to-have; it may have a significant effect on whether an invitation is usable with particular software or cameras. Evernym's internal testing is running up against QR size limits that we don't like, based on the current message's information density.
I'm wondering if we could agree on some or all of the following conventions to reduce pressure on QR code size:

Minify key names like "serviceEndpoints" and "recipientKeys" and "routingKeys" to "se", "rek", "rok"
Minify @type's value to something like "didex/1.0/inv"
Strongly suggest that service endpoint values be as short as possible

(Both of the minifications would apply only to connection invitations, not to all DIDComm message types, and would have to have reverse mappings to their full forms declared in the RFC. This feels yucky, but it is true that this one message has unique requirements...)
An obvious alternative is to make the QR code a short link that redirects to a longer link containing expanded data. The problem with this is that it requires the URL to be followed, whereas we were trying to make it possible for DIDComm-aware software to pick apart the URI/QR code, parse out the underlying DIDComm invitation message, and act on it, all without involving the HTTP stack.

QR size limits that we don't like

What limits are you guys running into, and how much would this proposal improve things?

@khagesh or @tylerquinnton, can you comment on the size issues that led us to experiment with minimizing?
As far as how much it will help, I would say this may reduce size of the invitation by 25-50%. That could provide some genuine benefit, but it's not a panacea.

@dhh1128, older phones can't scan a QR code that has the entire connection invitation in it. The QR code is just too big. I'm hoping to make the QR code a simple short link that tells the phone where to go download the connection invitation, as you have indicated.

@dhh1128 @llorllale There are two technical problems that we are facing with large data in QR codes.

QR Codes have a maximum capacity. Here is what it looks like as of now
| QR Code Data Capacity |
| --- | --- |
| Numeric Only |  Max. 7089 characters |
| Alphanumeric | Max. 4296 characters |
| Binary (8 Bits) | Max. 2953 characters |
So, if invitation QR code has details about sender and extra text or if we increase size of metadata that needs to be sent in invitation, then we can hit max limit easily. Since we can't trim down invitation details because they are necessary, we can at least shorten key names to stay below max limit.
Bigger QR codes are slow to scan on lower end devices. Some devices such as Nokia 1 and some old HTC devices takes lot longer to scan bigger QR codes.

As both Daniel and Tyler suggested that one option is to use short link, and that link is converted to QR code instead of whole invitation details. But, this option has it's own pros and cons.

@dhh1128 I think it makes more sense to categorize this as a problem of delivery/transport of the invitation, not the invitation itself. This is the direction we were heading in in #146 anyways. Not sure what's happening with the RFC though...
Even if we minify as you say, it won't be enough to offset the extra characters in this invitation:
{
    "@type": "didex/1.0/inv",
    "@id": "12345678900987654321",
    "label": "Alice",
    "rek": ["8HH5gYEeNc3z7PYXmd54d4x6qAfCNrqQqEB3nS7Zfu7K"],
    "se": "https://example.com/endpoint",
    "rok": ["8HH5gYEeNc3z7PYXmd54d4x6qAfCNrqQqEB3nS7Zfu7K", "IdmVWWBQMr5U17nhiVLk8VqSlcOw0XkXypnC5qJR7Sd", "TFJ2lxI4GfyaPrhcic49ComTg3TCGbGmFzkQtcJyx8R"]
}

To solve this generically I think the Inviter should QR-encode a didcomm URL where the invitation can be fetched.

Okay. I wanted to open the issue so the question could be publicly asked
and answered, but I am okay if the community wisdom is that minifying is
not worth doing.
On Thu, Oct 17, 2019 at 12:47 PM George Aristy<EMAIL_ADDRESS>wrote:

@dhh1128 https://github.com/dhh1128 I think it makes more sense to
categorize this as a problem of delivery/transport of the invitation,
not the invitation itself. This is the direction we were heading in in
#146 https://github.com/hyperledger/aries-rfcs/issues/146 anyways. Not
sure what's happening with the RFC though...
Even if we minify as you say, it won't be enough to offset the extra
characters in this invitation:
{
"@type": "didex/1.0/inv",
"@id": "12345678900987654321",
"label": "Alice",
"rek": ["8HH5gYEeNc3z7PYXmd54d4x6qAfCNrqQqEB3nS7Zfu7K"],
"se": "https://example.com/endpoint",
"rok": ["8HH5gYEeNc3z7PYXmd54d4x6qAfCNrqQqEB3nS7Zfu7K", "IdmVWWBQMr5U17nhiVLk8VqSlcOw0XkXypnC5qJR7Sd", "TFJ2lxI4GfyaPrhcic49ComTg3TCGbGmFzkQtcJyx8R"]
}
To solve this generically I think the Inviter should QR-encode a didcomm
URL where the invitation can be fetched.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/hyperledger/aries-rfcs/issues/261?email_source=notifications&email_token=AAQ3JCGDCKHA7EVZ7GTSUJTQPCXLDA5CNFSM4JBOPQK2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEBREIKA#issuecomment-543310888,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAQ3JCGHLW7447JC7Y6C2ATQPCXLDANCNFSM4JBOPQKQ
.

@dhh1128

I wanted to open the issue so the question could be publicly asked
and answered, but I am okay if the community wisdom is that minifying is
not worth doing.

To be clear - I speak for myself, not the community! You may keep this issue open and collect more feedback. You can raise the issue on the weekly call as well.


WIP: Add dependencies of cradles

closes #35
Adds a new record-field for files that are dependencies of the cradle.
cc @ndmitchell

Another idea that works around most of the problems: Add a field to hie.yaml "cradle-deps" where a user can specify the deps for a cradle.

@mpickering suggested that it should be possible to query the build tool for cradle dependencies, e.g. then the signature would be cradleDependencies :: IO [FilePath].

Would it be cheaper to query the build tool for cradle dependencies simultaneously with querying it for flags? In which case an extra field in the return of CradleAction might work best.

Closed in favour of #42


derive Clone for read-only iterators

Why not derive Copy? They're semantically copyable.

See https://github.com/rust-lang/rust/issues/18045.

This doesn't make sense to merge until https://github.com/rust-lang/rust/issues/19839 is fixed anyway.


Update Order-API

Hello,
first off all, big thanks to this well made script. We every much appreciate it!
Just a short question:
Must the script be updated due the current change of the Order API section? According to Amazon, you can now get BuyerInfo and Address via the "GetOrder(s)" call, if you make the call with a RDT token.
Thank you very much and kind regards

@Bowserlord It should work without any updates. If you pass in a restricted_data_token from a createRestrictedDataToken operation when using the getOrders operation it automatically uses the RDT instead of the usual access token as x_amz_access_token header value.

Thanks for your answer. It worked perfectly fine.
I just wonder now, why operations like GetBuyerInfo and Geteligibleshippingservices are working without explicity passing a restricted_data_token.

@Bowserlord That's strange, can't really confirm that. Just tried calling getOrderBuyerInfo without specifying a RDT and received an InvalidInput error.

how to use restricted_data_token with createReport api for the reports that come under rdt types /

@iamsr, according to the token use case guide you must pass the restricted_data_token to the getReportDocument operation. It should work like this:
let report_document = await sellingPartner.callAPI({
  operation:'reports.getReportDocument',
  path:{
    reportDocumentId:'<REPORT_DOCUMENT_ID>'
  },
  restricted_data_token:'<RESTRICTED_DATA_TOKEN>'
});

@amz-tools  but the first of report is createReport and there I am receiving the access denied error only on those reportytype which are mentioned under RDT.

@iamsr That's strange, which reports endpoints version did you use? 2020-09-04 or 2021-06-30?


Misc Ascii and browser fixes.

This move some of the coloration outside of the templating engine, this should let us add an option to make colors optionals, and should make testing easier, as now we can have expected colorless outputs and test the codebase against it.
This also add some fixes to the urwid frontend – which still crashes in a number of places, so I'm wondering if we shoudl rewrite it using textual. One of the other current limitation with urwind is the lack of ability to reflow paragraph is they contain multiple entries.

Yay sounds good! I'm experimenting with textual, will send something up soon.


Feature request: toggle key option for afk farm use

It would be extremely useful if there was an option to toggle auto attack with a keyboard key so that it could be used for afk'ing farms that would otherwise require the player to manually kill mobs.

would you like to press a key and the player is automatically attacking mobs?
then when you press it again it stops attacking

Essentially yes but I wouldn't want it to be a kill aura either

don't worry! hahahaha

new mod version as released with this options


New Func backend

Closes #526
Closes #619 (FunC grammar & parser by @novusnota)
Main roadmap

Write AST/formatter, and utilities to generate and emit Func code.
Rewrite the existing codegen using the API created on the step 1.
It should be rewritten entirely at this step, since everything is interconnected in the old backend, and there are no any unit tests checking any specific functionality of the generated code.
Provide differential testing between two backends achieving good code coverage for the new backend.
The previous backend is basically untested. It requires to write a number of Tact contracts and setup code coverage to ensure that all the implemented features of the new backend work in the same way as in the old one.
Refactor the new backend and remove the old backend.

Sub-roadmap of @novusnota
The goal is to create a comprehensive FunC grammar and parsed using the Ohm parsing toolkit. Should cover FunC version 0.4.4:

[x] #pragma ...

[x] Grammar (grammar.ohm)
[x] Semantic actions (semantics.addOperation)
[x] Unit tests (positive and negative)

[x] #include ...

[x] Grammar
[x] Semantic actions
[x] Unit tests

[x] global ...

[x] Grammar
[x] Semantic actions
[x] Unit tests

[x] const ...

[x] Grammar
[x] Semantic actions
[x] Unit tests

[x] Identifiers & Types (unexpectedly tough!)

[x] Grammar
[x] Semantic actions
[x] Unit tests

[x] Comments and literals

[x] Grammar
[x] Semantic actions
[x] Unit tests

[x] Functions (declarations & definitions, including asm ones):

[x] Grammar
[x] Semantic actions
[x] Unit tests

[x] Statements

[x] Grammar
[x] Semantic actions
[x] Unit tests

[x] Expressions (just like in C++'s parser, with all its precedences matched!)

[x] Grammar
[x] Semantic actions
[x] Unit tests

[x] Done?
[x] (maybe) Add tests with .fc files from ton-blockchain/ton monorepo

Current progress

[x] FunC syntax tree (AST + comments)
[x] FunC syntax iterators
[ ] FunC formatter (we can skip unit tests for now, as it will be tested as a part of the Tact compiler pipeline)

[ ] Support JSON dumps for debugging purposes
[x] Support indentation
[ ] Support parens

[ ] New FunC generators (based on src/generators/writers/write*.ts; similar code structure if possible)

[x] Expression
[x] Statement
[x] Function
[x] Literal
[x] Contract
[x] Interfaces
[x] Primitives
[ ] Constant

[x] Rewrite utilities from the current codegen (WriteContext)

[x] Type utilities (src/generators/resolveFunc.*.ts)
[x] ABI helpers
[x] Routers
[x] Receivers
[x] Getters
[x] Serializers
[x] Accessors
[x] Stdlib
[x] Init serializers
[x] Storage functions
[x] Static functions
[x] Extenstions
[x] "used" identifiers

[x] Write the dependency management used when emitting code from WriteContext. The existing structure based on .context/.used calls is too imperative and makes the source code unreadable. Thus, a better design should be developed.
[ ] Write a brief description of the structure of the generated Func code and the high-level overview of the architecture of the codegen (in e.g. src/codegen/README.md)
[ ] Merge with main incorporating upstream changes to the new backend:

https://github.com/tact-lang/tact/pull/615

[ ] Provide differential testing of two backends

[ ] Write new unit tests if needed Write unit tests for the codegen, since we don't have any
[x] Provide functions for differential testing of two backends
[ ] Configure the fuzzer to support both backends

[ ] Refactor the new backend

[ ] Change names and code structure inherited from the original backend
[ ] Extracts methods where possible; as for now it is unreadable

[ ] Remove the previous backend

Notes

Running the new backend: yarn build && NEW_CODEGEN=1 PRINT_FUNC=1 ./bin/tact --config <project.config.json>. It will print the generated source in stdout. Unset NEW_CODEGEN to run the same with the old backend.
Running the differential test:  yarn test src/codegen/codegen.spec.ts
All the elements in the AST have the FuncAst prefix. When creating a separate packge, we could remove the Func part; and add it only to our project. This could be done creating a separate module that includes index.ts with public exports like: export { AstComment as FuncAstComment } from '@func-package-name';

[ ] I have updated CHANGELOG.md
[ ] I have documented my contribution in Tact Docs: https://github.com/tact-lang/tact-docs/pull/PR-NUMBER
[ ] I have added tests to demonstrate the contribution is correctly implemented: this usually includes both positive and negative tests, showing the happy path(s) and featuring intentionally broken cases
[ ] I have run all the tests locally and no test failure was reported
[ ] I have run the linter, formatter and spellchecker
[ ] I did not do unrelated and/or undiscussed refactorings

A summary of our recent conversation with @anton-trunov:

This PR should be merged iteratively. The main blocker is that the old backend is not sufficiently covered by tests. Thus, it is not realistic to provide good differential testing to ensure everything works as expected in the new backend.
We should use functions from syntaxConstructors to map Tact expressions/statements to FunC (writeFunction.ts and writeExpression.ts). Other FunC functions implicitly introduced by the backend should be parsed as a standard library using the FunC parser. Using AST generator functions there makes the code less readable and maintainable.
The new backend should be merged and maintained at the same time as the old backend. However, we need to enable it in tact.config.json, not with an environment variable as we do now.
We could use diff in differential tests on the artifacts generated by the compiled code, not on the FunC itself.

Some goals we would like to achieve in the new backend later:

Some code generation functions might be optimized to reduce code size and gas consumption.
Refactoring to make it more maintainable.

Thus, I suggest limiting the scope of this backend to the following:

FunC parser
Test suite for differential testing
New backend, which is essentially a copy of the old one, implementing the following features:

syntaxConstructors.ts
An option in the configuration file to choose the backend
writeStdlib.ts and writeRouter.ts ported to the new parser
Expression and statement generators that use syntaxConstructors.ts to emit source code
Unit tests for diff testing that cover the implemented logic

After implementing this, I suggest to merge this PR and add more functionality to it iteratively, covering it with tests.

However, we need to enable it in tact.config.json, not with an environment variable as we do now.

How about adding the new experimental option for this. Like, newFuncBackend:
{
  "projects": [
    {
      "name": "some_prefix",
      "path": "./contract.tact",
      "output": "./contract_output",
      "options": {
        "experimental": {

        }
      }
    }
  ]
}


Version Checking Error

I've reinstalled the latest release many times, but I keep getting a "Version Checking Error" when I start it up.
DebugLog.txt
Windows 10
Java 11

@ThibautSF Are you there?

I just downloaded this and I'm getting the same error, I attached a screenshot.


LSP: Implement textDocument/documentHighlight

Problem
https://microsoft.github.io/language-server-protocol/specification#textDocument_documentHighlight isn't implemented.
Proposed solution
Implement it.

WIP PR implementing this is here:
https://github.com/sorbet/sorbet/pull/1623


HARP-9110: Update to Typescript 3.8

Thank you for contributing to harp.gl!
Before requesting a pull request, please remember to check the following documents:

contribution guidelines
coding style

If you are adding new functionality we would highly appreciate if you can describe what is the capability you are adding and even better if you can add some examples. Please also remember to add tests for it.
CI Check
Our bots will check whether your PR can be directly integrated into the mainline. We have some internal integration tests running on the background, our bots will inform you of the next steps and someone from our team will take a look and help if needed!
And please do not forget to sign-off your commit! You can read more about DCO here. But, in short, you just need to use git commit -s or append --signoff when you are committing to the repo.
Happy contributing!

Codecov Report

Merging #1316 into master will increase coverage by <.01%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master    #1316      +/-   ##
==========================================
+ Coverage   53.93%   53.93%   +<.01%
==========================================
  Files         264      264
  Lines       23638    23645       +7
  Branches     5268     5276       +8
==========================================
+ Hits        12748    12754       +6
- Misses      10890    10891       +1

Impacted Files
Coverage Δ

...e/harp-mapview/lib/geometry/TileGeometryCreator.ts
38.29% <0%> (-0.07%)
:arrow_down:

@here/harp-mapview/lib/text/TextStyleCache.ts
58.44% <0%> (+1.17%)
:arrow_up:

Continue to review full report at Codecov.

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


Update vsb and vsr crds with status field updates

This PR updates the VSB and VSR CRDs with the following additions to the status:

Adds StartTimestamp and CompletionTimeStamp to VSB and VSR status
Adds Volsync ReplicationSource name, StartTimestamp and CompletionTimeStamp to VSB status
Adds Volsync ReplicationDestination name, StartTimestamp and CompletionTimeStamp to VSR status

Related volume-snapshot-mover controller PR: https://github.com/migtools/volume-snapshot-mover/pull/181

Codecov Report
Base: 33.79% // Head: 33.79% // No change to project coverage :thumbsup:

Coverage data is based on head (03a2741) compared to base (1200dc8).
Patch has no changes to coverable lines.

Additional details and impacted files
@@           Coverage Diff           @@
##           master     #878   +/-   ##
=======================================
  Coverage   33.79%   33.79%
=======================================
  Files          17       17
  Lines        3128     3128
=======================================
  Hits         1057     1057
  Misses       1979     1979
  Partials       92       92

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

:umbrella: View full report at Codecov.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.

/retest-required

run make bundle to update bundle/ too

Done, thanks @kaovilai

/retest

/retest

/retest


Doesn't work properly on Ubuntu

Tried this on Ubuntu 16.04 x64 with Python 3.5.2 in both the default terminal and Terminator and the output doesn't always print over the top of itself, instead printing on new lines as with regular print().
When I run the example from the README, none of the lines seem to reprint. I've also tried this other example and only the Total Progress line stays in the same spot (the Moving File line always prints on a new line).
Not sure if it matters, but I'm using zsh. I tried both of the above on OSX using Terminal.app (also using zsh) and it worked fine.

Thank you for reporting!
I will now try to reproduce this issue on Ubuntu 16.04

Sorry for that I didn't reproduce the issue you mentioned D:
I use docker to install a ubuntu16.04 and install a Python 3.5.2 and switch to zsh to run the reprint demo, but everything seems fine on me :O
May I have some screenshots for that? That could help me find out what is happening :D
Thank you again for reporting :D

This is what I'm seeing in Terminator with zsh:

I also switched to the standard Ubuntu terminal + bash and the same thing happens:

I also tested it outside of Unity (i.e. Ctrl+Alt+F1) and the same thing happens.

These screenshots help a lot!
hmm, reprint definitely not working :/
I will try to figure it out, that may take some time :O

确实如此

@jindaxia Thanks for reporting, may I ask for the version of your reprint? You can find that by using pip show reprint :D

Name: reprint
Version: 0.2.1
Summary: A simple module for Python2/3 to print and refresh multi line output contents in terminal
Home-page: https://github.com/Yinzo/reprint
Author: Yinzo
Author-email<EMAIL_ADDRESS>License: Apache-2.0
Location: c:\python36\lib\site-packages
Requires: backports.shutil-get-terminal-size, six

Just as a bump, this issue seems to persist. It does not work in ipython nor the linux mint 18.
python -c "import reprint
import time
with reprint.reprint.output(output_type='dict', initial_len=3, interval=0) as output:
  for i in range(3):
    output['a'] = i
    output['b'] = i*2
    output['c'] = i*3
    time.sleep(1)
"
a: 0
a: 0
b: 0
a: 1
b: 0
a: 1
b: 2
a: 1
b: 2
a: 2
b: 2
a: 2
b: 4
a: 2
b: 4
a: 2
b: 4
c: 6

With version 2.2.2 of the lib
pip show reprint
Name: reprint
Version: 0.2.2
Summary: A simple module for Python2/3 to print and refresh multi line output contents in terminal
Home-page: https://github.com/Yinzo/reprint
Author: Yinzo
Author-email<EMAIL_ADDRESS>License: Apache-2.0
Location: /home/rnvdv/.conda/envs/scratch/lib/python3.5/site-packages
Requires: six, backports.shutil-get-terminal-size

Thanks you guys, I finally reproducted this bug in a virtual machine, which is led by the failure of going previous line by string \r\b\r.
A new version of reprint is coming soon.

reprint 0.3.0 now released. please let me know if there is any problem :D

Looks good!

Not working on Windows 10 using Cmder. My case is probably a really niche one, but it is still a problem that you might want to know about. Python 3 if that makes any difference.

@Wulfre Nice! And your solution is really helpful! I may consider making a small patch for Windows users :D

Living in covid-19 era and the fix in 2017 stills works, thanks @Wulfre !! Made my day (night)

windows cmd support is now added. I will soon update the PyPI version to 0.6.


Problem with Getting started example

I downloaded from the Stan website all the packages mentioned in Matlabstan - Getting Started according to the instructions. However, my Matlab2015b gives me this error message gives me this error message when I try to run the given script by copy-pasteing it or when downloading the eight_schools.stan -file and running the code line below it:
Error using StanModel/set.stan_home (line 311)
Does not look like a proper stan setup
Error in StanModel (line 184)
self.stan_home = p.Results.stan_home;
Error in stan (line 108)
model = StanModel();
I checked with path-command that all the necessary folders (below MatlabStan-<IP_ADDRESS> and MatlabProcessManager folder's two .m-files) are in the path. In the Matlab workspace I have those same folders and files. I have put the path to MatlabStan-<IP_ADDRESS> in stan_home.m with this exact line:
d = '/Users/sebastiansilfverberg/Documents/MATLAB/BDA/MatlabStan-<IP_ADDRESS>/cmdstan-2.9.0';
+mstan -folder is directly below MatlabStan-<IP_ADDRESS>.
Can you tell me what seems to be the problem? I'm using Max with OSX 10.11.2

I'm actually having the same problem. I was able to get everything to work on my Mac (OS X 10.11.3) running Matlab 2014b and Matlab 2015b. However, now that I am trying to get everything to run on my Windows machine, I get the following error:
Error using StanModel/set.stan_home (line 311)
Does not look like a proper stan setup
Error in StanModel (line 184)
self.stan_home = p.Results.stan_home;
Similarly, I'm running the latest versions of MatlabStan, cmdstan, and MatlabProcessManager. I've tried Matlab 2014a and Matlab 2015b on my Windows machine (Windows 7 Professional v6.1). I also put the correct path in stan_home.m.
I feel like I must have installed something incorrectly, so I reinstalled everything. I get the same problem. I've been racking my brain for the last few hours, but I haven't found a solution.
silfves1, did you figure your problem out?

I've been trying to figure this out all morning and have remained unsuccessful.  It seems to not be creating a 'cmdstan-2.9.0\bin' directory that is needed to run cmdstan.
Has anyone else encountered this problem?

Brian answered me that the main problem was that I haven’t had compiled cmdstan in the terminal before hand. After that all problems disappeared. Please see the cmdstan manual and examples in the Stan website to see, how the compiling is done. Then it should be fine.
--
Sebastian Silfverberg
Päällä 25. helmikuuta 2016 klo 1.17.04, Peter Clayson (notifications<EMAIL_ADDRESS>kirjoitti:
I'm actually having the same problem. I was able to get everything to work on my Mac (OS X 10.11.3) running Matlab 2014b and Matlab 2015b. However, now that I am trying to get everything to run on my Windows machine, I get the following error:
Error using StanModel/set.stan_home (line 311)
Does not look like a proper stan setup
Error in StanModel (line 184)
self.stan_home = p.Results.stan_home;
Similarly, I'm running the latest versions of MatlabStan, cmdstan, and MatlabProcessManager. I've tried Matlab 2014a and Matlab 2015b on my Windows machine (Windows 7 Professional v6.1). I also put the correct path in stan_home.m.
I feel like I must have installed something incorrectly, so I reinstalled everything. I get the same problem. I've been racking my brain for the last few hours, but I haven't found a solution.
silfves1, did you figure your problem out?
—
Reply to this email directly or view it on GitHubhttps://github.com/brian-lau/MatlabStan/issues/21#issuecomment-188509604.

Thanks, silfves1. Ya, I went to the Windows-specific instructions then didn't go back to continue the rest of the installation guide. Thank you for the feedback. Everything works now.

I’m glad to hear that!
--
Sebastian Silfverberg
Päällä 27. helmikuuta 2016 klo 19.22.38, Peter Clayson (notifications<EMAIL_ADDRESS>kirjoitti:
Thanks, silfves1. Ya, I went to the Windows-specific instructions then didn't go back to continue the rest of the installation guide. Thank you for the feedback. Everything works now.
—
Reply to this email directly or view it on GitHubhttps://github.com/brian-lau/MatlabStan/issues/21#issuecomment-189686211.


Adds -t for threads and fixes broken templates.

@atcasanova - this is definitely very needed - but I am running into an issue where I get an HTTPSConnectionError from the requests library when the server rate limits me due to the amount of threads coming from my location, and then when I try to cancel the execution by hitting Ctrl + C, I have to hit Ctrl+C many times before it exits.

I usually end up hitting Ctrl+Z to send it to the background instead, but I think this PR would introduce a bug. Correct me if I am wrong here.

Hey kinnard
It takes some time to kill when you hit ctrl+c because it waits for active
connections to close to try to get their results. About the rate limit, I
think you're right.
On Mon, Dec 13, 2021, 22:11 Kinnaird McQuade @.***>
wrote:

@atcasanova https://github.com/atcasanova - this is definitely very
needed - but I am running into an issue where I get an HTTPSConnectionError
from the requests library when the server rate limits me due to the amount
of threads coming from my location, and then when I try to cancel the
execution by hitting Ctrl + C, I have to hit Ctrl+C many times before it
exits.
[image: image]
https://user-images.githubusercontent.com/3422255/145914271-1539e0ad-b757-46e3-bd90-a3710d24e2f9.png
I usually end up hitting Ctrl+Z to send it to the background instead, but
I think this PR would introduce a bug. Correct me if I am wrong here.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/fullhunt/log4j-scan/pull/38#issuecomment-993061639,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAWWB2K4L5K35L3273AMAGTUQ2KTNANCNFSM5J7O6F4A
.
Triage notifications on the go with GitHub Mobile for iOS
https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675
or Android
https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.


Run patches on setup

This builds with #5 but I'm not sure if this is the best way to do this as discussed there.


Multilanguage Support

Is there any way to support multiple languages of the knowledgebase within one instance of raneto? So something like http://docs.myapp.com/en  and http://docs.myapp.com/de displaying only english and german articles respectively. Just creating folders in the content directory doesn't work ...

+1 Would love to see this support too!

Fixed in #246 by @Orhideous


make this pip install-able

add minimal generic python code here to enable jupyter extension

Following the vs-code binder example, the setup.py now includes the jupyter_serverproxy_servers entry point, this enables the Graph button within jupyterlab.
https://github.com/oda-hub/renku-aqs/blob/cli-display-graph/setup.py

need a small readme to be tested by @volodymyrss @ferrigno @andriineronov

we might need to add it to repository template.
need an explanation how to show graph in https://renkulab.io/gitlab/astronomy/mmoda/oda-sdss

While testing the installation of the plugin on the repo, I noticed that it was still based with an old version of renku.
Since the plugin now uses the latest renu version (2.1.0) I performed the migration (renku migrate), which completed successfully, and then I wanted to test the plugin, but it failed. So I tried also to run a more simple renku command (renku workflow ls), but it failed in a similar fashion. In particular, the error is the following:
AttributeError: module 'renku.domain_model.project' has no attribute 'ProjectTemplateMetadata'
Any ideas of what the issue could be @rokroskar ?

I think @Panaetius needs to help here... I'm not sure about the changes to the models in 2.x

you only get that error when accessing a project migrated to 2.x with a renku version < 2.x. Are you sure you're running the newest version of renku (check with renku --version)?

you only get that error when accessing a project migrated to 2.x with a renku version < 2.x. Are you sure you're running the newest version of renku (check with renku --version)?

Thanks @Panaetius , I did check the version and I though I was running the most recent (but apparently it was not the case). I upgraded and I now the error disappeared.

if you're in a session, maybe the Dockerfile still installs an old version so you get the old one every time you launch it?

this is done, yes @burnout87 ?

let's discuss if this is done today @burnout87

since the plugin is also pushed to pypi, it is now complete


Add unit tests for importing of GnuCash XML files.

Just a pair of simple tests to get started.

Awesome 👍


lnrpc: routing fee inaccuracy

This PR extends @ErikEk 's original PR https://github.com/lightningnetwork/lnd/pull/5711 with basic itest demonstating the fix and the protocol extension.

Thank you.

One last open question is whether to use the oneof construct. In theory this is backward compatible, but perhaps a simpler approach is to just add the new ppm param. See discussion: https://github.com/lightningnetwork/lnd/pull/5711#discussion_r791249501

In theory this is backward compatible, but perhaps a simpler approach is to just add the new ppm param. See discussion: #5711 (comment)

I don't think it is...an "older" client would no longer see this field populated, and if they set a value we wouldn't read it.


Nextjs refactor: Desktop Street View button not working

It's working on mobile and on live, just not on test desktop.

[x] Fix Street View button operation on desktop

See this example service on mobile and desktop. https://test.yourpeer.nyc/locations/sanctuary-for-families-financial-district

Fixed


Epinio Production Install IP Chicken and Egg

While trying to deploy Epinio on Digital Ocean a problem with the sequence in which things are being installed and provisioned was hit.
Up to now, Epinio installs its components in the following sequence:

It installs Linkerd
It installs Traefik (on an annotated namespace, so traefik control plane pods are meshed)
It installs cert-manager
It installs Epinio server (the Epinio API endpoint)
It creates a certificate for the Epinio server using cert-manager CRDs

It actually does more, but these are the steps that reproduce the issue we have. The first bullet (linkerd) is probably also irrelevant to this discussion.
When a custom system domain is used (not the omg.howdoi.website), Epinio will ask the cert-manager to create a let's encrypt certificate for the Epinio server. This involves an HTTP challenge which is automatically solved by the cert-manager. Before that happens, cert-manager does a "self test" request, trying to access the http url which satisfies the http challenge. That url is in the form of "http://mycustomdomain.org/..."
Obviously for this to work, the domain used by the user (the system domain) should already resolve to the API address of the loadbalancer (in other words it should point to the cluster).
Long story short, the moment we ask the cert-manager to create a let's encrypt certificate for a custom domain, that domain must already point to the cluster. If that is not the case, the failed DNS query is cached and the cert-manager doesn't recover (maybe it will after DNS cache has expired, we didn't wait that long).
The chicken-egg problem in this case was that we don't know the loadbalancer IP address, before we deploy a service on the cluster that actually needs a load balancer IP. epinio install is the thing that triggers the IP address allocation but also the thing that will fail if the system domain doesn't resolve to that IP address. Obviously there is no time for the user to setup the DNS while epinio install is running (and before we hit the cert-manager problem).
We thought of 2 ways to solve this problem:

We implement an epinio install traefik command to allow the user to only install traefik to the cluster. This should trigger the IP address allocation. We will print the IP address when this command returns so the user can setup the system domain to point to that IP address. When that's done, the user can run epinio install to resume the epinio installation.

We implement an epinio install --traefik-loadbalancer-ip=<IP_ADDRESS> flag. In most public cloud providers, you can allocate a public IP address and use it as the LoadBalancerIP field in the services you create. This flag will allow the user to do exactly that. First the user "buys" an IP address from the public cloud provider. Then the user sets up  the system domain she is planning to use for Epinio to point to that IP address. Finally the user installs epinio with the new flag set to that IP address. This will instruct Epinio to set the LoadBalancerIP field of the Traefik service to this IP address and hopefully the public cloud provider will respect that setting.

The relevant issues on our board are:

Solution 1: #477 -- PR #491
Solution 2: #476

Related: #489 (Document Traefik/Linkerd meshing)

From chatting with Chris, in mail and teams a few more things which better fit here.
Taken from https://github.com/epinio/epinio/issues/476#issuecomment-861230797 :

Chris pointed out that it may be hard to recover if the user releases the IP address after installing Epinio. E.g.

The user gets an Elastic IP address (AWS) to be used as --loadbalancer-ip in epinio install
The user sets up system domain with this IP address
The user installs Epinio
The user releases that Elastic IP address
Boom!

Epinio is no longer reachable and the loadbalancer ip address is hardcoded in our epinio service. The only way to fix this is to directly access the service and change the load balancer ip. We could implement a new epinio command for that but it certainly adds complexity.

Another approach (suggested both by Mario and Chris) is to use DNS challenge instead of the HTTP one (https://cert-manager.io/docs/configuration/acme/dns01/). This requires API access to the DNS provider. Many DNS providers allow remote configuration through some API but many don't.

One more approach could be to only use self-signed certificates when first installing Epinio and let the user upgrade to let's encrypt (or other signer) with an explicit Epinio command. E.g. epinio certs-signer letsencrypt --update-existing
This command would re-generate all certs using the letsencrypt signer (epinio server cert, app certs etc).
Or it could be per end point. E.g. something like this: epinio app change-cert-signer letsencrypt myapp

This would allow the user to setup another signer later on and be able to use it for new or existing applications.

Re-asking from #476
I personally like the self-signed by default with an option to upgrade their LE setup. From an outside perspective, that seems like it would be the easier code to maintain longer term?
I think I have a few questions:

What's the brittleness of each option? (how easy would it be for a user to screw up either the setup or the maintenance?)
What's the cost to change from one option to the other if we see that people don't like the option we picked?
Are there any k8s features that might be coming in the future that would change any of this?

Another thing to think of is if a user wants to do SSL termination external to the cluster (which is what we did for the CAP sandbox). This would obviously not be something that Epinio can or should automate, I just want to make sure that whatever option we choose it doesn't exclude that use case.

This is solved now, right?

This is solved now, right?

Kind of. Users have these options now:

Install traefik with a separate command, find the IP address and finish the installation
Install all in one go with --ingress-service-ip option (with cloud providers that support it).

so the original issue in the description is solved. Regarding your questions:

What's the brittleness of each option? (how easy would it be for a user to screw up either the setup or the maintenance?)

If they manually go crazy deleting CAs we generate and such then they won't be able to recover, at least not using epinio commands. It's not a scenario we care to support I guess.

What's the cost to change from one option to the other if we see that people don't like the option we picked?

Being able to switch to other issuers/CAs is a feature of its own and is not currently implemented. We need to provide a way to re-generate all the certs and update all the Ingresses. We have 4 ingresses for epinio components (registry, epinio api, dex, traefik forward auth) plus all the ingresses for running applications. It's doable but it needs some work to make it happen.

Are there any k8s features that might be coming in the future that would change any of this?

Nothing that I know of but I'm not constantly monitoring future plans for Kubernetes, I could be missing something.
We can close this issue I think and create issues for additional features we want to implement.


Provide a constexpr size function

I could not find a way to use the size()  function of the C++ pack structure in a constexpr manner. For example, this fails:
constexpr int vsize = pack<double>().size();

because the constructor pack<double>() is not constexpr.
I believe one way to obtain the size of a fixed-size container is via tuple_size. This works e.g. for std::array as well. One could then write
constexpr size_t vsize = std::tuple_size_v<pack<double>>;

This is because of SVE basically where the size of SIMD vectors is not known at compile time but only at runtime. That's why none of the NSIMD constructs are constexpr. If you look at the headers you will see the use NSIMD_STRUCT so that when compiling for SVE this macro will be __sizeless_struct which currently supported by Armclang and the Fujitsu compiler.
May I ask in which construct you need the size at compile time?

I was defining a std::array where the size is rounded up to the next vector size, as in:
constexpr size_t vsize = pack<double>().size();
constexpr size_t N = (2*order+1 + vsize - 1) / vsize * vsize;
array<T,N> tmp;

I am currently using sizeof(pack<double>) / size(double) as a work-around.

Ah ok, in this case maybe nsimd::max_len will be of use to you (from nsimd.h)
#if NSIMD_CXX >= 2014
template <NSIMD_CONCEPT_VALUE_TYPE T>
constexpr int max_len = max_len_t<T>::value;
#endif

The downside is that its value is huge (namely (2048 bits) / bits(T)) for two reasons:

it is the maximum size of an SVE vector according to the SVE standard and
we wanted a common value for all architectures in case, by some matters of facts, this value is (most probably indirectly) used as a parameter to code that is executed on different architectures (eg. serialization of data, computations on heterogeneous environments via MPI...)

Thanks. I'm using the value only for a temporary array, so I don't have a need for an architecture-independent value.


.set('trust proxy', 3) doesn't work as documented. Will never trust proxies even if hops is specified.

I'm pretty certain that the .set('trust proxy', 2) style will not work as documented. trust(address, hops) is expected by https://github.com/strongloop/express/blob/master/lib/utils.js#L249
Most likely this should be something like if (!trust(this.connection.remoteAddress, proxyaddr.all(this, trust).length))
https://github.com/strongloop/express/commit/566720be15838f3fe9b30263a7058a8b497c28f5#diff-96d9811cb2296e877edf463c6cfc57bdR353

Please provide a test showing I not working, as I cannot replicate.

If you need, please tweak test in https://github.com/strongloop/express/blob/master/test/req.ip.js which is already testing the hop count feature with success.

Hi! Sorry for the hasty response early, I was on a phone. Now that I have fully read your report I understand the issue here: you misunderstand the feature. This implements an industry-standard way to determine the public IP on a HTTP connections that has traveled through proxies.
The "hop count" feature is the worst way to establish trust of all, but provided because there are times where you just don't know the IP addresses of your proxy servers and you know your site is only accessible by those proxies and no other way.
The way "hop count" works is that you are declaring the number of proxy servers in front of your server that you trust, as in, it pulls the IP address that the nth proxy server reported as the address that connected to it Your code example is different: you are trying to assert that there are exactly n proxy servers in the path between you and your client. This won't even work as soon as you have a visitor using their own proxy, raising the proxy count.
Basically, the implement within Express here is 100% correct according to industry practices of how trusting proxies for X-Forwarded-For works. If you need that weird implementation you posted above for some reason, the trust proxy setting accepts a function, so you can always implement it yourself :)!

And if you really are having an issue and your guess of what the code should be was not actually what you wanted, please provide some example code to help me reproduce the issue, and remember, if you need help making code to reproduce, just modify a test in that test file I linked to above :)

set('trust proxy', 3) doesn't work as documented.

From http://expressjs.com/4x/api.html#trust.proxy.options.table

Number
Trust the nth hop from the front-facing proxy server as the client.

So this is the documentation we have for it, which mates what I expect (I was checking to see if we had bad documentation or something). If you had the following connection:
S --> P1 --> P2 --> P3 --> C

Then a trusted hop count of 2 would return the IP address that P2 way (which would be P3's IP address). Each P in the diagram is a "hop" (as standard lingo in networking). This means that Express will return the IP address that P2 claims to have seen (which could very well be spoofed), but since we trust P2, then we trust it is not lying to us and use the IP address P3 as the first-untrusted IP, which is the client for logging and any auditing purposes.

Most likely this should be something like if (!trust(this.connection.remoteAddress, proxyaddr.all(this, trust).length))

This would result in a very different behavior, in that if you gave it 2, you would end up with the IP of P1 in the diagram above, since you just said you didn't trust anything anymore, since there were three proxies in the connection. I've never heard of any such industry trust like this, but if there are articles, RFCs, or something else that explains this kind of trust, I can look into it.
If you are saying that all the stuff I described as the actual, correct behavior, is what isn't working, please, please, send some way for me to reproduce, as I have not been able to reproduce our behavior not working.

Here are the missing tests for the hops arguments on trust proxies for req.protocol
https://github.com/serby/express/commit/e2a31120b0b52a5ddad52f81f05293dafe716ae2
Currently failing.
proxy-addr is correctly parameterising the trust function with the length of hops
https://github.com/jshttp/proxy-addr/blob/master/index.js#L63
It is only req.protocol and req.secure that are not correctly sending the hop length to the compiled trust function.

 I didn't see any mention of req.protocol or req.secure being the issue in your post, and the "what it should be" totally threw me off. Because of the way those headers are constructed, it should actually be just trust(req.connection.remoteAddress, 1).

Totally my bad. I wrong assumed it was more widespread than just req.protocol and req.secure

I've got the additional tests for req.secure and a fix about to PR.

Ok, thank you :) If you feel like it, please check anywhere we are calling that trust function directly. And remember: The number argument for those cases should simply be "1" since those headers are not a list and you don't want your site to break just because you have a customer that decided to use a proxy and added another hop to their connection.

Do you agree that this test demonstrate expected behaviour?
https://github.com/serby/express/blob/e2a31120b0b52a5ddad52f81f05293dafe716ae2/test/req.protocol.js#L112-L141

Just https://github.com/serby/express/blob/e2a31120b0b52a5ddad52f81f05293dafe716ae2/test/req.protocol.js#L112 should still be returning https, not http.

Yeah, I think your right.
There is a question of security. SSL connections should not be proxied beyond trusted proxies. An unexpected proxy in front of a trusted SSL proxy would most likely be a man in the middle attack. But I don't think that ignoring X-Forwarded-Proto is any sort of security measure, so it's probably best to always correctly report initial protocol regardless of the number of hops. Which I think is what you are suggesting.
It might be worth adding to the documentation that the hops interface set('trust proxies', n) will always report the initial protocol regardless of whether the initial proxy is within the trusted hops count.

It might be worth adding to the documentation that the hops interface set('trust proxies', n) will always report the initial protocol regardless of whether the initial proxy is within the trusted hops count.

This is not true; the whole point of trust proxies is because you trust that the ones you control are property setup to overwrite X-Forwarded-Proto with the correct value. This is how this ancient X-Forwareded-Proto header works: at the edge of your controlled network, you overwrite it to the one you trust.

And also, a MITM proxy is unlikely to actually set any proxy headers, so you wouldn't even know of it's existence within the X-Forwarded-For header; as far as your edge network would know, that MITM server is the client.


Support analog joystick and active high buttons

also fixes for button multiplexer
@ladyada - it's coming!

:D :D :D do you need the pygamer schematic? I AM SO EXCITED!

The changes are live in https://arcade.makecode.com/beta . You’ll need to update the bootloader to specify that buttons are analog.
From: ladyada<EMAIL_ADDRESS>Sent: Monday, April 29, 2019 9:44 AM
To: Microsoft/pxt-common-packages<EMAIL_ADDRESS>Cc: Peli de Halleux<EMAIL_ADDRESS>State change<EMAIL_ADDRESS>Subject: Re: [Microsoft/pxt-common-packages] Support analog joystick and active high buttons (#805)
:D :D :D do you need the pygamer schematic? I AM SO EXCITED!
—
You are receiving this because you modified the open/close state.
Reply to this email directly, view it on GitHubhttps://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2FMicrosoft%2Fpxt-common-packages%2Fpull%2F805%23issuecomment-487654275&data=01|01|jhalleux%40microsoft.com|6b386dc5fba74ba665be08d6ccc1f1da|72f988bf86f141af91ab2d7cd011db47|1&sdata=FLn7x7FYFr47jzdtESe05IC8sFEMQ94Iniqm9cxLJlw%3D&reserved=0, or mute the threadhttps://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fnotifications%2Funsubscribe-auth%2FAA73QKJA2CBGLRQNMPRMQNLPS4QWXANCNFSM4HJCXTDA&data=01|01|jhalleux%40microsoft.com|6b386dc5fba74ba665be08d6ccc1f1da|72f988bf86f141af91ab2d7cd011db47|1&sdata=B0cCnR4GMql%2B54rbgN0oqkYYQfK%2Fpfd%2FiAGPKrUC8r0%3D&reserved=0.

The settings are something like
Btn_left = 1100 + pb13
Btn_right = 1200 + pb13

aah ok so here's the current (wrong) def
https://github.com/adafruit/uf2-samdx1/blob/master/boards/arcade_pygamer/board_config.h#L68

So
47, 0x1127, // PIN_BTN_LEFT = analog PB07
48, 0x1227, // PIN_BTN_LEFT = analog PB07

?

No its 1100 decimal sorry. So 1100 +0x27

ok then 0x473 and 0x4D7  - is there a convention for converting PORTxN to a hex number? it sems to be 0x0N and 0x1N for porta and 0x2N and 0x3N for portb but just checking

Right. On ATSAMD ports are 32 pins so it's like you describe. On stm32 ports are 16 pins so it's different. You can use https://microsoft.github.io/uf2/patcher/ to update the.h file - it resolves pin names and sorts config keys appropriately

!@ amazing!

no luck - arcade game 'black screen' - i changed back to buttons and they run find (but of course i cant move the player) so its just the 4 line change here:
https://github.com/ladyada/uf2-samd21/commit/565042c5132e73c065ef6482f0d73e72b83163c0
bootloader works great otherwise, but beta.arcade is unable to load. lemme know if you want me to jlink it

the ADC is busted; I did some fixes, but it still doesn't work; will look into this more

np its probably the clock ... ;)
ill get y'all hardware very soon, putting em together now

I have a test build here with fixed ADC and sound:
https://arcade.makecode.com/app/0d0584e40b68f43b1ed93ea4a744110c76767ffa-e1f3c3de51
The ADC should work with the new button configs. If it doesn't try this program and let me know what values you get:
game.onPaint(function () {
    screen.print("PB06: " + pins.PB06.analogRead(), 60, 2)
    screen.print("PB07: " + pins.PB07.analogRead(), 60, 20)
})

Error will show before you switch to D5 board; ignore it - the private build has the pins PB06 and PB07 added.
As an added bonus the SAMD51 sound should also work on this one.
You can also tweak bootloader settings from TS (they override whatever is in bootloader) by adding this on top of main.ts:
namespace userconfig {
    export const PIN_BTN_LEFT = 0x473
    export const PIN_BTN_RIGHT = 0x4D7
    export const PIN_BTN_UP = 0x472
    export const PIN_BTN_DOWN = 0x4D6
}

joystick/analog read works!
sound does not full - it does for a moment on the first sound and then goes silent
also, we use a speaker enable pin for our amps, that should be set HIGH when making sounds, and you can set back to LOW when done (or keep HIGH all the time, but default is pulled low!)

Awesome! Can you share your sound test program? It was working for me on pybadge.

From: ladyada<EMAIL_ADDRESS>Sent: Wednesday, May 1, 2019 7:24:36 PM
To: Microsoft/pxt-common-packages
Cc: Michal Moskal; Author
Subject: Re: [Microsoft/pxt-common-packages] Support analog joystick and active high buttons (#805)
joystick/analog read works!
sound does not full - it does for a moment on the first sound and then goes silent
also, we use a speaker enable pin for our amps, that should be set HIGH when making sounds, and you can set back to LOW when done (or keep HIGH all the time, but default is pulled low!)
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHubhttps://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2FMicrosoft%2Fpxt-common-packages%2Fpull%2F805%23issuecomment-488349429&data=01|01|Michal.Moskal%40microsoft.com|74b312c9029e46851f1f08d6ce59e283|72f988bf86f141af91ab2d7cd011db47|1&sdata=leCuadJ7KV0uhQT%2BqEMp2ihcocA7hAQl5oBnEJciNsM%3D&reserved=0, or mute the threadhttps://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fnotifications%2Funsubscribe-auth%2FACRN6OBWQNFVBB5XN6MFJHTPTHG5JANCNFSM4HJCXTDA&data=01|01|Michal.Moskal%40microsoft.com|74b312c9029e46851f1f08d6ce59e283|72f988bf86f141af91ab2d7cd011db47|1&sdata=VtNdg8W9ZYcEYlD%2FOYe31B921CFQZzphtzvdHjMVnaU%3D&reserved=0.

here's a noisy falling duck
https://makecode.com/_VHweioUCMdzq
how do you set the speaker enable?

Amp is here https://github.com/Microsoft/pxt-common-packages/blob/master/libs/mixer/melody.cpp#L58 and https://github.com/Microsoft/pxt-common-packages/blob/master/libs/mixer/melody.ts#L49 so it should just stay on.
Checking on your sample.

i dont see speaker_amp in the board_config.h in my boards. whats the 'pin #'?

right; I'm not sure why does it work at all then!
#define CFG_PIN_SPEAKER_AMP 26

maybe your old version had the amp always on :D ok trying with a new bootloader...

ok i definitely get the 'beginnings' of sound but only for a split second, then nothing on the scope for A0. so audio amp enable is now good, but audio is still :(
im using this bootloader
https://github.com/ladyada/uf2-samd21/tree/master/boards/arcade_pybadge

do music.setVolume(50) at the start of the program; or set
#define CFG_SPEAKER_VOLUME 59

to 50.
I think the default is 128 and it's somehow too much. Will investigate.

ok trying #define CFG_SPEAKER_VOLUME 59

ok now no soudn at all, you didnt mean that i should change
    59, 0x200, // SPEAKER_VOLUME = 512 instead of that define?

right, replace 59, 0x200 with 59, 50

sorry, i took you a little too literally - trying now :)

yah works now! i see the issue, the DC offset is 500mV, it should be closer to 1.5V - easy fix but for now i can tweak this value till its as loud as it gets and commit

ok ill open another issue for volume/stereo


[Bug] 4-bit KV cache results in very low performance while 8-bit KV cache is almost lossless

Checklist

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

Describe the bug
Hi thanks for the library! I am trying to run qwen2.5-math-7B on 4090. It seems the 8-bit kv cache runs quite well without losing performance (on my internal math dataset), while 4bit makes it give 0% accuracy.
Reproduction
(see above)
Environment
docker

Error traceback
No response

Pls share the information of running lmdeploy check_env.
It is a known issue that kv4 causes degradation of model performance.

It is a known issue that kv4 causes degradation of model performance.

Is it know to drop this much? It was about 40%, and the drop makes it about 0%! (If it is something like 38% then it looks acceptable)

That shouldn't be. It is probably a bug.

Thank you, then I will try to provide a minimal reproducible sample soon.

@lvhan028 Hi, the reproduction is here:

Convert model (you need to mount some folder to /host_home)

sudo docker run --runtime nvidia --gpus all openmmlab/lmdeploy:v0.6.3-cu12 lmdeploy convert thisisname Qwen/Qwen2.5-Math-7B-Instruct --dst-path /host_home/temp/hello_lmdeploy_convert/Qwen2.5-Math-7B-Instruct

Start service

sudo docker run --runtime nvidia --gpus all -p 23333:23333 openmmlab/lmdeploy:v0.6.3-cu12 lmdeploy serve api_server /host_home/temp/hello_lmdeploy_convert/Qwen2.5-Math-7B-Instruct --log-level INFO  --quant-policy "4"
``

[TODO]

cc @lzhangzz


Increase the maximum number of concurrent DNS queries from 32 to 256 (3.x)

3.x version of https://github.com/godotengine/godot/pull/59445.
This makes the following error message less likely to be printed when performing many concurrent HTTP requests:
Condition ' resolving == IP::RESOLVER_INVALID_ID ' is true. returned: ERR_BUG

Thanks!


Restore 0.1.x features

[ ] Angles conversion
[x] Initial orbit determination

Labelling as blocker since we won't touch further the build process (#3, #29) until I decide what to do with the remaining Fortran subroutines (astiod.for).

Brought back Lambert problem in 1c4a26271267.

This issue is not a blocker anymore.

Postponing to 0.4 to focus on release.


Request failed with status code 403

It's just me or I'm getting:
{"message":"Request failed with status code 403","code":-1}
Greetings.

I am getting errors too. But different error number. Read this: https://github.com/tobilg/facebook-events-by-location-core/issues
/Big

Even I am getting this error: {"message":"Request failed with status code 403","code":-1}
Any way to work around this problem?

Is this something related with Cambridge Analitica issue? I am having this response as well:
statusCode":403,"message":"403 - \"{\\\"error\\\":{\\\"message\\\":\\\"(#200) Access to this data is temporarily disabled for non-active accounts due to changes we are making to the Facebook Platform\\\",\\\"type\\\":\\\"OAuthException\\\",\\\"code\\\":200

Please have a look at https://github.com/tobilg/facebook-events-by-location-core/issues/29 It's an issue with FB locking down data access.
Some links can be found at https://github.com/tobilg/facebook-events-by-location-core/issues/29#issuecomment-375855580
Unfortunately, there doesn't seem to be a workaround yet.


Feat: Tutorials for DashBoard, MapDesigner and History Pages

Todo: Integrate With Backend

Use an ENUM type for dailychallegne/dashboard page type


Perform as a Image review process

[ ] Send warning when a pod is run with image that has vulnerability
[ ] Register as an initializer / admission controller so that such pods are rejected.

https://github.com/nccgroup/kube-auto-analyzer


Docker updates

Massive improvements to docs for docker installaion

TODO: Add documentation for what needs to happen to successfully run the server in "production" mode (i.e. debug=False)

Needs to point to the static and media files!


Disable Autoplay

The option to disable autoplay (ie. where it goes to a new video right after playing a video) does not work. I'm using the dev build.
It would be cool if you could make a single button that disables all auto-features on youtube so things would happen only when you click for them to happen! In fact, can you make a button for all of google products to disable all auto-features on everything they do ;) Nice products but ruined by trying to be "smart" all the time - just SHUT UP and PLAY a VIDEO!! lol sorry ;)

Disabling autoplay for those using YouTubeCenter + TestTube (the new player they'll be implementing) would be great. As it is right now, if you queue a bunch of tabs w/videos, they'll only autoplay when navigating to a given tab. Which, in terms of functionality, is acceptable.
But disabling autoplay until a click would be far better.
:+1:


Degree progress node should be red instead of yellow

May confuse the reader as to what yellow indicates.

#99 fixes this


Bulk connect common sub-parts of Bundles/Records

Consider the following scenario where mix-ins are used to add fields to compose a Bundle:
trait Common extends Bundle {
  val c0 = Bool()
  val c1 = Bool()
}

trait A extends Bundle with Common {
  val aa = UInt(10.W)
}

trait B extends Bundle with Common /* with Foo with Bar with ... */ {
  val bb = UInt(10.W)
}

We can now use these as I/Os for Bundles, especially for BlackBoxes:
// A BlackBox that has the following I/Os
// c0, c1, aa
class MyBBoxA extends BlackBox {
 val io = IO(Input(new A))
}

// A BlackBox that has the following I/Os
// c0, c1, bb
class MyBBoxB extends BlackBox {
 val io = IO(Output(new B))
}

The problem is that with Chisel3 semantics there is no DRY way to connect the common elements:
class MyTest extends Module {
 val io = IO(new Bundle {})
 val mod1 = Module(new MyBBoxA)
 val mod2 = Module(new MyBBoxB)
 mod1.io <> mod2.io // <-- doesn't work in Chisel3 semantics
 // Non-DRY code, want to avoid
 mod1.io.c0 <> mod2.io.c0
 mod1.io.c1 <> mod2.io.c1
}

Using composition doesn't work since it changes the I/Os to c_c0, c_c1, bb:
class B_bad extends Bundle {
  val c = new Common
  val bb = UInt(10.W)
}

Option 1: Chisel2-style "unsafe bulk connect". I think we want to avoid that if possible.
Option 2:  some sort of "connect as parent" API. I think we can do this in a type-safe way especially if we know the common subtype:

a.asRecordView(Common) <> b.asRecordView(Common)
commonConnect(a, b, Common)??
a.commonConnect(b, Common) ??

Hmm not just I understand your question but why not just do something like
class cx extends Bundle {
val a = new ax()
val b = new bx()
}
...
ua.io.a <> io.c.a
ub.io.b <> io.c.b

It brings the name of io_a_a0 and io_c_a_a0.
The main cause is to integrate other guy's verilog RTL as an class extended of BlackBox. Integration of the top level involves modules of IP and such things, since I can't regular every interface to this naming rule, either I create one more hierarchy to wrap the IP into a new module, or I can use this "just left side bulk connections" function to resolve it.

Is there a way to 'virtually' bund more bundles together to a new 'virtual bundle' and then do bulk connetion?

Is there a way to traversal all signals in the bundle and do map or connection?

It looks to me like @apolonic actually wants Chisel2 bulk connection semantics or kind of an "unsafe bulk connect". This could possibly be resolved via a "setName" API or via clever inheritance and "connectAsParent"

A similar usecase is: two bundles share a common trait which defines some I/Os but there's no way in pure chisel3 semantics to connect the shared trait together.

I have a solution with abstract types. Let me know if this works for you. If not, I got another idea.
abstract trait Common extends Bundle {
  val c0 = Bool()
  val c1 = Bool()

  // Redefine this in derived classes
  type Bus
}

trait Foo extends Common
trait Bar extends Common

class A extends Bundle with Foo {
  // doesn't work for = UInt (10.W) thou
  type Bus = UInt
}

class B extends Bundle with Bar /* with Foo with Bar with ... */ {
  type bb = UInt
}

// A BlackBox that has the following I/Os
// c0, c1, aa
class MyBBoxA extends BlackBox {
 val io = IO(Input(new A))
}

// A BlackBox that has the following I/Os
// c0, c1, bb
class MyBBoxB extends BlackBox {
 val io = IO(Output(new B))
}

class Mro extends Module {
 val io = IO(new Bundle {})
 val mod1 = Module(new MyBBoxA)
 val mod2 = Module(new MyBBoxB)

 mod1.io <> mod2.io // <-- now compiles

 // Non-DRY code, want to avoid
 mod1.io.c0 <> mod2.io.c0
 mod1.io.c1 <> mod2.io.c1
}

Thanks Boris for looking at this. Unfortunately, this doesn't work for as Chisel only recognizes instances of Chisel types as fields of a Bundle e.g. val x = UInt(10.W), not the types themselves e.g. val bad = UInt. We can't use the Chisel types themselves type t = ... as fields for a Bundle, so the proposed solution doesn't appear to solve this problem.

@edwardcwang I was actually able to generate both FIR and Verilog outputs with connected instances  as below:
FIR:
mod1.c1 <= mod2.c1 @[Mro.scala 54:10]
mod1.c0 <= mod2.c0 @[Mro.scala 54:10]
Verilog:
assign mod1_c1 = mod2_c1; // @[Mro.scala 54:10]
assign mod1_c0 = mod2_c0; // @[Mro.scala 54:10]
If this doesn't work for you, pls upload your full example so that we could see how to solve your particular issue

The problem is that the bundle A is missing aa as a field and bundle B is missing bb as a field. As I wrote above, val aa = UInt does NOT declare a field, and using the proper declaration of val aa = UInt(10.W) results in the old bulk connect error since the members of both bundles are not the same.
  MyBBoxA mod1 (
    .c1(mod1_c1),
    .c0(mod1_c0)
    // missing .aa(...)
  );
  MyBBoxB mod2 (
    .c1(mod2_c1),
    .c0(mod2_c0)
    // missing .bb(...)
  );

See the following snippet of Chisel:
abstract trait Common extends Bundle {
  val c0 = Bool()
  val c1 = Bool()
  // Redefine this in derived classes
  type Bus
}
trait Foo extends Common {
  val aa = UInt // <-- changing this to UInt(10.W) declares a proper field but we will then run into the problem described in this issue, just with an extra layer of indirection (Foo and Bar are unnecessary)
}
trait Bar extends Common {
  val bb = UInt
}
class A extends Bundle with Foo {
  type Bus = UInt
}
class B extends Bundle with Bar /* with Foo with Bar with ... */ {
  type Bus = UInt
}

// A BlackBox that has the following I/Os
// c0, c1, aa
class MyBBoxA extends BlackBox {
 val io = IO(Input(new A))
}

// A BlackBox that has the following I/Os
// c0, c1, bb
class MyBBoxB extends BlackBox {
 val io = IO(Output(new B))
}

class Mro extends Module {
 val io = IO(new Bundle {})
 val mod1 = Module(new MyBBoxA)
 val mod2 = Module(new MyBBoxB)

 mod1.io <> mod2.io
 // Non-DRY code, want to avoid
/*
 mod1.io.c0 <> mod2.io.c0
 mod1.io.c1 <> mod2.io.c1
 */
 mod1.io.aa := 5.U
 mod2.io.bb := 6.U
}

@edwardcwang Okay, I see what causes the problem.
Its part of the core logic. We need to decide whether it is acceptable to bulk connect two records with partially different fields. Currently, its prohibited and hardcoded here: https://github.com/freechipsproject/chisel3/blob/abee251c262c1d60487153b1227aa587dc39a5cf/chiselFrontend/src/main/scala/chisel3/core/BiConnect.scala#L157
It is rather possible to allow partial bulk connections. But that adds complexity to the implementation and especially test cases. It is also a potential source of subtle bugs in RTL.
I do have a workaround, but it's a hack for this problem, rather than a nice language feature. I'd close this issue and push users to plan their signals upfront if they want to scrap the boilerplate.

Yep, this is exactly what this issue is trying to resolve...

Could be supported with new connection operators.

Looks like someone beat me to the punch. Here is a better formatted version of my post
When using the Bundle Assignment, all elements must match between the two objects. What I would really enjoy is a wildcard assignment that allows for bundles to be split and joined, without needing to write out every signal. This helps a ton with managing a datapath where all of the signals can be wrapped in a bundle, then easily passed from one module to the next similar to the Verilog (.*).
Additionally the .* assignment could be done by a syntax like so
moduel_i.io <*> _
which could assign the bundle to the variables in the current context.
Currently when assigning two bundles that don't match, you get the following

[error] chisel3.internal.ChiselException: Connection between left (anon$2(IO io_ctrlDataOut in ControlFile)) and source (anon$2(IO in unelaborated CPUFile)) failed @.memWData: Left Record missing field (memWData).

I think that it would be better to have an explicit operator to prevent users from accidentally missing signals, but it would be nice if people wanted to "live on the edge" and use wildcards to shorten laborious assignments.

This isn't necessarily fixed in the way everyone wanted, but .viewAsSuperType and DataView (new in Chisel 3.5.0) more generally enables such connections in a much more elegant way than before. I'm closing this issue and suggest everyone look at the documentation: https://www.chisel-lang.org/chisel3/docs/cookbooks/dataview.html#how-do-i-connect-a-subset-of-bundle-fields.


Updated references from old names to new ones

Updated "origin_type" and "cache_type" references in documentation referred in these comments (https://github.com/tricksterproxy/trickster/issues/495#issuecomment-702250964 , https://github.com/tricksterproxy/trickster/issues/495#issuecomment-702253173 ) to "provider", resolving https://github.com/tricksterproxy/trickster/issues/495.
Issue was assigned but on seeing that, last update was 5 days ago, and by non-assignee whose PR was merged, encouraged me to resolve.
Please add hacktoberfest-accepted label, so that contribution will count towards my hacktoberfest participation.
Thanks!

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


New app: SuperbOwl

Shows 52 excellent owl gifs.
Like the cat gif app, except no one provides owls as a service. All the image files are embedded in the starlark script. I resized them all beforehand to 32 pixels high to minimize space while fitting on screen.

Gonna do my best to get this critical and timely app out today!


install.sh - fix bash completion instructions

The XDG_DATA_HOME env var can be empty (expectedly), and it breaks the printed bash completion setup instructions. This little PR makes the install script use the default $HOME/.local/share location when the XDG_DATA_HOME is empty. See  https://specifications.freedesktop.org/basedir-spec/latest/ar01s03.html

Nice catch, nice catch! Going to merge this now, but for this to appear on the dl site, we need to do some manual AWS hackery :tada: (cc @gerhard @matipan)

Thanks for the quick approval!

Reminder to self + @matipan: add a Dagger function that uploads this to S3 & invalidates the cache.
Did this manually:

Thanks @iximiuz 💪


Fix typos where 'description' was misspelled in profiles

A few typos in profiles were resulting in null descriptions

Hooray for trailing whitespace removal as well! :)
Thanks for both PRs.

Thanks for catching these!


PTRun: unexpected results

ℹ Computer information

Windows build number: version 10.0.19041.388
PowerToys version: 0.20.0
PowerToy module: Run

📝 Provide detailed reproduction steps (if any)

type dos

✔ Expected result
The DOSBox.exe app should appear at the top of the results.
❌ Actual result
The DOSBox.exe app does not appear (even when scrolling: it's not there at all in the results list).
Instead, some apps that have dosbox in their full path appear, for example:
📷 Screenshots

I have to exactly type dosbox to finally see dosbox.exe appear in the search results.

Are you just trying to bring up dosbox?  Is that an item on your desktop / startmenu?
Looking at this output, my gut says gog uses dosbox as their launcher app and it sends in args.

I have downloaded a portable version of dosbox, unzipped it and dosbox.exe appears in the root directory. Apparently it's also used in some game I installed (that's the one that appears when using PT Run) but that's not what I expect to appear first.
Pressing win key and typing dos finds it as expected:

@crutkas, @saahmedm, @ryanbodrug-microsoft, this issue seems to be happening because we're not indexing the downloads folder for applications. Do we want to add that folder to the set of locations that we want to index for apps? Also, DOSBox.exe should get picked up by the indexer but it would be ranked after all the apps.
@warpdesign could you help us confirm the reason behind this by copy-pasting the DOSBox.exe file onto the desktop. It should show up on PT Run after that. Please let us know if it does or does not. Thank you.

@alekhyareddy28 when copied onto the desktop, it appears in PT run.

Thanks for confirming it, @warpdesign.

@warpdesign, on discussing this issue with the rest of the team, we think this is expected behavior and do not wish to include the downloads folder as a location to search for apps. Presently, we look in the following locations: Program files, start menu shortcuts (C:\ProgramData\Microsoft\Windows\Start Menu\Programs), desktop, locations pointed to by the path env variable. If the downloads folder is indexed by the windows indexer in your system, then the DOSbox.exe would appear in PT, but PT Run would rank it lower than if it were found in any of the above locations.
Closing this issue. Please feel free to open a new issue if any app in the above locations does not show up with PT Run. Thank you.

@alekhyareddy28 I guess I'll keep using the start menu then. It's not a random folder buried in my hard disk, it's the downloads folder: there are a lot of apps that come in a portable form (ie: an archive which contains the executable and data files). When I download them they go to the download folder and it's not common in Windows to copy folders in Program Files (unlike on Mac where its common to move apps into the Applications folder) so they just stick here. If I have to think about where the apps are or if a specific folder is indexed or not, this doesn't work for me.
I guess PT Run is not what I expected.
Btw, in my first screenshot, the first entry that appears isn't in any of the folders you mention (it's not in my PATH env either), so I wonder why it appears.


How can I print verbose logs? I am getting "Error: DownloadError"

System Info
2023-05-09T22:39:21.915181Z  INFO text_generation_launcher: Runtime environment:
Target: x86_64-unknown-linux-gnu
Cargo version: 1.69.0
Commit sha: bc5c07231ec6284b94a8ff78a54d6da4b505a93f
Docker label: N/A
nvidia-smi:
Tue May  9 22:39:21 2023
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 520.61.05    Driver Version: 520.61.05    CUDA Version: 11.8     |
|-------------------------------+----------------------+----------------------+
| GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
|                               |                      |               MIG M. |
|===============================+======================+======================|
|   0  NVIDIA RTX A5000    Off  | 00000000:1B:00.0 Off |                  Off |
| 30%   34C    P8    27W / 230W |      0MiB / 24564MiB |      0%      Default |
|                               |                      |                  N/A |
+-------------------------------+----------------------+----------------------+
+-----------------------------------------------------------------------------+
| Processes:                                                                  |
|  GPU   GI   CI        PID   Type   Process name                  GPU Memory |
|        ID   ID                                                   Usage      |
|=============================================================================|
|  No running processes found                                                 |
+-----------------------------------------------------------------------------+
2023-05-09T22:39:21.915275Z  INFO text_generation_launcher: Args { model_id: "../bloom-560m", revision: None, sharded: None, num_shard: None, quantize: false, max_concurrent_requests: 128, max_best_of: 2, max_stop_sequences: 4, max_input_length: 1000, max_total_tokens: 1512, max_batch_size: None, waiting_served_ratio: 1.2, max_batch_total_tokens: 32000, max_waiting_tokens: 20, port: 6006, shard_uds_path: "/tmp/text-generation-server", master_addr: "localhost", master_port: 29500, huggingface_hub_cache: None, weights_cache_override: None, disable_custom_kernels: false, json_output: false, otlp_endpoint: None, cors_allow_origin: [], watermark_gamma: None, watermark_delta: None, env: true }
2023-05-09T22:39:21.915530Z  INFO text_generation_launcher: Starting download process.
2023-05-09T22:39:22.718095Z ERROR text_generation_launcher: Download process was signaled to shutdown with signal 11:
Error: DownloadError
Information

[ ] Docker
[X] The CLI directly

Tasks

[X] An officially supported command
[ ] My own modifications

Reproduction
I basically followed the instructions on the README. The only difference is that I excluded BUILD_EXTENSIONS=True flag when make install.
Expected behavior
Error: DownloadError should be fixed somehow. or please let me know how I can get more detailed error message.
I thought it is the problem caused when downloading the weights from the Hugging Face Hub. However, this error persists even though I cloned the bigscience/bloom-560m and specify the cloned path in --model-id.

Yea I have the same issue. I get a seg fault during the download process. Is there a known reason for this? I get this issue even when using pre-downloaded models (just as the OP). I'm in an environment where I cannot use untrusted docker images (i.e. non-NVIDIA released).


tests: test all pg versions simultaneously

About this change - What it does
This does not change much for GitHub Actions:
one dimension of the matrix is replaced by a fixture parametrization.
For local dev environment however, it makes it easier to get accurate
coverage on all version combined, without a manual merge step and
without having to think about PG_VERSION environment variable.
The PG_VERSION variable still exists and can be used to reduce the
number of tested versions, either a single version of multiple versions
separated by a comma.
Tests that don't depend on a running PostgreSQL are now run less
often since they don't depend on the parametrized fixture.
Why this way
Easier coverage feedback for local development.

I think this is a good idea per se, I have a couple of questions (I wasn't able to test this right now):

If some tests fails for a single pg version, how easy it is to spot the versions?
How easy (or hard) is to accidentally use the wrong pg version? E.g. running a test being convinced it's being run on pg14 but it's being run on pg13?

I think this is a good idea per se, I have a couple of questions (I wasn't able to test this right now):
* If some tests fails for a single pg version, how easy it is to spot the versions?

It's in the test output, so it's easier than before, previously it was written nowhere and the environment variable not always visible at the startup point: ```
[...]
test/test_webserver.py::TestWebServer::test_requesting_status[14] PASSED [  8%]
test/test_webserver.py::TestWebServer::test_requesting_metrics_disabled[14] PASSED [  8%]
test/test_webserver.py::TestWebServer::test_requesting_metrics_enabled[14] PASSED [  8%]
test/test_webserver.py::TestWebServer::test_list_empty_basebackups[14] PASSED [  8%]
[...]
>
>     * How easy (or hard) is to accidentally use the wrong pg version? E.g. running a test being convinced it's being run on pg14 but it's being run on pg13?

The default is to run on all versions, so it's harder to not test the version that matters (before that it was not visible at all).
If someone uses the `PG_VERSION` option, it's visible when starting pytest or make coverage, and it's visible again in the test output.


generate grpc-gateway typescript client

~Depends on https://github.com/pachyderm/pachyderm/pull/9380~

Brendon's comments are noted for https://github.com/pachyderm/pachyderm/pull/9380 - I'll pass grpc.ClientConn directly and remove the dependency on pach client


Goods Service Tax Calculator

Calculator Functions
Hello @vasu-1, In this I will try to make a calculator which helps the people to calculate their SGST, CGST, and also IGST in case it is applied.
Slabs Which will be included:

28%
18%
12%
5%

Note: - I also take off that the SGST and CGST are the same and in the case of ISGT no CGST and SGST are applied.
Contribution Event
GSSOC22
Code of Conduct

[X] I follow Contributing Guidelines & Code of conduct of this project.

/assign


Domain activation is Failed - Issues Registering a Domain Name with Third Party

App Id: d23hqgatm5w7hr
Region: us-west-2
Step: Domain activation
Status: Failed
Issue/question
I've attempted to register three different domain name with the following format dev...com = dev environment, staging...com staging environment and transfer.***.com = prod each mapping to a particular environment to keep releases simple.
The first domain name for dev worked flawlessly with no issues, staging had an issue domain activation at some point. It turns out the retry activation ends up issuing a new cloudfront id which I read about somewhere else in AWS documentation. Finally to fix staging I removed the domain name from AWS Amplify and also worked with our DNS team to remove it from our DNS system. Afterwards I went ahead and registered it first on the Amplify side and about a day or so later had the DNS team copy of the DNS record information and it worked find.
I think I I might be hitting the same problem with out production domain name but it's just really odd that our staging and prod domain name ran into these issues but the dev domain name worked fine.
Error message
Error message: One or more aliases specified for the distribution includes an incorrectly configured DNS record that points to another CloudFront distribution. You must update the DNS record to correct the problem.
Note: Be sure to check the message for sensitive information.
Additional information
Please add any other relevant information. Please feel free to include screenshots.

Refer to our documentation to troubleshoot domain setup.
https://docs.aws.amazon.com/amplify/latest/userguide/custom-domain-troubleshoot-guide.html
https://docs.aws.amazon.com/amplify/latest/userguide/custom-domain-troubleshoot-guide.html#i-get-a-cnamealreadyexistsexception-error
Let us know if you're still facing issues.

Refer to our documentation to troubleshoot domain setup.
https://docs.aws.amazon.com/amplify/latest/userguide/custom-domain-troubleshoot-guide.html
https://docs.aws.amazon.com/amplify/latest/userguide/custom-domain-troubleshoot-guide.html#i-get-a-cnamealreadyexistsexception-error
Let us know if you're still facing issues.

Hi @brnmye! No issues, I guess the documentation is literal when it comes down to the setup for the domain name. You actually have to wait for the domain activation to go through before you even register the domain with your third party domain provider. It would be great to make that text a little bit bigger or make a note about the domain activation succeeding first before registering. I think the text is in small grey print for the official documentation.

Hi @brnmye! No issues, I guess the documentation is literal when it comes down to the setup for the domain name. You actually have to wait for the domain activation to go through before you even register the domain with your third party domain provider. It would be great to make that text a little bit bigger or make a note about the domain activation succeeding first before registering. I think the text is in small grey print for the official documentation.


Update soundflower to 2.0b2

After making all changes to the cask:

[x] brew cask audit --download {{cask_file}} is error-free.
[x] brew cask style --fix {{cask_file}} left no offenses.
[x] The commit message includes the cask’s name and version.

Thank you for the contribution. It was merged directly as 7b91598100ad66692108fb21fc105b43e594d994. Your contribution is still credited to you.