QML

Hi there :)
Do you plan to use QML for Linux?
What do you criticize about it?

@ShalokShalom do you know much about QML? Do you think it's a good choice for cross-platform targets?
I see there is an OCaml library for it.

It is built for it. Nokia has bought Qt with the purpose to build the ultimate cross-platform toolkit, the documentation, the implementation, the community, all is built around it.
Nokia has then sold it very cheap because they went bankrupt, as we all know.
It is also the widest used open source toolkit in that perspective and has lots of cool stuff.
Yes, Kakadu has a nice library for it.

I was wondering about licensing. We'd like to use QT or GTK only for linux (MacOS and Windows have their own libraries.) I know that both are widely in use today. Are you able to provide some more background why one is better than another?

Yes, MacOS and Windows have their own libraries. They do not look much better, or offer more performance.
You can look into this talk, which shows both the benefits of Qt over GTK, as well as Qt`s performance cross platform.
Realise that this guy is using Qt Widgets, which is not hardware accelerated and has zero capabilities to run on mobile hardware, like Qt Quick alias QML can do: https://www.youtube.com/watch?v=ON0A1dsQOV0

They look, perform, and most importantly feel better than QT. I think we might have miscommunicated the purpose of Brisk somewhere but its goal is indeed providing the cross platform toolkit which communicates with system UI libraries behind the scenes.
That said, there is a place for Qt in Brisk - for Linux development.
To clarify a bit; we are striving to create a unified API for UI development on various platforms similarly to React Native. It means that on the mac we're binding to AppKit, on iOS to UIKit, on Windows to Windows 10 SDK, Android Views on Android etc.

You reimplimenting what is already there and that in multiple views.
Qt6 will actually be very similar as your proposal also.
https://blog.qt.io/blog/2017/02/06/native-look-feel/

Point taken @ShalokShalom. It's unclear to me what's the purpose of this issue? Please clarify what's the actionable here. If this was just a question feel free to close it. Thanks!

It's unclear to me what's the point of this project?
As initially asked, I was wondering if you use QML/Qt for Linux. Which includes Android for me.
In my personal view - and this is covered by observations of individuals when looking at the different implementations - is the work that Qt has done undisguisable integration of interface elements, compared to their native implementation.

The point of this project is to provide a uniform, cross platform library for developing user interfaces which use native widgets behind the scenes. Regarding Linux (but not Android), yes, I believe Qt might be the best choice there.

And I simply think working together with a company, that also happens to be a huge open source community, makes sense.


Info icons and help texts for fields

Place an icon to the same row as the tile. The icon could e.g. be a circle with letter 'i'.
When user clicks over the icon, a help text explaining the purpose of the field appears.

If possible, include what part of the json file would be affected by the value given in each field.

Support for info icons added in e998081 using schema description field

Some descriptions added in commit ceaaa6d

We need to figure out which fields need the info button.
Info buttons can be added using the infoText property inside the schema options. We decided to move it to options.infoText, since the description field was already used for a different style of descriptions.
Example usage:
{
  "type": "string",
  "options": {
    "infoText": "This field wants a string."
  }
}


Throughput measuring modules

An update of work done by @cppwfs and @ericbottard for throughput measuring modules.

Rebased and pushed updates from review comments

LGTM, merging.

Squashed, rebased and merged as 518c523c553d272b22db171a2d8ffe2a227b7b26


Fixed Product name gets blank each time we refresh the product page #3656

BUGS:
Issue: https://github.com/bagisto/bagisto/issues/3656

done

Done


Remove all buffering

This removes buffered output from repos completely.
This gets rid of a lot of distractions and opens the way for thread
safety / easier development / leaner codebase for other developers.
See also: #6

[Current coverage][cc-pull] is 65.28%

Merging [#8][cc-pull] into [master][cc-base-branch] will decrease coverage by 0.32%

@@             master         #8   diff @@
==========================================
  Files             7          7
  Lines           538        484    -54
  Methods           0          0
  Messages          0          0
  Branches          0          0
==========================================
- Hits            353        316    -37
+ Misses          185        168    -17
  Partials          0          0

Powered by Codecov. Last updated by [7c70e28...4a4a589][cc-compare]
[cc-base-branch]: https://codecov.io/gh/tony/libvcs/branch/master?src=pr
[cc-compare]: https://codecov.io/gh/tony/libvcs/compare/7c70e289b30be2eddd4bf78dad4e80d868932148...4a4a58996577978f7caa540e40ebc55926e8feef
[cc-pull]: https://codecov.io/gh/tony/libvcs/pull/8?src=pr


[Feature]: Restart devserver when config file(rsbuild.config.js) changed

What problem does this feature solve?
Now developers have to restart the CLI when they want to update config like entries
What does the proposed API look like?
auto restart the devserver

Yeah this will impact the developer experience, and we will support this feature soon.

Released in v0.0.21


Needs a method to filtering the repositories

Hi!
I have been looking for a project to do this task for a while, and I thank you for creating it.
I think a system of filters to decide which repos have to be mirrored could be very useful.

Hey @RobertoBochet :wave:
That sounds like a great feature. :+1:
What's your filter criteria? Name?

Great work, thanks.
I took the liberty to change the phrasing on the README a little but. I hope that's fine for you :pray:

Thank you so much 😊


Version is not working

When you use antibody version it show master and I think that it should show a number in "x.y.z" format

https://github.com/caarlos0/antibody/issues/22#issuecomment-131318746

Fixed in https://github.com/caarlos0/antibody/releases/tag/v0.2.2


Correction for raw affiliation MP3CV Laboratory , UR-UPJV 7517, Centre Universitaire de Recherche en Santé, Amiens, France; Pharmacoepidemiology Unit , Pharmacology Department, Amiens University Hospital, Amiens, France

Correction needed for raw affiliation MP3CV Laboratory , UR-UPJV 7517, Centre Universitaire de Recherche en Santé, Amiens, France; Pharmacoepidemiology Unit , Pharmacology Department, Amiens University Hospital, Amiens, France
raw_affiliation_name: MP3CV Laboratory , UR-UPJV 7517, Centre Universitaire de Recherche en Santé, Amiens, France; Pharmacoepidemiology Unit , Pharmacology Department, Amiens University Hospital, Amiens, France
new_rors: 010567a58;01gyxrk03
previous_rors: 010567a58
works_examples: W4398234938
contact: 5135479ba2c8a88711bbe1ce892a3951:d4387e156fec1cc650eada3397db4ef7 @ u-picardie.fr

This issue was accepted and ingested by the OpenAlex team on 2024-10-09. The new affiliations should be visible within the next 7 days.


Edit patient card

IMPORTANT: All PRs must be linked to an issue (except for extremely trivial and straightforward changes).
Fixes #623
Description
User can click on the edit button in the Patient Details page to make modifications to the Patient data.
Alternative(s) considered
Have you considered any alternatives? And if so, why have you chosen the approach in this PR?
Type
Choose one: Feature
Screenshots (if applicable)
Checklist

[x] I have read and acknowledged the Code of conduct
[x] I have read How to Contribute
[x] I have read the Developer's guide
[x] I have signed the Google Individual CLA, or I am covered by my company's Corporate CLA
[x] I have discussed my proposed solution with code owners in the linked issue(s) and we have agreed upon the general approach
[x] I have run ./gradlew spotlessApply and ./gradlew spotlessCheck to check my code follows the style guide of this project
[x] I have run ./gradlew check and ./gradlew connectedCheck to test my changes locally
[x] I have built and run the reference app(s) to verify my change fixes the issue and/or does not break the reference app(s)

Codecov Report

Merging #646 (78c0720) into master (e1b48f2) will increase coverage by 0.04%.
The diff coverage is 57.14%.

:exclamation: Current head 78c0720 differs from pull request most recent head 422999c. Consider uploading reports for the commit 422999c to get more accurate results

@@             Coverage Diff              @@
##             master     #646      +/-   ##
============================================
+ Coverage     53.92%   53.96%   +0.04%
- Complexity      173      174       +1
============================================
  Files            44       44
  Lines           816      819       +3
  Branches        117      117
============================================
+ Hits            440      442       +2
+ Misses          309      308       -1
- Partials         67       69       +2

Impacted Files
Coverage Δ

...ava/com/google/android/fhir/impl/FhirEngineImpl.kt
5.00% <0.00%> (+0.23%)
:arrow_up:

...oogle/android/fhir/db/impl/dao/LocalChangeUtils.kt
85.41% <80.00%> (-0.95%)
:arrow_down:

...va/com/google/android/fhir/db/impl/DatabaseImpl.kt
35.55% <0.00%> (-2.23%)
:arrow_down:

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 e1b48f2...422999c. Read the comment docs.


Add compat option to device config to do some node queries on wakeup

This is required by some devices (like Danfoss LC-13) for normal operation, although they report the relevant data themselves.
This also sends nodes without pending messages back to sleep quickly.
Fixes: #792

This doesn't seem to be necessary anymore.


Configure otel from env instead of config.toml

These are standard environment variables described by the otel spec in https://opentelemetry.io/docs/specs/otel/configuration/sdk-environment-variables/.
Config options are converted to OTEL envs, but setting from environment overrides the config.
Also since otel will by default try to connect to https://localhost:4318 if no endpoint is set, this will also just disable the otlp plugin when there is no endpoint so we don't have otel continuously trying to connect to the default endpoint, littering the logs with connection failure messages and collecting traces that won't go anywhere.
Closes #8801

I added a commit which adds those deprecation warnings.

For the failure, update the 1.6 and 1.7 config to match the new default at https://github.com/containerd/containerd/tree/main/integration/client/testdata . I have been adding a comment and keeping the original value so we have documentation of changes to the default configurations from 1.6 and 1.7.


Listener2D

There's a Listener for Spatial but there's no Listener2D for 2D positional audio, which is tied to the viewport position.

This would be nice to have for 3.0, which is supposed to have positional audio.

was not done, kicking to 3.1

3.1 now, and there is still no 2D Listener :(
Will it be added in 3.1 or do we have to wait for 3.2?

Probably not for 3.1 at this stage sadly, there are enough features already to finish polishing and bug fixes for the stable release.

This would be super great for my horror 2D audio game I am working on.  :(((

@robertarnborg Please don't bump issues without contributing significant new information; use the :+1: reaction button on the first post instead.

Sorry :(
On Fri, 13 Dec 2019, 14:38 Hugo Locurcio<EMAIL_ADDRESS>wrote:

@robertarnborg https://github.com/robertarnborg Please don't bump
issues without contributing significant new information; use the 👍
reaction button on the first post instead.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/godotengine/godot/issues/6517?email_source=notifications&email_token=AHXI4HFG3YZEKXWVDGUCK7TQYOF5HA5CNFSM4CP43EFKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEGZ72ZQ#issuecomment-565443942,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AHXI4HEGZ6JTJY7ADGZRULLQYOF5HANCNFSM4CP43EFA
.

Feature and improvement proposals for the Godot Engine are now being discussed and reviewed in a dedicated Godot Improvement Proposals (GIP) (godotengine/godot-proposals) issue tracker. The GIP tracker has a detailed issue template designed so that proposals include all the relevant information to start a productive discussion and help the community assess the validity of the proposal for the engine.
The main (godotengine/godot) tracker is now solely dedicated to bug reports and Pull Requests, enabling contributors to have a better focus on bug fixing work. Therefore, we are now closing all older feature proposals on the main issue tracker.
If you are interested in this feature proposal, please open a new proposal on the GIP tracker following the given issue template (after checking that it doesn't exist already). Be sure to reference this closed issue if it includes any relevant discussion (which you are also encouraged to summarize in the new proposal). Thanks in advance!

This issue was superseded by https://github.com/godotengine/godot-proposals/issues/49.


Migration issues from Karate 0.8.0 to 0.9.5

Hi Peter Thomas,
Very Good Morning!
I'm trying to migrate existing Karate project from Version 0.8.0 to 0.9.5 but facing some issues like below
1)None of the below imports are working, Need to figure it out equivalent ones from 0.9.5.
'import com.intuit.karate.cucumber.CucumberUtils;
import com.intuit.karate.cucumber.FeatureWrapper;
import com.intuit.karate.cucumber.KarateFeature;
import com.intuit.karate.cucumber.KarateJunitAndJsonReporter;
import com.intuit.karate.cucumber.KarateJunitFormatter;
import com.intuit.karate.cucumber.KarateReporter;
import com.intuit.karate.cucumber.KarateRuntime;
import com.intuit.karate.cucumber.KarateRuntimeOptions;
import com.intuit.karate.cucumber.KarateStats;
import com.intuit.karate.filter;’
2)'import com.intuit.karate.cucumber.CucumberRunner'- stating as Deprecated already, need to know replacement of this, my baseClass extends CucumberRunner.
3)also need to know replacement for below also
'import com.intuit.karate.cucumber.FeatureFilePath;
import com.intuit.karate.cucumber.FeatureWrapper;
import com.intuit.karate.ScriptContext;
above imports are using in parsing Feature file
public static FeatureFilePath parseFeaturePath(File file) {
Please Help to get this migration done successfully.
Thank you I'm trying to migrate existing Karate project from Version 0.8.0 to 0.9.5 but facing some issues like below
1)None of the below imports are working, Need to figure it out equallent ones from 0.9.5.
Looking for help from others, who has already tried this
'import com.intuit.karate.cucumber.CucumberUtils;
import com.intuit.karate.cucumber.FeatureWrapper;
import com.intuit.karate.cucumber.KarateFeature;
import com.intuit.karate.cucumber.KarateJunitAndJsonReporter;
import com.intuit.karate.cucumber.KarateJunitFormatter;
import com.intuit.karate.cucumber.KarateReporter;
import com.intuit.karate.cucumber.KarateRuntime;
import com.intuit.karate.cucumber.KarateRuntimeOptions;
import com.intuit.karate.cucumber.KarateStats;
import com.intuit.karate.filter;’
2)'import com.intuit.karate.cucumber.CucumberRunner'- stating as Deprecated already, need to know replacement of this, my baseClass extends CucumberRunner.
3)also need to know replacement for below also
'import com.intuit.karate.cucumber.FeatureFilePath;
import com.intuit.karate.cucumber.FeatureWrapper;
import com.intuit.karate.ScriptContext;
above imports are using in parsing Feature file
public static FeatureFilePath parseFeaturePath(File file) {
Please Help to get this migration done successfully.
Thank you in advance,
Jay

@jay2020-design please read the release notes for the versions released after 0.8.0 and then if you are still stuck, ask specific questions: https://github.com/intuit/karate/releases
looks like you double posted to stack overflow so I am closing this issue.

Hi Peter Thomas,
Very Good Morning!
It's been long time responding on your reply. First of all 'Excuse me' for the delayed response on your reply but same time, Im very grateful meeting such a great person who is Peter Thomas :)
I'm new to Karate framework but used SoapUI pro for API automation earlier and selenium ofr UI automation.
I have sent my Thankfulness silently on your great work, While exploring your work on karate to establish new API automation project based karate 0.9.5.
I value your time creating karate framework, which makes life so easier.
i went through this link 'https://hackernoon.com/the-world-needs-an-alternative-to-selenium-so-we-built-one-zrk3j3nyr' and i really value your words on this statement "Now, I've been doing open-source for a while and I know how thankless a job it can be"
"how thankless a job it can be" - these words talks a-lot shows how much struggle you went through and how much of your personal time you have sacrificed.
I really value that precious time, that will never come back. But for sure you stand out of lakhs of common people, again Im very thankful meeting  you over this mail thread at-least.

Now im progressing on API automation project using karate 0.9.5 and junit5.
Let me list out few challenges i'm facing right now and looking for your help & support

Uploading .xlsx (spreadsheet) using feature file - not succeeding at all

1.1)# my API calls , accepts 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet' contentType only
1.2)# and Need to send below Form-data
Content-Disposition: form-data; name="file"; filename="sampletest.xlsx"
Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet
Below Feature File using for Upload excel sheet:
Feature: uploadFile
Background:

def AuthUtils = Java.type('karate.javalib.common.AuthUtils’)

def TARSConfig = AuthUtils.getTARSConfig()

def dCookies = AuthUtils.getDAWCookies()

json DAWcookies = dCookies
  Scenario: uploadFile

def authcall = call read('TokenGenerator.feature') DAWcookies

def token = authcall.csrftoken
def headerString1 = "{ 'Token' : '" + token + "', Accept-Encoding: 'gzip, deflate, br',  Accept: 'application/json', X-Requested-With: 'XMLHttpRequest', Content-Type: 'multipart/form-data; boundary=' }"
json jsonheaderString1 = headerString1

Given url
And path
And param businessSegment = 'COMM'
#upload excelFile

def excelFile = read('classpath:karate/api/feature/sampleTest.xlsx')
And multipart field name = "myFile"
And multipart field filename = excelFile
And multipart field contentType = 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'

#Configure Cookies
And configure cookies = DAWcookies
#Configure Headers
And configure headers = jsonheaderString1
  When method post
  Then status 200

calling javascript variables and functions  declared in karate-config.js   when testcases are running using 'import com.intuit.karate.junit5.Karate;' not recognising in feature file.

Tried sample project 'karate-junit' also calling  js variables in feature file but never succeeded.
here is files im using to test calling javascript variables in feature file
karate-config.js
function fn(){
var config = { demoBaseUrl: 'sampledomain.com' };
config.authInfo = { authTime: '9:30', authToken: '1234567890' };
return  config;
}
sample.feature
Feature: sample
refer to karate-config.js to see how these were initialized
* def time = authInfo.authTime
* def token = authInfo.authToken

Scenario: first hello world
* print 'authInfo:authTime->', time
Scenario: second scenario
* print 'authInfo:authToken->', token
SampleTest.java
package karate;
import com.intuit.karate.junit5.Karate;
class SampleTest {
@Karate.Test
Karate testFullPath() {
return Karate.run("classpath:karate/sample.feature");
}
}

@jay2020-design - please follow these instructions precisely: https://github.com/intuit/karate/wiki/How-to-Submit-an-Issue


[Feature request] Don't list files in gitignore

An option like --git-ignore in exa or --gitignore in tree which does not list files that are ignored by git. For example if I have foo.bar in my gitignore that file will not be listed.

thanks @frankebel, we had a related discuss here https://github.com/lsd-rs/lsd/issues/218, please refer to it and discuss it there.
/close

/dup


Can the resulting elements be sorted by random?

I wan the API to give me one resource that it picked randomly between the one that matches the filters (if any)
The following would give me the first matching resource:
GET /posts?_start=0&_limit=1

So I am suggesting to add a new order direction "rand" so that the following query would give me one matching resource:
GET /posts?_start=0&_limit=1&_order=rand

(I guess the field to sort on does not really matter is this case)
With this order direction, the array would be shuffled before sent to the client.

Is this suggestion applied now?


Potential degredation in sampling/too repetitive

Moving from Discussions https://github.com/vllm-project/vllm/discussions/471
Hi guys, great work!
I have been experimenting with the library for several weeks, and immediately noticed that sampled tokens (with the same temperature and such) are significantly more deterministic with Vllm vs. HF Transformers using the same models - with temperature lower than 0.7, often the first 5-10 sampled tokens are exactly same across few different generations, even recreating the original text in the datasets verbatim, like there is some greedy decoding going on (when it is not). This unfortunately leads to a significant repetition issue I've never seen with HF.
The issue is not related to special tokens such as <s></s>. I modified vllm so that it never generates those special tokens like HF's bad_words_ids, but the issue persists (those special tokens will also make the inference quality significantly worse especially with non-chat prompts, but it is a different issue).
In the mean time, I have also been checking and modifying codebase to see if there is any discrepancy between the sampling process, but I am not sure about the difference. I'm suspecting either cuda kernels or partitioning/block in PagedAttention.
https://github.com/vllm-project/vllm/issues/590: Related topic with actual examples. The topic is about GPTJ, but the issue is there with other architectures such as Llama and NeoX.

Yes.If my memory serves right, this problem arose when I was using version 0.1.1.

I got exactly same issue here!
the speed are faster, but the performance dropped a lot
the final output are really not like hf even genering params are same!!

I had the same experience.  I set up a client with VLLM and they saw totally different (and very disappointing) output from VLLM vs the original huggingface code, using the exact same parameters - temperature, repetition penalty, etc.

I had the same experience. I set up a client with VLLM and they saw totally different (and very disappointing) output from VLLM vs the original huggingface code, using the exact same parameters - temperature, repetition penalty, etc.

Hi, I noticed that the default value of repetition_penalty in HF is 1.0, but in vllm the default value of presence_penalty is 0. So should we set presence_penalty = repetition_penalty - 1.0? Thanks

I had the same experience. I set up a client with VLLM and they saw totally different (and very disappointing) output from VLLM vs the original huggingface code, using the exact same parameters - temperature, repetition penalty, etc.

Hi, I noticed that the default value of repetition_penalty in HF is 1.0, but in vllm the default value of presence_penalty is 0. So should we set presence_penalty = repetition_penalty - 1.0? Thanks

This should not be the case here. HF-style repetition penalty works like this:
value == 1.0 bypass
value > 1.0 penaltize repetition
value < 1.0 "promote" repetition
Whereas OpenAI-style frequency penalty and presence penalty are:
value == 0 bypass
value > 0 penaltize repetition

promote

Yes, I also encountered the issue of sampling. In my testing, I used HF-style repetition_penalty. However, even after changing presence_penalty to repetition_penalty-1, the problem still persists.

I had the same experience. I set up a client with VLLM and they saw totally different (and very disappointing) output from VLLM vs the original huggingface code, using the exact same parameters - temperature, repetition penalty, etc.

Hi, I noticed that the default value of repetition_penalty in HF is 1.0, but in vllm the default value of presence_penalty is 0. So should we set presence_penalty = repetition_penalty - 1.0? Thanks

This should not be the case here. HF-style repetition penalty works like this (it's a bit strange implementation for historical reason): value == 1.0 bypass value > 1.0 penaltize repetition value < 1.0 "promote" repetition
Whereas OpenAI-style frequency penalty and presence penalty are: value == 0 bypass value > 0 penaltize repetition value < 0 "promote" repetition

Yes, I also encountered the issue of sampling. In my testing, I used HF-style repetition_penalty. However, even after changing presence_penalty to repetition_penalty-1, the problem still persists.

Actually, there is also a difference between how each repetition penalties are implemented (HF is exponential, OpenAI/vLLM is linear, presence penalty is one-off). However, this is not directly related to the potential degradation issue from what I understand.

I got exactly same issue here!
the speed are faster, but the performance dropped a lot
the final output are really not like hf even genering params are same!!

Subjectively feel that the HF generation will be better. I'm trying to adjust various parameters to align at low temperature.

On my side, I didn't care about which params, I just want aligned with hf, since hf result are good, but vllm worse..

https://github.com/vllm-project/vllm/blob/1b151ed181f5ef0d267c1cf6d15d6f6f43e302ed/vllm/model_executor/models/gpt_neox.py#L70-L72
I'm wondering whether PagedAttentionWithRoPE is initialized using correct model max positions. Since the default max positions for PagedAttentionWithRoPE is 8192.
https://github.com/vllm-project/vllm/blob/1b151ed181f5ef0d267c1cf6d15d6f6f43e302ed/vllm/model_executor/layers/attention.py#L246-L280

On my side, I didn't care about which params, I just want aligned with hf, since hf result are good, but vllm worse..

vllm also seems to be getting worse in my experiments, but your avatar is so cool.

Share some of my experimental results.
LongEval result
Here is the result of my running the longeval Fine-grained Line Retrieval task, using same model and same parameters.

temperature: 0.01
top_p: 0.95

Ceval
However, the same model, tested on the ceval task using HF and VLLM, did not show a significant difference.

Sanster,
Wow. Just to be sure, did you merge RoPE interpolation support PR (either https://github.com/vllm-project/vllm/pull/555 or  https://github.com/vllm-project/vllm/pull/690 respectively) which is not yet added to the latest release?
AFAIK, if a rope-encoded model is 2048 ctx length, eval starts to significantly degrade from around 2400 tokens without interpolation methods.

We are also seeing the same effect for longer sequences. What could be the issue @zhuohan123 ?

Sanster,
Wow. Just to be sure, did you merge RoPE interpolation support PR (either #555 or #690 respectively) which is not yet added to the latest release?
AFAIK, if a rope-encoded model is 2048 ctx length, eval starts to significantly degrade from around 2400 tokens without interpolation methods.

My model is baichuan-13b (Alibi location embedding) sft, trained with a 4096 ctx length, so the blue line (HF forward) is normal to me, however, the orange line (VLLM forward) is quite confusing for me.

I think vllm doesn't support alibi context expanding?
However, since you are trained with 4096, so the drop is really mysterious.

yes, the same issue. Get bad result after using vllm. The model is baichuan-13b. not sure how to fix the issue.

Share some of my experimental results.
LongEval result
Here is the result of my running the longeval Fine-grained Line Retrieval task, using same model and same parameters.

temperature: 0.01
top_p: 0.95
vllm max_num_batched_tokens: 4096

## Ceval
However, the same model, tested on the ceval task using HF and VLLM, did not show a significant difference.

I finally found out how to fix this problem. For baichuan-13b(or other model using ALiBi), you can try change following line in vllm/model_executor/layers/attention.py
https://github.com/vllm-project/vllm/blob/320a622ec4d098f2da5d097930f4031517e7327b/vllm/model_executor/layers/attention.py#L354
change to HF implement:
bias = bias[None, :].repeat(prompt_len, 1)

@Sanster Can u make an PR?

@Sanster Can u make an PR?

I'm not sure how this modification will affect other models or datasets. If more people could share the impact of this modification, it might be worth proposing a PR.

This commit https://github.com/vllm-project/vllm/commit/db09d4ad833b1d8911f14852a484790c53818a5d seems to have fixed the problem with alibi. In my tests, the results are very close to just modifying bias = bias[None, :].repeat(prompt_len, 1).

I can confirm this quality degradation is also present in Falcon-7B. A finetuned model whose BLEU score is ~94 degrades to a BLEU score of ~80.
In my case, this is a blocker for using vLLM, because:

The quality of the model must be high.
Given it is a difference in vLLM's algorithm and not the model, it makes it virtually impracticable and/or impossible to improve the model's performance during training.

For the mean time, I'll be forced to use TGI but I'd like to use vLLM if this issue is fixed.

after merge pr #866 (
Add repetition_penalty aligned with huggingface) to this fork https://github.com/yanxiyue/vllm, vllm works well for me on baichuan13b

I have the same problem on baichuan2. Very serious inference performance degradation in baichuan2 with use vllm.  I'm currently using version is 0.2.1. Has anyone solved this problem?

Closing this issue as stale as there has been no discussion in the past 3 months.
If you are still experiencing the issue you describe, feel free to re-open this issue.

Based on the last discussion before the issue when stale, repetition_penalty was the cause of the discrepancy.
This feature was added in https://github.com/vllm-project/vllm/pull/1424.


Possibility of having different number of units in the hidden layers

I would like to know if it is possible for the VAE model (in scVI) to have different number of hidden units in each hidden layer. Currently, I am assuming that there can only be one or more hidden layers with the same number of hidden units, as the argument n_hidden takes only one integer value rather than a list of values.

This is not currently possible, but if you would like to make a PR implementing this, we can probably benefit from this functionality.


Adds 'spo site appcatalog list' command. Closes #4231

Adds spo site appcatalog list command. Closes #4231

Thank you @nanddeepn
We'll try to review it ASAP!

Merged manually, thank you! 🚀


python: Use FindPython cmake module instead of deprecated FindPythonInterp

This uses the FindPython cmake module instead of the old FindPythonInterp, both to future-proof and avoid certain issues (e.g. in the Solus package build the old module lead to misdetections and build failures).
Unfortunately this means bumping the minimum cmake version to 3.12, which was released in July 2018. I'm not sure if this is an issue for this project.

@Staudey Thanks for your contribution.  I think bumping CMake to 3.12 may be acceptable at this point.  But these changes cause the MSVC tests to fail.  Can you please look into what's needed to make them pass?

Thanks for the heads-up! I'll have to take another look at this because what I first thought the appveyor issue was turned out to be a red herring.


Change compression from LZMA to ZStandart

ZStandart has same compression ratios and better decompression time:
https://gregoryszorc.com/blog/2017/03/07/better-compression-with-zstandard/
https://commons.apache.org/proper/commons-compress/

Hi, I've had a quick look at this issue, and it seems the change is a bit more involved than it looks on the surface. ZStandard is a compression algorithm, not an archival format, that is, it can't organize multiple files into a single archive. The approach used now, 7Zip, supports both archival and compression (to be precise, it supports a collection of different compression formats, but not ZStandard).
Now, in order to use ZStandard compression method, it's required to come up with an alternative archival method, probably tar or something similar, to put all individual GeoJSON features into a single file first, and then apply compression to that file.
It's all definitely doable, and might be beneficial for the Timeshape project, if artifact size doesn't increase substantially, and decompression time is decreased, so let's do it! I obviously can't promise any timelines here, but if you're interested in giving it a try, I'll gladly accept a pull request from you. If you're interested in giving it a stab, and if you need guidance on the project setup or any other details about the project, besides what's already written in the README, please ask here, and I'll do my best to provide clarification.

I did'nt read the source code of timeshape and did'nt know about it.
I have imagined that geojson was compressed first with lzma and then stored with no compression in a folder inside the library jar/zip file.
But now I found that my assumption was false. :)

Ok, I've tried using ZStandard and I must say I'm positively surprised by its performance! I was expecting it to have a better decompression time, but in practice it also offers better compression time (mostly irrelevant for Timeshape users) and compression rate (5% better). Decompression time, at least on my laptop, has dropped significantly, and now TimeZoneEngine#initialize method takes only 1300 milliseconds for Tar+ZStandard, versus 4300 milliseconds for 7z+LZMA4. This new approach is definitely worth using, so I'll make a release with it.

I've just released 2018d.6 that uses ZStandard for an increased compression rate and faster speed. Could you please give it a try and close this issue if all is fine on your side?

Ok, I'll go ahead and close this one now.

I will test the new version for getting the improvements.
Thanks for the hard work.

It worked fine. 👍
Wondering if replacing Protobuff with Capn'Proto can give any performance while querying and if the performace/memory tradeoffs worths.

Interesting regarding Cap'n Proto, I've created https://github.com/RomanIakovlev/timeshape/issues/29 to track this.


Add endpoint /health for health checking

waiting for #3 to be merged

related issue: #5

summary: This pull request introduces a new endpoint /health to ghnotify

spec: The /health endpoint is designed to respond to GET requests with a 200 OK status code

@Rindrics Thank you for the PR. I think it's ready for review and merge now. Can I do it?

I'm sorry for my late reply, I've rebased my branch onto current main.
Would you review this PR? @m-mizutani
Thanks,

Hi, I would appreciate it if you could review this! 😄 @m-mizutani

Sorry for late reply. It LGTM

Thank you!


search bar hard to read in dark mode

The search bar in the bundle side bar is now dark gray on black. Not exactly well-readable ;-).

Good point! Will address asap...


is csrf-magic alive?

I see not much activity hence curious ... is csrf magic alive?

It's done, I accept patches, but I am not actively using it as a maintainer myself. Maybe others are!


[添加规则] 将硬件时钟设置为 UTC

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\TimeZoneInformation 中的 DWORD 值 RealTimeIsUniversal。0 表示设置硬件时钟为本地时间，1 表示设置为协调世界时。
第一次写 Dism++ 规则，还麻烦大家检查一下我有没有写错。
此外，根据 ArchWiki 中的描述，早期版本 Windows 对该选项的支持有 BUG。我们应当对不同版本的系统分别处理，或者直接放弃老版本系统。但是鉴于我没有找到规则编写文档，这里又要麻烦大家了。

Historical notes
For really old Windows, the above method fails, due to Windows bugs. More precisely,

For 64-bit versions of Windows 7 and older builds of Windows 10, there was a bug that made it necessary to have a QWORD value with hexadecimal value of 1 instead of a DWORD value. This bug has been fixed in newer builds and now only DWORD works.
Before Vista SP2, there is a bug that resets the clock to localtime after resuming from the suspend/hibernation state.
For XP and older, there is a bug related to the daylight saving time. See [2] for details.
For even older versions of Windows, you might want to read https://www.cl.cam.ac.uk/~mgk25/mswish/ut-rtc.html - the functionality was not even documented nor officially supported then.
For these operating systems, it is recommended to use localtime.

System time (简体中文)#时间标准 - ArchWiki
System time#Time standard - ArchWiki

以前其实有人说过，但是Linux/Mac多系统时才有意义。
我不太喜欢加入这种规则，因为很显然普通人看不懂 也不需要。
如果有需要自己保存一个规则即可。


Proposal: Support Single single-on with SPNEGO and SSPI (Kerberos) on Windows

Motivation
When using Gitea on premises in a Windows environment (with Active Directory), it would be very convenient to be able to use single sign-on authentication via Kerberos. Currently Gitea supports LDAP authentication to Active Directory (https://docs.gitea.io/en-us/authentication/), but LDAP is not single sign-on.
Short overview of proposal
The proposal is to support Single single-on authentication with Kerberos by implementing the protocol defined by RFC4559 (SPNEGO-based HTTP Authentication in Microsoft Windows) to exchange authentication data between the web browser and HTTP server, and the Security Support Provider Interface (SSPI) to perform the authentication.
Use cases

When installing Gitea:

a configuration option named Enable SSPI authentication (Windows only) could be added to the Server and Third-Party Service Settings section:

That option could be disabled by default.

When opening the home page:

If the user follows any link on the home page (eg. the Register or Sign In buttons) authentication is performed and the user is automatically signed in with the Kerberos credentials he is currently using in the operating system.

When SSPI authentication is enabled, but the user needs to temporary use another authentication method (eg. to login as local user with administrative rights):

The dashboard for anonymous users contains an additional button for temporary disabling single sing-on (the button Disable Single Sign-On appears only if SSPI authentication has been enabled in configuration):

The menu for users that are already signed in with SSO also have an option to temporary disable SSO:

The user finished his work as local user and wants to use single-sign on again (to login as the user currently signed in the operating system):

If SSPI authentication is enabled in configuration, but the user has temporary disabled it using the Disable Single Sign-On button, then both the anonymous dashboard and the user menu will contain a option Enable Single Sign-On, which restores SSPI authentication:

Configuration
The [service] section of the app.ini could contain the following additional options:
; Enable SPNEGO authentication via the built-in SSPI module in Windows.
; To use SSPI authentication you need to create suitable service principal name (SPN)
; for the user running gitea (see https://github.com/quasoft/websspi for more details)
ENABLE_SSPI = false

; Allow SSPI auth method to automatically create new users on the go
SSPI_AUTO_CREATE_USERS = true

; Allow SSPI auth method to automatically activate new users
SSPI_AUTO_ACTIVATE_USERS = true

; The character to use to replace the separators of down-level logon names (eg. the \
; in "DOMAIN\user") and user principal names (eg. the @ in<EMAIL_ADDRESS>SSPI_SEPARATOR_REPLACEMENT = _

; Default language for users automatically created by SSPI auth method
SSPI_DEFAULT_LANG = en-us

Those additional configuration values could be displayed in the Service configuration section of /admin/config page:

Design
Why SSPI and not a cross-platform kerberos library?
SSPI is chosen for verification because in Windows only environments (where both the client and server run Windows) it works without keytab files, which simplifies setup and improves security by not forcing you to store the user password in a keytab file.
How will this new authentication method be integrated into Gitea codebase?
The SignedInUser function of the auth module (https://github.com/go-gitea/gitea/blob/master/modules/auth/auth.go) is already doing authentication at the middleware level for:

Reverse proxy authentication via the X-WEBAUTH-USER header: https://github.com/go-gitea/gitea/blob/46a12f196b1742a2462259ed3dd9c33c4c2f150b/modules/auth/auth.go#L134
Basic authentication with the Authorization header: https://github.com/go-gitea/gitea/blob/46a12f196b1742a2462259ed3dd9c33c4c2f150b/modules/auth/auth.go#L172
OAuth authentication with the Authorization header or with the token and access_token query params: https://github.com/go-gitea/gitea/blob/46a12f196b1742a2462259ed3dd9c33c4c2f150b/modules/auth/auth.go#L44 and https://github.com/go-gitea/gitea/blob/46a12f196b1742a2462259ed3dd9c33c4c2f150b/modules/auth/auth.go#L189

SSPI authentication could be added to the same SignedInUser function, but that would increase the compexity of the file.
A better approach could be to introduce something like a plugin pattern for Single single sign-on authentication methods. A separate subpackage modules/auth/sso could be created with a common interface:
// SingleSignOn represents a SSO authentication method (plugin) for HTTP requests.
type SingleSignOn interface {
	// Init should be called exactly once before using any of the other methods,
	// in order to allow the plugin to allocate necessary resources
	Init() error

	// Free should be called exactly once before application closes, in order to
	// give chance to the plugin to free any allocated resources
	Free() error

	// IsEnabled checks if the current SSO method has been enabled in settings.
	IsEnabled() bool

	// VerifyAuthData tries to verify the SSO authentication data contained in the request.
	// If verification is successful returns either an existing user object (with id > 0)
	// or a new user object (with id = 0) populated with the information that was found
	// in the authentication data (username or email).
	// Returns nil if verification fails.
	VerifyAuthData(ctx *macaron.Context) *models.User
}

Specific implementations of that interface could be:

basic.go
oauth2.go
reverseproxy.go
sspi_windows.go

Basic, OAuth and Reverse proxy authentication will be moved from the modules/auth/auth.go file to those "plugin" implementations.
A new plugin implementing the interface will be introduced for SSPI authentication.
Authentication plugins would be used at the middleware level - inside the same SignedInUser function:
// Try to sign in with each of the enabled plugins
for _, ssoMethod := range sso.Methods() {
    if !ssoMethod.IsEnabled() {
        continue
    }
    user = ssoMethod.VerifyAuthData(ctx)
    if user != nil {
        handleSignIn(ctx, sess, user)
        _, isBasic := ssoMethod.(*sso.Basic)
        return user, isBasic
    }
}

Does it introduce new dependencies?
Yes, one additional direct dependency will be needed - github.com/quasoft/websspi (shameless plug, I am the author of this module).
Does SSPI require any complex setup in the AD environment?
No, the only configuration that is strictly required is to create a suitable Service Principal Name for the domain account that will be running the gitea.exe process.
That is usually achieved by running the following command with a priviledged user:
setspn -A HTTP/host.domain.local domain\user

There are some gotchas the user might crash into while setting it up, which will be described in the Authentication section of the documentation:

Gitea supports SPNEGO single sign-on authentication (the scheme defined by RFC4559) for the web part of the server via the Security Support Provider Interface (SSPI) built in Windows. SSPI works only in Windows environments - when both the server and the clients are running Windows.

Before activating SSPI single sign-on authentication (SSO) you have to prepare your environment:

Create a separate user account in active directory, under which the gitea.exe process will be running (eg. user under domain domain.local):
Create a service principal name for the host where gitea.exe is running with class HTTP:
Start Command Prompt or PowerShell as a priviledged domain user (eg. Domain Administrator)
Run the command below, replacing host.domain.local with the fully qualified domain name (FQDN) of the server where the web application will be running, and domain\user with the name of the account created in the previous step:

  setspn -A HTTP/host.domain.local domain\user

Sign in (sign out if you were already signed in) with the user created
Enable SSPI authentication by changing the ENABLE_SSPI value in custom/conf/app.ini to true
Start the web server (gitea.exe web)
Sign in to a client computer in the same domain with any domain user
If you are using Chrome, Edge or Internet Explorer, add the URL of the web app to the Local intranet sites (Internet Options -> Security -> Local intranet -> Sites)
Start Chrome, Edge or Internet Explorer and navigate to FQDN URL of gitea (eg. http://host.domain.local:3000)
Click the Sign In button on the dashboard and you should be automatically logged in with the same user that is currently logged on to the computer
If it does not work, make sure that:

You are not running the web browser on the same server where gitea is running. You should be running the web browser on a domain joined computer (client) that is different from the server
There is only one HTTP/... SPN for the host
The SPN contains only the hostname, without the port
You have added the URL of the web app to the Local intranet zone
The clocks of the server and client should not differ with more than 5 minutes (depends on group policy)
Integrated Windows Authentication should be enabled in Internet Explorer (under Advanced settings)

Sample implementation of the proposed changes is submitted as Pull request https://github.com/go-gitea/gitea/pull/8463

It would be nice if it would also implement getting user details (name, surname, email) using LDAP technical user

That's an interesting idea, probably can make it get additional user attributes or membership to AD groups at a later stage. Have to think on how it will work more.

First of all, kudos for the delightfully detailed documentation!! 🎉
I'm adding my comments to the PR directly so the discussion doesn't split in two threads.


[$500] Chat - Low performance in the chat after uploading a large resolution image

If you haven’t already, check out our contributing guidelines for onboarding and email<EMAIL_ADDRESS>to request to join our Slack channel!

Version Number: <IP_ADDRESS>
Reproducible in staging?: Y
Reproducible in production?: Y
If this was caught during regression testing, add the test name, ID and link from TestRail:
Email or phone of affected tester (no customers):
Logs: https://stackoverflow.com/c/expensify/questions/4856
Expensify/Expensify Issue URL:
Issue reported by: Applause - Internal Team
Slack conversation:
Action Performed:

Navigate to any conversation
Do a manual IOU
Attach the provided large resolution image and submit the IOU
Scroll the chat

Expected Result:
Uploading an image shouldn't affect the performance
Actual Result:
Low performance in the chat after uploading a large resolution image
Workaround:
Unknown
Platforms:

Which of our officially supported platforms is this issue occurring on?

[ ] Android: Native
[x] Android: mWeb Chrome
[ ] iOS: Native
[ ] iOS: mWeb Safari
[x] MacOS: Chrome / Safari
[ ] MacOS: Desktop

Screenshots/Videos
Add any screenshot/video evidence

https://github.com/Expensify/App/assets/78819774/2f3d01ee-6f59-4711-936b-b24d573cd9f4
View all open jobs on GitHub
Upwork Automation - Do Not Edit

Upwork Job URL: https://www.upwork.com/jobs/~015f92b17a032d7dc0
Upwork Job ID:<PHONE_NUMBER>816984064
Last Price Increase: 2024-01-09

Proposal
Please re-state the problem that we are trying to solve in this issue.
Low performance in the chat after uploading a large resolution image
What is the root cause of that problem?
We are not limiting the resolution as we do for Avatar
https://github.com/Expensify/App/blob/e9f27ab4218ec21ac6ecd755d4026b85c50f67d6/src/components/AvatarWithImagePicker.js#L207-L211
What changes do you think we should make in order to solve the problem?

We should implement a resolution limit for receipt as we did for avatar
Check if the resolution of the uploaded image has greater than the max resolution and set error message instead of setting the image to the receipt of the transaction (same as what we did for avatar).
We will implement it to all places users input the receipt.
What alternative solutions did you explore? (Optional)

@lanitochka17 Can you please attach the used image?

@FitseTLT Thanks for the proposal. Are you able to reproduce the lag with the image uploaded as an attachment (not in IOU). If we are going to limit the resolution I think we need to do so for the attachment uploader as well.

I only observe the lag on IOU. Especially after selecting the receipt it has a lag when it navigates away from receipt selector page. And ofcourse don't forget the lag depends with the device performance.

I don't think we should limit the image size. The lag is only happening on the uploader side and it's temporarily as after the image is uploaded, the server will return a lower res image (1024px wide). From UX perspective it's better to allow the user to upload a high-res image and experience a lag for a brief period than not allowing him to upload the image at all.
Also I don't think this is a bug that a real user would encounter.
🎀 👀 🎀 C+ reviewed
^ For engineer opinion

Yeah i agree this is a low importance issue, in most cases the users will take a picture with their phone or could upload some pdf but it would not be super large


[Shadcnblocks.com] -> [React UI Libraries]

Resource Name - Shadcnblocks.com
Shadcnblocks.com offers a collection of pre-built UI components designed for React, Tailwind CSS, and Shadcn UI. We offer 35 free components and 100+ premium components. Our collection is growing each month.
Link: https://shadcnblocks.com
Checklist:

[x] I have performed a self-review of submitted resource and its follows the guidelines of the project.

Not free


🥵 Request a different error each time without using load balancing（Check out the details）

Describe the bug
A clear and concise description of what the bug is.
To Reproduce
The request is for the same address, and the following problems will appear randomly on each refresh

💀 Status Code: 502; Bad Gateway

[2023-09-08 10:07:42 INF] (23) Proxying to https://localhost:8661/swagger/Default/swagger.json HTTP/2 RequestVersionOrLower no-streaming

[2023-09-08 10:07:42 INF] (27) Request: An error was encountered before receiving a response.
 System.Net.Http.HttpRequestException: The SSL connection could not be established, see inner exception.
 ---> System.IO.IOException: Cannot determine the frame size or a corrupted frame was received.
   at System.Net.Security.SslStream.ReceiveBlobAsync[TIOAdapter](TIOAdapter adapter)
   at System.Net.Security.SslStream.ForceAuthenticationAsync[TIOAdapter](TIOAdapter adapter, Boolean receiveFirst, Byte[] reAuthenticationData, Boolean isApm)
   at System.Net.Http.ConnectHelper.EstablishSslConnectionAsyncCore(Boolean async, Stream stream, SslClientAuthenticationOptions sslOptions, CancellationToken cancellationToken)
   --- End of inner exception stack trace ---
   at System.Net.Http.ConnectHelper.EstablishSslConnectionAsyncCore(Boolean async, Stream stream, SslClientAuthenticationOptions sslOptions, CancellationToken cancellationToken)
   at System.Net.Http.HttpConnectionPool.ConnectAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken)
   at System.Net.Http.HttpConnectionPool.GetHttp2ConnectionAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken)
   at System.Net.Http.HttpConnectionPool.SendWithRetryAsync(HttpRequestMessage request, Boolean async, Boolean doRequestAuth, CancellationToken cancellationToken)
   at Yarp.ReverseProxy.Forwarder.HttpForwarder.SendAsync(HttpContext context, String destinationPrefix, HttpMessageInvoker httpClient, ForwarderRequestConfig requestConfig, HttpTransformer transformer)

💀 Value cannot be null. (Parameter 'destinationPrefix')

[2023-09-08 10:09:09 ERR] (24) 耗时：1065ms，系统异常：/api/emr-swagger
 System.ArgumentNullException: Value cannot be null. (Parameter 'destinationPrefix')
   at Yarp.ReverseProxy.Forwarder.HttpForwarder.SendAsync(HttpContext context, String destinationPrefix, HttpMessageInvoker httpClient, ForwarderRequestConfig requestConfig, HttpTransformer transformer)
   at Yarp.ReverseProxy.Forwarder.ForwarderMiddleware.Invoke(HttpContext context)
   at Yarp.ReverseProxy.Health.PassiveHealthCheckMiddleware.Invoke(HttpContext context)
   at Microsoft.AspNetCore.Routing.EndpointMiddleware.<Invoke>g__AwaitRequestTask|6_0(Endpoint endpoint, Task requestTask, ILogger logger)
   at Microsoft.AspNetCore.Authorization.AuthorizationMiddleware.Invoke(HttpContext context)
   at Microsoft.AspNetCore.Authentication.AuthenticationMiddleware.Invoke(HttpContext context)
   at Microsoft.AspNetCore.Diagnostics.StatusCodePagesMiddleware.Invoke(HttpContext context)
   at Swashbuckle.AspNetCore.SwaggerUI.SwaggerUIMiddleware.Invoke(HttpContext httpContext)
   at Swashbuckle.AspNetCore.Swagger.SwaggerMiddleware.Invoke(HttpContext httpContext, ISwaggerProvider swaggerProvider)
   at TWZHIS.Cloud.Middlewares.ApiLogMildd.InvokeAsync(HttpContext context) in D:\ln2023\WorkProject\TWZHIS.Cloud\TWZHIS.Cloud.Extensions\Middlewares\ApiLogMildd.cs:line 87

Here's my configuration
"ReverseProxy": {
    "Logging": {
      "LogLevel": {
        "Default": "Information",
        // Uncomment to hide diagnostic messages from runtime and proxy
        // "Microsoft": "Warning",
        // "Yarp" : "Warning",
        "Microsoft.Hosting.Lifetime": "Information"
      }
    },
    "Routes": {
      "routeEmr": {
        "ClusterId": "clusterEmr",
        "Order": 90,
        "Match": {
          "Path": "/api/emr/{**everything}"
        },
        "Transforms": [ // 转换列表。有关更多详细信息，请参阅Transforms文章 这个的看到后面的文档再说了
          //{ "PathRemovePrefix": "/emr" }
          { "PathPattern": "/api/{**everything}" }
        ]
      },
      //----
      "emrswagger": {
        "ClusterId": "clusterEmr",
        "Order": 100,
        "Match": {
          "Path": "/api/emr-swagger"
        },
        "Transforms": [ // 转换列表。有关更多详细信息，请参阅Transforms文章 这个的看到后面的文档再说了
          //{ "PathRemovePrefix": "/emr" }
          { "PathPattern": "/swagger/Default/swagger.json" }
        ],
        // 可由自定义扩展使用的键值对列表
        "MetaData": {
          "IsSwaggerJson": true
        }
      },
      "route2": {
        "ClusterId": "cluster2",
        "Match": {
          "Path": "/testyarn/{**everything}"
        }
      }
    },
    "Clusters": {
      "clusterEmr": {
        "Destinations": {
          "destination1": {
            "Address": "https://localhost:8661"
          },
          "HealthCheck": {
            "Active": {
              "Enabled": "true",
              "Interval": "00:00:10",
              "Timeout": "00:00:10",
              "Policy": "ConsecutiveFailures",
              "Path": "/api/system/health"
            }
          }
        }
      },
      "cluster2": {
        "Destinations": {
          "destination1": {
            "Address": "http://www.baidu.com"
          },
          "destination2": {
            "Address": "http://www.google.com"
          }
        }
      }
    }

  }

I only do the configuration, in addition to no additional control in the code

↓ code vew

Further technical details

Use Windows 😗
TargetFramework：net5.0 😍
PackageReference：Yarp.ReverseProxy 1.1.2 😍

😥 In addition, my English level and professional technology level is low, I want to claim the company encountered when using yarp has problem, if you can, can help analyze the problem of what might be the reason

我参考的文档是： → https://microsoft.github.io/reverse-proxy/index.html

There is a problem to find the cause, I filled in the configuration is https://localhost:8661 in fact, my api is http://localhost:8661, so it will cause SSL errors
After this problem is solved, it will still exist
The request is for the same address, and the following problems will appear randomly on each refresh
This problem
Sometimes success：

Sometimes error：

。。i find #2175 maybe is  HealthCheck no address √


Pyproj return "None" when "towgs" exists

Pyproj returns None when towgs exists
Code Sample, a copy-pastable example if possible
from pyproj import CRS
proj4 = "+proj=tmerc +lat_0=0 +lon_0=173 +k=0.9996 +x_0=1600000 +y_0=10000000 +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs"
print(CRS.to_epsg(CRS.from_proj4(proj4)))

Returns None
Problem description
Ideally this should return 2193.
This appears to be common proj4 string for 'epsg:2193`.
gdalsrsinfo -o proj4 epsg:2193

I suspect this is an issue with the addition of the +towgs84=0,0,0,0,0,0,0 in the proj4 and not an issue specific to epsg:2193
Normally, I would not rely on the proj4 string for operations, however, in my use case, I am forced to use it
Expected Output
proj4 = "+proj=tmerc +lat_0=0 +lon_0=173 +k=0.9996 +x_0=1600000 +y_0=10000000 +ellps=GRS80 +units=m +no_defs"
print(CRS.to_epsg(CRS.from_proj4(proj4)))
2193

Environment Information
pip3 show pyproj
name: pyproj
Version: 3.5.0
Summary: Python interface to PROJ (cartographic projections and coordinate transformations library)
Home-page: https://github.com/pyproj4/pyproj
Author: Jeff Whitaker
Author-email<EMAIL_ADDRESS>License: MIT
Location: /usr/local/lib/python3.10/dist-packages
Requires: certifi
Required-by: geopandas

pip3 show geopandas
Name: geopandas
Version: 0.12.2
Summary: Geographic pandas extensions
Home-page: http://geopandas.org
Author: GeoPandas contributors
Author-email<EMAIL_ADDRESS>License: BSD
Location: /usr/local/lib/python3.10/dist-packages
Requires: fiona, packaging, pandas, pyproj, shapely

gdalinfo --version
GDAL 3.4.1, released 2021/12/27

Installation method
pip3 install geopandas --upgrade

Also tried:
pip3 install pyproj --upgrade --force-reinstall

The EPSG code is for a Projected CRS:
>>> from pyproj import CRS
>>> crs = CRS("EPSG:2193")
>>> crs
<Projected CRS: EPSG:2193>
Name: NZGD2000 / New Zealand Transverse Mercator 2000
Axis Info [cartesian]:
- N[north]: Northing (metre)
- E[east]: Easting (metre)
Area of Use:
- name: New Zealand - North Island, South Island, Stewart Island - onshore.
- bounds: (166.37, -47.33, 178.63, -34.1)
Coordinate Operation:
- name: New Zealand Transverse Mercator 2000
- method: Transverse Mercator
Datum: New Zealand Geodetic Datum 2000
- Ellipsoid: GRS 1980
- Prime Meridian: Greenwich

>>> crs.to_proj4()
'+proj=tmerc +lat_0=0 +lon_0=173 +k=0.9996 +x_0=1600000 +y_0=10000000 +ellps=GRS80 +units=m +no_defs +type=crs'

When you add the towsg84 the type of CRS is a Bound CRS:
>>> from pyproj import CRS
>>> proj4 = "+proj=tmerc +lat_0=0 +lon_0=173 +k=0.9996 +x_0=1600000 +y_0=10000000 +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs"
>>> crs = CRS(proj4)
>>> crs
<Bound CRS: +proj=tmerc +lat_0=0 +lon_0=173 +k=0.9996 +x_0=160 ...>
Name: unknown
Axis Info [cartesian]:
- E[east]: Easting (metre)
- N[north]: Northing (metre)
Area of Use:
- undefined
Coordinate Operation:
- name: Transformation from unknown to WGS84
- method: Position Vector transformation (geog2D domain)
Datum: Unknown based on GRS80 ellipsoid using towgs84=0,0,0,0,0,0,0
- Ellipsoid: GRS 1980
- Prime Meridian: Greenwich
Source CRS: unknown

To get the EPSG code of the projected CRS, you use the source_crs attribute (see to_epsg docstring):
>>> crs = CRS(proj4)
>>> crs.source_crs.list_authority(min_confidence=0)
[AuthorityMatchInfo(auth_name='EPSG', code='2193', confidence=50)]
>>> crs.source_crs.to_epsg(min_confidence=50)
2193

Thank you for the very clear explanation.  Very helpful.


changed logo folder to lowercase

Changing logo folder name from uppercase to lowercase for consistency and to avoid case-sensitive issues.

@c-rindi can you think of any place where these logos might be being used in the real world?  I looked through the code in the repo and nothing seems to refer to these assets directly, so I think this is safe to do.  Just thought I'd check with you first.

@stackedsax Good call - I don't think they're being used yet, so we should be safe to do this now.
This folder renaming is a correction of mistake in naming the folder originally.

eh, I just realized these weren't in the docs folder.  I think it might be good to move them there instead and keep the root folder a little cleaner.  @Debiday could you submit another PR for that (or revert this one and fix, if you prefer, but maybe just cleaner to submit a new one).

Got it, made a new PR here to move to the docs folder here

Thank you @stackedsax!


ScrollController.keepScrollOffset should work with multiple scrollables in a single route

Use case
It may have been reasonable to assume on mobile that there would only a single scrollable widget for which the offset was being maintained by holding onto the ScrollController. However, with desktop in stable this isn't a good assumption anymore. For desktop and web applications it's reasonably common for multiple scrollables to be in the same view and to want to maintain their offsets. If you don't read the docs and assume you can just hold onto your scroll controllers and use keepScrollOffset, the result is very buggy behavior as the different scroll controllers interfere with each other.
I've had to write my own abstraction that essentially provides my widgets with a new controller on every build with the initialOffset that I saved.

Proposal
When using keepScrollOffset, the stored offset should be keyed on the controller so that each controller saves a distinct offset and there's no interference.

Hi @jonaird, Thanks for filing the issue. I am not sure I totally understood the problem here, Could you please take a look at the below code sample which uses multiple scroll views in the same route and I don't see any interference in their scroll position with or without keepScrollOffset set to true;

code sample
import 'package:flutter/material.dart';

void main() => runApp(const MyApp());

class MyApp extends StatelessWidget {
  const MyApp({Key? key}) : super(key: key);

  @override
  Widget build(BuildContext context) {
    return const MaterialApp(
      home: MyHomePage(),
    );
  }
}

class MyHomePage extends StatefulWidget {
  const MyHomePage({Key? key}) : super(key: key);

  @override
  State<MyHomePage> createState() => _MyHomePageState();
}

class _MyHomePageState extends State<MyHomePage> {
  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: const Text('multiple scroll views'),
      ),
      body: Row(
        children: const [
          Expanded(
            child: ColorBoxPage(),
          ),
          Expanded(
            child: ColorBoxPage(),
          )
        ],
      ),
    );
  }
}

class ColorBoxPage extends StatelessWidget {
  const ColorBoxPage({Key? key}) : super(key: key);

  @override
  Widget build(BuildContext context) {
    return ListView.builder(
      itemExtent: 250.0,
      controller: ScrollController(),
      itemBuilder: (BuildContext context, int index) => Container(
        padding: const EdgeInsets.all(10.0),
        child: Material(
          color: index.isEven ? Colors.cyan : Colors.deepOrange,
          child: Center(
            child: Text(index.toString()),
          ),
        ),
      ),
    );
  }
}

flutter doctor -v
[✓] Flutter (Channel stable, 2.10.0, on macOS 12.1 21C52 darwin-arm, locale en-GB)
    • Flutter version 2.10.0 at /Users/mahesh/Documents/flutter
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision 5f105a6ca7 (3 days ago), 2022-02-01 14:15:42 -0800
    • Engine revision 776efd2034
    • Dart version 2.16.0
    • DevTools version 2.9.2

[✓] Android toolchain - develop for Android devices (Android SDK version 31.0.0)
    • Android SDK at /Users/mahesh/Library/Android/sdk
    • Platform android-31, build-tools 31.0.0
    • ANDROID_HOME = /Users/mahesh/Library/Android/sdk
    • Java binary at: /Applications/Android Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 11.0.8+10-b944.6916264)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 13.2.1)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • CocoaPods version 1.10.2

[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[✓] Android Studio (version 4.2)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 11.0.8+10-b944.6916264)

[✓] IntelliJ IDEA Community Edition (version 2021.2.1)
    • IntelliJ at /Applications/IntelliJ IDEA CE.app
    • Flutter plugin version 60.1.4
    • Dart plugin version 212.5080.8

[✓] VS Code (version 1.63.2)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.34.0

[✓] Connected device (4 available)
    • Redmi K20 Pro (mobile) • <IP_ADDRESS>:5555                     • android-arm64  • Android 11 (API
      30)
    • iPhone 12 Pro (mobile) • 14F40EC6-3B73-469A-A1C0-8CF0B152290F • ios            •
      com.apple.CoreSimulator.SimRuntime.iOS-14-5 (simulator)
    • macOS (desktop)        • macos                                • darwin-arm64   • macOS 12.1 21C52
      darwin-arm
    • Chrome (web)           • chrome                               • web-javascript • Google Chrome
      98.0.4758.80

[✓] HTTP Host Availability
    • All required HTTP hosts are available

• No issues found!

@maheshmnj The issue is when you hold onto the ScrollController (in a stateful widget for example) and reuse it for multiple builds. From the docs:

  /// Each time a scroll completes, save the current scroll [offset] with
  /// [PageStorage] and restore it if this controller's scrollable is recreated.
  ///
  /// If this property is set to false, the scroll offset is never saved
  /// and [initialScrollOffset] is always used to initialize the scroll
  /// offset. If true (the default), the initial scroll offset is used the
  /// first time the controller's scrollable is created, since there's no
  /// scroll offset to restore yet. Subsequently the saved offset is
  /// restored and [initialScrollOffset] is ignored.
  ///
  /// See also:
  ///
  ///  * [PageStorageKey], which should be used when more than one
  ///    scrollable appears in the same route, to distinguish the [PageStorage]
  ///    locations used to save scroll offsets.
  final bool keepScrollOffset;

@jonaird I am not really sure what you meant for "multiple builds", Are you referring to the case where changing tabs with the bottom navigation bar or TabBar would reset the controller offset to the initial offset? if so have you tried using PageStorageKey which maintains the scroll offset, Please take a look at the below code samples.

reproducible code sample (does not maintain scrollOffset)
import 'package:flutter/material.dart';

void main() {
  runApp(MyApp());
}

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Flutter Demo',
      theme: ThemeData(
        primarySwatch: Colors.blue,
      ),
      home: const MyHomePage(title: 'Flutter Demo Home Page'),
    );
  }
}

class MyHomePage extends StatefulWidget {
  const MyHomePage({Key? key, required this.title}) : super(key: key);

  final String title;

  @override
  _MyHomePageState createState() => _MyHomePageState();
}

class _MyHomePageState extends State<MyHomePage>
    with SingleTickerProviderStateMixin {
  late TabController controller;

  @override
  void initState() {
    super.initState();
    controller = TabController(
      length: 2,
      vsync: this,
    );
  }

  @override
  void dispose() {
    controller.dispose();
    super.dispose();
  }

  final _controller1 = ScrollController();
  final _controller2 = ScrollController();
  @override
  Widget build(BuildContext context) {
    var tabs = const <Tab>[
      Tab(icon: Icon(Icons.home), text: 'Tab 1'),
      Tab(icon: Icon(Icons.account_box), text: 'Tab 2')
    ];

    return Scaffold(
      appBar: AppBar(
        title: Text(widget.title),
      ),
      body: TabBarView(controller: controller, children: <Widget>[
        ListView(controller: _controller1, children: <Widget>[
          Column(children: <Widget>[
            for (int i = 0; i < 208; i++) Text('Data $i'),
          ])
        ]),
        ListView(controller: _controller2, children: <Widget>[
          Column(children: <Widget>[
            for (int i = 0; i < 208; i++) Text('Data $i'),
          ])
        ]),
      ]),
      bottomNavigationBar: Material(
        color: Colors.deepOrange,
        child: TabBar(controller: controller, tabs: tabs),
      ),
    );
  }
}

code sample (maintains scrollOffset with PageStorage)
import 'package:flutter/material.dart';

void main() {
  runApp(MyApp());
}

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Flutter Demo',
      theme: ThemeData(
        primarySwatch: Colors.blue,
      ),
      home: const MyHomePage(title: 'Flutter Demo Home Page'),
    );
  }
}

class MyHomePage extends StatefulWidget {
  const MyHomePage({Key? key, required this.title}) : super(key: key);

  final String title;

  @override
  _MyHomePageState createState() => _MyHomePageState();
}

class _MyHomePageState extends State<MyHomePage>
    with SingleTickerProviderStateMixin {
  late TabController controller;

  @override
  void initState() {
    super.initState();
    controller = TabController(
      length: 2,
      vsync: this,
    );
  }

  @override
  void dispose() {
    controller.dispose();
    super.dispose();
  }

  final _controller1 = ScrollController();
  final _controller2 = ScrollController();
  final PageStorageBucket _bucket = PageStorageBucket();
  @override
  Widget build(BuildContext context) {
    var tabs = const <Tab>[
      Tab(icon: Icon(Icons.home), text: 'Tab 1'),
      Tab(icon: Icon(Icons.account_box), text: 'Tab 2')
    ];

    return Scaffold(
      appBar: AppBar(
        title: Text(widget.title),
      ),
      body: TabBarView(controller: controller, children: <Widget>[
        PageStorage(
            bucket: _bucket,
            child: ListView(
                key: const PageStorageKey<String>('pageOne'),
                controller: _controller1,
                children: <Widget>[
                  Column(children: <Widget>[
                    for (int i = 0; i < 208; i++) Text('Data $i'),
                  ])
                ])),
        PageStorage(
          bucket: _bucket,
          key: const PageStorageKey<String>('pageTwo'),
          child: ListView(controller: _controller2, children: <Widget>[
            Column(children: <Widget>[
              for (int i = 0; i < 208; i++) Text('Data $i'),
            ])
          ]),
        )
      ]),
      bottomNavigationBar: Material(
        color: Colors.deepOrange,
        child: TabBar(controller: controller, tabs: tabs),
      ),
    );
  }
}

I know that you can use a PageStorageKey. I'm not reporting a bug. The code works correctly according to the documentation.
What I'm saying is that the way it works is confusing and is likely to cause developers to spend unnecessary time debugging as they go from mobile development to desktop and web apps. I suggest that it should be considered whether keepScrollOffset should still work when using multiple different scroll controllers.

Oh I see, Thanks for the clarification will leave it open for further insights from the team.

/cc @Piinks

Hi @jonaird, I am not sure I understand what your feature request means. Can you provide sample code demonstrating the use case you mentioned?


https://github.com/users/JustSwapTeam/achievements/starstruck

https://github.com/users/JustSwapTeam/achievements/starstruck

Please submit the correct information, invalid information will cause the issue to close


AudioBuffer - discrepancy with types

from #116

As a side note, we have a discrepancy with types here, i.e. number_channel: usize and length: usize, which should both be u32 if we strictly follow the spec. Also this is inconsistent with other places of the code (e.g. ConcreteBaseAudioContext). [...]
Not sure what we should decide though: unsigned long is usize or u32? As they are generally used as indexes, maybe usize would make more sens somehow but I'm not really sure of all the implications of such choice. My only opinion here is that we should be very consistent and apply the same rule everywhere. Maybe creating and maintaining a map of the correspondances somewhere would be helpful? (also we may have a similar problem with &[f32] and Vec at some places)

There's three integer quantities we are dealing with:

channel (count and index)
input/output port of nodes (count and index)
buffer length (for offlineaudiocontext, audiobuffer, render quantum)

For all of these, usize seems most suitable from a Rust perspective. Typically that would be equivalent to a u64 on modern platforms, which is a bit excessive but not really an issue either.
For channels, we're using both u32 (in constructors mostly) and usize. This should be fixed.
For input/output port, we're using u32 quite consistently in the public interface.
For length, we use usize consistently.
I'm inclined to use usize for all three of them.
Consistency is most important to me.
I'm not too worried we're are using unsigned long long instead of unsigned long and have a small spec deviation.
Agree @b-ma ?

Yup agreed, sounds like the most simple and logical solution.
Just as a side note, it seems the spec use unsigned long long only for AudioWorklet::currentFrame (cf. https://webaudio.github.io/web-audio-api/#dom-audioworkletglobalscope-currentframe), in this case we should maybe use a real u64 to make sure to not fall into weird issues on 32 bit platforms (e.g. Raspberry Pi, etc.). Actually, I'm just realizing this value is not part of the AudioProcessor::process signature, maybe we should add it no?

Oof, good point. I will look into it, very important before v1 release


Add 2nd Python 3.10 patch

Checklist

[x] Used a personal fork of the feedstock to propose changes
[x] Bumped the build number (if the version is unchanged)
[ ] Reset the build number to 0 (if the version changed)
[ ] Re-rendered with the latest conda-smithy (Use the phrase @conda-forge-admin, please rerender in a comment in this PR for automated rerendering)
[ ] Ensured the license file is being packaged.

Addition to gh-9, which is an alternative to/resolves gh-8.

The patch can be removed once 0.32 is out.

Hi! This is the friendly automated conda-forge-linting service.
I just wanted to let you know that I linted all conda-recipes in your PR (recipe) and found it was in an excellent condition.

Thanks for catching and fixing this!


App crashes, when trying to connect to a device which is out of reach (pop up: Too far. Get closer to the ELOC)

@josephx86  Thanks for the update.
One information i just realized today actually:
I was under the impression that the ESP32 module is using the on board PCB antenna (for wifi and BT). But it turned out that the module we are using needs an external antenna. Or a zero ohm resistor has to be connected to the on board antenna. So basically there was no antenna connected. That's why we often had problem connecting to the ELOC. 2m distance gave us -85dB.
With a resistor in place. We get -60dB at 5m distance.
So your new code and the HW change should make it bullet proof :)
I will test your new code tomorrow or the day after and report back to you.

Works like a charm :)


Add a filter system to the reviews

Add a filter system to the review system so that a user can filter the reviews between "Good", "Average" and "Bad"

Added filter system.


upd building link

I know there are problems with my building but it gives users the latest YouTube ipa.

Hey! I’m sorry that I didn’t merge this but I’ll have to merge this in manually due to a conflict I’ve made. and sorry for not merging sooner!


Two different clients that have their own pools share the first client's pool

In the following program, client2 will share the client1's pool even though it has to have its own pool with 25 connections, due to keeping a reference to the client pool in source connection.
import ballerina/http;
import ballerina/log;
import ballerina/io;

listener http:Listener httpListener = new(9090);

@http:ServiceConfig { basePath: "/passthrough" }
service passthroughWithHttpClient on httpListener {

    @http:ResourceConfig { path: "/" }
    resource function passthrough(http:Caller outboundEP, http:Request clientRequest) returns error? {

        http:Client httpClient1 = new("http://localhost:8080", config = {connectionThrottling: {
        maxActiveStreamsPerConnection: 50 }});

        http:Client httpClient2 = new("http://localhost:8080",  config = {connectionThrottling: {
        maxActiveStreamsPerConnection: 25 }});

        var response1 = check httpClient1->forward("/nyseStock/stocks", clientRequest);
        _ = outboundEP->respond(response1);
        return ();
    }
}

Fixed in https://github.com/wso2/transport-http/pull/294


Fixes own hierarchy widget

renamed parameters: apikey $\rightarrow$ apiKey, backend_type $\rightarrow$ backendType
improved docs in storybook
added parameters ontologyId and entityType to parameter functions onNavigateToEntity and onNavigateToOntology to obtain this information

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

GitHub release
npm package (@latest dist-tag)

Your semantic-release bot :package::rocket:


New tool: bamCoverage from deeptools.

This PR is part of #467.
This wrapper includes almost all of the optional parameters available to the tool, but they're not currently being exposed to the larger workflows.  We should discuss which options are needed and/or any defaults to set.

@acoffman and/or @johnegarza Can you help Tom out and review this PR? It's an important next step in the ICTS WGS Assay for Dave Spencer.

(Rebased to resolve merge conflict.)


Do not call edpm_compute_repos

This make target is now a noop since the ansible service repo-setup is responsible for setting up repos for install_yamls environments.
edpm_compute_repos can be deleted once this stops calling it.
As a pull request owner and reviewers, I checked that:

[x] Appropriate testing is done and actually running
[x] Appropriate documentation exists and/or is up-to-date:

[x] README in the role
[x] Content of the docs/source is reflecting the changes

recheck
Tempest failure

/approve


A1DEV-12743 - Extracting T-Id & EntityType as first level columns

Changes included to:

Extract Tenant Id and Entity Type as first level columns in the landing zone table.
The values of above said columns will be extracted from RECORD_CONTENT and pushed as separate columns during ingestion.

As discussed, @ignore on full test classes will ignore all the tests. Ignoring the tests/test class cannot be a permanent fix. It has serious consequences on the quality of code coverage. We should try to resolve the failing tests
As discussed, the assertions for NaMe and other such fields looks a special scenario. Anybody who works on this next will find it hard to understand the reason for changing the case of variables. It impacts the maintainability of the code

Please plan to address these comments.

Below pointers are incorporated as part latest check-in:

All UTs are now getting executed after update, only few UTs are ignored as they are NULL content based checks and to extract T-id, EntityType and RowCreated the content cannot be NULL.
The TC related to "NaMe" is now corrected and tested.
All IT TCs are skipped as they need actual SF keys and creds to be checked-in.
Additional changes to add RowCreated as a first level column in landing table is added.
In a case, the invalid records were not being handled which is now fixed.


httpbin in Openshift can't started

Hi guys, i need help here..i deploy my httpbin container in my openshift environment..but it got crashloopback.i check in the log, it show something like this
[2021-09-23 04:46:11 +0000] [1] [INFO] Starting gunicorn 19.9.0
[2021-09-23 04:46:11 +0000] [1] [ERROR] Retrying in 1 second.
[2021-09-23 04:46:12 +0000] [1] [ERROR] Retrying in 1 second.
[2021-09-23 04:46:13 +0000] [1] [ERROR] Retrying in 1 second.
[2021-09-23 04:46:14 +0000] [1] [ERROR] Retrying in 1 second.
[2021-09-23 04:46:15 +0000] [1] [ERROR] Retrying in 1 second.
[2021-09-23 04:46:16 +0000] [1] [ERROR] Can't connect to ('<IP_ADDRESS>', 80)
what causing this issue? and how to solve it?
i use yaml file in this link
https://raw.githubusercontent.com/istio/istio/release-1.11/samples/httpbin/httpbin.yaml

just add the following to your deployment:
args: ["gunicorn", "-b", "<IP_ADDRESS>:8080", "httpbin:app", "-k", "gevent"]

or build your own docker image:
FROM kennethreitz/httpbin
CMD ["gunicorn", "-b", "<IP_ADDRESS>:80", "httpbin:app", "-k", "gevent"]

Assuming you don't want to go and build your own version of this, I think the command you need is:
oc adm policy add-scc-to-user anyuid system:serviceaccount:<namespace>:<sa_name>
# eg for "httpbin" SA in "httpbin" project
oc adm policy add-scc-to-user anyuid system:serviceaccount:httpbin:httpbin


Remove superfluous self. from lograge.rb

The lograge.rb uses already module_function. This makes the use of the def self. superfluous.

:ship:


resolve issue with yml parsing in some environments

a fix for the yml parsing error.

had some people test the change already, but if you want to see what the fix was here it is (@ngaya-ll).


error: could not compile ff when running cargo test on cw20-base contract

I cloned the repository and ran cargo test on cw20-base contract, however, I get
error: could not compile ff
It seems that ff is not updated to its latest version, but I am not sure which library requires it and which ff is set there to "0.10.1"

Hi, I just checked it and cannot reproduce - both cw20 and the whole workspace is passing tests with cargo test. It works also after removing Cargo.lock so it doesn't look like it is problem with any dependencies. Could you check cargo version you are using (cargo --version) so I can check if this way I would be able to reproduce it?

I installed it via rustup and I’m using the latest version which is 1.6.00 on m1 Mac
Thanks!

On 2 May 2022, at 0:28, Bartłomiej Kuras @.***> wrote:

Hi, I just checked it and cannot reproduce - both cw20 and the whole workspace is passing tests with cargo test. It works also after removing Cargo.lock so it doesn't look like it is problem with any dependencies. Could you check cargo version you are using (cargo --version) so I can check if this way I would be able to reproduce it?
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you authored the thread.

The dependency to ff="0.10.1" is transitive from cosmwams-crypto and if it should be updated it is there (in particular k256 package to be upgraded to a newer version), however, it seems not to be trivial as API changed slightly (minor changes, but I need to go through them). Also, I need to ensure that we can just update dependencies without breaking API. Will take a deeper look probably on Tuesday.
Anyway, it puzzles me why with the newest Rust, the compilation fails - it should be able to checkout the older version of ff (0.10.1 in this case) as it is not yanked. Do you mind pasting me your whole build log? I assume you test pure cw20 contract with no changes, right?

I ran cargo test from the root and now it passed fine. I will close this issue for now. Thanks @hashedone


Add documentation on Eligible to work in Canada and business numbers to the google drive

Eligible to work in canada documentation:  https://docs.google.com/document/d/1zyypuRjFDgb4UG9ZsGXhmRjoGgmJUaSasDpwbc6wHhw/edit?usp=sharing
Business number advice from Emilio:
https://docs.google.com/document/d/12NUPYlrnOU4dxjBEEW0MiqsCbNnmemJEB7oemBpTMiI/edit?usp=sharing


Bug: changing endpoint to self-hosted OWA does not work in UI

This works by closing the application, editing the Settings file manually, and restarting the application, so the other endpoints do appear to be supported.

Currently only two pre-defined urls are in the settings. What endpoints do you want to include? don't want to expose that to a text field and it will become just a wrapper of any website.

Unfortunately I can't say, since it's not a public website.
Sent from ProtonMail mobile
-------- Original Message --------
On Aug 11, 2020, 19:37, Howard J wrote:

Currently only two pre-defined urls are in the settings. What endpoints do you want to include? don't want to expose that to a text field and it will become just a wrapper of any website.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub, or unsubscribe.

yea, I reckon you might want to modify either the setting files in your disk or you change the code slightly and build your own version.
It's in this file
https://github.com/eNkru/freelook/blob/master/src/view/setting.html
Just add one more entry with your company server url
`

https://outlook.live.com/mail

https://outlook.office.com/mail

`


Implement Iron Bank images for all baseline images

Most IB images currently are either missing or the version is missing that we need. Additionally, some nearly all of the IB images are baselined off of UBI when they could easily run on a distroless IB baseline instead and cut the overall size significantly.

Migrated from https://repo1.dso.mil/platform-one/big-bang/apps/product-tools/zarf/-/issues/16

What opportunity is there to chunk something out that is easy to deliver on in the short term? Big Bang's OPA policies don't like the containers that make up the utility cluster and the k8s control plane. I can add DockerHub as an allowed host but that eliminates the value of the OPA policies (and the people I'm demoing to won't like seeing that)

Closing in favor of individual tickets that have a better chance of making it across the finish line.
/cc @runyontr @jeff-mccoy

#213
#214
#215

@Racer159 @eddiezane @jeff-mccoy are there any plans for the project to maintain a zarf init package w/IB images?

Likely not - if you'd like an IB init package we'd recommend: https://github.com/radiusmethod/zarf-init-bigbang or using that as a template.  The base init package is pretty flexible as is


feat(#656): RegionalFilter-can-take-classical-split-names-train/test/val

Current dependencies on/for this PR:

main

PR #660   👈

This stack of pull requests is managed by Graphite.


feedback:  getOffice365ActiveUserDetail api does not work in graph explorer

result is empty  (likely because it's returning  csv format)
AB#7476

@ElinorW @finsharp @thewahome can we push on getting this addressed.  Can you add more detail on what's causing the problem?

@ElinorW @finsharp @thewahome can we push on getting this addressed.  Can you add more detail on what's causing the problem?

This is related to #814

This is related to #814

Issue Reference:

https://www.chromestatus.com/feature/4614142321229824
https://github.com/github/fetch/issues/137#issuecomment-168261010


DOC: Unable to Pass HuggingFace Access Token via Huggingface TextGen Inference for large language model hosted in HuggingFace Inference Endpoint in protected mode.

Issue with current documentation:
Documentation Link: https://python.langchain.com/docs/modules/model_io/models/llms/integrations/huggingface_textgen_inference
Idea or request for content:
No response

I am facing the same issue here. I cannot figure out if the how to add an access token. It looks like we can only use with public endpoints

Any way to pass a token? Even though my HUGGING_FACE_HUB_TOKEN env var is setup, I keep getting  A valid user token is required.
🤔

I have the same issue

Have the same issue.
As an alternative I came across using HuggingFaceEndpoint -> https://github.com/langchain-ai/langchain/blob/master/libs/langchain/langchain/llms/huggingface_endpoint.py
This works for me since you can pass your key. The issue, however, is that I couldn't figure out yet, how to specify model parameters, e.g. such as max_new_tokens etc.
Just using the standard parameters is not an option either ...

A workaround is to set the authorization header in your own code.
Assume llm is your instance of HuggingFaceTextGenInference, then you can do in your code:
token = os.environ.get("TEXT_GENERATION_INFERENCE_TOKEN", None)
llm.client.headers = {"Authorization": f"Bearer {token}"}

If you have the HuggingFaceTextGenInference inside an agent or chain, a somewhat hacky solution is to:
set_text_generation_inference_token(chain)

When you define:
def find_instances(obj, cls):
    """Find all instances of a class in an object."""
    instances = []
    if isinstance(obj, cls):
        instances.append(obj)
    if isinstance(obj, list):
        for item in obj:
            instances.extend(find_instances(item, cls))
    elif hasattr(obj, "__dict__"):
        for prop in vars(obj).values():
            instances.extend(find_instances(prop, cls))
    return instances

def set_text_generation_inference_token(chain: Chain):
    """Set the token for all HuggingFaceTextGenInference instances in the chain."""
    token = os.environ.get("TEXT_GENERATION_INFERENCE_TOKEN", None)
    if not token:
        return
    all_huggingface_instances = find_instances(chain, HuggingFaceTextGenInference)
    for instance in all_huggingface_instances:
        instance.client.headers = {"Authorization": f"Bearer {token}"}

Try
os.environ["HUGGING_FACE_HUB_TOKEN"] = "...token..."

via https://huggingface.co/docs/huggingface_hub/package_reference/environment_variables


Potential SF6 Compat Issue - JWTManager::addUserIdentityToPayload() by default requires a username property or getUsername method

With the default bundle configuration, JWTManager::addUserIdentityToPayload() adds the user identity to the JWT payload by using a property accessor to fetch the configured userIdentityField from the User object, which defaults to "username".  With UserInterface::getUsername() going away in Symfony 6, this default configuration looks like it could start to cause problems in one of two ways:

This bundle will require each UserInterface implementation to have either a $username property or a getUsername() method with the out-of-the-box configuration
Changing the $userIdentityField property to "userIdentifier" to match the updated UserInterface (since the implementation details of the property accessor say it will try to use a getter for that field name) by default also changes the name of the user ID claim in the JWT payload, unless you also configure the user_id_claim config node which cascades down to the $userIdClaim property; IMO these types of changes to the defaults in the bundle would be a B/C break so couldn't really be considered before a 3.0 release (but, bundle users can make updates through the bundle config)

Personally, I'd say to deprecate the user_identity_field bundle config and the userIdentityField property in the manager and just use the UserInterface by default, and if someone needs to use something that isn't the result of getUsername() or getUserIdentifier(), they can subclass the manager and override the addUserIdentityToPayload() method, but I also realize #40 added this for a specific reason so maybe that isn't the greatest of solutions.

Thanks for the issue. You're right here.
We probably need to change the default identity field to user_identifier instead of username.
I'll take care of this.

Thanks for the issue. You're right here.
We probably need to change the default identity field to user_identifier instead of username.
I'll take care of this.

@chalasr Exactly as you write. It is a simple and very important thing. When can we count on a correction?

Thanks for the ping @malkavi6, I totally forgot about this. I'm going to look at it in the coming days

Bump. I need to be able to replace the username with another user property.

same issue here, is there a way to configure what field is used?

maybe there should just be check like;
if (method_exists($user, 'getUserIdentifier')

and not rely on hard coded userIdentityField

This is what I'm using right now, we haven't moved up to Symfony 6 yet but from what I remember this shouldn't cause any issues:
lexik_jwt_authentication:
    user_identity_field: 'email' # Any of the properties/getters in the user object
    user_id_claim: 'username' # The fieldname used in the JWT payload for the user identity

I will look into this asap, hopefully next week.

I agree that config option is not needed.
I'm going to deprecate both the user_identity_field config option and the set/getUserIdentityField() methods to just rely on Symfony UserInterface::getUserIdentifier() instead. Please tell me if you see any cons.

Perfect, that's what I meant.

Hello.
Any commit yet for this ? I'm still having this error.
Meanwhile i do use user_identity_field in config.

See #1037

Should the docs be updated to reflect this change? I was looking at setting up the bundle, realized it assumed a username field, and then went hunting for how to instead use something like email. I found this issue after a while, and it looks like the linked PR switches to using getUserIdentifier which, if I understand, means there's not really any config needed to handle the identifying field/key? If so, the Configuration Reference doc still contains the user_identity_field config. I also cannot find any reference in the docs on the 2.1x branch explaining that users of the bundle can rely on their UserProvider's UserInterface:getUserIdentifier() method.
I'd be willing to pr removing user_identity_field from the configuration reference, but not sure where to add some language for getUserIdentifier. Do you have a good spot in mind, chalasr?
Thanks for adding this change though 👌

@Aweptimum I think a small comment around  the user_id_claim in the config reference (yaml) would do the job. It should explain that the default value of that claim will equal the return value of UserInterface::getUserIdentifier() by default or, in case that method is not implemented, the value of the corresponding property (e.g. if user_id_claim is set to some_id, the bundle will try to fill it with the value of $user::$someId via a public accessor).
Note that I would welcome a PR that just removes the user_identity_field from the config reference so if phrasing what I said above feels too complicated, don't worry about it. Thanks!


FIX: catch 401 and 403 status and return proper error message

Description
This PR fixes the unclear 401 unauthorized exception by catching Json parsing exception.
Issues Resolved
Closes #494
By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
For more information on following Developer Certificate of Origin and signing off your commits, please check here.

@chenqi0805 It shows that you don't have a local 2.x branch. You can either checkout a 2.x branch on your local or use the branch from origin. Example:
git fetch
git worktree add ../.worktrees/backport-2.x upstream/2.x

Thanks @VachaShah , @chenqi0805 if you still have difficulties, I could do backport for you, thank you


feat: subscriptions, hooks draft

Checklist

[ ] run make test
[ ] PR title must follow conventional-commit-standard
[ ] tests and/or benchmarks are included
[ ] documentation is changed or added
[ ] commit message and code follows the Code of conduct

I think you're running into solving the issue too early. You should start with the design of the user facing API and propose how origins (introspect.graphql) can be connected to the connectionInit hook instead of going into the internal solution (protobuf) already.

I think you're running into solving the issue too early. You should start with the design of the user facing API and propose how origins (introspect.graphql) can be connected to the connectionInit hook instead of going into the internal solution (protobuf) already.

Yes, but for me, it was an opportunity to become more familiar with an SDK / configuration. Making changes will be faster now, than doing it for the first time.

field name: id

@YuriBuerov please review, then we can merge it.