Bug with static members and(?) inlining

Description
I get an runtime crash with the following code which in imo is wrong on the javascript side
Fsharp Code
type A  = { thing: int } with
    static member show x = x.thing

type B  = { label: string } with
    static member show x = x.label

let inline show< ^T when ^T : (static member show : ^T -> String)> (x:^T) : string =
   (^T : (static member show : ^T -> string) (x))

show { label = "Car" } |> ignore

Javascript Code
var A = exports.A = function () {
    function A($arg0) {
        _classCallCheck(this, A);

        this.thing = $arg0;
    }

    _createClass(A, null, [{
        key: "show",
        value: function show(x) {
            return x.thing;
        }
    }]);

    return A;
}();

var B = exports.B = function () {
    function B($arg0) {
        _classCallCheck(this, B);

        this.label = $arg0;
    }

    _createClass(B, null, [{
        key: "show",
        value: function show(x) {
            return x.label;
        }
    }]);

    return B;
}();

new B("Car").show();

Actual behavior
the _createClass function creates instance method and not a static member and it should be called as `B.show(new B("Car"))``
Related information

Operating system Max OSX
Branch Fable 0.3.20
.NET Runtime, CoreCLR or Mono Version 4.4

Seems (^T : (static member show : ^T -> string) (x)) is represented in the AST with a TraitCall that Fable is not resolving properly (because I wasn't sure what it represented). I'll try to ask the F# compiler how these expressions should be dealt with. Thanks for the report!

@alfonsogarciacaro just for clarification: this only happens for static members non static are generated as expected and work as expected


fix: Custom query validation throwing error with sql files ending with semicolon(;)

Closes issue #565

remove semicolon in query string

/gcbrun

Code need to be further adjusted.

Code need to be further adjusted.


pg_stat_statements new version support

Hi All,
I'm getting this when using it with pg_stat_statements:
/var/lib/gems/3.0.0/gems/pgdexter-0.5.5/lib/dexter/indexer.rb:548:in `exec_params': ERROR:  column "total_plan_time" does not exist (PG::UndefinedColumn)
LINE 1: ...ents.dbid WHERE datname = current_database() AND (total_plan...

Any chance to resolve it?

Hi @sokoow, it looks like pg_stat_statements is out-of-date. You can update it with:
ALTER EXTENSION pg_stat_statements UPDATE;


Make image version dynamic

Currently the image version is retrieved from the AppVersion which leads to a coupling to have a helm chart release available. This also prevents that one cannot try not yet released version by referring to a tag/SHA. Therefore it would be great if the chart doesn't only use the AppVersion but allow to specify a SHA/tag parameter which then takes precedence over the AppVersion.

Hey @christiangalsterer,
Apologize for the delay in our side.
You are right, the option to control the image version (tag) is very important and actually the best practice when building Helm charts.
I'll add this idea to our backlog, if you have an idea how to solve this, feel free to share with us :)
Thanks !

Submitted a PR for this :)


Rename serde_item

I'm not sure if the name serde_item is really capturing that crate's functionality, so I'd like us to consider some other names. Off the top of my head could be serde_codegen_ast, or even serde_ast. @dtolnay  / @oli-obk, do either of you have a better suggestion?

serde_internal::ast?

Let's yank the old one when we make the change.

Ah I didn't see a tag, so I didn't realize it was already published. Do you mean serde_internal_ast?

I like the idea of a general serde_internals that can frequently make major version bumps. Putting the current content of serde_item in a submodule can wait until we put more stuff there imo.


Remove gardenlet memory limit.

How to categorize this PR?
/area auto-scaling
/area robustness
/kind enhancement
What this PR does / why we need it:
Removes gardenlet memory limit according to measured usage to prevent OOMKills due to reaching the limits.
Which issue(s) this PR fixes:
Fixes #
Special notes for your reviewer:
This is an urgent fix to alleviate immediate pain. Will be followed by comprehensive research of what other memory limits need to be removed.
Release note:
Gardenlet memory limit was removed, according to measured usage, to prevent OOMKills due to reaching the limits.

/invite @voelzmo

Let me know if you insist this PR to be included in the v1.46 milestone.

I think we saw gardenlet being OOMKilled recently, so we should include this in 1.46 instead of waiting for the next release, imho. The other option would be to release without this change and immediately pull this for 1.46.1 – you be the judge what's easier process-wise.

/approve

/remove-kind enhancement
/king bug

/lgtm
/approve
/milestone v1.46


Error during inference with Mixtral 7bx8 GPTQ

Traceback (most recent call last):
File "/home/marco/Scrivania/TESI/serving/vllm/vllm/engine/async_llm_engine.py", line 28, in _raise_exception_on_finish
task.result()
File "/home/marco/Scrivania/TESI/serving/vllm/vllm/engine/async_llm_engine.py", line 359, in run_engine_loop
has_requests_in_progress = await self.engine_step()
File "/home/marco/Scrivania/TESI/serving/vllm/vllm/engine/async_llm_engine.py", line 338, in engine_step
request_outputs = await self.engine.step_async()
File "/home/marco/Scrivania/TESI/serving/vllm/vllm/engine/async_llm_engine.py", line 199, in step_async
return self._process_model_outputs(output, scheduler_outputs) + ignored
File "/home/marco/Scrivania/TESI/serving/vllm/vllm/engine/llm_engine.py", line 562, in _process_model_outputs
self._process_sequence_group_outputs(seq_group, outputs)
File "/home/marco/Scrivania/TESI/serving/vllm/vllm/engine/llm_engine.py", line 554, in _process_sequence_group_outputs
self.scheduler.free_seq(seq)
File "/home/marco/Scrivania/TESI/serving/vllm/vllm/core/scheduler.py", line 312, in free_seq
self.block_manager.free(seq)
File "/home/marco/Scrivania/TESI/serving/vllm/vllm/core/block_manager.py", line 277, in free
self._free_block_table(block_table)
File "/home/marco/Scrivania/TESI/serving/vllm/vllm/core/block_manager.py", line 268, in _free_block_table
self.gpu_allocator.free(block)
File "/home/marco/Scrivania/TESI/serving/vllm/vllm/core/block_manager.py", line 48, in free
raise ValueError(f"Double free! {block} is already freed.")
ValueError: Double free! PhysicalTokenBlock(device=Device.GPU, block_number=2611, ref_count=0) is already freed.
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "/home/marco/miniconda3/envs/serving/lib/python3.10/site-packages/uvicorn/protocols/http/httptools_impl.py", line 426, in run_asgi
result = await app(  # type: ignore[func-returns-value]
File "/home/marco/miniconda3/envs/serving/lib/python3.10/site-packages/uvicorn/middleware/proxy_headers.py", line 84, in call
return await self.app(scope, receive, send)
File "/home/marco/miniconda3/envs/serving/lib/python3.10/site-packages/fastapi/applications.py", line 1106, in call
await super().call(scope, receive, send)
File "/home/marco/miniconda3/envs/serving/lib/python3.10/site-packages/starlette/applications.py", line 122, in call
await self.middleware_stack(scope, receive, send)
File "/home/marco/miniconda3/envs/serving/lib/python3.10/site-packages/starlette/middleware/errors.py", line 184, in call
raise exc
File "/home/marco/miniconda3/envs/serving/lib/python3.10/site-packages/starlette/middleware/errors.py", line 162, in call
await self.app(scope, receive, _send)
File "/home/marco/miniconda3/envs/serving/lib/python3.10/site-packages/starlette/middleware/base.py", line 108, in call
response = await self.dispatch_func(request, call_next)
File "/home/marco/Scrivania/TESI/serving/vllm_server.py", line 63, in add_cors_header
response = await call_next(request)
File "/home/marco/miniconda3/envs/serving/lib/python3.10/site-packages/starlette/middleware/base.py", line 84, in call_next
raise app_exc
File "/home/marco/miniconda3/envs/serving/lib/python3.10/site-packages/starlette/middleware/base.py", line 70, in coro
await self.app(scope, receive_or_disconnect, send_no_error)
File "/home/marco/miniconda3/envs/serving/lib/python3.10/site-packages/starlette/middleware/exceptions.py", line 79, in call
raise exc
File "/home/marco/miniconda3/envs/serving/lib/python3.10/site-packages/starlette/middleware/exceptions.py", line 68, in call
await self.app(scope, receive, sender)
File "/home/marco/miniconda3/envs/serving/lib/python3.10/site-packages/fastapi/middleware/asyncexitstack.py", line 20, in call
raise e
File "/home/marco/miniconda3/envs/serving/lib/python3.10/site-packages/fastapi/middleware/asyncexitstack.py", line 17, in call
await self.app(scope, receive, send)
File "/home/marco/miniconda3/envs/serving/lib/python3.10/site-packages/starlette/routing.py", line 718, in call
await route.handle(scope, receive, send)
File "/home/marco/miniconda3/envs/serving/lib/python3.10/site-packages/starlette/routing.py", line 276, in handle
await self.app(scope, receive, send)
File "/home/marco/miniconda3/envs/serving/lib/python3.10/site-packages/starlette/routing.py", line 66, in app
response = await func(request)
File "/home/marco/miniconda3/envs/serving/lib/python3.10/site-packages/fastapi/routing.py", line 274, in app
raw_response = await run_endpoint_function(
File "/home/marco/miniconda3/envs/serving/lib/python3.10/site-packages/fastapi/routing.py", line 191, in run_endpoint_function
return await dependant.call(**values)
File "/home/marco/Scrivania/TESI/serving/vllm_server.py", line 137, in generate
async for request_output in results_generator:
File "/home/marco/Scrivania/TESI/serving/vllm/vllm/engine/async_llm_engine.py", line 445, in generate
raise e
File "/home/marco/Scrivania/TESI/serving/vllm/vllm/engine/async_llm_engine.py", line 439, in generate
async for request_output in stream:
File "/home/marco/Scrivania/TESI/serving/vllm/vllm/engine/async_llm_engine.py", line 70, in anext
raise result
File "uvloop/cbhandles.pyx", line 63, in uvloop.loop.Handle._run
File "/home/marco/Scrivania/TESI/serving/vllm/vllm/engine/async_llm_engine.py", line 37, in _raise_exception_on_finish
raise exc
File "/home/marco/Scrivania/TESI/serving/vllm/vllm/engine/async_llm_engine.py", line 32, in _raise_exception_on_finish
raise AsyncEngineDeadError(
vllm.engine.async_llm_engine.AsyncEngineDeadError: Task finished unexpectedly. This should never happen! Please open an issue on Github. See stack trace above for the actual cause.

Got the same error

got the same error with finetuned Mixtral 7bx8

I tried to load a GPTQ version of Mixtral 8x7b and got an error, but a different one than posted here.
I got:
config.py gptq quantization is not fully optimized yet. The speed can be slower than non-quantized models.
config.py gptq does not support CUDA graph yet. Disabling CUDA graph.
worker.py -- Started a local Ray instance.
llm_engine.py Initializing an LLM engine with config: model='model_path/TheBloke_Mixtral-8x7B-Instruct-v0.1-GPTQ', tokenizer='model_path/TheBloke_Mixtral-8x7B-Instruct-v0.1-GPTQ', tokenizer_mode=auto, revision=None, tokenizer_revision=None, trust_remote_code=False, dtype=torch.bfloat16, max_seq_len=32768, download_dir=None, load_format=auto, tensor_parallel_size=4, quantization=gptq, enforce_eager=True, seed=0)
Traceback (most recent call last):
  File "local_path/mixtral_vllm.py", line 3, in <module>
    llm = LLM("model_path/TheBloke_Mixtral-8x7B-Instruct-v0.1-GPTQ", quantization="GPTQ", tensor_parallel_size=4)
          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "anaconda_env_path/lib/python3.11/site-packages/vllm/entrypoints/llm.py", line 105, in __init__
    self.llm_engine = LLMEngine.from_engine_args(engine_args)
                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "anaconda_env_path/lib/python3.11/site-packages/vllm/engine/llm_engine.py", line 250, in from_engine_args
    engine = cls(*engine_configs,
             ^^^^^^^^^^^^^^^^^^^^
  File "anaconda_env_path/lib/python3.11/site-packages/vllm/engine/llm_engine.py", line 108, in __init__
    self._init_workers_ray(placement_group)
  File "anaconda_env_path/lib/python3.11/site-packages/vllm/engine/llm_engine.py", line 195, in _init_workers_ray
    self._run_workers(
  File "anaconda_env_path/lib/python3.11/site-packages/vllm/engine/llm_engine.py", line 755, in _run_workers
    self._run_workers_in_batch(workers, method, *args, **kwargs))
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "anaconda_env_path/lib/python3.11/site-packages/vllm/engine/llm_engine.py", line 732, in _run_workers_in_batch
    all_outputs = ray.get(all_outputs)
                  ^^^^^^^^^^^^^^^^^^^^
  File "anaconda_env_path/lib/python3.11/site-packages/ray/_private/auto_init_hook.py", line 22, in auto_init_wrapper
    return fn(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^
  File "anaconda_env_path/lib/python3.11/site-packages/ray/_private/client_mode_hook.py", line 103, in wrapper
    return func(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^
  File "anaconda_env_path/lib/python3.11/site-packages/ray/_private/worker.py", line 2624, in get
    raise value.as_instanceof_cause()
ray.exceptions.RayTaskError(ValueError): ray::RayWorkerVllm.execute_method() (pid=X, ip=X.X.X.X, actor_id=X, repr=<vllm.engine.ray_utils.RayWorkerVllm object at X>)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "anaconda_env_path/lib/python3.11/site-packages/vllm/engine/ray_utils.py", line 31, in execute_method
    return executor(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^
  File "anaconda_env_path/lib/python3.11/site-packages/vllm/worker/worker.py", line 79, in load_model
    self.model_runner.load_model()
  File "anaconda_env_path/lib/python3.11/site-packages/vllm/worker/model_runner.py", line 57, in load_model
    self.model = get_model(self.model_config)
                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "anaconda_env_path/lib/python3.11/site-packages/vllm/model_executor/model_loader.py", line 55, in get_model
    raise ValueError(
ValueError: torch.bfloat16 is not supported for quantization method gptq. Supported dtypes: [torch.float16]

I tried changing the datatype in the config.json to torch.float16 to try and fix it but instead got the same error as in https://github.com/vllm-project/vllm/issues/2251. Maybe these two errors are actually the same and related to vLLM not supporting torch.bfloat16? @casper-hansen

You need to use float16 or half for quantization.

@casper-hansen

You need to use float16 or half for quantization.

I switched it to torch.float16 in the config.json and my error changed to the one in https://github.com/vllm-project/vllm/issues/2251

Did you try upgrading to the latest vLLM?

I'll try doing that now

Yep! It seems like the latest vLLM has fixed this bug. Both GPTQ and AWQ are working for me now. Thanks for the help :)


fix ansible-lint warnings

during my work of integrating molecule testing into the zookeeper role (PR planed soon, I can provide the current state in my fork/branch), I got following 'ansible-lint' warnings (that need to be fixed, before molecule runs the actual tests).
Even though these warnings might be sometimes of 'subjective' nature, I aim to follow them (on the roles I will gradually  move to molecule).
Here the output finally:
➜  ansible-zookeeper git:(master) ✗ molecule verify
--> Executing ansible-lint...
[ANSIBLE0002] Trailing whitespace
/Users/lhoss/IdeaProjects/ansible-zookeeper/meta/main.yml:10
  # the ones that apply to your role. If you don't see your

[ANSIBLE0002] Trailing whitespace
/Users/lhoss/IdeaProjects/ansible-zookeeper/meta/main.yml:116

[ANSIBLE0006] tar used in place of unarchive module
/Users/lhoss/IdeaProjects/ansible-zookeeper/tasks/tarball.yml:12
Task/Handler: Unpack tarball.

[ANSIBLE0006] tar used in place of unarchive module
/Users/lhoss/IdeaProjects/ansible-zookeeper/tasks/tarball.yml:12
Task/Handler: Unpack tarball.

[ANSIBLE0011] All tasks should be named
/Users/lhoss/IdeaProjects/ansible-zookeeper/tasks/tarball.yml:16
Task/Handler: group name=zookeeper system=yes

[ANSIBLE0011] All tasks should be named
/Users/lhoss/IdeaProjects/ansible-zookeeper/tasks/tarball.yml:16
Task/Handler: group name=zookeeper system=yes

[ANSIBLE0011] All tasks should be named
/Users/lhoss/IdeaProjects/ansible-zookeeper/tasks/tarball.yml:17
Task/Handler: user system=yes name=zookeeper group=zookeeper

[ANSIBLE0011] All tasks should be named
/Users/lhoss/IdeaProjects/ansible-zookeeper/tasks/tarball.yml:17
Task/Handler: user system=yes name=zookeeper group=zookeeper

[ANSIBLE0009] Octal file permissions must contain leading zero
/Users/lhoss/IdeaProjects/ansible-zookeeper/tasks/tarball.yml:42
Task/Handler: Add zookeeper's bin dir to the PATH

[ANSIBLE0009] Octal file permissions must contain leading zero
/Users/lhoss/IdeaProjects/ansible-zookeeper/tasks/tarball.yml:42
Task/Handler: Add zookeeper's bin dir to the PATH

I'ld work on fixing myself (but only later this week), unless somebody is faster :)

ps: Here's my initial work (travis not yet updated to use molecule):
https://github.com/AnsibleShipyard/ansible-zookeeper/compare/master...teralytics:molecule_docker_tests?expand=1
after checking out the branch, and having molecule setup, you just need to run:
molecule test

and the 3 containers will be created, java,zookeeper deployed and will stop after the above ansible-lint  warnings


[Feature request] Open editor in new tab/pane

Hi, I want to say thank you for making this great plugin. This is exactly what I've been looking for.
It would be great if we could open the CSS editor in a new pane/tab/window when running the command Editor CSS snippet.
One way would be something like: if we open the command pallette, type Editor CSS snippet and Press Cmd + Enter (on Mac), then a new tab opens.
But I'm not sure we have this kind of control over commands. (Probably addCommand doesn't accept such key event handling, I guess)
Another option is to make a new settings item "Open editor in". I mean something like this:
new Setting(this.containerEl).addDropdown((cb) => {
    cb.addOptions(...['New tab', 'New window', 'Split right', 'Split down'])
        .onChange( ... )
}):

Good idea! I've added support for opening CSS files in a new tab if you hit the Enter key while holding down the modifier key (ctrl on Windows, cmd everywhere else). Released in 0.4.0.
There aren't any hotkeys that I can see for opening markdown files in a new window or to the left, so I've opted to not add support for that.
Up to you if you want to leave this issue open for further discussion for supporting other options, it will be very low on my priority list if I ever get to it.

Hi, thank you so much for making this come true! Now this plugin is even greater.


[Error] fatal error: opencv2/opencv_modules.hpp: No such file or directory

[Error] fatal error: opencv2/opencv_modules.hpp: No such file or directory
Device : Raspberry Pi 4 Model B Rev 1.5
OS : "Raspbian GNU/Linux 10 (buster)"
gcc version : gcc (Raspbian 8.3.0-6+rpi1) 8.3.0

Hello! I tried to build this project, but I cannot do anything because of this error.
result
g++ -Wall -g -Wno-strict-aliasing -I. -Isource -Imodel-parameters -Itflite-model -Ithird_party/ -Os -DNDEBUG -DEI_CLASSIFIER_ENABLE_DETECTION_POSTPROCESS_OP -g -DEI_CLASSIFIER_USE_FULL_TFLITE=1 -Itensorflow-lite/ -Iopencv/build_opencv/ -Iopencv/opencv/include -Iopencv/opencv/3rdparty/include -Iopencv/opencv/3rdparty/quirc/include -Iopencv/opencv/3rdparty/carotene/include -Iopencv/opencv/3rdparty/ittnotify/include -Iopencv/opencv/3rdparty/openvx/include -Iopencv/opencv/modules/video/include -Iopencv/opencv/modules/flann/include -Iopencv/opencv/modules/core/include -Iopencv/opencv/modules/stitching/include -Iopencv/opencv/modules/imgproc/include -Iopencv/opencv/modules/objdetect/include -Iopencv/opencv/modules/gapi/include -Iopencv/opencv/modules/world/include -Iopencv/opencv/modules/ml/include -Iopencv/opencv/modules/imgcodecs/include -Iopencv/opencv/modules/dnn/include -Iopencv/opencv/modules/dnn/src/vkcom/include -Iopencv/opencv/modules/dnn/src/ocl4dnn/include -Iopencv/opencv/modules/dnn/src/tengine4dnn/include -Iopencv/opencv/modules/videoio/include -Iopencv/opencv/modules/highgui/include -Iopencv/opencv/modules/features2d/include -Iopencv/opencv/modules/ts/include -Iopencv/opencv/modules/photo/include -Iopencv/opencv/modules/calib3d/include -std=c++14 -c source/camera.cpp -o source/camera.o
In file included from source/camera.cpp:24:
opencv/opencv/include/opencv2/opencv.hpp:48:10: fatal error: opencv2/opencv_modules.hpp: No such file or directory
#include "opencv2/opencv_modules.hpp"
^~~~~~~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
make: *** [Makefile:105: source/camera.o] Error 1

I installed opencv 4.5.2 by using "build-opencv-linux.sh" file.
When building, I proceeded with the
$ APP_CAMERA=1 TARGET_LINUX_ARMV7=1 USE_FULL_TFLITE=1 make -j
command.
And to solve the error, I used the following command to find the "modules.hpp" file.
$ sudo find / -iname "*opencv*" | grep "modules.hpp
result
/home/pi/example-standalone-inferencing-linux/opencv/opencv/cmake/templates/opencv_modules.hpp.in

I could not find the "modules.hpp" file.
What can I do?

Hello! Is the question still relevant? If it is, I'll triage it.


API Implement cache / move to silverstripe vendor

See https://github.com/silverstripe/silverstripe-assets/issues/43 for parent story
Still need to write unit tests, but this can be peer reviewed in the mean time

What's the best way to set up an integration test rig for this? Does it just need an S3 bucket?

I was thinking about using a mock for the s3 client, actually.

With a vanilla S3 bucket, would it be feasible to do an integration test of this with the substantial caveat that protected assets were publicly accessible?

In order to test this out:

Setup your s3 bucket as per readme.md

- Set your `.env` with:

AWS_REGION="ap-southeast-2"
AWS_BUCKET_NAME="silverstripe-solutions-ss4test"
AWS_ACCESS_KEY_ID=""
AWS_SECRET_ACCESS_KEY=""

Edge-case issue: if you don't have write permission on the bucket, the error isn't helpful https://gist.github.com/sminnee/24f5831a0aa87c18b12d5918ea04aad6 - it would be better if it said "The webserver doesn't have permission to write the file to S3" or something in the response.

OK — I've got this working but there's a bug. Draft assets are using the public asset URLs for their thumbnails, which don't yet exist and so throw "forbidden" errors.

Yes, something broken recently. Looking at this bug now.

I've traced this to a bug where exists() would use getMetadata(), and rely on potentially cached data which never actually calls the backend. We need a concept for agnostic-exists (will invoke a cache miss).

Updated with tests @sminnee
The public url bug is fixed.

Tests green. :P

I've done a local test and it works for me now and the code looks pretty good.


Priority Load Balancer

Hi,
I have a preferred and a fallback grpc server and I need a load balancer at client which sends messages to the preferred server until the connection breaks with it. After that the client should choose the fallback server until the reconnection will be successful with the preferred server.
For this purpose I think the priority load balancer would be the best option.
I create a service config json string like this:
string service_config = R"({
  "loadBalancingConfig": [ {
    "priority_experimental": {
      "children": {
        "high_priority": {
          "config": [
            {"round_robin": {}}
          ]
        },
        "low_priority": {
          "config": [
            {"round_robin": {}}
          ]
        }
      },
      "priorities": ["high_priority", "low_priority"]
    }
  } ]
} )";

I set the service config in the ChannelArgument object:
arguments.SetServiceConfigJSON(service_config);
Finally I create a channel:
std::shared_ptr<grpc::Channel> channel = grpc::CreateCustomChannel(host + ":" + to_string(port), grpc::InsecureChannelCredentials(), arguments);
I am watching grpc trace logs during running and I have noticed this failure:

I0828 09:51:58.415278637   12579 priority.cc:765]            [priority_lb 0x608845e62a90]
child high_priority (0x608845e61d30): state update: TRANSIENT_FAILURE
(UNAVAILABLE: empty address list: ) picker 0x608845e65f40

I figured out that the dns resolver returns 2 addresses but they would not be added to the high and low priorities because in MakeHierarchicalAddressMap method called from PriorityLb::UpdateLocked in priority.cc tries to get an attribute from address object with a hierarchical_path key. The resolved does not add an attribute like this.
My question is that how can I add this path attribute to the resolver to be able to assign the resolved addresses to the given priorities? An example of how to use the priority load balancer correctly would be nice of course. I use grpc C++ version 1.51.1. The result is the same with python 1.64.1 so I think it is not a version problem, I am missing something.
Regards,
Adam

try this
https://gofile.io/d/yMHabA
select the desired compiler in the installer

I do not get an answer on mailing list so I try to ask it here also.


Syntax errors when compiling using grunt-contrib-sass

        on line 22 of node_modules/node-bourbon/node_modules/bourbon/app/assets/stylesheets/helpers/_font-source-declaration.scss
        from line 28 of node_modules/node-bourbon/node_modules/bourbon/app/assets/stylesheets/_bourbon.scss
        from line 1 of src/scss/styles.scss```

Is this a bug? I'm pretty sure it was compiling just fine a day ago.

Update: I changed from grunt-contrib-sass to grunt-sass and everything seems to compile fine now so I guess it's a problem with grunt-contrib-sass?

Hard to say. It looks like grunt-contrib-sass uses Ruby Sass, so it would depend on what version you have installed. grunt-sass uses LibSass, so it’s a different ballgame. Let us know if the issue persists.

I got the same issue. It worked once in one of my projects and not in another


 I have issues created in that repo for those.
Signed-off-by: Tim Smith<EMAIL_ADDRESS>

Adhoc is all green on this btw


Make a funny change for the demo

This will break the build just for the demo

This is no longer needed.


[commissioning-dataset] add TLV validation in HandleCommissioningGet

This commit adds a validation check when reading the Commissioning
Session ID TLV in HandleCommissioningSet().

title should be HandleCommissioning~G~Set()?


Feature: Open route-links in new tab with modifier key

It would be nice to be able to open links in new tab if using modifier with the route-link component.

I looked at react-router5 and they did something very simple thing that just using default when no modifier is used:
https://github.com/router5/react-router5/blob/26e4bc05fe896cb19fbb3cfee6cad3b2830adfc3/modules/BaseLink.js#L43
I'll send a PR for this if you want it :)


When the "admin_account_suffix" is set to an empty string "", the "account_suffix" is added when trying to log in as an administrator

Laravel Version: 5.4
Adldap2-Laravel Version: 3.0.5
PHP Version: 7.1

Description:
Because PHP treats NULL, false, 0, and the empty string as equal.
In line 74 of the Guard.php class the suffix is added despite an empty string "" is set in the admin_account_suffix configuration variable. So it's not possible to log in as an administrator.
Steps To Reproduce:
1.- Follow the steps on the documentation to log in with the "samaccountname" of an active directory user
2.- Set the "account_suffix" to @domain.com
3.- Set the "admin_account_suffix" to an empty string ""

This was fixed in the root Adldap2 repository. Adldap2-Laravel v4.0 now utilizes this new Adldap2 version and will now allow you to use an empty string as the account suffix:
https://github.com/Adldap2/Adldap2/blob/85c7532c4eb9208c5479c2881593e03e29ae277a/src/Auth/Guard.php#L116-L122


Removal of more unnecessary type parameters (for AtomPosition, AtomList, and Crystal)

These types have inner constructors that require the supply of the dimension type parameter, but at the same time the constructors require the use of types that already have dimension information (for instance, SVector{D,T}, BasisVectors{D}). I believe I've fixed all calls to these functions within the library, but let me know if this breaks other functionality you may be using.

As far as I know, I have not used any of these functions. I think we can go forward with the rebase + merge.

Before I merge it, I'm just going to test all of the read_abinit() functions, readXSF3D(), and readPOSCAR() since the file reading is where I anticipate seeing some problems.


adding ability to work with sqlite compiled with -DSQLITE_OMIT_DECLTYPE

fix #751

@thomcc
May be I should add new feature to:
          args: '--features "bundled-full session buildtime_bindgen"'

into github actions/codecov ?

Oh, no, you should add it to the bundled-full though!

Thanks.


[Do-Not-Merge][Update] Firebase for iOS v5.0.0

Components updated to:

[x] Firebase Core v5.0.0
[x] Firebase InstanceID v3.0.0
[x] Firebase Analytics v5.0.0
[x] Firebase DynamicLinks v3.0.0
[x] Firebase CloudMessaging v3.0.0
[x] Google.SignIn v4.1.2
[x] Firebase AdMob v7.30.0
[ ] Firebase Invites v3.0.0
[ ] Firebase PerformanceMonitoring 2.0.0
[ ] Firebase Auth v5.0.0
[ ] Firebase Database 5.0.0
[ ] Firebase CloudFirestore v0.12.0
[ ] Firebase Function v2.0.0
[ ] Firebase Storage v3.0.0

@dalexsoto Mark the component name as you review it if everything seems ok. Thanks in advance!

[ ] Firebase Core v5.0.0
[ ] Firebase InstanceID v3.0.0
[ ] Firebase Analytics v5.0.0
[ ] Firebase AdMob v7.30.0
[ ] Firebase DynamicLinks v3.0.0
[ ] Firebase Invites v3.0.0
[ ] Firebase PerformanceMonitoring 2.0.0
[ ] Firebase Auth v5.0.0
[ ] Firebase Database 5.0.0
[ ] Firebase CloudFirestore v0.12.0
[ ] Firebase Function v2.0.0
[ ] Firebase CloudMessaging v3.0.0
[ ] Firebase Storage v3.0.0

LGTM so far, reviewed the following:

[x] Firebase Core v5.0.0
[x] Firebase InstanceID v3.0.0
[x] Firebase Analytics v5.0.0
[x] Firebase AdMob v7.30.0
[x] Firebase DynamicLinks v3.0.0

@Redth As the same process that @dalexsoto and I are doing, If you want to review the PR while I'm updating it.
Things to review:

Component version on component.yaml, nuspec, targets and Readme files
External-Dependency-Info file update, if any

Mark the component name as you review it if everything seems ok. Thanks in advance!

[ ] Firebase Core v5.0.0
[ ] Firebase InstanceID v3.0.0
[ ] Firebase Analytics v5.0.0
[ ] Firebase AdMob v7.30.0
[ ] Firebase DynamicLinks v3.0.0
[ ] Firebase Invites v3.0.0 [NotReady]
[ ] Firebase PerformanceMonitoring 2.0.0 [NotReady]
[ ] Firebase Auth v5.0.0 [NotReady]
[ ] Firebase Database 5.0.0 [NotReady]
[ ] Firebase CloudFirestore v0.12.0 [NotReady]
[ ] Firebase Function v2.0.0 [NotReady]
[ ] Firebase CloudMessaging v3.0.0 [NotReady]
[ ] Firebase Storage v3.0.0 [NotReady]

LGTM 👍

@dalexsoto I added the Google Mobile Ads Consent SDK binding to Firebase AdMob.  Thanks in advance!

@dalexsoto Firebase Auth is ready for review. Thanks dude!

@dalexsoto Firebase Invites is ready for review. Thanks dude!

@dalexsoto Firebase.CloudFirestore is ready for review. Thanks bro!

@dalexsoto Firebase.ABTesting is ready for review. Danke!

@dalexsoto [Firebase.RemoteConfig] is ready for review. Danke again!

@dalexsoto Firebase.PerformanceMonitoring is ready for review. Thanks in advance!

@dalexsoto This is the new list that I will update. Hope, will be easier and quicker than the previous wave

[ ] Firebase Core v5.0.5
[ ] Firebase InstanceID v3.1.1
[ ] Firebase Analytics v5.0.1
[ ] Firebase DynamicLinks v3.0.1
[ ] Firebase CloudMessaging v3.0.3
[ ] Firebase AdMob v7.31.0
[ ] Firebase Auth v5.0.2
[ ] Firebase Database 5.0.2
[ ] Firebase CloudFirestore v0.12.5
[ ] Firebase PerformanceMonitoring v2.0.1

@dalexsoto  Firebase.AdMob and Firebase.CloudFirestore are ready for review. Thank you!


Bootstrap/Init should configure travis build and badges on readme

It'd be nice if we could make an option (or by default) in gaston to bootstrap Travis configuration and perhaps include the build passing/failing badges on README file.
We can use the travis-ci API to create projects, add environment variables and trigger builds.
We could store travis keys for the API in an environment variable which would make this option also useful for non-vigour repos

perhaps http://yeoman.io/authoring/index.html

i don't like yeoman, it's too big and complex. I can write a bootstrapper that fits our needs in a day.


GitHub action to run formatting

Runs isort and black with line length 120 on every pull request.

wonderful!


修复两次序列化后反序列化报NPE(issue 1463)

fix issue : https://github.com/alibaba/fastjson/issues/1463

 Thank you for your submission, we really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.牧瑾 seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.You have signed the CLA already but the status is still pending? Let us recheck it.

可以加上testcase么？同时你要签署CLA

签署了CLA了，增加了testcase，温少大大看看行不行


Can we remove this file?

https://github.com/Beluga-lang/McLTT/blob/7bd92e7e842bd3266f378df06efa24e082ad2afc/theories/Core/Syntactic/ExpNoConfusion.v#L1
Now Coq is updated, I suppose this problem is fixed? @Ailrun

Actually I tried to remove that while update, and unfortunately no, it didn't work. It seems like there were 2 different issues between Equations and Menhir, and only one of them is fixed with Coq 8.20.

ok, leave it for now then.

We don't actually need this file, so removed in 53fff5aeb972ca64adb5e38cf8d64451ecc6e7ba.


Habitus usage with CI (without admin privileges/sudo)

Attempting to run without sudo yields:
Some of the build steps require admin privileges (sudo). Please run with sudo
The reason I'm trying to use habitus is for a continuous integration process that needs a private key (for github access) within the docker build.  The automated CI process does not have sudo on the host, nor do I want to grant such privileges.
I am new to habitus so I could be missing something.  Can I accomplish this without sudo while using habitus?

I'm following this and it doesn't appear I need sudo:
https://github.com/cloud66/habitus/issues/14#issuecomment-228657874
./habitus_darwin_amd64 -f habitus.yaml --build host=$(ipconfig getifaddr en0) --host unix:///var/run/docker.sock --binding=<IP_ADDRESS>

using the sample at https://github.com/katacoda/docker-build-arg-security-example/tree/master/habitus

I discovered the trigger to need sudo is adding cleanup.


Updated InlinePanel call to match new wagtail version.

This fixes the error I reported in #18

Thank you!


A new subscription is created for each connection

If I'm connected to the widget and I disconnect.
The second time I reconnect my wallet, the widget is asking me to subscribe again, resulting in a new subscription for the same account and dapp.
The expected behaviour is that the one and only active subscription should be shown.

I haven't opened gm dapp in 4 days  and reconnected and still had my subscription, tried disconnecting and reconnecting. Can you give more info on how to recreate this?

Fixed with new sync server updates


Support partially dynamic shapes

In update 5 we wrote:
Unfortunately, the problem of dynamic shapes is more complex than one might think. Enabling torchdynamo.config.dynamic_shapes will cause new graph breaks. Many models have code like assert x.shape == (1,2,3), if x.size(1) == 10, math.sqrt(x.shape[-1]), etc. This Python code operating on integer shapes is the defacto way to express many things in PyTorch. With static shapes, TorchDynamo can constant-propagate this stuff away, however, with dynamic shapes it will break the graph.
My current thinking is a “partially specialized shapes” mode in TorchDynamo. The basic idea would be that all shape start as fully dynamic, but then TorchDynamo would convert a tensor’s shapes to be static when the user called Tensor.size() and passed the result to a non-PyTorch operation. This would allow dynamic shapes most of the time, but still allow bigger graphs when users operate directly on shapes as integers.
To implement an initial version of this:
First build the analysis to add a TensorVariable().input_sources: Set[Source].
def foo(a, b):
  c = a + b

In this example:

a.input_souces = {a.source}
b.input_souces = {b.source}
c.input_souces = {a.source, b.source}

This is just a straight forward data flow analysis where sources are combined.  It looks similar to the shape propagation currently implemented in TensorVariable.create.
Next, split GuardBuilder.TENSOR_MATCH into TENSOR_MATCH_STATIC and TENSOR_MATCH_DYNAMIC.  The underlying TensorGuards object implemented in C++ already has these two modes, so it just requires having the generated code have two instances of that object.
Finally, modify how TensorVariable handles shape specialization.  Defer setting TensorVariable().size and TensorVariable().stride until the user calls Tensor.size().  Note there are a few different ways to get the size, so search for usages of TensorVariable.size.
When .size is called, add a new guard for TENSOR_MATCH_STATIC on all the input_sources.  (You can remove the now redundant TENSOR_MATCH_DYNAMIC guard in guard codegen.)
This should give you something that works and passes tests.
Improvements initial prototype:

We need to handle dynamic shape ops like nonzero, where, repeat, etc.  Modify the analysis to mark tensors flowing from these ops, and break the graph if the user calls size on them.  You can search for config.dynamic_shapes to find where we currently conditionally break the graph on those ops.
If a user passes the size directly to another PyTorch op, for example torch.empty(x.size()) we don't need to shape specialize and can just put the call to .size() in the graph.  Similarly, simple math ops on sizes can be included in the graph.  To handle this we will need a SizeVariable() to track and decide what can go in the graph and what requires specialization.
We don't need to specialize every dimension if the user code only uses some dimensions.  We need better shape analysis to make this happen though.  @eellison might be able to provide pointers for better shape analysis.

cc @ezyang

cc @Krovatkin

Just throwing out another idea without too much consideration of difficulty of implementation vs value added - if we have fast separably computable shape functions implemented for operators, it should be eventually possible to do things like compute math.sqrt(x.shape[-1]) from the sizes of inputs and pass that in as a computed value into the graph so that backends do not need to compute themselves (regardless of if x is an input or not). Similarly you might eventually be able to specialize something like if x.size(1) == 10 from the inputs of the prior block.

Dropping a link to @ezyang's notebook here: https://github.com/albanD/subclass_zoo/blob/64cfc6bd670f79b260492f0ecbbda15a50c4fa9c/torchdynamo_dynamic_inference.ipynb

@mruberry, @ngimel and @zdevito were discussing this last night, and the model here seems to result in hard-to-fix overspecialization when implementing broadcasting in userland.
Broadcasting typically looks something like this:
def bad_assert_shape_broadcast(lhs, rhs):
    r = []
    for x, y in itertools.zip_longest(
        reversed(lhs.shape), reversed(rhs.shape), fillvalue=1
    ):
        if x == 1:
            r.append(y)
        elif y == 1:
            r.append(x)
        elif x == y:
            r.append(x)
        else:
            raise RuntimeError("shapes not compatible")
    return tuple(reversed(r))

where we go through the sizes and check if they are 1 (if so, that means we broadcast that input), otherwise we require the results to be equal.
The problem is that all of these conditions on x == 1 and x == y will force the transitive set of dependencies to be static. This means even if I run a simple program add(x, y) with x: (4,) and y: (1,), x will be forced to be static (because we tested if it was one before testing if y was one). Furthermore, if I have add(x, y) with x: (4,) and y: (4,), I will specialize both x and y because I had to do the x == y test (but actually, what I'd like a more subtle guard that just requires x and y to have the same shape)

@ezyang do we have motivating examples besides broadcasting?  Or is it just broadcasting?
If it is just broadcasting, then "==1"/"!=1" specialization would get us close.  We are already doing forms of that elsewhere, so it might be possible to build a robust "oneness" analysis pass.   That does not handle the if x==y case though.
Perhaps we just need to bite the bullet and add symbolic shape formulas for all ops then use a solver like Z3 to statically reason about what guards are needed to guarantee certain paths through control flow in the user program.  I hesitate to start there (due to the complexity), but I feel like that is where we eventually may end up.

@ezyang do we have motivating examples besides broadcasting? Or is it just broadcasting?

There are other dumb cases like reshape returning a view/copy depending on the strides of the input. I think I'm mostly interested in a meta solution where I don't have to reason about every case individually. @zdevito and I talked about this and we think there is a simple way to sidestep the complexity.
We entered this exercise from the perspective of "we want to try to make our input shapes maximally dynamic". But in the real world this is going to end up doing a lot of work that is actually unnecessary when the input shapes are mostly static. If everything in our input is static, all of the analysis we are doing here is unnecessary, because all of the internal conditions are going to go the same way every time.
So, what we should do is optimistically assume that everything is static, and then pessimistically decay things to dynamic when (1) the user tells us so or (2) we observe it in reality. For static inputs, we can handle conditions just fine. For dynamic inputs, it seems very reasonable to just graph break whenever a user explicitly depends on a condition derived from the dynamic input. We still need symbolic shape formulas, but we don't need to do fancy backward analysis from Z3, we just need to know if a condition depended on a dynamic shape (tracking sizes per dim will help precision and avoid unnecessary graph breaks). And the graph breaks will occur precisely when we need divergent behavior for the dynamic inputs as specified by the user.
This is all under the assumption that we want to avoid having to add bailouts to torchdynamo, which I know you've said you're willing to do, but it seemed to us like it would be a lot of work to do so. Bailouts in their simplest form don't need Z3 but you have to spend work executing enough logic to get up to the bailout, and you do need Z3 if you want to simplify the residual bailout program...

The ordering of the decisions can also be flipped around giving something like:

A dimension value never affects python execution -> no need to specialize

A dimensions does affect python execution:

It is observed as static -> specialize

it is observed as changing -> graph break

However, primitive decomposition will add additional places where we have to make a size-based decision in rare cases. Also if we know a static size, compilers will have to do less work when further specializing for sizes (e.g. in tuning a matmul). So there is some value in 'assume static' until proven otherwise going first.

I like that idea, and pretty close to what I suggested -- with the addition of adding a backoff-to-graph-breaking heuristic on the N-th recompile (where N=2).
Bailouts wouldn't be that hard at the TorchDynamo level, however compiler backends don't support them.  Bailouts would also help in the case of data-dependent control flow, and remove the need for a graph break in those cases.   Tracing-JIT style.  @csarofeen any interest in adding bailout support to nvFuser.

I was wondering if we could maybe try to break up these requirements for supporting dynamic shapes by layer (OSI-style). I'd appreciate if you could fill in/correct me either inplace (if github allows) or in a separate comment.
Layer 1 : Tracing <--- what we are currently building @ezyang @zou3519
* we want to trace shapes being used as arguments in ops symbolically and arithmetics on ops
* this tells us how shapes are used and if there
* we want to materialize or propagate shapes if they are used in CF since we need to know what to trace next
* trace comparisons to help a compiler make specialization decisions (I assume TD can't see backward graphs w/o tracing)?
Layer 2 : Compiling (Graph Compiler)
Layer 2.1 : Symbolic Shape Analysis @jansel @eellison
* we want a facility to propagate constraints on a given dimension back to the inputs (needed for guards and for bailouts optimization if we were to use the latter)
Layer 2.2: Guarding @jansel
* at the very least, we want to know what to guard on, so we can be correct?
* if a shape is used in comparison and doesn't have dynamic ops upstream (e.g. nonzero, unique), we can guard on a set of input dimensions contributing to this shape
* if a shape is used in comparison and is dynamic upstream, we need to break a graph or use bailouts?
* the shapes we must guard on we can specialize in a graph (may also be done in Layer 2.2)
Layer 2.2: (Device Compiler via TorchScript)

NVFuser

we may choose to overspecialize based on profiling information from inputs
@csarofeen @jjsjann123
Layer 3 : Runtime @jansel

we want to figure out what to do when guards fail. It sounds like we have different types of guard failures
* must guards that guarantee we are correct
* overspecialized guards that were used for optimization
* bailouts?

were discussing this last night, and the model here seems to result in hard-to-fix overspecialization when implementing broadcasting in userland.

If we specialize based on Symbolic Value Sets and 1s, something like:
        if x == 1:
            r.append(y)
        elif y == 1:
            r.append(x)
        elif x == y:
            r.append(x)
        else:
            raise RuntimeError("shapes not compatible")

can be optimized out without requiring overspecialization

Enabling torchdynamo.config.dynamic_shapes will cause new graph breaks. Many models have code like assert x.shape == (1,2,3), if x.size(1) == 10, math.sqrt(x.shape[-1]), etc. This Python code operating on integer shapes is the defacto way to express many things in PyTorch. With static shapes, TorchDynamo can constant-propagate this stuff away, however, with dynamic shapes it will break the graph.

Have we actually observed performance hit from graph breaking on dynamic-shape-based control flow in a real model? In the update post (https://dev-discuss.pytorch.org/t/torchdynamo-update-5-improved-capture-bigger-graphs/556), sounds like getting basic dynamic shape support (assuming all tensors to be dynamic shape and breaking on dynamic-shape-based control flow) would be good enough to cover current workflows. Our assumption is that the majority of the models, especially models used in production, would be performing with the limited dynamic shape support despite graph fragmentation from dynamic-shape-based control flow.
I'm very hesitant going into guarding logic backed by complex analysis, they can lead to nasty debugging session, where it is tricky for user to trace the guard failure back the script. Bailout is simply not in our roadmap.

Layer 2.2: (Device Compiler via TorchScript)
NVFuser
we may choose to overspecialize based on profiling information from inputs

I think it's fine for compiler backends to choose to further specialize on dynamic shapes. The added complication is tricky to debug but that's a reasonable choice to defer to backends. @Krovatkin

So, what we should do is optimistically assume that everything is static, and then pessimistically decay things to dynamic when (1) the user tells us so or (2) we observe it in reality. For static inputs, we can handle conditions just fine. For dynamic inputs, it seems very reasonable to just graph break whenever a user explicitly depends on a condition derived from the dynamic input. We still need symbolic shape formulas, but we don't need to do fancy backward analysis from Z3, we just need to know if a condition depended on a dynamic shape (tracking sizes per dim will help precision and avoid unnecessary graph breaks). And the graph breaks will occur precisely when we need divergent behavior for the dynamic inputs as specified by the user.

@ezyang's idea sounds appealing. Giving user the power to mark static/dynamic shape on inputs and graph breaking on dynamic-size-based control-flow.
I prefer a different angle to this, and take dimensions to be dynamic by default (unless user specifically told us otherwise). The rest would be the same, we'll just let graph break when control flows are encountered.
This allows us to progressively expand our support.

Initially we can just restrict the support to everything being dynamic and graph breaking on dynamic control flow;
We would allow user to specify static shape on certain dimensions and propagate the static-ness on symbolic shape formulas;
This allows us to slowly build out the symbolic shape formulas as we proceed, while maintaining support to dynamic shapes. The good things about this approach is that: 1. it does NOT require a heavy initial investment; 2. it pays back and resolves our issue with dynamic shape on existing work flow.

The problem is that it is still uncertain that dynamic-size-based control flow have any impact on real world models. Trying to optimize prematurely with made-up examples might give us a complex system that is very challenging to refactor later in the road.

At least for the discussion here, I think the main source of dynamic-size-control-flow would be PrimTorch.  The idea of PrimTorch would be to move broadcasting checks to Python, so even the simple case of a+b would have dynamic-size-control-flow from inside the decomposed torch.add when it checks for broadcasts.
If PrimTorch does that (not everyone is convinced on this), we will need to get really good at handling dynamic-size-control-flow because almost every op will have it.
If we decide against that for PrimTorch, I think a much simpler solution will suffice.  We just need to make sure it handles the simple cases like assert x.shape==(1,2,3), and graph break on anything complicated.

I prefer a different angle to this, and take dimensions to be dynamic by default (unless user specifically told us otherwise)

Can we try to write down the tradeoffs for the various choices, static versus dynamic by default? I want to defer to your intuition as a backend writer but I am not seeing the case for dynamic by default. Maybe you are weighing instant quiescence a lot more than I am. Here's what I see.
Pro static by default:

Automatic promotion from static to dynamic is always sound, but not vice versa: even if we observe an input to always take the same shape a hundred times, it could vary on the 101st time.
Upon quiescence (i.e., all dynamic inputs have been found), we will have found maximal length graphs (if inputs are dynamic are default, you will have maximally conservative graph chunks, leaving performance on the table until a user annotates inputs as static to recover larger graphs). In particular, by default, userland control flow on otherwise static graphs will not cause graph breaks.

Pro dynamic by default:

No quiescence period is necessary; you will never have to recompile after the first compilation.
No dynamic shape analysis is initially needed, since everything is dynamic and so you have to cut everywhere anyway. (But with static by default you can still do an easy conservative analysis; e.g., by tracking only Tensor level dependency as jansel suggests at the start of this point, for propagating dynamic-ness)

Am I missing anything?
BTW, for PrimTorch decompositions, even if they are not handled by the torchdynamo frontend (so we capture broadcasting torch.add from torchdynamo), we still need a second level specialization policy to actually run the lowerings (which are going to expect to be able to do, e.g., 1-size tests to insert appropriate broadcasts), so even if you don't need a policy for the first level specialization (user land Python only), we still need the policy for the second level.

Pro static by default:

Automatic promotion from static to dynamic is always sound, but not vice versa: even if we observe an input to always take the same shape a hundred times, it could vary on the 101st time.
Upon quiescence (i.e., all dynamic inputs have been found), we will have found maximal length graphs (if inputs are dynamic are default, you will have maximally conservative graph chunks, leaving performance on the table until a user annotates inputs as static to recover larger graphs). In particular, by default, userland control flow on otherwise static graphs will not cause graph breaks.

Pro dynamic by default:

No quiescence period is necessary; you will never have to recompile after the first compilation.
No dynamic shape analysis is initially needed, since everything is dynamic and so you have to cut everywhere anyway. (But with static by default you can still do an easy conservative analysis; e.g., by tracking only Tensor level dependency as jansel suggests at the start of this point, for propagating dynamic-ness)

This sounds about right to me and I can see the appeal of taking static by default, which automatically gives a tighter set of dynamic dimensions.
I was backing dynamic by default because:

It doesn't introduce debugging complexity. Dynamic by default means a naive user wouldn't be surprised by unintentional graph change, nor would it be necessary to navigate through nested fallback graph.

Re Pro dynamic by default point 2 [no dynamic shape analysis is initially needed]
At day-1 we don't need to do much more than breaking graph at dynamic-size-based control flow. My naive optimism is betting on that'll be enough to solve existing problems. I don't think this advantage has been given its deserved credit.
Even when we build out the system, dynamic by default sounds more robust to propagation failures. e.g. when static shape propagation fails, we'll ended up with graph breaking. Say if we have N point of shape properties set wrong, we'll ended up with o(N) fragmented graph, which is bad.
Comparing to static by default, for N point of dynamic dimension marked wrong, our fallback would each initially identify all shapes within the subgraph as static and trigger another propagation failure in the following run, which gives us o(N**2) materialized fallback. This is much worse.

I do realize that a large chunk of my argument is speculating on future implementation. :stuck_out_tongue_closed_eyes: Maybe a middle ground would be to give this as an option to user? In my naive mind, the main challenge in implementation would be the propagation of shape properties (static/dynamic) and I think they could share the same formula. So it's a decision that we don't have to make today.

@ezyang Is this issue still valid after Dynamic shapes work?

That is a complicated question, as what we ended up implementing diverges a bit from jansel's initial proposal here. Let me see if there's anything here worth still thinking about.
When dynamic=True, we do dynamic by default, except parameters, which are assumed to be static by default, so we quiesce immediately. We don't do jansel's sledgehammer approach of making an input completely static when a user conditions on it; instead, we record the minimal guard condition necessary for the conditional in ShapeEnv, and instead have more complicated guard expressions to test at entry time. In particular, the use of SymInt in fake tensor completely bypasses the traditional TensorVariable specialization mechanism (however, we haven't removed the old specialization mechanism yet).
Sure, let's close this.


doc: Fix typo

Fix miscellaneous typos.
s/necesary/necessary/
s/occured/occurred/
s/overriden/overridden/
s/partions/partitions/
s/spefying/specifying/

@nhayama Thank you for correction.
Fixes for conf/local.conf.sample{.extended} are also valuable to poky master branch.

Thanks for information.
I will send a patch to poky later.


 I am running into segfaults when trying to test the pulled image.

This is an OSS-Fuzz issue/fuzzer engine issues. It's not trivial to solve and I probably would not have high hopes for it being solved in the near future. The issue is tracked on the OSS-Fuzz repository in these issues:

https://github.com/google/oss-fuzz/issues/2295
https://github.com/google/oss-fuzz/issues/1754

Got it. Thanks! Feel free to close this one here.


Sagemaker Studio extension does not work in version 0.18

I tried installing this using version 0.18 in Sagemaker Studio but I get an error that npm packages are missing.

I just opened a Studio instance and installed v0.18.0. Are you using a "System terminal" or an "Image terminal" to install? (It should be "System terminal")
Can you attach the command you ran and the output?

Closing due to lack of info. Please reopen with the requested info if you're still seeing this problem.

Hi. I used the System terminal.   The error I get is this:
`bash-4.2$ cat /tmp/jupyterlab-debug-i3ycwro2.log
[LabBuildApp] Building in /opt/conda/share/jupyter/lab
[LabBuildApp] Yarn configuration loaded.
[LabBuildApp] Node v12.16.1
[LabBuildApp] Building jupyterlab assets (build:prod)
[LabBuildApp] > node /opt/conda/lib/python3.7/site-packages/jupyterlab/staging/yarn.js install --non-interactive
[LabBuildApp] yarn install v1.15.2
[1/5] Validating package.json...
[2/5] Resolving packages...
error Couldn't find package "<EMAIL_ADDRESS>required by "@amzn/sagemaker-ui@file:../extensions/amzn-sagemaker-ui-2.11.4.tgz" on the "npm" registry.
info Visit https://yarnpkg.com/en/docs/cli/install for documentation about this command.
warning @amzn/sagemaker-ui > react-jsonschema-form ><EMAIL_ADDRESS>core-js@<3 is no longer maintained and not recommended for usage due to the number of issues. Please, upgrade your dependencies to the actual version of core-js@3.
warning @amzn/sagemaker-ui > react-jsonschema-form > @babel/runtime-corejs2 ><EMAIL_ADDRESS>core-js@<3 is no longer maintained and not recommended for usage due to the number of issues. Please, upgrade your dependencies to the actual version of core-js@3.
warning @amzn/sagemaker-ui > compassql > datalib ><EMAIL_ADDRESS>Use topojson-client, topojson-server or topojson-simplify directly.
warning @amzn/sagemaker-ui > compassql > datalib ><EMAIL_ADDRESS>request has been deprecated, see https://github.com/request/request/issues/3142
warning @amzn/sagemaker-ui > compassql > datalib > request ><EMAIL_ADDRESS>this library is no longer supported
Error: Couldn't find package "<EMAIL_ADDRESS>required by "@amzn/sagemaker-ui@file:../extensions/amzn-sagemaker-ui-2.11.4.tgz" on the "npm" registry.
at /opt/conda/share/jupyter/lab/staging/yarn.js:37186:17
at Generator.throw ()
at step (/opt/conda/share/jupyter/lab/staging/yarn.js:310:30)
at /opt/conda/share/jupyter/lab/staging/yarn.js:323:13
at processTicksAndRejections (internal/process/task_queues.js:97:5)
Error: Couldn't find package "<EMAIL_ADDRESS>required by "@amzn/sagemaker-ui@file:../extensions/amzn-sagemaker-ui-2.11.4.tgz" on the "npm" registry.
at /opt/conda/share/jupyter/lab/staging/yarn.js:37186:17
at Generator.throw ()
at step (/opt/conda/share/jupyter/lab/staging/yarn.js:310:30)
at /opt/conda/share/jupyter/lab/staging/yarn.js:323:13
at processTicksAndRejections (internal/process/task_queues.js:97:5)
Error: Couldn't find package "<EMAIL_ADDRESS>required by "@amzn/sagemaker-ui@file:../extensions/amzn-sagemaker-ui-2.11.4.tgz" on the "npm" registry.
at /opt/conda/share/jupyter/lab/staging/yarn.js:37186:17
at Generator.throw ()
at step (/opt/conda/share/jupyter/lab/staging/yarn.js:310:30)
at /opt/conda/share/jupyter/lab/staging/yarn.js:323:13
at processTicksAndRejections (internal/process/task_queues.js:97:5)
Error: Couldn't find package "<EMAIL_ADDRESS>required by "@amzn/sagemaker-ui@file:../extensions/amzn-sagemaker-ui-2.11.4.tgz" on the "npm" registry.
at /opt/conda/share/jupyter/lab/staging/yarn.js:37186:17
at Generator.throw ()
at step (/opt/conda/share/jupyter/lab/staging/yarn.js:310:30)
at /opt/conda/share/jupyter/lab/staging/yarn.js:323:13
at processTicksAndRejections (internal/process/task_queues.js:97:5)
Error: Couldn't find package "<EMAIL_ADDRESS>required by "@amzn/sagemaker-ui@file:../extensions/amzn-sagemaker-ui-2.11.4.tgz" on the "npm" registry.
at /opt/conda/share/jupyter/lab/staging/yarn.js:37186:17
at Generator.throw ()
at step (/opt/conda/share/jupyter/lab/staging/yarn.js:310:30)
at /opt/conda/share/jupyter/lab/staging/yarn.js:323:13
at processTicksAndRejections (internal/process/task_queues.js:97:5)
Error: Couldn't find package "<EMAIL_ADDRESS>required by "@amzn/sagemaker-ui@file:../extensions/amzn-sagemaker-ui-2.11.4.tgz" on the "npm" registry.
at /opt/conda/share/jupyter/lab/staging/yarn.js:37186:17
at Generator.throw ()
at step (/opt/conda/share/jupyter/lab/staging/yarn.js:310:30)
at /opt/conda/share/jupyter/lab/staging/yarn.js:323:13
at processTicksAndRejections (internal/process/task_queues.js:97:5)
Error: Couldn't find package "<EMAIL_ADDRESS>required by "@amzn/sagemaker-ui@file:../extensions/amzn-sagemaker-ui-2.11.4.tgz" on the "npm" registry.
at /opt/conda/share/jupyter/lab/staging/yarn.js:37186:17
at Generator.throw ()
at step (/opt/conda/share/jupyter/lab/staging/yarn.js:310:30)
at /opt/conda/share/jupyter/lab/staging/yarn.js:323:13
at processTicksAndRejections (internal/process/task_queues.js:97:5)
Error: Couldn't find package "<EMAIL_ADDRESS>required by "@amzn/sagemaker-ui@file:../extensions/amzn-sagemaker-ui-2.11.4.tgz" on the "npm" registry.
at /opt/conda/share/jupyter/lab/staging/yarn.js:37186:17
at Generator.throw ()
at step (/opt/conda/share/jupyter/lab/staging/yarn.js:310:30)
at /opt/conda/share/jupyter/lab/staging/yarn.js:323:13
at processTicksAndRejections (internal/process/task_queues.js:97:5)
Error: Couldn't find package "<EMAIL_ADDRESS>required by "@amzn/sagemaker-ui@file:../extensions/amzn-sagemaker-ui-2.11.4.tgz" on the "npm" registry.
at /opt/conda/share/jupyter/lab/staging/yarn.js:37186:17
at Generator.throw ()
at step (/opt/conda/share/jupyter/lab/staging/yarn.js:310:30)
at /opt/conda/share/jupyter/lab/staging/yarn.js:323:13
at processTicksAndRejections (internal/process/task_queues.js:97:5)
Error: Couldn't find package "<EMAIL_ADDRESS>required by "@amzn/sagemaker-ui@file:../extensions/amzn-sagemaker-ui-2.11.4.tgz" on the "npm" registry.
at /opt/conda/share/jupyter/lab/staging/yarn.js:37186:17
at Generator.throw ()
at step (/opt/conda/share/jupyter/lab/staging/yarn.js:310:30)
at /opt/conda/share/jupyter/lab/staging/yarn.js:323:13
at processTicksAndRejections (internal/process/task_queues.js:97:5)
Error: Couldn't find package "<EMAIL_ADDRESS>required by "@amzn/sagemaker-ui@file:../extensions/amzn-sagemaker-ui-2.11.4.tgz" on the "npm" registry.
at /opt/conda/share/jupyter/lab/staging/yarn.js:37186:17
at Generator.throw ()
at step (/opt/conda/share/jupyter/lab/staging/yarn.js:310:30)
at /opt/conda/share/jupyter/lab/staging/yarn.js:323:13
at processTicksAndRejections (internal/process/task_queues.js:97:5)
Error: Couldn't find package "<EMAIL_ADDRESS>required by "@amzn/sagemaker-ui@file:../extensions/amzn-sagemaker-ui-2.11.4.tgz" on the "npm" registry.
at /opt/conda/share/jupyter/lab/staging/yarn.js:37186:17
at Generator.throw ()
at step (/opt/conda/share/jupyter/lab/staging/yarn.js:310:30)
at /opt/conda/share/jupyter/lab/staging/yarn.js:323:13
at processTicksAndRejections (internal/process/task_queues.js:97:5)
Error: Couldn't find package "<EMAIL_ADDRESS>required by "@amzn/sagemaker-ui@file:../extensions/amzn-sagemaker-ui-2.11.4.tgz" on the "npm" registry.
at /opt/conda/share/jupyter/lab/staging/yarn.js:37186:17
at Generator.throw ()
at step (/opt/conda/share/jupyter/lab/staging/yarn.js:310:30)
at /opt/conda/share/jupyter/lab/staging/yarn.js:323:13
at processTicksAndRejections (internal/process/task_queues.js:97:5)
Error: Couldn't find package "<EMAIL_ADDRESS>required by "@amzn/sagemaker-ui@file:../extensions/amzn-sagemaker-ui-2.11.4.tgz" on the "npm" registry.
at /opt/conda/share/jupyter/lab/staging/yarn.js:37186:17
at Generator.throw ()
at step (/opt/conda/share/jupyter/lab/staging/yarn.js:310:30)
at /opt/conda/share/jupyter/lab/staging/yarn.js:323:13
at processTicksAndRejections (internal/process/task_queues.js:97:5)
Error: Couldn't find package "<EMAIL_ADDRESS>required by "@amzn/sagemaker-ui@file:../extensions/amzn-sagemaker-ui-2.11.4.tgz" on the "npm" registry.
at /opt/conda/share/jupyter/lab/staging/yarn.js:37186:17
at Generator.throw ()
at step (/opt/conda/share/jupyter/lab/staging/yarn.js:310:30)
at /opt/conda/share/jupyter/lab/staging/yarn.js:323:13
at processTicksAndRejections (internal/process/task_queues.js:97:5)
Error: Couldn't find package "<EMAIL_ADDRESS>required by "@amzn/sagemaker-ui@file:../extensions/amzn-sagemaker-ui-2.11.4.tgz" on the "npm" registry.
at /opt/conda/share/jupyter/lab/staging/yarn.js:37186:17
at Generator.throw ()
at step (/opt/conda/share/jupyter/lab/staging/yarn.js:310:30)
at /opt/conda/share/jupyter/lab/staging/yarn.js:323:13
at processTicksAndRejections (internal/process/task_queues.js:97:5)
[LabBuildApp] npm dependencies failed to install
[LabBuildApp] Traceback (most recent call last):
[LabBuildApp]   File "/opt/conda/lib/python3.7/site-packages/jupyterlab/debuglog.py", line 47, in debug_logging
yield
[LabBuildApp]   File "/opt/conda/lib/python3.7/site-packages/jupyterlab/labapp.py", line 98, in start
command=command, app_options=app_options)
[LabBuildApp]   File "/opt/conda/lib/python3.7/site-packages/jupyterlab/commands.py", line 459, in build
command=command, clean_staging=clean_staging)
[LabBuildApp]   File "/opt/conda/lib/python3.7/site-packages/jupyterlab/commands.py", line 660, in build
raise RuntimeError(msg)
[LabBuildApp] RuntimeError: npm dependencies failed to install
[LabBuildApp] Exiting application: JupyterLab`

I did manage to get it to work in a SageMaker Notebook though

I am also seeing this issue with v0.18. I think the latest update to Studio for the new features may have broken something?

@tomfaulhaber - Can you reopen this? I am still seeing the same error. I've tried to make a new user and run it in there in Sagemaker Studio to no avail.

Yup, I see this now too. I'll chase it out.

This has now been fixed in SageMaker Studio itself. The fix is still rolling out but it is already in us-west-2, but not yet in us-east-1. When it's rolled out to all the regions (sometime in the next few days, I believe), I'll close the issue.

Seems to be working in all regions now. Thanks for surfacing this, @rafaelcb and @jimmycfa!

It is 2021-02-05 and my region is us-east-1. I am still seeing the error when trying to install jupyter labextentions. I would appreciate any help.
The command I run from the Terminal is as following:
jupyter labextension install @jupyterlab/toc

Here is s snippet of the error message
Error: Couldn't find package "<EMAIL_ADDRESS>required by "@amzn/sagemaker-ui@file:../extensions/amzn-sagemaker-ui-2.13.1.tgz" on the "npm" registry.
    at /opt/conda/share/jupyter/lab/staging/yarn.js:37186:17
    at Generator.throw (<anonymous>)
    at step (/opt/conda/share/jupyter/lab/staging/yarn.js:310:30)
    at /opt/conda/share/jupyter/lab/staging/yarn.js:323:13
    at processTicksAndRejections (internal/process/task_queues.js:97:5)
Error: Couldn't find package "<EMAIL_ADDRESS>required by "@amzn/sagemaker-ui@file:../extensions/amzn-sagemaker-ui-2.13.1.tgz" on the "npm" registry.
    at /opt/conda/share/jupyter/lab/staging/yarn.js:37186:17
    at Generator.throw (<anonymous>)
    at step (/opt/conda/share/jupyter/lab/staging/yarn.js:310:30)
    at /opt/conda/share/jupyter/lab/staging/yarn.js:323:13
    at processTicksAndRejections (internal/process/task_queues.js:97:5)
Error: Couldn't find package "<EMAIL_ADDRESS>required by "@amzn/sagemaker-ui@file:../extensions/amzn-sagemaker-ui-2.13.1.tgz" on the "npm" registry.
    at /opt/conda/share/jupyter/lab/staging/yarn.js:37186:17
    at Generator.throw (<anonymous>)
    at step (/opt/conda/share/jupyter/lab/staging/yarn.js:310:30)
    at /opt/conda/share/jupyter/lab/staging/yarn.js:323:13
    at processTicksAndRejections (internal/process/task_queues.js:97:5)
Error: Couldn't find package "<EMAIL_ADDRESS>required by "@amzn/sagemaker-ui@file:../extensions/amzn-sagemaker-ui-2.13.1.tgz" on the "npm" registry.
    at /opt/conda/share/jupyter/lab/staging/yarn.js:37186:17
    at Generator.throw (<anonymous>)
    at step (/opt/conda/share/jupyter/lab/staging/yarn.js:310:30)
    at /opt/conda/share/jupyter/lab/staging/yarn.js:323:13
    at processTicksAndRejections (internal/process/task_queues.js:97:5)
Error: Couldn't find package "<EMAIL_ADDRESS>required by "@amzn/sagemaker-ui@file:../extensions/amzn-sagemaker-ui-2.13.1.tgz" on the "npm" registry.
    at /opt/conda/share/jupyter/lab/staging/yarn.js:37186:17
    at Generator.throw (<anonymous>)
    at step (/opt/conda/share/jupyter/lab/staging/yarn.js:310:30)
    at /opt/conda/share/jupyter/lab/staging/yarn.js:323:13
    at processTicksAndRejections (internal/process/task_queues.js:97:5)

npm dependencies failed to install
Traceback (most recent call last):

  File "/opt/conda/lib/python3.7/site-packages/jupyterlab/debuglog.py", line 47, in debug_logging
    yield

  File "/opt/conda/lib/python3.7/site-packages/jupyterlab/labextensions.py", line 105, in start
    command=command, app_options=app_options)

  File "/opt/conda/lib/python3.7/site-packages/jupyterlab/commands.py", line 459, in build
    command=command, clean_staging=clean_staging)

  File "/opt/conda/lib/python3.7/site-packages/jupyterlab/commands.py", line 660, in build
    raise RuntimeError(msg)

RuntimeError: npm dependencies failed to install

I face the same issue that @songqiang is having. It seems there is an issue with aws extensions, like @amzn/sagemaker-ui-<EMAIL_ADDRESS>What could be the problem?


feat(material/theming): support for additional palettes

Add support for additional palettes outside of the
standard primary, accent, and warn palettes.
Closes #22430

Thanks for this pull request. I'm not sure if this is something we want to support. Maybe @jelbourn can weigh in on this.

I definitely understand that this is something that has been requested in the past, but I don't think we'd want to move forward with the feature at this time. We're in the beginning phases of planning for a Material Design update, and I want to have a better idea of what that will entail before we make any changes to the theming system.


Integrate upstream changes

Motivation
The official AWS lambda-runtime-init received some upstream updates (typically merged in big blobs from their internal repository). We should update our customized localstack version to support the latest features (e.g., response streaming) and updates (e.g., the new Golang version). Beyond smaller doc updates, the main updates were:

Jun 8, 2023 chore(deps): Update to Golang 1.19 (#95) ⇒ Easy deps upgrade to Go 1.19
Apr 27, 2023 feat: Pull upstream changes 2023/04 (#87) ⇒ Major changes to the init and internal API (6,845 additions and 2,726 deletions)

Background
Internal docs: https://www.notion.so/localstack/Update-RIE-with-upstream-changes-for-response-streaming-18a303b503c54f958cfbee5841ef5402?pvs=4
Changes
Integrates the upstream changes from the AWS lambda-runtime-init repo and adjusts the API accordingly (see documented commit log for details).
👉 Custom LocalStack changes git diff 8b003ee53ffe758979cf64f43f6ae58363efcc2d..integrate-upstream-changes
Testing
Test against the LocalStack test suite.
🧪 The localstack branch integrate-lambda-init-upstream-changes contains some improved tests for the request_id propagation issue. For example: tests.aws.services.lambda_.test_lambda.TestRequestIdHandling.test_request_id_invoke
I tested other categories including:

tests.aws.services.lambda_.test_lambda.TestLambdaBaseFeatures
tests.aws.services.lambda_.test_lambda.TestRequestIdHandling

TODO

[x] Fix failing snapshot test due to uuid not being replaced in the test tests.aws.services.lambda_.test_lambda.TestLambdaFeatures.test_invocation_with_qualifier
[x] Resolve TODOs (mostly coding out some logs, error handling etc)
[x] Rebase after merging the permission PR https://github.com/localstack/lambda-runtime-init/pull/22 => Merged the localstack branch back as a quickfix because rebasing again is terrible with so many conflicts 😢

Fixed the error reporting to use the new dedicated callback for SendInitErrorResponse
Other issues discovered during testing:

It appears the test TestLambdaRuntimesCommon.test_introspection_invoke fails for for the runtimes python3_7, java8, java8_al2, java11, java17, go1_x, provided, provided_al2 due the two missing environment variables PWD=/var/task and SHLVL=0. These are part of CustomerEnvironmentVariables but just not available anymore for some runtimes 🙃  I also updated the snapshots but nothing has changed at real AWS.
go1.x runtime tests fail for me locally but that might be an issue with the ARM build. Both the previous init and these changes yield an error 2023-10-17 21:20:08 time="2023-10-17T19:20:08Z" level=warning msg="Process 19(bootstrap) exited: Runtime exited with error: signal: trace/breakpoint trap" func="go.amzn.com/lambda/core.(*Watchdog).GoWait.func1" file="/home/runner/work/lambda-runtime-init/lambda-runtime-init/lambda/core/watchdog.go:67"
Several more tests fail on macOS, most of them due to port in use when using multiple Lambda functions. Including: test_lambda_different_iam_keys_environment, test_runtime_introspection_arm (due to different debug env), test_lambda_concurrency_block, test_provisioned_concurrency, test_reserved_concurrency_async_queue, test_lambda_versions_with_code_changes, test_lambda_alias_moving, test_alias_routingconfig

It's rather hard to get through everything, but our changes look good. Let's see if the LS tests pass :)

Yeah, I think we just need to release an imperfect "-dev" version to get a good overview from a LocalStack CI run. (we could consider short-lived feature-branch artifacts in the future if velocity becomes a challenge)


Add George Tarnaras to Contributors list

Hi  @georgedb, I'm quite elated about your pull request. I wanna evolve this project to addresses various problems faced by first-time contributors. I'd love to learn about your journey in open source community, the problems, pain points you had etc.
Could you explain how you felt when you went through the tutorial, made a pull request and learned that I merged it?
We’ve recently added social share  to our web app. Could you please go to https://roshanjossey.github.io/first-contributions/#social-share and share your first contribution to open source?
Also, check out projects with easy issues while you’re there.

Hey! Haven't used git for a while and that was a the great tutorial for first time users. The steps are easy to follow and quite clear. I 'd like to participate in some open source projects so i will continue with the link you 've shared :) Thanks!


Fixed #35591: Added warning to runserver about not being suitable for production usage.

Trac ticket number
ticket-35591
Branch description
Adds a warning message with a link to the deployment documentation in the runserver command
Checklist

[x] This PR targets the main branch.
[x] The commit message is written in past tense, mentions the ticket number, and ends with a period.
[ ] I have checked the "Has patch" ticket flag in the Trac system.
[x] I have added or updated relevant tests.
[x] I have added or updated relevant docs, including release notes if applicable.
[x] I have attached screenshots in both light and dark modes for any UI changes.

I believe I need to still update the release notes.


chore: scale-jx-workshop-quickstart to 0.0.1

chore: Promote scale-jx-workshop-quickstart to version 0.0.1

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by:
To fully approve this pull request, please assign additional approvers.
We suggest the following additional approvers:
If they are not already assigned, you can assign the PR to them by writing /assign  in a comment when ready.
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

OWNERS

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment


Enhancement request: Add a count of the number of times a call is made to IMDB

IMDB only permits 1000 requests a day - caching can help reduce that number. It would be nice to show the number of requests to IMDB and demonstrate that caching helps in that reduction. Similar to the response time number we could have another number on the Movies (Legacy) page that shows the 24 hour accumulated IMDB requests. (Unlike the response time number this number would be shared across all movies and actors)

I have divided this issue in 2:

this one to count
the issue #50 for rate limiting (1000 req / 24h)


Documentation and/or tutorial to explain the process of finding the density of a filament

Is your feature request related to a problem? Please describe.
Yes, being able to put accurate information into the required field of "Filament Density" in order to use the software.
Describe the solution you'd like
I'd like there to either be detailed documentation or a link to a resource that can help a user find the density of their filaments within the software next to the "Filament Density" field.
Describe alternatives you've considered
I've seen a few threads that go over some "Best estimate" numbers to use for generic filaments with a disclaimer that it might not be accurate, as well as a user-edited database of filament information. Both alt solutions could use documentation like what I'm requesting.
Additional context
I googled several iterations of "How to find the density of a filament" as well as trying to find a datasheet of my filaments that contained density information, but I couldn't find any reliable results. The only somewhat reliable result I did find is issue #69: "Auto-populate density field," full of people with similar issues, but there were no usable solutions to finding the density from that post.
The lack of relevant results could be because of Google's personalization algorithms that make each person's results different based on their search histories, so it is likely that my google results did not include the information I was looking for.
People have to be calculating the density of their filaments somehow because this software exists and people use it, but my question is how, and if the answer to that question can be documented and linked to next to the field within the software.
Edit: I want to clarify that this is asking about how to find the density when the filament you're using does not have that information attached. Obviously if the manufacturer supplies that information, you can find it that way, but if not provide a tool to or calculation in order to find the density.

You would need a really precise scale and it's work that is pretty unnecessary. Googling less than 1 minute per filament is much quicker, way more reliable and more accurate. I fail to understand how you can not find the neccessary data sheets, just put in the filament name and hit go.
Basically a lot of vendors and every manufacturer offers this information in the technical datasheet on the product page.


Multiple calls to Openshift API to fetch same data.

/kind code-refactoring

What versions of software are you using?
Operating System:
Output of odo version:
How did you run odo exactly?
odo app describe
Actual behavior
for odo app describe command, Multiple calls to fetch the same data.
This is happening due to non hierarchical nature of structures, e.g. AppSpec(https://github.com/openshift/odo/blob/master/pkg/application/types.go#L16 ) can refer component (https://github.com/openshift/odo/blob/master/pkg/application/types.go#L16) instead of having it as list of strings, similarly component can refer storage structure instead of having as list of strings.
https://github.com/openshift/odo/blob/master/pkg/application/types.go#L16
https://github.com/openshift/odo/blob/master/pkg/component/types.go#L22
There could be a reason of making structures this way, maybe I am not aware of, but i felt having inheritance in structures, would make it less error prone/synced output and non repeated calls to openshift API.
Expected behavior
Any logs, error output, etc?

You are right. But it will need some lazy loading. Because if you start adding references you can end up fetching a lot of data that you don't need.
Let's say that  Application has an array of Components structs instead of just listing names and Components has array Storage structs instead of just names, and also the same for URL.
Now If I want to get information about the application and names of the components without any details I'll end up listing data for everything or with uncomplete structures.
But with some kind of lazy loading it would make sense and it would be great.

@kadel Agreed, But at some places without using reference we are fetching all data like odo component list, https://github.com/openshift/odo/blob/master/pkg/component/component.go#L864, it is calling GetComponent() https://github.com/openshift/odo/blob/master/pkg/component/component.go#L1320, which is populating storage/url's also. Its like if we are referring  storage as list of strings, we need to get that information too, its just the way of storing it will differ.
And listing we are doing manual, with control of what informations we want to present.
https://github.com/openshift/odo/blob/master/pkg/odo/cli/component/list.go#L73
But i also agree that this is a large refactoring, which could break things and does not require if everything running well :).


Update lifx-lan-address.js

Added bitwise operation to _getBroadcastAddress to return correct broadcast addresses for all netmasks.
Fixes #40

@futomi Is it possible to merge this PR into master?  It fixes the issue I am having with my broadcast address from a non-standard subnet mask
Thanks again for your work!


Wrong method signature in IFTXClient interface

"future" param in GetFundingRatesAsync method is optional. Impossible to use this method without this param

Fixed it in the latest update, thanks


Add lexer feature to avoid compilation issues with 2021 edition of Rust.

See https://github.com/lalrpop/lalrpop/issues/650

bors r+


Make footer to be at bottom

@BurlacuLucian Any news?

@BurlacuLucian Any news?

From docusaurus it is set so that the footer is applied immediately after the content and it is still inside the container, but if I change the sizes of this container in custom.css so that the height is always 100%, then the footer is applied normally but other styles from the navbar and sidebar are broken.

@BurlacuLucian Please fix it asap.


winget.exe does not display characters properly in cmd.exe and powershell if user's preferred language is Korean

🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨
I ACKNOWLEDGE THE FOLLOWING BEFORE PROCEEDING:

If I delete this entire template and go my own path, the core team may close my issue without further explanation or engagement.
If I list multiple bugs/concerns in this one issue, the core team may close my issue without further explanation or engagement.
If I write an issue that has many duplicates, the core team may close my issue without further explanation or engagement (and without necessarily spending time to find the exact duplicate ID number).
If I leave the title incomplete when filing the issue, the core team may close my issue without further explanation or engagement.
If I file something completely blank in the body, the core team may close my issue without further explanation or engagement.

All good? Then proceed!
-->

Brief description of your issue
cmd.exe and powershell do not display winget.exe korean characters.
Please use this section to describe your issue.   This could be a repeat of the title, or maybe you have more to say.
winget.exe does not display characters properly in cmd.exe and powershell if user's preferred language is Korean
Steps to reproduce

Go to settings and make Korean the user's preferred language. Run winget.exe from cmd.exe or powershell. (This works fine from Windows Terminal, so it might give a clue as to what is broken).

Expected behavior
Expected to see characters in Korean.
Actual behavior
Garbage characters displayed
Environment
2007 version of winget.
Any other software?

Please post the output of the following command:
winget --info

C:\Windows\system32>winget --info
Windows Package Manager v0.1.42101 미리 보기
Copyright (c) Microsoft Corporation. All rights reserved.
Windows: Windows.Desktop v10.0.19041.388
패키지: Microsoft.DesktopAppInstaller v1.10.42101.0
링크
개인정보처리방침 https://aka.ms/winget-privacy
라이선스 계약  https://aka.ms/winget-license
타사 통지 사항 https://aka.ms/winget-3rdPartyNotice
홈페이지     https://aka.ms/winget

It copy/pastes fine in Edge but cmd.exe just displays a bunch of rectangles instead of Korean. John McPherson knows it.

It turns out that this is expected; you have to have the correct font selected in order to display these characters because the standard connhost does not (and likely will never) have font fallback.  Terminal does have this feature, and thus it works there, regardless of the font selected.


[release] Release stable version 1.0.0

Description

Bump version on package.json and version.ts
Generate docs
Update readme.md

Test Plan

Related Links

There may be a page you have to update at docs/index.md as well

done https://github.com/aptos-labs/aptos-ts-sdk/pull/223/files#diff-b4d68dc855d0f9476d3f2ee343853bd21bf82ea9960d0cf06661baa244439dd6


add package manager support for windows - chocolatey

[ ] Add package manager support for windoz users with chocolatey: like here: https://github.com/bridgecrewio/yor-choco
[ ] use zip format for the Windows release so users can just unzip it without a separate tool.

Note for community
Please 👍 if you'd like to upvote this or receive updates.
See our contributing guide if you'd like to help with this issue!

I would like to work on this.

@JamesWoolfenden @aliscott I have done some changes but apparently choco pack is creating .nupkg file for me in the directory.
I will raise a PR for this can you take a look as to what I might be missing?

Hi @JamesWoolfenden I'm closing this as I'm happy to say that we now have chocolatey support for Infracost. You can install Infracost using:
choco install infracost

check out our chocolatey community page here and the choco package scripts here. Thanks pushing us to do this ❤


Error on linking: unexpected io operation while removing clobbered file

I'm getting a clobber error when I do this:
> rattler create sysroot_linux-64=2.12
# Succeeds
> rattler create sysroot_linux-64=2.17
Error: failed to link sysroot_linux-64-2.17-h4a8ded7_16.conda

Caused by:
    0: failed to link 'x86_64-conda-linux-gnu/sysroot/usr/share/zoneinfo'
    1: unexpected io operation while removing clobbered file
    2: Is a directory (os error 21)

This is a duplicate of #751


fix: component generate with new format, clean up of cache tests

Types of changes

[ ] Hot fix (emergency fix and release)
[x] Bug fix (non-breaking change which fixes an issue)
[x] New feature (non-breaking change which adds functionality)
[ ] Documentation (change which affects the documentation site)
[ ] Breaking change (fix or feature that would cause existing functionality to change)
[ ] Release (develop -> main)

Quality assurance (all should be covered).

[x] My code follows the code style of this project.
[ ] Documentation for my change is up to date?
[x] My PR meets testing requirements.
[x] All new and existing tests passed.
[x] All commits are signed-off.

Summary
Component generate works with the new format for rules in props
Clean up of cache tests
Key links:

Sonar coverage

Before you merge

Ensure it is a 'squash commit' if not a release.
Ensure CI is currently passing
Check sonar. If you are working for a fork a maintainer will reach out, if required.

The test comp_def file was in an old format that didn't test the code, so that was a good catch.  I have updated the test and test file and now there is good coverage.


CircleCI Data not capture in DORA matrix in 0.21.beta3 version

Question
While adding CircleCI data connection in DevLake to collect Data for DORA matrix.
I can not see analysis data from CircleCI CICD jobs.
Scenario that i expected. Please correct me if i assume anything wrong.

When i add data connection for CircleCI it shoud collect data from existing CICD jobs and represent using DORA matrix. But its not  working at current movement

Is any one guide me for CircleCI and Devlake integration ?
Screenshots
If applicable, add screenshots to help explain.
Additional context
Add any other context here.

I think the steps should be like:

Add CircleCI connection
Add CircleCI data scope under the connection
Setup the Scope Config properly
Add connection and data scope to the Project
Execute the project
See dashboard

Hi @klesh
I tried steps mentioned by you. but it's not working for me
Please find below screen shots for more information

Please guide me

How does your pipeline data look like? Share some sample?

Its simple pipeline that i have created for testing. Build and Deploy. using echo message

@skanthekar I don't know how to help with the information at hand. 😂

Hi @klesh. I ran into the same issue with 1.0.0-beta6. Using the CircleCI config below and setting the name to build-stuff is seen as deployment by DevLake. Setting the name to deploy is not seen as deployment. DevLake seems to be matching on workflow name only and ignoring the job name.
version: 2.1
jobs:
    build-image:
      docker:
        - image: "cimg/base:stable"
      steps:
        - run:
            name: "building-image"
            command: |
              echo "We are pretending to build an image!"
              sleep 15
              echo "pipeline.id is << pipeline.id >>"
              echo "pipeline.number is << pipeline.number >>"

    deploy:
      docker:
        - image: "cimg/base:stable"
      steps:
        - run:
            name: "update-chart-of-helm"
            command: |
                echo "We are pretending to update Helm chart!"
                sleep 15
                echo "Done!!"

workflows:
  build-stuff:
    jobs:
      - build-image:
          name: build

      - deploy:
            name: deploy
            requires:
                - build


added face detection function

added basic face detection using Haar cascades xml
need to generalize to a function then calling it in main

merge face detection function into main


reimplement Button::sized in WidgetExt

The Button::sized constructor might be useful for other widgets too so I re implemented it as a WidgetExt method.
I had to add the T: 'sized lifetime constraint to widgetext to allow sized to be wrapped in a SizedBox as well an Allign. I don't think this will cause issues but I would like a second opinion on this.

Also: this PR has motivated me to do #451, because I was getting confused by the method names. 😁

I was mostly trying to get sized out of button. I wanted to try out some similar ideas as https://github.com/xi-editor/druid/pull/446 and this was mostl.y meant as cleanup in preparation for that. I agree that sized in widget_ext clashes a bit with the fix_width and fix_height functionality so I would also be in favor of just removing it.

okay, why don't we just remove it for now?

I replaced sized with a fix_size that fits a bit better with the existing fix_width and fix_height but does both at the same time. This allows a user to do exactly the same thing as sized by combining fix_size and allign_vertical.


⚠ Loop has degraded performance

In d573ac8, Loop (https://loop.retargetly.com/) experienced degraded performance:

HTTP code: 200
Response time: 20277 ms

Resolved: Loop performance has improved in f0ffc68 after 7 minutes.


Guid and Timespan causing warning on maps

Describe the bug
On Guid and Timespan fields I'm getting these warnings on build:
[RMG066] No members are mapped in the object mapping from System.Guid to System.Guid (https://mapperly.riok.app/docs/configuration/analyzer-diagnostics/RMG066)
[RMG066] No members are mapped in the object mapping from System.TimeSpan to System.TimeSpan (https://mapperly.riok.app/docs/configuration/analyzer-diagnostics/RMG066)
Declaration code
    [MapProperty(nameof(FieldInstructionDto.Id), nameof(FieldInstruction.Id), Use = nameof(MapId))]
    public static partial void UpdateEntity(
        this FieldInstructionDto dto,
        FieldInstruction entity);

Actual relevant generated code
        [global::System.CodeDom.Compiler.GeneratedCode("Riok.Mapperly", "<IP_ADDRESS>")]
        public static partial void UpdateEntity(this global::Contracts.Forms.Field.FieldInstructionDto dto, global::Data.Ontologies.Forms.Fields.FieldInstruction entity)
        {
            entity.DocumentId = dto.DocumentId;
            entity.UpdatedOn = dto.UpdatedOn;
            entity.GeneratedBy = dto.GeneratedBy;
            entity.GeneratedByUserId = dto.GeneratedByUserId;
        }

Expected relevant generated code
// The generated code how you expect it to look like

Environment (please complete the following information):

Mapperly Version: 3.6.0
Nullable reference types: enabled
.NET Version: NET 8.0.303
Target Framework: .net8.0
Compiler Version: [e.g. 4.8.0-3.23524.11 (f43cd10b), obtain with #error version in any .cs file]
C# Language Version: 12.0
IDE: Rider 2024.1 (Also VS.net 2022)
OS: macOS 14.6.1 and Windows 11 2024.04

We made some changes recently in this area, does this still happen with 4.0.0-next.2?

This appears to fix it. Thanks!


vkDestroyer private constructor matter

I'm stuck at compilation with this error: (Visual Studio 13 Community + Windows 10):
VulkanCookbook\Library\Source Files\09 Command Recording and Drawing/19 Increasing the performance through increasing the number of separately rendered frames.h(44): error C2248: 'VulkanCookbook::VkDestroyer<VkSemaphore>::VkDestroyer' : cannot access private member declared in class 'VulkanCookbook::VkDestroyer<VkSemaphore>'
For some reason, it seems that in the FrameResources struct, the vkDestroyer members require the
VkDestroyer( VkDestroyer<OBJ> const & );
constructor.

I created the code on Windows 7 and Visual Studio 2015. But as I had some
problems with compilation on Linux, I changed it a bit so it compiles both
on Windows and Linux. So far I didn't have other issues but I didn't test
it on other versions of Visual Studio. But I will try to look at it.
29.07.2017 10:24 AM "Sebultura"<EMAIL_ADDRESS>napisał(a):

I'm stuck at compilation with this error: (Visual Studio 13 Community +
Windows 10):
VulkanCookbook\Library\Source Files\09 Command Recording and Drawing/19
Increasing the performance through increasing the number of separately
rendered frames.h(44): error C2248: 'VulkanCookbook::VkDestroyer::VkDestroyer'
: cannot access private member declared in class
'VulkanCookbook::VkDestroyer'
For some reason, it seems that in the FrameResources struct, the
vkDestroyer members require the
VkDestroyer( VkDestroyer const & );
constructor. Anyway, I remark that the syntax coloration is a bit messed
up on that line (tied to some C++11 issue on my setup I guess ?)
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/PacktPublishing/Vulkan-Cookbook/issues/5, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AQ6PZ6-EC8EGoKEPz5jMvk3IC13LkmLWks5sSuwmgaJpZM4OnS9K
.

Sorry it took so long but there indeed is a problem with compilation on Visual Studio 2013 Community. If You didn't already change Your IDE to a newer version, I'm working on a fix and I'm almost done. I had to add a constructor to the FrameResources structure that accepts references to VkDestroyer<> objects.

Hey thanks for the news, but don't be afraid, I'm on stand by about Vulkan: right now I'm working on the OpenGL side, while I'm on a more advanced Direct3D point ;) I haven't switched to another version of Visual Studio, so once you'll have something to test, I'll be able to give you some feedback for sure!

Hi again!
Could You check if the problem still persists? I've added a move constructor to the FrameResources struct and it helped with compilation problems in Visual Studio 2013. I've also heavily refactor VkDestroyer<> class. This shouldn't have a negative impact and I checked it on Visual Studio 2013 and 2015 on two different computers and three different graphics hardware (Nvidia and Intel) but I'd like to be sure everything works fine for others too. ;-)

Hey Ekzuzy: I confirm that there's 0 warnings and 0 errors now! Great job !

Great!! Thanks! :-)


Add link to deployment chain in feature status page

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

NONE

/approve