proposal: builtin: extend make() to be a general-purpose non-nil zero value creator

Problem
Currently in Go, make() serves as a general instantiator for the more complex of the builtin data structures. If you want to allocate a pointer to a zero-value, on the other hand, new() is the function to use. However, while both of these functions take a type as the first argument, they do so quite differently. new(T) results in a non-nil *T, but make(T) results in a non-nil T directly. In other words, the type passed to make() is the type that it returns, while new() returns a pointer to the type that it is passed instead.
In most situations, this difference is not a particular issue, but with the introduction of generics it can cause some minor problems. For example, I recently wanted to be able to instantiate zero-values of a type that I was passed. The function, slimmed down into a contrived variant, is having trouble trying to do the following:
type Constraint interface {
  M()
}

func Example[T Constraint]() T {
  return ???
}

func main() {
  t1 := Example[ImplOne]()
  t2 := Example[*ImplTwo]()
}

In the case of the first call to Example(), I could easily just create an instance of T by doing var t T; return t, but that doesn't work for the second as it will return nil. Similarly, I can't actually use new(T) as doing so creates a pointer to the type that it is passed, so it will try to return *ImplOne for the first call and **ImplTwo for the second, which is worthless. Worse, while the first case can be manually dereferenced after the call to new(T), the second will result in returning a nil pointer, putting the whole thing back at square one.
I wound up solving the issue by writing the following function:
func deepZero[T any]() (v T) {
  t := reflect.TypeOf(v)
  if t.Kind() != reflect.Pointer {
    return v
  }
  return reflect.New(t.Elem()).Interface().(T)
}

I'm not thrilled with the need to use reflect for this solution, but it works.
Proposal
I propose to extend the make() builtin to return a non-nil zero value for non-interface types, excluding unsafe.Pointer and function types. In other words, for non-nillable types, it will simply return their regular zero value. For nillable types, on the other hand, it will return an empty, non-nil variant of whatever they represent. It already does this for slices, maps, and channels, so this proposal essentially just extends that behavior to most other concrete type.
To allow for the usage of this new behavior with generics, usage of make(T) where T is an unsafe.Pointer, function type, or interface would return nil instead of being a compile-time error. Alternatively, this could be made to panic. This would mean that some code would be unsafe despite compiling, but it would also leave the door open for the behavior to be changed later on without breaking the compatibility guarantee.
make([]T, 3) // No change.
make(map[K]V) // No change.
make(int) // Returns 0.
make(string) // Returns an empty string.
make(*int) // Returns the same thing as new(int).
make(any) // Since there is no obvious non-nil zero value for interfaces, it returns nil.
make(func()) // Also returns nil.

This would let the above function be rewritten as
func Example[T Contraint]() T {
  return make(T)
}

Concerns
One issue that I have with this is that it adds yet another way to instantiate pointers. For structs, there's already an overlap between new(T) and &T{}. I think that the benefit is worth it, though.
I'm also not thrilled with either solution to the issue of unsafe.Pointer, function types, and interfaces. I think that returning nil is probably fine, but that would mean that it would be stuck that way. I don't like the idea of it panicking, but plenty of other simple operations do that, too, such slice-to-array conversions. Those are easier to check for safety in advance at runtime, however.

Still thinking about the proposal but FWIW, deepZero will panic if it receives a nil interface: https://go.dev/play/p/aH7nKUIM-W_l
Do this instead: https://go.dev/play/p/hcxatH0Nkfy

Can you expand a bit on the case where this arises?  If I understand correctly, for a pointer type *T you want new(T), but otherwise you want the zero value of T.  When does this arise?
Separately, what should make(T) return if T is a slice type?  Currently that is invalid: make with a slice type requires a length.

@carlmjohnson
Ah, that's the same issue that I worried about in #50741. Whoops. Thanks.
@ianlancetaylor
The specific case has something that is dynamically managing several objects for the user. A given instance of the type always deals with the same type of object, so it can be generecized, improving the ergonomics of the functions that the user provides to which the objects are passed. In other words, it's something like
type Object interface { ... }

type Manager[T Object] struct {
  Create func() T
  Modify func(T)
}

func (m *Manager[T]) register(obj T) { ... }
func (m *Manager[T]) fromThirdParty(tp thirdparty.Type) T { ... }

func (m *Manager[T]) Manage() {
  thirdparty.DoSomething(
    func() thirdparty.Type {
      t := m.Create()
      m.register(t)
      return t.ThirdParty()
    },
    func(tp thirdparty.Type) {
      m.Modify(m.fromThirdParty(tp))
    },
  )
}

However, Manager.Create is just func() Object { return &impl{} } or func() Object { return impl{} } essentially 100% of the time. I could remove the need for the user to provide it completely if I could genericly instantiate a non-nil zero value:
c := func() T { return make(T) }
if m.Create != nil {
  c = m.Create
}
t := c()
return t.ThirdParty()

As for make([]T), to be honest I completely missed it. I think that following the idea of returning a non-nil zero value, though, simply making the second argument optional for slices too and then making make([]T) the equivalent of []T{} makes sense.

It seems hard to justify the fact that make would return the zero value of most types but not pointer, map, channel, or slices types.  And why should make([10]*int) return an array of 10 nil pointers rather than allocating those pointers?
Therefore, this is a likely decline.  Leaving open for four weeks for final comments.
-- for @golang/proposal-review

No further comments.


using different samples for gan generator and discriminator

Thank you for your great work!
I noticed that when training, the generator and discriminator are using different samples from the same dataloader:
generator:
https://github.com/lucidrains/magvit2-pytorch/blob/main/magvit2_pytorch/trainer.py#L289
discriminator:
https://github.com/lucidrains/magvit2-pytorch/blob/main/magvit2_pytorch/trainer.py#L327
is this by design?

@teou yea, so actually it is actually intentional, as when i used to build GANs, i've tried it this way but didn't see better results
do you know if in the paper they did it the way you describe? and are there papers that show this makes a difference?

another thing you will notice is that i try to use grad penalty in most GAN systems, even though current crop of researchers have mostly forgotten about it. i've tried a bunch of other ways (spec norm or whatever) and never saw good results

no , i haven't done any experiments yet.
from other implementations , seems generator and discriminator is consuming the same sample from dataloader, that's how i got confused. ^_^
for example here:
https://github.com/dome272/VQGAN-pytorch/blob/main/training_vqgan.py#L55

@teou yup i know Dominic, very smart kid! yea, i can take a peek at Robin's original implementation and if he did it that way. if he did, we can do that as well

@teou yup i know Dominic, very smart kid! i can take a peek at Robin's original implementation tomorrow and see if he did it the way you described. if he did, then let's just do that. however i don't think it makes that big of a difference either way


[azmedien] Adopted URL regex AZMedienShowIE

Before submitting a pull request make sure you have:

[x] At least skimmed through adding new extractor tutorial and youtube-dl coding conventions sections
[x] Searched the bugtracker for similar pull requests

In order to be accepted and merged into youtube-dl each piece of code must be in public domain or released under Unlicense. Check one of the following options:

[x] I am the original author of this code and I am willing to release it under Unlicense
[ ] I am not the original author of this code but it is in public domain or released under Unlicense (provide reliable evidence)

What is the purpose of your pull request?

[ ] Bug fix
[x] Improvement
[ ] New extractor
[ ] New feature

Description of your pull request and other information
I adopted the _VALID_URL regular expression in AZMedienShowIE in a similar way like it is done in AZMedienIE. This leads to better readability of the code.
@dstftw: I included this "(?x)" in the first line of the regex like you have done yesterday, but I don't know what it does... Can you explain this to me?

https://docs.python.org/3/library/re.html#re.X

@dstftw Thanks!


Store locator does not work unless on a HTTPS site / without location permission

I would expect the library to still work if the user hasn't given location permission, but to not provide the functionality that depends on it. At present, the map does not load unless permission is granted.
I can replicate this on local host by enabling and disabling location permissions.
This becomes even more of a problem when it is not hosted on HTTPS as modern browsers no longer allow location access on non HTTPS sites. In chrome I get the following warning when hosted on HTTP;

store-locator.min.js:1 getCurrentPosition() and watchPosition() no longer work on insecure origins. To use this feature, you should consider switching your application to a secure origin, such as HTTPS. See https://goo.gl/rStTGz for more details.

Which is really more of an error than a warning as it prevents the map for loading.
Thanks.

This project is in an unmaintained state. I suggest you look at our Google Maps APIs Solutions for currently maintained store locator solutions.


[BUG] populate forest.gin

Describe the bug
I try to run the helloworld example and replace the desert.gin with forest.gin. It works to generate directory coarse/ and I change the camera view of scene.blend in coarse/ and run populate task, report the bug. Additionally: I did this in desert scene and it worked.
Steps to Reproduce

What version of the code were you using? Tell us the output of git log -n 1
'''
v1.0.2
...
'''

What command did you run?

$BLENDER -noaudio --background --python generate.py -- --seed 0 --task populate fine_terrain -g forest.gin simple.gin --input_folder outputs/forest/coarse --output_folder outputs/forest/fine

What are your output logs?

[11:51:41.729] [times] [INFO] | [lichen] finished in 0:00:36.091010
[11:51:41.730] [times] [INFO] | [populate_carnivore]
[11:51:41.732] [times] [INFO] | [populate_carnivore] finished in 0:00:00.001762
[11:51:41.733] [times] [INFO] | [populate_herbivore]
[11:51:41.734] [times] [INFO] | [populate_herbivore] finished in 0:00:00.001642
[11:51:41.735] [times] [INFO] | [populate_bird]
[11:51:41.736] [times] [INFO] | [populate_bird] finished in 0:00:00.001639
[11:51:41.737] [times] [INFO] | [populate_fish]
[11:51:41.738] [times] [INFO] | [populate_fish] finished in 0:00:00.001645
[11:51:41.739] [times] [INFO] | [populate_snake]
[11:51:41.740] [times] [INFO] | [populate_snake] finished in 0:00:00.001640
[11:51:41.741] [times] [INFO] | [populate_beetles]
[11:51:41.743] [times] [INFO] | [populate_beetles] finished in 0:00:00.001635
[11:51:41.743] [times] [INFO] | [populate_flyingbird]
[11:51:41.745] [times] [INFO] | [populate_flyingbird] finished in 0:00:00.001642
[11:51:41.745] [times] [INFO] | [populate_dragonfly]
[11:51:41.747] [times] [INFO] | [populate_dragonfly] finished in 0:00:00.001717
[11:51:41.747] [times] [INFO] | [populate_crab]
[11:51:41.749] [times] [INFO] | [populate_crab] finished in 0:00:00.001634
[11:51:41.749] [times] [INFO] | [populate_crustacean]
[11:51:41.751] [times] [INFO] | [populate_crustacean] finished in 0:00:00.001662
[11:51:41.754] [terrain] [INFO] | attribute='ground_collection' will use material surfaces.templates.mud
[11:51:41.754] [terrain] [INFO] | attribute='mountain_collection' will use material surfaces.templates.soil
[11:51:41.755] [terrain] [INFO] | attribute='eroded' will use material surfaces.templates.cracked_ground
[11:51:41.755] [terrain] [INFO] | attribute='atmosphere' will use material surfaces.templates.atmosphere_light_haze
In view visible mesh angle resolution 90d/1080, about  0.24 marching cube per pixel
In view invisible mesh angle resolution 90d/270, about  0.06 marching cube per pixel
Out view mesh angle resolution 90d/135, about  0.03 marching cube per pixel
In view invisible mesh marching cube resolution 66x118x1068
[11:51:41.836] [times] [INFO] | [meshing OpaqueTerrain]
[11:51:41.836] [times] [INFO] | [OpaqueSphericalMesher: frontview_mesher]
[11:52:42.851] [times] [INFO] | [OpaqueSphericalMesher: frontview_mesher] finished in 0:01:01.014258
[11:52:42.851] [times] [INFO] | [OpaqueSphericalMesher: background_mesher]
[11:53:41.367] [times] [INFO] | [OpaqueSphericalMesher: background_mesher] finished in 0:00:58.516642
[11:53:41.526] [times] [INFO] | [meshing OpaqueTerrain] finished in 0:01:59.689243
In view mesh angle resolution 90d/15, about  0.00 marching cube per pixel
Out view mesh angle resolution 90d/15, about  0.00 marching cube per pixel
[11:53:41.535] [times] [INFO] | [meshing atmosphere]
[11:53:41.535] [times] [INFO] | [TransparentSphericalMesher]
[11:53:41.619] [times] [INFO] | [TransparentSphericalMesher] finished in 0:00:00.084623
[11:53:41.620] [times] [INFO] | [meshing atmosphere] finished in 0:00:00.084787
[11:53:56.474] [times] [INFO] | [MAIN TOTAL] failed with <class 'KeyError'>
Error: Python: Traceback (most recent call last):
  File "/home/mengyc/data/infinigen/worldgen/generate.py", line 410, in <module>
    main()
  File "/home/mengyc/data/infinigen/worldgen/generate.py", line 400, in main
    infinigen.main(
  File "/media/data/mengyc/infinigen/worldgen/core.py", line 433, in main
    execute_tasks(
  File "/media/data/mengyc/infinigen/blender/3.3/python/lib/python3.10/site-packages/gin/config.py", line 1605, in gin_wrapper
    utils.augment_exception_message_and_reraise(e, err_str)
  File "/media/data/mengyc/infinigen/blender/3.3/python/lib/python3.10/site-packages/gin/utils.py", line 41, in augment_exception_message_and_reraise
    raise proxy.with_traceback(exception.__traceback__) from None
  File "/media/data/mengyc/infinigen/blender/3.3/python/lib/python3.10/site-packages/gin/config.py", line 1582, in gin_wrapper
    return fn(*new_args, **new_kwargs)
  File "/media/data/mengyc/infinigen/worldgen/core.py", line 294, in execute_tasks
    terrain.fine_terrain(output_folder)
  File "/media/data/mengyc/infinigen/worldgen/terrain/core.py", line 261, in fine_terrain
    fine_meshes, _ = self.export(spherical=True, cameras=[bpy.context.scene.camera])
  File "/media/data/mengyc/infinigen/blender/3.3/python/lib/python3.10/site-packages/gin/config.py", line 1605, in gin_wrapper
    utils.augment_exception_message_and_reraise(e, err_str)
  File "/media/data/mengyc/infinigen/blender/3.3/python/lib/python3.10/site-packages/gin/utils.py", line 41, in augment_exception_message_and_reraise
    raise proxy.with_traceback(exception.__traceback__) from None
  File "/media/data/mengyc/infinigen/blender/3.3/python/lib/python3.10/site-packages/gin/config.py", line 1582, in gin_wrapper
    return fn(*new_args, **new_kwargs)
  File "/media/data/mengyc/infinigen/worldgen/terrain/core.py", line 162, in export
    surface_kernel = SurfaceKernel(surface.name, attribute, bpy.data.objects[mesh_name_unapplied].modifiers[surface.mod_name], self.device)
  File "/media/data/mengyc/infinigen/worldgen/terrain/surface_kernel/core.py", line 22, in __init__
    _, inputs, outputs = Kernelizer()(modifier)
  File "/media/data/mengyc/infinigen/worldgen/terrain/surface_kernel/kernelizer.py", line 331, in __call__
    code, imp_inputs, outputs = self.execute_node_tree(node_tree, collective_style=True)
  File "/media/data/mengyc/infinigen/worldgen/terrain/surface_kernel/kernelizer.py", line 323, in execute_node_tree
    code += self.code(nodes, links, inputs, imp_inputs, outputs, node_tree.name)
  File "/media/data/mengyc/infinigen/worldgen/terrain/surface_kernel/kernelizer.py", line 190, in code
    for p in NODE_ATTRS_AVAILABLE[head_node.bl_idname]]
KeyError: 'NodeUndefined'
  In call to configurable 'export' (<function Terrain.export at 0x7f1029aefa30>)
  In call to configurable 'execute_tasks' (<function execute_tasks at 0x7f10295e8700>)

Blender quit

** (If this is your first time running Infinigen) What are the full output logs of install.sh ?**
Add your install.sh logs here

Platform

OS & OS Version:  Ubuntu 20.04.2 LTS
GPU (?) : 3090
GPU Driver Version (?) :
RAM (GB): 64

Additional context
Add any other context about the problem here.

Hello, this is a very unusual bug, usually NodeUndefined only comes up when switching between blender versions.
Could you post the full output logs? These ones are missing the beginning, and I would be interested to see what seed the pipeline chose so I can replicate.

Closed due to inactivity - please reopen if you are still encountering issues.


Registrator pull request not merged in General

Hello,
A few days ago I submitted a package via registrator, but I realised there were a couple of bugs.
I left a comment to stop the registration, and restarted it after fixing the bugs, using the same version tag.
For some reason, the pull request has not been approved four days later.
Would there be something to do manually in this case, or  is it  just a matter of waiting more?
Is it a bug or a feature of registrator?

https://github.com/JuliaRegistries/General#automerge-is-blocked-by-one-of-my-comments-how-do-i-unblock-it

Thanks a lot Dilum, didn't notice that!


Add support for --idl-version=X where X is default 3, can be set to 4…

…. When set to 4 the IDL4 keywords are added
* lib/ridl/runner.rb:
* lib/ridl/scanner.rb:

New docu, see https://github.com/jwillemsen/taox11/tree/jwi-idl4ridlcdoc


In e2e test cluster in GCE Route for master is not being deleted during --down

firewall is also not deleted

I believe that the problem w/ the route is deleted by #5448
Also, what firewall?  There was no new firewall added...

Perhaps this is related to my woes in #5451

I think this is fixed. Please reopen if there's still an issue.


[Simple question] Where do I download the executable?

Hello. 👋
I have some questions about this repository.
Does the "mq-rfhutil" have something with the executable "rfhutilc.exe"?
If "yes", would be possible to make available an executable by a new release?
If "no", can you inform me where do I download? The official sites that I found have broken link. :(
Thanks in advance.

look in the bin/Release directory of this repo

Thanks a lot. :)
With the "ih03.pdf" I would be capable to learn more the software and its executables.
About the names "rfhutilc" and "ih03" is an acronym of something?

Thanks a lot. :)
With the "ih03.pdf" I would be capable to learn more the software and its executables.
About the names "rfhutilc" and "ih03", is it an acronym of something?

Enjoy the description and history here in documentation center .


potential-bugs web page is broken

Open https://arturbosch.github.io/detekt/potential-bugs.html and scroll down. Layout is broken starting from "LateinitUsage".

Good catch! Thanks!


Add support for util.dynamodb.toStringSetJson

Sorry, my autoformatter took over

Yeah, no problem! @alan-cooney Updated!

Thanks for adding this in as well!


Regex contention is way too high

Documentation says:

If you share the same Regex across multiple threads, each thread still gets its own mutable space, but accessing that space is slower.

That is put mildly. I was investigating why the program was very slow, and noticed, it spends 25% time in kernel in queued_spin_lock_slowpath. It turns out it was regex synchronization. In profiler it looks like this:

These syscalls are mutexes by Regex.
It is is not like all the threads are doing regexes, they actually do other things too, and they still managed to create this contention.
It was on the server with 80 hardware thread. In this case contention is much much larger issue than for example on laptop with 8 threads.
What I can suggest:

add a big warning that contention is big issue when the concurrent access is high, especially for simple regexes
use different synchronization primitives (some kind of lock-free array for example, so each thread would be scanning for a pooled entry from different position)
I would say, implement an option to not use caches at all. Other regexes seems to do fine without mutable state. This should also decrease memory usage. But I don't understand caching in regexes well.

Anyway, this is just

so feel free to close the issue. I'm rewriting some parts of code without regex crate to unblock my work, and thinking about this issue in background.

Duplicate of #934.

add a big warning that contention is big issue when the concurrent access is high, especially for simple regexes

It already has a couple of paragraphs dedicated to it in the performance section of the docs: https://docs.rs/regex/latest/regex/#sharing-a-regex-across-threads-can-result-in-contention
It even provides a suggestion for how to work around it. It's unclear whether that work-around is suitable for your case.

use different synchronization primitives (some kind of lock-free array for example, so each thread would be scanning for a pooled entry from different position)

There are ideas discussed in #934. Needless to say, the problem is not so simple that a single sentence can appropriately describe a solution for it.

I would say, implement an option to not use caches at all. Other regexes seems to do fine without mutable state. This should also decrease memory usage. But I don't understand caching in regexes well.

What "other regexes" work without mutable state? PCRE2 doesn't. RE2 doesn't. Most general purpose regex engines require some kind of mutable space to write to during searches.
It is possible to implement a subset of the regex crate functionality (i.e., no capture groups) using fully compiled DFAs (and you could even do this by using the regex-automata crate directly), but it would be wildly inappropriate to do. It would technically eliminate contention, but memory usage and regex compile times would increase by multiple orders of magnitude. If went that route, I would get immediate and justified bug reports talking about the latest regex release led to major regressions and that they have to pin to an older version until it's fixed.
You aren't yelling at clouds. It's a real issue. It's just tricky to solve and hasn't bubbled to the top of my priority list. Also because the crate docs explicitly mention a work-around. You can also drop down to using the meta regex engine directly, which then permits you to use APIs that require explicitly passing the mutable scratch space. That way, you can decide how synchronization happens.

What "other regexes" work without mutable state?

I mean without mutable state shared between invocations. I used regexes in Java previously, and AFAIU they don't do that. And they seem to work fine, at least for common use cases.
java.util.regex.Pattern
I'm not 100% it does not share mutable state between invocations, but we used regexes extensively and I think we would have noticed if regexes permanently allocated too much memory.

Java uses backtracking and is subject to ReDoS: https://github.com/BurntSushi/rebar#cloud-flare-redos
The entire point of this crate is that it doesn't use backtracking and is generally not susceptible to ReDoS: https://docs.rs/regex/latest/regex/#untrusted-input
And if Java isn't using any mutable space during a search, then since it's a backtracker, that likely implies it's using recursion. Which now means you're susceptible to stack overflow. Just because you haven't hit it doesn't mean it isn't an issue. Lots of folks haven't hit the contention issue you hit here for example.
Have you tried any of the work-arounds I've suggested?

Which now means you're susceptible to stack overflow.

Previously in Java, and now in Rust I work on internal products, so I didn't care at all. But I understand how this could be an issue for other uses.

Lots of folks haven't hit the contention issue you hit here for example.

It depends on what machine you are on. I had another similar issue (with our internal library) which worked fine on laptop, but on a large server the program spent 7% of time spinning the locks.
The issue with contention is that it usually either insignificant or very significant, no middle state. Because when there's no contention, lock/unlock is 10ns. But if there is contention, lock/unlock is roughly 1us, 100 times slower. So when the number of thread increases, at some point overhead of contention increases dramatically. Like the program works fine with 25 threads, and on 26 threads it starts working slower by 30% (these are not real numbers). But you probably know that.

Have you tried any of the work-arounds I've suggested?

Not yet. In the place where the problem is severe, regex is just too simple, split the string by whitespaces, easier to rewrite C style. But there are other places.
Anyway, thank you for the help and detailed explanations!


Sample composition - editing molecules percentage not saved

All molecules percentages are saved to 0 in the database, if you try to edit that percentage and save it will remain 0.

Issue fixed. Tested by editing samples loaded from sdf, and from added structures.


Could you answer my question?

thanks

I have added labels feature (57.65% confident).

This comment was generated automatically by Issue-Bot.


GreenLuma_2020_x86.dll

GL 1.5.4 uses GreenLuma_2024_x86.dll, and it is in the folder, the path in GLM is correct, but it does not use file 24, but looks for 20, which no longer exists

although the truth is that sometimes it launches the application correctly, but sometimes it asks for an unnecessary file. I haven’t figured out any pattern yet(

The DLL it uses is based on what is listed in the DLLInjector.ini. Please update the Dll parameter to point to the correct dll.

Hm, if an error appears, I’ll definitely look in the parameters, thanks for the help

Wrong Dll listed in .ini should now be handled better as of v1.3.10


chainspec no-std support

add no-std support for https://github.com/paradigmxyz/reth/blob/a4f0d5738fe9b4f39eb943c256880d89cb7d4dfa/crates/chainspec/Cargo.toml#L2-L2

I'll take this


 But the answer is probably to read it in from JS and write it back to MEMFS (see here and here).
OR we can modify the MM reader so that it can take data from JS's reader. This would avoid a copy from JS's file store to MEMFS, at the cost of being somewhat slower because the second loop is done in JS.

Oh, and this requires you to go into build/_deps/tatami-src and git checkout matrixmarket for the time being.


BUG: Error: failed to save images: parse image name error: could not parse reference

Sealos Version
v4.3.0
How to reproduce the bug?
sealos build failed
root@ubuntu:/data/cluster-image/rainbond/latest# sealos build -t registry.cn-shenzhen.aliyuncs.com/cnmirror/rainbond:v5.15.0 .
Pulling image: registry.cn-hangzhou.aliyuncs.com/goodrain/builder:v5.15.0-release
Pulling image: registry.cn-hangzhou.aliyuncs.com/goodrain/etcd:v3.3.18
Error: failed to save images: parse image name error: could not parse reference: registry.cn-hangzhou.aliyuncs.com/goodrain/kaniko-executor:latest"
root@ubuntu:/data/cluster-image/rainbond/latest#
root@ubuntu:/data/cluster-image/rainbond/latest#

but docker pull and sealos pull success
root@ubuntu:/data/cluster-image/rainbond/latest# sealos pull  registry.cn-hangzhou.aliyuncs.com/goodrain/kaniko-executor:latest
dcfa90c317b5dcc5844cb2df6f5113a424efab5e56d289138d6462aa49fa76d8
root@ubuntu:/data/cluster-image/rainbond/latest# ^C
root@ubuntu:/data/cluster-image/rainbond/latest#

What is the expected behavior?
pull image success
What do you see instead?
pull image failed
Operating environment
- Sealos version:
- Docker version:
- Kubernetes version:
- Operating system:
- Runtime environment:
- Cluster size:
- Additional information:

Additional information
No response

format error with ": registry.cn-hangzhou.aliyuncs.com/goodrain/kaniko-executor:latest"


Syntax error on UPDATE

I have a basic "update multiple fields" query that throws a syntax error. It's generating this query:
UPDATE pages SET (content = ?2) WHERE id = ?1

–which doesn't appear to be a valid statement. I'm not super familiar with SQL anymore, but it seems like removing the parentheses would correct the syntax.
Additionally, looking through the code, I noticed this query:
UPDATE pages SET (content = ?2, category = ?3) WHERE id = ?1

–was being called with these parameters being binded:
[ 'banana1', 'news', 'test' ]

In this case, the id is test, the content is banana1 and the category is news. It seems like ?1 and ?2 are being swapped. Is this intentional?

Hey @Mexican-Man thanks for reporting this issue
I will take a look into this next week, then I will report back to this issue when it's solved

Thanks for reporting this issues, I've just fixed them
I will be pushing a new release today or tomorrow with this
Let me know if you find any more issues or things that could be improved

I've just published a new version v0.1.3 with this fix


Automated Package Upgrade

:tada: This PR is included in version 26.0.60 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


remove code from app component

SUGGESTION i think we should remove this from the main app component too
  defaultMeaning: number = 42;

  meaningOfLife(meaning?: number) {
    return `The meaning of life is ${meaning || this.defaultMeaning}`;
  }

HANS - Agreed, but an empty file is unwelcoming. What would you suggest for a replacement?  IMO a bad joke is better than an empty class. Maybe a comment instead? /** HERE BE DRAGON^H^H^H^H^H^H CODE */ :shrug:
PAPA - honestly … none of my apps have any code in the app.component.ts. The point of this component is the providers, routing, and the base template for the layout. I’m looking to see what would make sense in there … yes … I love the --tutorial idea you keep bringing up
MIKE - having that there to ensure that our tests run successfully does add some value for us… but I can see devs not wanting it, but down the road I would LOVE to add an option like --tutorial where they can get some sample code added (with tests)
HANS - --tutorial would be nice. App blueprints could be empty, but it would be nice when ng g component to have some code in it.
PAPA - for now, I’d remove it.
cc @hansl @Brocco

Yeah, I also find myself removing this code for all the apps that I create using the CLI.


Chrisda to Main

Docs Build status updates of commit 70756fe:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

exchange/exchange-ps/exchange/Set-OutboundConnector.md
:white_check_mark:Succeeded
View (exchange-ps)

exchange/exchange-ps/exchange/Validate-OutboundConnector.md
:white_check_mark:Succeeded
View (exchange-ps)

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching the docs.microsoft.com contributor guidesPost your question in the Docs support channel


Ian Campbell: Watch blackeden420.com

Ian Campbell requests the watch of the watch_keyword blackeden420\.com. See the MS search here and the Stack Exchange search in text, in URLs, and in code.

blackeden420\.com has been seen in 1 true positive, 0 false positives, and 0 NAAs.

Approved by cocomac in Charcoal HQ


getTheme index doesn't exist

react-native, react and native-base version
"native-base": "^2.0.12",
"react": "15.4.2",
"react-native": "0.42.0"

Expected behaviour
Wanted to try NativeBase and customize the theme as it is described here: http://nativebase.io/docs/v2.0.0/customize
Actual behaviour
After adding the row import getTheme from './native-base-theme/components'; my emulator throws a 500 Error with

-path to root-/native-base-theme/components/index not found

but i see the index.js in that folder.
Steps to reproduce (code snippet or screenshot)
Just run node node_modules/native-base/ejectTheme.js
Any other additional info which would help us debug the issue quicker.
tried installing via Terminal in VS Code and the powershell from microsoft with and without admin-rights.

You need to import it from the path it is there in your project code.

@geekyants-github  I am very sorry but I use the following line import getTheme from './native-base-theme/components'; because it is in my root folder (like my index.android.js..).
"AwesomeNativeBase" (root) -> "native-base-theme" -> "components".
import material from './native-base-theme/variables/material'; throws no error...

I have the same issue as @shuffgy, using the correct path.

@shuffgy Ok, I got it working by stopping the dev-server and running react-native link and react-native run-ios.


Problem with token decimal in metrics

In the Metrics - Locked vs Minted panel on mainnet there is a problem with the decimal calculation of one of the tokens (currently it is displayed with 1e-8).

Could be fixed in Grafana open read-only validator
api/v1/metrics


set CI pipeline (mix dialyzer, mix test)

about
Prepare mix dialyzer and mix test CI pipeline.

Ref

setup-beam

https://github.com/erlef/setup-beam

cache

https://github.com/actions/cache/blob/main/examples.md#elixir---mix
https://medium.com/@gottfrois/github-actions-for-elixir-phoenix-app-with-cache-6ca33f628459
https://elixirforum.com/t/github-action-cache-elixir-always-recompiles-dependencies-elixir-1-13-3/45994/11

CI result

Total duration 50sec.
The cache was restored successfully in each job.


List of Multiplies #13

Thanks for Making Contributions

[ ] Task Complete

Vaild PR Will be Count from 1Oct-31Oct.


plugins/rustaceanvim: fix checkhealth error

Rustaceanvim will throw an error if the configuration is sourced after initialization. Our globals are defined at the top of the init.lua so moving the settings to leverage the globals option scope. If lsp is is enabled, we append the on_attach function to the config as a callback function so that it can be accessed properly on the global config.
An example of running into this can be had while configuring plugins.neotest.settings.adapters for usage with rustaceanvim. The setup involves initializing rustaceanvim before our lsp configuration is configured.
require('neotest').setup {
    -- ...,
    adapters = {
      -- ...,
      require('rustaceanvim.neotest')
    },
}

I am able to just set the mkOrder/mkBefore for the lsp extraConfigLua but, it would still be nice to not have to worry about ordering and store the rustaceanvim configuration utilizing our globals option. While working on this approach, I did add a couple commits for setting up the init.lua ordering to make sure we have access to the local module table and unset runtime paths immediately, followed by the options so that all other configurations can benefit from those variables.

@merifyio queue


ci: add dependency between release and snyk

:tada: This PR is included in version 0.6.0 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


Add Signum Framework

Application Frameworks, ORM, GUI/Signum Framework - http://www.signumsoftware.com/en/Framework
Full stack framework for writing data-centric applications. Uses C#, LINQ, Typescript, React and Bootstrap (or WPF). Promotes reusing modules in different applications while being 100% statically-typed. Signum Extensions contains 24 ready-to-use modules.
Note: The scope of the framework is very big, covering from DB to UI, so I added tree different descriptions in three categories (Application Frameworks / ORM / GUI).

Looks like the problem is unrelated to my commit

Is it truly awesome? I'm asking because I heard about it yesterday for the first time but dont see much talk about it.

It's true that is not known. Aside from a some local conferences in Spain and Germany we haven't made any publicity. We have also been trying to monetize it unsuccessfully. Now is LGPL.
It's also too big too add it to an already build project, limiting his popularity. It's not based in the buzzwords of the moment or supported by any big brand, so it's a risky decision for developers.
On the other side, is a framework for building solid line of business applications for windows and web based on a database. Focusing more in making maintainable applications on the long run than in a easy drop-in experience. As the main author of it, and after spending about 7 years building it (before Entity Framework), i can tell you that is quite awesome.
Let me enumerate some facts/features in not particular order:
Project:

I'm aware of it being used in about 20 big enterprise applications in 8 different companies of 6 different countries. We know most of the developers using it personally and since now none was ever reimplemented in another technology.
more than 7 years of uninterrupted work
automatic applicator generator from an always up to date example application (Southwind) http://www.signumsoftware.com/en/DuplicateApplication
more than 400 unit test (for the LINQ provider) and very cold technology to create UI test in c# using UIAutomation/Selenium
reasonably well documented http://www.signumsoftware.com/Documentation/framework/master/Introduction.md
active Gitter channel/isssue tracker
very good tooling, with code snippets and some Roslyn analyzer a and code fixes.

Signum Framework: http://www.signumsoftware.com/en/Framework

C# with functional style
100% strongly typed
Code first approach
Validation in the entities
Automatic SQL migrations
VERY powerful LINQ provider with correlated subqueries (aka N+1), reusing subexpressions and massive updates/deletes/inserts without materializing anything.
awesome UI developers experience in windows (WPF) and web (Typescript 2 and React) thanks to Schema integration of the custom controls: automatic autocomplete, integrated security, localization, UTC support...
Very powerful search control (grid) that lets the end user order, filter, add columns even in other tables, explore collections...
very useful new concepts and patterns, like Lite, Mixins, Operations or Symbols.

Signum Extensions: http://www.signumsoftware.com/en/Extensions

Authorization with users, roles and rules to restrict access to tables, columns and even rows (using where expressions) that are globally applied.
Multi tenant support, for applications that have to support independent customers in the same database (SAS).
awesome charting library integrated with the search control.
dashboards
localization
word reports generator and email templates
.... like 20 modules more.
recently we're working on creating workflows and dynamic entities for per-customer customizations.

Definitely the framework is very big and this scares many developers, specially if not promoted by Microsoft, Google or Facebook, and not everything is documented but there is in there a LOT of awesome stuff for the brave ones.
Since is distributed as git submodules, is very easy to debug/understand/contribute.
Finally the framework pushes the applications to evolve with the technology, that's why is 7 years old but using TS2, React and c# 6.

I wonder if three links are excessive? Maybe a new category for large frameworks such as this?

@olmobrutall You were just waiting for someone to ask this, no? 😄
Thanks for answering. Maybe not based on buzzword, but it looks fine using TS2 etc.

@pleb, Application frameworks VS Full Stsck Framewprks maybe?? It's kind of a gray area.
Maybe removing it from the GUI, but I think it absolutely deserves a place in ORM. Anybody can make a micro ORM in a week or two, but implementing a full LINQ provider is a different story. The ORM is also the core of Signum framework.

@Jogai thanks jogai. If you're interested in TS, just mention that is using it with all the script flags enabled, like notImplicitAny or even strictNullCheck. https://github.com/Microsoft/TypeScript/issues/9653

My main concern with the PR is the reuse of the same link https://github.com/signumsoftware/framework multiple times. Other mods - thoughts?

Removing it from GUI is enough? Or should we create another category for full stack frameworks? Are there any other full stack framework out there?

@olmobrutall it's an interesting situation. I'd prefer if the other mods chime in with their thoughts. Personally, I'm torn between a full stack section or multiple links. In both situations there are pros and cons.

Let's take one of the two decisions and refactor if it becomes out of control?

As for me, adding multiple links is not fair. Lot's of other projects can be added to several categories, but we always add a link to the most relevant one.
I think this should go into Application frameworks category. This category is the best suited for such libraries. As far as I understand Signum was not designed as a GUI or ORM library only. It was designed as a complete solution. So it should be under frameworks.

Agree, main focus of it is to be an Application framework. If the owners decide to split it into multiple libraries - ORM, GUI, etc. then each separate project can be put into apropriate section. But for now Application fits it the best

Not much happening on this. Closing ticket as PR has not been updated to place link under Application frameworks category


Exception thrown when attempting to reload strings 9.0.1

Version: 9.0.1
MySQL: MariaDB 10.3
PHP:7.4

Visit System & Settings -> Translate Site Interface
Click 'Reload Strings'

When I hit Reload Strings, I receceive an error message:
Error thrown with message "Call to undefined method Doctrine\DBAL\ForwardCompatibility\Result::FetchRow()"
Stacktrace:
#29 Error in /home/cloudcon/public_html/dev/concrete/vendor/mlocati/concrete5-translation-library/src/Parser/DynamicItem/Area.php:39
#28 C5TL\Parser\DynamicItem\Area:parseManual in /home/cloudcon/public_html/dev/concrete/vendor/mlocati/concrete5-translation-library/src/Parser/DynamicItem/DynamicItem.php:27
#27 C5TL\Parser\DynamicItem\DynamicItem:parse in /home/cloudcon/public_html/dev/concrete/vendor/mlocati/concrete5-translation-library/src/Parser/Dynamic.php:39
#26 C5TL\Parser\Dynamic:parseRunningConcrete5Do in /home/cloudcon/public_html/dev/concrete/vendor/mlocati/concrete5-translation-library/src/Parser.php:146
#25 C5TL\Parser:parseRunningConcrete5 in /home/cloudcon/public_html/dev/concrete/src/Multilingual/Service/Extractor.php:96
#24 Concrete\Core\Multilingual\Service\Extractor:getDynamicTranslations in /home/cloudcon/public_html/dev/concrete/src/Multilingual/Service/Extractor.php:83
#23 Concrete\Core\Multilingual\Service\Extractor:extractTranslatableSiteStrings in /home/cloudcon/public_html/dev/concrete/controllers/single_page/dashboard/system/multilingual/translate_interface.php:71
#22 Concrete\Controller\SinglePage\Dashboard\System\Multilingual\TranslateInterface:submit in /home/cloudcon/public_html/dev/concrete/src/Controller/AbstractController.php:318
#21 call_user_func_array in /home/cloudcon/public_html/dev/concrete/src/Controller/AbstractController.php:318
#20 Concrete\Core\Controller\AbstractController:runAction in /home/cloudcon/public_html/dev/concrete/src/Http/ResponseFactory.php:194
#19 Concrete\Core\Http\ResponseFactory:controller in /home/cloudcon/public_html/dev/concrete/src/Http/ResponseFactory.php:373
#18 Concrete\Core\Http\ResponseFactory:collection in /home/cloudcon/public_html/dev/concrete/src/Http/DefaultDispatcher.php:132
#17 Concrete\Core\Http\DefaultDispatcher:handleDispatch in /home/cloudcon/public_html/dev/concrete/src/Http/DefaultDispatcher.php:60
#16 Concrete\Core\Http\DefaultDispatcher:dispatch in /home/cloudcon/public_html/dev/concrete/src/Http/Middleware/DispatcherDelegate.php:39
#15 Concrete\Core\Http\Middleware\DispatcherDelegate:next in /home/cloudcon/public_html/dev/concrete/src/Http/Middleware/FrameOptionsMiddleware.php:39
#14 Concrete\Core\Http\Middleware\FrameOptionsMiddleware:process in /home/cloudcon/public_html/dev/concrete/src/Http/Middleware/MiddlewareDelegate.php:50
#13 Concrete\Core\Http\Middleware\MiddlewareDelegate:next in /home/cloudcon/public_html/dev/concrete/src/Http/Middleware/StrictTransportSecurityMiddleware.php:36
#12 Concrete\Core\Http\Middleware\StrictTransportSecurityMiddleware:process in /home/cloudcon/public_html/dev/concrete/src/Http/Middleware/MiddlewareDelegate.php:50
#11 Concrete\Core\Http\Middleware\MiddlewareDelegate:next in /home/cloudcon/public_html/dev/concrete/src/Http/Middleware/ContentSecurityPolicyMiddleware.php:36
#10 Concrete\Core\Http\Middleware\ContentSecurityPolicyMiddleware:process in /home/cloudcon/public_html/dev/concrete/src/Http/Middleware/MiddlewareDelegate.php:50
#9 Concrete\Core\Http\Middleware\MiddlewareDelegate:next in /home/cloudcon/public_html/dev/concrete/src/Http/Middleware/CookieMiddleware.php:35
#8 Concrete\Core\Http\Middleware\CookieMiddleware:process in /home/cloudcon/public_html/dev/concrete/src/Http/Middleware/MiddlewareDelegate.php:50
#7 Concrete\Core\Http\Middleware\MiddlewareDelegate:next in /home/cloudcon/public_html/dev/concrete/src/Http/Middleware/ApplicationMiddleware.php:29
#6 Concrete\Core\Http\Middleware\ApplicationMiddleware:process in /home/cloudcon/public_html/dev/concrete/src/Http/Middleware/MiddlewareDelegate.php:50
#5 Concrete\Core\Http\Middleware\MiddlewareDelegate:next in /home/cloudcon/public_html/dev/concrete/src/Http/Middleware/MiddlewareStack.php:86
#4 Concrete\Core\Http\Middleware\MiddlewareStack:process in /home/cloudcon/public_html/dev/concrete/src/Http/DefaultServer.php:85
#3 Concrete\Core\Http\DefaultServer:handleRequest in /home/cloudcon/public_html/dev/concrete/src/Foundation/Runtime/Run/DefaultRunner.php:125
#2 Concrete\Core\Foundation\Runtime\Run\DefaultRunner:run in /home/cloudcon/public_html/dev/concrete/src/Foundation/Runtime/DefaultRuntime.php:102
#1 Concrete\Core\Foundation\Runtime\DefaultRuntime:run in /home/cloudcon/public_html/dev/concrete/dispatcher.php:45
#0 require in /home/cloudcon/public_html/dev/index.php:2
/home/cloudcon/public_html/dev/concrete/vendor/mlocati/concrete5-translation-library/src/Parser/DynamicItem/Area.php
    /**
     * {@inheritdoc}
     *
     * @see \C5TL\Parser\DynamicItem\DynamicItem::getClassNameForExtractor()
     */
    protected function getClassNameForExtractor()
    {
        return '\Concrete\Core\Area\Area';
    }

    /**
     * {@inheritdoc}
     *
     * @see \C5TL\Parser\DynamicItem\DynamicItem::parseManual()
     */
    public function parseManual(\Gettext\Translations $translations, $concreteversion)
    {
        $db = \Loader::db();
        $rs = $db->Execute('select distinct (binary arHandle) as AreaName from Areas order by binary arHandle');
        while ($row = $rs->FetchRow()) {
            $this->addTranslation($translations, $row['AreaName'], 'AreaName');
        }
        $rs->Close();
    }
}

Arguments
"Call to undefined method Doctrine\DBAL\ForwardCompatibility\Result::FetchRow()"

`
![Image 19-11-2021 at 13 25](https://user-images.githubusercontent.com/94693982/142636108-437d8865-2d9b-47e5-94a6-c7bf8fdeda74.jpg)
``

@eskema See https://github.com/concrete5/concrete5/issues/9739 and https://github.com/concrete5/concrete5/pull/9838

@mlocati I updated the file concrete/src/Localization/Translator/Loader/Gettext.php with your changes, but I still get the error.. Is there another step?

@eskema No: #9838 is all what's needed to fix the issue

@mlocati yep, that worked! Thanks


Separate connections

Part of #14
Create a separate interface for handling a publishing connection from the subscriber connection. I still need to add the actual publishing code and an ActiveRecord mixin, but this starts us down the path towards having a separate connection for publishing and subscribing.
/cc @brettallred @localshred @liveh2o @abrandoned

Looks pretty straight forward to me :+1:


Added $setNsfwChannel

Type

[ ] Functions: $setNsfwChannel

Description
Please add $setNsfwChannel That's very helpful :'-!

$editChannel exists ?

$editChannel exists ?

hmmm It looks like no :\

$editChannel exists ?

hmmm It looks like no :\

it exist :/

$editChannel exists ?

hmmm It looks like no :\

it exist :/
![Screenshot_2021-05-01-17-18-02-81](https://user-images.githubusercontent.com/73595362/116781578-5e17b280-aaa1-11eb-8609-eb7e61a2629a.png

What is the example like?

No need for function since $editChannel already provided.


Add exception handling to signal handlers if moto is started from non-main thread

Add exception handling to signal handlers if moto is started from non-main thread. /cc @bblommers

Codecov Report

Merging #4112 (3e9ad1b) into master (803e005) will decrease coverage by 0.00%.
The diff coverage is 60.00%.

@@            Coverage Diff             @@
##           master    #4112      +/-   ##
==========================================
- Coverage   94.71%   94.71%   -0.01%
==========================================
  Files         473      473
  Lines       51685    51688       +3
==========================================
+ Hits        48955    48956       +1
- Misses       2730     2732       +2

Flag
Coverage Δ

servertests
55.53% <60.00%> (-0.01%)
:arrow_down:

unittests
94.63% <60.00%> (-0.01%)
:arrow_down:

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

Impacted Files
Coverage Δ

moto/server.py
65.43% <60.00%> (-0.61%)
:arrow_down:

Continue to review full report at Codecov.

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


[DOC] Link for RESTful APIs for AM 2.1.0 not accessible

The following links provided in the documentation [1] and [2] cannot be accessible
https://docs.wso2.com/apidocs/apimanager/am210/apipublisher
https://docs.wso2.com/apidocs/apimanager/am210/apistore
[1] https://docs.wso2.com/display/AM210/Store+APIs
[2] https://docs.wso2.com/display/AM210/Publisher+APIs

corrected links in docs :
https://docs.wso2.com/display/AM210/apidocs/store/
https://docs.wso2.com/display/AM210/apidocs/publisher


Support to get the user store type in the user stores endpoint

Is your feature request related to a problem? Please describe.
In the current implementation of the user store listing endpoint the user store type is not returned. It would be helpful if can get the user store type (local, remote) to distinguish the user stores in the user store listing page in the console.

This issue is being closed due to extended inactivity. Please feel free to reopen it if further attention is needed. Thank you for helping us keep the issue list relevant and focused!


skipDependencyManagement=false does not handle reactor projects appropriately

Based on previous bad experiences with the maven-release-plugin and multimodule projects that had sibling-dependencies we've adopted a practice of version-managing sibling dependencies in the top-level parent of a multimodule project
    <dependencyManagement>
        <dependencies>
            <dependency>
                <groupId>${project.groupId}</groupId>
                <artifactId>sibling2</artifactId>
                <version>${project.version}</version>
            </dependency>
        </dependencies>
    </dependencyManagement>

When such a multimodule project is aggregate-scanned by DependencyCheck it results in
[INFO] Unable to resolve org.owasp.test.aggregate.issue-nnn:sibling2:1.0.0-SNAPSHOT as it has not been built yet - creating a virtual dependency instead.
....
[ERROR] Failed to execute goal org.owasp:dependency-check-maven:5.3.1-SNAPSHOT:aggregate (default) on project parent: One or more exceptions occurred during dependency-check analysis: One or more exceptions occurred during analysis:
[ERROR] 	Could not find artifact org.owasp.test.aggregate.issue-nnn:sibling2:jar:1.0.0-SNAPSHOT
[ERROR] 	Could not find artifact org.owasp.test.aggregate.issue-nnn:sibling2:jar:1.0.0-SNAPSHOT
[ERROR] 	Could not find artifact org.owasp.test.aggregate.issue-nnn:sibling2:jar:1.0.0-SNAPSHOT
[ERROR] -> [Help 1]
org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal org.owasp:dependency-check-maven:5.3.1-SNAPSHOT:aggregate (default) on project parent: One or more exceptions occurred during dependency-check analysis
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:215)
...
Caused by: org.owasp.dependencycheck.exception.ExceptionCollection: One or more exceptions occurred during analysis:
	Could not find artifact org.owasp.test.aggregate.issue-nnn:sibling2:jar:1.0.0-SNAPSHOT
	Could not find artifact org.owasp.test.aggregate.issue-nnn:sibling2:jar:1.0.0-SNAPSHOT
	Could not find artifact org.owasp.test.aggregate.issue-nnn:sibling2:jar:1.0.0-SNAPSHOT
    at org.owasp.dependencycheck.maven.BaseDependencyCheckMojo.collectDependencyManagementDependencies (BaseDependencyCheckMojo.java:1089)

The problem occurs using version 5.3.0 of the maven plugin
To Reproduce
Steps to reproduce the behavior:

Create a new multimodule project with sibling-dependency between child-modules using the above mentioned strategy
Run a dependency-check:aggregate with skipDependencyManagement=false
See the build fail with the mentioned error (and stacktrace when adding maven CLI argument -e)

Expected behavior
dependencyManagement would detect that dependencyManagement references a reactor project and use a virtual dependency for that, just like is done with the actual use of this managed dependency inside the sibling project (which triggers the first INFO message referenced above).

As you might've guessed from the logs I'm already working on a test-case and following that will work on a fix and do a PR

@jeremylong Looking at the counterpart implementation for regular dependencies I'm suspecting a logic-error there. At https://github.com/jeremylong/DependencyCheck/blob/648253b85bccb21835884eb981fe786fedc20ade/maven/src/main/java/org/owasp/dependencycheck/maven/BaseDependencyCheckMojo.java#L1165 the ArtifactResolverException will always be swallowed/ignored if the current run is not an aggregate, as the first clause would yield true the addException is set to false.
I would expect the condition to be
if (aggregate) {
  //doNothing - ArtifactResolverException should be reported
} else if (addReactorDependency(engine, dependencyNode.getArtifact()))
  addException = false;
}

When you agree I can take that fix alongside my coding for the dependencyManagement case.

Thanks for the PR!


List index out of range

Error below appears when user give input slowly.
Flow Launcher version: 1.8.2
OS Version: Microsoft Windows NT 10.0.19042.0
IntPtr Length: 8
x64: True
Python Path:
Date: 09/27/2021 09:56:53
Exception:
System.IO.InvalidDataException: Direct Translate|Traceback (most recent call last):
File "C:\Users\drimalm\AppData\Local\FlowLauncher\app-1.8.2\Plugins\Flow.Launcher.Plugin.DirectTranslate\main.py", line 50, in
Translate()
File "C:\Users\drimalm\AppData\Local\Programs\Python\Python37-32\lib\site-packages\flowlauncher\FlowLauncher.py", line 30, in init
results = request_method(*request_parameters)
File "C:\Users\drimalm\AppData\Local\FlowLauncher\app-1.8.2\Plugins\Flow.Launcher.Plugin.DirectTranslate\main.py", line 43, in query
return translate(query)
File "C:\Users\drimalm\AppData\Local\FlowLauncher\app-1.8.2\Plugins\Flow.Launcher.Plugin.DirectTranslate\main.py", line 11, in translate
to_lang = splitted[1]
IndexError: list index out of range
at Flow.Launcher.Core.Plugin.JsonRPCPlugin.ExecuteAsync(ProcessStartInfo startInfo, CancellationToken token) in C:\projects\flow-launcher\Flow.Launcher.Core\Plugin\JsonRPCPlugin.cs:line 261
at Flow.Launcher.Core.Plugin.JsonRPCPlugin.ExecuteAsync(ProcessStartInfo startInfo, CancellationToken token) in C:\projects\flow-launcher\Flow.Launcher.Core\Plugin\JsonRPCPlugin.cs:line 275
at Flow.Launcher.Core.Plugin.JsonRPCPlugin.QueryAsync(Query query, CancellationToken token) in C:\projects\flow-launcher\Flow.Launcher.Core\Plugin\JsonRPCPlugin.cs:line 286
at Flow.Launcher.Core.Plugin.PluginManager.<>c__DisplayClass22_0.<b__0>d.MoveNext() in C:\projects\flow-launcher\Flow.Launcher.Core\Plugin\PluginManager.cs:line 192
--- End of stack trace from previous location ---
at Flow.Launcher.Infrastructure.Stopwatch.DebugAsync(String message, Func`1 action) in C:\projects\flow-launcher\Flow.Launcher.Infrastructure\Stopwatch.cs:line 40
at Flow.Launcher.Core.Plugin.PluginManager.QueryForPluginAsync(PluginPair pair, Query query, CancellationToken token) in C:\projects\flow-launcher\Flow.Launcher.Core\Plugin\PluginManager.cs:line 211
at Flow.Launcher.ViewModel.MainViewModel.<>c__DisplayClass111_0.<g__QueryTask|2>d.MoveNext() in C:\projects\flow-launcher\Flow.Launcher\ViewModel\MainViewModel.cs:line 563
--- End of stack trace from previous location ---
at Flow.Launcher.ViewModel.MainViewModel.QueryResults() in C:\projects\flow-launcher\Flow.Launcher\ViewModel\MainViewModel.cs:line 564
at System.Threading.Tasks.Task.<>c.b__140_0(Object state)
at System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
at System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler)

Fixed by merge of Migrate to new python plugin structure. Parameters are verified and help message is shown when there is wrong number of parameters.


Fix build, finally?

Sorry @lassoan , the build was still broken this morning.

I've merged this as is to see if the build succeeds. However, the module should be renamed to follow naming conventions: use CamelCase for module name and module class names.
find_zFrame, probeView, stereo_points should be renamed to FindZFrame, ProbeView, StereoPoints. Since you are changing names, you could also consider making the names more descriptive. FindZframe is pretty good, that may remain like that. In contrasst, I have no clue what ProbeView and StereoPoints module would do. It is not a must to use module name that suggest what the module does, but it makes it easier to discover and remember the module name.


chore: updating ci branches

Codecov Report

Merging #299 (ed74895) into main (868867b) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##             main     #299   +/-   ##
=======================================
  Coverage   89.48%   89.48%
=======================================
  Files          34       34
  Lines        1217     1217
  Branches      273      273
=======================================
  Hits         1089     1089
  Misses        125      125
  Partials        3        3

Continue to review full report at Codecov.

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


WIP - WPF Redesign

Redesign of WPF App to be more inline with Modern Windows UIs
Using ModernWpf to accomplish this.

@gizmohd hey I wanted to get your thoughts before I rabbit-holed to far down with the WPF UI Redesign. I want to follow a more "Page" based approach, similar to more modern Windows desktop apps. I am not very experienced with WPF so I wanted to double-check your thoughts on the approach. Also, not sure if we should convert the UCs you built into Pages, as they are more pages than reusable controls. Let me know what you think. This branch has a few of the pages already ported over (About Me, Logs, Some of Settings)

@isaacrlevin IMHO FWIW, :)   If you are keeping the tabbed interface, I would keep the UC's.. If you plan on doing a ground up redesign of the interface, then definately...
I downloaded what you have started... and think you're on the right track to make the interface look better.. and feel better.. :)

I am going to get rid of the tabs and have pages. If you run the latest code you will get an idea. Any help you can provide since now I will have an approach where the UI for a page will be updated when it is loaded. Not sure how live logs will work now


SQL Cipher with custom path

I did a custom install of sqlcipher from source using:
./configure --prefix=myproject/priv/sqlcipher --libdir=myproject/priv/sqlcipher/lib

It was not enough to set the EXQLITE_SYSTEM env vars. exqlite would fail to find libsqlcipher.so.0 with this:
export EXQLITE_USE_SYSTEM=1
export EXQLITE_SYSTEM_CFLAGS="-I/$(pwd)/priv/sqlcipher/include/sqlcipher"
export EXQLITE_SYSTEM_LDFLAGS="-L/$(pwd)/priv/sqlcipher/lib -lsqlcipher"

This worked:
export EXQLITE_USE_SYSTEM=1
export EXQLITE_SYSTEM_CFLAGS="-I/$(pwd)/priv/sqlcipher/include/sqlcipher"
export EXQLITE_SYSTEM_LDFLAGS="-L/$(pwd)/priv/sqlcipher/lib -lsqlcipher"
export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:/$(pwd)/priv/sqlcipher/lib"

It makes sense but tripped me up so I figured I'd add it here. Might tutorial something later.
Also the key doesn't work if it contains a dash "super-secret" style. Sent a PR on that for Ecto.SQLite3 but couldn't do the edit-and-PR as easy on this repo.
I still don't get an encrypted DB with this setup so that's something I'm investigating :D

This might be that I had an incomplete build. Disregard for now :)

Ah yes the best kind of bugs. The ones that self resolve. 😉


profile.d/dotfiles: Fixup maildir creation

@hashbang/administrators Please merge, this is a very borked.

This definitely should have worked as implemeted before. Especially in debian, but LGTM


.ctags.d is previous, include it in our tarballs

This is a simple change of .gitattributes, so our tarballs continue to
be a reproducible output of a util/mktar.sh (i.e. git archive with no
other funny business).
Fixes #24090

How do we test it?

Run ./util/mktar.sh, do tar -tvzf openssl-3.4.0-dev.tar.gz | grep ctags, see for yourself.
I have no intention to invent a new workflow for this.

LGTM, many thanks!

@beldmit Please add formal approval.

Sorry. Done.

24 hours has passed since 'approval: done' was set, but as this PR has been updated in that time the label 'approval: ready to merge' is not being automatically set.  Please review the updates and set the label manually.


Graceful shutdown exec service

Pull Request Test Coverage Report for Build 3189

10 of 54 (18.52%)  changed or added relevant lines in 4 files are covered.
2 unchanged lines in 2 files lost coverage.
Overall coverage decreased (-0.2%) to 70.172%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

core/src/main/java/com/netflix/conductor/core/orchestration/ExecutionDAOFacade.java
0
12
0.0%

es5-persistence/src/main/java/com/netflix/conductor/dao/es5/index/ElasticSearchDAOV5.java
4
20
20.0%

es5-persistence/src/main/java/com/netflix/conductor/dao/es5/index/ElasticSearchRestDAOV5.java
3
19
15.79%

Files with Coverage Reduction
New Missed Lines
%

es5-persistence/src/main/java/com/netflix/conductor/dao/es5/index/ElasticSearchDAOV5.java
1
80.47%

es5-persistence/src/main/java/com/netflix/conductor/dao/es5/index/ElasticSearchRestDAOV5.java
1
75.17%

Totals

Change from base Build 3181:
-0.2%

Covered Lines:
10262

Relevant Lines:
14624

💛  - Coveralls


Make py.test not iterate into the Twisted package

Current coverage is 62.04%

Merging #510 into master will increase coverage by +0.06% as of ef0efb6

@@            master    #510   diff @@
======================================
  Files           52      54     +2
  Stmts         8683    8682     -1
  Branches      1418    1415     -3
  Methods          0       0
======================================
+ Hit           5382    5387     +5
+ Partial        509     504     -5
+ Missed        2792    2791     -1

Review entire Coverage Diff as of ef0efb6

Powered by Codecov. Updated on successful CI builds.


Guzzle except error

Its working with the fotos, like jpg , jpeg ,png ...
But when i try to upload video file like *.mp4
Guzzle except error: Invalid resource type

your file size? any code or backtrace?


Drop-down selection for some parameters

Is your feature request related to a problem? Please describe.
I would like to be able to define parameters that only accept certain inputs; this can include validation, but a prefered option would be restricting values to a list of predetermined options.
Describe the solution you'd like
Drop-down option for some parameters;
Describe alternatives you've considered
N/A
Additional context

Any implementation would need to load the available options as part of the configuration, or as a link to another source (such as a file stored as part of the module payload). Incoporating the full parameter list as part of the 'params' substructure keeps meta-data with value data, but complicates config readouts in the Snakefile's, introduces backwards compatibility issues, and/or would require additional logic at run-time. An alternative implementation would be to add meta-data separate to the 'params' sub-structure in the config file. A viable parameters structure (placed at the same level as the intended structure uses a ':'-prepend, such as ':params'. This has been trialled as follows:
input_namespace: in
output_namespace: out
params:
  "Dataset": "APHRODITE Daily mean temperature product (V1808)"
  "Admin Level": "1"
  "Year": ""
  "Resolution Type": "ppp"
  "Country (ISO3)": "VNM"
  "Options": ""
:params:
  "Dataset":
    type: select
    options:
      - "APHRODITE Daily mean temperature product (V1808)"
      - "APHRODITE Daily accumulated precipitation (V1901)"
      - "CHIRPS: Rainfall Estimates from Rain Gauge and Satellite Observations"
      - "TerraClimate gridded temperature, precipitation, and other"
      - "ERA5 atmospheric reanalysis"
      - "WorldPop population density"
      - "WorldPop population count"
      - "GADM administrative map"
    required: true
  "Resolution Type":
    type: select
    options:
      - ppp
      - pph
    required: true

Although this separates meta-data from values, the paired 'params'-':params' structure allows meta-data to be associated with any named structure, allows ':'-tagged meta-data to be rescinded from the user interface, and should be extendable to hierarchical modules. Furthermore, the 'options' sub-label could be replaced with a 'file location' if reading is to be performed from file.

A subtle modification of the above extends the colon-notation to any field, instead of requiring a parent structure:
input_namespace: in
output_namespace: out
params:
  "Dataset": "APHRODITE Daily mean temperature product (V1808)"
  ":Dataset":
    type: select
    options:
      - "APHRODITE Daily mean temperature product (V1808)"
      - "APHRODITE Daily accumulated precipitation (V1901)"
      - "CHIRPS: Rainfall Estimates from Rain Gauge and Satellite Observations"
    required: true
  "Resolution Type": "ppp"
  :"Resolution Type":
    type: select
    options:
      - ppp
      - pph
    required: true

Note the use of two different syntax examples which are not equivalent. The first, ":Dataset", can be accessed in the snakefile as config['params'][':Dataset'], while :"Resolution Type" wraps an additional string and can be accessed as config['params'][':"Resolution Type"]. Of course, the intent is that these are not directly referenced in the Snakefile, and instead managed by grapevne. Without quotes these two forms are equivalent (e.g. :params). With quotes there is a dependency on which quotes are used, since :"Resolution Type" is not equivalent to :'Resolution Type'. For this reason my preference is for the former.
The disadvantage of this approach is that data and metadata are still not retained in the same structure (can potentially diverge), and the config file becomes less clean to read outside of grapevne.
Some potential metadata markers are:

Single symbol delineator, e.g. ":Dataset", "_Dataset", etc.
Wrapped symbol delineator, e.g. ":Dataset:", "_Dataset_", etc.
Implicit structure, e.g. "Dataset [options]", although these are more likely to clash with user specifications

Dropdown list support could also help resolve software version selection, as mentioned here: https://github.com/kraemer-lab/vneyard/pull/9


Copy generated import lib for QIR on Windows

I forgot to include the generated import libs needed for compiling against the dlls on Windows in the build artifacts for the QIR runtime.

@cesarzc This is kind of annoying, and I wanted to give you the heads up. To use dlls at runtime on Windows we need to provide matching import libs which have the info needed for the linker. However, the only way to make sure those get "binplaced" by our install command in cmake is to include ARCHIVE which will also end up copying out any static libs that are generated. For now, I'm just putting all *.lib files into the drops folder for Windows, but once we get a formal packaging process we can be more discerning about which libs are included and avoid causing confusion by packing static libs that are redundant to the dynamic libraries produced.

@cesarzc This is kind of annoying, and I wanted to give you the heads up. To use dlls at runtime on Windows we need to provide matching import libs which have the info needed for the linker. However, the only way to make sure those get "binplaced" by our install command in cmake is to include ARCHIVE which will also end up copying out any static libs that are generated. For now, I'm just putting all *.lib files into the drops folder for Windows, but once we get a formal packaging process we can be more discerning about which libs are included and avoid causing confusion by packing static libs that are redundant to the dynamic libraries produced.

Thanks for the heads up @swernli!


Linux network namespaces created by serivce in Pod  become "RTNETLINK answers: Invalid argument"

Simply, the openstack neutron-l3-agent service running on k8s has started a batch of network namespaces, but in unknown circumstances, these namespaces cannot be accessed.
There is a long story about docker:
https://github.com/moby/moby/issues/27277
And long disscussion on:
https://bugs.launchpad.net/kolla/+bug/1616268
and:
https://bugs.launchpad.net/kolla-ansible/+bug/1864856
ip netns exec qrouter-42ecd889-9aba-41b1-bb95-4a546539e2b8 ip a
setting the network namespace "qrouter-42ecd889-9aba-41b1-bb95-4a546539e2b8" failed: Invalid argument
ls -lah /run/netns
----------  1 root root    0 Jun 28 00:18 qdhcp-f1c65cd3-24e2-40a5-bbfd-a4757bb9721f
----------  1 root root    0 Jun 28 00:18 qdhcp-f6eb2c25-bf59-451b-af6b-0d1750032b10
----------  1 root root    0 Jun 28 00:22 qrouter-095f5916-8235-44e3-8fb8-dbd494a605bf
----------  1 root root    0 Jun 28 00:20 qrouter-1228752a-a2d3-4bc6-81ff-0ece5e9410b5
----------  1 root root    0 Jun 28 00:22 qrouter-177318e8-f775-4491-8d41-abfb96722e64
----------  1 root root    0 Jun 28 00:22 qrouter-1826d198-427f-438f-9ea3-81e5de716d0
In those disscussion, the result solution is to mount /run:/run:shared or /run/netns:/run/netns:shared to the container.
But for the k8s the mount point is:
{
"containerPath": "/run/netns",
"hostPath": "/run/netns",
"propagation": "PROPAGATION_BIDIRECTIONAL",
"readonly": false,
"selinuxRelabel": false
},
So, is there similar issue in the community had encountered? Is there any clue or informations can solve this issue?
If you need any more information, I will added here as soon as possible.
crictl --version
crictl version v1.19.0
kubelet --version
Kubernetes v1.19.15
crictl ps
CONTAINER           IMAGE               CREATED             STATE               NAME                     ATTEMPT             POD ID
aa950e02ad3fe       fee6482a19404       6 days ago          Running             neutron-l3-agent         1                   d2b21b9cc30a5
Container details:
crictl inspect aa950e02ad3fe
https://paste.opendev.org/show/bEciGQyK2zmjnarA0lJ0/

What is the respective command in kubectl affected by this issue?

Thank you @ardaguclu for the quick reply, seems not related to kubectl, but more like a containerd runc problem. But add this issue here to hope more users can help to find out the clue/information/feedback/solution for this. Or for anyone who is having same case can disscuss it here as well. If I'm lucky, maybe someone had encountered the issue and have solutions.

It is better to transfer it kubernetes;
/transfer kubernetes


Handling Errors

Hi,
first, thank you for your great work. We're using your library and we'd like to know what is the best way to handle Error?
For example at one point we return a failure:
return Results.Fail(new MoResourceNotFoundError(entityIdentifier.Id));
Now, handling (catching) it is a bit "unfriendly":
if (moSetupResponse.Errors.Any(x => x is MoResourceNotFoundError)
Maybe I'm missing some helper function?
Alternative is throwing/catching exceptions, but we'd like to avoid that here.

Hi,
Thanks! Glad you found the library helpful.
Good point! Now there is no helper method but I think I can extend the public API of this library to support your team in this scenario. I will add HasError(...) and HasSuccess(...) methods. If you have any feedback, please reply.
var result = Results.Fail(new NotFoundError(3))
    .WithSuccess(new FoundSuccess(1));

result.IsFailed.Should().BeTrue();

// old way
result.Errors.Any(error => error is NotFoundError).Should().BeTrue();

// new way for errors
result.HasError<NotFoundError>().Should().BeTrue();
result.HasError<NotFoundError>(notFoundError => notFoundError.Id == 3).Should().BeTrue();

// new way for successes
result.HasSuccess<FoundSuccess>().Should().BeTrue();
result.HasSuccess<FoundSuccess>(foundSuccess => foundSuccess.Id == 1).Should().BeTrue();

Thanks for your feedback. If you think that some more functionality is missing please create an issue.

Today I extend the public api to support this scenario.
New nuget package: https://www.nuget.org/packages/FluentResults/1.5.0
Section in readme: https://github.com/altmann/FluentResults#handlingcatching-errors
Please give feedback or close the issue. Thx

Thank you for quick upgrade of your library!


In Azure Web App: POST to  failed: POST to the bot's endpoint failed with HTTP status 500

Bot works fine in emulator, but doesn't work after deployment in Azure
Sample information

Sample type: [\samples\ or \solutions]
Sample language: dotnetcore
Sample name: Tried Echo Bot, Language Generation

Describe the bug
.NET Core 2.1,
Azure Web App, Azure Channel Registration.
Everything works fine at localhost in emulator. After deployment at Azure Web App and testing Bot in Telegram(also Webchat tried) I got this error "POST to  failed: POST to the bot's endpoint failed with HTTP status 500".
Was tried:

Used remote debugger to identify reasons - code works fine.
Tried adding storage account using 42. scaleout sample - didn't help.
Tried different samples (EchoBot, Language Generation etc.) - all works fine locally, not in Azure.
At channel registration API endpoint is correct obviously.

Also found out logs, connected with AppId
"Microsoft.IdentityModel.Clients.ActiveDirectory.AdalServiceException: AADSTS700016: Application with identifier '<AppID>' was not found in the directory 'botframework.com'. This can happen if the application has not been installed by the administrator of the tenant or consented to by any user in the tenant. You may have sent your authentication request to the wrong tenant.Trace ID: cd3ed870-26ab-4f62-9592-27cf65082f00Correlation ID: 535c9681-e7cc-4ed1-a5a9-0fcdce70c50eTimestamp:\ ---> Microsoft.IdentityModel.Clients.ActiveDirectory.AdalServiceException: Response status code does not indicate success: 400 (BadRequest).at Microsoft.Identity.Core.OAuth2.OAuthClient.GetResponseAsync[T](Boolean respondToDeviceAuthChallenge)"

To Reproduce
Steps to reproduce the behavior:

Clone EchoBot Sample
Deploy this bot using Azure
Test with Webchat or try another channel
See error

Expected behavior
Has to work fine after deploy
Screenshots

Additional Context
Is there a temporary problem with apps dev or there is an issue on my side?
[bug]

@ecclesiast Can you provide the steps you used to deploy?

@Ecclesiast 	Can you verify:

You followed the Deployment docs

There is an App in App Registrations with an Application ID that matches the one found in Azure Portal > Your Resource Group > Web App Bot Service > Settings > Configuration > Microsoft App ID

I am closing this issue as it doesn't seem to be a blocking issue. Feel free to reopen if you have need to get this resolved.


Added TLS support for gangway

This PR adds the option to enable serving HTTPS via TLS certs.

cc: @craigtracey

@craigtracey r4r again ;)

@craigtracey Made the changes we discussed in Slack (about reverting back to basics) - please let me know if anything else needs to be changed.

@craigtracey Made the changes we discussed in Slack (about reverting back to basics) - please let me know if anything else needs to be changed.


Expose logger protocol

Motivation
Expose logger protocol and hide actual implementation.
2f7f884 contains actual changes

Small comment, otherwise LGTM!

@danielpassos Addressed both comments


Background-color not transparent

Prerequisites

[X] I have searched for duplicate or closed issues
[X] I have validated any HTML to avoid common problems
[X] I have read the contributing guidelines

Describe the issue
hi, i make a WebApp for telegram bot using bootsrap
and i wanna make background-color of the page transparent
but i can't (
background-color still white (
i tried .bg-transparent and in css style
<style>
            html, body, main {
                background-color: transparent !important;
            }
 </style>

but its not working (
my html code

Reduced test cases

What operating system(s) are you seeing the problem on?
Windows
What browser(s) are you seeing the problem on?
Opera
What version of Bootstrap are you using?
5.3.0-alpha3

Hi, can you provide us a codepen link of the reduced case so we can see for ourselves?


Export as Source code doesn't apply quote type changes

System information:

Operating system (distribution) and version Mac
DBeaver version 7.2.5 EA

Steps to reproduce, if exist:

Select source code type in a table export wizard
Change quote type in the export settings and execute the export

Expected: the data is exported with changed quote type
Actual result: the default quote type is used

Duplicate of #10279.

It turned out to be a duplicate of https://github.com/dbeaver/dbeaver/issues/10366


grocery manager project added

🛠 Fixes Issue (687)
Closes #687
👨💻 Changes proposed
Added grocery manager project
✅ Check List (Check all the applicable boxes)

[x] My code doesn't break any part of the project (Zero Octave-Javascript-Projects).
[x] This PR does not contain plagiarized content.
[x] My Addition/Changes works properly and matches the overall repo pattern.
[x] The title of my pull request is a short description of the requested changes.

📷 Screenshots

you've deleted and pasted many lines in readme which is breaking the flow, just add your line of code

you've deleted and pasted many lines in readme which is breaking the flow, just add your line of code

I didnt delete anything..but i will look into it as there are some merge conflicts

@NOiR-07  Hey i have resolved merge conflicts and added only my line of code in readme and cards.json .Please review this PR

@piyusha2001 I request you to create a new PR with updated fork. You break the README and some json.


Added additional docs tag for GetTokenCount.cs sample

Hi @jskeet, just a small docs tag change to make sure the sample shows up in docs


Introducing isEqualToNormalizingNewlines

Introducing isEqualToNormalizingNewlines. It compares whether two strings are equals to each other after normalizing newlines.
Check List:

Fixes #818
Unit tests : YES
Javadoc with a code example (API only) : YES

Thanks, I will review that by the end of the year.

Your suggestions (that I very much agree) are implemented!

Using String#replace(CharSequence target, CharSequence replacement) should suffice. Less code and even more efficient.

I would be nice if you could add @since 2.7.0 / 3.7.0 to the javadoc. Thanks!

Just implemented your two suggestions.
About only the \r, I actually believe that if you are dealing with a system that only uses \r nowadays, you write the tests in a way that the expected also contains \r. Does that make sense?

Thanks @mauricioaniche ! I finally got time to integrate your PR.


Fix link to Documentation/2.0 in README

[ci skip]

@splattael Thanks for the fix. Can you please change the commit message to "doc: fix link to documentation/2.0 in readme"?

@xiang90 sure, done

lgtm


wrap_comments with a numbered markdown list

Repro steps
Step1: Prepare the following main.rs file as an input for rustfmt:
/// Bullet list:
///
/// - one one one one one one one one one one one one one one one one one one one one one one one
/// - two two two two two two two two two two two two two two two two two two two two two two two
///
/// Numbered list:
///
/// 1. one one one one one one one one one one one one one one one one one one one one one one one
/// 2. two two two two two two two two two two two two two two two two two two two two two two two
fn main() {
    println!("Hello, world!");
}

Note that the long lines are 98 characters long.
Step2: Run rustfmt --config wrap_comments=true src/main.rs
Note the usage of wrap_comments=true.
Expected behavior
Lists remain formatted as lists.  This expectation is based on:

https://doc.rust-lang.org/rustdoc/how-to-write-documentation.html#markdown which says that doc comments use https://commonmark.org/ and
https://commonmark.org/help which seems to indicate that numbered lists should be supported with the format I've used above.

Actual behavior.
The list of bullet items remains formatted correctly, but the numbered list is no longer formatted as a list:
/// Bullet list:
///
/// - one one one one one one one one one one one one one one one one one one
///   one one one one one
/// - two two two two two two two two two two two two two two two two two two
///   two two two two two
///
/// Numbered list:
///
/// 1. one one one one one one one one one one one one one one one one one one
/// one one one one one 2. two two two two two two two two two two two two two
/// two two two two two two two two two two
fn main() {
    println!("Hello, world!");
}

I am observing the behavior above when using the following version of rustfmt:
$ rustfmt --version
rustfmt 1.4.38-nightly (4ca19e0 2022-04-19)

Workarounds
I guess I can insert a new line between numbered list items.  Indentation will still get broken, but at least separate list items will remain separate.
Older, similar issues
A collegue has kindly pointed that there was a similar issue in the past (dealing with lists of bullet items): https://github.com/rust-lang/rustfmt/issues/3224

Thanks for the report.
rustfmt's support for markdown constructs is fairly limited, and there isn't any support for numbered lists. We currently handle bulleted lists (* and -) and block quotes (>) using the ItemizedBlock struct.
https://github.com/rust-lang/rustfmt/blob/c4416f20dcaec5d93077f72470e83e150fb923b1/src/comment.rs#L433-L446
Maybe there's a way to minimally rework it to support numbered lists, but I'm not sure how difficult that would be.

This issue can be closed


Feature Request: Add the ability to see the MMR required to reach the next rank

Hi,
I'm making a feature request. I was wondering if you could add the ability to see either the amount of MMR still needed to reach the next rank or even just something that shows the total required MMR to reach the next rank?
Up until recently I was using the RankViewer plugin for this but it has started crashing my game some of the time now so I can no longer use it. But I think the feature it provided would also be perfect for the Rocket Stats plugin.

Thanks for the request, but unfortunately this feature won't be added.
As you said, other plugins already provide this feature.

Yeah but the RankViewer plugin seems to cause crashes now and hasn't been updated in ages. I don't know of another plugin that provides this feature

From: Rémi Marseault @.>
Sent: Monday, April 18, 2022 12:28:43 AM
To: Lyliya/RocketStats @.>
Cc: nefariouslegion @.>; Author @.>
Subject: Re: [Lyliya/RocketStats] Feature Request: Add the ability to see the MMR required to reach the next rank (Issue #24)
Thanks for the request, but unfortunately this feature won't be added.
As you said, other plugins already provide this feature.
—
Reply to this email directly, view it on GitHubhttps://nam12.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2FLyliya%2FRocketStats%2Fissues%2F24%23issuecomment-1101083736&data=04|01||a8f0856ee5814f239c5308da20f3eca7|84df9e7fe9f640afb435aaaaaaaaaaaa|1|0|637858529266210939|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|3000&sdata=6K%2Ft4NowoxRmM6b4ZBWS9gDJLctcZqioL5L3YPesfII%3D&reserved=0, or unsubscribehttps://nam12.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fnotifications%2Funsubscribe-auth%2FAVJ2BE6B7C7OSCJL6AEJ67LVFTQHXANCNFSM5TU2S7NQ&data=04|01||a8f0856ee5814f239c5308da20f3eca7|84df9e7fe9f640afb435aaaaaaaaaaaa|1|0|637858529266210939|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|3000&sdata=5VhGhP3Kis73Pi33%2FNlO0sML7w9zbtck%2BsD8a0mNK94%3D&reserved=0.
You are receiving this because you authored the thread.Message ID: @.***>

No other plugin provide this feature because it's awful to setup xD.
And just in case, do you have AlphaConsole installed ?

Ah I didn't realize it was that bad to set up lol.
Yeah I do have AlphaConsole

From: Rémi Marseault @.>
Sent: Monday, April 18, 2022 4:35:18 AM
To: Lyliya/RocketStats @.>
Cc: nefariouslegion @.>; Author @.>
Subject: Re: [Lyliya/RocketStats] Feature Request: Add the ability to see the MMR required to reach the next rank (Issue #24)
No other plugin provide this feature because it's awful to setup xD.
And just in case, do you have AlphaConsole installed ?
—
Reply to this email directly, view it on GitHubhttps://nam12.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2FLyliya%2FRocketStats%2Fissues%2F24%23issuecomment-1101220064&data=04|01||dc4fdd459c134025ccac08da21165e53|84df9e7fe9f640afb435aaaaaaaaaaaa|1|0|637858677204696768|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|3000&sdata=fYzlxxo1tgQVYKEeHLerlesB7w4C1PLNPIuhPmJBxQc%3D&reserved=0, or unsubscribehttps://nam12.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fnotifications%2Funsubscribe-auth%2FAVJ2BE36NWENQ2XA6MWMBSLVFUNENANCNFSM5TU2S7NQ&data=04|01||dc4fdd459c134025ccac08da21165e53|84df9e7fe9f640afb435aaaaaaaaaaaa|1|0|637858677204696768|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|3000&sdata=OdBKKma39oIolUSaaOkq4C8PkWvy%2BTA3mRXT%2FQ6veYE%3D&reserved=0.
You are receiving this because you authored the thread.Message ID: @.***>


Add formatted IPython pprint repr

Adds a _repr_pretty_ method to each generated class for nicely formatted output on IPython's pretty printer, both on the console and in notebooks.

I'm reluctant to introduce additional attributes beyond pack, from_packed, and __dataclasses_struct__, especially for non-essential things like this.
The pprint module in stdlib already natively supports dataclasses, as does the popular rich module.
One alternative could be to add an optional function that monkey-patches the decorator to add something like this to classes. Then you could import it in ipython shells or notebooks if you want this functionality. E.g. something like:
from dataclasses_struct.ext.pretty import init_pretty_dataclasses
init_pretty_dataclasses()
# ...

Am working on this here: https://github.com/harrymander/dataclasses-struct/pull/6


[Question] How to upload torrent?

Sorry for asking such a dumb question, but how would I upload a .torrent? Is there any way or was this option removed?

there has never been an option to "upload a .torrent"
You can create .torrent files (which have magnet links)
You have to upload a .torrent using your browser or email to wherever you need to upload it.
Or you can paste a magnet link wherever you need to share it.
Hope this helps.


Ensure we keep a limit

Taking a look at:
https://github.com/trustification/trustify/blob/54da44c176a22c1f931b2714c1816f915a42f0bc/modules/ingestor/src/service/format.rs#L61-L65
I am wondering if we enforce any kind of size limit? If we don't, we should.

Not opposed, but we already enforce the limit on the actix handlers, which makes me wonder why the importers don't post their docs to the actix handlers? Doing so might facilitate distribution, too, right?


<localleader> ee not working in tutorial + several other bugs

<localleader>eb works, but ee does not. The manual command ConjureEval works to advance the tutorial. For lesson 3, <localleader>er does not work, but <localleader<eb does. In fact for everything after lesson 2, <localleader>eb works, but the given command doesn't. <localleader> Eiw worked, though.
Great plugin, by the way.

I can't reproduce this at all, it does sound like highlighting or tree sitter issues within your Neovim setup though.
Are you using tree sitter? If so, make sure you've updated the parsers, especially if you've recently updated Neovim.
If not, do you have syntax highlighting because that's required to select parts of code.

I think something is wrong on my end. I'm on Neovim v0.61, which might have something to do with it. I'll update in a bit and then re-test.

Did you manage to get this working by updating by any chance? I wonder if there's something I changed to support Neovim 0.7+ (since Neovim introduces breaking changes regularly now) that isn't backwards compatible with 0.6~ like I intended. I've tried to make every 0.7+ fix work in older versions with version gating but I might have missed something.

I'm not sure it's the same bug, but I think I can reliably reproduce something like this. Here's how:

Create a file containing:

(ns a)
42

have a REPL for it
in neovim, move cursor to "42" and type, for example, <localleader>ee . Nothing happens (which is probably not a bug).
now, with cursor still on "42", type 0C(+ 2 3)<Esc> (replacing the line with a new expression)
now, with cursor anywhere inside of (+ 2 3), type <localleader>ee. Nothing happens (which seems to obviously be a bug).

Hm, I can't reproduce that one @jsn 🤔 works totally fine for me using your exact steps. Just a hunch, have you run :TSUpdateSync recently? (if you're using treesitter at all, that is)

I think I am using treesitter, since I have Plug 'nvim-treesitter/nvim-treesitter', {'do': ':TSUpdate'} in my init.vim -- is that correct? :TSUpdateSync says "All parsers are up-to-date!". Still, the sequence I described above works every time for me -- conjure is largely broken after that first ,ee on a parenless atomic value

Yep, as long as you have that and you've run :TSInstall clojure at some point Conjure will lean on it for all of the form extraction.
I'll keep trying to reproduce your issue, it's really odd. And to be clear, you're talking about Clojure with an nREPL connection to a JVM Clojure instance? Or something else?

:TSInstall clojure says "clojure parser already available", so apparently yes, I'm using it.
Yes, it's JVM clojure + nREPL.
I just did git bisect on this one, here's what it says:

a4cd6e089cbb75e2aec058515955f6ed668cf000 is the first bad commit

Well that tells us it's to do with treesitter, which I'm also using and it's working fine 🤔

Huh. If I do :TSEnable highlight clojure before, the bug doesn't happen.

Hmm, interesting! I'll try with that disabled and see what the treesitter API returns when I call it. Maybe it's just returning nil when I query what's under the cursor if you don't have highlighting enabled! That's kinda what it looks like. Could even be a Neovim + treesitter bug?

Is there anything I can do to help reproducing this? For some reason I see this bug triggered a lot today in my mundane activities. I use nmap <buffer> <localleader>Tr :TSEnable<space>highlight<space><bar>:TSDisable<space>highlight<cr> to punch some sense into treesitter now and then, but it's obviously not ideal :)

I ran into the same issue with a fresh Neovim install and fork of magic-kit that I added nvim-treesitter to (as it seemed to be recommended in the Conjure readme). It seemed like I could eval forms under my cursor that were there when I opened nvim but any forms added/modified afterward could not be evaluated. I was quite puzzled until I found this thread!
Also thank you for your work on Conjure! I've had a couple of false starts trying to get into Clojure and the tooling always felt a bit daunting but between Conjure and the new (to me) Clojure CLI tools things feel so much smoother this time around. And being able to interactively configure nvim with Fennel is kind of blowing my mind

Yeah, it's basically impossible to enter an expression and immediately eval it now -- I have to toggle treesitter every time before ,ee / ,er. Occasionally (that's rare, though) it also evals the wrong piece of code (so I receive complaints about unknown identifiers or perhaps even unmatched parens, not sure) -- and it all goes away after treesitter toggle.

So I don't have this issue and have never seen it despite using tree sitter the entire time in multiple languages.
Would you be able to list any tree sitter related plugins you have, if any? Maybe some that change highlighting or allow you to manipulate the tree? Maybe your theme too?
And Neovim / OS version information can't hurt. If we can compare a few of you that have this maybe we can work out what's doing it.

@Olical did you try to reproduce it while having treesitter highlighting disabled (:TSDisable highlight clojure)? Because that's when it happens for me.

Oh, no I haven't but I presume that will reproduce the issue. Which means tree sitter doesn't update it's in memory tree on change if highlighting is disabled? Is there a way to force tree sitter to refresh the tree I wonder?

I really know nothing about treesitter, sorry. By the way, the bug happens even when I have :TSEnable indent or incremental_selection (but not highlight) -- shouldn't treesitter update its representations in this case?

Not sure if it matters, but here's my plugin section of init.vim and my nvim --version output:
NVIM v0.7.0
Build type: Release
LuaJIT 2.1.0-beta3
Compiled by builduser

Features: +acl +iconv +tui
See ":help feature-compile"

   system vimrc file: "$VIM/sysinit.vim"
  fall-back for $VIM: "/usr/share/nvim"

Run :checkhealth for more info

https://gist.github.com/jsn/56e0d94e4a7f446930a9f0c5e9765915

It seems like it's able to fall back to logic that behaves correctly when treesitter isn't installed. I wonder if the treesitter enabled? check could check if highlighting is enabled if it's necessary for the cursor functionality to work? Otherwise it might just be worth mentioning in the treesitter section of the readme that highlighting must be enabled for the ConjureEval*Form commands to work

So, my backup is to do what you just said @dylanscott, however I may have fixed this. Testing myself now, but letting people know: I think I was supposed to call a function to re-parse the tree before I accessed it, which maybe is done for me if you have syntax highlighting on? So now I'm calling that parse function maybe that'll help!
If not, I'll do as you say and not rely on TS if the highlighting is disabled.

So @jsn's repro with my ts highlighting disabled (I think?) is working for me now! I'd love to hear a confirmation from someone else though.

I'm 99% sure I've fixed this without compromises 🎉

I'm 99% sure I've fixed this without compromises tada

Yes, sir, I believe you truly have! At least I can't reproduce it on fresh dev. Thank you so much! I'll keep an eye out for it next time I'm deep in some Clojure codebase, but for now I consider it fixed. Yay!