add workflow cleaner to clean expired workflows periodically

Hi, I ran into a problem while using redis persistence, which has already been discussed  in some issues like #1315.  Redis memory usage kept growing and random data including some metadata got evicted.
So I add a workflow cleaner in RedisExecutionDAO. It records the timestamp and workflowId in zset (timestamp as score, workflowId as value) when a workflow is created. A background thread will find and clean the expired workflows (indicated by config workflow.cleaner.expire.seconds) periodically. The period is indicated by config workflow.cleaner.period.seconds. If there are too many expired workflows, cleaner will process them batch by batch. The batch size is indicated by config workflow.cleaner.batch.size.
The cleaner is not meant to clean data in IndexDAO or other db implementation, because the disk-based storage may not have this problem. It works well in my environment and I hope this would help someone else.

Pull Request Test Coverage Report for Build 3888

16 of 36 (44.44%)  changed or added relevant lines in 2 files are covered.
16 unchanged lines in 2 files lost coverage.
Overall coverage decreased (-0.2%) to 68.786%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

redis-persistence/src/main/java/com/netflix/conductor/dao/dynomite/RedisExecutionDAO.java
13
33
39.39%

Files with Coverage Reduction
New Missed Lines
%

cassandra-persistence/src/main/java/com/netflix/conductor/dao/cassandra/CassandraEventHandlerDAO.java
8
69.86%

cassandra-persistence/src/main/java/com/netflix/conductor/dao/cassandra/CassandraMetadataDAO.java
8
55.79%

Totals

Change from base Build 3882:
-0.2%

Covered Lines:
11393

Relevant Lines:
16563

💛  - Coveralls

Hi @kensou97 ,
Really nice work. Even we are facing this issue in our environment.
Have you tried considering WorkflowSweeper?
It is not helpful for use because while doing redis.pop we are facing issue.
Also, I feel in case of the environment having short-lived workflows ~ seconds and long-lived workflows ~days, this approach will clean both together. Instead, I feel we should add the variable workflow.cleaner.expire.seconds in the workflow definition
@mudit3774 . This is important for us.

Hi @kensou97 ,
Really nice work. Even we are facing this issue in our environment.
Have you tried considering WorkflowSweeper?
It is not helpful for use because while doing redis.pop we are facing issue.
Also, I feel in case of the environment having short-lived workflows ~ seconds and long-lived workflows ~days, this approach will clean both together. Instead, I feel we should add the variable workflow.cleaner.expire.seconds in the workflow definition
@mudit3774 . This is important for us.

hi @manan164 , thanks for your reply.  Because sweeper is enabled by default and my memory usage still kept growing before, so i think sweeper doesn't work as I expected. And as you mentioned, if there is a "expire" property in workflow def, we can have more flexible and accurate control with different workflows. Although current commit has already met my needs, I can patch a commit if necessary.

Hi @kensou97 ,
Really nice work. Even we are facing this issue in our environment.
Have you tried considering WorkflowSweeper?
It is not helpful for use because while doing redis.pop we are facing issue.
Also, I feel in case of the environment having short-lived workflows ~ seconds and long-lived workflows ~days, this approach will clean both together. Instead, I feel we should add the variable workflow.cleaner.expire.seconds in the workflow definition
@mudit3774 . This is important for us.

hi @manan164 , thanks for your reply. Because sweeper is enabled by default and my memory usage still kept growing before, so I think sweeper doesn't work as I expected. And as you mentioned, if there is a "expire" property in workflow def, we can have more flexible and accurate control with different workflows. Although current commit has already met my needs, I can patch a commit if necessary.

Hi @kensou97 The reason for that might be you have not implemented any archival strategy as such. We can implement workflowStatusListener and decide what should be done when workflow is completed or terminated. That will be a cleaner approach I guess. Please check here:- Archival Module

Hi @kensou97 ,
Really nice work. Even we are facing this issue in our environment.
Have you tried considering WorkflowSweeper?
It is not helpful for use because while doing redis.pop we are facing issue.
Also, I feel in case of the environment having short-lived workflows ~ seconds and long-lived workflows ~days, this approach will clean both together. Instead, I feel we should add the variable workflow.cleaner.expire.seconds in the workflow definition
@mudit3774 . This is important for us.

hi @manan164 , thanks for your reply. Because sweeper is enabled by default and my memory usage still kept growing before, so I think sweeper doesn't work as I expected. And as you mentioned, if there is a "expire" property in workflow def, we can have more flexible and accurate control with different workflows. Although current commit has already met my needs, I can patch a commit if necessary.

Hi @kensou97 The reason for that might be you have not implemented any archival strategy as such. We can implement workflowStatusListener and decide what should be done when workflow is completed or terminated. That will be a cleaner approach I guess. Please check here:- Archival Module

I didn't see this feature before, this should be what I need . Thank you😄

I would consider this approach better in a way that we won't be facing the issue I have mentioned in the Archival Module.
If we have sub-workflow and parent workflows need its output at a later point of time and it is not present in both redis and ES then parent workflow will never be able to complete. This will only occur in a high throughput scenario.


Compile with 0.14.3

Fixes commandeer.nim(114, 8) Error: undeclared identifier: 'strtabs'
and similar issue with bind parseopt2 in commandeer.nim by specifying the module name as a prefix.
The alternative is to remove / comment out the bind statements; the library still compiles (and seemingly? works) without bind parseopt2 or bind strtabs in commandeer.nim

Thank you for sharing this update! I hadn't seen that the templating system was getting an upgrade.
I am taking advantage of it now; I have updated the template syntax to the new standard. I hope it works in 0.14.3 too. I am only keeping stable version compatibility.


Undeclared alternate prototype

Hi there!
I just installed this module in Zeek and when running the check before deploying, I received this error:
error in /opt/zeek/share/zeek/site/packages/./CVE-2020-16898/./CVE-2020-16898.zeek, line 19 and /opt/zeek/share/zeek/base/bif/plugins/./Zeek_ICMP.events.bif.zeek, line 290: use of undeclared alternate prototype (event(c:connection; icmp:icmp_conn; cur_hop_limit:count; managed:bool; other:bool; home_agent:bool; pref:count; proxy:bool; rsv:count; router_lifetime:interval; reachable_time:interval; retrans_timer:interval; options:vector of icmp6_nd_option;) and icmp_router_advertisement)
In looking at the Zeek_ICMP.events.bif.zeek file, it stated that the file in automatically generated, so I'm not sure where the error truly is.
Have you seen this before, or have any recommendations on how to fix?
Thanks!

Please post the output of $ zeek --version so I can better help :)

Sorry for the late response - I've been buried in other projects.
Here's that output:
zeek@COV-ZEE002:/opt/zeek$ sudo ./bin/zeek --version
./bin/zeek version 4.1.0-dev.341

I saw something that reminded me of this issue, so thanks for being patient. You may have already seen a comment in the code suggesting this is due to a deprecated version of icmp_router_advertisement being removed in v4.1. If not, confirm that this PR solves your issue and I'll go ahead and get it merged into master: https://github.com/corelight/CVE-2020-16898/pull/7

Thank you, unfortunately I'm not with that organization any longer and no longer have access to the Zeek environment.
Here's hoping that fixed it!


Remove print(response.url) in stocks (and other print statements)

Please remove print statements in the main branch. They are both noisy and do not follow the logger method, which is faster and prevents the system from hanging on logs.
Thanks!

will do

I believe this is fixed 37b010f452fcdcb9dff221d60124bced1a3a1442

I actually meant this one:
https://github.com/danielecook/iex-api-python/blob/master/iex/stocks.py#L29
It prints the URL with every request, which is overwhelming.


Complains about missing package for testdata when logging.

[provenance:warning] Missing python package "dicom" to read file: gram:/home/jasper/Projects/niprov/testdata/dicom/T1.dcm

Probably because of JsonFile.all()


PEP 8 Fix

Makes the code PEP 8 compliant.

Hi @tbedford ! Can you please review my PR?

We use black for code formatting.


Add gesture boolean variable on Preset

maybe isPresetGesture boolean on the Preset class

this to get gesture status on the preset - will be used to load different presets

Added isGesture on Music.class, needs #76


exe-mach: implement mach_vm_remap()-based patching of main()

Fixes #50

Uhhh sorry, I merged the wrong PR...


The function Set-PodeSecurityAccessControl doesn't work

I tried to use Set-PodeSecurityAccessControl  but it doesn't work, not recognized.

Hi @Landris18,
Which version of Pode are you using? The security functions were released with v2.6.0.
If you're on v2.6.0, have you got a sample script that throws the error?

hi @Badgerati
How to know the version of pode i'm using ??
This error happens when I try to use this line:
Set-PodeSecurityAccessControl -Origin '*' -Methods '*' -Headers '*' -Duration 7200

Hi @Landris18,
could you post the actual error message? Without the error message we can only guess the cause.
However as @Badgerati already mentioned it is probably not the v2.6.0 that you're using.

hi @RobinBeismann
The problem was i'm currently using pode 2.5.0, i've just upgraded and it works fine now.
But i'm facing other problem about Cors from the request of a client
Thanks

It would probably be good if you close this issue and raise a new one with the actual CORS error you're facing.

@RobinBeismann
Yeah, thanks , i'll open à New issue


Could not parse auth token

Hello
Using the Basic example in PlatformIO
I think I have Firebase setup correctly
Serial output
Set double test...
FAILED
REASON: unauthorized, Could not parse auth token.
Thanks for any help

Please make sure you provide valid database secret for FIREBASE_AUTH and valid Project ID for FIREBASE_HOST
#define FIREBASE_HOST "YOUR_FIREBASE_PROJECT.firebaseio.com"
#define FIREBASE_AUTH "YOUR_FIREBASE_DATABASE_SECRET"

Thanks for the quick reply. I will try that later. Really love the potential for this library. Are there plans for supporting a non deprecated authentication method? Or suggestions for dealing with that?

Yes I also try to use access token in my library instead.

Whoo Hooo !
The Database Secret works!
For anyone else this may help the database secret is found at:
Firebase Console > Project Overview > Settings > Service Accounts >
Database Secrets
Thanks
On Sun, May 12, 2019 at 6:35 PM mobizt<EMAIL_ADDRESS>wrote:

Yes I also try to use access token in my library instead.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/mobizt/Firebase-ESP8266/issues/18#issuecomment-491635110,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ACMWTOFZ35AS7XMIJRWBAYDPVCLTZANCNFSM4HMKMK2A
.

--
Larry Reader


Pasting randomly breaking

After a while of playing on the same map for some people pasting will stop working. There will be a notification saying the pasting was successful but nothing is actually spawned. No errors are logged on the server and it only happens to a few clients, not the entire server.
So far i have encountered this error:
[ERROR] addons/advdupe2/lua/weapons/gmod_tool/stools/advdupe2.lua:1805: attempt to index a nil value
  1. func - addons/advdupe2/lua/weapons/gmod_tool/stools/advdupe2.lua:1805
  2. unknown - lua/includes/modules/net.lua:30

And one was reported by a player where in lua/advdupe2/sv_clipboard.lua line 757 EntityList is nil
A map reload fixes these errors for a while

So EntityList is nil now?

Nvm it's been updated


Empty reply from server request svc by gateway

What happened:
Empty reply from server request svc by gateway

What you expected to happen:
except normal response
How to reproduce it (as minimally and precisely as possible):
just retry N times
Anything else we need to know?:
Environment:

EdgeMesh version:  v1.12

Kubernetes version (use kubectl version):  v1.23.8

KubeEdge version(e.g. cloudcore --version and edgecore --version): v1.11.1

Cloud nodes Environment:

Hardware configuration (e.g. lscpu): 4C 8G
OS (e.g. cat /etc/os-release): centos7
Kernel (e.g. uname -a): Linux k8s-master 3.10.0-1160.66.1.el7.x86_64 #1 SMP Wed May 18 16:02:34 UTC 2022 x86_64 x86_64 x86_64 GNU/Linux
Go version (e.g. go version): NA
Others:

Edge nodes Environment:

edgecore version (e.g. edgecore --version):  v1.11.1
Hardware configuration (e.g. lscpu): 4C 8G
OS (e.g. cat /etc/os-release):  centos7
Kernel (e.g. uname -a): Linux k8s-edge01 3.10.0-1160.66.1.el7.x86_64 #1 SMP Wed May 18 16:02:34 UTC 2022 x86_64 x86_64 x86_64 GNU/Linux
Go version (e.g. go version):NA
Others:

Can you show some edgemesh logs? When "Empty reply from server" occurs

You need deploy edgemesh-agent to node default-edge-node

You need deploy edgemesh-agent to node default-edge-node

I deployed two services ,while I deploy two VirtualService,get the result

while I deploy a VirtualService ,get the result


[Backport-1.x] Updated READMEs on releasing, maintaining, admins and security. (#853)

Signed-off-by: dblock<EMAIL_ADDRESS>Description
Backport of https://github.com/opensearch-project/OpenSearch/pull/853 to 1.x.
Issues Resolved
Resolves #948 for 1.x.
Check List

[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.

start gradle check


Scheduler task never executes and no CallUnavailable is emitted if Preimage is missing at execution time

Is there an existing issue?

[X] I have searched the existing issues

Experiencing problems? Have you tried our Stack Exchange first?

[X] This is not a support question.

Description of bug
The scheduler has a pair of edge cases that combine to cause invalid state as well as failure to notify.

Found in v0.9.36 (may exist in prior)
Still exists currently

If a lookup based call is scheduled, but the preimage is removed before execution, no failure event is deposited nor is the event added to incompleteSince or removed from agenda state.
https://github.com/paritytech/substrate/blob/c7d26dcf3d6c19fa7dcbd1f2633e337e5a5cbc40/frame/scheduler/src/lib.rs#L1065-L1068
Occurs prior to to place where the deposit event occurs inside of service_task
https://github.com/paritytech/substrate/blob/c7d26dcf3d6c19fa7dcbd1f2633e337e5a5cbc40/frame/scheduler/src/lib.rs#L1076-L1083
This causes a lack of a deposit_event for the call.
The service_agenda call then fails to consider Unavailable as postponed and will return true which results in state that will never be removed.
https://github.com/paritytech/substrate/blob/c7d26dcf3d6c19fa7dcbd1f2633e337e5a5cbc40/frame/scheduler/src/lib.rs#L1022-L1044
Either these calls should be considered postponed, or the state for them should not be added back into the Agenda storage.
Steps to reproduce

Create a preimage for a referenda to execute
Create and pass the referenda for said preimage
Current State: Preimage (exists and requested) ✅ , scheduler: scheduled ✅
Now unrequest and unnote the preimage
Current State: Preimage: Empty, scheduler: still scheduled ✅
Continue forming blocks until the scheduler attempts to execute scheduled task
Expected: CallUnavailable event emitted. Actual: No block events

Resulting Error State:

scheduler.incompleteSince state: Empty
scheduler.agenda state: Contains prior block agenda item (the scheduled task)

Expected Error state:

Option 1: incompleteSince contains task waiting for preimage
Option 2: agenda is empty

4. Now unrequest and unnote the preimage

How does this happen?

@bkchr You are correct that it cannot happen without either changing the preimage pallet ManagerOrigin say to a collective member or via sudo powers (or I suppose a fast track that does it). The easy way to recreate is to do step 4 with sudo powers.


Site not very mobile friendly

Properly selecting and copying the shortened url is kind of inconvenient on mobile. Some ideas:

Copy on shorten
Copy on shortened url textbox click
Add copy button

Also I don't think this is intended? I think it could easily be fixed by setting flex direction to column with a media query

gonna pr a fix 👍🏻


Install creme error

Thank you for providing such a great tool! I encountered an issue where TensorFlow-GPU 2.11.1 is no longer available. When I tried using TensorFlow-GPU 2.11.0 or 2.10.1, I ran into conflicts with the Protobuf package.
Could you please offer some advice on how to resolve this?

Hi. It should work with more recent versions of tensorflow. For instance, check out the colab example:
https://colab.research.google.com/drive/1j3vXKf4QNgCWoIp655ugxEGyBN0cp4K5?usp=sharing

I found that creme-nn requires Protobuf 3.20, but I couldn't find a compatible version of TensorFlow that matches this requirement.

weird. could you send me your install list for env so i can try to replicate this?

req.txt
Thanks


Bash Profile not sourcing on start up

Bash profile is not sourcing on start up in Microsoft Terminal(git bash loaded in Microsoft Terminal) while in Git Bash Terminal it works fine.

Platform ServicePack Version      VersionString
-------- ----------- -------      -------------
 Win32NT             10.0.18363.0 Microsoft Windows NT 10.0.18363.0

Steps to reproduce

install git_bash
Create a bash_profile
add following alias => alias TEST="echo 'it works'"
close both terminals (MS Terminal & Git Bash)
Open both and type TEST

Expected behavior
Both work the same way.
Actual behavior
MS Terminal doesn't look up the .bash_profile on start up....

Please make sure you are running bash.exe -li.


⚠ TV Manager has degraded performance

In bb87ba5, TV Manager ($SITES_URL_TV_MANAGER) experienced degraded performance:

HTTP code: 525
Response time: 21497 ms

Resolved: TV Manager performance has improved in de51f6b after 1 hour, 37 minutes.


Error in VSCode output pane when trying to get autocompletions

When I go into my controllers template, and type {{this.}} I see the following error in the output pane for Glint Language Server in VSCode
[Error - 12:00:04 PM] Error: Could not find source file: '/Users/adambaker/Development/gavant/PEP-Web-User-Interface/pep/app/pods/admin/language/template.hbs'.
    at getValidSourceFile (/Users/adambaker/Development/gavant/PEP-Web-User-Interface/pep/node_modules/typescript/lib/typescript.js:147056:29)
    at Object.getCompletionsAtPosition (/Users/adambaker/Development/gavant/PEP-Web-User-Interface/pep/node_modules/typescript/lib/typescript.js:147289:80)
    at GlintLanguageServer.getCompletions (/Users/adambaker/Development/gavant/PEP-Web-User-Interface/pep/node_modules/@glint/core/lib/language-server/glint-language-server.js:114:40)
    at /Users/adambaker/Development/gavant/PEP-Web-User-Interface/pep/node_modules/@glint/core/lib/language-server/binding.js:41:51
    at captureErrors (/Users/adambaker/Development/gavant/PEP-Web-User-Interface/pep/node_modules/@glint/core/lib/language-server/binding.js:76:24)
    at /Users/adambaker/Development/gavant/PEP-Web-User-Interface/pep/node_modules/@glint/core/lib/language-server/binding.js:41:16
    at /Users/adambaker/Development/gavant/PEP-Web-User-Interface/pep/node_modules/vscode-languageserver/lib/common/server.js:678:20
    at handleRequest (/Users/adambaker/Development/gavant/PEP-Web-User-Interface/pep/node_modules/vscode-jsonrpc/lib/common/connection.js:405:41)
    at processMessageQueue (/Users/adambaker/Development/gavant/PEP-Web-User-Interface/pep/node_modules/vscode-jsonrpc/lib/common/connection.js:286:17)
    at Immediate._onImmediate (/Users/adambaker/Development/gavant/PEP-Web-User-Interface/pep/node_modules/vscode-jsonrpc/lib/common/connection.js:276:13)

It also seems to occur if you hover on that code as well.

Got it, thanks for writing this up! Should be a quick fix, I think.


Auth via GitLab is broken

See this Loom.

Same for GitHub
Error: Could not resolve external URI: vscode://appland.appmap/authn-appmap-server?nonce%3D1ec19fea-cfbc-4374-be1f-0c7e28da2f14

@hanc2006 Is that occurring for you right now? I've logged in and out repeatedly from VS Code with a number of GitHub accounts but I can't reproduce the problem you're seeing. Could you provide more info please?

Versions (OS, VS Code, AppMap extension)
Whether you had an existing AppMap account already in use

Thank you!
Brian

Hi @brikelly,
sure, I am using VSCode Insider
Version: 1.84.0-insider
Commit: 35419fc016b8d3d5dbc59aa11a0be957b0897309
Date: 2023-10-27T10:42:23.414Z
Browser: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Code-Insiders/1.84.0-insider Chrome/114.0.5735.289 Electron/25.9.2 Safari/537.36

MacOS Sonoma 14.0
AppMap extension
v0.102.0

I use codespace + copilot extension, and I am logged in with my github account.

See this Loom.

The second dialog box does not appear in my macos. Any VSCode settings that are wrong?

Hi @hanc2006 , this is very likely an issue just with Codespaces, not your VS Code settings. We will take a further look on our side to try and figure it out! Apologies for the inconvenience.

See this Loom.

The second dialog box does not appear in my macos. Any VSCode settings that are wrong?

Same here, I'm on windows and using Cursor IDE which is built on top of VSCode.

Yea just tested - basically works fine with local VS Code, but in the browser the links to auth don't open correctly, might be a security setting or issue?   Here is a loom showing the issue.  https://www.loom.com/share/aceb43a0f2f940e1a3e2fd9a167e55e2


Monitor Query: query for an 'app' expression instead of a 'workspace' expression

I try to query for app expression.
I found that this can be achieve by using:
        ApplicationInsightsDataClientImpl client = new ApplicationInsightsDataClientImpl(credentials); QueryResults queryResults = client.querys().execute(appId, new QueryBody().withQuery(query));
https://github.com/Azure/azure-sdk-for-java/blob/e77d29a5d71cc37b73b3e1abb1034a65a2130c11/sdk/applicationinsights/microsoft-azure-applicationinsights-query/samples/src/main/java/com/microsoft/azure/applicationinsights/query/samples/ApplicationInsightsClientExample.java
my problem is that com.microsoft.azure.applicationinsights.query is deprecated according to
https://github.com/Azure/azure-sdk-for-java/blob/main/sdk/monitor/azure-monitor-query/migration-guide.md#cross-service-sdk-improvements
I would like to use the 'azure-monitor-query', but it supports only 'workspace' expression queries:
logsQueryClient.queryWorkspace(workspaceId, query, QueryTimeInterval.ALL);
the reason I want to use the 'azure-monitor-query' is because it uses
client builder to interact with Azure services:
TokenCredential tokenCredential = new DefaultAzureCredentialBuilder().build();    LogsQueryClient logsQueryClient = new LogsQueryClientBuilder()         .credential(tokenCredential)         .buildClient();
is there any alternative which I can use both client builder and 'app' expression queries?

Hi @bensagi thanks for reaching out to us via this GitHub issue.  @srnagar could you please follow up?

@bensagi thanks for reaching out. The feature to query Log Analytics based on appId will be deprecated. So, azure-monitor-query library does not support querying based on appId. Currently, we only support querying based on workspaceId.  We'll also add support for querying based on resourceId in our April release (tentative timeline).

thank you for the response.
my problem with the workspaceId is that the workspace with its metrics must be configured in advance, while the logs by AppId is not (i am querying the requests table).
will the querying based on resourceId will provide access to this table?


adding Day1 support documentation

/cc @qbarrand

Codecov Report

Merging #648 (accc13b) into main (7f79ad1) will not change coverage.
The diff coverage is n/a.

:exclamation: Your organization is not using the GitHub App Integration. As a result you may experience degraded service beginning May 15th. Please install the Github App Integration for your organization. Read more.
@@           Coverage Diff           @@
##             main     #648   +/-   ##
=======================================
  Coverage   79.26%   79.26%
=======================================
  Files          39       39
  Lines        3568     3568
=======================================
  Hits         2828     2828
  Misses        624      624
  Partials      116      116

/lgtm


The dashboard often does not display data

Please answer these questions before submitting your issue.

Why do you submit this issue?
[ ] Question or discussion
[ ] Bug
[ ] Requirement
[ ] Feature or performance improvement

Question

What do you want to know?

Bug

Which version of SkyWalking, OS, and JRE?
8.20，centos7，jdk8
What happened?
The entire dashboard often does not display data, but the link tracking data is normal, and OAP has no abnormal error information. In the 14 node es cluster I used, the CPU of most nodes is about 70%. The average QPS of the ES cluster is 30000-40000, and occasionally the peak value reaches 100000. Trace index has a large amount of data. I set 28 Shards. The amount of data in other metric indexes is very small, so 2shard is set. Is this reasonable? What's the reason why we can't collect metric data?

Requirement or improvement

Please describe your requirements or improvement suggestions.

the CPU of most nodes is about 70%.

This clearly shows you are over loaded. 70% CPU used is not reasonable for any case, And why your QPS is so high?

the CPU of most nodes is about 70%.

This clearly shows you are over loaded. 70% CPU used is not reasonable for any case, And why your QPS is so high?
We have access to about 1000 applications, and have been reporting data constantly, resulting in frequent es writing

Attached is a monitoring chart of ES cluster

Do you have self-observability of SkyWalking? It provides the details of data insert/update performance.
To be honest, your CPU usage has shown clearly, your ElasticSearch is over loaded.


Added item search in stash

This PR adds item search functionality. Pressing the new green sub-button simulates Ctrl+F & types the item name. This automatically selects and fills the search box if a stash tab is currently open.

Might render issue #10 obsolete.

Nice!! I'll take a look in 5m

What a great idea!!

Nice job man! Quick and simple solution!

I pushed your code to master with the changes I was talking about <3
Thanks alot dude!!!

Very cool!


Windows 8.1 projects with rangeslider do not compile

Please repro with the previously submitted project
Make the Windows 8.1. project the current project and build. You will get these build errors:
The type or namespace name 'ExportRendererAttribute' does not exist in the namespace 'Xamarin.Forms' (are you missing an assembly reference?)
The type or namespace name 'ExportRenderer' does not exist in the namespace 'Xamarin.Forms' (are you missing an assembly reference?)
BR PV

Fixed in https://github.com/halkar/xamarin-range-slider/pull/54


Release version 0.0.18

Codecov Report
Patch and project coverage have no change.

Comparison is base (5d158ef) 100.00% compared to head (69e292d) 100.00%.

Additional details and impacted files
@@            Coverage Diff            @@
##              main      #227   +/-   ##
=========================================
  Coverage   100.00%   100.00%
=========================================
  Files           40        40
  Lines         1589      1589
  Branches       276       276
=========================================
  Hits          1589      1589

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


Typescript compile with tsc takes long time.

Hi,
I have a storybook project with MUI 5 and React 18. There are almost 750 typescript files.
When I run tsc command, it takes almost 20-25 minutes even I exclude node_modules in tsconfig.json.
I previously used React 16 and Material UI 4 and it took only 2-3 minutes. After I upgraded to React 18 and MUI 5, I am facing this issue.

I got massive performance gain by using babel and/or swc for compiling ts and typechecking with ForkTsCheckerWebpackPlugin instead of using tsc.

@wangmartin616 can you do a reproduction for us? Many things could be the reason for this, not necessarily related to Material UI. I would recommend running tsc --generateTrace trace --incremental false and uploading the trace.json file from this new folder in about://tracing/ to investigate where the biggest time is spent. You can read more about it here: https://github.com/microsoft/TypeScript/wiki/Performance-Tracing


bugfix: fix set diskquota failed without quota id

Ⅰ. Describe what this PR did
fix set disk quota failed without set quota id.
TestCase: TestRunWithDiskQuota failed.
Ⅱ. Does this pull request fix one issue?

Ⅲ. Describe how you did it
Ⅳ. Describe how to verify it
Ⅴ. Special notes for reviews
Signed-off-by: Rudy Zhang<EMAIL_ADDRESS>

Codecov Report

Merging #1136 into master will increase coverage by 0.13%.
The diff coverage is 0%.


Enable ServiceRegirary validation

This is release-1.0 equivalent of #9455

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by:
To fully approve this pull request, please assign additional approvers.
We suggest the following additional approver: ozevren
If they are not already assigned, you can assign the PR to them by writing /assign @ozevren in a comment when ready.
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

install/kubernetes/helm/istio/charts/galley/OWNERS

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@frankbu , can you cherry-pick this change into release-1.1 branch as well?

@frankbu: The following test failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/e2e-bookInfoTests-v1alpha3.sh
1d7db9bf7a0c3f4c472010e73f88995e1d47a18f
link
/test e2e-bookInfoTests-envoyv2-v1alpha3

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.


Build error

I ain't able to do with this and the file is not building while running 'react-native run-android'. I have tried both the ways of creating new and with existing one. Anyone here help to fix it.
Thanks in advance.

What is the received error? I know there are some issues with the current release of eosjs on Android prod environment.

I cloned and make the commands. After adding,
subprojects {
afterEvaluate {project ->
if (project.hasProperty("android")) {
android {
compileSdkVersion 27
buildToolsVersion '27.0.0'
}
}
}
}
this commands in the build.gradle and ran the ./gradlew ...
At last, I got the result.
Thanks...


index.mjs is missing in the published package

Hi,
I'm using @prerender/prerender in a .mjs file, and I got the error Unable to resolve path to module '@prerenderer/prerenderer'.
The cause is it tries to look out index.mjs as specified in exports.import in package.json, but there is no such file, only files: ["dist", "types"] specified in package.json. I think the index.mjs should be added into it.

Indeed, thanks for catching that
I just released a new version with the fix


[CHANGELOG] Update to 2020.06.15

Update CHANGELOG with changes since last release

In the next release, the following file should be updated too with the release commit:
toolsrc/VERSION.txt
It is currently still at 2020.02.04
See also: #12263


GetTempoMap() won't recognize first tempo change if it's 120 bpm

If a midi file has a tempo map, and the first tempo registered is 120bpm GetTempoMap() will just skip it. If you change the first tempo to anything but 120bpm it will recognize it.
Attached is a midi that you can reproduce the issue.
test-tempomap-start-120bpm.mid.zip

Hi,
First of all, let me explain what tempo map is. For example, we have following track chunk with events:
   120 120 140 140 140 120 120 130 130
    |   |   |   |   |   |   |   |   |
[...A...B...C...D...E...F...G...H...I...]

 > > time > >

where A, B and so on are Set Tempo events with corresponding BPM (written above the letters). For this sequence of MIDI events tempo map will be:
               120 120 140 140 140 120 120 130 130
                |   |   |   |   |   |   |   |   |
events      [...A...B...C...D...E...F...G...H...I...]
                        |           |       |
                       140         120     130
                        |           |       |
tempo map   [           +           +       +       ]

where + means tempo change point.
So as you can see tempo map doesn't reflect original MIDI events. Tempo map holds real tempo changes. Default tempo is 120 BPM by MIDI specifications so there is no need to hold first two tempo "changes" because tempo is not changed in fact. Any repeated values are ignored.
Tempo map is for holding tempo changes, not Set Tempo events.
So the behavior you've encountered is absolutely correct. It's how tempo map works.

@juancabrera Do you have any questions or the issue can be closed?

@melanchall it does makes sense and thank you so much for the detailed explanation!


Permission denied .config/configstore/bower-github.json - magic formula does not work!

Hi, I have exactly the same issue as #2262 , but the magic command that solved the problem for everyone does not work for me...
I even tried chmod 777 the file, and run as root: access denied.
Can you help me please?

It's not easy to to fix such issue by discussing it. You'd need to find someone to help you on debug this and fix it on your computer. chmod and running as root should fix it, I cannot tell why it's not working


Avoid instantiation of Set[String]

Fix https://github.com/sphereio/sphere-scala-libs/issues/86

👍


Feature/saved filters api

added code to save filter searches

@KarenAJ I didn't get a chance to add tests for the saved filters api. They should look very similar to the interest lists if you can add the rest when you get time. I wrote one test for creating saved filters; we need some for: editing owned, viewing owned, viewing all, deleting owned.


GH-37702: [Java] Add vector validation consistent with C++

Rationale for this change
Make vector validation code more consistent with C++. Add missing checks and have the entry point
be the same so that the code is easier to read/write when working with both languages.
What changes are included in this PR?
Make vector validation more consistent with Array::Validate() in C++:

Add validate() and validateFull() instance methods to vectors.
Validate that VarCharVector and LargeVarCharVector contents are valid UTF-8.
Validate that DecimalVector and Decimal256Vector contents fit within the supplied precision and scale.
Validate that NullVectors contain only nulls.
Validate that FixedSizeBinaryVector values have the correct length.

Are these changes tested?
Yes.
Are there any user-facing changes?
No.

Closes: #37702

The NullVector and FixedSizeBinaryVector checks may not really be valuable. It doesn't look like it's possible to get these vectors in a state where these checks can fail.


update schema.rb

This updates schema.rb so its in line with the current migrations.

Discussed this w. Audrey and verified that the added columns, removed table, etc., are correct.


Update KeyboardLayoutHelper and AppBarWindow

Ah, I forgot about different layout types, so I'm implementing it now...

There is no way to get KLID (keyboard layout ID) from HKL (locale identifier) or current KLIDs list, that's bad. So the only workaround is... switch to every layout and get every KLID for layout type determining. Also we can't get localized keyboard layout names. :(

I did some work a while back attempting this with Cairo. Let me see if I can see what I got locally.

I did some work a while back attempting this with Cairo. Let me see if I can see what I got locally.

@josuave Did you find this by chance?


no matches for kind "CronJob" in v ersion "batch/v1beta1"\n'

Tried deploying with the following -
"""
karpenter = Karpenter(self, "karpenter", cluster=cluster)
    provisioner_spec = {
    'requirements': [{
        'key': 'karpenter.sh/capacity-type',
        'operator': 'In',
        'values': ['spot']
    }],
    'limits': {
        'resources': {
        'cpu': 20
        }
    },
    'provider': {
        'subnetSelector': {
        'Name': 'PublicSubnet*'
        },
        'securityGroupSelector': {
        'aws:eks:cluster-name': cluster.cluster_name

        }
    }
    }

    karpenter.add_provisioner('spot-provisioner',provisioner_spec=provisioner_spec)

"""
Received response status [FAILED] from custom resource. Message returned: Error: b'con
figmap/aws-auth configured\nerror: error retrieving RESTMappings to prune: invalid res
ource batch/v1beta1, Kind=CronJob, Namespaced=true: no matches for kind "CronJob" in v
ersion "batch/v1beta1"\n'
Logs: /aws/lambda/MyEksBlueprintStack-awscdkawseksKu-Handler886CB40B-ni5iL3nrGKLh
at invokeUserFunction (/var/task/framework.js:102:19)
at processTicksAndRejections (internal/process/task_queues.js:95:5)
at async onEvent (/var/task/framework.js:22:27)
Kubernetes v1.25
cdk-eks-karpenter>=0.0.27
aws-cdk-lib==2.73.0

I also stumbled across your issue in the CDK repo, which contains more complete example. FWIW I believe that https://github.com/aws/aws-cdk/issues/24580 reflects your issue.
Could you try specifying the @aws-cdk/lambda-layer-kubectl-vXX as described in this comment? The integration test for this repository does that to mitigate similar issue, see here and here.

Yes. That seems to be a likely issue, I will try out the documented approaches. Thanks for prompt response on this.
Closing this since its not related to cdk-eks-karpenter


Call911

Congrats!


Add support for "native" packages that only expose type signatures without implementation

Problem Statement
There are certain operations that are not possible or not efficient to express using the Morphir IR. The most basic example are the SDK functions like adding two integers. We need to be able to refer to those functions without having to implement them in the model. Currently the only such package is the SDK and it's hard-coded as a dependency in every Morphir project but that solution doesn't scale to the situation where you need more domain specific native packages.
Solution
The proposed solution is to support creating native packages where the frontend will skip the body of each function and generate only the specification. These packages can be used as a dependency in other projects but cannot be used as a source for code generation. For these packages we use small adapter libraries that implement the functionality using built-in functions in the target language/platform (https://github.com/finos/morphir-jvm/tree/master/morphir/sdk/core/src/morphir/sdk is a good example of that).
While they cannot be used as a source for code generation other non-native libraries can refer to them and when they are generated into a target platform the references to the native functions will be generated.
Implementation Details
The most straightforward implementations is to:

[ ] Add a new type of distribution that is just a Package.Specification instead of a Package.Definition: https://github.com/finos/morphir-elm/blob/ff658d9164060e2e64fa2463b639795877983dd1/src/Morphir/IR/Distribution.elm#L45-L46
[ ] Add a new option to the frontend to generate a native package by adding an optional native flag to the package info: https://github.com/finos/morphir-elm/blob/ff658d9164060e2e64fa2463b639795877983dd1/src/Morphir/Elm/Frontend.elm#L82-L85
[ ] Add the ability to generate a Specification instead of a Definition in the frontend when the native flag is set.
[ ] Report error if a native distribution is passed to a backend or visualization.

I feel that a Library distribution should also include a version.


While installing in dev env, it requires symfony/stopwatch

While running composer i in dev env, it requires symfony/stopwatch package to be installed. But this package is redunant in my case :(
Executing script cache:clear [KO]
 [KO]
Script cache:clear returned with error code 1
!!
!!  In CheckExceptionOnInvalidReferenceBehaviorPass.php line 116:
!!
!!    The service "debug.Rekalogika\Mapper\Transformer\Implementation\NullToNullT
!!    ransformer" has a dependency on a non-existent service "debug.stopwatch".
!!
!!
!!
Script @auto-scripts was called via post-install-cmd

Package version: 1.9.3

It should be fixed in https://github.com/rekalogika/mapper/pull/207 and v1.9.4. Thank you for your report.


waffle.io Badge

Merge this to receive a badge indicating the number of issues in the ready column on your waffle.io board at https://waffle.io/takeo-asai/typescript-starter
This was requested by a real person (user takeo-asai) on waffle.io, we're not trying to spam you.

Merge waffle.io Badge


Support files.upload and users.setPhoto

Support the files.upload api method.

We could pull in a multipart dependency with a file_upload feature flag so that users can opt into support or not.

Updating this PR to also include adding support for users.setPhoto, as it is unsupported for the same reason.

files.upload can still be used through the content field even without multi-part upload. The codegen for it works fine so maybe it's better to have something than nothing.

files.upload can still be used through the content field even without multi-part upload. The codegen for it works fine so maybe it's better to have something than nothing.

I've been doing this for a while but now that it broke, I realise its downside: you're limited in URI size so you can only upload quite small files.


Warnings displayed twice

Hello,
Thanks for this helpful plugin, I have an issue which is annoying but not severe at all.
When I build my project with webpack, I have every warnings displayed twice:
WARNING in src/components/aw-components/aw-accordion/aw-accordion.scss

WARNING in src/components/aw-components/aw-input-slider/aw-input-slider.scss

WARNING in src/components/aw-components/aw-menu/sidebar/aw-navigator-sidebar-menu.scss

WARNING in src/components/aw-tour-guide/aw-tour-guide.scss

WARNING in src/containers/app-content/app-content.scss

WARNING in src/styles/_components/_viewport.scss

WARNING in src/views/edit/edit-view.scss

WARNING in src/views/live/live-view.scss

WARNING in src/views/live/sources/inputs/input/input-list-view-renderer-medium.scss

WARNING in src/views/live/sources/logos/logos-list-view-item-renderer-medium.scss
Child html-webpack-plugin for "index.html":
         Asset    Size  Chunks       Chunk Names
    index.html  552 kB       0

    WARNING in src/components/aw-components/aw-accordion/aw-accordion.scss

    WARNING in src/components/aw-components/aw-input-slider/aw-input-slider.scss

    WARNING in src/components/aw-components/aw-menu/sidebar/aw-navigator-sidebar-menu.scss

    WARNING in src/components/aw-tour-guide/aw-tour-guide.scss

    WARNING in src/containers/app-content/app-content.scss

    WARNING in src/styles/_components/_viewport.scss

    WARNING in src/views/edit/edit-view.scss

    WARNING in src/views/live/live-view.scss

    WARNING in src/views/live/sources/inputs/input/input-list-view-renderer-medium.scss

    WARNING in src/views/live/sources/logos/logos-list-view-item-renderer-medium.scss
webpack: bundle is now VALID.

Does it have any link with this issue?
Here is my config:
 Linter Options
options:
  # Cache config
  cache-config: true
  # Set the formatter to 'html'
  formatter: html
# Rule Configuration
rules:
  # Extends
  placeholder-in-extend: 0

  # Line spacing
  empty-line-between-blocks:
    - 1
    -
      allow-single-line-rulesets: false

  # Disallows
  no-combinators: 1
  no-duplicate-properties:
    - 1
    -
      exclude:
        - src
  no-ids: 0
  no-important: 0
  no-qualifying-elements:
    - 1
    -
      allow-element-with-attribute: true
  property-units:
    - 1
    -
      global: ['em', 'rem', '%', 'px', 's', 'ms']

  # Nesting
  force-attribute-nesting: 0
  force-pseudo-nesting: 0

  # Name Formats
  class-name-format:
    - 1
    -
      allow-leading-underscore: false
      convention: hyphenatedbem
      convention-explanation: 'Class must contain only lowercase letters, underscores and hyphens'
  function-name-format:
    - 1
    -
      allow-leading-underscore: false
  id-name-format:
    - 1
    -
      allow-leading-underscore: false
      convention: camelcase
      convention-explanation: 'IDs must be in camelCase'
  mixin-name-format:
    - 1
    -
      allow-leading-underscore: false
  placeholder-name-format:
    - 1
    -
      allow-leading-underscore: false
  variable-name-format:
    - 1
    -
      allow-leading-underscore: false

  # Style Guide
  brace-style:
    - 1
    -
      allow-single-line: false
  leading-zero:
    - 1
    -
      include: true
  property-sort-order: 0
  variable-for-property:
    - 1
    -
      properties:
        - 'margin'
        - 'padding'

And the sasslint-webpack-plugin configuration:
if (__DEV__) {
  webpackConfig.plugins.push(
    new SassLintPlugin({
      context: 'src',
      ignorePlugins: ['extract-text-webpack-plugin'],
      glob: '**/*.scss'
    })
  )
}

Note: We started the project from React-Redux Starter Kit by davezuko.
Any idea? Maybe I did something wrong… I can't find where I screwed up :/
Thanks!

So, I tried to change compilation.plugin('seal', …) to compilation.plugin('done', …) in index.js, but it doesn't resolve the issue.
I looked into closed issues and found this one about duplicate lint. As far as I understand, issue may be due to extract-text-webpack-plugin, but I added it to ignored plugins so I'm not sure to understand :/
I added to ignorePlugins key each and every plugin which is used in project:
webpackConfig.plugins.push(
  new SassLintPlugin({
    context: 'src',
    ignorePlugins: [
      'extract-text-webpack-plugin',
      'html-webpack-plugin',
      'transform-runtime',
      'transform-decorators-legacy',
      'react-transform',
      'transform-react-remove-prop-types',
      'transform-react-constant-elements',
      'react-transform-hmr',
      'react-transform-catch-errors'
    ],
    glob: '**/*.scss'
  })
)

But I still have all warnings duplicate… Will dig into it today again.

Found it…
First I logged options.ignorePlugins: it's OK. Then I logged compilation.name and got two different results:
[ 'extract-text-webpack-plugin',
  'html-webpack-plugin' ]
client

[ 'extract-text-webpack-plugin',
  'html-webpack-plugin' ]
html-webpack-plugin for "index.html"

The check is options.ignorePlugins.indexOf(compilation.name) > -1, so, in this case, yes: html-webpack-plugin for "index.html" is not found into options.ignorePlugins!
I don't know why for "index.html" is appended, but for now I have to do like so to make it work:
webpackConfig.plugins.push(
  new SassLintPlugin({
    context: 'src',
    ignorePlugins: [
      'extract-text-webpack-plugin',
      'html-webpack-plugin for "index.html"'
    ],
    glob: '**/*.scss'
  })
)


New version: Mozilla.Firefox.ESR.te version 128.4.0

Created by 🥟 Dumplings.
Microsoft Reviewers: Open in CodeFlow

@wingetbot run


Helium isn't moveable on screen

I can't move the Helium window around on my desktop. I can resize but not drag it. Any ideas please?
MAC OS Ventura 13.2.1

Update: it only moves if you hold pointer over "Above all else', you can't just drag the window around from any point.

Hola Santiago el programa funciona bárbaro pero al actualizar Sonoma ahora al abrirlo se reinicia constantemente Sonomo 14.2.1 es un Mac book pro m2 pro
he3.txt

Hello Santiago the program works barbaric but when you update Sonoma now when you open it it constantly restarts Sonomo 14.2.1 is a Mac book pro m2 pro

Hi, not sure what you're meaning; btw windows can be moved if a titlebar was made visible or by holding down CMND during drag of window contents.

I suggest the help text as window movement has not changed.

Directly does not open the program uninstall it and install it SRL's from the Apple store but when double-clicking as I did before it does not open and the window comes out to send the error information that is the txt that I sent you


Board is not visible as the impersonated device

Hi,
I'm experimenting with BIAS using the CYW920819EVB-02 and experiencing some difficulties I cannot explain.
First off, the boards firmware got patched so a slight modification to the internalblue was needed (https://github.com/seemoo-lab/internalblue/issues/44).
Instead of seeing the LMP packets, I see packets labeled as HCI_H4, with an description Sent Unknown HCI paket type 0x07, might this signalize that something does not work as intended to?
Finally, I'm able to patch the ROM of the dev-board, and also send the impersonation info. However, after the bias.py script finishes, there is no difference on how do the other devices see the board (name, MAC address). When I run the hciconfig hci1 name command, the name of the interface is correct, as in the impersonation file, but the MAC address is wrong. If I reload the hci device (hciconfig hci1 reset), new MAC shows up, but the name gets replaced by machine (host) name. If I check from a different machine I see the updated MA, but incorrect name as well.
Should the "impersonation results" be visible immediately after loading the info to board?

Hi,
For the traffic, you need to install a Wireshark plugin to dissect LMP packets sent over H4. If you Google for it there are several plugin versions and you should install the version compatible with your version of Wireshark.
After running bias.py you should see spoofed info (e.g., BT address and name) from the victim device. From your laptop, you will keep seeing unmodified values because the script is patching the controller (BT firmware) without restarting the host (Linux OS)


Borders for widgets

Separated from #174.
@reaper12: "If widgets can set Border，it's perfect."

@reaper12: Could you please elaborate on what would you like to have?

Button、TextView、EditView may be have,just like this

Borders can be easily added using shapes and background drawable. See: http://stackoverflow.com/questions/6698927/border-in-shape-xml
That's why I don't think Carbon needs another mechanism for that. Also, borders have no use in Material Design.


kubeconfig requirements and limitations in roles

Opening this issue to discuss and understand the limitations/requirements on kubeconfig for k8s related roles.
Problem
It has been expressed that some environments have limitations on the use of ENV variables, preventing them to use roles that require  KUBECONFIG ENV var to be used in a role.
Proposal
We would like to use this issue to understand any kind of limitation or requirement on the use of k8s related roles to make them more accessible to all. Please document any limitation/requirement in this issue.

cc: @sshnaidm

Given that we'll probably often be using community.kubernetes or one day kubernetes.core, we should come up with some idiom that makes it easy for our roles to use that collection, and it may be prudent to make sure our way of receiving credentials matches the various ways that collection works.
In the sideload_kernel role, for example, I came up with this:

https://github.com/redhatci/ansible-collection-redhatci-ocp/blob/main/roles/sideload_kernel/README.md#authentication

Basically my role expects a variable called k8s_auth which is expected to be a dictionary whith values that correspond to the individual environment variables that the underlying community.kubernetes collection expects.
The reason for this kind of design is that it is hard to pass environment variables directly to roles, but not hard for a role to take a variable and put it in the environment any time we call into that collection.  For an example, see this:

https://github.com/redhatci/ansible-collection-redhatci-ocp/blob/main/roles/sideload_kernel/tasks/main.yml#L7-L13

The reason for this kind of design is that it is hard to pass environment variables directly to roles, but not hard for a role to take a variable and put it in the environment any time we call into that collection.

It is possible to pass ENV to a role. I found it is the same amount of effort to define ENV or var in a role, but I see some advantages with the ENV.
As a variable:
- name: Role Foo
  vars:
    k8s_auth:
      K8S_AUTH_KUBECONFIG: /var/lib/clusterauth/kubeconfig
  ansible.builtin.include_role:
    name: redhatci.ocp.foo

It requires all the task that rely on the variable to use environment: "{{ k8s_auth }}"
As an environment variable:
- name: Role Foo
  ansible.builtin.include_role:
    name: redhatci.ocp.foo
    apply:
      environment:
        K8S_AUTH_KUBECONFIG: /var/lib/clusterauth/kubeconfig

No need to define environment: on each task.

I'd avoid as possible all environment related stuff, since it wasn't supported historically on all modules and supposed to work mostly for shell/command stuff. More Ansible-like way is to specify explicit variables and use them in a defined precedence, what is good for bash is not always good for Ansible.
The way I would see it working is:

To have an explicit kubeconfig variable for each role separately, which will give a flexibility to use same role in same playbook for different clusters, for example guest cluster on HCP.

for example role acm_setup has acm_setup_kubeconfig: ..., role hcp_install has hcp_install_kubeconfig etc.
in this case if you run all roles for one cluster only, just define the same variable in playbook for kubeconfig and pass it to all roles.

- hosts: localhost
  vars:
    my_only_kubeconfig: /var/lib/kube...
  tasks:

    - name: Role Foo
      ansible.builtin.include_role:
        name: redhatci.ocp.acm_setup
      vars:
        acm_setup_kubeconfig: "{{ my_only_kubeconfig }}"

and different kubeconfigs:
- hosts: localhost
  tasks:

    - name: Role Foo
      ansible.builtin.include_role:
        name: redhatci.ocp.hcp_install
      vars:
        hcp_install_kubeconfig: "{{ host_kubeconfig }}"

    - name: Role Foo
      ansible.builtin.include_role:
        name: redhatci.ocp.something_else
      vars:
        something_else_kubeconfig: "{{ guest_kubeconfig }}"

When you use environment variables you don't have control on what's going on. Env vars can be set in shell where you run Ansible, can be set in shell on your controller host, or can be NOT set there. The can come from bashrc, defaults in bash defaults on a machine, they can change by users easily etc etc. It's not an Ansible thing, it's a bash thing. And when you don't control thing you have a bigger chance to run something wrong or on wrong cluster and it opens doors for more breakages. Explicit setting variables gives you a controlled and it means reliable environment. I would eliminate all env var usages in roles and define them as a bad practice.
While it's still there we can avoid breaking current code by discovering variable before in tasks and set if our *_kubeconfig arguments are empty or not defined. For example:

- set_fact:
    env_kubeconfig: "{{ lookup('env', 'KUBECONFIG') }}"

- name: Kubernetes task
  kuberneres.core.k8s:
    kubeconfig: "{{ hcp_install_kubeconfig | default(env_kubeconfig, true) }}"
    ....

while true in default will cover an empty hcp_install_kubeconfig as well.
This way people can continue to use current code while we can set a deprecation message or whatever and change it in future.

Please see the patch for olm operator role: #305

I just went back to the docs for https://galaxy.ansible.com/ui/repo/published/kubernetes/core/content/module/k8s/ and I'm scratching my head to figure out why I even had to use the environment at all - I see that most of the roles there accept a kubeconfig variable which would be the path to the kubeconfig file - No environment needed at all.
So given that we can just pass variables around and not need the environment, the question would be whether we need to support alternate authentication mechanisms or just kubeconfig...

When you use environment variables you don't have control on what's going on. Env vars can be set in shell where you run Ansible, can be set in shell on your controller host, or can be NOT set there. The can come from bashrc, defaults in bash defaults on a machine, they can change by users easily etc etc. It's not an Ansible thing, it's a bash thing. And when you don't control thing you have a bigger chance to run something wrong or on wrong cluster and it opens doors for more breakages. Explicit setting variables gives you a controlled and it means reliable environment. I would eliminate all env var usages in roles and define them as a bad practice.

Except that's not what is happening here? we're not relying on environment variables to exist, we're asking you to explicitly set the environment variable to fit your use case when including the role, which is (in the case of KUBECONFIG) a standard env var used everywhere in the k8s ecosystem. It is true you can munge the env var in a script and cause unintended side effects, just the same if you munge the path to the provided kubeconfig file.
Having a kubeconfig extra variable on every role that uses the *.k8s modules provides no benefit in the majority of the cases, I can only see it being useful when your role is expected to work with several different KC files, in which case you'd adjust that 1 role to accept X number of KC file paths.

@thekad my point is that environment variables is not "ansible way" to put variables, because they can easily be changed outside of Ansible, and not controlled by it. Setting env var in playbook is hack-ish and should not be used in a regular deployments. Env vars are for shell, not for Ansible. Actually I think I pretty much covered it in my response above.
Providing kubeconfig is an Ansible way and allows strict control and configuration for each task in each role, what we want to achieve usually. In addition it allows not only your team to use this role, but any other what is actually the purpose of this repository if I understand correctly, @fredericlepied ?
Using KUBECONFIG is good for bash, but not so generally spread as in your code, for example in Ansible modules there is another env var that controls kubeconfig - K8S_AUTH_KUBECONFIG, so we enter here the door of hell of env vars. :smiley:
And exactly like you mentioned it allows to provide different kubeconfigs for different roles, what is very common in our workflows and is actually a side-effect of a good planned and designed Ansible code with enough flexibility to be used by various groups and for various use cases.

For further information, this is a PR @sshnaidm created to implement his view of how to handle the k8s credentials.
The good thing of this approach is that it allows for both, passing the credentials as an Ansible variable and as an env var.
The change looks compatible with the DCI tools, so it'd be a matter of agreeing on whether we should keep the roles for as many use cases as possible or if it's better to agree on a limited set of good practices.

To have an explicit kubeconfig variable for each role separately, which will give a flexibility to use same role in same playbook for different clusters, for example guest cluster on HCP.

Sorry, but I'm not seeing how flexibility is added through variables and not with ENV vars, they seem to me equally flexible, in both cases the playbook consuming a role specifies the variable to use in the role.
This is an example as yours, but with ENV vars, in both cases the playbook has the control of what variable is going, without the need to specify every single task in the role to use kubeconfig.
- hosts: localhost
  tasks:

    - name: Role Foo
      ansible.builtin.include_role:
        name: redhatci.ocp.hcp_install
      apply:
        environment:
          KUBECONFIG: "{{ host_kubeconfig }}"

    - name: Role Foo
      ansible.builtin.include_role:
        name: redhatci.ocp.something_else
      apply:
        environment:
          KUBECONFIG: "{{ guest_kubeconfig }}"

When you use environment variables you don't have control on what's going on.

I think the above proves that you have control on the ENV vars that you care, granted you might not control all of them, but is not about random or uncontrolled vars, is about those you know your role requires or uses.

While it's still there we can avoid breaking current code by discovering variable before in tasks and set if our *_kubeconfig

This is the beauty about using this particular env var, you avoid repeating yourself as this is done by the lib used by the k8s modules.
Additionally, as @thekad mentioned the advantage of KUBECONFIG is to be consumed by the k8s ecosystem, specifically tooling.
What I would like to understand better is how this ENV approach limits your use cases, do you have a concrete example where the current implementation of the roles are not allowing your to consume them? Can we narrow to a specific role? For instance olm_operator?
Thanks!

Here's my 2 cents.
Using passing kubeconfig directly into the modules allows the person looking at that task to know how the auth is getting set, where as because the env version is not present in the role.
I personally like being able to see things like that but that personal taste.


How to call the sidebar component from the layout component?

Unable to call the sidebar component from the layout component..

demo needed for this, ideally also with react-router

yes demo needed..
but you can also try sth like this
<button onClick={this.onSetSidebarOpen}>Open</button>

Your own component is responsible for rendering both sidebar and main content. So for a demo have a look at the React state demo: http://facebook.github.io/react/#timerExample


default_content_of_about

initially, "mission" button was active in "about" section as default but the content was something random and also there was no "learn more us" in default setting....
https://github.com/user-attachments/assets/91938a52-5f82-4582-9c26-791188e1541d
https://github.com/user-attachments/assets/b859977a-a3c1-4a62-85ce-6c2c02210a9b
Now, as default :
https://github.com/user-attachments/assets/36d7dff9-67b2-4f6c-aad4-d2cc2bb73e49
https://github.com/user-attachments/assets/8a8c768b-fc7b-4a01-8a7e-740194d0c05c
And a line in home was also disoriented, Now it's not.
please merge and give it the tag "Hacktoberfest accepted"

Great contribution to Hacktoberfest'24! 🎉
Please note that this is not in line with our code of conduct. To ensure clarity and proper assignment tracking, please attach the issue number to your PR description. This helps us confirm that the issue is assigned to you.


Backslash ( \ ) issue in Dialog functions for printing a new line.

1. Describe the bug
There is an issue while using Backslash (\) in dialog functions. I have tested it for error, confirmation and message dialog boxes.
Note: For any strange reason the backslash in label does not work just for the first instance of "\". For all other backslashes it works as expected.
2. To Reproduce
Write the following code in Visual Studio Code (Taken from Microsoft Learn: Link)
begin
        Message('App published: Hello world');

        Text := 'ABCDE';
        Number := 12345.678;

        // The backslash indicates a new line.
        // You can concatenate strings using the + operator.
        // You can insert variable values using the % symbol.
        Message(Text000 + Text001 + '%1\' + Text002 + '%2\', Number, Text);
    end;

    var
        Text: Text;
        Number: Decimal;
        Text000: Label 'You can use message windows to display text and numbers: \';
        Text001: Label 'The number: ';
        Text002: Label 'The text: ';

3. Expected behavior: As per documentation of MS Learn.
The message window reads:
You can use message windows to display text and numbers:
The number: 12,345.678
The text: ABCDE
Screenshot:

4. Actual behavior: The first line \ is not working as shown below.
The message window reads:
You can use message windows to display text and numbers:The number: 12,345.678
The text: ABCDE
Screenshot:

5. Versions:

AL Language: 10.4.747197
Visual Studio Code: 1.74.3
Business Central: DK Business Central 21.4 (Platform 21.0.52534.53320 + Application 21.4.52563.52602)
List of Visual Studio Code extensions that you have installed: AL Language, AZ AL Dev Tools, waldo's CRLS AL Language.

I am encountering this issue since last Thursday, Feb 16, 2023.
You are right, just first backslash is being ignored for a strange reason, perhaps a bug because it was working fine before.

Hey @all,
we've encountered this issue too and reported it to MS via a support ticket.
Theyre going to fix this in the next rollup. Build: 21.0.53184.0

I am closing this bug since it is related to the runtime and a support ticket was already raised.
Thanks @Yu-457


What's missing for 1.0.0 release?

What still needs to be done for 1.0.0 release?
Most detekt components are fairly mature. What a 1.0.0 release means is the API and configuration DSLs have to be locked down (see #1201 and semver.org).
Probably best thing is for @arturbosch @vanniktech @Mauin @schalkms (sorry if I missed anyone, just thinking about those who are heavily active) to:

identify features missing for a 1.0 release
confirm which components form part of the public API (detekt-api, detekt-cli, Gradle, others?)
review the current API, create an issue for anything that needs adding/changing/removing
track issues against a milestone or in https://github.com/arturbosch/detekt/blob/master/ROADMAP.md
Use KDoc to document detekt-api
publish documentation for public API (mostly done, except detekt-api)
freeze public API
anything else?

detekt is seeing wider adoption. A 1.0.0 release and adopting semver would be a great next step in terms of the tool's maturity.

I personally don't feel like Detekt is ready to be called 1.0.0. There are many false positives and open bugs/improvement tickets. Even nowadays APIs are breaking rather often. Probably because more people want it to be 1.0.0 and looking for inconsistencies - which is a good thing!
I suggest that we all go over all of the public API and try to get rid of all of its flaws and then give it some time to rest and gather feedback.
I'd also question certain features and their reason to exist. Like wrapping ktlint over detekt.

I think we're mostly thinking along the same lines.
Rule updates will always be required. New rules can be added in minor versions and false positives/bugs fixed in a patch version.
This issue isn't intended to say "call it 1.0.0, it's done", but to identity those key issues that are still open and to trigger a review of the public API as you said to prepare for a 1.0.0 release.

I mostly agree with @vanniktech
However, I wouldn't want to remove the ktlint integration in detekt. I think the documentation should be more clear here.
I don't think there that many problems with the ruleset. Most of them are feature requests or related to type and symbol solving, which detekt lacks at the moment.

Also thanks for bringing that this topic to light @3flex

I think the target should be to get detekt in a flexible enough state to run successfully on the KotlinConf Schedule Application. detekt should work with reasonable defaults doing nothing more than adding this to the root build.gradle file:
plugins {
  id("io.gitlab.arturbosch.detekt") version "1.0.0.RC9.2"
}

If it works properly in that project, it should work anywhere (it's a Kotlin Multiplatform Project with JVM, JS, Android and iOS targets).

Hey sorry for a late response,
here is a list of things I consider needs to be done for 1.0.0:

issues in RC12 are mostly done, needs review+merge
under the 1.0.0 milestone I have tagged one open issue: #516 - Validate Configuration file before using it

I think this one is critical as it has bitten some users already

#1248 this I consider as a must

mostly users copy paste the default config and make changes, a flag like --use-default-config-as-baseline could help here to have the yaml config being small
--fail-fast could also be a cli flag
both changes need better documentation as they are two different use cases:

use the default config as baseline (like ~40% rules are active) and override small parts
active every rule (100%) and override small parts

I consider detekt-api, public parts of detekt-cli like CliArgs, the Baseline and YamlConfig and the gradle dsl / detekt extension as public api

KDoc for every file in detekt-api + UndocumentedClass/Function=active

#1338 is a nice have between releases, but mandatory for 1.0.0 but shortly after is okay too
check detekt on KotlinConf Schedule Application as @3flex said


IDF v3.3: idf.py --help reports defconfig action, but it is not a recognised option (IDFGH-3050)

I am using ESP-IDF v3.3.
When displaying idf.py --help, the option defconfig is shown as an available action:
$ idf.py --help
usage: idf.py [-h] [-p PORT] [-b BAUD] [-C PROJECT_DIR] [-B BUILD_DIR]
              [-G {Ninja,Unix Makefiles}] [-n] [-v]
              [-D DEFINE_CACHE_ENTRY [DEFINE_CACHE_ENTRY ...]] [--no-ccache]
              {all,build,clean,fullclean,reconfigure,menuconfig,defconfig,confserver,size,size-components,size-files,bootloader,bootloader-clean,bootloader-flash,app,app-flash,efuse_common_table,efuse_custom_table,show_efuse_table,partition_table,partition_table-flash,flash,erase_flash,monitor,erase_otadata,read_otadata}
              [{all,build,clean,fullclean,reconfigure,menuconfig,defconfig,confserver,size,size-components,size-files,bootloader,bootloader-clean,bootloader-flash,app,app-flash,efuse_common_table,efuse_custom_table,show_efuse_table,partition_table,partition_table-flash,flash,erase_flash,monitor,erase_otadata,read_otadata} ...]

ESP-IDF build management tool

positional arguments:
  {all,build,clean,fullclean,reconfigure,menuconfig,defconfig,confserver,size,size-components,size-files,bootloader,bootloader-clean,bootloader-flash,app,app-flash,efuse_common_table,efuse_custom_table,show_efuse_table,partition_table,partition_table-flash,flash,erase_flash,monitor,erase_otadata,read_otadata}
                        Actions (build targets or other operations)

However when attempting to use this option:
 $ idf.py defconfig
...
Executing "ninja defconfig"...
ninja: error: unknown target 'defconfig', did you mean 'menuconfig'?
ninja failed with exit code 1

I would expect this option to generate sdkconfig and build/sdkconfig/sdkconfig.h using the default values specified in Kconfig.projbuild and sdkconfig.defaults (if it exists).

Hi @DavidAntliff,
Thanks for reporting this. The defconfig subcommand was removed in v4.0 (see #3965) but the change was not backported to v3.3.
The equivalent command to generate sdkconfig.h from CMake is idf.py reconfigure. This will work the same in ESP-IDF v3.x and v4.x.
We'll update idf.py to either remove this command (which never worked in the CMake Build System Preview) or alias it to reconfigure.

@DavidAntliff Since idf.py defconfig never worked for IDF v3.3 we removed it from the list. If you are ok using reconfigure instead could you please close this issue?
And thank you once again for reporting it!

Happy to use reconfigure :)


Yadis XRDS parser vulnerable to various XML DoS attacks

The Yadis XRDS parsing code is vulnerable to various XML-related DoS attacks.
The offending code is openid.yardis.etxrd.parseXRDS, which relies on the XML library imported by openid.oidutil.importElementTree.  The vulnerabilities one will be exposed to depends on which XML libraries are being used.
See the defusedxml Pypi page for a discussion of the various attacks, as well as the solution (e.g., use defusedxml).  You can also see the issue where this was fixed in the Ruby package.
Since there seems to be no active development on this package, I have no intention of submitting a pull request to fix this issue.  I am simply opening this issue so that others can be aware of the implications of using this package.

This should be fix now.


API detail - User can see raw json on api detail even when he is not …

…able to edit #1145

Can we remove the "cancel" button on the dialog ?


feat(blocking::mpsc): add Receiver::recv(_ref)_timeout methods

Added recv_timeout methods for blocking::mpsc::Receiver/StaticReceiver. It requires a simple change from thread::park to thread::park_timeout & an elapsed time check.
We need this functionality so that our threads can wake up at least once every few seconds to check for control events

@hawkw Any chance of getting this merged?

@utkarshgupta137 whoops, sorry, this one slipped past me. Let me take a look!

@utkarshgupta137 thanks for the PR, happy to merge it once CI passes! are you interested in adding send_timeout methods as well?
Also, we should probably update the README to no longer state that send_timeout methods won't be implemented, if we add them :) https://github.com/hawkw/thingbuf/blob/a0e574050477ee641f056aea6205cde744389ed9/README.md?plain=1#L76-L79

It looks like the loom tests are currently failing because loom's simulated version of std::thread doesn't have a mocked park_timeout function: https://github.com/hawkw/thingbuf/actions/runs/4812666947/jobs/8568203063?pr=75
Let's add #[cfg(not(all(test, loom))] to the recv_timeout methods to fix the compiler errors for loom tests?

@utkarshgupta137 thanks for the PR, happy to merge it once CI passes! are you interested in adding send_timeout methods as well?
Also, we should probably update the README to no longer state that send_timeout methods won't be implemented, if we add them :)
https://github.com/hawkw/thingbuf/blob/a0e574050477ee641f056aea6205cde744389ed9/README.md?plain=1#L76-L79

Sure, I'll try to add them, but let's release this first since I actually need these :)

Sweet! Looking forward to a new release.

Hmm, it looks like the doctests that were added in this PR are not deterministic --- they sometimes fail spuriously (presumably based on OS scheduler behavior): https://github.com/hawkw/thingbuf/actions/runs/4813223393/jobs/8569477594#step:4:194
Can we fix this? I'd prefer to have examples that don't involve multiple threads being scheduled in the right order --- perhaps we can base our examples on std::sync::mpsc's recv_timeout examples?

Hmm, it looks like the doctests that were added in this PR are not deterministic --- they sometimes fail spuriously (presumably based on OS scheduler behavior): https://github.com/hawkw/thingbuf/actions/runs/4813223393/jobs/8569477594#step:4:194
Can we fix this? I'd prefer to have examples that don't involve multiple threads being scheduled in the right order --- perhaps we can base our examples on std::sync::mpsc's recv_timeout examples?

I think just increasing the durations would fix the issue?
Do you mean creating 2 different examples?

Can we fix this? I'd prefer to have examples that don't involve multiple threads being scheduled in the right order --- perhaps we can base our examples on std::sync::mpsc's recv_timeout examples?

Do you mean creating 2 different examples?

Yes, the other thing I would note is that the standard library's examples never actually spawn an additional thread. Instead, it demonstrates the timeout behavior by trying to receive from a channel that will never have a message sent to it. I would kind of prefer to write our examples this way, because it's more deterministic and the doctests should never spuriously fail depending on scheduler behavior.

Can we fix this? I'd prefer to have examples that don't involve multiple threads being scheduled in the right order --- perhaps we can base our examples on std::sync::mpsc's recv_timeout examples?

Do you mean creating 2 different examples?

Yes, the other thing I would note is that the standard library's examples never actually spawn an additional thread. Instead, it demonstrates the timeout behavior by trying to receive from a channel that will never have a message sent to it. I would kind of prefer to write our examples this way, because it's more deterministic and the doctests should never spuriously fail depending on scheduler behavior.

But they're spawning additional threads & depending on the scheduler behavior...
They just have longer durations.
Success

thread::spawn(move || {
    send.send('a').unwrap();
});

assert_eq!(
    recv.recv_timeout(Duration::from_millis(400)),
    Ok('a')
);

Failure:
thread::spawn(move || {
    thread::sleep(Duration::from_millis(800));
    send.send('a').unwrap();
});

assert_eq!(
    recv.recv_timeout(Duration::from_millis(400)),
    Err(mpsc::RecvTimeoutError::Timeout)
);

But they're spawning additional threads & depending on the scheduler behavior...
They just have longer durations.

...yup, you're right, I can't read, apparently. I think increasing the sleep duration to at least twice the timeout is probably sufficient, then!


LICENSE

Hi, would you mind adding a LICENSE file to this project? Thanks!

I'll throw MIT on it tomorrow when I get to a machine I can push from.

Thanks :)


yarn build failing after formula parser upgrade

@zyc9012 yarn build is failing after #532
https://github.com/ruilisi/fortune-sheet/actions/runs/8967287069
It fails with an import error, while in reality the  imported property is being exported. Could you have a look pls? I am also trying to figure out. Also, should release.yml build formula parser first, then core, and then react?

@sanchit3008 Pushed a fix.
However, I member the following part was manually inserted.
git diff 0bc2c6c..HEAD grammar-parser.js
@@ -755,11 +672,6 @@ next:function () {
             if (tempMatch && (!match || tempMatch[0].length > match[0].length)) {
                 match = tempMatch;
                 index = i;
-                const stackLen = stackCache.length
-                if (rules[i] === 8 && match[0].match(NUMONLY) && !(match.input.slice(match[0].length)[0] === ":" || (stackLen > 3 && stackCache[stackLen - 4] === 25 && stackCache[stackLen - 2] === 27))) {
-                  match = false;
-                  continue;
-                }
                 if (this.options.backtrack_lexer) {
                     token = this.test_match(tempMatch, rules[i]);
                     if (token !== false) {

Please double-check if removing this part breaks anything.

is yarn build running for you after this fix? im still getting the same issue.

@sanchit3008 You have to yarn first to build the formula-parser

ah that was stupid of me...it builds on my local machine now. hopefully the release action will run fully now.

I think you need to re-tag v0.19.6

on it

finally it succeeded, thanks for all the help, you are too kind


Build fails due to invalid gzip option -k

What did you do?
Attempt to build Prometheus on a CentOS 7 platform
What did you expect to see?
A successful build. It last worked on version 2.30.3 that I've tested.
What did you see instead? Under which circumstances?
gzip: invalid option -- 'k'
Try `gzip --help' for more information.
>> building binaries
/home/kitchen/recipes/prometheus/tmp-build/bin/promu build --prefix /home/kitchen/recipes/prometheus/tmp-build/src/github.com/prometheus/prometheus
 >   prometheus
# github.com/prometheus/prometheus/web/ui
web/ui/embed.go:21:3: usage: //go:embed pattern...
!! command failed: build -o /home/kitchen/recipes/prometheus/tmp-build/src/github.com/prometheus/prometheus/prometheus -ldflags -X github.com/prometheus/common/version.Version=2.37.0 -X github.com/prometheus/common/version.Revision=b41e0750abf5cc18d8233161560731de05199330 -X github.com/prometheus/common/version.Branch=HEAD -X github.com/prometheus/common/version.BuildUser=kitchen@3460a3706333 -X github.com/prometheus/common/version.BuildDate=20220721-14:47:40  -extldflags '-static' -a -tags netgo,builtinassets github.com/prometheus/prometheus/cmd/prometheus: exit status 2
make: *** [common-build] Error 1

This comes from:
scripts/compress_assets.sh:find static -type f -exec gzip -fk '{}' \; -print0 | xargs -0 -I % echo %.gz | xargs echo //go:embed >> embed.go

It seems when building on CentOS 7, the available gzip version does not include the -k option, which causes the build to fail. Builds should not be host dependent, outside of the Go / Node versions.
System information
CentOS 7
Prometheus version
2.37.0

Prometheus configuration file
N/A

Alertmanager version
N/A

Alertmanager configuration file
N/A

Logs
N/A

Looks like this commit did it https://github.com/prometheus/prometheus/commit/c901ebaf8dd1273de415f8a32617d708c4256683

gzip -k is necessary to speedup subsequent build. You could use our own docker image golang-builder to build prometheus or remove it during our build. However, this is a useful feature to have upstream.

It may be useful for subsequent builds but for those of us that aren't building these on repeat and are still using a still-supported OS, it makes no sense to force us to move to an entirely new build platform because of an option which isn't available everywhere. It's just as easy to add a check to make it compatible with RHEL 7 based build platforms.

Sure, if you want to send a pull request, I'd gladly merge it.

Submitted a PR.


Entity name change results in multiple “Unknown” entities and makes it useless

In release note of latest version this change is mentioned:“Changed filesystem entity name from mountpoint to device name”
This is totally useless for me. Now I have 5 entities with the name ”Unknown” and in the attributes I also do not see the mountpoint that was originally used as entity name. I have to derive from format and disk size which device is which. Names should be understandable by default of course. So I assume that you made some assumptions for this change without validating them.
Can you please explain what the reason for this change was? And why you think this was an improvement?

Mount point in internal OMV mountpoint just containind uuid, which is not recognizable or useful. Not sure what kind of setup you have to get devicename as "Unknown".
I will need to see debug to know whats wrong there.


[FEAT]: Enhance the Sunbird-RC CLI to have a wizard interface

What is the feature request for?
Registry CLI
What problem/inconvenience (if any) will this feature solve?
We should ask questions in the CLI for enabling/disabling authentication, enabling/disabling elastic search, generating public/private keys, enabling and disabling auxillary services that are required for Registry setup.
Describe the feature clearly.
We should ask questions in the CLI for enabling/disabling authentication, enabling/disabling elastic search, generating public/private keys, enabling and disabling auxillary services that are required for Registry setup.

https://github.com/Sunbird-RC/sunbird-rc-core/pull/252


Intermittent failing test TestInsertOrUpdateAsset in services/ticker/internal/tickerdb

The test TestInsertOrUpdateAsset in in the services/ticker/internal/tickerdb package has intermittently failed on CI. It appears to pass locally when executed a few hundred times.
Given that the failure is on time, it's possible time.Now() is playing a role and should be mocked within.
https://circleci.com/gh/stellar/go/7988
--- FAIL: TestInsertOrUpdateAsset (0.43s)
	Error Trace:	queries_asset_test.go:76
	Error:		Not equal:
        	expected: time.Time{wall:0x4f27ac0, ext:63703668822, loc:(*time.Location)(0x12d22e0)}
        	received: time.Time{wall:0x501bd00, ext:63703668822, loc:(*time.Location)(0x12d22e0)}

        	Diff:
        	--- Expected
        	+++ Actual
        	@@ -1,2 +1,2 @@
        	-(time.Time) 2019-09-09 23:33:42.083 +0000 UTC
        	+(time.Time) 2019-09-09 23:33:42.084 +0000 UTC

	Error Trace:	queries_asset_test.go:81
	Error:		Not equal:
        	expected: time.Time{wall:0x4f27ac0, ext:63703668822, loc:(*time.Location)(0x12d22e0)}
        	received: time.Time{wall:0x501bd00, ext:63703668822, loc:(*time.Location)(0x12d22e0)}

        	Diff:
        	--- Expected
        	+++ Actual
        	@@ -1,2 +1,2 @@
        	-(time.Time) 2019-09-09 23:33:42.083 +0000 UTC
        	+(time.Time) 2019-09-09 23:33:42.084 +0000 UTC

FAIL

This is reproducible with certain time.Now()s. I managed to find a time that it reproduces with (see patch below). With this, and other specific times the time returned by postgres will be one millisecond ahead of what the code is expecting.
I believe this is related to lib/pq#227. This may not be fixable though since the pq passes time through to postgres and it gets truncated there.
An example is the time 12:08:50.9419997. Postgres rounds it up to .942 and Go truncate takes it to .941. We can reduce the frequency of these errors by doing what was suggested here https://github.com/lib/pq/issues/227#issuecomment-33869993 and using time.Round instead of time.Truncate, but even that is not a perfect solution because Postgres rounds to even and Go rounds away from zero.
Patch with changes to reproduce
```patch
diff --git a/services/ticker/internal/tickerdb/queries_asset_test.go b/services/ticker/internal/tickerdb/queries_asset_test.go
index b1fcb667..93540867 100644
--- a/services/ticker/internal/tickerdb/queries_asset_test.go
+++ b/services/ticker/internal/tickerdb/queries_asset_test.go
@@ -1,8 +1,10 @@
 package tickerdb
import (

  "reflect"
  "testing"
  "time"

  "unsafe"

  _ "github.com/lib/pq"
  migrate "github.com/rubenv/sql-migrate"

@@ -50,7 +52,20 @@ func TestInsertOrUpdateAsset(t *testing.T) {
require.NoError(t, err)
    // Creating first asset:

  firstTime := time.Now()

  //firstTime := time.Now()

  firstTimeTmpl := &time.Time{}

  {

          firstTimeValue := reflect.ValueOf(firstTimeTmpl).Elem()

          wallField := firstTimeValue.FieldByName("wall")

          reflect.NewAt(wallField.Type(), unsafe.Pointer(wallField.UnsafeAddr())).Elem().SetUint(0xbf5a63f0b825c654)

          extField := firstTimeValue.FieldByName("ext")

          reflect.NewAt(extField.Type(), unsafe.Pointer(extField.UnsafeAddr())).Elem().SetInt(353520401)

          locField := firstTimeValue.FieldByName("loc")

          reflect.NewAt(locField.Type(), unsafe.Pointer(locField.UnsafeAddr())).Elem().Set(reflect.ValueOf(time.Local))

  }

  firstTime := *firstTimeTmpl

  t.Logf("firstTime: %#[1]v %[1]v", firstTime)

  t.Logf("firstTime: %#[1]v %[1]v", firstTime.Local().Truncate(time.Millisecond))
  a := Asset{
          Code:          code,
          IssuerAccount: issuerAccount,

</details>

Appears this is happening again:
--- FAIL: TestInsertOrUpdateAsset (0.46s)
    db.go:122: Test Database: test_5e8f3e07cc8a
    queries_asset_test.go:57: firstTime: 2021-05-12 02:54:01.696499776 +0000 UTC m=+0.315128200
    queries_asset_test.go:80:
            Error Trace:    queries_asset_test.go:80
            Error:          Not equal:
                            expected: time.Time{wall:0x297c1e00, ext:63756384841, loc:(*time.Location)(0xbc5040)}
                            actual  : time.Time{wall:0x298b6040, ext:63756384841, loc:(*time.Location)(0xbc5040)}

                            Diff:
                            --- Expected
                            +++ Actual
                            @@ -1,2 +1,2 @@
                            -(time.Time) 2021-05-12 02:54:01.696 +0000 UTC
                            +(time.Time) 2021-05-12 02:54:01.697 +0000 UTC

            Test:           TestInsertOrUpdateAsset
    queries_asset_test.go:85:
            Error Trace:    queries_asset_test.go:85
            Error:          Not equal:
                            expected: time.Time{wall:0x297c1e00, ext:63756384841, loc:(*time.Location)(0xbc5040)}
                            actual  : time.Time{wall:0x298b6040, ext:63756384841, loc:(*time.Location)(0xbc5040)}

                            Diff:
                            --- Expected
                            +++ Actual
                            @@ -1,2 +1,2 @@
                            -(time.Time) 2021-05-12 02:54:01.696 +0000 UTC
                            +(time.Time) 2021-05-12 02:54:01.697 +0000 UTC

            Test:           TestInsertOrUpdateAsset
    queries_asset_test.go:93: secondTime: 2021-05-12 02:54:01.713067318 +0000 UTC m=+0.331695745
    queries_asset_test.go:128: thirdTime: 2021-05-12 02:54:01.718334994 +0000 UTC m=+0.336963419
FAIL
coverage: [no statements]
FAIL    github.com/stellar/go/services/ticker/internal/tickerdb/tickerdb_test   4.258s

https://app.circleci.com/pipelines/github/stellar/go/7977/workflows/52b0c2c2-241d-4105-ad9b-93e1fec53f62/jobs/42429


added binary search code file.

I have provided the code of BINARY SEARCH in the C++ language.

Congratulations for your Open source contribution. Don't forget to add a star on this repo.. Happy hacking


Do I need to add the string of my dateset into the all list?

Today I followed the instruction in the Getting Started to get a model on my own dataset,
And I see this,

When I open the mmdet/datasets/__init__.py,
I see this code like,
from .builder import build_dataset
from .cityscapes import CityscapesDataset
from .coco import CocoDataset
from .custom import CustomDataset
from .dataset_wrappers import ConcatDataset, RepeatDataset
from .loader import DistributedGroupSampler, GroupSampler, build_dataloader
from .registry import DATASETS
from .voc import VOCDataset
from .wider_face import WIDERFaceDataset
from .xml_style import XMLDataset

from .my_dataset import MyDataset

__all__ = [
    'CustomDataset', 'XMLDataset', 'CocoDataset', 'VOCDataset',
    'CityscapesDataset', 'GroupSampler', 'DistributedGroupSampler',
    'build_dataloader', 'ConcatDataset', 'RepeatDataset', 'WIDERFaceDataset',
    'DATASETS', 'build_dataset'
]

So my question is if I need to add the string "MyDataset" of my MyDataset class into the __all__ list variable?
Your answer will be appreciated.

It is recommended but not forced.


incorrect related entities in entity.relations

/entities/:entitytype/:id/ include relations[], which include info about the relation_type and the related_entity. for some types of relation, the included related entity refers back to the entity, instead of the object of the relation.
example PassagePublication relation: passage id 413 has relations where all related entities are id 413
curl "https://sola.acdh-dev.oeaw.ac.at/apis/api/entities/passage/413/" | jq '.relations[].related_entity.id'
413
413
413
413
413

this however is fine:
curl "https://sola.acdh-dev.oeaw.ac.at/apis/api/entities/publication/1261/" | jq '.relations[].related_entity.id'
1264
1266
1268
1270
1272
1274
1276
1278
1263

=> PersonPublication relation on publication will include person as related entity, but PassagePublication relation on passage includes passage, not publication as related entity

there was an issue with the comparison of the primary keys of the two related entities in a relation. should be resolved now

there was an issue with the comparison of the primary keys of the two related entities in a relation. should be resolved now

An error is thrown when accessing any entity via REST API, e.g. https://sola.acdh-dev.oeaw.ac.at/apis/api/entities/person/
The error message is tuple index out of range and is thrown at https://github.com/acdh-oeaw/apis-core/blob/5348eecb79d38717bc5848b54ff69de33ab7bced/apis_core/api_routers.py#L346
When debugging I could see that in that function the param args is an empty tuple.
Unfortunately a restart of the applications mitigates this error - which makes investigation harder. It is unclear to me which factors after a restart then lead to this error.

An error is thrown when accessing any entity via REST API, e.g. https://sola.acdh-dev.oeaw.ac.at/apis/api/entities/person/
The error message is tuple index out of range and is thrown at https://github.com/acdh-oeaw/apis-core/blob/5348eecb79d38717bc5848b54ff69de33ab7bced/apis_core/api_routers.py#L346
When debugging I could see that in that function the param args is an empty tuple.
Unfortunately a restart of the applications mitigates this error - which makes investigation harder. It is unclear to me which factors after a restart then lead to this error.

 Was a cache issue. Deleting it in my browser made it work.

 Was a cache issue. Deleting it in my browser made it work.


Microsoft Graph archived, try it link broken

The Github repo has been archived and the Try it link doesn't work anymore.

@acsbendi Thanks for taking time to report 👍
Fixed 🎉


Dry Peat Bog no longer converts into Saturated Peat Deposite

Minecraft version & Mod Version:
Minecraft: 1.12.2
Forge: <IP_ADDRESS>47
Cyclic: 1.16.6
Single player or Server:
Single Player
Describe problem (what you were doing / what happened):
I set up the peat farmer on an older version of the mod, everything worked fine. After updating to 1.16.6 the dry peat bog blocks no longer convert into saturated peat deposite blocks.
I looked into the code and found that the block no longer ticks randomly (see commit). I couldn't find another way, this conversion happens, so maybe this was accidentally changed?

Hmm.  I am still on Forge <IP_ADDRESS>94, ill update and make sure this is fixed in next version

https://minecraft.curseforge.com/projects/cyclic/files/2599607

Thank you for the fix. I was able to work around this bug by re-enabling the random ticks for the block through CraftTweaker, but good to now this is no longer needed with that update.