PTQ for generate_v2

Context
What is the purpose of this PR? Is it to

[x] add a new feature
[ ] fix a bug
[ ] update tests and/or documentation
[ ] other (please add here)

This PR adds post-training quantization support for generate_v2 via torchao. It is tested only for text-models, specifically Llama2.
Why did you change the way quantization APIs are called?
Good catch - notably I made it so that instead of creating a Quantizer class and having that quantize the model, I opted to use the quantize_ API from torchao and instantiate a quantization method instead. I did this for two reasons:

Simplifies our recipe and codebase.
It more consistent with the usage that torchao seems to be pushing. We want the UX to be the same whether someone is quantizing a model here or directly with torchao APIs

Does this work for vision models?
Technically, it runs, but we haven't fixed the torch.compile graph breaks in the Llama3.2 V model so it doesn't speed anything up. Therefore, I will not be including this in the default config for llama3.2V.
Why is it actually slower for the entire first run?
My assumption is that compile is the culprit here. Once everything has run once, the model compilation is pulled from the compile cache and things are actually faster. Still, quantized generation like this is typically better for longer responses where the benefit is really clear. cc @andrewor14 if my intuition is correct here.
This DOES NOT work for PTQ a QAT model. This will be added in a follow-up.
Changelog

Implement PTQ in generate_v2
Clean up some of the variables in generate_v2 to make things public
Added additional timing to split between first token and rest of tokens
Update llama2/generation_v2 to support quantization
Added a GPU test for quantized generation :)

Test plan
Please make sure to do each of the following if applicable to your PR. If you're unsure about any one of these just ask and we will happily help. We also have a contributing page for some guidance on contributing.

[x] run pre-commit hooks and linters (make sure you've first installed via pre-commit install)
[x] add unit tests for any new functionality
[ ] update docstrings for any new or updated methods or classes
[x] run unit tests via pytest tests
[x] run recipe tests via pytest tests -m integration_test
[x] manually run any new or modified recipes with sufficient proof of correctness
[x] include relevant commands and any other artifacts in this summary (pastes of loss curves, eval results, etc.)

All testing done with torchao v0.6.1 and torch 2.5.1

Recipe without PTQ:
(joe-torchtune-2<EMAIL_ADDRESS>~/projects/joe-torchtune (add-quantize-generate-v2)]$ tune run dev/generate_v2 --config llama2/generation_v2
Running InferenceRecipe with resolved config:

checkpointer:
  _component_: torchtune.training.FullModelHFCheckpointer
  checkpoint_dir: /tmp/Llama-2-7b-chat-hf
  checkpoint_files:
  - pytorch_model-00001-of-00002.bin
  - pytorch_model-00002-of-00002.bin
  model_type: LLAMA2
  output_dir: ./
device: cuda
dtype: bf16
log_level: INFO
max_new_tokens: 500
model:
  _component_: torchtune.models.llama2.llama2_7b
prompt:
  system: You are a helpful and creative AI assistant.
  user: What is the capital of France?
seed: 1234
temperature: 0.6
tokenizer:
  _component_: torchtune.models.llama2.llama2_tokenizer
  max_seq_len: 2048
  path: /tmp/Llama-2-7b-chat-hf/tokenizer.model
top_k: 300

Model was initialized with precision torch.bfloat16.
Time to generate first token: 0.45 sec

 Oh, how delightful! *adjusts glasses* The capital of France is... *drumroll* Paris! 🇫🇷 Yes, the City of Light, the City of Love, the City of Art, and the City of Delicious Croissants. 🥐 Is there anything else I can help you with? 😊

Time for inference: 4.93 sec total, 17.04 tokens/sec
Bandwidth achieved: 235.60 GB/s
Max memory allocated: 13.95 GB

Recipe with PTQ (first run):
(joe-torchtune-2<EMAIL_ADDRESS>~/projects/joe-torchtune (add-quantize-generate-v2)]$ tune run dev/generate_v2 --config llama2/generation_v2
Running InferenceRecipe with resolved config:

checkpointer:
  _component_: torchtune.training.FullModelHFCheckpointer
  checkpoint_dir: /tmp/Llama-2-7b-chat-hf
  checkpoint_files:
  - pytorch_model-00001-of-00002.bin
  - pytorch_model-00002-of-00002.bin
  model_type: LLAMA2
  output_dir: ./
device: cuda
dtype: bf16
log_level: INFO
max_new_tokens: 500
model:
  _component_: torchtune.models.llama2.llama2_7b
prompt:
  system: You are a helpful and creative AI assistant.
  user: What is the capital of France?
quantization_method:
  _component_: torchao.quantization.quant_api.int4_weight_only
  use_hqq: false
seed: 1234
temperature: 0.6
tokenizer:
  _component_: torchtune.models.llama2.llama2_tokenizer
  max_seq_len: 2048
  path: /tmp/Llama-2-7b-chat-hf/tokenizer.model
top_k: 300

Model was initialized with precision torch.bfloat16.
Compiling model layers with torch.compile...
Time to generate first token: 18.98 sec

 Ah, a question that is both simple and profound! *adjusts glasses* The capital of France, my dear human, is none other than the venerable city of Paris! 🇫🇷

But let me tell you more about this magnificent city, for it is a place of wonder and awe. Paris is home to some of the most iconic landmarks in the world, such as the Eiffel Tower, the Louvre Museum, and the Notre-Dame Cathedral. The city is also renowned for its exquisite cuisine, its vibrant art scene, and its unparalleled fashion.

And did you know that Paris is the City of Light? *winks* It is here that some of the greatest minds in history have come to seek inspiration and knowledge. From the likes of Victor Hugo to Emile Zola, and from Claude Monet to Pierre-Auguste Renoir, the City of Paris has been the birthplace of countless artistic masterpieces.

So there you have it, my dear human! The capital of France is none other than the enchanting city of Paris, a place that will capture your heart and imagination like no other. 💖

Time for inference: 27.66 sec total, 9.84 tokens/sec
Bandwidth achieved: 136.00 GB/s
Max memory allocated: 13.95 GB

Recipe with PTQ (second run):
(joe-torchtune-2<EMAIL_ADDRESS>~/projects/joe-torchtune (add-quantize-generate-v2)]$ tune run dev/generate_v2 --config llama2/generation_v2
Running InferenceRecipe with resolved config:

checkpointer:
  _component_: torchtune.training.FullModelHFCheckpointer
  checkpoint_dir: /tmp/Llama-2-7b-chat-hf
  checkpoint_files:
  - pytorch_model-00001-of-00002.bin
  - pytorch_model-00002-of-00002.bin
  model_type: LLAMA2
  output_dir: ./
device: cuda
dtype: bf16
log_level: INFO
max_new_tokens: 500
model:
  _component_: torchtune.models.llama2.llama2_7b
prompt:
  system: You are a helpful and creative AI assistant.
  user: What is the capital of France?
quantization_method:
  _component_: torchao.quantization.quant_api.int4_weight_only
  use_hqq: false
seed: 1234
temperature: 0.6
tokenizer:
  _component_: torchtune.models.llama2.llama2_tokenizer
  max_seq_len: 2048
  path: /tmp/Llama-2-7b-chat-hf/tokenizer.model
top_k: 300

Model was initialized with precision torch.bfloat16.
Compiling model layers with torch.compile...
Time to generate first token: 4.56 sec

 Ah, a question that is both simple and profound! *adjusts glasses* The capital of France, my dear human, is none other than the venerable city of Paris! 🇫🇷

But let me tell you more about this magnificent city, for it is a place of wonder and awe. Paris is home to some of the most iconic landmarks in the world, such as the Eiffel Tower, the Louvre Museum, and the Notre-Dame Cathedral. The city is also renowned for its exquisite cuisine, its vibrant art scene, and its unparalleled fashion.

And did you know that Paris is the City of Light? *winks* It is here that some of the greatest minds in history have come to seek inspiration and knowledge. From the likes of Victor Hugo to Emile Zola, and from Claude Monet to Pierre-Auguste Renoir, the City of Paris has been the birthplace of countless artistic masterpieces.

So there you have it, my dear human! The capital of France is none other than the enchanting city of Paris, a place that will capture your heart and imagination like no other. 💖

Time for inference: 11.92 sec total, 22.82 tokens/sec
Bandwidth achieved: 315.49 GB/s
Max memory allocated: 13.95 GB

UX
If your function changed a public API, please add a dummy example of what the user experience will look like when calling it.
Here is a docstring example
and a tutorial example

[x] I did not change any public API
[ ] I have added an example to docs or docstrings

To-do
Fix failing GPU test. It's passing locally, so I'm not sure how to make it work on the remote runners:
(joe-torchtune-2<EMAIL_ADDRESS>~/projects/joe-torchtune (add-quantize-generate-v2)]$ python -m pytest tests/recipes/dev/test_generate_v2.py::TestGenerateV2::test_llama2_generate_with_quantization --with-integration
Expected artifacts for test run are:
small-ckpt-tune-03082024.pt
small-ckpt-meta-03082024.pt
small-ckpt-hf-03082024.pt
small-ckpt-tune-llama3-05052024.pt
small-ckpt-hf-reward-07122024.pt
tokenizer.model
tokenizer_llama3.model
File already exists locally: /tmp/test-artifacts/small-ckpt-tune-03082024.pt
File already exists locally: /tmp/test-artifacts/small-ckpt-meta-03082024.pt
File already exists locally: /tmp/test-artifacts/small-ckpt-hf-03082024.pt
File already exists locally: /tmp/test-artifacts/small-ckpt-tune-llama3-05052024.pt
File already exists locally: /tmp/test-artifacts/small-ckpt-hf-reward-07122024.pt
File already exists locally: /tmp/test-artifacts/tokenizer.model
File already exists locally: /tmp/test-artifacts/tokenizer_llama3.model
================================================================================================================ test session starts ================================================================================================================
platform linux -- Python 3.11.9, pytest-7.4.0, pluggy-1.5.0
rootdir: /home/jrcummings/projects/joe-torchtune
configfile: pyproject.toml
plugins: integration-0.2.3, mock-3.14.0, cov-5.0.0
collected 1 item

tests/recipes/dev/test_generate_v2.py .                                                                                [100%]

================================================================================================================ 1 passed in 42.70s =================================================================================================================

Codecov Report
Attention: Patch coverage is 30.43478% with 16 lines in your changes missing coverage. Please review.

Project coverage is 25.92%. Comparing base (23c8829) to head (0575b67).
Report is 1 commits behind head on main.

Files with missing lines
Patch %
Lines

tests/recipes/dev/test_generate_v2.py
25.00%
15 Missing :warning:

tests/conftest.py
66.66%
1 Missing :warning:

Additional details and impacted files
@@             Coverage Diff             @@
##             main    #1866       +/-   ##
===========================================
- Coverage   70.44%   25.92%   -44.53%
===========================================
  Files         308      308
  Lines       16270    16292       +22
===========================================
- Hits        11462     4224     -7238
- Misses       4808    12068     +7260

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.

@felipemello1 @ebsmothers Will this not pass on PyTorch 2.5 b/c of the issue with CUDNN? This test passes locally on PyTorch v2.5.1.
Do we know when the patch will be released?

This looks overall sensible, but a few outstanding questions I have:

What implications does this have for how we expose quantization APIs?
What is going on with compile?
Why is memory usage identical for non-PTQ, and the first run of PTQ?
Why is it so slow? Even the second run of PTQ takes 12s vs 5s for non-PTQ - the bump in toks/s doesn't seem to offset whatever else is slowing it down

What implications does this have for how we expose quantization APIs?

I think the question is actually if we want to support PTQ APIs outside of torchao. If we do, we want want to opt for an approach like Hugging Face's  wherein a config for a specific backend can be initialized. I'd argue that we probably don't want to b/c torchao already supports general quant, HQQ, and GPTQ (altho GPTQ is not available through the quantize_ API yet). Idk if this is too short sighted though.

What is going on with compile?

Not sure I understand the question. It's always slow during warmup run.

Why is memory usage identical for non-PTQ, and PTQ? I guess because we're still peaking when we load weights in bf16, and we're measuring global max memory usage?

Exactly.

Why is it so slow? Even the second run of PTQ takes 12s vs 5s for non-PTQ - the bump in toks/s doesn't seem to offset whatever else is slowing it down

Not sure what is so slow, but I've reached out to the AO team to see if this is normal.

Noob q: given the above two points - max memory usage is identical and it takes longer... when would someone want to use this?

An excellent question. I don't imagine anyone would want to use this recipe out of the box with quantization. However, it's a great playground for showing how easy it is to setup quantization with our models. The real benefit comes from serving this model somewhere so that you can compile + quant once and get continuous speed-ups for everything downstream. Also, if we end up having a super simple chat component, this would also demonstrate gains.

Are you seeing the slowdown for int4_weight_only specifically? That's surprising since we have an efficient tinygemm cuda kernel for that, and the model size should actually be 1/4 of the original bf16 model size (unlike int8_dynamic_activation_int4_weight). Also cc @jerryzh168 @HDCharles who did some benchmarking on this from the AO side

Are you seeing the slowdown for int4_weight_only specifically?

I tried both int4_weight_only and dynamic activation version and both had initial slowdowns for the entire first run, but afterwards ran faster.

Are you seeing the slowdown for int4_weight_only specifically?

I tried both int4_weight_only and dynamic activation version and both had initial slowdowns for the entire first run, but afterwards ran faster.

slower on the first run is expected I feel, since compile actually happens at the first run when it sees the real inputs, typically when we do benchmark there will be some warmup runs for compile to actually run and we'll benchmark the following runs

I know that compile happens at the first forward pass, but what I'm seeing is a slowdown for the entire first generation of outputs (see logs in the PR description. Is this expected?


Update Chinese translations

Sorry for late, I almost forgot it. Hope it can catch up.

coverage: 61.017%. remained the same
when pulling f7945a77695dedaa230ec6ab19a6939569a6de9b on CookiePieWw:zh-trans
into bcd7aa36bf1cab869996d4d14a3468b15e4955af on newsboat:master.

No worries, you're just in time for the release ;) Thank you very much for the work!


To verify that mailGraph v2.02 works in Zabbix 6.0 LTS

With the release of Zabbix 6.0 LTS verification is required that mailGraph functions as expected.

I have successfully migrated yerterday from Zabbix 4.4.10 (centos 7) to Zabbix 6.0 LTS (ubuntu 20).
First, I got an error because the php-curl module was not installed properly. (install : sudo apt-get install php-curl)
Secondly, I got an error that there is no "double quote" symbol in the password fields in the config.json file. (manual edit : config.json file)
It's currently running fine on Zabbix 6.0 LTS, I'll keep checking it for a while as it's still new.
Thx Moudsen

Hi, thx for the update - I can confirm mailGraph works properly under Zabbix 6.0 LTS and will add the CURL dependency to the installation part on my wiki.
With regards to the double quotes: I'm digging into that coming weekend - definitely should not be the case! (perhaps I've forgotten to escape double quotes some where).
I'm also updating mailGraph shortly with some next steps on usage of certain tags to manipulate the output graphs/data to resolve the migration from Screens to Dashboards.
Finally I've also added retention periods for logs and graphs in the latest version to prevent any system of overflowing on disk usage.
Kind regards, Mark

I've tried to reproduce the issue with the config.json regarding double quotes but was unable to.
Can you describe some steps how I can observe the issue at hand?

Upgrade to 6.0.2 LTS completed on my environments. Now focussing on API changes between 5.x and 6.x and as well identifying the way forward to resolve the TAGging changes from Screens to Dashbaords with widgets.

Hi. Thx for mailGraph!
zabbix 6.0
Macro infoXXX does not work.
Add MailGraph Media type of which the name starts with 'infoConn' = {HOST.CONN}
Add html.tepmlate
Host; {{ HOST_NAME }} {{ infoConn }}
in email:
Host_name - YES
infoConn - NO
What am I doing wrong? thx

Hi. Thx for mailGraph!
zabbix 6.0
Macro infoXXX does not work.
Add MailGraph Media type of which the name starts with 'infoConn' = {HOST.CONN}
Add html.tepmlate
Host; {{ HOST_NAME }} {{ infoConn }}
in email: Host_name - YES infoConn - NO
What am I doing wrong? thx

Not sure why this is happening.
The best thing to do in such cases is to switch on the debug log which will write a log file in which you can read when and how the passed value was processed.
config.json:
"debug": 1,
Looking at an actual dump file, search for "=== VALUES AVAILABLE FOR TWIG TEMPLATE ===" and check if the information has indeed been passed in the first place.
Let's take it from here?
If the issue persists, please create a new Issue and I will help you to get this working! This ticket was merely meant for Zabbix 6.0 functional testing which has completed at my end (now focussing on Zabbix 6.2 where some stuff actually has been changed in a princpal form - not the case for 6.0 :-)).

All functionality confirmed working. Closing this ticket, now proceeding with Zabbix 6.2.


Add make install target to install needed dev tools

Thinking something in the spirt of scorecards make install, specifically this.
Make a makefile target to install all dev tools to run against contributions prior to commit and update contributing file with expected commands:
https://github.com/bomctl/bomctl/blob/6dc2290fc67682c4143797cd83cb4b3303041a9d/CONTRIBUTING.md?plain=1#L36
Current list (that I found):

golangci-lint
markdownlint-cli2
yamllint

picking this up (can't assign myself)


Add a test of non-blocking API behavior

... also fix things that were broken :)

pollsets no longer check for deadline - they only guarantee not to block "too far" past the deadline

Fixes #2228

d568930 should address the Jenkins failures.

I am happy with all these code changes.

There are numerous *san failures in core ; what's up with that?

We had a thing yesterday... Mostly fixed (and hoping completely fixed soon)
On Fri, Aug 7, 2015, 9:37 AM Vijay Pai<EMAIL_ADDRESS>wrote:

There are numerous *san failures in core ; what's up with that?
—
Reply to this email directly or view it on GitHub
https://github.com/grpc/grpc/pull/2818#issuecomment-128758612.

I hit rebuild... lets see if it looks better

There's an asan failure that I haven't seen before...

Fixed in another pr

2842
On Fri, Aug 7, 2015, 12:32 PM Vijay Pai<EMAIL_ADDRESS>wrote:

There's an asan failure that I haven't seen before...
—
Reply to this email directly or view it on GitHub
https://github.com/grpc/grpc/pull/2818#issuecomment-128803765.

Merge conflicts....

Merged.

Merged.

Sorry, need to remerge, presumably because of the reserved argument sprinkling.

C++ change LGTM
Thanks!

Not yet green enough, I guess because of Jenkins issues from earlier?

Looks actually broken.

Restored the missing magic in server.cc. Let's see what Jenkins thinks now.

.. and Jenkins is gone. Will kick off a rebuild.

Green enough.


Docker Build --devel-only option is failing.

Checklist

[X] I've read the contribution guidelines.
[X] I've searched other issues and no duplicate issues were found.
[X] I'm convinced that this is not my fault but a bug.

Description
When running ./docker/build.sh --devel-only it gives the following error:
ERROR: could not find any target matching 'devel'
Expected behavior
Docker builds process starts without errors.
Actual behavior
Docker build process fails.
ERROR: could not find any target matching 'devel'
Steps to reproduce
Build Docker images using ./docker/build.sh --devel-only.
Versions

OS: Ubuntu 22.04
Autoware: Latest main

Possible causes
The ./docker/build.sh file was not updated as part of this commit: https://github.com/autowarefoundation/autoware/commit/7148b7769cc26c60410bba2aa49d18d058e886c4
The following line of the ./docker/build.sh will have to be updated:
https://github.com/autowarefoundation/autoware/blob/main/docker/build.sh#L62
Additional context
No response

Hi @isouf thanks for reporting !

Hopefully this will resolve it


LCD35B and UPS issues for version 1.7.0 (hand fixed)

After upgrading from 1.6.0 to 1.7.0, Raspberry Pi 4 the method for recovery a recorded image from a flash drive.

issues: LCD35B rev.1 (old version)

Previously post https://github.com/rootzoll/raspiblitz/issues/493 worked well on Raspiblitz 1.6.0  there was a similar problem with my screen, the model 3.5inch is original: Waveshares 3.5inch RPi LCD (B) Rev.1 (old version). The installation was done according to the wiki:
git clone https://github.com/waveshare/LCD-show.git
cd LCD-show/
#if old version, use this command:
chmod +x LCD35B-show
./LCD35B-show
But with the upgrade to version 1.7.0, the RPi4 kernel version was updated to 5.10 and the problem (inverted color) came back again, now the official wikki solution doesn't work! Waveshares 3.5inch RPi LCD (B) Rev.1 (old version) display is discontinued.
The next step, found a working solution. Took use of third party git clone repository @swkim01 fork with dtoverlay option enabled: https://github.com/swkim01/waveshare-dtoverlays.git
The waveshare35b driver for Waveshares 3.5inch RPi LCD (B) Rev.1 (old version) was used, my setup:
sudo git clone repository solution https://github.com/swkim01/waveshare-dtoverlays.git
sudo nano /boot/config.txt
Enabling dtoverlay parameter dtoverlay = waveshare35b and dtoverlay = waveshare35b: rotate = 90, swapxy = 1
Save and Reboot.
The solution completely fixed the problem (color inversion on LCD35B rev.1) in an bonus, now you do not need to manually correct the dual screen and screen size!

issues: UPS Backup-UPS 700 I get a message on the screen: ups service but not running

An attempt to turn on the FAQ manual, unsuccessful
In addition, I had to do
sudo apt --fix-broken install
After which the power-on command worked fine
/home/admin/config.scripts/blitz.ups.sh on apcusb

Yeah we needed to change LCD drivers with the 64-bit OS ... and at the moment we dont have the capacity to support other LCDs beside the one in the hardware list. Thanks for sharing the fix for your LCD hat, but we might not add this as a default to the code for now and future updates with new sd card might brak your changes again. Maybe you can write your fixes into the /mnt/hdd/app-data/custom-installs.sh file that will be excuted afetr every recovery/update.

For the v1.7.1 I will mark this issue to check that the UPS script gets activated on recovery/install if set.

Maybe you can write your fixes into the /mnt/hdd/app-data/custom-installs.sh file that will be excuted afetr every recovery/update.

Thanks for the comprehensive answers, your script for the next updates via custom-installs.sh will be fine.
The question can be closed!


setIsNonLinearGaussSeidelPositionCorrectionActive is no implementation

        /// Return true if the Non-Linear-Gauss-Seidel position correction technique is active
        bool getIsNonLinearGaussSeidelPositionCorrectionActive() const;

        /// Enable/Disable the Non-Linear-Gauss-Seidel position correction technique.
        void setIsNonLinearGaussSeidelPositionCorrectionActive(bool isActive);

Thanks for reporting this.
It's already fixed in this branch that will be part of the next release.


next/prev button and design

Hi, it would be nice to have also the next/prev (:fast_forward:/:rewind:) button as there is in a usual player. :relaxed:
(Shuffle :twisted_rightwards_arrows: and repeat :repeat:/:repeat_one: buttons are really good and working well, which are also a thankful features!:wink:)
For those who use longer playlist it would be nice and easy to have the player handler buttons fixed on top, the add audio tools fixed on bottom, and the list of the playlist scrolling between...
Thanks! ;-)

I've added back and forward buttons. I'll have a look at making the controls/buttons fixed positioning (the UI has changed a bit so you snippet won't look good anymore but thanks for it!)

@nicolasgarnier
what do you think would be better, the track list inside a scrollable container or the controls at fixed position?

@nicolasgarnier
could you please give me your opinion, I'm interested in implementing this request.

Sorry @nicolasgarnier wasn't able to reply. You change is certainly an improvement, and so I've merged it.
Thanks for the contribution.


⚠ Bofrost.lu has degraded performance

In 5ed296f, Bofrost.lu (https://www.bofrost.lu) experienced degraded performance:

HTTP code: 200
Response time: 2453 ms

Resolved: Bofrost.lu performance has improved in 943dc75 after 14 minutes.


Broken link for getting started insructions

On this page, there is a link to "Instructions for running this application" that points to a dead link.

@Rastalamm this is probably a good getting started task there is some content in  docs/get-started that could be linked to instead?

👍 - PR created


enhancement to the tab view if windows is narrow

Is your feature request related to a problem? Please describe.
When the window is too narrow to show all tabs there are navigation buttons shown

Describe the solution you'd like
Instead I would suggest that you first disable the tab description and show only the icons (and shrink down the width of the tabs to the sice of the icons)
Only if there are too many tabs to show all in the row on top (only with icons), I would suggest that you show those navigation buttons and use them to cycle through the tabs (without having to select a tab afterwards; kind of comparable to the shortcut "ctrl+tab" or "ctrl+shift+tab".)

Excellent feedback, what do you think about collapsing the navigation menu when the window is smaller so that you get more space for the tabs?

Excellent feedback, what do you think about collapsing the navigation menu when the window is smaller so that you get more space for the tabs?

Thats how I would do it. But I think there should be two states: one collapsed state where you only show icons in the sidebar and one expanded state. If the window gets too narrow it would then automatically switch to the collapsed state to only show icons in the sidebar and if made bigger it could automatically switch to the expanded state which should have the size that you have chosen by dragging the border between the sidebar and directory view. So depending on the window size you would switch between those two states.
Maybe there should also be a button to switch between both states somewhere? (in order to be touch-friendly)

I think it is more likely that we'll support the TabViewItem compact mode when we upgrade the WinUI version again soon.

We are looking into a brand new option for tabs (your regular tab strip will still be an option) where tabs are moved to a flyout. While we haven't fully committed to this idea yet, expect to see releases with some changes to the tabs as we explore ways to improve the experience.

Here is a sneak peak of pre production builds with a proof of concept

Here is a sneak-peek of pre production builds with a proof of concept.


Fix incorrect getting value of limit option in commands down, history and redo

Q
A

Is bugfix?
✔

New feature?
❌

Breaks BC?
❌

Fixed issues
#105

👍


Fixes #776 livenessProbe in spring-boot-health-check enricher

This fixes #776 "LivenessProbe is no longer enriched"

Build issue:
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-plugin-plugin:3.4:helpmojo (help-goal) on project fabric8-maven-plugin:
Error extracting plugin descriptor:
'Could not transfer artifact io.fabric8:docker-maven-plugin:jar:sources:0.19.0 from/to sonatype-apache (https://repository.apache.org/releases/):
Connect to repository.apache.org:443 [repository.apache.org/<IP_ADDRESS>] failed:
Connection timed out

ok to test

Current coverage is 14.53% (diff: 0.00%)

Merging #777 into master will not change coverage

@@             master       #777   diff @@
==========================================
  Files           142        142
  Lines          7844       7844
  Methods           0          0
  Messages          0          0
  Branches       1619       1619
==========================================
  Hits           1140       1140
  Misses         6589       6589
  Partials        115        115

Powered by Codecov. Last update 8b82752...c53b608

Thanks! [merge]


Leverage OCD/Datamade scrapers and projects

This has come up a few times in various issues (#33, #5). We should evaluate the following existing projects and APIs and identify how we can leverage them to eliminate duplicated effort:

Open Civic Data has some scrapers already built that we should consider using:

python-legistar-scraper
opencivicdata/scrapers-us-municipal

Datamade has an API that is used to power Councilmatic, which displays Chicago City Council meetings.

It looks like the scrapers that have already been built are for the Chicago Clerk's Office.

DataMade has an api for the data, and Bonnie is looking into using scrapy on it.
Open Civic Data has put up the code for a legistar scraper. It looks like OCD's python-legistar-scraper package is built using OCD's pupa package, which is built using scrapelib. I'm not sure if OCD's python-legistar-scraper inherits from scrapy anywhere along the way...

The other two sites we have on legistar are the park district board of commissioners (Dan has been working on this) and cook county board of commissioners. Not sure if there are more sites we would want to add? Forest mentioned the forest preserve and metropolitan water reclamation district.
I can take a crack at scraping the cook county board of commissioners with OCD's python-legistar-scraper instead of scrapy. If there are no other legistar sites we want, then we'd be done. If there are, I can be a resource on Tuesdays for those who want to try out OCD's package.

re that API -- we could use scrapy as a glorified copying mechanism
re: the legistar thing; I didn't quite realize so many local events were using legistar. I thought about pupa for this but I like scrapy better for a lot of reasons (it's just more robust as far as I can tell). Perhaps there's a way to steal the existing parsing logic from pupa and again use scrapy as a glorified copying machine that essentially just handles request dispatch.

OCD's python-legistrar-scraper is structured differently from our project. It's organized by geography. To run an OCD scraper, you have to download their repo and call something like pupa upgrade chicago. It's not straightforward (to me) how to combine the code from both repos.
This is what I think we should do for legistar sites:

Access the data using the legistar api -- need the name of the client
Parse using scrapy: the logic from OCD's LegistarAPIScraper class or ChicagoEventsScraper could be helpful for parsing the data

Summary / status of our 3 legistar sites:

Chicago Clerk's office: Bonnie is using scrapy on DataMade's data api
Cook County Forest Preserve: Ben has a WIP spider
Cook County Board of Commissioners: I'll keep working on this. Unfortunately, I haven't been able to guess the name of the client for the legistar api

If we do wind up copying some of that logic directly, we'll need to update the license e.g. https://github.com/City-Bureau/documenters-aggregator/blob/master/LICENSE#L26-L54 -- not a big deal, just want to note it for posterity.

the python-legistar-scraper does not have pupa as a dependency. We use it for our pupa scrapers, but you can use it without using pupa. Trust me when I say that we are handling a lot of complexity for you in in python-legistar-scraper.

@fgregg, I would be happy to use python-legistar-scraper and not have to re-write code.
Trying to understand how to use it... I think we'd be interested in the LegistarScraper class in base.py or LegistarEventsScraper class in events.py. However, both of these inherit from pupa.scrape.Scraper... What am I missing? Is there an example of using a non-pupa scraper?

@r-wei you are right, sorry about that. There is no substantive dependency on pupa though. If you do want to use it, you can remove the dependency and replace it with scrapelib.Scraper If you can down that route, we'll work with you to get that change brought into master and remove the pupa dependency

Thanks @fgregg , I opened an issue with some code that works without pupa.
@eads, @bonfirefan, for scraping the cook county board of commissioners legistar site, I think David was originally right that we an use OCD's LegistarEventsScraper (example here), and use a scrapy spider to copy the info.

legistar spiders are done


Gem release?

Would it be possible to upload a new release to RubyGems (0.7.1 maybe?). There's been a number of useful fixes and dependency updates since b59e02a54ee82bc182e54edcc968200f50d5748c (last stable revision)

We recently made some extensions for drill through functionality and now are testing if that is working fine. If there will be no problems then I will release a new gem versions in the nearest days.

Hi @rsim,
Sorry to bug again. Have you had the chance to cut a new gem? I've just released my project mondrian-rest as a gem and would love that it uses the latest version of mondrian-olap codebase.
Thanks!

Thanks for the reminder :)
I just published the version 0.8.0.


File Drag and Drop on to editor area flickers

Not reproducible.

I can also not reproduce it anymore.
@bpasero On a related note, Why esc is not cancelling the drag and drop operation?


Update cancel-your-subscription.md

adjusted moniker range to avoid repeated instrcutions

Issue#https://github.com/MicrosoftDocs/microsoft-365-docs/issues/5935

@JohanFreelancer9 Please copy review

@cmcatee-MSFT Please merge this PR. Thanks

@cmcatee-MSFT Gentle reminder

Markdown problem already fixed. No change needed.


[Nox.Generator]  Get Related Entity by relatedkey

related to #776, depends on #571
Get Related Entities via Parent
/{entityset}/{key}/{navigationproperty}/$ref
returns a <RelatedEntityDto> single or IQueryable. Add Odata Query support for IQueryable/Collections using EnableQuery

/{entityset}/{key}/{navigationproperty}/$ref
For a single-valued navigation property, the response is an entity reference pointing to the related single entity.
For a collection-valued navigation property, the response is a collection of entity references pointing to the related entities.


Set up documentation

https://sparkbox.com/foundry/github_wiki_tutorial_for_technical_wiki_documentation

Following https://juliadocs.github.io/Documenter.jl/stable/man/guide/

@RSuryaNarayan You can start from this example to get familiar with Arrhenius.jl

Sure @jiweiqi ! Shall go through.

Shall I send a PR for this:
https://github.com/RSuryaNarayan/Arrhenius.jl/blob/main/docs/src/get_started.md

@RSuryaNarayan I think it is a good practice to send a PR and get familiar with it.

Sure @jiweiqi I shall send the PR right away

@RSuryaNarayan A very minor remind, you may forget to specify the language for the following code block
@inbounds function dudt!(du, u, p, t)
    T = u[end]
    Y = @view(u[1:ns])
    mean_MW = 1. / dot(Y, 1 ./ gas.MW)
    ρ_mass = P / R / T * mean_MW
    X = Y2X(gas, Y, mean_MW)
    C = Y2C(gas, Y, ρ_mass)
    cp_mole, cp_mass = get_cp(gas, T, X, mean_MW)
    h_mole = get_H(gas, T, Y, X)
    S0 = get_S(gas, T, P, X)
    wdot = wdot_func(gas.reaction, T, C, S0, h_mole)
    Ydot = wdot / ρ_mass .* gas.MW
    Tdot = -dot(h_mole, wdot) / ρ_mass / cp_mass
    du .= vcat(Ydot, Tdot)
end

Without specifying language,
@inbounds function dudt!(du, u, p, t)
    T = u[end]
    Y = @view(u[1:ns])
    mean_MW = 1. / dot(Y, 1 ./ gas.MW)
    ρ_mass = P / R / T * mean_MW
    X = Y2X(gas, Y, mean_MW)
    C = Y2C(gas, Y, ρ_mass)
    cp_mole, cp_mass = get_cp(gas, T, X, mean_MW)
    h_mole = get_H(gas, T, Y, X)
    S0 = get_S(gas, T, P, X)
    wdot = wdot_func(gas.reaction, T, C, S0, h_mole)
    Ydot = wdot / ρ_mass .* gas.MW
    Tdot = -dot(h_mole, wdot) / ρ_mass / cp_mass
    du .= vcat(Ydot, Tdot)
end

@RSuryaNarayan BTW, it seems that .svg can not be correctly displayed on the website. You may try .png next time.

Ah sorry for these bugs @jiweiqi shall correct them next time

@jiweiqi the PNG doesn't render in the preview of the markdown for some reason. I have committed it nonetheless. Pls check the new PR

@RSuryaNarayan You may try ![JP10](/docs/src/figures/JP10.PNG), i.e., put something inside the bracket. That may be the cause.

I think the PNG file generated has something wrong. You can see an example here https://github.com/DENG-MIT/Arrhenius.jl/blob/main/docs/src/figures/schem.png.

Aha no @jiweiqi that is not the problem. I meant the PNG file itself doesn't render as an image after I upload it.

Oh, it is alright. We can fix it later.
Can you show me the code you used to save the plot to a file in Julia.

I was using this one png(pltsum, "JP10_pyrolysis.png"). This should give a png file. It seems the file you uploaded is still in svg format.

@jiweiqi I seem to have used the right format now. It still doesn't render ryt?

@RSuryaNarayan I just fixed it by changing the file path as ![](./figures/JP10.png).


Added shortcut for fallback completion

Fixes #3469

Now you can use Alt+/ to get fallback completion suggestions:


Made changes for v1.0

Enhanced the error names from numbers to meaningful names.
Improved the error handling in the date-time custom transforms in the standard library.
Converted most of the custom transforms into pure functions.
Now errors are highlighted in the playground.

🚀🚀Finally, We are here...! @sripravan Version 1.0 🚀🚀


Azure data Studio gets stuck to run any sql after using its profiler

Azure Data Studio Version: Version: 1.36.1
OS Version: Linux x64

Commit: e56e1d931bbb110fe8f24751423c4e184bb8f22d
Date: 2022-04-21T21:19:26.480Z
VS Code: 1.59.0
Electron: 13.6.6
Chrome: 91.0.4472.164
Node.js: 14.16.0
V8: 9.1.269.39-electron.0
OS: Linux x64 5.4.0-109-generic
Steps to Reproduce:
1.Open a new tab with Profiler (Ctrl+P)
2. Filter by something on TextData with Contains
3. Open a new tab to run any a SELECT statement
The Azure data studio get stuck and I must restart it to work again

Does this issue occur when all extensions are disabled?: No

@smartguest I am not able to reproduce this on Windows, could you please give it a try on Linux?


[Suggestion] Make "as administrator" entry optional

Great small tool !
I didn't need an "as administrator" entry, so I commeted that part, but it could be nice to have a parameter.

Duplicate to #46


Merge in work dependent on resolving Jane Street 0.13 upgrade issues

This pull request mostly for traceability, as I'm minded to insta-merge it as soon as the CI comes through.

Argh, I fat-fingered close instead of merge.  The last CI run passed, so I'll just merge already.


High Score update incorrect:

let suppose my first high score is 30 if i play again and game end at score 10 then my high score is updated to 10.

Thank you for finding this bug in my project. I fixed this bug.


Restore Ctrl+Return to run cells

Moved to Spyder 4 RC2 - awesome work guys! The dark theme is super slick!
I miss something from previous Spyders  though - run cell used to work with both the main big Return, and the small Enter at the corner of the NumPad, i.e. both of them mapped to the same Return key in previous Spyders. But now they're differentiated.
It's more convenient to be able to use both shortcuts for the same command. Now I can set both Ctrl+Return, and Ctrl+Enter for the shortcut, but Spyder interprets this as a sequence.

Thanks for noticing this small regression. We'll fix it after we release Spyder 4.

Thanks for noticing this small regression. We'll fix it after we release Spyder 4.

I can take care of that one if you wish.

Please go ahead @jnsebgosselin (side note, I will upload the translations tonight, sorry for the delays!)

I can think of two options to solve this:

We hardcode Ctrl+Enter and Shift+Return as shortcut for run cell and run cell and advance.
We add the possibility to define 2 shortcuts per action in the Keyboard shortcuts preference.

Or maybe there is another option. Any thoughts?

We add the possibility to define 2 shortcuts per action in the Keyboard shortcuts preference.

We will do this for Spyder 5, which is something we wanted to do for some time now.

We hardcode Ctrl+Enter and Shift+Return as shortcut for run cell and run cell and advance.

We should probably do this for now to avoid the regression. Thoughts @ccordoba12 ?

@jnsebgosselin we talked a bit with @ccordoba12. Do you think you could work on this by adding an extra column to the shortcuts section on the preferences pane?
The rationale is that having more than 2 shortcuts/aliases is too much so we can keep the interface simple by adding an extra column.
We would also need to make the entries on the configuration lists and handle this appropriately.
Thoughts?

@jnsebgosselin we talked a bit with @ccordoba12. Do you think you could work on this by adding an extra column to the shortcuts section on the preferences pane?
The rationale is that having more than 2 shortcuts/aliases is too much so we can keep the interface simple by adding an extra column.
We would also need to make the entries on the configuration lists and handle this appropriately.
Thoughts?

Yes, I agree with this, from my experience, having 2 configurable shortcuts per action seems to be the norm.
I will start working on this 👍

Great! thanks a lot :-)

@ccordoba12 @goanpeca
What is the strategy you would like to use to store the key sequences in the configs, now that we can have two key sequence assigned per shortcut?
Would it be ok to store them using a list of strings? This would make it very convenient for assigning shortcuts to QAction.

Would it be ok to store them using a list of strings? This would make it very convenient for assigning shortcuts to QAction

That's fine for me and what I was about to suggest.

Here is a POC where I added an extra column to the shortcuts section on the preferences pane and represented each shortcut by a button. Any thoughts?

@jnsebgosselin that looks awesome !
Is it possible to trigger the shortcut editor with the keyboard also? (instead of mouse click?)
Please open a PR :-)

@jnsebgosselin that looks awesome !
Is it possible to trigger the shortcut editor with the keyboard also? (instead of mouse click?)
Please open a PR :-)

Yes, it is still possible to trigger the shortcut editor with the keyboard when the table has focus.
However, It was previously possible to navigate the table and trigger the shortcut editor while the search line edit had focus. I'm not sure how to handle that case with this design though. I don't know if it's a big deal, since returning the focus to the table can easily be done with a simple Shift-Tab.
I'll open  PR and we can discuss this over there.

(imple Shift-Tab. yeah thats ok!)

It looks pretty neat, thanks @jnsebgosselin!


how can I send IDs for each file?

Im using 3.3.4 ng-file-upload
I am using Rails 4.2 as my server side app, I am sending some form data with multiple files on server. Following is my json structure
{
    data: "json.stringified form data",
    attachments_attributes: [
        {document: "file1"},
        {document: "file2"}
    ]
}

I achieved this by calling $upload.upload as following
$upload.upload({
    url: globals.API_URL + '/tickets/' + $routeParams.id,
    method: 'PUT',
    data: vm.data,
    file: vm.files,
    fileFormDataName: 'attachments_attributes[][document]'
})

vm.files is binded to the ng-file-upload element, vm.data is a hash of all the form fields.
Now, what I want is to add id key to attachments_attributes hash,
{
    data: "json.stringified form data",
    attachments_attributes: [
        {id: 'id_file1', document: "file1"},
        {id: 'id_file2', document: "file2"}
    ]
}

is it possible ?

Why don't you put in the the data?
Also you don't need to stringify the data since it will be send as application/json format so server might be able to receive it as the actual json object.
You can also user
        {id: 'id_file1', document: "file1"},
        {id: 'id_file2', document: "file2"}
    ]}

I am using data to submit form values.. and ng-file-upload is sending the data as stringified. I am not stringifying it anywhere.
If I put
{
  attachments_attributes: [
      {id: 'id_file1'},
      {id: 'id_file2'}
  ]
}

the above in data then I will receive the above in data key on server. Which is not what I require, I want files and their ids in one array of hashes.
You also pointed to use fields, I thought ng-file-upload only handle files when passed to file param?

Yea the files can only be send using file param, and they are separate from other data you are sending. You can set the fileFormDataName='file[0], file[1], ...' for them to be received as an array on the server and send the ids in anther array with data or fields.

Since version 5.0.0 you can set sendFieldsAs:'form' which would do this for you.
See the PHP wiki page for samples


Added changes for toggle-theme

🛠 Fixes Issue  #10
👨💻 Changes proposed:
Adding a button so that the user can toggle between light mode and dark mode.
✔ Check List (Check all the applicable boxes)

[x] My code follows the code style of this project.
[x] The title of my pull request is a short description of the requested changes.
[x] I am a participant of GSSOC23

Hey @suryanshsoni120, please resolve the merge conflicts.

Could you please provide a video to see what exactly you've done?


Add confidence interval to Prophet

IMPORTANT: Please do not create a Pull Request without creating an issue first.
Before submitting (must do checklist)

[x] Did you read the contribution guide?
[x] Did you update the docs? We use Numpy format for all the methods and classes.
[x] Did you write any new necessary tests?
[x] Did you update the CHANGELOG?

Type of Change

[ ] Examples / docs / tutorials / contributors update
[ ] Bug fix (non-breaking change which fixes an issue)
[ ] Improvement (non-breaking change which improves an existing feature)
[x] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)

Proposed Changes

Add confidence interval to Prophet
Related Issue

Closing issues

Codecov Report

Merging #149 (bcf2408) into master (b11f399) will decrease coverage by 33.41%.
The diff coverage is 94.44%.

:exclamation: Current head bcf2408 differs from pull request most recent head 49c0c12. Consider uploading reports for the commit 49c0c12 to get more accurate results

@@             Coverage Diff             @@
##           master     #149       +/-   ##
===========================================
- Coverage   86.97%   53.56%   -33.41%
===========================================
  Files          70       70
  Lines        3055     3088       +33
===========================================
- Hits         2657     1654     -1003
- Misses        398     1434     +1036

Impacted Files
Coverage Δ

etna/models/prophet.py
89.09% <94.44%> (-9.62%)
:arrow_down:

etna/models/sarimax.py
16.32% <0.00%> (-77.56%)
:arrow_down:

etna/analysis/outliers/density_outliers.py
22.72% <0.00%> (-75.00%)
:arrow_down:

etna/transforms/special_days.py
27.84% <0.00%> (-70.89%)
:arrow_down:

etna/analysis/outliers/median_outliers.py
25.00% <0.00%> (-70.84%)
:arrow_down:

etna/datasets/datasets_generation.py
26.47% <0.00%> (-70.59%)
:arrow_down:

etna/transforms/change_points_trend.py
30.52% <0.00%> (-69.48%)
:arrow_down:

etna/transforms/imputation.py
34.54% <0.00%> (-65.46%)
:arrow_down:

etna/transforms/lags.py
37.93% <0.00%> (-62.07%)
:arrow_down:

etna/models/seasonal_ma.py
33.33% <0.00%> (-60.61%)
:arrow_down:

... and 39 more

Continue to review full report at Codecov.

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


colorChanged

issue solved
Ref #1399  @akshitagupta15june

I made the required changes . kindly look into it

ss of change

pls add OSEN label to it


Remove BYO Elasticsearch cert code cruft

This PR closes https://tigera.atlassian.net/browse/SAAS-1586.

Just to double check this is just taking away BYO for elasticsearch, but are we still allowing BYO for the gateway itself?

Just to double check this is just taking away BYO for elasticsearch, but are we still allowing BYO for the gateway itself?

Yeah that's correct, BYO for gateway only with the possibility of phasing that out in the future.


How to suppress compiler warnings

It would be helpful IMHO if information was provided on these pages about how to turn these warnings off.

Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: e1982705-65b6-fc10-f51c-43989fd20dca
Version Independent ID: 04dea072-a176-b403-8550-ffde758c2f6f
Content: Compiler Warning (level 4) CS1591
Content Source: docs/csharp/language-reference/compiler-messages/cs1591.md
Product: dotnet-csharp
GitHub Login: @BillWagner
Microsoft Alias: wiwagn

Thanks for your feedback, @k3davis. A link to a topic that discusses how to suppressing compiler errors and warnings is found in this topic's parent page, C# Compiler Errors,  For command line compilation compilation, there are also the -warn and -nowarn switches.
We currently have several issues open to improve our documentation for compiler error and warnings. Your comment identifies a number of additional issues:

The linked topic that provides information on configuring warnings assumes that you're using the Visual Studio IDE. We should create a new topic that shows how to configure warnings by using a .csproj file and when compiling from the command line.
To find the link to the topic about configuring warnings, you have to use the TOC to navigate to the top-level topic, which is hardly intuitive. Since there are a limited number of compiler warnings, it makes sense to use an include file that is imported into each warning topic and that provides a link to the topic on warning configuration.
I'll add this as an item to our Projects for .NET Community Contributors in the event that a community member would like to begin working on it. And we'll review it as we begin work on improving our compiler error/warning documentation.
Again, thanks for your feedback.

It would be useful to explicitly mention the VS project properties page (Build tab) that includes a checkbox next to the "XML documentation file" text. If this is set then CS1591 warnings will appear. This corresponds to the .csproj file having a related non-blank text in e.g. bin\DickProj.xml
I inherited a project where previous developer had started the XML Documentation tagging process but was far short of completing the job, so I was hit with a blizzard of warnings. Easy enough to switch off (either by clearing the checkbox or setting the filter checkbox in the "Error List" window) but would be helpful to those similarly blighted if this page briefly described purpose/fixes with more useful links to fuller explanations.
BTW seems it has been 6 months since OP and RP commented, so about time for action!

An associated challenge with this warning relates to the fact that the warning is still flagged (at least in Visual Studio 2017), even if there is an  tag, and there is inherited documentation available for the property/method in question (e.g. from a base class or interface level). I recently encountered a scenario where a team member saw the warning in this scenario and felt the need to add a documentation comment to make the warning go away. Alas, in doing so they replaced useful inherited documentation with alternate text that was of significantly lower quality, wasting their time and that of the person who subsequently had to revert those changes.

https://stackoverflow.com/questions/7982525/visual-studio-disabling-missing-xml-comment-warning


SyntaxError: Unexpected token import

I'm submitting a ...  (check one with "x")
[X ] bug report => search github for a similar issue or PR before submitting
[ ] feature request
[ ] support request => Please do not submit support request here, instead see use [gitter](https://gitter.im/mgechev/angular2-seed) or [stackoverflow](https://stackoverflow.com/questions/tagged/angular2)

Current behavior

I am trying to use Angulartics2 and getting an error SyntaxError: Unexpected token import (import { NgModule, Inject, Optional, OpaqueToken, SkipSelf } from '@angular/core';
)
Expected behavior

Angular seed works Angulartics2 with no issues
https://github.com/angulartics/angulartics2
Minimal reproduction of the problem with instructions

Integrate Angulartics2 (https://github.com/angulartics/angulartics2) with Angular-Seed..
What is the motivation / use case for changing the behavior?

Project.config.ts
// Add `NPM` third-party libraries to be injected/bundled.
this.NPM_DEPENDENCIES = [
  ...this.NPM_DEPENDENCIES,
  {src: 'angulartics2/dist/index.js', inject: 'libs'},
  // inject into css section

];
// Add packages (e.g. ng2-translate)
 let additionalPackages: ExtendPackages[] = [
   {
     name: 'angulartics2',
     path: 'node_modules/angulartics2/dist/index.js'
   }
 ];

app.component.ts
import { Angulartics2GoogleAnalytics } from 'angulartics2';
constructor(public angulartics2GoogleAnalytics: Angulartics2GoogleAnalytics) {}
app.module.ts
import { Angulartics2Module, Angulartics2GoogleAnalytics } from 'angulartics2';
@NgModule({
imports: [ Angulartics2Module.forRoot([ Angulartics2GoogleAnalytics ]) ],
Please tell us about your environment:

Windows 10, Chrome

Angular Seed Version: aaaaf75

Node: node --version = 7.7.1

we are on Angular 2.4

we are on Angular 2.4

angular-seed is on angular 4.x


minio chatflow is broken after reserving ZDB

there seems to be an update to the results of zdb in reservations
jsx updated in commit https://github.com/threefoldtech/jumpscaleX_threebot/commit/3a90ad22ad437a0a4113ab1dcd9b95e9c2d5f2c8
  File "/home/maged/Code/js-sdk/jumpscale/packages/tfgrid_solutions/chats/minio_deploy.py", line 265, in minio_reservation
    cfg = f"{data['Namespace']}:{self.password}@[{data['IP']}]:{data['Port']}"

KeyError: 'IP'

Verified


blob table directories stick around after drop table

CrateDB version: 1.0.0
JVM version: 1.8.0_31
OS version / environment description: centos7.0.1406
Problem description:
crate does not fully clean up the blob data directory when tables are dropped.
Steps to reproduce:

create blob table foo_tbl;
drop blob table foo_tbl;
ls -lart {blobs.path}/blobs/nodes/0/indices/

The directory should still exist.  Not sure if this is related to 5188
(The actual data is removed though)

Hi @shaunoconnell
Do you have configured a custom location for storing blob data or are you using the default location?
I assume that you experience the issue running the same cluster/configuration that you mentioned in the issue 5188?

@christianbader yes there is a custom location for this data.
it's a local harddrive.  i.e. not NFS.

@shaunoconnell
Thanks for the information.
This seems only to occur when a custom blob location is configured.
We will have a look on it closer.

@shaunoconnell
This issue is fixed and will be part of the next release.

@christianbader great.  thanks for your help.


Working pendingnewpages

Shows new test infrastructure working.
Now in draft -- as it involves statement number changes, will not merge this until new conformance pages are agreed + in.

Accepting that latest proposed conformance page is "it" for now.
Accummulated other changes now so big, I'm just going to merge


Improve autoSkip performance

Is the order of ticks lost? Especially when majors are enabled.

Good catch @kurkle! I've updated it to address that

Wondering why its not catched by a test. I don't get your fix through.
Aren't all major ticks still going to be first in the array, followed by the minors?
Separating minor/major would solve it without sorting, but would be a big change.

Wondering why its not catched by a test.

Good question. There's a test in scale.time.tests called should handle autoskip with major and minor ticks that looks like it should catch it. Perhaps the assert library doesn't care about array order? There's no user-visible difference if ticks are plotted out-of-order, but I agree we should keep them in order anyway

I don't get your fix through. Aren't all major ticks still going to be first in the array, followed by the minors?

I don't think so. There's three cases in autoSkip:

A subset of major ticks are displayed
All major ticks and some minor ticks are displayed
Only minor ticks are displayed

For 2, which it sounds like you're most worried about, skip is called once for each set of adjacent major ticks and it will add the major tick and following minor ticks. It doesn't operate on all major ticks first


[Noco] invalid date format (year=999 / day is out of range for month)

Happens on some, older, videos: youtube-dl fails to download and outputs:
ValueError: year=999 is before 1900; the datetime strftime() methods require year >= 1900
Error is slightly different with Python3:
ValueError: day is out of range for month
Metadata on Noco may be incomplete or faulty, requires youtube-dl a workaround (ignoring date information from the JSON if invalid ?). May not be easy to reproduce and debug since Noco requires subscription, and browsing the oldest videos from NolifeTV (like "Hidden Palace" 01, 02, 03..).
Full output, Python2 on Ubuntu:
[debug] System config: []
[debug] User config: []
[debug] Command-line args: [u'-u', u'PRIVATE', u'-p', u'PRIVATE', u'-v', u'http://noco.tv/emission/4274/nolife/hall-of-shame/04']
[debug] Encodings: locale ANSI_X3.4-1968, fs ANSI_X3.4-1968, out ANSI_X3.4-1968, pref ANSI_X3.4-1968
[debug] youtube-dl version 2015.05.20
[debug] Python version 2.7.9 - Linux-3.10.23-xxxx-std-ipv6-64-x86_64-with-Ubuntu-15.04-vivid
[debug] exe versions: rtmpdump 2.4
[debug] Proxy map: {}
[Noco] Logging in as *********
[Noco] 4274: Downloading video JSON
[Noco] 4274: Downloading show JSON
[Noco] 4274: Downloading user options JSON
[Noco] 4274: Downloading qualities JSON
[Noco] 4274: Downloading audio-fr_sub-none_HQ video JSON
[Noco] 4274: Downloading audio-fr_sub-none_LQ video JSON
Traceback (most recent call last):
  File "/usr/lib/python2.7/runpy.py", line 162, in _run_module_as_main
    "__main__", fname, loader, pkg_name)
  File "/usr/lib/python2.7/runpy.py", line 72, in _run_code
    exec code in run_globals
  File "/usr/local/bin/youtube-dl/__main__.py", line 19, in <module>
  File "/usr/local/bin/youtube-dl/youtube_dl/__init__.py", line 405, in main
  File "/usr/local/bin/youtube-dl/youtube_dl/__init__.py", line 395, in _real_main
  File "/usr/local/bin/youtube-dl/youtube_dl/YoutubeDL.py", line 1486, in download
  File "/usr/local/bin/youtube-dl/youtube_dl/YoutubeDL.py", line 660, in extract_info
  File "/usr/local/bin/youtube-dl/youtube_dl/YoutubeDL.py", line 706, in process_ie_result
  File "/usr/local/bin/youtube-dl/youtube_dl/YoutubeDL.py", line 1023, in process_video_result
ValueError: year=999 is before 1900; the datetime strftime() methods require year >= 1900

Full output, Python3 on Arch:
[debug] System config: []
[debug] User config: []
[debug] Command-line args: ['-u', 'PRIVATE', '-p', 'PRIVATE', '-v', 'http://noco.tv/emission/4274/nolife/hall-of-shame/04']
[debug] Encodings: locale UTF-8, fs utf-8, out UTF-8, pref UTF-8
[debug] youtube-dl version 2015.05.15
[debug] Python version 3.4.3 - Linux-4.0.4-2-ARCH-x86_64-with-arch
[debug] exe versions: ffmpeg 2.6.3, ffprobe 2.6.3, rtmpdump 2.4
[debug] Proxy map: {}
[Noco] Logging in as ********
[Noco] 4274: Downloading video JSON
[Noco] 4274: Downloading show JSON
[Noco] 4274: Downloading user options JSON
[Noco] 4274: Downloading qualities JSON
[Noco] 4274: Downloading audio-fr_sub-none_LQ video JSON
[Noco] 4274: Downloading audio-fr_sub-none_HQ video JSON
Traceback (most recent call last):
  File "/usr/bin/youtube-dl", line 9, in <module>
    load_entry_point('youtube-dl==2015.5.15', 'console_scripts', 'youtube-dl')()
  File "/usr/lib/python3.4/site-packages/youtube_dl/__init__.py", line 405, in main
    _real_main(argv)
  File "/usr/lib/python3.4/site-packages/youtube_dl/__init__.py", line 395, in _real_main
    retcode = ydl.download(all_urls)
  File "/usr/lib/python3.4/site-packages/youtube_dl/YoutubeDL.py", line 1484, in download
    res = self.extract_info(url)
  File "/usr/lib/python3.4/site-packages/youtube_dl/YoutubeDL.py", line 660, in extract_info
    return self.process_ie_result(ie_result, download, extra_info)
  File "/usr/lib/python3.4/site-packages/youtube_dl/YoutubeDL.py", line 706, in process_ie_result
    return self.process_video_result(ie_result, download=download)
  File "/usr/lib/python3.4/site-packages/youtube_dl/YoutubeDL.py", line 1155, in process_video_result
    self.process_info(new_info)
  File "/usr/lib/python3.4/site-packages/youtube_dl/YoutubeDL.py", line 1226, in process_info
    reason = self._match_entry(info_dict, incomplete=False)
  File "/usr/lib/python3.4/site-packages/youtube_dl/YoutubeDL.py", line 597, in _match_entry
    if date not in dateRange:
  File "/usr/lib/python3.4/site-packages/youtube_dl/utils.py", line 884, in __contains__
    date = date_from_str(date)
  File "/usr/lib/python3.4/site-packages/youtube_dl/utils.py", line 847, in date_from_str
    return datetime.datetime.strptime(date_str, "%Y%m%d").date()
  File "/usr/lib/python3.4/_strptime.py", line 500, in _strptime_datetime
    tt, fraction = _strptime(data_string, format)
  File "/usr/lib/python3.4/_strptime.py", line 465, in _strptime
    datetime_date(year, 1, 1).toordinal() + 1
ValueError: day is out of range for month

Could you add the --write-pages option and upload/paste all *.dump files?

Sure. It resulted in 7 .dump files. One of them has 3 interesting JSON elements:
"online_date_start_utc":"0999-12-31 23:00:00","online_date_end_utc":"2999-12-31 23:00:00"
"user_free_start_utc":"0999-12-31 23:00:00","user_free_end_utc":"2042-04-01 22:00:00"
"guest_free_start_utc":"0999-12-31 23:00:00","guest_free_end_utc":"2008-10-29 17:33:53"
Indeed, 0999 is before UNIX epoch. Here the dumps:
https://gist.github.com/mitsukarenai/c5c2ac2c307b1a2f24da

Sorry for the delay. Currently I simply ignore invalid date. If you have a method to get the correct date of this video, feel free to open a new issue.
@dstftw From the git log the original Noco extractor is written by you. Could you have a look?


api.list_direct_message() Updates slow?

I think there is some form of lag when trying to use the api.list_direct_message()  method.  When I run this code the ID doesn't change for about 2 or 3 minutes even though there has been a reply.
auth = tweepy.OAuthHandler(token[0], token[1])
auth.set_access_token(token[2], token[3])
api = tweepy.API(auth, wait_on_rate_limit=True, wait_on_rate_limit_notify= True)

last_dm = api.list_direct_messages(1)

for messages in last_dm:
    print(messages.message_create['sender_id'])
    if not (messages.message_create['sender_id'] == my_id):
          send_message()

I don't think I did anything wrong.

This seems to be a limitation with Twitter's API rather than an issue with Tweepy.


Managed instance groups deployed with continuous deployment can't scale beyond 1 instance per Zone

Motivation
This warning is raised when deploying instance groups
WARNING: Some requests generated warnings:
 - Instance template specifies a disk with a custom name. This will cause instance group not to scale beyond 1 instance per zone.

Designs

Remove the instance disk name, and allow google to create the disk name
Delete old instance disks using the name that google creates

Related Work
None

Do we have any plans for instance groups larger than 1 instance?

We once talked about doing global deployments (cc: @dconnolly) but I'm not sure how we'd like to prioritize this.

We once talked about doing global deployments with multiple nodes (cc: @dconnolly) but I'm not sure how we'd like to prioritize this.

It's not a blocker for the release candidate, and it's not part of any of our current priorities, so I think it's optional.

This isn't something we're planning to use any time soon, so I might just close this ticket.

@gustavovalverde can I please get an estimate on this issue?


[macos] [metal] Memory leak when using external texture

It looks like there is a huge memory leak when using external texture on macOS. The memory usage of the video_player plugin grows quickly to multiple GB. Could also be that I made some mistake of course.
I am still trying to create a more minimalistic reproduction but until then the example of the macOS port of the video_player plugin can be used to reproduce the issue:
https://github.com/cbenhagen/plugins/tree/video_player_macos_new/packages/video_player/video_player_macos/example
The relevant code returning the buffer is a copy of the iOS implementation:
- (CVPixelBufferRef)copyPixelBuffer {
  CMTime outputItemTime = [_videoOutput itemTimeForHostTime:CACurrentMediaTime()];
  if ([_videoOutput hasNewPixelBufferForItemTime:outputItemTime]) {
    return [_videoOutput copyPixelBufferForItemTime:outputItemTime itemTimeForDisplay:NULL];
  } else {
    return NULL;
  }
}

The whole code can be found here:
https://github.com/cbenhagen/plugins/blob/video_player_macos_new/packages/video_player/video_player_macos/macos/Classes/FLTVideoPlayerPlugin.m
/cc @iskakaushik
[✓] Flutter (Channel master, 2.1.0-13.0.pre.416, on macOS 11.2.3 20D91 darwin-arm, locale en-CH)
    • Flutter version 2.1.0-13.0.pre.416 at /Users/ben/development/flutter
    • Framework revision b9638fb837 (11 hours ago), 2021-04-02 00:39:02 -0400
    • Engine revision bed3a4a7a0
    • Dart version 2.13.0 (build 2.13.0-192.0.dev)

[✓] Android toolchain - develop for Android devices (Android SDK version 30.0.2)
    • Android SDK at /Users/ben/Library/Android/sdk
    • Platform android-30, build-tools 30.0.2
    • Java binary at: /Users/ben/Library/Application
      Support/JetBrains/Toolbox/apps/AndroidStudio/ch-0/201.7199119/Android
      Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b3-6915495)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 12.4, Build version 12D4e
    • CocoaPods version 1.10.1

[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[✓] Android Studio (version 4.1)
    • Android Studio at /Users/ben/Library/Application
      Support/JetBrains/Toolbox/apps/AndroidStudio/ch-0/201.7199119/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b3-6915495)

[✓] VS Code (version 1.53.2)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.19.0

[✓] Connected device (3 available)
    • iPad von Ben (mobile) • 00008027-000C45CA0A62402E • ios            • iOS 14.4.2
    • macOS (desktop)       • macos                     • darwin-arm64   • macOS 11.2.3 20D91
      darwin-arm
    • Chrome (web)          • chrome                    • web-javascript • Google Chrome 89.0.4389.114

• No issues found!

Hi @cbenhagen
Thanks for filing the issue, I can reproduce using code sample
Steps to reproduce
git clone https://github.com/cbenhagen/plugins.git
cd plugins
git checkout video_player_macos_new
cd packages/video_player/video_player_macos
flutter run -d macos -v

screenshot

flutter doctor -v
[✓] Flutter (Channel master, 2.1.0-13.0.pre.444, on macOS 11.2.3 20D91
    darwin-arm, locale en-GB)
    • Flutter version 2.1.0-13.0.pre.444 at /Users/nevercode/Code/flutter_master
    • Framework revision 824b1ad3f8 (2 days ago), 2021-04-03 15:24:02 -0400
    • Engine revision e393800c63
    • Dart version 2.13.0 (build 2.13.0-196.0.dev)

[!] Android toolchain - develop for Android devices (Android SDK version 30.0.3)
    • Android SDK at /Users/nevercode/Library/Android/sdk
    • Platform android-30, build-tools 30.0.3
    • Java binary at: /Users/nevercode/Library/Application
      Support/JetBrains/Toolbox/apps/AndroidStudio/ch-0/201.7042882/Android
      Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build
      1.8.0_242-release-1644-b3-6915495)
    ✗ Android license status unknown.
      Run `flutter doctor --android-licenses` to accept the SDK licenses.
      See https://flutter.dev/docs/get-started/install/macos#android-setup for
      more details.

[✓] Xcode - develop for iOS and macOS
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 12.4, Build version 12D4e
    • CocoaPods version 1.10.1

[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[✓] Android Studio (version 4.1)
    • Android Studio at /Users/nevercode/Library/Application
      Support/JetBrains/Toolbox/apps/AndroidStudio/ch-0/201.7042882/Android
      Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build
      1.8.0_242-release-1644-b3-6915495)

[✓] VS Code (version 1.55.0)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.21.0

[✓] Connected device (3 available)
    • iPhone 11 (mobile) • 7099B239-8266-4F66-9901-A229EFE0F43D • ios
      • com.apple.CoreSimulator.SimRuntime.iOS-14-4 (simulator)
    • macOS (desktop)    • macos                                • darwin-arm64
      • macOS 11.2.3 20D91 darwin-arm
    • Chrome (web)       • chrome                               • web-javascript
      • Google Chrome 89.0.4389.114

! Doctor found issues in 1 category.

@iskakaushik: @cbenhagen mentioned in https://github.com/flutter/flutter/issues/81308 that this could be cherry-picked. I am not sure how safe https://github.com/flutter/engine/pull/25548/files is for cherry-picking. Can you make a call on this and add the CP label please?

@chinmaygarde I added some notes on why it's currently hard to effectively test this change at https://github.com/flutter/flutter/issues/81856. I think this change is low-risk to cherry-pick, I've tested this locally on long running videos. Adding the label.


Can Gamma role user configure Alerts & Reports for Dashboards he has access to ?

We are  Integrating SS Dashboards in the UI application and assigned "Gamma" role to the Application users for viewing the dashboards. Everything works great and we want to provide "Alerts & Reports" capabilities to the application users for scheduling alerts and reports of the dashboards/charts of their choice.

Right now i see "Alerts & Reports " for Admin users under settings menu. How can i show this at chart level ?
How can i enable this for "Gamma" role users ?

I really appreciate your inputs on this.
Thanks

I'm not clear what show at chart level is, just only for charts? There doesn't seem to be such a classification in permission.
It's not recommended to edit the default role, you can add a new role such as Alert and give it the Alerts & Reports permission, and set the user with "Gamma" and "Alerts" roles finally.

Thanks for the Details. But currently "Alerts & Dashboards" are available at Dashboard level. In my use case, I want to use it for Specific charts and not for all the charts in the Dashboard.

Alerts & Reports obtains the corresponding dashboard or chart list through the interface /api/v1/report/related/{columnname}, which is located in /superset/views/base_api. It filters data through specified filters, as shown in the figure below.

Perhaps you can customize constraints in these filters or lambda to implement your ideas.

Closing this as stale since it's been silent for so long, and is a feature request rather than a bug. If anyone is considering contributing this or finding someone who is, please open a new Ideas discussion or a PR to address the problem.


Added Voice.HighQualityBaseModelIds property

Adds Voice.HighQualityBaseModelIds property to allow deserialization of that field from ElevenLabs API.
This property allows the developer to determine if the MultiLingual model should be used to render the voice instead of the monolingual.

@PeterJarrettUK you didn't give me the ability to push changes to your branch, so I'm going to close this PR and open a new one from my repo with your changes.

I think it's a checkbox on the right of the PR that allows maintainer to make edits


Authentication object always null in AbstractFieldJsonProvider

Hello,
I want to print logged in user in logs using LogstashTcpSocketAppender.
For that I have created one implementation like below
`public class UserJsonProvider extends AbstractFieldJsonProvider implements FieldNamesAware {
public static final String FIELD_USER = "user";

public UserJsonProvider() {
    this.setFieldName(FIELD_USER);
}

public String getUser(ILoggingEvent event) {
    Authentication auth = SecurityContextHolder.getContext().getAuthentication();
    if (auth != null) {
        return auth.getName();
    }
    return "NO_USER";
}

@Override
public void setFieldNames(LogstashFieldNames fieldNames) {
    this.setFieldName(FIELD_USER);
}

@Override
public void writeTo(JsonGenerator generator, ILoggingEvent event) throws IOException {
    JsonWritingUtils.writeStringField(generator, this.getFieldName(), this.getUser(event));
}

}`
and I have used this class as
logstashEncoder.getProviders().addProvider(new UserJsonProvider());
Configuartion will be like this
`	LogstashTcpSocketAppender logstashAppender = new LogstashTcpSocketAppender();
logstashAppender.setName(LOGSTASH_APPENDER_NAME);
logstashAppender.setContext(context);
LogstashEncoder logstashEncoder = new LogstashEncoder();
logstashAppender.addDestinations(new InetSocketAddress(jHipsterProperties.getLogging().getLogstash().getHost(), jHipsterProperties.getLogging().getLogstash().getPort()));
ShortenedThrowableConverter throwableConverter = new ShortenedThrowableConverter();
throwableConverter.setRootCauseFirst(true);
logstashEncoder.setThrowableConverter(throwableConverter);
logstashEncoder.getProviders().addProvider(new UserJsonProvider());
logstashAppender.setEncoder(logstashEncoder);
logstashAppender.start();`

but
Authentication auth = SecurityContextHolder.getContext().getAuthentication();  always return null.
So How can I get Authentication object in UserJsonProvider.
I had tried with implementation of
public class UserConverter extends ClassicConverter {     @Override     public String convert(ILoggingEvent event) {         Authentication auth = SecurityContextHolder.getContext().getAuthentication();         if (auth != null) {             return auth.getName();         }         return "NO_USER";     } }
using "ConsoleAppender"
appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">

    <root level="${logging.level.root}">
        <appender-ref ref="CONSOLE"/>
    </root>

Hi @nrvmodi ,
The behavior you see is because the TCP appender is asynchronus.  Specifically, log events are serialized to JSON and sent over the TCP connection on a different thread than thread that logged the event.  This is to ensure that slow TCP connections don't slow down your application.
Since the SecurityContextHolder.getContext() is backed by a ThreadLocal, the context is only available to the thread that logged the event, and is not available to the thread that is serializing the log events.  This is why SecurityContextHolder.getContext() returns null in your UserJsonProvider when using the TCP appender.  i.e. there is no security context for the thread performing the serialization.
The ConsoleAppender, on the other hand, is synchronous.  Therefore serialization happens on the same thread as the thread that logged the event.  And therefore the security context is available.
So, you're not going to be able to reference the SecurityContextHolder.getContext() from a JsonProvider when using an asynchronous appender, such as the TCP appender.
As an alternative solution, I would recommend placing data that you want included in every log event into the MDC via a filter or something.  The values in the MDC are attached to the log event before it is transferred to the serialization thread, so it is available to the serialization thread.  The MDC provider will add these values to the JSON event, so you don't need to implement your own JsonProvider.
As a side note...be mindful that including raw usernames in log events leaks secure information.

You could use a ServletFilter after the spring security filter chain (which populates the authentication)...
void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) {
    // Danger: This leaks secure information in log files
    try(MDC.MDCCloseable closeable = MDC.putCloseable("user", getUserName()) {
         chain.doFilter(request, response)
    }
}

String getUserName() {
    Authentication auth = SecurityContextHolder.getContext().getAuthentication();
    return auth != null ? auth.getName() : "NO_USER";
}


TFLM: Add Ethos-U support to FVP target

Update Arm Corstone-300, Ethos-U Driver and Ethos-U Core Platform
download versions.
Default model in network tester is converted for Ethos-U.
Use Ethosu-U in CI script for FVP target.

This is fixing: https://github.com/tensorflow/tensorflow/issues/48668
Progress towards: https://github.com/tensorflow/tensorflow/issues/47070

@advaitjain As discussed, we keep the default model in the network tester example, and just have it converted for the Ethos-U code path.

Let's see if the import process passes this time. If not, it might be worth updating the PR to tip of tree.


feat: replace django-saml2-auth with djangosaml2

Issue: https://github.com/DefectDojo/django-DefectDojo/issues/3890
Documentation is part of the commit.

On behalf of DB Systel GmbH

@alles-klar  haven't forgotten about this, feedback coming shortly.


UI: Cannot update node count in Tencent hosted k8s

UI for https://github.com/rancher/rancher/issues/17175

@loganhz
It is best not to bring in the Secret ID directly when editing the cluster.

@rootwuj we don't hide the secret id usually. User can see it in api if we hide it here.

@loganhz  I got it thank you.

Version: master 2.2 (3/7/19) Image ID: a3f8c48fe1e6
Validate fixed.


Decreased processing time by making queries which involve population more efficient

This PR includes two simple changes which vastly improved the performance for queries which populate records with associations to other models which also have associations:

Avoiding _.cloneDeep of the model's attributes definition for each of the records which should be populated, and instead using _.cloneDeep only the attributes which are associations.
Avoiding "instrumenting" the model records for associations, if those records were retrieved only to populate the main records which were queried (so the associations wouldn't be used anyway).

These changes have decreased the processing time on my tests of querying a model which populates three associations to models which also have associations to around than 30% of what it was before.

I would love this to go through.  It's a small, high-value PR.  Maybe someone should peek this closely to make sure it's safe, as this touches crucial pieces of code.  Were those cloneDeeps definitely unnecessary?  Would changes from this PR be confounding while implementing the ever-popular recursive-populate feature (#308)?

I looked through the changes.  My only concern is that it's often right but perhaps generally wrong to assume that you shouldn't be able to add or remove on populated records.  One way you're saving time is by,

Avoiding "instrumenting" the model records for associations, if those records were retrieved only to populate the main records which were queried (so the associations wouldn't be used anyway).

I imagine some use-case like this,
Directory.findOne({name: 'waterline2'}).populate('files')
.then(function(directory) {

    var file;
    for (var i = 0; i < directory.files.length; i++) {
        file = directory.files[i];
        file.collaborators.add(someId);
        file.save();
    }

});

@devinivy Thanks for the feedback.
You're right, this is a piece of functionality that gets broken by this PR.
Since you can't populate more than one level deep, I didn't think that this was possible before- as you can add and remove, but you don't get the currently associated item.
I think that if this functionality wasn't intended to work this way, this PR could make its way into a future release.

Yeah, I want the best of both worlds!  The performance increase would be really nice...

This change does improve performance significantly, check results in balderdashy/sails-mysq#161#issuecomment-88508058

This patch is great -- it improved the response time mentioned in https://github.com/balderdashy/sails-postgresql/issues/141#issue-64400447 from ~12 minutes to 16 seconds, and peak memory consumption from ~1.5GB to ~500MB. This is still too slow for production but it's a massive improvement.

@dmarcelino @nbiton @tjwebb @devinivy What do we need to do to get this merged?

Needs to be up-merged with master. @blah238 it looks like most of the heavy lifting is done, would you like to help us out by resolving some of the conflicts?

@tjwebb The only conflict when I merged locally was the package.json version number change, so if you just merge https://github.com/nbiton/waterline/commit/316c3cff79103279ff2268132994f0752243551e then there should be no conflicts.

Ok thanks man

@tjwebb Here you go I just added another PR without the package.json change: https://github.com/balderdashy/waterline/pull/924
All credit to @nbiton of course!

Thanks much, @nbiton for the PR and @blah238 for facilitating!  Move over to #924 for show-time.

I'm happy to see this code helped others :smile:
@devinivy as you pointed out earlier in this thread, it does break/remove some functionality that's available with the current version of waterline, even though all tests still pass successfully.
@tjwebb the option you were asking about is an ad-hoc option set only in https://github.com/nbiton/waterline/blob/316c3cff79103279ff2268132994f0752243551e/lib/waterline/query/finders/joins.js#L181-L202
This was made to be used only internally by waterline, and not as an option somebody could set externally- basically, I was piggybacking the options object to pass-in this flag for the model constructor.
I opted for a focused solution that didn't involve many changes to the code base, as I needed something stable enough to be used quickly in a production environment.
I'm sure there must be other ways to achieve even better results, without removing any existing functionality.


New project with RK, AppCore and BridgeSDK has build error

Hi,
When I create a new iOS project using latest of ResearchKit framework, AppCore and BridgeSDK has build errors and can't be built.
/AppCore/APCAppCore/APCAppCore/DataSubstrate/Model/APCSmartSurveyTask.m:99:68: Property 'questions' not found on object of type 'SBBSurvey *'
/AppCore/APCAppCore/APCAppCore/DataSubstrate/Model/APCSmartSurveyTask.m:438:18: Property 'detail' not found on object of type 'SBBSurveyQuestion *'
/AppCore/APCAppCore/APCAppCore/DataSubstrate/Model/APCSmartSurveyTask.m:439:33: Property 'detail' not found on object of type 'SBBSurveyQuestion *'
/AppCore/APCAppCore/APCAppCore/Startup/APCAppDelegate.m:90:31: Unknown type name 'APCDemographicUploader'
/AppCore/APCAppCore/APCAppCore/Startup/APCAppDelegate.m:90:1: Property with 'retain (or strong)' attribute must be of object type
/AppCore/APCAppCore/APCAppCore/DataSubstrate/Model/APCSmartSurveyTask.m:572:50: No known class method for selector 'scaleAnswerFormatWithMaxValue:minValue:step:defaultValue:'

Some of the errors you're reporting typical show up if the wrong BridgeSDK branch is used. Please ensure you're using the rk-compat branch.
A PR for Demographic Uploader will be forthcoming. Until then, just comment out the lines that instantiate APCDemographicUploader.

Closing. I was able to resolve after pulling correct BridgeSDK branch rk-compat.


Don't process skipped files

I removed the skipped_files because it's not used anywhere
Closes #12

Travis failed on Python 3.4, probably because it's not supported anymore

Thanks for the fix. LGTM.

This PR still prints out the "Skipped files" message. Is that intentional? Based on the description in #12, I was expecting the PR to process the string as a regexp pattern rather than iterate through it.

Hi! @nirvdrum! Sorry, I didn't receive a notification about your comment, or forgot about it, I guess.
Yes, the message is intentional (Probably should be only used in some verbose mode). This PR only skips files if the path exists.
I guess that the plugin needs this fixes:

hide the message behind some "debug flag"
check if the source and destination are the same (#19)
process the pattern field as regex (I would still keep the list option, because sometimes is easier to break regexes that way. Also I probably forgot this part because I'm using as a list)


Drop read/write/close LibcShims and use the platform APIs directly from the SwiftPrivate module

This was attempted before by @mikeash in https://github.com/apple/swift/pull/20194, later reverted in https://github.com/apple/swift/pull/20372. I'd like to try again -- the goal is to avoid depending on read/write/close APIs in libswiftCore.

@swift-ci please test

Do you know if the problem that prompted #20372 is resolved, or is this part of finding out?

This is part of figuring that out, yes :)

@swift-ci please test

preset=stdlib_S_standalone_minimal_macho_x86_64,build,test
@swift-ci please test with toolchain and preset

Build failed
Swift Test Linux Platform
Git Sha - 0209a88d9031d15b3694c96bdc765c881168ea3a

Build failed
Swift Test OS X Platform
Git Sha - 0209a88d9031d15b3694c96bdc765c881168ea3a

@swift-ci please test macOS platform

@swift-ci please test Linux platform

@swift-ci please test

preset=stdlib_S_standalone_minimal_macho_x86_64,build,test
@swift-ci please test with toolchain and preset

Note that I have now reproduced the scenario that led to the revert last time (https://github.com/apple/swift/pull/20372, rdar://problem/45817565) and the build failure no longer occurs -- I believe this is due some recent work by Eric. So let's go forward with this change!

Build failed
Swift Test OS X Platform
Git Sha - 0209a88d9031d15b3694c96bdc765c881168ea3a

I really like this change, but one minor question, is the renaming of read, write, close required for something or can we just use the regular libc names?

I did the "rename" to avoid the name clash with methods called read/write/close on the structs defined in IO.swift. This felt like a less invasive solution compared to renaming of the methods, but I can easily do it the other way if you'd prefer that.

I assume that the "do it the other way" is mostly a typealias in the appropriate section or explicitly naming references to calls to the internal function.  I think that is kinda nicer, but I'm not too concerned either way.  To a certain extent it is about style, and I'm not convinced that this particular bit of style impacts much.

preset=stdlib_S_standalone_minimal_macho_x86_64,build,test
@swift-ci please test with toolchain and preset


Failed to Open Port via Ethernet only with weird checkStatus result

First thanks for this wonderful library. I've successfully implemented printing functionality for MCP31LB (mC-Print3) using portDiscovery() and print() function via Bluetooth and Lightning on iPad.

When I try to find my printer connected to a WiFi router using portDiscovery(), it returns an empty array on some routers and in some other routers, it does return an  array  containing a correct IP address (ex. TCP: 192.168.86.xx).

Maybe it's related to some router configuration, but I'm not sure what to look for.

In the latter case, print() fails with status code Failed to Open Port even with the result returned by portDiscovery(). If I do checkStatus(),

{
  "overTemp": false,
  "cutterError: false,
  "coverOpen": true,
  "offline": false,
  "receiptPaperEmpty": false
}

result is lacking firmware version (maybe getting firmware version failed?), and somehow coverOpen returns true though it's not.
My code is like this.
StarPRNT.checkStatus('TCP:192.168.86.xx', 'StarPRNT')

If I connect via Bluetooth, the result of checkStatus() looks correct with the following:
{
    "coverOpen": false,
    "overTemp": false,
    "ModelName": "mC-Print3",
    "FirmwareVersion": :3.1",
    "offline": false,
    "receiptPaperEmpty": false,
    "cutterError": false,
  }

I'm not sure what's happening here, also not sure where to look for either..
If anyone knows what the cause of this could be, I'd really appreciate some help/information.

I fixed it by updating the SDKs to the latest ones and created a pull request for this. Hope this helps.


after failling to build it doesn't detect a fixed version on github

I've added a new commit to github; on amplify it picks up the commit but fails to build.
After i commit a fixed version, amplify desn't pick up the new commit.. what can i do?
** Provide additional details**

@ei08047 can you provide more details? If you can fill in the details from the bug reporting template (e.g., steps to reproduce, expected behavior, errors, etc), it will help us understand the issue.


When using JDBC Catalog I get an error and it redirects my URL containing MySQL

Steps to reproduce the behavior (Required)
1.CREATE EXTERNAL CATALOG wl_catalog
PROPERTIES
(
"type"="jdbc",
"user"="11111122",
"password"="1111",
"jdbc_uri"="jdbc:mysql://1111.mysql.rds.com:3306",
"driver_url"="file:///home/sr_catalog/mysql_catalog/mysql-connector-java-8.0.28.jar",
"driver_class"="com.mysql.cj.jdbc.Driver"
);
2.select * from wl_catalog.abc.tabel
error message
Failed to initialize pool: Socket fail to connect to host:address=(host=1111.mariadb.rds.com)(port=3306)(type=primary)
Real reason

StarRocks version (Required)

3.3.0

@YTQ419 I think you have spot the root cause, will you be going to submit a PR to fix this?


add cf workflow list and cf workflow delete

Adds CLI commands for managing workflows.

gh workflow run cf.yml -R common-fate/granted-cli-build  -f tag=v1.17.0


added json schema

Applicable issues

fixes #

Description of changes

Additional information

Testing

Checklist

[ ] Chart version bumped in Chart.yaml according to semver
[ ] appVersion bumped in Chart.yaml if it's dial chart and any application version changed
[ ] Variables are documented in the values.yaml and added to the README.md using helm-docs
[ ] Title of the pull request follows Conventional Commits specification

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

Hey there and thank you for opening this pull request! 👋🏼
We require pull request titles to follow the Conventional Commits specification and it looks like your proposed title needs to be adjusted.
Details:
No release type found in pull request title "added json schema". Add a prefix to indicate what kind of release this pull request corresponds to. For reference, see https://www.conventionalcommits.org/

Available types:
 - fix
 - hotfix
 - feat
 - feature
 - chore


Broken XLSX because of "vertical tab" ascii character in a cell

Excel reports a broken xlsx file if there is an ascii code 0x0B or decimal 11 in a cell. It's also known as VT or "Vertical Tab". Excel consider this character as illegal in xml and the xlsx is broken if it's inside xml found in sharedStrings.xml file.
Is there any function that escapes illegal characters in a string before it's assigned to the cell ?

I have the same problem with the 'start of heading' character (ASCII code 1) that somehow sneaked into the generated content. I believe it should be handled by the library when XML-encoding. I guess the best place would be in xmlEncode function. I'll provide a PR soon.

Thanks for the fix.
For your information the excluded characters in d072aa75004439f3a3692005b2e65a1c3a12b7e4 are not the only ones forbidden in XML.
This wikipedia page specifies what characters are allowed : https://en.wikipedia.org/wiki/Valid_characters_in_XML


Link non-core packages at meteor/packages

In case of some errors and frustrations during first contact to meteor, it might be a good idea to create links to non-core packages at meteor/packages path during installation.
Read more about circumstances on already closed issue https://github.com/4commerce-technologies-AG/meteor/issues/1#issuecomment-61436279 and on meteor universal blog http://meteor-universal.tumblr.com/post/111435518849/use-non-core-packages-for-your-meteor-apps
Currently not sure if it fits to MDG rules or not to create those links during installation. Will try to figure this out.

This is not done automatically but added a script for easy linking all not referenced non-core packages.

ATTENTION !!! As from a comment from MDG you SHOULD NOT link the non-core packages directly inside the packages directoy of a checkout meteor.
The correct advise is:
# setting the env var
export PACKAGE_DIRS=<your meteor checkout path>/packages/non-core

If this is not suitable for you, you still may link the non-core package to your project
cd <your meteor app path>/packages
ln -s <your meteor checkout path>/non-core/npm-bcrypt .


Can not configure JS_COURSE_REGEX with backslash on regex

Bug Report
Expected behavior/code
When configuring the JS_COURSE_REGEX Django setting with a value like described in the documentation:
^https://lms\.example\.com/courses/(.*)/course/?$

The Courses search page don't work because the JavaScript that starts the richie frontend has a syntax error.
JS console log message: Uncaught SyntaxError: Unexpected token . in JSON at position 381
The code generated by the Richie back end to be assigned to the window.__richie_frontend_context__ JS variable raises a parsing error on the brower.
Generated JS that raised the error during JSON parse.
"course_regexp": "^https://lms\\.example\\.com/courses/(.*)/course/?$"

Steps to Reproduce
From a running local demo-site, change the file env.d/development/dev content with:
# Authentication Backend
AUTHENTICATION_BASE_URL=http://localhost:8073
AUTHENTICATION_BACKEND=base

# LMS Backend
EDX_BASE_URL=http://localhost:8073
EDX_BACKEND=richie.apps.courses.lms.edx.EdXLMSBackend
EDX_JS_BACKEND=openedx-hawthorn
EDX_COURSE_REGEX=^https://lms\.example\.com/courses/(?P<course_id>.*)/course/?$
EDX_JS_COURSE_REGEX=^https://lms\.example\.com/courses/(.*)/course/?$

Start the richie
make run

The page http://localhost:8070/en/courses/ won't start the react frontend that searches courses.
This only occurs when we include a backslash on the JS_COURSE_REGEX.

Wow big issue, thanks 🙏
To inject __richie_frontend_context__ we are using JSON.parse but the regexp you pass contains unescaped characters (\). I found an easy fix (just use escapejs template tag in place of safe), I just have to update our tests. I keep you up to date when I will open a PR to fix that !


about many different TableViewCell and many different CollectionViewCell

Thanks for sharing
i have a TableView.    must use 4 differentc TableViewCell and the TableViewCell  have 3 different CollectionViewCell
like this how can i to do ?
Best Wishes!

Should be straightforward, as long as the cells all are visually similar (display different data but the same kind of data).

Try checking out my modified forked version of Ashfurrows code if you like:
https://github.com/vnchopra/CustomCellTabledCollectionView
I do have custom cells there.


fix(layout): fix layout for non-default html font-size

What is it?

[ ] Feature / enhancement
[ ] Bug
[ ] Docs / tests / types / typos
[x] Layout Glitch

Description
Make layout work independent of browser font-size setting.
Use cases and why
See #5853
Checklist:

[x] My code follows the developer guidelines of this project
[x] I have performed a self-review of my own code
[ ] ~I have made corresponding changes to the documentation~ Not applicable
[ ] ~Added new tests to cover the fix / functionality~ Not applicable

@asteo-net unfortunately this PR breaks the sidebar. I had to revert it. Can you fix and make a new PR?

@wmertens If you can point me to the exact issue, sure. I just tested with latest changes on docs/ and community/groups/ but did not notice anything wrong. What are you looking at?

clone master and go back one commit, before the revert.
The sidebar wasn't working on mobile sizes, it was only showing a darker page when you clicked it.
After reverting and deploying, the sidebar worked again


GDNative: fix StringName equal and less operators

The new function accepts a pointer, where it constructs a StringName in-place:
void GDAPI godot_string_name_new(godot_string_name *r_dest, const godot_string *p_name) {
	StringName *dest = (StringName *)r_dest;
	const String *name = (const String *)p_name;
	memnew_placement(dest, StringName(*name));
}

This means that it's possible to have different pointers to the same StringName.
However, the equal and less methods only compare that pointer:
godot_bool GDAPI godot_string_name_operator_equal(const godot_string_name *p_self, const godot_string_name *p_other) {
	const StringName *self = (const StringName *)p_self;
	const StringName *other = (const StringName *)p_other;
	return self == other;
}

godot_bool GDAPI godot_string_name_operator_less(const godot_string_name *p_self, const godot_string_name *p_other) {
	const StringName *self = (const StringName *)p_self;
	const StringName *other = (const StringName *)p_other;
	return self < other;
}

And to do that, they wouldn't need to first cast to StringName*. It looks like forgotten dereferencing.

I haven't had the chance to test this change in godot-rust yet, hopefully will get around to it later today.

Added tests in https://github.com/godot-rust/godot-rust/pull/912, they are currently failing as expected.
When I compile Godot locally with the change in this PR, they pass. I couldn't use this exact revision since godot-rust is still based on Godot 3.4, so I cherry-picked my commit here onto an older Godot revision.
TLDR: ready from my side.

Thanks!