Copy/select folded line does not copy entire line

Issue Type: Bug

enable code folding
write long line, larger than screen width so text is folded
go to the start of this line and press shift+end (select all line)
logically, all characters in line should be selected (including folded line)

Since not all characters are selected, copying such line leaves previously folded characters in newly created line, which is very unefficient - in order to copy whole line, you must combine copy/paste procedure.
It is OK if you manually select all lines (including folded ones) and copy/paste.
VS Code version: Code 1.23.1 (d0182c3417d225529c6d5ad24b7572815d0de9ac, 2018-05-10T17:11:17.614Z)
OS version: Windows_NT x64 10.0.17134

System Info

Item
Value

CPUs
Intel(R) Core(TM) i5-4570 CPU @ 3.20GHz (4 x 3193)

GPU Status
2d_canvas: enabledflash_3d: enabledflash_stage3d: enabledflash_stage3d_baseline: enabledgpu_compositing: enabledmultiple_raster_threads: enabled_onnative_gpu_memory_buffers: disabled_softwarerasterization: disabled_softwarevideo_decode: enabledvideo_encode: enabledvpx_decode: unavailable_softwarewebgl: enabledwebgl2: enabled

Memory (System)
15.89GB (9.87GB free)

Process Argv
C:\Program Files\Microsoft VS Code\Code.exe

Screen Reader
no

VM
0%

Extensions (2)

Extension
Author (truncated)
Version

python
ms-
2018.4.0

cpptools
ms-
0.17.4

To select the line including all folded lines, you have to select the full line until the start of the next line.
So it

place cursor at the beginning of the line that contains the fold marker
Shift + Down

Please reopen if I misunderstood your request.

Of course I know how I can select multiple lines - my point is this:
Since you can have opened terminal on the right side and explorer/search panel on the left side, and in some cases splitted editor with multiple tabs, line can be folded multiple times. I know this is an extreme example, but I sometimes manage to get just in such situations, where I need to quickly copy a line while searching multiple documents.
As folding works now, if file screen is really narrow and line is folded multiple times, I must carefully copy all folded lines - instead just copy whole line with shift + end.
I think that if folded line is selected to the end, editor should select the last character just like if my screen was 3km wide and all one-line-python-program  will be copied. :)

Of course I know how I can select multiple lines - my point is this:
Since you can have opened terminal on the right side and explorer/search
panel on the left side, and in some cases splitted editor with multiple
tabs, line can be folded multiple times. I know this is an extreme example,
but I sometimes manage to get just in such situations, where I need to
quickly copy a line while searching multiple documents.
As folding works now, if file screen is really narrow and line is folded
multiple times, I must carefully copy all folded lines - instead just copy
whole line with shift + end.
I think that if folded line is selected to the end, editor should select
the last character just like if my screen was 3km wide and all
*one-line-python-program * will be copied. :)
On 6 June 2018 at 15:44, Martin Aeschlimann<EMAIL_ADDRESS>wrote:

To select the line including all folded lines, you have to select the full
line until the start of the next line.
So it

place cursor at the beginning of the line that contains the fold
marker
Shift + Down

Please reopen if I misunderstood your request.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/Microsoft/vscode/issues/51083#issuecomment-395072979,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AIVNb1woZVc1J8hQ00DEb6U5gkMRfeuEks5t59yxgaJpZM4UZEYo
.

We just don't count the folded lines to the first line. The folding placeholder is after the line.
That's why you need to select until the next visible line to copy everything in between.
I take your suggestion, but currently, we have no plans to change the behavior.

I use #51232 for your request.

Good, I agree it is more of a different perspective than wrong behaviour. I
will just select multiple lines and the "problem" is solved.
Thank you.
On 6 June 2018 at 21:46, Martin Aeschlimann<EMAIL_ADDRESS>wrote:

I use #51232 https://github.com/Microsoft/vscode/issues/51232 for your
request.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/Microsoft/vscode/issues/51083#issuecomment-395190734,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AIVNbxIeyLmDff2q9c1FOxVDlnTNKyEAks5t6DGngaJpZM4UZEYo
.


implement SeaThru-NeRF in your own NeRF

H, thank you for your excellent work, I have implemented SeaThru-NeRF in my own NeRF following your tutorial, but during training, the model tends to fit the whole scene with C_obj and the values of C_med are all 0. How do you avoid this? Looking forward to your reply, thanks!

I have observed that in your code, this is done very well, bs will not approach 0, but it seems that you have not added additional constraints, how do you do this? Looking forward to your reply！thanks！

Hi,
I need more details about your implementation please.

Hi,
thank you for your reply!
I modified the vanilla nerf code.

used recon loss instead of mse loss;
def recon_loss(rgb,target_s):  rgb_render_clip = torch.minimum(torch.tensor(1.), rgb)  resid_sq_clip = (rgb_render_clip - target_s[..., :3]) ** 2  scaling_grad = 1. / (1e-3 + rgb_render_clip.detach())  data_loss = resid_sq_clip * scaling_grad ** 2  return data_loss.mean()

used extra mlp to predict sigma_haze as in the paper, netdepth = 6 , netwidth = 256;
`        h = input_views_haze
for i, l in enumerate(self.pts_linears_haze):
h = self.pts_linears_hazei
h = F.softplus(h)
if i in self.skips:
h = torch.cat([input_views_haze, h], -1)
 sigma = self.sigma_linear(h)
 rgb = self.rgb_linear_haze(h)

 outputs_haze = torch.cat([rgb, sigma], -1)
 return outputs,outputs_haze   `

implement volume rendering according to the formula in your paper，referred to your code
`
sigma2alpha = lambda sigma, dists: 1.-torch.exp(-sigma*dists)
dists = z_vals[...,1:] - z_vals[...,:-1]
t_vals = z_vals*torch.norm(rays_d[...,None,:], dim=-1)
dists = torch.cat([dists, torch.Tensor([1e10]).expand(dists[...,:1].shape)], -1)  # [N_rays, N_samples]
dists = dists * torch.norm(rays_d[...,None,:], dim=-1)
rgb_c = torch.sigmoid(raw_c[...,:3])  # [N_rays, N_samples, 3]
rgb_h = torch.sigmoid(raw_h[...,:3]) # [N_rays, 3]
noise = 0.
noise_haze = 0.
if raw_noise_std > 0.:
noise = torch.randn(raw_c[...,3].shape) * raw_noise_std
noise_haze = torch.randn(raw_h[...,3].shape) * raw_noise_std
# Overwrite randomly sampled data if pytest
if pytest:
np.random.seed(0)
noise = np.random.rand(*list(raw_c[...,3].shape)) * raw_noise_std
noise = torch.Tensor(noise)
sigma_c = F.softplus(raw_c[...,3] + noise)
sigma_h = F.softplus(raw_h[...,3] + noise_haze)  #[1024]
sigma_h = sigma_h[:,None]            #[1024,1]
trans_h = torch.exp(-sigma_hz_valstorch.norm(rays_d[...,None,:], dim=-1))
alpha_c = sigma2alpha(sigma_c, dists)
alpha_h = sigma2alpha(sigma_h, dists)
t = torch.cat([torch.ones((alpha_c.shape[0], 1)), 1.-alpha_c + 1e-10], -1)
T = torch.cumprod(t, -1)[:, :-1]
weights_c =  T  * alpha_c
weights_h =  trans_h * alpha_h
J = torch.sum(weights_c[...,None] * rgb_c, -2)
rgb_c =  torch.sum(trans_h[...,None] * weights_c[...,None] * rgb_c, -2)  # [N_rays, 3]
rgb_h =  torch.sum(T[...,None] * weights_h[...,None] * rgb_h[:,None,:], -2)  # [N_rays, 3]
rgb = rgb_c + rgb_h
`
during training, the model tends to fit the whole scene with C_obj and the values of C_med are all 0.
Looking forwarding to your reply, thank you very much!

Hi,
thank you for your reply!
I modified the vanilla nerf code.

used recon loss instead of mse loss;

def recon_loss(rgb,target_s):
    rgb_render_clip = torch.minimum(torch.tensor(1.), rgb)
    resid_sq_clip = (rgb_render_clip - target_s[..., :3]) ** 2
    scaling_grad = 1. / (1e-3 + rgb_render_clip.detach())
    data_loss = resid_sq_clip * scaling_grad ** 2
    return data_loss.mean()

used extra mlp to predict sigma_haze as in the paper, netdepth = 6 , netwidth = 256;

h = input_views_haze
for i, l in enumerate(self.pts_linears_haze):
    h = self.pts_linears_haze[i](h)
    h = F.softplus(h)
    if i in self.skips:
        h = torch.cat([input_views_haze, h], -1)

sigma = self.sigma_linear(h)
rgb = self.rgb_linear_haze(h)

outputs_haze = torch.cat([rgb, sigma], -1)
return outputs,outputs_haze

implement volume rendering according to the formula in your paper，referred to your code

sigma2alpha = lambda sigma, dists: 1.-torch.exp(-sigma*dists)

dists = z_vals[...,1:] - z_vals[...,:-1]
t_vals = z_vals*torch.norm(rays_d[...,None,:], dim=-1)
dists = torch.cat([dists, torch.Tensor([1e10]).expand(dists[...,:1].shape)], -1)  # [N_rays, N_samples]

dists = dists * torch.norm(rays_d[...,None,:], dim=-1)

rgb_c = torch.sigmoid(raw_c[...,:3])  # [N_rays, N_samples, 3]

rgb_h = torch.sigmoid(raw_h[...,:3]) # [N_rays, 3]

noise = 0.
noise_haze = 0.

if raw_noise_std > 0.:
  noise = torch.randn(raw_c[...,3].shape) * raw_noise_std
  noise_haze = torch.randn(raw_h[...,3].shape) * raw_noise_std
  # Overwrite randomly sampled data if pytest
  if pytest:
      np.random.seed(0)
      noise = np.random.rand(*list(raw_c[...,3].shape)) * raw_noise_std
      noise = torch.Tensor(noise)

sigma_c = F.softplus(raw_c[...,3] + noise)
sigma_h = F.softplus(raw_h[...,3] + noise_haze)  #[1024]

sigma_h = sigma_h[:,None]            #[1024,1]

trans_h = torch.exp(-sigma_h*z_vals*torch.norm(rays_d[...,None,:], dim=-1))

alpha_c = sigma2alpha(sigma_c, dists)
alpha_h = sigma2alpha(sigma_h, dists)

t = torch.cat([torch.ones((alpha_c.shape[0], 1)), 1.-alpha_c + 1e-10], -1)
T = torch.cumprod(t, -1)[:, :-1]

weights_c =  T  * alpha_c

weights_h =  trans_h * alpha_h

J = torch.sum(weights_c[...,None] * rgb_c, -2)

rgb_c =  torch.sum(trans_h[...,None] * weights_c[...,None] * rgb_c, -2)  # [N_rays, 3]

rgb_h =  torch.sum(T[...,None] * weights_h[...,None] * rgb_h[:,None,:], -2)  # [N_rays, 3]

rgb = rgb_c + rgb_h

during training, the model tends to fit the whole scene with C_obj and the values of C_med areGradually converging to 0.
Looking forwarding to your reply, thank you very much!


refactor(project): remove @testing-library/react-hooks in favor of @testing-library/react

Noticed over in: https://github.com/primer/react/pull/3077 that later versions of @testing-library/react-hooks do not support React 18 🤔
When looking into this, it seems that the recommendation is to instead use renderHook from @testing-library/react directly: https://testing-library.com/docs/react-testing-library/api/#renderhook
This PR updates the call sites where we use @testing-library/react-hooks and also adds in an eslint rule to suggest importing from @testing-library/react instead, for example:
  4:9  error  'renderHook' import from '@testing-library/react-hooks' is restricted. Please use `renderHook` from `@testing-library/react` instead  no-restricted-imports

Ah, seems like this is not a thing in the previous major version of @testing-library/react which is for React 17 😞
Seems like a good one to table until we have React 18 support


Added the Link for .rst format

Added the link for .rst format on docs-contribution page

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.

Looks great to me. Thanks for contributing!


can we get a restart hotkey?

^^^
I also think it'd improve the game to have a hotkey for "restart"

like a pause menu?


Cypress code enhancements

Description
Updated cypress test scripts with new implementations in Pie, Treemap and Histogram charts
Check List

[ ] New functionality includes testing.
[ ] Commits are signed per the DCO using --signoff

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

Codecov Report

Merging #903 (231dbe0) into main (b5c6802) will increase coverage by 16.27%.
The diff coverage is n/a.

@@              Coverage Diff              @@
##               main     #903       +/-   ##
=============================================
+ Coverage     55.59%   71.87%   +16.27%
  Complexity      291      291
=============================================
  Files           260       42      -218
  Lines          8715     2311     -6404
  Branches       1892      240     -1652
=============================================
- Hits           4845     1661     -3184
+ Misses         3699      509     -3190
+ Partials        171      141       -30

Flag
Coverage Δ

dashboards-observability
?

opensearch-observability
71.87% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files
Coverage Δ

...panel/config_panes/config_controls/config_text.tsx

...ublic/components/notebooks/components/notebook.tsx

...nents/helpers/__tests__/sampleDefaultNotebooks.tsx

...ents/visualizations/charts/histogram/histogram.tsx

...onents/visualizations/charts/bubble/bubble_type.ts

...mponents/common/helpers/ppl_docs/commands/where.ts

...ublic/components/visualizations/charts/pie/pie.tsx

...visualizations/visualization_specs/default_spec.ts

...ytics/components/common/filters/filter_helpers.tsx

...config_panes/config_controls/config_panel_item.tsx

... and 208 more

Help us with your feedback. Take ten seconds to tell us how you rate us.

@mengweieric, could you please merge these changes in main?

closing older test PR with conflict.


stuck on last part section II

Section II - Installing arm9loaderhax
Reinsert your SD card into your 2.1.0 3DS
Go to http://dukesrg.github.io/2xrsa.html?arm11.bin on your 3DS
I'm new 3ds, when i try unable to turn on my wifi, when i press internet setting it keep showing push the button which is old 3ds model... how? please advise.

With a new 3DS, you have to leave wifi on BEFORE you use OTPHelper to downgrade to 2.1 because 2.1 is old3DS firmware and as such you are not able to toggle wifi via the operating system whatsoever. The ONLY way to turn your wifi on in your case is to turn off your system, take off the back plate of your 3DS (like you were taking out the MicroSD card), find the battery, take it out, wait a couple of minutes, and then put it back in. This will reset the wifi to the default on setting and you will be able to proceed once you re-establish your internet connection settings after pulling the battery.

New guide is up and all currently open issues are being closed. If you feel your issue still applies to the new guide, you can request for it to be re-opened by replying to it.


[Question] How to set the baseUrl

Thank you for this this fantastic project.
I have a question about setting the baseUrl for document from string. (or make the link relative to a site)
I can find some reference about DocumentBuilder, which doesn't exist in the current version.

There are several ways to do that - it all depends on your use-case. Assuming you have some HTML source and you want to parse it + additionally set the URL as-if the page was loaded from that URL you can do as follows:
var configuration = Configuration.Default;
var context = BrowsingContext.New(configuration);
var document = await context.OpenAsync(res => res.Content(yourSource).Address(baseUrl));

Essentially, the callback style is a "virtual response", i.e., it gives you possibility to construct a full response like it could be send from a server.
Does that cover your use-case or am I on the wrong track here?

Thank you very much.
This is exactly what I'm looking for and fast.
I came across this code before, I was not sure this is the recommended way to set the baseUrl.
Maybe, it will be helpful for others if we add it to the document.


Adding modules that will have the Vert.x implementations of the kafka communication

Module setup for #2928
Proposed Changes

empty modules Receiver-vertx & Producer-vertx added.

/ok-to-test


Adds more.../ less... link where the content of a field is too long

closes #413

@tpendragon I have a difficulty adding a spec to view the document through the spec in the UI. I added one spec on the catalog controller only to see that the field with the long characters is there; and one spec as a feature to check the more link on the description field. The part which will fail the feature spec is commented.

@jrgriffiniii created this spec https://github.com/pulibrary/pomegranate/compare/issues-484-jrgriffiniii-catalog-spec
I'm able to return the page body but still not able to find the css classes which are added through javascript.

Locally an update in the spec was the string "panoramic"*50 because the character limit I have set in the JS is 300.


[AP] Use lambda layer for deployment, cfn for replacement

Description

Switch from using image-builder and a docker container into using a lambda layer to provide the API infrastructure
Add support for retrieving the version list and upgrading inline

Changes

Use isort on imports for files changed
Add the lambda layer infrastructure and scripts for deployment
Consolidate policies in infrastructure stack as there is a limit of 10
Add backend/frontend changes to set the current version

How Has This Been Tested?

deploying 2 versions (as well as PC infrastructure files) to a custom bucket
creating a PCUI stack using one of those versions
use PCUI to select the second version

PR Quality Checklist

[ ] I added tests to new or existing code
[ ] I removed hardcoded strings and used react-i18next library (useTranslation hook and/or Trans component), see an example here
[ ] I made sure no sensitive info gets logged at any time in the codebase (see here) (e.g. no user info or details, no stacktraces, etc.)
[ ] I checked that infrastructure/update_infrastructure.sh runs without any error
[ ] I checked that npm run build builds without any error
[ ] I checked that clusters are listed correctly
[ ] I checked that a new cluster can be created (config is produced and dry run passes)
[ ] I checked that login and logout work as expected

In order to increase the likelihood of your contribution being accepted, please make sure you have read both the Contributing Guidelines and the Project Guidelines
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

Thank you! As discussed, I am going to close this for the moment and keep it as a reference to implement the different ideas bit by bit.
I am looking forward to seeing all of this introduced into the product!


bug: DgsInvalidInputArgumentException when mapping Int to Java Long type

Hi, using version 4.9.0 I am getting DgsInvalidInputArgumentException when performing a mutation. In my schema file, I have defined an input like:
input RowFinancial {
    rowId: ID!
    name: String!
    quantity: Int!
    tax: Float!
    price: Float!
}

Its @InputArgument Java Class is:
public class RowFinancial {

    private String rowId;
    private String name;
    private Long quantity;
    private Double tax;
    private Double price;
    // getters and setters
}

I am aware that the Java Long type is not part of the GraphQL spec (and is deprecated in the Scalars implementation), so I included the graphql-dgs-extended-scalars library and registered the scalar as follows:
@DgsComponent
public class LongScalarRegistration {

    @DgsRuntimeWiring
    public RuntimeWiring.Builder addScalar(RuntimeWiring.Builder builder) {
        return builder.scalar(ExtendedScalars.GraphQLLong);
    }

}

But when calling the mutation I'm getting the following error:
com.netflix.graphql.dgs.exceptions.DgsInvalidInputArgumentException: Invalid input argument `1` for field `quantity` on type `com.example.integration.demo.RowFinancial`
	at com.netflix.graphql.dgs.internal.InputObjectMapper.trySetField(InputObjectMapper.kt:152) ~[graphql-dgs-4.9.0.jar:4.9.0]
	at com.netflix.graphql.dgs.internal.InputObjectMapper.mapToJavaObject(InputObjectMapper.kt:127) ~[graphql-dgs-4.9.0.jar:4.9.0]
	at com.netflix.graphql.dgs.internal.InputObjectMapper.mapToJavaObject(InputObjectMapper.kt:112) ~[graphql-dgs-4.9.0.jar:4.9.0]
	at com.netflix.graphql.dgs.internal.InputObjectMapper.convertList(InputObjectMapper.kt:206) ~[graphql-dgs-4.9.0.jar:4.9.0]
	at com.netflix.graphql.dgs.internal.InputObjectMapper.mapToJavaObject(InputObjectMapper.kt:117) ~[graphql-dgs-4.9.0.jar:4.9.0]
	at com.netflix.graphql.dgs.internal.DataFetcherInvoker.convertValue(DataFetcherInvoker.kt:241) ~[graphql-dgs-4.9.0.jar:4.9.0]
	at com.netflix.graphql.dgs.internal.DataFetcherInvoker.processInputArgument(DataFetcherInvoker.kt:208) ~[graphql-dgs-4.9.0.jar:4.9.0]
	at com.netflix.graphql.dgs.internal.DataFetcherInvoker.invokeDataFetcher(DataFetcherInvoker.kt:62) ~[graphql-dgs-4.9.0.jar:4.9.0]
	at com.netflix.graphql.dgs.internal.DgsSchemaProvider.createBasicDataFetcher$lambda-19(DgsSchemaProvider.kt:303) ~[graphql-dgs-4.9.0.jar:4.9.0]
	at graphql.execution.instrumentation.dataloader.DataLoaderDispatcherInstrumentation.lambda$instrumentDataFetcher$0(DataLoaderDispatcherInstrumentation.java:87) ~[graphql-java-17.3.jar:na]
	at graphql.execution.ExecutionStrategy.fetchField(ExecutionStrategy.java:279) ~[graphql-java-17.3.jar:na]
	at graphql.execution.ExecutionStrategy.resolveFieldWithInfo(ExecutionStrategy.java:210) ~[graphql-java-17.3.jar:na]
	at graphql.execution.ExecutionStrategy.resolveField(ExecutionStrategy.java:182) ~[graphql-java-17.3.jar:na]
	at graphql.execution.AsyncSerialExecutionStrategy.lambda$execute$1(AsyncSerialExecutionStrategy.java:43) ~[graphql-java-17.3.jar:na]
	at graphql.execution.Async.eachSequentiallyImpl(Async.java:80) ~[graphql-java-17.3.jar:na]
	at graphql.execution.Async.eachSequentially(Async.java:69) ~[graphql-java-17.3.jar:na]
	at graphql.execution.AsyncSerialExecutionStrategy.execute(AsyncSerialExecutionStrategy.java:38) ~[graphql-java-17.3.jar:na]
	at graphql.execution.Execution.executeOperation(Execution.java:159) ~[graphql-java-17.3.jar:na]
	at graphql.execution.Execution.execute(Execution.java:105) ~[graphql-java-17.3.jar:na]
	at graphql.GraphQL.execute(GraphQL.java:613) ~[graphql-java-17.3.jar:na]
	at graphql.GraphQL.parseValidateAndExecute(GraphQL.java:538) ~[graphql-java-17.3.jar:na]
	at graphql.GraphQL.executeAsync(GraphQL.java:502) ~[graphql-java-17.3.jar:na]
	at com.netflix.graphql.dgs.internal.BaseDgsQueryExecutor.baseExecute(DefaultDgsQueryExecutor.kt:233) ~[graphql-dgs-4.9.0.jar:4.9.0]
	at com.netflix.graphql.dgs.internal.DefaultDgsQueryExecutor.execute(DefaultDgsQueryExecutor.kt:80) ~[graphql-dgs-4.9.0.jar:4.9.0]
	at com.netflix.graphql.dgs.internal.DefaultDgsQueryExecutor.getJsonResult(DefaultDgsQueryExecutor.kt:157) ~[graphql-dgs-4.9.0.jar:4.9.0]
	at com.netflix.graphql.dgs.internal.DefaultDgsQueryExecutor.getJsonResult$default(DefaultDgsQueryExecutor.kt:156) ~[graphql-dgs-4.9.0.jar:4.9.0]
	at com.netflix.graphql.dgs.internal.DefaultDgsQueryExecutor.executeAndExtractJsonPath(DefaultDgsQueryExecutor.kt:107) ~[graphql-dgs-4.9.0.jar:4.9.0]
	at com.netflix.graphql.dgs.DgsQueryExecutor.executeAndExtractJsonPath(DgsQueryExecutor.java:103) ~[graphql-dgs-4.9.0.jar:4.9.0]
	at com.example.integration.demo.DemoApplicationTests.fails(DemoApplicationTests.java:36) ~[test-classes/:na]

When trying version 4.5.1 the same code executes without issue. I am wondering if I've missed some change or I'm taking the wrong approach.
Find attached a simple test case to reproduce the issue.
test-case.zip
Kind regards.

Hi @carmas-RatedPower, you had a few mistakes in your test case that together caused this issue.
The first issue I found is that the schema file actually had Int defined for quantity. This means the Long scalar wouldn't be used, even if it was registered correctly.
After change the field to Long, the application failed to startup complaining that the scalar doesn't exist. I also had to add scalar Long to the schema file.
Again, the test would fail with an application startup failure, saying that there is no scalar implementation for Long. The reason for this was that in your test you specified
@SpringBootTest(classes = {DgsAutoConfiguration.class, TestMutation.class)

Note that the LongRegistration is missing from the list of classes!
So after fixing that, the test passes.
@SpringBootTest(classes = {DgsAutoConfiguration.class, TestMutation.class, LongScalarRegistration.class})


[Bug]: Running the punica lora on Qwen1.5 32B model encountered RuntimeError: No suitable kernel. h_in=64 h_out=3424 dtype=Float out_dtype=BFloat16

Your current environment
3090 8 gpus
vllm 0.4.1
🐛 Describe the bug
Hello vllm team,
When I try to run qwen1.5 32B model with punica lora request with tensor parallel size = 8, I have encountered the following error:
punica_kernels.dispatch_bgmv_low_level(
(RayWorkerWrapper pid=1566630) ERROR 04-26 16:28:41 worker_base.py:157] RuntimeError: No suitable kernel. h_in=64 h_out=3424 dtype=Float out_dtype=BFloat16
I am using 3090 machine with 8 gpus and I wish to use all my gpus. Can you have any chance to take look at this issue I am facing? Thank you very much!

FYI https://github.com/vllm-project/vllm/issues/3793#issuecomment-2031627415

getting the same issue with Qwen1.5-14B when enable lora, did you solve this problem?

getting the same issue with Qwen1.5-14B when enable lora, did you solve this problem?

in bgmv_impl.cuh

add the following check at line 243                   feat_in % (vec_size * 4) == 0  ||);  to bypass the assert

add the following case at line line 284:
'''
else if constexpr (feat_in % (vec_size / 2 * 8) == 0) {
constexpr int tx = 8;
constexpr int ty = 4;
dim3 nblks(feat_out, batch_size);
dim3 nthrs(tx, ty);
bgmv_shrink_kernel<feat_in, feat_out, vec_size / 2,
vec_size * sizeof(in_T) / 2,
vec_size * sizeof(W_T) / 2, tx, ty, tz>
<<<nblks, nthrs, 0, stream>>>(Y, X, W, indicies, y_offset,
full_y_size, num_layers, layer_idx,
scale);
}
}
'''

add the corresponding kernel at bgmv_config.h.

rebuild the villm.

I am able to get qwen1.5 14B to run but the inference becomes slow.

FYI #3793 (comment)

FYI #3793 (comment)

你好，我是使用pip install vllm安装的vllm包，你说的vllm/blob/main/csrc/punica/bgmv/bgmv_config.h没有找到在哪

FYI #3793 (comment)

FYI #3793 (comment)

你好，我是使用pip install vllm安装的vllm包，你说的vllm/blob/main/csrc/punica/bgmv/bgmv_config.h没有找到在哪

在源码里，必须
用源码编译安装

This should be resolved with the new landed Triton kernels https://github.com/vllm-project/vllm/pull/5036


[YUNIKORN-1040] add e2e test that re-starts the scheduler pod

What is this PR for?
Add an e2e verification for restarting the scheduler pod as discussed in YUNIKORN-1040. Added as a flow in ginkgo beforeSuite in basicscheduling_test.go.
What type of PR is it?

[ ] - Bug Fix
[X] - Improvement
[ ] - Feature
[ ] - Documentation
[ ] - Hot Fix
[ ] - Refactoring

Todos
What is the Jira issue?

https://issues.apache.org/jira/browse/YUNIKORN-1040

How should this be tested?
Ran e2e test
Screenshots (if appropriate)
Questions:

Hi @yangwwei , do you have general pointers on how I can debug the failing CI checks? Running the e2e tests locally on this branch passes, but getting the applications in pre-commit checks seem to fail.

Thanks @wilfred-s, incorporated your suggestions and ran e2e tests locally with success. Not sure why the pre-commit checks seem to fail on getting the applications in CI. Any way I can get access to the cluster these run on and debug?

Sorry for the late response, I was on vacation last week so emails/notifications got backlogged.  For this issue, @ronazhan can you share your thoughts?
I am not entirely sure what is the best way to debug this. The error shown up there:
Unexpected error:
      <*url.Error | 0xc0004c0210>: {
          Op: "Get",
          URL: "http://localhost:9080/ws/v1/apps",
          Err: {s: "EOF"},
      }
      Get "http://localhost:9080/ws/v1/apps": EOF
  occurred

that seems like the REST endpoint could not be accessed. Maybe this is because the scheduler pod gets restarted and we need to redo the port-forwarding? Here is how it was done during the initial setup: https://github.com/apache/incubator-yunikorn-k8shim/blob/a61fc0052c07e510503853db74030290bbda562b/scripts/run-e2e-tests.sh#L193-L199.

I don't know what happened with my last update. I must have closed a browser window without saving.
I think that @yangwwei is right the forward of the port has not been recreated after the restart and that will cause the issue for the rest of the tests.
I would also suggest that we move this restart test to its own test suite. Instead of making this part of basic scheduling and causing those tests to fail we should create a "recovery & restart" suite. Move this restart test in there and we can then extend it with e2e recover tests.
Using some more advanced ginkgo tricks we can then make sure these restart or recovery tests are run separate from all the others. Adding labels and splitting the ginkgo run into two runs would allow us to be more destructive in tests. I do think that it requires gingkgo v2 with these test labels. @ronazhan please some input on ginkgo v2 change also

Yes, @wilfred-s and @yangwwei are right that the port-forward connection needs to be restarted as well after the new scheduler pod is brought up. I don't believe that port-forward is available using the k8s go-client library, so this might have to be done as a shell command
I haven't looked much into the ginkgo v2 changes, but the recovery suite can be separated by using --skip-package  flag. Then, it can be run separately than the other test packages

@yangwwei @wilfred-s @ronazhan Thank you for your inputs. I’ve made most of your suggestions and the e2e tests are passing locally again.
However, the CI checks seem to be hanging now. Perhaps something is off with the port-forward I added in k8s_utils — I’ll debug tomorrow when I can view the log output on the checks.

Looks like the CI is failing after the recovery test suite, could it be possible there is still something wrong with the port-forwarding logic? Can we collect both stdout and stderr in PortForwardService while executing exec.Command: , e.g using https://pkg.go.dev/os/exec#Cmd.CombinedOutput to get more info?

@yangwwei Right, something is definitely off about the port-forwarding.  But this is swallowing the following error:
 Unexpected error:
      <*exec.ExitError | 0x1400054e000>: {
          ProcessState: {
              pid: 69190,
              status: 256,
              rusage: {
                  Utime: {
                      Sec: 0,
                      Usec: 62424,
                      Pad_cgo_0: [0, 0, 0, 0],
                  },
                  Stime: {
                      Sec: 0,
                      Usec: 20745,
                      Pad_cgo_0: [0, 0, 0, 0],
                  },
                  Maxrss: 45203456,
                  Ixrss: 0,
                  Idrss: 0,
                  Isrss: 0,
                  Minflt: 3441,
                  Majflt: 34,
                  Nswap: 0,
                  Inblock: 0,
                  Oublock: 0,
                  Msgsnd: 17,
                  Msgrcv: 10,
                  Nsignals: 76,
                  Nvcsw: 67,
                  Nivcsw: 1116,
              },
          },
          Stderr: nil,
      }
      exit status 1

I thought about using client-go/tools for a go-native implementation as explained here: https://gianarb.it/blog/programmatically-kube-port-forward-in-go . But if we put the termination and port-forwarding logic in goroutines and use sync/WaitGroup, then this would still be a blocking operation, right?
Happy to look in to any other suggestions.

hi @anuraagnalluri  thanks for the updates.
The error message is still not that informative, I am still unclear why this port-forward command would fail. Any way to get more meaningful error messages? Have you tried to run the same port forward code locally? That works perfectly fine?
The code in https://gianarb.it/blog/programmatically-kube-port-forward-in-go could be another approach, I think it won't block the main process
// I just wait until the readyCh tells me that the connection is up and running
select {
case <-readyCh:
    break
}
println("Port forwarding is ready to get traffic. have fun!")

actually it would be good to give this approach a try, because IIUC this way we can get rid of changes in the github action:
gosec:
    # To specify a set of rules to explicitly exclude.
    # Available rules: https://github.com/securego/gosec#available-rules
    excludes:
      - G204

@anuraagnalluri Could this be because the previous port forward command was not killed?

@ronazhan That was one suspicion I had which is why I port-forwarded the service instead of the pod. The pod has a unique UUID post restart, but the service remains static. Since the command would effectively be for the same service, would we have to kill the old process and start a new one? It's difficult to verify what may be causing fallback_test to fail locally, because even when rebuilding the images on master and running the test, it reliably fails/times out here. This happens regardless of whether port-forward proc is running or not on master and my task branch.
@yangwwei Makes sense, I think it would be good for removing gosec exclusion. I think the actual code the blog refers to does block the main process until stopCh is closed . But we can likely remove these from our implementation to make it non-blocking, right?

But we can likely remove the syncs from our implementation to make it non-blocking, right?

Yeah, seems like that can be removed, please give a try! thanks!

But we can likely remove the syncs from our implementation to make it non-blocking, right?

Yeah, seems like that can be removed, please give a try! thanks!

@yangwwei Used client-go as discussed. Still consistently failing on port-forwarding, but error is clearer. We're port-forwarding the new scheduler pod right after it comes up (with unique UUID) , so I'm not sure how 9080 could already be bound.

I think it is because the last port-forwarding wasn't killed so the port was occupied, like @ronazhan mentioned in this comment. I have tried the following steps locally:

start YK
do a port-forwarding
kill YK pod

and I get
kubectl port-forward svc/yunikorn-service 9889:9889
Forwarding from <IP_ADDRESS>:9889 -> 9889
Forwarding from [::1]:9889 -> 9889
Handling connection for 9889
Handling connection for 9889
E0304 10:12:28.165342   65184 portforward.go:400] an error occurred forwarding 9889 -> 9889: error forwarding port 9889 to pod a1c96c399c12d2a7b14fe58cbe9f320c1a251f80e3bad71e56010890762297e1, uid : Error: No such container: a1c96c399c12d2a7b14fe58cbe9f320c1a251f80e3bad71e56010890762297e1
E0304 10:12:28.166506   65184 portforward.go:400] an error occurred forwarding 9889 -> 9889: error forwarding port 9889 to pod a1c96c399c12d2a7b14fe58cbe9f320c1a251f80e3bad71e56010890762297e1, uid : Error: No such container: a1c96c399c12d2a7b14fe58cbe9f320c1a251f80e3bad71e56010890762297e1
Handling connection for 9889

the port is still occupied and I got the following exception if I try to do port-forwarding again:
kubectl port-forward svc/yunikorn-service 9889:9889
Unable to listen on port 9889: Listeners failed to create with the following errors: [unable to create listener: Error listen tcp4 <IP_ADDRESS>:9889: bind: address already in use unable to create listener: Error listen tcp6 [::1]:9889: bind: address already in use]
error: unable to listen on any of the requested ports: [{9889 9889}]

@yangwwei @ronazhan Right, this makes sense now. Thank you both for your inputs. I forgot that even though we're port-forwarding the pod in the newly added code, the run-e2e-tests.sh initiates a service level port-forward that will continue to conflict as you guys mentioned. Will kill the initial port-forward and see if that allows the checks to pass.

@yangwwei Killing the initial port-forward now, but consistently seeing the following error on 1-2 CI checks (different ones each time):
admission webhook "admission-webhook.yunikorn.validate-conf" denied the request: Post "http://yunikorn-service:9080/ws/v1/validate-conf": dial tcp <IP_ADDRESS>:9080: connect: connection refused
  occurred

I haven't been able to reproduce this locally. Also the log output from kClient.PortForwardYkSchedulerPod() is as expected, since we can see the following at the end of recovery_and_restart:
Forwarding from <IP_ADDRESS>:9080 -> 9080
Forwarding from [::1]:9080 -> 9080
Port-forwarding traffic for yunikorn-scheduler...•

Any further tips on troubleshooting?

Looks like we are close to sorting this out. The remaining issue is an intermittent one.  The failed tests were running right after the restart testing, could it be possible that the services couldn't be fully started or the port-forwarding wasn't fully completed? Maybe we can add some code to wait until the port is accessible before moving to the next test case.
Essentially, we will need to add more coverage in this test suite, we need to verify things like schedule some stuff, restart and make sure the scheduler doesn't lose track of the running apps. In order to run all these verifications, we still need to make sure services are all good.

@yangwwei Added more verifications as you suggested and checks seem to be passing now. Similar to basicscheduling_test, we deploy a sleep pod. After restarting the scheduler, killing previous port-forward, and re-issuing another port-forward command, we get the running applications and verify specific allocation properties.

@yangwwei Apologies for the relative inactivity on this PR, just getting back to it now. Addressed most of your concerns and am going with the singleton approach since I could not find a way to share context between different ginkgo test suites (only within a suite via Describe block). Since ginkgo also has the ability to parallelize within a suite, It blocks potentially run within their own "containers". Therefore, if port-forwarding is managed by the go runtime, it should be in the setup for all tests now that issue REST calls to the scheduler svc.
If we can verify that all suites execute in independent runtimes (which seems plausible from the log output of the checks), we don't even need to follow singleton pattern since each runtime have its own port forwarder.
With the changes I currently have, some checks intermittently fail due to not being able to get allocations post scheduler restart. Many times, all checks are passing, but there is not 100% pass rate when re-running them. I've printed some debug information which shows that we can see the sleep-pod in the dev namespace for both cases, but the allocations are empty in the failing cases. You can search for "appsInfo allocations are" in failing checks to verify this.
Any thoughts on what the cause of empty allocations when querying /ws/v1/apps upon scheduler restart may be? Haven't been able to reproduce the error locally.

hi @anuraagnalluri  thanks for the updates! Appreciated!
It is sometimes not so easy to figure out what caused the intermittent issues, pls allow me to look into today and tomorrow, I will get back to you on this. Thanks for the efforts going this far! Appreciated!

hi @anuraagnalluri
There are a couple of things:

The unit test failure was unrelated to your patch, looks like it was because here we need to use a read lock when to get the cleanupTime.  We need a separate JIRA to get this fixed. For this one, as long as we can have a good UT run, we are good.
The failed e2e tests are with --plugin option, which means they are testing the scheduler-plugin mode. The panic happens at   	/home/runner/work/incubator-yunikorn-k8shim/incubator-yunikorn-k8shim/test/e2e/recovery_and_restart/recovery_and_restart_test.go:120 +0x156c which was because the allocations list retrieved from the scheduler was empty (we can also see that from the debug output). Have you looked at the history if it was always failing under the plugin mode? if that's the case, I suggest rerunning this simple scenario in plugin mode and see if it introduces a different behavior after scheduler restart.

@yangwwei Thanks for your input. I came to a similar realization that intermittent failures would occur on the plugin mode. I did locally spin up scheduler in plugin mode and ran the recovery_and_restart test suite, but I was not able to reproduce the error we see in failing checks here.
Specifically, the suite passes and allocations list is non-empty. I'll keep looking in to this issue.

hi @anuraagnalluri could you please rebase your changes to the latest master? YK now is an Apache TLP, so we have renamed our repos with some related code changes, hope those won't affect this PR.
I also spoke with @ronazhan earlier today, he has lots of expertise on e2e tests, he will help to take a look at this issue as well. Thanks!

@yangwwei Done, and changed necessary imports. Thanks for getting another pair of eyes on this. I was able to reproduce the error locally a couple times in plugin mode, but am still unsure why the allocations list is empty.
When I ran in to the same failure as we see in CI checks, I was able to verify that the applicationID of the sleepjob pod belongs to the newly added recovery_and_restart suite and not basic_scheduling_test. My initial thought was that a "completed" sleepjob with 0 allocations from a previous test could have been picked up, but this is not the case (as that test also tears down the namespace in cleanup). I could see the sleeppod was in "Running" state and ultimately could not identify any metadata differences in the failing case vs. when it's deployed in passing test runs.
Is it possible that plugin-mode logic could specifically affect this behavior in a way normal mode cannot?

Specifically, the suite passes and allocations list is non-empty.

appsInfo allocations are: []
@anuraagnalluri Just to clarify, the remaining failure is due to the test expecting a nil object representing an application's allocations, but instead it receives an allocation list of length 0?
This seems like a minor acceptable behavior change, but @yangwwei can you help confirm this to be expected now? Ideally, this should be consistent between plugin and regular Yunikorn versions.
For now, I would recommend adding an if statement check to keep the test backwards compatible with previous versions. If the allocations object is not nil, validate that the allocations length is 0.

@anuraagnalluri Just to clarify, the remaining failure is due to the test expecting a nil object representing an application's allocations, but instead it receives an allocation list of length 0?

@ronazhan Appreciate your help! This is not quite the issue. The issue is that there is a sleep pod deployed in development namespace here, so the test actually expects an allocation list of length 1 here.
Most of the time, this works and we can see the corresponding allocation. Sometimes, but only on plugin mode, this allocation list that's retrieved is of length 0 despite the sleep pod being present/running in the dev namespace. This causes an error when trying to index the first element of the list with [0], but it's unclear why the corresponding allocation isn't showing in the appsInfo var which is populated with a GetAppInfo call here.
It's worth noting that the only difference between this and basic_scheduling_test behavior is that we bounce the scheduler pod prior to making these checks. We want to ensure that restarting the scheduler won't drop allocations or affect any normal functionality. But this does not seem to be the case 100% of the time specifically in plugin mode.

The issue is that there is a sleep pod deployed in development namespace here, so the test actually expects an allocation list of length 1 here.
Most of the time, this works and we can see the corresponding allocation. Sometimes, but only on plugin mode, this allocation list that's retrieved is of length 0 despite the sleep pod being present/running in the dev namespace. This causes an error when trying to index the first element of the list with [0], but it's unclear why the corresponding allocation isn't showing in the appsInfo var which is populated with a GetAppInfo call here.
It's worth noting that the only difference between this and basic_scheduling_test behavior is that we bounce the scheduler pod prior to making these checks. We want to ensure that restarting the scheduler won't drop allocations or affect any normal functionality. But this does not seem to be the case 100% of the time specifically in plugin mode.

There's a few things I can see that are issues with the test right away. For one thing, you've structured this as multiple integration tests, when in fact there is really only one. All of the restart / re-forward behavior should go into the setup method, and not be a separate IT test (Ginkgo doesn't guarantee test ordering, so the current structure is brittle, even if it appears to execute correctly).
More importantly, there's nothing I can see here that waits for scheduler recovery to complete. That's not a simple thing to do, but you might try scheduling a second pod (after the restart) and wait for it to be running. Once that happens, it should be safe to query for the original pod.

@craigcondit Thanks a lot for your inputs. You're absolutely right about the multi-integ test structure. I realize Ginkgo runs its It blocks in independent "containers" with no guarantees on ordering. I also wrongly assumed that a "running" scheduler guarantees its state is updated, but it makes sense that a "running" second deployment would be a better verification for that.
I believe the checks are working now and am willing to change the timeouts if you think they should diverge from basic_scheduling_test. Thanks a lot for your review :)

I think the timeout for the final pod status should probably be 30-60 seconds. We need to allow time for recovery and that might take a little while. A normal pod with an already running scheduler will probably be scheduled in 10 seconds reliably but one on a just-started and not yet recovered one may not.


Single input topic should be first element

Description
Fix bug where a single topic input was unused
Tests performed

Ran the following snippet:
    <include file="$(find-pkg-share pointcloud_preprocessor)/launch/preprocessor.launch.xml" >
        <arg name="input_points_raw_list" value="['/top_lidar/pointcloud']" />
    </include>

Effects on system behavior

It subscribed to /top_lidar/pointcloud instead of /input_points_raw0.
Pre-review checklist for the PR author
The PR author must check the checkboxes below when creating the PR.

[X] I've confirmed the contribution guidelines.
[X] The PR follows the pull request guidelines.

In-review checklist for the PR reviewers
The PR reviewers must check the checkboxes below before approval.

[ ] The PR follows the pull request guidelines.

Post-review checklist for the PR author
The PR author must check the checkboxes below before merging.

[X] There are no open discussions or they are tracked via tickets.

After all checkboxes are checked, anyone who has write access can merge the PR.

@Timple Thank you for the PR.
I'll review this 👍


opt-in nbOutDir and nbBaseDir

This doesn't really solve the path problems we have right now, it's merely a band-aid on top that adds opt-in cmdline flags. In other words, it doesn't change the current behavior if no flags are passed.
The two flags are:

-d:nbOutDir= which overwrites nbHomeDir
-d:nbBaseDir= which is equivalent to nbSrcDir.

Still a few things to fix though.

Great thanks! With names I would go with nimibOutDir and nimibSrcDir (so that we have package name as namespace and we can use later nbOutDir and nbSrcDir for the ones that we inject).

Good idea, will change it! 👌
Right now nimibOutDir and nimibSrcDir are injected as well because that was the only way I could make the strdefine to work. I guess it's because it's in a template perhaps? I don't see a workaround to fix it currently but it's a const so it can't be changed. It could be confusing for the user if the autocomplete showed both nbSrcDir and nimibSrcDir but they'll learn eventually 😛

Ok I don't think it was much more than this that's needed at the moment. Feels like unnecessary work to try and fix more stuff if it will be covered in a future refactoring either way :) So I'm fine with merging this now.

I can understand that you might want to override nbHomeDir with an AbsoluteDir for the case of nimiboost (where you want a temp directory somehwere, right?). Not sure about nbSrcDir (better a relativeDir). Maybe for the moment we skip the override for srcDir (I do not think it is needed for nimibook, right)?

Yes nbHomeDir is very useful if it's a absolutedir but nbSrcDir is not neccecary for NimiBoost. I would just set it to "." either way. I could probably do with a relative dir for nbHomeDir as well honestly, because of the restrictions of VSCode extensions I have to create the temp folder in the project itself (and delete them when the window is closed). I tried and  toAbsoluteDir accepts both relative dirs and absolute dirs and converts it into an AbsoluteDir so it's not like we can't use relative dirs, but it's perhaps the fact that the variable itself is absolute instead of relative that bothers you?
But yes we can skip nimibSrcDir for now, I'll fix it later today 😄

I tried and toAbsoluteDir accepts both relative dirs and absolute dirs and converts it into an AbsoluteDir so it's not like we can't use relative dirs, but it's perhaps the fact that the variable itself is absolute instead of relative that bothers you?

you are right toAbsoluteDir does check if it is absolute otherwise converts it to Absolute considering current dir (source), so it is all fine. And for SrcDir ok to skip it for now, since it is not even officially in nimib.

you are right toAbsoluteDir does check if it is absolute otherwise converts it to Absolute considering current dir (source), so it is all fine.

Great! 👍

And for SrcDir ok to skip it for now, since it is not even officially in nimib.

That's a fair point. I noticed when I removed it though that I was in need of it after all. It has to do with the fact that nbDoc.filename is an absolute path at the moment. So unless I have a way of manipulating it, it will just put the .html file besides the .nim file instead of in nbHomeDir. So I'm in need of some way of making nbDoc.filename into a relative path instead so the withDir(nbHomeDir) has any effect. And it was that problem that nimibSrcDir solved. Do you have any other suggestions on how to solve this?

yeah, in principle we could set filename as a relative dir, relative to nbHomeDir, but since this can break stuff, I guess the bets way is to actually use the SrcDir mechanism.

Setting it relative to nbHomeDir wouldn't work as we are setting the final path relative to nbHomeDir. For example if we save it in docs/ then index.nim would have the relative path ../book/index.nim so when we write it finally we do it at nbHomeDir/../book/index.html which is still in the book dir instead of the docs dir as intended. Therefore we will need to have nbHomeDir and nbSrcDir as separate things. What is in nbSrcDir gets mirrored into nbHomeDir.
So it's a keep for now?

yes, it is a keep for now. We will clean up later. Added just one question on the implementation but design for me is approved.

Ok then, everything should be ready now :)

thanks, I will cut a release now!

Awesome! 😄 Will try to incorporate it into NimiBoost tomorrow. (And then I'll be satisfied enough with it to make the first release so you can try it as well 🙃)


Add SharedLibraryBinary properties for the Export file & the Program Debugging file

Currently under the VisualCpp toolchain, a SharedLibraryBinary provides 2 files

the sharedLibraryFile (.dll)
the sharedLibraryLinkFile (.lib)

but when compiling with the debug buidType , some additionnal files are generated

the Exports Library File (.exp)
the Program Debugging File (.pdb)
the Incremental Link File (.ilk)

and there is no way to reference and set the previous files in a build script. This issue requests to add the export and debugging file to a SharedLibraryBinary
Expected Behavior
published setter/getter of those 2 additional files
Current Behavior
Not relevant
Context
This extension will be use to move the SharedLibraryBinary related file outside of the standard build directory.
Steps to Reproduce (for bugs)
Not relevant
Your Environment

Gradle 4.2-20170721201715+0000
Build time:   2017-07-21 20:17:15 UTC
Revision:     78cd08b711e683bb56f97767d96c99bea1266e67
Groovy:       2.4.11
Ant:          Apache Ant(TM) version 1.9.6 compiled on June 29 2015
JVM:          1.7.0_80 (Oracle Corporation 24.80-b11)
OS:           Windows 8.1 6.3 amd64

@lacasseio Would you mind having a look at this request?

Thanks @zosrothko for this feature request. We are aware some paths aren't exposed through the model. This is on purpose and is likely to change in the near future. The reason is simple, we strive to model what is require for Gradle to function properly and take the right decision. Each developer has various intentions for those files and we can't model them all at this time. We prefer leaving the modeling for these files and options to the users so they can build a strong model around them to suit their needs.
Instead of looking at exposing these paths through the model, let's explore what are you trying to achieve with those files? Is the goal to consume them inside other tools? What would be those tools and for what reason? Is it something that can be achieved through other means? How does it affect the build process?
Questions like those will help us understand the requirements and model something around solving the underlying issue instead of patching it by simply exposing paths. I will close this issue for now, but we can keep the discussion going and split the outcome into more actionable user stories.

The main reason for getting a way to expose those file is a packagin issue. For example, the NuGet distribution package manager provides 2 kind of package: one with only release files (dll + lib), the other with debug files (dll + pdb +ilk)  (Nuget call the later a "source" packaging").
So in the general case -- outside of the NuGet user's case -- the idea is to be able to put the pdb/ilk files in a separate directory that would be distributed separatly to avoid the "overbloat" syndrome when using a distribution package management. For sure, this could be done by filtering the original bin directory where all file type are merged, but it can be an helper to make it right the first time.
This is not critical, but a very nice to have. Moreover, in the case of a native package management build within and with gradle, having a internal model of those filetype  can improve the overall design instead of relying on copy/filter tasks.

It makes sense @zosrothko. I think those files will be modeled once we model NuGet support.


netbeans-479: Added ConvertToVarHint to replace explicit type with var

The IDE will include a prompt to replace the explicit types with ‘var’, when the type can be inferred from the context.
e.g..,  String str = new String("Hello");
can be replaced with  var str = new String("hello");
Preconditions for the hint:

hint should be enabled only for JDK10 or higher
hint should work only inside block scope
hint should be disabled if var type is already present.
Apache Jira Link:
https://issues.apache.org/jira/browse/NETBEANS-479

Below Scenarios are covered:

Object Initialization:
Integer i = new Integer("10");
Fix : var i = new Integer("10");
HashMap<Integer,Integer> map= new HashMap<Integer,Integer>();
Fix : var map= new HashMap<Integer,Integer>();

Array Initialization
int[][]arr = new int[3][];
Fix :  var arr = new int[3][];

Assignment of literal:
int a = 10;
Fix:    var a = 10;

Anonymous Object:
Runnable r = new Runnable() {
@Override
public void run() {}
};

Fix : var r = new Runnable() {
@Override
public void run() {}
};

Lambda expression
Runnable r = () -> {};
Fix: var r = (Runnable)  () -> {};

Diamond interface
HashMap<Integer,Integer> map = new HashMap<>();
Fix:  var map = new HashMap<Integer,Integer>();

Hi,
Sorry for delay. Some initial comments:
-please note that every occurrence of @Hint means a separate "hint" and a separate entry in Tools/Options/Editor/Hints. I think there should only be a single @Hint for this (on the class), which means a single hint/single configuration entry, and then there can be any number of @Trigger methods inside the class that will all work for that single hint. Some conversion may be seen undesirable (worsening readability), so it might be desirable to allow disabling the conversion in some contexts, although I am not sure offhand for which it should be. Defining simple boolean options should be simple, see @BooleanOption, e.g. in: java.hints/src/org/netbeans/modules/java/hints/perf/SizeEqualsZero.java
-please note that @Hint has minSourceVersion that can be used to specify minimal -source version for the hint. But even if that didn't work in a particular case, there is CompilationInfo.getSourceVersion(), which should be used instead of SourceLevelQuery in hints.
-category = "suggestions" -> category = "rules15" (the category name is confusing, but it is not easy to change; this will be under "JDK Migration Support")
-I wonder if the hint shouldn't have simply @TriggerTreeKind(VARIABLE) or @TriggerPattern("$mods$ $type $var =new $init;") and then internally trying to figure out if the variable can be var or not. (Also please note there will soon be an API method to check if a variable is "var" or not that the hint will be able to use.)

Ok, I think. We can refine later if needed. Please note the branch cannot be merged - it will be necessary to rebase to/merge with master and manually resolve any conflicts.


Nestjs Prisma and Mongo issue on update

Hello,
I am facing the following issue, when i am trying to perform update on entities.
Mongo Prisma Schema
model Post {   id               String    @id @default(auto()) @map("_id") @db.ObjectId   title            String   description      String? ... }
I am getting the following error
Invalid prisma.post.update()` invocation:
{
where: {
id: '638354a88b6732cd4e897dbf'
},
data: {
id: '638354a88b6732cd4e897dbf',
~~
title: 'New post',
description: 'string',
...
Unknown arg id in data.id for type PostUncheckedUpdateInput. Available args:
type PostUncheckedUpdateInput {
title?: String | StringFieldUpdateOperationsInput
description?: String | NullableStringFieldUpdateOperationsInput | Null
...
}
`
Anyone knows how i can solve this ? Does adminjs support removing attributes from requests ?

I have the same issue

Was able to tackle it with
  options: {
    actions: {
      edit: {
        before: async (request) => {
          if (request.method === 'post') {
            delete request.payload.id;
          }
          return request;
        },
      },
    }}....

On each request ,


fga --version should return the version of the OpenFGA server

If the CLI is configured to use an OpenFGA server, the fga --version command should also return the server version.
If the OpenFGA server does not expose that endpoint for some reason, it should display unknown
$ fga --version

fga CLI version v`0.2.6` (commit: `dc4e39648ec5b626fc5c44c4f9f77a1e15806ab7`, date: `2024-02-28T12:47:25Z`)
openfga version v`1.5.0`

In my humble opinion, fga---version command should include the OpenFGA server version alongside the CLI version. This will help users verify both the CLI and server versions they are working with, providing more comprehensive version details.
To implement this, we need a server endpoint that returns the OpenFGA server version in a JSON response. Do we have an endpoint like https://api.us1.fga.dev/version (API Url is a example taken from readme) that returns a JSON response similar to this?
{
  "version": "v1.5.0"
}

If such an endpoint exists or can be added, it would allow us to fetch and display the server version in the fga --version command output. This will enhance transparency and facilitate easier troubleshooting by providing users with quick access to version information.
So that we get something like below:
$ fga --version

fga CLI version v0.2.6 (commit: dc4e39648ec5b626fc5c44c4f9f77a1e15806ab7, date: 2024-02-28T12:47:25Z)
OpenFGA server version v1.5.0


grammar fix in readme

Signed-off-by: zane<EMAIL_ADDRESS>

Great! Thank you for your attention to the details :)


Document API Routes in POSTMAN and Generate API Documentation

Title: Document API Routes in POSTMAN and Generate API Documentation
Description:
This GitHub issue focuses on documenting all the existing API routes in POSTMAN to improve the accessibility and understanding of our APIs. It involves creating API documentation with clear descriptions, request examples, and response structures for each route. Additionally, we'll generate API documentation and add a link to the README file for easy reference.
Tasks:

API Route Documentation:

[ ] Create POSTMAN documentation for each existing API route.
[ ] Include detailed descriptions of each route, specifying the purpose and functionality.
[ ] Add request examples to demonstrate how to interact with each API, including required parameters and headers.
[ ] Document the expected response structure for each route, indicating the possible status codes and response payloads.

API Documentation Generation:

[ ] Generate API documentation in POSTMAN using the documented API routes.
[ ] Ensure that the POSTMAN documentation reflects the latest state of our APIs.

README Update:

[ ] Add a link to the generated API documentation in the README file to make it easily accessible for developers.

Acceptance Criteria:

Each existing API route is documented in POSTMAN with clear descriptions, request examples, and response structures.
The POSTMAN documentation accurately reflects the latest state of our APIs.
A link to the generated API documentation is added to the README file for easy reference.

Additional Information:

Documenting our APIs enhances their accessibility and usability.
Keeping the documentation up-to-date is essential to ensure developers have accurate information.
The README file serves as a central hub for accessing API documentation.

Hi, I would like to work on this issue, can you assign it to me?

@Shuhua-L Yes, assigned to you

Hi, what is the state of this project now? Still open for contribution?

Hi, what is the state of this project now? Still open for contribution?

Yes it is open . We need clear and concise API documentation.

Alright, can you please direct me to where the endpoints and other relevant details are defined?

Alright, can you please direct me to where the endpoints and other relevant details are defined?

Check the server folder, there are API routes ( in a specific folder ). And use link on the readme to setup POSTMAN

Ok, I'll go through everything and get back to you.

Hi Prasenjeet! I can work on this documentation. So far, I have cloned the POSTMAN collection, however, I am having issues cloning the repository to my local machine. I'm getting the following error:
<EMAIL_ADDRESS>Permission denied (publickey). fatal: Could not read from remote repository.
Please make sure you have the correct access rights and the repository exists."
I'm still trying to see if I can resolve it myself, but I'd welcome your assistance.

Hi. I think this is the basis of cloning the public repository. Can you watch some YouTube vids that will make it super clear. Thanks

I've resolved the issue and started the app, but I'm unable to create an account. The "sign up with Goggle" link isn't working either.

I've resolved the issue and started the app, but I'm unable to create an account. The "sign up with Goggle" link isn't working either.

This issue is related to server side , and need no client interaction . Setup POSTMAN and start the server that's all. We are working on the client side , but we want to finish server-side task first .

Just ran into another issue. The server isn't running on localhost:3001 and I believe it has to do with the following error I got:
[nodemon] app crashed - waiting for file changes before starting...
I'm sure it's why I'm not getting any response on POSTMAN, as contained in the README guide.

Just ran into another issue. The server isn't running on localhost:3001 and I believe it has to do with the following error I got:
[nodemon] app crashed - waiting for file changes before starting...
I'm sure it's why I'm not getting any response on POSTMAN, as contained in the README guide.

Okay i will take a look . Weather server is running or not .

Hi i will like to be part of this, can you pls assign me?

For the sake of me begin a first timer can i work with someone that can help me? cuz im looking to gain experience and this is my time contributing to an open source project pls.

For the sake of me begin a first timer can i work with someone that can help me? cuz im looking to gain experience and this is my time contributing to an open source project pls.

Do you understand the issue ??  if not plzz ask me any questions you may have . I will help you understand the issue.

For the sake of me begin a first timer can i work with someone that can help me? cuz im looking to gain experience and this is my time contributing to an open source project pls.

Do you understand the issue ?? if not plzz ask me any questions you may have . I will help you understand the issue.

i will be very glad if i can attach with someone to work on this, plzz this is my first time. plzzzzz

For the sake of me begin a first timer can i work with someone that can help me? cuz im looking to gain experience and this is my time contributing to an open source project pls.

Do you understand the issue ?? if not plzz ask me any questions you may have . I will help you understand the issue.

i don't understand the issue very clearly, i need a deep explanation

Well there are multiple api routes in server folder . Your task to is to add that to postman and also document it to the postman API documentation.

what about cloning the repo to local machine, does it still solve and issue?

what about cloning the repo to local machine, does it still solve and issue?

Have you ever worked with API before?

what about cloning the repo to local machine, does it still solve and issue?

Have you ever worked with API before?

no, that is why i am seeking for someone to work with on this, i just finish learning technical writing and API documentation

Just ran into another issue. The server isn't running on localhost:3001 and I believe it has to do with the following error I got:
[nodemon] app crashed - waiting for file changes before starting...
I'm sure it's why I'm not getting any response on POSTMAN, as contained in the README guide.

Hello @kenudeh can i pair with you to work on this project, i am a newbies and will like someone to work with in other for me to gain experience

So nobody is willing to help me?

Seems the link to the APIs are not working

So nobody is willing to help me?

Sorry about that, Make sure to have a clear and good understanding of API/POSTMAN . You can watch and read good videos about these topics. Thanks

Seems the link to the APIs are not working

We will take a look since I am currently busy with the Sculify Work.

Hi Prasenjeet-symon, were you able to confirm if the server is running or not? It didn't start on my machine when I tried. That meant I couldn't get any response to plug into POSTMAN.

@Believet2 just read the instructions contained on the Readme, it's self-explanatory. If I'm able to solve the technical issue I faced, I wouldn't mind carrying you along anyway.

Hi Prasenjeet-symon, were you able to confirm if the server is running or not? It didn't start on my machine when I tried. That meant I couldn't get any response to plug into POSTMAN.

I will check and let you know

Alright.
On Tue, Dec 26, 2023, 9:50 AM Prasenjeet Symon @.***>
wrote:

Hi Prasenjeet-symon, were you able to confirm if the server is running or
not? It didn't start on my machine when I tried. That meant I couldn't get
any response to plug into POSTMAN.
I will check and let you know
—
Reply to this email directly, view it on GitHub
https://github.com/prasenjeet-symon/intellectia/issues/212#issuecomment-1869376298,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AKF7V7AQIG7RVU53F327L6TYLKFUDAVCNFSM6AAAAAA6INHLH2VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTQNRZGM3TMMRZHA
.
You are receiving this because you were mentioned.Message ID:
@.***>

@Believet2 just read the instructions contained on the Readme, it's self-explanatory. If I'm able to solve the technical issue I faced, I wouldn't mind carrying you along anyway.

Alright @prasenjeet-symon

@prasenjeet-symon has the server been resloved?

@prasenjeet-symon has the server been resloved?

Hey @Believet2 can you plzz share the screenshot of error , so that i can take a look.

@prasenjeet-symon

@Believet2  Image not uploaded successfully. Plzz try again

@prasenjeet-symon

I have tested server is running fine. You need to learn how to setup the postman there is doc on the readme file.

It's great, but I recommend using Apidog to record and generate API documentation. I'm currently doing this, and it has been very effective.


✨ Adding cli for easier project start

The goal is to add a small CLI that will generate a project base from a template.

The following templates will be available:

minimal   a single bot.py file
small     bot.py + cogs folder (1 demo cog)
full      python package (previous + dir + setup + ...)

Usage example:
pincer "my bot" full

other commands
pincer -v                       show pincer version
pincer about                    more about the lib
pincer docs/help                open docs.pincer.dev

maybe more in the  future?

There should be a pincer run/pincer start command so we're a full on framework lol


IN / NOT IN

Hi,
Have you thought about/tried adding support for IN/NOT IN?
p.s. thank you for this gem.

What would be an example use case?

@weshays so you could do auth_level IN [5,7,14] instead of having to do auth_level = 5 OR auth_level = 7 OR auth_level = 14

I also find using IN and NOT IN to be quicker in sql than doing multiple OR statements.

I find cases like first_name NOT IN ('chris', 'peter') common too.
If you could point me to the files/line numbers I'd need to look at in order to add these missing methods, I'd be more than happy to try and add them :)

Sure that would be great.
Look at the following to get an idea:
lib/scoped_search/query_builder.rb
lib/scoped_search/query_language/tokenizer.rb

I figured it was those files :)  I was wondering what lines, like https://github.com/wvanbergen/scoped_search/blob/master/lib/scoped_search/query_builder.rb#L103 just as it would save me a bit of time. Also is there a reason you went with ~ instead of LIKE?  I'm guessing to make the parsing easier. If that's the case... how about ^ for IN and !^ for NOT IN....

I almost have it:
Mysql2::Error: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ''5')) LIMIT 500' at line 1: SELECT `user`.* FROM `user` WHERE ((`user`.`auth_level` IN '5')) LIMIT 500

Is there a part I could see if the operator is the new :in or :notin and then wrap the value in ( )?  So it would end up being:
SELECT `user`.* FROM `user` WHERE ((`user`.`auth_level` IN ('5')))

Actually I guess there's a little more to it.... when I adda comma things don't work so well i.e. auth_level ^ 5,7 I get:
Mysql2::Error: You have an error in your SQL syntax;
check the manual that corresponds to your MySQL server version for the right syntax to use near ''5') AND (`user`.`firstname` LIKE '%7%' OR `user`.`lastname` LIKE '%7%' OR `user' at line 1:
SELECT `user`.* FROM `user` WHERE (((`user`.`auth_level` IN '5') AND (`user`.`firstname` LIKE '%7%' OR `user`.`lastname` LIKE '%7%' OR `user`.`auth_level` = '7' OR `user`.`email` LIKE '%7%' OR `user`.`company_id` = '7'))) LIMIT 500

I'm trying to get it so this works auth_level ^ 5,7 but I guess the easier way would be auth_level ^ "5, 7" and then just grab the value splitting it on comma then wrap it in parens. So you could also do something like some_field ^ "some text, some other text"

I just need to find where you put the values in quotes and I think I should have have it working....

Almost have it with:
      elsif [:in, :notin].include?(operator)
        yield(:parameter, value.split(',').collect { |v| v.strip }.join("','"))
        return "#{field.to_sql(operator, &block)} #{self.sql_operator(operator, field)} (?)"

the only issue is the single quotes getting escaped.... trying to figure the best way to still protect for sql injection but allow the extra quotes I need


update ubuntu to xenial in docker image

json gem requires ruby2, seems easiest to just update ubuntu

This PR is now merged on https://github.com/vente-privee/influxdb-relay/tree/develop.


Add cask joplin with version 0.10.28

After making all changes to the cask:

[X] brew cask audit --download {{cask_file}} is error-free.
[X] brew cask style --fix {{cask_file}} reports no offenses.
[X] The commit message includes the cask’s name and version.

Additionally, if adding a new cask:

[x] Named the cask according to the token reference.
[X] brew cask install {{cask_file}} worked successfully.
[X] brew cask uninstall {{cask_file}} worked successfully.
[X] Checked there are no open pull requests for the same cask.
[X] Checked the cask was not already refused in closed issues.
[X] Checked the cask is submitted to the correct repo.

Didn't do zap/uninstall since i don't really know how to find all the places it writes to

Please don't squash commits, it makes it harder to see it changes have been made.

Sorry, this should be the final commit

I've updated the homepage and added a zap stanza.

I'll bump this to the latest version immediately after this is merged.

Finally get through the CI backlog after new upstream releases and ...
audit for joplin: warning
 - possible duplicate, cask token conflicts with Homebrew core formula: https://github.com/Homebrew/homebrew-core/blob/master/Formula/joplin.rb

Formula was merged after this first failed audit
Merging this as formula overlap rule does not apply, this is a proper app, not a cli wrapper.


Add tutorial to guide using canary deployment with pod selector

What this PR does / why we need it:
Which issue(s) this PR fixes:
Fixes #
Does this PR introduce a user-facing change?:

NONE

Nice
/lgtm

Nice
/approve


Remove asterisk from symbol in currency.

Bug report
Title
Remove asterisk from symbol in currency.
Issue Description
getting asterisk mark on symbol while editing currency.
Preconditions
1. framework Version.v0.1.8

Steps to reproduce
1. step1 - add currency
2. step2 - click on edit icon

Expected result
there should not be asterisk mark on symbol
Actual result
getting asterisk mark on symbol in currency.

Framework version : v0.1.6
issue fixed


Remove extra ')' from README.md

Thanks for the patch, but the readme is actually generated using gawk from the lib.rs
This means, the corresponding part in lib.rs needs to changed and then gawk to be run. This is described in first line of lib.rs
Perhaps not the best solution, but this way I need to maintain only one file….

Ah I see, did you consider cargo-rdme? It's a pretty neat solution for that purpose.
Btw I got the following result with awk which is different from what was on README.md before:

Should I still commit this change?

cargo-rdme hasn’t existed, when tui-logger has started. Perhaps I switch over to this new tool, because the CI check is out of the box working. And based on your feedback, that check is really necessary.

I integrated it in #59 - let me know if you like it!


Allow access to RunnerContext properties from a migration

I've run into a use case where I want to be able to version seed data along with the migrations on a per-environment basis.  Since profiles are run after all migrations, they do not fulfill this use case as implemented.
Ideally, I'd like to be able to access the migration context from a migration to either access the current profile from a given migration or to access the current migration number from a profile-based migration.  Allowing the migration context to be read from a given migration would fulfill this use case.
I'd like to hear some thoughts as to whether or not this is a good idea or if there is a workaround.

Can you explain what you mean by "version seed data".  I understand from you statement about that you want to have different seed migrations in your chain that insert data into you db, depending on the profile variable that you provide to the runner you want to include or exclude a migration.
Is that correct?

That's not quite right...
The current runner runs all the migrations and then runs the profiles.  I'd like to include the seed data within each migration since subsequent migrations may just add or alter existing seed data.  The cleanest way to do this would be to run seed data operations within a given migration, but I don't have an (obvious) way to access the profile variable from a given migration to differentiate seed data between environments.

Upon further review, access to the MigrationContext alone would not be sufficient to support this use case, I would actually need access to the RunnerContext's Profile property within a migration... the title of the issue has been updated.

I like this one maybe a ProfileMigration class could be handy and even replace the profileattribute :)

I think this is fixed now by pulling #228


unresolved dependency issue

I cloned the repo and launched SBT and executed run command. I get the following dependency issue. My environment: IntelliJ 2016, OS X El Capitan, Java 7 (tried with Java8 too).
[error] (server/*:update) sbt.ResolveException: unresolved dependency: org.apache.commons#commons-exec;1.3: org.apache.commons#commons-parent;35!commons-parent.pom(pom.original) origin location must be absolute: file:/Users/username/.m2/repository/org/apache/commons/commons-parent/35/commons-parent-35.pom

Try to delete org/apache/commons from your .m2 folder and re-run it.

Hi @ganeshchand, have you find a way to resolve your issue?


Limitless Smite

There is a mod called microscopic content expansion
https://github.com/alterasc/MicroscopicContentExpansion
which adds antipaladin class... if it's not too much of a bother, can you make it so that your limitless smite ability works with that smite too, please?

I added the guids, but didn't verify. Please test and provide feedback. You can answer in this thread.

it works perfectly. thank you


Change findById to findByPk

Hi,
This changes the findById method to findByPk, which is a change made in Sequelize v5. I realize there are other changes made from v4 to v5 that, if this repo chooses to support v5, should be implemented. However, this was an easy fix and something I personally needed, so I thought I'd create a PR anyway. This should close #71.
I cannot find much information on what versions of Sequelize this lib supports - and since this is currently version 0.10.2 I'm guessing no real plans have been made yet. If any plans are made, I'm more than happy to either add more changes to this PR or help in creating more PR's that make the switch from v4 to v5 as explained here: http://docs.sequelizejs.com/manual/upgrade-to-v5.html
Thanks for all your great work!

@valentijnnieman thanks for getting that PR in and I would also be interested in v5 support as well.  We use this for testing v4 heavily so that seems to be the currently supported version.

For those of you who are still waiting for this merge, you can use a proxy from findByPk to findById... something like this:
model.findByPk = (query) => model.findById(query)

Any update on when this will be pulled in? @arctouch-ricardobonfim do you have an example on how to use that proxy? I haven't been able to get it to work.

Any news on merging this in? Would be great...

Sorry for the silence on this!  It's been a while since I looked at this - can this be merged as-is or would it need to include anything else?

As many probably still use sequelize v4 this would be a breaking change for them. One solution would be to mark findByID deprecated as in late sequelize 4 versions.

Any update on this?

Any idea when this will get merged in?

I'm closing this as it's been a long while since I did this work and I don't have time to pick this up again in the near future.


I came across this mistake

AttributeError: 'TxtDataset' object has no attribute 'transforms'
I saw it. It has this property

Hi,
Could you please tell me which config file you used? Have you set the transform in config file?

@ChaseMonsterAway Thank you for your reply, I have solved this problem, and there is another question I want to ask, is this project the algorithm implementation of SATRN? Or is it the algorithm implementation of SRN? Why do I see in "https://paperswithcode.com/sota/scene-text-recognition-on-icdar2013" that these two algorithms point to this project.

It's SATRN not SRN.

@ChaseMonsterAway  ok, thanks

@wanglibing727
You're welcome.


Unable to query topic list information multiple times when using Rocketmq storage

Search before asking

[X] I had searched in the issues and found no similar issues.

Environment
Linux
EventMesh version
Other
What happened
When clicking to query the topic list on the DashBoard in version 1.8.0, only the first successful query can be made, and errors are consistently reported for every other query
How to reproduce
Message component selection RocketMQ

Click to query the topic list information and it will display normally

Click again to query the topic list and report an error

Every time I click, I report an error

Debug logs

Are you willing to submit PR?

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

I did some fixing. You can replace the source file with this patch and try again. Wait for you feedback.
patch.zip

This code is more concise. Do I need to update and restart the code and submit it to the master branch?
@.***
From: pandaapo
Date: 2023-05-10 19:09
To: apache/eventmesh
CC: 郭中奇; Author
Subject: Re: [apache/eventmesh] Unable to query topic list information multiple times when using Rocketmq storage (Issue #3894)
I did some fixing. You can replace the source file with this patch and try again. Wait for you feedback.
patch.zip
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you authored the thread.Message ID: @.***>

A bit awkward, I have posted a new issue #3897 and corresponding pr #3898 to improve the codes including the code you submitted. :joy:


⚠ Bofrost.fr has degraded performance

In fb3a39e, Bofrost.fr (https://www.bofrost.fr) experienced degraded performance:

HTTP code: 200
Response time: 937 ms

Resolved: Bofrost.fr performance has improved in e2d0c88.


Fix broken images

I couldn't reproduce this issue in this repo locally but could in the frontend repo. Removing the mdx-js/loader condition portion of the thread-loader config fixed the issue.
@qburst-aparna will test this in jira to verify this doesn't re-introduce memory problems, we should wait until that has happened before merging/releasing.

I have tested the change in Jira and it did not break the build process.


os.fork appears to not be supported

I currently use loggly-python-handler to log an application that has asynchronous jobs triggered by web requests.  To do this, I use os.fork to fork off the actual job, and use the original request to respond back to the web request as ok.  No matter what I do, I only receive logs in loggly for the original process, and nothing for the forked process.  This is true when trying to use my global logger, or even instantiating a new object via logging.getLogger() after the fork.  Is there something under the hood that stops me from using the original logger no matter where the object is referenced?

I believe this is already coded to use the futures package. I'm not sure how that interacts with fork, but I believe it offers asynchronous requests? Perhaps that is creating some kind of conflict?


Recursively limit proposal size by returning excess blocks back to pool

lgtm, although I'm not sure we should limit the number of signatures 🤔 anyone can add few more signatures and the snapshot would be incorrect then 🤔

In 100 kB we should fit ~300 signatures. Maybe we should confront the config with the loaded whitelist in the following way:
if (whitelistedNodesCount * 0,33kB >= 100 kB) { throw new Exception("Signatures may potentially exceed the size limit. Increase the ratio between signatures size and data size in proposal")


Remove link to /r/ledger: ledger subreddit is defunct

also it was most recently used for the ledger hardward wallet, not ledger CLI.

Sorry, I saw this far too late. Thanks for your feedback!


dependencies

Readme.md is missing info about dependencies, for example, jQuery.

Hey @viliusle :) Thanks for this.
The dependencies are all listed in bower.json, and the README explains how to install everything properly locally.


[v4.5] Popup - Zoom to with z value error

Hi Guys,
In a Map View if using the default Zoom to action in a popup and the point contains a z value an error is thrown internally in the api. Scene view is fine.
Here's a plunk with a working (blue) and non working (red) point:
https://plnkr.co/edit/2BseGI4ObTUSL5mfxcvb?p=preview
Error is:
Uncaught (in promise) TypeError: Cannot read property 'isWebMercator' of undefined
    at Object.equals (init.js:593)
    at Object.equals (init.js:273)
    at c (init.js:352)
    at a.isActive.r [as callback] (init.js:352)
    at h._dispatch (init.js:357)
    at <anonymous>

Another question - do you prefer these types of things raised in here in github or in geonet?
Thanks.

Hi @nickcam
That sounds like an API bug.

Another question - do you prefer these types of things raised in here in github or in geonet?

The preferred way to report bugs with the ArcGIS API for JavaScript is using Esri Support.
The issue you mention above (about zoom-to not working for points with z values) isn't specific to anything in this repo.
However, if you find issues related to this repo (bower, sass, typescript, jshint, oauth), then you can also raise them as issues in this repo.  See also https://github.com/Esri/jsapi-resources/blob/master/CONTRIBUTING.md for more information.
Thanks for asking (and reporting) :)

Righto, no worries. I've been raising api bugs in here, will email the support address if I find any more.

@nickcam @bsvensson
I have logged this issue through Esri Support,
BUG-000108875 : Error in a Map View if using the default zoom to action in a popup when the point has Z value
Thanks,
Erwin

nice work @esoekianto! personally i'd love to see more folks in support chipping in here to triage and document bugs that have been reported using github.
cc/ @afili

Hi all, since there's a few ESRI members that have commented on this issue - would just like to make a couple of cheeky suggestions so hopefully you all receive notifications :).
From an api users perspective it would be pretty cool to have an up to date list of all known issues/bugs in each version - also with workarounds if they exist. Obviously having fore-knowledge of bugs before developing and using a particular class/feature is really handy, and if you hit a bug during development referencing this list could save a bunch of time as well. Apologies if this already exists, if it does - where is it?
Also sending an email to support is fine, but logging issues in github (or somewhere else that is viewable by all) is so much better. Once I've sent an email it's a bit of a black box, if there's no response I have no idea if it's been logged internally or will ever be actioned....obviously there's no visibility of other api bugs as well. Perhaps a meta repository for the api itself where issues can be raised would be good, no source code required, just everything else that helps the public interact with it.

our authoritative database of bugs for all products are internal, but you can filter the global search on http://support.esri.com for bugs and use keyword and/or bug ids
example:
http://support.esri.com/en/bugs/nimbus/QlVHLTAwMDEwNDYwMQ==
@bsvensson is correct that the official channel is technically best, but looking back on your own history of issues logged i think other users are benefitting from the fact that the information is more accessible.
that said, those that need help or haven't pinned down a distilled repro case are 100% better off using an avenue other than Github/Stack Overflow.

Hi @jgravois, of course you want all bugs logged internally, so going through the support avenue is ok. Do you need to have official support and/or be a designated contact within an organisation to actually raise things though?
Personally I don't find the ticket search on the support site particularly useful if you're trying to find if a specific bug has already been logged. You need to know either the ticket number or appropriate keywords, which could be any number of things to describe the same scenario. Just a single page (hosted anywhere) listing known issues by api version would be great! You can sort of get this from the api release notes, but only retrospectively.
I would of thought Stack Overflow/Geonet/Github are the perfect places for a first point of call if you need help or can't pin something down....perhaps we're thinking of different scenarios though? Thanks for your timely responses as well.

Do you need to have official support and/or be a designated contact within an organization to actually raise things though?

It is official Esri tech support policy to receive and process canned bug reports and disclosed security vulnerabilities from folks regardless of the submitter's designation. that said, folks outside the US are still required to log issues via the relevant distributor.

Personally I don't find the ticket search on the support site particularly useful ... Just a single page (hosted anywhere) listing known issues by api version would be great!

i agree 😺

I would of thought Stack Overflow/Geonet/Github are the perfect places for a first point of call if you need help or can't pin something down

this was my mistake in wording.

SO/GeoNet are great places to ask for help
just my opinion, but i like when customers use Github to log bugs
Tech Support is a great place to ask for help and the best place to log bugs

It is official Esri tech support policy to receive and process canned bug reports and disclosed security vulnerabilities from folks regardless of the submitter's designation. that said, folks outside the US are still required to log issues via the relevant distributor.

FYI @nickcam @jgravois This issue was submitted through our distributor, Esri Canada.

Yeah I raised it using the Australian support email address...never got a response though. Perhaps they figured someone would just post something in here anyway as I included a link to this issue.
Anyway, thanks for your help guys. To summarise:

Use support to raise api bugs, and
It would it be great to have a known issues page somewhere


Usability improvement: Show Tags Preview in Feature Picker Dialog

One of the big bits of feedback we got from our prelim testing was that folks wanted to see the tag information on the shapes BEFORE they add them to the map. This PR does exactly that!
Screenshot:

The 'Remove' button has been made smaller and carries less visual weight. The tags are displayed immediately below the 'Add' button, to better signify that they are associated with the 'Add' operation.

Looks great! The thing I mentioned is so unimportant that I don't want to hold up merging over it.

Nonsense! Balderdash! I shall change it.

Oops, lol, you merged it. But hey, it's a feature branch. :) Go ahead and make that edit yourself!  Thanks for taking a look. :)


Manage flats on /houses

As a cooperation administrator I want to have the ability to manage flats for the cooperation so I can edit, create or delete them. Also, I would like to assign or unassign a user for the flat.
Description
After implementing https://github.com/ita-social-projects/Home/issues/97 we have the ability to manage houses for cooperation. Also, I would like to manage flats so I can create a flat and assign a user for this flat. Please provide API for it.
Acceptance Criteria
I have enough API for managing flats for cooperation.
Epic link
Epic #3
ZenHub Epic
Tasks

[ ] Add changes to OpenAPI spec.
[ ] Add API tests.
[ ] Add implementation ( service layer, domain layer, DB migrations).
[ ] Check all tests.

https://docs.google.com/document/d/1Cy9WT6Pwpa4bCdhBRsZtydUhN9hXa0BB_xRG21UUy0M/edit#


Fix embedding outputs in Readme

https://github.com/hezarai/hezar#word-embeddings
item: هزار
score: 0.65 (round)

@pooya-mohammadi
I pushed a simple code for this but forogt to round it. can you check it out and fix it?

Yeah I will check it

@arxyzan jan, can we close this issue?

@pooya-mohammadi Sure man ;)


flush_interval for ReqSocket and RepSocket #14

Tasks

[x] Add flush_interval field in ReqOptions, default None
[x] Add flush_interval field in RepOptions, default None
[x] Respect flush_interval in rep::PeerState
[x] Respect flush_interval in req::Driver

Hey, thanks for the PR, looking good :)

Updated the scope a little bit: https://github.com/chainbound/msg-rs/issues/14#issuecomment-1798023774


Feature: Dominant color in picture

Add a feature to calculate the dominant color of a picture

#29


feat(core): add hook before initialize

This adds a lifecycle hook before the app is initialized. I'm not sure if you want this implemented,
I want to change/update locale data through a plugin, but I noticed the changes are not being reflected in the pages array in other plugins. I checked out the source and discovered this is because the earliest hook, onInitialized happens after pages are resolved. So I added another hook right before it.
I've updated the unit tests and tested it with my use case and it works like a charm.

I'm not sure if it is necessary because we can do things in pluing before initialization via "PluginFunction"
const fooPlugin = (app) => {
  // here we can do things just like beforeInitialize

  return {
    name: 'vuepress-plugin-foo',
    onInitialized(app) {  /* ... */ }
  }
}

@meteorlxy Wow, I blame tunnel vision. If having this as a hook doesn't have any other advantages this can be closed. :) Thanks


[sort-imports] enforce sort-imports rule in data-tables

This PR reinforces the changes made in #19055 by changing the subdirectory's linting rule to "sort-imports": "error".
This affects the directory under sdk/tables/data-tables.

@joheredi Are the build failures in this PR related to the changes here?

The failures are unrelated. The same started happening since 01/20
https://dev.azure.com/azure-sdk/internal/_build/results?buildId=1315633&view=results (Microsoft Internal)
Overriding the check-enforcer...

/check-enforcer override


Show computed health in inventory dialog

And damage, speed, etc.

(Here a hero might have an attackDamageFactor of 1.8, so instead of doing 100 damage per hit, she'll do 180 damage per hit. Similarly for maxHealthFactor. We might want to show this in the inventory so that players know how much they'll actually get with the currently selected hero.)

Hi! I would like to work on this bug, bug I don't know which file(s) I should be looking for.

So the hero stats are currently used in PlayHeroesModal.coffee here, which gives them to the template, play-heroes-modal.jade. Then they are styled here in play-heroes-modal.sass. The stats get calculated from ThangType.coffee. So that works.
Meanwhile, in ItemDetailsView.coffee, item-details-view.jade, and item-details-view.sass, we don't do anything with the hero stat multipliers (attackDamageFactor and maxHealthFactor) when we display the item stats in ThangType.coffee.
So we probably need to be smarter about the item details display. Here's one suggestion. As Vlevo points out, it gets a little complicated depending on whether we know we have a hero selected or not, but we can probably figure out some satisfactory logic on when and how to show the scaled stats depending on whether the player is strongly associated with a hero at the time, like maybe we do it when showing an ItemDetailsView from InventoryModal.coffee (the inventory screen) but not from PlayItemsModal.coffee (the item shop).

My comments from the related thread:

the percentage could be written next to the colored bars (on the hero selection screen)

Furthermore, the percentages could be marked with a star, so people would instinctly hover above it and see the text, e.g. that "hero gains ..% of listed armor"

On the inventory page, the base or scaled health/damage could be shown in parentheses, e.g.:

HEALTH +140 (+100) or

HEALTH +140 (base: +100) or

HEALTH +100 (current hero: +140)

It could be added to the level loading screen hints, e.g.: "Note: armor and damage are scaled based on your hero's stats"


Add optional integration for Weather Underground

http://wiki.wunderground.com/index.php/PWS_-_Upload_Protocol

Done.  Need to improve the setup process and documentation.


Signature verification failed

The problem is not solved, yet.
Here is an fresh installation of torbrowser-launcher for
https://github.com/micahflee/torbrowser-launcher

And the problem with not valid key remains.

But, the manual installation (tar.gz) works
https://www.howtogeek.com/423866/how-to-install-and-use-the-tor-browser-on-linux/

I'm not getting "signature verification failed".
I'm getting stuck on "verifying signature" forever.

This is fixed in the newest version.
I just discontinued publishing torbrowser-launcher from the PPA, and instead you can get the newest version from Flatpak.
Uninstall it with:
sudo apt remove torbrowser-launcher

Then reinstall it from the Flatpak package here: https://flathub.org/apps/details/com.github.micahflee.torbrowser-launcher