Fixes to 'GO:0140584 chromatin extrusion motor activity'

From the ATPase jamboree - annealing ticket https://github.com/geneontology/go-ontology/issues/21614#issuecomment-863213467

The cohesin (SMC1 + SMC3) and condensin (SMC2+SMC4) ATPases are 'DNA extrusion enzymes' whose reaction products were visualized as single tethered DNA molecules [PMID: 29472443, 31780627, 31753851], this is probably falling under 'motor activity'. Note that they need to be heterodimers and need the other cohesin/condensin subunits to exert this activity. We are looking here at protein complexes, not single enzyme proteins!

'chromatin extrusion motor activity'

add is_a motor activity
add has_part some ATP hydrolysis activity

[x]  add is_a motor activity
[ ]  add has_part some ATP hydrolysis activity -> was already inherited from subclass 'DNA translocase activity'


Autocompletion can fail to work

For some objects auto completion does not work sometimes. Would be great if autocompletion would work for all referenced objects.

Some additional requests:

The autocompletion should be case insensitive (example: the types TYPE_*) and should accept characters in disorder (example: int for TYPE_INT).
The end key should not be used for navigation.
The tooltip is too near of the text and should notably disappear when a scene is played.

Do you have an example of object for which it does not work properly?


chore(deps): upgrade dependencies

Upgrades project dependencies. See details in workflow run.

Automatically created by projen via the "upgrade-k8s-23-main" workflow

⚪ Backport skipped
The pull request was not backported as there were no branches to backport to. If this is a mistake, please apply the desired version labels or run the backport tool manually.
Manual backport
To create the backport manually run:
backport --pr 1062

Questions ?
Please refer to the Backport tool documentation


searchable hide_initially: true  - issue with tab bar controller

I am using the hide_initially: true option for searchable in my table views. I discovered that when I open a tab bar with a table screen (open_tab_bar TableScreen.new(nav_bar: true)), the search bar is only hidden halfway. If I just open a table screen (open TableScreen.new(nav_bar: true)) the search bar is hidden all of the way.
It appears that setting contentOffset on a scroll view acts funny inside a tab bar controller.

Upon further investigation I found that when opening the screen in the tab bar and not setting nav_bar: true
open_tab_bar TableScreen

hide_initially appears to work fine. It seems to only malfunction when there is a nav_bar

@carlinisaacson You probably want to look here: https://github.com/clearsightstudio/ProMotion/blob/173b412e48e74d37c9e7b86f2abae703f5bdea25/lib/ProMotion/table/table.rb#L49-L51

@jamonholmgren That is how I figured out it is contentOffset that is behaving oddly in this situation. So why it is behaving oddly is the actual issue that needs to be resolved here I suppose.

I've had the same problem with the same setup.

Did you find out anything new about this? Tables look indeed a little weird with this bug.

I don't think we ever did. What did we do, @carlinisaacson ?

@jamonholmgren
Honestly, I think it worked itself out. Not sure what the change was that fixed it. Then we switched to the custom search bar that you built in that app we shouldn't have an issue with it anymore.

I've updated to the newest version yesterday and the bug is gone. Thanks a lot! :+1:

Great!


SEOImages: User Story 1463880, Part 42

Summary
Updating image file names and references to improve SEO.
Fixes #1463880

@mairaw This PR is ready for review. CATS report: https://contentqacats.azurewebsites.net/CheckResults/2019032500027/Report/
This is the last of the original spreadsheet.


Add maxZoom option to BingMaps

This is to support the use-case where stretched tiles are displayed instead of BingMaps "no photos at this zoom level" tiles beyond zoom level 19.
See this request on the mailing list for example.

Different areas have different supported levels of zoom. Could we have an option that universally replaces the placeholders with stretched versions?


OPT-66b Multi-GPU Inference Issue

Hi,
For my purposes, I'm trying to run inference on the OPT-66B model on a ~400 char string with a Multi-GPU machine (4x NVIDIA RTX A6000 48GB). The program is run in a docker container (1.12.0-cuda11.3-cudnn8-devel) and my library versions are

transformers - 4.22.0.dev0 (i tried with pip version and yielded same result)
accelerate -  0.13.0.dev0

My accelerate config is
In which compute environment are you running? ([0] This machine, [1] AWS (Amazon SageMaker)): 0
Which type of machine are you using? ([0] No distributed training, [1] multi-CPU, [2] multi-GPU, [3] TPU [4] MPS): 2
How many different machines will you use (use more than 1 for multi-node training)? [1]: 1
Do you want to use DeepSpeed? [yes/NO]: NO
Do you want to use FullyShardedDataParallel? [yes/NO]: NO
How many GPU(s) should be used for distributed training? [1]:4
Do you wish to use FP16 or BF16 (mixed precision)? [NO/fp16/bf16]: fp16

and the relevant code (looking through past issues I saw init_empty_weights, load_checkpoint_and_dispatch being used but from_pretrained seemed the most up to date)
import transformers
from transformers import AutoModelForCausalLM, AutoTokenizer
import torch
from accelerate import Accelerator

accelerator = Accelerator()

accelerator.print("--------------------1")
checkpoint = "facebook/opt-66b"
model = AutoModelForCausalLM.from_pretrained("facebook/opt-66b", torch_dtype=torch.float16, device_map="auto")
model = accelerate.prepare(model)

which when run yields
Traceback (most recent call last):
  File "test.py", line 19, in <module>
    device_map="auto"
  File "/opt/conda/lib/python3.7/site-packages/transformers/models/auto/auto_factory.py", line 464, in from_pretrained
    pretrained_model_name_or_path, *model_args, config=config, **hub_kwargs, **kwargs
  File "/opt/conda/lib/python3.7/site-packages/transformers/modeling_utils.py", line 2236, in from_pretrained
    load_in_8bit=load_in_8bit,
  File "/opt/conda/lib/python3.7/site-packages/transformers/modeling_utils.py", line 2455, in _load_pretrained_model
    load_in_8bit=load_in_8bit,
  File "/opt/conda/lib/python3.7/site-packages/transformers/modeling_utils.py", line 574, in _load_state_dict_into_meta_model
    set_module_tensor_to_device(model, param_name, param_device, value=param)
  File "/opt/conda/lib/python3.7/site-packages/accelerate/utils/modeling.py", line 124, in set_module_tensor_to_device
    new_value = value.to(device)
RuntimeError: CUDA out of memory. Tried to allocate 648.00 MiB (GPU 0; 47.54 GiB total capacity; 9.76 GiB already allocated; 112.25 MiB free; 9.76 GiB reserved in total by PyTorch) If reserved memory is >> allocated memory try setting max_split_size_mb to avoid fragmentation.  See documentation for Memory Management and PYTORCH_CUDA_ALLOC_CONF
Traceback (most recent call last):
  File "test.py", line 19, in <module>
    device_map="auto"
  File "/opt/conda/lib/python3.7/site-packages/transformers/models/auto/auto_factory.py", line 464, in from_pretrained
    pretrained_model_name_or_path, *model_args, config=config, **hub_kwargs, **kwargs
  File "/opt/conda/lib/python3.7/site-packages/transformers/modeling_utils.py", line 2236, in from_pretrained
    load_in_8bit=load_in_8bit,
  File "/opt/conda/lib/python3.7/site-packages/transformers/modeling_utils.py", line 2455, in _load_pretrained_model
    load_in_8bit=load_in_8bit,
  File "/opt/conda/lib/python3.7/site-packages/transformers/modeling_utils.py", line 574, in _load_state_dict_into_meta_model
    set_module_tensor_to_device(model, param_name, param_device, value=param)
  File "/opt/conda/lib/python3.7/site-packages/accelerate/utils/modeling.py", line 124, in set_module_tensor_to_device
    new_value = value.to(device)
RuntimeError: CUDA out of memory. Tried to allocate 162.00 MiB (GPU 0; 47.54 GiB total capacity; 10.55 GiB already allocated; 112.25 MiB free; 10.55 GiB reserved in total by PyTorch) If reserved memory is >> allocated memory try setting max_split_size_mb to avoid fragmentation.  See documentation for Memory Management and PYTORCH_CUDA_ALLOC_CONF
Traceback (most recent call last):
  File "test.py", line 19, in <module>
    device_map="auto"
  File "/opt/conda/lib/python3.7/site-packages/transformers/models/auto/auto_factory.py", line 464, in from_pretrained
    pretrained_model_name_or_path, *model_args, config=config, **hub_kwargs, **kwargs
  File "/opt/conda/lib/python3.7/site-packages/transformers/modeling_utils.py", line 2236, in from_pretrained
    load_in_8bit=load_in_8bit,
  File "/opt/conda/lib/python3.7/site-packages/transformers/modeling_utils.py", line 2455, in _load_pretrained_model
Traceback (most recent call last):
  File "test.py", line 19, in <module>
    device_map="auto"
  File "/opt/conda/lib/python3.7/site-packages/transformers/models/auto/auto_factory.py", line 464, in from_pretrained
    load_in_8bit=load_in_8bit,
  File "/opt/conda/lib/python3.7/site-packages/transformers/modeling_utils.py", line 574, in _load_state_dict_into_meta_model
    pretrained_model_name_or_path, *model_args, config=config, **hub_kwargs, **kwargs
  File "/opt/conda/lib/python3.7/site-packages/transformers/modeling_utils.py", line 2236, in from_pretrained
    set_module_tensor_to_device(model, param_name, param_device, value=param)
  File "/opt/conda/lib/python3.7/site-packages/accelerate/utils/modeling.py", line 124, in set_module_tensor_to_device
    new_value = value.to(device)
RuntimeError: CUDA out of memory. Tried to allocate 162.00 MiB (GPU 0; 47.54 GiB total capacity; 10.39 GiB already allocated; 112.25 MiB free; 10.39 GiB reserved in total by PyTorch) If reserved memory is >> allocated memory try setting max_split_size_mb to avoid fragmentation.  See documentation for Memory Management and PYTORCH_CUDA_ALLOC_CONF
    load_in_8bit=load_in_8bit,
  File "/opt/conda/lib/python3.7/site-packages/transformers/modeling_utils.py", line 2455, in _load_pretrained_model
    load_in_8bit=load_in_8bit,
  File "/opt/conda/lib/python3.7/site-packages/transformers/modeling_utils.py", line 574, in _load_state_dict_into_meta_model
    set_module_tensor_to_device(model, param_name, param_device, value=param)
  File "/opt/conda/lib/python3.7/site-packages/accelerate/utils/modeling.py", line 124, in set_module_tensor_to_device
    new_value = value.to(device)
RuntimeError: CUDA out of memory. Tried to allocate 162.00 MiB (GPU 0; 47.54 GiB total capacity; 10.39 GiB already allocated; 112.25 MiB free; 10.39 GiB reserved in total by PyTorch) If reserved memory is >> allocated memory try setting max_split_size_mb to avoid fragmentation.  See documentation for Memory Management and PYTORCH_CUDA_ALLOC_CONF
ERROR:torch.distributed.elastic.multiprocessing.api:failed (exitcode: 1) local_rank: 0 (pid: 19384) of binary: /opt/conda/bin/python
Traceback (most recent call last):
  File "/opt/conda/bin/accelerate", line 8, in <module>
    sys.exit(main())
  File "/opt/conda/lib/python3.7/site-packages/accelerate/commands/accelerate_cli.py", line 43, in main
    args.func(args)
  File "/opt/conda/lib/python3.7/site-packages/accelerate/commands/launch.py", line 842, in launch_command
    multi_gpu_launcher(args)
  File "/opt/conda/lib/python3.7/site-packages/accelerate/commands/launch.py", line 446, in multi_gpu_launcher
    distrib_run.run(distrib_args)
  File "/opt/conda/lib/python3.7/site-packages/torch/distributed/run.py", line 755, in run
    )(*cmd_args)
  File "/opt/conda/lib/python3.7/site-packages/torch/distributed/launcher/api.py", line 131, in __call__
    return launch_agent(self._config, self._entrypoint, list(args))
  File "/opt/conda/lib/python3.7/site-packages/torch/distributed/launcher/api.py", line 247, in launch_agent
    failures=result.failures,
torch.distributed.elastic.multiprocessing.errors.ChildFailedError:

Looking at the RuntimeError message, it is strange that the total capacity is no where near fully utilized, which is also reflected in an nvidia-smi check
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 515.57       Driver Version: 515.57       CUDA Version: 11.7     |
|-------------------------------+----------------------+----------------------+
| GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
|                               |                      |               MIG M. |
|===============================+======================+======================|
|   0  NVIDIA RTX A6000    Off  | 00000000:01:00.0 Off |                  Off |
| 30%   48C    P2    84W / 300W |  48571MiB / 49140MiB |     32%      Default |
|                               |                      |                  N/A |
+-------------------------------+----------------------+----------------------+
|   1  NVIDIA RTX A6000    Off  | 00000000:41:00.0 Off |                  Off |
| 30%   43C    P2    78W / 300W |   6487MiB / 49140MiB |      3%      Default |
|                               |                      |                  N/A |
+-------------------------------+----------------------+----------------------+
|   2  NVIDIA RTX A6000    Off  | 00000000:81:00.0 Off |                  Off |
| 30%   48C    P2    76W / 300W |   6487MiB / 49140MiB |      2%      Default |
|                               |                      |                  N/A |
+-------------------------------+----------------------+----------------------+
|   3  NVIDIA RTX A6000    Off  | 00000000:C1:00.0 Off |                  Off |
| 30%   44C    P2    83W / 300W |   6487MiB / 49140MiB |      2%      Default |
|                               |                      |                  N/A |
+-------------------------------+----------------------+----------------------+

+-----------------------------------------------------------------------------+
| Processes:                                                                  |
|  GPU   GI   CI        PID   Type   Process name                  GPU Memory |
|        ID   ID                                                   Usage      |
|=============================================================================|
|    0   N/A  N/A     18590      C   ray::ImplicitFunc.train()        1283MiB |
|    0   N/A  N/A     35474      C   ray::ImplicitFunc.train()        1283MiB |
|    0   N/A  N/A     36662      C   ray::ImplicitFunc.train()        1283MiB |
|    0   N/A  N/A     38610      C   /opt/conda/bin/python           10653MiB |
|    0   N/A  N/A     38611      C   /opt/conda/bin/python           11949MiB |
|    0   N/A  N/A     38612      C   /opt/conda/bin/python           11463MiB |
|    0   N/A  N/A     38613      C   /opt/conda/bin/python           10653MiB |
|    1   N/A  N/A     18632      C   ray::ImplicitFunc.train()        1283MiB |
|    1   N/A  N/A     28211      C   ray::ImplicitFunc.train()        1283MiB |
|    1   N/A  N/A     34844      C   ray::ImplicitFunc.train()        1283MiB |
|    1   N/A  N/A     38610      C   /opt/conda/bin/python             659MiB |
|    1   N/A  N/A     38611      C   /opt/conda/bin/python             659MiB |
|    1   N/A  N/A     38612      C   /opt/conda/bin/python             659MiB |
|    1   N/A  N/A     38613      C   /opt/conda/bin/python             659MiB |
|    2   N/A  N/A     18634      C   ray::ImplicitFunc.train()        1283MiB |
|    2   N/A  N/A     24441      C   ray::ImplicitFunc.train()        1283MiB |
|    2   N/A  N/A     34392      C   ray::ImplicitFunc.train()        1283MiB |
|    2   N/A  N/A     38610      C   /opt/conda/bin/python             659MiB |
|    2   N/A  N/A     38611      C   /opt/conda/bin/python             659MiB |
|    2   N/A  N/A     38612      C   /opt/conda/bin/python             659MiB |
|    2   N/A  N/A     38613      C   /opt/conda/bin/python             659MiB |
|    3   N/A  N/A     18636      C   ray::ImplicitFunc.train()        1283MiB |
|    3   N/A  N/A     20269      C   ray::ImplicitFunc.train()        1283MiB |
|    3   N/A  N/A     35129      C   ray::ImplicitFunc.train()        1283MiB |
|    3   N/A  N/A     38610      C   /opt/conda/bin/python             659MiB |
|    3   N/A  N/A     38611      C   /opt/conda/bin/python             659MiB |
|    3   N/A  N/A     38612      C   /opt/conda/bin/python             659MiB |
|    3   N/A  N/A     38613      C   /opt/conda/bin/python             659MiB |
+-----------------------------------------------------------------------------+

Any solution to this would be much appreciated. Thanks in advance!

Hi there! The generation requires more space on GPU-0, especially for long sentences. One way around this is to use device_map="balanced_low_0" so that the weights of the models are balanced across GPUs, except GPU 0 (which is going to be kept free to do all generation work). It requires a source install on Transformers and the latest Accelerate.


Ohm-Editor vs '...' syntax

AFAICT the '...' syntax is not working in https://ohmjs.org/editor/ (on Safari and Chrome).
("not working" means - no error messages, no parse, parse tree grayed out (hanging?))
test grammar:
basic {
Main = Token
Token = "a"
}
child1 <: basic {
Child1Token = "a"
Token += Child1Token
}
child2a <: basic {
Child2aToken = "a"
Token := ... | Child2aToken
}
child2b <: basic {
Child2bToken = "a"
Token := Child2bToken | ...
}
test text:
a
the above seems to work from the command line
(refreshing the web page does not seem to change the behaviour of the editor, though)

Just release Ohm v16.3.2 which fixes the issue:


gcloud run deploy fails because npm run build is executed automatically

starting today, all deployments to google cloud run using the following command fail:
gcloud run deploy <service-name> --project <project-name> --region <region> --source . [... additonal service params]
Root cause is that gcloud run deply/cloud build is running the npm script "npm build" automatically,
which does not work because not all files are available. We have build the application already in our own CI/CD environment and only upload the compiled files. Running "npm build" should not be executed again. This was the behavior until today.
How can we disable this behavior?
We want to deploy our app to cloud run using the source based approach, so only the container image should be build.
Our .gcloudignore looks like this:
/*                  # exclude all, BUT
!dist/              # already compiled code (from typescript)
!package.json       # package and package-lock.json to fetch the dependencies
!package-lock.json

Seems like this has been introduced with  https://github.com/GoogleCloudPlatform/buildpacks/commit/7ce45107de34c675c6d1e9d2da89c5b41c20c035
According to the documentation, only "gcp-build" should be executed automatically:
https://cloud.google.com/docs/buildpacks/nodejs

Same problem. Are there any arguments for gcloud run deploy which disabled this feature?

The workaround here is to drop a file named project.toml into the root of your project with the following content:
[[build.env]]
name = "GOOGLE_NODE_RUN_SCRIPTS"
value = ""

Explanation: GOOGLE_NODE_RUN_SCRIPTS takes a comma separated list of npm scripts to run as part of the build. Providing an empty string, will cause no scripts to run.

https://cloud.google.com/docs/buildpacks/nodejs#executing_custom_build_steps_during_deployment says that it should only run a script called gcp-build. my build failed when trying to run npm build. Even with a procfile with other instructions.

my work around was to rename my build script to build:something

The workaround here is to drop a file named project.toml into the root of your project with the following content:
[[build.env]]
name = "GOOGLE_NODE_RUN_SCRIPTS"
value = ""

Explanation: GOOGLE_NODE_RUN_SCRIPTS takes a comma separated list of npm scripts to run as part of the build. Providing an empty string, will cause no scripts to run.

It works, thanks

From what i understood this is a workaround which will be removed/solved differently in the future, right?
...
Now i have to know internals from the buildpack in my project even though i just run "gcloud run deploy" for
deployment and not building the software.(even though the container is internally build i know)

One of the goals of the GCP buildpacks project is to be idiomatic to the language family we're supporting while meeting a broad range of use cases  and project types. We enabled this behavior to meet the needs of a lot of Node.JS projects who need to run npm run build without having to set up a separate build process before deployment (e.g. Typescript projects, or even just basic SPAs)
Unfortunately, that has the side effect of impacting projects that do invest in CI pipelines where build & config happens prior to containerizing with gcloud run deploy. Our rollout for this change happened out of order (code before docs) and created this confusion, and I apologize for that.
With that context out of the way, we feel that the build time environment variable is a good guard against this behavior. Using a project.toml is the buildpacks-idiomatic way to set env-var; but off the top I can think of a few ways we might be able to improve that experience

Introduce a --set-build-env-var flag in gcloud run deploy so you don't have to create a project.toml
Make it so that when you set gcp-build: '' in package.json we interpret that as a no-op and ignore everything in build

(1) might  be a reasonable improvement to Cloud Run and I can explore that with the product team
(2) is also something simple we could introduce to this buildpack, and that kinda jives with how Heroku rolled out their change, although theirs was an opt-in before it was made the default
wdyt @@mscudlik  @anniefu ?

The docs already call out a gcp-build npm script. I don't see why calling build needs to also happen?

I just wanted to call out that this is a breaking change that could catch a lot of people unawares. It is blocking our deployment flow and it took me a while to find the root cause (when I compared a successful build to a failed one, I don't even see any difference in buildpack version numbers). Please be more intentional about rolling out breaking changes like this.

@jama22:
i would appreciate it not to be forced to create a project.toml using an internal environment name "GOOGLE_NODE_RUN_SCRIPTS" (should it be GOOGLE_BUILD_NODE_RUN_SCRIPTS by the way? they are just used for building, not running or anything else) and knowing internals from google cloud build.
And while it might make sense to be able to set environment variables for the build using google cloud build standalone, i'm not so sure if this makes sense using gcloud deploy, as there are other environment variables, i.e. used for the application in cloud run.
So this seems to be a bit weird for me:
gcloud run deploy <service-name> --source . --project <project> [...] --set-env-vars="FOO=BAR" --set-build-env-var="GOOGLE_NODE_RUN_SCRIPTS="
From gcloud run deploy perspective, maybe this could be abstracted a bit more with "build options",
e.g. --build true or something (knowing there might be multiple options)

This issue is affecting gcloud app deploy now too. We were deploying our NodeJS app to AppEngine and all of a sudden it just stops working.

Adding GOOGLE_EXPERIMENTAL_NODEJS_NPM_BUILD_ENABLED as a keyword here, for my fellow humans wondering what kind of experiment Google is running and spending half a day on it before ending up in this issue 🤦

any update on how to get google app deploy working?  My deploys no longer work, even with the project.toml included

@FrozenKiwi We couldn't get it working with the project.toml either. Adding an empty gcp-build script to the package.json did it though!

@cherlin YESSSSS!!!!!!!!!!!!  thankyouthankyouthankyou, I was tearing what's left of my hair out.

It may not matter, but there is some small difference between the empty gcp-build and declaring the GOOGLE_NODE_RUN_SCRIPTS build env var noted over in https://github.com/GoogleCloudPlatform/buildpacks/issues/290. Declaring the env var runs everything with NODE_ENV production; declaring gcp-build still installs dev dependencies, runs the (empty) script, then uninstalls the dev dependencies using npm --prune. Also noted in that issue was a bug that it would then actually launch the app with NODE_ENV development true, which broke things for us, but that has apparently been resolved.

@FrozenKiwi We couldn't get it working with the project.toml either. Adding an empty gcp-build script to the package.json did it though!

Relevant docs: https://cloud.google.com/docs/buildpacks/nodejs#using_google_node_run_scripts

This broke us too. We're using Node.js v16 and Google Cloud Functions for Firebase and our firebase.json looks like this:
{
  "functions": {
    "predeploy": [
      "npm --prefix \"$RESOURCE_DIR\" run build"
    ],
    "source": "functions"
  }
}

So when we run firebase deploy it does the npm run build step. Doing it in the buildpack is a waste of time and, more importantly, broke us because certain types were not available in Cloud Build.
We've been deploying this way for years so this is an undocumented breaking change. For now I am going to rename my build script to compile but IMO this should be rolled back.

I just ran into this issue when using gcloud functions deploy, which I solved by passing --update-build-env-vars="GOOGLE_NODE_RUN_SCRIPTS="

Spent way too much time tracking this down. This should've 💯 been marked as a breaking change.
If you're using Github Actions, this fixed it for me:
- name: Deploy Cloud Function
  uses: google-github-actions/deploy-cloud-functions@v1
  with:
    name: myFunc
    runtime: nodejs18
    region: us-central1
    build_environment_variables: 'GOOGLE_NODE_RUN_SCRIPTS=""'

Hi Firebase dev here! If anyone is using Cloud Functions for Firebase and firebase-deploy (like @samatcolumn), we patched our CLI to disable this feature a few weeks back in firebase-tools v11.27.0. If you upgrade to at least that version, this error should go away without any additional work. Thanks!

It's unfortunate that this breaking change is not adequately documented. At the very least this should be stated in the build logs so that we can understand why the deployment fails. It took me a while to realize that npm run build is not supposed to be run as part of the cloud deployment!
My workaround is the change my build command in package.json to build:local
No time to try to understand why npm run build is now run by cloud build on top of gcp build which is already there for custom cloud build needs...

Oof. 🤯 Just spent 2 hours figuring out why our CI/CD pipeline was failing, and then I finally found this issue. I agree with others about marking this as a breaking change.
Renaming my build command in package.json also fixed the problem for me.

+1 to this being incredibly annoying and broken.
For Google Cloud Run and Google Cloud Functions, the solution is to add an empty gcp-build script.

@jama22 I spoke to Google support that said your answer should be considered 'official' which is bonkers to me.
Our usecase is that we use an internal registry with private access and all of our build commands require credentials that we will not be sending to Google for security reasons. This means every single team, developer and project requires to try to deploy code to GCP via trial and error until they find the internal logs for buildpack setup and figure out that there's a check for gcp-build like I had to do. It takes days. I just had another developer waste 2 days on this.
The worst part is that this happens when a new version of node is used. So everyone in my company, when they will slowly be upgrading node versions will over the next few years discover this bug and struggle. Everyone will. This change should not have happened. And if it did, it shouldn't be in the way that it did.
I.e. if you want to make this change permanent there need to be dozens of guides and an e-mail to all current GCP nodeJs runtime developers notifying us of the breaking change that is SO DIFFICULT to troubleshoot on prod.

@mctrafik et al., thanks for sharing your respective situations.

It takes days. I just had another developer waste 2 days on this.

I want to apologize for the frustrations that this change has caused and I appreciate ya'll spending the time to give us this feedback. I  wanted to share some of the changes we're making to help with the discovery and debug-ability of this issue:

We changed the published release notes to be marked as breaking change (GAE, GCF)
Added error messaging on the Node.js buildpack to help with debugging
Additional documentation to clarify how to work around the breakage on the Node.js buildpacks documentation

We've also identified process and communication gaps:

Release notes for this change were not published in Cloud Run. In the future, with change this big we will be publishing GCP Buildpack changelogs in Cloud Run Release Notes as well
The GCP Buildpacks documentation site didn't have release notes in April when we rolled out this change.  We've addressed this by introducing a Release Notes  section as well for GCP Buildpacks

And if it did, it shouldn't be in the way that it did.

I agree, ultimately this was a breaking change to the Node.js buildpacks. We underestimated the potential negative impact of this change and we strive to do better in the future. A few things we're committed to doing:

Get more involvement and feedback from the community on major upcoming changes before they happen. For changes that may have a broad impact on the project, I'll be posting them in the project's  Discussions board to get community feedback
Known breaking changes will always have a 1 year notice period before coming into effect. Those will always be communicated via release notes, here on the GitHub project, and also through official Google communication channels (if you're a customer)

The worst part is that this happens when a new version of node is used.

I might be missing some additional details here, but that shouldn't be the case. Node runtime versions are decoupled from the actual buildpack behavior

Thanks for the response and the additional info @jama22, that generally sounds pretty good.
I'd really like to have a more aggressive push notification in cases like this, e.g. Google manages to send me emails about upcoming breaking changes to lots of services and that "push" means that I see them without having to check in across the seemingly infinite number of services I use for potentially upcoming breaking changes - generally I'll check notes for breaking changes when I'm upgrading, but it's not practical to be polling everything in case there are breaking changes that affect a version I'm already using as was the case here.
On the last note, I think it's because in some cases (e.g. app engine flex, others?) buildpacks only became a thing with node 18, so this behaviour suddenly occurs on upgrade.

@jama22 for me it occurred when I've started to switch all NodeJS projects to pure ESM, upgrading some from ~14 -> 16/17 as 18 was just a few days away with some nice features.
Thus the first debugging stuff was my new build chain - not the damn names of the build scripts.
What got me: it worked everywhere else, other Cloud CIs were working, that's when "oh Google changed something again in buildpacks". Thanks to not only relying on Google Cloud, the debugging was not even hours.

Please note you can subscribe to Changelog via feed, or by using Bigquery:
SELECT
  *
FROM
  `bigquery-public-data.google_cloud_release_notes.release_notes`
WHERE TRUE
  AND LOWER(product_name) LIKE '%app engine%'
  AND release_note_type = "BREAKING_CHANGE"
ORDER BY published_at DESC

And set email alerts or webhooks using Apps Script and the builtin Bigquery service.
We've found that customers get "notification fatigue" from receiving emailed notices about changes. I'm not clear if this was a candidate for such a mailing as those are usually reserved for breaking changes that will cause outages, such as runtime changes affecting running code vs this which manifests as a deployment issue.

Thanks Jay.
I don't think the distinction between "deployment" and "runtime" is necessarily clear, we have applications that are deployed automatically on schedule with updated local databases and so the this was a breaking change to the regular operation of the system.

Super annoyingly, for anyone else using github actions to deploy... that teams doesn't allow any empty values to be passed. So the only workaround in that case is using the empty gcp-build script

In my App Engine project, adding a project.toml did not populate any environment variables.
Instead, I was able to add the variable to my app.yaml as noted here:
build_env_variables:
  GOOGLE_NODE_RUN_SCRIPTS: ''

Yet another workaround for those (like me) trawling this thread for solutions.

I am trying to build a Google Cloud Function and run it locally to insert data to my firestore. This is currently absolutely impossible.
Google devs should be ashamed of themselves. Moving off firebase/GCP entirely.
Never. Again.

I have spent 3 days on this godforsaken error to try to run a Google Cloud function locally. The ONLY reason I went this route is because they offer larger timeouts than firebase functions. And now my entire project is in the trash.


Property/class typo "AngelLines"?

Hello again!
Is the class AngelLines a typo?  I believe it should be AngleLines?

Yes, you are correct this is a typo :/

fixed with #27


Raised and cleared alarms need to be sent to Datadog as events

Each raised alarms (system and application) needs to be sent to Datadog and Slack with

git sha
environment
so that we're able to properly react.
https://docs.datadoghq.com/api/?lang=python#post-an-event

We should expand this with events and service checks:

byzantine events could be sent to datadog
alarms, already mentioned (system - disk, ethereum client connectivity, invalid fee file)
service checks for watcher -> child chain

Currently we use Statix (https://github.com/lexmag/statix) that lacks support for both of the above (https://github.com/lexmag/statix/pull/26).

I suggest we fork statix and maintain a mix of
https://github.com/bleacherreport/statix/commits/otp-<IP_ADDRESS>-support
and https://github.com/lexmag/statix/commits/master
they diverge after https://github.com/lexmag/statix/commit/2245dfbe869d6e266401ba7f89d8097ff8f7180b.

See slack discussion for additional info.
Would be good to tighten up the scope and definition of this issue, or change the title of it, depending on how we decide to split up and/or coordinate the work and requirements.
cc: @achiurizo @kevsul @InoMurko

To follow up after various conversations:
We agreed that most of what performance testing needs are metrics and can use the existing telemetry system.
If stress tests break the system by hitting its limits, then we may be able to identify some events that should have been fired. Depending on the progress of the this issue, we can add them here or create new issues.


add commit

WHY are these changes introduced?
Fixes #0000

WHAT is this pull request doing?

12


⚠ Bofrost.lu has degraded performance

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

HTTP code: 200
Response time: 1188 ms

Resolved: Bofrost.lu performance has improved in 91d104c after 6 minutes.


Minimal example needed to call a Teams User from a Bot (application hosted media)

Describe the issue
I have been unable to find a code sample that shows how a bot can initiate a call to a Teams user. The examples in this repo show how a bot can receive a call. An example showing how to initiate calls is also needed.
Code Snippet
My best attempt at the code to initiate a call is below. The sample does run and get a Not Found  response from the server. The configuration parameters I'm using do work correctly to allow a bot to receive a call from Teams.
using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Threading.Tasks;
using Microsoft.Graph.Communications.Common.Telemetry;
using Microsoft.Extensions.Logging;
using Microsoft.Graph;
using Microsoft.Graph.Communications.Calls;
using Microsoft.Graph.Communications.Calls.Media;
using Microsoft.Graph.Communications.Client;
using Microsoft.Skype.Bots.Media;

namespace caller
{
    class Program
    {
        private static string APP_NAME = "";
        private static string APP_ID = "";
        private static string APP_SECRET = "";
        private static string TENANT_ID = "";
        private static string CALLBACK_URI = "";
        private static string CERTIFICATE_THUMBPRINT = "";
        private static int MEDIA_PORT = 10000;
        private static string PUBLIC_IP = "";
        private static string HOSTNAME = "";

        static async Task Main(string[] args)
        {
            Console.WriteLine("Teams Call Console:");

            GraphLogger graphLogger = new GraphLogger(APP_NAME);
            graphLogger.DiagnosticLevel = System.Diagnostics.TraceLevel.Verbose;
            ILogger logger = new ConsoleLogger(graphLogger);

            AuthenticationProvider authProvider = new AuthenticationProvider(
                APP_NAME,
                APP_ID,
                APP_SECRET,
                TENANT_ID,
                graphLogger);

            GraphServiceClient graphClient = new GraphServiceClient(authProvider);

            var users = await graphClient.Users.Request().GetAsync();

            foreach (var user in users)
            {
                Console.WriteLine($"user Id: {user.Id}.");
                Console.WriteLine($"user Display Name: {user.DisplayName}.");
            }

            var mediaPlatformSettings = new MediaPlatformSettings()
            {
                MediaPlatformInstanceSettings = new MediaPlatformInstanceSettings()
                {
                    CertificateThumbprint = CERTIFICATE_THUMBPRINT,
                    InstanceInternalPort = MEDIA_PORT,
                    InstancePublicIPAddress = IPAddress.Parse(PUBLIC_IP),
                    InstancePublicPort = MEDIA_PORT,
                    ServiceFqdn = HOSTNAME,
                },

                ApplicationId = APP_ID,
            };

            var builder = new Microsoft.Graph.Communications.Client.CommunicationsClientBuilder(
                APP_NAME,
                APP_ID,
                graphLogger);

            builder
                .SetAuthenticationProvider(authProvider)
                .SetNotificationUrl(new Uri(CALLBACK_URI))
                .SetMediaPlatformSettings(mediaPlatformSettings)
                .SetServiceBaseUrl(new Uri(CALLBACK_URI));

            var client = builder.Build();

            Console.WriteLine($"Attempting to call {users.First().DisplayName}.");

            var call = new Call
            {
                CallbackUri = CALLBACK_URI,
                TenantId = TENANT_ID,
                Targets = new List<InvitationParticipantInfo>()
                {
                    new InvitationParticipantInfo
                    {
                        Identity = new IdentitySet
                        {
                            User = new Identity
                            {
                                DisplayName = users.First().DisplayName,
                                Id = users.First().Id
                            },
                        }
                    }
                },
                RequestedModalities = new List<Modality>()
                {
                    Modality.Audio
                },
                MediaConfig = new AppHostedMediaConfig(),
            };

            var callResult = await client.Calls().AddAsync(call);

            Console.WriteLine($"Call result {callResult.Id}.");

            Console.WriteLine("Finished.");
            Console.WriteLine("Press any key to exit...");
            Console.ReadLine();
        }

        /// <summary>
        /// Creates the local media session.
        /// </summary>
        /// <param name="mediaSessionId">
        /// The media session identifier.
        /// This should be a unique value for each call.
        /// </param>
        /// <returns>The <see cref="ILocalMediaSession"/>.</returns>
        private ILocalMediaSession CreateLocalMediaSession(ICommunicationsClient client)
        {
            // create media session object, this is needed to establish call connectionS
            var mediaSession = client.CreateMediaSession(
                new AudioSocketSettings
                {
                    StreamDirections = StreamDirection.Sendrecv,
                    SupportedAudioFormat = AudioFormat.Pcm16K
                },
                mediaSessionId: default(Guid));

            return mediaSession;
        }
    }
}

Expected behavior
I'm the only user on my Teams tenant so the expected behaviour is that my Teams client alerts me to an incoming call.
Graph SDK (please complete the following information):

Version 1.0

Microsoft.Graph.Communications.Calls <IP_ADDRESS>0
Microsoft.Graph.Communications.Calls.Media <IP_ADDRESS>0
Microsoft.Graph.Communications.Client <IP_ADDRESS>0

Logs
Teams Call Console:
AuthenticationProvider: Info AuthenticationProvider: Generating OAuth token.
AuthenticationProvider: Info AuthenticationProvider: Generated OAuth token. Expires in 59.9825520633333 minutes.
user Id: 863a4f33-21a4-4586-9d5b-7839xxxxxxx.
user Display Name: xxx.

CommunicationsClient: Info Dispatcher Container registering notification dispatcher for: communications/calls
CommunicationsClient: Verbose StatefulCallCollection creating subscription: communications/calls
NotificationDispatcher: Info Subscribed: communications/calls
To queue: communications/calls
CommunicationsClient: Info Media session was not provided, using media configuration defined in the call.
StatefulCall: Info Created new GraphLoggerShim for StatefulCall.
StatefulCall: Info Created new GraphAuthClient for StatefulCall.
StatefulCall: Info Authenticating request for tenant: 23c8477b-251f-4272-82c4-f2xxxxxx
AuthenticationProvider: Info AuthenticationProvider: Generating OAuth token.
AuthenticationProvider: Info AuthenticationProvider: Generated OAuth token. Expires in 59.847680015 minutes.
StatefulCall: Info {
<EMAIL_ADDRESS>"#microsoft.graph.call",
  "direction": "outgoing",
  "callbackUri": "https://xxx.com:5001",
  "source": {
<EMAIL_ADDRESS>"#microsoft.graph.participantInfo",
    "identity": {
<EMAIL_ADDRESS>"#microsoft.graph.identitySet",
      "application": {
<EMAIL_ADDRESS>"#microsoft.graph.identity",
        "displayName": "(Identity: Ihpd+/1p)",
        "id": "1e07c545-97f3-4f0b-b390-8e21xxxxxx"
      }
    }
  },
  "targets": [
    {
<EMAIL_ADDRESS>"#microsoft.graph.invitationParticipantInfo",
      "identity": {
<EMAIL_ADDRESS>"#microsoft.graph.identitySet",
        "user": {
<EMAIL_ADDRESS>"#microsoft.graph.identity",
          "displayName": "(Identity: F5S7njoJ)",
          "id": "863a4f33-21a4-4586-9d5b-78390xxxxxx"
        }
      }
    }
  ],
  "requestedModalities": [
    "audio"
  ],
  "mediaConfig": {
<EMAIL_ADDRESS>"#microsoft.graph.appHostedMediaConfig"
  },
  "tenantId": "23c8477b-251f-4272-82c4-fxxxxxxx"
}
StatefulCall: Verbose
StatefulCall: Info
StatefulCall: Verbose
StatefulCall: Info
StatefulCall: Info
StatefulCall: Error {
  "error": {
    "code": "itemNotFound",
    "message": "Unexpected exception returned from the service.\r\nStatus Code: NotFound"
  }
}
StatefulCall: Info

Or does this note on the Create call reference page mean calls to a Teams user are not supported unless they have a VoIP number assigned?

Note: For a call with app-hosted media, you need the Calls.AccessMedia.All permission in addition to one of the permissions listed in the table above.

Bump.
Any chance of even a yes/no answer on this?
Is it possible to use the Graph SDK + Skype Bot SDK to initiate a call from a Bot to a Teams User?

@ssulzer sorry for the ping but you seem to be the main person able to answer questions about the these samples and API's they use. I've got a project hanging on finding an answer to this question.
Is it supported to call a Teams user from a Bot or are there certain caveats about a VoIP number being assigned or such? The documentation is very vague, e.g. what does "VoIP number assigned mean"?

@ananmishr @zhengni-msft Can you comment please.
Here's a previous discussion about making outbound bot -> Teams user calls: https://github.com/microsoftgraph/microsoft-graph-comms-samples/issues/17#issuecomment-431183218

Thanks to ssulzer the linked issue in the previous post I was able to get an additional pointer in the right direction and the Not Found error response I was getting was due to incorrect processing in my web callback. After a few more trial and error attempts I managed to get my bot to ring my Teams User (audio not wired up as of yet). That has provided answers to my two questions:

Is it possible to use the Graph SDK + Skype Bot SDK to initiate a call from a Bot to a Teams User?

Yes.

Is it supported to call a Teams user from a Bot or are there certain caveats about a VoIP number being assigned or such?

A VoIP number is NOT required to be assigned to the Teams User in order to receive a call.


Remove unnecessary useRef calls

Overview
In some parts of the code we use useRef even though a RefObject is not necessary.
ToDos

Remove useRef from useDispatch() calls entirely
Check other occurrences of useRef and replace with useMemo if sensible

Closing in favor of web-core.


[Snyk] Security upgrade setuptools from 40.5.0 to 70.0.0

Snyk has created this PR to fix 2 vulnerabilities in the pip dependencies of this project.
Snyk changed the following file(s):

requirements.txt

⚠ Warning
otebook 6.5.7 requires pyzmq, which is not installed.
jupyter-server 1.24.0 requires pyzmq, which is not installed.
jupyter-client 7.4.9 requires pyzmq, which is not installed.
ipykernel 6.16.2 requires pyzmq, which is not installed.
fastai 1.0.61 requires spacy, which is not installed.
fastai 1.0.61 requires scipy, which is not installed.

[!IMPORTANT]

Check the changes in this PR to ensure they won't cause issues with your project.
Max score is 1000. Note that the real score may have changed since the PR was raised.
This PR was automatically created by Snyk using the credentials of a real user.
Some vulnerabilities couldn't be fully fixed and so Snyk will still find them when the project is tested again. This may be because the vulnerability existed within more than one direct dependency, but not all of the affected dependencies could be upgraded.

Note: You are seeing this because you or someone else with access to this repository has authorized Snyk to open fix PRs.
For more information:
🧐 View latest project report
📜 Customise PR templates
🛠 Adjust project settings
📚 Read about Snyk's upgrade logic

Learn how to fix vulnerabilities with free interactive lessons:
🦉 Regular Expression Denial of Service (ReDoS)
🦉 Improper Control of Generation of Code ('Code Injection')

:tada: Snyk checks have passed. No issues have been found so far.
:white_check_mark: security/snyk check is complete. No issues have been found. (View Details)


Fix deprecations in tests & add docs

Changes:

fix deprecations in tests
more docs

It only adds via search/replace autoincrement to id fields in tests. I would just concentrate on docs


Add l2 regularization penalty to the Logistic Regression

We need additional parameters to support L2 regularization of Logistic Regression parameters

Looks like we can easily add L2 reg. with the current solver (LBFGS)

Looks like we can easily add L2 reg. with the current solver (LBFGS)


Read throws NullReferenceException if file has invalid INDEX record

https://www.newyorkfed.org/microeconomics/sceindex/medialibrary/interactives/sce/sce/downloads/data/FRBNY-SCE-Data.xls
Read should check m_isValid after the call to initializeSheetRead.

Should be fixed as part of https://github.com/ExcelDataReader/ExcelDataReader/pull/139.


Running the Cassini Example

I am having a problem running the Cassini_Example. I have SpiceyPy ver. 2.2.0 installed on an iMacPro running Mac OS X ver. 10.14.3. I'm running Python ver. 3.6.8.
I have Cassini_Example in a file named cassini-3.py (attached to this note) and when I run the script in the Terminal application as
                                             python cassini-3.py

I do not get the plot as cited in the documentation; I get the following report,
Help on function spkpos in module spiceypy.spiceypy:
spkpos(targ, et, ref, abcorr, obs)
Return the position of a target body relative to an observing
body, optionally corrected for light time (planetary aberration)
and stellar aberration.
http://naif.jpl.nasa.gov/pub/naif/toolkit_docs/C/cspice/spkpos_c.html

:param targ: Target body name.
:type targ: str
:param et: Observer epoch.
:type et: Union[float,Iterable[float]]
:param ref: Reference frame of output position vector.
:type ref: str
:param abcorr: Aberration correction flag.
:type abcorr: str
:param obs: Observing body name.
:type obs: str
:return:
        Position of target,
        One way light time between observer and target.
:rtype: tuple

(END)
and lastly, I get the following output written to the Terminal window (as a result of entering ctrl Z):
(base) Samuels-Mac-Pro:Cassini_Example user$ python cassini-3.py
CSPICE_N0066
ET One: 140961664.18440723, ET Two: 186667264.18308285
[140961664.18440723, 140973090.5844069, 140984516.98440656]
[1]+  Stopped                 python cassini-3.py
(base) Samuels-Mac-Pro:Cassini_Example user$
Why am I getting this, and how do I fix it?
Sam Dupree.
cassini-3.py.txt

Sam, My guess is that you are a beginner python user and you do not have matplotlib installed but without more information to work on it is hard to help you out.
I would recommend that you run the steps one at a time in the python interpreter instead of just running the script to help you sort out your issues. This can be done by copying and pasting the lines one at a time into the interpreter.

Andrew,
Thank you for responding to my message so quickly. The problem wasn't
with matplotlib. It was installed and had it not been, I would have
gotten an error message due to the import statement
                import matplotlib.pyplot as plt

In systematically commenting out the help(spice.spkpos) I observed that
the example successfully runs - see the attached files to this note.
I'm using an Anaconda distribution where SpiceyPy ver. 2.2.0 installed
using pip.
Please advise.
Sam Dupree.
On March/19/2019 09:41:14, Andrew Annex wrote:

Sam, My guess is that you are a beginner python user and you do not
have matplotlib installed but without more information to work on it
is hard to help you out.
I would recommend that you run the steps one at a time in the python
interpreter instead of just running the script to help you sort out
your issues. This can be done by copying and pasting the lines one at
a time into the interpreter.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/AndrewAnnex/SpiceyPy/issues/289#issuecomment-474374796,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AEjt966ZIzoubphSuicZvKi_8yenlBqmks5vYOj6gaJpZM4b7Ps3.

#!/Users/user/anaconda3/bin/pythonw
import numpy as np
import matplotlib.pyplot as plt
from mpl_toolkits.mplot3d import Axes3D
import spiceypy as spice
Print out the toolkit version
print(spice.tkvrsn("TOOLKIT"))
The meta kernel file contains entries pointing to the following SPICE kernels, which the user needs to download.
https://naif.jpl.nasa.gov/pub/naif/generic_kernels/lsk/a_old_versions/naif0009.tls
https://naif.jpl.nasa.gov/pub/naif/CASSINI/kernels/sclk/cas00084.tsc
https://naif.jpl.nasa.gov/pub/naif/CASSINI/kernels/pck/cpck05Mar2004.tpc
https://naif.jpl.nasa.gov/pub/naif/CASSINI/kernels/fk/release.11/cas_v37.tf
https://naif.jpl.nasa.gov/pub/naif/CASSINI/kernels/ck/04135_04171pc_psiv2.bc
https://naif.jpl.nasa.gov/pub/naif/CASSINI/kernels/spk/030201AP_SK_SM546_T45.bsp
https://naif.jpl.nasa.gov/pub/naif/CASSINI/kernels/ik/release.11/cas_iss_v09.ti
https://naif.jpl.nasa.gov/pub/naif/CASSINI/kernels/spk/020514_SE_SAT105.bsp
https://naif.jpl.nasa.gov/pub/naif/CASSINI/kernels/spk/981005_PLTEPH-DE405S.bsp

The following is the contents of a metakernel that was saved with
the name 'cassMetaK.txt'.
\begindata
KERNELS_TO_LOAD=(
'naif0009.tls',
'cas00084.tsc',
'cpck05Mar2004.tpc',
'020514_SE_SAT105.bsp',
'981005_PLTEPH-DE405S.bsp',
'030201AP_SK_SM546_T45.bsp',
'04135_04171pc_psiv2.bc',
'cas_v37.tf',
'cas_iss_v09.ti')
\begintext

spice.furnsh("./cassMetaK.txt")
step = 4000
we are going to get positions between these two dates
utc = ['Jun 20, 2004', 'Dec 1, 2005']
get et values one and two, we could vectorize str2et
etOne = spice.str2et(utc[0])
etTwo = spice.str2et(utc[1])
print("ET One: {}, ET Two: {}".format(etOne, etTwo))
get times
times = [x*(etTwo-etOne)/step + etOne for x in range(step)]
check first few times:
print(times[0:3])
check the documentation on spkpos before continueing
help(spice.spkpos)
#Run spkpos as a vectorized function
positions, lightTimes = spice.spkpos('Cassini', times, 'J2000', 'NONE', 'SATURN BARYCENTER')
Positions is a 3xN vector of XYZ positions
print("Positions: ")
print(positions[0])
Light times is a N vector of time
print("Light Times: ")
print(lightTimes[0])
Clean up the kernels
spice.kclear()
fig = plt.figure(figsize=(9, 9))
ax = fig.add_subplot(111, projection='3d')
xyz_pos = np.vstack( positions)
ax.plot( xyz_pos[:,0], xyz_pos[:,1], xyz_pos[:,2] )
plt.title('SpiceyPy Cassini Position Example from Jun 20, 2004 to Dec 1, 2005')
plt.show()
#!/Users/user/anaconda3/bin/pythonw
import numpy as np
import matplotlib.pyplot as plt
from mpl_toolkits.mplot3d import Axes3D
import spiceypy as spice
Print out the toolkit version
print(spice.tkvrsn("TOOLKIT"))
The meta kernel file contains entries pointing to the following SPICE kernels, which the user needs to download.
https://naif.jpl.nasa.gov/pub/naif/generic_kernels/lsk/a_old_versions/naif0009.tls
https://naif.jpl.nasa.gov/pub/naif/CASSINI/kernels/sclk/cas00084.tsc
https://naif.jpl.nasa.gov/pub/naif/CASSINI/kernels/pck/cpck05Mar2004.tpc
https://naif.jpl.nasa.gov/pub/naif/CASSINI/kernels/fk/release.11/cas_v37.tf
https://naif.jpl.nasa.gov/pub/naif/CASSINI/kernels/ck/04135_04171pc_psiv2.bc
https://naif.jpl.nasa.gov/pub/naif/CASSINI/kernels/spk/030201AP_SK_SM546_T45.bsp
https://naif.jpl.nasa.gov/pub/naif/CASSINI/kernels/ik/release.11/cas_iss_v09.ti
https://naif.jpl.nasa.gov/pub/naif/CASSINI/kernels/spk/020514_SE_SAT105.bsp
https://naif.jpl.nasa.gov/pub/naif/CASSINI/kernels/spk/981005_PLTEPH-DE405S.bsp

The following is the contents of a metakernel that was saved with
the name 'cassMetaK.txt'.
\begindata
KERNELS_TO_LOAD=(
'naif0009.tls',
'cas00084.tsc',
'cpck05Mar2004.tpc',
'020514_SE_SAT105.bsp',
'981005_PLTEPH-DE405S.bsp',
'030201AP_SK_SM546_T45.bsp',
'04135_04171pc_psiv2.bc',
'cas_v37.tf',
'cas_iss_v09.ti')
\begintext

spice.furnsh("./cassMetaK.txt")
step = 4000
we are going to get positions between these two dates
utc = ['Jun 20, 2004', 'Dec 1, 2005']
get et values one and two, we could vectorize str2et
etOne = spice.str2et(utc[0])
etTwo = spice.str2et(utc[1])
print("ET One: {}, ET Two: {}".format(etOne, etTwo))
get times
times = [x*(etTwo-etOne)/step + etOne for x in range(step)]
check first few times:
print(times[0:3])
check the documentation on spkpos before continueing
#help(spice.spkpos)
#Run spkpos as a vectorized function
positions, lightTimes = spice.spkpos('Cassini', times, 'J2000', 'NONE', 'SATURN BARYCENTER')
Positions is a 3xN vector of XYZ positions
print("Positions: ")
print(positions[0])
Light times is a N vector of time
print("Light Times: ")
print(lightTimes[0])
Clean up the kernels
#spice.kclear()
fig = plt.figure(figsize=(9, 9))
ax = fig.add_subplot(111, projection='3d')
xyz_pos = np.vstack( positions)
ax.plot( xyz_pos[:,0], xyz_pos[:,1], xyz_pos[:,2] )
plt.title('SpiceyPy Cassini Position Example from Jun 20, 2004 to Dec 1, 2005')
plt.show()
#!/Users/user/anaconda3/bin/pythonw
import numpy as np
import matplotlib.pyplot as plt
from mpl_toolkits.mplot3d import Axes3D
import spiceypy as spice
Print out the toolkit version
print(spice.tkvrsn("TOOLKIT"))
The meta kernel file contains entries pointing to the following SPICE kernels, which the user needs to download.
https://naif.jpl.nasa.gov/pub/naif/generic_kernels/lsk/a_old_versions/naif0009.tls
https://naif.jpl.nasa.gov/pub/naif/CASSINI/kernels/sclk/cas00084.tsc
https://naif.jpl.nasa.gov/pub/naif/CASSINI/kernels/pck/cpck05Mar2004.tpc
https://naif.jpl.nasa.gov/pub/naif/CASSINI/kernels/fk/release.11/cas_v37.tf
https://naif.jpl.nasa.gov/pub/naif/CASSINI/kernels/ck/04135_04171pc_psiv2.bc
https://naif.jpl.nasa.gov/pub/naif/CASSINI/kernels/spk/030201AP_SK_SM546_T45.bsp
https://naif.jpl.nasa.gov/pub/naif/CASSINI/kernels/ik/release.11/cas_iss_v09.ti
https://naif.jpl.nasa.gov/pub/naif/CASSINI/kernels/spk/020514_SE_SAT105.bsp
https://naif.jpl.nasa.gov/pub/naif/CASSINI/kernels/spk/981005_PLTEPH-DE405S.bsp

The following is the contents of a metakernel that was saved with
the name 'cassMetaK.txt'.
\begindata
KERNELS_TO_LOAD=(
'naif0009.tls',
'cas00084.tsc',
'cpck05Mar2004.tpc',
'020514_SE_SAT105.bsp',
'981005_PLTEPH-DE405S.bsp',
'030201AP_SK_SM546_T45.bsp',
'04135_04171pc_psiv2.bc',
'cas_v37.tf',
'cas_iss_v09.ti')
\begintext

spice.furnsh("./cassMetaK.txt")
step = 4000
we are going to get positions between these two dates
utc = ['Jun 20, 2004', 'Dec 1, 2005']
get et values one and two, we could vectorize str2et
etOne = spice.str2et(utc[0])
etTwo = spice.str2et(utc[1])
print("ET One: {}, ET Two: {}".format(etOne, etTwo))
get times
times = [x*(etTwo-etOne)/step + etOne for x in range(step)]
check first few times:
print(times[0:3])
check the documentation on spkpos before continueing
help(spice.spkpos)
#Run spkpos as a vectorized function
positions, lightTimes = spice.spkpos('Cassini', times, 'J2000', 'NONE', 'SATURN BARYCENTER')
Positions is a 3xN vector of XYZ positions
print("Positions: ")
print(positions[0])
Light times is a N vector of time
print("Light Times: ")
print(lightTimes[0])
Clean up the kernels
#spice.kclear()
fig = plt.figure(figsize=(9, 9))
ax = fig.add_subplot(111, projection='3d')
xyz_pos = np.vstack( positions)
ax.plot( xyz_pos[:,0], xyz_pos[:,1], xyz_pos[:,2] )
plt.title('SpiceyPy Cassini Position Example from Jun 20, 2004 to Dec 1, 2005')
plt.show()
#!/Users/user/anaconda3/bin/pythonw
import numpy as np
import matplotlib.pyplot as plt
from mpl_toolkits.mplot3d import Axes3D
import spiceypy as spice
Print out the toolkit version
print(spice.tkvrsn("TOOLKIT"))
The meta kernel file contains entries pointing to the following SPICE kernels, which the user needs to download.
https://naif.jpl.nasa.gov/pub/naif/generic_kernels/lsk/a_old_versions/naif0009.tls
https://naif.jpl.nasa.gov/pub/naif/CASSINI/kernels/sclk/cas00084.tsc
https://naif.jpl.nasa.gov/pub/naif/CASSINI/kernels/pck/cpck05Mar2004.tpc
https://naif.jpl.nasa.gov/pub/naif/CASSINI/kernels/fk/release.11/cas_v37.tf
https://naif.jpl.nasa.gov/pub/naif/CASSINI/kernels/ck/04135_04171pc_psiv2.bc
https://naif.jpl.nasa.gov/pub/naif/CASSINI/kernels/spk/030201AP_SK_SM546_T45.bsp
https://naif.jpl.nasa.gov/pub/naif/CASSINI/kernels/ik/release.11/cas_iss_v09.ti
https://naif.jpl.nasa.gov/pub/naif/CASSINI/kernels/spk/020514_SE_SAT105.bsp
https://naif.jpl.nasa.gov/pub/naif/CASSINI/kernels/spk/981005_PLTEPH-DE405S.bsp

The following is the contents of a metakernel that was saved with
the name 'cassMetaK.txt'.
\begindata
KERNELS_TO_LOAD=(
'naif0009.tls',
'cas00084.tsc',
'cpck05Mar2004.tpc',
'020514_SE_SAT105.bsp',
'981005_PLTEPH-DE405S.bsp',
'030201AP_SK_SM546_T45.bsp',
'04135_04171pc_psiv2.bc',
'cas_v37.tf',
'cas_iss_v09.ti')
\begintext

spice.furnsh("./cassMetaK.txt")
step = 4000
we are going to get positions between these two dates
utc = ['Jun 20, 2004', 'Dec 1, 2005']
get et values one and two, we could vectorize str2et
etOne = spice.str2et(utc[0])
etTwo = spice.str2et(utc[1])
print("ET One: {}, ET Two: {}".format(etOne, etTwo))
get times
times = [x*(etTwo-etOne)/step + etOne for x in range(step)]
check first few times:
print(times[0:3])
check the documentation on spkpos before continueing
#help(spice.spkpos)
#Run spkpos as a vectorized function
positions, lightTimes = spice.spkpos('Cassini', times, 'J2000', 'NONE', 'SATURN BARYCENTER')
Positions is a 3xN vector of XYZ positions
print("Positions: ")
print(positions[0])
Light times is a N vector of time
print("Light Times: ")
print(lightTimes[0])
Clean up the kernels
spice.kclear()
fig = plt.figure(figsize=(9, 9))
ax = fig.add_subplot(111, projection='3d')
xyz_pos = np.vstack( positions)
ax.plot( xyz_pos[:,0], xyz_pos[:,1], xyz_pos[:,2] )
plt.title('SpiceyPy Cassini Position Example from Jun 20, 2004 to Dec 1, 2005')
plt.show()

@OrbitalMechanic It looks like you solved the issue yourself, the example code was only provided as a tutorial (ie, step by step) and was not intended to be run directly as a script. I am closing this issue but if you have additional questions you can reopen this issue or open a new issue.

 It was executing this
statement that caused Cassini_Example to hang. Any suggestions on this
point?
On March/21/2019 10:17:58, Andrew Annex wrote:

@OrbitalMechanic https://github.com/OrbitalMechanic It looks like
you solved the issue yourself, the example code was only provided as a
tutorial (ie, step by step) and was not intended to be run directly as
a script. I am closing this issue but if you have additional questions
you can reopen this issue or open a new issue.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/AndrewAnnex/SpiceyPy/issues/289#issuecomment-475246979,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AEjt94FHU3BbtI593AdbmkveS3bjEPadks5vY5SWgaJpZM4b7Ps3.

@OrbitalMechanic The help() function pulls up a documentation page that is waiting for you to exit it. It's not intended to be run in a script because it causes the script to "pause"
It doesn't do anything functional, so if you really want to run this as a script, you can safely comment it out without any adverse effects.

The problem I'm experiencing with the help() function did not happen
with the previous version of spiceypy. Furthermore, when I run the
example in Spyder, the example successfully runs without having to
comment out the help() function statement and without having to do a
ctrl z to terminate execution of the script.
Therefore, if commenting out the help() function statement in the script
to make it run, then why did the original script have the help()
function statement not commented out, and why does it run correctly in
Spyder and not directly in the interpreter?
Sam Dupree.
On March/22/2019 02:24:43, Jesse Mapel wrote:

@OrbitalMechanic https://github.com/OrbitalMechanic The |help()|
function pulls up a documentation page that is waiting for you to exit
it. It's not intended to be run in a script because it causes the
script to "pause"
It doesn't do anything functional, so if you really want to run this
as a script, you can safely comment it out without any adverse effects.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/AndrewAnnex/SpiceyPy/issues/289#issuecomment-475507992,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AEjt9yHe3c-N8RhBIr0lnY52RwI2hHUMks5vZHcrgaJpZM4b7Ps3.

@OrbitalMechanic
The original script is a example script from the documentation and was intended to be run step-by-step in the interpreter as a tutorial and not as a python script as I said earlier. The help function is in the tutorial to demonstrate the documentation that is shown to the user.
In short this isn't a problem. Spyder likely has documentation to answer that other question about it's specific behavior so I can't speak to that.
This issue will remain closed as it is now solved.


Support ID export of each tweet

It'd be great to export the ID of each tweet as well.
It's accessible here:

and

Humm yeah, it will be nice, thanks for contact me. I am going to do this right now.

it'd be awesome if you could separate the mentioned users from the core tweet to a separate tab.

@Jefferson-Henrique it'd fork, write, and pull request it myself but I was short on time. Read your code, nice job. Looking forward.

Hello @oxygala and @apas, thanks again for your comments, I have just updated the code, now there is four new attributes: mentions, hashtags, id, permalink.

Thanks @Jefferson-Henrique -- btw, check your mail.


Missing parametrized status code

Hi,
I have a problem using the library, when trying to parametrize the status
return self.build_response(JsonResponse(data), status=400)
I have found that the next line is not using self.status to build the response, instead it is always using OK
https://github.com/toastdriven/restless/blob/master/restless/resources.py#L298
can you change it? Or are you accepting pull requests?
Bye,
thanks for the lib

The status was used in the right way but the status message was kind of a lie :)
This should be fixed in the next release. Thanks for the report!


refactor: flush when device que is empty

Codecov Report

Merging #198 into develop will decrease coverage by 4.39%.
The diff coverage is n/a.

@@             Coverage Diff             @@
##           develop     #198      +/-   ##
===========================================
- Coverage    70.66%   66.27%   -4.40%
===========================================
  Files          203      203
  Lines        10964    10964
===========================================
- Hits          7748     7266     -482
- Misses        3216     3698     +482

Impacted Files
Coverage Δ

framework/tests/dataSource/ipList.h
0.00% <0.00%> (-100.00%)
:arrow_down:

framework/tests/demuxer/demuxerUnitTest.cpp
0.00% <0.00%> (-100.00%)
:arrow_down:

framework/tests/decoder/decoderUnitTest.cpp
0.00% <0.00%> (-93.62%)
:arrow_down:

framework/tests/dataSource/dataSourceUnitTest.cpp
0.00% <0.00%> (-93.39%)
:arrow_down:

framework/tests/demuxer/demuxerUtils.cpp
0.00% <0.00%> (-76.00%)
:arrow_down:

framework/data_source/ffmpeg_data_source.cpp
8.10% <0.00%> (-56.76%)
:arrow_down:

framework/demuxer/AVBSF.cpp
25.27% <0.00%> (-42.86%)
:arrow_down:

framework/data_source/curl/CURLShareInstance.cpp
69.44% <0.00%> (-27.78%)
:arrow_down:

framework/data_source/curl/CURLConnection.cpp
63.90% <0.00%> (-11.54%)
:arrow_down:

framework/data_source/IDataSource.h
90.00% <0.00%> (-10.00%)
:arrow_down:

... and 17 more

Continue to review full report at Codecov.

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


Android 6 version, route jump page is not updated

Android 6 version, route jump page is not updated

Callback function of animateend method in Android 6 is not executed

Your issue is closed because it is not filled correctly. Before you open an issue please review the contributing guideline.
Please fill the issue template correctly and:

Clearly describe the issue including steps to reproduce when it is a bug.
Make sure you fill in the earliest version that you know has the issue.
Provide live link or JSFiddle/Codepen or website with isssue

It will save a lot of time for other contributors to check your issue and fix it.


feature: polaris fsspec basic read only implementation

Changelogs
Integrated a read-only version of Hadrien's POC for the Polaris FSSpec. Some of the major changes include:

Added a new endpoint in the client to be able to read the zarr file of a dataset.
Added a new submodule in the hub folder, polarisfs.py which contains the FSSpec.
For read-only implementation, the FSSpec currently supports the ls and cat_file operations.

More details of the FSSpec Implementation:

The ls function makes a GET request to the Hub's api storage ls endpoint which returns an array of dictionaries, containing the files and directories within a given path in the Cloudflare R2 bucket.
In the ls function, the prefix is required to be removed from each entry as the path provided to the Zarr store contains only the {path}/..., and not the dataset/{owner}/{name}/{path}...
The cat_file makes a GET request to the Hub's api storage endpoint to obtain a signed URL for a given path and follows the redirect to obtain the contents of the file.
The cat_file needed to have an specified timeout to avoid ending prematurely for larger sized zarr files

Checklist:

[x] Was this PR discussed in an issue? It is recommended to first discuss a new feature into a GitHub issue before opening a PR.
[x] Add tests to cover the fixed bug(s) or the newly introduced feature(s) (if appropriate).
[x] Update the API documentation if a new function is added, or an existing one is deleted.
[x] Write concise and explanatory changelogs above.
[x] If possible, assign one of the following labels to the PR: feature, fix or test (or ask a maintainer to do it for you).

Linked to: https://github.com/polaris-hub/polaris-hub/pull/276

Great work, @lmtroper !


How are you cancelling pending requests during typing?

Looking at the sample at https://esri.github.io/esri-leaflet/examples/geocoding-control.html with the debugger open, I can see that as the user keeps typing in the search box, the pending requests are cancelled and only the final request (once they stop typing) actually executes.
How is this handled? I'm executing the geocoding request outside of the map frame (rather than using your tool), hence I'm calling the requests manually using the L.esri.Geocoding.geocode() function and I'd like to emulate the "cancel pending requests" functionality.
Thanks

we create an array of pendingSuggestions and loop through them and call abort() each time another key is pressed.
relevant logic:
https://github.com/Esri/esri-leaflet-geocoder/blob/master/src/Controls/Geosearch.js#L314-L319
https://github.com/Esri/esri-leaflet-geocoder/blob/master/src/Classes/GeosearchCore.js#L116-L117


Feature: Improve Schedule new Job popup view

We can update the Schedule new Job section with the following improvements.

New section for scheduled jobs
New section for file upload URLs
New design for corn schedule jobs

@sajithaliyanage I like to work on this issue

@sajithaliyanage what kind of improvements are you expecting ? Also what is the meaning of this "New design for corn schedule jobs" ?

@ffalpha simple UI design to schedule jobs.


When do you plan to release recognition models?

Hey, your work is commendable, I wanted to know do you plan to release recognition models? I will looking forward to using product recognition model.

Hi，you can use PP-ShiTuV2  model to do product recognition task.


data file has no file named 'train.bert.de'

🐛 Bug

Run
cd examples/translation/
bash prepare-iwslt14.sh
cd ../..

Binarize the dataset:
$ TEXT=examples/translation/iwslt14.tokenized.de-en
$ fairseq-preprocess --source-lang de --target-lang en
--trainpref $TEXT/train --validpref $TEXT/valid --testpref $TEXT/test
--destdir data-bin/iwslt14.tokenized.de-en
2. See error
fairseq/binarizer.py", line 73, in find_offsets
with open(filename, 'r', encoding='utf-8') as f:
FileNotFoundError: [Errno 2] No such file or directory: 'examples/translation/iwslt14.tokenized.de-en/train.bert.de'
Expected behavior
my train and test data file has no file named 'train.bert.de'
Environment

fairseq Version (master):
PyTorch Version (1.0.0)
OS (Linux):
How you installed fairseq (pip, source):
Build command you used (if compiling from source):
Python version:  (3.6)
CUDA/cuDNN version: V9.2.148

I'm unable to reproduce this error.  What commit are you on in fairesq?  Also can you provide the full traceback instead of just the last line of the error.

Closing due to inactivity.


Please check ser

figuring to contribute

figuring to contribute

@myself-vishal Thanks for contributing , try to use proper commit message and PR title


Add my thoughts.

Hope this is ok/interesting/not too rambly. Feel free to edit or tell me to edit.

Looks good to me! I'll add your name and twitter handle at the end, thanks for adding to this!


Unable to visualize data

When starting out, I was able to visualize data from csv files easily. The second time I opened a csv using the extension, no visual graphs could be seen. I've tried reinstalling the extension but nothing changes. The screenshot uploaded shows the output of Treemap charts. The other chart types fail to show as well. How do I fix this?

Looks like you've hit a bug. Can you try loading this same data into our web app, open the JavaScript console and see if there are any errors?

@danmarshall Loading the data with the web app works

Can you provide a data sample which repros the error?


remember cookie is always set to be forgotten on auth logout

My app doesnt use auth remember tokens or cookies. My app is an API that uses JSON tokens for auth. Everything functionality works fine... However when Auth::logout() is called the Guard class is setting the remember cookie to be forgotten. As I was developing an API client this seemed very strange to me. This cookie should only be set to be forgotten if it was set in the request.
Example of the API logout (which blacklists the token); you can see the Set-Cookie in the HTTP response.

I dont feel comfortable submitting a pull request for this as I wouldnt want to cause any unforeseen issues. My suggestion is that the call to queue the cookie on line 576 of laravel/framework/src/Illuminate/Auth/Guard.php should be wrapped with a check for the remember cookie on the request.

As a workaround you can remove AddQueuedCookiesToResponse from the global middleware and add it to the specific route middleware. I still think this is a bug as it shouldnt try to forget a cookie that never existed.

I think this is the intended behaviour.

I still think this is a bug as it shouldnt try to forget a cookie that never existed.

Oh, yeh.

That part's a bug. Sorry. Didn't read this properly. :)

Looks like this was fixed. Thanks for the report.


[Bug]: Display of all images makes the app sluggish, leads to crashes

Summary
Display of all images makes the app sluggish, leads to crashes
Steps to reproduce
In the current version, all images ever searched for are displayed. In areas where there are only a few objects, this is okay. In areas with hundreds of images, it takes an unbearably long time until all images are no longer “black”. Sometimes the app even crashes. In my opinion, as in the past, only the objects that are still being searched for should be displayed. Or zoom in more from the start. Another solution for me would be if objects for which there are images were only offered optionally (via “Settings”).
Expected behaviour
Display only the images you are looking for (display all images only as an option.)
Actual behaviour
Displaying all images makes the app sluggish and leads to crashes
https://commons.wikimedia.org/wiki/Commons:Mobile_app/Feedback#Feedback_from_Molgreen_for_version_5.1.0~707997bd1_on_2024/11/15_05:18:20
Device name
Google Pixel 7Pro
Android version
15
Commons app version
5.1.0~707997bd1
Device logs
No response
Screen-shots
https://commons.wikimedia.org/wiki/File:20241115_xl_0615-Commons-App-Screenshot_bitte_nur_gesuchte_Bilder_anzeigen_5.1.0~707997bd1.png
https://commons.wikimedia.org/wiki/File:20241115_xl_0615-Commons-App-Screenshot_bitte_nur_gesuchte_Bilder_anzeigen_5.1.0~707997bd1_2.png
Would you like to work on the issue?
None

I experience this too.
We should start Nearby at a higher zoom level (in other words: show a smaller geographical area). People in countryside can then unzoom.


studi-list/main.c returning pointer to local stack variable (segvault)

Variable s created locally (in line 37) [-Wreturn-stack-address].
student* inputStudent(){
    char tmpnum[50];
    student s;

and returned pointer to local variable (change to heap allocation):
student* inputStudent(){
    char tmpnum[50];
    student *s = (student*) malloc(sizeof(student));

If you malloc() a new pointer, does that mean it is not stored on the functions stack?
That would be helpful for the implementation for linked lists aswell.
Will fix.

function such as malloc() or calloc() generally request the OS to give a process some memory from the heap. This happens dynamically. Stack allocations in C require the compiler to know the exact size at compilation time (although dynamic stack allocation are possible to do but not easy to do because it could invalidate the content of registers rsp or even rip and thus crash the program). Also the stack can only grow or shrink at the top. not inbetween. meaning realloc() wouldn't work on the stack cuz of its static and strict layout nature.

I'm working on it. Created a new branch


"[ERROR gfx_backend_metal::device] platform does not support specialization" on OS X v10.11 El Capitan

Short info header:

GFX version: cloned git repo on 2020-07-16 (using commit c8cce08ea21450543f096109e7281b89b49b0814)
OS: OS X v10.11.6 El Capitan
GPU: Intel HD Graphics 4000
Computer: Mac mini (Late 2012)

When running the quad example, I get the following output:
$ cargo run --bin quad --features metal
    Finished dev [unoptimized + debuginfo] target(s) in 1.07s
     Running `/Users/username/rust_stuff/gfx/target/debug/quad`
AdapterInfo { name: "Intel HD Graphics 4000", vendor: 0, device: 0, device_type: IntegratedGpu }
Memory types: [MemoryType { properties: DEVICE_LOCAL, heap_index: 0 }, MemoryType { properties: CPU_VISIBLE | COHERENT, heap_index: 1 }, MemoryType { properties: DEVICE_LOCAL | CPU_VISIBLE, heap_index: 1 }, MemoryType { properties: DEVICE_LOCAL | CPU_VISIBLE | CPU_CACHED, heap_index: 1 }]
formats: Some([Bgra8Unorm, Bgra8Srgb, Rgba16Sfloat])
SwapchainConfig { present_mode: FIFO, composite_alpha_mode: OPAQUE, format: Bgra8Srgb, extent: Extent2D { width: 1024, height: 768 }, image_count: 3, image_layers: 1, image_usage: COLOR_ATTACHMENT }
[2020-07-16T05:29:37Z ERROR gfx_backend_metal::device] platform does not support specialization

along with the following window:

(and looks like this on a display using a HiDPI resolution):

The output window looks fine, but the [2020-07-16T05:29:37Z ERROR gfx_backend_metal::device] platform does not support specialization error worries me. Would that error be related to me using OS X v10.11 El Capitan (the very first version of macOS to support Metal, and thus is using Metal 1)?

Hi! 👋
You're correct that the error is related to OS version – currently we use MTLFunctionConstant (available in macOS versions  >= 10.12) to implement specialization constants on Metal. If MTLFunctionConstant, we fallback to a default value instead of the specialization constant value, so the examples should still run fine (e.g. you'll probably get 1.2 as the scale in the shader instead of 0.8).
However, if you would like to be able to use specialization constants 10.11, we could implement a fallback path that doesn't use MTLFunctionConstant (e.g. replacing the constant and recompiling the full shader, or passing the value of the specialization constant to the shader through a temporary buffer). We just haven't added this fallback path yet but it should be possible.


Add CheckedRem and CheckedNeg

Continue form #56
Add CheckedRem and CheckedNeg traits
I've only changed /src/ops/checked.rs, other changes are came from rustfmt.

I would rather not have formatting mixed in the PR. Can you please update this with your change alone?

@cuviper
Sorry for that, I will update this untill this Friday I come back home.

@cuviper
So, would you mind add 93 to 136 by yourself?
Thank you!


Nodenames for RKE2 provision on AWS - not matched on AWS provider

Not sure if this should logged at dashboard level. Please advise otherwise .
Poolnames used in provisioning dont match nodenames on aws provider.
See attached.
rke2_on_aws.docx
.. but for rke1 on aws ,  nodenames are fine

Hi @claudioser ! The Machine Pool table shows machine resources (cluster.x-k8s.io.machine). These are an abstraction of the actual node that gets created. It looks like that name is available under spec.infrastructureRef.name. I'll need to check with the team if this is generic enough for all providers to be able to add to the table, but it would make sense to do so if true.

The plan is to update the name of the machine pool (cluster.x-k8s.io.machine nameDisplay) given status.addresses.<hostname> (falling back on normal naming process as usual).
For the same table but non-RKE2 clusters the management.cattle.io.node nameDisplay should also be updated in a similar way. Think this might be status.nodeName. From ember (norman node) it looks like there was some interesting ways to fall back on - see /app/models/node.js displayName & parseNodeName. Should check those and see if any are relevant to the management node type


first try

Description
Please include a concise summary, in clear English, of the changes in this pull request. If it closes an issue, please
mention it here.
Closes: #721
🎯 PRs Should Target Issues
Before your create a PR, please check to see if there is an existing issue
for this change. If not, please create an issue before you create this PR, unless the fix is very small.
Not adhering to this guideline will result in the PR being closed.

此pr已经实现了一个不错的效果，不过还需继续优化～


Write Readme/Documentation

Readme should have proper title
Readme should have badges

CI status with link to CI run
Badge with number of issues
npmjs status with link to npmjs

Readme should have overview what this project does
Readme should have installation instructions
Readme should have usage instructions

installation instructions would really help.

I've added a bit more to the readme, hope this helps.


Emaggable protolathe

About the PR

Now you can emag protolathe to get access to craft some things from the armory research tab. However, to get the access to this things, you still need to research the technolgy.
List of protolathe emaggable recipes:
- ExplosivePayload
- WeaponLaserCarbine
- WeaponAdvancedLaser
- WeaponLaserCannon
- WeaponXrayCannon
- WeaponTaser
Media

[x] I have added screenshots/videos to this PR showcasing its changes ingame, or this PR does not require an ingame showcase

sry for shitquality  (of vid and code) :(
https://github.com/space-wizards/space-station-14/assets/140386474/63490cb7-9df8-47a8-adad-cec0fee2025a
Changelog

Syndicate agents has reported that their EMAGs are now able to interact with protolathe, giving the access to some recipes from armory tech tab.
:cl:

add: Added the posibility to be emagged to lathes; added the list of emaggable recipies to protolathe

the CL seems to have logical and grammar mistakes, perhaps making it Lathes can be emagged now; emaggable recipes list has been added for protolathes

could you make the autolathe emaggable and make it dispense ammo?


Fine-grained macaroon for external services

Intro
After the first use of lnd, many node owners discover there need for more common features
like channel-management, backup, monitoring, rebalance and more.
There are view options already out that are fulfilling this common features,
but all of them require self-hosting of there components
and most of the time an admin-macaroon.
Feature Request
The macaroon system could be fine grained to combine them to support multiple external-service providers
and extended with an 2FA system to request permissions from the node operator.
This could be implemented directly in lnd or as a reverse-proxy
that has its own macaroon system to limit the features.
Examples
*) backup service
somebody is hosting a public or private external backup service
that is subscribing to the gRPC backup-events or pulling the backup in intervals.
If the provider of this service is not the same as the node-owner
it does not require a full-readonly-macaroon to the node
https://github.com/lightningnetwork/lnd/issues/4448
*) monitoring service
somebody is hosting a public or private external healthcheck service
A node owner could share it's healthcheck service feature with other node operators.
The healthcheck-operator could request an inbound channel as "payment"
and could notify the node-owner on problems and even unlock the node on user request
when it's restarted  with a unlock-only macaroon or  provide an
Tang Server
*) rebalancing Interface
Loop could provide users it's lightning terminal directly.
It could accept ln-founds or just an inbound channel as payment.
It would need beside a readonly-macaroon an 2FA-macaroon to execute loop-out transfers or channel-closures.
*) identity service
An external service that acts as an agent for the lnd node could request the lnd-node to sign a message
to use as a verification on an webite like https://1ml.com/ (and others) and subscribe and fill out the node profile.

I think https://github.com/lightningnetwork/lnd/pull/4463 makes most of those referenced use cases possible?

@Roasbeef  #4463 looks good for it, but i don't see how it will perform with a macaron that includes half of the rpc-methods.
Maybe  it can be resolved with somekind of custom-permission that groups uri permissions together,
like perm:myGroup (includes uri:/lnrpc.Lightning/GetInfo, uri:...)
The feature for 2FA to allow the node-owner to permit an execution of a critical process
would be essential for many features too. I don't know how it can be archived with only macaroons.
Beside the macaroon permission system,
lnd need to have somekind of possibility of request and sign command-messages.
The flow would be:

External-Service request command-XYZ to be signed
Node-owner gets a permission-notification (phone or somehting else, human readable) and signs it.
LND calls back the external-service with the signed-command-message as payload
External-Service execute/sends the signed-command to the service (back to LND or maybe Loop, ...)

Basically a service with an admin-macaroon need an option to verify a signed message from the node/owner
to allow not only the gRPC method execution but the execution of a single command-message.
The option with an optional/standalone ln-grpc-reverse-proxy that would act as an gateway
for customized macaroon and 2FA authentication should not be dismissed.

I already have an proposal for the signed message problem.
The permission system could be extened with a uri-fragment #signed
A macaroon could then include:
uri:/lnrpc.Lightning/GetInfo
invoices:read
invoices:write#signed

This would mark all grpc-operators that require the "invoices:write" permission to also have
a valid signatur of the command-message.

Possible now with the macaroon bakery.

Possible now with the macaroon bakery.


Response body was inserted a 0x0d before every 0x0a

When using the client example download a picture, I found it's size  larger than server supplies, and cannot be opend. Compare with original picture in binary, I found it was inserted a 0x0d before every 0x0a.
std::string s{ body(res) }
Is my convert incorrect ?

I find the reason. When writing to the file, windows automaticly add the char 0x0d for new line.
Open file in binary mode solve this problem.


Rain duration stuck

Home Assistant Version?
Home Assistant 2023.6.3
Add-On or Self Hosted?
HA Supervised (Add-On)
Weatherflow2MQTT version?
3.1.6
What happened?

As you can see from the pictures there is a discrepancy between the output of the Weatherflow App and the weather flow integration.
I have restarted bits the integration as well as the HA entirely without succes.
Relevant log output
No response

This issue solved itself after 0000 hours or so it seems. I do remember having an sql database update and maybe that caused I glitch in the days performance. It does make my data incorrect though.


Linux ASIO performance regression

https://github.com/ponylang/ponyc/pull/2897 has caused a performance regression in the Linux ASIO subsystem where the ASIO thread now takes significantly more CPU for some work loads (this was discovered as part of some performance tuning/testing work done by the folks at Wallaroo Labs about a month and a half ago but was unfortunately not tracked appropriately). A quick fix would be to revert that change but that would re-open the original issue that PR was supposed to resolve. A more appropriate solution would be to fix whatever I broke in terms of performance without undoing the bug fix (unfortunately I will not be able to dig into this for now).
cc: @SeanTAllen @aturley

Update. This impacts on "less high workloads" as well.


Multiple server completion support

Working mult server compl
Removed time measure prop
Tweaked LspResolver to be server id dependent
Fixed text complete server dependent
Reset tests

Purpose: Volar 2 support
Note, should propbably be tested by more people before being merged to main!
Config
{
      "name": "vue-ls",
      "filetype": ["vue"],
      "path": "vue-language-server",
      "args": ["--stdio"],
      "features": {
        "definition": true,
        "rename": true
      },
      "initializationOptions": {
          "typescript": {
              "tsdk": "../node/v20.11.0/lib/node_modules/typescript/lib"
          }
      },
    },
    {
      "name": "ts-ls",
      "filetype": ["typescript", "javascript", "vue"],
      "path": "typescript-language-server",
      "args": ["--stdio"],
      "features": {
        "documentFormatting": false,
        "definition": true,
        "rename": true
      },
      "initializationOptions": {
          "plugins":[
            {
              "name": "@vue/typescript-plugin",
              "location":".../node/v20.11.0/lib/node_modules/@vue/typescript-plugin",
              "languages": ["vue"]
            }
          ]
      }
   }

Status:

[x] completions

[x] auto imports

[x] diagnostics
[ ] definitions (working in some cases, but not all)
[ ] references

I noticed need for cleanup, will update soon.

https://github.com/vuejs/language-tools/issues/3925#issuecomment-2011023845 Volar now does not need tsserver running in parallel. Parking this pr until future need.


projection head

The paper says "we discard Proj(·) at the end of contrastive training."
However, based on the code and the commands you have provided to reproduce the results, it seems like the projection head is not discarded in stage 2, but rather loaded in here. Is that correct, or am I missing something?
Thank you very much for making this work open source!

Hi, @arjung128,
I loaded the weights of projection head, but actually did not use it. See here.


Open the protected Config methods

Hello,
The methods https://github.com/redisson/redisson/blob/master/redisson/src/main/java/org/redisson/config/Config.java#L302 and https://github.com/redisson/redisson/blob/master/redisson/src/main/java/org/redisson/config/Config.java#L222 are protected and therefore we can't customise them from a RedissonAutoConfigurationCustomizer class.
Would it be possible to change its visibility to be public?
Thanks

They should remain protected.


add agent resources applier.

followup PR for: https://github.com/stolostron/hub-of-hubs/pull/91
Signed-off-by: morvencao<EMAIL_ADDRESS>

closing this in favor of https://github.com/stolostron/hub-cluster-controller/pull/15


Scale bar shows up as "0 m" for the newly uploaded trajectories

Description
For the 3 newly uploaded trajectories (all but endocytosis and covid), when you load them up the scale bar says "0 m" although when loaded via drag-and-drop the scale bar seems to show the correct length.
Expected Behavior
The scale bar should show the same length when a trajectory is streamed as when it's loaded via drag and drop.
Reproduction

Go to staging and load "Membrane Wrapping a Nanoparticle" for example
See that even after the trajectory finishes loading, the scale bar is at 0 m

Notes
When I quickly inspected the trajectoryFileInfo that came into simularium-website, I saw that the spatial units values came in with 0 for magnitude and "m" for length? Might be something going astray with the file conversion in the viewer.

Strange but maybe enlightening observation:

I added nanoparticle_wrapping.simularium to my local viewer testbed dropdown to stream it
I logged the msg (trajectoryFileInfo) at this point in RemoteSimulator.onMessage (before we do anything with the message received):

Notice that the above has a version of 1 and a spatialUnitFactorMeters.  This is strange because when I download the file from AWS and look at the file contents or when I drag-and-drop it to the viewer and inspect the trajectoryFileInfo, it has a version of 2 and spatialUnits: {magnitude: 10, name: "nm"} instead of spatialUnitFactorMeters (and displays the scale bar correctly in the UI).

Based on this, @EricJIsaac do you think this issue might belong in simularium-engine?
FYI @blairlyons


fix(versions): update Activiti/activiti-cloud-runtime-bundle-service versions into develop

UpdateBot pushed maven dependency: org.activiti.dependencies:activiti-dependencies to: 7.1.101

UpdateBot commands:
updatebot push-version --kind maven org.activiti.dependencies:activiti-dependencies 7.1.101 org.activiti.api:activiti-api-dependencies 7.1.50 org.activiti.core.common:activiti-core-common-dependencies 7.1.57 org.activiti.build:activiti-parent 7.1.28


Add Required parameter to flag structs

This change add a 'Required' boolean variable to all Flag structs.
When this parameter is set to true while defining flags in the app/context then cli will return an error if user didn't provide such flag in command line parameters.
Unit test included.

I just read issue #85 , closing this request as it breaks Flags interface.


'NSBaselineOffsetAttributeName' has been renamed to 'NSAttributedStringKey.baselineOffset'

Pull request #40

@gregpardo Thanks for the pull request! Given that it was merged and everything seems fine its safe to close this issue.


chore(sample): hide debug panel

GitHub Issue (If applicable): closes #654
PR Type
What kind of change does this PR introduce?

Bugfix

What is the new behavior?
DebugPanel is now hidden by default in DEBUG build, and can be activated by the settings button in the nav-niew.
PR Checklist
Please check if your PR fulfills the following requirements:

[x] Tested code with current supported SDKs
[ ] Docs have been added/updated
[ ] Runtime Tests and/or UI Tests for the changes have been added (for bug fixes / features) (if applicable)
[x] Contains NO breaking changes
[x] Associated with an issue (GitHub or internal)
[x] Commits must be following the Conventional Commits specification.

https://github.com/Mergifyio backport release/stable/3.0

https://github.com/Mergifyio backport legacy/3x