Improve constructor injection

Similiar to Spring IOC, for a component managed by CDI, if there is only one constructor with parameters, it should be injected automatically without an explicit @Inject.
private final OrderRepository orders; // OrderRepository is a CDI bean

public class OrderService(OrderRepository orders){ //OrderRepository should be injected automatically here.
    this.orders = orders;
}

Similarly the methods of a component should be handled automatically.

Similarly the methods of a component should be handled automatically.

I agree that it makes sense for a bean class with a single constructor. However, I don't think something similar could be implemented for initializer methods. You wouldn't be able to distinguish an initializer method from regular business methods of a bean.

Similarly the methods of a component should be handled automatically.

I agree that it makes sense for a bean class with a single constructor. However, I don't think something similar could be implemented for initializer methods. You wouldn't be able to distinguish an initializer method from regular business methods of a bean.

@mkouba Yeah. You are right. Most of my expereince of the method inejction in Spring is @Bean declaration. It seems this is equivalent to @Produces in CDI.
In CDI, it could aleady work as expected.

@mkouba Yeah. You are right. Most of my expereince of the method inejction in Spring is @Bean declaration. It seems this is equivalent to @Produces in CDI.
In CDI, it could aleady work as expected.

Tried with single constructors with args, but when I tested them with Arquillian.
And I got the execption.
Caused by: org.jboss.weld.exceptions.UnproxyableResolutionException: WELD-001435: Normal scoped bean class org.eclipse.cargotracker.domain.model.handling.HandlingEventFactory is not proxyable because it has no no-args constructor - Managed Bean [class org.eclipse.cargotracker.domain.model.handling.HandlingEventFactory] with qualifiers [@Any @Default].
	at org.jboss.weld.bean.proxy.DefaultProxyInstantiator.validateNoargConstructor(DefaultProxyInstantiator.java:50)
	at org.jboss.weld.util.Proxies.getUnproxyableClassException(Proxies.java:228)
	at org.jboss.weld.util.Proxies.getUnproxyableTypeException(Proxies.java:178)
	at org.jboss.weld.bootstrap.Validator.validateInjectionPointForDeploymentProblems(Validator.java:397)

Currently a non-args constructor is requried to generate proxy?

Tried with single constructors with args, but when I tested them with Arquillian.
And I got the execption.
Caused by: org.jboss.weld.exceptions.UnproxyableResolutionException: WELD-001435: Normal scoped bean class org.eclipse.cargotracker.domain.model.handling.HandlingEventFactory is not proxyable because it has no no-args constructor - Managed Bean [class org.eclipse.cargotracker.domain.model.handling.HandlingEventFactory] with qualifiers [@Any @Default].
	at org.jboss.weld.bean.proxy.DefaultProxyInstantiator.validateNoargConstructor(DefaultProxyInstantiator.java:50)
	at org.jboss.weld.util.Proxies.getUnproxyableClassException(Proxies.java:228)
	at org.jboss.weld.util.Proxies.getUnproxyableTypeException(Proxies.java:178)
	at org.jboss.weld.bootstrap.Validator.validateInjectionPointForDeploymentProblems(Validator.java:397)

Currently a non-args constructor is requried to generate proxy?

Tried with single constructors with args(of course I added @Inject on the constructor), but when I tested them with Arquillian.
And I got the execption.
Caused by: org.jboss.weld.exceptions.UnproxyableResolutionException: WELD-001435: Normal scoped bean class org.eclipse.cargotracker.domain.model.handling.HandlingEventFactory is not proxyable because it has no no-args constructor - Managed Bean [class org.eclipse.cargotracker.domain.model.handling.HandlingEventFactory] with qualifiers [@Any @Default].
	at org.jboss.weld.bean.proxy.DefaultProxyInstantiator.validateNoargConstructor(DefaultProxyInstantiator.java:50)
	at org.jboss.weld.util.Proxies.getUnproxyableClassException(Proxies.java:228)
	at org.jboss.weld.util.Proxies.getUnproxyableTypeException(Proxies.java:178)
	at org.jboss.weld.bootstrap.Validator.validateInjectionPointForDeploymentProblems(Validator.java:397)

Currently a non-args constructor is requried to generate proxy?

Yes, normal scoped and intercepted beans must be proxyable, i.e. also have a no-args constructor, so that CDI containers can leverage subclassing to create proxies and intercepted subclasses.
FYI Quarkus provides Simplified Constructor Injection, basically a no-args constructor is added automatically in the bytecode (if missing).

Tried with single constructors with args(of course I added @Inject on the constructor), but when I tested them with Arquillian.
And I got the execption.
Caused by: org.jboss.weld.exceptions.UnproxyableResolutionException: WELD-001435: Normal scoped bean class org.eclipse.cargotracker.domain.model.handling.HandlingEventFactory is not proxyable because it has no no-args constructor - Managed Bean [class org.eclipse.cargotracker.domain.model.handling.HandlingEventFactory] with qualifiers [@Any @Default].
	at org.jboss.weld.bean.proxy.DefaultProxyInstantiator.validateNoargConstructor(DefaultProxyInstantiator.java:50)
	at org.jboss.weld.util.Proxies.getUnproxyableClassException(Proxies.java:228)
	at org.jboss.weld.util.Proxies.getUnproxyableTypeException(Proxies.java:178)
	at org.jboss.weld.bootstrap.Validator.validateInjectionPointForDeploymentProblems(Validator.java:397)

Currently a non-args constructor is requried to generate proxy?

Yes, normal scoped and intercepted beans must be proxyable, i.e. also have a no-args constructor, so that CDI containers can leverage subclassing to create proxies and intercepted subclasses.
FYI Quarkus provides Simplified Constructor Injection, basically a no-args constructor is added automatically in the bytecode (if missing).

Martin is correct.
I would just add that the two concepts - (1)constructor injection simplification and (2)proxyability requirement - are two different, disparate things.
The former(1) can be leveraged for non-proxied beans as well meaning you could have dependent or singleton bean that only declares singular parameterized constructor and doesn't require annotation. Obviously, with just the proposed change, you'd run into problems with proxied beans as those require dual constructors and you're back to needing @Inject annotation on the parameterized one so that CDI can tell which one it should use.
The latter(2) is a requirement so that the proxy class can be safely constructed without needing any kind of state. As for the optimalization Quarkus does, I am not sure it's as easily doable for runtime implementations (Quarkus is build-time and as such can alter the classes before loading them). I'd need to do some digging to find out.

Martin is correct.
I would just add that the two concepts - (1)constructor injection simplification and (2)proxyability requirement - are two different, disparate things.
The former(1) can be leveraged for non-proxied beans as well meaning you could have dependent or singleton bean that only declares singular parameterized constructor and doesn't require annotation. Obviously, with just the proposed change, you'd run into problems with proxied beans as those require dual constructors and you're back to needing @Inject annotation on the parameterized one so that CDI can tell which one it should use.
The latter(2) is a requirement so that the proxy class can be safely constructed without needing any kind of state. As for the optimalization Quarkus does, I am not sure it's as easily doable for runtime implementations (Quarkus is build-time and as such can alter the classes before loading them). I'd need to do some digging to find out.

How Micronaut and Quarkus handle it correctly? And in the latest CDI lite, there is a Micronaut implementation.

Micronaut uses a different approach of generating byte code in the same package as the class therefore it is able to invoke the constructor of protected, package protected and public constructors directly without the hacks mentions by @JHahnHRO
Micronaut doesn't support private constructors.
To my understanding Quarkus makes this work by transforming the byte code during the build enhancement phase and altering modifiers to make say a package private or protected constructor public even if it is not declared public. Anyone is free to correct my understanding of this approach.

Quarkus can do this via bytecode transformation. Because it has a build time phase first, it can enrich those classes, generate missing constructors etc.
But you simply cannot apply this to the specification as such, especially not for any implementation that doesn't leverage build time phase.

yeah like I said I am not the expert on the Quarkus side of things

CDI Lite still requires the bean constructor to be annotated @Inject (unless it's a zero-parameter constructor), and it still requires normal-scoped beans to always have a zero-parameter constructor.
Quarkus does 2 things that are outside of the CDI specification:

If the bean class has a single constructor, it is assumed to be the bean constructor.
If the bean class is normal-scoped and doesn't have a zero-parameter constructor, Quarkus transforms the bytecode of the class to add the zero-parameter constructor. (There are certain cases when this is not possible.) This conceptually happens after the item 1 above, so the newly introduced zero-parameter constructor doesn't affect the "discovery" of the bean constructor.

It is entirely unreasonable to expect that all CDI implementations will want / be able to do what Quarkus does in item 2. Therefore, the CDI specification can't really "simplify" the lookup of the bean constructor by saying "if there's only one constructor, then ...", because normal-scoped beans will only have one constructor if it's the zero-parameter constructor.
My opinion is that explicit is always better than implicit, so I personally don't really like the "simplification" Quarkus does and I still annotate my bean constructors with @Inject.
(Fun fact: there's one special case. If the desired bean constructor is the zero-parameter constructor, it doesn't have to be annotated @Inject. In other words, if there's multiple constructors and none of them is annotated @Inject, then the zero-parameter constructor is selected. But that's been like that since CDI 1.0.)

With the above conversation ruling out the spec ability to eliminate the need for no-arg constructor, can we close this issue @hantsy?

Ok, thanks for the discussion.

@manovotn But I remember CDI lite add build-time dependency injection, like the current Micronaut and Quarkus, if possible adding automatic constructor inject in CDI lite.

CDI Lite does not add build-time DI. It allows (but doesn't require) build-time implementations of (a subset of) CDI.

Actually I realize this is perhaps what you had in mind, so one more clarification.
CDI Lite can't require build-time implementations to work differently from runtime implementations. Code that works with build-time implementations of CDI Lite must work with runtime implementations of CDI Lite, et vice versa.
Further, CDI Lite can't even require bytecode manipulation. I'm no expert on Micronaut, but they have very different constraints when it comes to build-time manipulation of existing bytecode than Quarkus.


[BUG]: timed out when using 64 GPUs.

🐛 Describe the bug
I am experimenting gemini, the code runs fine when using only 16 GPUs or less on a single machine.  But if I use 64 GPUs, it errors with timed out.
This is the error:
Traceback (most recent call last):
File "train.py", line 209, in
main()
File "train.py", line 169, in main
colossalai.launch_from_torch(config=args.gpc_config)
File "/data/miniconda3/envs/env-3.8.8/lib/python3.8/site-packages/colossalai/initialize.py", line 220, in launch_from_torch
launch(config=config,
File "/data/miniconda3/envs/env-3.8.8/lib/python3.8/site-packages/colossalai/initialize.py", line 100, in launch
gpc.init_global_dist(rank, world_size, backend, host, port)
File "/data/miniconda3/envs/env-3.8.8/lib/python3.8/site-packages/colossalai/context/parallel_context.py", line 378, in init_global_dist
cpu_group = dist.new_group(ranks, backend='gloo') if dist.get_backend() != 'gloo' else None
File "/data/miniconda3/envs/env-3.8.8/lib/python3.8/site-packages/torch/distributed/distributed_c10d.py", line 2974, in new_group
pg = _new_process_group_helper(
File "/data/miniconda3/envs/env-3.8.8/lib/python3.8/site-packages/torch/distributed/distributed_c10d.py", line 703, in _new_process_group_helper
pg = ProcessGroupGloo(prefix_store, rank, world_size, timeout=timeout)
RuntimeError: Connection timed out
/data/miniconda3/envs/env-3.8.8/lib/python3.8/site-packages/torch/distributed/launch.py:178: FutureWarning: The module torch.distributed.launch is deprecated
and will be removed in future. Use torchrun.
Note that --use_env is set by default in torchrun.
If your script expects --local_rank argument to be set, please
change it to read from os.environ['LOCAL_RANK'] instead. See
https://pytorch.org/docs/stable/distributed.html#launch-utility for
further instructions
warnings.warn(
ERROR:torch.distributed.elastic.multiprocessing.api:failed (exitcode: 1) local_rank: 0 (pid: 6452) of binary: /data/miniconda3/envs/env-3.8.8/bin/python
ERROR:torch.distributed.elastic.agent.server.api:Error waiting on exit barrier. Elapsed:<PHONE_NUMBER>5962524 seconds
Traceback (most recent call last):
File "/data/miniconda3/envs/env-3.8.8/lib/python3.8/site-packages/torch/distributed/elastic/agent/server/api.py", line 906, in _exit_barrier
store_util.barrier(
File "/data/miniconda3/envs/env-3.8.8/lib/python3.8/site-packages/torch/distributed/elastic/utils/store.py", line 78, in barrier
synchronize(store, data, rank, world_size, key_prefix, barrier_timeout)
File "/data/miniconda3/envs/env-3.8.8/lib/python3.8/site-packages/torch/distributed/elastic/utils/store.py", line 64, in synchronize
agent_data = get_all(store, rank, key_prefix, world_size)
File "/data/miniconda3/envs/env-3.8.8/lib/python3.8/site-packages/torch/distributed/elastic/utils/store.py", line 34, in get_all
data = store.get(f"{prefix}{idx}")
RuntimeError: Socket Timeout
Traceback (most recent call last):
File "/data/miniconda3/envs/env-3.8.8/lib/python3.8/runpy.py", line 194, in _run_module_as_main
return _run_code(code, main_globals, None,
File "/data/miniconda3/envs/env-3.8.8/lib/python3.8/runpy.py", line 87, in _run_code
exec(code, run_globals)
File "/data/miniconda3/envs/env-3.8.8/lib/python3.8/site-packages/torch/distributed/launch.py", line 193, in
main()
File "/data/miniconda3/envs/env-3.8.8/lib/python3.8/site-packages/torch/distributed/launch.py", line 189, in main
launch(args)
File "/data/miniconda3/envs/env-3.8.8/lib/python3.8/site-packages/torch/distributed/launch.py", line 174, in launch
run(args)
File "/data/miniconda3/envs/env-3.8.8/lib/python3.8/site-packages/torch/distributed/run.py", line 752, in run
elastic_launch(
File "/data/miniconda3/envs/env-3.8.8/lib/python3.8/site-packages/torch/distributed/launcher/api.py", line 131, in call
return launch_agent(self._config, self._entrypoint, list(args))
File "/data/miniconda3/envs/env-3.8.8/lib/python3.8/site-packages/torch/distributed/launcher/api.py", line 245, in launch_agent
raise ChildFailedError(
torch.distributed.elastic.multiprocessing.errors.ChildFailedError:
============================================================
train.py FAILED
Failures:
<NO_OTHER_FAILURES>
Root Cause (first observed failure):
[0]:
time      : 2023-01-19_02:38:07
host      : ee39c596-a0e2-439b-969a-c3cd3b647981
rank      : 28 (local_rank: 0)
exitcode  : 1 (pid: 6452)
error_file: <N/A>
traceback : To enable traceback see: https://pytorch.org/docs/stable/elastic/errors.html
Environment
No response

Hi. Are you using an example code? or you are trying to run your own project. If it's the later case, could you please provide more code, such as launch code.

@gouchangjiang
I use this script https://github.com/hpcaitech/ColossalAI/blob/main/examples/language/gpt/gemini/run_gemini.sh with my own DataLoader.
the gpc config is:
BATCH_SIZE = 4
WARMUP_STEPS = 1000
TOTAL_STEPS = 2e+8
SEQ_LEN = 1024
HIDDEN_SIZE = 5120
VOCAB_SIZE = 35693
NUM_LAYERS = 40
NUM_ATTENTION_HEADS = 32

As far as I know, this script is for running Gemini on a node, that's what '--standalone' means. Did you modify it to adapt to multi-node?

Hi, may I know your start command?

met same issue when run  examples/language/gpt/gemini/run_gemini.sh ,   have you solved this ? @bestbzw

We have updated a lot. This issue was closed due to inactivity. If you have similar bugs, please open a new issue. Thanks.


Incorrect version in maven pom

When trying to import ap-loader into gradle project
implementation("me.bechberger:ap-loader:2.9-all")

I'm getting
Execution failed for task ':project:compileKotlin'.
> Error while evaluating property 'filteredArgumentsMap' of task ':project:compileKotlin'.
   > Could not resolve all files for configuration ':project:compileClasspath'.
      > Could not resolve me.bechberger:ap-loader:2.9-all.
        Required by:
            project :project
         > Could not resolve me.bechberger:ap-loader:2.9-all.
            > inconsistent module metadata found. Descriptor: me.bechberger:ap-loader:2.8.3-all-SNAPSHOT Errors: bad version: expected='2.9-all' found='2.8.3-all-SNAPSHOT'

which seems to be because the pom has version 2.8.3-all-SNAPSHOT
https://repo1.maven.org/maven2/me/bechberger/ap-loader/2.9-all/ap-loader-2.9-all.pom

Thanks for your bug report, I have a vague idea of how this came to be. I'll try to publish an updated version next week. You could use the snapshot version of 2.8.3 till then.

I fixed the issue, please try using ap-loader again tomorrow, after the change is propagated to maven central.
<dependency>
  <groupId>me.bechberger</groupId>
  <artifactId>ap-loader</artifactId>
  <version>2.9-1-all</version>
</dependency>

Hi All! When trying to import ap-loader using the 2.9-1-all  version into gradle project:
implementation("me.bechberger:ap-loader:2.9-1-all")

I'm getting this structure in the jar:

And this using 2.8.3-all-SNAPSHOT version:

this is ok?

This should look different. I'm taking a look at it tomorrow. I'm sorry for the inconvenience.

I'm currently working on the issue, sorry for the delay.
The built JARs themself look right, I'll have to investigate why there are problems publishing it.

I can reproduce the problem: The published JARs differ from the built JARs (which I publish to the GitHub releases page).

I fixed the issue (again), hopefully, it works now. The artifacts are in the snapshot repository and should appear on maven central in the next few hours:
<dependency>
  <groupId>me.bechberger</groupId>
  <artifactId>ap-loader</artifactId>
  <version>2.9-2-all</version>
</dependency>

@dpsoft could you confirm that it is fixed?

Yes, thanks!

Good, then I'll close this issue.


Revendor mruby at<EMAIL_ADDRESS>

<EMAIL_ADDRESS>branched from<EMAIL_ADDRESS>The upstream branch point is labeled with artichoke/mruby@artichoke-mruby-branched-from-upstream.
artichoke/mruby vendored SHA: artichoke/mruby@5aa6da1a30d78640b5775464e221d54c2c54f59c.
artichoke-vendor branched from mruby at SHA: artichoke/mruby@1a9bdfcde5fd7c91e756747ba0565f29385115a7.
Fixes a regression introduced in https://github.com/artichoke/artichoke/pull/936<EMAIL_ADDRESS>where Artichoke's modifications to parse.y for Regexp literals were not compiled into the checked-in generated y.tab.c.
Fixes #989.

spec-runner runs successfully with this PR:
$ bundle exec rake spec
...

Passed 1755, skipped 217, not implemented 14, failed 0 specs.

See also https://github.com/artichoke/artichoke/issues/101 which discusses running the spec-runner in CI.

See also https://github.com/artichoke/artichoke/issues/101 which discusses running the spec-runner in CI.


Compilation errors

Enviroment
OS CentOS 7
uname Linux cf1ab92a0781 5.15.49-linuxkit #1 SMP PREEMPT Tue Sep 13 07:51:32 UTC 2022 x86_64 x86_64 x86_64 GNU/Linux
swift --version
Swift version 5.7.1 (swift-5.7.1-RELEASE)
Target: x86_64-unknown-linux-gnu
Building for debugging...
In file included from /home/admin/SomeTarget/.build/checkouts/swift-nio-ssl/Sources/CNIOBoringSSL/ssl/ssl_x509.cc:141:
In file included from /home/admin/SomeTarget/.build/checkouts/swift-nio-ssl/Sources/CNIOBoringSSL/include/CNIOBoringSSL_ssl.h:147:
In file included from /home/admin/SomeTarget/.build/checkouts/swift-nio-ssl/Sources/CNIOBoringSSL/include/CNIOBoringSSL_bio.h:66:
In file included from /home/admin/SomeTarget/.build/checkouts/swift-nio-ssl/Sources/CNIOBoringSSL/include/CNIOBoringSSL_ex_data.h:114:
/home/admin/SomeTarget/.build/checkouts/swift-nio-ssl/Sources/CNIOBoringSSL/include/CNIOBoringSSL_stack.h:514:32: error: no template named 'enable_if_t' in namespace 'std'; did you mean 'enable_if'?
struct DeleterImpl<Stack, std::enable_if_t<StackTraits::kIsConst>> {
~^~~~~~~
enable_if
/usr/lib/gcc/x86_64-redhat-linux/4.8.5/../../../../include/c++/4.8.5/type_traits:1766:12: note: 'enable_if' declared here
struct enable_if
^

Unfortunately we no longer support Centos7, as it does not ship a new enough version of libstdc++ for boringssl to build. See #373.

thanks， i try to upgrade to centos 8


Fixed Nginx settings

I have a question regarding this: shouldn't the /media/file-path.extension request be served as static files instead of being redirected to /static/templates/index.html? Or am I misunderstanding something?

@serge1peshcoff If you do not need a protection for media files (only authorized user with special  permission are allowed to download mediafiles) you can deliver all files as static files, yes. But by default we use the "protection mode" (delivered via django).

Hint: See the protected_serve. It's like a regular server for staticfiles, but checks, if a user has the permission to see this file.

Ok.


Update API notes for Metal and AVFoundation

…based on feedback from those teams. rdar://problem/27115045&27115392

Before merging this pull request to apple/swift repository:

[ ] Test pull request on Swift continuous integration.

Triggering Swift CI
The swift-ci is triggered by writing a comment on this PR addressed to the GitHub user @swift-ci. Different tests will run depending on the specific comment that you use. The currently available comments are:
Smoke Testing
    Platform     | Comment
    ------------ | -------------
    All supported platforms     | @swift-ci Please smoke test
    All supported platforms     | @swift-ci Please smoke test and merge
    OS X platform               | @swift-ci Please smoke test OS X platform
    Linux platform              | @swift-ci Please smoke test Linux platform

Validation Testing
    Platform     | Comment
    ------------ | -------------
    All supported platforms     | @swift-ci Please test
    All supported platforms     | @swift-ci Please test and merge
    OS X platform               | @swift-ci Please test OS X platform
    OS X platform               | @swift-ci Please benchmark
    Linux platform              | @swift-ci Please test Linux platform

Lint Testing
    Language     | Comment
    ------------ | -------------
    Python       | @swift-ci Please Python lint

Note: Only members of the Apple organization can trigger swift-ci.

@swift-ci Please test OS X platform

@swift-ci Please test OS X platform

Rebased with no content changes, and the previous test passed. Merging.


Initial commit of LOGO.

ok well, there's lots of stuff that should be cleaned up/unified with epic/breeze, but let's not block your progress

Indeed. I'm happy to do some unifying (with your help), but I'd like to get this in so it exists for other use.


CMD+S on tags input in post triggers browser save instead of post.

To Reproduce
Browser: Firefox
Focus on tags input while editing a post and press CMD+S, it will trigger a browser save rather than saving the post which is expected behavior.

Update: The issue exists for all token input fields, including author and tags which blocks all our standard shortcuts on editor.

This issue is also present on the social accounts inputs, so we'll need to test all inputs as part of this issue.

This issue is also present on the social accounts inputs

@matthanley 🤔 Think the issue on social accounts is a different one, where doing CMD+S while staying on input after making changes shows the Save on Admin being run but doesn't save its value in DB.
The issue defined here is on all the token input styles in Admin where CMD+S triggers browser save instead of the Admin save behavior.

Hey @kevinansfield , will really appreciate your 👀 on this next week as I have hit a bit of mental block with my investigation on this.
The problem is for all token input fields like tags or authors in post settings menu, where they are blocking out the keyboard shortcuts and so Cmd/Ctrl+S is triggering browser save window than our save action. I haven't been able to figure out where exactly the shortcuts is being prevented or if its not registered at all, any direction or inputs or if its a quick fix i am just not able to see will be very helpful :)

@rishabhgrg could you please share full details of what debugging you have done so that Kevin can pick up from where you've gotten to rather than having to start from scratch?

Updated the original comment with debugging details.

This is blocked needing some ❤ from @kevinansfield 😄


Support Arc::downcast and Rc::downcast

Arc and Rc supports downcasting as well. Do you plan/want to support this? I looked at implementing this but I think it requires a fair bit of duplication since Arc only works if the trait is Send + Sync but maybe there is a clean way of doing this.
https://doc.rust-lang.org/std/sync/struct.Arc.html#method.downcast
https://doc.rust-lang.org/std/rc/struct.Rc.html#method.downcast

Sure can do, thanks for asking!
It's just that it's in a relatively recent release and thus not strictly backward-compatible. So I'll have to put it behind a feature.
Another alternative that I'd been considering was to bite the bullet, make a 2.0, and support the recently-stabilized Alloc trait also to support nostd use-cases as well. I'd need to read things up a bit. I've got a busy couple days, but I can get to this after.

For the moment I just implemented it manually https://github.com/gluon-lang/gluon/blob/d606094a4aa84ee7d758492fda8d3b4403921bd2/vm/src/macros.rs#L30-L63

Interestingly, I can't figure out a way to define an Arc unless the trait type was defined specifically with trait Trait: 'static + Send + Sync at least, which happens to be the case in yours, for example. I'm trying to figure out the cleanest way to conditionally add the Arc downcast implementation.

Thanks again for the feature request! I just published 1.1.0 with this support and Rc should work out of the box.
To support Arc downcasting:

The trait needs to extend DowncastSync which extends Downcast + Sync + Send.
impl_downcast! needs a starting sync: e.g. impl_downcast!(sync Trait).


I have added a new trend following rule

macd_adx_system in signals.py and
MACDADX_Strategy in allocations.py

This is failing CI. I have raised a PR to this branch including some of the necessary fixes.

@Optimus-Q - this is duplicated by other PRs? If so shall we close the PR?


Proofing metadata handling

Ensure that the editor experience for meta data is good enough(™) with fallbacks and defaults.

@SvSven I believe we have a default meta in place today. don't we?

Not in the query at least https://github.com/equinor/energyvision/blob/main/web/lib/queries/common/seoAndSomeFields.ts

@fernando to check and see if we already have this


No option named --no-codesign

Description
The app builds correctly for android, with flet build apk, but when building for iphone flet build ipa, it fails with error in flutter, no option named --no-codesign.
Describe the results you received:
Error
Describe the results you expected:
Expected: Application package built for iphone.
Additional information you deem important (e.g. issue happens only occasionally):
It only happens with flet build ipa.
Flet version (pip show flet):
Name: flet
Version: 0.18.0
Summary: Flet for Python - easily build interactive multi-platform apps in Python
Home-page:
Author: Appveyor Systems Inc.
Author-email<EMAIL_ADDRESS>License: Apache-2.0
Location: C:\Users\Altaaf\PycharmProjects\TaDo\.env\Lib\site-packages
Requires: cookiecutter, flet-runtime, packaging, qrcode, watchdog, websocket-client, websockets
Required-by:

Operating system:
Windows 10 22H2 Build 19045.3803
Here is the output with -vv option:
Flutter bootstrap directory: C:\Users\Altaaf\AppData\Local\Temp\flet_flutter_build_FpeIaOFGqa
Creating Flutter bootstrap project...OK
Customizing app icons and splash images...OK
Generating app icons...Resolving dependencies in C:\Users\Altaaf\AppData\Local\Temp\flet_flutter_build_FpeIaOFGqa... (5.8s)
Got dependencies in C:\Users\Altaaf\AppData\Local\Temp\flet_flutter_build_FpeIaOFGqa.
Building package executable... (8.8s)
Built flutter_launcher_icons:flutter_launcher_icons.
  ════════════════════════════════════════════
     FLUTTER LAUNCHER ICONS (v0.13.1)
  ════════════════════════════════════════════

• Creating default icons Android
• Overwriting the default Android launcher icon with a new icon
• Overwriting default iOS launcher icon with new icon
Creating Icons for Web...
Creating Icons for Windows...
Creating Icons for MacOS...

✓ Successfully generated launcher icons
OK
Generating splash screens...Building package executable... (8.5s)
Built flutter_native_splash:create.
[iOS] Creating  images
[iOS] Creating dark mode  images
[iOS] Updating ios/Runner/Info.plist for status bar hidden/visible
╔════════════════════════════════════════════════════════════════════════════╗
║                       NEED A GREAT FLUTTER DEVELOPER?                      ║
╠════════════════════════════════════════════════════════════════════════════╣
║                                                                            ║
║   I am available!  Find me at https://www.linkedin.com/in/hansonjon/       ║
║                                                                            ║
╚════════════════════════════════════════════════════════════════════════════╝

✅ Native splash complete.
Now go finish building something awesome! 💪 You rock! 🤘🤩
Like the package? Please give it a 👍 here: https://pub.dev/packages/flutter_native_splash

OK
Packaging Python app...Building package executable... (4.7s)
Built serious_python:main.
Running package command
Creating asset directory: C:\Users\Altaaf\AppData\Local\Temp\flet_flutter_build_FpeIaOFGqa\app
Copying Python app from C:\Users\Altaaf\Documents\TaDo to C:\Users\Altaaf\AppData\Local\Temp\serious_python_temp244884bf
Installing dependencies [flet-embed] with pip command to C:\Users\Altaaf\AppData\Local\Temp\serious_python_temp244884bf\__pypackages__
Extracting Python distributive from C:\Users\Altaaf\AppData\Local\Temp\cpython-3.11.6+20231002-x86_64-pc-windows-msvc-shared-install_only.tar.gz to C:\Users\Altaaf\AppData\Local\Temp\hostpython3.11_d22731a5
Compiling Python sources at C:\Users\Altaaf\AppData\Local\Temp\serious_python_temp244884bf
Delete unnecessary files with extensions: [.py, .c, .h, .typed, .exe, .so, .a, .pdb, .pyd, .dll]
Delete unnecessary files and directories: [__pycache__, bin]
Creating app archive at C:\Users\Altaaf\AppData\Local\Temp\flet_flutter_build_FpeIaOFGqa\app/app.zip from C:\Users\Altaaf\AppData\Local\Temp\serious_python_temp244884bf
Deleting temp directory C:\Users\Altaaf\AppData\Local\Temp\serious_python_temp244884bf
Deleting Python directory C:\Users\Altaaf\AppData\Local\Temp\hostpython3.11_d22731a5
OK
Building .ipa bundle for iOS...['C:\\Flutter\\flutter\\bin\\flutter.BAT', 'build', 'ipa', '--no-codesign', '--build-number', '1', '--build-name', '3.0.0']
Could not find an option named "no-codesign".

Run 'flutter -h' (or 'flutter <command> -h') for available flutter commands and options.
Deleting Flutter bootstrap directory C:\Users\Altaaf\AppData\Local\Temp\flet_flutter_build_FpeIaOFGqa
Error building Flet app - see the log of failed command above.

What Flutter version do you have?

flutter --version:
Flutter 3.16.5 • channel stable • https://github.com/flutter/flutter.git
Framework • revision 78666c8dc5 (3 weeks ago) • 2023-12-19 16:14:14 -0800
Engine • revision 3f3e560236
Tools • Dart 3.2.3 • DevTools 2.28.4

Could not find an option named "no-codesign". worries me (notice no-codesign without --).
But anyway you can't build iOS apps on Windows.

May this is of some help flutter issue ...

Saw that, thanks. I can re-produce the issue when running the command on Windows, but on macOS it works without issues. But as I noted earlier you can build iOS apps on macOS only - check this matrix.
I think, to avoid future confusions we need to add check for OS when a certain flet build command is run.

Okay, thank you

I agree

Closing in favour of https://github.com/flet-dev/flet/issues/2342


Calculating a volume of a custom mesh using mesh.volume() doesn't work properly

Hi, I'm currently trying to build tubes and tubelike meshes, that might branch, etc. (I'm aware that there is a Tube shape in the Vedo library).
I want to cut them and cap them at the places where they have opened up after cutting.
Additionally, I would like to calculate the total volume enclosed by the mesh before and after the procedure.
Here's an example below:
from vedo import *
import math

r = 1
coord_start_z = 0
coord_end_z = 1
angle = 0
number_of_vertices = 520
start_x = 0
start_y = 0
coordinates_all = []

for i in range(0,number_of_vertices):
    angle = (i/number_of_vertices)*2*3.141592653589793
    coord_x = start_x + r * math.cos(angle)
    coord_y = start_y + r * math.sin(angle)

    coordinates_all.append((coord_x,coord_y,coord_start_z))
    coordinates_all.append((coord_x,coord_y,coord_end_z))

faces = []
faces_base_start = [i for i in range(0,number_of_vertices*2) if i%2 == 0]
faces_base_end = [i for i in range(0,number_of_vertices*2) if i%2 != 0]
for i in range(0,number_of_vertices):
        faces_start = []
        if i + 1 == number_of_vertices:
            faces.append((i*2,i*2+1,1,0))
        else:
            faces.append((i*2,i*2+1,i*2+3,i*2+2))

faces.append(tuple(faces_base_start))
faces.append(tuple(faces_base_end))

tube =  Mesh([coordinates_all,faces])
cut_tube = tube.clone().cutWithPlane(origin=(0, 0, 0), normal=(1, 0, 0))
capped_cut_tube = cut_tube.clone().cap()
capped_cut_tube.c('r',alpha=0.5)

print('Volume of the original tube is: ' + str(tube.volume()))
print('Volume of the cut and capped tube is: ' + str(capped_cut_tube.volume()))

show(tube,axes=1,at=0,shape=(2,1))
show(capped_cut_tube,axes=1,at=1,shape=(2,1))

Unfortunately, the volume of the first tube is computed as 0 (it should be around 3.141592) and the second one is incorrectly calculated as well (0.8742, even though the volume is roughly halved by the split).
What could be the issue here?

You need to make the meshes triangulr to compute volumes and areas.
The volume output is pretty strange because a simple example gives the right result:
from vedo import Tube, show
c = Tube([[0,0,0],[0,0,1]], res=36).triangulate().lw(0.1)
print(c.area(),
      c.volume(),
      c.cutWithPlane().cap().volume(),
)
show(c, c.labels('id'),axes=1)

12.526547873840881 3.1256671980047477 1.56283359898723

my guess is that something is going wrong with the face orientations

oh yes, that's why! The way you defined your faces, after triangulate() becomes:

So you have [0,1,2] clockwise, then [1,2,3] anticlockwise ...etc, that's why volume return about 0

This works:
from vedo import Mesh, merge, show
import numpy as np

r = 1
coord_start_z = 0
coord_end_z = 1
angle = 0
number_of_vertices = 20
start_x = 0
start_y = 0
coordinates_all = []

for i in range(0, number_of_vertices):
    angle = (i / number_of_vertices) * 2 * np.pi
    coord_x = start_x + r * np.cos(angle)
    coord_y = start_y + r * np.sin(angle)
    coordinates_all.append((coord_x, coord_y, coord_start_z))
    coordinates_all.append((coord_x, coord_y, coord_end_z))

n = 2*number_of_vertices
faces = [[i, i+1, i+3, i+2] for i in range(0, n-2, 2)]
faces.append([n-2, n-1, 1, 0])

tube = Mesh([coordinates_all, faces]).lw(1).triangulate()

# if you want to cap you need to reverse the face orientations
# cap = tube.cap(returnCap=True).reverse().triangulate()
# tube = merge(tube, cap).clean()

print(tube.area(),
      tube.volume(),
      tube.clone().cutWithPlane().cap().volume(),
      # tube.faces(),
)
show(tube, tube.labels('id'), axes=1)

Thanks!

Hey Marco, I have another, somewhat related question. So I'm building on this example of this "custom" tube that I've made and it was for this reason - I want to create a connected tube that can branch (for example, split a tube into two tubes).
This is useful for neuron representation and computing its volume.
So my question is this: Given the merging of meshes that I've had, how do I remove the interior, so I get a hollow mesh, that's capped in the end? More specifically, how do I remove/cut the "interior" mesh that's created at the overlap of two branching tubes?
`from vedo import Mesh, merge, show
import numpy as np
r = 1
coord_start_z = 0
coord_end_z = 1
angle = 0
number_of_vertices = 30
start_x = 0
start_y = 0
coordinates_all = []
for i in range(0, number_of_vertices):
angle = (i / number_of_vertices) * 2 * np.pi
coord_x = start_x + r * np.cos(angle)
coord_y = start_y + r * np.sin(angle)
coordinates_all.append((coord_x, coord_y, coord_start_z))
coordinates_all.append((coord_x, coord_y, coord_end_z))
n = 2*number_of_vertices
faces = [[i, i+1, i+3, i+2] for i in range(0, n-2, 2)]
faces.append([n-2, n-1, 1, 0])
tube = Mesh([coordinates_all, faces]).lw(1).triangulate()
coord_start_z_branch = 1
coord_end_z_branch = 2
end_x_1 = -1
end_y_1 = -1
end_x_2 = 1
end_y_2 = 1
coordinates_all_1 = []
coordinates_all_2 = []
for i in range(0, number_of_vertices):
angle = (i / number_of_vertices) * 2 * np.pi
coord_x_start_1 = start_x + r * np.cos(angle)
coord_y_start_1 = start_y + r * np.sin(angle)
coord_x_start_2 = start_x + r * np.cos(angle)
coord_y_start_2 = start_y + r * np.sin(angle)
coord_x_end_1 = end_x_1 + r * np.cos(angle)
coord_y_end_1= end_y_1 + r * np.sin(angle)
coord_x_end_2 = end_x_2 + r * np.cos(angle)
coord_y_end_2 = end_y_2 + r * np.sin(angle)
coordinates_all_1.append((coord_x_start_1, coord_y_start_1, coord_start_z_branch))
coordinates_all_1.append((coord_x_end_1, coord_y_end_1, coord_end_z_branch))
coordinates_all_2.append((coord_x_start_2, coord_y_start_2, coord_start_z_branch))
coordinates_all_2.append((coord_x_end_2, coord_y_end_2, coord_end_z_branch))
faces_1 = [[i, i+1, i+3, i+2] for i in range(0, n-2, 2)]
faces_1.append([n-2, n-1, 1, 0])
tube_1 = Mesh([coordinates_all_1, faces_1]).lw(1).triangulate()
faces_2 = [[i, i+1, i+3, i+2] for i in range(0, n-2, 2)]
faces_2.append([n-2, n-1, 1, 0])
tube_2 = Mesh([coordinates_all_2, faces_2]).lw(1).triangulate()
final_tube = merge(tube, tube_1,tube_2).clean().alpha(0.8)
if you want to cap you need to reverse the face orientations
cap = final_tube.cap(returnCap=True).triangulate()
final_tube = merge(final_tube, cap).clean()
#tube_cut = final_tube.clone().cutWithPlane().cap()
print(final_tube.area(),
final_tube.volume(),
final_tube.clone().cutWithPlane().cap().volume())
#tube.faces())
show(final_tube , axes=1,at=0, N=1)`
I hope it's clear what I'm talking about.


Enable auto updates again after restoring RootFS

As the title says, re-enables auto updates if the user wants to restore rootFS. Was helping a user with this issue earlier (they wanted to update but updates were still being blocked - rejailbreaking and restoring rootfs with Disable Auto Updates turned off fixed the issue).
Warning: Untested.

Imo, if restore root-fs is enabled, the toggle for disabling auto-updates should be disabled.
This would be a much cleaner approach to the problem with a single line of code instead of just pasting used code.

@clarityzzz Good idea - done!


Add POST resolution reinstitute endpoint

What kind of change does this PR introduce? (Bug fix, feature, docs update, ...)

This PR adds a feature so that we can combine pause, update, and run into one api: reinstitute. This is useful for the webhook callback action or workflow.
Example of usage of this endpoint with resolver input and condition:

resolver_inputs:
- name: callback_state
  description: callback state
  default: pending

steps:
  send_http:
    action:
      type: http
      configuration:
        url: xxx
        method: xxx
        body: xxx
        # This example is using headers, you can also use path parameter or body.
        # Depends on the remote callback pattern, we just need to tell them how to send the callback to utask
        # Notice that we need .task.resolution_id, which is also added in this PR
        # Remote server is likely to send request like
        #     curl -H 'Content-Type: application/json' -d '{"resolver_input": {"callback_state": "done"}}' 'http://utask:8081/resolution/{{.task.resolution_id}}/reinstitute'
        headers:
        - name: x-callback-url
          value: 'http://utask:8081/resolution/{{.task.resolution_id}}/reinstitute'

  wait_for_callback:
    action:
      type: echo
      configuration:
        output:
          state: '{{.resolver_input.callback_state}}'
    conditions:
    - type: check
      if:
      - value: '{{.resolver_input.callback_state}}'
        operator: NE
        expected: 'done'
      then:
        this: TO_RETRY
      message: 'pending and waiting for callback'

What is the current behavior? (You can also link to an open issue here)

Currently we need to send 3 APIs
Currently resolution_id is not available in the values

What is the new behavior (if this is a feature change)?

Added new /resolution/:resolution_id/reinstitute api
Added resolution_id in the templating value context

Does this PR introduce a breaking change? (What changes might users need to make in their application due to this PR?)
No. See unit tests.

Other information:

Interesting idea.
I'm not sure it's viable from a security standpoint though?
If you check the API RBAC you'll see that the resolution update action is reserved to administrator users, for one very good reason: updating the resolution allows you to change anything (necessary sometime to fix stuck tasks, edge cases, etc. and let them finish).
As such, you can change the destination of a call and leak credentials, change the order of steps, remove critical consistency check steps, etc.. all of which corrupt the task's integrity and the instance's security.
This doesnt seem desirable for a callback process; what do you think ?

Thanks for the init plugin fix from https://github.com/ovh/utask/pull/152, I think I can add webhooks now from an init plugin. I moved the resolution_id to a new PR https://github.com/ovh/utask/pull/154.
So going to close this PR.


WIP: Add ability to select database version

With this PR we can finally select a database version when creating a database. This still needs tests before merging.

@sandersonet @gib I added tests, as well as adding the version selector to the welcome page. Would this be good to merge once the backend support is shipped?

@blakepettersson :+1: Looks great, good job!


Errors/warnings when saving open_dataset() to variable in R

Hello,
When saving the result from open_dataset() to a variable, I get various sporadic warning and error messages throughout the code that is executed afterwards. It stops once I remove the variable.
The warnings/errors vary, but here some examples:
Error: Invalid <Schema>, external pointer to null

Warning message:
Number of rows unknown; returning NA

Error: IOError: Failed to open local file 'xxxx'. Detail: [Windows error 3] The system cannot find the path specified.

Tested on following:
Ubuntu 20.04.2 LTS - R 3.6.3
Windows 10 - R 4.1.0.
Using arrow_4.0.1.
MWE:
library(arrow)
library(dplyr)

dir <- tempdir()

df <- mtcars

arrow::write_dataset(df, dir)

# Directly using the object returned by open_dataset gives no messages
result <- arrow::open_dataset(dir) %>%
    collect()
1+1

# Leaving dataset open causes messages
result <- arrow::open_dataset(dir)

1+1
1+2
1+3

remove(result)
# No messages anymore

unlink(dir, recursive = TRUE)

Thanks in advance for your feedback and for maintaining such a great package.

Hi @JasperSch, thanks for reporting this and for providing a minimal working example!
Just wanting to check - in the actual code you run, are you using a temporary directory?  And if not, does the directory you're using just contain parquet file or anything else?

Hi @thisisnic, it is indeed a completely empty temporary directory.
In the meantime I found out that running the code straight from the terminal seems to work.
The problem very likely is caused by some of console settings in my IDE. I've notified the developers about this.
I'll close the issue here since I don't think there is something to solve on your side.
In case I find out something useful, I'll drop an extra comment here later on.
Thank you for your time.

One more thing to note @JasperSch, though I'm not sure if it will be relevant to your particular case or not - the way the temporary directory has been set up in the example above using tempdir() actually gives you a session-specific temporary directory which may already have items in it, and so the call to open_dataset() will raise an error if these other files are there.
If instead, you create a temporary directory like so:
tf <- tempfile()
dir.create(tf)

you'll then end up with a completely empty temporary directory.  It may not be relevant here, but highlighting it just in case.

Thanks @thisisnic. I was aware of this and can confirm the problem remains in an empty directory. But it's indeed a pitfall in the MWE. I edited it to include unlink to clear out the folder first.


systemctl not found

Using the Docker Quick Start Terminal and docker-machine v0.7.0 I created a default image docker-machine vm using the azure driver
docker-machine create --driver azure --azure-subscription-id XXXX-XXXX-XX-XXX-XXXX --azure-location westeurope --azure-resource-group XXXXX etldockermachine

I then add it
docker-machine env etldockermachine
 eval $("C:\Program Files\Docker Toolbox\docker-machine.exe" env etldockermachine)

And SSH into it
docker-machine ssh

Once in, I try to run
systemctl
## -sh: systemctl: not found

On the basis that the default machine is a 15.10 according to the docs so it should be using systemd
Am I doing something daft or is this a bug? I'm trying to follow the install instructions for the azure file storage plugin and not having any joy as a consequence of this issue

@stephlocke I believe you opened the issue to the wrong repository:  https://github.com/docker/machine/issues 😄

Cheers


webconsole: fix baremetal ipmitool sol payload active on another session

这个 PR 实现什么功能/修复什么问题:
是否需要 backport 到之前的 release 分支:

release/2.10

/area webconsole
/cc @swordqiu

Codecov Report

Merging #3528 into master will decrease coverage by <.01%.
The diff coverage is 0%.

@@            Coverage Diff            @@
##           master   #3528      +/-   ##
=========================================
- Coverage    6.98%   6.97%   -0.01%
=========================================
  Files         498     498
  Lines       83226   83218       -8
=========================================
- Hits         5810    5808       -2
+ Misses      76922   76915       -7
- Partials      494     495       +1

Flag
Coverage Δ

#aFlag
6.97% <0%> (-0.01%)
:arrow_down:

Impacted Files
Coverage Δ

pkg/webconsole/command/ipmi_command.go
0% <0%> (ø)
:arrow_up:

pkg/appsrv/response.go
66.15% <0%> (-3.08%)
:arrow_down:

pkg/compute/models/guests.go
0.6% <0%> (ø)
:arrow_up:

pkg/compute/models/purge.go
0% <0%> (ø)
:arrow_up:

pkg/compute/models/disks.go
0.63% <0%> (ø)
:arrow_up:

pkg/compute/models/dbinstances.go
1.09% <0%> (ø)
:arrow_up:

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 006a954...534d104. Read the comment docs.

/lgtm

/approve


Add option to add a group image for the elections

(cut from the linked issue)
TODOs

[x] Add file loader in setup page
[x] Add previewer widget to setup page next to the loader

[x] Add ability to remove the selected file

[x] Store Base64 image file in data variable
[x] Make the picture show in Voting page
[x] Make the picture show in Results pages

Closes #60

I also added the image in the pre-voting page, showing that the loading worked as soon as the page changed.


Stricter checks for openScadFunction

Right now it's a weak substring check. Could be more precise than this.

Closed as duplicate of #11.


Generator - not full install

Packet file stopped on extract:es5-ext

Can you provide a little more detail?


WIP: Add java

Beacon-fuzz/cpp side for implementing #16

Merged so I can include it in the v0.11.1 update.


Issue/94/pzflow estimator addresses #94

This PR adds a basic pzflow based estimator to RAIL, and it seems to work well.  The only remaining to-do item is to add proper non-detection marginalization, this current implementation simply replaces training and test non-detects with a 1 sigma error limit for the magnitude and 0.75257 for the magnitude error.  Results look very good for my usual test data sets, with PZFlowPDF performing similar to, or better, than FlexZBoost.
I have not tested on a GPU machine, or at NERSC, I will do that now, but I don't foresee any differences from my usual setup.
One issue: the results on the very small dataset run in the tests differ between python3.7 and python3.8, so I have commented out the assert np.isclose( [expected results], [calculated results]) test that I have for the other estimators.  There may be a seed not being set somewhere, or there may be a small difference in some jax library or something between python 3.7 and python 3.8.  Something to look in to for sure.

Oh, also: I had an exception from Jax from pzflow (I think it was the jax version of np.delete not being included) before I updated to a newer version of Jax.  So, pzflow may need a minimum jax version in the setup.py.

The code coverage reminded me that I forgot to add a test for the error marginalization option that I just added.  I just added the test, however, there is now a failure because I run a test that computes the mode values after an initial run, then re-run the estimation using the saved to file inform stage and compare the mode values to the initial mode values.  Again, there must be a seed or something different, as the mode values on the second run through do not agree with the first run.  Any ideas on how to make this repeatable, @jfcrenshaw ?

Re: the reproducibility problems, do you know if this only a problem when computing photo-z's with error marginalization? If so, it's because you need to add seed=... to the following call:
https://github.com/LSSTDESC/RAIL/blob/9c04c22b4055056efc4dcb70ecedcc76ea3bc42a/rail/estimation/algos/pzflow.py#L215-L217

I believe it occurs in the test with no error marginalization as well, though I think I'm also missing a seed argument there (i.e. I did not realize that posterior took a seed argument).  Let me try adding a seed in both cases and see if that resolves the problem.

I believe it occurs in the test with no error marginalization as well, though I think I'm also missing a seed argument there (i.e. I did not realize that posterior took a seed argument). Let me try adding a seed in both cases and see if that resolves the problem.

Well the posterior method doesn't use the seed argument unless you are marginalizing errors

oh, hmm, I just pushed a change where I added seed to both. We'll see if it works.  Actually, hmm, we may need to add zb_expected to the pytest decorator with different values if they change from the mode values without the error marginalization.

It looks like the mode estimates are bouncing around a little bit when I re-run pytest on my local machine both with and without the error marginalization.  Can you run the tests and see if you see the same stochasticity?

 But I did just run this test on my computer:
import numpy as np
from pzflow import Flow
from pzflow.bijectors import RollingSplineCoupling

grid = np.linspace(-2, 2, 10)

flow1 = Flow(["x", "y"], RollingSplineCoupling(2))
s1 = flow1.sample(10, seed=0)
p1 = flow1.posterior(s1, "x", grid)
flow1.save("test.pkl")

flow2 = Flow(file="test.pkl")
s2 = flow2.sample(10, seed=0)
p2 = flow2.posterior(s2, "x", grid)

assert s1.equals(s2)
assert np.allclose(p1, p2)

and it passed, so at the very least I think it's an error in the estimator and/or test and not in pzflow itself

I do run inform in the test, so there is a flow.train in the test.  My guess is that the differences are arising as the loss is minimized using the training data.

Actually got a chance to look at this again this morning. It looks like you fixed the issue?
Also re: speeding up the test, I thought it was probably slow because pzflow does a lot of just-in-time (jit) compilation. That speeds up training, but adds overhead time upfront. Since this is such a small training set with so few epochs, I thought disabling jit would speed it up. I tried adding
with jax.disable_jit():
    pz_dict, rerun_pz_dict = one_algo(pz_algo, config_dict)

but I think this actually made it slower.
Unfortunately I think speeding up these tests would require some code optimization for pzflow. I have already been thinking about doing some refactoring and optimization for pzflow, but it's not high on my priority list at the moment.
But otherwise I think this looks good. I'll go ahead and approve it. Let me know if there's anything else you want me to take a look at before we merge it.

I didn't "fix" it per se, but just increased atop on the np.isclose test.  But, I think I'm ok with a small jitter in the mode value due to slightly different loss minimization setups for python 3.7 vs 3.8.  So, I'm going to add a little explanation of the config params in the rail/estimation/algos/README.md, then I'll merge this in.


Add a few badges to the README

This adds badges for npm version, npm install size, and a realtime gzip size.

I also updated the travis badge to use badgen.net which happens to be very fast compared to other badges.

These are some nice badges @styfle :+1: I like them


Reorganize DBSCAN location and add unit testing

Please make reviewing this a priority, it is holding several future PRs (merging FDBSCAN-Dense and DBSCAN*).

This PR does not build
/var/jenkins/workspace/ArborX_PR-503/test_install/examples/dbscan/dbscan.cpp:13:10: fatal error: 'ArborX_DBSCANVerification.hpp' file not found

#include <ArborX_DBSCANVerification.hpp>

         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

This PR does not build

@Rombur Thanks. Took me a while to realize that the thing that fails is post-installation build, not the build itself.
I put in the file back in examples, but now test has to reach out to it. Don't particularly like this arrangement, but can't think of a better way.

The PR does not build with CUDA Clang. The compiler chokes on the new test.

The PR does not build with CUDA Clang. The compiler chokes on the new test.

I noticed that too, but so far have no clue as to how to fix that.

Is it because you didn't define #define BOOST_TEST_MODULE  (see here) or BOOST_AUTO_TEST_SUITE (see here). Not sure that's the problem since the other builds work but the macros definition in boost is a mess because each compiler does something different.

Is it because you didn't define #define BOOST_TEST_MODULE  (see here) or BOOST_AUTO_TEST_SUITE (see here). Not sure that's the problem since the other builds work but the macros definition in boost is a mess because each compiler does something different.

I guess not, it has the same failure even with BOOST_AUTO_TEST_SUITE defined.

#include "BoostTest_CUDA_clang_workarounds.hpp"

@dalg24 Thanks! That fixed it.

retest this please

Does running "retest this please" not trigger tests if the last commit has "[skip ci]"?
In any case, this passes all tests, and the last commit should have fixed the warning, so the PR may be merged as is as soon as someone approves it.


Table columns are not aligned with header when scrollbar appears

Describe the bug
Content columns are not vertically aligned with headers when there is a scrollbar. Without the scrollbar, they looks OK.
To Reproduce
Reduce the height of the application until the scrollbar appears
Expected behavior
Content columns should be aligned vertically with headers.
Desktop (please complete the following information):

OS: Windows 10
Browser [e.g. safari]
Version: 22H2

Screenshots

Before scrollbar:

After scrollbar appears:

Won't fix as v1.4 does not allow UI tweaks


[BUG] pandas incompatibility 2.0.3

File ~/miniconda3/envs/env/lib/python3.11/site-packages/pytorch_forecasting/data/timeseries.py:490, in TimeSeriesDataSet.init..(x)
486 # filter data
487 if min_prediction_idx is not None:
488     # filtering for min_prediction_idx will be done on subsequence level ensuring
489     # minimal decoder index is always >= min_prediction_idx
--> 490     data = data[lambda x: x[self.time_idx] >= self.min_prediction_idx - self.max_encoder_length - self.max_lag]
491 data = data.sort_values(self.group_ids + [self.time_idx])
493 # preprocess data
File ~/miniconda3/envs/env/lib/python3.11/site-packages/pandas/_libs/tslibs/timestamps.pyx:493, in pandas._libs.tslibs.timestamps._Timestamp.sub()
File ~/miniconda3/envs/env/lib/python3.11/site-packages/pandas/_libs/tslibs/timestamps.pyx:461, in pandas._libs.tslibs.timestamps._Timestamp.add()
TypeError: Addition/subtraction of integers and integer-arrays with Timestamp is no longer supported.  Instead of adding/subtracting n, use n * obj.freq
pandas                             2.0.3

Can you kindly provide full code, with all imports, to reproduce the error?


ci: fix gh-pages deployment condition

The documentation branch (gh-pages) was last updated in December 2022: https://github.com/chipsalliance/verible/tree/gh-pages. That's probably because the deployment step in the CI job does depend on matrix.mode == 'compile' but matrix is not defined in the job (https://github.com/chipsalliance/verible/blob/master/.github/workflows/verible-ci.yml#L575-L599), so the condition can never be met.
This PR removes the matrix.mode condition.

@AdamOlech, I think this was an oversight in https://github.com/chipsalliance/verible/commit/cb7ac7dca176e727337f912257362d0c7798c91c.

Codecov Report
Patch and project coverage have no change.

Comparison is base (9f59b14) 93.13% compared to head (4629755) 93.13%.

:exclamation: Your organization is not using the GitHub App Integration. As a result you may experience degraded service beginning May 15th. Please install the Github App Integration for your organization. Read more.
Additional details and impacted files
@@           Coverage Diff           @@
##           master    #1930   +/-   ##
=======================================
  Coverage   93.13%   93.13%
=======================================
  Files         355      355
  Lines       25858    25858
=======================================
  Hits        24084    24084
  Misses       1774     1774

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.


invalid sort parameter value leads to 500 server error

Describe the bug
invalid sort parameter value leads to 500 Sever Error but should be 400 Bad Request
Caused by: java.lang.IllegalArgumentException: Invalid sortValue: -lastUpdated
	at com.ibm.fhir.persistence.HistorySortOrder.of(HistorySortOrder.java:61)
	at com.ibm.fhir.persistence.util.FHIRPersistenceUtil.parseSystemHistoryParameters(FHIRPersistenceUtil.java:186)
	... 65 more

Environment
main
To Reproduce
invoke whole-system history with a bogus sort value; for example
{{base}}/_history?_sort=bogus
Expected behavior
it should be a 400 Bad Request, not a 500.
Additional context
missed this in the description and QA for #2026

verified that this error is now a code  400, also verified other errors with _history are also code 400


Clarify crypto_keylength

crypto_keylength currently says:
The project security mechanisms MUST use default keylengths that meet the NIST minimum requirements at least through the year 2030 (as stated in 2012). These minimum bitlengths are: symmetric key 112, factoring modulus 2048, discrete logarithm key 224, discrete logarithmic group 2048, elliptic curve 224, and hash 224 (password hashing is not covered by this bitlength, more information on password hashing can be found in the crypto_password_storage criterion). See http://www.keylength.com for a comparison of keylength recommendations from various organizations. The software MUST be configurable so that it will reject smaller keylengths. The software MAY allow smaller keylengths in some configurations (ideally it would not, since this allows downgrade attacks, but shorter keylengths are sometimes necessary for interoperability.) [crypto_keylength]
Change "that meet..." to "that at least meet...".  You can, of course, use longer lengths.

Here's the proposed wording:

The project security mechanisms MUST use default keylengths that at least meet the NIST minimum requirements through the year 2030 (as stated in 2012).

Note that this NOT intended to change the criterion - it's intended to simply make the current criterion clearer.

Lgtm
--
Dan Kohn<EMAIL_ADDRESS>Executive Director, Cloud Native Computing Foundation https://cncf.io
tel:+1-415-233-1000

On Jun 8, 2016, at 15:42, David A. Wheeler<EMAIL_ADDRESS>wrote:
Here's the proposed wording:
The project security mechanisms MUST use default keylengths that at least meet the NIST minimum requirements through the year 2030 (as stated in 2012).
Note that this NOT intended to change the criterion - it's intended to simply make the current criterion clearer.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub, or mute the thread.


bump kiss3d and nalgebra to the latest versions

The old kiss3d version in this project is causing this bug: https://github.com/ggez/ggez/issues/843
I bumped kiss3d and nalgebra to the corresponding version, the tests pass, the error reporting in the examples seems to work
The same thing needs to be done to urdf-viz

Merged and released as v0.21.0


[Question] In Demo, what tool for Chinese input?

https://github.com/cdown/clipmenu
Demo

What is the name of the software used for typing Chinese characters?
Thank you

Hi! It's fcitx + sunpinyin. :-)


optimize:use map instead of if else judge for more change in the future

Ⅰ. Describe what this PR did
use two ImmutableMap instead of lots of if else judge, and the code is more readability,more convenient to modify.
Ⅱ. Does this pull request fix one issue?

切换develop分支 以及将map并入构造器   旧pr #3932
Ⅲ. Why don't you add test cases (unit test/integration test)?
Ⅳ. Describe how to verify it
Ⅴ. Special notes for reviews

can the DatabaseTransactionStoreManager be optimize like this?

can the DatabaseTransactionStoreManager be optimize like this?
DataBaseTransactionStoreManager can use one map to solve it

Can you put some change log in change module like other PR?

ok，i finished it

Codecov Report

Merging #3939 (625ef9a) into develop (e2e5fa6) will decrease coverage by 0.09%.
The diff coverage is 0.00%.

@@              Coverage Diff              @@
##             develop    #3939      +/-   ##
=============================================
- Coverage      40.38%   40.28%   -0.10%
  Complexity      3070     3070
=============================================
  Files            685      685
  Lines          23194    23176      -18
  Branches        2869     2815      -54
=============================================
- Hits            9366     9336      -30
+ Misses         12958    12945      -13
- Partials         870      895      +25

Impacted Files
Coverage Δ

...rage/redis/store/RedisTransactionStoreManager.java
0.00% <0.00%> (ø)

...obuf/convertor/BranchRegisterRequestConvertor.java
90.47% <0.00%> (-9.53%)
:arrow_down:

...otobuf/convertor/BranchReportRequestConvertor.java
90.90% <0.00%> (-9.10%)
:arrow_down:

...obuf/convertor/BranchRollbackRequestConvertor.java
92.00% <0.00%> (-8.00%)
:arrow_down:

...otobuf/convertor/GlobalBeginResponseConvertor.java
92.59% <0.00%> (-7.41%)
:arrow_down:

...otobuf/convertor/GlobalCommitRequestConvertor.java
93.75% <0.00%> (-6.25%)
:arrow_down:

...otobuf/convertor/GlobalStatusRequestConvertor.java
93.75% <0.00%> (-6.25%)
:arrow_down:

...obuf/convertor/GlobalRollbackRequestConvertor.java
93.75% <0.00%> (-6.25%)
:arrow_down:

...protobuf/convertor/RegisterTMRequestConvertor.java
94.73% <0.00%> (-5.27%)
:arrow_down:

...protobuf/convertor/RegisterRMRequestConvertor.java
90.47% <0.00%> (-4.77%)
:arrow_down:

... and 29 more


Fix #723 Replace finalize method uses with Cleaner

I split this into two commits, in case it was easier to look at the NativeMap finalize methods separately from the others (they are much more "critical path").

All ITs passed, twice.

As follow-on, NativeMap, NMIterator, and ConcurrentIterator in NativeMap.java could all be made AutoCloseable, and the close method replace the delete methods. The NMSKVIter would still need a Cleaner, to clean up its ConcurrentIterator, though, because SortedKeyValueIterators aren't closeable.


fix: remove daisyUI navbar class to fix scrollbar

Description of the change
Updates PageNav.tsx to not use daisyUI navbar component and instead simply uses flex and justify-between for styling. Removes unnecessary padding.

Related issues: Closes #426

Screenshot(s)
I cannot reproduce the original bug, so if someone could check if this fixes the UI that would be great.

@jtucholski Would you be able to check to see if this fixes the issue on your UI? Not sure who originally made the ticket

I didn't see the issue anymore once you switched the container settings.


Add Emulator Diagnostic Tests

Changes

Extracted emulator diagnostic response code into separate method for tests
Added test_emulator_diagnostic_response_returns_true

Checks for success = true
Checks that value is between 0 and 100

Added test_emulator_diagnostic_response_returns_false

Checks for success = false
Checks that negative_response_code is between 1 and 15

Added test_emulator_diagnostic_response_outside_range

Checks to ensure no diagnostic response was created

Coverage remained the same at ?% when pulling f8521f92fb9105a68128ef8d891b3af5d8c06f85 on add-emulator-diagnostic-tests into 968e2624f4395f928f17721eecbefd84f2b01b04 on next.


Update and simplify the CI workflow

Update to actions/checkout@v3
Switch from actions-rs/toolchain to dtolnay/rust-toolchain
Switch from actions-rs/cargo to plain run
Stop explicitly naming CI steps

bors r+


chore: add akamai property cleanup workflow INTER-407

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


Refactoring FindMeetingQuery

Tried to clean up code in FindMeetingQuery.java.

I know it's a bit late, but generally we use different capitalization standards for functions and variables (maybe Java is diffferent). In C++, we use camel for functions and snake for variables, doesn't need to change here, but a nice subtle variation that makes each easily identifiable.

Java is in fact different; functions and variables are pretty much universally lowerCamelCase.


Latitude Longitude are String

We have Lat-long in our database as String .. Will this make any difference in result of near query ?

It should not make a difference since the near functions call .to_f on the lat and long in the underlaying sql queries.

However it will make a difference if you're trying to query lat/lon columns that contain strings. That probably won't work, since the values are used in mathematical calculations.


Add support for useDefineForClassFields typescript option

I'm trying to use TypeScript, Jest, and MobX together with @swc/jest.
MobX, as part of its installation instructions requires that useDefineForClassFields be set to True for typescript (if typescript is used for compilation), or a similar option for babel (if babel is used for compilation).
This option allows this code to have the property be registered ahead of time, even if it is not assigned a value, which MobX requires in order to be able to observe the property:
class Foo {
  someProp: someType;
}

The ts-jest transformer for Jest obeys the useDefineForClassFields option, but @swc/jest appears not to obey it, and ignores the babel option as well if it's present.
The result is that MobX doesn't work properly with @swc/jest, and requires the workaround of assigning all class fields values upon declaration, like so:
class Foo {
  someProp: someType = someValue;
}

It would be great @swc/jest didn't force this workaround.
Here's a commit in my repo that you can use to check this: https://github.com/phoenixeliot/line-puzzle/commit/2ce4beb27a420ae227dba583b9bde377a631ae92
In particular, setupTests.ts has the MobX recommended check to see if this feature is working, which throws an error when you run jest.
Repro steps:

Clone my repo (git clone git@github.com:phoenixeliot/line-puzzle.git; cd line-puzzle)
Checkout my test commit (git checkout 2ce4beb27a420ae227dba583b9bde377a631ae92)
yarn
yarn run test
Result: The explicit transpiler check in setupTests.ts will throw its error.

Then for comparison, go to jest.config.js and change the commented out lines to:
    // "^.+\\.(t|j)sx?$": ["@swc/jest", { sourceMaps: "inline" }],
    "^.+\\.(t|j)sx?$": ["ts-jest", { sourceMaps: "inline" }],

After this, yarn run test will work corrrectly.

My current solution is to stop SWC from downgrading the code by specifically setting this: (I'm using Node 16.14, it already supports class fields)
        [
            "@swc/jest",
            {
                jsc: {
                    target: "es2022",
                },
            },
        ],

I found that it's already implemented.
jsc.transform.useDefineForClassFields: true will do the trick.

@kdy1 should we add it to documentation?

Yes
2022년 8월 2일 (화) 오후 5:49, Alex Young @.***>님이 작성:

@kdy1 https://github.com/kdy1 should we add it to documentation?
—
Reply to this email directly, view it on GitHub
https://github.com/swc-project/swc/issues/4158#issuecomment-1202201276,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AHELSJ5G3JN5EW4AUEENX4TVXDOITANCNFSM5RTNGWMQ
.
You are receiving this because you were mentioned.Message ID:
@.***>

Can I request that it is also added to the swcrc json schema? Thanks.


Leverage PortIndex for traefik.port instead of actual port definition for Marathon backend

When deploying a service with multiple ports and hostPort: 0, its unclear how I can leverage traefik.port to label which port I want Traefik to balance. Leveraging portIndex would align the functionality with the Marathon Health Checks design: https://mesosphere.github.io/marathon/docs/health-checks.html.

I'm setting traefik.port to be the containerPort I'm using and that works fine with hostPort: 0. But I guess having both couldn't hurt :)

@kels, traefik.port label is currently not used in Traefik with marathon. It works in your case because your app exposes only one port ;)

Fixed by https://github.com/emilevauge/traefik/pull/138


Protects from NPE when no data returned from Vault

Fixes #445.

@spencergibb if you have a quick sec could you take a peak at this?  If not let me know and I will have someone else review.  Thanks!

LGTM :shipit:


add support for image content types

SVG, PNG, and other images to be rendered as  tag.
Since the src attribute drives the image retrieval first, the image would be recognized by content-type from headers and body would be retrieved by JS. To avoid re-reading the image from same URL, it has to be inlined as binary content.
The following image requests could be prevented when headers permit caching. In Second and following instances we could render IMG with src tag instead of fetching the image body. Since embedded SVG image behaves differently than remote, this method is not applicable for SVG images.
Instead of using browser caching via IMG with src attribute, the image could be embedded into web component with reused template. This way even inline image body would be shared across instances. That would require web component per image.
As the optimization techniques have own drawbacks, those have to be controlled by configuration.
Implementation
Shims. The code for each rendering/caching mode would be provided as runtime loaded shim to reduce JS footprint.
For bundle builds the shim could be injected as direct dependency after fetch-element is loaded.
Unified content-type driven rendering shims load and invoking TBD along with image handlers. Current XML, JSON as table, html handlers and renderers should be migrated from inline to shim.

image content type is added. Demo is
<EMAIL_ADDRESS>


Create branch cpp-gui-items (cpp)

This branch will embed all devs related to Graphical User Interface Items.

Done.


Info about max_cpu_proxy value

Hello,
I am doing some testing with the parameter cpu_quota_per_share_in_us and I saw that 8 GB and 16 GB apps are behaving the same in terms of cpu load.
Looking at the CC code, I found the following:
https://github.com/cloudfoundry/cloud_controller_ng/blob/d1e08a2749e5c289890854344487d4680fee85f4/lib/cloud_controller/diego/task_cpu_weight_calculator.rb#L5
this seems to explain the behavior I observed. May I ask what is the rationale behind this value?
And would it be possible to increase it?
Thanks a lot,
Best regards

I increased the value to 32768, and I was able to solve the issue I was facing.
But, as I don't have the big picture here, I don't know what could be the side effects of quadrupling that value.
Any thoughts?

@paolostivanin good find, it does appear as though the app recipe builder is using that [task] cpu weight calculator. I'm not entirely sure why we cap out cpu quotas like that, but perhaps @emalm could provide some historical context?

I believe the intent was that each app instance would be effectively limited to 1024 CPU shares on the Diego cell, regardless of its memory allocation. That decision was made long before garden-runc-release introduced the opt-in behavior to set a hard CPU quota proportional to that CPU shares allocation.
In any case, we're planning on moving forward with the proposal @julz put forth a few months ago at https://docs.google.com/document/d/16TvBsZSInjy7zoboSQWRJo30lmxr07tvd40_GzpfD3I/edit, with the Garden team having some of this work in flight already.
Best,
Eric

Thanks for the info @emalm !!
Closing this issue as there is no cloud_controller action to take until the Garden/Diego work is done.


Create DELETE University end-point

DELETE /classrooms/{school}/{number}

I reopen this issue in order to add its service tests


Consider FromIterator for CompileResult.

In Rust it's handy to be able to .collect() a final Result from an iterator of Results.  It would also be good for CompileResult.
impl<T, V: FromIterator<T>> FromIterator<CompileResult<T>> for CompileResult<V> {
    fn from_iter<I: IntoIterator<Item = CompileResult<T>>>(iter: I) -> Self {
        todo!()
    }
}

The todo!() here needs to gather the results, warnings and errors together into a single CompileResult, collecting all the results into a V.  Then we could e.g. results.iter().collect::<CompileResult<Vec<_>>().
The only issue though is do we stop collecting from the results iterator when it hits its first err, or do we collect all the errors and warnings and return err if any of the results are?

Is this issue still open?


[Android & iOS] Calling window.print() inside an HTML document has no effect

The title says it all. The issue has been brought up multiple times in past (e.g. #2162, #1309, #2764), and all these issues were just closed down by the stupid "Stale issue bot", which just hides the problems under the carpet.
In my current understanding, the window.print() is just not supported by WebView for Android (see this), and it is assumed that WebView consumers should implement it on their own, by injecting their own window.print() function into a page, signalling from it to the native code that a print is needed, then using WebView's createPrintDocumentAdapter() to generated PDF presentation of the page, and then sending the outcome to printer, or saving it to the file system.

PR updated to support window.print() on iOS as well. Perhaps, also works on macOS — haven't tested that yet.

Hi, stupid github-actions-bot, the issue sure is still there, and the only reason there is no activity on this ticket for the last 2 months is that no library maintainer bothered to merge in the PR created two months ago that fixes the issue. Thus, please don't try to sweep the issue under the carpet by closing it.

No, bot, library maintainers still have not bothered to resolve the issue by merging in the PR. In the meantime, my fork of the library has this, and a few other fixes applied — just saying, for anybody struggling with the lack of solid maintenance and development in this upstream version.

@birdofpreyru Hi! Maybe you also should add this window.print method not only for html but for uri (URL) as well? Just as I saw, it works only with html for now.
Thanks!

Hey @Egor-Kozlov, I don't get what do you mean by window.print method not only for uri (URL)? Thinking of URL API, I am not sure I know how is it related to printing?
Also, as of now, I don't have an aspiration to fix / improve all possible aspects of react-native-webview — I patched some stuff which is relevant to my personal projects, but other than that I have to focus my time on other development stuff, which actually pays me back.

@birdofpreyru sure, I understand :)
Below I just described my case and my suggestions:
Just there is a library to print documents which is used for the most part of projects in web and this library is used on the website, where I need to print.
They have a sandbox, where I also tried to call "print window" in webview - but it didn't have affect. As I know, they use window.print method as well, but for some reason it doesn't work with webview (but as I texted, your solution work perfectly with html document).
Therefore, I assume that your solution works with <webview with source={{html: 'somehtml'}}/>, but not with <webview with source={{uri: 'someurl'}}/>.

Therefore, I assume that your solution works with <webview with source={{html: 'somehtml'}}/>, but not with <webview with source={{uri: 'someurl'}}/>.

Agh... I see it now.
Well, my solution relies on this and this to hook to window.print() calls on Android and iOS. It might be such injections do not work when a page is loaded using uri prop; or, I guess, it might be that they only attach the .print() method to the root window in the WebView, and perhaps the page you are looking at uses some iframes that probably get their own window instances. Perhaps you may look into it, and correct these injections, and I believe it will solve the issue for you?


testconsole won't work

I download the latest source code and try to compile it with Microsoft Visual Studio Enterprise 2022,installer and uninstaller works fine,but testconsole.exe works on windows 10 but fail to run on Windows Server 2012 and Server 2016.

I got this error on Windows server 2012
Server 2016 just won't show up the testconsole gui.

That's strange. Is there any detail on the error, such as in the EventViewer? Is the .NET 4 runtime installed? If so, is only the .NET 4 client profile installed, or the full .NET 4.x runtime?
Note that you really only need to install the .NET runtime for the Test Console. The rootkit itself works with whatever ships with the operating system and there is no need to install anything.

Windows Server 2012

And Windows Server 2016 is the same .net framework installed

One important question first: Is the rootkit running properly, though? I'm asking because I never tested on Windows Server.
As for the Test Console. That one requires .NET 4.7. Is this version installed? And is there any chance you could install Visual Studio on Windows Server to actually debug the Test Console to see where the error occurrs?

1.Rootkit works perfectly on both server
2..NET 4.8X is installed but not .NET 4.7(I will try to install .NET 4.7 and test again)

No problem. At least I now know that r77 works on Windows Server ;)


Navigation button tap is delayed on iPad

When tapping the navigation buttons in the Swiper example ("Navigation Buttons") on an iPad the action is delayed. Also double-tapping the navigation buttons on an iPad will trigger a page zoom.
Isn't Swiper using "touchstart" on mobile devices for navigation button events?
In my example I am using ngTouch in an AngularJS application. It will normally avoid the 300ms delay but only for data-ng-click-directives (which Swiper doesn't use). So I would need to use a library like Fastclick if Swiper uses "click" instead of "touchstart". But this seems to be overhead for just two buttons.

Sorry, no chances to include something like Fastclick in Swiper. Swiper doesn't use touchstart instead of click because it will be wrong. Just use custom nav buttons and call slideNext/Prev method within your ng-click

Why would it be wrong to use touchstart for the navigation buttons? IMHO it is not user friendly to have such an delay.
I would use custom nav buttons and call it on ng-click, but this will not disable/enable them if there are not enough items. Do you have a workaround for it?

Why would it be wrong to use touchstart for the navigation buttons?

touchstart is totally not the same as click or tap, there is too many difference
As for disable/enable buttons, again to manually for example in onSlideChangeStart callback, you can detect required position using isEnd and isBeginning properties

This is not very pretty, but it works. Thank you!


Numeric Type in PUSH method

Hello, when entering an numeric type using the PUSH method, the following situation occurs, as shown in the attached image. Can you help me ?tks

Sorry, but I can't reproduce an issue without knowing what you're working with and without code that I can use to reproduce the issue.
You were provided with a template when creating this issue, please use it.

tks @jeromegamez  , follow

Which version of kreait/firebase-php are you using?
latest

Which version of PHP are you using?
7.1

What's the issue?
when entering an numeric type using the PUSH method, the following situation occurs, as shown in the attached image

Code that lead to the issue
https://pastebin.com/c3zsQQ7J

Thanks! Does „latest“ mean „4.15.1“?

@jeromegamez
thats right ! ^4.15.1

Your code says
$array = (
     'cliente' => 'teste',
        'endereco' => 'teste',
        'valor' => 24500
);

instead of
$array = [
    'cliente' => 'teste',
    'endereco' => 'teste',
    'valor' => 24500
];

or
$array = array(
    'cliente' => 'teste',
    'endereco' => 'teste',
    'valor' => 24500
);


(debug) auto-generated routes table

As a developer I want to review / debug the routing structure in a large app with dynamic routing, so I want to automatically generate the effective global routing table in the run time of the app (when running in the dev mode).
Implemented by design in #27 and #51.
DoD:

Vaadin.Router has a getRoutes() method that returns the current routing configuration as a single JSON object.

The common DoD does not apply (because this story does not introduce new code).

Won't fix. router.getRoutes() returns the router config.


How to add Integration and all this sign by keyboard in MathEditor? Please suggest

@pratikgajbhiye222 Did you ever figure this out?

Any updates on this issue? @MCChao211 @pratikgajbhiye222

Any updates here?
@pratikgajbhiye222 @MCChao211


How to apply "format" on a list of strings?

I try to do something like in Python
("db.%s.dump" % n for n in names)

I tried
{{ databases | map("format", "db.%s.dump") }}
{{ "db.%s.dump" | map("format", databases) }}

and a lot more. All I tried failed.
The documentation is of no help :-(

why not {% for n in names %} {{ "db.%s.dump"|format(n) }} {% endfor %}?

@NormanDenayer it's fine unless you want to pass it to another filter in map().

Personally I ended with writing own plugin:
from jinja2.utils import soft_unicode

def format_string(text, fmt, *kw):
    return soft_unicode(fmt).format(text, *kw)

class FilterModule(object):
    def filters(self):
        return dict(format_string=format_string)

Usage:
list_of_names | map('format_string', 'hello {}!')

See https://github.com/pallets/jinja/pull/906#issuecomment-548393215 for why I'm declining this. It also contains a filter that could accomplish this, or you can write a more specific filter as shown above.


Share user's login so that container on non-azure vm can run in the context of the user's environment

Is your feature request related to a problem? Please describe.
Today our team is using KinD cluster on local machine (non-Azure VM) to bootstrap cluster api for azure (capz) worker cluster that runs in Azure and later run our own service cluster on top of that capz cluster.
Since KinD cluster is not in Azure environment, User Managed Identity (MSI) cannot be bound with it. Therefore we have to use alternative identity. User's login identity is an ideal option because we already run az command there on local machine. But this is not supported today.
As cluster api for azure (capz) requires an existing cluster environment to bootstrap the actual worker cluster and KinD is a pretty light weight approach to run on user's local environment (comparing with a full AKS cluster), this should be a very common and high demand feature request.
Describe the solution you'd like
Share the rights from the user's login to container that runs on non-Azure machine so that container can run commands in the context of the user's environment so that local cluster (i.e. KinD) can use user's login to bootstrap capz worker cluster in Azure.
Describe alternatives you've considered
As explained above, an AKS cluster can be such bootstrap cluster, but this is sometimes too heavy and time consuming by comparing with a KinD cluster on local.
Another workaround is to bootstap via a VM in Azure running Docker/KinD inside. But again, it is a waste that to create an Azure VM is only to make User Managed Identity be able to bind with KinD.

Share the rights from the user's login to container that runs on non-Azure machine so that container can run commands in the context of the user's environment so that local cluster (i.e. KinD) can use user's login to bootstrap capz worker cluster in Azure.

@anthonsu Workload identity is based on OIDC federation and with this you don't need the managed identity to be assigned to the VM/VMSS. This means workload identity will work in any cloud or on-premises cluster. Try out the quick start with managed identity to learn more how this can be done.
For CAPZ, the CAPZ project is looking at supporting workload identity with managed identity. xref: https://github.com/kubernetes-sigs/cluster-api-provider-azure/issues/2205. (cc @CecileRobertMichon)

Closing this issue as it's not a feature for workload identity. Feel free to open a new issue if you have any additional questions or feedback.


Rank confusion when using parent/compound nodes

I'm running into odd behavior when the target of an edge is a parent/compound node
http://jsbin.com/ruguca/1/edit?html,output
I took the example and made n16 the parent of n5, and then made the edge go to the parent/compound node.
The result is that the compound node ends us in the same rank as the source, which seems like odd behaviour?

  Compound layouts need different logic than regular layouts.  Unless a layout explicitly mentions compound support, then it won't make special allowances for compound parents.
Use a different layout, don't use compound nodes (especially if they are being used without proper semantic need), or run the layout only on child nodes.

Secondly, as mentioned in the readme, Dagre is a layout from an external lib.  Dagre's docs mention no support for compounds, so there's no way this layout can add support.

Thank you, makes sense.  I appreciate you taking the time to reply and I am very thankful that you have provided this bridge to the dagre library.
I did figure out how to fake it, by creating direct node to node edges and hiding them. For future reference in case anyone else wants to use compound nodes with dagre, here's an example
http://jsbin.com/cipoqes/edit?html,output

If that works for you, that's great.  Unfortunately, a lot of other libs don't have support for compound nodes --- and workarounds like yours work only if you can accommodate the dummy nodes.
Also consider Cola with a specified flow -- which creates tree shapes.  It has support for compound nodes, and it will work with cases where a parent spans more than one depth.  It's not quite as fast as Dagre, because it's a physics layout that can be used on all graph types.


Allow variable number of parameters for math.max and math.min

blocked by https://github.com/yasl-lang/yasl/issues/158

added in v0.6.1


initial support for running tests against dart analyzer in strong mode

These code changes allows to execute tests against dart analyzer in strong mode

LGTM.  Thanks.


Add links to snippets on GitHub

All snippt links are currently leading the the playground. That is nice in theory since you can play with the code, but in reality the playground takes so long to completely load that I rather go to my IDE and open the snippet there directly. The links should point to GitHub by default and have a "run in playground" badge or similar attached instead.

I think this issue is closed now:

As mentioned the issue has been resolved.


Fix harbor endpoint URL in docs

Description of changes: Fixed the endpoint example listed in the harbor docs.

/cherrypick release-0.14


JCL-331: Convenience modules for integrators

While a modular codebase is very useful and flexible, it also makes it harder for someone who is new to the system to know where to begin.
This PR introduces two new artifacts to make this easier:

inrupt-client-all -- an application developer can include this dependency in an application, and all of the recommended runtime libraries will be included.

inrupt-client-minimal -- a library developer can include this dependency in their code. It is just like inrupt-client-all except it does not include the runtime modules.

Some additional conversation about this suggests dropping the inrupt-client-minimal artifact and changing *-all to one of:

inrupt-client-default
inrupt-client-runtime
inrupt-client-libs


⚠ Bofrost.nl has degraded performance

In 11c4b88, Bofrost.nl (https://www.bofrost.nl) experienced degraded performance:

HTTP code: 200
Response time: 875 ms

Resolved: Bofrost.nl performance has improved in e771bbc.


JSIL.Verbatim.Expression doesn't support more than $9

When calling JSIL.Verbatim.Expression, if there are more than 10 parameters, it is not possible to use "$10" because it thinks it is "$1" followed by a "0".

Did you find a workaround or did you close this for some other reason


Reactive form returns errors

I have followed the tutorial for reactive model and have this:
    this.myOptions = [
        { id: 1, name: 'English' },
        { id: 2, name: 'French' },
    ];

    this.form = this.formBuilder.group({
        langs:[1, 2]
    });

And in my html (in pug):
    ss-multiselect-dropdown([options]='myOptions', formControlName='langs')

And get the following error: TypeError: this.validator is not a function
So I've tried:
    this.form = this.formBuilder.group({
        langs:this.formBuilder.array([1, 2])
    });

And get the following error TypeError: control.registerOnChange is not a function.
What am I doing wrong? Is this a bug?
You can see a plunker here

The correct solution is:
this.form = this.formBuilder.group({
    langs:[[1, 2]]
});

Why?
Because the szntax of the formControlName is as follows: ['Initial value, which in this case is an array', validator function].
If you just pass [1, 2] it takes 1 as initial value and the 2 as the validator -> 2 is not a function. An example validator would be Validators.required.