ui: Fix overflowing time tag in spoiler block.

When rendering a spoiler block that includes a datetime format, the dropdown button was pushed out of view on smaller devices. This happened because the time tag was overflowing past the spoiler blocks width.
This commit intends to fix this problem by adding a white-space attribute to the rendered time tags which will stop it from overflowing.
Fixes: #30641.

Screenshots and screen captures:
After fix screenshot

Self-review checklist

[x] Self-reviewed the changes for clarity and maintainability
(variable names, code reuse, readability, etc.).

Communicate decisions, questions, and potential concerns.

[x] Explains differences from previous plans (e.g., issue description).
[x] Highlights technical choices and bugs encountered.
[ ] Calls out remaining decisions and concerns.
[ ] Automated tests verify logic where appropriate.

Individual commits are ready for review (see commit discipline).

[x] Each commit is a coherent idea.
[x] Commit message(s) explain reasoning and motivation for changes.

Completed manual review and testing of the following:

[x] Visual appearance of the changes.
[x] Responsiveness and internationalization.
[ ] Strings and tooltips.
[ ] End-to-end functionality of buttons, interactions and flows.
[ ] Corner cases, error conditions, and easily imagined bugs.

Thanks for working on this! I haven't tested it yet, but I think it's safer to target <time> elements inside a spoiler block and not all <time> elements for this new behavior if you haven't already done it.

@PieterCK its targetted

@PieterCK Are you up for fully reviewing this PR?

@codewithnick Left a minor comment, otherwise LGTM.
no results from these Git greps:
git grep "spoiler-header" "*.hbs"
git grep "<time" "*.hbs"
We don't use this specific combination of elements (time tag inside a spoiler-head) aside from chat messages. So I don't think there will be any regression caused by this new behavior.

Do you think Inline css will be better for this case?

@codewithnick Sorry if my comment wasn't clear enough, I was talking about the comment you left on the code. I think it could be better if we add a bit more context on its purpose, you can also refer to a couple of comments left just above the change you added. So, my recommendation would be something like this:
/* Time tag pushes the arrow out of view when overflow, adding white-space property prevents this by wrapping the element */

@timabbott This PR has been approved by @PieterCK ; I haven't tested myself.

Works OK in manual testing.
@codewithnick, thanks for the contribution! In the future, please include before and after screenshots to make review quicker. That should also include before and after shots outside the case that you're trying to fix (e.g., with the spoiler header presented on a very wide screen). That helps us to catch regressions that can be introduced when fixing a specific problem like this.

Thanks! for the review @karlstolley will keep this in mind

Merged, thanks @codewithnick and @karlstolley!


Add unit tests for xr-model "features"

Closing this out as it has been covered in the course of building our initial public release.


Combine image selection and container configuration step into one step.

In GitLab by @luotian-github on Jun 12, 2018, 15:35
If you are reporting a problem, please make sure the following information are provided:

Version of board (last git commit number) , docker engine and docker-compose.
Config files of board, you can get them by packaging "board.cfg" and files in the same directory, including subdirectory.
Log files, you can get them by package the /var/log/board/.
Other necessery information.

In GitLab by @yhua123 on Nov 8, 2019, 07:52
merged step 2 and step 3

In GitLab by @liyanq528 on Nov 8, 2019, 07:52
pr#1682

In GitLab by @yhua123 on Nov 8, 2019, 07:52
step 1: update back service for combine 2 steps
step 2: update UI again

In GitLab by @sokril on Nov 8, 2019, 07:52
fix with #1811

In GitLab by @wknet123 on Nov 8, 2019, 07:52
Closing it as fixed.

In GitLab by @sokril on Nov 8, 2019, 08:23
closed

In GitLab by @sokril on Nov 8, 2019, 08:23
assigned to @wknet123


coral-web: support multihop tool streaming events

Description:
This PR shows the tool events streaming in when using multihop. It also updates some tool names to match what the backend gives us.
Note: the stream response doesn't complete, likely due to my local setup being a bit broken but this demonstrates parsing the tool events streaming in:
https://github.com/cohere-ai/cohere-toolkit/assets/5898755/e659cb09-588d-470c-a840-75272aee25c4
AI Description

This PR updates the code to replace references to TOOL_INTERNET_SEARCH_ID with TOOL_WEB_SEARCH_ID. This includes changes in the following files:

src/interfaces/coral_web/src/components/Citations/CitationDocumentHeader.tsx
src/interfaces/coral_web/src/components/FirstTurnSuggestions.tsx
src/interfaces/coral_web/src/components/ToolEvents.tsx
src/interfaces/coral_web/src/constants.ts
src/interfaces/coral_web/src/hooks/chat.ts
src/interfaces/coral_web/src/types/message.ts

Additionally, there are some other minor changes, such as updating the default value of isStepsExpanded in src/interfaces/coral_web/src/components/MessageRow.tsx and removing some unused imports.

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Please upload report for BASE (main@e4a2ac8). Learn more about missing BASE report.

Additional details and impacted files
@@           Coverage Diff           @@
##             main     #301   +/-   ##
=======================================
  Coverage        ?   85.31%
=======================================
  Files           ?      161
  Lines           ?     5932
  Branches        ?        0
=======================================
  Hits            ?     5061
  Misses          ?      871
  Partials        ?        0

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


Update autocompletionProvider.ts

Objective

Show help description in pop menu of suggestions.( the function name 'vla-set-XXX' must change to 'vla-put-XXX'  in webHelpAbstraction.json，its bug)

VScode has some issues to check the "word" range, exp: type "vl-str" and type esc or backspace,  continue to type "ing" and select 'vl-string->list' from menu,it will be: 'vl-vl-string->list' .
Improved this problem, although it has not been completely solved, for example, typing ‘’-’’ still cannot be displayed as a complete word

Abstractions

Tests performed
Screen shot

Hello @aeo000000 , before we can merge your PR, please sign this file and send to me (lan.dong@autodesk.com). thanks!
https://github.com/Autodesk-AutoCAD/AutoLispExt/blob/main/Autodesk_Form_Ind_Contrib_Agmt_for_Open_ Source.pdf

@aeo000000 Bullet #1 really needs to be fixed in the C#/JSON. Treating the symptom isn't really a solution.
I really should have noticed this, but think the biggest reason I missed it has to do with your Bullet #2. There are all kinds of things I use in lisp (like colons) that yield nothing worth using so I don't even pay attention to intellisense involving any special characters.
Anyway, unless you really want to dig into a complete nightmare, I'll go fix Bullet #1 in the C#/JSON. I actually plan to rewrite that "prototype" producing the JSON to be more sustainable and with better technologies sometime in the coming months.


loadPaths argument

This is a good (and necessary) feature for integration into the build workflows I work on.

Kerblam!


The latest version of the local development guide is still TBD

Hi team,
I see the latest version of the local development guide is still TBD. And the initial version of dev guide looks not actively updated and might be out-of-date. Is there any plan to add content to the latest version?

Most developers are now focused on the v3.3 release, and these documents will be updated after v3.3 released


POC/WIP local build setup

See https://github.com/apache/camel-website/issues/720

@djencks I don't know the doc part that much and can't run it locally because of setup issues. Yet, let me do my best to review.
One question thought, is there a simple way to double check that this PR does not break the doc ?

@djencks I don't know the doc part that much and can't run it locally because of setup issues. Yet, let me do my best to review.

Could you elaborate on the setup issues?  The instructions are in my dev list post on local partial builds. If the instructions are unclear or don't work I'd like to know :-)

One question thought, is there a simple way to double check that this PR does not break the doc ?

I'm not quite sure what you are asking. The only sure way to check is to do a website PR build as described here: https://camel.apache.org/manual/improving-the-documentation.html#_creating_a_documentation_pull_request. Unfortunately this is not simple :-)  Doing a "full local build" as described in the dev list post is almost as good and much simpler.  However, since the changes here don't change anything about the stuff used in the actual website build, they are unlikely to break it.

@djencks the setup issue on my machine has no link with this specific PR. It's just I can't generate the doc locally independent from this PR.
I was asking a bout a simple way to check the PR. And it looks there is not. So I guess it's ok to merge and see how it's going :)


Multiple actions

Anyway to add another action, even by adding a child view manually?

Multiple actions goes against the Material Design Principle for Snackbar, however you are always free to modify the layout as you like via OnDisplayListener and grab the layout in onLayoutInflated.

Thanks got it working with that!


Add BNS prior

add nonspin BNS prior to aframe/priors

Closing because this will be completed as part of this issue in AframeV2


[Python]Error Regression:Stopped training because there are no more leaves that meet the split requirements.

`X_train,X_test,Y_train,Y_test=train_test_split(data,Y,test_size=0.2,random_state=seed)
Y_train=Y_train.tolist()
X_train=X_train.tolist()
X_test=X_test.tolist()
Y_test=Y_test.tolist()

lgb_train=lgb.Dataset(X_train,Y_train)
lgb_test=lgb.Dataset(X_test,Y_test,reference=lgb_train)
params={
'task':'train',
'objective':'regression_l1',
'boosting':'gbdt',
'num_leaves':10,
'learning_rate':0.05,
'metric':'l1',
'feature_fraction':0.9,
'bagging_fraction':0.8,
'bagging_freq':5,
'verbose':0

}
print('start training')
gbm=lgb.train(params,lgb_train,num_boost_round=20,valid_sets=lgb_test,early_stopping_rounds=5)
preds=gbm.predict(X_test,num_iteration=gbm.best_iteration)
mae=metrics.mean_absolute_error(Y_test,preds)
print(mae)`

This is my code snippet. I am trying to predict so value using these parameters and it throws error before completing first round.
Error is -start training
[LightGBM] [Warning] Stopped training because there are no more leaves that meet the split requirements.
[1]     valid_0's l1: 6.88414e+06
What is the possible cause of this error. And how can it be fixed?

@asking28
This is not a error. It is warning that you data cannot be learned by tree algorithm.
possible reasons: 1. your data is too small. 2. your data is very random, cannot learn trees from it.
you can try the min_data=1 .


Group custom Django commands into separate folders

Allows to group custom Django commands into separate folders inside the same Django app.
This is my first pull request. not sure Im doing it right. I will appreciate any feedback :pray:

https://stackoverflow.com/questions/59247066/group-django-commands-to-a-folder-inside-the-same-app
https://stackoverflow.com/questions/12125268/django-split-management-commands-into-subfolders

Thanks for this patch :+1: However, all new features require an accepted ticket and a similar proposition has been rejected, see ticket-30098. By the way, you'll reach a wider audience if you write to the DevelopersMailingList about your ideas.


ME - Setup SFTP connection

Maine prefers the use of SFTP.
Snow, Scott<EMAIL_ADDRESS>will help coordinate.
Acceptance Criteria

[ ] Transport information added to receiver settings in prod
[ ] Transport information added to receiver settings in staging
[ ] Secret added to azure production
[ ] Secret added to azure staging
[ ] Test message sent and confirmed by Maine

Requested hostname or IP from ME. Also asked what authentication methods they can support. Our preference is public key auth.

Scott is still workign with the IT dept to get the SFTP info

ME now has a test environment. I got with Jeremy to submit a request for whitelisting

Added transport information to staging and prod  settings plus added the secrets to azure


Django 1.9 RemovedInDjango20Warning: Usage of field.rel has been deprecated. Use field.remote_field instead.

Line 61 of social/apps/django_app/default/models.py uses field.rel:
https://github.com/omab/python-social-auth/blob/aa907384636a8ea87b86db3d5ab1580440e71665/social/apps/django_app/default/models.py#L61
This causes a warning in Django 1.9, but in Django 2.0 this code will cease to work.
On a related note, ForeignObjectRel.to was deprecated in favour of the model attribute.
Original exception message: Usage of ForeignObjectRel.to attribute has been deprecated. Use the model attribute instead.
Ref: https://docs.djangoproject.com/en/1.9/releases/1.9/#field-rel-changes

Fix for this got merged in the new split components python-social-auth.

It doesn't look like this was fixed in social-app-django:
https://github.com/python-social-auth/social-app-django/blob/e368f5305ecb469ae0908b0fa24b8c1797d3d22c/social_django/models.py#L62
I suppose the more relevant issue for this now would be https://github.com/python-social-auth/social-app-django/issues/6 though.


Trigger Homelink returns 400 Bad Request Error

It would appear this is also now not working, so Tesla  has changed something here as well.

https://teslamotorsclub.com/tmc/posts/1591755/

Here is the full API now over websockets for Autopark and Homelink:
https://github.com/timdorr/model-s-api/issues/16


/en-US/docs/MDN/Feedback

Request type

[] Please close this issue, I accidentally submitted it without adding any details
[x] New documentation
[x ] Correction or update

Details

Hello,
i've one question. Is i possible that you'll fix one html5 input issue? Me and my Company need the input type="datetime-local" like the input type="date". I would very much like to use the graphical selection on the "Datetime" option just like the "Date function".
Lukas Siemermann

This is not the right place to suggest additions/updates to the Firefox browser; this is for bugs concerning MDN documentation.
There is already an open bug for datetime-local; see https://bugzilla.mozilla.org/show_bug.cgi?id=1306217
You could go there and ask about it.
Best regards.


Unit test 2 Pull request

In this part of the testing project, we tested functions responsible for the status and content updates. We also tested the order re-position of items in the list upon checked/unchecked actions.

We added test functions containing:

             * a function for editing the task description.
             * a function for updating an item's 'completed' status.
             * the "Clear all completed" function.

Thank you for approving my project! 😊


Showing physical 3D models "as seen by AxiSEM3D"

This is related to #31 , and again I am only considering a 2D cross-section of a 3D model.  The goal here is to plot a 2D cross section showing the actual properties (e.g. shear wave speed). The motivation is to show the exact property distributions on the same points where the wavefield is output.
Basically, this is the same as #31 , but instead of plotting the wavefields on each GLL points in the physical domain, here I would like to plot, say Vs, on these GLL points.
I think there are 3 kinds of models relevant to AxiSEM3D:

The input models. This is something like crust1.0. These generally are somewhat different from the model actually used for computation, due to interpolation (in case the computational points are denser than the grids for the input models) or downsampling (in case the computational points are sparser).
Particle-relabelled models. These are made from the input models and are regular and axisymmetric, so these are the models as seen by AxiSEM3D and are used for the actual computation. However, these are not intuitive at all to show for research purposes, i.e. the visualization will look nothing like e.g. crust 1.0 or any tomography model.
Inverse particle-relabelled models. These are never made or used by AxiSEM3D. This is a conceptual idea and is what I think should be considered for adding. This basically just inverse transforms the model actually used for computation but also put it into a format that people can easily understand, i.e. these will look like crust 1.0 or whatever the actual input models are.

I think the issue here, like in #31 , is to apply the inverse particle-relabelling transformation to more quantities that are not just the wavefield.

A module for model visualization has not been developed in this code, unfortunately. Unless new development force is employed, I am afraid this will remain undone.

The relabelled modes are gemetrically axisymmetric but have complicated elastic parameters. The Cijkl in the most general anisotroy has 21 independent parameters, which is already difficult to visualize, while a relabelled model has 35.

The PRT is invertable. But I think the inverse model is just the input model (undulated one), isn't it?

The PRT is invertable. But I think the inverse model is just the input model (undulated one), isn't it?
I think this is not always the case because an input model could be too fine for a mesh, i.e. when a mesh samples the model inadequately. In this case, the inverse transformed axisymmetric model would not recover the original input model. My whole issue here again is to figure out a way to output something exactly used by the code, but for the model in AxiSEM3D that is not useful because the model actually used is not physical, and that's why I proposed adding the inverse transform which would give a physical version of "model actually used".

I give my scenario a bit more thought and realized that this actually won't be a big issue for me, because my mesh grid will always be much denser than the model grid, so simply plotting the model should be good enough for me.


added persistence.cpp

Description
enter here if you have any details
Program Name - persistence.cpp
Issue No.- #339

Type issue number after hash(#)

Checklist(self check)

[x] Yes, this task assigned to me.
[x] My code follows the style guidelines(Clean Code) of this project
[x] I have performed a self-review of my own code
[x] My Filename is in camelCase format
[x] I have added Problem statement, Problem link in file.

Please accept my PR.


Made statics work with CachedStaticFilesStorage

STATIC_URL and the load static tag doesn't work with CachedStaticFilesStorage.
Only the tag from load staticfiles does.
This pull request changes all static file references to use django.contrib.staticfiles.templatetags.staticfiles.

Cool, that makes sense. Thanks!


screen flickering under Wayland

Description
The window/panal(like data view, detail view) flickering under Wayland(Hyprland compositor), but there is nothing wrong under X11(AwesomeWM compositor) with the same dbeaver install.
DBeaver Version
24.1.0
Operating System
Archlinux x64
Database and driver
No response
Steps to reproduce
No response
Additional context
No response

Also please, provide the log files. You can find instructions here https://dbeaver.com/docs/wiki/Log-files/.

Please provide the requested additional information.

Not OP but I have the exact problem that makes DBeaver unsable. Content is literally gone until I move the cursor or click something in the UI. I see the following log when I opened DBeaver:
!ENTRY org.eclipse.ui 2 2 2024-06-28 23:19:09.282
!MESSAGE Invalid preference category path: org.eclipse.debug.ui.ConsolePreferencePage (bundle: org.eclipse.ui.console, page: org.eclipse.ui.internal.console.ansi.preferences.AnsiConsolePreferencePage)
!SESSION 2024-06-28 23:23:23.890 -----------------------------------------------
eclipse.buildId=unknown
java.version=21.0.3
java.vendor=Flathub
BootLoader constants: OS=linux, ARCH=x86_64, WS=gtk, NL=en_US
Framework arguments:  -eclipse.keyring /home/username/.local/share/DBeaverData/secure/secure_storage
Command-line arguments:  -os linux -ws gtk -arch x86_64

!ENTRY org.eclipse.urischeme 4 0 2024-06-28 23:23:26.258
!MESSAGE Cannot run program "xdg-mime": error=2, No such file or directory
!STACK 0
java.io.IOException: Cannot run program "xdg-mime": error=2, No such file or directory
	at java.base/java.lang.ProcessBuilder.start(ProcessBuilder.java:1170)
	at java.base/java.lang.ProcessBuilder.start(ProcessBuilder.java:1089)
	at org.eclipse.urischeme.internal.registration.ProcessExecutor.execute(ProcessExecutor.java:36)
	at org.eclipse.urischeme.internal.registration.RegistrationLinux.getRegisteredDesktopFileForScheme(RegistrationLinux.java:144)
	at org.eclipse.urischeme.internal.registration.RegistrationLinux.determineHandlerLocation(RegistrationLinux.java:86)
	at org.eclipse.urischeme.internal.registration.RegistrationLinux.getSchemesInformation(RegistrationLinux.java:75)
	at org.eclipse.urischeme.AutoRegisterSchemeHandlersJob.run(AutoRegisterSchemeHandlersJob.java:85)
	at org.eclipse.core.internal.jobs.Worker.run(Worker.java:63)
Caused by: java.io.IOException: error=2, No such file or directory
	at java.base/java.lang.ProcessImpl.forkAndExec(Native Method)
	at java.base/java.lang.ProcessImpl.<init>(ProcessImpl.java:295)
	at java.base/java.lang.ProcessImpl.start(ProcessImpl.java:225)
	at java.base/java.lang.ProcessBuilder.start(ProcessBuilder.java:1126)
	... 7 more

!ENTRY org.eclipse.ui 2 2 2024-06-28 23:23:27.672
!MESSAGE Invalid preference category path: org.eclipse.debug.ui.ConsolePreferencePage (bundle: org.eclipse.ui.console, page: org.eclipse.ui.internal.console.ansi.preferences.AnsiConsolePreferencePage)

Hopefully it helps.

Hi, @kohane27. Thank you for providing more information regarding this issue.

Yeah mine looks exactly the same as in the video here

Does it happen all the time or do you have any steps to reproduce this bug?

I have the same issue, it happens all the time.

I'm experiencing the same flickering issue. The issue occurs with both the AUR and Flatpak versions. It started happening with version 24.1.0. Here's a video of the problem and my system config:
Issue:
https://github.com/dbeaver/dbeaver/assets/67379041/95e6d141-7a90-40bc-98e9-495e4df818e1
System config:

Please send the log files not right after the application start, but after the issue happens. You can find instructions how to find log files here https://dbeaver.com/docs/wiki/Log-files/

Please send the log files not right after the application start, but after the issue happens. You can find instructions how to find log files here https://dbeaver.com/docs/wiki/Log-files/

Here are the log files
07-03-24.log

Please send the log files not right after the application start, but after the issue happens. You can find instructions how to find log files here https://dbeaver.com/docs/wiki/Log-files/

Do you need this one: dbeaver-debug.log?

Please send the log files not right after the application start, but after the issue happens. You can find instructions how to find log files here https://dbeaver.com/docs/wiki/Log-files/

This is my .log File.
logFile.txt

Thank you

I have the same issue as @MacheroKiller and i just tested what he said about the dark theme. My side, simply switching form "light" to "Classic" fixed it (User Interface -> Appearance -> Theme). On my side Light and Dark doesn't work, Classic has no issues.
Using:
Archlinux -> hyperland
dbeaver -> 24.1.1

@matrox471 thanks for the tip!! Classic themes works. Looks hideous but can some work done now

@E1izabeth sorry for late reply. My dbeaver behave the same way as @RocyCott, and thanks for @matrox471 solution. Change theme to classic works for me too.

Classic theme does not solve the problems here.
The table view GUI (at least table data and table properties) is flickering on each and every smallest mouse move.
System:
openSUSE Tumbleweed 20240617,
xfce desktop,
XDG_SESSION_TYPE is "x11",
dbeaver 24.1.1

Faced same issue here
Using: Archlinux + hyprland & dbeaver 24.1.1
I've made it work by disabling theming , it will use the GTK theme once disabled . for me editor had weird colors so fixed it by  adjusting the editor colors in settings.

It seems that https://github.com/hyprwm/Hyprland/pull/6608 fixed it. Running NixOS with the Hyprland flake, Hyprland commit 83a5395eaa99fecef777827fff1de486c06b6180. Can someone else confirm?

I can also confirm this issue.
ArchLinux, Hyprland 0.41.2-3, and DBeaver 24.1.2
Constant flashing when the Dark or Light theme are active.

@eletrolitico This is very odd. I've used DBeaver with another wlroots compositor (Sway) without such issues. I'm unsure if moving to Aquamarine will help.

It seems like this issue is tied to Hyprland, not Wayland in general. I've been using DBeaver on Wayland (Plasma 5 and 6, Sway) for years without such issues.
At the same time, we heavily use the Eclipse Platform to draw our UI. Can you guys please test any of Eclipse IDEs and see if the same issue happens there? I suspect it's an upstream issue. https://www.eclipse.org/downloads/packages/

At the same time, we heavily use the Eclipse Platform to draw our UI. Can you guys please test any of Eclipse IDEs and see if the same issue happens there? I suspect it's an upstream issue. https://www.eclipse.org/downloads/packages/

Hey, I've tested Eclipse for C developers version 20240606-1231 and yes, the flickering is actually the same as in videos above and as I experience myself in DBeaver 24.1.4 on hyprland v0.41.2.

@Urbinholt thank you for checking

I have test eclipse-java-2024-06-R-linux-gtk-x86_64.tar.gz for eclipse official, and got the same result as @Urbinholt. My hyprland is v0.42.

Dbeaver, Studio 3T have the same problem, only changing the black background solves it

Changing the theme to classic or desabling the theming all together solves the flickering problem. But still my mouse movement is rendering weirdly, if i move the mouse a little fast it gets thrown to a diferent positions in the screen, way off from where it should be. Only happens if the mouse is over the dbeaver app.

Launching dbeaver like this solve the issue for now
env GDK_BACKEND=x11 /usr/share/dbeaver-ce/dbeaver

Disabling dbeaver theme in preferences solved the issue for me

Disabling dbeaver theme in preferences solved the issue for me

works for me.

Thanks a lot for your suggestions, everyone. I'm closing the issue since it's a bug in Hyprland: https://github.com/hyprwm/Hyprland/issues/6844.

Open terminal and type
GDK_BACKEND=x11 dbeaver


Error at Scaffold A Controller Step

I am getting this error when trying to perform the "Scaffold A Controller Step"
There was an error running the selected code generator:
'Could not load type
'Microsoft.EntityFrameworkCore.Infrastructure.IDbContextOptionsExtensionWithDebugInfo' from assembly 'Microsoft.EntityFrameworkCore, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=adb9793829ddae60'.'

Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: 583ae3e7-5915-f22b-e54c-6c100cf2a7da
Version Independent ID: 95f2549e-29f9-e31a-b4d0-432b971643ff
Content: Tutorial: Create a web API with ASP.NET Core
Content Source: aspnetcore/tutorials/first-web-api.md
Product: aspnet-core
Technology: aspnetcore-tutorials
GitHub Login: @Rick-Anderson
Microsoft Alias: riande

The tutorial works. I'm not sure what step you missed. You might try asking on StackOverflow,.

You need to also add Microsoft.EntityFrameworkCore.InMemory Nuget package. After you install the error will be fixed.

That's listed in the instructions


Can't decode error when using ethers.js v5

This package is really great and helps me a lot! Big thanks! Just got some problems.
In the past, I was using ethers.js v6, and I can successfully decode the error and get the error reason.
Recently I've changed to ethers.js v5 for some reason, and I used the 1.0^ version of this package. However I can't decode the error. Following the README.md of the 1.0^ version, after
  const { error } = decodeError(err)
  console.log('Revert reason:', error)

I got a really long string started with "transaction failed", instead of the desired error reason.

I've asked this question on Ethereum Stack Exchange and it is solved. Here is the link.

Hey @macaujack, thanks for sharing the link to your question on Ethereum SE! I'm glad someone in the community has helped you with your issue!😀
I'm guessing your transaction was reverted on chain? Such errors are handled automatically in v2.x (using ethers 6) but not in v1.x (using ethers v5), and this could be why you weren't getting the exact error reason. I was expecting more people to shift over to ethers v6. I might add this feature into v1.x too if ethers v5 is still widely used! :)


substraitJS CLI tool

The CLI tool can be used to parse substrait plans, and further produce visualization in SVG or PNG formats.

Closing this with #8


Check that the authority-discovery module discovers all (or almost all) validators

https://github.com/paritytech/substrate/pull/6614 adds a new metric that reports the number of validators known to the authority-discovery module.
This issue is a reminder that, after this PR has been merged and deployed on our nodes, we should check if it reports a correct value.

The metric is now on 8 nodes, and they seem to be somewhere between 14 and 16 known validators.

As of today the authority-discovery module is still disabled by default on Polkadot: https://github.com/paritytech/polkadot/blob/master/cli/src/cli.rs#L62-L72. I would still expect a node to find more validators as at least Parity and web3 is enabling this feature.

Everything seems to work fine on Kusama!

Closing this as done :tada:


ElasticSearch query problem

the elasticSearch indeces of compass are  automatically created.The ElasticSearch string will be mapped to both text and keyword types by default.test and keyword are used in different query scenarios. compass used the wrong query.
compass query log in task-detect
2023-04-28 14:53:36,538 INFO  657111 [delay-queue-executor-2] [] : [c.o.c.detect.service.impl.ElasticSearchServiceImp:151] indexes:[compass-job-instance-*], duration:0 ,condition:{"query":{"bool":{"filter":[{"terms":{"taskName":["TEST_TPCDS"],"boost":1.0}},{"terms":{"projectName":["SPARKSQL_TEST_20012523"],"boost":1.0}},{"terms":{"executionDate":["2023-04-28T01:29:58.000"],"boost":1.0}},{"terms":{"flowName":["SPARKSQL_TEST_20012523"],"boost":1.0}}],"adjust_pure_negative":true,"boost":1.0}}}
return empty list. when i change query condition to
{"query":{"bool":{"filter":[{"terms":{"executionDate":["2023-04-28T01:29:58.000"],"boost":1.0}},{"terms":{"taskName.keyword":["TEST_TPCDS"],"boost":1.0}},{"terms":{"projectName.keyword":["SPARKSQL_TEST_20012523"],"boost":1.0}},{"terms":{"flowName.keyword":["SPARKSQL_TEST_20012523"],"boost":1.0}}],"adjust_pure_negative":true,"boost":1.0}}}
it works
may be we should change search condition or use elasticSearch index templete to close column mapping

@yuehan-mm Thanks for your feedback, we have fixed this issue.


Can't open FLAC file with read on macOS (get unimplemented format error)

Hi!
I got an issue when trying to open a FLAC file using the following simple code:
>>> import soundfile as sf
>>> data, sr = sf.read('test.flac')

That results in the following traceback:
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/usr/local/anaconda3/envs/mqa/lib/python3.6/site-packages/soundfile.py", line 373, in read
    subtype, endian, format, closefd) as f:
  File "/usr/local/anaconda3/envs/mqa/lib/python3.6/site-packages/soundfile.py", line 740, in __init__
    self._file = self._open(file, mode_int, closefd)
  File "/usr/local/anaconda3/envs/mqa/lib/python3.6/site-packages/soundfile.py", line 1265, in _open
    "Error opening {0!r}: ".format(self.name))
  File "/usr/local/anaconda3/envs/mqa/lib/python3.6/site-packages/soundfile.py", line 1455, in _error_check
    raise RuntimeError(prefix + _ffi.string(err_str).decode('utf-8', 'replace'))
RuntimeError: Error opening '/Users/afuhrmann/Desktop/test.flac': File contains data in an unimplemented format.

The available formats don't show FLAC:
>>> sf.available_formats()
{'AIFF': 'AIFF (Apple/SGI)', 'AU': 'AU (Sun/NeXT)', 'AVR': 'AVR (Audio Visual Research)', 'CAF': 'CAF (Apple Core Audio File)', 'HTK': 'HTK (HMM Tool Kit)', 'SVX': 'IFF (Amiga IFF/SVX8/SV16)', 'MAT4': 'MAT4 (GNU Octave 2.0 / Matlab 4.2)', 'MAT5': 'MAT5 (GNU Octave 2.1 / Matlab 5.0)', 'MPC2K': 'MPC (Akai MPC 2k)', 'PAF': 'PAF (Ensoniq PARIS)', 'PVF': 'PVF (Portable Voice Format)', 'RAW': 'RAW (header-less)', 'RF64': 'RF64 (RIFF 64)', 'SD2': 'SD2 (Sound Designer II)', 'SDS': 'SDS (Midi Sample Dump Standard)', 'IRCAM': 'SF (Berkeley/IRCAM/CARL)', 'VOC': 'VOC (Creative Labs)', 'W64': 'W64 (SoundFoundry WAVE 64)', 'WAV': 'WAV (Microsoft)', 'NIST': 'WAV (NIST Sphere)', 'WAVEX': 'WAVEX (Microsoft)', 'WVE': 'WVE (Psion Series 3)', 'XI': 'XI (FastTracker 2)'}

but the subformats with format flac does:
>>> sf.available_subtypes(format='FLAC')
{'PCM_S8': 'Signed 8 bit PCM', 'PCM_16': 'Signed 16 bit PCM', 'PCM_24': 'Signed 24 bit PCM'}

Also FLAC is in the supported formats in both soundfile.py and sndfile.h
    SF_FORMAT_FLAC          = 0x170000,     /* FLAC lossless file format */

Also, FLAC files can be played in macOS.
Does anyone know how to resolve that issue?
Thanks in advance

How did you install soundfile? My first guess would be that you did not install the wheel version (which comes with a full-featured libsndfile), but used some other installation method instead that does not come with its own libsndfile, thus using your system's libsndfile, which is lacking FLAC support.

I am getting the same error. I did a conda install librosa, which took care of libsndfile dependencies

I'm working in a conda environment with:

pysoundfile               0.9.0.post1
libsndfile                1.0.28

The problem in your case is probably that you're using pysoundfile, instead of soundfile. We deprecated the use of pysoundfile a while ago, and the version is no longer maintained.

That was a problem, but I uninstalled pysoundfile, and now installed soundfile (v0.10.3).
But I'm getting the same error: "RuntimeError: Error opening '/Users/.../audio/hains006.flac': File contains data in an unimplemented format.
Also, when I do soundfile.available_formats(), FLAC doesn't appear.

You'll have to check which version of libsndfile is actually used by soundfile. It might still be using the one from conda, which would explain why the newer version of soundfile (which comes with a fully-configured libsndfile) didn't fix the problem.
Since you seem to be on macOS, you can also try installing libsndfile through homebrew. If I remember correctly, homebrew has options for enabling FLAC support.
If all else fails, you can use LD_PRELOAD to force loading a specific version of libsndfile and see if that fixes the issue. And then work backwards from there to figure out why soundfile is not loading the version you prefer.

@MR-T77 You can try this to find out which libsndfile is used on your system:
import soundfile as sf
print(sf._libname)

Thanks for your help @bastibe and @mgeier. Unfortunately, I'm a little bit lost on what to do next...
Yesterday I had installed libsndfile through homebrew, but that didn't fix. (I tried also brew install libsndfile --with-flac but got "Error: invalid option: --with-flac" - on Macos Mojave - 10.14)
If I do print print(sf._libname) I get "/.../anaconda/envs/dynamite/bin/../lib/libsndfile.dylib" but I don't know how to interpret this info.
Any other path I may explore before LD_PRELOAD, which seems to require a higher level of expertise than the one I have.

I get "/.../anaconda/envs/dynamite/bin/../lib/libsndfile.dylib" but I don't know how to interpret this info.

This tells you from which file on your system the libsndfile library is loaded.
The path you are getting points somewhere inside your Anaconda folder. It's not the one distributed with the soundfile wheel package.
There seem to be FLAC problems with the macOS version of the Anaconda package, see https://github.com/conda-forge/libsndfile-feedstock/issues/2 and https://github.com/librosa/librosa/pull/847#issuecomment-475044902. There doesn't seem to be a resolution.
You should try to uninstall libsndfile with conda, then it probably works.

I just stumbled across this very issue, but the source of the conflicting libsndfile.dylib was from homebrew.   libsndfile is a dependency of ffmpeg, portaudio, sox and other packages commonly distributed via the brew package manager on macOS.
Unfortunately, soundfile picks up the libsndfile.dylib file that homebrew distrubutes
$ python
Python 3.7.7 (default, Jun 19 2020, 13:21:43)
[Clang 11.0.3 (clang-1<IP_ADDRESS>)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import soundfile as sf
>>> sf._libname
'/usr/local/lib/libsndfile.dylib'
>>> import ctypes
>>> ctypes.util.find_library("sndfile")
'/usr/local/lib/libsndfile.dylib'

After uninstalling libsndfile from homebrew via brew uninstall --ignore-dependencies libsndfile soundfile works as expected
$ python
Python 3.7.7 (default, Jun 19 2020, 13:21:43)
[Clang 11.0.3 (clang-1<IP_ADDRESS>)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import soundfile as sf
>>> sf._libname
'libsndfile.dylib'

Unfortunately, tools like ffmpeg, sox, etc I use routinely, so removing the homebrew bundled dependency for it is rather problematic.  Would there be a workaround to specify which libsndfile.dylib file should be used?

You could probably LD_PRELOAD it. (I think that works on macOS, right?)

AFAIK LD_PRELOAD does not work on macOS/OSX, but I'm operating out of my depth here.  After re-installing libsndfile via homebrew:
For the record, this is the location of my libsndfile.dylib library provided by soundfile: /Users/ogi/.zinit/plugins/pyenv---pyenv/versions/3.7.7/envs/fred/lib/python3.7/site-packages/_soundfile_data/libsndfile.dylib
$ python
Python 3.7.7 (default, Jun 19 2020, 13:21:43)
[Clang 11.0.3 (clang-1<IP_ADDRESS>)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import soundfile as sf
>>> sf._libname
'/usr/local/lib/libsndfile.dylib'
>>> exit()

$ DYLD_INSERT_LIBRARIES="/Users/ogi/.zinit/plugins/pyenv---pyenv/versions/3.7.7/envs/fred/lib/python3.7/site-packages/_soundfile_data/libsndfile.dylib" python
Python 3.7.7 (default, Jun 19 2020, 13:21:43)
[Clang 11.0.3 (clang-1<IP_ADDRESS>)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import soundfile as sf
>>> sf._libname
'/usr/local/lib/libsndfile.dylib'
>>> exit()

$ LD_PRELOAD="/Users/ogi/.zinit/plugins/pyenv---pyenv/versions/3.7.7/envs/fred/lib/python3.7/site-packages/_soundfile_data/libsndfile.dylib" python
Python 3.7.7 (default, Jun 19 2020, 13:21:43)
[Clang 11.0.3 (clang-1<IP_ADDRESS>)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import soundfile as sf
>>> sf._libname
'/usr/local/lib/libsndfile.dylib'
>>>

Looking through the documentation for ctypes.util.find_library() I found this blurb

If wrapping a shared library with ctypes, it may be better to determine the shared library name at development time, and hardcode that into the wrapper module instead of using find_library() to locate the library at runtime.

If wrapping a shared library with ctypes, it may be better to determine the shared library name at development time, and hardcode that into the wrapper module instead of using find_library() to locate the library at runtime.

The soundfile module actually does that, but only on the second attempt.
First, it tries to find the library with ctypes.util.find_library(). If that fails, it tries the hard-coded path in _soundfile_data.
The problem here is that the first attempt does not fail ...
As a work-around, you can monkey-patch the find_library() function to make it fail unconditionally:
def dummy_find_library(name):
    return None

import ctypes.util
ctypes.util.find_library = dummy_find_library

import soundfile as sf

...

Another idea: Why not just overwrite /usr/local/lib/libsndfile.dylib?
I assume this is a symbolic link provided by brew, right?
You could just copy the libsndfile.dylib from the soundfile module there, and hope that all other programs like ffmpeg, portaudio, sox continue working.

First, it tries to find the library with ctypes.util.find_library(). If that fails, it tries the hard-coded path in _soundfile_data.

After I posted my reply, I noticed that too!  I don't have enough experience doing this sort of thing to make a recommendation on how it should be done so I leave that to the judgment of more experienced folks.  I am curious though if it would be worthwhile to try loading the hard-coded path first and then fall back on find_library()?

Another idea: Why not just overwrite /usr/local/lib/libsndfile.dylib?

I think this is what I'll end up doing for the time being.  I must admit I am curious why their version of libsndfile does not support flac files, but that's not a topic for this issue tracker.
Thanks for your input @mgeier !

If there would be consideration for implementing the change where first soundfile attempts to read the hard-coded paths before falling back on find_library() I'll gladly submit one.

I don't think there is a "right" or "wrong" order in which to look for the library, each one has their advantages and disadvantages.
The original idea was to give users a simple way to override the pre-packaged library with their own.
As usual in Linux (and this works in macOS as well), they could put their version of the library into /usr/local/lib/libsndfile.so, and it would be preferred over the one installed by the package manager (which is typically in /usr/lib/libsndfile.so or something like that).
That's exactly what happened in your case, @j9ac9k. If someone puts a library into /usr/local/lib, they normally want it to be used, don't they? So I would say that's a feature, not a bug.
Now if we reverse the order of library loading, this wouldn't be possible anymore, people would not (easily) be able to provide their own library version. This might actually be an advantage for some users, but I think in general it's not.
If we disable the current customization opportunity, I think we should introduce a new one, do you have an idea for that?
I wanted to mention a related discussion in https://github.com/spatialaudio/python-sounddevice/issues/130, but then I saw that you have also commented there!

I'm getting this issue on ubuntu as well.

I'm getting this issue on ubuntu as well.

I didn't come up w/ a good fix; in my case I just uninstalled the libsndfile that was packaged via homebrew.  I do periodically think about this issue; I suspect an environment variable may be the way to go here; I'm not sure how difficult that would be to implement though.

I suspect an environment variable may be the way to go here; I'm not sure how difficult that would be to implement though.

This would be relatively easy to implement. Pull requests would certainly be welcome!

I'm getting the same issue on ubuntu 20: 04
When I uninstall libsndfile, it uninstalled librosa as well and when I install just soundfile and libsndfile.
sf.read("text.flac"); works fine, but when I noticed librosa was uninstalled, I installed it again and since librosa takes care of libsnfile dependencies, it installed a different version and sf.read("text.flac") stopped working.
any ideas why this is so?

Find a work around with the issue hope it might help out,
still to try @mgeier solution with the def dummy_find_library() function,
but what I did was I uninstall librosa and it uninstalled all it dependent packages
:$ conda uninstall librosa -y
and I install soundfile and loaded the .flac file and it works.
but when I install librosa again installed libsnfile and soundfile._libname by default picks and "/.../anaconda//libsndfile.so.1"* found in anaconda.
I uninstall just that package
:$ conda remove --force libndfile
soundfile._libname default to "libsnfile.so.1", which works alongside librosa.
Hoping to get a far more better and accurate solution in the future.

Hallefrickenlulla! @VegasC you saved me from 5 hours of package hell. conda remove --force libndfile worked for me!

I am experiencing the same issue on Linux. I have a conda environment and I just removed librosa, soundfile and libsndfile.
Then, I install librosa, which comes with the following package versions:
  libflac            conda-forge/linux-64::libflac-1.3.3-h9c3ff4c_1
  libsndfile         conda-forge/linux-64::libsndfile-1.0.30-h9c3ff4c_1
  pysoundfile        conda-forge/noarch::pysoundfile-0.10.3.post1-pyhd3deb0d_0

Nonetheless, I keep having the same issue of RuntimeError: Error opening 'xs132608.flac': System error.. Any solution other than converting the audio files to wav ?


Task with dict in arguments sometimes didn't started, but marked as locked.

Here is a TestCase:
class DoctArgsTestCase(unittest.TestCase):
    def setUp(self):
        @tasks.background()
        def function(d):
            pass
        self.task = function

    def test_launch_with_dict_keys_not_alphabet_order(self):
        self.assertEqual(Task.objects.count(), 0)
        self.task({22222:2, 11111:1})
        self.assertEqual(Task.objects.count(), 1, 'Task don\'t created')
        tasks.run_next_task()
        self.assertEqual(Task.objects.count(), 0, 'Task don\'t started')

If I launch this test several times repeatly, sometimes it will fail.
bg-test.txt
But failed task remains locked forever:
def test_launch_with_dict_keys_locked(self):
    self.assertEqual(Task.objects.count(), 0)
    self.task({22222:2, 11111:1})
    self.assertEqual(Task.objects.count(), 1, 'Task don\'t created')
    tasks.run_next_task()
    if Task.objects.count() == 1:
        # didn't started, check the locked_by
        self.assertIsNone(Task.objects.all().first().locked_by, 'Task is locked')

bg-locked.txt

// sorry fo english
The root problem same as in #36: inside DbTaskRunner tasks identified by task_name, args and kwargs.There is a pair json.loads and json.dumps, where order of keys in dict can changed, so hash of task is changed and bg_runner can't find a task.
here is a stacktrace to json.loads/json.dumps:
https://github.com/arteria/django-background-tasks/blob/master/background_task/tasks.py#L102
https://github.com/arteria/django-background-tasks/blob/master/background_task/tasks.py#L225
(here we retreive a Task instance and locked it. Task contain task_param text field).
https://github.com/arteria/django-background-tasks/blob/master/background_task/tasks.py#L228
https://github.com/arteria/django-background-tasks/blob/master/background_task/tasks.py#L217
(json.loads here, now we have an args/kwargs objects pair)
https://github.com/arteria/django-background-tasks/blob/master/background_task/tasks.py#L218
https://github.com/arteria/django-background-tasks/blob/master/background_task/tasks.py#L100
https://github.com/arteria/django-background-tasks/blob/master/background_task/tasks.py#L37
https://github.com/arteria/django-background-tasks/blob/master/background_task/models.py#L99
here we convert pair args/kwargs back to string, calculate hash and try to retrive task from db.
json.dumps/json.loads can change order in dict, so sha may differ. In this case we don't find a Task instance, return empty set from TaskManager.get_task, skip this part (https://github.com/arteria/django-background-tasks/blob/master/background_task/tasks.py#L44), and return from bg_runner without release of lock.
Phew. :sweat:
I don't have a long story with django_background_task and don't know all nuances, but do we realy need this complicated way with loads/dumps? Why we don't pass a task instance to bg_runner?

Ok. When task function have a dict with integer keys in argument, it happens.
class ArgumentsWithDictTestCase(unittest.TestCase):
    def setUp(self):
        @tasks.background(name='failing task')
        def task(d):
            pass
        self.task = task

    def test_task_with_dictionary_in_args(self):
        self.assertEqual(Task.objects.count(), 0)

        d = {random.randint(1,1000):random.randint(1,1000) for _ in range(random.randint(1,10))}
        self.task(d)
        self.assertEqual(Task.objects.count(), 1, 'Task dont created')

        tasks.run_next_task()
        self.assertEqual(Task.objects.count(), 0, 'Task dont started')

======================================================================
FAIL: test_task_with_dictionary_in_args (background_task.tests.task_tests.ArgumentsWithDictTestCase)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "C:\Users\pavel\Projects\django-background-tasks\background_task\tests\task_tests.py", line 562, in test_task_with_dictionary_in_args
    self.assertEqual(Task.objects.count(), 0, 'Task dont started')
nose.proxy.AssertionError: 1 != 0 : Task dont started
-------------------- >> begin captured logging << --------------------


Release New Blog About Laravel Modules

Release New Blog About Laravel Modules

Please remove the Module tag, every other tag is good.
Apart from Tags, everything looks good. @AnshumanBharatiya

The tags used in this blog post can vary, but they specifically relate to Laravel Modules. These tags are important because they will be helpful for organizing and categorizing content effectively in the future.


Manifests operatorv2 stable

Stable image PR for https://github.com/opendatahub-io/modelmesh-serving/pull/221

This PR  has conflicts.
It seems to be using the wrong base.


Correct DTO validation

Will test in SF more extensively before merging.

@DRvanR
Tested in RA.

:+1:


[Feature]: Automatic toggle switch to enable double write

Description
As of now, we have to manually config the arctic.emit.mode to determine which stores the flink writers should emit data to before the job launch. There are three enums of the arctic.emit.mode: 'file', 'log', 'file,log'.
Use case/motivation
Use case:
All changelog and historical data ingress into the arctic stores. Writing historical data into filestore and writing incremental data into logstore is expected.
Describe the solution
Add a new enum to the arctic.emit.mode: 'auto'. It means that the flink job writes data into the filestore first, then writes data into the logstore and the filestore immediately after matching an appropriate pattern.
create source(
tm timestamp(3),
WATERMARK FOR tm AS tm ) with (...);

insert into arctic /* +OPTIONS ('auto.emit.pattern.watermark.comparison'='10s')*/
from source;

Config
default
Note

arctic.emit.mode
file
file, log, auto

auto.emit.pattern.watermark.comparison
10s
Only enabled when 'arctic.emit.mode'='auto', if the watermark is greater than the system current timestamp subtracts the specific value, writers will also write data into the logstore.  This value must be greater than 0.

Related issues
No response
Are you willing to submit a PR?

[X] Yes I am willing to submit a PR!

Code of Conduct

[X] I agree to follow this project's Code of Conduct

@YesOrNo828 Thanks for proposing this new feature. And I think it is an useful feature in ingestion situation too. But I still have some questions and suggestions about the solution:

What's the behavior if setting arctic.emit.mode=auto without setting auto.emit.pattern.watermark.comparison? Should we change the default value of arctic.emit.mode to auto ?
Does the Flink source table must have a watermark setting at your situation? What's the hehavior if it does not have?
Does config name arctic.emit.auto-write-to-changelog.watermark-lag is more easy to understand ?

@YesOrNo828  Thanks for your replying.

Another question come to mind:
Would the job start to emit only to Filestore again after ingestion job restart. We can add a state to solve this problem of course. But what if we start this job without a save point?

Emit to Filestore and Logstore if table enable Logstore (Source table does not have a watermark setting or arctic.emit.auto-write-to-logstore.watermark-gap is not setted)

'arctic.emit.mode' = 'file,log', IMO, this configuration has the same meaning. This conflits with the previous approach.

Would the job start to emit only to Filestore again after ingestion job restart. We can add a state to solve this problem of course. But what if we start this job without a save point?

Yes, if the flink job restarts without a checkpoint/savepoint after a long stop. It will lose its state. How about saving it in arctic metadata?

'arctic.emit.mode' = 'file,log', IMO, this configuration has the same meaning. This conflits with the previous approach.

I'd like to change the default value of arctic.emit.mode to auto and make it proper in most situation so user DO  NOT need to config this property manually. And We sould emit to both Filestore and Logstore in most situation if table enable Logstore. Of course 'arctic.emit.mode' = 'file,log' has the same meaning in this situation.

How about saving it in arctic metadata?

But It is a state only for this ingestion job, how should we identify different ingestion jobs ? Or should we suggest user remove the arctic.emit.auto-write-to-logstore.watermark-gap option when restart without a checkpoint/savepoint ？

After discussing offline with @zhoujinsong, we will save the flag whether the logstore data has caught up in the arctic table properties.
log-store.catch-up and log-store.catch-up-timestamp


[Settings]Takes some time to adapt to theme change

Microsoft PowerToys version
0.71.0-pre
Installation method
Dev build in Visual Studio
Running as admin
None
Area(s) with issue?
Settings
Steps to reproduce
After #25936 , when changing the windows theme with the Settings page opened, it takes a bit to adapt to the theme change.

Open the Settings window and make sure that its theme is set to use the system's theme.
Change the theme in Settings. (Either light or dark mode, the one you're not currently using.

✔ Expected Behavior
The Settings window reacts to the theme change.
❌ Actual Behavior
The Settings window won't react to the theme change unless you use its UI for a bit.
Other Software
Tested on Windows 11 only, but I assume Windows 10 might have issues too.

@niels9001  My guess would be this comment
https://github.com/microsoft/PowerToys/blob/187f0e3c8e92541a011ded669e0baf3ac81315a7/src/settings-ui/Settings.UI/SettingsXAML/Views/ShellPage.xaml.cs#L125-L128
and/or the fact that the following code is only in GeneralPage.xaml.cs
https://github.com/microsoft/PowerToys/blob/187f0e3c8e92541a011ded669e0baf3ac81315a7/src/settings-ui/Settings.UI/SettingsXAML/Views/GeneralPage.xaml.cs#L92-L115

@niels9001 it really is best practice to leave absolutely as much as possible to the framework/SDK. In other words: remove as much "manual" code as possible.

@niels9001 it really is best practice to leave absolutely as much as possible to the framework/SDK. In other words: remove as much "manual" code as possible.

It should work by default.. but theme changing at runtime has been a pain point for a long, long time. The theming stuff we are doing turned out to be a spaghetti - and we are making registry edits to make things work. It's not the way, yet there isn't a great one :-).
Let's leave it at prio3 though - it only happens on theme change within the app which is not a common thing and navigating to a different page solves it.

It should work by default

And it does - if only we stop making so much spaghetti! (I don't even like spaghetti)

...yet there isn't a great one :-).

There is - like I said: Let the framework/sdk/winui/whateverthenameis do its thing. #LessIsMore!

As far as I am aware, there's is no out-of-the-box way to set the ApplicationTheme outside of the constructor of App.xaml.cs. This means that changing the entire app window theme at runtime is not (fully) supported within the app - only when triggered by W11 Settings (this dates back to the Windows 8 days where this wasn't added - see https://github.com/microsoft/microsoft-ui-xaml/issues/4474).
The only thing we can update is the theme of the root UI element (e.g. the page that sits within the Window). But things like Mica, titlebar (caption buttons), control specific acrylic effects (e.g. flyout backgrounds) are controlled by the Window. That's why we need to do a bunch of custom code (call it hacky if you will 😁) to make it (somewhat) work. (See also https://github.com/microsoft/microsoft-ui-xaml/issues/8249)
So.. it's not an easy thing that we somehow decided to make more complicated 😊.

@niels9001 I am literally showing you what/where the problem is.

I think the code you mentioned gets triggered whenever the ViewModel on the General page gets/sets the theme (e.g. on page load or when the user selects the theme option).. That's the reason why navigating from and back to the General page triggers that method and applies the correct theme.
What we need is to catch the OS trigger that the theme changes and then apply the theme logic. We try to do that with the theme listener: https://github.com/microsoft/PowerToys/blob/187f0e3c8e92541a011ded669e0baf3ac81315a7/src/settings-ui/Settings.UI/SettingsXAML/App.xaml.cs#L294.
If I recall correctly, I think that works but we get the wrong theme passed - not sure though.. I know I struggled a lot to get #25936 in a workable state due to this (although I'm pretty sure I tested this scenario as well so this is surprising to see).
If you have any code suggestions on how to fix this, please let it be known in this thread! (Or feel free to PR the solution 😁)

Why can't you accept that?

In my earlier comment, I tried to explain what's the root cause of why these theme related bugs pop-up across various WinUI3 modules. Not sure how that is "not accepting" things? I just mentioned that this is not a 'medium' bug but a Prio3 as @jaimecbernardo tagged it to be (it's not a common scenario an average user would run into nor is it a blocking/crashing bug). I just wanted to point out that there's a more complex root issue causing this and that this is not a straight-forward thing to fix - hopefully my explanation in this comment is more clear, but it takes a lot of time to write these things down.
Point of note: at times you come off as lecturing people on why things/code aren't the way they should be, or making snarky remarks. Yeah, people and the code they write ain't perfect (definitely this codebase isn't :-)). I'm sure you don't mean it that way, but please take that in mind and check out our Code of Conduct. We are all friends here!

The work associated with this issue has been released as part of the 0.76 sprint. Please update PowerToys to the latest. https://github.com/microsoft/PowerToys/releases


pupile-alignment

Im Wondering how many degrees (pupile-angle) can "correct" some wrapped face detectors('retinaface','mediapipe','yolov8','yunet'). So i rotate an image that contain a (detected)face by 90 degrees and  for example 'yunet' fails to detect with this rotation.
pd: sorry for badwritting

[0-90)


fix wowchemy path

The path for wowchemy modules on github has changed. This PR attempt to fix and update the theme to latest version.
If it don't work, consider start from scratch.

Start from scratch would probably be easier and quicker. I'll keep this branch as reference and build a new branch from https://github.com/wowchemy/hugo-blog-theme


Pin concourse/lite version and remove comments

No story ID, because I'm on review duty.
Remove comments from Vagrantfile
These are like "getting started" instructions when you create a new
Vagrantfile with vagrant init. You can find the same information in the
Vagrant documentation so I don't think it's useful to clutter this file:

https://docs.vagrantup.com/v2/

Pin concourse/lite version to 0.69.0
To ensure that we are all using the same version of Concourse. This is the
latest version box available from Atlas and I have tested it with the
create-deployer pipeline in master.

https://atlas.hashicorp.com/concourse/boxes/lite

On important change, if you were using 0.68.0 previously, is that fly hijack
now sets the correct PWD and environment variables for a job. Which
makes debugging failed jobs much easier.

:+1: Much cleaner!


fix: unit tests

Implementation for #71

☸ Build auto-deployed at: https://xlayers-081f133.angular.run


[Bug] FP64 reduce

See the snippet below:
#include <cuda_fp16.h>
#include <cuda_bf16.h>
#include <hidet/runtime/cuda_context.h>
#include <hidet/runtime/cpu_context.h>
typedef float tfloat32_t;
#define __float_to_tf32(x) (x)
/*
Task(
  name: reduce_min
  parameters:
    x: tensor(float64, [1])
    y: tensor(float64, [])
  inputs: [x]
  outputs: [y]
  computations:
    x: tensor(float64, [1])
    y: float64[] where y[] = reduce([1], (v) => x[v], minreduce)
  attributes: {dims: [0], keep_dim: 0, reduce_type: min, accumulate_dtype: float32}
)
*/
extern "C" {

__global__ void __launch_bounds__(32) hidet_reduce_min_grid(double * __restrict__ x, double * __restrict__ y) {
  // label: reduce schedule
  float rv = 3.4028234663852886e+38f;
  if ((int)threadIdx.x < 1) {
    rv = ((float)(fmin(rv, x[(int)threadIdx.x])));
  }
  int32_t mask = __activemask();
  rv = fminf(rv, __shfl_down_sync(mask, rv, 16, 32));
  rv = fminf(rv, __shfl_down_sync(mask, rv, 8, 32));
  rv = fminf(rv, __shfl_down_sync(mask, rv, 4, 32));
  rv = fminf(rv, __shfl_down_sync(mask, rv, 2, 32));
  rv = fminf(rv, __shfl_down_sync(mask, rv, 1, 32));
  rv = __shfl_sync(mask, rv, 0, 32);
  rv = rv;
  if ((int)threadIdx.x < 1) {
    if ((int)threadIdx.x == 0) {
      y[0] = ((double)(rv));
    }
  }
}

__host__ void hidet_reduce_min(int32_t num_args, int32_t * __restrict__ arg_types, void* * __restrict__ args) {
  assert(((void)"Expect 2 arguments", (num_args == 2)));
  assert(((void)"The 0-th argument should be tensor(float64, [1])", (arg_types[0] == 3)));
  assert(((void)"The 1-th argument should be tensor(float64, [])", (arg_types[1] == 3)));
  hidet_reduce_min_grid<<<dim3(1, 1, 1), dim3(32, 1, 1), 0, (cudaStream_t)get_cuda_stream()>>>(((double*)(args[0])), ((double*)(args[1])));
}

}

Several problems here:

Why use fp32 accumulation in a fp64 operator? I guess we should not use fp32 for the default value of accumulation type (what if the dtype is interger?)
fp32 accumulator further leads to the call to fmin(float, double), which only exists as a host function, causing a compile error.

Thanks @soodoshll.
Will use auto-scheduler for the fp64 reduction intead of the template-scheduling for fp32.
Fixed in PR #171.


Update bootstrap-datepicker.js

Added daySelect and monthSelect
$('#datepicker').datepicker().on('daySelected', function () {
///
});

Already exists changeDate, changeMonth, changeYear, changeDecade, changeCentury events.
@acrobat, @hebbet I believe that it is necessary to close this PR.

Like @vsn4ik states, we have enough events to cover this case.


chore(illustations): migrate banner to illustations package

Summary
Type

Migration
Refactor

Summarise concisely:
What is expected?
Use illustrations assets inside ui when necessary.

⚠ No Changeset found
Latest commit: f717362
Merging this PR will not cause a version bump for any packages. If these changes should not result in a new version, you're good to go. If these changes should result in a version bump, you need to add a changeset.
This PR includes no changesets
Click here to learn what changesets are, and how to add one.
Click here if you're a maintainer who wants to add a changeset to this PR

@philibea

@philibea to rebase or close?


CentOS servers always have CVEs

Hi,
Is it normal that CentOS servers always have CVEs after a system update? I unfortunately don't have any Red Hat server to compare the results.
I'm aware that the way CentOS and Red Hat versions are matched isn't perfect, I'd just like to know if I can reliably use Pakiti to check whether my CentOS servers need updates.

On Fri, Sep 21, 2018 at 08:45:59AM -0700, Louis Sautier wrote:

Is it normal that CentOS servers always have CVEs after a system update? I unfortunately don't have any Red Hat server to compare the results.
I'm aware that the way CentOS and Red Hat versions are matched isn't perfect, I'd just like to know if I can reliably use Pakiti to check whether my CentOS servers need updates.

it's not normal but can be result of some mismatches in the versioning
(as you mention). I suggest to take a look which packages are marked as
vulnerable to see if it may be caused by the versioning. (for that
please check the #138 issue).

For instance, openssh version 0:7.4p1-16.el7 is marked as vulnerable toCVE-2017-15906.

On Thu, Sep 27, 2018 at 07:18:12AM -0700, Louis Sautier wrote:

For instance, openssh version 0:7.4p1-16.el7 is marked as vulnerable toCVE-2017-15906.

This is strange, I checked our production instance and found a machine
that seems similar to yours (CentOS Linux release 7.5.1804 (Core),
openssh v.0:7.4p1-16.el7, amd64) but it doesn't have the openssh package
marked with the CVE.
What exactly are you using on the server side?

I'm not sure what you mean by that. I'm using the latest git master of Pakiti.

On Thu, Sep 27, 2018 at 02:41:31PM +0000, Louis Sautier wrote:

I'm not sure what you mean by that. I'm using the latest git master of Pakiti.

that's what I meant, thanks.
What you see on
<your_pakiti_server>/egi/protected/cve.php?cveName=CVE-2017-15906
?
Daniel

Name | Version | Architecture | OsGroup
-- | -- | -- | --
openssh | < 0:7.4p1-16.el7 | all | CentOS 7
openssh | < 0:7.4p1-16.el7.centos | all | CentOS 7
openssh | < 1:7.5p1-10ubuntu0.1 | all | Ubuntu 17.10
openssh | < 1:7.6p1-4 | all | Ubuntu 18.04 LTS
openssh | < 1:6.6p1-2ubuntu2.10 | all | Ubuntu 14.04 LTS
openssh | < 1:7.2p2-4ubuntu2.4 | all | Ubuntu 16.04 LTS
openssh | < 0:7.4p1-16.el7 | all | Red Hat Enterprise Linux 7
openssh-askpass | < 0:7.4p1-16.el7 | all | CentOS 7
openssh-askpass | < 0:7.4p1-16.el7.centos | all | CentOS 7
openssh-askpass | < 0:7.4p1-16.el7 | all | Red Hat Enterprise Linux 7
openssh-cavs | < 0:7.4p1-16.el7 | all | CentOS 7
openssh-cavs | < 0:7.4p1-16.el7.centos | all | CentOS 7
openssh-cavs | < 0:7.4p1-16.el7 | all | Red Hat Enterprise Linux 7
openssh-clients | < 0:7.4p1-16.el7 | all | CentOS 7
openssh-clients | < 0:7.4p1-16.el7.centos | all | CentOS 7
openssh-clients | < 0:7.4p1-16.el7 | all | Red Hat Enterprise Linux 7
openssh-keycat | < 0:7.4p1-16.el7 | all | CentOS 7
openssh-keycat | < 0:7.4p1-16.el7.centos | all | CentOS 7
openssh-keycat | < 0:7.4p1-16.el7 | all | Red Hat Enterprise Linux 7
openssh-ldap | < 0:7.4p1-16.el7 | all | CentOS 7
openssh-ldap | < 0:7.4p1-16.el7.centos | all | CentOS 7
openssh-ldap | < 0:7.4p1-16.el7 | all | Red Hat Enterprise Linux 7
openssh-server | < 0:7.4p1-16.el7 | all | Red Hat Enterprise Linux 7
openssh-server | < 0:7.4p1-16.el7 | all | CentOS 7
openssh-server | < 0:7.4p1-16.el7.centos | all | CentOS 7
openssh-server-sysvinit | < 0:7.4p1-16.el7 | all | Red Hat Enterprise Linux 7
openssh-server-sysvinit | < 0:7.4p1-16.el7 | all | CentOS 7
openssh-server-sysvinit | < 0:7.4p1-16.el7.centos | all | CentOS 7
pam_ssh_agent_auth | < 0:0.10.3-2.16.el7 | all | Red Hat Enterprise Linux 7
pam_ssh_agent_auth | < 0:0.10.3-2.16.el7 | all | CentOS 7
pam_ssh_agent_auth | < 0:0.10.3-2.16.el7.centos | all | CentOS 7

I believe the problem is caused by the Centos VDS module, I'm affraid
it's broken and we have to come up with a better way how to cope with
packages that Centos decides to re-package.
I suggest you to remove the Centos module, the easiest way will be to
start from a clean database. I'm sorry if it causes any troubles to you.

I'm a bit confused, what will happen If I remove all "CentOS OVAL" sources? Will Pakiti be able to tell me anything about my CentOS servers?

On Tue, Oct 09, 2018 at 02:19:02AM -0700, Louis Sautier wrote:

I'm a bit confused, what will happen If I remove all "CentOS OVAL" sources? Will Pakiti be able to tell me anything about my CentOS servers?

yes, most CentOS and pristine RHEL packages are exactly the same (in
terms of versioning and naming), therefore vulnerability information
published by RH (the oval XML's) will just work. There'll be a small
fraction of packages that will not covered well, though (those tha
CentOS decides to rebuild and change the versioning a bit).
Daniel

I currently use the RedHat URIs for CentOS, is it correct?

On Tue, Oct 09, 2018 at 02:52:46AM -0700, Louis Sautier wrote:

I currently use the RedHat URIs for CentOS, is it correct?

the URL's are correct, however the Subsources need to be of the RedHat
OVAL type.
Daniel

I have changed the vdsSubSourceId column to make all these sources Red Hat and re-ran the synchronize and compute scripts but I still have issues with CVE-2017-15906 amongst others.
How can I debug this, do you need additional info?
Here is another screenshot of the VDS page:

On Tue, Oct 16, 2018 at 04:25:25AM -0700, Louis Sautier wrote:

What is the proper way to do this? Drop all tables and then re-add VDSs?

you can drop the whole database, then you need to populate the schema
and populate the basic configuration (including the VDS specs). YOu can
use the install/initDB.php script to create the database.

I've done that and it seems to work better. I still see vulnerabilities for packages which have centos in the version like dhclient 12:4.2.5-68.el7.centos.1 but I guess there's no way around it until #138 is closed?
However, I'm confused because I see stuff like CVE-2017-16994 which Red Hat marks as fixed in version 0:4.11.0-44.6.1.el7a of the kernel. My CentOS has a 3.x kernel, do RH and CentOS differ in terms of how they patch the kernel?

@sbraz I know this is an old issue but I wanted to chime in that using the RHEL OVALs seem to work quite well on my CentOS machines. The amount of vulnerabilities seem to depend as expected on the last update time and fully updated machines show zero vulnerabilities.

@bluikko thanks, I might take a look at some point. I'm not on the latest release and I currently see quite a few CVEs on my servers. Maybe it has to do with you running CentOS 8 instead of 7?

@sbraz I do not have CentOS 8 machines.

@kouril although things seem to have improved, I still see vulnerabilities for Kernel-related stuff, for instance CVE-2018-6927 for which kernel  < 0:3.10.0-862.el7 is vulnerable.
I have 0:3.10.0-1127.13.1.el7 installed and it is still marked as vulnerable. Is it a lexicographical sorting issue? ("1127" < "862")?

I've verified that versions compare correctly by the code and I couldn't find a similar case in our servers. Do you use the latest code in your installation? I'd be interested to see if you can replicate the problem with a brand-new installation (upon a clean DB).

@sbraz My machines with 3.10.0-1127.13.1.el7 do not show vulnerabilities. All the CentOS6 and CentOS7 servers CVEs look right in there.
Maybe this problem is specific to your system. I use the development version and I believe everyone should do so, the version 3.1.1 is very old.
Are you using the Master branch?


.env file is missing

GraphQL-Node.js-Docker-Microservice.env: The system cannot find the file specified.

You'll need to create the .env file and fill it with the required env variables.


Sidenav toggle button should have aria-label description

Bug/issue #91493171, if applicable:
Summary
Sidenav toggle button should have aria-label description
Dependencies
NA
Testing
Steps:

Run a .doccarchive with sidenav
Go into mobile view
Assert that sidenav toggle button has aria label of the action that it does

Checklist
Make sure you check off the following items. If they cannot be completed, provide a reason.

[x] Added tests
[x] Ran npm test, and it succeeded
[x] Updated documentation if necessary

@swift-ci Please test

@swift-ci Please test

@swift-ci Please test


Swagger properties not marked as nullable should not generate nullable dart fields

Describe the bug
Model properties marked as nullable, are producing nullable dart properties.
It appears the generator is relying solely on the 'required' list to determine nullability.
To Reproduce
Please attach swagger and code snippet of generated value
      "MrControlDto": {
        "required": [
          "id"
        ],
        "type": "object",
        "properties": {
          "clonedFromEntityId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "hazardId": {
            "type": "string",
            "format": "uuid"
          },
          "id": {
            "type": "string",
            "format": "uuid",
            "x-primary-key": true
          }
        },
        "additionalProperties": false
      },

class Control extends DataClass implements Insertable<Control> {
  final UuidValue? clonedFromEntityId;
  final UuidValue? hazardId;
  final UuidValue id;

Expected behavior
In the above dart example, the 'hazardId' field should be of type 'UuidValue', not 'UuidValue?' because it is not nullable in the respective swagger.
Swagger specification link
Link to swagger/OpenApi documentation
Library version used:
2.11.10
Additional context
The differences between 'required' and 'nullable' are explained fairly well here:
https://stackoverflow.com/questions/45575493/what-does-required-in-openapi-really-mean
With the current implementation, it is possible for the JsonSerializable code to generate non-compliant json (i.e, with null assigned to fields that do not allow null)

Hi @Adam-Langley , we generate all properties as nullable, because often swagger file 'lies' and do not returns such properties. Also, if all properties are nullable, we can send it as we wish (we can send or not send any property). It was our decision to generate it like this. It's expected behavior.
If you're sure that backend returns not nullable value - just use bang operator.
Thanks for raising issue!

I feel like it should be an option whether or not all properties should be nullable. Null safety can be found in many modern language like Kotlin, Rust or C#. Generated swagger files can be set up to respect nullability. It's a shame that it is lost in this library.
Also note that it seems like current implementation will treat:
"MrControlDto": {
  "required": [
    "id"
  ],
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "nullable": "true"
    }
  },
  "additionalProperties": false
}

as final int id;, but in fact based on spec 3.0 id value could be null.
https://stackoverflow.com/questions/45575493/what-does-required-in-openapi-really-mean

@TortillaZHawaii  @Adam-Langley  I've implemented not nullable fields. It works on my 50+ swaggers, but I can not guarantee that there are no border cases. Please raise issues in case you face it. Thanks!

hello,
In the released version 2.11.13, the error has recurred. You seem to have lost the fix somewhere.
Please do it as it was in version 12.

@nsvetlakov  on which swagger file you have error?

this

@nsvetlakov on which swagger file you have error?

this one unde_seller.swagger.dart

Hi @nsvetlakov @TortillaZHawaii  @Adam-Langley
Let's summarize:

Generator respects two properties to define, is property nullable, or not. Properties are: nullable and required
Properties, marked as nullable: true will be nullable
If property not marked as nullable, but it's not required - it will be nullable
Properties can be required and nullable at the same time

Example 1
"MrControlDto": {
  "required": [
    "id"
  ],
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "nullable": "true"
    }
  },
  "additionalProperties": false
}

@JsonSerializable(explicitToJson: true)
class MrControlDto {
const MrControlDto({
required this.id,
});
string, dynamic> toJson() => _$MrControlDtoToJson(this);
@JsonKey(name: 'id', includeIfNull: false, defaultValue: '')
final String? id; // nullable and required
static const fromJsonFactory = _$MrControlDtoFromJson;

### Example 2
```json
"MrControlDto": {
            "required": [
                "id"
            ],
            "type": "object",
            "properties": {
                "id": {
                    "type": "string"
                }
            },
            "additionalProperties": false
        }

@JsonSerializable(explicitToJson: true)
class MrControlDto {
  const MrControlDto({
    required this.id,
  });

  @JsonKey(name: 'id', includeIfNull: false, defaultValue: '')
  final String id; // not nullable, required
  static const fromJsonFactory = _$MrControlDtoFromJson;

Example 3
"MrControlDto": {
            "type": "object",
            "properties": {
                "id": {
                    "type": "string"
                }
            },
            "additionalProperties": false
        }

@JsonSerializable(explicitToJson: true)
class MrControlDto {
  const MrControlDto({
    this.id,
  });

  factory MrControlDto.fromJson(Map<String, dynamic> json) =>
      _$MrControlDtoFromJson(json);

  static const toJsonFactory = _$MrControlDtoToJson;
  Map<String, dynamic> toJson() => _$MrControlDtoToJson(this);

  @JsonKey(name: 'id', includeIfNull: false, defaultValue: '')
  final String? id; // nullable not required

That's how it should work. If something broken - please raise new issue. This one will be closed by my next PR


Is there a "NOT MATCH_PHRASE" usage?

POST /_plugins/_sql?format=json
{
"query": "SELECT * FROM log WHERE @timestamp BETWEEN '2022-01-29T00:30:00.000' AND '2022-01-29T09:00:00.000' AND MATCH_QUERY(level, 'ERROR') AND NOT MATCH_PHRASE(message,'Read timed out')"
}
I want to exclude the error log related phrases, but NOT MATCH_PHRASE does not take effect, find all the Read timed out log entries' Is there a problem with the spelling?

I moved this to the sql repo.

@binbinjianjian Your spelling is correct, it is an issue. MATCH_PHRASE does work with NOT operator.
As a workaround, could you try QUERY. for example, NOT QUERY(message,'\"Read timed out\"')"

Now that #185 is complete, SQL plugin supports NOT MATCH_PHRASE.


Make compareTo more robust in semantics.dart

In b/180268307 we end up with double.NaN for _BoxEdge.offset, which is obviously a bug and shouldn't happen. In debug mode we guard against this with asserts. In release mode, those are turned off and the app crashes because double.NaN.toInt() is illegal.
This change makes the code more robust by avoiding the toInt() call. The bug where _BoxEdge.offset ends up being double.NaN is still present, though and I haven't been able to reproduce it to investigate why it is happening. :(
With this change, instead of crashing the traversal order of the SemanticsNodes may be messed up...

test-exempt: code refactor


Host OIDC configuration for non-default issuer

What feature do you want to see added?
When a jenkins endpoint is publicly unavailable, it creates a need to host the jwks and openid-configuration files separately. Unfortunately, this approach is difficult/impossible to automate and avoid manual file uploads.
There is a more practical approach - so that with a non-default Issuer, you can configure a proxy or Load Balancer with a different domain name and filter traffic using the url path.
Proposal
Add a checkbox when creating OpenID Credentials, upon activation of which Jenkins will host files on its own, even with non-default Issuer.
Upstream changes
No response

It's always been a common understanding that Jenkins typically has two endpoints, one main UI for the users and another public but restricted to things like /github-webhook, /buildStatus and so on. Historically all plugins, from github, bitbucket, build status etc etc - all supported this concept. Even official helm chart has two ingress for that reason. This plugin should really stick to that common wisdom...

Hi everyone,
I've tried to extend the plugin to serve OIDC configuration files locally from Jenkins even for non-default issuers. I discovered that the current design (which only serves OIDC config for the default issuer) appears to be intentionally structured this way to prevent potential conflicts.
The challenge arises when multiple credentials exist within the same Jenkins instance:

Credentials using the default issuer (e.g., https://jenkins.your-domain.com)
Credentials using non-default issuers (e.g., https://ext-jenkins.your-domain.com)

Since both would need to be served from the same /oidc path, this creates a routing conflict.
@jglick , as a core contributor to this plugin, could you provide guidance on the best approach to implement this functionality while maintaining backwards compatibility? A potential solution I see is to implement path-based routing for different issuers.
Thank you!

Well the simplest would be
diff --git src/main/java/io/jenkins/plugins/oidc_provider/Keys.java src/main/java/io/jenkins/plugins/oidc_provider/Keys.java
index 68125cb..16cf0ff 100644
--- src/main/java/io/jenkins/plugins/oidc_provider/Keys.java
+++ src/main/java/io/jenkins/plugins/oidc_provider/Keys.java
@@ -69,10 +69,6 @@ import org.kohsuke.stapler.StaplerRequest;
                     // compare https://github.com/jenkinsci/blueocean-plugin/blob/1f92e1624287e7588fc89aa5ce4e4147dd00f3d7/blueocean-jwt/src/main/java/io/jenkins/blueocean/auth/jwt/SigningPublicKey.java#L45-L52
                     JSONArray keys = new JSONArray();
                     for (IdTokenCredentials creds : i.credentials()) {
-                        if (creds.getIssuer() != null) {
-                            LOGGER.fine(() -> "declining to serve key for " + creds.getId() + " since it would be served from " + creds.getIssuer());
-                            continue;
-                        }
                         keys.element(key(creds));
                     }
                     return new JSONObject().accumulate("keys", keys);
@@ -120,8 +116,8 @@ import org.kohsuke.stapler.StaplerRequest;
                         LOGGER.warning(() -> i + " was expected to have URI " + uri);
                         return null;
                     }
-                    if (i.credentials().stream().noneMatch(c -> c.getIssuer() == null)) {
-                        LOGGER.fine(() -> "found " + i + " but has no credentials with default issuer; not advertising existence of a folder");
+                    if (i.credentials().stream().noneMatch(c -> true)) {
+                        LOGGER.fine(() -> "found " + i + " but has no credentials; not advertising existence of a folder");
                         return null;
                     }
                     LOGGER.fine(() -> "found " + i);

plus adjusting https://github.com/jenkinsci/oidc-provider-plugin/blob/251184cc9abc60d01465702c3dcdb0d53860cdbd/src/test/java/io/jenkins/plugins/oidc_provider/KeysTest.java#L80-L86 and https://github.com/jenkinsci/oidc-provider-plugin/blob/251184cc9abc60d01465702c3dcdb0d53860cdbd/src/main/resources/io/jenkins/plugins/oidc_provider/IdTokenCredentials/help-issuer.html#L3-L4 to match. I am trying to remember from #8 if there is any security risk to doing that but I cannot think of any.
In general you may still need to have a script to copy two JSON files to an external static HTTP server, in case the Jenkins controller is physically isolated inside some environment with no inbound Internet access. This change would be helpful for that case since you could use curl / wget inside the VPN to obtain the public key from Jenkins as a more scriptable version of https://github.com/jenkinsci/oidc-provider-plugin/blob/251184cc9abc60d01465702c3dcdb0d53860cdbd/src/main/java/io/jenkins/plugins/oidc_provider/IdTokenCredentials.java#L285-L291 as well as for the proposed scenario where I guess you have one load balancer exposing all paths inside the VPN and another load balancer exposing only selected path prefixes externally.


CustomInput field not calling form validate fucntion

I have created custom location component using MuiGeoSuggest. But  form validate()  function not including location values for validation. Any help on this will be great
import React from 'react';
import MuiGeoSuggest from 'material-ui-geosuggest';

const Location = (props) => (<MuiGeoSuggest
    {...props}
    style={{
    width: "100%"
}}
    hintText="Enter your location"
    errorText={props.meta.touched && props.meta.error}
    floatingLabelText="Your Location *"
    onPlaceChange={props.onPlaceChange}
    options={{
    componentRestrictions: {
        country: "ind"
    }
}}/>);

Location.defaultProps = {
    source: 'location',
    addField: true
};

export default Location;

The admin-on-rest core team doesn't provide support or advice on debugging your own project. We need to focus on writing documentation, fixing bugs, and adding new features.
Instead, we've decided to offload that charge to the community, by moving support to StackOverflow. Ask your question there, you will find helpful people (sometimes from the core team, too). Besides, the response to your question will be easy to find for future developers with a similar problem.
And once you get a response, please continue to hang out on the admin-on-rest channel in StackOverflow. That way, you can help newcomers and share your expertise.
http://stackoverflow.com/questions/tagged/admin-on-rest


⚠ Bofrost.de has degraded performance

In 3c3b1c8, Bofrost.de (https://www.bofrost.de) experienced degraded performance:

HTTP code: 200
Response time: 766 ms

Resolved: Bofrost.de performance has improved in 99fe8f9.


Replaced config file work with environment variables

This update adds the dotenv-python library as a dependency to use the .env file for local development. In AzDO, users will need to configure the pipeline variables for these scripts to run.

There is a conflict. The numbered aml_service/*.py files don't exist anymore

Merged to conflicts. Updated the scripts. Removed references to the customer name where I found them. Updated requirements.txt to grab the correct azureml-sdk package.


CircleCI 2.0

Codecov Report

Merging #37 into master will decrease coverage by 0.52%.
The diff coverage is 0%.

@@            Coverage Diff             @@
##           master      #37      +/-   ##
==========================================
- Coverage   84.95%   84.43%   -0.53%
==========================================
  Files          33       33
  Lines        2107     2107
==========================================
- Hits         1790     1779      -11
- Misses        317      328      +11

Impacted Files
Coverage Δ

src/lashup_utils.erl
72.54% <0%> (ø)
:arrow_up:

src/lashup_hyparview_membership.erl
82.7% <0%> (-2.22%)
:arrow_down:

src/lashup_hyparview_ping_handler.erl
78.26% <0%> (-1.45%)
:arrow_down:

Continue to review full report at Codecov.

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


Master layout ability to cycle through stack

Add a new option to switch master window with the next or previous on stack.
But keep the focus on master.
Consider the following example layout with * denoting the currently focused window:
Next window on stack
+-----------+-----------+
|           |     B     |
|           +-----------+
|     A*    |     C     |
|           +-----------+
|           |     D     |
+-----------+-----------+

Next window on stack
+-----------+-----------+
|           |     C     |
|           +-----------+
|     B*    |     D     |
|           +-----------+
|           |     A     |
+-----------+-----------+

Next window on stack
+-----------+-----------+
|           |     D     |
|           +-----------+
|     C*    |     A     |
|           +-----------+
|           |     B     |
+-----------+-----------+

Previous window on stack
+-----------+-----------+
|           |     C     |
|           +-----------+
|     B*    |     D     |
|           +-----------+
|           |     A     |
+-----------+-----------+

how would this behave with multiple masters?

I have not used multiple masters.
The most intuitive solution I think would be to swap the focused master with next or previous on stack.
+-----------+-----------+
|     A*    |     B     |
|           +-----------+
+-----------+     C     |
|           +-----------+
|     E     |     D     |
+-----------+-----------+

Next window on stack
+-----------+-----------+
|     B*    |     C     |
|           +-----------+
+-----------+     D     |
|           +-----------+
|     E     |     A     |
+-----------+-----------+

Swap focus
+-----------+-----------+
|     B     |     C     |
|           +-----------+
+-----------+     D     |
|           +-----------+
|     E*    |     A     |
+-----------+-----------+

Next window on stack
+-----------+-----------+
|     B     |     D     |
|           +-----------+
+-----------+     A     |
|           +-----------+
|     C*    |     E     |
+-----------+-----------+

This would be awesome


Add Cisco ThousandEyes to Vendor List

Please add ThousandEyes (Cisco) to the list of vendors supporting OpenTelemetry as announced last week via this blog: https://www.thousandeyes.com/blog/introducing-thousandeyes-opentelemetry.
Public documentation: https://docs.thousandeyes.com/product-documentation/api/opentelemetry

Converting this PR to a draft until the CLA is submitted.


Make a Developers Guide

@cyrinejouinii I've added 3 docs to https://github.com/Juniper/nita/tree/main/docs. Would you be able to proof read them and check for accuracy please?


EmailValidator: Add parameter "allow_empty"

Add a boolean parameter allow_empty (default: False) to the EmailValidator.
If set, allow the empty string as input (and return an empty string).
(Maybe add the same parameter to RegexValidator as well?)

Hi, could I work also on this issue?
Thanks

I have implemented it, so could you please assign it to me?

Hey @TomasHalgas, sorry for the late reply!
Sure, feel free to create a pull request. :)

Pull request created #89.
Parameter "allow_empty" added for both RegexValidator and EmailValidator.

Implemented in #89 by @TomasHalgas :)


xfreerdp usb devices can not redirect auto

when I via pid and vid to redirect a usb device , successful . but when use /usb:auto  I can not redirect usb devices.
who can help me ?thank you very much

Fixed with #5745