Access to only allowed packagesfrom npmjs (+ dependencies)

My reason:
Greetings! Is there any way to allow the only packages via verdaccio?
I need to provide only some packages for team development (e.g. react, redux etc) due to security reasons. The developers are isolated from Intenet, so we need a caching proxy for npmjs with only allowed packages.
We use nexus to get to npmjs. So the uplink is npm-nexus.
The rule for packages is:
packages:
  '**':
    access: admin
    publish: admin
    proxy: npm-nexus

It means that only admin can download packages. For example, a team needs new package to work with. Admin downloads that package and it caches.
 We need to add each dependency into packages package, what is ovewhelming.
The other way is to cache all needed packages under admin user and then allow all packages public accsess, but remove proxy. But this is unnecessary modyifing config file every time we need to add new package to cache.
Any solution for this? May be there is another npm package for this or some kind of plugin?

I need to provide only some packages for team development (e.g. react, redux etc) due to security reasons.

Well,  I understand your issue, but, I do not have any possible solution in mind. This clearly sounds like customized workflow.

But, the problem is when non-authorized users try to npm install react they get a message:
unregistered users are not allowed to access package fbjs : fbjs

Verdaccio is not aware of dependencies, npm/yarn handle that part. We do not collect relationships between packages. Just fetch, storage and handle restrictions for single packages.

The other way is to cache all needed packages under admin user and then allow all packages public access, but remove the proxy. But this is unnecessary modifying config file every time we need to add new package to cache.

Yeah, it's annoying. But that's the reason why we allow plugins, for such edge case scenarios.
I'll close this ticket since is not a bug or feature, it's just a question, I'll label it and let's see whether someone else can help you.


IMDB search

Shouldn't be too tough. Already have output in URLDetect stuff

I think the lookup stuff broke on this, but no demand


MINOR: Move KafkaYammerMetrics to server-common

With major server components like the new quorum controller
being moved outside of the core module, it is useful to
have shared dependencies moved into server-common. An example
of this is Yammer metrics which server components still rely
heavily upon. All server components should have access to the
default registry used by the broker so that new metrics can
be registered and metric naming conventions should be
standardized. This is particularly important in KRaft where
we are attempting to recreate identically named metrics
in the controller context.
This patch takes a step in this direction. It moves
KafkaYammerMetrics into server-common and it implements
standard metric naming utilities there. It does not yet replace
the similarly named utilities in KafkaMetricsGroup because
of its reliance on the implicit tag ordering of scala Map types.
In a follow-up patch, we can replace these implicit metrics
with explicitly ordered maps and ensure that tests cover them.
Once this is done, we can replace the utilities in
KafkaMetricsGroup with their analogues in KafakYammerMetrics.
Committer Checklist (excluded from commit message)

[ ] Verify design and implementation
[ ] Verify test coverage and CI build status
[ ] Verify documentation (including upgrade notes)

In a follow-up patch, we can replace these implicit metrics with explicitly ordered maps and ensure that tests cover them.

This makes me a little nervous. Don't get me wrong, using ordered maps is the right thing to do here. We should have done this since the beginning. However, if we migrate to using ordered maps, we should ensure that existing metrics are not broken as the mbeans names depend on the ordering of the map. I guess that this is what you suggest to add tests for them, right?

@dajac Yeah, exactly. That is why I did not want to touch the old functions here. To be honest, we might never get rid of them since there's not a ton of incentive to do so. Nevertheless, I think it's helpful to have these new functions in server-common with explicit ordering. It will help with KRaft in particular where we need to redefine metrics so that the mbeans have the same name. In general, I think we're moving toward a more modular structure, so there will probably be other use cases as well.


No links to original mods

There should be links to the original authors of each mod.

yes.
cringe thief.

There should be links to the original authors of each mod.

I'm agreed, but sadly the source of most of them are a real mystery
We don't made mods, we only gather them in same place and keep them updated

yes. cringe thief.

Try to don't insult people thanks you, ask to every people randomly sending mods on the yuzu discord and reddit to send source then, we are unfortunately not diviners
I'll try to investigate on source of them to place URL and owner names but i think the owner themselves will have to come here to ask for credits

OK this is acknoledge very easily by me who made the initial groups, i took from every patch that existed and many were just zip files on discord, the thing is many people shared things and it's nearly untracable so yeah there are some things which i could find the potential authors but not much
I personally only created the 540p docked and that's all
I also converted the amiibo cheat code to an exefs mod, but it's unsure about that, i did it at like 3am, i was tired and my Brian wasn't able to memorize anymore
I think the best way to resolve this problem is to do global credits aka :
Thanks to all modders on GBATemp, Yuzu, Ryujinx and private discords for making theses mods

I'll provide what I know about the sources of these mods. Hope it helps a little.
20/30/60 FPS mod is from somerandompeople on gbatemp.net https://gbatemp.net/download/loz-tears-of-the-kingdom-20fps-30fps-60fps-patch.37996/
dynamic fps mod is from ChucksFeedAndSeed from Reddit https://www.reddit.com/user/ChucksFeedAndSeed/
cutscene fix mod is from theboy181 (not very sure)

ChucksFeedAndSeed, patchanon and somerandompeople works together, i credited them together on the README

Linking to original creators when necessary is good but I just wanted to say I really appreciate this collecting of them since some are hard to find. Good job!

We've linked as many as we can, but we will not be linking to places associated with piracy ever.


[Feature Request] Installation with conda package manager

Hi,
I'm using  conda as my environment and package manager. And it is not recommended to install packages with pip. Plus it is harder to maintain the environment when using conda and pip.
I was wondering if there are any plans on releasing hishel on one of the conda's channels like conda-forge?

Love this idea!
I just submitted the recipe here: (https://github.com/conda-forge/staged-recipes/pull/24887). I'll see if I can get it through. I'm trying to do the same for a downstream of hishel so I'll keep an eye on it.
@karpetrosyan, can you please comment on the conda-forge PR just to confirm that you are a maintainer?
Thanks!
Parker

Hishel has been merged into conda-forge channel 🎉🎉🎉 https://github.com/conda-forge/staged-recipes/pull/24887#event-12313327807
Closing as completed.


fix: Backlog/move pyside2 specific flag

Move PySide2 specific HighDPI options

This moves PySide2 specific HighDPI options into a PySide2
specific codepath. This will get rid of Deprecation warnings
within the PySide6 codepath. These options are not exposed
anymore in PySide6 as they are enabled by default and not
intended for turning them off.

Resolves :

CLICKUP-
FT-0d89065a-8218-4b68-98e3-2278789550ca
SENTRY-
ZENDESK-

[ ] I have added automatic tests where applicable.
[ ] The PR contains a description of what has been changed.
[ ] The description contains manual test instructions.
[ ] The PR contains update to the release notes.
[ ] The PR contains update to the documentation.

This PR has been tested on :

[x] Windows.
[ ] MacOs.
[ ] Linux.

@lluisFtrack this should probably be tested with some legacy plugins that might still make use of PySide2.


Drop4 release

Merging changes for drop4

Closing as new drop4 branch is created after merging dynamic header stack elimination and fix for verify statement


[WIP] Cardano signing

Description
Add Cardano transaction signing and protobuf definitions.
Closes #745 .
Testing instructions
See Cardano unit tests.
Types of changes

New feature (non-breaking change which adds functionality)

Checklist

[x] Prefix PR title with [WIP] if necessary.
[x] Add tests to cover changes as needed.
[ ] Add C-interface impl and tests
[ ] Add swift and kotlin tests
[ ] Update documentation as needed.

/azp run


Not the entire url bar is "clickable" to edit[BUG]

Describe the bug
Not the entire url bar is actually responding to clicks. The text seems to cut of at around the 3/4 mark and beyond that clicking on the url bar doesn't allow for editing the url. And the first 1/4 has the same issue (see screenshot)
To Reproduce
Steps to reproduce the behavior:

open firefox
go to any website
click anywhere on url bar where there is no text

Expected behavior
Clicking anywhere in the url bar that is not a button with a specific function (eg. 3dot menu or favorites button) to start editing the url.
Screenshots

Desktop (please complete the following information):

OS: Windows 10
Firefox version 88.0.1
WhiteSur theme v1.1.4

I've added an option on the install to centre the text like safari, and to have the ability to click anywhere on the URL bar


Add an endpoint to retrieve list of organisations

In order to filter by organisation, we need to retrieve a list of organisations, along with
their ids, to populate a drop-down.

:+1:

 (1) Index page - Filter by organisation


Test/loading

Hey thank you for this app, this is awesome, I'm using it as kind of a template for an app of my own.
I was wondering if you intended to make some test for it?
Also I realized something is that firebase is supposed to work offline too but in your current implementation it doesn't, and for the user experience it'd be awesome to have that.
I don't know if it's currently possible with the current state of flutter but for example your loading all data in the loading state Everytime and I think that the data already on the device should be already displayed even during the loading state.
To be honest I did try to do just that but couldn't make it work so I was wondering if you had any idea or if you also intended to implement it latter?
Ok really nice work so far

Hi @NeoDigi !
About tests:

The MVI architecture extract the logic into models which are highly testable since they are pure dart without any Flutter related stuff, and you can easily mock services to test behaviour
I didn't try to write any UI test so I can't help you with that

About offline firestore: Yes offline doesn't seem to work right now, maybe an issue with firestore client? To be honest it wasn't really important for my app as it would still depend on network for beer list fetch so I didn't try very hard. Let me know if you make some progress on that point.
Thank you again for your nice words, appreciate it :)


IE8+ rollup

Modify Rework Pure for IE8+ only & include pure-u-0 rollup from previous outstanding PR

I guess the pull request I just made conflicts with yours: https://github.com/yahoo/rework-pure-grids/pull/15
Did I miss something when adding the .pure-u-XY-0 solution? Because your solution seems more complex?

The rollup I've done includes #10 as it was outstanding & I needed to get a working state solution for code already out in the wild.

@absalomedia GitHub showed me this diff which was hard to decipher... I'll cancel my PR

@absalomedia I think the confusion in the diff is that its harder to understand what changed, it looks like the whole file was replaced, so its hard to review line by line. For example, just going to the "Files Changed" tab doesn't show the diff, I have to expand it and then it looks like a new file.

@absalomedia @redonkulus I'm seeing the same thing.

Should I close this & start the commits again?  The whole file being changed may be related to encoding/spacing across different platforms I use to commit

@absalomedia I think that would help with the code review. Thanks!

Should I close this & start the commits again? The whole file being changed may be related to encoding/spacing across different platforms I use to commit

@redonkulus time to commit .editorconfig?
$ [git:master] cat .editorconfig
root = true

[*]
indent_style = space
indent_size = 4
end_of_line = lf
charset = utf-8
trim_trailing_whitespace = true
insert_final_newline = true


Train models on minor categories

Categories have now been finalised, train models on minor categories

will require writing some code to clean the data and move categories around first - probably best to export the data once cleaned to avoid doing this every time

Step two is to update the API for these minor_categories

Next step is to finetune the BERT pipeline for the minor_categories, particularly around predicting and generating the automatic Excel files.


Is it possible to set multiple pre-selected dates in PrimeCalendar?

Hello again Amin,
I wanna know if it possible to set multiple pre-selected dates in PrimeCalendar or not. (this is my code which I try to do this)
List<PrimeCalendar> calendarList = new ArrayList<>();
if (taskList.size() > 0){
for (int i = 0; i < taskList.size(); i++){
int year = Integer.parseInt(taskList.get(i).getDate().substring(0, 4));
int month = Integer.parseInt(taskList.get(i).getDate().replaceAll("-", "/").substring(5, 7));
int day = Integer.parseInt(taskList.get(i).getDate().replaceAll("-", "/").substring(8, 10));
PrimeCalendar primeCalendar = new CivilCalendar();
primeCalendar.setDate(day);
month = month - 1;
primeCalendar.setMonth(month);
primeCalendar.setYear(year);
calendarList.add(primeCalendar);
}
}
binding.calendarCalendarFragment.setPickedMultipleDaysList(calendarList);

could you please help me with this if it's possible?
thank you

Hi Parsa,
Sorry for the delay.
Yes, there is no problem to set a list of days as pre-selected. The point is that you should set it before showing the fragment.
Unfortunately, I can't infer what was the problem with it in your code. (because of accessing via binding)
Please share more related code.
Thanks.

Problem Solved, Thanks.


Using without slideSwitcherView.

I do not have multiple content view controllers.
For this reason, is there any way to use this library without using slideSwitcherView.
The top is a view and the bottom is a tableView.
Thanks!

Thanks for feedback!
Sorry for that, SlideSwitcherView is coupled with SegementSlide currently.
However, there is a plan to pull the subcomponents(SegementSlideSwitcherView, SegementSlideContentView) of SegementSlide out of the way and provide them as delegate.

@lm2343635
    override var switcherHeight: CGFloat {
        return 0
    }

Maybe this can help you.

@HParis Thank you, It seems resolved, I will close this issues.


pull request for e2e test at 01/17/2017 23:45:10

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


Could Integration with sponsorblock be added?

[  ] Bug report
[X] Feature request (request for a new functionality)
[  ] Question
[  ] Other

Feature request (request for a new functionality)

[X] I've verified and i assure that my requested feature is NOT in the TODO list

What operating system do you use ?
Win10, Arch

Integration with sponsorblock would allow undesirable portions of videos to be cut out of the download, such that sponsor or plug the merch segments could be omitted from the download, and for music videos, the "non-music" section could be omitted from the download.
I haven't worked with APIs before, so this might not be possible, but would be absolutely amazing to have. I'm pretty familiar with python, so I might be able to implement this myself, but don't know if it would be possible, or even wanted.

It is absolutely not possible using youtube-dl.


fix: remove important and breadcrumb styles

Description
This PR remove some of the style overrides that interfere with SPAR.
I suggest that we keep component-override.scss's changes to a minimal, for extra styles devs should add them to their own project's custom style sheet.
We should also avoid using !important when possible as it is impossible to override it with another style.
Summary of changes

Remove !important for --btn styles, the problem:

Before

After

Remove breadcrumb styles as it is not applicable to every project

Thanks for reviewing @mamartinezmejia, Spar uses the progress component as well so I think it's better to add additional styles to your own style sheet. Do we have a design file made for the FSA that includes specification for progress bar? @MCatherine1994

No problem @craigyu. The changes will be applicable for all FSA themes as it will comply with the Figma file. Those won't be custom styles.

No problem @craigyu. The changes will be applicable for all FSA themes as it will comply with the Figma file. Those won't be custom styles.

Gotcha


BugID:32178403:add haas100 game demo

add SDL2 library;
add lcd driver;
add game demo code;

Signed-off-by: luokui.lk<EMAIL_ADDRESS>Is your feature request related to a problem? Please describe.
Describe the solution you'd like
Additional context

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.luokui.lk seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.You have signed the CLA already but the status is still pending? Let us recheck it.


Create custom 502 and 504 pages

This PR works towards addressing #853, creating basic 502 and 504 pages for nginx to serve in case NewCantus has a bad day.
This PR doesn't include any of the necessary configuration to make nginx actually serve the pages - it only creates the pages. I'm hoping @kqct can help me with the configuration at some point soon.
@kqct, will it work to have a few files beyond plain .html files - style.css, background.jpg, favicon.ico, and so on, or do we need to do this just with html?
This is what the pages look like in Chrome:

Are we happy with the error messages?

Is the reason we cant include {% extends "base.html" %} or {% block content %} like in the other error pages because of the nature of the error (bad server response) which wouldn't be a problem in 403/404 errors?

This is meant to be a page returned by Nginx, not by django - it's a last-resort page that nginx returns when django doesn't respond fast enough.

I pushed a couple of commits configuring this to automatically be set up upon running docker-compose build and docker-compose up -d.
@kqct: can you please look this over as soon as you can to make sure we've not done anything silly? Awaiting your approval before we merge.


[DROOLS-1031] prevent to remove a parent rule during incremental compilation if one of its children is still present

+1


Update translation source file for v27.0 string freeze

This PR updates the src/qt/locale/bitcoin_en.xlf translation source file according to the Release schedule for 27.0.
Note for reviewers: it is expected to get a zero diff after running make -C src translate locally.

Friendly ping @jarolrod @johnny9 @pablomartin4btc :)

I'm a little late but, in order to collaborate with this in the future what exactly should I be diffing ? between what branches/ files ? Thanks

@hernanmarino check this guide (there's an ongoing small correction) and see this PR was done on the core repo recently as an example.

@hernanmarino check this guide (there's an ongoing small correction) and see this PR was done on the core repo recently as an example.

I read the guide (and your PR) and it doesn´t mention what branches/commits/files to diff
I performed a diff on th PR branch after the make instructions and master and found several differences but I am obviously doing something wrong ...

I think you don't need to run the python script cos that core PR I mentioned above was already merged on this gui repo before this PR and since this PR is now merged too, you would need to perform just the make command on master before this PR.

@hernanmarino

I'm a little late but, in order to collaborate with this in the future what exactly should I be diffing ? between what branches/ files ? Thanks

Thank you for your interest!
Here are all steps to verify this PR (and similar ones in the future):
git fetch origin pull/793/head
git checkout FETCH_HEAD
make -C depends -j $(nproc)
./autogen.sh
./configure CONFIG_SITE=$PWD/depends/x86_64-pc-linux-gnu/share/config.site  # Use the corresponding path if building on macOS
make -C src translate
git diff  # must have an empty output


Getting CERTIFICATE_VERIFY_FAILED when sending requests to port-forwarded GRPC service

Bug Description
I currently have one GRPC endpoint deployed in my cluster, it has 4 methods. When I port-forward the service to local and use grpcurl to send request to it, I am getting the error
upstream connect error or disconnect/reset before headers. reset reason: connection failure, transport failure reason: TLS error: 268435581:SSL routines:OPENSSL_internal:CERTIFICATE_VERIFY_FAILED

And strangely, it only happens to two of my methods, the other two are working fine.
Tried to restart the GRPC service and istio related pods, still got the same issue.
Also in another of my cluster, I can actually send request to all the four methods. Those two clusters have identical configuration.
The information I can provide is not comprehensive enough here, please let me know how can I provide more information.
Version
istioctl version
client version: 1.12.1
control plane version: 1.12.1
data plane version: 1.12.1 (14 proxies)

helm version --short
v3.7.2+g663a896

kubectl version --short
Client Version: v1.21.5
Server Version: v1.21.2-eks-06eac09

### Additional Information

_No response_

### Affected product area

- [ ] Docs
- [ ] Installation
- [X] Networking
- [ ] Performance and Scalability
- [ ] Extensions and Telemetry
- [ ] Security
- [ ] Test and Release
- [ ] User Experience
- [ ] Developer Infrastructure
- [ ] Upgrade
- [ ] Multi Cluster
- [ ] Virtual Machine
- [ ] Control Plane Revisions

### Is this the right place to submit this?

- [X] This is not a security vulnerability
- [X] This is not a question about how to use Istio

Did you enabled strict mTLS? How did you performed grpcCurl? Could you paste your command here? Also can you collect access log from the service sidecar for the requests that works? https://istio.io/latest/docs/tasks/observability/logs/access-log/

Did you enabled strict mTLS?

Nope, the mTLS configuration is the default one so it should accept both plaintext and encrypted ones.

How did you performed grpcCurl

grpcurl -plaintext -v localhost:9000 my.method.name

Also can you collect access log from the service sidecar for the requests that works?

Yet another strange thing happened, I tried following the document but I can not see any access log from the sidecar. I even applied the two manifests in the doc but still got nothing. Following is the full log I got. Thanks
╭─ ~ ··················································································································································································································································· х INT at 17:26:51 ─╮
╰─❯ k apply -f https://raw.githubusercontent.com/istio/istio/release-1.12/samples/sleep/sleep.yaml                                                                                ─╯
serviceaccount/sleep unchanged
service/sleep unchanged
deployment.apps/sleep unchanged

╭─ ~ ················································································································································································································································· took 3s at 17:27:12 ─╮
╰─❯ k apply -f https://raw.githubusercontent.com/istio/istio/release-1.12/samples/httpbin/httpbin.yaml                                                                                ─╯
serviceaccount/httpbin unchanged
service/httpbin unchanged
deployment.apps/httpbin unchanged

╭─ ~ ························································································································································································································································· at 17:27:20 ─╮
╰─❯ cd ~/Desktop                                                                                ─╯

╭─ ~/Desktop ················································································································································································································································· at 17:27:38 ─╮
╰─❯ cat telemetry.yaml                                                                                ─╯
apiVersion: telemetry.istio.io/v1alpha1
kind: Telemetry
metadata:
  name: mesh-default
spec:
  accessLogging:
  - {}

╭─ ~/Desktop ················································································································································································································································· at 17:27:42 ─╮
╰─❯ k apply -f telemetry.yaml -n istio-system                                                                                ─╯
telemetry.telemetry.istio.io/mesh-default configured

╭─ ~/Desktop ················································································································································································································································· at 17:27:53 ─╮
╰─❯ kubectl exec "$SOURCE_POD" -c sleep -- curl -sS -v httpbin:8000/status/418                                                                                ─╯
*   Trying <IP_ADDRESS>:8000...
* Connected to httpbin (<IP_ADDRESS>) port 8000 (#0)
> GET /status/418 HTTP/1.1
> Host: httpbin:8000
> User-Agent: curl/7.81.0-DEV
> Accept: */*
>
* Mark bundle as not supporting multiuse
< HTTP/1.1 418 Unknown
< server: envoy
< date: Mon, 24 Jan 2022 09:28:16 GMT
< x-more-info: http://tools.ietf.org/html/rfc2324
< access-control-allow-origin: *
< access-control-allow-credentials: true
< content-length: 135
< x-envoy-upstream-service-time: 1
<
{ [135 bytes d
    -=[ teapot ]=-

       _...._
     .'  _ _ `.
    | ."` ^ `". _,
    \_;`"---"`|//
      |       ;/
      \_     _/
        `"""`
ata]
* Connection #0 to host httpbin left intact

╭─ ~/Desktop ················································································································································································································································· at 17:28:16 ─╮
╰─❯ kubectl logs -l app=sleep -c istio-proxy                                                                                ─╯
2022-01-24T09:23:52.597021Z	info	ads	XDS: Incremental Pushing:0 ConnectedEndpoints:2 Version:
2022-01-24T09:23:52.597065Z	info	cache	returned workload trust anchor from cache	ttl=23h59m59.402937788s
2022-01-24T09:23:52.597082Z	info	cache	returned workload trust anchor from cache	ttl=23h59m59.402920172s
2022-01-24T09:23:52.597156Z	info	cache	returned workload certificate from cache	ttl=23h59m59.40285223s
2022-01-24T09:23:52.597369Z	info	ads	SDS: PUSH request for node:sleep-557747455f-tn44s.dashbase resources:1 size:1.1kB resource:ROOTCA
2022-01-24T09:23:52.597420Z	info	cache	returned workload trust anchor from cache	ttl=23h59m59.402581978s
2022-01-24T09:23:52.597434Z	info	ads	SDS: PUSH request for node:sleep-557747455f-tn44s.dashbase resources:1 size:4.0kB resource:default
2022-01-24T09:23:52.597450Z	info	ads	SDS: PUSH for node:sleep-557747455f-tn44s.dashbase resources:1 size:1.1kB resource:ROOTCA
2022-01-24T09:23:54.168295Z	info	Readiness succeeded in 1.762444287s
2022-01-24T09:23:54.168602Z	info	Envoy proxy is ready

╭─ ~/Desktop ················································································································································································································································· at 17:28:36 ─╮
╰─❯ kubectl logs -l app=httpbin -c istio-proxy                                                                                ─╯
2022-01-24T09:24:13.897585Z	info	ads	XDS: Incremental Pushing:0 ConnectedEndpoints:2 Version:
2022-01-24T09:24:13.897639Z	info	cache	returned workload trust anchor from cache	ttl=23h59m59.102368473s
2022-01-24T09:24:13.897668Z	info	cache	returned workload trust anchor from cache	ttl=23h59m59.102333554s
2022-01-24T09:24:13.897765Z	info	cache	returned workload certificate from cache	ttl=23h59m59.102243457s
2022-01-24T09:24:13.897971Z	info	ads	SDS: PUSH request for node:httpbin-74fb669cc6-bkvps.dashbase resources:1 size:1.1kB resource:ROOTCA
2022-01-24T09:24:13.898025Z	info	cache	returned workload trust anchor from cache	ttl=23h59m59.101977144s
2022-01-24T09:24:13.898049Z	info	ads	SDS: PUSH request for node:httpbin-74fb669cc6-bkvps.dashbase resources:1 size:4.0kB resource:default
2022-01-24T09:24:13.898054Z	info	ads	SDS: PUSH for node:httpbin-74fb669cc6-bkvps.dashbase resources:1 size:1.1kB resource:ROOTCA
2022-01-24T09:24:15.697932Z	info	Readiness succeeded in 1.991828624s
2022-01-24T09:24:15.698207Z	info	Envoy proxy is ready

That is actually a doc issue that will be fixed by https://github.com/istio/istio.io/pull/10830.
But anyway in your case, curl with localhost should not even be captured by istio traffic redirection and istio proxy won't be in the request path. Are you sure your app is the same in both clusters?

Thanks for fixing the doc issue, that helps a lot!
By checking the accessing log, I can see it is one of my upstream service's istio sidecar is having some issues on getting ca
2022-01-25T14:41:56.203426Z	info	ads	ADS: new connection for node:{my-node-name}
2022-01-25T14:41:56.472152Z	warn	ca	ca request failed, starting attempt 1 in 93.73751ms
2022-01-25T14:41:56.566428Z	warn	ca	ca request failed, starting attempt 2 in 198.690096ms
2022-01-25T14:41:56.765812Z	warn	ca	ca request failed, starting attempt 3 in 370.050159ms
2022-01-25T14:41:57.136300Z	warn	ca	ca request failed, starting attempt 4 in 789.473245ms
2022-01-25T14:41:57.926819Z	info	ads	ADS: "@" {my-node-name} terminated rpc error: code = Canceled desc = context canceled
2022-01-25T14:41:57.926957Z	warning	envoy config	StreamSecrets gRPC config stream closed: 2, failed to generate secret for default: failed to generate workload certificate: create certificate: rpc error: code = Unavailable desc = connection error: desc = "transport: authentication handshake failed: x509: certificate signed by unknown authority (possibly because of \"crypto/rsa: verification error\" while trying to verify candidate authority certificate \"cluster.local\")"

By restarting the pod I got the issue fixed. But I afraid this is still one bug on the enovy / istio side?
Thanks again.

Did you performed some operation to replace the root cert? Or delete and reinstalled Istio? Looks like the root cert was replaced, and that will require proxy restart. FWIW some work has been done at master to automate root cert replacement at sidecar: https://github.com/istio/istio/issues/36723

i afraid that is the case, i may have re-installed the istio. thanks for your help. closing the issue now.


Need to implement restrictions when using Drop Highest / Drop Lowest / Keep Highest

In GBNG, there are currently no restrictions in place re: point values when using Drop Highest / Drop Lowest / Keep Highest.
This means that, currently, you can have items with different total point values being used for these drop/keep calculations. This can therefore lead to incorrect scores being kept/dropped, as the drop/keep rules look to the score received, not the score's percentage. Therefore, with drop lowest, a score of 40/50 will be dropped before a score of 50/200.
To remedy this, we should add limitations in GBNG, similar to those which exist in GB1. These include:
Settings
There should be a restriction in Settings, preventing users from using drop highest / drop lowest / keep highest in a category that has items with multiple, different point totals in place. The field for a given category should just be greyed out, with alt text explaining that "This category contains items with different point totals. To use [x], all items must have the same point total."
Add Gradebook Item Lightbox
When adding a GB item, if a category with drop highest / drop lowest / keep highest is selected and a point total different than the established point totals for the category has been entered into the "Points" field, provide a confirmation dialog upon clicking "Create" that warns the user that the established point total will be applied to this item.
Edit Gradebook Item Lightbox
The points field should be greyed out. If a different category is selected, the field can become editable.

Discussed 10 JUN 2016.
When adding a new item, if the category chosen has the drop highest / drop lowest / keep highest settings, just validate on save. Present the message that the points must match existing items that have X score (need to pull this from the assignments in the category and get the highest point value).
When editing, rely on the validation above, don't bother greying out the points just yet.

Done. I didn't add the alt text to the settings page as its already in the instructions :)

Hi @steveswinsburg ,
I'm unable to confirm these updates, as I'm getting an error when trying to set up categories & weighting in trunk-mysql - maybe these are related? Created a separate issue for this: #2935.

A couple of additional restrictions for feature parity with GB1 in Sakai 10/11, as noted by Molly Kelsey (Notre Dame):
Combinations of Drop Highest / Drop Lowest / Keep Highest:

If Drop Highest & Keep Highest are implemented at the same time, they must be mutually exclusive. For a given category, only one of these setting can have a non-0 value. Replacing a value with 0 will allow for the other setting to be changed to a non-0 value.
If Drop Lowest & Keep Highest are implemented at the same time, they must be mutually exclusive. For a given category, only one of these setting can have a non-0 value. Replacing a value with 0 will allow for the other setting to be changed to a non-0 value.

Drop Highest & Drop Lowest can continue to work together, with each having non-0 numbers in place for a given category.

👌 Perfect, will implement. And yes #2935 was an issue when there were no categories, that is fixed.

This is looking great, @steveswinsburg !
I was able to produce an error with the drop highest / drop lowest / keep highest. It looks like, if you leave a field blank (which might be fairly common if you enter a value, delete it, then try to tab out), a stacktrace is produced. Ideally, a blank field should automatically get converted to "0" when the user tabs out of the field.
org.apache.wicket.WicketRuntimeException: Method onRequest of interface org.apache.wicket.behavior.IBehaviorListener targeted at org.sakaiproject.gradebookng.tool.panels.SettingsCategoryPanel$8$5@5dec8682 on component [TextField [Component id = categoryDropHighest]] threw an exception 	at org.apache.wicket.RequestListenerInterface.internalInvoke(RequestListenerInterface.java:268) 	at org.apache.wicket.RequestListenerInterface.invoke(RequestListenerInterface.java:241) 	at org.apache.wicket.core.request.handler.ListenerInterfaceRequestHandler.invokeListener(ListenerInterfaceRequestHandler.java:250) 	at org.apache.wicket.core.request.handler.ListenerInterfaceRequestHandler.respond(ListenerInterfaceRequestHandler.java:236) 	at org.apache.wicket.request.cycle.RequestCycle$HandlerExecutor.respond(RequestCycle.java:862) 	at org.apache.wicket.request.RequestHandlerStack.execute(RequestHandlerStack.java:64) 	at org.apache.wicket.request.cycle.RequestCycle.execute(RequestCycle.java:261) 	at org.apache.wicket.request.cycle.RequestCycle.processRequest(RequestCycle.java:218) 	at org.apache.wicket.request.cycle.RequestCycle.processRequestAndDetach(RequestCycle.java:289) 	at org.apache.wicket.protocol.http.WicketFilter.processRequestCycle(WicketFilter.java:259) 	at org.apache.wicket.protocol.http.WicketFilter.processRequest(WicketFilter.java:201) 	at org.apache.wicket.protocol.http.WicketServlet.doPost(WicketServlet.java:159) 	at javax.servlet.http.HttpServlet.service(HttpServlet.java:648) 	at javax.servlet.http.HttpServlet.service(HttpServlet.java:729) 	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:291) 	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) 	at org.sakaiproject.util.RequestFilter.doFilter(RequestFilter.java:411) 	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:239) 	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) 	at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:721) 	at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:466) 	at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:358) 	at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:318) 	at org.sakaiproject.tool.impl.ActiveToolComponent$MyActiveTool.forward(ActiveToolComponent.java:513) 	at org.sakaiproject.portal.charon.SkinnableCharonPortal.forwardTool(SkinnableCharonPortal.java:1479) 	at org.sakaiproject.portal.charon.handlers.SiteHandler.doSite(SiteHandler.java:463) 	at org.sakaiproject.portal.charon.handlers.SiteHandler.doGet(SiteHandler.java:263) 	at org.sakaiproject.portal.charon.handlers.SiteHandler.doGet(SiteHandler.java:151) 	at org.sakaiproject.portal.charon.handlers.WorksiteHandler.doPost(WorksiteHandler.java:71) 	at org.sakaiproject.portal.charon.SkinnableCharonPortal.doPost(SkinnableCharonPortal.java:1157) 	at javax.servlet.http.HttpServlet.service(HttpServlet.java:648) 	at javax.servlet.http.HttpServlet.service(HttpServlet.java:729) 	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:291) 	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) 	at org.sakaiproject.util.RequestFilter.doFilter(RequestFilter.java:460) 	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:239) 	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) 	at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52) 	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:239) 	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) 	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:219) 	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:106) 	at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:502) 	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:142) 	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:79) 	at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:617) 	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:88) 	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:518) 	at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1091) 	at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:668) 	at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1521) 	at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1478) 	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) 	at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) 	at java.lang.Thread.run(Thread.java:745) Caused by: java.lang.reflect.InvocationTargetException 	at sun.reflect.GeneratedMethodAccessor847.invoke(Unknown Source) 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 	at java.lang.reflect.Method.invoke(Method.java:497) 	at org.apache.wicket.RequestListenerInterface.internalInvoke(RequestListenerInterface.java:258) 	... 55 more Caused by: java.lang.NullPointerException 	at org.sakaiproject.gradebookng.tool.panels.SettingsCategoryPanel$8$5.onUpdate(SettingsCategoryPanel.java:422) 	at org.apache.wicket.ajax.form.AjaxFormComponentUpdatingBehavior.onEvent(AjaxFormComponentUpdatingBehavior.java:153) 	at org.apache.wicket.ajax.AjaxEventBehavior.respond(AjaxEventBehavior.java:124) 	at org.apache.wicket.ajax.AbstractDefaultAjaxBehavior.onRequest(AbstractDefaultAjaxBehavior.java:633) 	... 59 more

Ah crap. Sorry, #2996

Confirmed! Closing issue.


Correction for raw affiliation Ethical approval: This study was reviewed by the American Institutes for Research Institutional Review Board and qualified for exempt status because it involved very minimal or no risk to study subjects.; Other disclosures: None reported.

Correction needed for raw affiliation Ethical approval: This study was reviewed by the American Institutes for Research Institutional Review Board and qualified for exempt status because it involved very minimal or no risk to study subjects.; Other disclosures: None reported.
raw_affiliation_name: Ethical approval: This study was reviewed by the American Institutes for Research Institutional Review Board and qualified for exempt status because it involved very minimal or no risk to study subjects.; Other disclosures: None reported.
new_rors:
previous_rors: 00490n048
works_examples: W2898523464
contact: 37e171a551c7c0ca218ac082b0888e3a:a67e0f5f3bce08 @ air.org

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


Pallets: move business logic to seperate files

In lib.rs only keep:
the pallet module declaration containing:

storage
events
calls
..

Move logic that is executed within extrinsics to seperate files. This will improve readability.

Do you think about something like this?

lib.rs => pallet module declaration
extr.rs => extrinsics body functions
help.rs => helpers functions
traits.rs => impl of some traits

@renauter that is too generic, I would group functionality in files and give the file a meaningful name. For example, anything related to distribution of rewards in pallet-smart-contract -> distribution.rs
Another example, twins create/update in pallet-tfgrid -> twins.rs

Verified.

[x]  pallet-smart-contract
[x]  pallet-tfgrid
[x]  pallet-dao
[x]  pallet-burning
[x]  pallet-kvstore
[x]  pallet-tft-price
[x]  pallet-validator
[x]  substrate-validator-set
[x]  pallet-runtime-upgrade (already good)
[x]  pallet-tft-bridge

The structure of the pallets was done as mentioned.

Each pallet has its own readme.

and within each pallet in the src directory there's a file containing the implementation of each functionality.


Suppress reporting of race caused by cached_size tracking in protobuf

Current tsan runs reveal a few more racy functions internal to protobuf. I added them to the google/protobuf#2169 as well. Suppress this reporting for now.

Jenkins, test this please

Jenkins, test this please

Test failures: #10198 . Tsan C++ console output shows success even though dashboard shows in progress. Mac test machines currently not available for building, but not relevant since that's not run under TSAN.


Bulk upload guidance for flu

Description
The bulk uploader will be able to accept flu results. Certain fields will become optional (e.g., device fields). (Product to confirm which fields are optional/required)
Should also consider how this will scale beyond covid + flu (STIs, etc.)
Design considerations

How do we communicate different requirements for different diseases?
How do we communicate that the bulk results uploader accepts flu results?

Note that this will likely begin with just one jurisdiction as a pilot, so we may not want to make these changes until we can send flu results to all STLTs.

@lauraykerr I think that actually the same fields will be required for flu + COVID (and likely diseases going forward); the difference is how we're validating them. The validation logic isn't something we need to communicate to the user, but where to find these codes (e.g., LIVD table for COVID, contact device manufacturer (?) for flu).

@lauraykerr Updated this ticket - confirmed that all fields are still required for flu.


Allow full table paths to be used in joinable!

Fixes #333
I'm not sure where to add tests as joinable! is not tested.

It's probably worth adding some simple doctests to demonstrate its usage

Ok, so I added a doctest, not sure if it's enough

I'll merge this. I was gonna suggest mentioning it in the change log, but #948 will already do that.


Remove wildcard imports from test

Closes #258 by removing remaining non emr_hosp (deactivated) wildcard imports.
Summary of changes

Remove wildcard imports
Remove an unused import

This also removes from cdc covidnet -- was that intentional? it's probably fine since both are needed...

This also removes from cdc covidnet -- was that intentional? it's probably fine since both are needed...

Yea since it was a one liner in a 3 line PR I just batched them :see_no_evil:


Snapcast info out of sync, likely caused by the spotify rate limiter

What version of Music Assistant has the issue?
2.1.0
What version of the Home Assistant Integration have you got installed?
2024.6.2
Have you tried everything in the Troubleshooting FAQ and reviewed the Open and Closed Issues and Discussions to resolve this yourself?

[X] Yes

The problem
During the last three days I'm severely hit by the spotify rate limiter, my log is full of Attempt 1/5 failed: Spotify Rate Limiter. Several other users are reporting the same thing in discord.
Apart from the limiter itself being a problem, I noticed that the playing info of snapcast players often becomes out of sync with the music. This is similar to #2402, which however was fixed in the beta, so I believe that the cause this time is the limiter (I cannot be sure of course). MA should be robust when API errors happen, since there is no way to completely avoid them.
Note that Chromecast players are not affected, I never saw the info becoming out of sync, despite having the same limiter messages in the logs.
How to reproduce
The random behaviour of the limiter makes it hard to reproduce the problem, but here's something I can reproduce quite often:

Clean the cache in the cache controller
Start playing a song and seek towards its end (or wait).
When the next song starts:

The info of the song immediately appears
But the song itself (the audio) is sometimes delayed, I guess because of the limiter (Attempt 1/5 failed is shown in the logs).
Although the audio hasn't really started, the playing time is increasing as if the song really started. So if it takes 10 seconds to really start the song the time is showing 0:10.
Now the song really starts, but the time is already at 0:10 and keeps increasing, so the time is out of sync (and likely over time becomes more out of sync).

Note that with a chromecast player, I never saw the time increasing without the audio playing, and when the song actually starts the time always resets to 0:00, which might be why the out of sync issue doesn't happen.
Note also that I'm using the internal snapcast server with the default options.
Music Providers
Problem:

Snapcast

No problem:

Chromecast

Player Providers
Problem:

Spotify

No problem:

Filesystem

Full log output
music-assistant.log
Additional information
No response
What version of Home Assistant Core are your running
2024.7.3
What type of installation are you running?
Home Assistant OS
On what type of hardware are you running?
Generic x86-64 (e.g. Intel NUC)

@SantiagoSotoC not sure the Spotify issue has anything to do with it but Snapcast has the issue when chromecast does not

Chromecast uses the flowmode ?  Several of the snapcast problems are because of that, I'll check Marcel, but for now there is no news

@OzGav I don't think this is even a problem in snapcast, it's the same as the other issue it's something in the core.

Single reports are difficult. Will see what Marcel thinks when he gets around to this.

Some more info: since yesterday I'm running a patched version of the server that uses my own spotify client-id, so I'm no longer rate limited. The out of sync issue hasn't appeared since then, supporting my feeling that it's connected to the failed API calls.
Moreover, I still observe the following behaviour regarding the track timer at the end of each track. The timer is never perfrectly alligned, often there is a 1-2 second gap between the songs:

On snapcast, when a track is over, the timer for the next one immediately starts. When the audio really arrives the timer is often at 0:01 or 0:02.
On chromecast, when a track is over, the timer stays at the end of that track, until the audio of the next track starts, then it resets to 0:00.

So my theory (which could be completely wrong, of course) is that this behaviour is tolerable under normal circumstances, but under API failures it might take 5 or 10 seconds for the audio to start, in which case the timer will become out of sync (and the error will grow over time).

A few seconds delay in snapcast is normal due to buffering.
That makes sense, I can start the playback as it was before with the callback and implement something like debouncing for the snapcast stream state, which was the problem that was avoided with the dryout_ms

I think this issue can be closed now that version 2.2.0 is out with a bunch of bugfixes.
Still the real solution would be that snapcast provides some accurate playback progress in its api.

@chatziko given all of the above information please close this if you feel this issue has been adequately addressed.

Closing due no follow-up

Sorry for the late response, I'm currently travelling.  There were lots of great changes recently so it makes sense to close the issue, I ll open a new one if needed.


test: multiple linter warnings to suppress or fix

Issue being fixed or feature implemented
On my local kubuntu linters have way too much spam
What was done?
See each commit
How Has This Been Tested?
Run locally. Amount of warnings decreased from thousands to fewer amount. Excluding typos, they are:
src/coinjoin/client.cpp:1420:5: warning: Consider using std::any_of algorithm instead of a raw loop. [useStlAlgorithm]
src/coinjoin/client.cpp:1426:5: warning: Consider using std::any_of algorithm instead of a raw loop. [useStlAlgorithm]
src/coinjoin/client.cpp:655:26: warning: Consider using std::copy_if algorithm instead of a raw loop. [useStlAlgorithm]
src/coinjoin/server.cpp:593:33: warning: Consider using std::any_of algorithm instead of a raw loop. [useStlAlgorithm]
src/coinjoin/server.cpp:630:106: warning: Consider using std::any_of algorithm instead of a raw loop. [useStlAlgorithm]
src/governance/governance.cpp:1057:9: warning: C-style pointer casting [cstyleCast]
src/governance/governance.cpp:1068:9: warning: C-style pointer casting [cstyleCast]
src/governance/governance.cpp:1079:13: warning: C-style pointer casting [cstyleCast]
src/governance/governance.cpp:1086:9: warning: C-style pointer casting [cstyleCast]
src/governance/governance.cpp:1094:9: warning: C-style pointer casting [cstyleCast]
src/governance/governance.cpp:1099:5: warning: C-style pointer casting [cstyleCast]
src/governance/governance.cpp:1486:34: warning: Consider using std::copy_if algorithm instead of a raw loop. [useStlAlgorithm]
src/llmq/commitment.cpp:102:5: warning: Consider using std::all_of or std::none_of algorithm instead of a raw loop. [useStlAlgorithm]
src/llmq/instantsend.cpp:820:38: warning: Consider using std::any_of algorithm instead of a raw loop. [useStlAlgorithm]
src/llmq/quorums.cpp:831:102: warning: Consider using std::any_of algorithm instead of a raw loop. [useStlAlgorithm]
src/llmq/quorums.h:300:17: warning: C-style pointer casting [cstyleCast]
src/llmq/quorums.h:301:17: warning: C-style pointer casting [cstyleCast]
src/llmq/quorums.h:302:17: warning: C-style pointer casting [cstyleCast]
src/llmq/quorums.h:303:17: warning: C-style pointer casting [cstyleCast]
src/spork.cpp:119:58: warning: Consider using std::any_of algorithm instead of a raw loop. [useStlAlgorithm]
src/statsd_client.cpp:234:63: warning: C-style pointer casting [cstyleCast]

Advice not applicable in this specific case? Add an exception by updating
IGNORED_WARNINGS in test/lint/lint-cppcheck-dash.sh
^---- failure generated from test/lint/lint-cppcheck-dash.sh
Consider install flake8-cached for cached flake8 results.
test/functional/data/invalid_txs.py: error: Source file found twice under different module names: "invalid_txs" and "data.invalid_txs"
test/functional/data/invalid_txs.py: note: See https://mypy.readthedocs.io/en/stable/running_mypy.html#mapping-file-paths-to-modules for more info
test/functional/data/invalid_txs.py: note: Common resolutions include: a) adding `__init__.py` somewhere, b) using `--explicit-package-bases` or adjusting MYPYPATH
Found 1 error in 1 file (errors prevented further checking)
^---- failure generated from test/lint/lint-python.s

Breaking Changes
N/A
Checklist:

[x] I have performed a self-review of my own code
[ ] I have commented my code, particularly in hard-to-understand areas
[ ] I have added or updated relevant unit/integration/functional/e2e tests
[ ] I have made corresponding changes to the documentation
[x] I have assigned this pull request to a milestone

We currently use ARG CPPCHECK_VERSION=2.10 in docker and everything is happy there.

cppcheck 2.11 is running by me.

We currently use ARG CPPCHECK_VERSION=2.10 in docker and everything is happy there.

cppcheck 2.11 is running by me.

Yeah; I feel like that is the "issue" here. It may make sense to include these suppressions, but only if we bump to cppcheck 2.11 (but I'd also want us to see if these suppressions are needed with 2.12 or 2.13)

(but I'd also want us to see if these suppressions are needed with 2.12 or 2.13)

see https://github.com/dashpay/dash/pull/5880#pullrequestreview-1888670859

EDIT: I use cppcheck 2.13.0 installed via brew

We currently use ARG CPPCHECK_VERSION=2.10 in docker and everything is happy there.

cppcheck 2.11 is running by me.

Yeah; I feel like that is the "issue" here. It may make sense to include these suppressions, but only if we bump to cppcheck 2.11 (but I'd also want us to see if these suppressions are needed with 2.12 or 2.13)

I can confirm that 2.13.0 (current stable release) still needs them

(but I'd also want us to see if these suppressions are needed with 2.12 or 2.13)

see #5880 (review)

EDIT: I use cppcheck 2.13.0 installed via brew

Well; yeah, Udjin is saying it's happy with 2.13; but are the suppressions needed?

@knst hmm.. so you decided to drop a9add44. why?

hmm.. so you decided to drop a9add44. why?

@UdjinM6
By pasta's request, I will prepare new PR later:
https://github.com/dashpay/dash-issues/issues/67


error: Cannot find cl.exe (Visual C++) anywhere on your system. Check the build requirements.

I'm using VS2010 and the path is correct, but I don't know why I get the following error:
Shell inheritance test: OK
Source path: OK
Checking for kBuild...
Target architecture: amd64.
Host architecture: amd64.
Found kBuild:               C:/VBoxBuild/VirtualBox/kBuild
Found kBuild binaries:      C:\VBoxBuild\VirtualBox\kBuild\bin\win.amd64
Checking for Windows DDK v7.1...
Found Windows DDK v7.1:     C:/WinDDK/7600.16385.1
Checking for Visual C++...
error: Cannot find cl.exe (Visual C++) anywhere on your system. Check the build requirements.

We've tested our tool with VS 2010 Professional. Which version of VS2010 are you using? It does not mean that our tool  supports Professional version only, but I can say that it reliably runs on it. Or, it could help if you create an independent OS  environment (such as Virtual Machine and Container) and clean-install all the requirements.

Yes, I installed VS 2010 Professional, And I can find cl.exe in" C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin", I don't know why configuation.vbs can't find this

We've tested our tool with VS 2010 Professional. Which version of VS2010 are you using? It does not mean that our tool supports Professional version only, but I can say that it reliably runs on it. Or, it could help if you create an independent OS environment (such as Virtual Machine and Container) and clean-install all the requirements.

Yes, I installed VS 2010 Professional, And I can find cl.exe in" C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin", I don't know why configuation.vbs can't find this.

You've installed Pro version. Then it should work in a normal situation.
Actually, the script configuration.vbs does not come from our tool but from the source code to compile. I guess there are a few possibilities:

The configuration is too old (i.e. the source code is obsolete) to support the recent environment.
The configuration is customized (tweaked) by users and it works differently from the official source code.

Where did you get the source code? Our tool works on the source code from the official website. Or, if it is so, then you can ask VirtualBox forum to get the answer, since this problem is not related to our scripts: https://forums.virtualbox.org/viewforum.php?f=10. And, as I said above, you can also give a try to a clean-install.

And if you find an answer, please let us know! It could help the others who are getting the same problem :D

OK ,I will try to solve this problem, thank you for your answer.

You've installed Pro version. Then it should work in a normal situation.
Actually, the script configuration.vbs does not come from our tool but from the source code to compile. I guess there are a few possibilities:

The configuration is too old (i.e. the source code is obsolete) to support the recent environment.
The configuration is customized (tweaked) by users and it works differently from the official source code.

Where did you get the source code? Our tool works on the source code from the official website. Or, if it is so, then you can ask VirtualBox forum to get the answer, since this problem is not related to our scripts: https://forums.virtualbox.org/viewforum.php?f=10. And, as I said above, you can also give a try to a clean-install.

May I ask which version of Virtualbox you have compiled?

Thanks for the information! I will add the note into the project.


Configurations sent over MQTT are not saved

By sending a configuration over MQTT I saw a bug in Coolboard::update()
The if/else (line 620 & 646) condition was just shooting the restart if manual is false (which happens..). this way not only the message is lost, it creates a infinite loop because the answer to the desired state was never sent. So the board get's the message over and over again without answering because it was rebooted to soon...

when manual goes false all actors will be set as soon as you go trough jetpack::doAction().
In a farm like the coolCave latency is about ~5sec.


Replace pyke testinghacks

🚀 Pull Request
Description
Strictly Temporary, just to show test results.
See #4170

Consult Iris pull request check list

The tests don't pass.
But the only failures are caused by the extra debug output upsetting some tests which check warnings output

No longer useful


Compatibility between 12.18 and <12.18 through dynamic insertion of sdk_moniker

Description
Fixes this reported issue whereby create_configuration with throw an error in the latest version if sdk_moniker is not given as a kwarg, buit will throw an error in previous versions if it is.
All SDK Contribution checklist:

[x] The pull request does not introduce [breaking changes]
[x] CHANGELOG is updated for new features, bug fixes or other significant changes.
[x] I have read the contribution guidelines.

General Guidelines and Best Practices

[x] Title of the pull request is clear and informative.
[x] There are a small number of commits, each of which have an informative message. This means that previously merged commits do not appear in the history of the PR. For more information on cleaning up the commits in your PR, see this page.

Testing Guidelines

[ ] Pull request includes test coverage for the included changes. (I can't see any test suite for the impacted code?)

@microsoft-github-policy-service agree

Hi @benrutter Ben, thanks so much for contributing the fix here! There are a few other places to make this change and a few other steps to prepare a patch release (and I would like to add a test) so I will take this fix into a separate PR and finish it up to get it released today. This is just easier than working out of your fork.

@jalauzon-msft sure thing- thanks!


Extra config to support Lunar proposed kernel installation.

Below steps are needed in order to install proposed kernels on Lunar.
Create "/etc/apt/preferences.d/proposed.pref" with below config:
Package: *
Pin: release a=*-proposed
Pin-Priority: 500

If it's a new feature from Lunar, the logic should bypass the new config on old versions. So, when new version arrives, it doesn't need to add one by one.


run tests on PR

specifying the branch as  main solves the problem of running the checks twice. @vijayvarma392

merge? @vijayvarma392


[Android] Extract "bytesToHex" static method from Characteristic to external util

Related discussion in PR

Cleanup - closing old Issues.
Please open new one if this is still valid.


Fix Font Awesome link

Font awesome icons are no longer showing on the page. This as to do with ending of the pro version. Need to update page links to the free version.

Updated code for font awesome icons.


Fixes power wire action electrocution

About the PR
Fixes an issue where cutting a power wire and then mending all power wires still caused things to be electrocuted. Oops!

yeah, each instance is meant to perform their own bookkeeping - however, if it would be better to track how many instances of a wire type is cut and store that within WiresComponent, rather than this method of individual bookkeeping, i could try to see how to approach a solution that leans itself towards that

So a possible solution is, you have this thing
    private void OnWiresPowered(EntityUid uid, WiresComponent component, PowerChangedEvent args)
    {
        UpdateUserInterface(uid);
        foreach (var wire in component.WiresList)
        {
            wire.Action.Update(wire);
        }
    }
    ```
If you also called wire.Action.Update on Mend, and Cut, and then did your checks on PowerWire in Update, it might work.

So a possible solution is, you have this thing
    private void OnWiresPowered(EntityUid uid, WiresComponent component, PowerChangedEvent args)
    {
        UpdateUserInterface(uid);
        foreach (var wire in component.WiresList)
        {
            wire.Action.Update(wire);
        }
    }

If you also called wire.Action.Update on Mend, and Cut, and then did your checks on PowerWire in Update, it might work.

yeah, that's the solution i was thinking of, where rather than do the checks upon a wire cut/mend/pulse, instead it would use the update function already in the interface to instead update the entity's state - that way all a wire has to do is just listen for updates to ensure that the correct state is reached

alright, addressed the request for changes, this should make electrocution updating a little less untied from when the wire has something done to it

Waiting for a bug fix with DoAfter cancelling putting the wires into a weird state.

Waiting for a bug fix with DoAfter cancelling putting the wires into a weird state.

do you have any reproduction steps? cancelling the doafter at the moment just removes a wire's ID from a set that blocks any interactions from reaching that wire

Reproducing this is kind of a pain

The easiest way I found to end up in this weird state is if you spam cut, and mend the two power wires for a bit, and let some do afters complete. I can't figure out a set of steps to cause the electrocution bug to happen, but maybe it'll go away if you fix this, since it's probably related to the wire cut count getting screwed up too.

@wrexbe

The wire cutting do-afters are gone, and still can break it

The wire cutting do-afters are gone, and still can break it

wire do-afters were removed in another PR (i just did an upstream merge on this)
however, i might've gotten the issue you were having: i added a check for if a wire is cut or not when the action is started, and spamming a single wire gave me a lot of popups about 'this wire can't be cut if it's cut/mended if it's mended'


Game window opens too early when making a deck

Currently the main game window is opened at the same time as the DeckBuilder. When you have to create a deck, then the DeckBuilder should be opened first and afterwards the game. When you don't have to create a deck, the game window should be opened directly.

related to #161

Once way to solve this is to not use separate windows, but to keep it in one window and having the content of it change.


Enable Transactions API

This PR enables Transactional FileSystem API C++ layer, added in previous PRs (#41431, #41433, #41434, #41434, #41462, #41463 and #41516)  by uncommenting extra arguments and running clang-format on modified files. Follow-up PRs will expose the API to python layers.

Sorry for the delay. This is failing internally since we have a different implementation for filesystems. So I need to apply some patches internally.
However, before I do that, there are two linter issues that need to be handled

[ ] having functions marked as both virtual and override. This I can fix on the manual import, it's not something that requires much work on import
[ ] having default arguments on virtual/override functions. This is disabled by the style guide and likely will make the manual import fail to be approved. I guess in the end we'll need to duplicate methods in Filesystem class, to have some that take the token argument (with no default, inserted in the signature before the output parameters) and some that don't take it (and call on the ones that do). This is a significant change and unfortunately I am unable to do it do to other time constraints.

Hi @mihaimaruseac I can do the changes you asked but will you accept a big PR doing that or do we need to go with split PRs again?

Let's do a big one since it's only function signatures mostly

Hi @mihaimaruseac,
I opened #41793. I think I will be able to split this into multiple steps.

Closing this in favor of #41793 to workaround the issues described above.


Implemented a fix for issue 258 which was allowing the UX to define more than 1 index for document level monitors.

Signed-off-by: AWSHurneyt<EMAIL_ADDRESS>Description
Implemented a fix for issue 258 which was allowing the UX to define more than 1 index for document level monitors.
Issues Resolved
https://github.com/opensearch-project/alerting-dashboards-plugin/issues/258
Check List

[x] New functionality includes testing.

[x] All tests pass

[ ] New functionality has been documented.

[ ] New functionality has javadoc added

[x] Commits are signed per the DCO using --signoff

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
For more information on following Developer Certificate of Origin and signing off your commits, please check here.

Codecov Report

Merging #259 (b31b9fb) into main (01d9c09) will decrease coverage by 0.00%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##             main     #259      +/-   ##
==========================================
- Coverage   52.94%   52.93%   -0.01%
==========================================
  Files         209      209
  Lines        5445     5446       +1
  Branches      762      763       +1
==========================================
  Hits         2883     2883
- Misses       2560     2561       +1
  Partials        2        2

Impacted Files
Coverage Δ

...ateMonitor/containers/MonitorIndex/MonitorIndex.js
90.52% <0.00%> (-0.97%)
: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 01d9c09...b31b9fb. Read the comment docs.


wrong token generation with dak.map_partitions

Currently the token generation for the HLG layer with dak.map_partitions seems to be broken, i.e. it changes everytime, e.g.:
import awkward as ak
import dask_awkward as dak

dak_array = dak.from_awkward(ak.Array([1, 2, 3]), 1)

def fun(x):
  return x + 1

dak.map_partitions(fun, dak_array).dask
# HighLevelGraph with 2 layers.
# <dask.highlevelgraph.HighLevelGraph object at 0x10577cd30>
# 0. from-awkward-8fdcc693b11857efa42a556ced92dfbc
# 1. <dask-awkward.lib.core.ArgsKwargsPackedFunction ob-7ae414b04e6de108142215f755b2eb3e

dak.map_partitions(fun, dak_array).dask
# HighLevelGraph with 2 layers.
# <dask.highlevelgraph.HighLevelGraph object at 0x10595ae90>
# 0. from-awkward-8fdcc693b11857efa42a556ced92dfbc
# 1. <dask-awkward.lib.core.ArgsKwargsPackedFunction ob-51ec44d7d3f220ecde45b63a6fd614d0

dak.map_partitions(fun, dak_array).dask
# HighLevelGraph with 2 layers.
# <dask.highlevelgraph.HighLevelGraph object at 0x112fde680>
# 0. from-awkward-8fdcc693b11857efa42a556ced92dfbc
# 1. <dask-awkward.lib.core.ArgsKwargsPackedFunction ob-eb6d01930cd4e0e1e190e3dda45e2f17

Here, one can see that the token of the second layer always changes: 7ae414b04e6de108142215f755b2eb3e -> 51ec44d7d3f220ecde45b63a6fd614d0 -> eb6d01930cd4e0e1e190e3dda45e2f17. This token does not change if one directly applies fun, i.e. fun(dak_array).dask.
The reason for different tokens is that each time fun is wrapped inside a new instance of ArgsKwargsPackedFunction, and this instance is passed to the tokenizer.
This also results in never hitting the dak_cache, which is likely unwanted: https://github.com/dask-contrib/dask-awkward/blob/main/src/dask_awkward/lib/core.py#L2011-L2012.
Passing the original fun (instead of the wrapped one) to dask.base.tokenize fixes this issue, but leads to a lot of failing tests (probably because the caches are hit now and that doesn't work as expected?).
How should this token generation be treated correctly @martindurant ?
I'm happy to provide a fix (given that I understand this issue here correctly), because I think that this mechanism can be used to speed up graph building in general.

My end goal is to make it possible to give token= directly to uproot.dask such that we can diminish the amount of layer building:
# `b.dask` can reuse the layers of `a.dask` from the `dak_cache` if the `token` match:
a = uproot.dask("DY.root", token="MC")
b = uproot.dask("ttbar.root", token="MC")

Here, the graph would still be built per .root file but the internal layer (dak.from_map) is just constructed once for a and could then be reused from cache for b. All consecutive steps (other dak.map_partitions or dak.mapfilter calls) could be cached then aswell in a similar way.
In combination with dak.mapfilter, which allows to skip typetracing entirely when providing the correct needs and meta, one could speed up graph building significantly.
(cc @lgray and @jpivarski because this goes a bit in the direction of duplicating graphs for datasets that should be treated in the same way, but rather through a caching mechanism that exists already in dask-awkward.)

token = token or ...

but it shouldn't be identical, right? Maybe a deterministic derivative.

token = token or ...

but it shouldn't be identical, right? Maybe a deterministic derivative.

I think something like this (a parametrization of a graph based on the inputs) is needed for duplicating full graphs for different input datasets. I agree though that my idea of using the dak_cache does not solve this - for some reason I thought the token and layer name building was independent of the arguments/inputs to the layer (which is not the case).
Coming back to the issue: the current behavior of dak.map_partitions still is not looking correct to me and it seems to break a lot of test cases if changing it. (I'll try to investigate if this is due to the dak_cache or some other reasons that I don't see yet.)


Chirp

Chirp - The easiest way to prepare, play, and remove sounds in your Swift app! :large_orange_diamond:

@vsouza should we add an Audio section in Media?

sure! make sense. Embed audio section in media.

Done!


feat: support io metrics

Looks like these are common metrics. No need to add them in the specific io node. So close for now.


SELECT fields from a joined table does unexpected multi-select

Hi,
I'm trying to get some aggregates, grouped by values of a table and of a joined table. Specifically, I'm trying to do the following query:
    store.select(
            Receipt.EVENT_SLUG.`as`("event_slug"),
            Receipt.CURRENCY.`as`("currency"),
            Receipt.PAYMENT_TYPE.`as`("payment_type"),
            ReceiptLine.TYPE.`as`("type"),
            ReceiptLine.TAX_RATE.`as`("tax_rate"),
            Count.count(ReceiptLine.ID).`as`("line_count"),
            Sum.sum(ReceiptLine.PRICE).`as`("total"),
            Sum.sum(ReceiptLine.TAX_VALUE).`as`("total_tax_value")
    ).leftJoin(Receipt::class.java).on(ReceiptLine.RECEIPT_ID.eq(Receipt.ID)).where(
            Receipt.CLOSING_ID.eq(closing.getId())
    ).groupBy(
            Receipt.EVENT_SLUG,
            Receipt.CURRENCY,
            Receipt.PAYMENT_TYPE,
            ReceiptLine.TYPE,
            ReceiptLine.TAX_RATE
    ).get().toList()

Which leads to a query like this:
select
a.event_slug as event_slug, a.currency as currency, a.payment_type as payment_type, b.type as type, b.tax_rate as tax_rate, b.id, b.price, b.tax_value
from Receipt a, ReceiptLine b
left join Receipt c
on b.receipt = c.id
where c.closing = 3
…

While instead I would have intended the following query:
select
c.event_slug as event_slug, c.currency as currency, c.payment_type as payment_type, b.type as type, b.tax_rate as tax_rate, b.id, b.price, b.tax_value
from ReceiptLine b
left join Receipt c
on b.receipt = c.id
where c.closing = 3
…

Is there a way to tell select that I want to have the fields from the joined table, and not to add a select clause?

Change code like this
store.select(             Receipt.EVENT_SLUG.as("event_slug"),             Receipt.CURRENCY.as("currency"),             Receipt.PAYMENT_TYPE.as("payment_type"),             ReceiptLine.TYPE.as("type"),             ReceiptLine.TAX_RATE.as("tax_rate"),             Count.count(ReceiptLine.ID).as("line_count"),             Sum.sum(ReceiptLine.PRICE).as("total"),             Sum.sum(ReceiptLine.TAX_VALUE).as("total_tax_value")     ) .leftJoin(ReceiptLine::class.java).on(ReceiptLine.RECEIPT_ID.eq(Receipt.ID)) .where(Receipt.CLOSING_ID.eq(closing.getId())) .groupBy(             Receipt.EVENT_SLUG,             Receipt.CURRENCY,             Receipt.PAYMENT_TYPE,             ReceiptLine.TYPE,             ReceiptLine.TAX_RATE     ) .get() .toList()


Add more languages to the build system

Feature Request
Add more language builders to the SCons-based build system.
Description
Since #885 was merged, we now have a build system that aims to provide a compilation framework for every compiled language. However, most of the work is currently not done yet.
Here are all the current languages in the AAA (in alphabetical order of the directory names). Each of the languages needs either a way to compile an executable in the build/ directory at the project root, copy the interpreted file to the correct folder, or prove that it is impossible to do.
If you want to provide compilation instructions, please follow the example provided in #885: a builder per language which has the name of the language which each leaf SConscript uses, and the list of the language's folders added to the language list in the root SConstruct file.

[ ] X86-64 Assembly (asm-x64)
[ ] Bash
[x] C [Done by #885]
[ ] C++ (c++/cpp)
[ ] Common Lisp
[ ] Clojure
[ ] Coconut
[ ] Crystal
[ ] C# (csharp)
[ ] D
[ ] Dart
[ ] Elm
[ ] Emojicode
[ ] Factor
[ ] Fortran
[ ] GNUPlot
[ ] Go (go/golang)
[ ] Haskell
[ ] Java
[ ] JavaScript
[ ] Julia
[ ] Kotlin
[ ] LabView
[ ] LOLCode
[ ] Lua
[ ] MatLab
[ ] Nim
[ ] OCaml
[ ] PHP
[ ] Piet
[ ] PowerShell
[ ] Python
[ ] R
[ ] Racket
[ ] Ruby
[ ] Rust
[ ] Scala
[ ] Scheme
[ ] Scratch
[ ] Smalltalk
[ ] Swift
[ ] TypeScript
[ ] V
[ ] VimL
[ ] WhiteSpace

Additional context
Related to #870.
Don't hesitate to reach out to me (@Amaras on GitHub, and Amaras#8643 on Discord) if you have questions.

Most languages will add temporary files for build, .o are generated for C, but should we just add the minimal amount of files added by a scons build?
Or should we just add the whole list like the one generated by gitignore.io?

I think we only need to add the minimal amount of things to the .gitignore.
Right now, only the .o are annoyingly not in the correct directory, so I don't see any reason to add any other files.
I'm open to discussion, of course :)

I don't really have a strong opinion on this^^
The other idea was to make sure everything is built out of the content directory.

Well there's a way to do that, but it adds complexity to the scripts

The gfortran compiler is part of the Gnu Compiler Collection and works like the C compiler gcc. So
gfortran -o prog func.f90 main.f90
will produce executable prog. Are there obstacles to adding Fortran codes?

@Beliavsky No obstacles to adding Fortran code, this is about adding an automated system to compile all the examples in the Archive.