Two rxBleClient instances to handle two devices simultaneously

Summary
It’s not exactly an issue, more like a architecture-ish question.
Basically in app, we perform some kind of a real time control on two ble devices simultaneously.
Ble operations are performed very fast so as long there are no errors everything works smoothly.
The problem appears when one of the two devices vanish, and operation hangs. It’s waiting for a timeout, and all the operations from the
second device are waiting in the queue.
We were able to overcome this issue by adding second rxBleClient so every client handles communication with single device.
However, in  all Your docs You strongly emphsise that there should only be one rxBleClient instance in app.
Basically the question is:
is there any way to handle two devices using one rxBleClient without problem I described before?
If not, are there any crucial downsides of using two rxBleClients?
Thanks in advance for any feedback!

Hello @Jogosb
The single RxBleClient instance is recommended because it is serializing all bluetooth actions to make the experience more stable. It is possible that the library serializes too much when it comes to multiple connections but it was not tested and the experience may vary between implementations of the BLE stack from different phone vendors. This use-case is not defined / documented in any way.

is there any way to handle two devices using one rxBleClient without problem I described before?

Unfortunately no — currently it is not possible

If not, are there any crucial downsides of using two rxBleClients?

It is not tested in any way and you may experience weird behaviour / bugs.
For sure actions on a single BluetoothGatt are needed to be synchronized or the next action will not start (i.e. BluetoothGatt.readCharacteristic(BluetoothGattCharacteristic) will return false unless the previous action will finish with a corresponding BluetoothGattCallback). If you could if actions on two or more BluetoothGatts have to be serialized in the same way as on a single BluetoothGatt if would be great and could make the library better.
Best Regards

I using 4 RxBleClient for connect 4 device in the same time. Currently, I do see anything problem.

I have just merged a pull request that should make additional RxBleClient's obsolete — now the same behaviour should be possible to get with only just one. Handling of multiple connections should now be better — stalling of one connection should not interact with others.
The change should be available in 1.4.0-SNAPSHOT shortly.
Best Regards

Dear @dariuszseweryn ,
When is 1.4.0 released ?
Thanks

There are some minor things to finish. Maybe I will be able to release today. If not then early next week. Still waiting to clarify #275 :)


fixed rotation issue caused by invalid contentOffset and invalid constraint.constant

Thanks for the API, saved me some work :) I did notice that while it supports rotation initially, the scrollView.contentOffset and containing view offset isn't properly updated after rotation, which will cause an issue when you attempt to scroll on a view that this not the first tab (as its offset is always zero regardless of rotation, so you wont see the issue). To reproduce, run the demo, swipe to tab 2, rotate , then scroll and you will see the issues exhibited below. Number of reasons, such as the constraints are initially set using the initial rotation, whose size  changes. Similarly, when scrolling, the contentOffset is different for different orientation, etc; producing the phenomenon you see below. Thanks, and sorry about the white spaces :)
** Screenshot of demo

** Using Reveal you can see the view is improperly offset

Thanks!!! I'll happy to merge it!


OP: Reshape fakeTranspose discuss #28

Hi @jackwish
Here is the PR with the naive fakeTranspose. This naive version will add a transpose before every Reshape, which is definitely not our final target, a conditional statement is indeed needed.
The condition that requires the additional Transpose layer is defined below as we discussed in #28 :

if the input (or output) tensor of Reshape holds a special data layout semantic, we need to insert Transpose before (or after) the Reshape operator

I am wondering how to figure the condition out inside the Reshape. How do you think about it?

Maybe we can defer inserting Transpose to Reshape.transform() where the layout propagation has been done - we know the input and output layout requirement if there were any. This looks better as the spatial semantic may also pass through Transparent operators to Reshape and we don't need to worry about how the newly inserted Transpose should work together with layout propagation.
Btw, we adopt a squash approach when merging PRs since we prefer to have a relatively clean commit history. In which way we rebase a feature branch against main branch sometimes.

Hi @jackwish , I have updated the fakeTranspose. As you suggested, I deferred the inserting Transpose into Reshape. transform() and it will only be executed when the input layout is not None. I also added one more test model reshape-transpose.float32.tflite for the fakeTranspose case, though the Codecov is not fully satisfied with the new commits..

Btw, I suggest resolving the heavy history in this PR on a side branch. You can always do git rebase origin/master (depending on how an upstream remote repo named for you) even if you are on the master branch. But ignore this if you are not sure how to do that.
And, don't worry about the CodeCov report, our target is to make code tested but not make CodeCov happy.

Hi @jackwish , thanks for your comments!
I have made the preserve spatial semantic part more generic as you suggested.
Also, a preserveOutputSpatialSemantic function is added dealing with the reshape-conv cases. Though its structure is similar to the input one, I keep them separately temporarily for readability.
Notably, one difference between the output and the input case is that sometimes there is more than one consumer for the output. There might be a chance for these consumers requiring different layouts, but I think it is a quite small chance for people to construct a network like that. So I assume the multiple consumers require the same spatial semantic currently.
More test models are added, including conv-reshape.float32, 'conv-reshape-conv.float32', 'conv-reshape-multiple-conv.float32'.
One thing to mention: there is a reshape-conv.float32 initially, but it has a NHWC input while a NCHW output layout, which seems not so convenient to be tested in the current framework. That's the reason for adding a conv-reshape-conv as a substitute.
Finally, sorry for the noisy heavy history.. I can give it a try to resolve.

BTW the tests tests/test_quantize.py in the build and test failed occasionally though they got passed well on my local machine. And it seems there is no modification for codes of quantize part, which is quite interesting.

Hi @jackwish
The dimension restriction problem of reshape-conv.float32 was sorted by turning to 3D input. Thanks for your suggestions!
Please also check the other changes.
As for the heavy history, I tried to squash them but git complains conflicts for the current changes in this PR, which I think it's a little bit dangerous to sort that from my remote branch. It will be great if you can help it when merging. Thanks a lot!

@erizmr Thank you for your contribution, this is now merged.
Btw it's somehow dangerous to open PR from master branch, it may be deleted unexpectedly after merging.

@jackwish
Thanks for confirming this PR.
Yeah, indeed, will checkout to a new branch for the next PRs. 👍


Will not compile

Home Assistant for Linux (Raspberry Pi) version 0.99.2 (as of 22nd Sept 2019) will no longer compile the code. Python version on HA is 3.7.4
Previous release of HA (0.98) was working fine.
Here is the information from the log:
19-09-22 16:17:25 INFO (SyncWorker_11) [hassio.docker.addon] Start build 840189d6/armv7-addon-xboxone:2.0.1
19-09-22 16:17:33 ERROR (SyncWorker_11) [hassio.docker.addon] Can't build 840189d6/armv7-addon-xboxone:2.0.1: The command '/bin/ash -o pipefail -c apk add --no-cache jq gcc musl-dev python3-dev libffi-dev openssl-dev python3 &&     python3 -m ensurepip &&     rm -r /usr/lib/python*/ensurepip &&     pip3 install --upgrade pip setuptools &&     if [ ! -e /usr/bin/pip ]; then ln -s pip3 /usr/bin/pip ; fi &&     if [[ ! -e /usr/bin/python ]]; then ln -sf /usr/bin/python3 /usr/bin/python; fi &&     rm -r /root/.cache' returned a non-zero code: 11
19-09-22 16:54:06 ERROR (MainThread) [aiohttp.server] Unhandled exception
EDITED to add log info.

Thanks for the bug report. I was able to reproduce this on my end; it probably has to do with the dependencies being pulled into the container. Updating the base image from 4.0.3 to 5.0.1 seems to have done the trick.
I'll pull this into the next release shortly.


skate: 0.2.1 -> 0.2.2

Diff: https://github.com/charmbracelet/skate/compare/v0.2.1...v0.2.2
Changelog: https://github.com/charmbracelet/skate/releases/tag/v0.2.2
Description of changes

Things done

Built on platform(s)

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

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

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

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[x] Tested basic functionality of all binary files (usually in ./result/bin/)
23.11 Release Notes (or backporting 23.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 pr 237790 run on aarch64-darwin 1

1 package built:

skate


xlate-or: initial support

This PR adds OpenROADM (v.10) translator.
It supports to translate the following OpenROADM YANG models and Goldstone YANG models:

org-openroadm-device model
org-openroadm-pm model

This implementation is contributed from Fujitsu and NTT.

The CI fails at lint stage, so I will look into and fix it.

@ishidawataru
As for the errors at lint stage, I found that several source codes under src should be reformatted.
So I pushed a commit https://github.com/oopt-goldstone/goldstone-mgmt/pull/74/commits/29eb2e97b7a55408c55d2243464c4ad4a97ea540, and now CI passed.
But if it's better to create another branch and PR for this, please let me know. I will do it.
For more details, I would like to share what I did.

Reproduced the error at lint stage in my local environment.

# docker run -t -v `pwd`:`pwd` -w `pwd` ghcr.io/oopt-goldstone/mgmt/tester:latest make lint
which black && exit `black -q --diff --exclude "src/north/snmp/src|src/north/gnmi/goldstone/north/gnmi/proto" src | wc -l`
/usr/local/bin/black
make: *** [Makefile:94: lint] Error 73

Reformatted the codes as follows.

# docker run -t -v `pwd`:`pwd` -w `pwd` ghcr.io/oopt-goldstone/mgmt/tester:latest black --exclude "src/north/snmp/src|src/north/gnmi/goldstone/north/gnmi/proto" src
reformatted /home/ntt/oss-goldstone-mgmt/src/north/cli/tests/test_system.py
reformatted /home/ntt/oss-goldstone-mgmt/src/lib/tests/test_abort.py
reformatted /home/ntt/oss-goldstone-mgmt/src/north/cli/tests/test_management_interfaces.py
reformatted /home/ntt/oss-goldstone-mgmt/src/north/notif/gsnotif/main.py
reformatted /home/ntt/oss-goldstone-mgmt/src/lib/goldstone/lib/connector/base.py
reformatted /home/ntt/oss-goldstone-mgmt/src/lib/tests/test_sysrepo.py
reformatted /home/ntt/oss-goldstone-mgmt/src/north/cli/goldstone/north/cli/system.py
reformatted /home/ntt/oss-goldstone-mgmt/src/north/cli/tests/test_transponder.py
reformatted /home/ntt/oss-goldstone-mgmt/src/south/sonic/goldstone/south/sonic/__init__.py
reformatted /home/ntt/oss-goldstone-mgmt/src/lib/goldstone/lib/server_connector/sysrepo.py
reformatted /home/ntt/oss-goldstone-mgmt/src/lib/goldstone/lib/core.py
reformatted /home/ntt/oss-goldstone-mgmt/src/north/cli/goldstone/north/cli/main.py
reformatted /home/ntt/oss-goldstone-mgmt/src/xlate/openconfig/goldstone/xlate/openconfig/__init__.py
reformatted /home/ntt/oss-goldstone-mgmt/src/south/system/gssystem/k8s.py
reformatted /home/ntt/oss-goldstone-mgmt/src/north/cli/goldstone/north/cli/platform.py
reformatted /home/ntt/oss-goldstone-mgmt/src/north/cli/goldstone/north/cli/portchannel.py
reformatted /home/ntt/oss-goldstone-mgmt/src/north/cli/tests/test_interfaces.py
reformatted /home/ntt/oss-goldstone-mgmt/src/system/telemetry/goldstone/system/telemetry/store.py
reformatted /home/ntt/oss-goldstone-mgmt/src/north/cli/goldstone/north/cli/ufd.py
reformatted /home/ntt/oss-goldstone-mgmt/src/north/cli/goldstone/north/cli/aaa.py
reformatted /home/ntt/oss-goldstone-mgmt/src/north/cli/goldstone/north/cli/vlan.py
reformatted /home/ntt/oss-goldstone-mgmt/src/south/gearbox/goldstone/south/gearbox/gearbox.py
reformatted /home/ntt/oss-goldstone-mgmt/src/north/cli/goldstone/north/cli/base.py
reformatted /home/ntt/oss-goldstone-mgmt/src/south/sonic/goldstone/south/sonic/k8s_api.py
reformatted /home/ntt/oss-goldstone-mgmt/src/south/tai/tests/test.py
reformatted /home/ntt/oss-goldstone-mgmt/src/south/sonic/goldstone/south/sonic/interfaces.py
reformatted /home/ntt/oss-goldstone-mgmt/src/south/gearbox/tests/tests.py
reformatted /home/ntt/oss-goldstone-mgmt/src/south/tai/goldstone/south/tai/transponder.py
reformatted /home/ntt/oss-goldstone-mgmt/src/north/cli/goldstone/north/cli/interface.py

All done! ? ? ?
29 files reformatted, 121 files left unchanged.

@KazuyaAnazawa Thanks. Please open a new PR to fix the CI.

@ishidawataru I'm so sorry for the delay.
I have fixed several parts according to the comments. Could you check this?

I reused platform.json for port mapping in https://github.com/oopt-goldstone/goldstone-mgmt/pull/74/commits/05f0d61880d70e67ae03ed369b7abc225ce2e21f.
operational-modes.json was used here, but only one operational mode was defined. I added more operational modes in https://github.com/oopt-goldstone/goldstone-mgmt/pull/74/commits/a99a358887d3418b6f275743b0aa90121281ddec. I have checked the modes (profiles) are correctly configured on real GFT.
Another minor mistake is fixed in https://github.com/oopt-goldstone/goldstone-mgmt/pull/74/commits/639606293e9c9955004e8b8d97a1892eed28ecc8.

@ishidawataru So sorry for delayed update.
I have fixed the source codes according to comments https://github.com/oopt-goldstone/goldstone-mgmt/pull/74#discussion_r1195824902.
Sorry to bother, but could you review fixed codes?

@KazuyaAnazawa Thanks. Looks good to me. Please clean up the commits.

@ishidawataru Thank you for your review.
I have cleaned up the commits.


Numbering can cause errors if previous tape was deleted

so by default the tapes get named unnamed-<number>.json5
if you have a few tapes and you haven't manually renamed them and you delete one from the middle. example:
unnamed-1.json5
unnamed-2.json5
(deleted tape because it became unused)
unnamed-4.json5

the default numbering will calculate that there are currently 3 tapes and the next tape should be saved at unnamed-4.json5 which will overwrite the previous tape.
Suggestion, switch to a different naming convention that is resilient to this...
I will submit a PR shortly, it will likely mean a breaking change to the signature of the tapeNameGenerator function.

alternative suggestion... before writing the file, try to parse what numbers are in use... but this is also really challenging, as if a use has provided a tapeNameGenerator function that changes how they are named from unnamed-<tapeNumber>.json5 to something like <tapeNumber>-unnamed.json5 the parsing wont see it.
Theoretically, we could have talkback call the tapeNameGenerator then check if there is already a file in that location and if there is, increment the tapeCount by 1 and call it again... and repeat... this is probably the safest approach that wont cause a change in the API

Addressed in 4.1.0 (CHANGELOG)


Exclude fields with a NoRandomizer

This feature has been requested by @wheredevel in issue #56 :
It might be nice to have a NoRandomizer = another way to Exclude...
Like that:
return PopulatorBuilder.aNewPopulatorBuilder()
        .registerRandomizer(Serializable.class,
            Long.class,
            "serialVersionUID",
            new NoRandomizer())
        .build();

There is already a NullRandomizer that you can use to exclude fields this way. This is a typical implementation of the Null Object Pattern.
Would this be what you are looking for?

In my case it was an attempt to do Exclude.
So, I guess, the NoRandomizer a different case than NullRandomizer: it's whenever you don't want to randomize a filed or type at all. Exclusion, as I said - yet another way.

I see, kind of a SkipRandomizer. This is easy to implement, we just need to make Random Beans check if the registered randomizer for the current field is of type NoRandomizer and simply skip/ignore the field.
But what if we simply add a method to the API to exclude fields like:
Populator p = aNewPopulator()
   .exclude(Person.class, String.class, "name")
   .build();

Person person = p.populateBean(Person.class);

This is more natural and equivalent to registering a NoRandomizer for the field name but without the need for such a randomizer. This makes it possible to exclude fields programmatically. What do you think?

I'd offer both. Like, "choose your flavor"...
Ah, and, BTW, I believe you already have an annotation option too, right?
I myself don't mind contributing by codding.
I already cloned the repo. Watched the code. Very-very nicely written.
Do you have contributing instructions somewhere?

I'd offer both. Like, "choose your flavor"...
Ah, and, BTW, I believe you already have an annotation option too, right?

Indeed, there are already 2 ways to exclude fields, and will add the third way with this suggested feature. So we can say the user can already choose his flavor right away :smile:

I already cloned the repo. Watched the code. Very-very nicely written.

Thank you!

Do you have contributing instructions somewhere?

Not really, you are welcome to open pull requests and contribute to the project.

Hi Pavel,
I've added the third way to exclude fields as you suggested, here is an example:
// given
populator = aNewPopulatorBuilder()
   .exclude(field().named("name").ofType(String.class).inClass(Person.class).get())
   .build();

 // when
Person person = populator.populateBean(Person.class);

// then
assertThat(person).isNotNull();
assertThat(person.getName()).isNull();

It's already merged in the master branch.
It uses a SkipRandomizer behind the scene ;-)
I've also added a small builder to exclude fields with a more readable fluent API.
Looking forward to hear your thoughts.
Kind regards
Mahmoud

Thanks, I'll give it a try.

Hi, great! Looking forward for your feedback.
You can also exclude  fields using the SkipRandomizer explicitely:
populator = aNewPopulatorBuilder()
   .randomize(field().named("name").ofType(String.class).inClass(Person.class).get(), new SkipRandomizer())
   .build();

Personally, I prefer the exclude method.. but that's a matter of taste :smile:
Kind regards
Mahmoud


Change file name reference so dev compiles

Hey! This went unnoticed cause Mac doesn't show up issues with filename case.
Thank you for the fix. But the issue is in the filename rather than the import. For consistency, it should be Faq.js in the components/sections folder. So if you could change that instead, I'd be happy to go ahead and merge this!

Apologies for delay, traveling on business.  Will fix as requested and send new PR.


Add owner references to Elyra role binding when creating notebooks

Closes #1721
Description

Check the Elyra service account role binding every time we create/restart a notebook with the enabled pipelines feature. If the role binding is there, check the ownerReferences field to see if the notebook is the owner, if not, patch it. If the role binding is not there, create a new one with the ownerReferences field and set the notebook as the owner. In this way, every time the user deletes the notebook, it will also delete the role binding.
How Has This Been Tested?

Enable pipelines
Create a workbench
Check the role binding named elyra-pipelines-${workbenchName} is created and has the ownerReferences field
Try to delete the workbench, make sure the role binding is also deleted along with the deletion of the workbench
Create a workbench again, then remove the ownerReferences field in the role binding
Delete the workbench, you will find the role binding is not deleted
Then create a workbench with the same name in step 5
Check the role binding and you will find it's patched with the ownerReferences field again with the new workbench uid
Delete the workbench, and make sure the role binding is deleted too
Repeat step 5
Stop the workbench, then restart it
You will find the ownerReferences field is added
Toggle the status, make sure the role binding is not affected and no error out

Test Impact

N/A, it's about a field in role binding,
Request review criteria:

Self checklist (all need to be checked):

[x] The developer has manually tested the changes and verified that the changes work
[x] Commits have been squashed into descriptive, self-contained units of work (e.g. 'WIP' and 'Implements feedback' style messages have been removed)
[x] Testing instructions have been added in the PR body (for PRs involving changes that are not immediately obvious).
[x] The developer has added tests or explained why testing cannot be added (unit tests & storybook for related changes)

If you have UI changes:

[ ] Included any necessary screenshots or gifs if it was a UI change.
[ ] Included tags to the UX team if it was a UI/UX change (find relevant UX in the SMEs section).

After the PR is posted & before it merges:

[ ] The developer has tested their solution on a cluster by using the image produced by the PR to main

/lgtm
/approve


Remove unsupported environment option

This option seems to be no longer supported as of 10c8582a6b01c37fb2db7e343b5204c713fbb7cd, and will crash the server if provided in the config.

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.


Add error notification when ava is not found

This will appear if the command returns command not found.

Thanks :)


Planning: Breaking changes for trillium 0.3

Breaking Changes

[!NOTE]
This is non-exhaustive and none of these are certain, so please provide feedback and suggest further breaking changes

trillium

[ ] remove impl Handler for Arc<Handler> -- the primary use case for this is internal to trillium, and should be implemented for a newtype wrapper, as we can ensure that we call init prior to cloning. There is no implementation of init that will avoid a sharp edge for someone
[ ] remove Conn::headers and Conn::headers_mut -- it's better for callers to be explicit about whether they want request headers or response headers
[ ] remove trillium::Init for now
[ ] make Info not Clone
[ ] pare Info down, lean on StateSet (#398)
[ ] consider making Handler not object-safe by returning impl Future instead of using async_trait and instead introducing a BoxedHandler; this would be worth only worth it if it represents a performance improvement.
[ ] Introduce IntoHandler and require all Handler implementations to #[derive(IntoHandler)] or impl IntoHandler for Whatever { type Handler = Self; fn into_handler(self) -> Self { self } }
[ ] figure out if there's a way to avoid trillium reexports trillium-http types from locking server-minor versions; ideally trillium-http could make breaking changes that only require a trillium patch change as long as the reexported types aren't breaking
[ ] use Swansong instead of Stopper + CloneCounter + CloneCounterObserver

trillium-http

[ ] make all fields on Upgrade private and add accessor functions
[ ] remove httparse
[ ] replace all reexported error types with intrinsic variants that don't contain external implementation details (and allow breaking changes in the contained types)
[ ] Synthetic::len should return usize (if Synthetic isn't removed entirely)
[ ] Replace (Stopper, HttpConfig) with an arced struct that represents "All state that's shared across this server" in preparation for a buffer pool that doesn't require globals
[ ] use Swansong instead of Stopper

consider making Handler not object-safe by returning impl Future instead of using async_trait and instead introducing a BoxedHandler; this would be worth only worth it if it represents a performance improvement.

It would also be worth it if it's performance-neutral, since it would substantially improve the quality of the documentation, and eliminate the need to append (and maintain) "here's the actual async fn signature".


HttpContext.Session.GetString Not Working on Linux

From @ZackTech on Tuesday, September 10, 2019 6:56:59 AM
I have an Asp.net Core application version 2 (I have yet to upgrade it to version 2.2and beyond)
The following code generates a Captcha image:
public FileStreamResult GetCaptchaImage()
        {
            int width = 200;
            int height = 60;

            string captchaCode = Captcha.GenerateCaptchaCode();

            var result = Captcha.GenerateCaptchaImage(width, height, captchaCode);

            HttpContext.Session.SetString("CaptchaCode", result.CaptchaCode);

            Stream s = new MemoryStream(result.CaptchaByteData);

            return new FileStreamResult(s, "image/png");
        }

When I test the Captcha code is correct with code like this:
if (viewModel.CaptchaCode != HttpContext.Session.GetString("CaptchaCode"))
{
}

It works fine on my local windows PC and on Azure but not on a Ubuntu VPS.
On the Ubuntu VPS it always comes back as null.
I build the project on a Windows PC using the following commands:
dotnet restore -r ubuntu.16.04-x64
dotnet build -r ubuntu.16.04-x64
dotnet publish -f netcoreapp2.0 -c Release -r ubuntu.16.04-x64

And then  publish to Linux.
Any ideas how I can fix this?
Copied from original issue: dotnet/corefx#41116

From @davidsh on Sunday, September 15, 2019 2:34:14 PM
@Tratcher This looks like an ASP.NET issue

Anything in the server logs?

Unfortunately there are no messages generated in the server logs, I re-checked this morning.

Turn your log levels up to Debug, Session always writes some logs.

crmwebsite.out.log
That is the log file ^^^^^

info: Microsoft.AspNetCore.Hosting.Internal.WebHost[1]
      Request starting HTTP/1.0 GET http://localhost:54446/UserAccount/GetCaptchaImage?code=VB74
dbug: Microsoft.AspNetCore.StaticFiles.StaticFileMiddleware[4]
      The request path /UserAccount/GetCaptchaImage does not match a supported file type
dbug: Microsoft.AspNetCore.Routing.RouteConstraintMatcher[1]
      Route value 'UserAccount' with key 'area' did not match the constraint 'Microsoft.AspNetCore.Mvc.Routing.KnownRouteValueConstraint'.
dbug: Microsoft.AspNetCore.Routing.RouteBase[1]
      Request successfully matched the route with name 'default' and template '{controller=Home}/{action=Index}/{id?}'.
dbug: Microsoft.AspNetCore.Mvc.Internal.ControllerActionInvoker[1]
      Executing action Crm.WebSite.Controllers.UserAccountController.GetCaptchaImage (Crm.WebSite)
info: Microsoft.AspNetCore.Mvc.Internal.ControllerActionInvoker[1]
      Executing action method Crm.WebSite.Controllers.UserAccountController.GetCaptchaImage (Crm.WebSite) with arguments (VB74) - ModelState is Valid
info: Microsoft.AspNetCore.Session.DistributedSession[2]
      Accessing expired session, Key:5be4992c-3a19-0eb7-d292-5dcf8729a9af
dbug: Microsoft.AspNetCore.Mvc.Internal.ControllerActionInvoker[2]
      Executed action method Crm.WebSite.Controllers.UserAccountController.GetCaptchaImage (Crm.WebSite), returned result Microsoft.AspNetCore.Mvc.FileStreamResult.
info: Microsoft.AspNetCore.Mvc.Internal.VirtualFileResultExecutor[1]
      Executing FileResult, sending file as
dbug: Microsoft.AspNetCore.Server.Kestrel.Transport.Libuv[6]
      Connection id "0HLPRDNIQ1M9A" received FIN.
dbug: Microsoft.AspNetCore.Server.Kestrel[10]
      Connection id "0HLPRDNIQ1M9A" disconnecting.
dbug: Microsoft.AspNetCore.Server.Kestrel.Transport.Libuv[7]
      Connection id "0HLPRDNIQ1M9A" sending FIN.
info: Microsoft.AspNetCore.Mvc.Internal.ControllerActionInvoker[2]
      Executed action Crm.WebSite.Controllers.UserAccountController.GetCaptchaImage (Crm.WebSite) in 10.4434ms
info: Microsoft.AspNetCore.Session.SessionMiddleware[10]
      Committing the session was canceled.
info: Microsoft.AspNetCore.Hosting.Internal.WebHost[2]
      Request finished in 15.4873ms 200 image/png

Ah, this explains it: "Committing the session was canceled.". The request was made using HTTP/1.0 and the result had a fixed content-length, so the client disconnected as soon as it received the response but before the session was saved.
Do you control the client? Why is the client using HTTP/1.0 instead of HTTP/1.1? 1.1 would be a lot more efficient and would avoid closing the connection immediately.
The link between client disconnect and session commit has caused several problems like this so we disconnected them in 3.0. Would you be able to try this on 3.0?
The other workaround you can use is to call Session.CommitAsync after you set the session values and before you send the response. Then it won't matter that the client disconnects.
On another note, you should check on your data protection configuration:
warn: Microsoft.AspNetCore.DataProtection.Repositories.EphemeralXmlRepository[50]
      Using an in-memory repository. Keys will not be persisted to storage.
warn: Microsoft.AspNetCore.DataProtection.KeyManagement.XmlKeyManager[59]
      Neither user profile nor HKLM registry available. Using an ephemeral key repository. Protected data will be unavailable when application exits.

Protected data like your session keys will stop working if the server restarts.
https://docs.microsoft.com/en-us/aspnet/core/security/data-protection/configuration/overview?view=aspnetcore-2.2

Closing this as we believe it is fixed in 3.0. Feel free to comment/reopen if it still reproduces in 3.0!

Thanks Tratcher, Session.CommitAsync seems to be the answer.

Do you control the client? Why is the client using HTTP/1.0 instead of HTTP/1.1? 1.1 would be a lot more efficient and would avoid closing the connection immediately.
<<
Been on freenode in the nginx chat room and they tell me my nginx config is OK. May be I need to do something to the Kestrel application?

The caller (proxy) selects the protocol version, not the server. Did you try the nginx config from our docs?
https://docs.microsoft.com/en-us/aspnet/core/host-and-deploy/linux-nginx?view=aspnetcore-2.2#configure-nginx


check failed: stack_overflow()

This is the error
#
# Fatal error in , line 0
# Check failed: stack_overflow().
#
#
#
#FailureMessage Object: 0x7ffdc48c3860
 1: 0xb6d391  [FaxSto]
 2: 0x1bf6a04 V8_Fatal(char const*, ...) [FaxSto]
 3: 0x113ae31 v8::internal::Parser::DoParseFunction(v8::internal::Isolate*, v8::internal::ParseInfo*, int, int, int, v8::internal::AstRawString const*) [FaxSto]
 4: 0x113b2dc v8::internal::Parser::ParseFunction(v8::internal::Isolate*, v8::internal::ParseInfo*, v8::internal::Handle<v8::internal::SharedFunctionInfo>) [FaxSto]
 5: 0x1144104 v8::internal::parsing::ParseFunction(v8::internal::ParseInfo*, v8::internal::Handle<v8::internal::SharedFunctionInfo>, v8::internal::Isolate*, v8::internal::parsing::ReportStatisticsMode) [FaxSto]
 6: 0x11444fd v8::internal::parsing::ParseAny(v8::internal::ParseInfo*, v8::internal::Handle<v8::internal::SharedFunctionInfo>, v8::internal::Isolate*, v8::internal::parsing::ReportStatisticsMode) [FaxSto]
 7: 0xe421e4 v8::internal::ErrorUtils::ThrowLoadFromNullOrUndefined(v8::internal::Isolate*, v8::internal::Handle<v8::internal::Object>, v8::internal::MaybeHandle<v8::internal::Object>) [FaxSto]
 8: 0x11fa7ef v8::internal::Runtime::GetObjectProperty(v8::internal::Isolate*, v8::internal::Handle<v8::internal::Object>, v8::internal::Handle<v8::internal::Object>, v8::internal::Handle<v8::internal::Object>, bool*) [FaxSto]
 9: 0x11fd98f v8::internal::Runtime_GetProperty(int, unsigned long*, v8::internal::Isolate*) [FaxSto]
10: 0x15e7cf9  [FaxSto]
Trace/breakpoint trap (core dumped)

I've read the readme and it mentions arrow functions to be a possible cause. However, only some users using my application experience this issue whereas others are completely fine.
So this made me think if it's a compiling issue or if it's another possible issue.
Their OS (Ubuntu 20.04 LTS) and node version (16.13.2) are the same as others who are also using the application.

Some insight to specific causes of this error would be helpful ❤

If both groups have the same arch, then I cannot think of other possiblr causes other than arrow functions; I don't know (without seeing your code) why only some of your users experience the error though.
Get rid of arrow functions and see what will you got.

If both groups have the same arch, then I cannot think of other possiblr causes other than arrow functions; I don't know (without seeing your code) why only some of your users experience the error though.
Get rid of arrow functions and see what will you got.

Do you recommend just removing all arrow functions everywhere?

Yes, because you never know when will v8 do its thing and check for their source code, which will be missing in your jsc files, hence the error.

Currently working with the user to narrow down the issue. I've replaced every single arrow function in the whole application (over 800 of them).
Now narrow it down to content in a particular file which is only throwing the error when that file is loaded

Research is showing it came down to a connection query where the UPDATE TABLE statement failed as the table didn't exist. Odd that instead of throwing its error, it caused this error response.
I'll test with the other users and report back if this is consistent.

The same error is happening to me. Was the issue resolved by removing the arrow functions?

Try and see if it solve your problem. The error is not specific to one cause, so we don't know unless we know your exact code.
Arrow functions cause that sort if error, so removing them might help you.

Removing the arrow functions from that query that failed above fixed it.


HW Upgrade - Mix 3V3 offset voltage to PGA input not PGA output

Mix 3V3 offset voltage to PGA input not PGA output
Add jumper to allow either option on PCB

Resolved in 884bd39

Added DG470 to bypass inverting opamp stage on output


User-defined infix operators

It would be nice to have operators for:

forward and reverse function composition: (<<), (>>)
forward and reverse function application: (<|), (|>)
mathematical operations: (+), (-), (*), (/)
string concatenation: (++)

One interesting problem is trying to do precedences in an ok/semi-sane sort-of-way. I think Fortress had something where you could define groups of operators with related precedences. Swift has precedence groups - not sure how that turned out for them. Would you happen to know @graydon?

Thanks for the info! Might try tracking down some code/libraries that use them to see how it looks. I'd just like to avoid the numeric precedences that are kind of hard to use/visualise in Coq, Agda, and Lean.
Unlike Swift, Pikelet won't have overloading apart from instance arguments (#13), so I'm guessing that would dodge the global name lookup issue? It would kind of look like:
Monoid (a : Type) = Record {
    empty : a,
    append : a -> a -> a,
};

(<>) : {a : Type} {{M : Monoid a}} -> a -> a -> a;
(<>) {{M}} = M.append;

I really like the clarity of design docs you're putting out, keep it up! very lucid, makes me feel a bit ashamed at the mess of my note-taking on rust.

Thanks for the feedback! Lots of this is based on the stuff I've learned from being around Rust's development process as its grown over the years, and also through some of the mistakes I've made during the development of my own libraries. The stuff we have learned while working on Rust isn't just all the language/type system features, it's also been all the community and process stuff. That takes time, experimentation, and trial and error to figure out - I couldn't have arrived at this process on my own!
That said, there are some definite reactions against some of the early design processes. I'm trying hard to keep my eye on the goal of future formalization and core simplicity of design, as I think that's critical to not becoming a culdesac like C++ has become (and what Rust is trying to dodge becoming with RustBelt). But again, I could have only learned that by hindsight via Rust, and by getting excited about language design and theory thanks to your influence! ❤


Switch to just one target (no more -iOS -OSX)

I loosely followed http://promisekit.org/news/2016/08/Multiplatform-Single-Scheme-Xcode-Projects/, I built the new target on iOS & watchOS
This makes using swift-package-manager much easier

How does this relate to SwiftPM?
I'm generally against universal frameworks, but I'm willing to reconsider if there's a compelling reason.

I should have added more context, my apologies. This relates to SwiftPM in that it's easier to maintain one target instead of 4 in Package.swift.
Would you care to share why you're against universal frameworks? If this change will negatively effect the framework we should abandon it. It's only value add is that it can simplify maintenance.
For even more context, you can look at our conversation about implementing the same thing for Moya at https://github.com/Moya/Moya/issues/818 and https://github.com/Moya/Moya/pull/967. 967 has review notes and potential downsides that may be relevant in our case

We should be able to have 4 schemes here and 1 target in Package.swift. The two are unrelated. (See https://github.com/ReactiveCocoa/ReactiveSwift/ for example.)

Would you care to share why you're against universal frameworks? If this change will negatively effect the framework we should abandon it. It's only value add is that it can simplify maintenance.

I haven't found that universal frameworks simplify maintenance. Having everything separate makes it easier to understand what exactly is going on. But it can be hard to tell what build settings apply to which platforms or tell if there's any interference.
If the tooling (i.e. Xcode) were designed to use universal frameworks, it would be a different matter.

Interesting, I'll take a look.
I see, so it's like I'm working against the tool. I'll try to incorporate
that into my mindset. Great feedback, thanks Matt 🙃
I'll go ahead and close and change #105 so it doesn't depend on the change
On Fri, Dec 15, 2017 at 11:02 AM Matt Diephouse<EMAIL_ADDRESS>wrote:

We should be able to have 4 schemes here and 1 target in Package.swift.
The two are unrelated. (See
https://github.com/ReactiveCocoa/ReactiveSwift/ for example.)
Would you care to share why you're against universal frameworks? If this
change will negatively effect the framework we should abandon it. It's only
value add is that it can simplify maintenance.
I haven't found that universal frameworks simplify maintenance. Having
everything separate makes it easier to understand what exactly is going on.
But it can be hard to tell what build settings apply to which platforms or
tell if there's any interference.
If the tooling (i.e. Xcode) were designed to use universal frameworks, it
would be a different matter.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/SwiftGit2/SwiftGit2/pull/104#issuecomment-352057694,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ADo1dNTJ_-OZ6SMFYU5rvw3EFB8OaRxUks5tAqYRgaJpZM4QDtUL
.


Changing badge link

Codecov Report

Merging #50 (16fd3b5) into main (3568df8) will not change coverage.
The diff coverage is n/a.

@@            Coverage Diff            @@
##              main       #50   +/-   ##
=========================================
  Coverage   100.00%   100.00%
=========================================
  Files           12        12
  Lines          364       364
=========================================
  Hits           364       364

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 3568df8...16fd3b5. Read the comment docs.


Right click download folder will download .tar.gz issue in macOS

Problem/Motivation
In macOS (Version 10.14.4), after opened Cloud IDE in Google Chrome Version 74.0.3729.157 (Official Build) (64-bit), when you right click and download folder (In this case: config folder), it will download config.tar.gz folder to PC, as per screenshot below:

After I opened the file with KeKa, it will have following error:

This issue cannot be reproduced on Windows 7 Google Chrome Version 74.0.3729.157 (Official Build) (64-bit).
Expected behavior
Download config.tar.zip into PC similar to Windows Based Google Chrome.
Actual behavior
Download config.tar.gz into PC.
Steps to reproduce

Open Google Chrome in macOS.
Open Cloud IDE of HA.
Right click on one of the folder (Example: config) and select Download.
config.tar.gz will be download into PC (Download URL: http://IP:8123/vfs/1/9cRfu6nYdlD7JfZi/workspace/share/?download=share.tar.gz).
Copy config.tar.gz download link and change from .gz to .zip (Download URL: http://IP:8123/vfs/1/9cRfu6nYdlD7JfZi/workspace/share/?download=share.tar.zip), then config.tar.zip will be download into PC.
Use KeKa to open config.tar.gz, unable to read the content of file. But can open config.tar.zip successfully.

Proposed changes
Download XXX.tar.zip directly when user select Download for respective folder.

👋 Thanks for opening your first issue here! If you're reporting a 🐛 bug, please make sure you include steps to reproduce it. Also, logs, error messages and information about your hardware might be usefull.

Included in the first post.

This is unfortunately not going to be fixed.
Cloud9 has been acquired by Amazon and the project has been left for dead. :(
If you can run the Visual Studio Code add-on, I would highly recommend it as a replacement.

This is unfortunately not going to be fixed.
Cloud9 has been acquired by Amazon and the project has been left for dead. :(
If you can run the Visual Studio Code add-on, I would highly recommend it as a replacement.

Thanks for the info.


Errors

Traceback (most recent call last):
File "D:\Downloads\Compressed\MudaeAutoBot-main\MudaeAutoBot-main\MudaeAutoBot.py", line 29, in
settings = json.load(jsonf)
File "C:\Users\HIGH-GAMING\AppData\Local\Programs\Python\Python39\lib\json_init_.py", line 293, in load
return loads(fp.read(),
File "C:\Users\HIGH-GAMING\AppData\Local\Programs\Python\Python39\lib\json_init_.py", line 346, in loads
return _default_decoder.decode(s)
File "C:\Users\HIGH-GAMING\AppData\Local\Programs\Python\Python39\lib\json\decoder.py", line 337, in decode
obj, end = self.raw_decode(s, idx=_w(s, 0).end())
File "C:\Users\HIGH-GAMING\AppData\Local\Programs\Python\Python39\lib\json\decoder.py", line 355, in raw_decode
raise JSONDecodeError("Expecting value", s, err.value) from None
json.decoder.JSONDecodeError: Expecting value: line 17 column 4 (char 376)
This is what I get when trying to run it.

there an issue with your json file setting
you can use a json validator and see if you missing commas or there a spacing issue or something

Okay will try. Will update you on this. Thanks!

Now I get this.
Exception ignored in thread started by: <bound method GatewayServer._response_loop of <discum.gateway.gateway.GatewayServer object at 0x000001B688913B50>>
Traceback (most recent call last):
File "C:\Users\HIGH-GAMING\AppData\Roaming\Python\Python39\site-packages\discum\gateway\gateway.py", line 288, in _response_loop
func(resp)
File "D:\Downloads\Compressed\MudaeAutoBot-main\MudaeAutoBot-main\MudaeAutoBot.py", line 603, in on_message
msg = get_server_settings(gid,matched_channel)
File "D:\Downloads\Compressed\MudaeAutoBot-main\MudaeAutoBot-main\MudaeAutoBot.py", line 138, in get_server_settings
msgs = bot.searchMessages(guild_id,userID=[mudae],textSearch="($togglehentai)").json()['messages']
TypeError: searchMessages() got an unexpected keyword argument 'userID'
Sorry not used to debugging Python as I just started in learning it.

So I’m working on a few thing before pushing the commit but the dependency “Discum” changed the keyword on their end so eventually I will push the commit but all it is for now is changing
UserID to authorID
Sent from my iPhone

On Jun 1, 2021, at 11:04 PM, byronsanity @.***> wrote:

Now I get this.
Exception ignored in thread started by: <bound method GatewayServer._response_loop of <discum.gateway.gateway.GatewayServer object at 0x000001B688913B50>>
Traceback (most recent call last):
File "C:\Users\HIGH-GAMING\AppData\Roaming\Python\Python39\site-packages\discum\gateway\gateway.py", line 288, in _response_loop
func(resp)
File "D:\Downloads\Compressed\MudaeAutoBot-main\MudaeAutoBot-main\MudaeAutoBot.py", line 603, in on_message
msg = get_server_settings(gid,matched_channel)
File "D:\Downloads\Compressed\MudaeAutoBot-main\MudaeAutoBot-main\MudaeAutoBot.py", line 138, in get_server_settings
msgs = bot.searchMessages(guild_id,userID=[mudae],textSearch="($togglehentai)").json()['messages']
TypeError: searchMessages() got an unexpected keyword argument 'userID'
Sorry not used to debugging Python as I just started in learning it.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub, or unsubscribe.

In terms of kakera ? Or characters in the character roll it should print on the console why it is sniping it whether it be from kak value or from char list etc etc
Sent from my iPhone

On Jun 2, 2021, at 3:45 AM, byronsanity @.***> wrote:

Thanks for your help. It works now but problem is that it auto claims the first thing I roll. It does not follow the emoji nor the likelist I setup for it to claim. It just claims the very first roll I get.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub, or unsubscribe.

I removed the "" in the anime list and It kinda work but returns ignore exceptions in the console. Is this okay? When rolling, it does not print the owner rolled but rather prints the exceptions.

yeah so I have it print ignoring character just to have like a log of what was rolled and such  it should be fine. feel free to post a screenshot of the console if you want to be sure. and yeah for settings_mudae
you should have it empty completly like variable = [ ] cause variable = [""] will cause issues variable = [" "] will probably make anything with a space valid and cause false positives
personally I like just doing like variable = ["aaaaaaaaa"] since that will never be true in the grand scheme of thing but still keep what the variable is suppose to look like

here's the settings

this is what i get now

heres the settings

this is what i get now

download my latest version of the code and then also download latest version of discum
"discum had a few changes in terms of keywords that been changed"

It worked. It just displays the "File not found using different method" tho it's rolling just not sure about claiming. Does this snipe other's rolls?

yes it snipes any rolls that fit the criteria

So is the "file not found using different method okay?

Yeah i set that up today to keep basically if file not found it will attempt to save ur $setting config to a file to use for later instead of searching it constantly

Aight thank you will be closing this now. Thanks again!

Just last question. What do I have to set the min kak for the bot to prioritize the likelist?

what do u mean the likelist ? like make it only do char name snipe ??
set it to like a really high amount like 9999

Yup the namelist in the settings. Sorry I thought it was likelist. So I set it to 9999 then it only snipes the names in the namelist?

yup your good to go also keep in mind that if 2 things happen at once it will do a 1st come 1st serve basis and ignore the other attempt this is normal functionality so before making an issue on character was ignored please confirm these other factors

what do you mean 2 things happen at once? like 2 chars from namelist was rolled?

yeah so if 2 or 3 rolled at one time it will just attempt until succeeds then get put on a wait timer until the next claim window

Yup I understand that limitation. Thanks again! Closing issue.


CLEyeMulticam.dll is missing even with the cl cam software installed on my computer

Hi, I'm currently trying to get the psmoveservice.exe (of the release) to run on my computer but whenever I do, it show me this error even with the cl cam software installed on my computer :  CLEyeMulticam.dll is missing on your computer..
edit: fixed by manually downloading the dll and paste it into the psmoveservice folder.

@HipsterSloth I guess this needs to be added to the release. Do you have a script for making releases or was it done manually? I made a Python script for creating releases for a different project. See here. Do you think the structure of our release has settled down enough that it's worth making a script to automate it?

@nalf3in I am having the same issue with missing the CLEyeMulticam.dll, could you please link to where you where able to download it?

Here's the official link (from this github)  : https://github.com/cboulay/PSMoveService/raw/master/thirdparty/CLEYE/x86/bin/CLEyeMulticam.dll
I got the advice from reddit : here's the link if you are interested: https://www.reddit.com/r/virtualreality/comments/4no4mz/update_on_using_the_ps_move_on_pc_for_virtual/

Are you SirJoe? Please create another issue in GitHub for your camera problem. It's almost definitely a driver issue, but I'll say more in the new issue.

@cboulay I updated the cmake install action to copy the CLEyeDriver to the /win32/bin folder. For the moment by process for building a release is to build from source, build the INSTALL project, and zip up all the binaries, scripts and data in the /win32/bin folder. I think it's a good time to make a proper release script. That python script you have looks it'd be perfect to adapt. In the mean time I'm going to post a release later to day that includes the CLEyeMulticam.dll.

Please close this issue as soon as you make a new release.

Fixed in Alpha release 2


Generate json report

Hi there,
I'm using this plugin and was very interesting
I've a request that can we generate the merged json file from multiple json
I need this file to import to jira
Thanks

Hello, as Cluecumber is not intended to be a Cucumber JSON merger but a reporting tool, I am afraid this is out of scope for your request.

Thanks bischoffdev


Enable logging

gittuf's implementations should include verbose logging for the benefit of users. Actions within the internal/repository package in particular should log at various checkpoints what's happening. Further, the user should be able to see these logs via a --verbose flag they can invoke from the CLI.

Relevant: https://pkg.go.dev/log/slog

I think slog is overkill for gittuf's workflow. But otherwise, I agree with what you're proposing. Go for it!

I think slog is overkill for gittuf's workflow.

yeah, I though so too. I just made it with the log package. Let me know your thoughts. (#180 )

I think slog is overkill for gittuf's workflow. But otherwise, I agree with what you're proposing. Go for it!

Why do think so? I would recommend using slog with an interface so that it provides an ideal option to be able to swap.

When I was first considering what we wanted, I was thinking of it very much in the context of messages presented to users. I expected the log data's  consumers to be exclusively users passing in --verbose. Thinking about it some more, it's probably a good idea after all to start off with something structured which is then presented to the user as regular text. The JSON formatted logs might be useful elsewhere such as in a CI context or any other "hosted" gittuf verification context. Thanks for your input @naveensrinivasan!

When I was first considering what we wanted, I was thinking of it very much in the context of messages presented to users. I expected the log data's consumers to be exclusively users passing in --verbose. Thinking about it some more, it's probably a good idea after all to start off with something structured which is then presented to the user as regular text. The JSON formatted logs might be useful elsewhere such as in a CI context or any other "hosted" gittuf verification context. Thanks for your input @naveensrinivasan!

Thanks for the update 👍

Hey, I would like to work on adding log statements as I am currently exploring the code-base. Can I DM you on slack for specific queries? @adityasaky

Sure! Feel free to use the #gittuf channel too.

Closed by https://github.com/gittuf/gittuf/pull/302.


Pre-compute RoPE embeddings in fp32

This addresses #1003 and #1016, most of the work done by @zhangir-azerbayev

Ok, I swear I added @zhangir-azerbayev to the initial commit. I don't know what happened to it. Is it that the initial commit failed because of pre-commit?


Optimising backup with Keeper option

This QR can be scanned on Hexa when the user choses "backup with Keeper" on the first screen and chooses scan QR.
Also the user can choose to deeplink from this screen which needs to fetch the BIP-85 wallet seed from Keeper. The user selects a particular wallet whose seed is used for creating Keeper.

@summikhan11 Description added to the issue

Duplicate issue


Object/Texture Loaders

Is this already implemented and not documented or is the implementation lacking/won't be implemented by design?
https://threejs.org/docs/#examples/en/loaders/OBJLoader
Another good name for the issue would be: how do I load an external .obj file via Svelte Cubed API?

I put together a simple working example in a project I'm working on. I converted my .obj file to a .js file, wrapped everything in a template literal, and exported it. To avoid having to do that, there's room to potentially sweeten this up with a custom vite plugin that imports .obj files.
<script lang="ts">
	import * as THREE from 'three';
	import * as SC from 'svelte-cubed';
	import { OBJLoader } from 'three/examples/jsm/loaders/OBJLoader';
	import obj from '$lib/components/models/Lowpoly_tree_sample.js';
</script>

<SC.Canvas antialias background={new THREE.Color('papayawhip')} shadows>
	<SC.Primitive object={new OBJLoader().parse(obj)} />

	<SC.PerspectiveCamera position={[50, 50, 50]} />
	<SC.OrbitControls enableZoom={true} maxPolarAngle={Math.PI * 0.51} />
	<SC.AmbientLight intensity={0.6} />
	<SC.DirectionalLight intensity={0.6} position={[-2, 3, 2]} shadow={{ mapSize: [2048, 2048] }} />
</SC.Canvas>

Using SvelteKit, I hypothesize performance may be improved here by parsing the .obj file contents during prerendering (in the load function of <script context="module">) and passing both a BufferGeometry and Material through the props. I attempted that without success but I'm pretty green to three.js, so someone more knowledgeable may know how to extract those from the Object3D that new OBJLoader().parse(obj) returns.

I just created that vite plugin I mentioned above so you don't have to convert your the .obj files https://github.com/tonyketcham/unplugin-obj
Using that, you just have to do
import obj from '$lib/components/models/Lowpoly_tree_sample.obj';

Alternatively (and probably more performantly albeit more verbose) you can place your .obj/.mtl files within your static folder and do something like:
<script lang="ts">
	import * as THREE from 'three';
	import * as SC from 'svelte-cubed';
	import { MTLLoader } from 'three/examples/jsm/loaders/MTLLoader';
	import { OBJLoader } from 'three/examples/jsm/loaders/OBJLoader';

	const url = '/Lowpoly_tree_sample';
	let mesh: THREE.Mesh;

	const mtlLoader = new MTLLoader();
	const objLoader = new OBJLoader();

	// Load the object and material resources
	mtlLoader.load(url + '.mtl', (mtl) => {
		mtl.preload();
		objLoader.setMaterials(mtl);

		objLoader.load(url + '.obj', (event) => {
			mesh = event.children[0] as THREE.Mesh;
			console.log(mesh);
			return mesh;
		});
	});

	async function loadMesh(mesh) {
		return new Promise((resolve: (value: THREE.Mesh) => any) => {
			if (mesh) {
				resolve(mesh);
			}
		});
	}

	// Wait for the mesh to load before adding it to the scene
	$: meshPromise = loadMesh(mesh);
</script>

<SC.Canvas antialias background={new THREE.Color('papayawhip')} shadows>
	{#await meshPromise then mesh}
		<SC.Mesh geometry={mesh.geometry} material={mesh.material} />
	{/await}
	<SC.PerspectiveCamera position={[50, 50, 50]} />
	<SC.OrbitControls enableZoom={true} maxPolarAngle={Math.PI * 0.51} />
	<SC.AmbientLight intensity={0.6} />
	<SC.DirectionalLight intensity={0.6} position={[-2, 3, 2]} shadow={{ mapSize: [2048, 2048] }} />
</SC.Canvas>


Added us/ga/douglas

Thanks for adding this!  I looked thru the data and saw that some of the street fields have embedded units, using the terms UNIT, APT, BLDG, and STE.  Modifications to the regexes from https://github.com/openaddresses/openaddresses/blob/master/sources/us/nd/stutsman.json should do it.

@trescube thanks

Fixes #2221


Traffic Signals Detection and model Deployment

I would like to work on this issue. Assign me.

Give an estimated time you need for this issue.

please assign this project to me I would love to work on this

Hi @pratishthaa,
I'm really excited about the project and would love to be a part of it. Drawing from my experience with similar projects in the past, I'm confident that I can bring valuable insights and contribute effectively. If possible, I'd appreciate being assigned to the project. Looking forward to your response. Thank you!

Hi, I am GSSOC'24 contributor and I would like to work on this project

@pratishthaa I am interning at an IISc lab where I am working on this exact topic for self-driving vehicles. Please assign me this project as I already am working on it!


Adding export feature

mgtoolkit version: 1.0.7

Description
Can you add features to saving metagraph to file in some format, suitable for visualization?
graphml ?
May be using this
Best regards

May be this  approach for visualization is suitable? Especially slide 23.


use a 64-bit block_idx in compaction

This avoids the dreaded [WFA::BacktraceBuffer] Reached maximum addressable index.

This appears to resolve the problem on a single test case. Presumably we really were running out of address space.


Add proper interception of connections to local.adguard.com via proxy

core/pull-requests/757

core/pull-requests/757

core/pull-requests/757


Improve the option: statistics - (to fix web)

Hey @Rub21 cuándo van a mejorar las opciones del to fix de la web, específicamente la opción Statistics la información que nuestra es incorrecto, por ejemplo en la tarea del crossingminor en el slack con 532 tareas pero al corregir pasa más de 600 tareas. :thinking:

En otros caso por ejemplo en la tarea de unconnectedmajorhighways no permite ver las estadísticas.

@Rub21 @ajithranka  Necesitamos obtener la información de las estadíticas para poder comentar cada semana en los master ticket de cada tarea, por favor sería bueno que retomen y mejoren el to fix web.
Otro error es cuando las tareas estan completadas no pasan a la lista de Completed Tasks muestra como si estuviera incompleta pero ya no descarga ni un error más para corregir.

I've hidden the stats graph from to-fix until we fix it.
I'm checking now why the numbers seem off.
@Rub21 @ediyes

Great observations @ediyes! @Rub21 @ajithranka - how does this sound?

Can we rename type of the project during every update to version. Rather than creating an arbitrary ID for each update of the project, can we use version numbers like v1, v2?
For every activity of a project, can we store the action, project, version, timestamp, user.
Can we then build an end point for stats that can:

/project_name/stats?version=v1 - will give activity for v1 tasks of that project. grouped by users/time.
/project_name/stats?from=timestamp&to=timestamp - will give all activities for the current version.
/project_name/stats?version=v1&from=timestamp&to=timestamp - will give all activities for v1 of the project between that time frame

I think you mean task instead of project .

Can we rename type of the project during every update to version. Rather than creating an arbitrary ID for each update of the project, can we use version numbers like v1, v2?

sounds fine!!!

For every activity of a project, can we store the action, project, version, timestamp, user.

currently, we are storing
{
time:<PHONE_NUMBER>,
key: "c89eadcca79b235ccfe1c0da5c393c608f487710",
action: "edit",
editor: "id",
user: "Amisha Singla"
},

do we need to store  project, version ? i am not sure how valuable will be that.

Can we then build an end point for stats that can:

/project_name/stats?version=v1 - will give activity for v1 tasks of that project. grouped by users/time.
/project_name/stats?from=timestamp&to=timestamp - will give all activities for the current version.
/project_name/stats?version=v1&from=timestamp&to=timestamp - will give all activities for v1 of the project between that time frame

This would be a bit slow because to count, we need to request all the activity and then count in the backend, there is no way to make complex queries in ES, Also to request all the activity is done chunk by chunk and it takes time.
In the past, I was working that way, but the statistics sometimes did not load, and it was slow. For that reason I've changed the format to count by day, we do not need to make complex queries to account only make a request to a type to get this data. Now it works well.
I do not know why it separates the statistic by version, we already have the accounting for each update, example.
All the activity and stats are handled in differents type. but they are storing all the log in each update.

do we need to store project, version ? i am not sure how valuable will be that.

Yes I meant task. @Rub21 what is the key here? We will have to store the task and the version for each activity. If we aren't, then how do we get stats for each update?

This would be a bit slow because to count, we need to request all the activity and then count in the backend

@Rub21 can you say more? To me this is just a slight change from how it working right now. We can do all this with a single elastic search search query.

what is the key here?
key it is the has of the feature in a featureCollection.
We will have to store the task and the version for each activity. If we aren't, then how do we get stats for each update?

don't get you here?

@Rub21 can you say more? To me this is just a slight change from how it working right now. We can do all this with a single elastic search search query.

Can you try it?, I've  created the stats from the activity, but  it worked slow, to count the items in a  type in not like a table, you can request all items at once in a type which has a few items, but when the type contain a lot of items it is quite hard, and you should do many requests,  even when you want  count  according to some parameters you should do more that one request.

Can we rename type of the project during every update to version. Rather than creating an arbitrary ID for each update of the project, can we use version numbers like v1, v2?

this is done,  can you check here https://build-to-fix-production.mapbox.com/tasks

Update: The stats endpoint now shows day-wise number of edits made by each user. This needs to be aggregated on the frontend to display stats within a date range.
https://build-to-fix-production.mapbox.com/tasks/strangelayer/track_stats/from:2016-02-15/to:2017-02-15
...

"stats": [{
  "start":<PHONE_NUMBER>,
  "edit": 7,
  "skip": 0,
  "fixed": 0,
  "noterror": 1,
  "samely": {
    "edit": 4,
    "skip": 0,
    "fixed": 0,
    "noterror": 0,
    "id": 4
  },
  "RichRico": {
    "edit": 1,
    "skip": 0,
    "fixed": 0,
    "noterror": 0,
    "josm": 1
  },
  "piligab": {
    "edit": 1,
    "skip": 0,
    "fixed": 0,
    "noterror": 1,
    "josm": 2
  }]

...

This change is pushed to production and the stats page on to-fix is not currently functional.

@Rub21 thanks for renaming the type to versions. I think per chat with @ajithranka you all have agreed that the day wise stats is enough for metrics right now. Let's try this, and revisit here.
Thank you.


Question: Why MediatR does not support ValueTasks ?

Hi there!
First of all, I'd like to commend the team for the excellent work on MediatR. It's more than just a library, it's a well-defined pattern that has significantly improved the structure and maintainability of the projects.
However, I have encountered a performance issue when using MediatR in projects with a strong dependency on it. Specifically, when handling synchronous operations, we are required to return a Task, which introduces unnecessary garbage collection overhead and negatively impacts performance.
To mitigate this, would it be possible for MediatR to support ValueTask in addition to Task? This change could significantly enhance performance for synchronous operations by reducing the overhead associated with task allocation and garbage collection.
Thank you for considering this enhancement. Your work on MediatR is highly appreciated !

What would this look like in terms of the API? Do you have a suggestion here?

I would love to see something like HandleValueTaskAsync that returned a ValueTask

@jbogard, in terms of the MediatR API, I think this would require a new interface to define a request handler that returns a ValueTask.
Outline code
public interface IValueTaskRequestHandler<in TRequest, TResponse>
    where TRequest : IRequest<TResponse>
{
    ValueTask<TResponse> Handle(TRequest request, CancellationToken cancellationToken);
}

And add some overhead or create new ValueTaskRequestHandlerWrapper for ValueTask.
Do you see any other options, and how necessary is this enhancement?

Is IValueTaskRequestHandler still a todo? Still wanted?

Having ValueTask in Mediatr does not make sense to me.
If you need the performance benefit of ValueTask when doing synchronous work only in a hot path, why do you use Mediatr in the first place? You get instantly more performance benefits when cutting out Mediatr vs using ValueTask.
This request feels more like "because we can", not that it actually has any practical use-case.

Hello @remcoros .
There are many projects are built in CleanArchitecture, with specific patterns.
If we use what "we can",  actually we can break architecture principles (Behaviors, Notifications,Handlers, PreProcessors,PostProcessors).

Hello @remcoros .
There are many projects are built in CleanArchitecture, with specific patterns. If we use what "we can", actually we can break architecture principles (Behaviors, Notifications,Handlers, PreProcessors,PostProcessors).

ValueTask is only to be used in very specific scenarios where based on performance measurements of hot paths it makes sense to use. Otherwise, you should always use Task. This is clearly documented in https://learn.microsoft.com/en-us/dotnet/api/system.threading.tasks.valuetask-1?view=net-8.0
MediatR in a hot-path like that is an anti-pattern. The reflection and dictionary lookups it does is way way way more overhead then ValueTask will give you back.
Just because you want to follow a pattern, doesn't make it 'clean' or in this case, it doesn't make sense at all. (again, this is clearly documented on ValueTask)


Release candidate

Send fix to main branch

closed for https://github.com/rsksmart/2wp-app/pull/581


wip: trying to debug windows CI failures

@lemire, It does appear to reproduce with c only, building this file with msvc cl: see the "msvc c roaring" step of this job (which is set to continue on error for that step).
It's built with https://github.com/Dr-Emann/croaring-rs/blob/debug_win_ci/.github/workflows/rust.yml#L53-L60, based on the flags/environment rust is compiling the c code with

running
Hardware support: 0x1
Going to or many
-1073741795

(where -1073741795 is 0xC000001D (STATUS_ILLEGAL_INSTRUCTION)).
croaring_hardware_support() = 0x1 doesn't appear to indicate AVX512 is the problem.
The issues began (with I believe no meaningful changes in CRoaring/croaring-rs) sometime between 3 months ago and 2 weeks ago

I have no idea why we don't see any issues in CRoaring itself

Given no code changes between croaring/croaring-rs, I'm thinking it's the MSVC version bump from 17.7 to 17.8 which occurred between the last working test vs the first failing one.

This feels awfully relevant: https://developercommunity.visualstudio.com/t/Invalid-AVX512-instructions-generated-wh/10521872

Also relevant, looks like if MSVC figures out we're going to avx512 in the function, it can use it anywhere. I don't see anywhere we could use any avx512 intrinsics in the avx2 code path though, from a somewhat close look:
https://developercommunity.visualstudio.com/t/Invalid-code-gen-when-using-AVX2-and-SSE/10527298

looks like if MSVC figures out we're going to avx512 in the function, it can use it anywhere.

I think we can disable AVX-512 code paths entirely (under Windows).

Looks like disabling AVX512 isn't enough, we have to disable AVX entirely 🫤

Looks like disabling AVX512 isn't enough, we have to disable AVX entirely

It is certainly possible to have hardware lacking AVX instruction support. But we should handle this scenario.
You may have seen that CRoaring now effectively runs your small tests from the amalgamated files in CI, and it appears to work.

@Dr-Emann Can you review CI tests
https://github.com/RoaringBitmap/CRoaring/actions/runs/7670008347/job/20905194245
You can see that it is running the amalgamation tests which involve precisely the function you suggested. It is building it using the default Visual Studio 2022 provided by GitHub.
What are we missing?

@lemire: The difference appears to be in MSVC versions (or the cl versions? Don't really understand the VS/MSVC/cl.exe/etc version differences)
cmake seems to pick MSVC\14.37.32822\bin\HostX64\x64\CL.exe, and rust seems to pick MSVC\14.38.33130\bin\HostX64\x64\cl.exe. If I use the 14.37 cl, the compiled code works fine, if I use the 14.38 cl instead, I get the Illegal Instruction

@Dr-Emann I am updating to the very latest Visual Studio on my laptop.

But it is not going to be super useful because my laptop does support AVX instructions. :-/

@Dr-Emann
vpxord is AVX512F + AVX512VL.

My best guess is that this code confuses Visual Studio into using AVX-512 throughout:
int bitset_container_compute_cardinality(const bitset_container_t *bitset) {
    int support = croaring_hardware_support();
#if CROARING_COMPILER_SUPPORTS_AVX512
    if( support & ROARING_SUPPORTS_AVX512 ) {
      return (int) avx512_vpopcount(
        (const __m512i *)bitset->words,
        BITSET_CONTAINER_SIZE_IN_WORDS / (WORDS_IN_AVX512_REG));
    } else
#endif // CROARING_COMPILER_SUPPORTS_AVX512
    if( support & ROARING_SUPPORTS_AVX2 ) {
      return (int) avx2_harley_seal_popcount256(
        (const __m256i *)bitset->words,
        BITSET_CONTAINER_SIZE_IN_WORDS / (WORDS_IN_AVX2_REG));
    } else {
      return _scalar_bitset_container_compute_cardinality(bitset);

    }
}

What confuses me is that you are say that disabling AVX-512 did not help.

@Dr-Emann Please review... https://github.com/RoaringBitmap/CRoaring/pull/579
If it makes sense to you, we shall try this approach. If it solves the issue, then we are lucky.

I'm fairly sure that when I tried with CROARING_COMPILER_SUPPORTS_AVX512=0, it didn't work, no.
I think there were two "bugs" I posted.
The first was acknowledged as a bug by microsoft, and it seemed to be that the compiler would insert avx512 instructions when only AVX2 was enabled (or maybe that the AVX2 intrinsics were producing avx512 instructions?), and was marked as Fixed - Pending Release almost a month ago.
The second was closed as not a bug, where the compiler figured out that the codepath was going to use avx512 intrinsics in the same codepath, so optimized assuming it could use avx512.
I think we're hitting the first issue, not the second.

@Dr-Emann If you take my PR, the one where I move the AVX-512, and you use that in your rust binding, does it help?

Nope, it still ends up with avx512 instructions with that branch (even with -DCROARING_COMPILER_SUPPORTS_AVX512=0) when compiling with MSVC 14.38.

@Dr-Emann Hmmmm.... I don't know what else to do.

I really think it's just an MSVC bug that'll hopefully be fixed in 14.39. I think our only real options are:

ignore it for now, hopefully it'll be fixed soon
disable the avx2 path entirely if defined( _MSC_VER ) && _MSC_VER >= 1938

Disabling AVX seems extreme. I would happily disable AVX-512 under Windows if it were needed, but I feel uneasy about disabling AVX since almost all Windows machines that we care about have AVX2.

I really don't see any way around it for the versions of MSVC that has this bug, the alternative is miscompilation which will cause a crash.
Here's a godbolt link including only CSA, popcount256, and avx2_harley_seal_popcount256, and you can see the output includes a vpxord instruction, even though there's no mention of avx512 ANYWHERE, never mind in the same function: https://c.godbolt.org/z/d764KGWK1
And if you change back to MSVC 19.37 (still don't understand the versioning, why is it 14 some places and 19 elsewhere?), there's no vpxord instruction.

Seeing same issue, glad to see there's a thread here about this because I've been tearing my hair out over this for a couple of weeks now:
https://github.com/mimblewimble/grin-gui/issues/73#issuecomment-1905982066

@yeastplume
I think that @Dr-Emann has demonstrated that it is a compiler bug.

@yeastplume For now, I recommend you just avoid the offending compiler version. If I were Microsoft, I would just patch it and make sure that the bug goes away.
I don't think we will do anything.

@yeastplume For now, I recommend you just avoid the offending compiler version. If I were Microsoft, I would just patch it and make sure that the bug goes away.
I don't think we will do anything.

Yes, makes sense and thanks for your work tracking this down.
Slightly tangential, I guess, but does anyone have a quick pointer as to how to force github actions to use a particular compiler version?

Slightly tangential, I guess, but does anyone have a quick pointer as to how to force github actions to use a particular compiler version?

The current windows-latest runner should only have two versions installed, a very old one, and the very latest one, see the specs...
https://github.com/actions/runner-images/blob/main/images/windows/Windows2022-Readme.md
I don't think it is possible to install another version of Visual Studio on the GitHub hosted runners.
So we have to wait for Microsoft to fix this.

See https://developercommunity.visualstudio.com/t/Code-gen-bug-uses-ymm16-register-for-AVX/10564317

@Dr-Emann Waiting for a fix from Microsoft did not help. They released 17.9 and it is the version we have in the GitHub runners, but the issue remains for us.
We need to change our code to try and fix this issue.


numix-icon-theme-{circle, square}: 22.03.01 -> 22.06.14

Description of changes

update numix-icon-theme-circle to 22.06.14
update numix-icon-theme-square to 22.06.14

Things done

Built on platform(s)

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

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

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

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
22.11 Release Notes (or backporting 22.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
[ ] (Release notes changes) Ran nixos/doc/manual/md-to-db.sh to update generated release notes

[x] Fits CONTRIBUTING.md.

Result of nixpkgs-review pr 179435 run on x86_64-linux 1

4 packages built:

canta-theme
numix-icon-theme-circle
numix-icon-theme-square
zafiro-icons


Zoom functionality breaks when using the Blue Topaz theme alongside the Image Converter.

You have added a new feature to your add-on that zooms images during viewing 👏✨
Please 🙏🏻 provide the ability to disable this feature, as I am not yet accustomed to it and still rely on the zoom functionality of the "Blue Topaz" theme with "Style Settings".
Unfortunately, when using your add-on with this theme, the zoom functionality breaks.
https://github.com/user-attachments/assets/7a399a5a-b294-47d5-a1b4-a0908d1f4bb8

The problem disappeared after update 1.2.22. Thank you!👏🙏🏻


Update German localization

The German localization is now far behind the mainstream. It would be great to have the new strings translated.

There are a lot of untranslated strings in AsrielBot Legacy as well, so if anyone is willing to help, please contact me.


[snapshot] wait for simulator to boot before overriding status bar

Checklist

[x] I've run bundle exec rspec from the root directory to see all new and existing tests pass
[x] I've followed the fastlane code style and run bundle exec rubocop -a to ensure the code style is valid
[x] I've read the Contribution Guidelines
[x] I've updated the documentation if necessary.

Motivation and Context
If the simulator is not booted when the status bar is updated it does not do anything and the default status bar is used.
Resolves #19317
Description
xcrun instruments fails with the error "xcrun: error: Failed to locate 'instruments'." This command will boot the simulator if it's not curerntly booted and then wait for it finish booting before terminating.
Testing Steps
Use snapshot while the override_status_bar option is true.

Some of the tests failed for me, although they do not seem related to this change.

rspec ./fastlane/spec/actions_specs/app_store_connect_api_key_spec.rb:95 # Fastlane Fastlane::FastFile App Store Connect API Key raise error when no key_filepath or key_content
rspec ./fastlane/spec/actions_specs/import_from_git_spec.rb:162 # Fastlane Fastlane::FastFile import_from_git with caching works with new tags
rspec ./fastlane/spec/actions_specs/import_from_git_spec.rb:200 # Fastlane Fastlane::FastFile import_from_git with caching works with branch
rspec ./match/spec/importer_spec.rb:47 # Match Match::Runner imports a .cert, .p12 and .mobileprovision (iOS provision) into the match repo
rspec ./match/spec/importer_spec.rb:64 # Match Match::Runner imports a .cert, .p12 and .provisionprofile (osx provision) into the match repo
rspec ./match/spec/importer_spec.rb:81 # Match Match::Runner imports a .cert and .p12 without profile into the match repo (backwards compatibility)
rspec ./match/spec/importer_spec.rb:98 # Match Match::Runner imports a .cert and .p12 when the type is set to developer_id
rspec ./pilot/spec/build_manager_spec.rb:661 # Build Manager #transporter_for_selected_team with one team id
rspec ./pilot/spec/build_manager_spec.rb:677 # Build Manager #transporter_for_selected_team with inferred provider id
rspec ./pilot/spec/build_manager_spec.rb:633 # Build Manager #transporter_for_selected_team with itc_provider with nil Spaceship::TunesClient
rspec ./pilot/spec/build_manager_spec.rb:646 # Build Manager #transporter_for_selected_team with itc_provider with nil Spaceship::TunesClient
rspec ./pilot/spec/manager_spec.rb[1:1:2:2:1:1:1] # Pilot Pilot::Manager what happens on 'login' when using web session when username input param is given behaves like performing the spaceship login using username and password by pilot performs the login using username and password
rspec ./pilot/spec/manager_spec.rb[1:1:2:2:2:1:1] # Pilot Pilot::Manager what happens on 'login' when using web session when username input param is not given but found apple_id in AppFile behaves like performing the spaceship login using username and password by pilot performs the login using username and password
rspec ./sigh/spec/runner_spec.rb:142 # Sigh Sigh::Runner#devices_to_use devices for development
rspec ./sigh/spec/runner_spec.rb:152 # Sigh Sigh::Runner#devices_to_use devices for adhoc

@JosephDuffy Quick question for you! Is your status bar actually changing like you are expecting it to in your screenshots? I actually can't get this to work for me 😬 What are the options you are using with snapshot that you are getting this to work?


Adding python3.7 docker. Chmod +x macq/*install

Fixes https://github.com/AI-Planning/planutils/issues/84
Following https://stackoverflow.com/questions/56892907/install-pip3-and-python3-7-on-docker-ubuntu-18-04
Why like this?

There is no python3.7-pip here https://launchpad.net/~deadsnakes/+archive/ubuntu/ppa/+packages?field.name_filter=3.7&field.status_filter=published&field.series_filter=
software-properties-common already includes python3.6
NB: software-properties-common is adding like 36Mb

@haz the test just passed but this is not working yet.
I guess it's not testing buidling the docker image. Not sure that's possible in your setup.

I think it's ready now.
What's your workflow for testing the docker image?
I modify it in this way:
...
# Install & setup the planutils
WORKDIR /root
COPY . .
RUN pip3 install -e . --trusted-host pypi.org --trusted-host files.pythonhosted.org
RUN planutils setup

# default command to execute when container starts
CMD /bin/bash

Thanks @hectorpal ! I'm now second guessing why we'd want a 4-year old base, though.
@FlorianPommerening : I know I've asked before, but didn't you say the modern Ubuntu had a modern-enough Singularity to be viable for our planners? I.e., could we get away with just using Ubuntu 22.04 and installing Singularity from apt?

I didn't try this yet, but Singularity rebranded and now is called Apptainer (http://apptainer.org/). They seem to have *.deb releases (https://github.com/apptainer/apptainer/releases) which would probably work.

I won't have a chance until tomorrow, but my plan of attack (if you have the cycles, @hectorpal ) would be:

Run a vanilla 22.04 docker image
Install python/pip/etc.
See if you can get apptainer installed
pip3 install planutils
Give a planner a shot.

May need --privileged running, but for testing, just a personal comp would do.

This Dockerfile works fine for me (changed ubuntu to 22.04 and singularity to apptainer installed from deb). It still needs --privileged when running docker but running planutils install lama && planutils run lama in the container works.
FROM ubuntu:22.04

LABEL maintainer="Christian Muise (christian.muise@queensu.ca)"

# Install required packages
RUN apt-get update \
    && DEBIAN_FRONTEND=noninteractive apt-get install --no-install-recommends -y \
        bash-completion \
        ca-certificates \
        git \
        libseccomp-dev \
        python3 \
        python3-pip \
        python3-venv \
        squashfs-tools \
        tzdata \
        unzip \
        vim \
        wget \
    && rm -rf /var/lib/apt/lists/*

RUN wget https://github.com/apptainer/apptainer/releases/download/v1.0.2/apptainer_1.0.2_amd64.deb \
    && dpkg -i apptainer_1.0.2_amd64.deb \
    && rm apptainer_1.0.2_amd64.deb

RUN pip3 install --upgrade pip
RUN pip3 install setuptools

# Install & setup the planutils
RUN pip3 install planutils --trusted-host pypi.org --trusted-host files.pythonhosted.org
RUN planutils setup

WORKDIR /root

# default command to execute when container starts
CMD /bin/bash

I guess the singularity-based should work, so it's a matter of testing the binaries.
I didn't see automation tooling for testing the planners are still running. Maybe it's not worth it.
Maybe non-singularity package tools should add a basic test: VAL, FF.

Awesome stuff! Things seem to work just fine with it.
@hectorpal Want to merge from main, and then ping again? AFAIK, just the permissions need updating now.


Openstack Service Discovery

Added the ability to use OpenStack for Service Discovery.
Documentation see at branch https://github.com/cgroschupp/docs/commit/0eee98942f7d8bb7c434d6d40ffdd163d9e7f40a

@juliusv Thanks for the comprehensive notes. I've followed your notes and added tests.
Yes, it's possible that i support this code, but i know no other people with the knowledge of prometheus and openstack.

@juliusv Can you look at the push request now again?

@cgroschupp Oh, sorry for the neglect! Queued for the next days!

Would be great to include this in 1.7 I think, which we'd like to release very soon. @brancz

@cgroschupp Made some more nits, but overall looks better, thanks!
@grobie The question is still whether we want someone else who actually knows OpenStack to also look over this before merging. However, I don't know anyone either...

For including this in a release, we'll also still need a PR to add documentation for it in https://github.com/prometheus/docs/blob/master/content/docs/operating/configuration.md

@juliusv done
PR for docs: prometheus/docs#761

@cgroschupp Thanks! I forgot to say that the docs PR would have to be opened against the next-release branch, not master. Could you reopen it against that branch?

@grobie The question is still whether we want someone else who actually knows OpenStack to also look > over this before merging. However, I don't know anyone either...

@brian-brazil @fabxc @beorn7 Any opinion on this meta question?

From what I understand OpenStack can be rather varied, so someone else taking a look sounds wise.

@brian-brazil The question is, do we know anyone? Would this block the merge otherwise? Should we call it on out the mailing list?

I know some openstack people, let me give one of them a poke.

I have poked, change is generally fine and they'll post some minor nits.

:+1: Thank you for sticking through this, @cgroschupp! It looks good to me now, so I'll merge it. In case there are any other needed fixes, we can still do it separately.

This change is causing Prometheus builds to fail for me. It looks like Prometheus is trying to include two conflicting versions of gophercloud: src/github.com/gophercloud/gophercloud and src/github.com/prometheus/prometheus/vendor/github.com/gophercloud/gophercloud.
Perhaps it is because in prometheus/vendor/vendor.json there are two different sha1 for gophercloud: 0bf921da554eacc1552a70204be7a1201937c1e1 and caa61b3ca9f504196fd3b338f43cd99d830f7e2e.
Can we align them all onto caa61b3ca9f504196fd3b338f43cd99d830f7e2e, which is more recent?
The build log is attached.
build.txt


Package Install error

Installing Packages...
Traceback (most recent call last):
File "main.py", line 32, in
File "install.py", line 19, in install
File "install.py", line 8, in run
File "subprocess.py", line 548, in run
File "subprocess.py", line 1026, in init
File "subprocess.py", line 1538, in _execute_child
FileNotFoundError: [WinError 2] The system cannot find the file specified
[1684] Failed to execute script 'main' due to unhandled exception!
(also used the pyinstaller verison of alt app installer but it just gives me error when opened)

also i am doing this on windows pe in a hard drive failure PC

from the trace back you provided it seems like, we are not able to access the downloaded files or powershell (not clear). if the files are downloaded try manually installing the app using app installer or using the powershell command Add-AppPackage [enter file path here]. for more info i want the log.txt file it should be in the folder where you ran the script (or .exe file if using alt app installer cli.exe)

then you should try using app installer sometime it would be pre-installed if you also lack it try to install powershell if that also not possible idk what to do since you need some mechanism in the os to install apps tho some apps you can extract the appx and run but some wont work.


fix: Re-work resource names to avoid issues with xaml merge

closes https://github.com/unoplatform/uno/issues/8224
closes https://github.com/unoplatform/uno/issues/8230
closes https://github.com/unoplatform/uno/issues/8228
closes https://github.com/unoplatform/uno/issues/8224
PR Type
What kind of change does this PR introduce?

Bugfix

Prior to introducing the xaml merge task, each Resource Dict in Toolkit.Material and Toolkit.Cupertino were re-defining certiain static resources using the same key but in different file. Now with the xaml merge, we need to use more specific resource keys for each control

It feels like we should be changing the xaml merge tool to detect these overrides, as it hides issues.