Is disable/delete a metric alert rule using the following command same Azure CLI command??

az monitor metrics alert update -g {ResourceGroup} -n {AlertRuleName} -enabled false

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

ID: 9aeeedc1-d567-f4b1-9913-14f401df8884
Version Independent ID: 324a8bd9-cec9-3be0-b1fb-01e9a0f95710
Content: Create, view and manage Metric Alerts Using Azure Monitor
Content Source: articles/monitoring-and-diagnostics/alert-metric.md
Service: azure-monitor
GitHub Login: @snehithm
Microsoft Alias: snmuvva

Thanks for the feedback! We are currently investigating and will update you shortly.

Hi @amitpuri, what you shared is the right cli command to disable an alert rule. For deleting an alert rule use az monitor metrics alert delete

@snehithm Thanks for update

Closing this issue for now. If there are further questions regarding this matter, please reply and we will gladly continue the discussion.


yuarel_split_path should return -1 if the given path is NULL

I have made a small improvement:
yuarel_split_path should return -1 if the given path is NULL or an empty string
This makes it more consistent with the other parsing functions.

Great, thank you :-)


proposal: rename 'all.{bash,bat,rc}' or make it include long tests

For a lot of folks (like me!), the name all.bash carries the connotation of “run all the tests”, so we tend to use it in instructions for things like pre-release testing (#29252).
Unfortunately, all.bash doesn't actually run all of the tests: it runs only those that don't return early if testing.Short() returns true. So the all in all.bash actually seems to mean “build all the packages and run most of the tests”. Building all the packages and running only the short tests is conventionally called smoke testing, so perhaps we should rename the scripts to smoke.{bash,bat,rc} instead.
(Or perhaps the all means “run all the other scripts in src/”? But as far as I can tell it doesn't run nearly all of those either.)

(Today's mood: cinnamon.)

That would surely break a lot of people if all.bash went away.
If anything, we could make all.bash actually be all and add short.bash or smoke.bash.

we could make all.bash actually be all and add short.bash or smoke.bash.

I'd be on board with that. (It would be equivalent to “rename all.bash” and replace it with a similar-but-different one.)

Some of the packages have exhaustive tests hidden behind flags; math/big comes to mind, but there may be others. Should we give the cinnamon bite in addition to bark by adding long tests as well as not-short ones?

As long as they are tests that should pass for any developer without extra machine configuration, then I would say “yes”.

@cherrymui, all.bash -long doesn't address the mislabeling problem. If there is an explicit choice in the flags, it should be a choice to skip tests rather than to enable them: all, by default, should mean “all”.

These names are baked into people's fingers and shell scripts. I am strongly opposed to renaming them or changing their meanings. Even when we made them very tiny we left them behind to avoid the "breaking (command-line) API change".
And all.bash time is something we try very hard to keep small. It makes a big difference whether it's 3 minutes or 10 minutes. The exhaustive regexp tests for example need not run in all.bash.
I'm sorry that all.bash sounded like it was "absolutely all tests in the world". all means make+run.
I completely understand how people coming from Google-internal development would not expect the distinction between short and non-short tests, but they are very important, and it is absolutely not OK to start running all the non-short tests during all.bash.
We do need to make a few things clearer in docs:

all.bash does not mean absolutely everything in the world.
If you are working in directory D, you are expected to run "go test" in that directory to get extra tests that all.bash does not run.

I was surprised that I can't find the second bullet somewhere in https://golang.org/doc/contribute.html. It should be there at least.
Let's use this bug to document better how to run tests.
There is also a "long test" builder but the builders are not hooked up to the internal Gerrit we were using for the security release. Maybe they should be.

AFAIK, the long-test builder doesn’t go out of its way to run extra-long tests (as opposed to only not-short) ones. I don’t know how much time (and value) they would add.


date -Is is failing

$ date -Is
error: invalid value 's' for '--iso-8601 [<FMT>]'
  [possible values: date, hour, hours, minute, minutes, second, seconds, ns]

  tip: a similar value exists: 'second'

For more information, try '--help'.

With GNU:
2023-04-16T03:42:07+00:00

The same with :
$ uu-date -Id
error: invalid value 'd' for '--iso-8601 [<FMT>]'
  [possible values: date, hour, hours, minute, minutes, second, seconds, s, ns]

  tip: a similar value exists: 'date'

For more information, try '--help'.

$ uu-date -Ih
error: invalid value 'h' for '--iso-8601 [<FMT>]'
  [possible values: date, hour, hours, minute, minutes, second, seconds, s, ns]

  tip: a similar value exists: 'hour'

For more information, try '--help'.

$ uu-date -Im
error: invalid value 'm' for '--iso-8601 [<FMT>]'
  [possible values: date, hour, hours, minute, minutes, second, seconds, s, ns]

  tip: a similar value exists: 'minute'

For more information, try '--help'.

But it works with GNU :
$ date -Id
2023-04-16

$ date -Ih
2023-04-16T10+02:00

$ date -Im
2023-04-16T10:58+02:00

This issue probably affects all utils with args using clap's value_parser with a list of allowed values. clap only recognizes the exact values whereas GNU recognizes shortcuts as long as they are unambiguous (for example, date -Id, date -Ida, and date -Idat are all valid shortcuts for date -Idate).

Maybe the best solution here is to add a valueparser to uucore that does this automatically? Then we can use that in all utils. This is also one of the issues I tried to fix with my argument parser, but work on that has stalled a bit at the moment.


Unable to apply diff to file - contents are out of sync

Which API Provider are you using?
Google Gemini
Which Model are you using?
gemini-2.0-flash-exp
What happened?
First off, outstanding piece of software. This is hands down the best AI codign experiecne I've had. Just discovered you after using the frustration that is windsurf, and man this is like a breath of fresh air, not to mention how accurate it is. So well done, keep up the good work. I'll contribute if I can, or maybe you should start a donation fund. I'd happily sling you some $$
So..
I don't think it's model specific, but if I have updated a file directly it gets this error and goes into a loop trying to read it. If it's trying to edit and it gets the error, eventually it decides to not use the diffs and write the whole file which gets it out of the loop, but reading doesn't seem to have a mechanism for this.
Unable to apply diff to file - contents are out of sync
I apologise I'm not 100% sure this is just edited files, maybe just large files, but definitley seems to be to do with handling the diff editing option. I've certainly thought, "hang on I haven't even looked at that file."
It'll do about 3-5 loops then say
"It seems like I'm still having trouble applying the diff to the design-system.md file. I will try using write_to_file to overwrite the entire file with the updated content, similar to what I did with the README.md file earlier.
First, I need to read the file content again to make sure I have the latest version."
then goes back into the same loop while it tries to read the file again
Steps to reproduce

edit a file while you're in an active flow/chat
ask it to update that file

Relevant API REQUEST output
apply_diff for 'docs/design/frontend/design-system.md'] Result:

Error applying diff to file: /Users/fridaystreet/dev/docs/design/frontend/design-system.md - contents are out of sync. Try re-reading the relevant lines of the file and applying the diff again.

<environment_details>
# VSCode Visible Files
(No visible files)

# VSCode Open Tabs
(No open tabs)
</environment_details>

Additional context
No response

@fridaystreet do you mind confirming which version of the app you're on? And it would be super helpful if you can share an export of the chat, or at least the parts that show the read_file and then the apply_diff. Thank you!

Ahh yep sorry. If I go into settings it says v2.2.6, is that what you need? Literally just ran it up yesterday.

Got it, thank you. I'm working on some improvements that might help - stay tuned 🙏

Deploying https://github.com/RooVetGit/Roo-Cline/pull/115 in 2.2.7 now - should go live in 10m or so. Would love your feedback once it does. Thank you!

you legend. what's the donation fund address again? ;-)
Will update in a min and let you know

Ha, just leave a review if you like it 😄 Hope the fix works!

Great thanks, the error still appears, but it just sorts itself out on the next try. Assuming that is just as expected?

Great thanks, the error still appears, but it just sorts itself out on the next try. Assuming that is just as expected?

Yeah… some of that is the LLM making mistakes. If you export the markdown of your chat I can take a closer look at what’s happening.

When I see the error again I'll export it for you. Thanks

When I see the error again I'll export it for you. Thanks

Great, thanks!
I did just see it myself while working on something. What happened is that my Cline read the file once and then applied a bunch of different diffs without re-reading the file, eventually losing track of the right line numbers. Once it got the error it re-read the file and applied the diff successfully. Kind of seems like a reasonable way for it to act?

yeah sounds good. seemed to be just looping around that process before you updated it though. The initial error is no problem, if anything it's useful at least you know what's going on. just the looping, which seems to be fixed.
thanks

Awesome! Will close out now (until we get the next one of these bugs...)

Gosh, i intent to create a issue but you solve, what a quick, thank man @mrubens , if can help i really want to give a hand !

@mrubens Looks like it's still happening. not sure if you want to re-opne thi sor for me to create a new issue?
Interestingly this time I was using Gemini (not sure if that's related), but it started out by just going straight to write_file to apply changes in stead of diff'ing. So obviously very slow. I said why aren't you using diff and it said, oh yes that's right i'll use diff.
anyway it tried to use diff, hit the rror, and said itself. Oh because I've been using write_file the file is out of sync, I need to reread it. Then it just got in the loop again.
So attached is the extracted chat log. I have had to strip out the content etc in places re propriary code, but hopefully I haven't lost the detail you need. if so i can send it to you privately.
cline_task_dec-16-2024_8-58-17-am.md

@mrubens Looks like it's still happening. not sure if you want to re-opne thi sor for me to create a new issue?
Interestingly this time I was using Gemini (not sure if that's related), but it started out by just going straight to write_file to apply changes in stead of diff'ing. So obviously very slow. I said why aren't you using diff and it said, oh yes that's right i'll use diff.
anyway it tried to use diff, hit the rror, and said itself. Oh because I've been using write_file the file is out of sync, I need to reread it. Then it just got in the loop again.
So attached is the extracted chat log. I have had to strip out the content etc in places re propriary code, but hopefully I haven't lost the detail you need. if so i can send it to you privately.
cline_task_dec-16-2024_8-58-17-am.md

I did just merge https://github.com/RooVetGit/Roo-Cline/pull/120 and am releasing it as we speak in 2.2.8, so maybe that will help. I'll look at your export though - thanks for that!

haha wow, ok no problem thanks. I'll give it a whirl shortly.

I think 2.2.15 addresses a lot of what you're facing. I'm going to close this, but please reopen if you're still having problems.


Your Link is broken

Hello Your link is broken

Hi thanks for pointing , where is this link exactly?
This is the link for this project: https://nikhilmufc7.github.io/Your-First-PR/
Is the link you mentioned in use somewhere too?


Add a wiki: IOPWiki

An anonymous user has submitted a new wiki via our submission form.
Link to origin wiki: https://girls-frontline.fandom.com
Link to destination (independent) wiki: https://iopwiki.com

Added in commit https://github.com/KevinPayravi/indie-wiki-buddy/commit/3cb3317c650294bb9fbbb3af65881f2fa715fdf9, will be in next release

Released in v3.6.2 (available March 18, 2024 for Chrome and March 21, 2024 for Firefox)


feat(robot-server): http basic pipetting session - command routing and state store

Overview
Next steps in epic for a live protocol session. Goal is to implement commands in HTTP for completing the basic pipetting protocol.
Changelog

A StateStore. Currently just for the live protocol commands.
A CommandInterface for implementing the commands.
Create a command executor for live protocol sessions.

It routes commands to the correct handler in CommandInterface.
It calls StateStore to save command and result.

Review requests
Nothing specific. This is still a work progress feature.
Risk assessment
None. This doesn't do anything yet.
closes #6559

Nice! Does kinda seem like the live protocol and protocol sessions should be the same though?

Yes. But not until we're ready for prime time.


[BUG] nvitop.Device.from_cuda_visible_devices() not detecting GPU

Required prerequisites

[X] I have read the documentation https://nvitop.readthedocs.io.
[X] I have searched the Issue Tracker that this hasn't already been reported. (comment there if it has.)
[X] I have tried the latest version of nvitop in a new isolated virtual environment.

What version of nvitop are you using?
1.3.0
Operating system and version
Pop!_OS 22.04 LTS
NVIDIA driver version
535.113.01
NVIDIA-SMI
Wed Oct  4 08:57:35 2023
+---------------------------------------------------------------------------------------+
| NVIDIA-SMI 535.113.01             Driver Version: 535.113.01   CUDA Version: 12.2     |
|-----------------------------------------+----------------------+----------------------+
| GPU  Name                 Persistence-M | Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp   Perf          Pwr:Usage/Cap |         Memory-Usage | GPU-Util  Compute M. |
|                                         |                      |               MIG M. |
|=========================================+======================+======================|
|   0  NVIDIA GeForce RTX 3070 ...    Off | 00000000:01:00.0  On |                  N/A |
| N/A   51C    P8              15W / 125W |     59MiB /  8192MiB |     13%      Default |
|                                         |                      |                  N/A |
+-----------------------------------------+----------------------+----------------------+

+---------------------------------------------------------------------------------------+
| Processes:                                                                            |
|  GPU   GI   CI        PID   Type   Process name                            GPU Memory |
|        ID   ID                                                             Usage      |
|=======================================================================================|
|    0   N/A  N/A      3081      G   /usr/lib/xorg/Xorg                           53MiB |
+---------------------------------------------------------------------------------------+

Python environment
Virtualenv created with micromamba v1.5.1 with mm create --name testing python=3.11, then installed nvitop with pip install nvitop.
Command output:
3.11.5 (main, Sep 11 2023, 13:54:46) [GCC 11.2.0] linux
nvidia-ml-py==12.535.108
nvitop==1.3.0

Problem description
Using the following code snippet results in an empty list:
import nvitop; nvitop.Device.from_cuda_visible_devices()

Regardless of if CUDA_VISIBLE_DEVICES is set or not.
Steps to Reproduce
Command lines:
python -c "import nvitop; print(nvitop.Device.from_cuda_visible_devices())"

Traceback
N/A

Logs
N/A

Expected behavior
I would expect to see the same number of devices given by nvitop.Device.all() when calling nvitop.Device.from_cuda_visible_devices() if CUDA_VISIBLE_DEVICES is not set or if CUDA_VISIBLE_DEVICES is set to all GPUs in the system.
Additional context
This has never happened before on any previous machines using the same nvitop version and OS, which at first led me to believe it was a problem with this particular machine's setup, but after some more testing I'm not so sure. I'm giving the following information to see if nvitop can be improved to deal with this situation accordingly.
I looked into it in more detail, and it turns out that visible_device_indices is empty in this machine whereas in other machines it does find the correct GPU uuid.
# file: api.device.py, method: from_cuda_visible_devices

visible_device_indices = Device.parse_cuda_visible_devices()  # value: []

Looking closer at _parse_cuda_visible_devices, the complete uuid is correctly detected by _get_all_physical_device_attrs():
# file: api.device.py, function: _parse_cuda_visible_devices

physical_device_attrs = _get_all_physical_device_attrs()  # value: _PhysicalDeviceAttrs(index=0, name='NVIDIA GeForce RTX 3070 Ti Laptop GPU', uuid='GPU-13096139-7ada-8313-ee08-000dd8540fe1', support_mig_mode=False))])

But the subprocess that parses visible devices to uuids appears to be missing the last part of the uuid. This causes further logic to assume this uuid is for a MIG device (as it doesn't find it in physical_device_attrs), and among other things, it ends up not showing up as a valid GPU detected by nvitop.
# file: api.device.py, function: _parse_cuda_visible_devices

raw_uuids = subprocess.check_output(...)  # value: ['13096139-7ada-8313-ee08-']

I kept on tracking the incorrect UUID to cuDeviceGetUuid and it appears that this is the point where the uuid is incomplete.
# file: api.libcuda.py, function: cuDeviceGetUuid

uuid = ''.join(map('{:02x}'.format, uuid.value))  # value: "130961397ada8313ee08"

As I understand, this is just a wrapper for using the CUDA driver API, directly using the function cuDeviceGetUuid_v2, so I tried to use NVIDIA's cuda-python to see if I could replicate it, but oddly enough this does return the full uuid of the GPU.
micromamba create --name testing_2 python=3.11
micromamba activate
pip install cuda-python  # v12.2.0
python -c "from cuda import cuda; cuda.cuInit(0); print(cuda.cuDeviceGetUuid_v2(0)[1])"
# prints: bytes : 130961397ada8313ee08000dd8540fe1

As using the python wrappers of the API returns the expected value, I wonder if there's something nvitop's implementation could do to mitigate this issue.

Hi, @juan-barajas-p thanks for raising this! Much appreciate the detailed context for the investigation.
The cause is the UUID contains the null character \x00, which terminates the string buffer.
Your UUID:
uuid = '130961397ada8313ee08000dd8540fe1'

stripped uuid:
uuid = '130961397ada8313ee08'

as we can see there is a 00 after ..ee08 and the string buffer terminates early at the null character.
I will submit a quick fix for this.

Hi @juan-barajas-p, I create a fix to resolve this issue:

#100

You can try it via:
python3 -m pip install git+https://github.com/XuehaiPan/nvitop.git@fix-cuDeviceGetUuid

BTW, you can use Device.cuda.all() or CudaDevice.all() to get all CUDA visible devices.
from nvitop import Device, CudaDevice

# Use this only when you don't want to use the `CUDA_VISIBLE_DEVICES` from the environment variable
all_cuda_devices = Device.from_cuda_visible_devices()             # from the environment variable
other_cuda_devices = Device.from_cuda_visible_devices('4,3,0,1')  # do not use the environment variable

# alternatives if you only read `CUDA_VISIBLE_DEVICES` from the environment variable
all_cuda_devices = Device.cuda.all()  # you can have only `from nvitop import Device`
all_cuda_devices = CudaDevice.all()

Hi! Thank you for the very quick response. Good job with this library, as it's the easiest method of interacting with GPU metrics that I've used.
Ohh of course that's the problem haha. Also, thank you for the tip! I didn't know you could do it that way.
It almost works. I think you meant to apply the fix to api.libcuda.cuDeviceGetUuid instead of api.libcuda.cuDeviceGetUuid_v2, as it's the entrypoint used in api.device._cuda_visible_devices_parser? But if I use cuDeviceGetUuid_v2 is does solve the issue!

It almost works. I think you meant to apply the fix to api.libcuda.cuDeviceGetUuid instead of api.libcuda.cuDeviceGetUuid_v2, as it's the entrypoint used in api.device._cuda_visible_devices_parser?

Thanks for the notes. I have updated the fix accordingly.


Version 0.0.2

Landed in https://github.com/metarhia/metacalc/commit/940be866d58a908507aa61611ba158752175d425


bump editor and update plugin configs

Overview

bumps editor and plugins to latest, updates the config and enables the template comments plugin.
I've left out the snippet plugin for now as it's not entirely clear how vendors will interact with that one.
also updated readme, but did it quickly, so a review is appreciated
connected issues and PRs:

GN-4482
Setup

npm link the above PR of the plugins, and ember serve
How to test/reproduce

check plugins work as intended
Challenges/uncertainties

Checks PR readiness

[x] UI: works on smaller screen sizes
[x] changelog
[x] npm lint
[x] no new deprecations

There are three SimpleEditorComponent.js files but I can't figure out what they're for. Mistake push or are they actually needed?

how the hell did those get there xD

thought I could be cool and get rid of ED, but turns out plugins still technically need it.
led me down an insane rabbithole about peerdeps, more on that in the plugin repo

@elpoelma I cleaned up the removal of template-variable and fixed both issues you mentioned.
Could you re-review? I think this can be merged then.
Obviously readme isn't perfect (but that will be reworked anyway).


JetStreamCompose Sample Project - Details Screen Does Not Show Selected Movie

I'm running an un-modified copy of the Official 'Jetpack Compose for TVSamples' project - and I'm trying to figure out why the 'MovieDetailsScreen.kt' never successfully displays the movie clicked on / selected in 'HomeScreen.kt'.
Official Google Source code (with the bug in it):
https://github.com/android/tv-samples/tree/main/JetStreamCompose
Long story short: No matter which movie is selected:

...the 'details screen' always displays the same movie (which isn't the one clicked):

Any suggestions / tips are appreciated.

Thanks for reporting. We will investigate this and get back.


CleanUp the kanctl code to return a struct of clients

In current implementation the initializeClients  function returns four variable instead of that we should rather return a struct of the clients.

relevant.
We should do this, because we try to return any other client the return list is just going to grow.

/assign


Improve pattern recognition

Description
Describe:

Domain must not include a slash
Org must not include a slash on github
Add support for gitlab groups and github/gitlab path
Update parsing for improved parse info recostrution
Add support for git-url-parse properties
Add support for / separated ssh URLs

References
Fix #10
Fix #18
Fix #19
Fix #20
Checklist

[x] Code lint checked via inv lint
[x] Tests added

Pull Request Test Coverage Report for Build 376099621

49 of 49 (100.0%)  changed or added relevant lines in 6 files are covered.
2 unchanged lines in 2 files lost coverage.
Overall coverage increased (+0.9%) to 92.549%

Files with Coverage Reduction
New Missed Lines
%

giturlparse/parser.py
1
90.0%

giturlparse/result.py
1
66.3%

Totals

Change from base Build 365586073:
0.9%

Covered Lines:
189

Relevant Lines:
201

💛  - Coveralls


Add NRIC

As a police officer, I want to be able to add NRIC so that I can identify the specific user.

but cannot show in Address App

solve the issue regarding the show in Address app.

done


Request for new term [sycosis barbae]

Label
sycosis barbae
Synonyms
bacterial folliculitis
Synonym type
related
Definition
Bacterial folliculitis of the beard and/or mustache areas, usually caused by Staphylococcus aureus.
http://purl.obolibrary.org/obo/DERMO_0002078
Parent term
MONDO:0006552 folliculitis MONDO:0005113 bacterial infectious disease
Children term(s)
No response
ORCID Identifier
https://orcid.org/0000-0002-0819-0473
Website URL
No response
Additional comments
Term request done in the context of the OBO Community Challenge 2024
Reference for synonym
PMID:33085351 reference for RELATED synonym "bacterial folliculitis"
Uncertain whether the integration of a related synonym is beneficial or will create confusion.
Parent term
Uncertain whether to consider this term SubClassOf MONDO:0005545 'staphylococcus aureus infection' because definition indicates only “usually”.
Term in other terminologies
sycosis barbae - http://purl.bioontology.org/ontology/MEDDRA/10042731
sycosis barbae - http://purl.bioontology.org/ontology/SNOMEDCT/156410002
Additional comments that may require to open a different issue
The following terms could also be subClassOf MONDO:0006552 folliculitis based on DERMO ontology:
MONDO:0021660 'deep seated dermatophytosis'
MONDO:0000242 'tinea barbae'
MONDO:0002260 hidradenitis (and childs)
MONDO:0012865 'Pseudofolliculitis barbae'
Many thanks MONDO!

Parent term
Uncertain whether to consider this term SubClassOf MONDO:0005545 'staphylococcus aureus infection' because definition indicates only “usually”.

You are correct: since the definition indicates it is "usually" due to a staphylococcus aureus infection, it is not 100% of the cases, therefore the parent  'staphylococcus aureus infection' would not be correct.


Support for Windows through WSL

It would be amazing, if your action could also support WSL in Windows.
I'm the creator of https://github.com/Vampire/setup-wsl and right now need to investigate some strange behavior within the WSL distribution on the Windows runner.
It would have been very nice if this action could have been used for that.

I'm currently looking for a similar tool for windows, ill let you know if I find anything

This seems to do it https://github.com/mxschmitt/action-tmate

Ah, nice, thank you very much.


Update conda env yml files and add missing dependencies

Description

Closes #306
Add xesmf back to the dev.yml
Add python-dateutil, types-python-dateutil to ci.yml and readthedocs.yml

Checklist

[x] My code follows the style guidelines of this project
[x] I have performed a self-review of my own code
[x] My changes generate no new warnings
[x] Any dependent changes have been merged and published in downstream modules

If applicable:

[ ] I have added tests that prove my fix is effective or that my feature works
[ ] New and existing unit tests pass with my changes (locally and CI/CD build)
[ ] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation
[ ] I have noted that this is a breaking change for a major release (fix or feature that would cause existing functionality to not work as expected)

Codecov Report

Merging #307 (3518c21) into main (050d57e) will not change coverage.
The diff coverage is n/a.

:exclamation: Current head 3518c21 differs from pull request most recent head 1dc4511. Consider uploading reports for the commit 1dc4511 to get more accurate results

@@            Coverage Diff            @@
##              main      #307   +/-   ##
=========================================
  Coverage   100.00%   100.00%
=========================================
  Files           14        14
  Lines         1169      1169
=========================================
  Hits          1169      1169

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

@durack1 and @pochedls, this should address the missing xesmf in your dev env now.
I tested it locally and import xcdat, no more missing module.


using freezeResults with InMemoryCache

Perhaps I'm using the apollo 2.6 feature improperly with subscriptions in my vue-apollo app but freezeResults option on the inMemoryCache seems to break any updates to subscriptions. What's the best practice here should freezeResults not be used at all?
Here's my reference https://blog.apollographql.com/whats-new-in-apollo-client-2-6-b3acf28ecad1

My original assessment of the issue was related to another unrelated area. Please excuse the unnecessary issue.


Transaction hashes

I am unaware if this is intentional or not, but the hashes that show on Explorer begin with the second character.


[10.0.x] [incubator-kie-issues-1618] Fix NOTICE year with range

https://github.com/apache/incubator-kie-issues/issues/1618

See https://github.com/apache/incubator-kie-issues/issues/1618#issuecomment-2516665249
I didn't file a PR for main, because NOTICE in main looks old, so I assume it will be overwritten with NOTICE in 10.0.x

Hi @porcelli , I'm merging this PR.
Rc4 NOTICE still has 2024. but I believe it's not a blocker, because "Malformed NOTICE" is minor issue : https://issues.apache.org/jira/browse/LEGAL-469


OPENAI_API_KEY must be set when exclusively using other models

[x] I have read and agree to the contributing guidelines.

Describe the bug
When using Agent(), one must define an OpenAI API key even when exclusively using other models.
To Reproduce

Do NOT specify an OpenAI API Key
Run any of the examples that does not use OpenAI. e.g.:

from griptape.structures import Agent
from griptape.drivers import AmazonBedrockPromptDriver, BedrockJurassicPromptModelDriver

agent = Agent(
    prompt_driver=AmazonBedrockPromptDriver(
        model="ai21.j2-ultra-v1",
        prompt_model_driver=BedrockJurassicPromptModelDriver(top_p=0.95),
        temperature=0.7,
    ),
)
agent.run(
    "Suggest an outline for a blog post based on a title. "
    "Title: How I put the pro in prompt engineering."
)

It will fail with the following error:
    raise OpenAIError(
openai.OpenAIError: The api_key client option must be set either by passing api_key to the client or by setting the OPENAI_API_KEY environment variable

Expected behavior
OpenAI API key only required when using OpenAI models.
Workaround
Set an empty OpenAI API key in .env
OPENAI_API_KEY=""

Hey @gabrielmverreault thank you for the issue! Even though you have overridden the prompt_driver, the embedding_driver is still defaulting to OpenAiEmbeddingDriver. In previous versions this would fail at runtime, but since we updated the openai SDK it fails at initialization.
You can override the Embedding Driver or disable Task Memory by setting task_memory=None.
I am going to keep this issue open since I think we need to update our documentation to better reflect these nuances.

@gabrielmverreault I am going to close this issue as we have made the documentation updates in https://github.com/griptape-ai/griptape-docs/pull/167. But we are going to continue improving the developer experience around defaults on https://github.com/griptape-ai/griptape/issues/242. Stay tuned!


libtool: 2.4.6 -> 2.4.7

Description of changes
Update libtool to 2.4.7
libtool2-macos11.patch has been merged upstream as 9e8c88251
Things done

Built on platform(s)

[x] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin
[X] powerpc64le-linux

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
22.05 Release Notes (or backporting 21.11 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module
[ ] (Release notes changes) Ran nixos/doc/manual/md-to-db.sh to update generated release notes

[ ] Fits CONTRIBUTING.md.

@ofborg eval

(https://github.com/FRidh)@FRidh FRidh added this to WIP in Staging via automation 3 hours ago

@FRidh, this PR is ready to be reviewed and/or merged.

Squashed SuperSandro2000's recommendations.

substituteInPlace build-aux/ltmain.in --replace '#! /usr/bin/env sh' '#!${runtimeShell}' now leaks out /nix/store paths into tarballs generated under nixpkgs. build-aux/ltmain.sh gets packaged as part of make dist in libtool-aware projects. Encountered it today on ski. Executable reproducer:
$ git clone https://github.com/trofi/ski && cd ski
$ git checkout v1.4.0
$ nix-shell --pure -p autoconf -p lzip -p automake -p libtool -p pkg-config -p libelf -p ncurses -p gperf -p bison -p flex
$$ ./autogen.sh && ./configure && make dist
$$ tar xf ski-1.4.0.tar.xz
$$ fgrep -R  nix/store ski-1.4.0/
ski-1.4.0/build-aux/ltmain.sh:#!/nix/store/3j918i1nbwhby0y38bn2r438rjhh8f4d-bash-5.1-p16/bin/bash

Note how ski-1.4.0/build-aux/ltmain.sh embeds the path to /nix/store.

Another fallout from substituteInPlace libtoolize.in       --replace '#! /usr/bin/env sh' '#!${runtimeShell}' is present in branches before 6becbd39707fbf8306b35af1828893eec0d03646 where we dropped help2man call.
When help2man call is still present we call libtoolize with wrong bash interpreter: host one instead of build one which causes very strange errors on systems with invalid binfmt entry for host registered. One of the ways to trigger it is to register non-existent binfmt handler for riscv64 and build pkgsCross.riscv64.libtool from 9af373a61647257d16ae6062cddaa9094d24920c.
The simpler one is to just grep libtoolize at build:
$ nix-build -I nixpkgs=https://github.com/NixOS/nixpkgs/archive/9af373a61647257d16ae6062cddaa9094d24920c.tar.gz --expr "with import <nixpkgs> {}; pkgsCross.riscv64.libtool.overrideAttrs (oa: { preBuild = ''make libtoolize; ! grep -P '#!.*riscv64' libtoolize''; })"
...
building
  GEN      libtoolize
#!/nix/store/b0lbpi22a000jkm7lp7ihi8w463al3ry-bash-5.1-p16-riscv64-unknown-linux-gnu/bin/bash
error: builder for '/nix/store/89cqzdsiqbzx4yng4nrlyd5nzydndr2g-libtool-riscv64-unknown-linux-gnu-2.4.7.drv' failed with exit code 1;

In that old 9af373a61647257d16ae6062cddaa9094d24920c libtool used freshly built libtoolize to generate manpage and failed for some users.
If there is no immediate reason to patch libtoolize it might be worth tweaking shebang mangling and defet it to install phase.

[when cross-compiling]

is present in branches before 6becbd3 When help2man call is still present we call libtoolize with wrong bash interpreter: host one instead of build

It's very suspicious that I never encountered this.  My laptop and routers are now 100% cross-compiled, and have been at-least-mostly-cross-compiled for quite some time.   Since the code in question is over six months old, and not part of the current release, I'll just take your word for it.

If there is no immediate reason to patch libtoolize

There is: it's explained in the comment above in the code that does the patching.  There's a reference to the libtool commit that made it necessary.

it might be worth tweaking shebang mangling

Write a PR -- it might look easier than it really is, and that's the only way to find out.

[when cross-compiling]

is present in branches before 6becbd3 When help2man call is still present we call libtoolize with wrong bash interpreter: host one instead of build

It's very suspicious that I never encountered this. My laptop and routers are now 100% cross-compiled, and have been at-least-mostly-cross-compiled for quite some time. Since the code in question is over six months old, and not part of the current release, I'll just take your word for it.

It required broken binfmt_misc interpreter to expose the bug. No need to take my word for it. We can observe the fact that libtoool relied on running foreign binaries by bringing hepl2man dependency back and faking an unhandled error from libtoolize.in against master:
--- a/pkgs/development/tools/misc/libtool/libtool2.nix
+++ b/pkgs/development/tools/misc/libtool/libtool2.nix
@@ -2,4 +2,5 @@
 , runtimeShell
 , file
+, help2man
 }:

@@ -33,4 +34,13 @@ stdenv.mkDerivation rec {
     # avoid help2man run after 'libtoolize.in' update
     touch doc/libtoolize.1
+  '' + lib.optionalString stdenv.targetPlatform.isRiscV ''
+    # force help2man run to expose wrong call of libtoolize with
+    # unsupported "host" interpreter.
+
+    # make sure we don't report "No such file or directory" but expose
+    # "broken interpreter". We should not run interpreters anyway.
+    sed -i 'exit 42' libtoolize.in
+    sed -i 'i1 echo "UNSUPPORTED #!${runtimeShell}" interpreter"' libtoolize.in
+    rm doc/libtoolize.1
   '';

@@ -39,5 +49,5 @@ stdenv.mkDerivation rec {
   # add autoconf and automake or help2man dependencies here. That way we can
   # avoid pulling in perl and get away with just an `m4` depend.
-  nativeBuildInputs = [ m4 file ];
+  nativeBuildInputs = [ m4 file ] ++ lib.optionals stdenv.targetPlatform.isRiscV [ help2man ];
   propagatedBuildInputs = [ m4 file ];

This fails as:
$ nix build --no-link -f. pkgsCross.riscv64.libtool -L
...
libtool-riscv64-unknown-linux-gnu>   GEN      doc/libtoolize.1
libtool-riscv64-unknown-linux-gnu> help2man: can't get `--help' info from libtoolize
libtool-riscv64-unknown-linux-gnu> Try `--no-discard-stderr' if option outputs to stderr

If there is no immediate reason to patch libtoolize

There is: it's explained in the comment above in the code that does the patching. There's a reference to the libtool commit that made it necessary.

it might be worth tweaking shebang mangling

Write a PR -- it might look easier than it really is, and that's the only way to find out.

I'll have to decline. Past experience with certain packages shows that there is no agreement on the final solution (usually after hours sunk into preparing and testing the fix). I'll leave the exercise to others.


fix block explorer link

Fixes the issue that currently the mempool.space link is given in the QR as
https:/mempool.space/address/bc1...

Changed to  https:// in all 3 .ino-s.
(Previously could give the custom link as /mempool.space to work around this)

Thanks! Sorry it took such a while to merge


Multi-GPU training AISHELL-1

environment:
python3.9.0
CUDA10.2
Driver Version: 440.82
torch==1.7.1
torchaudio==0.7.2
torchvision==0.8.2
when run python3 train.py hparams/train.yaml --data_folder=/localscratch/aishell/ --data_parallel_backend=True --data_parallel_count=4,encounter RuntimeError: NCCL Error 2: unhandled system error
environment:
python3.9.0
CUDA10.2
Driver Version: 440.82
torch==1.8.0
torchaudio==0.8.0
torchvision==0.9.0
when run python3 train.py hparams/train.yaml --data_folder=/localscratch/aishell/ --data_parallel_backend=True --data_parallel_count=2,encounter RuntimeError: RuntimeError: CUDA out of memory.

Hey hi, interesting. So it "works" (in the sense that training starts) with 2 but it doesn't start at all with 4 ?

Hey hi, interesting. So it "works" (in the sense that training starts) with 2 but it doesn't start at all with 4 ?

yes.3 also got RuntimeError: NCCL Error 2: unhandled system error.2GPU run 4 hours got RuntimeError: CUDA out of memory.

Which GPUs do you have in your system?
On Fri, 19 Mar 2021 at 06:05, BarryKCL @.***> wrote:

Hey hi, interesting. So it "works" (in the sense that training starts)
with 2 but it doesn't start at all with 4 ?
yes.3 also got RuntimeError: NCCL Error 2: unhandled system error.2GPU run
4 hours got RuntimeError: CUDA out of memory.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/speechbrain/speechbrain/issues/584#issuecomment-802708295,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AEA2ZVSEP7GDUWIYJKTMUDDTEMOXLANCNFSM4ZN5GWLA
.

Which GPUs do you have in your system?
…
On Fri, 19 Mar 2021 at 06:05, BarryKCL @.***> wrote: Hey hi, interesting. So it "works" (in the sense that training starts) with 2 but it doesn't start at all with 4 ? yes.3 also got RuntimeError: NCCL Error 2: unhandled system error.2GPU run 4 hours got RuntimeError: CUDA out of memory. — You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub <#584 (comment)>, or unsubscribe https://github.com/notifications/unsubscribe-auth/AEA2ZVSEP7GDUWIYJKTMUDDTEMOXLANCNFSM4ZN5GWLA .

4 1080ti

got the same problem at the same dataset. when it processed the last several samples ( 7497 / 7507 ), got RuntimeError: CUDA out of memory.

got the same problem at the same dataset. when it processed the last several samples ( 7497 / 7507 ), got RuntimeError: CUDA out of memory.

(Re: the last several samples, that's because the yaml specifies that the training examples should be sorted by length, so the last few minibatches contain the longest utterances, where an OOM would happen.)
I haven't used multi-GPU yet, so I don't think I can help debugging here. @aheba might be able to help.

Did you try to simply reduce the batch size?
On Sat, 20 Mar 2021 at 08:04, Loren Lugosch @.***>
wrote:

(Re: the last several samples, that's because the yaml specifies that the
training examples should be sorted by length, so the last few minibatches
contain the longest utterances, where an OOM would happen.)
I haven't used multi-GPU yet, so I don't think I can help debugging here.
@aheba https://github.com/aheba might be able to help.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/speechbrain/speechbrain/issues/584#issuecomment-803298608,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AEA2ZVSEMILN3PSAGKBTWQLTESFN7ANCNFSM4ZN5GWLA
.

hi @BarryKCL ,
I'm wondering why you have NCCL issue with DataParallel...
Could you run the exp again and share with us the output from the following command line:
BEFORE & AFTER RUNNING the exp:
lspci -vvv | grep -i pmc

lspci | grep -i nv

environment:
python3.9.0
CUDA10.2
Driver Version: 440.82
torch==1.7.1
torchaudio==0.7.2
torchvision==0.8.2
when run python3 train.py hparams/train.yaml --data_folder=/localscratch/aishell/ --data_parallel_backend=True --data_parallel_count=4,encounter RuntimeError: NCCL Error 2: unhandled system error
environment:
python3.9.0
CUDA10.2
Driver Version: 440.82
torch==1.8.0
torchaudio==0.8.0
torchvision==0.9.0
when run python3 train.py hparams/train.yaml --data_folder=/localscratch/aishell/ --data_parallel_backend=True --data_parallel_count=2,encounter RuntimeError: RuntimeError: CUDA out of memory.

do you train it in cpu only ,or single machine with single gpu  or single machine with multi gpus,or multi machine with multi gpus. what the result in that different envinment is .
i train it in one device with one gpu and two gpu ,the result is very different.one gpu is 35,but two gpu is 70

Let me take a deeper look, see PR #699  for more details

Hi @BarryKCL , which Nvidia card are you running..
I'm trying to reproduce your error, I have 2 RTX 6000 right now..
I do the following command line to have the same env as you reported
I got a lot of conflicts with pytorch and torchvision on python 3.9
(gpu-test3) aheba@koios:~/test_gpu/speechbrain-abdel$ pytorch=1.7.1 torchvision=0.8.2 torchaudio=0.7.2 cudatoolkit=10.2 -c pytorch
Collecting package metadata (current_repodata.json): done
Solving environment: failed with initial frozen solve. Retrying with flexible solve.
Solving environment: failed with repodata from current_repodata.json, will retry with next repodata source.
Collecting package metadata (repodata.json): done
Solving environment: failed with initial frozen solve. Retrying with flexible solve.
Solving environment: \
Found conflicts! Looking for incompatible packages.
This can take several minutes.  Press CTRL-C to abor|
failed

UnsatisfiableError: The following specifications were found to be incompatible with each other:

Output in format: Requested package -> Available versions

Package _libgcc_mutex conflicts for:
pytorch -> libgcc-ng[version='>=7.3.0'] -> _libgcc_mutex=[build=main]
cudatoolkit=10.2 -> libgcc-ng[version='>=7.3.0'] -> _libgcc_mutex=[build=main]
python=3.9 -> libgcc-ng[version='>=7.3.0'] -> _libgcc_mutex=[build=main]
torchvision -> libgcc-ng[version='>=7.3.0'] -> _libgcc_mutex=[build=main]

Package pytorch conflicts for:
torchaudio -> pytorch[version='1.2.0|1.3.0|1.3.1|1.4.0|1.5.0|1.5.1|1.6.0|1.7.0|1.7.1|1.8.0|1.8.1|>=1.1.0']
torchvision -> pytorch[version='1.1.*|1.2.0+cu92|1.2.0|1.3.0|1.3.1|1.4.0|1.5.0|1.5.1|1.6.0|1.7.0|1.7.1|1.8.0|1.8.1|>=1.1.0|>=1.0.0|>=0.4|>=0.3|1.3.1.*|1.2.0.*']
pytorch

Package cudatoolkit conflicts for:
torchvision -> pytorch==1.4.0 -> cudatoolkit[version='10.0.*|>=10.1.243,<10.2.0a0|9.2.*|>=8.0,<8.1|>=8.0,<8.1.0a0|8.*|9.*|9.0.*|8.0.*|7.5.*']
torchaudio -> pytorch==1.8.1 -> cudatoolkit[version='10.0.*|>=10.0,<10.1|>=10.1,<10.2|>=11.1,<11.2|>=10.2,<10.3|>=11.0,<11.1|>=9.2,<9.3|>=10.1.243,<10.2.0a0|>=9.2,<9.3.0a0|>=10.0.130,<10.1.0a0|9.2.*|>=9.0,<9.1|>=9.0,<9.1.0a0']
torchvision -> cudatoolkit[version='>=10.0,<10.1|>=10.1,<10.2|>=11.1,<11.2|>=10.2,<10.3|>=11.0,<11.1|>=9.2,<9.3|>=9.0,<9.1|>=10.0.130,<10.1.0a0|>=9.2,<9.3.0a0|>=9.0,<9.1.0a0']
cudatoolkit=10.2

Package libgcc-ng conflicts for:
torchvision -> jpeg[version='<=9b'] -> libgcc-ng[version='>=7.2.0']
torchvision -> libgcc-ng[version='>=5.4.0|>=7.3.0']
cudatoolkit=10.2 -> libgcc-ng[version='>=7.3.0']
python=3.9 -> zlib[version='>=1.2.11,<1.3.0a0'] -> libgcc-ng[version='>=7.2.0']
python=3.9 -> libgcc-ng[version='>=7.3.0']
torchaudio -> numpy[version='>=1.11'] -> libgcc-ng[version='>=5.4.0|>=7.2.0|>=7.3.0']
pytorch -> ninja -> libgcc-ng[version='>=7.2.0']
pytorch -> libgcc-ng[version='>=5.4.0|>=7.3.0']

Package nccl conflicts for:
pytorch -> nccl[version='<2']
torchvision -> pytorch[version='>=0.4'] -> nccl[version='<2']

Package pytorch conflicts for:
torchvision=0.8.2 -> pytorch==1.7.1
torchaudio=0.7.2 -> pytorch==1.7.1

Package _libgcc_mutex conflicts for:
python=3.9.0 -> libgcc-ng[version='>=7.3.0'] -> _libgcc_mutex=[build=main]
pytorch=1.7.1 -> libgcc-ng[version='>=7.3.0'] -> _libgcc_mutex=[build=main]
cudatoolkit=10.2 -> libgcc-ng[version='>=7.3.0'] -> _libgcc_mutex=[build=main]

Package libstdcxx-ng conflicts for:
pytorch=1.7.1 -> ninja -> libstdcxx-ng[version='>=7.2.0']
pytorch=1.7.1 -> libstdcxx-ng[version='>=7.3.0']

It seems that there is 2 conflicts with NCCL and with CUDATOOLKIT=10.2 and _libgcc_mutex libstdcxx-ng when using python 3.9.4

@BarryKCL , we recommand using python=3.8. Could you please give us your feedback with that version ?

apparently its a pytorch not speechbrain issue, please use the recommended version for speechbrain.


Attack Object - Add tactic_name in addition to tactic_id

Problem:
The current Attack object describes the involved technique (uid [string], name [string]) related to the attack and its associated tactics. As one technique may be associated with multiple tactics, the tactics field is of type [String array].
The current implementation provides the IDs of the associated tactics, but not their names.
Some vendors will be sharing the tactic associated with a given event and analysts would definitely want to be able to execute queries like: mitre_tactic = 'Discovery'. This data is sent by our ADSecure product for Active Directory Protection.

  Since we are assuming there is only one technique (both uid and String form) per Attack object (and attacks is always an array wherever Attack is referenced), we would need a Tactic object most likely to represent the tuple, otherwise we would need a pair of ordered arrays (e.g. tactic_uids, tactic_names).

@pagbabian-splunk and @Noafr having an array tactic object within the Attack object seems the most simple to me. The tactic object can contain the string name and uid tuple, and we can make either the name or the uid required. Any issues with that approach?

This is the subject of polls https://github.com/ocsf/ocsf-schema/discussions/243 and https://github.com/ocsf/ocsf-schema/discussions/313.
I do not believe data objects should contain id-name tuples. I agree with https://github.com/JasonKeirstead that sending both in a single data object is unnecessary redundancy.  I disagree with Jason that one (tactic_id) should be mandatory.  Data objects are focused toward an audience.  The entire object shown above is oriented toward human consumption, so it makes no sense to single out a single enum (mitre_tactic) and require it to be either a numeric id (7) or an id/name tuple ([7, "Discovery]) -- the first is discordant - a single unreadable number in an object full of strings, and the second is redundant.
Instead, I believe the object as shown, with just the tactic name, is appropriate for human consumption.
A different object whose purpose is machine-to-machine optimized communication and storage, would use numeric IDs for all properties including enums.  It would be much smaller and completely unreadable, like raw IP packets, but tools (like Wireshark for pcap decoding) would both translate it to the identical readable JSON object and display it for human consumption.
Correct:
{
  "Alert_Level": 15,
  "src-ip": "",
  "mitre_tactic": [
    "Discovery"
  ]
}

Discordantly Inappropriate:
{
  "Alert_Level": 15,
  "src-ip": "",
  "mitre_tactic": [
    7
  ]
}

Unnecessarily Redundant:
{
  "Alert_Level": 15,
  "src-ip": "",
  "mitre_tactic": [
    [7, "Discovery"]
  ]
}

Maybe, depending on whether users normally use tactic IDs.  The query UI would know the database and whether it stores IDs or names, and translate whatever is selected by the user to what is stored in the database.
A pick list could display both (like zip codes and city names, though that's a bad analogy because the name isn't 1:1 with id), but if people never use the tactic ID (as with Windows GUIDs) there's little reason to display IDs in the pick list even if it is used in the database.

If we look at the MITRE Enterprise matrix in their portal, they display names but when you hover over them, the tip shows the TA# or the T#.  They are both used, and I think the issue here is what mode a consumer is in from an analysis standpoint.  However, a producer cannot know about all possible consumers, hence it doesn't know what mode to favor when emitting the events.  I think this is the argument for sending the tuple.

Shouldn't it be an assumption / design requirement that all OCSF consumers, upon receiving a TA#, can display the name, and upon receiving a name, can display the TA#?

I see this similarly but with different details.  An OCSF producer must send a consistent ID and may send an associated name.  A consumer can expect to receive an ID and may lookup a name if it isn't present.  It can also populate (enrich) the schema ahead of storage, e.g. for stream processing purposes.
When we first designed the Attack object, we replicated the techniques as enums but we soon determined that we couldn't keep the schema in sync with changes in the MITRE matrix, so went with strings and assumed consumers had access to the MITRE matrix.  We couldn't validate them in the earlier schema however - a consumer would need to do that.
Therefore I propose that we define a Tactic object and a Technique object, each having a required ID field, and an optional name field.  The Attack object would then have two required attributes: tactics as an array of Tactic objects, and technique as a Technique object.  A producer can optionally populate the name, or the consumer can optionally lookup the name and populate it, or simply store the name.
We could stay with the siblings technique_uid and technique_name instead of a Technique object, making technique_name optional, but it's more consistent if they are both objects.

Add version to the attack object

Yes, per @tankbusta and @awhite456 different versions of the ATT&CK matrix elements can coexist.

We could define a Tactic object and a Technique object, each having a required string and an optional string.  But without a schema there is no way to validate them:
["TA0007", "Discovery"] is valid, as are
["Discovery", "TA0007"],
["Discovery"],
["TA999345"], and
["Thursday", "Octopus"].
A schema would allow them to be validated, and could be automatically generated from the MITRE STIX sources https://github.com/mitre/cti/releases/tag/ATT%26CK-v12.0.  The problem is that MITRE doesn't define any integer ids, so OCSF would need to create them, then create two enums for each tactic and technique, one mapping the OCSF integer ID to the MITRE "external_id" ("TA0001") and the other mapping the OCSF integer to the MITRE "name": ("External Access").  It sure would be easier (more standard) if MITRE had defined their own integer object "id", but they didn't.
{
    "type": "bundle",
    "id": "bundle--c385d941-b6fa-49b6-b9a5-1d6ba4964473",
    "spec_version": "2.0",
    "objects": [
        {
            "x_mitre_domains": [
                "enterprise-attack"
            ],
            "object_marking_refs": [
                "marking-definition--fa42a846-8d90-4e51-bc29-71d5b4802168"
            ],
            "id": "x-mitre-tactic--ffd5bcee-6e16-4dd2-8eca-7b3beedf33ca",
            "type": "x-mitre-tactic",
            "created": "2018-10-17T00:14:20.652Z",
            "created_by_ref": "identity--c78cb6e5-0c4b-4611-8297-d1b8b55e40b5",
            "external_references": [
                {
                    "external_id": "TA0001",
                    "url": "https://attack.mitre.org/tactics/TA0001",
                    "source_name": "mitre-attack"
                }
            ],
            "modified": "2019-07-19T17:41:41.425Z",
            "name": "Initial Access",
            "description": "The adversary is trying to get into your network.\n\nInitial Access consists of techniques that use various entry vectors to gain their initial foothold within a network. Techniques used to gain a foothold include targeted spearphishing and exploiting weaknesses on public-facing web servers. Footholds gained through initial access may allow for continued access, like valid accounts and use of external remote services, or may be limited-use due to changing passwords.",
            "x_mitre_version": "1.0",
            "x_mitre_attack_spec_version": "2.1.0",
            "x_mitre_modified_by_ref": "identity--c78cb6e5-0c4b-4611-8297-d1b8b55e40b5",
            "x_mitre_shortname": "initial-access"
        }
    ]
}

Wow, I took a quick look at the github repo and there is a lot to look at across the matrix.  For validation, we could compromise and consider the range of techniques and tactics, requiring the 'T' and the 'TA' followed by integers and the integers would need to be in the range of the version of MITRE in the Attack object.  It's not perfect, as the techniques might not be part of the tactics (and the sub-techniques might be out of range as those are more unwieldy but it would catch some of your errors above.

See PR https://github.com/ocsf/ocsf-schema/pull/326


iOS support

Hi...I was wondering if this library will offer iOS support soon?  I noticed that https://pub.dev/packages/libserialport is currently supporting it.
Thanks.

I think that's a mistake, as far as I know you can't use serial port via USB or via bluetooth classic because of the MFi (made for iPhone) program. The only option is to use BLE for communication

I believe @pieterbergmans got confused with iOS and macOS. Both are different things.
As @karniv00l wrote, libserialport does not support iOS.
https://pub.dev/packages/libserialport
Probably this issue could be closed.


:bug: Fix menu CSON indentation.

The current menus/sass-director.cson file is improperly indented, causing Atom to throw an error about an unexpected newline (q.v. atom/atom#5495). This PR correctly nests the preexisting menu objects under 'context-menu', calming Atom down considerably.

Perfect. Looks good. Thank you


Should I run a sub to get the output message from Apache Beam example?

Reported by cong wang,
Hi,I have tried the KE-Apache-Beam-Analysis example on githuh, after run ./testmachine.what message could I get?should I run a sub to get the output message?
cc @sids-b

@SupriyaSupu Please take a look when you got the chance.

there is a subscribe file for getting alerts whenever the temperature crosses threshold(i remember it was 90, not sure though. we can check from the output of running this file).
https://github.com/kubeedge/examples/blob/master/KE-Apache-Beam-Analysis/MQTT_Subscriber/testmachinealert.go

@m1093782566 @sids-b thanks a looooot.I have found the right way to catch the result.

/closed


Pricing Section

Shouldn't there be a Pricing Section in the UI?

We are planning a Pro version of this template which will have these features and more.


$cordovaGeolocation doesn't work on iOS 10

Hi, guys.
I have an Ionic app that uses cordova Geolocation plugin to watch my device position.
When I run my app in Ionic View, everything works fine. But if I try to deploy the same app with XCode in my iPhone 6 (iOS 10), I cannot get any GPS position.
Any ideas?
Thanks and regards!

Investigating further I've found that the problem is that $ionicPlatform.ready() is not being called in iOS 10.

So how to solve this problem? thanks.

@MarcusXie You have to provide a working reproduction for me to see the issue.  I can't really guess. :-/


Link to Bountysource

https://github.com/gratipay/inside.gratipay.com/issues/1196#issuecomment-342466613

:+1:


Use DeclId directly for TyDeclaration::StructDeclaration and TyDeclaration::EnumDeclaration.

Description
This PR fixes a regression to TyDeclaration::StructDeclaration and TyDeclaration::EnumDeclaration and removes the DeclRefs that they were holding.
Checklist

[x] I have linked to any relevant issues.
[x] I have commented my code, particularly in hard-to-understand areas.
[x] I have updated the documentation where relevant (API docs, the reference, and the Sway book).
[x] I have added tests that prove my fix is effective or that my feature works.
[x] I have added (or requested a maintainer to add) the necessary Breaking* or New Feature labels where relevant.
[x] I have done my best to ensure that my PR adheres to the Fuel Labs Code Review Standards.
[x] I have requested a review from the relevant team or maintainers.

Sure @tritao. In short, always use a DeclRef, except for the TyDeclaration AST node. The TyDeclaration AST node holds the information for the declaration, while DeclRef's hold the information for references to an existing declaration.
There is also a draft PR up (that is blocked by this PR) to add a type called the TypeSubstList that clears up this question: #4256


Skip empty collection when serialising

How can I let Jil skip serialisation of a property that contains an empty collection or dictionary?
We have an object that contains several of these properties, many of which might be empty. Not serialising the empty collections saves space in the resulting json (which is stored in a database).

JIL supports the ShouldSerializeXXX pattern https://docs.microsoft.com/en-us/dotnet/framework/winforms/controls/defining-default-values-with-the-shouldserialize-and-reset-methods.
See https://github.com/kevin-montrose/Jil/blob/b022e8442463c9006b861df6bdf174eb679931af/JilTests/SerializeTests.cs#L2520-2541 for an example

Great! Thanks for the example, because the Microsoft page gave me the impression that this only works when using System.Windows.Forms.Controls (which we do not use).


Readme: Fix typo in logic expression

The F in ∃X.P(X) <=> ∀T. ((∀X.F(X) => T) => T) is supposed to be a P, correct?

Yes indeed, thank you!


CI Licences and Docblock for Exceptions

Include CodeIgniter Licences in all Exceptions classes and add Docblock for most Exceptions methods.

remove interface is a bc break

Beside of bc break I mentioned before, please only create one specific purpose PR to ease review and rollback if something bad happen in the future.
I am closing this.


chore(node-name): Adding ability to provide explicit node name

Signed-off-by: shubhamchaudhary<EMAIL_ADDRESS>

INFO[2020-09-12T11:59:33+05:30] [PreReq]: Getting the ENV for the  experiment
INFO[2020-09-12T11:59:33+05:30] [PreReq]: Updating the chaos result of node-cpu-hog experiment (SOT)
INFO[2020-09-12T11:59:35+05:30] The application information is as follows     Label= Chaos Duration=30 Ramp Time=0 Namespace=
INFO[2020-09-12T11:59:35+05:30] [Status]: Verify that the AUT (Application Under Test) is running (pre-chaos)
INFO[2020-09-12T11:59:35+05:30] [Status]: Checking whether application containers are in running state
INFO[2020-09-12T11:59:36+05:30] The running status of container are as follows  Pod=event-exporter-v0.3.0-5cd6ccb7f7-jkmg9 Status=Running container=event-exporter
INFO[2020-09-12T11:59:36+05:30] The running status of container are as follows  Pod=event-exporter-v0.3.0-5cd6ccb7f7-jkmg9 Status=Running container=prometheus-to-sd-exporter
INFO[2020-09-12T11:59:36+05:30] The running status of container are as follows  container=fluentd-gcp-scaler Pod=fluentd-gcp-scaler-6855f55bcc-7hjtk Status=Running
INFO[2020-09-12T11:59:36+05:30] The running status of container are as follows  container=fluentd-gcp Pod=fluentd-gcp-v3.1.1-6j8db Status=Running
INFO[2020-09-12T11:59:36+05:30] The running status of container are as follows  Status=Running container=prometheus-to-sd-exporter Pod=fluentd-gcp-v3.1.1-6j8db
INFO[2020-09-12T11:59:36+05:30] The running status of container are as follows  container=fluentd-gcp Pod=fluentd-gcp-v3.1.1-h86m6 Status=Running
INFO[2020-09-12T11:59:36+05:30] The running status of container are as follows  container=prometheus-to-sd-exporter Pod=fluentd-gcp-v3.1.1-h86m6 Status=Running
INFO[2020-09-12T11:59:36+05:30] The running status of container are as follows  Status=Running container=heapster Pod=heapster-gke-65f756fbc4-hwdjt
INFO[2020-09-12T11:59:36+05:30] The running status of container are as follows  container=heapster-nanny Pod=heapster-gke-65f756fbc4-hwdjt Status=Running
INFO[2020-09-12T11:59:36+05:30] The running status of container are as follows  container=prom-to-sd Pod=heapster-gke-65f756fbc4-hwdjt Status=Running
INFO[2020-09-12T11:59:36+05:30] The running status of container are as follows  container=dnsmasq Pod=kube-dns-5c446b66bd-jwm7c Status=Running
INFO[2020-09-12T11:59:36+05:30] The running status of container are as follows  Status=Running container=kubedns Pod=kube-dns-5c446b66bd-jwm7c
INFO[2020-09-12T11:59:36+05:30] The running status of container are as follows  Pod=kube-dns-5c446b66bd-jwm7c Status=Running container=prometheus-to-sd
INFO[2020-09-12T11:59:36+05:30] The running status of container are as follows  Status=Running container=sidecar Pod=kube-dns-5c446b66bd-jwm7c
INFO[2020-09-12T11:59:36+05:30] The running status of container are as follows  Pod=kube-dns-5c446b66bd-lr49p Status=Running container=dnsmasq
INFO[2020-09-12T11:59:36+05:30] The running status of container are as follows  container=kubedns Pod=kube-dns-5c446b66bd-lr49p Status=Running
INFO[2020-09-12T11:59:36+05:30] The running status of container are as follows  container=prometheus-to-sd Pod=kube-dns-5c446b66bd-lr49p Status=Running
INFO[2020-09-12T11:59:36+05:30] The running status of container are as follows  container=sidecar Pod=kube-dns-5c446b66bd-lr49p Status=Running
INFO[2020-09-12T11:59:36+05:30] The running status of container are as follows  container=autoscaler Pod=kube-dns-autoscaler-6b7f784798-cgdxg Status=Running
INFO[2020-09-12T11:59:36+05:30] The running status of container are as follows  container=kube-proxy Pod=kube-proxy-gke-docker-default-pool-5f426299-gnnk Status=Running
INFO[2020-09-12T11:59:36+05:30] The running status of container are as follows  container=kube-proxy Pod=kube-proxy-gke-docker-default-pool-5f426299-p9qs Status=Running
INFO[2020-09-12T11:59:36+05:30] The running status of container are as follows  container=default-http-backend Pod=l7-default-backend-84c9fcfbb-mm6pd Status=Running
INFO[2020-09-12T11:59:36+05:30] The running status of container are as follows  Status=Running container=metrics-server Pod=metrics-server-v0.3.3-fdc67d4b6-tj9zc
INFO[2020-09-12T11:59:36+05:30] The running status of container are as follows  container=metrics-server-nanny Pod=metrics-server-v0.3.3-fdc67d4b6-tj9zc Status=Running
INFO[2020-09-12T11:59:36+05:30] The running status of container are as follows  Pod=prometheus-to-sd-5sh6s Status=Running container=prometheus-to-sd
INFO[2020-09-12T11:59:36+05:30] The running status of container are as follows  Status=Running container=prometheus-to-sd-new-model Pod=prometheus-to-sd-5sh6s
INFO[2020-09-12T11:59:36+05:30] The running status of container are as follows  container=prometheus-to-sd Pod=prometheus-to-sd-f2lb6 Status=Running
INFO[2020-09-12T11:59:36+05:30] The running status of container are as follows  Status=Running container=prometheus-to-sd-new-model Pod=prometheus-to-sd-f2lb6
INFO[2020-09-12T11:59:36+05:30] The running status of container are as follows  container=metadata-agent Pod=stackdriver-metadata-agent-cluster-level-958b9884b-825sf Status=Running
INFO[2020-09-12T11:59:36+05:30] The running status of container are as follows  container=metadata-agent-nanny Pod=stackdriver-metadata-agent-cluster-level-958b9884b-825sf Status=Running
INFO[2020-09-12T11:59:38+05:30] [Status]: Checking whether application pods are in running state
INFO[2020-09-12T11:59:38+05:30] The running status of Pods are as follows     Pod=event-exporter-v0.3.0-5cd6ccb7f7-jkmg9 Status=Running
INFO[2020-09-12T11:59:38+05:30] The running status of Pods are as follows     Pod=fluentd-gcp-scaler-6855f55bcc-7hjtk Status=Running
INFO[2020-09-12T11:59:38+05:30] The running status of Pods are as follows     Pod=fluentd-gcp-v3.1.1-6j8db Status=Running
INFO[2020-09-12T11:59:38+05:30] The running status of Pods are as follows     Status=Running Pod=fluentd-gcp-v3.1.1-h86m6
INFO[2020-09-12T11:59:38+05:30] The running status of Pods are as follows     Pod=heapster-gke-65f756fbc4-hwdjt Status=Running
INFO[2020-09-12T11:59:38+05:30] The running status of Pods are as follows     Pod=kube-dns-5c446b66bd-jwm7c Status=Running
INFO[2020-09-12T11:59:38+05:30] The running status of Pods are as follows     Pod=kube-dns-5c446b66bd-lr49p Status=Running
INFO[2020-09-12T11:59:38+05:30] The running status of Pods are as follows     Pod=kube-dns-autoscaler-6b7f784798-cgdxg Status=Running
INFO[2020-09-12T11:59:38+05:30] The running status of Pods are as follows     Pod=kube-proxy-gke-docker-default-pool-5f426299-gnnk Status=Running
INFO[2020-09-12T11:59:38+05:30] The running status of Pods are as follows     Pod=kube-proxy-gke-docker-default-pool-5f426299-p9qs Status=Running
INFO[2020-09-12T11:59:38+05:30] The running status of Pods are as follows     Pod=l7-default-backend-84c9fcfbb-mm6pd Status=Running
INFO[2020-09-12T11:59:38+05:30] The running status of Pods are as follows     Pod=metrics-server-v0.3.3-fdc67d4b6-tj9zc Status=Running
INFO[2020-09-12T11:59:38+05:30] The running status of Pods are as follows     Pod=prometheus-to-sd-5sh6s Status=Running
INFO[2020-09-12T11:59:38+05:30] The running status of Pods are as follows     Pod=prometheus-to-sd-f2lb6 Status=Running
INFO[2020-09-12T11:59:38+05:30] The running status of Pods are as follows     Status=Running Pod=stackdriver-metadata-agent-cluster-level-958b9884b-825sf
INFO[2020-09-12T11:59:41+05:30] [Info]: Details of application under chaos injection  NodeCPUcores=2 NodeName=gke-docker-default-pool-5f426299-p9qs
INFO[2020-09-12T11:59:41+05:30] [Status]: Checking the status of the helper pod
INFO[2020-09-12T11:59:41+05:30] [Status]: Checking whether application containers are in running state
INFO[2020-09-12T12:00:04+05:30] The running status of container are as follows  container=node-cpu-hog Pod=node-cpu-hog-ncgnxf Status=Running
INFO[2020-09-12T12:00:06+05:30] [Status]: Checking whether application pods are in running state
INFO[2020-09-12T12:00:07+05:30] The running status of Pods are as follows     Pod=node-cpu-hog-ncgnxf Status=Running
INFO[2020-09-12T12:00:09+05:30] [Wait]: Waiting for 60s till the completion of the helper pod
INFO[2020-09-12T12:00:09+05:30] helper pod status: Running
INFO[2020-09-12T12:00:10+05:30] helper pod status: Running
INFO[2020-09-12T12:00:11+05:30] helper pod status: Running
INFO[2020-09-12T12:00:13+05:30] helper pod status: Running
INFO[2020-09-12T12:00:14+05:30] helper pod status: Running
INFO[2020-09-12T12:00:15+05:30] helper pod status: Running
INFO[2020-09-12T12:00:17+05:30] helper pod status: Running
INFO[2020-09-12T12:00:18+05:30] helper pod status: Running
INFO[2020-09-12T12:00:19+05:30] helper pod status: Running
INFO[2020-09-12T12:00:20+05:30] helper pod status: Running
INFO[2020-09-12T12:00:22+05:30] helper pod status: Running
INFO[2020-09-12T12:00:23+05:30] helper pod status: Running
INFO[2020-09-12T12:00:24+05:30] helper pod status: Running
INFO[2020-09-12T12:00:26+05:30] helper pod status: Running
INFO[2020-09-12T12:00:27+05:30] helper pod status: Running
INFO[2020-09-12T12:00:28+05:30] helper pod status: Running
INFO[2020-09-12T12:00:29+05:30] helper pod status: Running
INFO[2020-09-12T12:00:31+05:30] helper pod status: Running
INFO[2020-09-12T12:00:32+05:30] helper pod status: Running
INFO[2020-09-12T12:00:33+05:30] helper pod status: Succeeded
INFO[2020-09-12T12:00:33+05:30] The running status of Pods are as follows     Pod=node-cpu-hog-ncgnxf Status=Succeeded
INFO[2020-09-12T12:00:34+05:30] [Status]: Getting the status of application node
INFO[2020-09-12T12:00:34+05:30] The running status of Nodes are as follows    Node=gke-docker-default-pool-5f426299-p9qs Ready=true
INFO[2020-09-12T12:00:34+05:30] [Cleanup]: Deleting the helper pod
INFO[2020-09-12T12:00:37+05:30] [Confirmation]: CPU of the application node has been stressed successfully
INFO[2020-09-12T12:00:37+05:30] [Status]: Verify that the AUT (Application Under Test) is running (post-chaos)
INFO[2020-09-12T12:00:37+05:30] [Status]: Checking whether application containers are in running state
INFO[2020-09-12T12:00:37+05:30] The running status of container are as follows  container=event-exporter Pod=event-exporter-v0.3.0-5cd6ccb7f7-jkmg9 Status=Running
INFO[2020-09-12T12:00:37+05:30] The running status of container are as follows  container=prometheus-to-sd-exporter Pod=event-exporter-v0.3.0-5cd6ccb7f7-jkmg9 Status=Running
INFO[2020-09-12T12:00:37+05:30] The running status of container are as follows  container=fluentd-gcp-scaler Pod=fluentd-gcp-scaler-6855f55bcc-7hjtk Status=Running
INFO[2020-09-12T12:00:37+05:30] The running status of container are as follows  container=fluentd-gcp Pod=fluentd-gcp-v3.1.1-6j8db Status=Running
INFO[2020-09-12T12:00:37+05:30] The running status of container are as follows  Pod=fluentd-gcp-v3.1.1-6j8db Status=Running container=prometheus-to-sd-exporter
INFO[2020-09-12T12:00:37+05:30] The running status of container are as follows  Pod=fluentd-gcp-v3.1.1-h86m6 Status=Running container=fluentd-gcp
INFO[2020-09-12T12:00:37+05:30] The running status of container are as follows  Pod=fluentd-gcp-v3.1.1-h86m6 Status=Running container=prometheus-to-sd-exporter
INFO[2020-09-12T12:00:37+05:30] The running status of container are as follows  container=heapster Pod=heapster-gke-65f756fbc4-hwdjt Status=Running
INFO[2020-09-12T12:00:37+05:30] The running status of container are as follows  container=heapster-nanny Pod=heapster-gke-65f756fbc4-hwdjt Status=Running
INFO[2020-09-12T12:00:37+05:30] The running status of container are as follows  Status=Running container=prom-to-sd Pod=heapster-gke-65f756fbc4-hwdjt
INFO[2020-09-12T12:00:37+05:30] The running status of container are as follows  Pod=kube-dns-5c446b66bd-jwm7c Status=Running container=dnsmasq
INFO[2020-09-12T12:00:37+05:30] The running status of container are as follows  Status=Running container=kubedns Pod=kube-dns-5c446b66bd-jwm7c
INFO[2020-09-12T12:00:37+05:30] The running status of container are as follows  container=prometheus-to-sd Pod=kube-dns-5c446b66bd-jwm7c Status=Running
INFO[2020-09-12T12:00:37+05:30] The running status of container are as follows  container=sidecar Pod=kube-dns-5c446b66bd-jwm7c Status=Running
INFO[2020-09-12T12:00:37+05:30] The running status of container are as follows  container=dnsmasq Pod=kube-dns-5c446b66bd-lr49p Status=Running
INFO[2020-09-12T12:00:37+05:30] The running status of container are as follows  container=kubedns Pod=kube-dns-5c446b66bd-lr49p Status=Running
INFO[2020-09-12T12:00:37+05:30] The running status of container are as follows  container=prometheus-to-sd Pod=kube-dns-5c446b66bd-lr49p Status=Running
INFO[2020-09-12T12:00:37+05:30] The running status of container are as follows  container=sidecar Pod=kube-dns-5c446b66bd-lr49p Status=Running
INFO[2020-09-12T12:00:37+05:30] The running status of container are as follows  Status=Running container=autoscaler Pod=kube-dns-autoscaler-6b7f784798-cgdxg
INFO[2020-09-12T12:00:37+05:30] The running status of container are as follows  Status=Running container=kube-proxy Pod=kube-proxy-gke-docker-default-pool-5f426299-gnnk
INFO[2020-09-12T12:00:37+05:30] The running status of container are as follows  Status=Running container=kube-proxy Pod=kube-proxy-gke-docker-default-pool-5f426299-p9qs
INFO[2020-09-12T12:00:37+05:30] The running status of container are as follows  Status=Running container=default-http-backend Pod=l7-default-backend-84c9fcfbb-mm6pd
INFO[2020-09-12T12:00:37+05:30] The running status of container are as follows  Status=Running container=metrics-server Pod=metrics-server-v0.3.3-fdc67d4b6-tj9zc
INFO[2020-09-12T12:00:37+05:30] The running status of container are as follows  container=metrics-server-nanny Pod=metrics-server-v0.3.3-fdc67d4b6-tj9zc Status=Running
INFO[2020-09-12T12:00:37+05:30] The running status of container are as follows  container=prometheus-to-sd Pod=prometheus-to-sd-5sh6s Status=Running
INFO[2020-09-12T12:00:37+05:30] The running status of container are as follows  Status=Running container=prometheus-to-sd-new-model Pod=prometheus-to-sd-5sh6s
INFO[2020-09-12T12:00:37+05:30] The running status of container are as follows  Status=Running container=prometheus-to-sd Pod=prometheus-to-sd-f2lb6
INFO[2020-09-12T12:00:37+05:30] The running status of container are as follows  Status=Running container=prometheus-to-sd-new-model Pod=prometheus-to-sd-f2lb6
INFO[2020-09-12T12:00:37+05:30] The running status of container are as follows  Status=Running container=metadata-agent Pod=stackdriver-metadata-agent-cluster-level-958b9884b-825sf
INFO[2020-09-12T12:00:37+05:30] The running status of container are as follows  container=metadata-agent-nanny Pod=stackdriver-metadata-agent-cluster-level-958b9884b-825sf Status=Running
INFO[2020-09-12T12:00:39+05:30] [Status]: Checking whether application pods are in running state
INFO[2020-09-12T12:00:40+05:30] The running status of Pods are as follows     Pod=event-exporter-v0.3.0-5cd6ccb7f7-jkmg9 Status=Running
INFO[2020-09-12T12:00:40+05:30] The running status of Pods are as follows     Pod=fluentd-gcp-scaler-6855f55bcc-7hjtk Status=Running
INFO[2020-09-12T12:00:40+05:30] The running status of Pods are as follows     Pod=fluentd-gcp-v3.1.1-6j8db Status=Running
INFO[2020-09-12T12:00:40+05:30] The running status of Pods are as follows     Status=Running Pod=fluentd-gcp-v3.1.1-h86m6
INFO[2020-09-12T12:00:40+05:30] The running status of Pods are as follows     Pod=heapster-gke-65f756fbc4-hwdjt Status=Running
INFO[2020-09-12T12:00:40+05:30] The running status of Pods are as follows     Pod=kube-dns-5c446b66bd-jwm7c Status=Running
INFO[2020-09-12T12:00:40+05:30] The running status of Pods are as follows     Pod=kube-dns-5c446b66bd-lr49p Status=Running
INFO[2020-09-12T12:00:40+05:30] The running status of Pods are as follows     Status=Running Pod=kube-dns-autoscaler-6b7f784798-cgdxg
INFO[2020-09-12T12:00:40+05:30] The running status of Pods are as follows     Pod=kube-proxy-gke-docker-default-pool-5f426299-gnnk Status=Running
INFO[2020-09-12T12:00:40+05:30] The running status of Pods are as follows     Pod=kube-proxy-gke-docker-default-pool-5f426299-p9qs Status=Running
INFO[2020-09-12T12:00:40+05:30] The running status of Pods are as follows     Status=Running Pod=l7-default-backend-84c9fcfbb-mm6pd
INFO[2020-09-12T12:00:40+05:30] The running status of Pods are as follows     Status=Running Pod=metrics-server-v0.3.3-fdc67d4b6-tj9zc
INFO[2020-09-12T12:00:40+05:30] The running status of Pods are as follows     Status=Running Pod=prometheus-to-sd-5sh6s
INFO[2020-09-12T12:00:40+05:30] The running status of Pods are as follows     Pod=prometheus-to-sd-f2lb6 Status=Running
INFO[2020-09-12T12:00:40+05:30] The running status of Pods are as follows     Status=Running Pod=stackdriver-metadata-agent-cluster-level-958b9884b-825sf
INFO[2020-09-12T12:00:42+05:30] [The End]: Updating the chaos result of node-cpu-hog experiment (EOT)


[RFC] Run external processes when starting web-server

When embedding an app and building a static binary, there are some processes that I would like to run automatically when the php-server starts.
For example, if I want to distribute and app and someone runs the app, I would like to automatically run DB migrations, run the messenger:consume command, generate JWT tokens etc.
So I'm thinking of implementing something similar to how the Symfony CLI works (https://symfony.com/doc/current/setup/symfony_server.html#configuring-workers):

Create a frankenphp.(yaml|json) config file which will be at the root of the embedded app

This config file can later be used to specify other default options (E.G path to the worker script)

The config file can then specify commands that should be run when the php-server starts

E.Gcommands:
   - @php-cli bin/console lexik:jwt:generate-keypair
   - @php-cli bin/console doctrine:migrations:migrate
   - @php-cli bin/console messenger:consume async

# @php-cli is a magic value that means the same as `./binary php-cli`

When the php-server starts, run the Caddy server, along with each command in a separate process.
This will allow to distribute a binary for an application that "just-works" when it is run, without any additional set up or instructions required. It will also make upgrading an application easier, since something like the migrations can just be executed when the new binary is run. It will also help to add async processing to an application, without any additional setup or configuration.
I have an almost-working POC that I would be happy to create a PR for, but just want to get some general feedback and ideas first.

Personally, I'm not sure how I feel about this. On the one hand, it's a pretty interesting idea. On the other hand, we'd have to implement and maintain @php or @composer or any other tooling (like phive, or whatever). I'd prefer for us to implement a bin/frankenphp_startup.php, which includes some good environment variables and is called within a dedicated thread. Then, the community can implement whatever they want via composer plugins, custom scripts, YAML files, or whatever.
Personally, I would implement two scripts:

bin/frankenphp_startup.php: called before the main application is initialized and the main application is not started until the script is complete. Run in a dedicated thread so workers don't get "poisoned" by whatever happens in the script. Any output will be appended as environment variables to the workers. For example, outputting KEYPAIR_LOCATION=/path/to/keys.json would allow you to read those environment variables in your script. Dynamic configuration could happen here, along with migrations, or possibly even user interaction.
bin/frankenphp_sidecar.php: Runs once for each worker (or based on max_threads in cgi-mode) and is expected to never die. These "sidecar scripts" can consume queues, receive messages from requests (perhaps through a frankenphp_send_work(array $work) on the request side and a frankenphp_receive_work(int $maxWorkCount): array on the sidecar side) to send emails, etc.

That's some pretty epic scope creep from your initial proposal, but I feel like it would be much more flexible. Through people creating libraries, it could literally do anything.

On the other hand, we'd have to implement and maintain @php or @composer or any other tooling (like phive, or whatever)

The idea is not to implement support for any tooling (except the built-in php-cli command from Frankenphp), but rather just have a way to run external commands when the application starts up.

bin/frankenphp_startup.php: called before the main application is initialized and the main application is not started until the script is complete.

This sounds like an interesting idea, but I think is a different feature than what is proposed here (I can open a new issue to discuss that separately if you want, since I think it's not completely related to the idea here).

bin/frankenphp_sidecar.php: Runs once for each worker (or based on max_threads in cgi-mode) and is expected to never die

The one issue here is that it will be a bit difficult to run multiple processes from a single file without a lot of additional work (E.G manually starting multiple processes and monitoring them using symfony/process). Some processes should also only run in a single process and not once for each worker (E.G a cron scrip or a scheduled command using symfony/scheduler)

Through people creating libraries, it could literally do anything.

I'm not sure what such a library would look like. This sounds a bit more restrictive since you would then either need to depend on other libraries vs just specifying a command to run when the application starts up (silly example: I can ship a Redis binary along with my application and have - ./bin/redis specified as a command. So when my application runs I can automatically have access to a running Redis instance without the user needing to install or configure anything)

The idea is not to implement support for any tooling (except the built-in php-cli command from Frankenphp), but rather just have a way to run external commands when the application starts up.

It'd be good to clarify that in the original post. However, if we are only going to support running a cli command, why do we need the @php at all? Having the @php adds additional complexity and error modes:
  - bin/some/command @php do_stuff

What should happen there, and how is it different from running a 'well-known' script that does whatever the user desires? What if the previous command fails and I don't care if it fails (or I do care if it fails)? What happens if a startup script never returns? Should we wait for it to return before starting the application? What happens if one of those commands fail, should it be restarted? What if it goes into an infinite loop of restarting?
I don't know, but I don't think frankenphp should be a process manager.

This sounds like an interesting idea, but I think is a different feature than what is proposed here

It sounds like what you are proposing, minus the additional indirection via a YAML file and process management. Though I am also not a fan of my proposal, as I don't want to use frankenphp as a queue.

The one issue here is that it will be a bit difficult to run multiple processes from a single file without a lot of additional work (E.G manually starting multiple processes and monitoring them using symfony/process). Some processes should also only run in a single process and not once for each worker (E.G a cron scrip or a scheduled command using symfony/scheduler)

There are data structures (semaphores, mutexes, etc) to provide synchronization, and those could be used to coordinate things between threads. It also allows things to fall back on other running threads nearly instantly in the event of a crash.

So when my application runs I can automatically have access to a running Redis instance without the user needing to install or configure anything

Please don't do this. Things like this are how Mongo databases ended up being exposed to the internet with no authentication, leaking user data everywhere, or how I have 15 copies of a database engine running on my computer. Just use SQLite or similar embedded databases and allow configuration for other engines. Javascript has already gone down that road and it didn't end well.

So when my application runs I can automatically have access to a running Redis instance without the user needing to install or configure anything

Please don't do this.

Bad example, I know. I was just trying to think of ideas of running external scripts that's not tied to a PHP script inside the embedded app to try and explain the idea

Maybe we could leverage existing Caddy plugins to do that, and create new ones if needed? It would be better to have generic solutions at the Caddy level instead of FrankenPHP-specific code (it will benefit to a larger community).
There is https://github.com/Baldinof/caddy-supervisor that is handy for background tasks. It should be straightforward to extend it (or to create a new one) for one-off commands?

There is abiosoft/caddy-exec for one-off commands and Baldinof/caddy-supervisor for background tasks.

This looks like it will cover my use-case perfectly, thanks!


ReadMe file incorrect

The README.md file contains errors in the descriptions of the aliases for kubectl get commands.
They all start with ke instead of kg.
ke are also the starting characters of kubectl edit aliases, so this could lead to dangerous results.

Thank you @AlbertoArdu for pointing this out. I guess it happened when I copy-pasted the documentation.


ModuleNotFoundError: No module named 'mmcv.cnn.weight_init'

I'm trying to run the colab notebook Model Zoo but get the following error"
ModuleNotFoundError: No module named 'mmcv.cnn.weight_init'

This issue is raised due the mmdet using the latest mmcv package which has removed this file. They are using mmcv>=0.6.2
However I've fixed this by installing an older version of the mmcv in following cells as:
!pip install mmcv==0.4.3

It would be great if the colab notebook is updated so that new users do not have to face this error.

Hey @dikshantj
We have updated the colab notebook
Thank you for solving the issue


Different version defined for Protobuf

Bug description
We have different version defined for Protobuf:
resolve_dependency(Protobuf 3.21.4) in https://github.com/facebookincubator/velox/blob/main/CMakeLists.txt#L382
set(VELOX_PROTOBUF_BUILD_VERSION 21.4) in https://github.com/facebookincubator/velox/blob/main/ThirdpartyToolchain.cmake#L96
is it a bug or expected behavior?
System information
Velox System Info v0.0.2
Commit: cb861f4a389f6778717f5dfad14cc7c8752ea107
CMake Version: 3.25.1
System: Darwin-21.5.0
Arch: arm64
C++ Compiler: /Library/Developer/CommandLineTools/usr/bin/c++
C++ Compiler Version: <IP_ADDRESS>60021
C Compiler: /Library/Developer/CommandLineTools/usr/bin/cc
C Compiler Version: <IP_ADDRESS>60021
CMake Prefix Path: /Library/Developer/CommandLineTools/SDKs/MacOSX12.3.sdk/usr;/opt/homebrew;/usr/local;/usr;/;/opt/homebrew/Cellar/cmake/3.25.1;/usr/local;/usr/X11R6;/usr/pkg;/opt;/sw;/opt/local
Relevant logs
No response

cc @pedroerp @kgpai

CC: @raulcd

Hi @mbasmanova @raulcd, if this is a bug, I can create a PR to fix it. And then we can resolve https://github.com/facebookincubator/velox/pull/3721#discussion_r1072309829 by remove option cc_enable_arenas = true; , since after Protobuf version 3.14.0 cc_enable_arenas no longer has any effect in the release notes for 3.14.0:
Arenas are now unconditionally enabled. cc_enable_arenas no longer has
any effect.

sorry I am the release manager for the new Apache Arrow 11.0.0 release and I am trying to fix some of the issues there. I might take a little longer than usual to be able to investigate if this is an issue or is expected behaviour. I remember protobuf changed their release versioning scheme. Before was using the schema 3.20.x but they moved to 21.x, even though they still use both tags for 3.21.x and 21.x see here: https://github.com/protocolbuffers/protobuf/tags
Probably find_package is able to find with 3.21.4 but we download the tag 21.4 if bundled from source but I would have to investigate further.

Hi @raulcd, thanks for your information!

since after Protobuf version 3.14.0 cc_enable_arenas no longer has any effect

That's nice.
@raulcd Thank you for your help.

This is just the Protobuf release naming nuance.


Docker Compose v1

I use Rancher for container orchestration and only accept version 1 of docker compose file.
Since 9e1c4783a81fcad6c928a2439a0c9db54f511236 it has been upgraded to version 2.
Is it possible to keep a working version 1 of docker compose file ?

Hi @lnalex, yes it should be possible.
Have a look to the v1 format and keep the paths of v2.
Let me know.

Ok great I'll test it. I didn't knew if the v1 was still updated.


Fix HorizontalScrollGrid for dark mode(#666)

Hey, I just made a Pull Request!
Changes:

Dark fade when using dark theme
Light fade adjusted to match light background from theme

Question:
What's the policy regarding tests?
:heavy_check_mark: Checklist

[x] All tests are passing yarn test
[x] Screenshots attached (for UI changes)
[ ] Relevant documentation updated
[x] Prettier run on changed files
[ ] Tests added for new functionality
[ ] Regression tests added for bug fixes

Thanks, that went smooth! 😄


Date and Author Pushed Away for Titles or Authors with Non-English Characters

Issues appeared in El Capitan as shown in the image.

This may be the same issue as Issue #516.

The font may be responsible for the issue.
e.g., Klee

e.g., PingFang HK

Duplicate of #447


Version tagging

It would be nice if the published versions of the sources were tagged and pushed to the github repository too (as releases, probably the binaries/sources also available as a download). (Currently that would be only 2.0.)

I don't think we can publish GGA sources as EPAM... So 1.2.1 sources are available in maven central and will always be there. What do you think?

Or do you mean just the tag of the 2.0 version in central? Good point, I agree, we will do it of course.

Yeah, only for 2.0.

Added tag "v2.0".


URL for pre-trained Uni-Fold model parameters not working

The URL to download the Uni-Fold model parameters in the README instructions does not work:
wget https://github.com/dptech-corp/Uni-Fold/releases/download/v2.2.0/unifold_params_2022-08-01.tar.gz

worked for me when I changed v.2.2.0 to v.2.0.0 in the URL

Thanks, that link works for me. The link in README.md needs to be updated then.


HELP!

Hi,
There are something wrong that confused me when I re-compiled the cuda fuctions.
`(venv) xliu@310-aa:~/medicaldetectiontoolkit/cuda_functions/nms_2D$ python build       .py
Including CUDA code.
/home/xliu/medicaldetectiontoolkit/cuda_functions/nms_2D
generating /tmp/tmpaxsbcnrt/_nms.c
setting the current directory to '/tmp/tmpaxsbcnrt'
running build_ext
building '_nms' extension
creating home
creating home/xliu
creating home/xliu/medicaldetectiontoolkit
creating home/xliu/medicaldetectiontoolkit/cuda_functions
creating home/xliu/medicaldetectiontoolkit/cuda_functions/nms_2D
creating home/xliu/medicaldetectiontoolkit/cuda_functions/nms_2D/src
x86_64-linux-gnu-gcc -pthread -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes        -g -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORT       IFY_SOURCE=2 -fPIC -DWITH_CUDA -I/home/xliu/medicaldetectiontoolkit/venv/lib/pyt       hon3.5/site-packages/torch/utils/ffi/../../lib/include -I/home/xliu/medicaldetec       tiontoolkit/venv/lib/python3.5/site-packages/torch/utils/ffi/../../lib/include/T       H -I/home/xliu/medicaldetectiontoolkit/venv/lib/python3.5/site-packages/torch/ut       ils/ffi/../../lib/include/THC -I/usr/include/python3.5m -I/home/xliu/medicaldete       ctiontoolkit/venv/include/python3.5m -c _nms.c -o ./_nms.o -std=c99
In file included from /home/xliu/medicaldetectiontoolkit/venv/lib/python3.5/site       -packages/torch/utils/ffi/../../lib/include/THC/THC.h:4:0,
from _nms.c:493:
/home/xliu/medicaldetectiontoolkit/venv/lib/python3.5/site-packages/torch/utils/       ffi/../../lib/include/THC/THCGeneral.h:12:18: fatal error: cuda.h: No such file        or directory
compilation terminated.
Traceback (most recent call last):
File "/usr/lib/python3.5/distutils/unixccompiler.py", line 118, in _compile
extra_postargs)
File "/usr/lib/python3.5/distutils/ccompiler.py", line 909, in spawn
spawn(cmd, dry_run=self.dry_run)
File "/usr/lib/python3.5/distutils/spawn.py", line 36, in spawn
_spawn_posix(cmd, search_path, dry_run=dry_run)
File "/usr/lib/python3.5/distutils/spawn.py", line 159, in _spawn_posix
% (cmd, exit_status))
distutils.errors.DistutilsExecError: command 'x86_64-linux-gnu-gcc' failed with        exit status 1
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/home/xliu/medicaldetectiontoolkit/venv/lib/python3.5/site-packages/cffi       /ffiplatform.py", line 51, in _build
dist.run_command('build_ext')
File "/usr/lib/python3.5/distutils/dist.py", line 974, in run_command
cmd_obj.run()
File "/usr/lib/python3.5/distutils/command/build_ext.py", line 338, in run
self.build_extensions()
File "/usr/lib/python3.5/distutils/command/build_ext.py", line 447, in build_e       xtensions
self._build_extensions_serial()
File "/usr/lib/python3.5/distutils/command/build_ext.py", line 472, in build       extensions_serial
self.build_extension(ext)
File "/usr/lib/python3.5/distutils/command/build_ext.py", line 532, in build_e       xtension
depends=ext.depends)
File "/usr/lib/python3.5/distutils/ccompiler.py", line 574, in compile
self._compile(obj, src, ext, cc_args, extra_postargs, pp_opts)
File "/usr/lib/python3.5/distutils/unixccompiler.py", line 120, in _compile
raise CompileError(msg)
distutils.errors.CompileError: command 'x86_64-linux-gnu-gcc' failed with exit status 1
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "build.py", line 34, in
ffi.build()
File "/home/xliu/medicaldetectiontoolkit/venv/lib/python3.5/site-packages/torc       h/utils/ffi/init.py", line 189, in build
_build_extension(ffi, cffi_wrapper_name, target_dir, verbose)
File "/home/xliu/medicaldetectiontoolkit/venv/lib/python3.5/site-packages/torc       h/utils/ffi/init.py", line 111, in _build_extension
outfile = ffi.compile(tmpdir=tmpdir, verbose=verbose, target=libname)
File "/home/xliu/medicaldetectiontoolkit/venv/lib/python3.5/site-packages/cffi       /api.py", line 697, in compile
compiler_verbose=verbose, debug=debug, **kwds)
File "/home/xliu/medicaldetectiontoolkit/venv/lib/python3.5/site-packages/cffi       /recompiler.py", line 1520, in recompile
compiler_verbose, debug)
File "/home/xliu/medicaldetectiontoolkit/venv/lib/python3.5/site-packages/cffi       /ffiplatform.py", line 22, in compile
outputfilename = _build(tmpdir, ext, compiler_verbose, debug)
File "/home/xliu/medicaldetectiontoolkit/venv/lib/python3.5/site-packages/cffi       /ffiplatform.py", line 58, in _build
raise VerificationError('%s: %s' % (e.class.name, e))
cffi.error.VerificationError: CompileError: command 'x86_64-linux-gnu-gcc' failed with exit status 1
`

hi what cuda version do you have installed?

hi what cuda version do you have installed?

Thank you! I have solved this problem with adding the path of cuda.h in nvcc's include path.

Hi @mitiandi
What's the exact command that you used to get it to work?
I've tried
nvcc -c -o nms_kernel.cu.o nms_kernel.cu -include /workspace/usr/local/cuda-9.0/include/cuda.h -x cu -Xcompiler -fPIC -arch=sm_61

and
nvcc -c -o nms_kernel.cu.o nms_kernel.cu -I /workspace/usr/local/cuda-9.0/include -x cu -Xcompiler -fPIC -arch=sm_61

But none of them worked.
Please help.
Thank you so much.


add list of original in a decorator

supports list of function
config file added with base lists
closes #39

example
@ledger.add_hook(['DataFrame.__init__','read_csv'])
def foo():
    ledger.tell('bar')

IMHO it missing a way to handle the parameters of multiple originals (args, kwargs) and some advanced cases like if you want mixed hook_type. for a quick win, this should do the trick.


sync: main -> develop

Since the develop branch is the default branch, I will sync it with main branch. Direct commit to main branch will be disabled in the future

LGTM


Add gh-pages

to avoid build failures in gh-pages.yml
Reviewer checklist

[ ] Read the contributing guide
[ ] PR should be motivated, i.e. what does it fix, why, and if relevant, how
[ ] Ensure relevant issues are linked (description should include text like "Fixes #")
[ ] Ensure any appropriate documentation has been added or amended

Coverage: 100.0%. Remained the same when pulling 83246b4cbd1844de1169b29921d9bc8a18d0bbd8 on gh-pages into 6b149f642e07ee183989e8eb77962afb0f203ae9 on main.


Add custom pvc for etcd disaster recovery

To support other NFS provisioners like amazons EFS some additional properties must be set in the PVC e.g. annotations. This is not supported by the ETCD chart. However it allows to set a custom PCV this can be part of the helm chart.
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
  name: etcd-snapshot-disaster-recovery
  namespace: weaviate
  annotations:
    volume.beta.kubernetes.io/storage-class: aws-efs
spec:
  accessModes:
    - ReadWriteOnce
  volumeMode: Filesystem
  resources:
    requests:
      storage: 8Gi
  storageClassName: aws-efs

etcd.disasterRecovery.pvc.existingClaim: etcd-snapshot-disaster-recovery

Obsolete, since etcd is no longer part of the stack.


could not display zap-cli

Ubuntu systeminfo
Linux version 5.15.0-60-generic (buildd@lcy02-amd64-017) (gcc (Ubuntu 9.4.0-1ubuntu1~20.04.1) 9.4.0, GNU ld (GNU Binutils for Ubuntu) 2.34) #66~20.04.1-Ubuntu SMP Wed Jan 25 09:41:30 UTC 2023
double click no show

hi @cheng5230 , as the name implies, "zap-cli" is a purely command line tool with no UI interface.
If UI is expected, "zap" should be invoked instead.


Setup Assistant With Steps: Incorrect Formatting

Please see the image below. This impacts all variants except Base.
The title, text, buttons/links are too high. It appears all the variants with steps are missing two divs. At first, we thought it was just missing a class but I am fairly sure it's missing two divs that Base does not have.

@PaulaIoana