Add the ORTModelForSemanticSegmentation class

What does this PR do?
This PR aims to implement the ORTModelForImageSegmentation class to provide support for image segmentation .onnx models, and full integration of such models through transformers pipelines for CPU or GPU onnxruntime inference (see  Issue #382)
Implementation details
The ORTModelForImageSegmentation was based on the already implemented ORTModelForImageClassification in optimum/onnxruntime/modeling_ort.py with several modifications:

For CPU and GPU inference :

class was added to optimum/onnxruntime/__init__.py
self.forward method returns a SemanticSegmenterOutput instead of ImageClassifierOutput
correct auto_model_class and export_feature referenced
Copied all tests from the ORTModelForImageClassificationIntegrationTest in tests/onnxruntime/test_modeling.py

For GPU inference

logits_shape was changed ORTModelForImageSegmentation.prepare_logits_buffer to return a 4 dimensional tensor shape 2D of shape (input_batch_size, self.config.num_labels, output_height, output_width).
The issue is that I did not find a way to get model output size, which is different from input size from config.json, or any other attribute of ORTModelForImageSegmentation or ORTModelForImageSegmentation.model.

CPU inference works as following:
from optimum.onnxruntime.modeling_ort import ORTModelForImageSegmentation
session = ORTModelForImageSegmentation.load_model(onnx_path)
onnx_model = ORTModelForImageSegmentation(session)
inputs = feature_extractor(pil_image, return_tensors="pt")
outputs = onnx_model(**inputs)

I could not test GPU inference because I could not manage to make onnxruntime-gpu work:
onnx_model.to('cuda:0')
>>>  File "C:\Users\theol\Documents\GitHub\Repositories\optimum\optimum\onnxruntime\modeling_ort.py", line 202, in to
    validate_provider_availability(provider)  # raise error if the provider is not available
>>>  File "C:\Users\theol\Documents\GitHub\Repositories\optimum\optimum\onnxruntime\utils.py", line 227, in validate_provider_availability
    raise ImportError(
>>>ImportError: Asked to use CUDAExecutionProvider, but `onnxruntime-gpu` package was not found. Make sure to install `onnxruntime-gpu` package instead of `onnxruntime`.

Might be because of local venv setup issues on my side.
My CUDA installation is working for transformers with torch models.
Still, it probably would not work properly yet because of the wrong output size in prepare_logits_buffer
Remaining tasks

Fixing proper output size for io binding
Uploading a .onnx segmentation model to https://huggingface.co/hf-internal-testing and modify IMAGE_SEGMENTATION_EXAMPLE checkpoint name and image url to appropriate example. (See two comments at optimum/onnxruntime/modeling_ort.py lines 1463 and 1533)
Modify test class model to a SemanticSegmentation model in order to get working tests

@michaelbenayoun @JingyaHuang your help would be appreciated 👍

The docs for this PR live here. All of your documentation changes will be reflected on that endpoint.

Hi @TheoMrc,
Thanks for opening the PR, it looks great!!
Just some questions for other team members before jumping into a more detailed review:

@michaelbenayoun, why did you suggest ORTModelForImageSegmentation as the class name instead of ORTModelForSemanticSegmentation? I feel that would be better to keep the consistency with AutoModel in transformers. WDYT?
And gently tagging @NielsRogge, for Segformer model, would it be possible to infer the output height and width in logits by the shape of pixel_values and the model's config?

(@TheoMrc for the IOBinding, ONNX Runtime supports binding with OrtValue which doesn't need the exact shape of outputs, check #447. For the moment, Optimum prefers direct binding with a Torch tensor to avoid some potential overhead, let's wait for the insight from Niels and see if it would be necessary to add custom output shape support for IOBinding.)
And for your question on the GPU test, if your CUDA env is correctly set, ensure that you have uninstalled onnxruntime before installing onnxruntime-gpu. More detail here.

I think the class it is supporting is AutoModelForImageSegmentation.

Hi,
We'll deprecate the xxxForImageSegmentation class in Transformers, as we now split them up into xxxForInstanceSegmentation, xxxForSemanticSegmentation and xxxForPanopticSegmentation.
The pipeline however is just called "image segmentation", as it unifies all 3 into a single abstraction.

Thanks for your feedbacks !
@michaelbenayoun

I think the class it is supporting is AutoModelForImageSegmentation.

Actually, last time I tried, loading my segformer with AutoModel only worked with AutoModelForSemanticSegmentation and not with AutoModelForImageSegmentation, don't know how relevant this is. This is why I put AutoModelForSemanticSegmentation as auto_model_class in ORTModelForImageSegmentation.
Should we refactor to ORTModelForSemanticSegmentation ?
Seems weird to me that there are two classes, that are supposed to do the same thing but don't behave the same, maybe XXXForImageSegmentation is for binary outputs ?
Anyway interesting to hear that XXXForImageSegmentation will be deprecated.

Should we refactor to ORTModelForSemanticSegmentation ?

I think yes, to align with Transformers.

Seeing this for the output shape, it seems that the output logits' shape would be (batch_size, config.num_labels, pixel_values.size(2) //4 , pixel_values.size(3) //4), is that so @NielsRogge?

@JingyaHuang
I think that this might be the case for some semantic segmentation models e.g. SegformerForSemanticSegmentation ; but not all segmentation model types loadable with AutoModelForSemanticSegmentation which we aim to support with optimum

Hi @TheoMrc,
I just merged the support for dynamic shape output IOBinding. Can you update the IOBinding part in your PR like the way done in ORTModelForCustomTasks?
https://github.com/huggingface/optimum/blob/8b559db1ac0f2f3cbd7d1451b56f0a4cb5877360/optimum/onnxruntime/modeling_ort.py#L1559
And maybe try to fix the style with
make style

to pass the code quality check, thank you!

Hi @JingyaHuang,
Gonna do it soon. To clarify what I should do, you're asking me to copy-paste all functions linked to io_binding from ORTModelForCustomTasks ?
I'm guessing your IObinding implementation in ORTModelForCustomTasks handles any output shape, so the only difference I can see is outputing the correct SemanticSegmenterOutput.
Shouldn't we just make ORTForSemanticSegmentation inherit from ORTModelForCustomTasks instead of ORTModel ? We should then also add a class attribute which stores in cls.OutputClass = SemanticSegmenterOutput.
Feels a bit redundant to me. Maybe in another PR ?

And maybe try to fix the style with
make style

Not sure how to do, this looks like a linux command (although I couldn't find anything about this)
I'm currently on Windows but have Cygwin64 (so I have the make command), could you provide me with a link towards any documentation ?

Hi @TheoMrc,
It is a great point to avoid copying the method for preparing dynamic shape IOBinding. For structure consistency, what I suggest to do, is to move the prepare_io_binding method to IOBindingHelper instead of inheriting ORTModelForCustomTasks.
I will open a PR now to make the move. And for the styling, alternatively, you pip install black and isort to do the formatting.

Hi @TheoMrc, the move of dynamic IOBinding preparation is moved to the IOBindingHelper now:
https://github.com/huggingface/optimum/blob/d7c8f3d7820960b5dbb8abc178a22c969fe7427b/optimum/onnxruntime/io_binding/io_binding_helper.py#L156
You can use it for the I/O binding of ORTModelForSemanticSegmentation, feel free to ping me if you need help.

Hi again @JingyaHuang !

I merged main and upstream/main branches into my branch to get the changes you made to IOBindingHelper available in this branch.

Then, I basically tried to do the exact same thing you did in the forward method for ORTModelForCustomTasks while outputing SemanticSegmenterOutput(logits=outputs["logits"])

Once again, despite a working CUDA v11.7 env for torch, I did not manage to make onnxruntime-gpu work properly so I could only test inference on CPU as following:
from optimum.onnxruntime.modeling_ort import ORTModelForSemanticSegmentation
from transformers import SegformerFeatureExtractor
from PIL import Image

session = ORTModelForSemanticSegmentation.load_model(onnx_path)
model = ORTModelForSemanticSegmentation(session)
feature_extractor = SegformerFeatureExtractor()

image = Image.open(img_path)
inputs = feature_extractor(image , return_tensors="pt")
out = model(**inputs)

Additional information about GPU ORT not working:
Any model.to('cuda:0') throws error:
..\..\optimum\onnxruntime\modeling_ort.py:243: in to
>>> validate_provider_availability(provider)  # raise error if the provider is not available

E ImportError: Asked to use CUDAExecutionProvider, but `onnxruntime-gpu` package was not found. Make sure to install `onnxruntime-gpu` package instead of `onnxruntime`.

I think this has to do with the fact that I don't have a typical optimum installation but just cloned the branch locally, installed dependencies with pycharm and venv, which do weird stuff from time to time.

Applied black and isort formatting following your advice (thanks for the tip btw, will definetely use in other projects 😀)

Obviously, we should test GPU inference.
I think we should change the SUPPORTED_ARCHITECTURES_WITH_MODEL_ID in ORTModelForSemanticSegmentationIntegrationTest to pass tests in workflows and locally: these tests do not work properly, despite the fact that they work fine for ORTModelForImageClassificationIntegrationTest (see below)
E       ValueError: Unrecognized configuration class <class 'transformers.models.vit.configuration_vit.ViTConfig'> for this kind of AutoModel: AutoModelForSemanticSegmentation.
E       Model type should be one of BeitConfig, Data2VecVisionConfig, DPTConfig, MobileNetV2Config, MobileViTConfig, SegformerConfig.

What do you think is left to do ?

@TheoMrc, thanks for updating the code!
I just tested on my end with the following snippet:
import torch
from transformers import SegformerImageProcessor,  pipeline
from PIL import Image
import requests

from optimum.onnxruntime import ORTModelForSemanticSegmentation

device = torch.device("cuda:0")

image_processor = SegformerImageProcessor.from_pretrained("optimum/segformer-b0-finetuned-ade-512-512")
model = ORTModelForSemanticSegmentation.from_pretrained("optimum/segformer-b0-finetuned-ade-512-512")
model.to(device)

url = "http://images.cocodataset.org/val2017/000000039769.jpg"
image = Image.open(requests.get(url, stream=True).raw)
inputs = image_processor(images=image, return_tensors="pt").to(device)

out = model(**inputs)

pipe = pipeline("image-segmentation", model=model, feature_extractor=image_processor)
pred = pipe(url)

It is working decently both on CPU and on GPU.
For failing tests:

ONNX Runtime tests
You used VIT in the test, however in transformers, VIT doesn't have semantic segmentation model implemented, that's why all tests using AutoModelForSemanticSegmentation failed. I suggest using Segformer instead.
Exporter tests don't seem to be relevant to this PR

Hi @JingyaHuang,
Thanks for the code review !
I believe I did all the requested changes.
It was a bit tricky to understand why tests were still crashing on my end. Turns out there is a pipeline func in optimum as well, that the tests run on a vanilla torch model instead of an ONNX model, that ORTModel can load vanilla torch models, ... 🥲
So, during my investingations, I had to do multiple commits, hope it's okay !
I had to add 'image-segmentation' to the SUPPORTED_TASKS dict in optimum/pipelines.py and change test asserts from outputs[0]['score'] >= 0 check (that was copied from ImageClassification tests) to outputs[0]['mask'] is not None check.
Maybe you will think of a cleaner assertion for image segmentation !
All tests are running smooth locally (appart from the GPU one). Hopefully everything will be good with the next PR run :)
I'm glad I could contribute and learn a bunch of things on the way !
Do not hesitate if you think there's anything else to fix
See you,
Theo

Hi @TheoMrc, thank you for your contribution!
I am running into the same issue when running GPU inference.

ImportError: Asked to use CUDAExecutionProvider, but onnxruntime-gpu package was not found. Make sure to install onnxruntime-gpu package instead of onnxruntime.

I made sure that:

The versions of CUDA, cuDNN and onnxruntime-gpu are compatible according to the recommendation table
Set up the environment path
onnxruntime was not installed

Did you manage to make it work on GPU?
Thank you
System information

Windows 11
ONNX Runtime (gpu) version: 1.12.0
ONNX version: 1.12 (tried 1.13 also)
Optimum version: 1.6.1
Python version: tried with  3.8/ 3.9/ 3.10
CUDA/cuDNN version: CUDA 11.4 cuDNN 8.2.2

Hi @allankouidri,
I did not get to try setting up a clean venv to try GPU inference with ONNX. Since it works fine for @JingyaHuang, I think maybe it could be a matter of OS, since we are both on windows ? Our issue probably has to do with the method used to detect onnxruntime vs onnxruntime-gpu.
I'll try a few things when I have the time and come back to you

Hi @allankouidri,
One possibility is that you have both onnxruntime and onnxruntime-gpu installed.
Try doing this:
pip uninstall onnxruntime
pip uninstall onnxruntime-gpu
pip install onnxruntime-gpu


Iot assertion fees

Updating IoT Gateway assertion fees

Hi @charlesfayal - the community recently passed HIP 69 #458 to lower fees for 3 months, but it is not a permanent fee reduction, and the going consensus is that we should not reduce fees permanently. Is your proposal to reduce this permanently?
If so, you need to make the argument as to WHY this will benefit the network. Reducing fees has a direct correlation to a LOWER DAO Utility Score, which would not be a positive outcome for the IOT subDAO.
Can you spend some more time on this HIP? Please reach out to me directly if you would like some help editing.

@hiptron please close this HIP
agreed with author

Closing on behalf of HIP editors.


Better error message for org import

Issues Closed

The cci org import command now shows a clearer error message if you try to import an org that is not a locally created scratch org.

I thought that maybe it was impossible to import persistent orgs because the persistent org wouldn't have the connected app installed/authorized or something like that?
I thought that it only works for Scratch Orgs because of special rules wherein they inherit their authorizations from the DevHub?
The exact relationships between sfdx/cumulusci/scratch orgs/persistent orgs/devhubs/connected apps/environment variables/keychains still has many fuzzy bits for me.

@prescod In cci we have 2 types of org config:

OrgConfig authenticates against Salesforce directly. This is what you get when you connect an org using "cci org connect" Currently all of these must use the same connected app. If SFDX_CLIENT_ID and SFDX_HUB_KEY are set we do JWT auth using them; otherwise we do the web-based auth flow using the connected_app service config.
ScratchOrgConfig delegates authentication to sfdx (NOT the dev hub, aside from a small interaction as part of the first login when the scratch org is created). And in sfdx, each org could be using a different connected app. ScratchOrgConfig is what you get if you create a scratch org in cci org import one from sfdx using "cci org import". It also has a number of additional methods and properties that only make sense for scratch orgs, and in general cci assumes that if it has a ScratchOrgConfig, then the org is a scratch org and it can use those methods and properties. That's why we can't easily use ScratchOrgConfig to delegate authentication to sfdx for a persistent org.

So there's a need for a 3rd thing, an SfdxOrgConfig which delegates auth to sfdx but isn't a scratch org. Actually it exists -- I factored it out of ScratchOrgConfig while working on the 2gp create_package_version task, because I needed a way to get the dev hub from sfdx as an org config. The missing piece is that we don't yet have a way to store it in the keychain (for ScratchOrgConfig we set scratch: true in the config dict, and that's the sign to deserialize it as a ScratchOrgConfig instead of an OrgConfig when we load the keychain files).
So I think the path to making cci org import work for persistent orgs is something like:

make sure we can persist SfdxOrgConfigs in the keychain
make cci org import create either an SfdxOrgConfig or ScratchOrgConfig depending on the type of org
make sure that SfdxOrgConfigs are presented in a reasonable way in cci org list output

Separately, once we have named services we could also consider some separate changes so that not all OrgConfigs need to be using the same connected app:

Add a reference from OrgConfig to which connected_app service alias to use for it.
Add a way to indicate as part of a connected_app service that it should use JWT auth, so that we don't need to do it with environment variables that apply to everything.


Fix GSL port so that CMake can find it

Fixes #1196. I had to rename the output library too, because CMake doesn't look for the lib prefix.

This is great @muemart ! Thanks a lot.

I think it is necessary to bump the port version to ensure that is rebuilt once you update vcpkg.

Comments addressed. There is still a small problem with CMake, and that is that for multi-configuration generators like for Visual Studio, it always finds the debug libraries. I don't think it's possible to hack around that here, because the find script doesn't look for debug suffixes.

I don't think it's possible to hack around that here, because the find script doesn't look for debug suffixes.
I agree. I think the only possible solution here is to patch the file upstream in CMake, and afterwards modify vcpkg gsl's port to produce debug libraries with the debug suffixes.

Relevant CMake merge request : https://gitlab.kitware.com/cmake/cmake/merge_requests/914 .

Thanks!
Another solution for the library aliasing issue is #616, though having the native find_package(GSL) would certainly be better.


chore: Create Nix flakes

Solves #379
Creates a simple Nix flake for dev shell. This flake may be improve later.

Can we add something to the documentation for future Nix users? Basically, I'd like something CONTRIBUTING.md to have enough information for a beginner to use this feature.
Some things that may be worth mentioning:

we have the files necessary checked in for a flake
you opt-in by editing ~/.config/nix/nix.conf
you can initialize your workspace with nix build
you can run a command with nix shell --command yarn <script>
whatever else would help someone who's new to nix get started developing

Sorry if I'm not getting my lingo right, I'm new to Nix.

@doug-wade since this is a dev shell, I don't think there's a lot to add here. Perhaps we can add a section on how folks using Nix can access the development shell using nix develop? And if there's issues to be dealt with for turbo, the version has to be updated. I think we can improve this flake by making it read the package.json file.


Command Migration: ('JSON.NUMINCRBY', 'JSON.NUMMULTBY', 'JSON.TOGGLE', 'JSON.FORGET')

This issue tracks the migration of the mentioned commands - ('JSON.NUMINCRBY', 'JSON.NUMMULTBY', 'JSON.TOGGLE', 'JSON.FORGET') to make them compatible across the three protocols supported by the Dice database: RESP, HTTP, and WebSocket.
DiceDB now supports more than one protocols (Resp/http/websocket). We don't want eval operation of each command to be strictly bound with any of the protocols. Currently eval function return statements of each command is bounded to the RESP protocol.
The migration is required because:

The current implementation is specific to the RESP protocol
Evaluation functions of each command must be refactored to ensure protocol-agnostic behavior.
Evaluation functions should return raw responses instead of protocol specific responses.

The goal is to make the command logic protocol-independent, allowing all three protocols to call the same core functionality seamlessly.
Requirements

Refactor the evaluation function of [Command Name] to be generic.
Ensure the evaluation function does not include protocol-specific logic.

Migration Steps

Analyze Current Implementation

Review the current codebase to understand how the command logic is implemented.

Refactor Return Logic

Create a new function with the function definition as evalXXX(args []string, store *dstore.Store) *EvalResponse under the file /internal/eval/store_eval.go
Analyse return statements of the eval and modify them to send raw types without encoding
Use errors in the return statements from /errors/migrated_errors.go file
Use perdefined responses from /internal/clientio/resp.go file as RespType variables

Command/Worker specific Changes

Make IsMigrated flag to true in the commands information under /internal/eval/commands.go file.
Use the newly written eval function against the NewEval parameter in the same command structure.
Delete the old eval function from the /internal/eval/eval.go file.
Add the migrated command to the /internal/worker/CommandsMeta map and make it's type as SingleShard

Update Unit Tests

Refactor existing unit tests to accommodate the new implementation.
Add new unit tests if necessary to cover all possible cases.

Integration Tests

Run all integration tests to ensure successful migration.
Ensure that each protocol (RESP, HTTP, WebSocket) works correctly after migration.

Checklist

[ ] Migrated the evalXXX function with the latest definition
[ ] Update or add unit tests for the new implementation.
[ ] All unit tests pass successfully.
[ ] Ensure all integration tests pass successfully.

Additional Notes

Describe any edge cases that need to be handled in the generic function.
Mention any protocol-specific optimizations required in wrappers.

If there are any questions or concerns about this migration, please mention them here.
Related Issues/PRs

Sample implementation for the Get, Set, GetSet and SetEx can be found in this Pull Request.

Hi @AshwinKul28 , can I please pick this up? Thank you :)

Thanks @dankot12 go for it! 🚀

HI @dankot12  , I hope you are doing well. Do you happen to have any updates on this? If you've any doubts please let us know on the discord.

Hey @vpsinghg go for it! Thanks 🚀

@AshwinKul28 I observed a issue in json.numincrby and json.nummultby output. As we use "github.com/ohler55/ojg/jp" for generating a expression and use its Get method on json object. But this gives result in a sorted order. Which is different from the output received from redis.
What should be the correct behavior ?
DiceDB output
<IP_ADDRESS>:7379> JSON.SET number $ '{"a": 2, "b": 10, "c": [15, {"d": 20}]}'
OK
<IP_ADDRESS>:7379> JSON.NUMINCRBY number $..* 5
"[25,20,null,null,7,15]"

Redis output

@AshwinKul28 I observed a issue in json.numincrby and json.nummultby output. As we use "github.com/ohler55/ojg/jp" for generating a expression and use its Get method on json object. But this gives result in a sorted order. Which is different from the output received from redis.
What should be the correct behavior ?
DiceDB output
<IP_ADDRESS>:7379> JSON.SET number $ '{"a": 2, "b": 10, "c": [15, {"d": 20}]}'
OK
<IP_ADDRESS>:7379> JSON.NUMINCRBY number $..* 5
"[25,20,null,null,7,15]"

Redis output
<IP_ADDRESS>:6379> JSON.SET number $ '{"a": 2, "b": 10, "c": [15, {"d": 20}]}'
OK
<IP_ADDRESS>:6379> JSON.NUMINCRBY number $..* 5
"[7,15,null,20,null,25]"
<IP_ADDRESS>:6379>

Hey @vpsinghg ,
the keys orderings inside JSON are not deterministic. So, I think ordering is not an issue in this case since the given path is matching all keys.

Can any one explain following.  Why does response of setupData command is ERR syntax error response in case of websocket as executer?
		{
			name: "Forget nested field",
                       setupData: `JSON.SET user $ {"name":"Tom","address":{"city":"New York","zip":"10001"}}`,
			commands: []string{
				"JSON.FORGET user $.address.city",
				"JSON.GET user $",
			},
			expected: []interface{}{"OK", float64(1), `{"name":"Tom","address":{"zip":"10001"}}`},
			cleanUp:  []string{"DEL user"},
		},

I've noticed that if I pass a string with a space (e.g., "name":"New York"), the command parsing and argument splitting in the command  parser does not handle this scenario correctly.  Currently observed this with JSON.SET command

@apoorvyadav1111 @lucifercr07 Can you please take care of this websocket Question? Thanks

Can any one explain following. Why does response of setupData command is ERR syntax error response in case of websocket as executer?
		{
			name: "Forget nested field",
                       setupData: `JSON.SET user $ {"name":"Tom","address":{"city":"New York","zip":"10001"}}`,
			commands: []string{
				"JSON.FORGET user $.address.city",
				"JSON.GET user $",
			},
			expected: []interface{}{"OK", float64(1), `{"name":"Tom","address":{"zip":"10001"}}`},
			cleanUp:  []string{"DEL user"},
		},

I've noticed that if I pass a string with a space (e.g., "name":"New York"), the command parsing and argument splitting in the command parser does not handle this scenario correctly. Currently observed this with JSON.SET command

I believe there's an issue with websocket parser, for now can you create without spaces the test cases, so that we're not blocked on this. Will create an issue to get this fixed, shouldn't be a blocker for migration.
You can try below as message:
JSON.SET user $ {"name":"Tom","address":{"city":"NewYork","zip":"10001"}}


fix(sec): upgrade netty-codec-http to 4.1.71.Final

Upgrade netty-codec-http 4.1.51.Final to 4.1.71.Final for vulnerability fix:

CVE-2021-21290
CVE-2021-21295
CVE-2021-43797

https://github.com/openzipkin/brave/releases/tag/5.14.1


Error in incrementing active_question field.

Hey folks,
The app is currently built to have the Quiz model reference 5 Question models per instance. This is currently accomplished through the questions ArrayField attribute on the Quiz model implementation, which can be found in the carbon_quiz app. It was originally intended to store the pk field of 5 different Question models, which should all come from each of the 5 difference choices for Question.CATEGORIES.
However there is currently a bug in which while displaying the Questions to the User, the index used to grab Questions from the Quiz model, quiz.active_question, would increment by 2 unexplainable, instead of 1 as was intended in the implementation of view class - this is called QuizDetail, and can be found in the carbon_quiz app as well under views.py.
Why is this error occurring? Currently, we have a workaround solution in which I just set the number of questions in the questions array equal to 10, therefore incrementing by 2's we can simulate the effect of the user seeing 5 questions overall. However, it would be a performance improvement for us to track down the cause of the unexplained active_question field incrementing by 2 instead of one, as well as a good learning experience.
Once the error has been found, changes will need to be made in the following places in the code, and I am happy to delve deeper into in case it is not clear, as we make progress:

The Quiz model implementation: we want to set the size of the questions field back to 5 instead of 10, once we are able to show 5 questions just by having 5 in the array
The QuizCreate view - need to change the for loop that populates the questions array, so that it only uses 5 iterations
The else block of the QuizDetail.get method, which currently gets the id found at every other index in the questions array, instead of each index which is more efficient (and we'll be able to do this, once the error described above has been resolved). Then we can do the same task of finding relevant missions, with just 5 array spaces rather than 10.

This error is currently only found on my zain branch, can be found in PR #8

Error has now been resolved. Appears as though I just had to restart the server, perhaps my Django installation is messed up. Closing for now, the code has now been reverted to use just 5 questions in the Carbon quiz.


tensorboard logger should support remote directories

🚀 Feature
Tensorboard allows you to write to gc, s3, hdfs, etc by specifying paths with the right prefix  e.g. logDir='hdfs://path/to/logs/
However the lightning logger breaks this. see tensorboard.py#L100
Motivation
Training often occurs on remote clusters which don't persist the local disk at the time the job ends. The local disk is also not accessible from outside tools so tensorboard can not access the results while training is in progress.
Pitch
Replace all directory operations with some remote-aware tool. tensorboard itself provides a gfile compatible handle . There are other options as well. tensorboard itself supports these things natively so maybe we can just get around doing any local file operations and leverage tensorboard lib to write remotely.
Alternatives
Some other option would be to write locally but add hooks to sync the logs to a remote storage.

Whats the right way to discuss solutions here. I have one proposed solution in a draft PR, but figure its best to discuss with the maintainers first about how best we can solve this.


Add support for setting slices of an ITensor

This adds support for setting slices of an ITensor from an Array (or more generally an AbstractArray), for example:
using ITensors

i = Index(2)
j = Index(3)
k = Index(4)
l = Index(5)

a = randn(4, 5)

A = randomITensor(i, j, k, l)
A[i=>1, j=>2, l=>:, k=>:] = transpose(a)
@show A[i=>1, j=>2, l=>1, k=>1] == a[1, 1]
@show A[i=>1, j=>2, l=>2, k=>3] == a[3, 2]

A = randomITensor(i, j, k, l)
A[1, 2, :, :] = a
@show A[i=>1, j=>2, l=>1, k=>1] == a[1, 1]
@show A[i=>1, j=>2, l=>2, k=>3] == a[3, 2]

A = randomITensor(i, j, k, l)
A[i=>1, j=>2, l=>1:4, k=>1:3] = transpose(a)[1:end-1,1:end-1]
@show A[i=>1, j=>2, l=>1, k=>1] == a[1, 1]
@show A[i=>1, j=>2, l=>2, k=>3] == a[3, 2]

Note that the ordering of the indices that get passed to setindex! determines how the array a is interpreted, i.e. in the call:
A[i=>1, j=>2, l=>:, k=>:] = transpose(a)

it is interpreted like the slice of A is being set by the ITensor itensor(transpose(a), l, k) or equivalently itensor(a, k, l) (these ITensors are never formed, but that is how you can think of it).
This relies on some changes to NDTensors: https://github.com/ITensor/NDTensors.jl/pull/50.

Codecov Report

Merging #535 (0d76e70) into master (4b40460) will increase coverage by 0.61%.
The diff coverage is 100.00%.

@@            Coverage Diff             @@
##           master     #535      +/-   ##
==========================================
+ Coverage   80.52%   81.13%   +0.61%
==========================================
  Files          41       41
  Lines        4174     3966     -208
==========================================
- Hits         3361     3218     -143
+ Misses        813      748      -65

Impacted Files
Coverage Δ

src/indexset.jl
72.80% <100.00%> (-1.26%)
:arrow_down:

src/itensor.jl
78.60% <100.00%> (+2.12%)
:arrow_up:

src/broadcast.jl
65.54% <0.00%> (-9.09%)
:arrow_down:

src/physics/site_types/tj.jl
58.92% <0.00%> (-6.08%)
:arrow_down:

src/physics/sitetype.jl
89.65% <0.00%> (-3.51%)
:arrow_down:

src/mps/dmrg.jl
74.57% <0.00%> (-3.04%)
:arrow_down:

src/physics/site_types/spinone.jl
84.31% <0.00%> (-1.97%)
:arrow_down:

src/physics/autompo.jl
91.95% <0.00%> (-1.24%)
:arrow_down:

src/decomp.jl
88.62% <0.00%> (-0.76%)
:arrow_down:

... and 26 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 4b40460...0d76e70. Read the comment docs.

Very welcome feature! Nice to see how little code was needed to add this (not counting the documentation and unit tests).


Added more blocks to the List module

Description
Added the .last() and .first() block.

Please include the summary of the changes and which issue is fixed. Also, list relevant contexts, dependencies that are requested for this change.

The added blocks, executes the following tasks:

.last() - Returns the last element in the specified List.
.first() - Returns the first element in the specified List.

Fixes issue #( #15 )
Type Of Change
Feature

Please delete options that are not relevant and mark the ones that are relevant.

[x] New feature: Non breaking change which adds a new functionality ( module, environment etc).

Briefly Explain Why This PR Should Be Merged.
This PR should be merged so that the new features can be executed and can be employed.
How Has This Been Tested ?
Creating a new list and return values from the added blocks.

Please describe how you ran the test after effecting your changes. Also, add snapshots or screenshots of the working change as proof-of-work.

I tested this changes as follows:

I opened the simplerepl enviroment.
Called the List module
Created a new List and entered some values.
Return both the first and last values.

Checklist:

[x] I have created a supporting issue for this PR.
[x ] My code follows the style guidelines of this project
[x] I have performed a self-review of my own code
[x] I have commented my code, particularly in hard-to-understand areas
[x] I have made corresponding changes to the documentation
[x] My changes generate no new warnings
[x] I have added tests that prove my fix is effective or that my feature works
[x] New and existing unit tests passed locally with my changes
[x] Any dependent changes have been merged and published in downstream modules

I ll review the changes now


Feat.-quest 2, sketch: add a toggle to enable NeoMode

What(TF) is NeoMode, exactly?
Take it easy, let's take a look at the classic scene in Matrix:

When NeoMode is enabled, and the behaviour of NeoZoomToggle will change:

Instead of zoom(ing)-in the current buffer, it jumps through all the same buffers across all tabs.

Some issues here

There might be many same-buffer splits under a tab during the jumping.
This will require adding a toggle which creates more burden for a user to memorize how(FUCK) many keybindings to do a simple work.

I think this is achievable now after the breaking change(s) done in #20

Bullshit


Don't set up DB if no tests use it

Set up the DB only if a test that's a subclass of TransactionTestCase is among the selected tests (or something). That can save a bunch of time when not using REUSE_DB.

Neat idea, but too much magic.  Dynamically changing DATABASES when tests are running feels like a per-project way to solve this.


chainer-cuda-requirements fails on an invalid environment

chainer-cuda-requirements command imports cuda.requirements. So, when import chainer fails on invalid environment, the command also fails.
This command needs to work on such a case because a user want to fix his invalid environment.
My idea is to write the requirements text in the script directly.

Instead how about use another setup.py to setup dependencies? Windows users cannot use backquote notation.


Error Creating NAV 2015 on Docker

Hello,
I am running into an error trying to create a docker container from a NAV2015 DVD.
I have followed this article https://blogs.msdn.microsoft.com/freddyk/2017/11/29/can-i-run-nav-2015-and-earlier-on-docker/ on how to create the container but it fails before completing successfully with the error below. I am using Nav-ContainerHelper and docker ver <IP_ADDRESS> (37199).
I have included the script I am running and the output.
Any help is appreciated.
ERROR
Initialization of container NAV2015test failed
At C:\Program Files\WindowsPowerShell\Modules\navcontainerhelper\<IP_ADDRESS>\ContainerHandling\Wait-NavContainerReady.ps1:45
char:17

...             throw "Initialization of container $containerName failed" ...

            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

CategoryInfo          : OperationStopped: (Initialization ...2015test failed:String) [], RuntimeException
FullyQualifiedErrorId : Initialization of container NAV2015test failed

New-NAVContainer
-accept_eula     -containerName 'NAV2015test'
-navDvdPath "C:\temp\nav2015"     -navDvdCountry w1
-updateHosts         -shortcuts Desktop
-accept_outdated     -auth Windows
-memoryLimit 4G     -Verbose
-includeCSide`
PS H:> C:\temp\NewNAVContainerScriptNAV2015v1.ps1
NavContainerHelper is version <IP_ADDRESS>
Host is Microsoft Windows 10 Pro - ltsc2019
Docker Client Version is 19.03.1
Docker Server Version is 19.03.1
Using image mcr.microsoft.com/dynamicsnav:generic-ltsc2019
Removing C:\ProgramData\NavContainerHelper\Extensions\NAV2015test
Creating Container NAV2015test
Version: 8.0.40459.0-w1
Generic Tag: <IP_ADDRESS>
Container OS Version: 10.0.17763.678 (ltsc2019)
Host OS Version: 10.0.17763.720 (ltsc2019)
WARNING: The container operating system matches the host operating system, but the revision is different.
If you encounter issues, you might want to specify -isolation hyperv
Using locale en-US
Using process isolation
Disabling the standard eventlog dump to container log every 2 seconds (use -dumpEventLog to enable)
Files in C:\ProgramData\NavContainerHelper\Extensions\NAV2015test\my:

AdditionalOutput.ps1
MainLoop.ps1
updatehosts.ps1
Creating container NAV2015test from image mcr.microsoft.com/dynamicsnav:generic-ltsc2019
05af9c6add88376e19fde5af842f56fba18c6bfccae408a60011d4a6bac651c9
Waiting for container NAV2015test to be ready
Installing NAV
Installing .NET 3
Starting Local SQL Server
WARNING: Waiting for service 'SQL Server (SQLEXPRESS) (MSSQL$SQLEXPRESS)' to
start...
WARNING: Waiting for service 'SQL Server (SQLEXPRESS) (MSSQL$SQLEXPRESS)' to
start...
WARNING: Waiting for service 'SQL Server (SQLEXPRESS) (MSSQL$SQLEXPRESS)' to
start...
WARNING: Waiting for service 'SQL Server (SQLEXPRESS) (MSSQL$SQLEXPRESS)' to
start...
Starting Internet Information Server
Installing Url Rewrite
Installing Report Viewer
Installing OpenXML
Copying Service Tier Files
Copying Web Client Files
Copying Windows Client Files
Copying PowerShell Scripts
Copying UpgradeToolKit
Copying ClientUserSettings
Copying ReportBuilder
Restoring CRONUS Demo Database
Changing Database Server Collation to Latin1_General_100_CS_AS
SQL Server 2017 transmits information about your installation experience, as well as other usage and performance data, to M
icrosoft to help improve the product. To learn more about SQL Server 2017 data processing and privacy controls, please see
the Privacy Statement.
Installing C:\NAVDVD\Installers\CA.en\OlAddin\OutlookAddIn.Local.CA.en.msi
Installing C:\NAVDVD\Installers\CA.en\RTC\RoleTailoredClient.Local.CA.en.msi
Installing C:\NAVDVD\Installers\CA.en\Server\Server.Local.CA.en.msi
Installing C:\NAVDVD\Installers\CA.en\WebClient\WebClient.Local.CA.en.msi
Skipping C:\NAVDVD\Installers\CA.en\WebHelp\WebHelp.Local.CA.en.msi
Installing C:\NAVDVD\Installers\CA.fr\OlAddin\OutlookAddIn.Local.CA.fr.msi
Installing C:\NAVDVD\Installers\CA.fr\RTC\RoleTailoredClient.Local.CA.fr.msi
Installing C:\NAVDVD\Installers\CA.fr\Server\Server.Local.CA.fr.msi
Installing C:\NAVDVD\Installers\CA.fr\WebClient\WebClient.Local.CA.fr.msi
Skipping C:\NAVDVD\Installers\CA.fr\WebHelp\WebHelp.Local.CA.fr.msi
Installing C:\NAVDVD\Installers\MX.es\OlAddin\OutlookAddIn.Local.MX.es.msi
Installing C:\NAVDVD\Installers\MX.es\RTC\RoleTailoredClient.Local.MX.es.msi
Installing C:\NAVDVD\Installers\MX.es\Server\Server.Local.MX.es.msi
Installing C:\NAVDVD\Installers\MX.es\WebClient\WebClient.Local.MX.es.msi
Skipping C:\NAVDVD\Installers\MX.es\WebHelp\WebHelp.Local.MX.es.msi
Installing C:\NAVDVD\Installers\US.en\OlAddin\OutlookAddIn.Local.US.en.msi
Installing C:\NAVDVD\Installers\US.en\RTC\RoleTailoredClient.Local.US.en.msi
Installing C:\NAVDVD\Installers\US.en\Server\Server.Local.US.en.msi
Installing C:\NAVDVD\Installers\US.en\WebClient\WebClient.Local.US.en.msi
Skipping C:\NAVDVD\Installers\US.en\WebHelp\WebHelp.Local.US.en.msi
Modifying NAV Service Tier Config File for Docker
Creating NAV Service Tier
Starting NAV Service Tier
Importing CRONUS license file
The Microsoft Dynamics NAV server is currently not ready to serve requests. Try again later or contact your system administ
rator.
at , C:\Run\navinstall.ps1: line 188
at , C:\Run\start.ps1: line 114
at , : line 1Error
Installing NAV
Installing .NET 3
Starting Local SQL Server
WARNING: Waiting for service 'SQL Server (SQLEXPRESS) (MSSQL$SQLEXPRESS)' to
start...
WARNING: Waiting for service 'SQL Server (SQLEXPRESS) (MSSQL$SQLEXPRESS)' to
start...
WARNING: Waiting for service 'SQL Server (SQLEXPRESS) (MSSQL$SQLEXPRESS)' to
start...
WARNING: Waiting for service 'SQL Server (SQLEXPRESS) (MSSQL$SQLEXPRESS)' to
start...
Starting Internet Information Server
Installing Url Rewrite
Installing Report Viewer
Installing OpenXML
Copying Service Tier Files
Copying Web Client Files
Copying Windows Client Files
Copying PowerShell Scripts
Copying UpgradeToolKit
Copying ClientUserSettings
Copying ReportBuilder
Restoring CRONUS Demo Database
Changing Database Server Collation to Latin1_General_100_CS_AS
SQL Server 2017 transmits information about your installation experience, as well as other usage and performance data, to M
icrosoft to help improve the product. To learn more about SQL Server 2017 data processing and privacy controls, please see
the Privacy Statement.
Installing C:\NAVDVD\Installers\CA.en\OlAddin\OutlookAddIn.Local.CA.en.msi
Installing C:\NAVDVD\Installers\CA.en\RTC\RoleTailoredClient.Local.CA.en.msi
Installing C:\NAVDVD\Installers\CA.en\Server\Server.Local.CA.en.msi
Installing C:\NAVDVD\Installers\CA.en\WebClient\WebClient.Local.CA.en.msi
Skipping C:\NAVDVD\Installers\CA.en\WebHelp\WebHelp.Local.CA.en.msi
Installing C:\NAVDVD\Installers\CA.fr\OlAddin\OutlookAddIn.Local.CA.fr.msi
Installing C:\NAVDVD\Installers\CA.fr\RTC\RoleTailoredClient.Local.CA.fr.msi
Installing C:\NAVDVD\Installers\CA.fr\Server\Server.Local.CA.fr.msi
Installing C:\NAVDVD\Installers\CA.fr\WebClient\WebClient.Local.CA.fr.msi
Skipping C:\NAVDVD\Installers\CA.fr\WebHelp\WebHelp.Local.CA.fr.msi
Installing C:\NAVDVD\Installers\MX.es\OlAddin\OutlookAddIn.Local.MX.es.msi
Installing C:\NAVDVD\Installers\MX.es\RTC\RoleTailoredClient.Local.MX.es.msi
Installing C:\NAVDVD\Installers\MX.es\Server\Server.Local.MX.es.msi
Installing C:\NAVDVD\Installers\MX.es\WebClient\WebClient.Local.MX.es.msi
Skipping C:\NAVDVD\Installers\MX.es\WebHelp\WebHelp.Local.MX.es.msi
Installing C:\NAVDVD\Installers\US.en\OlAddin\OutlookAddIn.Local.US.en.msi
Installing C:\NAVDVD\Installers\US.en\RTC\RoleTailoredClient.Local.US.en.msi
Installing C:\NAVDVD\Installers\US.en\Server\Server.Local.US.en.msi
Installing C:\NAVDVD\Installers\US.en\WebClient\WebClient.Local.US.en.msi
Skipping C:\NAVDVD\Installers\US.en\WebHelp\WebHelp.Local.US.en.msi
Modifying NAV Service Tier Config File for Docker
Creating NAV Service Tier
Starting NAV Service Tier
Importing CRONUS license file
The Microsoft Dynamics NAV server is currently not ready to serve requests. Try again later or contact your system administ
rator.
at , C:\Run\navinstall.ps1: line 188
at , C:\Run\start.ps1: line 114
at , : line 1
Initialization of container NAV2015test failed
At C:\Program Files\WindowsPowerShell\Modules\navcontainerhelper\<IP_ADDRESS>\ContainerHandling\Wait-NavContainerReady.ps1:45
char:17

...             throw "Initialization of container $containerName failed" ...

            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

CategoryInfo          : OperationStopped: (Initialization ...2015test failed:String) [], RuntimeException
FullyQualifiedErrorId : Initialization of container NAV2015test failed

Your command looks correct.
Can you run other NAV or Business Central containers?
During initialization, it says:
WARNING: The container operating system matches the host operating system, but the revision is different.
If you encounter issues, you might want to specify -isolation hyperv
Did you try that?
Which NAV 2015 DVD are you using?

First, thank you for helping me out on this.
To answer your questions:
Yes, I am able to run other NAV and BC containers although this is the only one I am trying from an extracted DVD.
I changed my script with the -isolation hyperv switch and it produced the same error.
NAV version is US Dynamics NAV 8.0 - 8.0.40459.0
Here is the latest output I tried with the previous docker version and then tried with the latest version just to see if anything was added.
PS H:> C:\temp\NewNAVContainerScriptNAV2015v1.ps1
NavContainerHelper is version <IP_ADDRESS>
Host is Microsoft Windows 10 Pro - ltsc2019
Docker Client Version is 19.03.2
Docker Server Version is 19.03.2
Using image mcr.microsoft.com/dynamicsnav:generic-ltsc2019
Removing container NAV2015test
Removing NAV2015test from hosts
Removing C:\ProgramData\NavContainerHelper\Extensions\NAV2015test
Creating Container NAV2015test
Version: 8.0.40459.0-w1
Generic Tag: <IP_ADDRESS>
Container OS Version: 10.0.17763.678 (ltsc2019)
Host OS Version: 10.0.17763.720 (ltsc2019)
WARNING: The container operating system matches the host operating system, but the revision is different.
If you encounter issues, you might want to specify -isolation hyperv
Using locale en-US
Using process isolation
Disabling the standard eventlog dump to container log every 2 seconds (use -dumpEventLog to enable)
Files in C:\ProgramData\NavContainerHelper\Extensions\NAV2015test\my:

AdditionalOutput.ps1
MainLoop.ps1
updatehosts.ps1
Creating container NAV2015test from image mcr.microsoft.com/dynamicsnav:generic-ltsc2019
0edad957f35198f4c7e77ebcbec8d5f8fc1e6e4bae39126b1f733daa8309097c
Waiting for container NAV2015test to be ready
Installing NAV
Installing .NET 3
Starting Local SQL Server
WARNING: Waiting for service 'SQL Server (SQLEXPRESS) (MSSQL$SQLEXPRESS)' to
start...
Starting Internet Information Server
Installing Url Rewrite
Installing Report Viewer
Installing OpenXML
Copying Service Tier Files
Copying Web Client Files
Copying Windows Client Files
Copying PowerShell Scripts
Copying UpgradeToolKit
Copying ClientUserSettings
Copying ReportBuilder
Restoring CRONUS Demo Database
Changing Database Server Collation to Latin1_General_100_CS_AS
SQL Server 2017 transmits information about your installation experience, as well as other usage and perfor
mance data, to Microsoft to help improve the product. To learn more about SQL Server 2017 data processing a
nd privacy controls, please see the Privacy Statement.
Installing C:\NAVDVD\Installers\CA.en\OlAddin\OutlookAddIn.Local.CA.en.msi
Installing C:\NAVDVD\Installers\CA.en\RTC\RoleTailoredClient.Local.CA.en.msi
Installing C:\NAVDVD\Installers\CA.en\Server\Server.Local.CA.en.msi
Installing C:\NAVDVD\Installers\CA.en\WebClient\WebClient.Local.CA.en.msi
Skipping C:\NAVDVD\Installers\CA.en\WebHelp\WebHelp.Local.CA.en.msi
Installing C:\NAVDVD\Installers\CA.fr\OlAddin\OutlookAddIn.Local.CA.fr.msi
Installing C:\NAVDVD\Installers\CA.fr\RTC\RoleTailoredClient.Local.CA.fr.msi
Installing C:\NAVDVD\Installers\CA.fr\Server\Server.Local.CA.fr.msi
Installing C:\NAVDVD\Installers\CA.fr\WebClient\WebClient.Local.CA.fr.msi
Skipping C:\NAVDVD\Installers\CA.fr\WebHelp\WebHelp.Local.CA.fr.msi
Installing C:\NAVDVD\Installers\MX.es\OlAddin\OutlookAddIn.Local.MX.es.msi
Installing C:\NAVDVD\Installers\MX.es\RTC\RoleTailoredClient.Local.MX.es.msi
Installing C:\NAVDVD\Installers\MX.es\Server\Server.Local.MX.es.msi
Installing C:\NAVDVD\Installers\MX.es\WebClient\WebClient.Local.MX.es.msi
Skipping C:\NAVDVD\Installers\MX.es\WebHelp\WebHelp.Local.MX.es.msi
Installing C:\NAVDVD\Installers\US.en\OlAddin\OutlookAddIn.Local.US.en.msi
Installing C:\NAVDVD\Installers\US.en\RTC\RoleTailoredClient.Local.US.en.msi
Installing C:\NAVDVD\Installers\US.en\Server\Server.Local.US.en.msi
Installing C:\NAVDVD\Installers\US.en\WebClient\WebClient.Local.US.en.msi
Skipping C:\NAVDVD\Installers\US.en\WebHelp\WebHelp.Local.US.en.msi
Modifying NAV Service Tier Config File for Docker
Creating NAV Service Tier
Starting NAV Service Tier
Importing CRONUS license file
The Microsoft Dynamics NAV server is currently not ready to serve requests. Try again later or contact your
system administrator.
at , C:\Run\navinstall.ps1: line 188
at , C:\Run\start.ps1: line 114
at , : line 1Error
Installing NAV
Installing .NET 3
Starting Local SQL Server
WARNING: Waiting for service 'SQL Server (SQLEXPRESS) (MSSQL$SQLEXPRESS)' to
start...
Starting Internet Information Server
Installing Url Rewrite
Installing Report Viewer
Installing OpenXML
Copying Service Tier Files
Copying Web Client Files
Copying Windows Client Files
Copying PowerShell Scripts
Copying UpgradeToolKit
Copying ClientUserSettings
Copying ReportBuilder
Restoring CRONUS Demo Database
Changing Database Server Collation to Latin1_General_100_CS_AS
SQL Server 2017 transmits information about your installation experience, as well as other usage and perfor
mance data, to Microsoft to help improve the product. To learn more about SQL Server 2017 data processing a
nd privacy controls, please see the Privacy Statement.
Installing C:\NAVDVD\Installers\CA.en\OlAddin\OutlookAddIn.Local.CA.en.msi
Installing C:\NAVDVD\Installers\CA.en\RTC\RoleTailoredClient.Local.CA.en.msi
Installing C:\NAVDVD\Installers\CA.en\Server\Server.Local.CA.en.msi
Installing C:\NAVDVD\Installers\CA.en\WebClient\WebClient.Local.CA.en.msi
Skipping C:\NAVDVD\Installers\CA.en\WebHelp\WebHelp.Local.CA.en.msi
Installing C:\NAVDVD\Installers\CA.fr\OlAddin\OutlookAddIn.Local.CA.fr.msi
Installing C:\NAVDVD\Installers\CA.fr\RTC\RoleTailoredClient.Local.CA.fr.msi
Installing C:\NAVDVD\Installers\CA.fr\Server\Server.Local.CA.fr.msi
Installing C:\NAVDVD\Installers\CA.fr\WebClient\WebClient.Local.CA.fr.msi
Skipping C:\NAVDVD\Installers\CA.fr\WebHelp\WebHelp.Local.CA.fr.msi
Installing C:\NAVDVD\Installers\MX.es\OlAddin\OutlookAddIn.Local.MX.es.msi
Installing C:\NAVDVD\Installers\MX.es\RTC\RoleTailoredClient.Local.MX.es.msi
Installing C:\NAVDVD\Installers\MX.es\Server\Server.Local.MX.es.msi
Installing C:\NAVDVD\Installers\MX.es\WebClient\WebClient.Local.MX.es.msi
Skipping C:\NAVDVD\Installers\MX.es\WebHelp\WebHelp.Local.MX.es.msi
Installing C:\NAVDVD\Installers\US.en\OlAddin\OutlookAddIn.Local.US.en.msi
Installing C:\NAVDVD\Installers\US.en\RTC\RoleTailoredClient.Local.US.en.msi
Installing C:\NAVDVD\Installers\US.en\Server\Server.Local.US.en.msi
Installing C:\NAVDVD\Installers\US.en\WebClient\WebClient.Local.US.en.msi
Skipping C:\NAVDVD\Installers\US.en\WebHelp\WebHelp.Local.US.en.msi
Modifying NAV Service Tier Config File for Docker
Creating NAV Service Tier
Starting NAV Service Tier
Importing CRONUS license file
The Microsoft Dynamics NAV server is currently not ready to serve requests. Try again later or contact your
system administrator.
at , C:\Run\navinstall.ps1: line 188
at , C:\Run\start.ps1: line 114
at , : line 1
Initialization of container NAV2015test failed
At C:\Program Files\WindowsPowerShell\Modules\navcontainerhelper\<IP_ADDRESS>\ContainerHandling\Wait-NavContain
erReady.ps1:45 char:17

...             throw "Initialization of container $containerName failed" ...

            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

CategoryInfo          : OperationStopped: (Initialization ...2015test failed:String) [], RuntimeExc
eption
FullyQualifiedErrorId : Initialization of container NAV2015test failed

The version you are trying is NAV 2015 cu6 - requires .net 3
I haven't tried this on server 2019 (and I wont have the chance to do so) - might be the problem.
I am sorry, but that is probably the best I can do .

No worries.
I do have one question though. When you say "tried this on server 2019" what does that mean?
This machine is a Windows 10 build. Is there a way to control the server version say telling it to build a 2016 server and not a 2019?
Also, as a side note I did place the .net 3 "microsoft-windows-netfx3-ondemand-package.cab" executable in the prerequisites folder.

you can try to specify -usegenericimage mcr.microsoft.com/dynamicsnav:generic-ltsc2016 - then it will run the server 2016 image as hyperv. (remove -usebestcontaineros then)

Yes, you are running Windows 10 17763 (which is compatible with windows server 2019)

Ok I will try that next and let you know how it works out.
Thanks again.

Using the 2016 generic image seemed to work.
I was able to create the container but there is one issue with exporting the objects (which I need)
I have opened a separate ticket for this under navcontainerhelper. https://github.com/microsoft/navcontainerhelper/issues/616
Thanks again for the help on this one.

just to help anyone else out my navcontainerhelper scripts that worked is below.

New-NAVContainer `
    -accept_eula `
    -containerName 'NAV2015test' `
    -usegenericimage mcr.microsoft.com/dynamicsnav:generic-ltsc2016 `
    -navDvdPath "C:\temp\nav2015" `
    -navDvdCountry w1 `
    -updateHosts `
    -shortcuts Desktop `
    -accept_outdated `
    -auth NavUserPassword `
    -memoryLimit 4G `
    -isolation hyperv `
    -Verbose `
    -licenseFile "C:\temp\PRE_2015.flf" `
    -includeCSide


[r] Update SOMADataFrame creation and writes

Issue and/or context:
TileDB Core 2.17.3 provides updated semantics for Enumerations (aka factor variables).  The TileDB R package (in upcoming release 0.21.2 or the current snapshot <IP_ADDRESS>) connects this to R, and this PR lets the TileDB SOMA package take advantage of it.
Changes:
Data frame objects are created with 'empty' enumerations, i.e. without factor levels. These are added as needed during writes.
Notes for Reviewer:
The PR is still in draft form as it needed to 'park' four test files affected by an unrelated update to SeuratObject.
The CI setup is once again modified to let is use 'newer than CRAN' package versions of TileDB R via r-universe.
We can lift the 'draft' status when either or both of these constraints can be lifted.
SC 35945

CI fails because I overlooked that TileDB R <IP_ADDRESS> does not automatically bring in TileDB Core 2.17.3.

We're currently processing your upload.  This comment will be updated when the results are available.


[FEATURE] Return meta_dq_run_id after executing the expectations

Describe the solution you'd like
It would be nice if it would be possible to have the meta_dq_run_id returned/obtained when executing the expectations. That way we can easily query the stats table to see the results & error table from our run with the run id. Otherwise, you need to filter in the stats table on original table name and run date and sort descending and get the first one as an approximation, which is kind of a hassle. And it can also be that you take the wrong DQ result from your run, because you can in theory run the same DQ checks multiple times per day, so which run belonged to which id is then not easy to find.

Agreed, we should have this!


[Pods] DCOS-10108 [3/3]: Adding KillPodInstanceModal

⚠ Requires #1174 to be merged

This PR introduces the KillPodInstanceModal that can be used to process the kill instance request from the user.
Only the last commit is relevant to this PR: https://github.com/dcos/dcos-ui/pull/1176/commits/be706ae05cb4d95c6c38c53af69c62a77a36d083

I have currently removed the Kill and scale button from the UI until this issue is addressed : https://mesosphere.atlassian.net/browse/DCOS-10110

little bot that runs the test,
retest this please, so I can merge

Just checking if anything that contains the retest keyword will trigger a test 😄

Holding merge until the bug issues are addressed first

Jenkins, Jenkins, in the cloud,
retest this please to get this out

/ping @nLight


Configuration Recommendation & Usage Pattern Concerns

This is primarily an inquiry, not an actual problem.  We are considering using this implementation of MQTT for one of our production systems.  Reading through some of the issues, I have some concerns about disk usage and memory stabilization.  Our use case would involve somewhere in the neighborhood of 50k-100k unique clients a day  (2 million a month and roughly 1000 concurrently).  Almost all of these clients would be only subscribing to a small number of topics.  Most messages would be published by only a handful of clients.  Each subscribing client would only ever receive about 50 or so messages.  Most clients and topics they subscribe to will never be used again.  Also we have a handful of clients that will subscribe to and receive messages from thousands of topics over time.
Running 3-5 nodes in the cluster and allocating a decent amount of resources is not a problem.
Are there any specific concerns you have with this usage pattern?
Are there any configuration settings you would recommend?
I plan on simulating actual usage patterns for an extended period of time in order to demonstrate the stability of the system before moving it to production, but if there is any helpful input you have, it would be greatly appreciated.

@tpiecora Hi, thanks for asking.
For the current VerneMQ implementation at least, we consider it a kind of  'antipattern' to never re-use ClientIDs (that is, using one-time, throwaway ClientIDs exclusively).
If this is an essential feature of your concept/architecture that you can't work around, get in touch with us over e-mail. (You're welcome to do that in any case to discuss more details)

I submitted the contact form on the website.  Was that what you meant by email?


Update the flatpak-builder package for YAML support

Issue description
flatpak-builder package cannot build (Flatpak) applications that are assembled using YAML file(s).
Steps to reproduce
Just pull a Flatpak package from any repository that uses a YAML file as descriptor and try to build it. You should get something like:
[gorre@uplink flathub]$ flatpak-builder build-dir com.brave.Brave.yaml
Can't parse 'com.brave.Brave.yaml': flatpak-builder was not compiled with YAML support.

Technical details
[gorre@uplink flathub]$ uname -a
Linux uplink 4.14.55-1-lts #1 SMP Wed Jul 11 18:24:20 CEST 2018 x86_64 GNU/Linux

[gorre@uplink flathub]$ nix-shell -p nix-info --run "nix-info -m"
these paths will be fetched (35.63 MiB download, 137.92 MiB unpacked):
  /nix/store/3vmmdcx64dmfjwzsh5w9hr35sgjhw8xq-diffutils-3.6
  /nix/store/5b7v3h1avvcqhwpjwmjvgh755k2yqr5l-bash-interactive-4.4-p23-info
  /nix/store/615hqc9nn4pxxb8a7l61ylanmhn64gny-paxctl-0.9
  /nix/store/6k0cz3nzypv5i0y4i4kydcwa2asiszml-findutils-4.6.0
  /nix/store/7m4kn21xwm1161ki8l2iy3dxhcijvd4i-bash-interactive-4.4-p23-doc
  /nix/store/bcrwa5b8z54xrl95ipfrq6nqhb0530yi-stdenv-linux
  /nix/store/dr4csnaym4cmijaslnhq36kf69lz46ix-bash-interactive-4.4-p23-man
  /nix/store/hcmwqnqj3xhirg1hdwavhvv2d32mw08g-patchelf-0.9
  /nix/store/iag0b52whk3ya4jg6mniyfgz99b41k89-bash-interactive-4.4-p23
  /nix/store/imfm3gk3qchmyv7684pjpm8irvkdrrkk-gcc-7.3.0
  /nix/store/lq0r48d21ngb7c9nk92b1zpk42bc7p96-nix-info
  /nix/store/s8vd4p3mhkmgyf7py58m8722zcz3gr0x-readline-7.0p5
  /nix/store/svqz53x33gsjh41h357azm8fk755ynma-bash-interactive-4.4-p23-dev
  /nix/store/yz6kinf4ia19r1c14yirl6x4ciwgzk67-gcc-wrapper-7.3.0
copying path '/nix/store/7m4kn21xwm1161ki8l2iy3dxhcijvd4i-bash-interactive-4.4-p23-doc' from 'https://cache.nixos.org'...
copying path '/nix/store/5b7v3h1avvcqhwpjwmjvgh755k2yqr5l-bash-interactive-4.4-p23-info' from 'https://cache.nixos.org'...
copying path '/nix/store/dr4csnaym4cmijaslnhq36kf69lz46ix-bash-interactive-4.4-p23-man' from 'https://cache.nixos.org'...
copying path '/nix/store/3vmmdcx64dmfjwzsh5w9hr35sgjhw8xq-diffutils-3.6' from 'https://cache.nixos.org'...
copying path '/nix/store/6k0cz3nzypv5i0y4i4kydcwa2asiszml-findutils-4.6.0' from 'https://cache.nixos.org'...
copying path '/nix/store/imfm3gk3qchmyv7684pjpm8irvkdrrkk-gcc-7.3.0' from 'https://cache.nixos.org'...
copying path '/nix/store/lq0r48d21ngb7c9nk92b1zpk42bc7p96-nix-info' from 'https://cache.nixos.org'...
copying path '/nix/store/yz6kinf4ia19r1c14yirl6x4ciwgzk67-gcc-wrapper-7.3.0' from 'https://cache.nixos.org'...
copying path '/nix/store/hcmwqnqj3xhirg1hdwavhvv2d32mw08g-patchelf-0.9' from 'https://cache.nixos.org'...
copying path '/nix/store/615hqc9nn4pxxb8a7l61ylanmhn64gny-paxctl-0.9' from 'https://cache.nixos.org'...
copying path '/nix/store/s8vd4p3mhkmgyf7py58m8722zcz3gr0x-readline-7.0p5' from 'https://cache.nixos.org'...
copying path '/nix/store/bcrwa5b8z54xrl95ipfrq6nqhb0530yi-stdenv-linux' from 'https://cache.nixos.org'...
copying path '/nix/store/iag0b52whk3ya4jg6mniyfgz99b41k89-bash-interactive-4.4-p23' from 'https://cache.nixos.org'...
copying path '/nix/store/svqz53x33gsjh41h357azm8fk755ynma-bash-interactive-4.4-p23-dev' from 'https://cache.nixos.org'...
 - system: `"x86_64-linux"`
 - host os: `Linux 4.14.55-1-lts, Arch Linux, noversion`
 - multi-user?: `no`
 - sandbox: `no`
 - version: `nix-env (Nix) 2.0.4`
 - channels(gorre): `"nixpkgs-18.09pre146103.d3ed77f1fb1"`
 - nixpkgs: `/home/gorre/.nix-defexpr/channels/nixpkgs`

Just adding libyaml to the expression’s buildInputs should fix that.

I was checking the package's source(s) and it looks simple, but I have no idea how to test those changes – looks like NixOS is required.

Hi @jtojnar, do yo have any updates on this one?

If you clone the nixpkgs repo, you can edit the files and then run nix-build -A flatpak-builder in the directory. That will produce a result directory with the updated package.


Need APIs to add and remove user defined capabilities to self hosted agents

We have a pool of ~100 self hosted agents with a set of user defined capabilities based on the version of our product installed on the agent and a release pipelines that can update the version of the product on the agent machines. We need to remove capabilities on the agent while updating the agent and add the new capability after updating the agent. Are there any APIs to add and remove user defined capabilities to self hosted agents which can be leveraged in our release pipelines. Currently we are manually removing and adding the capabilities after our release pipeline succeeds.

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

ID: 47625b86-abd5-ee15-6d61-8bcf81861b96
Version Independent ID: be9a6174-a69b-7aed-d584-5f602fcc5eb4
Content: Azure Pipelines Agents - Azure Pipelines
Content Source: docs/pipelines/agents/agents.md
Product: devops
Technology: devops-cicd
GitHub Login: @steved0x
Microsoft Alias: sdanie

@vemulavenkatesh Thank you for the question.
Please refer to the Agent REST API and comment below any additional questions.

Closing the issue now, please add additional comments below.

even in looking at "Agent REST API" link. still not able to patch an updated custom object to add a userCapabilities section with value.

Thanks for your question. It looks like your question isn't an issue with the documentation, but an issue or question specific to your implementation or a bug in the product itself.
For help with a specific task, here are a couple of options where you might consider asking your question:

Azure DevOps on Stack Overflow
Azure DevOps Support Bot

If you've encountered an issue with the product itself, to make sure it gets in front of the right people, please submit your bug here.
If you have an idea for improving the product, please submit your idea here.

For anyone that runs into this, there's a creatively documented solution here:
https://blogs.blackmarble.co.uk/rfennell/programmatically-adding-user-capabilities-to-azure-devops-agents/


Those are a few bugs that I'll try to fix

[ ] 1- The Server that is having fun time spaming those :
[2016.04.04-18.24.29:050][113]LogRep:Warning: FRepLayout::UpdateChangelistHistory: History overflow, forcing history dump LaserBeamRenderer
[2016.04.04-18.24.29:410][124]LogRep:Warning: FRepLayout::UpdateChangelistHistory: History overflow, forcing history dump EntityPhysicsProp
[2016.04.04-18.24.29:867][138]LogRep:Warning: FRepLayout::UpdateChangelistHistory: History overflow, forcing history dump EntityPhysicsProp
[2016.04.04-18.24.30:391][154]LogRep:Warning: FRepLayout::UpdateChangelistHistory: History overflow, forcing history dump LaserBeamRenderer
[2016.04.04-18.24.31:242][180]LogRep:Warning: FRepLayout::UpdateChangelistHistory: History overflow, forcing history dump EntityPhysicsProp
[2016.04.04-18.24.31:828][198]LogRep:Warning: FRepLayout::UpdateChangelistHistory: History overflow, forcing history dump LaserBeamRenderer
[ ] 2- When clicking Back to Game the input mode does not switch back to normal.
[x] 3- Weird bug with MainMenu button switch.
[ ] 4- Weird bug with editor not loading because lua53.dll is missing (Haven't currently succeeded reproducing Issue).
[x] 5- EntityBase's overlap model when not colliding not working.
[ ] 6- EntityBase's collision profile does not syncronize.
[ ] 7- EntityBase's model does not synchronize.

First issue can't realy be fixed without loosing quality on physics simulation or on particle system update. Basicaly it's linked to the constant send of infos about the new positions/rotations.
It's part of physics simulation syncronization.

Rectification I believe there is a way to fix those issues without loosing physics simulation quality and maybe even increasing quality : Set Physics Angular Velocity, Set Physics Linear Velocity, Get Velocity and finaly Get Physics Angular Velocity.
Those are all BP nodes I just need to find a workarround to call them from C++.

5- EntityBase's overlap model when not colliding not working.

6- EntityBase's collision profile does not syncronize.

7- EntityBase's model does not synchronize.

Issue number 5 should be fixed however after testing in multiplayer, I noticed none of the replicated vars are actualy replicated !

Ok I have my idea for the variable replication issue : using RPCs instead of simple variable replication.
Maybe even using RPC will make NWVars easier and more reliable...

There is something unknown ! Something I can't explain, lua started to work again like that, after commenting, uncommenting, again and again the whole lua file, it finished by working, I did not understand what happened !

Error 7 is now fixed (Just forgot to add Contruct() the EntityOverlapTest so it can start replicating model).

#4 should be permanently fixed in my local branch : I removed EVERY loading points of LuaEngine which cancels loading of LuaInterface which then no longer requires the lua dll. I also changed the way Lua libs were linked with the compiler (as in a future version lua libs may be dynamically linked directly from ThirdParty path.
I even tested running the editor without the DLL inside Binarries and I had no crashes at all...

#14 is fixed on my local repo.
#18 is most likely related to livebox firewall problem (can't check that, my livebox menu is complicated like hell : welcome to orange world...)
#15 should also be fixed in my local branch just added a FUModPlatformUtils.DisableWindowResize(void * Handle) inside UModGameEngine.
#16 should also be fixed in my local repo.


non-standard seed not support

I used an Ethereum mnemonic for import and wallet generation, but I received an 'invalid seed' error. I reviewed the code and the official implementation, and I understand why this error occurs. However, when I try directly importing the same mnemonic into MyTonWallet and Tonkeeper, I don’t get any error. This has made me reconsider the issue: how should we correctly use mnemonics from other networks on the TON network? Below are my attempts, which were unsuccessful:
func TestAddress(t *testing.T) {
	words := strings.Split(seeds[0].Mnemonic, " ")
	mac := hmac.New(sha512.New, []byte(strings.Join(words, " ")))
	//mac.Write([]byte(""))
	hash := mac.Sum(nil)
	k := pbkdf2.Key(hash, []byte("TON default seed"), 100000, 32, sha512.New)
	{
		hd, err := wallet.FromPrivateKey(nil, ed25519.NewKeyFromSeed(k), wallet.ConfigV5R1Final{
			NetworkGlobalID: wallet.MainnetGlobalID,
		})
		panicIf.Err(err)
		log.Println(hd.WalletAddress())
	}
	{
		hd, err := wallet.FromPrivateKey(nil, ed25519.NewKeyFromSeed(k), wallet.V4R2)
		panicIf.Err(err)
		log.Println(hd.WalletAddress())
	}
	{
		hd, err := wallet.FromPrivateKey(nil, ed25519.NewKeyFromSeed(k), wallet.V3R2)
		panicIf.Err(err)
		log.Println(hd.WalletAddress())
	}
	{
		hd, err := wallet.FromPrivateKey(nil, ed25519.NewKeyFromSeed(k), wallet.V3R1)
		panicIf.Err(err)
		log.Println(hd.WalletAddress())
	}
	{
		hd, err := wallet.FromPrivateKey(nil, ed25519.NewKeyFromSeed(k), wallet.V3)
		panicIf.Err(err)
		log.Println(hd.WalletAddress())
	}
}

ps: Strictly speaking, it wasn’t exactly a failure, but rather that the result I generated didn’t match the wallet’s output. I tried many other approaches, but none of them produced a matching result.

I need help, pls

https://github.com/xssnick/tonutils-go/pull/275


Optimize method for initializing cache of versions of Terraform

Fixed https://github.com/eclipse-xpanse/xpanse/issues/2089
Related to https://github.com/eclipse-xpanse/xpanse/pull/2090 and https://github.com/eclipse-xpanse/tofu-maker/pull/78
Initializing terraform versions cache after the application started:

LGTM

LGTM

LGTM

LGTM


What types are supported

Affected Packages

[ ] @yeger/eslint-config
[ ] @yeger/vue-masonry-wall
[ ] @yeger/vue2-masonry-wall
[ ] vecti

Description
What types of files are supported
Additional context
No response
Preferences

[ ] I want to be assigned to and work on this issue myself

sumit error

I assume you're referring to the files supported by @yeger/eslint-config?
If yes, the following line of the preconfigured yeger-lint script includes all supported files.
https://github.com/DerYeger/yeger/blob/1c885b4b5cae11f2e62ed07b9acae5c2466da53f/packages/eslint-config/src/lint.js#L12

here

it's only supported 'mview' ?

here

Is only the "mview" file type supported

Ah, you're referring to the vue-marmoset-viewer components.
Yes, only mview is supported, as this library is just a wrapper around the plain JS Marmoset Viewer.

Thanks

Hello, I have another question. What tools can convert other 3D model files to MVIEW format, such as GLB files


Gray pixels in QR texture

There are few gray pixels in the QR texture, meaning that the generated array of bools has Null entries. I don't know if this can cause problems when reading the QR, missing some characters in a long string.

Hello, thanks for reporting the issue!
The QR code seems to work fine.
But perhaps it's because of the error correction and the end of the code is corrupted.
I'll check that.

The Reed Solomon file seems to be correct tho.

Did you probably missed the remainder bits after the structured message?
On first look i didn't find them.

Reference

Thanks @IceflowRE !
It was that. I forgot to add the remainder bits at the end.


[update] rollback for apt and replace pip for pipx

Forced push for the same reason: https://github.com/tiawl/spaceporn-action-bot/pull/37#issuecomment-2404887212


cosign: 2.2.4 -> 2.4.0

Description of changes
Changes:
https://github.com/sigstore/cosign/releases/tag/v2.4.0
https://github.com/sigstore/cosign/releases/tag/v2.3.0

Things done

Built on platform(s)

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

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

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

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

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[x] Fits CONTRIBUTING.md.

Result of nixpkgs-review run on x86_64-linux 1

1 package built:

cosign

<!--
To help with the large amounts of pull requests, we would appreciate your
reviews of other pull requests, especially simple package updates. Just leave a
comment describing what you have tested in the relevant package/service.
Reviewing helps to reduce the average time-to-merge for everyone.
Thanks a lot if you do!
<p>List of open PRs: https://github.com/NixOS/nixpkgs/pulls
Reviewing guidelines: https://github.com/NixOS/nixpkgs/blob/master/pkgs/README.md#reviewing-contributions
-->

Add a :+1: reaction to pull requests you find important.

Result of nixpkgs-review pr 333080 run on x86_64-darwin 1

1 package built:

cosign


Update no-std.md to remove obsolete FAQ link

Per issue #97

Thanks for the pull request, and welcome! The Rust team is excited to review your changes, and you should hear from @ryankurte (or someone else) soon.
If any changes to this PR are deemed necessary, please add them as extra commits. This ensures that the reviewer can see what has changed since they last reviewed the code. Due to the way GitHub handles out-of-date commits, this should also make it reasonably obvious what issues have or haven't been addressed. Large or tricky changes may require several passes of review and changes.
Please see the contribution instructions for more information.

bors r+


Eimantas/UI

Added primitive UI progress bar

I have merged changes from here to my branch manually to avoid work loss due to unity files.


Remove section referencing TMB model for 2DAR1

We were made aware that there was a reference to a TMB model for estimating rho parameters in the 2DAR1 selectivity section of the user manual that we do not support.
It seems like we will need to delete the entire section of "Using the Two-Dimensional Autoregressive Selectivity" under section 14.2 since it goes through a process for tuning the parameters.

Let's revise, not remove.  It is not that we do not support the tuning method, it is just that we do not have the tools to implement the tuning method as described.  I suggest we make a more generic endorsement of tuning the variance and rho parameters per the methods in Xu et al.

I'll try to reword the text and make a new pull request for discussion.

I have a TMB + R code to estimate the two rho parameters. Is there a proper way to share it with SS users when they want to explore 2DAR1 selectivity?

If the code is on GitHub then we can easily incorporate a link to that in the User Manual.

Great - I will upload the TMB code and an example R code to Github and send you the link soon.


Uncaught SyntaxError: Unexpected token u

[Enter steps to reproduce below:]

...
...

Atom Version: 1.0.3
System: Ubuntu 14.04.2
Thrown From: remote-edit package, v1.8.14
Stack Trace
Uncaught SyntaxError: Unexpected token u
At file:///usr/share/atom/resources/app.asar/static/index.html#%7B%22locationsToOpen%22%3A%5B%7B%22pathToOpen%22%3A%22atom%3A%2F%2Fconfig%22%7D%5D%2C%22bootstrapScript%22%3A%22%2Fusr%2Fshare%2Fatom%2Fresources%2Fapp.asar%2Fsrc%2Fwindow-bootstrap.js%22%2C%22resourcePath%22%3A%22%2Fusr%2Fshare%2Fatom%2Fresources%2Fapp.asar%22%2C%22devMode%22%3Afalse%2C%22safeMode%22%3Afalse%2C%22appVersion%22%3A%221.0.3%22%2C%22shellLoadTime%22%3A5402%2C%22initialPaths%22%3A%5B%22atom%3A%2F%2Fconfig%22%5D%7D:1

SyntaxError: Unexpected token u
  at Object.parse (native)
  at /home/joanrufe/.atom/packages/remote-edit/lib/model/inter-process-data-watcher.coffee:68:52
  at FSReqWrap.readFileAfterClose [as oncomplete] (fs.js:379:3)

Commands
     -0:02.1.0 remote-edit:browse (ul.list-inline.tab-bar.inset-panel)

Config
{
  "core": {
    "autoHideMenuBar": true
  },
  "remote-edit": {}
}

Installed Packages
# User
angularjs, v0.3.0
file-icons, v1.5.8
language-ejs, v0.2.0
language-jade, v0.6.2
linter, v1.2.4
linter-jshint, v1.1.4
minimap, v4.12.1
remote-edit, v1.8.14

# Dev
No dev packages

When did this occur? (after upgrade etc.)
Have you tried restarting atom?
Look at #92, this seems like a duplicate.


Why  use the keystore to get the privateKey too slow?

this is the function:"var privateKey = try key.decrypt(password: password)"  //public func decrypt(password: String) throws -> Data
I calculate the total time about 30s+ , so crazy   .
What's wrong with my project? Could you give me some advice to solve that problem?

@Li-Qun take a look: https://github.com/TrustWallet/trust-keystore/issues/47


Allow minimization scheme "chance for random treatment arm" percentage to be selected.

Can be 0 (never randomize) to 100 (always randomize).

Duplicate to issue #224.


Document minimum specs and configuration tuning

Currently the website does not contain any documentation with respect to minimum or recommended specs, or the configuration options that node operators can use to reduce memory and bandwidth usage. While these are included in the link to bitcoin.org's full node guide, some of the information there is outdated, and it's also not our website. We should have these docs on our website.
While we do have docs in the repo for reducing memory usage and traffic, I think these should also be on the website for better visibility (or at least linked to).
Credit to Kevin McSheehan for pointing out how there is no obvious guidance provided for nodes on low spec hardware.

cool - thanks for the credit. i appreciate that.
but this is a consequence of my get header range oom that bsv paid $100k for, and yesterday's new release of an exploit wherein you just peer in multithreaded and ping faster than the remote machine can interpret. the headers issue appears rate limited now, though. well done to whoever did that.
exploit code demo: https://asciinema.org/a/614446


New version: YuzuEmu.Yuzu.Mainline version 1435

Pull request has been created with Komac v1.6.0 :rocket:
Microsoft Reviewers: Open in CodeFlow

/azp run

/azp run


Locate and raise the angle of AI firing position

References #234

I got pretty lucky with my guess that I could change the firing angle of the Runners projectile through either the Runners blaster cannon mesh or the OrbProjectile.cpp file. After seeing no change when altering the position of the blaster cannon, I looked around in the OrbProjectile.cpp file and saw that the projectile gets called using the Runner that shoots and the direction it's locked on to or at least looking in. By doing a small increment to the Direction parameter when FireOrbInDirection gets called, it won't shoot into the ground as much if at all.

I'm happy with where the firing angle is now. Should be a lot more consistent for both the player and AI Runner. Overall, this change took about an hour and a half.


Contrast themes – Info side panel’s button links need a border

In our info side panel, we have a few buttons displayed in "link" style. Screenshot in WHCM (left) and out (right):

Figma link: https://www.figma.com/file/O81E48wieOZ7e6AivvksWn/Contrast-themes%3A-Wagtail-audit?node-id=6805%3A4110
It’s hard to tell those are buttons since the default high-contrast themes use the same color for ButtonText and CanvasText. To resolve this, we should add a border around those buttons in forced-colors: active mode.
This is for the "View details" button, as well as "Switch locales", "Change privacy", "Lock/unlock", and any other "action" buttons of our info side panel’s sections.

Note from today’s discussion: we want all of the above buttons/links to look the same, so they should all be possible to target when testing this.

@anujaraj @Scotchester could you update this based on your recent progress? I know it’s been discussed on Slack but we’re not clear on where we got to with it.

I believer where we left it was that Anuja was going to research how Tailwind works to see how these buttons are now being styled, then propose a new fix that doesn't conflict with that.
It may have gotten put on the back burner in favor of automated testing, though.

Can I pick up this issue? @thibaudcolas

@anujaraj  are you still working on this? If not, i would love to give it a try

@thibaudcolas @lb-
I've been able to reproduce this issue on my end.
In the info panel, its hard to tell the buttons displayed in 'link' styles are actually buttons in forced-colors: active mood  since the default high-contrast themes use the same color for ButtonText and CanvasText.
High-contrast theme

Forced-colors: active mood

Adding a border around the buttons in forced-colors: active mood should fix this.

@xomcodes  I think this is the file with the HTML for all of those buttons
wagtail/admin/templates/wagtailadmin/shared/side_panels/includes/status/workflow.html (one for the workflow)
Then see this folder https://github.com/wagtail/wagtail/tree/main/wagtail/admin/templates/wagtailadmin/shared/side_panels/includes
Each action item that has a link uses this shared template
https://github.com/wagtail/wagtail/blob/aaea8710c21ba4d5368d3825781bc54e1869c561/wagtail/admin/templates/wagtailadmin/shared/side_panels/includes/action_list_item.html#L18-L27
Each action item that has a button appears to use this shared template
https://github.com/wagtail/wagtail/blob/main/wagtail/admin/templates/wagtailadmin/shared/side_panels/includes/side_panel_button.html
So my guess is we will need to adjust the Tailwind utility classes on that template (side_panel_button). Unfortunately this will not be with a scss file but rather the utility classes approach so it may be a bit tricky.
But first try to see if changing the above mentioned templates shows up on as the right place to change in your local dev, from there, explore how we can unify the tailwind classes to all look the same. After that, we will need to find a suitable forced-color utility class (if possible).
Alternatively we may want to revise this to use our button button-secondary type classes (which already work for Windows High Contrast mode but have a border though.
I tested button button-small button-secondary w-border-0 as classes - and it gets close (but not exact) to the current state.

Thank you so much for the feedback @lb-
I've been to figure out how to add borders to the buttons when in forced-color : active mood. I targerted a class which all the buttons had in common and styled it. So i wanted to confirm if this is how you wanted these buttons to show while in forced-color : active mood before sending a PR.
High-contrast theme

Forced-colors: active mood (before fix)

Forced-colors: active mood (after fix)

@xomcodes  - I think this is well on the way to what we are looking for, except we should be careful to avoid unwatned changes to the 'icon' buttons at the top.
Great stuff, feel free to get a PR up when you are ready.

Thank you😊😊 @lb-
I've fixed the issue of unwanted border around the icon buttons and sent a PR

I want to work on this. If the issue is open, please assign it to me.

@MashiatK we do not assign issue to anyone outside of the core team.
Please read https://dev.to/lb/ten-tasty-ingredients-for-a-delicious-pull-request-hgc, especially point 2. In essence, please read the issue and the discussion, see if there's an associated PR or not. If there is a PR, you can help by reviewing and testing it locally. If there is no PR and nobody else claimed it, then you could add a note that you are working on it.
In this particular case, there is a PR already #9589

This issue has a PR ( https://github.com/wagtail/wagtail/pull/9589 )  but it has not been updated in close to a year, it has some feedback on it that may be helpful.
Anyone is free to pick up this issue and give it a go.


Merge pull request #9165 from shajrawi/fix_linux_build

Fix runtime failure on Linux due to large values by address pass - cherry-pick from master

@swift-ci Please smoke test and merge

Closing this PR as I uncovered an issue for mac targets caused by it - will create a new PR that includes both this fix + the new fix for mac target


support poe reset for gs316xx, fix issue #70

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

Project coverage is 41.22%. Comparing base (b540881) to head (34913bf).

Files with missing lines
Patch %
Lines

poe_cycle.go
30.95%
29 Missing :warning:

Additional details and impacted files
@@            Coverage Diff             @@
##             main      #71      +/-   ##
==========================================
- Coverage   41.41%   41.22%   -0.20%
==========================================
  Files          18       18
  Lines         961      997      +36
==========================================
+ Hits          398      411      +13
- Misses        543      566      +23
  Partials       20       20

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


update porter icon

I've redrawn an icon that hopefully invokes a likeness of the emoji, but is drawn from scratch and w/ variations. In addition I've looked at some ways to tie this into the CNAB family a bit, mostly through colors that we may or may not like"

^ Using the same typography as Duffle as a part of the family of projects.

^  Bringing in some CNAB icons on the porters hat.

^ Going full CNAB-purple.

I think their mouth / expression looks weird... and I also want to make the hair and skins tones closer to what we originally wanted.
Will add an update for that - but wanted to throw out what's done so far for feedback because it's been taking so long.

@michelleN We need your input on the logo, since it is you afterall. 😀
I like the middle one the best since it incorporates the cnab logo. The one with the purple jacket is harder to see the logo, and kind of looses the porter-y feel from the original.

I forgot to say the first thing that came into my head "ahem"
💯  I LOVE IT!!! 🚀

I left this issue open so that @michelleN could provide feedback on the logo (or give it the 👍). I tweaked it a bit to soften the outline around the hat, and did change the logo on the docs page (#204) for now while we work out the final logo. Once we finalize the logo, I'll update it in the CNAB community assets repository.

ah I love it!!!!! This is amazing yall!

just one thing... do ya'll get thrown off by "porter" being in blue? If that's just me, then disregard. If it isn't just me... do we think having the porter logo be all three colors on the hat makes sense? cc/ @flynnduism @carolynvs

I think the porter text is the same purple as the triangle in the porter logo? We could take porter either in its own direction, or try to align with the cnab colors. What do you think of using the gray from the first sample logo in the OP issue instead?
I'm not sure yet what my opinion is which is why I'm still ok with the site being a total ripoff of the helm site. 😇


Cannot log out from GooglePlus Auth. Homepage keeps calling its GooglePlus callback

Hi all,
I've correctly implemented the login with GooglePlus, but once I signed up with an account, I'm not able to logout / disconnect correctly, and use local or other Google accounts.

I'm using the login from the example:

                 <form id="google-plus" method="post" action="{% url "social:complete" backend="google-plus" %}">{% csrf_token %}
                    <input id="at" type="hidden" name="access_token" value="" />
                    <input id="code" type="hidden" name="code" value="" />

               </form>

`

I've tried for logout both
url(r'^logout/$', 'django.contrib.auth.views.logout', {'next_page': '/'},  name='logout'),

and my own view
def logout(request):
    """Logs out user"""
    auth_logout(request)
    return redirect('/')
    #url(r'^logout', 'siteLogic.views.logout', name='logout'),

Regarding disconnect, it seems it works well since no association is found in the following code once executed the following

        {% for sublist in available_backends|social_backends %}

            {% for name, backend in sublist %}
              {% associated backend %}
              {% if association %}
                <form class="disconnect-form" action="{% url "social:disconnect_individual" backend=association.provider association_id=association.id %}" method="post">{% csrf_token %}
                  <button type="submit" name="{{ backend|backend_class }}" class="btn btn-danger">Disconnect {{ backend|backend_name }}</button>
                </form>

            {% endfor %}

        {% endfor %}

But once I load the homepage with the login code, it automatically signs in with the initial Google account, without letting me use local accounts or another Google account.
I've tried googling and stackoverflow without much luck and I'm stuck, so help is appreciated.

I'm having the same problem. I tried also all posibilities, and I have no clue how can this being solved. Maybe @omab knows the reason.

The problem here is that the auth mechanism is done by the Google SDK and loggin out of your application, doesn't mean logging out of your Google account, which is then verified by the SDK when the page is reloaded, and the user is authenticated again.
This https://developers.google.com/+/web/signin/sign-out seems to be the fix to the problem.

Yes, this JS call function is exactly what I tried, but didn't work, but I think it's because some people are reporting that the logout function doesn't work on localhost. When I have it tested, I will update the Google README file on how to procedure for this functionality.

I've opted for an approach to show Logout for local users and Disconnect for python-social-auth, and to revoke the token given by Google plus, so when I try to login next time, it does not log in automatically and I can either log with local accounts or python-social-auth (having to give permission again).
I had to set the following in the settings.py file to revoke the given token:
SOCIAL_AUTH_REVOKE_TOKENS_ON_DISCONNECT = True
and
To make the changes I suggest at https://github.com/omab/python-social-auth/issues/484
The sign-out procedure reported above seems the most natural way.

@epetxepe, disconnect will remove the association between the google account and the user in your db, you will need association by email to reconnect that account later.

@Menda, maybe it's broken for localhost, but what happens if you setup an entry /etc/hosts to point to your local IP?

Dear @Menda @omab,
I've tried to use the SDK sign out solution (https://developers.google.com/+/web/signin/sign-out), and I've not been able to make the solution work. I've tried testing locally and from remote machines.
I've implemented the following:

...
Sign out

I receive the console.log('User signed out.'); message and logout executes but it is automatically logged again.
Any pointers / example how you have implemented this?
How can I check at debug level if the user has been signed out?

Hi @epetxepe . In my case I also have the same problem as you, because after using the sign out also the users sign in again. This is not only happening in localhost, but in all servers. Let's see if anybody comes with a solution and document it.

@epetxepe, @Menda, I've updated the docs (http://psa.matiasaguirre.net/docs/backends/google.html#google-sign-in) and the example application (https://github.com/omab/python-social-auth/blob/master/examples/django_example/example/templates/home.html#L331-L376) to an up-to-date SDK usage.

@omab Thanks for the updates, but I've not been able to get it working correctly.
I've tried:
1.- Updated example. I'm receiving the following error from Google:

That’s an error.
Error: invalid_request
Application: Si elegans web platform
You can email the developer of this application at<EMAIL_ADDRESS>Permission denied to generate login hint for target domain.
Request Details
openid.realm=
scope=email profile openid https://www.googleapis.com/auth/plus.login
response_type=permission
redirect_uri=storagerelay://http/<IP_ADDRESS>:8000?id=auth720879
ss_domain=http://<IP_ADDRESS>:8000
client_id=--------------------------
fetch_basic_profile=true

I've tried it with <IP_ADDRESS> and localhost. Updated Google Developer Console with http://<IP_ADDRESS>/* to match redirect_uri following http://stackoverflow.com/questions/29201763/google-sign-in-is-not-working
No luck.
2.- Updated my original code with updated documentation http://psa.matiasaguirre.net/docs/backends/google.html#google-sign-in, but the same automatically sign-in after sign-out is repeated. Is there a way to see the changes is your documentation html?

The documentation does not reflect sign out usage and the updated example makes a SDK usage not introduced in the documentation. The example makes a more clear use of the Google's JS SDK objects, while documentation reflects the callback way, which keeps calling complete/google_plus when the https://apis.google.com/js/client:plusone.js is loaded.

@epetxepe, there's an explicit logout example in the docs now, maybe you see a cached version of the page? The changes to the docs are in the repo, this is the particular commit https://github.com/omab/python-social-auth/commit/a4918af20e09642b8ee47724a023899ef93fd22b

@omab yes my browser was rendering a cached version. Sorry for that.
I've tried both the example and the documentation on my dev having to change the following:
1.- To fix the error:
Error: invalid_request Application: Si elegans web platform You can email the developer of this application at<EMAIL_ADDRESS>Permission denied to generate login hint for target domain. Request Details openid.realm= scope=email profile openid https://www.googleapis.com/auth/plus.login response_type=permission redirect_uri=storagerelay://http/<IP_ADDRESS>:8000?id=auth720879 ss_domain=http://<IP_ADDRESS>:8000 client_id=-------------------------- fetch_basic_profile=true
Change: Updated Google Developer Console with http://<IP_ADDRESS>:8000/* & http://localhost:8000/* .  It only works for localhost:8000
2.- To fix the error:
Internal Server Error: /complete/google-plus
Traceback (most recent call last):
File "C:\Users\gepelde.virtualenvs\sielegans\lib\site-packages\django\core\handlers\base.py", line 87, in get_response
response = middleware_method(request)
File "C:\Users\gepelde.virtualenvs\sielegans\lib\site-packages\django\middleware\common.py", line 82, in process_request
"settings.") % (new_url[0], new_url[1]))
RuntimeError: You called this URL via POST, but the URL doesn't end in a slash and you have APPEND_SLASH set. Django can't redirect to the slash URL while maintaining POST data. Change your form to point to localhost:8000/complete/google-plus/ (note the trailing slash), or set APPEND_SLASH=False in your Django settings.
Change: Added an extra slash at the of  $form.attr("action", "/complete/google-plus"); --- from documentation or substitute with the line from example $form.attr("action", "{% url "social:complete" backend="google-plus" %}");
I've proposed a change in github
I'm stuck at error:(On both example and my own dev)
Missing needed parameter access_token or code
Request Method:	POST
Request URL:	https://localhost:8000/complete/google-plus/
Django Version:	1.7.1
Exception Type:	AuthMissingParameter
Exception Value:
Missing needed parameter access_token or code
I've updated your javascript to fill the code value, but I don't know where to get the code from the authResponse object. In the old version it was coming from the callback.
 $form = $("<form>");
$form.attr("action", "{% url "social:complete" backend="google-plus" %}");
$form.attr("method", "post");
$input_access_token = $("<input>");
$input_access_token.attr("name", "access_token");
$input_access_token.attr("value", authResponse.access_token);
$form.append($input_access_token);
**$input_code = $("<input>");**
**$input_code.attr("name", "code");**
**$input_code.attr("value", authResponse.code);**
$form.append($input_code);
// Add csrf-token if needed
$(document.body).append($form);
$form.submit();

Checking the /complete/google-plus/ request I've seen that code is being sent empty, while in the old version, there is a string filled.
As a results I'm stuck in the error:
AuthCanceled at /complete/google-plus/
Authentication process canceled
Request Method:	POST
Request URL:	https://localhost:8000/complete/google-plus/
Django Version:	1.7.1
Exception Type:	AuthCanceled
Exception Value:
Authentication process canceled
I've checked the AuthResponse object at https://developers.google.com/identity/sign-in/web/reference , but not sure if any of its properties is the old version's code value.
Could you please provide advice on this?

There's no code anymore for this authentication mechanism and a change was introduced to take that into account properly in the backend, you need to pull the changes from the repository since it's not released yet.

Thanks @omab, got both sign-in and log-out working with the latest version and no auto-login.


Don't overwrite the icon theme in CupertinoButton

Use case
I have a widget that shows a row of buttons and I want to apply an IconTheme to them for setting their size.
Currently, I have to set the size for each icon within each button individually, because the CupertinoButton widget overwrites any IconTheme provided above it in the tree.
Proposal
I'd like to propose that the build method in _CupertinoButtonState uses IconTheme.of(context).copyWith(color: foregroundColor) to set the theme instead of just IconTheme(color: foregroundColor).
This way, it sets the correct color but also incorporates any parent styles.

@darshankawar @Piinks Is the proposal alright with you? Can I try take a stab at implementing this?

@ricardoboss Feel free to raise a PR. The team can give feedback if any while reviewing it.