Add new resource to manage system user passwords

System users cannot be managed by the existing elasticstack_elasticsearch_security_user resource. These users are not editable, except to change their password via the change password.
I think the simplest solution is to have a dedicated resource to manage the password on system users, updating the existing resource to error when used against a system user. This has a couple of benefits:

It's clear from the schema what fields are able to be edited
Any attempt to manage other fields in system users will result in an error which should direct consumers to the correct resource type

https://github.com/elastic/terraform-provider-elasticstack/issues/66
Describe the bug
The kibana_system user has metadata _reserved starting with an underscore.  The elastic api does not let us set or modify metadata starting with underscore.
If I import a kibana_system user into terraform, it also loads the metadata.  When I then try to update the user, for example changing the password, the request fails because the validation "metadata cannot start with underscore".
We should make sure that if the metadata attribute is not set or set to null, terraform won't try to update it.
To Reproduce

Create a user resource

resource "elasticstack_elasticsearch_security_user" "kibana_system" {
    username = "kibana_system"
    password = "changeme"
    roles    = ["kibana_system"]
}

and import from your cluster.
2. Change the password and apply.
3. Update fails because of metadata update validation.
Expected behavior
Do not try to update metadata if my resource does not ask for it.
Debug output
Terraform will perform the following actions:

  # elasticstack_elasticsearch_security_user.kibana_system will be updated in-place
  ~ resource "elasticstack_elasticsearch_security_user" "kibana_system" {
      + email     = ""
      + full_name = ""
        id        = "KrzMC_O7QJa0DkIaO7RRYA/kibana_system"
      + password  = (sensitive value)
        # (4 unchanged attributes hidden)
    }

Plan: 0 to add, 1 to change, 0 to destroy.

Do you want to perform these actions?
  Terraform will perform the actions described above.
  Only 'yes' will be accepted to approve.

  Enter a value: yes

elasticstack_elasticsearch_security_user.kibana_system: Modifying... [id=KrzMC_O7QJa0DkIaO7RRYA/kibana_system]
╷
│ Error: Unable to create or update a user
│
│   with elasticstack_elasticsearch_security_user.kibana_system,
│   on main.tf line 52, in resource "elasticstack_elasticsearch_security_user" "kibana_system":
│   52: resource "elasticstack_elasticsearch_security_user" "kibana_system" {
│
│ Failed with: {"error":{"root_cause":[{"type":"action_request_validation_exception","reason":"Validation Failed: 1: metadata keys may not start with
│ [_];"}],"type":"action_request_validation_exception","reason":"Validation Failed: 1: metadata keys may not start with [_];"},"status":400}
╵

Versions (please complete the following information):

OS: linux
Terraform Version 1.1.9
Provider version 0.3.3
Elasticsearch Version 8.1.3

_reserved (and other _*) fields are set on system users, which are not editable except to change their password. This means that any request to PUT _security/users/<reserved-user> will fail. There's a discuss thread on this topic.
This means that the current implementation of elasticstack_elasticsearch_security_user will fail to manage system users, regardless of what happens with the metadata field. There seems to be two options here:

Add a new system_user resource which only updates the password with the change password API. Change the elasticstack_elasticsearch_security_user resource to error out if it attempts to manage a system user.
Update the existing elasticstack_elasticsearch_security_user to use the change password API when managing a system user and ignore changes to other fields.

The second option sounds confusing to understand why name changes to some users get ignored etc.

Hi, I started working on this!
Is there any way to identify the user is system-user?  If not, it's possible to update non-system user's password with this resource by mistake.
And if we don't have a way to distinguish system-user, then resource name can be just user_password?


C# Script: Duplicate signal receiver method creation

Godot version
v4.0.1.stable.mono.official [cacf49999]
System information
Windows 11, Forward+
Issue description
A duplicate method is created when selecting an existing method as a signal receiver. Since the required method already present it should not be added again.
If this works as expected it can be a workaround for issue https://github.com/godotengine/godot/issues/18721.
Steps to reproduce

Add Node as a root node
Attach new C# script to this node
Add new method in the script which can work as a signal receiver (e.g. OnTimerTimeoutHandler())
Add a new child node (e.g. Timer)
Select the Timer.timeout() signal from the "Node" tab of inspector and connect
In the "Connect Signal toa  Method" Dialog, click "Pick"
Select the existing function (e.g. OnTimerTimeoutHandler) from the list and clik "OK"
Observe that the another method with name OnTimerTimeoutHandler() is added at the end of the script.

Minimal reproduction project
Please refer to "Steps to reproduce" if still needed I can provide the zip file.

#75524 is a duplicate, but by now it has more details about the issue. Hence closing this one in favor of #75524.


Implement Action Item Type maintenance pages

### Tasks
- [x] List
- [x] Add
- [x] Edit

Pages finished and working. Had trouble with an API controller test


Add package on Packagist

Describe the bug
Composer package is not availeble so a composer install is not working.
To Reproduce
Steps to reproduce the behavior:

Run 'composer require mollie/magento2-subscriptions'
See error

Expected behavior
That the mollie/magento2-subscriptions package is installed.
Actual behavior
The following error:
'Could not find a matching version of package mollie/magento2-subscriptions. Check the package spelling, your version constraint and that the package is available in a stability which matches your minimum-stability (stable).'
Additional context
Looks like the package is removed on Packagist

HI @erwinromkes ,
Thanks for your message, finally, we are happy to share that the package is now available on Packagist;
https://packagist.org/packages/mollie/magento2-subscriptions
We are closing this issue now but please feel free to re-open this issue or create a new one whenever you need any help.


Incompatible with @angular/core/core.umd.js

My project was using the gulp to place Angular bundles and systemjs to load them before Angular RC1. I tried to use the .umd.js files as a substitute for the bundles when RC1 released. I noticed everything seems to work fine but ng2-translate is not compatible if only the .umd.js file is used, throwing the following error:

zone.js:101 GET<EMAIL_ADDRESS>404 (Not Found)

I stripped the code down to this test file, to reproduce the error.
import { Http, HTTP_PROVIDERS } from '@angular/http';
import {bootstrap} from '@angular/platform-browser-dynamic';
import {TranslateService, TranslateLoader, TranslateStaticLoader} from 'ng2-translate';
import {provide, Component} from '@angular/core';

@Component({
    selector: 'bug',
    providers: [],
    template: 'loaded template!',
    directives: []
})
export class TranslateBug {
    constructor(private http: Http, _translationService: TranslateService) {}
}
bootstrap(
    TranslateBug,
    [
        HTTP_PROVIDERS,
        provide(TranslateLoader, {
            useFactory: (http: Http) => new TranslateStaticLoader(http, 'i18n', '.json'),
            deps: [Http]
        }),
        TranslateService
    ]
);

For now I've just copied that one file into place. @angular/core/src/facade/lang.js I haven't seen any other issues.

The methods from lang are not really necessary, I could rewrite the few that I use so that it works for all users. I'll add it to the todo list, thanks for the report.

Anyone kindly looking into this? I'm having the same issue as well.
Thanks heaps for the awesome free library :+1:

In my case I'm using this with webpack and loading Angular from umd files. I get errors for the resolution of the path in the issue.

It's in ng2-bootstrap/components/utils/utils.class.js


GitHub thinks that Mergify rebases come from random users

Expected Behavior
When Mergify needs to rebase before merging, I expect that newly-created commits are authored by the same person who authored original commits of the PR. Maybe, co-authored by Mergify (not sure about that). And that info is correctly reflected on GitHub.
Actual Behavior
What I see on GitHub is stunning, e.g.

source PR is here
So, the commits have the right authors, but the message that GitHub produces mentions a random user (who even gets a notification about it iirc).
Another, smaller example, without an explicit request to rebase is here: the author is GH user coot, but in one of the rebase messages we see the GH user andreabedini.
Steps to Reproduce the Problem

Open a PR.
Wait until the target branch (e.g. master) goes ahead.
Explicitly ask Mergify to rebase or satisfy the Mergigy conditions for a merge.
Watch a GH message in the style: X forced-pushed the Y branch from Z1 to Z1 A hours ago. Where X is a random user.

Specifications

Pull Request URL: [1] [2]
Mergify Config URL

This is documented in our FAQ, but I admit it's a not visible for rebase. I'll update our docs.

Oh, I'm sorry for missing it in the docs. Thanks a lot for pointing me to the right place!


feat: add support for Angular v18

Issue or need
Angular v18 was released today. Library should allow using that version!

Proposed changes
Testing here support for that version and adding compatibility with that version in package.json peer dependencies in case all goes fine (it should, no APIs affected)

Quick reminders

🤝 I will follow Code of Conduct
✅ No existing pull request already does almost same changes
👁 Contributing docs are something I've taken a look at
📝 Commit messages convention has been followed
💬 TSDoc comments have been added or updated indicating API visibility if API surface has changed.
🧪 Tests have been added if needed. For instance, if adding new features or fixing a bug. Or removed if removing features.
⚙ API Report has been updated if API surface is altered.

#604  👈
main

This stack of pull requests is managed by Graphite. Learn more about stacking.

Join @davidlj95 and the rest of your teammates on  Graphite


Add contributor docs for our ZenHub usage

Signed-off-by: Ross Kukulinski<EMAIL_ADDRESS>Fixes #679

👍


Utilize Refs and STM transactions to share a collection between threads.

Introducing a function that performs the routes processing (onto bus stops sequences) to identify a direct route (rudimentary yet).
Utilizing Refs and STM transactions to share a collection between threads, thus making routes-vector be safely accessible in the request handler.
Enriching constants with docstrings, instead of artificial comments.
Bumping version number to 0.0.5.

She looks sophisticated ! :+1:


Feat/nft data input

Description
Adds NFT file and text data input features, previews inputted data on preview screen

@kjawadDeveloper2 issues have been solved


Fix compose lacking support for replicas = 0

Allow the compose service replica set to 0.
fix https://github.com/containerd/nerdctl/issues/2223

Suggest adding a test case under https://github.com/containerd/nerdctl/blob/main/pkg/composer/serviceparser/serviceparser_test.go to cover the scenario.


ทดลองใช้ markdown

It's very easy to make some words bold and other words italic with Markdown. You can even link to Google!

This is an  tag
This is an  tag
This is an  tag

Item 1
Item 2

Item 2a
Item 2b

This text will be italic
This will also be italic
This text will be bold
This will also be bold
You can combine them

Item 1
Item 2
Item 3

Item 3a
Item 3b

function fancyAlert(arg) {
  if(arg) {
    $.facebox({div:'#foo'})
  }
}

[x] @mentions, #refs, links, formatting, and tags supported
[x] list syntax required (any unordered or ordered list supported)
[x] this is a complete item
[ ] this is an incomplete item

First Header
Second Header

Content from cell 1
Content from cell 2

Content in the first column
Content in the second column

16c999e8c71134401a78d4d46435517b2271d6ac
mojombo@16c999e8c71134401a78d4d46435517b2271d6ac
mojombo/github-flavored-markdown@16c999e8c71134401a78d4d46435517b2271d6ac

#1
mojombo#1
mojombo/github-flavored-markdown#1

** ** or __ __


[After Strata] What to do if a task fails which is in the middle of a chain o tasks?

Example DAG:
https://user-images.githubusercontent.com/12058428/56119017-80e2d700-5f6b-11e9-9360-71b282805fb8.png
Talk through with @mik-laj

In the example, this question might be: How to execute an error node when there will be an error in chmod_fs_3_mkdir? Currently, error node is trigger only for chmod_fs_7_mod.
Problem is related to trigger rule and missing relations between error node and task in sequence of tasks.


[feat] Create supported-devices in docs

It would be nice in the docs if we mirrored something like
https://www.zigbee2mqtt.io/information/supported_devices.html and https://www.zigbee2mqtt.io/devices/MCCGQ11LM.html
Supported Devices Page:
# Supported devices

## Ecolink

| Model                                                               | Description                                                        | Picture                                                          |
|---------------------------------------------------------------------|--------------------------------------------------------------------|------------------------------------------------------------------|
| [DWZWAVE2.5-ECO](/docs/supported-devices/devices/DWZWAVE2.5-ECO.md) | Z-wave Plus Rare Earth Magnets Door & Window Sensor, White & Brown | ![DWZWAVE2.5-ECO](../_images/devices/DWZWAVE2.5-ECO.jpg) |

Device Page:
---
title: "Ecolink DWZWAVE2.5-ECO control via MQTT"
description: "Integrate your Ecolink DWZWAVE2.5-ECO via Zwavejs2MQTT with whatever smart home
 infrastructure you are using without the vendors bridge or gateway."
---

*To contribute to this page, edit the following
[file](https://zwave-js.github.io/zwavejs2mqtt/#/)*

# Ecolink DWZWAVE2.5-ECO

| Model | DWZWAVE2.5-ECO |
| Vendor  | Ecolink |
| Description | Z-wave Plus Rare Earth Magnets Door & Window Sensor, White & Brown |
| Exposes | battery, contact |
| Picture | ![Ecolink DWZWAVE2.5-ECO](../_images/devices/DWZWAVE2.5-ECO.jpg) |

## Notes

### Pairing

### Troubleshooting: device stops sending messages/disconnects from network

### Recommendation

## Exposes

### Battery (numeric)
Remaining battery in %.
Value can be found in the published state on the `battery` property.
It's not possible to read (`/get`) or write (`/set`) this value.
The minimal value is `0` and the maximum value is `100`.
The unit of this value is `%`.

### Contact (binary)
Indicates if the contact is closed (= true) or open (= false).
Value can be found in the published state on the `contact` property.
It's not possible to read (`/get`) or write (`/set`) this value.
If value equals `false` contact is ON, if `true` OFF.

## Manual Home Assistant configuration
Although Home Assistant integration through MQTT discovery is preferred,
manual integration is possible with the following configuration:

{% raw %}
```yaml
sensor:
  - platform: "mqtt"
    state_topic: "zwavejs2mqtt/<FRIENDLY_NAME>/128/1/0"
    unit_of_measurement: "%"
    value_template: "{{ value_json.value }}"
    device_class: "battery"

binary_sensor:
  - platform: "mqtt"
    state_topic: "zwavejs2mqtt/<FRIENDLY_NAME>/48/1/0"
    value_template: "{{ value_json.value }}"
    payload_on: true
    payload_off: false
    device_class: "door"
{% endraw %}

This is already open at the node-zwave-js level, where support for devices lives.

This is already open at the node-zwave-js level, where support for devices lives.

@onedr0p Closing this as it's duplicated of #148. If you want you can submit a PR to start this :)

@onedr0p Closing this as it's duplicated of #148. If you want you can submit a PR to start this :)

@robertsLando  I was hoping one of the maintainers here would kick it off, and we can add to it.

@robertsLando  I was hoping one of the maintainers here would kick it off, and we can add to it.

The idea is to auto generate a good portion of those from the device files and then to allow annotations wiki style I think. It’s not so easy to just kick off documentation on a couple thousand devices and we’re working on importing all certified devices in the Zwave alliance

The idea is to auto generate a good portion of those from the device files and then to allow annotations wiki style I think. It’s not so easy to just kick off documentation on a couple thousand devices and we’re working on importing all certified devices in the Zwave alliance

I agree with @blhoward2 here. This needs some more toughts, it should be stored in a database and we should then show it in a ui with pagination/query options

I agree with @blhoward2 here. This needs some more toughts, it should be stored in a database and we should then show it in a ui with pagination/query options


DBZ-2125 Hide SSL sensitive params

https://issues.redhat.com/browse/DBZ-2125

@bhuvankvd Neat idea, added!

Thx!


Life Cycle

Hi guys.
Thanks for ros.net!
I'm struggling with managing the lifecycle of my application. Are we suppose to be able to call ROS.init() again after a ROS.shutdown() ? Unfortunately it breaks due to some of the objects that get nulled and not reinitialized at shutdown. I tried fixing it, I can now call ROS.init again which connects to the robot but at some point I stop getting data.
Is there some other mechanism for managing the lifecycle of my application ?
The other problem I have is that NodeHandle.subscribe seems to hang indefinitely when the robot is not on the network. Any suggestions ?
Thanks!

Ros.init is designed to be run once during the program life cycle. Is your robot also the master? It might work better if you move your master to a VM or another machine that is always accessible. I can investigate and improve the behavior of subscribe, but you might consider threading the initialization of all of your subscribers, and forcing a reinitialization if you haven't received a message on one of your subs for some amount of time.

Hi.
My robot is the master, a windows wpf app is subscribing via ROS.NET to the robot. Either machine might not be on the network due to startup times or network or other hardware failures.
The reason I wanted to shutdown and reinit ROS.NET was so that when someone accidentally types in a robot name incorrectly they wouldn't have to shut down the application to fix the situation.
Ok,

I'll make the robot name a .config setting instead of a runtime setting.
I'll call ROS.init only once
I'll try thread my subscription calls and kill the thread when it takes too long. Hopefully thread.abort works there.

Good to know reinitialization of a subscription is an option.
Thanks!

Ok, this works as expected.
Thanks!

You can also use environment variables to set the master uri. Just don't
set it programmatically and it will use user environment variables before
system environment variables
On Oct 5, 2015 10:44 AM, "rvlietstra"<EMAIL_ADDRESS>wrote:

Closed #19 https://github.com/uml-robotics/ROS.NET/issues/19.
—
Reply to this email directly or view it on GitHub
https://github.com/uml-robotics/ROS.NET/issues/19#event-426862249.


Create Reference for PhoneGap Desktop App

This can be a simple reference article that outlines and explains the various parts of the PhoneGap Desktop App. There is already a lot of existing content available on the PhoneGap Desktop App wiki.

Desktop Reference Guide posted to the docs site Friday, July 24th. Closing.


Tilde key (alt gr + 1) not working on Hungarian keyboard layout, and probably many more

Win10 Hungarian keyboard & hungarian language settings

Getting keycode 49 instead of 192 when hitting alt gr + 1.
Use https://keycode.info/ for validating keycode, or debug the js code in io-manager.js .
In-game toggling with tilde should start highlighting some objects (turn around with camera), example map: ./scenes/street.scn, target wood walls.
Temporary workaround: I've set keyboard language to english (United States), and I get keycode 192 when pressing alt gr + 0, interesting.

this can likely be addressed by adding keyboard mapping for different keyboard layouts.  willing to bet there's a library which can handle this


Monaco invalid actions configuration

Hi everyone! Lets take a look at new problem with editor actions after configuring via
	// install Monaco language client services
	await initServices({
		configureEditorOrViewsServiceConfig: {},
		enableModelService: true,
		enableKeybindingsService: true,
		enableLanguagesService: true,
		enableOutputService: true,
		enableAccessibilityService: true,
		debugLogging: false,
	});

// monaco playground

activeTextEditorControl.getSupportedActions().filter(item => !item.label) // returns [] empty array
// Mean each monaco action have `label` property.

// language-client + monaco

activeTextEditorControl.getSupportedActions().filter(item => !item.label)

// returns 6 sctions without label (incorrect)

'editor.action.inspectTMScopes', 'editor.action.dirtydiff.previous', 'editor.action.dirtydiff.next', 'workbench.action.editor.previousChange', 'workbench.action.editor.nextChange', 'editor.action.toggleWordWrap'

These errors is produced by incorrect actions setup during runtime working:
Comand Pelette call:
iconLabels.js:36 Uncaught (in promise) TypeError: Cannot read properties of undefined (reading 'indexOf')
    at stripIcons (iconLabels.js:36:14)

Context menu call:
TypeError: Cannot read properties of undefined (reading 'value')
    at createMenuHide (menuService.js:385:85)

I guess here is the reason: we're using https://github.com/wang12124468/monaco-editor-esm-webpack-plugin and https://github.com/wang12124468/monaco-editor-nls for localization.

The problem was solved by changes in nls module:
// More callns for nls.js in webpack loader
if (/monaco-vscode-api[\\\/]dist[\\\/]vscode[\\\/]vs.+\.js$/.test(this.resourcePath)) {
 vsPath = this.resourcePath.split(/monaco-vscode-api[\\\/]dist[\\\/]vscode/).pop();
}

And webpack config
	new NormalModuleWebpackReplacementPlugin(
		/\/(vs\-)?nls\.js/,
		function(resource) {
			resource.request = nls;
			resource.resource = nls;
		}
	),

	{
				include: /(monaco-editor(-core)?[\\\/]esm)|(monaco-vscode-api[\\\/]dist)/,
				exclude: /[\\\/]worker/,
				use: [
					{
						loader: putYouLoaderHere
					},
				],
			},


added useful columns to django admin

if you start goldstone and navigate to /admin/, then select one of the resource under core or compliance packages, you should see more helpful information

:+1:

Current coverage is 68.61%

Merging #411 into master will increase coverage by +0.17% as of c1074cc

@@            master    #411   diff @@
======================================
  Files           63      63
  Stmts         2763    2778    +15
  Branches         0       0
  Methods          0       0
======================================
+ Hit           1891    1906    +15
  Partial          0       0
  Missed         872     872

Review entire Coverage Diff as of c1074cc

Uncovered Suggestions

+0.61% via goldstone/views.py#30...46
+0.57% via ...stone/drfes/views.py#134...149
+0.39% via ...tone/drfes/models.py#165...175
See 7 more...

Powered by Codecov. Updated on successful CI builds.


lyxal: Watch fullproductkeys.org

lyxal requests the watch of the watch_keyword fullproductkeys\.org. See the MS search here and the Stack Exchange search in text, in URLs, and in code.

fullproductkeys\.org has been seen in 1 true positive, 0 false positives, and 0 NAAs.

Approved by cigien in Charcoal HQ


Update normalize to 3.0.3

I don't know why the scroll up bar JS ended here, but it's the vanilla one.

Many thanks for your PRs :+1: :dancer:

You're welcome !


Remove spring-boot-starter-actuator from dependencies

As it is no longer used and was replaced

@kjthorpe18 I saw you were the one who merged #3.
Could you please merge this one as well?


Window picker: indicate dirty state

Our picker for switching between opened windows (Window > Switch Window) allows to close windows via X action. We should indicate windows with dirty files in this list because clicking X will result in a dialog.

Verification:

open a couple of windows
some with dirty files
bring up the window switcher
verify the windows with dirty state indicate this

Note: the current active window is not closable since the picker is opened on that window.


Inotify's max watch limit on QNAP NAS

Cannot commit max_users_watches on QNAP NAS.  Do not see the sysctl.conf file in /etc or any other location in file structure of host device.  Hidden files and folder visible.   Could anyone provide config file to commit the change on QNAP NAS?  TS-853A  Crashplan Pro 6.7.1.

Maybe this can help:
https://www.google.ca/amp/s/amp.reddit.com/r/qnap/comments/84do5k/how_to_increase_fsinotifymax_user_watches_on_434/

Closing this issue.  Please re-open if needed.


using reference instead of copy

this should make things more efficient

I guess you're right @jontte75


ChatMessageUser triggers AttributeError in Pydantic validator for ChatMessageTool

When using ChatMessageUser with even just a ContentText in a sample, for some reason this ends up calling ChatMessageTool.convert_tool_error_to_error even when you aren't using any tools. Then, values.get("tool_error", None) raises an AttributeError since the wrong values is passed in.
I think this might be some error with Pydantic and inheritance.
Minimal task spec to reproduce:
import inspect_ai
import inspect_ai.dataset
from inspect_ai.model import ChatMessageUser, ContentText
import inspect_ai.scorer
import inspect_ai.solver
from inspect_ai import task

@task
def test_chat_message_user():
    sample_input = ChatMessageUser(content = [
        ContentText(text="What's the capitol of France?"),
    ])

    sample = inspect_ai.dataset.Sample(
        input=sample_input,
        target="Paris",
    )

    return inspect_ai.Task(
        dataset=[sample],
        plan=inspect_ai.solver.generate(),
        scorer=inspect_ai.scorer.model_graded_qa(),
    )

Never mind, I needed brackets around [sample_input] when creating the sample, since Sample expects a list of messages. Kinda weird that it errored in this way though--maybe it's still worth looking into why Pydantic validation triggers for ChatMessageTool despite not using any tools.


[release-1.24] Set AppArmor annotation instead of appArmorProfile

Manual cherrypick required.
#53953 failed to apply on top of branch "release-1.24":
Applying: Set AppArmor annotation instead of appArmorProfile
Using index info to reconstruct a base tree...
M	manifests/charts/istio-cni/templates/daemonset.yaml
Falling back to patching base and 3-way merge...
Auto-merging manifests/charts/istio-cni/templates/daemonset.yaml
Applying: Update release note
Using index info to reconstruct a base tree...
A	releasenotes/notes/53829.yaml
Falling back to patching base and 3-way merge...
CONFLICT (modify/delete): releasenotes/notes/53829.yaml deleted in HEAD and modified in Update release note. Version Update release note of releasenotes/notes/53829.yaml left in tree.
error: Failed to merge in the changes.
hint: Use 'git am --show-current-patch=diff' to see the failed patch
hint: When you have resolved this problem, run "git am --continue".
hint: If you prefer to skip this patch, run "git am --skip" instead.
hint: To restore the original branch and stop patching, run "git am --abort".
hint: Disable this message with "git config advice.mergeConflict false"
Patch failed at 0002 Update release note

https://github.com/istio/istio/pull/53970


[Chore(release)]: conflict resolution between release and main

✅ Checklist

[ ] npx changeset was attached.
[ ] Covered by automatic tests.
[ ] Impact of the changes:

...

📝 Description
conflict resolution between release and main

❓ Context

JIRA or GitHub link:

🧐 Checklist for the PR Reviewers

The code aligns with the requirements described in the linked JIRA or GitHub issue.
The PR description clearly documents the changes made and explains any technical trade-offs or design decisions.
There are no undocumented trade-offs, technical debt, or maintainability issues.
The PR has been tested thoroughly, and any potential edge cases have been considered and handled.
Any new dependencies have been justified and documented.
Performance considerations have been taken into account. (changes have been profiled or benchmarked if necessary)

only 1 empty line added ?

only 1 empty line added ?

Yes, when I merged yesterday's conflict resolution PR the merge conflicts still exist between release and main, I think this was because of the squash merge.


Add error checking to ipsetbuild input

Some error checking is in order. in particular, v4 cidr should be in 1..32, v6 in 1..128. This could easily be restricted to the build program or others that read user provided values, but some assertions on the public interface functions might be in order.

I think @johnzachary pointed this out on IM already, but for the record, we do have some basic error-checking right now.  If you pass in an invalid CIDR prefix, the set/map will remain unchanged, but you won't get an error message.
That said, we should be more vocal to the user about these errors.  Especially once #4 is finished.  I see two possibilities:

cork_ipset_ip_add_network assumes that you pass in a valid CIDR prefix, and leaves it up to the caller to verify the input.  In this case, all of the error checking would go in ipsetbuild.

cork_ipset_ip_add_network does the error checking, and calls cork_error_set if the input is invalid.  In this case, ipsetbuild only has to call cork_error_occurred after the call to add_network, and print out the error message if there is one.

Any strong opinions either way?  I'd lean towards #2, since it isolates the error checking in one place.

Updated ipsetbuild to do basic range checking on CIDR blocks and sent Doug a Pull-Request. I went with the design that Doug suggested in the comment above. I updated the make_ip_bdd function in libipset/set/internal-template.c.in to call cork_error_set(). The client code in ipsetbuild then checks if an error occurred, prints a message, clears the cork error, and skips the input line.

Implemented in #12, merged into develop


refactor(pg): support permission checker

Description
A detailed explanation of the changes in your PR.
Feel free to remove this section if it is overkill for your PR, and the title of your PR is sufficiently descriptive.
Checklist

[ ] Investigated and inspected CI test results
[ ] Unit test and regression tests added
[ ] Evaluated and added CHANGELOG entry if required
[ ] Determined and documented upgrade steps
[ ] Documented user facing changes (create PR based on openshift/openshift-docs and merge into rhacs-docs)

If any of these don't apply, please comment below.
Testing Performed
TODO(replace-me)
Use this space to explain how you tested your PR, or, if you didn't test it, why
you did not do so. Valid reasons include, for example, "CI is sufficient",
"No testable changes". Feel free to attach JSON snippets, curl commands,
screenshots.
In addition to reviewing your code, reviewers must also review your testing
instructions and make sure they are sufficient.

Current dependencies on/for this PR:

master

PR #6625

PR #6626   👈

PR #6627

PR #6628

PR #6629

This comment was auto-generated by Graphite.


Implement a better cropping/perspective method

https://github.com/danopdev/Perspective

duplicate #29

duplicate #29

Actually, my wording was a bit weird, but I didn't quite mean what you meant. Please check it yourself, it's not only cropping, rather this amazing foss app makes the paper like you took a photo in front of it. Magic. Like Camscanner -> I always loved it because of it and never could leave it entirely because of it.

Could you reopen this issue?

But you know this ain't cropping, right? It simulates a different perspective of the photo.

It connects to cropping just a little. The project make the photos looks like you took them in front of the paper, so there are no weird distortions. See yourself what I mean:


Update oci-artifact.md

What this PR does / why we need it:
Which issue(s) this PR fixes:
Fixes #
Special notes for your reviewer:
Release note:

looks, like we should enable spell checking here as well :-)


[BUG] I am unable to use one of the hotkeys.

Acknowledgement of preliminary instructions

[X] I have read the preliminary instructions, and I am certain that my problem has not already been addressed.
[ ] My answer given in the checkbox above is a lie.

What problem did you encounter?
I am currently unable to use two of the Hotkeys in game. The game I am attempting to use the hotkeys on is Buckingham Palace I am able to use the following Hotkeys:

Ctrl + Shift + N
Ctrl + Shift + B

The hotkeys I am able to use are:

Ctrl + Shift + B
Ctrl + Shift + N

I am not sure of the cause of the error but I am unable to take pictures which was the key feature why I download BloxStrap please assist.

Can I see your FastFlag configuration? (%localappdata%\Bloxstrap\Modifications\ClientSettings\ Send the file in that folder.)

Not a problem on my side. You likely have some other software conflicting with the other two keybinds.


Add G(n,m) random graph generator #1

This adds two G(n,m) graph generators, one directed and one undirected.
The generated graph will be a random graph out of all the possible
graphs that are n nodes and m edges with max n*(n-1) edges for directed
graphs and n*(n-1)/2 for undirected graphs, avoiding self-loops and
multigraphs. The run time is O(n+m)
Fixes #174

Pull Request Test Coverage Report for Build 314948074

66 of 66 (100.0%)  changed or added relevant lines in 1 file are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+0.2%) to 93.473%

Totals

Change from base Build 313910145:
0.2%

Covered Lines:
2234

Relevant Lines:
2390

💛  - Coveralls


Instrument requests to Marketplace

Let's instrument all our calls to the Marketplace. The data should have the request route and ideally the reason why we are doing the request.
The goal of this work is to give us insights into potential optimisations we can do, by optimising or removing some calls.

@xavierdecoster made a good point that we should also capture latency of each request. Since latency correlates well with CPU load.


Python package preshed 4.0.0 has been yanked

Describe the bug
Version 4.0.0 for Python package preshed has been yanked, see https://pypi.org/p roject/preshed/4.0.0/#history current version should be 3.0.9
Steps To Reproduce
None
Additional context
Preshed 4.0.0 is a buildInput of spacy, 3.7.2. but it fails to build with this version... but I will open another issue for that
Notify maintainers
@mweinelt
Add a :+1: reaction to issues you find important.

#294305 reverts this, but it is still yanked.

Annoying. We really need to fix the bulk updater.


Add option for creating a basic module

The current output is pretty complex for a first-time user, can we add an option to make a simpler "Hello World" style module?

Similar to this test in node: https://github.com/nodejs/node/blob/master/test/addons-napi/1_hello_world/binding.c


Record Type is pulled under businessProcesses folder if both metadata have the same name

Summary
When adding a picklist value to an Opportunity custom picklist, updated record type is pulled under the businessProcesses folder if both Record Type and Business Process have the same name.
Steps To Reproduce:
Repository to reproduce: dreamhouse-lwc

Under Setup/Sales Processes, create a Sales Process named MySales
Go to Object Manager/Opportunity/Record Types and create a new Record Type named MySales, and select the MySales business process for it
When you pull everything, all is fine
Create a new picklist field on Opportunity (Select Enter values, with each value separated by a new line and enter whatever values you want like A B and C)
Pull everything

Expected result
Opportunity Record Type is pulled under the recordTypes folder.
Actual result
Opportunity Record Type is pulled under the businessProcesses folder.

System Information
{
        "cliVersion": "sfdx-cli/7.139.0",
        "architecture": "darwin-x64",
        "nodeVersion": "node-v16.14.0",
        "pluginVersions": [
                "@oclif/plugin-autocomplete 0.3.0 (core)",
                "@oclif/plugin-commands 1.3.0 (core)",
                "@oclif/plugin-help 3.3.1 (core)",
                "@oclif/plugin-not-found 1.2.6 (core)",
                "@oclif/plugin-plugins 1.10.11 (core)",
                "@oclif/plugin-update 1.5.0 (core)",
                "@oclif/plugin-warn-if-update-available 1.7.3 (core)",
                "@oclif/plugin-which 1.0.4 (core)",
                "@salesforce/sfdx-plugin-lwc-test 0.1.7 (core)",
                "@salesforce/sfdx-scanner 2.12.0 (link) /Users/fabien/Documents/clients/XXX/code/Salesforce/node_modules/@salesforce/sfdx-scanner",
                "alias 1.2.1 (core)",
                "apex 0.9.0 (core)",
                "auth 1.8.1 (core)",
                "community 1.1.4 (core)",
                "config 1.3.19 (core)",
                "custom-metadata 1.0.12 (core)",
                "data 0.6.9 (core)",
                "generator 1.2.2 (core)",
                "info 1.2.1 (core)",
                "limits 1.3.0 (core)",
                "org 1.11.1 (core)",
                "salesforce-alm 53.10.2 (core)",
                "schema 1.1.0 (core)",
                "sfdx-cli 7.139.0 (core)",
                "sfdx-git-delta 4.12.1 (link) /Users/fabien/Documents/clients/XXX/code/Salesforce/node_modules/sfdx-git-delta",
                "sfpowerkit 4.0.3 (link) /Users/fabien/Documents/clients/MeilleursAgents/code/Salesforce/node_modules/sfpowerkit",
                "source 1.8.12 (core)",
                "telemetry 1.4.0 (core)",
                "templates 53.6.0 (core)",
                "texei-sfdx-plugin 1.14.4 (link) /Users/fabien/Documents/code/texei-sfdx-plugin",
                "texmex-sfdx-plugin 1.2.0 (link) /Users/fabien/Documents/code/texmex-sfdx-plugin",
                "trust 1.1.0 (core)",
                "user 1.7.1 (core)"
        ],
        "osVersion": "Darwin 21.3.0"
}

Looks like this is fixed by the new beta commands, sfdx force:source:beta:push and sfdx force:source:beta:pull #1258


Added [activate] onClick, [menu] width, [onselect] cb

The additions should be pretty straight forwards, HOWEVER here's a discussion point:
I did remove the following:
if (val.trim() === "") {
   if (this.completionMenuShown) {
      this.menu.hide();
   }
   return;
}

My reasoning is that retaining the menu on empty string is a logical way to show the user the full set of options (metaphore being "the filter is nothing"). There's a conflict here, as emptying the field is probably what some users might do to get rid of the menu...

[ ] Bugfix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)

Proposed changes

Checklist

[x] I have read the contribution guidelines
[x] For non-bugfix PRs, I have discussed this change on the forum/slack team.
[ ] I have run grunt to verify the unit tests pass
[ ] I have added suitable unit tests to cover the new/changed functionality

Must admit I would find it fairly annoying if when i click on an input it kept popping up a list of suggestions without me even starting to type... the clue is in the name auto-complete . IE help me complete the entry, not start it.
What is the context for the rest of the PR ? I can't see any reasoning or a discussion in the forum ?

There's a conflict here, as emptying the field is probably what some users might do to get rid of the menu...

It is a deliberate choice to hide the menu if the input is empty - so we don't want to change that behaviour.
Re onClick - from an API style, for other components we have (such as the popover), we use a property called trigger that defines what should cause the component to be activated. It helps to avoid lots of boolean onXYZ properties that are meant to be mutually exclusive, but then have to be checked etc.
So for this case, I would say if trigger === "click" add the click handler. That gives us plenty of room to add other types of trigger if needed. You should also use that check to disable the 'hide on empty' functionality. That keeps the behaviour the same for all existing uses of the component and will only change it for instances that enable the click trigger.
Re cb - property names should be descriptive (or at least, more so than cb). We already have onselect on the menu component we delegate to. I see no reason not to use onselect as the property name here for consistency.


Create a test to make sure that editor theme is in sync with the app theme

The test should account for this issue #48936, TL;DR of the issue, the editor had different theme than the one in the user preferred, and the test should make sure that the themes are always the same

The test should account for two different state of the user, and 3 different states of the theme:
while the user is logged out:

visit /learn/2022/responsive-web-design/learn-html-by-building-a-cat-photo-app/step-23
set your preferred-scheme to light, themes should be in sync
set your preferred-scheme to dark, themes should be in sync

Note to set preferred-scheme from devtools press Ctrl + P, then press > and select it.
while the user is logged in

visit /learn/2022/responsive-web-design/learn-html-by-building-a-cat-photo-app/step-23
set your theme to default, themes should be in sync
set your theme to night, themes should be in sync

Additional context
Thanks to Tom link, you can find out how to test colors through Cypress through this article https://blog.devgenius.io/how-to-make-a-cypress-test-for-prefers-color-scheme-dark-42337138f727
Note: although I mentioned Cypress you are free to use any tools in the E2E folder
Here is the file: https://github.com/freeCodeCamp/freeCodeCamp/blob/main/client/src/templates/Challenges/classic/editor.tsx
Maybe I missed something, if you think there is more, please add it.
If you would like to fix this issue, please make sure you read our guidelines for contributing, we prioritize contributors following the instructions in our guides. Join us in our chat room or the forum if you need help contributing, our prolific contributors will guide you through this.

How the Monaco editor should look with  preferred-scheme  with dark value?
I don't see any difference

Ctrl + P is a windows command to print the current document. Choose another key combination to avoid problems.

It's chrome devtools that uses that shortcut.

Correct, not Firefox, MS Edge.... If the user is not specifically focused on the chrome devtools panel on a Windows m/c,  it will pop-up the print dialogue .

Right, but the context was setting the preferred theme inside devtools.

Sure, and it is just a note after all, but chrome is not specifically mentioned and ctrl+p currently displays an open file dialogue... in chrome. I'm just think it would probably be wiser to pick another key-combo.

Please, let's not discuss something isn't progressing the issue forward, so far there hasn't been a discussion on how the test can be implement.
If you are looking for ways to access the preferred-color-scheme in your browser, there are multiple guides online.
there is our chat room or the forum if you need help

I can't run onBeforeLoad before the window is ready because there will be no window object yet. I've tried using onLoad but the app isn't entering dark mode.

I'm managed to make some progress. I finally have the dark theme show up. It appears that window.matchMedia was used more heavily than I thought. Now I just need to find the right class names for the editor palette and we should be golden.

That's the tricky part, there is no className for the editor, it uses a object to set its style, we are only adding values through defineTheme
https://github.com/freeCodeCamp/freeCodeCamp/blob/7f21c5b4aeebcb8ffb4444e21fc3b1f5cd8d1b52/client/src/templates/Challenges/classic/editor.tsx#L195-L230
Here is the original file in monaco-editor https://github.com/microsoft/vscode/blob/93028e44ea7752bd53e2471051acbe6362e157e9/src/vs/editor/standalone/common/themes.ts

Hang on. I'm still a little confused about something. I think I'm doing something wrong here or there's an error that I didn't see in the console. The editor itself isn't turning to dark-theme despite everything else is dark. Additionally while signed in on the local website instance I have running, it also appears fine.

@a2937 Hey there, I was looking into this and was wondering if you're still working on it? I want to pick something up but not if someone is already working on it. Thanks! :)


Update tutorial-multiple-sites-cli.md

Command to create application gateway requires priority to be set , else command fails with below error:
root@jumpbox:~# az network application-gateway create \
>   --name myAppGateway \
>   --location eastus \
>   --resource-group myResourceGroupAG \
>   --vnet-name myVNet \
>   --subnet myAGsubnet \
>   --capacity 2 \
>   --sku Standard_v2 \
>   --http-settings-cookie-based-affinity Disabled \
>   --frontend-port 80 \
>   --http-settings-port 80 \
>   --http-settings-protocol Http \
>   --public-ip-address myAGPublicIPAddress
{"error":{"code":"InvalidTemplateDeployment","message":"The template deployment 'ag_deploy_3IcTICTZ0Kxfpo4jkw7Qj4g1eWhAlEaV' is not valid according to the validation procedure. The tracking id is '4ebf7211-543f-4ed7-83b3-76cbb55d32d3'. See inner errors for details.","details":[{"code":"ApplicationGatewayRequestRoutingRulePriorityCannotBeEmpty","message":"Priority for the request routing rule /subscriptions/4ff5187b-445f-4080-a09f-5565e458d856/resourceGroups/myResourceGroupAG/providers/Microsoft.Network/applicationGateways/myAppGateway/requestRoutingRules/rule1 cannot be empty. All request routing rules should have a priority defined starting from api-version 2021-08-01","details":[]}]}}

added --priority 10 option to command to produce successful result

@greg-lindsay
Can you review the proposed changes?
When the changes are ready for publication, add a #sign-off comment to signal that the PR is ready for the review team to merge.
#label:"aq-pr-triaged"
@MicrosoftDocs/public-repo-pr-review-team

#sign-off


feat: add cypress to docker-compose.yml

Run Cypress in Docker Compose with:
docker compose up cypress

Thanks for the PR!
Any successful deployments (not always required) will be available below.
Backend
Frontend
Oracle-API
Once merged, code will be promoted and handed off to following workflow run.
Main Merge Workflow

Thanks for the PR!
Any successful deployments (not always required) will be available below.
Backend
Frontend
Oracle-API
Once merged, code will be promoted and handed off to following workflow run.
Main Merge Workflow

mine fails because it can't find chrome :/

There are a few Cypress config changes before this 100% works, but it's close enough to merge the Docker Compose part.


OpenSora - Support for 720p and longer video (4+ seconds) ?

Hi,
First of all, thanks for your great work.
I have done some testings with Open-Sora and it seems working great with default configuration (480p with 2 secs video).
How ever, I ran into missing keys issue when I changed the config to 720p or longer video length (102 frames instead of 51).
[rank0]: Traceback (most recent call last):
[rank0]:   File "/data1/VideoSys/examples/open_sora/sample.py", line 27, in
[rank0]:     run_pab()
[rank0]:   File "/data1/VideoSys/examples/open_sora/sample.py", line 21, in run_pab
[rank0]:     video = engine.generate(prompt, resolution="720p", num_frames=102, aspect_ratio="16:9", refs=img_path, ms="0", aes=6.5, flow=3, condition_frame_length=7).video[0]
[rank0]:   File "/data1/VideoSys/videosys/core/engine.py", line 104, in generate
[rank0]:     return self._run_workers("generate", *args, **kwargs)[0]
[rank0]:   File "/data1/VideoSys/videosys/core/engine.py", line 95, in _run_workers
[rank0]:     driver_worker_output = driver_worker_method(*args, **kwargs)
[rank0]:   File "/home/jc1da/anaconda3/envs/opensorav2/lib/python3.9/site-packages/torch/utils/_contextlib.py", line 115, in decorate_context
[rank0]:     return func(*args, **kwargs)
[rank0]:   File "/data1/VideoSys/videosys/models/open_sora/pipeline.py", line 396, in generate
[rank0]:     samples = self.scheduler.sample(
[rank0]:   File "/data1/VideoSys/videosys/models/open_sora/rflow.py", line 253, in sample
[rank0]:     output = model(z_in, t, all_timesteps, **model_args)
[rank0]:   File "/home/jc1da/anaconda3/envs/opensorav2/lib/python3.9/site-packages/torch/nn/modules/module.py", line 1532, in _wrapped_call_impl
[rank0]:     return self._call_impl(*args, **kwargs)
[rank0]:   File "/home/jc1da/anaconda3/envs/opensorav2/lib/python3.9/site-packages/torch/nn/modules/module.py", line 1541, in _call_impl
[rank0]:     return forward_call(*args, **kwargs)
[rank0]:   File "/data1/VideoSys/videosys/models/open_sora/stdit3.py", line 520, in forward
[rank0]:     x = auto_grad_checkpoint(
[rank0]:   File "/data1/VideoSys/videosys/models/open_sora/utils.py", line 179, in auto_grad_checkpoint
[rank0]:     return module(*args, **kwargs)
[rank0]:   File "/home/jc1da/anaconda3/envs/opensorav2/lib/python3.9/site-packages/torch/nn/modules/module.py", line 1532, in _wrapped_call_impl
[rank0]:     return self._call_impl(*args, **kwargs)
[rank0]:   File "/home/jc1da/anaconda3/envs/opensorav2/lib/python3.9/site-packages/torch/nn/modules/module.py", line 1541, in _call_impl
[rank0]:     return forward_call(*args, **kwargs)
[rank0]:   File "/data1/VideoSys/videosys/models/open_sora/stdit3.py", line 199, in forward
[rank0]:     broadcast_mlp, self.mlp_count, broadcast_next, skip_range = if_broadcast_mlp(
[rank0]:   File "/data1/VideoSys/videosys/core/pab_mgr.py", line 234, in if_broadcast_mlp
[rank0]:     return PAB_MANAGER.if_skip_mlp(timestep, count, block_idx, all_timesteps, is_temporal)
[rank0]:   File "/data1/VideoSys/videosys/core/pab_mgr.py", line 127, in if_skip_mlp
[rank0]:     is_t_in_skip_config, skip_range = self._is_t_in_skip_config(all_timesteps, timestep, cur_config)
[rank0]:   File "/data1/VideoSys/videosys/core/pab_mgr.py", line 110, in _is_t_in_skip_config
[rank0]:     index = all_timesteps.index(key)
[rank0]: ValueError: 676 is not in list
Curious how can we fix it ourselves? or will updates be coming soon to support these configs?
Thanks a lot

thanks for your feedback. this has been fixed #174

it's working now. Thanks a lot for your quick fix :+1:


Client Crash when entering machine

Hi,
I've been experiencing client crashes every time I attempt to enter a machine. It happens regardless of if I've connected anything to the machine or not - no issues on that front, but even a completely unconnected machine will cause a crash. Due to references to dimensions and so on in the crash reports I tried changing which dimension is utilised by Compact Machines (in both the server and client config files, as I thought there may be some form of conflict), but this didn't result in any change in behaviour. No idea if it's me doing something terrible or a bug, but happy to give any further information if you want it.
This is with version 1.17 :)
Full crash report:
http://pastebin.com/Ytc9a7hZ

I would take a wild guess and put the fault on MystCraft. At least that is what the crash report suggests to me. I could bet that if you remove MystCraft, it would be fine. ^^

Yeah, I'd suspected Mystcraft but with people having used both on the same versions seemingly without issues, I was hoping it wasn't :(
Confirmed that removing Mystcraft worked; can enter and leave compact machines without issues now.

I suggest you open an issue in the Mystcraft issue tracker with a link to this issue.
I'm still curious if @thraaawn could do anything about the problem from his side.

It looks more like an issue with NotEnoughResources doing some dimension checks when mystcraft is installed, but not able to handle the cm dimension because it has no provider? @way2muchnoise @hilburn

@NonniT @thraaawn You should update NER to the latest dev build I fixed this already

Thanks for being awesome @way2muchnoise


Creating a legacy tool does not assign a default version

Describe the bug
If you create a legacy tool via the add tool dialog, the resulting tool has no default version. The dialog calls the endpoint in UserResource.
The refresh endpoint in DockerRepoResource does set a default version if one is not already set. The smoke tests
This slows down the smoke tests, as after they create a tool, they immediately refresh, just to set the default version, I think.
To Reproduce
Steps to reproduce the behavior:

Go to My Tools with a quay account registered
Add a tool via quickly registering
Click on versions tab
See no version is the default

See cypress/integration/smokeTests/sharedTests/auth-tests.ts for another example
Expected behavior
A default version should get set when creating a tool.
Additional context
Only verified on staging as part of research into https://ucsc-cgl.atlassian.net/browse/SEAB-4840. If this gets fixed, we should simplify the smoke test.
Webservice - 1.13.0-rc.0
UI - 2.10.0-rc.0
Compose Setup - 1.13.0-rc.0
Deploy - 1.12.6
galaxyParsingLambdaVersion: 0.0.7
┆Issue is synchronized with this Jira Story
┆friendlyId: DOCK-2238
┆sprint: Backlog
┆taskType: Story

A default version should get set when creating a tool.

How would this work with a legacy tool? Isn't it the refresh that creates versions in the first place?

I may have had tunnel vision when I created the issue, trying to fix the smoke tests. Maybe the answer is that we don't ever set the default version, and the fix is to remove the code that does set it. And the smoke tests should just set a default version instead of relying on the behavior of refresh.

How would this work with a legacy tool? Isn't it the refresh that creates versions in the first place?

This issue is for legacy tools.

The refresh endpoint called by the create tool dialog in UserResource, creates the versions and does not set a default.
The refresh endpoint in DockerRepoResource, invoked by clicking on the refresh button in the UI, may create new versions, and sets the default version if not already set.

The refresh endpoint called by the create tool dialog in UserResource, creates the versions and does not set a default.

The refresh endpoint in DockerRepoResource, invoked by clicking on the refresh button in the UI, may create new versions, and sets the default version if not already set.

There are two refresh endpoints for tools?

There are two refresh endpoints for tools?

They're slightly different, but yes.

UserResource -- called by the UI to create a new tool, with a parameter to scope it to one registry. This one doesn't set the default version.
DockerRepoResource -- refreshes a single tool. Called by the UI to refresh an existing tool. This one sets the default version.

Oh, I forgot about the first one. That looks like it does a whole org and should probably be deprecated/deleted,


Docs: mention --graph when talking about the task graph

What is the improvement or update you wish to see?

https://turbo.build/repo/docs/core-concepts/package-and-task-graph

This would be a good place to mention that a graph can be generated.
Is there any context that might help us understand?
Letting the reader know there is a visual representation of the task graph
Does the docs page already exist? Please link to it.
No response

Happy to take a PR for this!


change input background to transparent

make input background transparent.

Currently, text is impossible to see against the background-color

Hi @scottbarrow, thanks for contributing!
@aluxian is trying to keep things tidy and enforce a build process. He says that all changes should be done on develop, and only after they're tested should they be merged into staging, deploy, and then master.
Please submit this PR on branch develop, and then I'll urge him to take a look.


Less Nock Spam in Dumps

customer: @mariari
performer: @juped
deadline: null
estimated: null
started: null
actual: null
completed: null
confirmed: null
dependencies:

[ ]

I'm sick of seeing long nock lines in my debug output, let's just make a type and truncate the printer heavily

https://research.anoma.net/t/noun-format-notes/797
The format we wish to have for nouns can be found in the above post


Add text-based filter in members page for Member names

Changes proposed ✍
What
Fixes #1239

🤖 Generated by Copilot at 1cfca44
Added a new memberName filter for members in the frontend UI. Created a new file memberName/config.ts to define the filter config and imported it in filters/main.ts.

🤖 Generated by Copilot at 1cfca44

memberName filter
config file defines options
autumn leaves sorting

Why
How

🤖 Generated by Copilot at 1cfca44

Add memberName filter config for filtering members by name (link)
Import and use memberName filter config in main.ts (link)

Checklist ✅

[x] Label appropriately with Feature, Improvement, or Bug.
[ ] Add screehshots to the PR description for relevant FE changes
[ ] New backend functionality has been unit-tested.
[ ] API documentation has been updated (if necessary) (see docs on API documentation).
[ ] Quality standards are met.

@joanagmaia this is good to go, hopefully


helpers for docker setup and system

Codecov Report

Merging #316 into experimental will decrease coverage by 0.07%.
The diff coverage is 21.05%.

@@               Coverage Diff                @@
##           experimental     #316      +/-   ##
================================================
- Coverage         32.06%   31.99%   -0.08%
================================================
  Files                31       31
  Lines              2863     2882      +19
================================================
+ Hits                918      922       +4
- Misses             1945     1960      +15

Impacted Files
Coverage Δ

vent/helpers/meta.py
46.42% <21.05%> (-53.58%)
: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 41c2312...def91a9. Read the comment docs.


Question about assertj

I just have a question about assertj, and I could not find where else to ask this. My apologies for posting this as an issue.
I am new to assertj, and I need to know if it is capable of launching a windows executable file for an application that is using Java 8 (swing). Can it launch the .exe for the application under test, or can it only launch a .jar?
Thank you
Erika

Hi Erika,
Not sure I understand the question but if your goal is to test a swing application you should have a lookt at Assertj Swing : http://joel-costigliola.github.io/assertj/assertj-swing.html
Hope it helps.

Hi there,
Thank you for your reply. Sorry, I am a newbie!
Yes, my goal is to create automation tests for a swing application using
Eclipse IDE. However, I need to be able to automate launching of the
application itself which happens to be a windows desktop application. Is
that possible with Assertj Swing?
Thanks,
Erika
On Wed, Sep 30, 2015 at 3:51 PM, Joel Costigliola<EMAIL_ADDRESS>wrote:

Hi Erika,
Not sure I understand the question but if your goal is to test a swing
application you should have a lookt at Assertj Swing :
http://joel-costigliola.github.io/assertj/assertj-swing.html
Hope it helps.
—
Reply to this email directly or view it on GitHub
https://github.com/joel-costigliola/assertj-core/issues/494#issuecomment-144568039
.

As I'm not the AssertJ Swing component leader, I don't know.
You should ask the question directly to assertj-swing team, just create an issue in https://github.com/joel-costigliola/assertj-swing.
I'm closing this one as it is not related to assertj-core.
Cheers


[REQ] Desktop version of Fritter

Describe the problem that needs solving
This project appears to be heading in a good direction but it's mobile only. I get that it may be out of scope, but a desktop version of this app would be great.
Describe the solution you'd like
The ideal solution would be:

A desktop client in addition to the mobile app.
Synchronisation of follows/groups/etc between them. This part is a luxury but could be implemented relatively easily with an existing backup/sync solution (e.g. syncThing) moving the config files between devices. Config files would have to be in the exact same format for both mobile and desktop.

I don't care that much about the sync, I can easily live with a desktop version of Fritter with me having to manually adjust settings.

Fritter is amazing. I was shocked to find there is no similar desktop app. How hard is it to port it to desktop, let's say for Linux?

Fritter is amazing. I was shocked to find there is no similar desktop app. How hard is it to port it to desktop, let's say for Linux?

Particularly for linux support, it might be worth supporting projects like https://waydro.id/ (containered android linux with wayland support), fritter technically works under it:

Thank you for pointing out this option, I didn't know it existed.

No problem. Updated the screenshot as it even supports (desktop entries) for individual apps and launches them as standalone app windows. Polish/support needed at the waydroid level but the groundwork is there.

Fritter is amazing. I was shocked to find there is no similar desktop app. How hard is it to port it to desktop, let's say for Linux?

Currently the db constrcutor uses 'sqflite' with no linux and windows.After looking into database it seems it needs some rewites with 'sqflite_common_ffi' library to work on linux and windows.


Documentation for GraphFeaturePreprocessor

@andreea-anghel: there is already some data and examples here:
https://github.ibm.com/ai-foundation/snapml/tree/jov-graph-preproc/test/graph-preprocessor/examples

@kubilay-atasu yes, those could be used, but is it ok to release the aml_e_small dataset used by these examples? if yes, then no need for a code snippet in the documentation.

@andreea-anghel I see that both the dataset and the example scripts using it are part of the PR you have created:
https://github.ibm.com/ai-foundation/snapml/pull/625
Did you plan to remove them?

There is also a very small dataset I had created for testing the features extracted. See aml_custom_* here:
https://github.ibm.com/ai-foundation/snapml/tree/jov-graph-preproc/test/graph-preprocessor/input
We are using this dataset already in the unittests:
https://github.ibm.com/ai-foundation/snapml/blob/jov-graph-preproc/test/graph-preprocessor/UnitTests.py
class GraphFeaturesCustomTest(unittest.TestCase):

The custom dataset is not created using Erik Altman's simulator. We can use it as we wish.

@andreea-anghel I see that both the dataset and the example scripts using it are part of the PR you have created: https://github.ibm.com/ai-foundation/snapml/pull/625
Did you plan to remove them?

No. Those examples are not public anywhere, just stored in the SnapML repository for development/testing. The public examples will be available here https://github.com/IBM/snapml-examples/tree/main/examples/training. Here will go the notebook that I will create based on the examples provided in the SnapML repository.

The custom dataset is not created using Erik Altman's simulator. We can use it as we wish.

@kubilay-atasu Ok, great! Then let's use this custom dataset. I will create the notebook based on this one. And we don't add any more code snippets to the documentation. Would you agree?

Agreed, but note that the custom dataset is only for testing the feature extraction, and not for inference. There are no labels, and it is too small to train anything on it anyway.

Agreed, but note that the custom dataset is only for testing the feature extraction, and not for inference. There are no labels, and it is too small to train anything on it anyway.

Absolutely, just to show how to use API of the new Snap ML feature.
Forperformance, we will need to wait and see what big dataset to use publicly.

please do not merge until we have the new feature out, thanks!


I Want to make search bar functional with a movie API

when any people search for a movie It will give all the information about the given movies on a new page through movie API.  you can search any movie on this and it will show all the related  movies according to the search query and all the details like imdb ratings ,etc. @QAZIMAAZARSHAD  , can you assign me this issue under LGM-SOC'21.

@KunalSharmaCoder this issue is already open #6.
Before opening any issues make sure that no other similar issue is open.


Update name of OpenStack Infrastructure

Change OpenStack infrastructure to "OpenStack Platform Director" in an attempt to call attention to the fact that a very specific type of OpenStack Infrastructure is supported.
https://bugzilla.redhat.com/show_bug.cgi?id=1249692
https://bugzilla.redhat.com/show_bug.cgi?id=1251139

Some screenshots

@blomquisg The second Travis failure validates the exact string you are changing.  The first failure looks like it is sporadic and nothing to do with your change.

@chessbyte, I ran a selective set of tests in UI and Controllers hoping I'd cover the most likely offenders.  Didn't even think to check models.


ViT patch Embeddings fallback warning message and need for optimization (new TM)

Describe the bug
vit_patch_embeddings module includes 6 TM steps of permute and reshape and processing on a tensor with rank 6.
I had to modify few asserts to enable tensors with rank 6. the current error message:
 ttnn.reshape: falling back to torch due to reshape(): incompatible function arguments. The following argument types are supported:
    1. (tensor: tt_lib.tensor.Tensor, shape: ttnn._ttnn.types.Shape) -> tt_lib.tensor.Tensor
    2. (tensor: tt_lib.tensor.Tensor, shape: List[int[1]]) -> tt_lib.tensor.Tensor
2024-03-11 15:42:11.641 | WARNING  | ttnn.decorators:call_wrapper:232 - ttnn.reshape: falling back to torch due to reshape(): incompatible function arguments. The following argument types are supported:
    1. (tensor: tt_lib.tensor.Tensor, shape: ttnn._ttnn.types.Shape) -> tt_lib.tensor.Tensor
    2. (tensor: tt_lib.tensor.Tensor, shape: List[int[1]]) -> tt_lib.tensor.Tensor
                 Always | FATAL    | Unable to reshape given tensor!
2024-03-11 15:42:11.653 | WARNING  | ttnn.decorators:call_wrapper:232 - ttnn.reshape: falling back to torch due to TT_THROW @ ttnn/cpp/ttnn/operations/core.hpp:82: tt::exception
info:
Unable to reshape given tensor!
                 Always | FATAL    | Unable to reshape given tensor!
2024-03-11 15:42:13.010 | WARNING  | ttnn.decorators:call_wrapper:232 - ttnn.reshape: falling back to torch due to TT_THROW @ ttnn/cpp/ttnn/operations/core.hpp:82: tt::exception
info:
Unable to reshape given tensor!

To Reproduce
Steps to reproduce the behavior:

https://github.com/tenstorrent-metal/tt-metal/blob/mbahnas/ttnn_vit_classify/tests/ttnn/integration_tests/vit/test_ttnn_optimized_vit.py::test_vit_patch_embeddings
https://github.com/tenstorrent-metal/tt-metal/blob/mbahnas/ttnn_vit_classify/tests/ttnn/integration_tests/vit/test_ttnn_optimized_vit_highres.py::test_vit_patch_embeddings

Expected behavior
Running the test with no error message and getting a PCC=0.999
current: PCC: 0.998255238968629
Screenshots
 pixel_values = ttnn.to_layout(pixel_values, layout=ttnn.ROW_MAJOR_LAYOUT)
 pixel_values = ttnn.reshape(pixel_values, (batch_size, img_c, img_h, patch_count, patch_size))
 pixel_values = ttnn.reshape(pixel_values, (batch_size, img_c, patch_count, patch_size, patch_count, patch_size))
 pixel_values = ttnn.permute(pixel_values, (0, 1, 2, 4, 3, 5))
 pixel_values = ttnn.reshape(pixel_values, (batch_size, img_c, patch_count_sq, patch_size_sq))
 pixel_values = ttnn.permute(pixel_values, (0, 2, 1, 3))
 pixel_values = ttnn.reshape(pixel_values, (batch_size, patch_count_sq, patch_size_sq_trpl))
 pixel_values = ttnn.to_layout(pixel_values, dtype=ttnn.bfloat8_b, layout=ttnn.TILE_LAYOUT)

Please complete the following environment information:

OS: [e.g. Ubuntu 20.04]
Version of software (eg. commit)

Additional context
Add any other context about the problem here.

@arakhmati, is this a kernel writer issue or a ttnn infra issue?

c.c. @eyonland as well.

@jliangTT @mbahnasTT the message means that we weren't able to run the reshape on the device. And as you can see, the next message is:
2024-03-11 15:42:13.010 | WARNING  | ttnn.decorators:call_wrapper:232 - ttnn.reshape: falling back to torch due to TT_THROW @ ttnn/cpp/ttnn/operations/core.hpp:82: tt::exception
info:
Unable to reshape given tensor!

So, it is a feature of ttnn to use the torch fallback (when one is available and ttnn operation fails to run)

Also, I ran the test. It looks like we need a custom Data Movement operation to transform the input instead of calling reshapes and permutes. And the PCC difference can be explained due to float32 and bfloat8_b differences

adding @tarafdarTT on this. Can you take a look if this falls on your plate?

@arakhmati , based on your feedback, what needs to be done here? (sorry i don't have a good feel of next step, that is why i am pulling in @tarafdarTT  to comment as well)

Given @arakhmati's comment of us requiring a data movement operation to transform the input instead of doing a reshape, this will fall on my plate.
I will need to sync with him to figure out what that data movement operation will entail though.

thanks @tarafdarTT for this. let me know if you have bandwidth to support this with other request from the javelin team.

np @jliangTT , at the moment I'm a little low on bandwidth. I might have some time next week so it depends on the urgency.
I think @yan-zaretskiy who's also on TMs is ooo until Tuesday as well.
Would we be able to pull someone else in for this specific issue in the meantime. I think @tt-aho is also familiar with embeddings and TMs. (he may also be low on bandwidth as well though)

please prioritize the javelin stuff first and come back to this as soon as you can wrap up. what is the t-shirt size on this? is this something with the short turnaround time?

sure thing, I was just spooked by the customer bug and P1 priority on this.

regarding turn around time, I am not sure exactly, I will need to sync with @arakhmati or @mbahnasTT to figure out what they need from the data movement kernel.

To clarify it more, this is the full code snippet of the needed OP, as well as a carton to illustrate the objective.
P.S., I'll update the code to support non-square images.
pixel_values = ttnn.to_layout(pixel_values, layout=ttnn.ROW_MAJOR_LAYOUT)
 pixel_values = ttnn.reshape(pixel_values, (batch_size, img_c, img_h, patch_count, patch_size))
 pixel_values = ttnn.reshape(pixel_values, (batch_size, img_c, patch_count, patch_size, patch_count, patch_size))
 pixel_values = ttnn.permute(pixel_values, (0, 1, 2, 4, 3, 5))
 pixel_values = ttnn.reshape(pixel_values, (batch_size, img_c, patch_count_sq, patch_size_sq))
 pixel_values = ttnn.permute(pixel_values, (0, 2, 1, 3))
 pixel_values = ttnn.reshape(pixel_values, (batch_size, patch_count_sq, patch_size_sq_trpl))
 pixel_values = ttnn.to_layout(pixel_values, dtype=ttnn.bfloat8_b, layout=ttnn.TILE_LAYOUT)

https://tenstorrent.slack.com/archives/C065NUB85K3/p1706056896959419

thanks @mbahnasTT , I'll try to digest this a bit. Find me in the office today, I might not have time to work on it, but since I'm in town let's make sure I understand the op so I can give @jliangTT an estimate.

Updated info, the ViT full model = embeddings + encoder
The encoder only e2e runtime (on 224x224 b=8) is 425 FPS  [optimized-L1-interleaved]
The full model e2e runtime is 16 FPS
So, we can quantify the impact of the embedding runtime

updating some information here that we spoke about on slack, posting here for completion.
file to look at: tests/ttnn/unit_tests/operations/test_embedding.py
this has your examples:
here we have a 2D vector input, (batch_size, sentence_size)  with weights that are 2D as well of vocabulary_size, hidden_embedding_dim size
the output should be (sentence_size, hidden_embeding_dim_size)
for you i think the 2D rectangle thats a single batch, should get flattened onto what we refer to as a sentence.
if you can flatten the batch into a sentence, you should be able to use the embedding op
Flatten with reshape:
original shape [batch , x, y] -> [batch, x*y]

Solved by using tt_lib.tensor.fold Thanks @yan-zaretskiy and @tarafdarTT

# on cpu
    pixel_values = torch.permute(torch_pixel_values, (0, 2, 3, 1))
    pixel_values = torch.nn.functional.pad(pixel_values, (0,1,0,0,0,0,0,0))
# on device
    pixel_values = ttnn.from_torch(pixel_values, dtype=ttnn.bfloat16, layout=ttnn.ROW_MAJOR_LAYOUT, device=device)
    batch_size, img_h, img_w, img_c = pixel_values.shape # permuted input NHWC
    patch_size = 16
    patch_count = img_h // patch_size  # 14
    patch_size_sq_trpl = int(patch_size * patch_size * 3)  # 768
    patch_count_all = int(patch_count * patch_count)  # 196
    stride_h = patch_size
    stride_w = 1
    pixel_values = ttnn.reshape(pixel_values, (batch_size, img_h, img_w // patch_size, 4 * patch_size))
    pixel_values = ttl.tensor.fold(pixel_values, stride_h, stride_w)
    pixel_values = ttnn.to_layout(pixel_values, layout=ttnn.TILE_LAYOUT)


Provide a way to validate refuse data into ingestion strategies

We need to highlight into the ingestion strategy if the data is refused.
We can attach the dead letter queue mechanism in order to simplify the debug process.
Thanks @moxious for pointing this.

While you were away we merged this PR that's related to error handling, to try to centralize all error & DLQ handling.
https://github.com/neo4j-contrib/neo4j-streams/pull/231
A critical piece here is that error tolerance is now a configurable property of the plugin, and I think we've centralized that stuff.   This should be relevant to the way this issue is tackled.
There are several classes of when we'd want to refuse data:

When it totally doesn't make sense.   I.e. CUD format is invalid, it isn't JSON, parse fails, is greater than some payload limitation size.
When it does make sense, but fails some validation check.
Something else?

I would advocate that each ingestion strategy should have some methods that perform validation on input, and then we always run those first and handle errors in a unified way before the ingestion strategy even gets a chance to consume the message.
We can then start with lightweight validation and improve it over time.   This should all be subject to the PR linked above.  So when validation fails, the error handling mechanism (tolerance, DLQ usage, etc) -- should all dictate what happens with that error.

Doesn't this happen automatically today if we raise an error?
There might be some places where we silently skip stuff?

I believe mostly we're not looking for or raising errors.  There may be some situations where if we're given bad data, it fails due to a bad assumption.  In these cases it might be hard to spot since you might end up with an exception down in the code that doesn't indicate data format.
Up-front validation and fast failing is better, IMHO


Add support for descriptions to Text Columns

This PR allows you to add a description above or below the label in a regular text column. I've wanted this on several occasions already and I think it should really be a core feature. It's both very useful and beautiful at the same time.
TextColumn::make('title')
    ->description(fn(Model $record) => $record->description)

By default, the description is shown below the actual label. However, you can choose to display the description above the label using the ->showDescriptionOnTop() method:
TextColumn::make('title')
    ->description(fn(Model $record) => $record->description)
    ->showDescriptionOnTop()

Example below:

Example on top:

Looks also fine in dark mode:

Thanks!

We should probably allow setting the position from the description method too, as a second argument with a default value.

@ryangjchandler Added, thanks!

What about renaming description to sublabel?

Not sure ->label() in Ralph's original example is correct, that is changing the label of the entire column... the main cell content is fetched from the record automatically based on the column name.

Not sure ->label() in Ralph's original example is correct, that is changing the label of the entire column... the main cell content is fetched from the record automatically based on the column name.

Yeah, I think that led me to make the bad sublabel suggestion. Only see what's wrong in the example now. 😅

is it relevant to add the HtmlString type too?

Yes, and we should be parsing markdown & sanitising by default as well, probably

Yes, and we should be parsing markdown & sanitising by default as well, probably

– Added support for HtmlString
– Added support for parsing markdown.
– Added HTML sanitization.

Added docs as well.

I think we should switch out showDescriptionOnTop() with descriptionPosition('above' / 'below').
description('Description', string | Closure | null position: 'above')
getDescriptionPosition(): ?string
In the view: $getDescriptionPosition() ?? 'below'

Done!

Thanks


copy text from GUI is annoying, it constantly deselects the selected text

❗ please do not add sensitive information in issues, you can provide extra information via email using issue number as reference ❗
Describe the issue
While working with the GUI you want to be able to copy f.e. a queue name from the adapter page but the only way to do this is select the text hold the mouse and ctrl-C simultaneously
I would like to be able to copy texts anywhere from the Gui
Reporter
jjansenvr

This seems to happen on the status page, each time the configuration poller callback has run and on the expanded adapters where some adapter information is updated.
Strangely this doesn't seem to occur on adapters that don't have updated info/stats.
note: this is before improvements of AppComponent, AppService & Poller, this should be tested again after

Maybe diving parts of the status page into nested components will help debug this behaviour more

I wrote an automated test to check that my adapter does not have warnings. I have an adapter that definitely has warnings:

The DOM elements of the warnings have attribute data-cy-status-alert. My Cypress test checks that there are no DOM elements with attribute data-cy-status-alert. The test should fail but it succeeds.
When I look at the Cypress window I see a stream of HTTP requests:

It looks like the list of alerts is refreshed after each of these requests. During a refresh the status warnings may vanish, causing the test to succeed unjustified.

My previous comment is wrong. When I change my test to have: cy.get('.alert-warning', {timeout: 10000}).should('have.length', 0), then it behaves as I want. Probably I put attribute data-cy-status-alert on the wrong element in the HTML source code.

I updated my test not to depend on some data-cy. Now I think this issue is indeed relevant for my Cypress test:

Are you sure you're using the correct selector? I believe your problem is unrelated...

In my cypress test I made a workaround that checks multiple times whether there are no warnings. I will remove that workaround and check whether that makes the test flaky or incorrect.

@nielsm5, I think you are right that the issue with my Cypress test is unrelated to the present issue. To check this, I first simplified my test to check only once that there are no warnings. Then my test erroneously passed - my config had an explicit attribute that repeated its default value. Then I added a wait of 5 seconds after my cy.visit() and before checking that there are no warnings. Then my test failed again as expected. It seems that not all elements of the adapter status page appear at the same time.

There is a specific http request to retrieve server, configuration & adapter warning information that is called when the web application is started and then every 60 seconds. Maybe this has some influence on your tests


Step 5 - Import objects into FileNet Content Manager - Step 2 BAWTOS ROKS CLUSTER CP4BA

I am following the lab at step 5 -import objects into FileNet there is no BAWTOS in the ACCE page. However, there is a "TARGET" object-store class. Is this is what is supposed to be used.
BAWTOS is also referenced in Step 4 - Import the Workflow Solution sub-Step 11. Through 14.
I am using a preinstalled CP4BA ROKS cluster for this labs.

Updated the instructions.


Stack smashing protection mode

Hi Raphael,
This is so very helpful, thank you!
I hit a potential bug in examples/sd_jpg for which I think I found a partial fix. The default configuration for the ESP-IDF has stack smashing protection mode set to "Overall" which the example fails repeatedly (triggering restarts). Setting this to "Normal" in make menuconfig seems to fix the problem.
I'll try to learn more and hopefully find a fix that passes the more stringent protection mode.
Thanks again!

I had the same Problem, but after set
CONFIG_STACK_CHECK_NORM=y
is works fine...

Can you share a piece of the bug? Also feel free to open a PR to add this configurations to the doc.


Duplicated directory names in commit preview

Previewing a commit in the "repositories view" sometimes duplicates the names of some directories when showing the changed files so instead of "repo/dir1/dir2/dir3" I see "repo/dir1/dir2/dir2/dir3" which is a nonexistent path.
GitLens version: 9.8.2
VS Code version: 1.34.0
OS: Ubuntu 16.04 LTS

@nbozhinov are there symlinks at play here?
Can you please enable output channel logging by setting "gitlens.outputLevel": "debug" in your settings.json. This will enable logging to the GitLens channel in the Output pane. Once enabled, please reproduce the issue (if possible) and attach the log lines from the GitLens channel.

@eamodio no there are no symlinks in the paths that show this problem.
I've enabled the debug logging an am attaching the output from when the problem appeared. I've renamed my user and the project name due to company policy, but structure of the paths is preserved.
gitlens_debug_output.txt

@nbozhinov First is this still happening with v9.9.1? If so, in that log what paths would get duplicated? You mentioned that it "sometimes" happens -- it is at least consistent with the same files? Or any other details that you can tell me to help see it?

@eamodio yes it still happens with v9.9.1. It appears to be consistent with the same directory, but happens only on some commits, on others with the same files edited it appear normally. Also the problematic commit appears properly when viewed in GitLab.
The broken file path looks like this:

The directory "arch" should appear only once. This is in the "repositories" panel when previewing the current branch. This commit has been amended if this is of any relevance.
I am attaching the log from when the screenshot was taken, but it still doesn't mention this directory at all.
gitlens_debug.txt

Can you provide the output of the following git command, replacing <your-commit-id-here> with the sha of a commit that shows this file issue?
git log --name-status --format="%x3c%x2ff%x3e%n%x3cr%x3e%x20%H%n%x3ca%x3e%x20%aN%n%x3ce%x3e%x20%aE%n%x3cd%x3e%x20%at%n%x3cc%x3e%x20%ct%n%x3cp%x3e%x20%P%n%x3cs%x3e%n%B%n%x3c%x2fs%x3e%n%x3cf%x3e" -n1 -m -M <your-commit-id-here>

I am closing this issue because it needs more information and has not had recent activity.  Please re-open this issue when more details can be provided.
Thanks!


Add shadowInner style to docs

Add shadowInner to styling.md docs README.
Code reference: https://github.com/airbnb/react-sketchapp/blob/cee20156d3795c3e4899e746aafde7cd22a149e6/src/jsonUtils/style.ts#L89
Related issues/PRs

#160

Maybe, because it's a sketch specific style field, it should be in its own section? This section is more like the list of the RN properties that are(n't) supported by react-sketchapp.
What do you think?

👍 Was thinking of that. Should I move shadowSpread too, since that's not supported by React Native?

Ah yep good catch

I moved the shadows to a new shadow section (instead of layout), to mirror the React Native docs, and added a note of react-sketchapp only ones. Or maybe it would make more sense to have a react-sketchapp section?

Perfect, thanks

Np, thanks for cleaning up the file/text. I had left in extra spacing in the table for stylistic purposes to keep the width aligned for GitHub, but the website GitBook makes the tables full width anyway, so looks good 🙂.


Standardize props and events

We have several props and dispatched event names that are reused across components. Let's improve their consistency in naming and intent.
Todo

[ ] Combobox: change titleText to labelText

Prop names
WIP
Props that have different intent follow different aspirational rules.
The following MUST be followed:

Variants: use the name kind to represent a set of other named options for visual or interactive component representations
Use camelCase for multi-word prop names, but prefer single-word names
Use skeleton to represent the component in its respective skeleton state

The following SHOULD be followed:

Flags: props that toggle a feature via true or false values are represented as plain adjectives without an is prefix. Examples: expandable, selectable, selected. Prefer to have them default to false for easy truthy flagging. i.e. absense of selectable implies selectable == false, but the presence of selected toggles to true.
HTML attributes are provided via Type declarations and should not be included as explicit props unless it has special treatment as part of a component.

Appropriate: disabled for <Button>
Inappropriate: aria-label for <TextInput>

If a component contains an underlying interactive element, then a ref prop with 2-way binding should be provided. Appropriate elements include, but aren't limited to: input, button

Form components

labelText for the label
helperText for any helpful or hint text placement
HTML attributes: name, id, value, checked

Dispatched events
WIP
Forwarded events
WIP
$$restProps
See https://github.com/carbon-design-system/carbon-components-svelte/issues/1064#issuecomment-1375954124

$$restProps are always forwarded to the major element in a Component, such as <input /> for <TextInput>. It may be a good idea to provide an elementProps prop for other useful targets (example needed), though there are preferred conventions, including:

CSS variables for feature overrides
named slots for pocketed elements
wrapping a component with <Stack /> (#1384) or <div> to provide custom spacing or sectioning

Linking this: https://github.com/carbon-design-system/carbon-components-svelte/discussions/1420

Also related:

#1325
#534

I agree that we should only forward useful events.
A lot of components have a wrapping div in which many events are forwarded to. We should not forward events in these cases as it generates a lot of boilerplate code. A user can always wrap the component with a div and listen to events as they bubble up.
Furthermore, it can be confusing if we forward events to different elements.
Example:
<div
    on:click
    on:mouseover
    on:mouseenter
    on:mouseleave
>
   <input on:input />
</div>

@metonym I added "Prop ordering" above.
On another note, I noticed <Button> has a skeleton prop whereas other components like <TextInput> has a separate <TextInputSkeleton> component. Should we prefer props or components? I'd say components are better for tree-shaking. The user experience comparison would be:
As props:
<form method="POST" action="?/deleteProfile" use:enhance>
  <Button
    type="submit"
    kind="tertiary"
    size="lg"
    id="abc123"
    skeleton={!ready}
  />
    Delete Profile
  </Button>
</form>

As components:
{#if ready}
  <form method="POST" action="?/deleteProfile" use:enhance>
    <Button
      type="submit"
      kind="tertiary"
      size="lg"
      id="abc123"
      skeleton={!ready}
    />
      Delete Profile
    </Button>
  </form>
{:else}
  <ButtonSkeleton size="lg" />
{/if}

@theetrain agree - skeleton variants should live as standalone components. We should remove the skeleton prop.

Do we want to allow $$restProps for single-element components such as Button and Layer? Strictly speaking, it isn't a performance concern any more than attributes or buttonAttributes would be, and would allow for a less-cluttered API where possible.
Example with $$restProps:
<Button
  kind="secondary"
  type="submit"
  data-test-id="abc123"
>
  Save
</button>

Example without $$restProps:
<Button
  kind="secondary"
  type="submit"
  attributes={{ 'data-test-id': "abc123" }}
>
  Save
</button>

The main trade-off here is not having Carbon-specific props appear at the top of the autocomplete list; since it would alphabetize props and element attributes in one giant list.

Related comments: https://github.com/carbon-design-system/carbon-components-svelte/pull/1895#discussion_r1458187996, https://github.com/carbon-design-system/carbon-components-svelte/pull/1932#discussion_r1518998468
cc @metonym @brunnerh @SimpleProgrammingAU

My personal preference is for a uniform API. I like the idea of being able to use CDS Svelte and know I should never use $$restProps without exception.

I like the idea of being able to use CDS Svelte and know I should never use $$restProps without exception.

It just shifts things, instead you now need to know which attribute object is the relevant one if any (because the delineation of special properties and plain attributes is not entirely clear - see https://github.com/carbon-design-system/carbon-components-svelte/pull/1895#discussion_r1458187996). These properties are meant to standardize, but this is just not possible to the degree envisioned.
The syntax is also just plain worse, it is more verbose, noisy and forces a switch away from HTML to JS in the markup, even for static attributes. This goes against Svelte's core HTML-first approach.
I would argue for the continued use of $$restProps where there is a logical candidate for receiving them. E.g. for any form elements the primary interactive element (e.g. TextInput -> <input>, Select -> <select>, Button -> <a>/<button>).
Other elements that are important, like the root element for layout, a <label> or icon could have these additional attribute properties which hopefully should rarely need to be accessed at all.
In Svelte 5 rest props will further be strengthened with the ability to forward all event handlers. The feature was always meant to support the wrapping of elements in generic components, it does not make sense to me to ditch it.

@brunnerh if I were to formalize your note into a protocol, it could be:

When components contain 1 interactive element, use $$restProps on that element, and add attribute props for other elements when requested or where it makes the most sense (such as label).
When components contain more than 1 interactive element (examples: DataTable, Pagination, UIShell), add $$restProps to the outer-most wrapping element, if any; and provide individual attribute props for all interactive child elements).

Mind you, some extra considerations may need to be made for #1622 (thinking about use: and adapting links, buttons, and form) and Svelte 5, but I think the above protocol sounds agreeable.