Tab 'on update' can be hidden accidentally

Is your feature request related to a problem? Please describe.
In the german translations, the naming of the sidebar tabs showed only 'on interact' and 'on init'. The 'on update' wasn't visible trough the width of the translated strings let the third Tab dissapear. After reading a hundred times the docs and by changing the width of the sidebar, the missed Tab appeared.
Describe the solution you'd like
Let the User See if there is another Tab hidden in the sidebar.
I know, this might happen rarely. But it would avoid others to waste their time with the same problem

Can you post a screenshot of the issue and what version of the 2.0 beta this is in?
Is this only when the tab is smaller than usual with the German translation/other long translations?
Your suggested solution doesn't really describe a solution.
Possible solutions,

Shorten the length of translation?
Provide a horizontal scrollable tab?
Sack the tabs underneath when too long?
If tab lengths are too long, shorten the text with a ... To make sure all tabs fit on the side bar?

Thank you for the reply and concrete examples of what is required
Versions tested
Tested 2.0.0 b3 and b4
The problem can be seen in the following two screenshots. The tab is hidden at the right side of Zur Interaktion, Beim Initialisieren

How to reproduce
I used to work with the default width of the sidebar (screen resolution is 1680 x 1050), so far there wasn't any manual adjustment. As soon as the sidebar gets wider, you can see previously hidden tabs.
Possible solution
A. Center the focused tab (if not the first or latest) and shorten the outer tabs (if needed) with "..." as showed in the following picture and let the list of tabs be scrollable / dragable horizontally

B. Put them into a dropdown

Thanks so much!
This is slightly ignorant of me being an English speaker, but would a translation of "Beim Initiale" be acceptable? (is Beim correct? should it be Szene?)
I think we use Scene Init in english, which is a gross shortening of initialize.
I agree a solution that allows for any size text should be looked into,
Version A may work without the need for scrolling if the tabs have a minimum collapsed size, and the selected tab is expanded.
Not so keen on option B, as it makes things quite hidden / difficult to navigate, but that could be expanded into 2 rows.

This is slightly ignorant of me being an English speaker, but would a translation of "Beim Initiale" be acceptable?

Yep, i think so. IMHO the german loalization is verry accurate, i can easily work with 👍

(is Beim correct? should it be Szene?)

There are many ways to translate this. Beim Initialisieren des Szene would be the most precise i guess... (when the scene is loaded) Beim Szenenstart or Szenestart a shorter version. (german allows you to combine an nearby endless amoun of nouns together 😄). But befor we get bogged down in this discussion about translation, i'd prefer to open a seperate issue if you agree.... if there is a need.
About the tab- issue, i have nothing to add. I already enjoy my discovery 😃

Would something like this work maybe, the active tab shows the full text, all others will crop and show an ellipsis. Then also when you hover over a tab that one expands and then the others all contract so you can read them without needing to click.

If this works I've got the code ready to merge in c149b5539efd2045bbe8a810779dc50f7f0bc3be

This was resolved fast, you should be called Barry Allen. I like this solution.

Nothing to add for the Moment. Thank you for this fast implementation


Write a proper README.md

I need to write a proper readme for the project sometime soon, the main sections I'm planning to include are instructions for building & running, website customization guide and some additional information about the project and it's inner workings.

I didn't even notice it created the issue twice lmao


granted credentials rotate does not delete the former credentials

When running:
➜ granted credentials rotate
? Profile Name: default
[✔] Access Key of 'default' profile has been successfully rotated and updated in secure storage

➜ granted credentials rotate default
? Profile Name: default
[✘] operation error IAM: CreateAccessKey, https response error StatusCode: 409, RequestID: REDACTED, LimitExceeded: Cannot exceed quota for AccessKeysPerUser: 2

The former credentials are deactivated, but not deleted.
Thanks!
edit: wrong output. updated to be correct.

That feature was developed following AWS guidelines for access key rotation, i.e. checking if your applications still working after updating to the new key, and if it doesn't you can rollback to the previous key. So if the previous access key was deleted there's no rolling back.
It's an easy change, just calling delete after this line

It would be nice to have a configuration option for this. I think many people use aws key rotation on schedule via cron task


--exclude-pkgs option

What would you like to be added:
Once packages are discovered using the cataloger, can I specify a list of packages to be excluded?
Why is this needed:
Generate a SBOM only for a subset of packages.
Additional context:

Thanks for the issue @rchincha!
Can you walk us through the reasoning for excluding packages? We want syft to be as close to the truth as possible when generating an SBOM.
Allowing users to exclude or omit packages that are present and cataloged seems a little outside of that goal.
Definitely happy to talk through how you would use it!

Thanks for the issue @rchincha!
Can you walk us through the reasoning for excluding packages? We want syft to be as close to the truth as possible when generating an SBOM.
Allowing users to exclude or omit packages that are present and cataloged seems a little outside of that goal.
Definitely happy to talk through how you would use it!

Thanks @spiffcs.
We have a situation where we build a chroot without the package db of any sort. So in order to get the syft's sbom capability, we setup a separate environment with some base distro install, install required packages on top of it and would now like to exclude the packages in the base install if appropriate. Alternatively, instead of a blacklist (--exclude), perhaps a whitelist (--include) will work better. Hope the problem statement is clear.

Any additional thoughts/updates on this?

Hi @rchincha, we discussed this at the community meeting last week (see the notes here). If I understand the use case you're talking about it's less about excluding packages and more about only including user-defined packages (but excluding the base image packages), is this correct? If so, this is something that has been asked for before and something we'd like to do. We have the concepts of scopes but currently only squashed and all-layers. We would add another scope something like user-layers and I suspect would be easier to for you to use than an explicit exclude list of packages, what do you think?

@kzantow, yes spot-on our requirement.
Your suggestion about user-layers could work also - I assume you will work out what that would mean in terms of how one would figure out which the user-layers are. For us, given a base set of layers, we can install all our packages in a new layer, then scanning and reporting from that new layer alone could work.
https://github.com/anchore/syft#sbom
^ also could you expand a bit more about squashed and all-layers. What is the difference? Perhaps an example or two, for our understanding.

@rchincha the idea is we would just exclude the layers from the base image, so any layers you add from your own Dockerfile would be included. I'm not sure we've worked out every detail here, but that's the gist.
As for squashed vs all-layers:

squashed: only scans the final layer filesystem
all-layers: scans each layer in the image individually

The difference here is all-layers would find things that were present at one point, but removed before the final filesystem.

@kzantow thanks for the clarification, it is the deletions that make the two options different.
About user-layers, is there an ETA to expect. We don't mind pitching in if it helps expedite.

@rchincha we do not currently have an ETA for this, but of course PRs are welcome! FYI - I believe this change would probably need to be done predominantly in the stereoscope library, which Syft relies on for processing images.

@kzantow after thinking about this some more, also wondering if an --offline option is feasible.
Most package managers, given a package name/version, can also list files included in the package and files to be installed.
$ dpkg -l curl
ii  curl           7.81.0-1ubuntu1.4 amd64        command line tool for transferring data with URL syntax

$ dpkg-query -L curl
/.
/usr
/usr/bin
/usr/bin/curl
...
etc

So the question is can one simply pass the package name/version and its constituent list of files and generate a SPDX document? This of course will be orthogonal to grokking container images.

@rchincha I don't quite follow --offline in this context, but if you're thinking about providing Syft with a list of packages and/or files, this might be feasible way to do things. We are working on having a way to catalog SBOMs we find on the file system, and we could potentially add a "simple" SBOM format that's like a CSV or text file.

"but if you're thinking about providing Syft with a list of packages and/or files, this might be feasible way to do things."
exactly this ^

Notes from a quick discussion:

Generally, Syft surfaces the best information it can; excluding certain packages seems contrary to this
Syft does provide a way of excluding files. However, this can be used to prevent Syft from sifting through directories that are known to contain nothing useful, or whatever, so it's different than excluding packages that were already found
Currently, you can turn off catalogers and files. However, in situations where there's a package manager where all the packages are at the same path (some package manager database), there's currently no way to exclude. For example, I can tell syft to exclude the path to the RPM DB, which will cause syft to miss all RPMs, or to exclude the RPM cataloger, which will cause Syft to miss all RPMs, but I can't tell Syft, "here's a list of 5 RPMs I don't care to hear about." So there is a bit of a gap in the configuration possibilities.
Unwanted packages could be removed in post-processing, but this tampers with the SBOM after the fact, and is error prone (e.g. the removed package might own files, leaving dangling relationships)
If "exclude-packages" was a config option, it would be captured in the syft config block in the SBOM

@rchincha can you help me understand why you only want a subset of packages?


scss moudle not support in Vue3?

Steps to reproduce
I got an error whit "Error: Preprocessor dependency "sass" not found. Did you install it?" when i was useing scss in Vue3. But i already have the '@farmfe/plugin-sass' plugin installed.
It is was not successed when i remove scope.
The code is as follows
<template>
  <div class="header">
  </div>
</template>

<style scoped lang='scss'>
.header {
  height: 10vh;
  box-shadow: 0 7px 5px -5px #fff;
}
</style>

the error:
[scss-(error)]:"Error: Preprocessor dependency "sass" not found. Did you install it?"
[ Farm ] Error: Can not load xxx.vue. Original error:
Some(NAPIError("Cannot read properties of undefined (reading 'scoped')\nTypeError: Cannot read properties of undefined (reading 'scoped')\n    at executor (xxx/node_modules/@farmfe/js-plugin-vue/build/index.cjs:976:47)")).
What is expected?
It will be support scss in Vue3
What is actually happening?
It was not support scss in Vue3
System Info
MacBook Pro 13.0.1
Chrome 118

Any additional comments?
No response

You should install sass in your project. for example:
pnpm add sass -D

Do you have the sass package installed
I didn't reproduce your mistake.
You can try to use the plugin demo address of vite https://github.com/farm-fe/farm/tree/main/examples/vite-adapter-vue

You should install sass in your project. for example:
pnpm add sass -D

~ Eh.. I am terribly sorry. I did forget to install sass. Thanks!

Do you have the sass package installed
I didn't reproduce your mistake.
You can try to use the plugin demo address of vite https://github.com/farm-fe/farm/tree/main/examples/vite-adapter-vue

🤣 I did forget to install sass. Thanks!


refactor: simplify handler bridge coin send to external

Summary by CodeRabbit

Refactor

Simplified and streamlined the process for handling bridge token transfers by centralizing logic into a new method TransferBridgeCoinToExternal.
Improved code maintainability and readability by refactoring multiple functions to use the new centralized method for external coin transfers.

mg


Unclear how to customize slack message option

Description
The readme mentions "Most of Slack message options are customizable". But, it's not clear to me how I can customize the slack message. To me this is referring to formatting of the message, but maybe it's something else?
I have Lambda function that is triggered on a schedule via EventBridge using CloudWatch. I am trying to use this module to setup a slack notification for success or failure of this lambda. The slack message looks like this:

I'm wondering if/what customizability options are available. Also, it's unclear to me how slack_username and slack_emoji is being used. In the above sample message, I don't see either the username or the emoji being used.
Not sure if the info is already documented somewhere that I just missed. Appreciate if you could point me to those docs. Otherwise, it would be helpful to add bit more user friendly usage docs.

[x] ✋ I have searched the open/closed issues and my issue is not listed.

⚠ Note
Before you submit an issue, please perform the following first:

Remove the local .terraform directory (! ONLY if state is stored remotely, which hopefully you are following that best practice!): rm -rf .terraform/
Re-initialize the project root to pull down modules: terraform init
Re-attempt your terraform plan or apply and check if the issue still persists

Versions

Module version [Required]: 5.5

Terraform version: Terraform v1.1.9

Provider version(s):

on linux_amd64
+ provider registry.terraform.io/hashicorp/archive v2.2.0
+ provider registry.terraform.io/hashicorp/aws v4.48.0
+ provider registry.terraform.io/hashicorp/external v2.2.3
+ provider registry.terraform.io/hashicorp/local v2.2.3
+ provider registry.terraform.io/hashicorp/null v3.2.1

Reproduction Code [Required]
Nothing to re-produce. Looking for usage/instructions.
Steps to reproduce the behavior:

Expected behavior

Able to find docs on how to customize slack message and/or where slack_username and slack_emojii is used.
Actual behavior

Unable to find relevant docs/instructions.
Terminal Output Screenshot(s)

Additional context

It's really annoying to see auto close issues. Just because there's no activity doesn't mean the issue doesn't exist.

Im also interested in customising the slack message


FlatGeobuf input improvements

[ ] Streaming support. tippecanoe should accept a stream of FlatGeobuf on stdin just like GeoJsonSeq.
[ ] tippecanoe extensions. The tippecanoe GeoJSON extension is used to specify special keys like maxzoom, but FlatGeobuf is not extensible in the same way. We should instead reproduce the same behavior for namespaced keys e.g. tippecanoe:maxzoom.
[ ] heterogeneous files. A FlatGeobuf can have a mix of lines and polygons in a single file.
[ ] GeometryCollection. Similar to above, but where a single FGB Feature contains multiple geometry types.
[ ] Per-feature schemas: There currently is not any FGB writer tools that produce "Schemaless" output. The GDAL driver always outputs tabular data. This is necessary for efficiency on OpenStreetMap data and to have parity with GeoJSON input.

Would you all consider adding support for gzipped FlatGeobuf's just like is possible with GeoJSON's? Compressing FlatGeobuf's reduces the filesize considerably which could be useful for some applications with a large volume of input data

@1papaya I would prefer that instead we implement streaming support for FGB. That would allow you to stream data through a decompressor first and then pipe into tippecanoe. Additionally, it would allow for more efficient alternatives to gzip like LZ4 or ZSTD.


Add hubot-icq to a list of adapters

Please add my adapter to the list. It's an adapter for ICQ with latest protocol.
https://www.npmjs.com/package/hubot-icq
https://github.com/sclown/hubot-icq

The list of hubot adapters in the hubot documentation is being replaced with a link to a GitHub topic search. Add the hubot-adapter topic to your repository on GitHub to include it in this list.
/cc https://github.com/github/hubot/pull/1320


[Timepicker] Add explicit box-sizing to Clock component

[ ] PR has tests / docs demo, and is linted.
[x] Commit and PR titles begin with [ComponentName], and are in imperative form: "[Component] Fix leaky abstraction".
[ ] Description explains the issue / use-case resolved, and auto-closes the related issue(s) (http://tr.im/vFqem).

Hey, folks!
I've found difference between in clock's look while using box-size: border-box for all elements on the page.
With box-sizing: border-box

Without (compare hour's arrow)

Also I suggest a solution for that. What do you think?
Closes #4406.

@isnifer Thanks, that should do the trick until TimePicker uses border-box. DatePicker needs the same fix if you wanted to take a look. 👍

That sounds like a good workaround. But that's definitly not the only component affected but the box sizing issue. I'm wondering how we could have a global workaround. Alternatly, we could let users deal with it as they are responsible for overiding the default value.

@oliviertassinari - @nathanmarks pointed out on the DatePicker issue that setting box-size to border-box is pretty common for resets and global style sheets, so in that case, I don't think our components should make any assumptions about the global default holding true.
Making the user reset it individually for any component that has an issue could be cumbersome when we can fix it once per affected component. Styling will get an overhaul at some point, so I believe this is a reasonable compromise in the meantime.
Your call though.

@isnifer Thanks
@mbrookes That sounds good to me. I have opened this issue https://github.com/callemall/material-ui/issues/4422 so we can discuss it further.

@oliviertassinari nice, thank you!

Hey if anyone is still having issues with this one after adding this patch I also added:
boxSizing: 'content-box'

to styles.mark in ClockPointer.js and that seems to have fixed it.

@damienbolger if this is still an issue on the master branch, would you mind creating a PR with this fix? Thanks.


Suddenly stopped working for Flutter / Dart

I was working on Flutter / Dart.
Bracket Pair Colorizer 2 (Beta) version 0.0.29
VS Code
Version: 1.45.0 (user setup)
Commit: d69a79b73808559a91206d73d7717ff5f798f23c
Date: 2020-05-07T16:18:48.860Z
Electron: 7.2.4
Chrome: 78.0.3904.130
Node.js: 12.8.1
V8: 7.8.279.23-electron.0
OS: Windows_NT x64 10.0.18362

Probably a duplicate of https://github.com/CoenraadS/Bracket-Pair-Colorizer-2/issues/249

fixed


Running MLAgentBench

(autogpt) root@de5ed691ecf6:/MLAgentBench# python -u -m MLAgentBench.runner --python $(which python) --task cifar10 --device 0 --log-dir first_test  --work-dir workspace --llm-name gpt-4 --edit-script-llm-name gpt-4 --fast-llm-name gpt-3.5-turbo
Output
[Errno 2] No such file or directory: 'crfm_api_key.txt'
Could not load CRFM API key crfm_api_key.txt.
module 'anthropic' has no attribute 'Anthropic'
Could not load anthropic API key claude_api_key.txt.
Failed to import AutoGPTAgent; Make sure you have installed the autogpt dependencies if you want to use it.
Namespace(task='cifar10', log_dir='first_test', work_dir='workspace', max_steps=50, max_time=18000, device=0, python='/home/user/micromamba/envs/autogpt/bin/python', interactive=False, resume=None, resume_step=0, agent_type='ResearchAgent', llm_name='gpt-4', fast_llm_name='gpt-3.5-turbo', edit_script_llm_name='gpt-4', edit_script_llm_max_tokens=4000, agent_max_steps=50, actions_remove_from_prompt=[], actions_add_to_prompt=[], no_retrieval=False, valid_format_entires=None, max_steps_in_context=3, max_observation_steps_in_context=3, max_retries=5, langchain_agent='zero-shot-react-description')
log_dir first_test/env_log already exists
tools_log_dir first_test/env_log/tool_logs already exists
tools_log_dir first_test/env_log/traces already exists
prepare.py not found or already prepared
=====================================
Benchmark folder name:  cifar10
Research problem:  Given a training script on a dataset train.py, improve upon the current model performance (trained with current hyperparmeters in train.py) for more than 10%. The training epochs should be within 10 to save time. Save per class probabilities for test set examples to submission.csv as shown in train.py.
Lower level actions enabled:  ['List Files', 'Read File', 'Write File', 'Append File', 'Copy File', 'Undo Edit Script', 'Execute Script', 'Python REPL', 'Final Answer']
High level actions enabled:  ['Understand File', 'Append Summary to Research Log', 'Inspect Script Lines', 'Edit Script (AI)', 'Edit Script Segment (AI)', 'Reflection', 'Retrieval from Research Log']
Read only files:  ['data/cifar-10-python.tar.gz', 'data/cifar-10-batches-py/data_batch_1', 'data/cifar-10-batches-py/readme.html', 'data/cifar-10-batches-py/batches.meta', 'data/cifar-10-batches-py/data_batch_2', 'data/cifar-10-batches-py/data_batch_5', 'data/cifar-10-batches-py/test_batch', 'data/cifar-10-batches-py/data_batch_4', 'data/cifar-10-batches-py/data_batch_3']
=====================================
Log dir first_test/agent_log already exists. Overwriting.
Agent is up! See progress in first_test/agent_log/main_log
Step 1

Assistant:
Reflection: The observation provides a detailed understanding of the training script. The script is implementing a neural network model for image classification using the CIFAR-10 dataset. The model consists of two convolutional layers, followed by two fully connected layers, and an output layer. The script uses a batch size of 128, a learning rate of 0.1, and a momentum of 0.9 for the optimizer. The number of training epochs is set to 5. The script saves the per class probabilities for test set examples in a CSV file named `submission.csv`.

Research Plan and Status:
1. Understand the problem and the current script. (Done)
    - The script is implementing a neural network model for image classification using the CIFAR-10 dataset. The model consists of two convolutional layers, followed by two fully connected layers, and an output layer. The script uses a batch size of 128, a learning rate of 0.1, and a momentum of 0.9 for the optimizer. The number of training epochs is set to 5. The script saves the per class probabilities for test set examples in a CSV file named `submission.csv`.
2. Define and measure the baseline performance of the current model. (Not started)
3. Come up with a plan to improve the model performance. (Not started)
4. Implement the plan and measure the new performance. (Not started)
5. If the performance is improved by more than 10%, save per class probabilities for test set examples to submission.csv. (Not started)
6. If the performance is not improved by more than 10%, revise the plan and repeat steps 4-6. (Not started)

Fact Check:
- The script is implementing a neural network model for image classification using the CIFAR-10 dataset. (Confirmed by observation)
- The model consists of two convolutional layers, followed by two fully connected layers, and an output layer. (Confirmed by observation)
- The script uses a batch size of 128, a learning rate of 0.1, and a momentum of 0.9 for the optimizer. (Confirmed by observation)
- The number of training epochs is set to 5. (Confirmed by observation)
- The script saves the per class probabilities for test set examples in a CSV file named `submission.csv`. (Confirmed by observation)
Thought: Now that I understand the current script, I need to define and measure the baseline performance
Observation:

Response is invalid and discarded
STDOUT: Files already downloaded and verified
 STDOUT: Files already downloaded and verified
 STDOUT: [1,   100] loss: 2.089
 STDOUT: [1,   200] loss: 1.754
 STDOUT: [1,   300] loss: 1.642
 STDOUT: Epoch [1/5], Train Accuracy: 45.44%, Test Accuracy: 44.77%
 STDOUT: [2,   100] loss: 1.531
 STDOUT: [2,   200] loss: 1.506
 STDOUT: [2,   300] loss: 1.473
 STDOUT: Epoch [2/5], Train Accuracy: 49.39%, Test Accuracy: 47.76%
 STDOUT: [3,   100] loss: 1.389
 STDOUT: [3,   200] loss: 1.430
 STDOUT: [3,   300] loss: 1.430
 STDOUT: Epoch [3/5], Train Accuracy: 52.53%, Test Accuracy: 49.42%
 STDOUT: [4,   100] loss: 1.342
 STDOUT: [4,   200] loss: 1.353
 STDOUT: [4,   300] loss: 1.398
 STDOUT: Epoch [4/5], Train Accuracy: 55.17%, Test Accuracy: 51.80%
 STDOUT: [5,   100] loss: 1.300
 STDOUT: [5,   200] loss: 1.342
 STDOUT: [5,   300] loss: 1.374
 STDOUT: Epoch [5/5], Train Accuracy: 54.56%, Test Accuracy: 51.14%
 STDOUT: Train Accuracy: 54.55%, Test Accuracy: 51.14%
 STDERR:  STDOUT:  STDOUT: Files already downloaded and verified
 STDOUT: Files already downloaded and verified
 STDERR: Traceback (most recent call last):
 STDERR:   File "/MLAgentBench/workspace/cifar10/train_v2.py", line 77, in <module>
 STDERR:     outputs = model(inputs)
 STDERR:   File "/home/user/micromamba/envs/autogpt/lib/python3.10/site-packages/torch/nn/modules/module.py", line 1501, in _call_impl
 STDERR:     return forward_call(*args, **kwargs)
 STDERR:   File "/MLAgentBench/workspace/cifar10/train_v2.py", line 28, in forward
 STDERR:     x = self.pool(F.relu(self.conv3(x)))
 STDERR:   File "/home/user/micromamba/envs/autogpt/lib/python3.10/site-packages/torch/nn/modules/module.py", line 1501, in _call_impl
 STDERR:     return forward_call(*args, **kwargs)
 STDERR:   File "/home/user/micromamba/envs/autogpt/lib/python3.10/site-packages/torch/nn/modules/pooling.py", line 166, in forward
 STDERR:     return F.max_pool2d(input, self.kernel_size, self.stride,
 STDERR:   File "/home/user/micromamba/envs/autogpt/lib/python3.10/site-packages/torch/_jit_internal.py", line 484, in fn
 STDERR:     return if_false(*args, **kwargs)
 STDERR:   File "/home/user/micromamba/envs/autogpt/lib/python3.10/site-packages/torch/nn/functional.py", line 782, in _max_pool2d
 STDERR:     return torch.max_pool2d(input, kernel_size, stride, padding, dilation, ceil_mode)
 STDERR: RuntimeError: Given input size: (32x1x1). Calculated output size: (32x0x0). Output size is too small
 STDERR:  STDOUT:  STDOUT: Files already downloaded and verified
 STDOUT: Files already downloaded and verified
 STDERR: Traceback (most recent call last):
 STDERR:   File "/MLAgentBench/workspace/cifar10/train_v3.py", line 77, in <module>
 STDERR:     outputs = model(inputs)
 STDERR:   File "/home/user/micromamba/envs/autogpt/lib/python3.10/site-packages/torch/nn/modules/module.py", line 1501, in _call_impl
 STDERR:     return forward_call(*args, **kwargs)
 STDERR:   File "/MLAgentBench/workspace/cifar10/train_v3.py", line 30, in forward
 STDERR:     x = F.relu(self.fc1(x))
 STDERR:   File "/home/user/micromamba/envs/autogpt/lib/python3.10/site-packages/torch/nn/modules/module.py", line 1501, in _call_impl
 STDERR:     return forward_call(*args, **kwargs)
 STDERR:   File "/home/user/micromamba/envs/autogpt/lib/python3.10/site-packages/torch/nn/modules/linear.py", line 114, in forward
 STDERR:     return F.linear(input, self.weight, self.bias)
 STDERR: RuntimeError: mat1 and mat2 shapes cannot be multiplied (128x128 and 1152x120)
 STDERR:  STDOUT:  STDOUT: Files already downloaded and verified
 STDOUT: Files already downloaded and verified
 STDERR: Traceback (most recent call last):
 STDERR:   File "/MLAgentBench/workspace/cifar10/train_v4.py", line 77, in <module>
 STDERR:     outputs = model(inputs)
 STDERR:   File "/home/user/micromamba/envs/autogpt/lib/python3.10/site-packages/torch/nn/modules/module.py", line 1501, in _call_impl
 STDERR:     return forward_call(*args, **kwargs)
 STDERR:   File "/MLAgentBench/workspace/cifar10/train_v4.py", line 30, in forward
 STDERR:     x = F.relu(self.fc1(x))
 STDERR:   File "/home/user/micromamba/envs/autogpt/lib/python3.10/site-packages/torch/nn/modules/module.py", line 1501, in _call_impl
 STDERR:     return forward_call(*args, **kwargs)
 STDERR:   File "/home/user/micromamba/envs/autogpt/lib/python3.10/site-packages/torch/nn/modules/linear.py", line 114, in forward
 STDERR:     return F.linear(input, self.weight, self.bias)
 STDERR: RuntimeError: mat1 and mat2 shapes cannot be multiplied (128x128 and 512x120)
 STDERR:  STDOUT:  STDOUT: Files already downloaded and verified
 STDOUT: Files already downloaded and verified
 STDOUT: [1,   100] loss: 2.229
 STDOUT: [1,   200] loss: 1.945
 STDOUT: [1,   300] loss: 1.754
 STDOUT: Epoch [1/5], Train Accuracy: 39.83%, Test Accuracy: 38.97%
 STDOUT: [2,   100] loss: 1.547
 STDOUT: [2,   200] loss: 1.536
 STDOUT: [2,   300] loss: 1.517
 STDOUT: Epoch [2/5], Train Accuracy: 48.49%, Test Accuracy: 47.67%
 STDOUT: [3,   100] loss: 1.451
 STDOUT: [3,   200] loss: 1.422
 STDOUT: [3,   300] loss: 1.439
 STDOUT: Epoch [3/5], Train Accuracy: 51.73%, Test Accuracy: 50.13%
 STDOUT: [4,   100] loss: 1.368
 STDOUT: [4,   200] loss: 1.380
 STDOUT: [4,   300] loss: 1.396
 STDOUT: Epoch [4/5], Train Accuracy: 52.95%, Test Accuracy: 50.86%
 STDOUT: [5,   100] loss: 1.364
 STDOUT: [5,   200] loss: 1.375
 STDOUT: [5,   300] loss: 1.371
 STDOUT: Epoch [5/5], Train Accuracy: 52.31%, Test Accuracy: 50.99%
 STDOUT: Train Accuracy: 52.33%, Test Accuracy: 50.99%
 STDERR: [W NNPACK.cpp:64] Could not initialize NNPACK! Reason: Unsupported hardware.
 STDERR:  STDOUT:  Step:  47
This model's maximum context length is 4097 tokens. However, you requested 4181 tokens (3681 in the messages, 500 in the completion). Please reduce the length of the messages or completion.
 Reason: Unsupported hardware.
 STDERR:  STDOUT:  =====================================
Final message:  Finished due to env.is_final() == True
Active Children: 0
Active Children: 0

What’s going on?

How do we make battery dataset as standar data as Kaggle that include:
cifar10/
├── data/
│   ├── cifar-10-batches-py/
│   │   ├── batches.meta
│   │   ├── data_batch_1
│   │   ├── data_batch_2
│   │   └── test_batch_
│   └──cifar-10-python.tar.gz
├── backup/
│    ├── train.py
│    └── train.py_2024....
├── research_log.log
└── train.py


ascii2nc python embedding does not support observation variable names.

Describe the Problem
Hank Fisher ran across this problem when using ascii2nc python embedding to read local storm reports and then running the output through point2grid.  The 7th column of the input python list should either be set to an integer GRIB code or a variable name string.  The former works fine but the bug is in the latter.  When set to a string, the output "obs_var" entry does contain that string but the output "obs_vid" variable remains unset.  Instead, it should indicate the index of the variable name string.
Expected Behavior
The output of the ascii2nc python run listed below should match the output of the direct ascii2nc run.
Environment
Describe your runtime environment:
Ran these tests on kiowa.
To Reproduce
Describe the steps to reproduce the behavior:
To illustrate, use the attached files to run ascii2nc directly first, and then, second, run it using python embedding:
(1) ascii2nc obs.txt obs_straight.nc
(2) ascii2nc -format python 'read_ascii_point.py obs.txt' obs_python.nc
Then run 'ncdump -v obs_var' and 'ncdump -v obs_vid' on both outputs and note the differences.
read_ascii_point.py.txt
obs.txt
Relevant Deadlines
None
Funding Source
Define the source of funding and account keys here or state NONE.
Define the Metadata
Assignee

[X] Select engineer(s) or no engineer required: John HG
[X] Select scientist(s) or no scientist required: None required

Labels

[X] Select component(s)
[X] Select priority
[X] Select requestor(s)

Projects and Milestone

[X] Review projects and select relevant Repository and Organization ones
[X] Select milestone

Define Related Issue(s)
Consider the impact to the other METplus components.

[X] METplus, MET, METdb, METviewer, METexpress, METcalcpy, METplotpy
No impacts to other repos.

Bugfix Checklist
See the METplus Workflow for details.

[X] Complete the issue definition above.
[X] Fork this repository or create a branch of master_<Version>.
Branch name: bugfix_<Issue Number>_master_<Version>_<Description>
[ ] Fix the bug and test your changes.
[ ] Add/update unit tests.
[ ] Add/update documentation.
[ ] Push local changes to GitHub.
[ ] Submit a pull request to merge into master_<Version>, listing the <Issue Number> in the title.
[ ] Iterate until the reviewer(s) accept and merge your changes.
[ ] Delete your fork or branch.
[ ] Complete the steps above to fix the bug on the develop branch.
Branch name: bugfix_<Issue Number>_develop_<Description>
[ ] Close this issue.

Created branches and bugfix_1306_master_v9.0_ascii2c and bugfix_1306_develop_ascii2nc.
Committed fixes to these branches and pushed back up to GitHub.
Added a new call to ascii2nc in the unit_python.xml unit test to use ascii2nc's python embedding to read point observations which use variable names instead of GRIB codes.
Added a new data file for this test in met/data/sample_obs/ascii/sample_ascii_obs_varname.txt
Ran regression tests to compare the bugfix branches with their bases:

master_v9.0 vs bugfix_1306_master_v9.0_ascii2nc  in dakota:/d3/projects/MET/MET_test_branches/bugfix_1306_ascii2nc/master_9.0
develop vs bugfix_1306_develop_ascii2nc in dakota:/d3/projects/MET/MET_test_branches/bugfix_1306_ascii2nc/develop


Add an OEP-2 compliant openedx.yaml file

This adds an openedx.yaml file, as described by OEP-2:
http://open-edx-proposals.readthedocs.io/en/latest/oeps/oep-0002.html
The data in this file was transformed from the contents of
edx/repo-tools-data:repos.yaml

@edx/openedx-tooling: This one's for you!

:+1:

@gsong usually the author is in charge of merging, because only they can be sure that they are truly ready to merge.

@nedbat @cpennington Ah, my bad. Still learning the edX etiquette.


CLI command does not work when in CircleCI build environment

When running bundle exec teaspoon in CircleCI's build environment, we received the following error message:
Starting the Teaspoon server...
Teaspoon running default suite at http://<IP_ADDRESS>:56312/teaspoon/default
Error: Page::NotFound: /teaspoon/default
/home/ubuntu/house_seven/vendor/bundle/ruby/2.1.0/bundler/gems/slices-3f5bc4551e2e/lib/slices/tree.rb:71:in `rescue in find_by_path'
/home/ubuntu/house_seven/vendor/bundle/ruby/2.1.0/bundler/gems/slices-3f5bc4551e2e/lib/slices/tree.rb:69:in `find_by_path'
/home/ubuntu/house_seven/vendor/bundle/ruby/2.1.0/bundler/gems/slices-3f5bc4551e2e/app/controllers/pages_controller.rb:29:in `block in show'
/home/ubuntu/house_seven/vendor/bundle/ruby/2.1.0/gems/activesupport-3.2.22/lib/active_support/benchmarkable.rb:38:in `block in benchmark'
/home/ubuntu/house_seven/vendor/bundle/ruby/2.1.0/gems/activesupport-3.2.22/lib/active_support/core_ext/benchmark.rb:5:in `block in ms'
/home/ubuntu/.rvm/rubies/ruby-2.1.5/lib/ruby/2.1.0/benchmark.rb:294:in `realtime'

This did not occur when we used the Rake task, rake teaspoon

Can you please verify that this isn't related to any past CircleCI issues? https://github.com/modeset/teaspoon/issues?utf8=✓&q=CircleCI

Closing, unless more information can be provided.


Ensure flutter-release-eng team has the right permissions to trigger retries in dart-internal builds

proxy_cli configurations have landed and permissions have been validated.


Calendar page function: date selection ordering

Date selection should change from being displayed in order of user selection to chronological order.
This will enable us to remove any unintended hierarchy associated with the date selection order, and present the dates back to the user chronologically for easier comprehension.

This is in since #146 was merged.


k8s 1.30 support for csp-adapter

Add k8s 1.30 support for csp-adapter

charts PR has landed, still need to update rancher/rancher, expect a PR shortly

rancher/rancher PR is merged, this is complete

Meera tells me we don't close this until its un-rc'd , my mistake, reopening


Introduce a workaround to add typecast for unsupported types

Fixes #1455
WIP

Hi @uazizTT not sure if you took a look at the document, but I will paste my response here as well:
This is already in progress on our end to be the part of the workaround infra:
https://github.com/tenstorrent/tt-mlir/pull/1583
Currently, it is in draft mode, until we fix the following thing:
https://github.com/tenstorrent/tt-mlir/pull/1613

Hi @uazizTT not sure if you took a look at the document, but I will paste my response here as well:
This is already in progress on our end to be the part of the workaround infra: #1583
Currently, it is in draft mode, until we fix the following thing: #1613

Oh thank you, I didn't take a deeper look but I thought that #1583 is specific to embeddings only?

Hi @uazizTT not sure if you took a look at the document, but I will paste my response here as well:
This is already in progress on our end to be the part of the workaround infra: #1583
Currently, it is in draft mode, until we fix the following thing: #1613

Oh thank you, I didn't take a deeper look but I thought that #1583 is specific to embeddings only?

It adds embedding support just to verify that everything is working as expected so I can write a test coverage. Other ops will be onboarded in a separate PR...


Add enableHistoricalMessaging to sendmessage

Hi,
I really would like the enableHistoricalMessaging property on the sendMessage method, can anyone help me with this?
kind regards,
Marco

hi marco, i'm sorry but enableHistoricalMessaging feature is not yet available officially out of china. you may find it on our doc site but that is a mistake. we are fixing the docs and we will do this as soon as it's officially supported.

added 0.9.14


Changed Postup and Postdown script to drop traffic between the peers.

Two new iptable rules were added, one to drop the traffic between the peers and another to clean this drop rule when the interface goes down.
Edit: These are required to enhance the security by avoid traffic between the peers.

Hi @NOXCIS , do you mind look over this please?

@donaldzou The iptables scripts are just defaults a user can modfiy to their needs. No need to implimnet someones specific use case.

@mzs114 is this not like the rules PostUp = iptables -I FORWARD -i wg0 -o wg0 -j DROP? Which disallows peers to talk to eachother?

@mzs114 is this not like the rules PostUp = iptables -I FORWARD -i wg0 -o wg0 -j DROP? Which disallows peers to talk to eachother?

Yes these are the same, as these were missing the the scripts given.
@NOXCIS There exists some preset rules, this is adding a new rule(and another one to remove).
A sane default helps the users, advanced users anyways will be customizing.

Hi @mzs114 is this not done with the new code?

Not sure which code or version you are referring to? I mean these changes were not merged, so this is still pending? The reason for this PR is to include such rule in the given scripts.

Hi @mzs114 is this not done with the new code?

Not sure which code or version you are referring to? I mean these changes were not merged, so this is still pending? The reason for this PR is to include such rule in the given scripts.

Can't users do it now with the PreUp, PreDown... Etc rules inside WGDashboard itself?

Hi @mzs114 is this not done with the new code?

Not sure which code or version you are referring to? I mean these changes were not merged, so this is still pending? The reason for this PR is to include such rule in the given scripts.

Can't users do it now with the PreUp, PreDown... Etc rules inside WGDashboard itself?

No, that rules are missing, that is the reason for this PR. Please check the new additions in the diff.

Hi @mzs114 I see your branch is still on version 4.0.2. And the main application or the Docker container no longer uses these iptable rules.
How would they be used?
Maybe we can put those rules into the documentation, but having them in Bash scripts is not optimal.
@donaldzou what do you think?

Hi @mzs114 I see your branch is still on version 4.0.2. And the main application or the Docker container no longer uses these iptable rules. How would they be used?
Maybe we can put those rules into the documentation, but having them in Bash scripts is not optimal.
@donaldzou what do you think?

Just wondering... aren't Post/Pre script not identical? i.e is different for everybody?
 Iptable rules are the only way to apply peer routing  to a Wireguard interface.
Wireguard and iptables restrictions for multiple users
If you don't know what Wireguard is, well, you should.
It's fast, easy to setup and highly configurable.
We will configure Wireguard for multiple users with various restrictions using iptables.
Assumptions
This should fit most setups (not mine though :wink:)

LAN network: <IP_ADDRESS>/24 (<IP_ADDRESS> => <IP_ADDRESS>)
LAN DNS server address: <IP_ADDRESS>
Wireguard is installed (kernel and tools) on a Linux host (it should also work on other platforms though).
The Linux host address: <IP_ADDRESS>
The Linux host main interface: enp4s0 (find it with ip a)

Initial server setup

Ensure your iptables firewall has its FORWARD table policy set to DROP:
iptables -P FORWARD DROP

Generate a Wireguard private key
echo "Private key: $(wg genkey)"

Private key: OM5BUrGVAswOm/r8asLtdUgJB8rrXflD6TVFL5aGAHk=

Create a file /etc/wireguard/wg0.conf (or any other name than wg0) with content:
[Interface]
Address = <IP_ADDRESS>/24
ListenPort = 51820
PrivateKey = OM5BUrGVAswOm/r8asLtdUgJB8rrXflD6TVFL5aGAHk=
PostUp = /etc/wireguard/postup.sh
PostDown = /etc/wireguard/postdown.sh

Don't forget to replace the PrivateKey value with the one you generated

Create a file /etc/wireguard/postup.sh with content:
WIREGUARD_INTERFACE=wg0
WIREGUARD_LAN=<IP_ADDRESS>/24
MASQUERADE_INTERFACE=enp4s0

iptables -t nat -I POSTROUTING -o $MASQUERADE_INTERFACE -j MASQUERADE -s $WIREGUARD_LAN

# Add a WIREGUARD_wg0 chain to the FORWARD chain
CHAIN_NAME="WIREGUARD_$WIREGUARD_INTERFACE"
iptables -N $CHAIN_NAME
iptables -A FORWARD -j $CHAIN_NAME

# Accept related or established traffic
iptables -A $CHAIN_NAME -o $WIREGUARD_INTERFACE -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT

# Accept traffic from any Wireguard IP address connected to the Wireguard server
iptables -A $CHAIN_NAME -s $WIREGUARD_LAN -i $WIREGUARD_INTERFACE -j ACCEPT

# Drop everything else coming through the Wireguard interface
iptables -A $CHAIN_NAME -i $WIREGUARD_INTERFACE -j DROP

# Return to FORWARD chain
iptables -A $CHAIN_NAME -j RETURN

Create a file /etc/wireguard/postdown.sh with content:
WIREGUARD_INTERFACE=wg0
WIREGUARD_LAN=<IP_ADDRESS>/24
MASQUERADE_INTERFACE=enp4s0
CHAIN_NAME="WIREGUARD_$WIREGUARD_INTERFACE"

iptables -t nat -D POSTROUTING -o $MASQUERADE_INTERFACE -j MASQUERADE -s $WIREGUARD_LAN

# Remove and delete the WIREGUARD_wg0 chain
iptables -D FORWARD -j $CHAIN_NAME
iptables -F $CHAIN_NAME
iptables -X $CHAIN_NAME

Start the Wireguard server (without any client configured yet):
wg-quick up wg0

First admin client
Let's setup a client with full access to Internet and your LAN through Wireguard.

Install Wireguard on your client device

On your client device, create a configuration file client.conf with content:
[Interface]
Address = <IP_ADDRESS>/32
DNS = <IP_ADDRESS>
PrivateKey = YOUR_CLIENT_PRIVATE_KEY

[Peer]
AllowedIPs = <IP_ADDRESS>/0, ::/0
Endpoint = <IP_ADDRESS>:51820
PersistentKeepalive = 25
PublicKey = YOUR_SERVER_PUBLIC_KEY

Replace in the configuration above YOUR_SERVER_PUBLIC_KEY with the key shown using wg show wg0 public-key on your server. For example: p6aGalk69yCM8vNhbvC5mEH/HhJr1c8f55UaeJSChX0=.

Generate keys for your client:
priv=`wg genkey` && printf "Private key: $priv\nPublic key: `echo "$priv" | wg pubkey`\n" && unset -v priv

Private key: 2L4L8YwusK4Ot4jVoo/1wwQfLAeRM6kJ/WWxzfnWKm4=
Public key: GmVyaj+K36xEk7ko/8jijMB9XX9dFgi4mJxsAEFMHmA=

Replace in client.conf YOUR_CLIENT_PRIVATE_KEY with the private key just generated above.

Use the public key shown above to add the following block to /etc/wireguard/wg0.conf on your server:
[Peer]
# Your first admin client
PublicKey = GmVyaj+K36xEk7ko/8jijMB9XX9dFgi4mJxsAEFMHmA=
AllowedIPs = <IP_ADDRESS>/32

On your server, restart Wireguard: wg-quick down wg0 && wg-quick up wg0.

You should now be able to connect to the Wireguard server from your client. You can check on the server with wg and it should show a latest handshake line.

LAN only user
Let's add a user who should only have access to the LAN.

Repeat steps 1 to 5 from the First admin client section above.

Use the public key shown in step 4 to add the following block to /etc/wireguard/wg0.conf on your server:
[Peer]
# LAN only user
PublicKey = 7GneIV/Od7WEKfTpIXr+rTzPf3okaQTBwsfBs5Eqiyw=
AllowedIPs = <IP_ADDRESS>/32

Shutdown Wireguard: wg-quick down wg0

Modify /etc/wireguard/postup.sh:

Limit full access to our first admin client <IP_ADDRESS> only by changing:
iptables -A $CHAIN_NAME -s <IP_ADDRESS>/24 -i $WIREGUARD_INTERFACE -j ACCEPT

to
iptables -A $CHAIN_NAME -s <IP_ADDRESS> -i $WIREGUARD_INTERFACE -j ACCEPT

Add a new line to allow our new user to LAN access only
iptables -A $CHAIN_NAME -s <IP_ADDRESS> -i $WIREGUARD_INTERFACE -d <IP_ADDRESS>/24 -j ACCEPT

Start Wireguard: wg-quick up wg0

Note that the client should set its AllowedIPs = <IP_ADDRESS>/0, ::/0 to AllowedIPs = <IP_ADDRESS>/24 so it tunnels only to when trying to reach an address on the LAN.

Restrict the user to a port
Let's re-use the user we previously created. Let's only allow him to access port 445 (Samba) on a server <IP_ADDRESS> for example.

Shutdown Wireguard: wg-quick down wg0

Modify
iptables -A $CHAIN_NAME -s <IP_ADDRESS> -i $WIREGUARD_INTERFACE -d <IP_ADDRESS>/24 -j ACCEPT

to
iptables -A $CHAIN_NAME -s <IP_ADDRESS> -i $WIREGUARD_INTERFACE -d <IP_ADDRESS> -p tcp --dport 445 -j ACCEPT

Start Wireguard: wg-quick up wg0

Restrict the user to limited Web browsing only
That's useful for our friends who want to stream restricted content on Netflix without allowing them on your LAN 😉

Shutdown Wireguard: wg-quick down wg0

Modify
iptables -A $CHAIN_NAME -s <IP_ADDRESS> -i $WIREGUARD_INTERFACE -d <IP_ADDRESS> -p tcp --dport 445 -j ACCEPT

to
# DNS
iptables -A $CHAIN_NAME -s <IP_ADDRESS> -i $WIREGUARD_INTERFACE -d <IP_ADDRESS> -p udp --dport 53 -j ACCEPT
# Drop traffic to your any private IP address
iptables -A $CHAIN_NAME -s <IP_ADDRESS> -i $WIREGUARD_INTERFACE -d <IP_ADDRESS>/8,<IP_ADDRESS>/12,<IP_ADDRESS>/16 -j DROP
# Accept outgoing connections to HTTP(S) ports to any IP address (public because of rule above)
iptables -A $CHAIN_NAME -s <IP_ADDRESS> -i $WIREGUARD_INTERFACE -d <IP_ADDRESS>/0 -p tcp -m multiport --dports 80,443 -j ACCEPT

Start Wireguard: wg-quick up wg0

Don't forget to set back the client to AllowedIPs = <IP_ADDRESS>/0, ::/0

More rules
Feel free to comment, I'll try my best to make you a rule 😉
Enjoy!

Hi @mzs114 I see your branch is still on version 4.0.2. And the main application or the Docker container no longer uses these iptable rules. How would they be used?
Maybe we can put those rules into the documentation, but having them in Bash scripts is not optimal.
@donaldzou what do you think?

Yes, documentation too helps, we can suggest these rules.
Basically help a user to bootstrap quickly with a working VPN setup that is somewhat having secure rules, I am yet to see how this change breaks anything, other than the intended use - Drop the traffic between peers.
Personally after going through the available approaches, I think that having a script is ok, as this can be a sane default for the user to use in the Pre and Post, let me know if there is an alternative, much like how Debian provides some out of the box default settings.
I sent a PR for this script as this is where I found the rules stored and unused at that time, hence the branch drifted.

@mzs114
Im generaly complaining about the update

Peer with preshared keys dont connect (Read The Configs), as in they are not beind added even though enabled
Random Ipv6 half implemation
Removal of the default Iptables script, before implimenting a text editor. WTAF, a text editor is a great idea BTW. However this leaves users a single line to insert their rules, rather than using a directory path with a default script they can modify to fit their enviornment.  You contradict your self addmitting this, those word below are yours.

Personally, after going through the available approaches, I think that having a script is ok, as this can be a sane default for the operator to use in the Pre and Post settings, let me know if there is an alternative, this is like how Debian provides some out of the box default settings, any operator with advanced needs will edit these anyways.

In short, i like the project. Personnally i think its the best UI soloution for Wireguard.  WGDashboard has had a stable codebase for a very long time which is slowly being dimished by god knows what. Just to list a few.

"ListenPost" Typo has exsisted for most of the 4.1 dev cycle and still exsist in the main  ATM.

Line 1884 & 1885 are missing a "\" in the syntax. Use to be four lines, they fixed two.

The Docker image, is quite literally full of pointless and redundant code. I.E uses Volumes but still system links the data to root dir for management. Isolate ENV var that will be overriden by Post/Pre Down/Up rules. Tried to remove apk on alpine base image to save space, yet downloads 200mb of python dependencies upon initilaztion. Has no stop mechanism, takes forever to kill itself, etc.
And if you think these are good practices show me one repo doing the same, show me one WG UI docker deployment thats this daft, it doesnt even have to be the same kind of project. Docker images are suppose to be scalable out of the box.

Refatored code base, no audit, and haphazard merges on main. Otherwise there wouldnt be typos and sysntax errors in the output log.

DeprecationWarning: 'maxsplit' is passed as positional argument.

Use of precomplied Binarys irregularly maintained by a single individual.

 I complain on the behalf of the less technical enduser, individuals restricted by censorship, internet freedom and the script kiddie getting their feet wet.  Too many times, ive seen incident alerts that couldve been avoided.  The only reseason i even coment on this repo, is just to save folks from days of debugging and hopefully stopping them from following the mistakes of myself and others.
Final Message

00000000  52 47 46 68 62 6c 4e 6c 62 47 56 75 49 47 6c 7a  |RGFhblNlbGVuIGlz|
00000010  49 47 45 67 5a 6e 56 6a 61 32 6c 75 5a 79 42 70  |IGEgZnVja2luZyBp|
00000020  5a 47 6c 76 64 43 42 68 62 6d 51 67 52 47 39 75  |ZGlvdCBhbmQgRG9u|
00000030  59 57 78 6b 49 48 42 79 62 32 4a 68 59 6d 78 35  |YWxkIHByb2JhYmx5|
00000040  49 47 52 76 5a 58 4e 75 64 43 42 72 62 6d 39 33  |IGRvZXNudCBrbm93|
00000050  49 47 46 75 65 53 42 69 5a 58 52 30 5a 58 49 25  |IGFueSBiZXR0ZXI%|
00000060  33 44                                            |3D|

Hi @NOXCIS,
First, I want to express my gratitude for your contributions to this project. I'm truly thankful to everyone who has helped make it better. Building this project has been my own effort, done entirely as a hobby, with no external funding or compensation.
The reason WGDashboard may have seemed stable for a long time is that it was initially very simple, with only a few features. Over time, I decided it was necessary to refactor the project using a newer tech stack. If there are imperfections, please feel free to hold me accountable.
I’ll definitely look into the issues you mentioned. Thank you again for bringing them to my attention. In the future, if you're open to it, feel free to suggest any improvements. I welcome all feedback, and be nice, as I strive to treat everyone in this community with the same respect.
Lastly, I want to give a shoutout to WireGate.
Hope you have a great day.
Best,
Donald

@NOXCIS First off - I want to sincerely apologize for how I acted.
By the way you made a spelling mistake, I love obfuscating though:
00000000: 5247 4668 626c 4e6c 6247 5675 4947 6c7a  RGFhblNlbGVuIGlz
00000010: 4947 4567 5a6e 566a 6132 6c75 5a79 4270  IGEgZnVja2luZyBp
00000020: 5a47 6c76 6443 4268 626d 5167 5247 3975  ZGlvdCBhbmQgRG9u
00000030: 5957 786b 4948 4279 6232 4a68 596d 7835  YWxkIHByb2JhYmx5
00000040: 4947 5276 5a58 4e75 6443 4272 626d 3933  IGRvZXNudCBrbm93
00000050: 4947 4675 6553 4269 5a58 5230 5a58 494b  IGFueSBiZXR0ZXIK
00000060: 0a                                       .

My response.
00000000: 5658 5a6c 616e 4236 4c43 4251 4947 7432  VXZlanB6LCBQIGt2
00000010: 4947 5277 656d 3867 5958 5967 6232 686a  IGRwem8gYXYgb2hj
00000020: 6243 426d 646d 4a35 4948 4231 6432 4a68  bCBmdmJ5IHB1d2Jh
00000030: 4948 5a31 4947 4676 6348 6f67 6433 6c32  IHZ1IGFvcHogd3l2
00000040: 6357 7871 5953 343d 0a                               cWxqYS4=.

My vision for this has always been to help people get this to work quickly through Docker. And I do not like how our exchange went down.
I do value your inputs. You raised some very good points about the project. We will work on those.
I have always welcomed people to give me feedback. Well thought about feedback, not just "because".
Regarding the useless code in the Docker container, you do have a point. My plan was always to remove more code as it becomes supported by WGDashboard itself. Like the start-on-boot feature has been removed. Most of the audience is not very known which deep technical concepts.
You have helped the security of this project with Docker analysis using scout and switching to Alpine Linux, I do not want to downplay that.
That said, making this project is about working together. Not one person rules because he thinks he knows best. Anyone can challenge me in a discussion on my methods, and if they are right then we can change those things. You can do this as well, but removing someone's work will spark anger - so communicate with each other.
@mzs114 I would love your input - if you can, would you like to join the Discord so we can talk pro-actively?


fix: Display every bit in integer tokens

Description
Problem*
Resolves a private slack request
Summary*
Self explanatory - I don't know why we were casting to u128 before displaying these before.
Additional Context
Documentation*
Check one:

[x] No documentation needed.
[ ] Documentation included in this PR.
[ ] [For Experimental Features] Documentation to be submitted in a separate PR.

PR Checklist*

[x] I have tested the changes locally.
[x] I have formatted the changes with Prettier and/or cargo fmt on default settings.

@noir-lang/core I noticed with this change we were formatting 32 to 2^5, so I removed the pretty-printing of powers of two for FieldElement. This is a larger scope than the original issue though so I'll leave this comment for someone else to see before potentially merging Monday.


Build failure: rustc 1.73.0 (cross-compilation)

Steps To Reproduce
Tested with ab3ea20adfe05a2328b4991612912ef7db67af83.
Steps to reproduce the behavior:

build pkgs.pkgsCross.aarch64-multiplatform.rustc (also happens with armv7l-hf-multiplatform)

Build log
Building stage0 library artifacts (x86_64-unknown-linux-gnu)
error: failed to run `rustc` to learn about target-specific information

Caused by:
  process didn't exit successfully: `/build/rustc-1.73.0-src/build/bootstrap/debug/rustc - --crate-name ___ --print=file-names -Ccodegen-units=10 -Csymbol-mangling-version=legacy -Zunstable-options -Zunstable-options '--check-cfg=values(bootstrap)' '--check-cfg=values(stdarch_intel_sde)' '--check-cfg=values(no_fp_fmt_parse)' '--check-cfg=values(no_global_oom_handling)' '--check-cfg=values(no_rc)' '--check-cfg=values(no_sync)' '--check-cfg=values(freebsd12)' '--check-cfg=values(freebsd13)' '--check-cfg=values(backtrace_in_libstd)' '--check-cfg=values(target_vendor,"unikraft")' '--check-cfg=values(target_env,"libnx")' '--check-cfg=values(target_os,"teeos")' '--check-cfg=values(target_arch,"asmjs","spirv","nvptx","xtensa","mips32r6","mips64r6","csky")' -Zmacro-backtrace -Clink-args=-Wl,-z,origin '-Clink-args=-Wl,-rpath,$ORIGIN/../lib' -Csplit-debuginfo=off -Ctarget-feature=-crt-static -Cprefer-dynamic -Zinline-mir '-Zcrate-attr=doc(html_root_url="https://doc.rust-lang.org/1.73.0/")' --target x86_64-unknown-linux-gnu --crate-type bin --crate-type rlib --crate-type dylib --crate-type cdylib --crate-type staticlib --crate-type proc-macro --print=sysroot --print=split-debuginfo --print=crate-name --print=cfg` (exit status: 1)
  --- stderr
  error: Option 'sysroot' given more than once

Build completed unsuccessfully in 0:00:11
make: *** [Makefile:12: all] Error 1

Full log: https://gist.github.com/2xsaiko/09032d1ca0b05ae38b88c1a15c81e9ff
Additional context
Might be related to #267003 but seems to be a different error.
Notify maintainers
@Havvy @figsoda @Mic92 @tjni @winterqt @zowoq
Metadata
Please run nix-shell -p nix-info --run "nix-info -m" and paste the result.
[user@system:~]$ nix-shell -p nix-info --run "nix-info -m"
 - system: `"x86_64-linux"`
 - host os: `Linux 6.1.63, NixOS, 23.11 (Tapir), 23.11.20231121.cccc85f`
 - multi-user?: `yes`
 - sandbox: `yes`
 - version: `nix-env (Nix) 2.18.1`
 - nixpkgs: `/etc/nix/inputs/nixpkgs`

Priorities
Add a :+1: reaction to issues you find important.

I don't know if this is important actually, I reported this because a cross build of one of my configurations was failing, but it works now (and I just noticed that it would have been failing to build buildPackages.rustc instead of pkgs.rustc which this is about). From my side, feel free to close this.

Bumping this, I was able to reproduce the bug on aarch64-multiplatform and riscv64 (I haven't tested other architectures) on ab3ea20adfe05a2328b4991612912ef7db67af83 and 033b01ae61e269c1ebe768974ae5acc7959f794d :
> nix build github:NixOS/nixpkgs/033b01ae61e269c1ebe768974ae5acc7959f794d#legacyPackages.x86_64-linux.pkgsCross.riscv64.rustc                                                                                Documents/nixpkgs
error: builder for '/nix/store/iln6qs99xg6g0h4symm67p70gs6b23c2-rustc-riscv64-unknown-linux-gnu-1.74.0.drv' failed with exit code 2;
       last 10 log lines:
       > Building stage0 library artifacts (x86_64-unknown-linux-gnu)
       > error: failed to run `rustc` to learn about target-specific information
       >
       > Caused by:
       >   process didn't exit successfully: `/build/rustc-1.74.0-src/build/bootstrap/debug/rustc - --crate-name ___ --print=file-names -Ccodegen-units=10 -Csymbol-mangling-version=legacy -Zunstable-options -Zunstable-options '--check-cfg=values(bootstrap)' '--check-cfg=values(stdarch_intel_sde)' '--check-cfg=values(no_fp_fmt_parse)' '--check-cfg=values(no_global_oom_handling)' '--check-cfg=values(no_rc)' '--check-cfg=values(no_sync)' '--check-cfg=values(freebsd12)' '--check-cfg=values(freebsd13)' '--check-cfg=values(backtrace_in_libstd)' '--check-cfg=values(target_vendor,"unikraft")' '--check-cfg=values(target_env,"libnx")' '--check-cfg=values(target_os,"teeos","hurd")' '--check-cfg=values(target_arch,"asmjs","spirv","nvptx","xtensa","mips32r6","mips64r6","csky")' -Zmacro-backtrace -Clink-args=-Wl,-z,origin '-Clink-args=-Wl,-rpath,$ORIGIN/../lib' -Csplit-debuginfo=off -Ctarget-feature=-crt-static -Cprefer-dynamic -Zinline-mir '-Zcrate-attr=doc(html_root_url="https://doc.rust-lang.org/1.74.0/")' --target x86_64-unknown-linux-gnu --crate-type bin --crate-type rlib --crate-type dylib --crate-type cdylib --crate-type staticlib --crate-type proc-macro --print=sysroot --print=split-debuginfo --print=crate-name --print=cfg` (exit status: 1)
       >   --- stderr
       >   error: Option 'sysroot' given more than once
       >
       > Build completed unsuccessfully in 0:00:38
       > make: *** [Makefile:19: all] Error 1
       For full logs, run 'nix log /nix/store/iln6qs99xg6g0h4symm67p70gs6b23c2-rustc-riscv64-unknown-linux-gnu-1.74.0.drv'.
error: 1 dependencies of derivation '/nix/store/1jgx7wc0i9hbdpywgg2sgqhmwbip11ci-rustc-wrapper-1.74.0.drv' failed to build

@2xsaiko could you maybe give some details on how you managed to fix the issue on your end ? Thanks.

It still fails, that's why I've kept it open. What no longer fails is building pkgsCross.aarch64-multiplatform.buildPackages.rustc (or at least a different variant of the package), that was keeping the NixOS system I'm cross-compiling from building.
I thought it was unlikely people would actually want to cross compile rustc itself to some other architecture instead of directly cross-compiling the actual Rust program they'd want to compile there, that's why I said "I don't know if this is important actually". Maybe I'm wrong considering this has 2 thumbs up :P

The problem seems to be coming from the usage of a rustc that is wrapped with a --sysroot argument :
[nix-shell:/tmp/rustc-1.73.0-src]$ bat -pp /nix/store/qsjr7lfkl0di969qhq6jp7dma1p3wd53-riscv64-unknown-linux-gnu-rustc-1.73.0/bin/rustc
#! /nix/store/q1c2flcykgr4wwg5a6h450hxbk4ch589-bash-5.2-p15/bin/bash -e
exec "/nix/store/hywr2z0bbf7vrhii1bwp09xcinmzy3n4-rustc-1.73.0/bin/rustc"  --sysroot /nix/store/qsjr7lfkl0di969qhq6jp7dma1p3wd53-riscv64-unknown-linux-gnu-rustc-1.73.0 "$@"

An additional --sysroot is added when this rustc is invoked during rustc's bootstraping (I think during stage 1 ?) which collides with the wrapped argument.
I don't know anything about rustc's bootstraping, and even less so in Nix.
@alyssais seems to have commited on this, could you maybe take a quick peek ?

https://github.com/NixOS/nixpkgs/pull/274853

Fixed in #274853


feat: update dependencies to be compatible with AEM 6.1-6.3 (#80)

feat: update dependencies to be compatible with AEM 6.1-6.3

fixed osgi and sling test version

Codecov Report

Merging #82 into next will not change coverage.
The diff coverage is n/a.

@@            Coverage Diff            @@
##               next      #82   +/-   ##
=========================================
  Coverage     40.32%   40.32%
  Complexity       88       88
=========================================
  Files            30       30
  Lines           858      858
  Branches         72       72
=========================================
  Hits            346      346
  Misses          474      474
  Partials         38       38

Continue to review full report at Codecov.

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


removed the preloader

https://github.com/user-attachments/assets/55aed354-c89f-4443-96cf-e0a01e8de599
FIXED ISSUE #1160

@sanjay-kv Sir please merge and give lebels in this one I cant put another pull request


ControlPlane is not reachable in v2.2.5-rc7

After Updating to v2.2.5-rc7, Rancher is complaing an Cluster as offline because he cannot not reach e.g. the scheduler and the controllermanager
What kind of request is this (question/bug/enhancement/feature request):
Bug
Steps to reproduce (least amount of steps as possible):
Create an e.g. AKS Cluster not from Rancher and Import it later in Rancher.
Result:
As Rancher is not able to see the scheduler and the controllermanager (because on AKS and how its behave) it complains the cluster is not ready and you cannot connect.
Other details that may be helpful:
This is working in v2.2.5-rc6
Environment information

Installation option (single install/HA): single

Cluster information

Cluster type (Hosted/Infrastructure Provider/Custom/Imported): BareMetall
Kubernetes version (use kubectl version): 1.13.x

Thanks for the report, sounds like a regression from https://github.com/rancher/rancher/pull/21121

The bug is reproduced in Rancher: v2.2.5-rc7, fresh install
Steps:

run  Rancher: v2.2.5-rc7 container
provision an AKS cluster through Rancher UI
import an existing AKS cluster from Azure

Result:

both AKS clusters are stuck in Waiting for API to be available state

Rancher logs
2019/06/28 18:33:55 [INFO] kontainerdriver azurekubernetesservice listening on address <IP_ADDRESS>:10049
2019/06/28 18:33:55 [INFO] kontainerdriver azurekubernetesservice stopped
2019/06/28 18:33:58 [INFO] kontainerdriver azurekubernetesservice listening on address <IP_ADDRESS>:10587
2019/06/28 18:33:58 [INFO] kontainerdriver azurekubernetesservice stopped
2019/06/28 18:34:05 [ERROR] Failed to update cluster [c-ttzmh]: Operation cannot be fulfilled on clusters.management.cattle.io "c-ttzmh": the object has been modified; please apply your changes to the latest version and try again

The bug is reproduced with Rancher: v2.2.4 upgrading to v2.2.5-rc7
Steps:

run Rancher: v2.2.4 container
provision an AKS cluster through Rancher UI
import an existing AKS cluster from Azure
upgrade Rancher to v2.2.5-rc7

Result:

failed to start the clusters

{
"lastUpdateTime": "2019-06-28T20:36:24Z",
"message": "component check failed for [scheduler]: Get http://<IP_ADDRESS>:10251/healthz: dial tcp <IP_ADDRESS>:10251: connect: connection refused",
"reason": "ComponentHealthCheckFailure",
"status": "False",
"type": "Ready"
},

The bugfix is validated on v2.2-head b240bd20
Fresh Install:

add an AKS cluster through Rancher UI - PASS

Upgrade Path:

run Rancher: v2.2.4 container
provision an AKS cluster through Rancher UI
import an existing AKS cluster from Azure
upgrade Rancher to v2.2.5-rc7

Result:

both clusters are up and functional


Use configured ID Token signature algorithm

Thanks for the PR @721806280. This is now merged.
FYI, I added a polish commit with some minor updates.


Check that SLURM worker is compatible with server

Transmit also the server versions (fractal-server and cfut) in the cloudpickle file, and then check that they match on the receiving end (i.e. the SLURM worker running as a user on a node).

Quick question about FMI deployment (@jluethi @gusqgm): do you ever set the FRACTAL_SLURM_WORKER_PYTHON env variable?
If not (and if you don't have reasons for doing it), then this issue becomes a bit irrelevant for the moment (we can still implement it, as it takes little, but we would never hit a version mismatch in real life).

From the docs
FRACTAL_SLURM_WORKER_PYTHON: Optional[str] = None

Path to Python interpreter that will run the jobs on the SLURM nodes.
If not specified, the same interpreter that runs the server is used.

Hmm, I've never consciously set this and everything has been running fine on the test setup. We have not deployed to the main cluster yet though.
I'm not fully sure what we're checking here though. We're anyway providing the a full python environment within which the jobs are being run, no?

This is not about the tasks' environments, but rather about the server's one.
In a typical case, the same python interpreter is available both on the machine that runs fractal-server and on the cluster computing nodes. In that case, the slurm submission script looks like
...
/path/to/python/that/runs/fractal-server /path/to/task.py ...

In some other cases, /path/to/python/that/runs/fractal-server could not be available on the computing nodes, and then one should set  FRACTAL_SLURM_WORKER_PYTHON to another python interpreter that is available over there. And someone should take care of installing fractal-server (and then also clusterfutures) for this latter python interpreter. In this situation, the "install" step of deployment includes both installing fractal-server on its own hosting machine and installing it for the python defined in FRACTAL_SLURM_WORKER_PYTHON. As a safety check, one can always explicitly verify that there is no version mismatch, any time that fractal-server (via clusterfutures) sends some task to be executed on a remote computing node.
If we stick with the single-interpreter use case, however, this check is always trivially true.

Ah!
And do we need such a server environment even if the machine running the server can submit to slurm directly from there? Because my understanding of the FMI setup is that the server environment is "supposed to be" installed on a local storage of that server machine (the 1016 machine to give it a name). But that 1016 machine should be able to submit to slurm.
These slurm nodes then likely wouldn't have access to the server python environment. In that case, what you describe here would be a fitting solution. Let's briefly discuss tomorrow to also get @gusqgm 's insights here.

And do we need such a server environment even if the machine running the server can submit to slurm directly from there?

Briefly: yes

Let's briefly discuss tomorrow

Great

Note: this should probably be part of https://github.com/fractal-analytics-platform/fractal-server/issues/476

Note: let's also include the python version (ref #528 (comment))

Once again we hit the usual two-different-python-version CI problem (e.g. because the server runs with py3.10 but the remote worker runs with py3.9 on the containers)

This is a broader CI issue (we sometimes run server and remote worker with different python versions), which is not trivial to fix.
Current action in this issue: let's only raise a warning, for python-version mismatch.


feat(add-site): auto detect site type in add site command

Please ensure your pull request adheres to the following guidelines:

[ ] make sure to link the related issues in this description. Or if there's no issue created, make sure you
describe here the problem you're solving.
[ ] when merging / squashing, make sure the fixed issue references are visible in the commits, for easy compilation of release notes

If the PR is changing the API specification:

[ ] make sure you add a "Not implemented yet" note the endpoint description, if the implementation is not ready
yet. Ideally, return a 501 status code with a message explaining the feature is not implemented yet.
[ ] make sure you add at least one example of the request and response.

If the PR is changing the API implementation or an entity exposed through the API:

[ ] make sure you update the API specification and the examples to reflect the changes.

Related Issues
Thanks for contributing!

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

v1.29.0
GitHub release

Your semantic-release bot :package::rocket:


Bqn lexer: lexer for the BQN array programming language

This is a pretty simple lexer based on the APL lexer. APL was the inspiration for BQN and the main differences are the unicode characters used for functions and BQN supports more features of other functional programming languages than APL.
The language documentation can be found at https://mlochbaum.github.io/BQN/doc/index.html
Thanks

If it's almost a clone of APL, is there a way to make it a subclass of the APL lexer? (See https://pygments.org/docs/lexerdevelopment/#subclassing-lexers-derived-from-regexlexer)

The languages are very similar in many ways, but most of the syntax is different. If we subclass the APL lexer there are only 4 rules that would be the same out of 19 as it stands currently.
Is it possible to use the inherit special object in the root state but specify only a subset of rules to be inherited? The docs don't explain this from what I can find. If not, is there any point in sub classing as inherit will not be used at all?

All requested changes have been committed but I am not sure about the mime-types, as this doesn't really apply to BQN. Thanks for your help @jeanas.


Pawns equip, drop and forbid vanilla EMP or smoke weapons

Greetings.
My pawns don't want to carry an EMP-grenades or the same type of launchers, they equip and drop it immediately. Outfit policy allow only EMP (both or either), no hunters/brawlers, no modified weapons or other weapon loadout mods in game. It happens no matter what mod setting I use. The same story with smoke weapons.
I searched in code, but I can't find a propper solution, could you please help me out?
It seems like the mod restrict equiping null-damage weapon (bool compareGuns) or compares range weapons with fists (public static Thing bestGunForPawn). Im not sure, changing some rules didn't help.

The issue should be fixed in d737751
It was the vanilla jobdriver that unequipped the weapon so I added an override for it.
Seems to work as intended now, thanks for the report!

Good news for me! Now it's all fine, many thanks!


Expression of type System.Linq.Expressions.TypedParameterExpression is not supported.

I'm getting the mentioned exception when returning more than one identity in a Cypher query. Using the latest Neo4jClient from nuget.
Query:
var result = this._client.Cypher
.Match("(a:LabeledNode)-[r:RELATES]-(b:OtherNode)")
.Where((LabeledNode a) => a.Name == name)
.Return((a,r,b) => new
{
a,r,b
})
.Results
Returning a single identity works properly. Looks like some kind of LINQ issue but I can't find any documentation on the type it's mentioning.
Stack Trace:
{"Message":"An error has occurred.","ExceptionMessage":"Expression of type System.Linq.Expressions.TypedParameterExpression is not supported.","ExceptionType":"System.NotSupportedException","StackTrace":" at Neo4jClient.Cypher.CypherReturnExpressionBuilder.BuildStatement(Expression sourceExpression, MemberInfo targetMember, CypherCapabilities capabilities, IEnumerable1 jsonConvertersThatTheDeserializerWillUse, Boolean camelCaseProperties) in D:\\temp\\c457c1d\\Neo4jClient\\Cypher\\CypherReturnExpressionBuilder.cs:line 282\r\n at Neo4jClient.Cypher.CypherReturnExpressionBuilder.<>c__DisplayClass10_0.b__0(MemberBinding binding) in D:\\temp\\c457c1d\\Neo4jClient\\Cypher\\CypherReturnExpressionBuilder.cs:line 143\r\n at System.Linq.Enumerable.WhereSelectEnumerableIterator2.MoveNext()\r\n at System.Linq.Buffer1..ctor(IEnumerable1 source)\r\n at System.Linq.Enumerable.ToArray[TSource](IEnumerable1 source)\r\n at Neo4jClient.Cypher.CypherReturnExpressionBuilder.BuildText(MemberInitExpression expression, CypherCapabilities capabilities, IEnumerable1 jsonConvertersThatTheDeserializerWillUse, Boolean camelCaseProperties) in D:\temp\c457c1d\Neo4jClient\Cypher\CypherReturnExpressionBuilder.cs:line 141\r\n at Neo4jClient.Cypher.CypherReturnExpressionBuilder.BuildText(LambdaExpression expression, CypherCapabilities capabilities, IEnumerable1 jsonConvertersThatTheDeserializerWillUse, Boolean camelCaseProperties) in D:\\temp\\c457c1d\\Neo4jClient\\Cypher\\CypherReturnExpressionBuilder.cs:line 73\r\n at Neo4jClient.Cypher.CypherFluentQuery.Return[TResult](LambdaExpression expression) in D:\\temp\\c457c1d\\Neo4jClient\\Cypher\\CypherFluentQueryReturn.cs:line 54\r\n at Neo4jClient.Cypher.CypherFluentQuery.Return[TResult](Expression1 expression) in D:\\temp\\c457c1d\\Neo4jClient\\Cypher\\CypherFluentQueryReturn.cs:line 81\r\n at MySolution.Repositories.GraphDataRepository.GetData(String name) in {solutionDir}:line 37\r\n at MySolution.Controllers.api.GraphLookupController.Index(String name) in {solutionDir}:line 27\r\n at lambda_method(Closure , Object , Object[] )\r\n at System.Web.Http.Controllers.ReflectedHttpActionDescriptor.ActionExecutor.<>c__DisplayClass10.b__9(Object instance, Object[] methodParameters)\r\n at System.Web.Http.Controllers.ReflectedHttpActionDescriptor.ActionExecutor.Execute(Object instance, Object[] arguments)\r\n at System.Web.Http.Controllers.ReflectedHttpActionDescriptor.ExecuteAsync(HttpControllerContext controllerContext, IDictionary2 arguments, CancellationToken cancellationToken)\r\n--- End of stack trace from previous location where exception was thrown ---\r\n at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)\r\n at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)\r\n at System.Runtime.CompilerServices.TaskAwaiter1.GetResult()\r\n at System.Web.Http.Controllers.ApiControllerActionInvoker.d__0.MoveNext()\r\n--- End of stack trace from previous location where exception was thrown ---\r\n at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)\r\n at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)\r\n at System.Runtime.CompilerServices.TaskAwaiter1.GetResult()\r\n at System.Web.Http.Controllers.ActionFilterResult.d__2.MoveNext()\r\n--- End of stack trace from previous location where exception was thrown ---\r\n at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)\r\n at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)\r\n at System.Runtime.CompilerServices.TaskAwaiter1.GetResult()\r\n at System.Web.Http.Dispatcher.HttpControllerDispatcher.d__1.MoveNext()"}

Hi, very sorry - I thought I'd replied to this - it would appear my phone didn't send the message...
I think you need to change your Return statement to:
.Return((a,r,b) => new
{
 A = a.As<LabeledNode>(),
 R = r.As<YOUR TYPE HERE>(),
 B = b.As<YOUR TYPE HERE>()
})

I think you need to specify the property types, Neo4jClient has no idea how to parse the return..

Ah! So this wasn't quite the solution, but it helped me figure it out.
I was actually doing what you suggested, but I was experimenting with the library and so I never used .As() on the relationship variable, just my nodes. Using .As() solved the issue, so now I'll create a type for it as well... thanks!


Add finnish translation

Here is the finnish translation. I was not able to translate "at" and "out of" since finnish is very different from english and I would need to have some context on how it is used. I've left them as english for now.

Thank you @FunctionalHacker for the PR. Can you please add Finish in the Available Translations section of README.md file?


In Eager mode,  batch norm doesn't support Second order derivative

System information

Have I written custom code (as opposed to using a stock example script provided in TensorFlow):
OS Platform and Distribution (e.g., Linux Ubuntu 16.04): CentOS Linux release 7.4.1708
Mobile device (e.g. iPhone 8, Pixel 2, Samsung Galaxy) if the issue happens on mobile device:
TensorFlow installed from (source or binary): binary
TensorFlow version (use command below):  1.12.0  and  1.10.1
Python version:  3.6
Bazel version (if compiling from source):
GCC/Compiler version (if compiling from source):
CUDA/cuDNN version: CUDA 9.0, cuDNN - 7
GPU model and memory:  TITAN Xp

Describe the current behavior
I wanted to implement an eager mode version of the large margin code from google-research code.
In other words, I computed a second order derivative. If my model/network didn't contain/enable the batch norm layers, it was fine.
But if I enabled the batch norm layer, it said that
"tf.gradients is not supported when eager execution is enabled. Use tf.GradientTape instead." however I didn't use tf.gradients and other layers didn't raise such an error.
The static/graph code work fine on both cases(with or without batch normalization)
Code to reproduce the issue
Provide a reproducible test case that is the bare minimum necessary to generate the problem.
import os
import numpy as np
import tensorflow as tf

os.environ["TF_CPP_MIN_LOG_LEVEL"] = '2'
os.environ["CUDA_DEVICE_ORDER"] = "PCI_BUS_ID"
os.environ['CUDA_VISIBLE_DEVICES'] = ""

tf_config = tf.ConfigProto()
tf_config.gpu_options.allow_growth = True
tf.enable_eager_execution(tf_config)

EPS = 1e-5
MOMENTUM = 0.9

class ConfigDict(object):
    def __init__(self):
        self.num_classes = 10

        # List of tuples specify (kernel_size, number of filters) for each layer.
        self.filter_sizes_conv_layers = [(5, 32), (5, 64)]
        # Dictionary of pooling type ("max"/"average", size and stride).
        self.pool_params = {"type": "max", "size": 2, "stride": 2}
        self.num_units_fc_layers = [512]
        self.dropout_rate = 0
        self.batch_norm = True
        self.activation = tf.nn.relu

def pool2d_layer(inputs, pool_type, pool_size=2, pool_stride=2):
    if pool_type == "max":
        # Max pooling layer
        return tf.layers.max_pooling2d(
            inputs, pool_size=[pool_size] * 2, strides=pool_stride)

class MNISTNetwork(tf.keras.Model):
    """MNIST model. """

    def __init__(self, config):
        super(MNISTNetwork, self).__init__()
        self.num_classes = config.num_classes
        self.var_list = []
        self.init_ops = None
        self.activation = config.activation
        self.filter_sizes_conv_layers = config.filter_sizes_conv_layers
        self.num_units_fc_layers = config.num_units_fc_layers
        self.pool_params = config.pool_params
        self.dropout_rate = config.dropout_rate
        self.batch_norm = config.batch_norm
        self.conv_layers = []
        self.bn_layers = []
        in_channel = 1
        for i, filter_size in enumerate(self.filter_sizes_conv_layers):
            f_size = filter_size[0]
            conv_layer = tf.layers.Conv2D(kernel_size=filter_size[0], filters=filter_size[1],
                                          strides=(1, 1), padding="same",
                                          activation=self.activation,
                                          use_bias=not self.batch_norm)
            self.conv_layers.append(conv_layer)
            batch_norm_layer = tf.keras.layers.BatchNormalization(momentum=MOMENTUM, epsilon=EPS)
            self.bn_layers.append(batch_norm_layer)
            in_channel = filter_size[1]

        self.fc_layers = []
        in_shape = 64 * 7 * 7
        for i, num_units in enumerate(self.num_units_fc_layers):
            fc_layer = tf.layers.Dense(num_units, activation=self.activation)
            self.fc_layers.append(fc_layer)
            in_shape = num_units
        self.output_layer = tf.layers.Dense(self.num_classes, activation=None)

    def __call__(self, images, is_training=False):
        """Builds model."""
        net = images
        for i in range(len(self.filter_sizes_conv_layers)):
            net = self.conv_layers[i](net)

            if self.pool_params:
                net = pool2d_layer(net, pool_type=self.pool_params["type"], pool_size=self.pool_params["size"]
                                   , pool_stride=self.pool_params["stride"])
            if self.dropout_rate > 0:
                net = tf.layers.dropout(net, rate=self.dropout_rate, training=is_training)

            if self.batch_norm:
                # net = tf.layers.batch_normalization(net, training=is_training, epsilon=EPS, momentum=MOMENTUM)
                net = self.bn_layers[i](net, training=is_training)

        net = tf.layers.flatten(net)

        for i in range(len(self.num_units_fc_layers)):
            net = self.fc_layers[i](net)
        logits = self.output_layer(net)
        return logits

config = ConfigDict()

# enable/disable batch norm
config.batch_norm = True

model = MNISTNetwork(config)

images = np.random.uniform(0, 1, (3, 28, 28, 1))
images = tf.convert_to_tensor(images, dtype=np.float32)
# images = tf.Variable(images)
print("data %.5f" % images.numpy().sum())

with tf.GradientTape(persistent=True) as t:
    with tf.GradientTape(persistent=True) as t2:
        logits = model(images, is_training=True)
        m = tf.reduce_sum(logits)
        print(logits.numpy().sum())
        dp_dx = t2.gradient(m, model.variables)
    print("first", dp_dx[0].numpy().sum())
    d2y_dx2 = t.gradient(dp_dx[0], model.variables)
    print("second order", d2y_dx2[0].numpy().sum())

Other info / logs
RuntimeError                              Traceback (most recent call last)
<ipython-input-86-44f63511f093> in <module>
     20         dp_dx = t2.gradient(m, model.variables)
     21     print("first", dp_dx[0].numpy().sum())
---> 22     d2y_dx2 = t.gradient(dp_dx[0], model.variables)
     23     print("second order", d2y_dx2[0].numpy().sum())

~/software/miniconda3/envs/dllib3/lib/python3.6/site-packages/tensorflow/python/eager/backprop.py in gradient(self, target, sources, output_gradients)
    899         nest.flatten(target),
    900         flat_sources,
--> 901         output_gradients=output_gradients)
    902
    903     if not self._persistent:

~/software/miniconda3/envs/dllib3/lib/python3.6/site-packages/tensorflow/python/eager/imperative_grad.py in imperative_grad(tape, target, sources, output_gradients)
     62       target,
     63       sources,
---> 64       output_gradients)

~/software/miniconda3/envs/dllib3/lib/python3.6/site-packages/tensorflow/python/eager/backprop.py in _gradient_function(op_name, attr_tuple, num_inputs, inputs, outputs, out_grads)
    115     return [None] * num_inputs
    116
--> 117   return grad_fn(mock_op, *out_grads)
    118
    119

~/software/miniconda3/envs/dllib3/lib/python3.6/site-packages/tensorflow/python/ops/nn_grad.py in _FusedBatchNormGradGrad(op, *grad)
    938   grad_initial = [grad_grad_x, grad_grad_scale, grad_grad_offset]
    939   grad_grad_y, grad_x, grad_scale = gradients_impl.gradients(
--> 940       [grad_x, grad_scale, grad_offset], [grad_y, x, scale], grad_initial)
    941   return grad_grad_y, grad_x, grad_scale, None, None
    942

~/software/miniconda3/envs/dllib3/lib/python3.6/site-packages/tensorflow/python/ops/gradients_impl.py in gradients(ys, xs, grad_ys, name, colocate_gradients_with_ops, gate_gradients, aggregation_method, stop_gradients)
    628   with ops.get_default_graph()._mutation_lock():  # pylint: disable=protected-access
    629     return _GradientsHelper(ys, xs, grad_ys, name, colocate_gradients_with_ops,
--> 630                             gate_gradients, aggregation_method, stop_gradients)
    631
    632

~/software/miniconda3/envs/dllib3/lib/python3.6/site-packages/tensorflow/python/ops/gradients_impl.py in _GradientsHelper(ys, xs, grad_ys, name, colocate_gradients_with_ops, gate_gradients, aggregation_method, stop_gradients, src_graph)
    642   """Implementation of gradients()."""
    643   if context.executing_eagerly():
--> 644     raise RuntimeError("tf.gradients is not supported when eager execution "
    645                        "is enabled. Use tf.GradientTape instead.")
    646   if src_graph is None:

RuntimeError: tf.gradients is not supported when eager execution is enabled. Use tf.GradientTape instead.

This appears to be working as of the latest tf-nightly

Great! I installed the tf-nightly and this bug has been solved. Perfect!
Thank you!

Glad to hear it!


Improve ASCII visualization of a composed template

Method added in <repo>/src/tqec/templates/display.py.
It is tested in notebook <repo>/notebooks/doubling_distance.ipynb.

Revert some of the suggested changes:
str object is immutable and do not support item assignment

A few general comments.
The current code has not been formatted by an automatic tool. I can do that for you, or you can do it, your call. You can use black or ruff. (I want to add that to CI in the short term).
A few parameters / hard-coded values could be exposed as parameters. This is for example the case of:

h_space that can be a parameter with a default value of 5,
cross_mark to let users replace that with a non-unicode character if they know that their terminal / text-display-thing does not support unicode.
The number 2 that seems to be v_space (vertical space) and that appear 3 times in the code (I think).

Also, it might be worth implementing the "bounding-box coordinate shifting" algorithm to avoid negative coordinates directly as a (private) method in the ComposedTemplate class, and re-use that method both in ComposedTemplate and in your implementation here. That would also reduce the length and complexity of the display_template_ascii function.
Seeing the operations you are performing (replacing rows/columns), it might be worth using a numpy.ndarray with dtype of numpy.str_. This would likely improve readability, performance and memory consumption.

Thanks for the quick review!

changed the function to take some of the hardcoded values as parameters
replaced the str delimiters
introduced v_space, corresponding to "1 + num additional lines between the plaquette rows"

It would be great if you could apply the automatic formatting tool. Thanks!

I think that using a numpy.ndarray of dtype = numpy.str_ would still be worth. I can try to hack a version with that if you do not want to test yourself, to see what it ends up looking like.

I tried briefly, and it seems to shift code complexity from string manipulation to index manipulation. I personally prefer index manipulation, but string manipulation is way more readable, so please ignore that part of my comment. Trying numpy-based implementation might not be worth.

I think that using a numpy.ndarray of dtype = numpy.str_ would still be worth. I can try to hack a version with that if you do not want to test yourself, to see what it ends up looking like.

I tried briefly, and it seems to shift code complexity from string manipulation to index manipulation. I personally prefer index manipulation, but string manipulation is way more readable, so please ignore that part of my comment. Trying numpy-based implementation might not be worth.

I'd also value readability more than efficiency. We are printing to screen, a functionality that is not meaningful for ASCII with more than a few 100s lines.

A few more notes and ask for changes.
Also see giangiac#2 for formatting.

Thanks!
Merged.


Permissions needed

Thanks for this little app, I had a small permission issue, that was needed, if I wanted a bare minimum account on Jamf
what also is needed:
Jamf Pro Server Setting - "Check-In" - Read (is needed)
This is what Jamf Support told me and I confirmed it working, maybe you want to update the Read me.

Thank you ,l will update that now.
Very much appreciated


The prefix adds the prefix to the commands, but the prefixed commands aren't functional

Connect-ExchangeOnline -UserPrincipalName xxx  -Prefix Legacy
Once connected, I can do Get-Legacy[tab] and cycle through the various commands.  Looks fine.
But when I run one:
PS C:> Get-LegacyAcceptedDomain
Get-Command : The term 'Get-LegacyAcceptedDomain' is not recognized as the name of a cmdlet, function, script file, or
operable program. Check the spelling of the name, or if a path was included, verify that the path is correct and try
again.
But if I run it without the prefix, the command works fine.
PS C:> Get-AcceptedDomain
Name                           DomainName                     DomainType                   Default

xxxx
So, seems like the prefix-command is "known", but isn't tied to the real command for some reason.
Thanks.

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

ID: 2d3f5e8b-3af1-22e4-6b11-8a3e159d3987
Version Independent ID: 60f9a029-69f3-e65c-6816-fbd414790ce3
Content: Connect-ExchangeOnline (exchange)
Content Source: exchange/exchange-ps/exchange/Connect-ExchangeOnline.md
Service: exchange-powershell
GitHub Login: @chrisda
Microsoft Alias: chrisda

@officedocsbot assign @yogkumgit

@J-Fedor, Thank you very much for posting this issue. Considering the nature of the issue, it is advised that please open a service ticket in your tenant and follow with them for the resolution. If you wish to know how to open the service ticket, please follow this link: https://docs.microsoft.com/office365/admin/contact-support-for-business-products
We will be very happy if you can share the outcome or resolution with us. We will certainly update this documentation with that valuable information. Thanks again, for taking out some time to open the issue. I appreciate and encourage you to do the same in the future also.
You can also provide this feedback here:
https://techcommunity.microsoft.com/t5/exchange-team-blog/announcing-general-availability-of-the-exchange-online/ba-p/1436623

MS fixed it.
“I am running back-end diagnostics for help fix the issue, this diagnostics will fix any object failure, backend glitches, validate configuration, upgrade scripting in the backend.”
Had to wait 12 hours before testing, but whatever voodoo they did appears to have fixed it.
John Fedor
Principal Architect
Direct:
Support Desk
630.592.6240
630.592.6260
visit peters.com today!
Stay up-to-date and follow us on social media!
Protect your employees and devices as they return to work wherever they are, learn how to HERE.
The information transmitted is intended only for the person or entity to which it is addressed and may contain confidential and privileged material
Unauthorized review, use, disclosure, or distribution is prohibited.
If you receive this material/information in error, please contact the sender and destroy the material/information.
From: Dario Woitasen<EMAIL_ADDRESS>Sent: Monday, June 15, 2020 1:55 PM
To: MicrosoftDocs/office-docs-powershell<EMAIL_ADDRESS>Cc: John Fedor<EMAIL_ADDRESS>Mention<EMAIL_ADDRESS>Subject: Re: [MicrosoftDocs/office-docs-powershell] The prefix adds the prefix to the commands, but the prefixed commands aren't functional (#5891)
@J-Fedorhttps://nam02.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2FJ-Fedor&data=02|01|john.fedor%40peters.com|ddbc245cf21440a155b508d8115d928a|a9abff8932b44225826965d12401e6d9|0|0|637278440893333130&sdata=mYLf8YGteJQnrx7Cvlv4wDLGI6%2F0GUxnGM3OG4BYOK4%3D&reserved=0, Thank you very much for posting this issue. Considering the nature of the issue, it is advised that please open a service ticket in your tenant and follow with them for the resolution. If you wish to know how to open the service ticket, please follow this link: https://docs.microsoft.com/office365/admin/contact-support-for-business-productshttps://nam02.safelinks.protection.outlook.com/?url=https%3A%2F%2Fdocs.microsoft.com%2Foffice365%2Fadmin%2Fcontact-support-for-business-products&data=02|01|john.fedor%40peters.com|ddbc245cf21440a155b508d8115d928a|a9abff8932b44225826965d12401e6d9|0|0|637278440893333130&sdata=gjOybgLRJzuP%2BEIEu1ZwURNgpO9flYH9ecBT5cPdVvQ%3D&reserved=0
We will be very happy if you can share the outcome or resolution with us. We will certainly update this documentation with that valuable information. Thanks again, for taking out some time to open the issue. I appreciate and encourage you to do the same in the future also.
You can also provide this feedback here:
https://techcommunity.microsoft.com/t5/exchange-team-blog/announcing-general-availability-of-the-exchange-online/ba-p/1436623https://nam02.safelinks.protection.outlook.com/?url=https%3A%2F%2Ftechcommunity.microsoft.com%2Ft5%2Fexchange-team-blog%2Fannouncing-general-availability-of-the-exchange-online%2Fba-p%2F1436623&data=02|01|john.fedor%40peters.com|ddbc245cf21440a155b508d8115d928a|a9abff8932b44225826965d12401e6d9|0|0|637278440893333130&sdata=12BqOdT%2Bh3bghGgJNobh0wPkNk4sOsajTf7VocR2gv8%3D&reserved=0
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHubhttps://nam02.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2FMicrosoftDocs%2Foffice-docs-powershell%2Fissues%2F5891%23issuecomment-644316324&data=02|01|john.fedor%40peters.com|ddbc245cf21440a155b508d8115d928a|a9abff8932b44225826965d12401e6d9|0|0|637278440893343122&sdata=zHlQvGCtCsdLDarEN%2BjWudggLAsLK%2FnE6PPenmVdrCc%3D&reserved=0, or unsubscribehttps://nam02.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fnotifications%2Funsubscribe-auth%2FAI7G3VPQZLL5F77BAHSCOWDRWZU7LANCNFSM4N4PZWZQ&data=02|01|john.fedor%40peters.com|ddbc245cf21440a155b508d8115d928a|a9abff8932b44225826965d12401e6d9|0|0|637278440893343122&sdata=lF9C5lt6T2DY57Gm4BJaTna2sgUENJH9L6nKdIZgWNA%3D&reserved=0.

Thanks @J-Fedor, thanks for this comment, it is good to know that this has been fixed.
Thanks again, for taking out some time to open the issue. I appreciate and encourage you to do the same in the future also.

@dariomws  Thank you very much for the contribution and sharing this explanation. @J-Fedor
Hope this comment is helpful for you. If you see a documentation update is required, please feel free to open an issue for the same. We proceed here to close it. Thanks for taking out some time to open the issue. Appreciate and encourage you to do the same in future also.


Automated link validation

For each link in data.json, I want to test regularly (weekly?) whether its destination reponds ok.
Action?
Tool?

Try https://github.com/marketplace/actions/check-links-with-linkcheck

https://stackoverflow.com/questions/61919141/read-json-file-in-github-actions


Change JSON encoding flag from JSON_ENSURE_ASCII to JSON_COMPACT.

JSON_COMPACT results in a, as the name suggests, more compact JSON
representation allowing to send more characters as part of a push
notification. Further, not using JSON_ENSURE_ASCII is necessary
for languages that do not use the latin alphabet (Arabic, CJK, etc),
otherwise the character limit for notifications is ridiculously
short.

Tnx!


Fix incorrect translation in the following scope

Applied Visual Design

https://learn.freecodecamp.one/responsive-web-design/applied-visual-design/learn-how-bezier-curves-work/

JavaScript Algorithms and Data Structures Projects

https://learn.freecodecamp.one/javascript-algorithms-and-data-structures/javascript-algorithms-and-data-structures-projects/cash-register/

Object Oriented Programming

https://learn.freecodecamp.one/javascript-algorithms-and-data-structures/object-oriented-programming/understand-where-an-objects-prototype-comes-from/

Bootstrap

https://learn.freecodecamp.one/front-end-libraries/bootstrap/taste-the-bootstrap-button-color-rainbow

Sass

fix routing issue caused by title being translated
https://learn.freecodecamp.one/front-end-libraries/sass/-for--sass-

Responsive Web Design Projects

Index

thanks for you patience


Firefox security warning

A user reported that the Firefox browser puts up a security warning when trying to access URLs such as https://metriq.info/Tasks, and recommends not proceeding. Investigating and trying to reproduce this would be useful, to understand if everything is fine on our end, e.g., with the certificates.

I am closing this issue as I could not reproduce it neither with v. 77 nor with .v.99.0.1 (64-bit), which is up to date.


Remove role="presentation" from image tiles (HTML validation error fix)

Fixes https://github.com/Leaflet/Leaflet/issues/7632.
img with an empty alt is implicitly role="presentation" and it's not clear that role="presentation" was ever useful.
Side note: I can no longer reproduce the TalkBack issue that would potentially justify setting aria-hidden="true", nor can I find the setting to enable Get image descriptions to test if TalkBack would even respect aria-hidden="true". Perhaps the feature was removed from Android, or it's very well hidden. Can revisit the TalkBack issue in the future.

@timveld what do you think?


Managed PEP to Microsoft Fabric Warehouse on ADF is not supported now

Managed PEP to Microsoft Fabric Warehouse on ADF is not supported now.

@jianleishen
Can you review the proposed changes?
Important: When the changes are ready for publication, adding a #sign-off comment is the best way to signal that the PR is ready for the review team to merge.
#label:"aq-pr-triaged"
@MicrosoftDocs/public-repo-pr-review-team

FYI @jonburchel