import hell

I have been using gx for a couple of weeks now, and every so often i run into massive headaches.  I have running code, I import a new package, but the gx version referred to by my use of the new package returns an object which is on a different gx version than expected by my existing code.  for example:
./narc.go:260:26: cannot use dstore (type repo.Datastore) as type "gx/ipfs/QmPpegoMqhAEqjncrzArm7KVWAkCm78rqL2DPuNjhPrshg/go-datastore".Batching in argument to dht.NewDHT:
	repo.Datastore does not implement "gx/ipfs/QmPpegoMqhAEqjncrzArm7KVWAkCm78rqL2DPuNjhPrshg/go-datastore".Batching (wrong type for Batch method)
		have Batch() ("gx/ipfs/QmdHG8MAuARdGHxx4rPQASLcvhz24fzjSQq7AJRAQEorq5/go-datastore".Batch, error)
		want Batch() ("gx/ipfs/QmPpegoMqhAEqjncrzArm7KVWAkCm78rqL2DPuNjhPrshg/go-datastore".Batch, error)

How, in the general case, is a developer meant to resolve issues like this?  I want to import a few packages which have differently versioned dependancies of the same package.  I can see using gx deps dupes that they are there, but I don't know where in the dependency tree they exist, and have no idea what to do about it.
I would need to import or use a previous version of some package, where the constructor I call returns an object where the gx-ified type matches what my existing code expects, but I haven't a clue how to go about it.  Any thought?

This is the main sticking point with full version locking. All the versions in the tree need to match. We have a (still fairly WIP) tool called gx-workspace that helps to bubble up changes to dependencies throughout the tree.
One proposal I have that would help to side-step this issue is giving packages the ability to pull all dependencies from a given registry: https://github.com/whyrusleeping/gx/issues/151
It would then be on the registry maintainers shoulders to ensure that all the packages interop with eachother properly (which is a bit easier than it sounds, and can be automated) but then any package wanting to use gx packages just needs to say "use deps from registry X" and periodically they can just update the registry reference to get new packages.
There is a lot of tooling we can build that makes all this a lot simpler. We just need to find time to go build it.
Sorry for the late reply, Thanks for trying out gx :)

having worked with tool now for a month or so, as a user - one thing that stands out is that I dont have a convenient way to decide which versions of the dependancies I want: the package owner has to do a release with a named version.  If the dependency tree is deep and wide (as we see in libp2p) this results in a lot of contraints between compatible versions.  Recently, I've been building the un-gxified version without any dependancy management, and its more reliable in the sense that I can usually get it to build.  One idea I have is that there could be a command to "freeze" and "update" deps.  When you freeze, it cuts a brand new version for each dependency - exactly as it is at that moment in your $GOPATH and updates package.json with the resulting hashes.  Now the deps themselves and their children (recursively) also need to be published for this to work - but that seems doable - at least from a distance.
The payoff is, I as a user, can adjust my regular un-rewritten libs the way I want for my deps, and run a single command to freeze them, or unfreeze and refreeze as required without any worries about when the package owners/maintainers cut releases. I don't care about interdependencies at all - and I don't need a crummy vendor directory with a full copy of everything and can rely on ipfs to deduplicate content.


How to launch application locally

Hi,
Could you add information on how to launch the web app locally?
Thank you.

Ok Thanks raelliss, i cant make promises but when i make the time i will redo the code in this project.
thanks for raising


Added agent to get video transcripts.

Added an agent (in reference to issue #70) to retrieve video transcripts in raw format or with timestamps.

Getting the error:
[BACKEND]     "parameters": self.parameters,
[BACKEND]                   ^^^^^^^^^^^^^^^
[BACKEND] AttributeError: 'VideoTranscriptionAgent' object has no attribute 'parameters'. Did you mean: 'get_parameters'?

Hey @ashish-spext, the error 'VideoTranscriptionAgent' object has no attribute 'parameters', naming conventions are corrected and conflicts are resolved in the latest commit.
Thanks.

Awesome! Let me test it in a while.

Hi @ashish-spext, I've made the requested changes.
Could you please review them and let me know if there's anything else you'd like me to add to this PR?

Thanks for the changes.
Can you please pull to resolve the conflicts.
@ankit-v2-3 from our team will take up the review.

@sarfarazsiddiquii We are planning to add you agent to main by this week, Can you please address the requested change and resolve the conflict?

@sarfarazsiddiquii We are planning to add you agent to main by this week, Can you please address the requested change and resolve the conflict?

@ankit-v2-3 I’ve made the requested changes. let me know if there’s anything else that needs change.
Thanks.


Invalid portal destination

Spigot 1.13.2 latest
Multiverse-Core version 3.0.0-b760
Multiverse-Portals version 3.0.0-b788
Per the MV-Portals documentation
Destination can either another portal (p:portalname), world (w:worldname), position (e:WORLD:X,Y,Z[:PITCH:YAW]), or current position (here).

If I edit portals.yml to specify
  lobby_blackdog:
    entryfee:
      amount: 0.0
    safeteleport: true
    teleportnonplayers: false
    handlerscript: ''
    owner: rambeau
    location: 2.0,4.0,-6.0:3.0,6.0,-6.0
    world: world_lobby
    destination: here

then on start-up, MV-Core reports
[06:12:16] [Server thread/WARN]: [Multiverse-Core] Portal lobby_blackdog has an invalid DESTINATION!

The here destination works fine in-game (or at least, doesn't send the player elsewhere), but am I misreading the documentation?
Note that the destination cannot be set to here with commands. For now, I changed it to explicit e:world_lobby:x,y,z which is accepted by the parser.

Destination "here" is recognized in the code: ModifyCommand.java. It would be nice if it were recognized in portals.yml.

Does [Assistance] mean that more information is needed?

The destination here refers to the location of the player executing the command. So it cannot be set in the config. If you feel that my answer has cleared it up, feel free to close this issue! If not, please let us know.

Oh, and assistance means that we don't think anything is wrong, and that everything is working as expected. So assistance just means the user who posted needs some help figuring something out.

Thanks.


HTMLFormatter for gedcomq

The q engine now supports outputting in HTML with "-format html". Internal types can implement Component like any other html package component to be rendered in such a way. If the object does not implement Component then its pretty JSON will be output as plain fixed-width text.
To make this happen I've had to split the html package into html and html/core where core contains only components that do not need to reference the gedcom package, such as a HTML table. This is to get around a cyclic import.
Warnings in an entire document can now be rendered with:  gedcomq -gedcom file.ged -format html '.Warnings'
The QMarshaller has been removed. This was a stopgap so that the JSON outputted from warnings wasn't so verbose, but now that's not needed with the HTML formatter.
The core.Component (previously html.Component) renames the WriteTo() to WriteHTMLTo(). This makes a lot more sense when writing compatible components outside of the html package.

This change is

Codecov Report

Merging #253 into master will decrease coverage by 1.03%.
The diff coverage is 31.75%.

@@            Coverage Diff             @@
##           master     #253      +/-   ##
==========================================
- Coverage   64.97%   63.94%   -1.04%
==========================================
  Files         196      199       +3
  Lines        6342     6393      +51
==========================================
- Hits         4121     4088      -33
- Misses       2090     2172      +82
- Partials      131      133       +2

Impacted Files
Coverage Δ

unparsable_date_warning.go
71.42% <ø> (+32.96%)
:arrow_up:

child_born_before_parent_warning.go
85.71% <ø> (+28.57%)
:arrow_up:

siblings_born_too_close_warning.go
83.33% <ø> (+30.7%)
:arrow_up:

html/surname_index.go
0% <0%> (ø)
:arrow_up:

html/place_page.go
0% <0%> (ø)
:arrow_up:

gedcomdiff/main.go
0% <0%> (ø)
:arrow_up:

html/individual_name_and_sex.go
0% <0%> (ø)
:arrow_up:

html/individual_statistics.go
0% <0%> (ø)
:arrow_up:

html/core/keyed_table_row.go
0% <0%> (ø)

html/place_statistics.go
0% <0%> (ø)
:arrow_up:

... and 104 more

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 1e027f9...465f601. Read the comment docs.


Update scala-library to 2.13.5

Updates org.scala-lang:scala-library from 2.13.4 to 2.13.5.
I'll automatically update this PR to resolve conflicts as long as you don't change it yourself.
If you'd like to skip this version, you can just close this PR. If you have any feedback, just mention me in the comments below.
Configure Scala Steward for your repository with a .scala-steward.conf file.
Have a fantastic day writing Scala!

Ignore future updates
Add this to your .scala-steward.conf file to ignore future updates of this dependency:
updates.ignore = [ { groupId = "org.scala-lang", artifactId = "scala-library" } ]

labels: library-update, semver-patch

Superseded by #170.


[Analysis Server] Dart type suggestion not work correctly since 1.22 !! (Benchmark proof 1.17, 1.20, 1.22)

Hi,
Flutter Dart type suggestion work bad 1.22 on intelij IDEA, suggestions are not relevant. We pass to many times to write all word instead of using suggestions system :/
I make two tests around with function call and type suggestions. I tested under theses versions of Flutter :

1.22.0
1.20.4
1.17.0

Result : 1.17 have better suggestions...

On flutter 1.22.0 :

Try to got print() function suggestion :
One letter :

Full word:

Try to got CrossAxisAlignment suggestions  :
Empty :

3 letters :

On fluttter 1.20.4:

Try to got print() function suggestion :
One letter :

Full word:

Try to got CrossAxisAlignment suggestions  :
Empty :

3 letters :

On flutter  1.17.0 :

Try to got print() function suggestion :
One letter :

Full word:

Try to got CrossAxisAlignment suggestions  :
Empty :

3 letters :

As you can see on these images, suggestions weren't based on type... I lose too much time...

I hope provided enough data about the problem.
Here my flutter doctor -v without flutter version (because changed for every test)

[✓] Android toolchain - develop for Android devices (Android SDK version 30.0.0)
    • Android SDK at /home/student/Android/Sdk
    • Platform android-30, build-tools 30.0.0
    • Java binary at: /snap/android-studio/91/android-studio/jre/bin/java
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b3-6222593)
    • All Android licenses accepted.

[✓] Android Studio (version 4.0)
    • Android Studio at /snap/android-studio/91/android-studio
    • Flutter plugin version 48.1.2
    • Dart plugin version 193.7547
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b3-6222593)

[✓] Connected device (1 available)
    • Android SDK built for x86 (mobile) • emulator-5554 • android-x86 • Android 10 (API 29) (emulator)

Can you provide information about where you're requesting code completion, what you expected to see, and what you mean by "not work correctly"?

For "print" example :
You can see that the suggestion which have the same length are not at first position… Why a larger word got the first position Instead of the one which match exactly ?
For the "crossAxisAlignement" :
Instead of display first all matching type suggestion (CrossAxisAlignment.center, CrossAxisAlignment.end, CrossAxisAlignment.start...), we got some boolean value, some context and for 1.20 a spam from cupertino... How can that be possible ?

They're is no precise location, because it's a general problem: it appear for every suggestion case…

Same here  :/
Even worse, the temporary solution from https://github.com/dart-lang/sdk/issues/38739#issuecomment-541432145 didn't work now

Same problem here, after upgrading to 1.22.1 autocomplete doesn't work anymore on VS Code even with "Auto Import Completions" turned off... it's really frustrating...
[flutter] flutter doctor -v
[√] Flutter (Channel stable, 1.22.1, on Microsoft Windows [Versione 10.0.17134.1726], locale it-IT)
    • Flutter version 1.22.1 at D:\Flutter\flutter
    • Framework revision f30b7f4db9 (5 days ago), 2020-10-08 10:06:30 -0700
    • Engine revision 75bef9f6c8
    • Dart version 2.10.1

[√] Android toolchain - develop for Android devices (Android SDK version 30.0.2)
    • Android SDK at C:\Users\2024\AppData\Local\Android\sdk
    • Platform android-30, build-tools 30.0.2
    • Java binary at: D:\Java\jdk1.8.0_191_x64\bin\java
    • Java version Java(TM) SE Runtime Environment (build 1.8.0_191-b12)
    • All Android licenses accepted.

[!] Android Studio (not installed)  <- please ignore it, it's a known problem with latest Android Studio 4.1
    • Android Studio not found; download from https://developer.android.com/studio/index.html
      (or visit https://flutter.dev/docs/get-started/install/windows#android-setup for detailed instructions).

[√] VS Code (version 1.50.0)
    • VS Code at C:\Users\2024\AppData\Local\Programs\Microsoft VS Code
    • Flutter extension version 3.15.0

I have the same problem but is only in Intellij in vscode works fine

For me IntelliJ and VSCode fails.

Here's an example where a constructor that matched the type of a named parameter used to be suggested first but no longer is (moved from https://github.com/dart-lang/sdk/issues/38739#issuecomment-756091370) without auto-imports (suggestion sets) or LSP:
Flutter 1.20.0:

Flutter 1.22.0:

I captured the relevance scores for each, and here's what they look like (TextStyle appears only with a relevance of 192, so is mixed in with the other classes):

Here's an example where a constructor that matched the type of a named parameter used to be suggested first but no longer is (moved from https://github.com/dart-lang/sdk/issues/38739#issuecomment-756091370) without auto-imports (suggestion sets) or LSP:
Flutter 1.20.0:

Flutter 1.22.0:

I captured the relevance scores for each, and here's what they look like (TextStyle appears only with a relevance of 192, so is mixed in with the other classes):

Dart's autocomplete is a real pain for ages. I have this another issue, currently is the Top#11 issue for Dart's SDK issues ranking:
https://github.com/dart-lang/sdk/issues/44273
My issue has some other examples of how terrible is the completion.
Please guys, give some love to the auto-complete!. I've seem some discussions about the next big deal for the language (after NNDB) being the pattern matching, but I really think Dart Team should put some efforts on fixing all those completion problems once and for all.

Dart's autocomplete is a real pain for ages. I have this another issue, currently is the Top#11 issue for Dart's SDK issues ranking:
https://github.com/dart-lang/sdk/issues/44273
My issue has some other examples of how terrible is the completion.
Please guys, give some love to the auto-complete!. I've seem some discussions about the next big deal for the language (after NNDB) being the pattern matching, but I really think Dart Team should put some efforts on fixing all those completion problems once and for all.

There have been some changes to completion since the above (for ex. LSP now uses NotImportedContributor). On latest Futter master, the TextStyle example above seems better, but the top few results are still slightly odd:

The top three items get a sort of 9999449 (which I think means a ranking of 550/551). The fourth result (TextStyle constructor) gets a sort of 9999458 (which I think means a ranking of 441/442). It seems a little odd that they're not the other way around (although, a named constructor on MaterialStateTextStyle or TextStyle would involve using those types), and Null definitely seems odd (null is valid here, but it would be odd to use the type, and even using null is probably unlikely for an optional named parameter that could be omitted).


Instructions for installing are outdated

See https://prismlauncher.org/wiki/getting-started/change-themes/
Now you just need to unzip the folder in the themes directory.

Will change this in a week to allow for people to switch to version 6.0

Updated, thank you for bringing this to my attention


The recorded .bag file is 30fps, but the read .bag file is 10fps

Before opening a new issue, we wanted to provide you with some useful suggestions (Click "Preview" above for a better view):

Consider checking out SDK examples.
Have you looked in our documentations?
Is you question a frequently asked one?
Try searching our GitHub Issues (open and closed) for a similar issue.

All users are welcomed to report bugs, ask questions, suggest or request enhancements and generally feel free to open new issue, even if they haven't followed any of the suggestions above :)

Required Info

Camera Model
D400

Firmware Version
5.14.0

Operating System & Version
Win 10

Kernel Version (Linux Only)

Platform
PC

SDK Version
{ legacy / 2.. }

Language
python}

Segment
others }

Issue Description
I record the .bag set 30fps, but I read the .bag file, I use get_timestamp()  find the frames interval 100ms, it means 10fps, not the recorded file I set. I am sure the .bag file has already set 30fps. I dont know why, can you help me? Thank you very much!!
Here my code
#coding=utf-8
import pyrealsense2 as rs
import numpy as np
import cv2
import os
import PIL
from PIL import Image
import matplotlib.pyplot as plt

ALIGN_WAY=1

def Align_version(frames,align,show_pic=0,save_pic=0):
    aligned_frames = align.process(frames)
    depth_frame_aligned = aligned_frames .get_depth_frame()
    color_frame_aligned = aligned_frames .get_color_frame()
    return color_frame_aligned,depth_frame_aligned

def save_image_results(prediction,save_depth_path):
    print(prediction.shape)
    vmin = prediction.min()
    vmax = prediction.max()
    save_to_dir = save_depth_path
    fig = plt.figure(figsize=(6.40, 4.80),dpi=100)
    ax = plt.Axes(fig, [0., 0., 1., 1.])
    ax.set_axis_off()
    fig.add_axes(ax)
    pred_map = ax.imshow(prediction, vmin=vmin, vmax=vmax, cmap='viridis')
    fig.colorbar(pred_map, ax=ax, shrink=0.8)
    fig.savefig(save_to_dir)
    plt.clf()

if __name__ == "__main__":
    # Configure depth and color streams
    pipeline = rs.pipeline()
    config = rs.config()

    config.enable_device_from_file("/home/puyiwen/Downloads/20230919_162605.bag")
    if ALIGN_WAY:
        way=rs.stream.color
    else:
        way=rs.stream.depth
    align = rs.align(way)
    profile =pipeline.start(config)

    depth_sensor = profile.get_device().first_depth_sensor()
    depth_scale = depth_sensor.get_depth_scale()
    print("scale:", depth_scale)
    save_path = '/home/puyiwen/Downloads/shumeipai/test'
    if not os.path.exists(save_path):
        os.mkdir(save_path)
    idx = 1
    print("Frames Captured")
    colorizer = rs.colorizer()
    while True:
        frames = pipeline.wait_for_frames()
        color_image_aligned_org,depth_image_aligned_org=Align_version(frames,align)
        depth_frame_time = depth_image_aligned_org.get_timestamp()
        depth_frame_time = depth_frame_time / 1000.0
        color_frame_time = color_image_aligned_org.get_timestamp()
        color_frame_time = color_frame_time / 1000.0
        print('depth_frame_time',depth_frame_time)
        print('color_frame_time',color_frame_time)
        color_image_aligned = np.asanyarray(color_image_aligned_org.get_data())
        color_image_aligned = cv2.cvtColor(color_image_aligned,cv2.COLOR_BGR2RGB)

        depth_image_aligned = depth_image_aligned_org

        depth_to_disparity = rs.disparity_transform(True)
        depth_image_aligned = depth_to_disparity.process(depth_image_aligned)

        spatial = rs.spatial_filter()
        spatial.set_option(rs.option.filter_magnitude, 2)
        spatial.set_option(rs.option.filter_smooth_alpha, 0.25)
        spatial.set_option(rs.option.filter_smooth_delta, 20)
        depth_image_aligned = spatial.process(depth_image_aligned)

        disparity_to_depth = rs.disparity_transform(False)
        depth_image_aligned = disparity_to_depth.process(depth_image_aligned)
        print('idx',idx)
        cv2.imwrite(os.path.join(save_path,str(idx)+'_rgb.png'),color_image_aligned)
        depth_color_frame = colorizer.colorize(depth_image_aligned)

        depth_color_frame = np.asanyarray(depth_color_frame.get_data())
        depth_image_aligned = np.asanyarray(depth_image_aligned.get_data())
        save_image_results(depth_image_aligned / 1000.0, os.path.join(save_path,str(idx)+'_depth_plt.png'))
        cv2.imwrite(os.path.join(save_path,str(idx)+'_depth.png'),depth_image_aligned)
        cv2.imwrite(os.path.join(save_path,str(idx)+'_depth_vis.png'),depth_color_frame)
        idx += 1
        if idx % 100 == 0:
            print('%d done'%idx)

        cv2.imshow("Depth Stream", color_image_aligned)
        key = cv2.waitKey(1)
        if key == 27:
            cv2.destroyAllWindows()
            break
    pipeline.stop()

Here the timestamp:

you can see, the timestamp almost 100ms one frame.

OK, I think I solve the problem, just add
set_real_time(False) and repeat_playback=False. I will close the issue.

Thanks very much @puyiwen for the update - it's great to hear that you achieved a solution!


adding a new option to delay subsequent collections

This should fix #304 by allowing a configurable delay. We were also hitting this error, and I figured a small addition shouldn't be too much.

@SuperQ - Please LMK thoughts!

Any reason why this was closed? I'm also seeing similar issues as in https://github.com/prometheus-community/stackdriver_exporter/issues/304.


"BundleError: No module named f" on Windows only

My traceback http://dumpz.org/1206696/
On this line https://github.com/sontek/pyramid_webassets/blob/master/pyramid_webassets/init.py#L108 pyramid_webassets try to split by ':' this path 'f:\itcase\sacrud\pyramid_sacrud\pyramid_sacrud\static\css_base.css' and set package as 'f'. Probably it's a bug.

Same problem here. Using pyramid . I had to change to windows susbystem for linux to make the project work.


chore(reactflow): add missing onSelectionContextMenu type reference

What's Changed?

Add missing onSelectionContextMenu type reference to ReactFlow.props.ts

It was pointed out in this discussion that onSelectionContextMenu isn't documented: https://github.com/xyflow/xyflow/discussions/3760

Thanks for this! 💕


Add support to Deno

Even with the latest version of deno it doesn't seem possible to use cdk8s.
Deno: v1.21.3
import { Chart } from<EMAIL_ADDRESS>import {Construct} from<EMAIL_ADDRESS>
class MyChart extends Chart {
  constructor(scope: Construct, ns: string) {
    super(scope, ns);

    // add contents here
  }
}

/**
 * hello-world.js
 */
function capitalize(word: string) {
  return word.charAt(0).toUpperCase() + word.slice(1);
}

function hello(name: string) {
  return "Hello " + capitalize(name);
}

console.log(hello("john"));
console.log(hello("Sarah"));
console.log(hello("kai"));

/**
 * Output:
 *
 * Hello John
 * Hello Sarah
 * Hello Kai
 */

deno --unstable run stack.ts

Uncaught SyntaxError: The requested module<EMAIL_ADDRESS>does not provide an export named 'Chart'
import { Chart } from<EMAIL_ADDRESS>

I've been using cdk8s with Deno for quite a while in https://github.com/shepherdjerred/homelab/tree/main/cdk8s
A few points:

I import cdk8s via esm.sh: https://github.com/shepherdjerred/homelab/blob/1a284559d18dc3cefd796cb14c103203babb9468/cdk8s/deno.json#L9-L10
I have a script to update cdk8s-generated files for Deno: https://github.com/shepherdjerred/homelab/blob/1a284559d18dc3cefd796cb14c103203babb9468/cdk8s/update-imports.ts
I don't use the cdk8s CLI to generate my manifest: https://github.com/shepherdjerred/homelab/blob/1a284559d18dc3cefd796cb14c103203babb9468/cdk8s/deno.json#L3
Here's my cdk8s.yaml: https://github.com/shepherdjerred/homelab/blob/main/cdk8s/cdk8s.yaml


[Feature Request] Run the command in --exec for comments

Checklist

[x] I'm reporting a feature request
[x] I've verified that I'm running yt-dlp version 2021.07.07
[x] I've searched the bugtracker for similar feature requests including closed ones

Description

I'm trying to download just comments (because I already have the videos downloaded) so I have --skip-download. However this means --exec won't run after each video's comments are saved. It would be great if the command could be run after comments are saved aswell.

Next release will have an option --exec-before-download


Total Production is dropping to zero

Since release v24.08.04 my microinverter total production value is shortly dropping to "0" and afterwards to the correct values. This leads to wrong statistics in the energy dashboard saying that the total production happend every day.
Would be great if the drop to zero on microinverter start can be avoided each day morning.
Since latest update dropping to zero

Before the update you see that the value is just "not available"

Ah, damn...
Would you be willing to test which beta version between versions 24.07.24 - 24.08.04 introduced this mess?

Yeah I guess you gonna have to do it manually then.
Even the latest commits as they are not part of any release yet.

Try 24.08.08

Try 24.08.08 pre-release.

Tried it, same issue. Dropping to zero every day the microinverter starts.

What device are you using?

Deye sun600g3-eu with deye 2mppt profile

Your issue is proly cause by this: fix: Deye microinverters validation lowered to 0.0
it now somehow makes sense why it was there... But it caused issues with new inverters...

Try it with definition profile from this commit: fix: Deye microinverters PV validation to 0.1

Confirmed as fixed in: https://github.com/davidrapan/ha-solarman/issues/76


Yup resolver problem with test function

Hello,
It seems there is a problem with the yupResolver, when there is a schema with test function.
This a CodeSandbox to reproduce the problem: https://codesandbox.io/s/yup-resolver-problem-with-yup-test-function-16r4d?file=/src/App.js
The form example has 3 inputs. The age is required, only here to illustrate that individual field can throw, as expected, an error.
But the test function, which checks if email or name are present, does not throw a ValidationError.
The onSubmit method shows that there is no error and that the data is an empty object. 😢

because .test doesn't return type from yup from my early inspection.
Take a look at this Codesandbox: https://codesandbox.io/s/pedantic-wright-2zp5v?file=/src/App.js

similar question here: https://github.com/react-hook-form/react-hook-form/discussions/2576

What is type, actually? If it is a name of a particular field, indeed we can't give it since test is built to check multiple fields, so this is a general validation problem.

What is type, actually? If it is a name of a particular field, indeed we can't give it since test is built to check multiple fields, so this is a general validation problem.

then how would RHF know which errors to be inserted?
you probably can help me the following error as well then:
https://codesandbox.io/s/pedantic-wright-2zp5v?file=/src/App.js
if you run above CSB, you will see the error:

I suspect that this error happens when RHF tries to populate the errors object and to find where to put the detail.
But I am surprised that it doesn't work neither if we use "file1" instead of "type" in your code sandbox, as first argument of test function.
I am not an expert in Yup, but since the test function has a name in first argument, this name could be used has a property in the errors object. This way, the developer coud display this error wherever he wants in React.
But in my initial problem (https://codesandbox.io/s/yup-resolver-problem-with-yup-test-function-16r4d?file=/src/App.js), I want to emphasize that no Validation Error is thrown! At the end, the validation passes and an empty object is submitted to the onSubmit. Problems are maybe related but they are different to me.

can you debug the schema.validate(values) and see what's sort errors its' returning?

For some reason, this is due to the context param in the yupResolver function.
https://codesandbox.io/s/yup-resolver-problem-with-yup-test-function-16r4d?file=/src/App.js:451-462
Try it with or without null for the second parameter, and with null, it returns an error object with a key undefined (this key sould be the first parameter of the yup test function, in my case globalError). Without this second parameter, there is no error and it returns an empty object for the data, so no clue to guess there was an error.
For information, I also tried with the custom yup resolver as it is described on the site, this time the Validation error is thrown as expected.
https://codesandbox.io/s/yup-resolver-problem-with-yup-test-function-with-custom-yup-resolver-5ibx0?file=/src/App.js

so is that an issue with Yup? or our usage is incorrect? if that's us, happy to see a PR if you know the fix.

I will be glad to help,  but unfortunately, I dont fully understand the yupResolver function. For example, how the context parameter is retrieved?
Is this https://react-hook-form.com/advanced-usage#CustomHookwithResolver is the only documentation for writing custom resolver?

it's getting invoked by useForm, so you saying the issue is due to context?

curious why context is causing this issue with Yup?

what if you just invoke schema.validate(values)?

what if you just invoke schema.validate(values)?

Yes, in this case the Validation Error is thrown as expected. See https://codesandbox.io/s/yup-resolver-problem-with-yup-test-function-with-custom-yup-resolver-5ibx0?file=/src/App.js
This is why I suspect that yupResolver has a bug.

the key is undefined tho 🤔

the key is undefined tho 🤔

Yes, this is because of  [currentError.path] which returns undefined.

that's the issue then. which field this error should be assigned then?

[currentError.path || currentError.type || "validation"]: {
    type: currentError.type ?? "validation",
    message: currentError.message
}

With something like this, you will always have a key to refer to.

what's "validation"? we can't just make up a type.

is there any way we can return type from yup.test?

could you create an issue/question there and reference this problem?

I my example, the error will be globalError, the first parameter of test yup function. So I can "subscribe" to this error in my JSX.

what's "validation"? we can't just make up a type.

I have copied/pasted the line above, which mentions the string "validation" as a fallback value for "type" property.

is it that an issue with yup, return the key as undefined? we can fix it, but it just feels strange return undefined as key? don't you think so?

It's not that. The undefined is due to the custom resolver and how it rebuilds an error object.
But Yup has sended this:
{
   "name":"ValidationError",
   "value":{
      "name":"",
      "email":""
   },
   "errors":[
      "Email or name are required"
   ],
   "inner":[
      {
         "name":"ValidationError",
         "value":{
            "name":"",
            "email":""
         },
         "type":"globalError",
         "errors":[
            "Email or name are required"
         ],
         "inner":[

         ],
         "message":"Email or name are required",
         "params":{
            "path":"this",
            "value":{
               "name":"",
               "email":""
            },
            "originalValue":{
               "name":"",
               "email":""
            }
         }
      }
   ],
   "message":"Email or name are required"
}

I suspect that  "path":"this", is not well evaluated and returns undefined.

I will take a deep look at it in the next following days, if u have time please jump in before I do 🙏

Thanks Bill! And thanks by the way for sharing us RHF, I really like it! 🎩
I will post an issue and reference this thread.

I will sort this out in the next couple days 👍 all good ❤

hey @pmaier983, would you be interested to give a crack on this one?

So the quick fix for now is to return true (or false 🤷) if the validation passes, and to throw and Error if the validation fails. This will create an error with name 'undefined'... not ideal, but is a good enough patch until I figure out whats going on.
const schema = yup
  .object({
    name: yup.string(),
    email: yup.string()
  })
  .test("globalError", "Email and name are required", function (value) {
    if (!_.isEmpty(value.name) && !_.isEmpty(value.email)) {
      return true;
    }
    throw Error("This Broke");
  });

Yup's validation doesn't work as expected even for required for file types. Wasted so much time on this to work but nothing worked. Finally removed the file validation from Yup and handled on server side. Still Looking for the solution.

Yup's validation doesn't work as expected even for required for file types when using with resolver. Wasted so much time on this to work but nothing worked. Finally removed the file validation from Yup and handled on server side. Still Looking for the solution.

can you share a codesandbox before anyone can help?


CORGI-302 openstack rdo

This removed Brew build_id as primary key on SoftwareBuild so we can use KOJI and CENTOS build systems in community mode. It also sets up for HACBS in Q1.
Also this started using build_type in the relations table. Settings as draft till I have more time to test.

@jasinner unsure of status of this (as CI is not passing) ... thinking maybe we hold off until back

ah I just read chat about this - will pick up and fix lint

I fixed flake8 and secrets tox targets now, and also rebase on current main. I'm going to kick off an import in community mode to kick the tyres on this a bit before taking it out of draft.

I tested this some more, but I found any error trying to load builds from CENTOS. After running loadproductdata management command, I confirmed there where 869 builds of type CENTOS in ProductComponentRelations table. However when trying to actually load the build data with loadbrewdata -a I get an error from the Brew Collector:
2023-01-09T03:43:31.730+00:00 thread=140079497545536, name=celery.app.trace, lineno=265, level=ERROR, app=corgi, environ=dev, msg="Task corgi.tasks.brew.slow_fetch_brew_build[89bbee2b-1479-4c32-9ce4-72f2401c7834] raised unexpected: AssertionError('baseurl argument must not be empty')"
Traceback (most recent call last):
  File "/usr/local/lib/python3.9/site-packages/celery/app/trace.py", line 451, in trace_task
    R = retval = fun(*args, **kwargs)
  File "/usr/local/lib/python3.9/site-packages/celery/app/trace.py", line 734, in __protected_call__
    return self.run(*args, **kwargs)
  File "/usr/local/lib/python3.9/site-packages/celery/app/autoretry.py", line 34, in run
    return task._orig_run(*args, **kwargs)
  File "/opt/app-root/src/corgi/tasks/brew.py", line 53, in slow_fetch_brew_build
    component = Brew(b_type).get_component_data(build_id)
  File "/opt/app-root/src/corgi/collectors/brew.py", line 82, in __init__
    self.koji_session = self.get_koji_session(settings.CENTOS_URL)
  File "/opt/app-root/src/corgi/collectors/brew.py", line 90, in get_koji_session
    return koji.ClientSession(url, opts={"serverca": settings.CA_CERT})
  File "/usr/local/lib/python3.9/site-packages/koji/__init__.py", line 2423, in __init__
    assert baseurl, "baseurl argument must not be empty"
AssertionError: baseurl argument must not be empty

Therefore I leave this in draft for now. Feel free to pick it up or leave it for when I get back from vacation.

I tested this some more, but I found any error trying to load builds from CENTOS. After running loadproductdata management command, I confirmed there where 869 builds of type CENTOS in ProductComponentRelations table. However when trying to actually load the build data with loadbrewdata -a I get an error from the Brew Collector:
2023-01-09T03:43:31.730+00:00 thread=140079497545536, name=celery.app.trace, lineno=265, level=ERROR, app=corgi, environ=dev, msg="Task corgi.tasks.brew.slow_fetch_brew_build[89bbee2b-1479-4c32-9ce4-72f2401c7834] raised unexpected: AssertionError('baseurl argument must not be empty')"
Traceback (most recent call last):
  File "/usr/local/lib/python3.9/site-packages/celery/app/trace.py", line 451, in trace_task
    R = retval = fun(*args, **kwargs)
  File "/usr/local/lib/python3.9/site-packages/celery/app/trace.py", line 734, in __protected_call__
    return self.run(*args, **kwargs)
  File "/usr/local/lib/python3.9/site-packages/celery/app/autoretry.py", line 34, in run
    return task._orig_run(*args, **kwargs)
  File "/opt/app-root/src/corgi/tasks/brew.py", line 53, in slow_fetch_brew_build
    component = Brew(b_type).get_component_data(build_id)
  File "/opt/app-root/src/corgi/collectors/brew.py", line 82, in __init__
    self.koji_session = self.get_koji_session(settings.CENTOS_URL)
  File "/opt/app-root/src/corgi/collectors/brew.py", line 90, in get_koji_session
    return koji.ClientSession(url, opts={"serverca": settings.CA_CERT})
  File "/usr/local/lib/python3.9/site-packages/koji/__init__.py", line 2423, in __init__
    assert baseurl, "baseurl argument must not be empty"
AssertionError: baseurl argument must not be empty

Therefore I leave this in draft for now. Feel free to pick it up or leave it for when I get back from vacation.

Actually this seems to only be a problem with the the -a option of loadbrewdata. The -s openstack-rdo option it seems to load most builds successfully. Marking as ready.

@juspence I rebased this on the current main branch. Is it OK to merge it now?

I tested this some more, but I found any error trying to load builds from CENTOS. After running loadproductdata management command, I confirmed there where 869 builds of type CENTOS in ProductComponentRelations table. However when trying to actually load the build data with loadbrewdata -a I get an error from the Brew Collector:

Were you able to reproduce this error, or is it fixed now?

Yes, I verified that loadbrewdata -a works as expected now.

I tested this some more, but I found any error trying to load builds from CENTOS. After running loadproductdata management command, I confirmed there where 869 builds of type CENTOS in ProductComponentRelations table. However when trying to actually load the build data with loadbrewdata -a I get an error from the Brew Collector:

Were you able to reproduce this error, or is it fixed now?

I verified 'loadbrewdata -a' works in both enterprise and community mode.

I tested this some more, but I found any error trying to load builds from CENTOS. After running loadproductdata management command, I confirmed there where 869 builds of type CENTOS in ProductComponentRelations table. However when trying to actually load the build data with loadbrewdata -a I get an error from the Brew Collector:

Were you able to reproduce this error, or is it fixed now?

It's fixed now. Verified in both enterprise and community mode.

Moving this back to draft for now to avoid merging until after we do the LCS release (post 1.2.1) next week.

Looking over this again since we're trying to get it merged before we bring in PNC builds such as Quarkus. The main thing that sticks out is that we still have SoftwareBuild.build_id as an integer where PNC uses alphanumeric build ids, eg 'AWYWRYDD3AQAA'.

I updated the build_id field of SoftwareBuild model to be type string in the latest version of this PR.
@RedHatProductSecurity/corgi-devs please review the last 3 commits here.

not that I think it should matter but worth stating that changing type of build_id may impact performance and/or implied sorting - alternately we could consider current build_id as an external_system_id and add other 'label id' for other build types - then add a UUID as the true primary key (which maybe we should have done at the beginning) - this would impacts downstream to the REST API, etc.


chore(docs): update local setup docs for submodule

Fixes #docs
Describe the changes you have made in this PR -

[x] add --recursive to cloning commands
[x] add git submodule update --init as fallback command

Screenshots of the changes (If any) -
N/A
Note: Please check Allow edits from maintainers. if you would like us to assist in the PR.

cc @tanmoysrt @vedant-jain03


UUID for endpoint GET Deployments should be type string not integer

https://github.com/coollabsio/documentation-coolify/blob/7e85208905157807cf6a8a11460fa6d13be73a10/openapi.yaml#L2854
Docs for Deployments is asking for an integer instead of a string

While the deployment_uuid its type string

I tested the API and its working fine, seems that its just the docs

It has been fixed. Thanks for noticing.


[release-1.0] Prevent creation of another Kubevirt

Signed-off-by: Luboslav Pivarc<EMAIL_ADDRESS>Signed-off-by: Antonio Cardace<EMAIL_ADDRESS>(cherry picked from commit 663fe0155ebc03655ed9f2253823fb698e8da16c)

What this PR does / why we need it:
Which issue(s) this PR fixes (optional, in fixes #<issue number>(, fixes #<issue_number>, ...) format, will close the issue(s) when PR gets merged):
Fixes #
Special notes for your reviewer:
Checklist
This checklist is not enforcing, but it's a reminder of items that could be relevant to every PR.
Approvers are expected to review this list.

[ ] Design: A design document was considered and is present (link) or not required
[ ] PR: The PR description is expressive enough and will help future contributors
[ ] Code: Write code that humans can understand and Keep it simple
[ ] Refactor: You have left the code cleaner than you found it (Boy Scout Rule)
[ ] Upgrade: Impact of this change on upgrade flows was considered and addressed if required
[ ] Testing: New code requires new unit tests. New features and bug fixes require at least on e2e test
[ ] Documentation: A user-guide update was considered and is present (link) or not required. You want a user-guide update if it's a user facing feature / API change.
[ ] Community: Announcement to kubevirt-dev was considered

Release note:

NONE

/hold
until https://github.com/kubevirt/kubevirt/pull/10511 gets merged

/approve

/test pull-kubevirt-e2e-k8s-1.27-sig-operator

/test pull-kubevirt-e2e-k8s-1.27-sig-operator-1.0

/retest

/unhold


Adding code coverage to circle CI and modify the build badge to show the coverage

Add code coverage metrics to circle CI and publish it in the build badge.
Refer:-
https://circleci.com/docs/2.0/code-coverage/#python

Hello @stationeros,
I can take this up.

Hi @stationeros @namitad . I can try taking up this issue.

Hi @namitad, I wanted to take this issue for gracehopperOSD.


Version of Composer should be persisted (stored in site config in nitro.yaml)

I had a problem with my Docker installation and lost all my containers, so I had to recreate them with nitro init. Thanks to nitro.yaml's declarative config, the new containers are identical to the old ones except for the version of Composer. I have some sites that aren't compatible with Composer 2, so I had followed the documented steps for downgrading to Composer 1. I wish the version of Composer was a site setting that was stored in nitro.yaml and used when setting up a site's container. Would that be possible?

Hi @benface! We gave this some thought and since composer 1 is now considered EOL and there are instructions to downgrade to version 1 in Nitro, we are not going to support defining the composer version on a sites configuration.


Adding time stamps [Add timestamp to Chat #1275]

Closes #1275

@mdmohsin7 can you tag this with the proper issue; I am not able to

resolve conflicts again @mdmohsin7 man haha, and, how does it look ? 1 screenshot / video demo would be great ~

@beastoin
https://github.com/user-attachments/assets/49a85a91-3ede-4d33-be01-c1e84d1dfbab

🧎

1/ sry but
@mdmohsin7

Let me fix it. can't see much on small screen haha

Removed padding, pls check now @beastoin

i trust your code @mdmohsin7 / lgtm 🥳


UCP: Filter netem related chaos with pod/ip/port

Description
At present, when we apply a delay/corrupt/duplicate/loss chaos, it will affect all connections.
However, one pod may connect with multiple different services. In a real production environment, different services may locate at different locations/machines, so the network conditions vary. We need chaos-mesh to simulate this situation and set different network chaos according to connection target/source IP or port.
All these chaoses are applied through tc-netem. As tc has a powerful filter mechanism, we can use it to set different network chaoses for different rules.
Managing multiple qdisc rules is quite complicated. We should take care of the balance between implementation complexity and usability.
Score
1679.5
Mentor(s)

@YangKeao

Contact the mentors: #tidb-challenge-program channel in TiDB Community Slack Workspace
Recommended Skills

Golang
tc command

Learning Materials

man page of tc filter
Classifying packets with filters
Development guide of chaos-mesh

/pick-up-challenge

/pick-up-challenge

For selective source and target, I'm going to follow network partition chaos pattern to specify direction between source and target, there are three options from, to, and both, do you have any concerns?
Thanks


Segmentation fault on muonGun_highE sample when using caching host allocator on some variables

Before #170, the master branch, in our standard configuration (-m8lxc), used to throw a segmentation fault when running the muonGun_highE sample. After some investigation, it turns out that this is connected with #138, more specifically with using the caching host allocator on some variables. Commit a09db36136fc143fc7541742bbee918ebb035589 seems to fix things but the reason is unclear.
How to reproduce/pinpoint the issue

Start from the master branch
git checkout -b b_ca9ca4b ca9ca4bb02953363c6fa98a92839ee37e6f67314 # Merge PR#138
sdl_make_tracklooper -m8lxc
sdl -n 50 -i muonGun_highE -l
This leads to segmentation fault.

Start from the master branch
git checkout -b b_5e81594 5e815945991d266187f6715ede0bea7ba976ff07 # Merge of previous PR (PR#137)
sdl_make_tracklooper -m8lxc
sdl -n 50 -i muonGun_highE -l
The code runs fine.

Segmentation fault stack trace
===========================================================
There was a crash.
This is the entire stack trace of all threads:
===========================================================

Thread 3 (Thread 0x7f31548e0700 (LWP 154314)):
#0  0x00007f3173929ccd in poll () from /lib64/libc.so.6
#1  0x00007f315b34cb11 in ?? () from /lib64/libcuda.so.1
#2  0x00007f315b3d6b5a in ?? () from /lib64/libcuda.so.1
#3  0x00007f315b31bf46 in ?? () from /lib64/libcuda.so.1
#4  0x00007f3173c0bea5 in start_thread () from /lib64/libpthread.so.0
#5  0x00007f31739349fd in clone () from /lib64/libc.so.6

Thread 2 (Thread 0x7f31550e1700 (LWP 154313)):
#0  0x00007f3173935e8f in accept4 () from /lib64/libc.so.6
#1  0x00007f315b34c243 in ?? () from /lib64/libcuda.so.1
#2  0x00007f315b31bf46 in ?? () from /lib64/libcuda.so.1
#3  0x00007f3173c0bea5 in start_thread () from /lib64/libpthread.so.0
#4  0x00007f31739349fd in clone () from /lib64/libc.so.6

Thread 1 (Thread 0x7f3170d41600 (LWP 154236)):
#0  0x00007f31738fb549 in waitpid () from /lib64/libc.so.6
#1  0x00007f3173878fb2 in do_system () from /lib64/libc.so.6
#2  0x00007f3173879361 in system () from /lib64/libc.so.6
#3  0x00007f31766ebb85 in TUnixSystem::StackTrace() () from /cvmfs/cms.cern.ch/slc7_amd64_gcc900/cms/cmssw/CMSSW_11_2_0_pre5/external/slc7_amd64_gcc900/lib/libCore.so
#4  0x00007f31766e8bdc in TUnixSystem::DispatchSignals(ESignals) () from /cvmfs/cms.cern.ch/slc7_amd64_gcc900/cms/cmssw/CMSSW_11_2_0_pre5/external/slc7_amd64_gcc900/lib/libCore.so
#5  <signal handler called>
#6  0x00007f315b2acc3d in ?? () from /lib64/libcuda.so.1
#7  0x00007f315b24f370 in ?? () from /lib64/libcuda.so.1
#8  0x00007f315b2fb1b3 in ?? () from /lib64/libcuda.so.1
#9  0x00007f317435ca78 in ?? () from /cvmfs/cms.cern.ch/slc7_amd64_gcc900/cms/cmssw/CMSSW_11_2_0_pre5/external/slc7_amd64_gcc900/lib/libcudart.so.11.0
#10 0x00007f3174388eb3 in cudaEventRecord_ptsz () from /cvmfs/cms.cern.ch/slc7_amd64_gcc900/cms/cmssw/CMSSW_11_2_0_pre5/external/slc7_amd64_gcc900/lib/libcudart.so.11.0
#11 0x00007f31768b2e6f in notcub::CachingHostAllocator::HostFree (d_ptr=0x7f3127ffc000, this=0x7f3176e95380 <cms::cuda::allocator::getCachingHostAllocator()::allocator>) at CachingHostAllocator.h:551
#12 cms::cuda::free_host (ptr=0x7f3127ffc000) at allocate.cc:63
#13 0x00007f31768c1848 in SDL::Event::createPixelQuintuplets (this=0x1be77110) at Event.cu:2156
#14 0x000000000047a620 in runPixelQuintuplet (event=0x1be77110) at code/core/trkCore.cc:796
#15 0x000000000043842c in run_sdl () at bin/sdl.cc:518
#16 0x00007f3173e4ba22 in GOMP_parallel (fn=0x436f20 <_Z7run_sdlv._omp_fn.0(void)>, data=0x7fff84a03290, num_threads=1, flags=0) at ../../../libgomp/parallel.c:171
#17 0x0000000000439619 in run_sdl () at bin/sdl.cc:454
#18 0x0000000000435884 in main (argc=1, argv=0x7fff84a04108) at bin/sdl.cc:305
===========================================================

This happens at the end of event 5. The weird thing is that this consistently happens when running with -n 50 but rarely happens when running with -n 10, for example.
Sometimes, instead of the segmentation violation above, the code exits with:
terminate called after throwing an instance of 'std::runtime_error'
  what():
allocate.cc, line 63:
cudaCheck(allocator::getCachingHostAllocator().HostFree(ptr));
cudaErrorDeviceUninitialized: invalid device context

Aborted

Pieces of code linked to the errors
The function that causes the issue seems to be this one:
https://github.com/SegmentLinking/TrackLooper/blob/d1eaf8a2c0b00d85c595128794191bc66170fa8f/SDL/allocate.cc
which seems to be approximately copied from:
https://github.com/cms-sw/cmssw/blob/6d2f66057131baacc2fcbdd203588c41c885b42c/HeterogeneousCore/CUDAUtilities/src/allocate_host.cc

for (auto const& blk :  cms::cuda::allocator::getCachingHostAllocator().cached_blocks)
cout << blk.bytes<<" "<<blk.associated_stream
yeilds:

This seems to be similar for all the events that don't crash

Additionally, the issue can be avoided by setting a minimum value of nInnerSegments when allocating the variables on the host.

70 works but 60 does not. The cut off seems to happen between 64(doesn't work) and 65(works). This means that this works for allocating 260 bytes but not 256. The caching allocator has a minimum bin of 8 so that 2^8 = 256. But decreasing the minimum bin does not seem to solve the issue. I don't see anywhere where this value might be overwritten...


Fixed Satisfy broken url

This modest pull request only fixes the url to padolsey's satisfy

cheers, this fix sneaked in with a later PR that was merged.


Separate when trailling comma from TrailingCommaOnDeclarationSite

Expected Rule behavior
I currently want to enable TrailingCommaOnDeclarationSite in my projects, but besides enabling trailing comma for function declarations, it also makes when blocks that look like this:
fun convertType(typeString: String): Type = when (typeString) {
    "A" -> Type.A
    "B" -> Type.B
    "C",
    "D" -> Type.Other
}

be converted to:
fun convertType(typeString: String): Type = when (typeString) {
    "A" -> Type.A
    "B" -> Type.B
    "C",
    "D",
    -> Type.Other
}

I understand that is the only way to enforce trailing commas in such when blocks, and I also understand that's how ij_kotlin_allow_trailing_comma works, but this is very ugly and harder to read.
I'd like this to be an optional behaviour of TrailingCommaOnDeclarationSite, or ideally be a different rule altogether.
Additional information

Current version of ktlint: 0.48.2

The arrow is pushed down because C and D are already on different lines. If the statement was written like below, it would not have happened:
fun convertType(typeString: String): Type = when (typeString) {
    "A" -> Type.A
    "B" -> Type.B
    "C", "D" -> Type.Other
}

or
fun convertType(typeString: String): Type = when (typeString) {
    "A" -> Type.A
    "B" -> Type.B
    "C" -> Type.Other
    "D" -> Type.Other
}

I'd like this to be an optional behaviour of TrailingCommaOnDeclarationSite, or ideally be a different rule altogether.

I am not inclined to add optional behavior as that would require a new .editorconfig property. Those properties are hard to discover. Also, it will lead to many more requests for other flags for optional behavior wanted by other developers in some other conditions for their use case. KtLint is all about convergence towards a consistent and predictable code style. Having said that, the first alternative solution I described above would violate that principle as well.
Splitting the TrailingCommaOnDeclarationSite in multiple rules can be an alternative to consider. It would at least be more discoverable as linting would show the name of the rule which could be suppressed or entirely be disabled. But, in this case I expect the disadvantage of code duplication to be too big.
Sometimes, it just takes a little while to get used to a new code style.


Cannot find CONV_GP_SIZE_X

Hi,
I am trying to get this project running on Cyclone-V SEA5. The configuration you've used is V=8,L=8,GP_X=7, where GP_X is CONV_GP_SIZE_X. But I cannot find CONV_GP_SIZE_X anywhere in the code. Could you tell where can I set this variable?
Thank you in advance!

Hi, please check out the latest updates.

@davidsai Hi, please close this issue if there are no further questions.


Request: User-configurable trigger keyword

Is your feature request related to a problem
At the moment, the only way this workflow can be triggered initially is via a comment starting with -terraform.
Describe the solution you'd like
I'd like this triggering keyword to be user-configurable. E.g., /terraform, -tf, etc.
Describe alternatives you've considered
N/a.
Additional context
N/a.

As it turns out, it's not straightforward to "variable-ise" the very keyword which triggers this workflow.
That being said, we'd like to remain vendor-neutral so all references to -terraform has been replaced by the more concise -tf instead. Hopefully this is a happy-compromise in the meantime.


Fix nullpointer caused by namespaced attributes

If a foreign element contains an element with an attribute called 'href', it would be processed as a dita href. Even if the href was actually in a namespace, so not really a dita href, but an xlink:href.
Do not process any attributes in namespaces to fix this.
Description
Do not process attributes in namespaces in DitaWriterFilter.java. They are not Dita-related.
Motivation and Context
I am making a dita specialization where I place some non-dita XML in a specialized <foreign /> element. This contains an xlink:href attribute. Having this xlink:href somewhere in my map causes a NullPointerException, as outlined in #4480.
How Has This Been Tested?
I tried changing an unit test to include my case. I am having difficulty running the unit tests, so I might need some help fixing that test. Can someone help me?
Type of Changes

Bug fix Fix NullPointer exception caused by non-dita href attributes

Documentation and Compatibility
This should not need any updates. The new code should just prevent crashes.

What documentation changes are needed for this feature?
None
Will this change affect backwards compatibility or other users' overrides?
It should not

Checklist

My code follows the code style of this project.

https://github.com/dita-ot/dita-ot/wiki/Java-Coding-Conventions
https://github.com/dita-ot/dita-ot/wiki/XSLT-Coding-Conventions
https://github.com/dita-ot/docs/wiki/coding-guidelines

I have updated the unit tests to reflect the changes in my code.

Hey @jelovirt, what are your thoughts on this PR? Is this how you would've approached this crash?

I'm more than happy to make it more specific to my issue: xlink:href being interpreted, but I'm a bit afraid this will open the door to other non-dita href attributes (or non-dita attributes in general) a bit too much.
Just give me the call! I'll also need a bit more help with the unit tests, if anyone can step in?


Added metrics tests

closes: https://issues.redhat.com/browse/RHOAIENG-528
closes: https://issues.redhat.com/browse/RHOAIENG-1747
closes: https://issues.redhat.com/browse/RHOAIENG-1746
closes: https://issues.redhat.com/browse/RHOAIENG-1532
Description

This adds cypress tests to the Explainability feature
How Has This Been Tested?

All cypress tests pass.
Test Impact

This adds testing for preformance metrics, bias metrics, enabling trusty, and bias metric table and configure modal
Request review criteria:

Self checklist (all need to be checked):

[x] The developer has manually tested the changes and verified that the changes work
[x] Commits have been squashed into descriptive, self-contained units of work (e.g. 'WIP' and 'Implements feedback' style messages have been removed)
[x] Testing instructions have been added in the PR body (for PRs involving changes that are not immediately obvious).
[x] The developer has added tests or explained why testing cannot be added (unit tests & storybook for related changes)

If you have UI changes:

[ ] Included any necessary screenshots or gifs if it was a UI change.
[ ] Included tags to the UX team if it was a UI/UX change (find relevant UX in the SMEs section).

After the PR is posted & before it merges:

[ ] The developer has tested their solution on a cluster by using the image produced by the PR to main

cc @christianvogt This is cypress related so let me know if I missed some code quality in the tests.

@Gkrumbach07 @christianvogt the coverage looks good to me - if we want to go deeper, e.g. validating chart points are plotted as expected or validating the full TrustyAI installation flow we can revisit this at a later date.
Thanks a lot for cranking this out at such speed Gage!

/lgtm
/approve


analyzer: Fix SPDX metadata to point to a source artifact

The "curl-7.70.0.tar.gz" archive contains the source code, so it should
be treated as a source artifact instead of a binary artifact, which is
signalled by setting "filesAnalyzed" to "true".
Also see 15512d3.
Signed-off-by: Sebastian Schuberth<EMAIL_ADDRESS>

We can't set filesAnalyzed to true as then Package Verification Code becomes mandatory per the spec

Argh. Fortunately, our SPDX reader does not check for that 😁 So maybe we could slightly violate the spec here? Or, maybe we could simply set packageVerificationCode to NONE?

hope to drop it from the spec in 3.0.

How would v3 then distinguish between download URLs of binary vs sources? Ideally, these would just be separate fields (like in ORT 😉 ) so that you can also capture both at the same time.

Ping @tsteenbe, mind having another look?

@sschuberth Setting filesAnalyzed to true and not providing Package Verification Code will cause an exception in SPDX reader whilst keeping it false and misusing  downloadLocation as source code location will not cause any issues.

Setting filesAnalyzed to true and not providing Package Verification Code will cause an exception in SPDX reader

Which reader exactly?

misusing downloadLocation as source code location will not cause any issues.

But we'll also have no man to tell that it is a source location. It will be treated as a binary location instead.

Anyway, I've added the packageVerificationCode fields now.

would it not make sense to have the changes in the same commit, as otherwise there will be a commit which "cause[s] an exception in [the] SPDX reader"

I didn't want to "mix-in" an otherwise unrelated change to project.spdx.yml, that's why I separated the commits. I'll simply swap the order of the commits to make it impossible to run such an SPDX reader on an invalid file in our Git history.

It's a bad idea to set filesAnalyzed to true

But how can we then distinguish between downloadLocations to source artifacts vs, downloadLocations to binary artifacts?

I know this does not work for maven source artifacts but for the few exceptions we could build in regexes to detected the edge cases.

Unfortunately, it's not only a "few exceptions". We heavily rely on custom SPDX files that refer to source artifacts in ZIP files in arbitrary locations. There's no sane way to deal with these with regexes.

@tsteenbe I just checked on this PR again. I'm reading the spec so that for filesAnalyzed == true

the packageVerificationCode has a cardinality of 0..1
the packageLicenseInfoFromFiles has a cardinality of 0..*

So as both allow a cardinality of 0, these fields should be optional even with filesAnalyzed == true. Do we agree here?

Closing this in favor of the different approach in https://github.com/oss-review-toolkit/ort/pull/4816.


build: add local-core Makefile target

Issue #, if available:
Description of changes:

adds new Makefile target that uses the locally compiled submodule version of Lima instead of the version from the lima-and-qemu remote archive. This allows more easy testing of local submodule changes before building a new lima-and-qemu archive.

Testing done:

local testing

[x] I've reviewed the guidance in CONTRIBUTING.md

License Acceptance
By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

This can unblock local tests but the CI still uses make unless we change it to make all-local.

This can unblock local tests but the CI still uses make unless we change it to make all-local.

My motivation was to make it possible to test locally. CI should use what is actually used by the release imo. Maybe we can add more ci targets in the future and have some use the all-local target and some use the lima-and-qemu target.

Compose test failed due to known issue. Merging.


remove already initialized warning

fixes:
spec/models/miq_report_spec.rb:907: warning: already initialized constant DISPLAY_GTL_METHODS

in rspec, you can't define a class in a method - is is basically the same as globally defining it
instead you can do it in a before and then you need to remember to remove the constant (the class definition)

FYI, I was going to ask if anonymous classes could also solve this but it looks like that also hits the already initialized constant warning.
irb(main):001:0> k = Class.new do
irb(main):002:1* ABCD=1
irb(main):003:1> end
=> #<Class:0x00007fa4440364a8>
irb(main):004:0> k = Class.new do
irb(main):005:1* ABCD=1
irb(main):006:1> end
(irb):5: warning: already initialized constant ABCD
(irb):2: warning: previous definition of ABCD was here
=> #<Class:0x00007fa4468cc598>
irb(main):007:0> exit


[Bug]: Debain - " (vibe:2960): Gtk-WARNING **: 12:03:05.776: cannot open display:"

What happened?
I installed vibe on vm debain (googleCloud) which has only terminal, I try to use the cmd command (vibe --file --model...) but it throw me error
(vibe:2960): Gtk-WARNING **: 12:03:05.776: cannot open display:
I use the sudo atp for .deb file to install it
Steps to reproduce

step one...
step two...

What OS are you seeing the problem on?
Linux
Relevant log output
No response

Hey! thanks for reporting.
Can you try setting export WEBKIT_DISABLE_COMPOSITING_MODE=1 environment variable before start it?

Related https://github.com/thewh1teagle/vibe/issues/169


Graphics rendering bugs

I have tried out euporia on Windows 10 and it seems to be in a quite buggy state, unfortunately, as one can see in the image:

Here I use:

Python 3.11.8 in an Anaconda environment
The latest WezTerm 20240203-110809-5046fc22 release
Euporie 2.8.1 that I installed with the python -m pip install --user euporie instruction. Interestingly, I do not see a 2.8.1 release on github. The latest release, as far as I see is 2.7.0. Is the 2.8.1 an unintenionally released nightly build?

I launched euporie-notebook with the --graphics iterm and --force-graphics command line arguments.
I also tried the same code snippet with euporia-console˛, with the same command line arguments. In this case, the console replied that it is unable to render the image with the ITerm protocol, and then rendered it in such a way that the majority of the image was hanged out of the right edge of the window, and only the tick labels on the vertical axis seeable in the window.
It is sad that it is in such a buggy state. Without these bugs, Euporie would be an amazing tool for anyone who does data-sciene / machine learning on remote machine.

Hello,
Thank you for taking the time to write this up.
This is not an issue with euporie, but an issue with terminal graphics on Windows. See this issue for more info:
https://github.com/wez/wezterm/issues/1236
I hope we can find a workaround which works for you!
If you use WSL, there are a few work-arounds you can try:

Run the Linux version of wezterm under WSLg
Use the Windows version of wezterm to connect to WSL over SSH (wezterm ssh 172.xx.yy.zz)
Use wsltty terminal, which supports sixel (& possibly iterm) graphics

If you're stuck using Windows-native Python, there's not a whole lot you can do until Windows implements ConPTY pass-through.

You can set --graphics=none and rely on ASCII graphics, will prevent the glitching issues you experienced, but obviously image quality is much lower.
You could also try using mintty terminal, which apparently supports sixel graphics on Windows (I haven't tested this.

Version 2.8.1 is the current latest version. PyPi is the place to track the  "official" latest version. I have to manually add the realeases to GitHub, and must have forgotten for the v2.8 releases! I could probably create a GitHub workflow to do this automatically.


Revert DropdownV2 requirements, support both signatures for Dropdowns

Related to #1228, we want to revert the requirements of DropdownV2 from requiring a data structure of items to render and bring back the ability to render DropdownItem's inside of DropdownV2.

Getting my bearings here.
I had initially opened issue #1495 to extend the functionality of Dropdown. However, after seeing the deprecation warnings, I created PR #1505 to allow DropdownV2 to accept a function to map items to components. After getting some feedback, I adjusted it to make it more generic, and it mostly works with the current implementation of DropdownItem. It also will also accept other custom components in addition to the existing behavior with strings and objects.
@tomkdgun does this fulfill your use cases?
@joshblack is this cohesive with existing patterns within the project?

Thanks so much for taking this work on so far @justinpurcell1!
I think something that might not be clear with this issue title is that it'd be great for us to support these two patterns:
<Dropdown items={...} itemToString={...} />

<Dropdown>
  <DropdownItem />
  <DropdownItem />
  <DropdownItem />
</Dropdown>

If it's unrealistic to have one component have both implementations, that's totally fair. There was an idea that we could use Downshift to power all of our dropdowns but I think that the flexibility of controlling dropdown content is too important for this specific component (or other dropdown variants).
I think the real question becomes how can we leverage downshift while providing it's render prop surface area, or should we just try and build these components to be as easy-to-use as possible and be okay with restricting customizability in dropdown items.

@joshblack is the benefit of the second solution that people can use the literal DropdownItem components? or that they can mix and match what components they pass as children to the DropdownV2? or is it just for ease of use, and would only accept DropdownItems?
Justin's solution could be modified to accept a signature that looks like the latter example, the Dropdown with DropdownItem children: basically using a getter to select either this.props.items || React.Children.toArray(this.props.children) as items, then letting the default itemToString get item.props.itemText as appropriate. It isn't the ugliest solution but it makes the code a bit more complex.
The main impediment is that the current DropdownItem has some idiosyncrasies that make it hard to use in isolation: it renders an li at the top level, it preventsDefault on click events, etc.; It might make sense to make a DropdownItemV2 for optional use in the DropdownV2, but that doesn't seem to accomplish anything that the current DropdownV2 signature can't do. There would basically just be 2 different ways to do the same thing (rendering the default DropdownItems as children or as items), and a 3rd way to use if you want to customize the dropdown items.
I guess my point is that the second signature isn't necessary to achieve the level of customizability that we want, I can't speak for anybody else who was interested in this

...
@tomkdgun does this fulfill your use cases?

Base on the description, it should work for us.

@ZacharyStair yup! I mistakenly assumed with the deprecation notice that the API of downshift would match the needs of our group, but that's clearly not the case 😞
Agreed that itemToElement could work, as well. We could also use the renderItem prop paradigm, as well, to match other solutions in the industry. Definitely am not opposed to that if that is the preference here.

@joshblack any update here? We're relying on this for an upcoming feature. I think there are a couple of viable options. First would be to continue on with itemToElement, second would be to change the prop name to renderItem as with FlatList (and others?), and third would be to abandon this path and render children in the old DropdownItem.
Passing in proper DropdownItems to DropdownV2 doesn't really work due to the control flow of Dropdown vs V2.

@joshblack - Will this enhancement allow you to render React components for the dropdown items? We have a need to render an optional icon as well as two pieces of justified and differently styled text in our dropdown entries.

Is there an ETA on when this enhancement/feature will be available?

@joshblack I see sth was merged. Do issues if fixed ? On which version feature is available ?


pyvenv.cfg in the root of workspace will force all files to be excluded

This is by design, but there's no indication to the user that's the case.
It would be nice if there was some kind of warning.

Need to provide the user a warning/diagnostic if the auto exclude path includes the workspace root.


MeshCoord metadata should include the "mesh" property

We initially chose to leave the 'mesh' property out of the MeshCoordMetadata,
largely because at that time we were wary of implementing equivalence on Mesh objects.
As noted here
IIRC this was largely due to concerns about the efficiency of calculating mesh equality (i.e. potentially comparing large arrays),
but we since essentially changed our minds about this, and implemented full equality testing on meshes anyway
So, in all probability, it would make more sense now to reverse this, and make 'mesh' a participant in MeshCooord.metadata
Present effects
With same 'location' and 'axis' but different 'mesh', we can find that meshcoord1 != meshcoord2, while at the same time meshcoord1.metadata == meshcoord2.metadata.  This is not a logical flaw (can be true for coords with different data), but we would expect mesh to participate + it does not.
Arguably, metadata comparison should work as an 'identity equivalence' for data components,
this allows e.g. co = cube1.coord('longitude') ;  co2 = cube2.coord(co) to work even when the 2 coords in question have different data, shapes or dtypes.  This aspect is basically not working for meshcoords, at this point.
The code here would not be reachable, or would not be needed, if this worked as it does for the other coordinate types
-- instead, the resolve operation "ought to" be able to decide whether 2 meshcoords can be treated as equivalent or not.
It might also make sense to permit  some aspects of lenient mesh comparison within this -- e.g. if ~equivalent meshes from different files had component with different var_names -- which is not possible at present.
At present, cubes can be merged between meshes that compare equal, but it requires an exact match in all details (e.g. including var_names)
Similar considerations could also apply to merge+concatenate.
Effects of change
It's not clear, if we simply change this, what knock-on problems could be introduced.
Possibly, merging 'equal' meshes, loaded from different files, would stop working (it currently works).
Up to now, no other metadata component has been a complex object -- the most complex is attribute dictionaries, which themselves require special consideration in comparison/combination.

After some thought
TL;DR: I now think we shouldn't do this after all.
I think metadata is generally to be viewed as analagous to "phenomenon"
As on cubes or coordinates, for instance ..

it distinguishes one thing from another, where directly combining/comparing them would be a categorical mistake, like a units error

(i.e. like adding apples to elephants)

it characterises the "meaning" of the numbers stored the object, e.g. the numbers are "a longitude" or "a height in metres".

so in that way, it's a bit like an extended units concept

So for a cube, the metadata is those characteristics which give it a distinct identity as a "type of value"
-- but not the values themselves (.data), their type (.dtype) or structure (.shape)
I think with that in mind, adding a mesh to the MeshCoordMetadata would be like adding the coords or coord-system to a CubeMetadata :  It would mean that changing these makes an entirely different phenomenon, which can't be compared with original.
So, at present, this is mostly used in 3 places:

in comparison (==):  But here, it is just a fast check, as non-metadata properties are generally also compared anyway
in arithmetic : but this doesn't really apply to MeshCoords
in selecting objects ... read on ...

At present, component access methods like Cube.coords use metadata as an identity, so you can ...
co = cube1.coord(name)
meta = co.metadata
assert cube2.coord(co).metadata == cube2.coord(meta).metadata == meta

That is, you can get the equivalent coord in a different cube by using the coord (or equivalently, in fact, its metadata) as a reference.
This works even when the 2 cubes have different dimensions or coordinate values, because those aspects are outside the metadata.
At present, we can do the same with MeshCoords..
If we adde

@stephenworsley please "review", i.e. see what you think of the above ideas.
Do you agree that  we should close this ?

@pp-mo This makes sense, I agree that the status of the mesh property should stay as is given that:

metadata is a "lightweight" description and meshes are large.
mesh already exists as a property of MeshCoords.
meshes are more similar to objects which are not considered suitable for including in other metadata (e.g. coords, data) than they are to objects included in metadata (e.g. names, attributes).
adding meshes to metadata would break some existing ehaviour.

Ok, thanks @stephenworsley .
I think we are done with this.
Anyone disagreeing can re-open !


new post to google plus

I want to use php to post to google plus.

This is my auth function :
global $client;
$client->setAuthConfig("/home/----");
$client->setRedirectUri("----");
$client->addScope("https://www.googleapis.com/auth/plus.stream.write");
$client->addScope("https://www.googleapis.com/auth/plus.me");
$authUrl = $client->createAuthUrl();
header("Location: $authUrl");
die;
And this is my new post function :
$client->setAccessToken($token);
$plus = new Google_Service_Plus($client);
$plusdomains = new Google_Service_PlusDomains($client);
$postBody = new Google_Service_PlusDomains_Activity();
$postBody['object']['originalContent'] = 'Happy Monday!';
$result = $plusdomains->activities->insert('me', $postBody);
$result = $plus->people->get('me');
$response->getBody()->write(var_export($result, true));
but the result is :
{ "error": { "errors": [ { "domain": "global", "reason": "forbidden", "message": "Forbidden" } ], "code": 403, "message": "Forbidden" } }
As you know ,many sites are now available that send new posts using google oauth to all kind of google plus account ( not only google apps ) ( for example : buffer.com)
Please help me

Hello.
You are making two calls to the API and writing both to $result, which is confusing. Do any calls to the API return as expected? If not, then I'd guess your access token is invalid.
Can you verify that the $token being passed to the client is a valid access token?

Try the google plus example shown here and see if you have any luck

Thanks for your attention
token is valid because I return that in every request
But every thing I do , I will see "Forbidden 403".
Would you please give me a piece of code that post to google plus page ?
The bad thing is I try the google api explorer And I get 403 Forbidden too.
If you give me a code that works , You resolve my problem.

Closing this issue due to inactivity. Please let me know if you were able to get this working.

Nope

Which email address are you using?
If the email address of the that you are using ends with gmail.com, then it won't work. The Domains API only works with apps.google.com accounts that use custom domains.

I need an account in apps.google.com, soo i m going to buy to post in google plus.
Which plan i need to buy.???

This code is working for me
`$client = new Google_Client();
$client->setAuthConfig(FRAMEWORK_PATH.'/client_secret_apps.googleusercontent.com.json');
$client->setScopes([Google_Service_Plus::PLUS_ME, Google_Service_PlusDomains::PLUS_STREAM_WRITE]);
$client->setAccessType('offline');
$redirect_uri = 'https://' . $_SERVER['HTTP_HOST'] . $_SERVER['PHP_SELF'];
$client->setRedirectUri($redirect_uri);
if (isset($_GET['code'])) {
         $access_token = $client->authenticate($_GET['code']);
         $plus = new Google_Service_Plus($client);
$result = $plus->people->get('me');
$user_id = $result->getId();

$plusdomains = new Google_Service_PlusDomains($client);
$domainRestricted = new Google_Service_PlusDomains_Acl();
$domainRestricted->setDomainRestricted(true);
$object = new Google_Service_PlusDomains_ActivityObject();
$object->setContent('MY TEST CONTENT');
$postBody = new Google_Service_PlusDomains_Activity();
$postBody->setObject($object);
$postBody->setAccess($domainRestricted);

$result = $plusdomains->activities->insert('me', $postBody);`
} else {
     echo 'createAuthUrl().'">Login';
}

$plus = new Google_Service_Plus($client);
$result = $plus->people->get('me');
$user_id = $result->getId();

$plusdomains = new Google_Service_PlusDomains($client);
$domainRestricted = new Google_Service_PlusDomains_Acl();
$domainRestricted->setDomainRestricted(true);
$object = new Google_Service_PlusDomains_ActivityObject();
$object->setContent('https://onlineprnews.com/news/1112330-1531940817-siamak-agha-md-awarded-as-a-top-rated-doctor-in-newport-beach-ca.html/');
$postBody = new Google_Service_PlusDomains_Activity();
$postBody->setObject($object);
$postBody->setAccess($domainRestricted);

$result = $plusdomains->activities->insert('me', $postBody);`


Update default scan plugin version to 2.4.1

Scan Plugin 2.4.1 was just released. This updates the used scan plugin version in the bt build and updates the default version used when using --scan

raised PR against master as I'm not aware of any bugfix release

@breskeby it looks like we're going to do a 5.6.1 now.  Is it worth putting this on release?

@big-guy rebased against release branch


Alex  play confidence card two row mobile

Issue:
When on mobile, the radio buttons on the confidence card drop to two rows. We're looking to reduce the spacing between the buttons or the size of text when on mobile so that they stay on one line.
Resolution:
Opted to reduce the spacing between buttons when viewing on mobile devices. NOTE: two lines of buttons still occurs when viewing on either the Samsung S8+ or the Galaxy Fold. I can continue to look into resolving the issue on smaller devices but this may involve an additional media query so wanted to get some feedback first on if this makes sense for this small of a use case before proceeding to add additional screen size logic
Relevant code:

In play > src > components > ConfidenceMeterCard.tsx > line 94- added ternary operator to check if the view is on small device and if so, decrease padding between button containers

Preview:
Some different mobile devices pictured below:

@drewjhart

Good work on this @Alexandra-Kushnirsky. Agree that we should verify what to do on small devices. @amarax, do you have any thoughts on the below?
To summarize, Sinclair asked us to adjust the radio buttons on the Confidence Meter so that they stay on one line. Alex has been adjusting the padding for mobile devices to achieve this but we still get the two line condition on smaller devices. I think it drops to two lines with the current code at >359px device widths. Do you know how we should handle this? We can look at decreasing the font size under the radio buttons for instance. Here's a preview with the Galaxy S8 device (360px width):

@Alexandra-Kushnirsky @drewjhart I'd actually recommend to keep the spacing between the options if possible, but tighten up the padding on the outside of the card (which I would recommend to do anyway to maximise the screen). Here's what it could look like on an extreme case of 320px width for an iPhone SE 2016, which may be relevant for us as we're targeting students from lower-income households:

[Figma reference](https://www.figma.com/file/PadzU8GqyhFLCjIt7rQkpE/RightOn-Apps?type=design&node-id=17548-128169&mode=design&t=NDKgdhsBpBcxLntv-4)
If this approach works well, I can provide clearer border specs, specifically for the smallest breakpoint.

@amarax Got it! I made a couple of changes so that spacing in between is prioritized: mainly I decreased the padding on the edges of the card, changed the alignment from 'center' to 'space-around' and decreased the text size slightly if the user is using a smallDevice. Here are some screenshots of the result on different devices below. The Samsung S8+ looks better but galaxy fold still looks a bit awkward so I can continue to tinker around if you feel it is necessary:

@amarax mentioned that he's reviewing some broader UI things before commenting on these issues but that we shouldn't let him hold us up. I'm going to merge this and then he can follow up with comments next week. @Alexandra-Kushnirsky


webpack caching issues when importing react-native-web from multiple bundles

support for react-native-web is done (same API, just import @roguejs/app/client.native and @roguejs/app/server.native) however, there's an issue with server-rendering critial css if you're using webpack (which most people are, specially since we recommend rogue with razzle) because it doesn't use require.cache when compiling to the Node.js target, instead it uses it's own installed modules cache which causes problems with singleton states if the code comes from multiple bundles
this issue was discovered with react-native-web/nextjs, for details see:
https://github.com/necolas/react-native-web/issues/1079
https://spectrum.chat/next-js/general/singleton-issue-when-transpiling-local-modules~ba78d3a3-4ab3-48ef-9b77-956642dfbdb1?m=MTUzNjY3MTEzMDI0NQ==
for now, we'll recommend setting up programmatically. you can just look at packages/app/native-web to see how, but i'll also add it to the examples

looks like the above is actually a separate issue, and the issue is we were importing react-native-web rather than react-native which I'm guessing result in two different runtimes
but when we import react-native, it causes an error likely becuase the babl plugin doesnt work with transpiled files
TypeError: (0 , _unstableNativeDependencies.injectEventPluginsByName) is not a function


Context doesn't handle comma in list value properly

this code
alias:
  - Khương, Lê Mạnh

Context should've created 1 aliases instead of 2

I am facing the same issue, even when you wrap the string in quotes.

Will fix this in a upcoming patch. Looking into best solution while supporting frontmatter syncing


event.getGuild().getMembers() gives only the selfuser and users who wrote in the chat

Since the update to version _213 (I think) the JDA only provides users with the getMembers() method, which wrote in the chat since the bot's startup.

#1337

#1337


Fix onboarding height on Content Footer

Frontend tests were OK :+1: (details)

Adding myself to check it.

Checking it in staging

Ok!


api doesn't load component on production

Describe the bug
Been trying option 2 (api /doc) following the docs and example and couldn't make it work and noticed on the demo is also broken https://next-swagger-doc-demo.productsway.com/api/doc schemas never get append to the json.
There is a way to make it append the schema as working on local?
Even with yarn build yarn start on local works fine only failing on vercel
Note: I saw this been reported a few times but without to much information or solution.
Reproduction
https://next-swagger-doc-demo.productsway.com/api/doc
System Info
System:
    OS: macOS 13.1
    CPU: (10) arm64 Apple M1 Max
    Memory: 8.35 GB / 64.00 GB
    Shell: 5.8.1 - /bin/zsh
  Binaries:
    Node: 16.15.0 - ~/.nvm/versions/node/v16.15.0/bin/node
    Yarn: 1.22.18 - ~/.nvm/versions/node/v16.15.0/bin/yarn
    npm: 8.5.5 - ~/.nvm/versions/node/v16.15.0/bin/npm
  Browsers:
    Brave Browser: <IP_ADDRESS>
    Chrome: 109.0.5414.119
    Firefox: 106.0.2
    Safari: 16.2

Used Package Manager
yarn
Validations

[X] Follow our Code of Conduct
[X] Read the Contributing Guide.
[X] Check that there isn't already an issue that reports the same bug to avoid creating a duplicate.
[X] Check that this is a concrete bug. For Q&A, please open a GitHub Discussion instead.
[X] The provided reproduction is a minimal reproducible of the bug.

Thanks, @octavioamu it does work on the demo https://next-swagger-doc-demo.productsway.com/api-doc. I will check tonight or so for the API endpoint.

@jellydn Thanks for responding.
That is because the api-doc is using the static generated file swagger.json which is the 3rd option.
Same with the playground for example if you where using the 2nd to generate an api/doc probably because you want 3rd parties UI with the schemas you would use it like:
<APIDocumentUI
          apiDescriptionUrl="/api/doc"
          layout="sidebar"
          router="hash"
/>

Instead of the static one https://github.com/jellydn/next-swagger-doc/blob/main/examples/example/pages/playground.tsx#L51
A good way to test it is looking the api/doc endpoint I posted https://next-swagger-doc-demo.productsway.com/api/doc
when you run locally you will see the data will be in place when going localhost:3000/api/doc, even if you run yarn build and then yarn start api/doc will have the components schema there, which is really weird that got removed when deployed on vercel.
Spent my day yesterday testing different approach to try to see if I could make the api/doc append the schemas as local without good luck :( .

Also because is working on local with "yarn build" and not in vercel (that runs by default the same command) which is very strange my high guess is have something todo with async code on the server taking more time than local and for that not being appended.  But again, really high guess.

I think I know what is going on, you are using process.cwd() https://github.com/jellydn/next-swagger-doc/blob/main/src/swagger.ts#L39 I added a console log on the /api/doc endpoint and this is what cwd is on vercel as function are actually edge functions /var/task so the problem is how is being routed to find paths, the public folder is already "/" so probably doesn't need pwd to find the path and could go relative instead of absolute

I keep digging on this, one little suggestion is change join() to resolve() at least seems will be more secure if people input '/models/' on schemaFolders

no, resolve doesn't solve it, this is the server log of urls getting generated with resolve
[GET] /api/doc
15:55:31:07
process.cwd() 1 /var/task
apiss [
  '/var/task/pages/api/**/*.ts',
  '/var/task/pages/api/**/*.tsx',
  '/var/task/pages/api/**/*.jsx',
  '/var/task/pages/api/**/*.js',
  '/var/task/pages/api/**/*.json',
  '/var/task/pages/api/**/*.swagger.yaml',
  '/var/task/.next/server/pages/api/**/*.js',
  '/var/task/.next/server/pages/api/**/*.swagger.yaml',
  '/var/task/.next/server/pages/api/**/*.json',
  '/var/task/public/**/*.swagger.yaml',
  '/var/task/public/**/*.json',
  '/types/**/*.ts',
  '/types/**/*.tsx',
  '/types/**/*.jsx',
  '/types/**/*.js',
  '/types/**/*.json',
  '/types/**/*.swagger.yaml',
  '/types/**/*.js',
  '/types/**/*.swagger.yaml',
  '/types/**/*.json',
  '/var/task/public/**/*.swagger.yaml',
  '/var/task/public/**/*.json'
]

I think we could have possible solutions here:

1st solution: as far I as know, NextJs will remove comment on build project (next build) so we need to find a way to keep the comment code for generate swagger spec
2nd solution: write a custom Webpack plugin to generate swagger file on build

Interesting I tried with vercel-cli to avoid deploying each time, and worked, but now that Im thinking I didn't remove the folders created by yarn dev, so maybe on my local is working because still fetching from the other folders previously created.

Hi @octavioamu I've just released version from #639 Could you take a try again? Thanks.
https://github.com/jellydn/next-swagger-doc/commit/01068361ae7649baa085a8c49dc616ad0fb346c8


Remove tuio cursor

Hello,
I have been testing your solution, but when I send a TUIO cursor it never gets removed from the client. I can move it, but once I remove it from the server, the client thinks there is one cursor on the last position.
'''
server = TuioServer(self.ip, self.port)
cursor = Cursor(random.randint(0, 500))  # sets session_id to random
cursor.velocity = (0.2, 0.2)
cursor.motion_acceleration = 0.1
server.cursors.append(cursor)
cursor.position = (x, y)
server.send_bundle()
time.sleep(0.1)
cursor.position = (x, y)
server.send_bundle()
time.sleep(0.1)
server.cursors.remove(cursor)
print(server.cursors)
server.send_bundle()
time.sleep(0.2)
'''
How do you handle that?

Hay,
you found a bug. Thanks for the issue !
I changed the behavior if the lists are empty.
https://github.com/tweigel-dev/python-tuio/pull/15
If the Pipeline succeeds you should be able to download the new version via pip.

yes, now it is fixed and working. Thanks.


[Rule] Not used keyword

This rule was previously rejected because Robocop does not support dynamic code. Keywords can be defined under variables and executed using Run Keyword, resource can be imported dynamically, Python library keywords cannot be discovered without initializing library first etc. Those kind of limitations lead to creation of Sherlock which focus on using log from actually execution to avoid such issues. But maintaining yet another project is not feasible for me and there is little to no progress here recently despite it is one of most wanted feature from users.
But thanks to our planned feature - community rules it is possible to define optional rule. Such rule, with known limitations and pitfalls (which I will list in this thread and in the documentation) can be enabled by the user. Also we will need access to all files in the project which can be done thanks to #1015.

What this rule will not do:

handle keyword with dynamic name
TBD

What this rule will do:

find not used keywords
handle embedded arguments (and try to resolve them, though if multiple keywords matches it could match different one)
find duplicated keyword names

Why I have returned to this rule - recently I had to refactor multiple Robot Framework projects with parts of the code dead/not working (which made using Sherlock not an option). I grow tired of manually checking multiple keywords and I wrote some scripts for scanning the repo. With the exception of one project which uses dynamic keywords it worked suprisingly well and encouraged me to migrate the code to Robocop rule (+ add various possible improvements).

This one would be useful. With one switch I could stop teammates from adding dead code at any occassion (like, keywords that "will be used in some tests we are working on").

If it proves to be impossible to find unused keywords across multiple files, this can still include a rule like no-unused-private-keyword. A private keyword should be used inside the current file (details). The rule can check if each private keyword in the file is used.

To some extent it is possible - I have some example scripts that does detect such cases across multiple files. But I also planned to start from only detecting the keywords that should be used in the same file (determined by whether file is resource or test/task file). Then expand it - similarly how I'm improving unused-variable rule over the time.
My main limitation is my time, all my work for tools is on expense of my time. Recently I have bit more time but I'm working on bugs/high priority tasks firsts but hopefully I will also get to this issue.
And thanks for link to docs, I didn't remember the 'private' tag - it definietely should be handled accordingly.

For reference, seems like some kind of logic for that is implemented in RobotCode plugin for VS Code, though IMO it’s not a speed demon at this point. But there’s some functionality that counts uses of each keyword.

If the main constraint is time, I can help out a bit. Though it'll be somewhere next month due to... you guessed it, time constraints. Though, mine are due to a thing at the end of this month.
I've written a few business-specific rules recently and don't expect big issues getting started with this. The only technical limitation I see right now is detecting uses across multiple files. Is there an example of using multiple files?

We don't have anything 'in production' for multiple files but we have layed groundwork for it. For example there are tests with example rule that scans multiple files here https://github.com/MarketSquare/robotframework-robocop/tree/master/tests/atest/rules/custom_tests/project_checker . In some way existing rules already use multiple files - they just don't retain information between files. If you save the data it's possible for example to have rules that count number of tests in whole project etc.
But it's only basic skeleton of the checker. There are several ways of implementing such rule (in some ways I already did that in Sherlock). But most likely it will require resolving and visiting possible imports in the given file. Sometimes there are nested imports (suite import common file which imports other imports etc). I would not worry for now about dynamic names or imports. At first iteration it would be enough to just scan given file for keyword definitions (but only for files/keywords that should be used within given file, such as private keywords). Then scan for all keyword usage and whenever it matches previously found keyword definition, increment keyword usage. Such rule doesn't even need to be project rule at first since it will only scan for keywords inside the same file.

I have started the work in https://github.com/MarketSquare/robotframework-robocop/compare/feature/unused_keyword?expand=1
It actually already detects not used within the suites and is ready to be extended for private keywords. I will keep working on it slowly. Most likely I will release it soon as it reaches some kind of MVP. Then it could be updated in the next releases.

@bhirsz as expected, my agenda has opened up a bit. Anything I can do to help you with this?

Great! You may start by looking at what I did in my branch from previous post. For example try to extend it by keywords with embedded variables (if possible, it can be tricky) or checking how to extend it to multiple files. Even if coding would be too much then just the tests itselff (examples of what should be catched as not used and what not) would be immensely helpful.

I have resume work on branch. Fixed some issues were it wasn't detecting properly and added support for keywords with embedded arguments and private keywords. It's getting close to release state. For now it only supports suites and resources with private keywords but we can extend it over releases like previously discussed


journalctl fails to restart

On a jessie image, systemctl restart systemd-journald fails with an error in dmesg:
[Mon Jul  4 08:54:13 2016] systemd[1]: Starting Journal Socket.
[Mon Jul  4 08:54:13 2016] systemd[1]: Listening on Journal Socket.
[Mon Jul  4 08:54:13 2016] systemd[1]: Starting Journal Service...
[Mon Jul  4 08:54:13 2016] systemd[1]: Started Journal Service.
[Mon Jul  4 08:54:13 2016] systemd-journald[4701]: Failed to get machine id: Input/output error

It seems the file /etc/machine-id has a wrong format. Once regenerated with systemd-machine-id-setup, journald restarts fine.

Closing, duplicate with #71