[Solver PR 4] Add controller-tracking support to solvers

Overview
Adds controller finder to the solvers. Now, left and right motion controllers join the head as valid Solver targets. In order to facilitate this, I had to add the controller transform to the base MRController definition in order to expose it.
This also ports over the custom inspectors for SolverHandler and ControllerFinder.
Changes
Related to #2465
Related to #2608 (adding passive controller transforms)

From an architectural point of View, i object to this PR.
We refactored out the "ControllerFinder" when we put in the new visualisation system (@StephenHodgson can comment more on the work he did there)
Although I agree, we need to link the visualizer with the solver. However, this is not the way to do it.

Where a fair amount of code can be copied from HTK (like the solver logic, etc)
The runtime implementation of a lot of features has radically changed.
Especially when it interacts with the 4 layer architecture which is the foundation of the new MRTK.  One key principle is that ONLy the device layer talks to devices and it purely (with the exception of Haptics) and output factory.  Everything else only reacts to what come out of the device layer, it should not try and interact  with it.
Also we need to ensure we avoid some of the old bad practices where functionality tried to interact with the platform direct (thinking of the old two handed implementation which used the interaction manager and Unity Input).
I'll need to sleep on this and what it's trying to achieve to see if there is a better way forward with the requirement (although I've not seen a task listing the requirements)

(although I've not seen a task listing the requirements)

There haven't been tasks for quite a few PRs that have been considered critical. If we are going to block one PR because there isn't a task, we should block ALL non-bugfix PRs if there isn't a task. Consistency is going to be key to expanding the set of contributors.

Working in a PR that satisfies your requirements in your task without breaking the architecture. Keep an eye out for a PR soon.

The fact that we're also needing to change the device layer to get solvers to work, confirms my suspicion that they should have stayed in core, where we had originally placed them.

If solvers stayed in core, we'd still have needed to add a way to access the transform. The layer they live in doesn't change that, and solvers do not make sense in the core. That discussion was already resolved in a separate PR.

Please cherry pick  your changes not related to the device layer and controller finder.

That discussion was already resolved in a separate PR.

I'd argue that it wasn't but was done anyway with knowledge and warning that it wasn't a good idea.

Can you explain, in detail, how solvers being in the core would change this PR?

Ok, to simplify things.  Give me the weekend to propose an alternative solution that should work better with the new architecture in MRTK.
Breaking things aside, in the Architecture diagram that is used for the basis of most of the discussions.

The Devices job is to transport and expose current information about the controller and it's state.  It has no presence within a project, it is simply a data pump.
The DeviceManager coordinates data from the device and constructs the "inputSource" data that is attached to all events sent out from the device.
The inputsource includes things like pointers, data values and internal representations of the information about the controller (e.g. Handedness, Index, capabilities)
The Input System (when used) consumes events thrown by the device and outputs / routes actions and data for use within an internal project

Each component in the architecture flows down, ensuring there is no impact or dependency in the project on any previous layer and each can be easily swapped out.
The current ControllerPoseSynchroniser for instance. Registers and listens for data from the Input system and then with the visualiser, presents the controllers on screen.  It does interact with the controller configuration, but only to read out what has been defined internally to describe the device.
If (assuming I'm reading the task requirements right) the Solver needs "something" to attach to, it should be coming from something generated within the project, the "Thing" or "position" or GameObject that is being presented in the scene that you want to attach to.
This way it doesn't matter which device / input or "thing" is putting the visualisation in the scene and is not another requirement to be factored in to every device, as it is just a representation in the scene.
I hope that helps clear up a little more of the thinking.  But let me come up with an alternate proposal for now.

The "something" is a Transform. The controller definition already creates a GameObject/Transform when it spawns the controller model. The only change is to actually expose that model/Transform.
I'm calling methods defined in the base interfaces. Not all device managers need to (or do) implement everything. If no controller representation exists, then no Transform exists, then this falls back gracefully.

All I'm simply asking is that you attach the solver handler to the IMixedRealityControllerPoseSynchronizer (usually in the pointer prefab) and using that transform the synchronizer is attached to. I've got a PR I'm working on to demonstrate the changes.

The Devices job is to transport and expose current information about the controller and it's state. It has no presence within a project, it is simply a data pump.
The DeviceManager coordinates data from the device and constructs the "inputSource" data that is attached to all events sent out from the device.
The inputsource includes things like pointers, data values and internal representations of the information about the controller (e.g. Handedness, Index, capabilities)
The Input System (when used) consumes events thrown by the device and outputs / routes actions and data for use within an internal project

This is precisely the type of information that is good to have written down (and reviewed) in our architecture documentation!

I'll get to work on that writeup @davidkline-ms , Good abstraction is hard to build and far too easy to break.  The devices especially need to remain isolated to ensure it can handle all the demands of the various hardware we need to support in the future.
Objects from the scene should only receive data from the device layer or discover properties / registration / configuration from the MR manager through the profiles.
Granted the current visualization is not ideal, but it was a halfway house to meet the Alpha

Closing until #2837 is merged which will change the implementation anyway and require a new PR

It would be cleaner @keveleigh to do a fresh PR on the current dev branch, else we risk dirtying the change history with the back and to.  Especially as it's dependant on the Visualization PR, which still isn't merged.
Can we focus on that and then get a fresh PR to update just the solver handler PR.

I've been rebasing all my changes/PRs to create a clean, descriptive history (this guideline used to be in our contributing doc, but looks to have been removed), and I'll do the same with this one.

Rebased on top of the current mrtk_development, with the new way of accessing visualizers.


Improvements around api gateway hosted repository

Creates a few template files for better formatting, has dynamic region lookup for DynamoDB endpoints, adds security policy to the custom domain, gets rid of quotes around var types which is deprecated.

MacBook@ ~/Desktop/terraform $ terraform plan

Error: Missing required argument

The argument "region" is required, but was not set.

Forgive the dumb question, but how do I set this?

MacBook@ ~/Desktop/terraform $ terraform plan

Error: Missing required argument

The argument "region" is required, but was not set.

Forgive the dumb question, but how do I set this?


Add a link from rule 111 to rule 216.

Both are about additionalProperties, and might seem to contradict each other.

@tfrauenstein already changed this inbetween in #393 (so now we have a conflict here).
Not sure whether we need more?
Or should I still try to add the improvements proposed by @tkrop?

@ePaul I would say close.


Optimized code for opening PlantDetailActivity

Like newInstance of fragments, here I introduce same pattern on opening
the activities. For code-reader it helps us to find target quickly.

Per #9, the project will be consolidated down to one Activity.


Add a --watch feature

Use rs-notify library to identify if the source files have changed and restart the server when it does.
Example Usage
tailcall start ./jp.graphql --watch

Technical Requirements

Restart should happen automatically when the main config or any of the linked file changes.
There should be no leaks in restarts and should happen seamlessly.

/bounty 50$

/attempt #2688

/attempt #2688

/attempt #2689

/attempt #2688

/attempt #2688

rs-notify doesn't work well with VIM or some other editors when watching for specific files : https://docs.rs/notify/latest/notify/#editor-behaviour
It's also a bit tricky as well to watch for files that are linked in a @link directive because the src path is relative to the file they're defined in

rs-notify doesn't work well with VIM or some other editors when watching for specific files : https://docs.rs/notify/latest/notify/#editor-behaviour

Yes, true. It may trigger 2 or more data change events on a single file modification.
To fix this I have added a debounce delay in my PR (https://github.com/tailcallhq/tailcall/pull/2707), it ignores modification events for a specified time after the initial trigger to restart the server. It is working reliably well.


Add int type as a concept of Distkv

dkv-cli > int.put k1 123
dkv-cli > ok

dkv-cli > int.get k1
dkv-cli > 123

dkv-cli > int.incr k1
dkv-cli > ok

dkv-cli > int.get k1
dkv-cli > 124

Also this feature is used by PineLike, which is a component of Distkv ecosystem mentioned at https://github.com/distkv-project/distkv/issues/279.

@meijies @senyer @kairbon  cc


feat: add support for Metamask Starknet Snap

This is a draft PR, and it tries to throw some light on how we can integrate the metamask starknet snap with get-starknet, and allow to onboard metamask users directly to starknet dapps.
The PR contains the following:
MetaMask Snap Wrapper
There is a MetaMask Snap Wrapper, which takes the injected metamask provider { window.ethereum }, and exposes a new injected starknet wallet provider, which implements the IStarknetWindowObject interface.
The window.ethereum object is searched in the current window, and if found, then a starknet_metamask starknet wallet provider is embedded to the window object. This allows a dApp to use the metamask snap via starknet_metamask, which implements the  IStarkentWindowObject interface { hence dApps can start using it without any changes required. }
Updated Example
The example has been updated in this draft PR, to allow someone to do:

an ERC20-transfer
message signing
and contract deployment from their MetaMask Wallet itself.

Demo
I am attaching a link of a working demo with this draft PR:
Link to demo.
How to check this out locally?
The following steps can be followed to play around with this POC locally:

git clone https://github.com/bajpai244/get-starknet.git
cd get-starknet
git checkout add-metamask-support
pnpm install
npm run dev
Open a browser { with MetaMask Installed }, go to http://localhost:5173/
then you can follow what the demo posted in the above section

If you need some tokens { you can use starknet faucet  }, and want to see the balance of your account which is on the MetaMask Snap, then you can to the following website.

Pending Features
The following features are pending, we are in touch with the starknet-snap team to implement them, so that the MetaMask snap can be fully compatible with get-starknet api:

[ ] multicall {  as of now only one call per transaction is supported }, can be solved easily on the snap side
[ ] ability to declare contracts, can be solved easily on the snap side
[ ] ability to have multiple accounts, can be solved on the snap side
[ ] wallet events, hard to solve on the snap side, but polling can solve this
[ ] fee esitmations & transaction simulations, can be solved easily on the snap side

This draft and the associated demo are supposed to throw light on how the feature can be achieved + what it looks like on the user side, changes on the snap can enable seemless integration with get-starknet and create an overall win-win situation for the starknet ecosystem.

Appendix
This Appendix, throws some light on MetaMask Snap, their Impact, their limiation, and how the existing limitations can be overcomed.
About the MetaMask Starknet Snap

MetaMask Snaps are a powerful feature from MetaMask, this allows developers to create extensions { aka Snaps } for MetaMask, and allow these Snaps to interact with DApps via the MetaMask wallet.
Hence, MetaMask can then be extended to be used with blockchains which it doesn't support natively { we already have snaps for Starknet, Solana, Aptos, etc. }
The way dApp interacts with a snap, is by sending an RPC request to MetaMask via the injected provider, and then MetaMask forwards the request to relevant snap { each snap has a snapId for unique identification }.
The snap is then free to handle this request as it seems fit.

Snaps have the ability to derive new accounts from the MetaMask seed phrase, by doing a BIP-44, hence, in case of MetaMask snap, if someone has access to their MetaMask seed phrase, they can automatically recover their starknet accounts as well.
MetaMask has a snap available for the starknet network, it can do the following as of now:

manage accounts { account creation and deployment }
sign messages
send transactions
deploy contracts

MetaMask has a huge distribution, if the snap becomes very easy to use for every dApp in the ecosystem, it can smooth onboarding of new users to Starknet, where to interact with a Starknet dApp, they can directly start using MetaMask, rather than having the friction of firstly downloading a new wallet for the dApp.

Limitation of the MetaMask Snap

MetaMask snap as of now require to communicate via the window.ethereum injected metamask provider, which means all starknet dApps have to make changes to their existing codebases to be able to use snaps with their dApps.
MetaMask Snap meets GetStarknet

The industry standard as of now is to use wallets is via get-starknet, and if the starknet metamask snap is compatible with it, then all starknet DApps can start using the MetaMask snap without having to add any extra piece of code.
The way to achieve this should be to have a wrapper over Metamask injected provider, which exposes all standard starknet wallet APIs, so that all dApps can start using it.

Handled here https://github.com/starknet-io/get-starknet/pull/208

Handled here https://github.com/starknet-io/get-starknet/pull/208


feat: positivity extension for Real.log of natural/integer casts and numeric literals

This PR adds a positivity extension for expressions of the form Real.log n where n is a cast from a natural number or an integer. (Since positivity can't handle conditions like 1 ≤ x, this is pretty much the best we can do for the log.)
Also, the namespace of the positivity extension for exp is corrected.

Does extension prove
0 ≤ Real.log 1
0 < Real.log 37

If so: can you add the tests?

It doesn't (since there is no Nat.cast). I'll try to add support for this when I get time in a few days.

I just added support for logs of numeric literals.

bors merge


ML Kit:"Waiting for the text recognition model to be downloaded. Please wait" on Vuzix M300 Smart glasses

Android device: Vuzix M300 Smart Glasses
Android OS version: Android 6.0.1 Api 23
Google Play Services version: none
Firebase/Play Services SDK version:
All my dependency's
// ML Kit dependencies
implementation 'com.google.firebase:firebase-ml-vision:19.0.3'
implementation 'com.google.firebase:firebase-ml-vision-image-label-model:17.0.2'
implementation 'com.google.firebase:firebase-ml-vision-face-model:17.0.2'
implementation 'com.google.firebase:firebase-ml-model-interpreter:18.0.0'

And classpath 'com.google.gms:google-services:4.2.0'
problem:
Text detection failed.com.google.firebase.ml.common.FirebaseMLException: Waiting for the text
recognition model to be downloaded. Please wait.
Stack Trace :
04-12 11:48:55.334 4586-4648/com.google.firebase.samples.apps.mlkit E/TextNativeHandle: Error Loading module
com.google.android.gms.dynamite.DynamiteModule$LoadingException: No acceptable module found. Local version is 0 and remote version is 0.
at com.google.android.gms.dynamite.DynamiteModule.load(Unknown Source)
at com.google.android.gms.internal.vision.zzm.zzq(Unknown Source)
at com.google.android.gms.internal.vision.zzak.(Unknown Source)
at com.google.android.gms.vision.text.TextRecognizer$Builder.build(Unknown Source)
at com.google.android.gms.internal.firebase_ml.zzqj.zzlp(Unknown Source)
at com.google.android.gms.internal.firebase_ml.zznx.zzf(Unknown Source)
at com.google.android.gms.internal.firebase_ml.zznz.zzls(Unknown Source)
at com.google.android.gms.internal.firebase_ml.zznz.call(Unknown Source)
at com.google.android.gms.internal.firebase_ml.zznn.zza(Unknown Source)
at com.google.android.gms.internal.firebase_ml.zzno.run(Unknown Source)
at android.os.Handler.handleCallback(Handler.java:739)
at android.os.Handler.dispatchMessage(Handler.java:95)
at com.google.android.gms.internal.firebase_ml.zzi.dispatchMessage(Unknown Source)
at android.os.Looper.loop(Looper.java:148)
at android.os.HandlerThread.run(HandlerThread.java:61)
04-12 11:48:55.799 4586-4648/com.google.firebase.samples.apps.mlkit E/TextNativeHandle: Error Loading module
com.google.android.gms.dynamite.DynamiteModule$LoadingException: No acceptable module found. Local version is 0 and remote version is 0.
at com.google.android.gms.dynamite.DynamiteModule.load(Unknown Source)
at com.google.android.gms.internal.vision.zzm.zzq(Unknown Source)
at com.google.android.gms.internal.vision.zzm.isOperational(Unknown Source)
at com.google.android.gms.vision.text.TextRecognizer.isOperational(Unknown Source)
at com.google.android.gms.internal.firebase_ml.zzqj.zzd(Unknown Source)
at com.google.android.gms.internal.firebase_ml.zzqj.zza(Unknown Source)
at com.google.android.gms.internal.firebase_ml.zzns.call(Unknown Source)
at com.google.android.gms.internal.firebase_ml.zznn.zza(Unknown Source)
at com.google.android.gms.internal.firebase_ml.zzno.run(Unknown Source)
at android.os.Handler.handleCallback(Handler.java:739)
at android.os.Handler.dispatchMessage(Handler.java:95)
at com.google.android.gms.internal.firebase_ml.zzi.dispatchMessage(Unknown Source)
at android.os.Looper.loop(Looper.java:148)
at android.os.HandlerThread.run(HandlerThread.java:61)
04-12 11:54:38.827 4586-4648/com.google.firebase.samples.apps.mlkit E/TextNativeHandle: Error Loading module
com.google.android.gms.dynamite.DynamiteModule$LoadingException: No acceptable module found. Local version is 0 and remote version is 0.
at com.google.android.gms.dynamite.DynamiteModule.load(Unknown Source)
at com.google.android.gms.internal.vision.zzm.zzq(Unknown Source)
at com.google.android.gms.internal.vision.zzak.(Unknown Source)
at com.google.android.gms.vision.text.TextRecognizer$Builder.build(Unknown Source)
at com.google.android.gms.internal.firebase_ml.zzqj.zzlp(Unknown Source)
at com.google.android.gms.internal.firebase_ml.zznx.zzf(Unknown Source)
at com.google.android.gms.internal.firebase_ml.zzns.call(Unknown Source)
at com.google.android.gms.internal.firebase_ml.zznn.zza(Unknown Source)
at com.google.android.gms.internal.firebase_ml.zzno.run(Unknown Source)
at android.os.Handler.handleCallback(Handler.java:739)
at android.os.Handler.dispatchMessage(Handler.java:95)
at com.google.android.gms.internal.firebase_ml.zzi.dispatchMessage(Unknown Source)
at android.os.Looper.loop(Looper.java:148)
at android.os.HandlerThread.run(HandlerThread.java:61)
04-12 11:54:38.831 4586-4648/com.google.firebase.samples.apps.mlkit E/TextNativeHandle: Error Loading module
com.google.android.gms.dynamite.DynamiteModule$LoadingException: No acceptable module found. Local version is 0 and remote version is 0.
at com.google.android.gms.dynamite.DynamiteModule.load(Unknown Source)
at com.google.android.gms.internal.vision.zzm.zzq(Unknown Source)
at com.google.android.gms.internal.vision.zzm.isOperational(Unknown Source)
at com.google.android.gms.vision.text.TextRecognizer.isOperational(Unknown Source)
at com.google.android.gms.internal.firebase_ml.zzqj.zzd(Unknown Source)
at com.google.android.gms.internal.firebase_ml.zzqj.zza(Unknown Source)
at com.google.android.gms.internal.firebase_ml.zzns.call(Unknown Source)
at com.google.android.gms.internal.firebase_ml.zznn.zza(Unknown Source)
at com.google.android.gms.internal.firebase_ml.zzno.run(Unknown Source)
at android.os.Handler.handleCallback(Handler.java:739)
at android.os.Handler.dispatchMessage(Handler.java:95)
at com.google.android.gms.internal.firebase_ml.zzi.dispatchMessage(Unknown Source)
at android.os.Looper.loop(Looper.java:148)
at android.os.HandlerThread.run(HandlerThread.java:61)

@Shekharb694 I found this information on their website:

The M-Series Smart Glasses are not a CTS (Compatibility Test Suite) compliant device and does not support the Play Store or other Google Mobile Services (GMS) not covered by the Android Open Source license.

So unfortunately I don't think that device can support MLKit today since it does not have Play services to download the module.

@samtstern Been using MLKit for more than a year now. And so far never thought on checking for Google Play Services, that means that a check is a must before offering MLKit to the user?
Never thought on this before, because my mindset was on the app wouldn't be downloaded from the app store if it doesn't have Play Services, or is it that a manual install is not blocked.
The same way Android Studio won't let me run my app in an emulator that doesn't have Play Services.
Or is it safe to assume that the app is not installed from Google Play when no Play Services is available in the device and some installs may come from other sources, I have found my apps available(without my consent) in third party apps stores before I started to use Bundles.

@GuanacoDevs if a device has the Google Play Store it has Google Play services and you should not have to think about it in that case.
Manual installs are not blocked. You can check for Google Play services with these calls:
https://developers.google.com/android/reference/com/google/android/gms/common/GoogleApiAvailability.html#isGooglePlayServicesAvailable(android.content.Context)

private void detect()
{
FirebaseVisionImage image = FirebaseVisionImage.fromBitmap(imageBitmap);
FirebaseVisionTextRecognizer detector = FirebaseVision.getInstance().getOnDeviceTextRecognizer();
Task result =
detector.processImage(image)
.addOnSuccessListener(new OnSuccessListener() {
@Override
public void onSuccess(FirebaseVisionText firebaseVisionText) {
// Task completed successfully
// ...
takeOutText(firebaseVisionText);
}
})
.addOnFailureListener(
new OnFailureListener() {
@Override
public void onFailure(@NonNull Exception e) {
// Task failed with an exception
// ...
Toast.makeText(MainActivity.this,e.toString(),Toast.LENGTH_LONG).show();
}
});
}
Output
Waiting for the text recognition model to be downloaded.Please wait


[Stdlib] Add a test for the performance of CollectionType.first

This tests the optimization commited in #825.

PR updated to use StdlibUnittest. In the end I couldn't use Defaulted${traversal}Collection because that doesn't take a collection type to wrap, and I couldn't use LoggingCollection because I needed to test how many times the filter predicate was called rather than how many times various CollectionType methods/properties were called.

I see.  Thank you!


MilvusVectorStore: always include text_key in output_fields

Description
Disclaimer: I'm using llama_index for the first time and immediately stumbled over this. I don't know for sure that this is a sensible way to solve my issue though.
I found no simple way to specify metadata fields that are queried from the MilvusVectorStore without also including the specified text_key to the metadata. From my understanding, the text_key will always have to be included in the output_fields, so to me it makes sense to query it if even if it's not explicitly included.
Fixes #14074
New Package?
Did I fill in the tool.llamahub section in the pyproject.toml and provide a detailed README.md for my new integration or package?

[ ] Yes
[x] No

Version Bump?
Did I bump the version in the pyproject.toml file of the package I am updating? (Except for the llama-index-core package)

[ ] Yes
[x] No

Type of Change
Please delete options that are not relevant.

[ ] Bug fix (non-breaking change which fixes an issue)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)

Knowing very little about llama_index, I would assume that this won't break applications, because the text_key currently needs to be included in output_fields for it to work. Please don't take my word for that though and check if it makes sense.
How Has This Been Tested?
Please describe the tests that you ran to verify your changes. Provide instructions so we can reproduce. Please also list any relevant details for your test configuration

[ ] Added new unit/integration tests
[ ] Added new notebook (that tests end-to-end)
[x] I stared at the code and made sure it makes sense

Suggested Checklist:

[x] I have performed a self-review of my own code
[x] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation
[ ] I have added Google Colab support for the newly added notebooks.
[x] My changes generate no new warnings
[ ] I have added tests that prove my fix is effective or that my feature works
[ ] New and existing unit tests pass locally with my changes
[ ] I ran make format; make lint to appease the lint gods

@RasmusAntons I added one extra check. Since the default is ["*"], probably want to avoid having ["*", "text"] ?

The extra check sounds good, I didn't think of that.
The other change (output_fields + [self.text_key] to .append(self.text_key)) I think will have the effect that if this.output_fields was used, the original list will be changed as well. That happened during my testing too and is probably not intended.
That's why I used the awkward output_fields + [self.text_key], unintuitively even += [self.text_key] modifies the list in place.
Alternatively, it could use output_fields = self.output_fields.copy() in line 420.

Maybe it would make sense to use the returned fields (minus the text_key) to generate the metadata? That would be a separate issue I guess, but currently if you don't set self.output_fields or set self.output_fields to ['*'] the metadata will always be {'*': None} which doesn't really make sense.

@RasmusAntons interesting. RE the list appending, linting was complaining about the original, but good catch on modifying the reference

I'm going to fix the modifying reference thing, the metadata thing can be handled in another PR if we want


Add docker compose integration with Postgresql

For easy local setup, add docker-compose configuration with running Postgresql in another docker container.

this can be closed. PR https://github.com/zalando/pazuzu-registry/pull/54 addressed this


Service worker reference is absolute, should be relative

Describe the bug
The service worker reference in build/index.html is /service-worker.js, i.e. still absolute, while the other references are (finally :partying_face:) relative.
Reproduction
https://github.com/bassjoe/pwa3

created sveltekit app
changed from auto adapter to static adapter, creating src/routes/+layout.js
created src/service-worker.js

To reproduce:

run npm install and npm run build
see build/index.html

The resulting index.html looks like this: https://github.com/bassjoe/pwa3/blob/gh-pages/index.html
And the service worker obviously can't be loaded: https://bassjoe.github.io/pwa3/
Logs
No response
System Info
System:
    OS: Linux 5.19 Fedora Linux 36 (Workstation Edition)
    CPU: (4) x64 Intel(R) Core(TM) i7-7600U CPU @ 2.80GHz
    Memory: 11.72 GB / 15.51 GB
    Container: Yes
    Shell: 3.5.0 - /usr/bin/fish
  Binaries:
    Node: 16.17.0 - ~/.nvm/versions/node/v16.17.0/bin/node
    npm: 8.15.0 - ~/.nvm/versions/node/v16.17.0/bin/npm
  Browsers:
    Firefox: 104.0.1
  npmPackages:
    @sveltejs/adapter-static: next => 1.0.0-next.41
    @sveltejs/kit: next => 1.0.0-next.468
    svelte: ^3.44.0 => 3.50.0
    vite: ^3.1.0-beta.1 => 3.1.0-beta.2

Severity
serious, but I can work around it
Additional Information
This is similar to https://github.com/sveltejs/kit/issues/3290

to my app, still an error 404 with non root url. event with the serviceWorker in config

Not exactly the same issue:
using adapter-node, svelte kit 322, and baseUrl
still got 404 on service-worker.js when the assets and everything else works fine


Slider for Number Component unusable

Hi,
In version 1 number components had an input field, in version 2 this is replaced by a slider. Now, when columns Name and/or State are wide there is not enough room for the slider. This results in a slider which can not be operated or jumps to the min value.
Is there a way to force a number component to be represented by an input field? I think not, so I would like to propose to add an option for that in web_server: and/or number: component.

Indeed this needs to be possible. The YAML configuration contains mode: auto/box/slider which needs to be sent to the frontend and taken into account when displaying the control side.

Ignore my previous comment, it is already configured to do this. By default, mode will be set to auto and the frontend will always show a slider. If you set it to box in your yaml, you will get an input box

Well, how one (read: me) can overlook something completely, it's just there in the documentation. Feel a bit silly now.
Thanks!


Support 802.1X authentication

AFAICT the current implementation doesn't allow multiple types of authentication, which makes it difficult to use on corporate networks.

+1 on this issue. We have several customers interested in 802.1x auth


Complex object for errorType?

Is there a way to configure the errorType to be a more complex object?
Like an array/list of error objects.
"errors": [
    {
      "message": "Invalid cursor provided for the after parameter: a",
      "locations": [{ "line": 2, "column": 3 }],
      "path": ["vessels"],
      "extensions": {
        "code": "BAD_USER_INPUT"
      }
    }
  ]

Yes! See the docs here

In your case, it would be
"errorType": {
        "CustomErrorType": {
            "message": "string"
            "path": "string list"
            "extensions": "dictionary<string, string>"
        }
}

As for locations, there isn't a generic way to describe such type (list of other complex objects) but it should be doable to add if you REALLY need it

I believe this is resolved as well? I'll close the issue, please re-open if the problem persists

@bdaniel7 Didn't the proposed solution work for you?

Hmm, I see now that it does fill the error object:
{ message =
   "Cannot query field "updateTimestamps" on type "Vessel". Did you mean "updateTimestamp"?"
  path = null
  extensions = seq [[code, GRAPHQL_VALIDATION_FAILED]] }

Ok, I will use the custom error object as you recommended, thank you.


Amazing job

there are some plans to implement file upload?

For file upload, Files can be uploaded to IPFS/Filecoin with pointer in chat?


Rspec: activate entire context group

Using Feature.run_with_activated is helpful for one-off tests, but can get repetitive when you have many tests which all need the same toggle state.
At first I tried this:
Feature.run_with_activated(:foo) do
  context "foo is activated" do
    it "should bar"
    it "should baz"
  end
end

But that doesn't work because the Feature.run_with_activated will be run at file parse time, not at spec runtime - which totally makes sense.
A technique which does work is utilizing "rspec metadata" with a custom around filter:
context "foo is activated", active: :foo do
  it "should bar"
  it "should baz"
end

  config.around(:example) do |example|
    active, inactive = example.metadata[:active], example.metadata[:inactive]

    if active.present? && inactive.present?
      Feature.run_with_activated(*active) { Feature.run_with_deactivated(*inactive) { example.run } }
    elsif active.present?
      Feature.run_with_activated(*active) { example.run }
    elsif inactive.present?
      Feature.run_with_deactivated(*inactive) { example.run }
    else
      example.run
    end
  end

This pull request has this information (including the around filter definition) in the README, but it might be better for me to move it into a codebase.  I could put it in it's own gem or in feature/rspec.  @mgsnova, what are your thoughts?

Coverage increased (+0.05%) to 96.98% when pulling 3a267caf316712c600869d96b31ee85438915fa9 on tommyh:rspec_testing_documentation into 3ce0c67c22baa2c8cc68e195d73753f1887ade30 on mgsnova:master.

I have improved the rspec around hook to walk up the rspec example tree, so that you can nest :active groups in eachother (with some help from @javidjamae).
For example:
context "with foo enabled", active: :foo do
  context "with bar enabled", active: :bar do
  end

  context "with baz enabled", active :baz do
  end
end

From a highlevel, I think the rspec around hook definition should be in code and not copy/pasted from documentation.  So the main question is, do you want this code in your feature gem?  Or do you want me to publish it as a separate gem?  Either way, I can add rspec tests to make sure the hook is functioning correctly.
FYI, here is my new around hook:
RSpec.configure do |config|
  config.around(:example) do |example|

    # get metadata up the rspec example tree
    examples_metadata = []
    metadata = example.metadata
    while metadata do
      examples_metadata << metadata
      metadata = metadata[:example_group]
    end

    # grab the "active" and "inactive" metadata from the example tree
    active = examples_metadata.map { |metadata| metadata[:active] }.compact.uniq
    inactive = examples_metadata.map { |metadata| metadata[:inactive] }.compact.uniq

    if active.present? && inactive.present?
      Feature.run_with_activated(*active) { Feature.run_with_deactivated(*inactive) { example.run } }
    elsif active.present?
      Feature.run_with_activated(*active) { example.run }
    elsif inactive.present?
      Feature.run_with_deactivated(*inactive) { example.run }
    else
      example.run
    end
  end
end

I've been working with @javidjamae, and he recommended I change the rspec filter name to be more in line with the feature gem naming conventions.  Some options are:
:feature_active, :active_feature, :activate_feature.
Do you prefer any of these?  Something else?  Or do you want nothing todo with an rspec integration?

First, the work you've done is really cool. Yes, it would be cool to have this in the feature gem.
Ideally, there will be no explicit dependency to rspec. Just let the gem figure out whether rspec is there, and load the additions into rspec.
Regarding your question, : feature_active is my favourite.

Hi,
is there a chance to get this PR in a finished state anytime soon? If not, I will close this one but can be opened again as soon as there is something new. I don't want to have issues open that long

Closed due to no activity


Controlling Field Size and Other Questions

I have a form in which I have been able to size the fields (columns) the way I would like (figure 1). Also I would like to move some of the fields to the header section.

But when I open the edit dialogs I can't seem to size the fields appropriately.  (figure 2).

I'm thinking I'm going to have to write some HTML and CSS to achieve my desired results, unless I've missed some better, already built-in, Serenity commands.
If I need to write the HTML, where is the best place for this, in the .cshtml files. I don't want to break the already well working Serene functionality. The CSS will of course go in the appropriate .less file.
p.s. I've been reading that there have been massive changes, especially effecting the education personnel since the troubles from a week or two ago -- be safe and be wise.

Thanks @mlutzow, i'm ok. Width attribute only works for grids. See multi column dialog sample and its css in basicsamples.less to design a multi column dialog. If you still want to make text boxes smaller, you should do it in css with max-width etc.

Good to hear. Thanks for the pointer, I was looking for a 'header' attribute or something to move some fields to the header section or one of my forms (both grid and dialog, if possible), is this doable through CSS?

@volkanceylan you've put together a very nice tool, so far I've been able to accomplish most everything I need with little effort (other than learning the toolsets) using the environment provided to me in Serenity.
Thanks for you contribution (I'm still trying to find where I can place a couple of fields in the header (I've probably looked at it 100 times and don't even realize it)).

I'm not sure what you mean by "putting fields in the header"


Allow swift sdk to delete a wildcard

Resolves #19
Proposed Changes:

Allow user to delete on wildcards
DCO1.1 Signed-off-by: Thomas Boop<EMAIL_ADDRESS>

Hi boopt2,
Thanks for submitting this pull request!
I can confirm that the DCO1.1 sign-off has been included. It is okay to process this pull request.
dco-bot


If no matching select option value is found, it will completely discard the filter! It should return no results instead!

https://github.com/concrete5/concrete5/blob/f8541c52a73b20e19477ecddfb4eae096cf1af4d/concrete/attributes/select/controller.php#L587
The function says that if no matching select option is found, then simply do not apply the filter... this is not really the right way to do this, as it means it is impossible to return an empty result set in the case of no pages matching.
The function should read more like the below - may be a better way to do this, but just a quick fix I did for my current client
public function filterByAttribute(AttributedItemList $list, $value, $comparison = '=')
{
    $em = \Database::connection()->getEntityManager();
    if ($value instanceof SelectValueOption) {
        $option = $value;
    } else {
        $option = $em->getRepository('\Concrete\Core\Entity\Attribute\Value\Value\SelectValueOption')
            ->findOneByValue($value);
    }

    $column = 'ak_' . $this->attributeKey->getAttributeKeyHandle();
    $qb = $list->getQueryObject();
    $qb->andWhere(
        $comparison === '!=' || $comparison === '<>'
            ? $qb->expr()->notLike($column, ':optionValue_' . $this->attributeKey->getAttributeKeyID())
            : $qb->expr()->like($column, ':optionValue_' . $this->attributeKey->getAttributeKeyID())
    );
    if (is_object($option)) {
        $qb->setParameter('optionValue_' . $this->attributeKey->getAttributeKeyID(), "%\n" . $option->getSelectAttributeOptionValue(false) . "\n%");
    }else{
        // null out the actual value somehow - probably a better way to do this.
        $qb->setParameter('optionValue_' . $this->attributeKey->getAttributeKeyID(), "%\n" . "\n%");
    }
}

What exactly is the problem being solved here?

See the linked bug report on the c5 forums. If no results are matched from
the filter for a Select Attribute type then it returns results as if the
filter was never applied. It should return 0 results if there are 0 pages
that match the filter. Not just discard the filter.
On Wed, 8 Jan 2020, 22:30 Andrew Embler<EMAIL_ADDRESS>wrote:

What exactly is the problem being solved here?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/concrete5/concrete5/issues/8332?email_source=notifications&email_token=ACRR3EBH6JEQVW6HUI2WQXLQ4ZHX3A5CNFSM4KDG64LKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEIOHDAY#issuecomment-572289411,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ACRR3ECVT3QIEWCPGEVEVCTQ4ZHX3ANCNFSM4KDG64LA
.

The code in this method in the latest develop is a different; given that, I'm closing this issue.


Creating a new link is not possible.

Good morning,
I have identified a rather problematic bug with the latest version of YOURLS.
I don't have any plugin, and I use NGINX as well as PHP 7.3.
When I try to create a custom shortcut for a URL that doesn't end with an extension (for example: https://discord.gg/YouNameHere), I get a 500 error from the AJAX page that normally registers the link.
In DEBUG mode, I have no additional information.
NGINX error log:
2020/05/12 01:32:29 [error] 3381#3381: *1 FastCGI sent in stderr: "PHP message: PHP Fatal error:  Uncaught PDOException: SQLSTATE[22007]: Invalid datetime format: 1366 Incorrect string value: '\xF0\x9F\x8E\xB2 N...' for column mydomain.mytable.title at row 1 in /var/www/Eh/mydomain/includes/vendor/aura/sql/src/ExtendedPdo.php:748

\xF0\x9F\x8E\xB2 is the UTF8 sequence for 🎲. I don't get how this ends up in a datetime field.
Also, I don't get how the "doesn't end with an extension" part interferes. YOURLS doesn't care if the link has an extension or not. A link is a link.

No feedback, closing. Feel free to comment on with further details

I have this too — and I'm happy to help provide more information. This only started recently after a handful of other URLs where shortened. I'm not a developer and have limited skills debugging, but am willing to try things with guidance or provide more testing results.
[Thu Jul 23 15:32:31.862319 2020] [php7:error] [pid 27033] [client <IP_ADDRESS>:53025] PHP Fatal error:  Uncaught PDOException: SQLSTATE[22007]: Invalid datetime format: 1366 Incorrect string value: '\xF0\x9F\x94\x97 Y...' for column 'title' at row 1 in /var/www/html/YOURLS/includes/vendor/aura/sql/src/ExtendedPdo.php:748\nStack trace:\n#0 /var/www/html/YOURLS/includes/vendor/aura/sql/src/ExtendedPdo.php(748): PDOStatement->execute()\n#1 /var/www/html/YOURLS/includes/vendor/aura/sql/src/ExtendedPdo.php(306): Aura\Sql\ExtendedPdo->perform('INSERT INTO yo...', Array)\n#2 /var/www/html/YOURLS/includes/functions-shorturls.php(258): Aura\\Sql\\ExtendedPdo->fetchAffected('INSERT INTO yo...', Array)\n#3 /var/www/html/YOURLS/includes/functions-shorturls.php(89): yourls_insert_link_in_db('https://github....', 'yourls', 'GitHub - YOURLS...')\n#4 /var/www/html/YOURLS/admin/admin-ajax.php(19): yourls_add_new_link('https://github....', 'yourls')\n#5 {main}\n  thrown in /var/www/html/YOURLS/includes/vendor/aura/sql/src/ExtendedPdo.php on line 748, referer: https://stanford.link/admin/?

Have the same issue.
2020/10/07 03:10:22 [error] 11118#11118: *17 FastCGI sent in stderr: "PHP message: PHP Fatal error:  Uncaught PDOException: SQLSTATE[22007]: Invalid datetime format: 1366 Incorrect string value: '\xF0\x9F\x8E\x81 E...' for column `lnk`.`yourls_url`.`title` at row 1 in /home/lnk/www/includes/vendor/aura/sql/src/ExtendedPdo.php:748
Stack trace:
#0 /home/lnk/www/includes/vendor/aura/sql/src/ExtendedPdo.php(748): PDOStatement->execute()
#1 /home/lnk/www/includes/vendor/aura/sql/src/ExtendedPdo.php(306): Aura\Sql\ExtendedPdo->perform()
#2 /home/lnk/www/includes/functions.php(172): Aura\Sql\ExtendedPdo->fetchAffected()
#3 /home/lnk/www/includes/functions.php(268): yourls_insert_link_in_db()
#4 /home/lnk/www/admin/admin-ajax.php(19): yourls_add_new_link()
#5 {main}
  thrown in /home/lnk/www/includes/vendor/aura/sql/src/ExtendedPdo.php on line 748"

Seems related to some parsing of URL to shorten...

Seems likely a database encoding/collation mismatch. https://stackoverflow.com/a/48310027/5991 (This thread is about Laravel, but PDO is PDO.)


App should offer deletion of positive test when test is older than 10 days

Current Implementation
Users have to delete a positive test manually, there is no hint shown in the app that they have to do this, in order to get the app "back to normal".
Suggested Enhancement
The app should offer, either through a pop-up or a splash screen, to delete the test. If the action is confirmed by the user, the test should be deleted automatically.
Expected Benefits
There are many users who think they have to uninstall the app/reset it in order to continue to use it, after they registered a positive test in the app. If the app would pro-active ask them whether the test result can be deleted, this would be very helpful.

Internal Tracking ID: EXPOSUREAPP-11912

@Ein-Tim Thanks, nice idea!

I consider this as resolved now, because after 7 days the risk tile is shown again and thus the user can see the risk status again. They can then decide if they want to delete the test or not.


WIP, ENH: BrainVision segmentation parsing

This was originally in the #7771 Pull Request.
Added parsing of the segmentation metadata from the BrainVision header file.
Enhancements:
The function _parse_segmentation takes any of the key-value pairs in the segmentation subsections of the BrainVision file starting with S e g m e n t a t i o n  /  A v e r a g i n g, as well as some of the added key-values in the Common Infos. The segmentation is stored in a new attribute segmentation of the RawBrainvision class.
In the original PR there was a suggestion that the dataset should be read as an Evoked dataset for Averaged=YES?

@honzaseda first thing is to share a tiny file containing averaged data. Then we can add it to mne-testing-data repo and then add a read_evoked_brainvision function.

I'm going to close this since it seems like it's no longer being worked on (?), but feel free to reopen if I'm mistaken @honzaseda !


Gravwell Kit: Add Dashboard for Data Ingestion

Add Dashboard for Data Ingestion, Add tags to resources, Change Queries to multiline, rename dashboards and searches.

Looks like we still need to bump the kit version

I believe the CONVERT_BYTES_GB macro is missing

Need to add the TARGET_INGEST macro as well
Also for some reason I get 2 each of the following:

"Update ingester table" scheduled searches
"Tag Aggregates" flows
"Ingester state tracker
...is that just me?

FYI the duplicate items were on my end


md-sidenav "below" the app toolbar

Bug, feature request, or proposal:
Add mode "below" to sidebar component to show sidebar below the toolbar
What is the expected behavior?
show sidebar below the toolbar like https://material-components-web.appspot.com/drawer/permanent-drawer-below-toolbar.html
What is the current behavior?
None
What is the use-case or motivation for changing an existing behavior?
New Mode for sidenav that respect the material specification

You don't need a special mode to do it, just adjust your component template so that the toolbar is before your sidenav container.
https://material.angular.io/components/categories does it

Hi @willshowell,
I'm having a similar issue in Material 2 that I haven't been able to resolve, where the toolbar is above the side menu, but it scrolls with the content if it is taller than the page content rather than remaining fixed at the top of the window. In Material 1, using md-content seemed to solve this allowing content to scroll independently of the toolbar. However, I haven't been able to find an equivalent to md-content in Material 2 mimic this desired behavior. I looked at the sidenav sample code in the demo-app, and I saw the same thing happening. Am I missing something?

I don't think there is a directive that willl handle it for you, but it's definitely possible with just HTML and CSS. Take a look at the docs site and its source - it sounds like it has the behavior you're looking for.

Yeah, I'll go ahead and do that. I just wanted to double check to make sure there wasn't a recommended way of doing it that I was overlooking. Thanks for the advice!


Fix linting error

Thanks!

btw look at: docs/CONTRIBUTING.md
Basically for semantic to create a new release version, you need to have your commit named with one of the appropriate tags... luckily, your commit starts with Fix so that will create a minor release version... so we should be good.. but in the future keep that in mind.

I've triggered the pipeline with an empty commit with the right tag so it generates a new release.

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


[request] being able to select the answer of an operation instead of the operation itself . Basically ans.

what exactly is the issue?

Let's say you do 7035566+882988=
7918554
You can only select 7035566+882988 and not 7918554
Say for example if you wanted to do something with the number 7918554
itself like add or multiply its digits.
On Tue, Nov 21, 2023, 13:46 woheller69 @.***> wrote:

what exactly is the issue?
—
Reply to this email directly, view it on GitHub
https://github.com/woheller69/Arity/issues/38#issuecomment-1820859773,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/BEE2PXRRC3BDWLNCL672JTTYFSPCFAVCNFSM6AAAAAA7UKTGYSVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTQMRQHA2TSNZXGM
.
You are receiving this because you authored the thread.Message ID:
@.***>

long click on the result and copy it

It doesn't work for me
On Tue, Nov 21, 2023, 13:52 woheller69 @.***> wrote:

long click on the result and copy it
—
Reply to this email directly, view it on GitHub
https://github.com/woheller69/Arity/issues/38#issuecomment-1820868719,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/BEE2PXXY2UPSQS3ETPKSOGDYFSPXNAVCNFSM6AAAAAA7UKTGYSVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTQMRQHA3DQNZRHE
.
You are receiving this because you authored the thread.Message ID:
@.***>

In fact when I long click the result it deletes the whole line
On Tue, Nov 21, 2023, 13:52 woheller69 @.***> wrote:

long click on the result and copy it
—
Reply to this email directly, view it on GitHub
https://github.com/woheller69/Arity/issues/38#issuecomment-1820868719,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/BEE2PXXY2UPSQS3ETPKSOGDYFSPXNAVCNFSM6AAAAAA7UKTGYSVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTQMRQHA3DQNZRHE
.
You are receiving this because you authored the thread.Message ID:
@.***>

copy the result from the line above the input field

Okay that works. Thanks for your help .
On Tue, Nov 21, 2023, 13:56 woheller69 @.***> wrote:

copy the result from the line above the input field
—
Reply to this email directly, view it on GitHub
https://github.com/woheller69/Arity/issues/38#issuecomment-1820875330,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/BEE2PXSGTOHOGUGW27JMPGDYFSQHFAVCNFSM6AAAAAA7UKTGYSVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTQMRQHA3TKMZTGA
.
You are receiving this because you authored the thread.Message ID:
@.***>


[WIP] Add rationale document

I think it would be great to have such a document. This way we don't have to explain the same things over and over again on the issues and it helps users and contributors know what they are getting into.
This is a very rough draft with a lot of empty content but I think it shows the idea.

Oops, wrong repo...


Fix some typos.

Before submitting a pull request make sure you have:

[x] At least skimmed through contributing guidelines including yt-dlp coding conventions
[x] Searched the bugtracker for similar pull requests
[x] Checked the code with flake8

In order to be accepted and merged into yt-dlp each piece of code must be in public domain or released under Unlicense. Check one of the following options:

[x] I am the original author of this code and I am willing to release it under Unlicense
[ ] I am not the original author of this code but it is in public domain or released under Unlicense (provide reliable evidence)

What is the purpose of your pull request?

[x] Bug fix
[ ] Improvement
[ ] New extractor
[ ] New feature

Description of your pull request and other information
This fixes the following typos and grammatical errors:
"allow to" → "allow one to"
compatability → compatibility
dependancies → dependencies
dependancy → dependency
exisiting → existing
prefered → preferred
reencode → re-encode
seperate → separate
seperated → separated
seperator → separator
specifc → specific
This specifically does not fix the spelling error of the 'seperate-video-versions' option, however.

Would I be better off omitting the yt_dlp/jsinterp.py changes as well?

They are fine. The function names starting with _ in jsinterp are private by convention and should be treated as an implementation detail by third parties. The Postprocessor initializers on the other hand are part of the public API - hence why it should not have any breaking changes


Revert behavior change in error reporting for function after validators

Codecov Report

Merging #495 (1509f3d) into main (7662bdd) will not change coverage.
The diff coverage is 100.00%.

:mega: This organization is not using Codecov’s GitHub App Integration. We recommend you install it so Codecov can continue to function properly for your repositories. Learn more
Additional details and impacted files
@@           Coverage Diff           @@
##             main     #495   +/-   ##
=======================================
  Coverage   94.72%   94.72%
=======================================
  Files          93       93
  Lines       11637    11637
  Branches       25       25
=======================================
  Hits        11023    11023
  Misses        607      607
  Partials        7        7

Impacted Files
Coverage Δ

src/validators/function.rs
95.84% <100.00%> (ø)

Continue to review full report in Codecov by Sentry.

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


Always calculate the cache key

even when the build cache is off and the Develocity plugin hasn't been applied.

Merged as part of #27852 that makes the performance actually faster.


[xy] Support updating block type.

Summary

Support updating block type from scratchpad to data_loader, transformer, data_exporter
API for updating block type
PUT /api/pipelines/[pipeline_uuid]/blocks/[block_uuid]

{
  "block": {
    "type": "data_loader"/"transformer"/"data_exporter"
  }
}

Tests

tested locally

cc:

cc: @shrey-mage API for updating block type ^


feat: module for turbo deploy

This pull request extracts module logic from turbo-deploy, enabling other Terraform configurations to reference this repository as a Terraform module. To achieve this, parts of the code have been refactored to function as a standalone module, including adjustments to the lambda function binary
test plan:

go to turbo-deploy repo, cd into devops-terraform folder
replaced the source module in main.tf file with :
     source     = "github.com/frgrisk/terraform-aws-turbo-deploy?ref=9ee19039258cd837a4f3eae8d9c838bca9abbf8a"

head into the client/src/app/create-deployment/create-deployment.component.ts file, add the ami (for ap-southeast-3) ami: ami-006e9f3b56e49ce63
for example:

  initializeAWSData() {
    this.apiService.getAWSData().subscribe((data) => {
      this.serverSizes = data.serverSizes;
      this.amis = data.amis;
      this.amis.push('ami-006e9f3b56e49ce63');
      this.deploymentForm.get('serverSize')?.patchValue('t3.medium');
      this.deploymentForm.get('ami')?.patchValue(this.amis[1]);
      this.deploymentForm.get('region')?.patchValue(Region.AP_SOUTHEAST_3);
    });
  }

cd into the client folder, and run ng serve
deploy an ec2 in the UI

testing again after moving files up 2 directories

testing done, works fine after moving files up 2 directories

fixed deprecated template_file
utilised aws provider region instead of initialising a variable
deleted terraform lock file

tested locally and with the git source URL, works fine

Another concern is this requires the host running terraform to have Docker installed. Does the image need to be custom built for each environment, or can we make it a public image that can be referenced?

I've deployed the module, but I'm not sure what to do from step 2 to 3.

sorry i think i missed a step, after deploying step 2 with terraform apply, replace the initializeAWSData() function in the UI with this code: (this code adds the ami in ap-southeast-3 for testing)
initializeAWSData() {
this.apiService.getAWSData().subscribe((data) => {
this.serverSizes = data.serverSizes;
this.amis = data.amis;
this.amis.push('ami-006e9f3b56e49ce63');
this.deploymentForm.get('serverSize')?.patchValue('t3.medium');
this.deploymentForm.get('ami')?.patchValue(this.amis[1]);
this.deploymentForm.get('region')?.patchValue(Region.AP_SOUTHEAST_3);
});
}
after this step, replace the url in client/proxy.conf.json with the base output url (after running terraform apply)

and then run ng serve

Do we want the http_crud DynamoDB table to be provisioned by default?

Still not working for me. Is there a way to disable the debug logging? I can't find where the error is occurring, and it's a loop.
@luqmanbazran can you try applying this in your sandbox and see if you have better luck?

[!NOTE]
You'll need to change the bucket name in the example below.

module "turbo_deploy" {
  providers = {
    aws = aws
  }
  source            = "github.com/frgrisk/terraform-aws-turbo-deploy?ref=69757fa92cbc9281ea4bd4742cd05aaf780e0a0b"
  s3_tf_bucket_name = "turbo-deploy-hskiba"
}

output "turbo_deploy_base_url" {
  value = module.turbo_deploy.base_url
}

@zeteoh can you also add -no-color to the TF commands? The control character printed to the logs in Cloudwatch make them a bit harder to read.

@hskiba I tested it on my sandbox and it seems to work smoothly, just takes a few minutes to deploy/remove the instances


This repository is in violation of Unity Asset Store's terms.

Hi.
We are the developers of "OpenCVForUnity".
Your public repository contains files of a paid Unity asset that We sell on the Unity Asset Store.
Could you please change the repository attribute to private?
Or add the "OpenCVForUnity" folder path to the .gitignore file. In that case, you will need to completely remove the file from past commits as well and upload it again.
We hope that you will understand.
Thank you in advance.
Enox Software

Thank you for a reminder! I’ll remove it now! -Yucheuan From: Enox Software [SUB ACCOUNT]Sent: Friday, September 30, 2022 1:44 PMTo: yucheuan/MR-Desktop-phygital-objectCc: SubscribedSubject: [yucheuan/MR-Desktop-phygital-object] This repository is in violation of Unity Asset Store's terms. (Issue #1) Hi.We are the developers of "OpenCVForUnity".Your public repository contains files of a paid Unity asset that We sell on the Unity Asset Store.Could you please change the repository attribute to private?Or add the "OpenCVForUnity" folder path to the .gitignore file. In that case, you will need to completely remove the file from past commits as well and upload it again.We hope that you will understand.Thank you in advance.Enox Software—Reply to this email directly, view it on GitHub, or unsubscribe.You are receiving this because you are subscribed to this thread.Message ID<EMAIL_ADDRESS>
Hi, I’m relative new for GitHub, could you let me know how to do this?
Thank you.

On Oct 2, 2022, at 1:16 PM, Enox Software [SUB ACCOUNT] @.***> wrote:
Thank you for your prompt response.
In addition, could you please remove the files contained in past commits?
—
Reply to this email directly, view it on GitHub https://github.com/yucheuan/MR-Desktop-phygital-object/issues/1#issuecomment-1264724405, or unsubscribe https://github.com/notifications/unsubscribe-auth/AUO2FAYGKUFTTXNXOJFRJRDWBHUSFANCNFSM6AAAAAAQ2DEAVE.
You are receiving this because you commented.


CodeCov uses package namespace

For azure-storage-file-share and azure-storage-file-datalake
The reason for the missing modules was because we were not using a well-founded namespace from our package metadata function.
# BEFORE
argument_to_pytest="--cov=azure.storage.file.share"

# AFTER
argument_to_pytest="--cov=azure.storage.fileshare"

Telling coverage to watch module X and then testing against module Y is a good way to get 0 coverage data 👍
Resolves #30295

successful build

/check-enforcer override


add bluepill stm32f103c8 support

based on olimex-p103 bsp

There is no cookbook manual for configuring the stm32YYxx_hal_conf.h file but usually we disable all non-used modules. You could take a look at hw/bsp/nucleo-f413zh/include/bsp/stm32f4xx_hal_conf.h for an extreme example. The update based on config options sounds like a nice feature to have as well. This is not that important because it only slows down the build times slightly.
Also please rollback the hw/bsp/bluepill/boot-bluepill.ld license changes (don't mind the bot comments!).

In theory you could make the hal_conf.h setting be dependent on the BSP config options. In practice, it's going to create a lot of messy code, and probably not that useful (i.e what Fabio said :).
In general, people would have their own BSP for the thing they're building, and they'd enable exactly the things they'd need for their board.
That being said, I can see why you would want to do the hal_conf.h dependent on the config options for this particular board. It is severely limited in size, and people would want to use the same BSP for different projects of theirs. So I think it would be reasonable to do that for this particular board. What do you think Fabio?

Just to be clear what I meant by "This is not that important because it only slows down the build times slightly." is that it is not that important to disable the non-used modules, programmatically or manually. It would not block a merge from me!
Answering @mkiiskila's question: I think it sounds cool to have that, but in practice I am not so sure because we would have one for each BSP, etc. Even if it's just this BSP, it still have some extra issues, like, now to be sure all options work, we would need to build each possible syscfg configuration that affects those module configurations. Also since we already garbage collects non-used symbols when linking, in practice this only makes a difference in the build times (because enabled modules still have to be built!). Not sure the effort of doing and maintaining this would bring much added value in return.
But I might as well be missing something or some different point of view! ;-)

Yes; painful to maintain. I agree.
And you're right regarding link time garbage collection; if the init call to HAL from within BSP is commented out, the end result should not have any traces of those unused drivers.

yes, so I was also worried about whether it would link in unused code/symbols (sdcc seems to have a problem with this), but seems this does not:
jens@pluto:~/build/newt/myproj$ newt size f103_blinky
Size of Application Image: app
  FLASH     RAM
     45     287 *fill*
    122       9 apps_blinky.a
    696      56 hw_bsp_bluepill.a
     52       0 hw_cmsis-core.a
    276       0 hw_drivers_uart_uart_hal.a
    148       0 hw_hal.a
   2096      64 hw_mcu_stm_stm32_common.a
   3130      32 hw_mcu_stm_stm32f1xx.a
   4644    8217 kernel_os.a
   1540      12 libc_baselibc.a
   2229     158 sys_console_full.a
    328     128 sys_flash_map.a
    412      12 sys_mfg.a
     32       5 sys_sysinit.a
     56       0 util_mem.a
     92       0 f103_blinky-sysinit-app.a
   1456       0 libgcc.a

objsize
   text	   data	    bss	    dec	    hex	filename
  17316	     60	   8952	  26328	   66d8	/home/jens/build/newt/myproj/bin/targets/f103_blinky/app/apps/blinky/blinky.elf

also, are you sure this really speeds up compile time?
So I just updated stm32f1xx_hal_conf.h in the local bsp of my project so it looks like this:
#define HAL_MODULE_ENABLED
#if 0
#define HAL_ADC_MODULE_ENABLED
#define HAL_CAN_MODULE_ENABLED
#define HAL_CEC_MODULE_ENABLED
#define HAL_CORTEX_MODULE_ENABLED
#define HAL_CRC_MODULE_ENABLED
#define HAL_DAC_MODULE_ENABLED
#define HAL_DMA_MODULE_ENABLED
#define HAL_ETH_MODULE_ENABLED
#define HAL_FLASH_MODULE_ENABLED
#define HAL_GPIO_MODULE_ENABLED
#define HAL_HCD_MODULE_ENABLED
#define HAL_I2C_MODULE_ENABLED
#define HAL_I2S_MODULE_ENABLED
#define HAL_IRDA_MODULE_ENABLED
#define HAL_IWDG_MODULE_ENABLED
#define HAL_NAND_MODULE_ENABLED
#define HAL_NOR_MODULE_ENABLED
#define HAL_PCCARD_MODULE_ENABLED
#define HAL_PCD_MODULE_ENABLED
#define HAL_PWR_MODULE_ENABLED
#define HAL_RCC_MODULE_ENABLED
#define HAL_RTC_MODULE_ENABLED
#define HAL_SD_MODULE_ENABLED
#define HAL_SMARTCARD_MODULE_ENABLED
#define HAL_SPI_MODULE_ENABLED
#define HAL_SRAM_MODULE_ENABLED
#define HAL_TIM_MODULE_ENABLED
#define HAL_UART_MODULE_ENABLED
#define HAL_USART_MODULE_ENABLED
#define HAL_WWDG_MODULE_ENABLED
#define HAL_MMC_MODULE_ENABLED
#else
#define HAL_USART_MODULE_ENABLED
#define HAL_UART_MODULE_ENABLED
#define HAL_TIM_MODULE_ENABLED
#define HAL_ADC_MODULE_ENABLED
#define HAL_DMA_MODULE_ENABLED
#define HAL_FLASH_MODULE_ENABLED
#define HAL_GPIO_MODULE_ENABLED
#define HAL_I2C_MODULE_ENABLED
#define HAL_IWDG_MODULE_ENABLED
#define HAL_RCC_MODULE_ENABLED
#define HAL_SPI_MODULE_ENABLED
#define HAL_CORTEX_MODULE_ENABLED
#endif

then build blinky again:
jens@pluto:~/build/newt/myproj$ newt build f103_blinky
Building target targets/f103_blinky
Compiling bin/targets/f103_blinky/generated/src/f103_blinky-sysflash.c
Compiling bin/targets/f103_blinky/generated/src/f103_blinky-sysinit-app.c
Compiling apps/blinky/src/main.c
Compiling hw/bsp/bluepill/src/hal_bsp.c
Assembling hw/bsp/bluepill/src/arch/cortex_m3/startup_stm32f103xb.s
Compiling hw/bsp/bluepill/src/system_stm32f1xx.c
Compiling repos/apache-mynewt-core/hw/drivers/uart/src/uart.c
Compiling repos/apache-mynewt-core/hw/cmsis-core/src/cmsis_nvic.c
Compiling repos/apache-mynewt-core/hw/hal/src/hal_common.c
Compiling repos/apache-mynewt-core/hw/hal/src/hal_flash.c
Compiling repos/apache-mynewt-core/hw/drivers/uart/uart_hal/src/uart_hal.c
Compiling repos/apache-mynewt-core/hw/mcu/stm/stm32_common/src/hal_gpio.c
Compiling repos/apache-mynewt-core/hw/mcu/stm/stm32_common/src/hal_i2c.c
Compiling repos/apache-mynewt-core/hw/mcu/stm/stm32_common/src/hal_os_tick.c
Compiling repos/apache-mynewt-core/hw/mcu/stm/stm32_common/src/hal_spi.c
Compiling repos/apache-mynewt-core/hw/mcu/stm/stm32_common/src/hal_system_start.c
Compiling repos/apache-mynewt-core/hw/mcu/stm/stm32_common/src/hal_system.c
Compiling repos/apache-mynewt-core/hw/mcu/stm/stm32_common/src/hal_timer.c
Compiling repos/apache-mynewt-core/hw/mcu/stm/stm32_common/src/hal_uart.c
Compiling repos/apache-mynewt-core/hw/mcu/stm/stm32_common/src/hal_watchdog.c
Compiling repos/apache-mynewt-core/hw/mcu/stm/stm32_common/src/sbrk.c
Compiling repos/apache-mynewt-core/hw/mcu/stm/stm32_common/src/stm32_driver_mod_i2c_v1.c
Compiling repos/apache-mynewt-core/hw/mcu/stm/stm32_common/src/stm32_driver_mod_i2c_v2.c
Compiling repos/apache-mynewt-core/hw/mcu/stm/stm32_common/src/stm32_driver_mod_spi.c
Compiling repos/apache-mynewt-core/hw/mcu/stm/stm32_common/src/stm32_hw_id.c
Compiling repos/apache-mynewt-core/hw/mcu/stm/stm32f1xx/src/ext/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c
Compiling repos/apache-mynewt-core/hw/mcu/stm/stm32f1xx/src/ext/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_adc_ex.c
Compiling repos/apache-mynewt-core/hw/mcu/stm/stm32f1xx/src/ext/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_adc.c
Compiling repos/apache-mynewt-core/hw/mcu/stm/stm32f1xx/src/ext/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_can.c
Compiling repos/apache-mynewt-core/hw/mcu/stm/stm32f1xx/src/ext/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cec.c
Compiling repos/apache-mynewt-core/hw/mcu/stm/stm32f1xx/src/ext/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.c
Compiling repos/apache-mynewt-core/hw/mcu/stm/stm32f1xx/src/ext/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_crc.c
Compiling repos/apache-mynewt-core/hw/mcu/stm/stm32f1xx/src/ext/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dac.c
Compiling repos/apache-mynewt-core/hw/mcu/stm/stm32f1xx/src/ext/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c
Compiling repos/apache-mynewt-core/hw/mcu/stm/stm32f1xx/src/ext/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dac_ex.c
Compiling repos/apache-mynewt-core/hw/mcu/stm/stm32f1xx/src/ext/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_eth.c
Compiling repos/apache-mynewt-core/hw/mcu/stm/stm32f1xx/src/ext/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.c
Compiling repos/apache-mynewt-core/hw/mcu/stm/stm32f1xx/src/ext/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c
Compiling repos/apache-mynewt-core/hw/mcu/stm/stm32f1xx/src/ext/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.c
Compiling repos/apache-mynewt-core/hw/mcu/stm/stm32f1xx/src/ext/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.c
Compiling repos/apache-mynewt-core/hw/mcu/stm/stm32f1xx/src/ext/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_hcd.c
Compiling repos/apache-mynewt-core/hw/mcu/stm/stm32f1xx/src/ext/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_i2c.c
Compiling repos/apache-mynewt-core/hw/mcu/stm/stm32f1xx/src/ext/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_i2s.c
Compiling repos/apache-mynewt-core/hw/mcu/stm/stm32f1xx/src/ext/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_irda.c
Compiling repos/apache-mynewt-core/hw/mcu/stm/stm32f1xx/src/ext/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_iwdg.c
Compiling repos/apache-mynewt-core/hw/mcu/stm/stm32f1xx/src/ext/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_mmc.c
Compiling repos/apache-mynewt-core/hw/mcu/stm/stm32f1xx/src/ext/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_nand.c
Compiling repos/apache-mynewt-core/hw/mcu/stm/stm32f1xx/src/ext/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pccard.c
Compiling repos/apache-mynewt-core/hw/mcu/stm/stm32f1xx/src/ext/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_nor.c
Compiling repos/apache-mynewt-core/hw/mcu/stm/stm32f1xx/src/ext/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pcd.c
Compiling repos/apache-mynewt-core/hw/mcu/stm/stm32f1xx/src/ext/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.c
Compiling repos/apache-mynewt-core/hw/mcu/stm/stm32f1xx/src/ext/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pcd_ex.c
Compiling repos/apache-mynewt-core/hw/mcu/stm/stm32f1xx/src/ext/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.c
Compiling repos/apache-mynewt-core/hw/mcu/stm/stm32f1xx/src/ext/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.c
Compiling repos/apache-mynewt-core/hw/mcu/stm/stm32f1xx/src/ext/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rtc.c
Compiling repos/apache-mynewt-core/hw/mcu/stm/stm32f1xx/src/ext/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rtc_ex.c
Compiling repos/apache-mynewt-core/hw/mcu/stm/stm32f1xx/src/ext/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_sd.c
Compiling repos/apache-mynewt-core/hw/mcu/stm/stm32f1xx/src/ext/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_smartcard.c
Compiling repos/apache-mynewt-core/hw/mcu/stm/stm32f1xx/src/ext/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_spi.c
Compiling repos/apache-mynewt-core/hw/mcu/stm/stm32f1xx/src/ext/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_spi_ex.c
Compiling repos/apache-mynewt-core/hw/mcu/stm/stm32f1xx/src/ext/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_sram.c
Compiling repos/apache-mynewt-core/hw/mcu/stm/stm32f1xx/src/ext/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.c
Compiling repos/apache-mynewt-core/hw/mcu/stm/stm32f1xx/src/ext/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.c
Compiling repos/apache-mynewt-core/hw/mcu/stm/stm32f1xx/src/ext/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_uart.c
Compiling repos/apache-mynewt-core/hw/mcu/stm/stm32f1xx/src/ext/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_usart.c
Compiling repos/apache-mynewt-core/hw/mcu/stm/stm32f1xx/src/ext/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_wwdg.c
Compiling repos/apache-mynewt-core/hw/mcu/stm/stm32f1xx/src/ext/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_adc.c
Compiling repos/apache-mynewt-core/hw/mcu/stm/stm32f1xx/src/ext/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_crc.c
Compiling repos/apache-mynewt-core/hw/mcu/stm/stm32f1xx/src/ext/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_dac.c
Compiling repos/apache-mynewt-core/hw/mcu/stm/stm32f1xx/src/ext/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_dma.c
Compiling repos/apache-mynewt-core/hw/mcu/stm/stm32f1xx/src/ext/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_exti.c
Compiling repos/apache-mynewt-core/hw/mcu/stm/stm32f1xx/src/ext/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_gpio.c
Compiling repos/apache-mynewt-core/hw/mcu/stm/stm32f1xx/src/ext/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_fsmc.c
Compiling repos/apache-mynewt-core/hw/mcu/stm/stm32f1xx/src/ext/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_i2c.c
Compiling repos/apache-mynewt-core/hw/mcu/stm/stm32f1xx/src/ext/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_pwr.c
Compiling repos/apache-mynewt-core/hw/mcu/stm/stm32f1xx/src/ext/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_rcc.c
Compiling repos/apache-mynewt-core/hw/mcu/stm/stm32f1xx/src/ext/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_rtc.c
Compiling repos/apache-mynewt-core/hw/mcu/stm/stm32f1xx/src/ext/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_spi.c
Compiling repos/apache-mynewt-core/hw/mcu/stm/stm32f1xx/src/ext/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_sdmmc.c
Compiling repos/apache-mynewt-core/hw/mcu/stm/stm32f1xx/src/ext/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_tim.c
Compiling repos/apache-mynewt-core/hw/mcu/stm/stm32f1xx/src/ext/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usart.c
Compiling repos/apache-mynewt-core/hw/mcu/stm/stm32f1xx/src/ext/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_utils.c
Compiling repos/apache-mynewt-core/hw/mcu/stm/stm32f1xx/src/ext/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c
Compiling repos/apache-mynewt-core/hw/mcu/stm/stm32f1xx/src/hal_flash.c
Compiling repos/apache-mynewt-core/kernel/os/src/endian.c
Compiling repos/apache-mynewt-core/hw/mcu/stm/stm32f1xx/src/hal_reset_cause.c
Compiling repos/apache-mynewt-core/kernel/os/src/os.c
Compiling repos/apache-mynewt-core/kernel/os/src/os_callout.c
Compiling repos/apache-mynewt-core/kernel/os/src/os_cputime.c
Compiling repos/apache-mynewt-core/kernel/os/src/os_cputime_1mhz.c
Compiling repos/apache-mynewt-core/kernel/os/src/os_cputime_high.c
Compiling repos/apache-mynewt-core/kernel/os/src/os_cputime_pwr2.c
Compiling repos/apache-mynewt-core/kernel/os/src/os_eventq.c
Compiling repos/apache-mynewt-core/kernel/os/src/os_dev.c
Compiling repos/apache-mynewt-core/kernel/os/src/os_heap.c
Compiling repos/apache-mynewt-core/kernel/os/src/os_mbuf.c
Compiling repos/apache-mynewt-core/kernel/os/src/os_mempool.c
Compiling repos/apache-mynewt-core/kernel/os/src/os_msys_init.c
Compiling repos/apache-mynewt-core/kernel/os/src/os_mutex.c
Compiling repos/apache-mynewt-core/kernel/os/src/os_sched.c
Compiling repos/apache-mynewt-core/kernel/os/src/os_sanity.c
Compiling repos/apache-mynewt-core/kernel/os/src/os_sem.c
Compiling repos/apache-mynewt-core/kernel/os/src/os_time.c
Compiling repos/apache-mynewt-core/kernel/os/src/os_task.c
Compiling repos/apache-mynewt-core/kernel/os/src/arch/cortex_m3/os_arch_arm.c
Compiling repos/apache-mynewt-core/kernel/os/src/arch/cortex_m3/os_fault.c
Assembling repos/apache-mynewt-core/kernel/os/src/arch/cortex_m3/m3/HAL_CM3.s
Assembling repos/apache-mynewt-core/kernel/os/src/arch/cortex_m3/m3/SVC_Table.s
Compiling repos/apache-mynewt-core/libc/baselibc/src/asprintf.c
Compiling repos/apache-mynewt-core/libc/baselibc/src/atoi.c
Compiling repos/apache-mynewt-core/libc/baselibc/src/atol.c
Compiling repos/apache-mynewt-core/libc/baselibc/src/bsearch.c
Compiling repos/apache-mynewt-core/libc/baselibc/src/atoll.c
Compiling repos/apache-mynewt-core/libc/baselibc/src/bzero.c
Compiling repos/apache-mynewt-core/libc/baselibc/src/calloc.c
Compiling repos/apache-mynewt-core/libc/baselibc/src/fgets.c
Compiling repos/apache-mynewt-core/libc/baselibc/src/inline.c
Compiling repos/apache-mynewt-core/libc/baselibc/src/jrand48.c
Compiling repos/apache-mynewt-core/libc/baselibc/src/lrand48.c
Compiling repos/apache-mynewt-core/libc/baselibc/src/malloc.c
Compiling repos/apache-mynewt-core/libc/baselibc/src/memccpy.c
Compiling repos/apache-mynewt-core/libc/baselibc/src/memchr.c
Compiling repos/apache-mynewt-core/libc/baselibc/src/memcmp.c
Compiling repos/apache-mynewt-core/libc/baselibc/src/memcpy.c
Compiling repos/apache-mynewt-core/libc/baselibc/src/memfile.c
Compiling repos/apache-mynewt-core/libc/baselibc/src/memmem.c
Compiling repos/apache-mynewt-core/libc/baselibc/src/memmove.c
Compiling repos/apache-mynewt-core/libc/baselibc/src/memrchr.c
Compiling repos/apache-mynewt-core/libc/baselibc/src/memset.c
Compiling repos/apache-mynewt-core/libc/baselibc/src/memswap.c
Compiling repos/apache-mynewt-core/libc/baselibc/src/mrand48.c
Compiling repos/apache-mynewt-core/libc/baselibc/src/nrand48.c
Compiling repos/apache-mynewt-core/libc/baselibc/src/qsort.c
Compiling repos/apache-mynewt-core/libc/baselibc/src/mynewt.c
Compiling repos/apache-mynewt-core/libc/baselibc/src/sprintf.c
Compiling repos/apache-mynewt-core/libc/baselibc/src/realloc.c
Compiling repos/apache-mynewt-core/libc/baselibc/src/srand48.c
Compiling repos/apache-mynewt-core/libc/baselibc/src/sscanf.c
Compiling repos/apache-mynewt-core/libc/baselibc/src/strcasecmp.c
Compiling repos/apache-mynewt-core/libc/baselibc/src/start.c
Compiling repos/apache-mynewt-core/libc/baselibc/src/strcat.c
Compiling repos/apache-mynewt-core/libc/baselibc/src/strchr.c
Compiling repos/apache-mynewt-core/libc/baselibc/src/strcmp.c
Compiling repos/apache-mynewt-core/libc/baselibc/src/strcpy.c
Compiling repos/apache-mynewt-core/libc/baselibc/src/strcspn.c
Compiling repos/apache-mynewt-core/libc/baselibc/src/strdup.c
Compiling repos/apache-mynewt-core/libc/baselibc/src/strlcat.c
Compiling repos/apache-mynewt-core/libc/baselibc/src/strlcpy.c
Compiling repos/apache-mynewt-core/libc/baselibc/src/strlen.c
Compiling repos/apache-mynewt-core/libc/baselibc/src/strncasecmp.c
Compiling repos/apache-mynewt-core/libc/baselibc/src/strncat.c
Compiling repos/apache-mynewt-core/libc/baselibc/src/strncmp.c
Compiling repos/apache-mynewt-core/libc/baselibc/src/strncpy.c
Compiling repos/apache-mynewt-core/libc/baselibc/src/strndup.c
Compiling repos/apache-mynewt-core/libc/baselibc/src/strnlen.c
Compiling repos/apache-mynewt-core/libc/baselibc/src/strntoimax.c
Compiling repos/apache-mynewt-core/libc/baselibc/src/strpbrk.c
Compiling repos/apache-mynewt-core/libc/baselibc/src/strntoumax.c
Compiling repos/apache-mynewt-core/libc/baselibc/src/strrchr.c
Compiling repos/apache-mynewt-core/libc/baselibc/src/strsep.c
Compiling repos/apache-mynewt-core/libc/baselibc/src/strstr.c
Compiling repos/apache-mynewt-core/libc/baselibc/src/strspn.c
Compiling repos/apache-mynewt-core/libc/baselibc/src/strtok.c
Compiling repos/apache-mynewt-core/libc/baselibc/src/strtoimax.c
Compiling repos/apache-mynewt-core/libc/baselibc/src/strtok_r.c
Compiling repos/apache-mynewt-core/libc/baselibc/src/strtol.c
Compiling repos/apache-mynewt-core/libc/baselibc/src/strtoul.c
Compiling repos/apache-mynewt-core/libc/baselibc/src/strtoll.c
Compiling repos/apache-mynewt-core/libc/baselibc/src/strtoull.c
Compiling repos/apache-mynewt-core/libc/baselibc/src/strtoumax.c
Compiling repos/apache-mynewt-core/libc/baselibc/src/vasprintf.c
Compiling repos/apache-mynewt-core/libc/baselibc/src/tinyprintf.c
Compiling repos/apache-mynewt-core/libc/baselibc/src/vprintf.c
Compiling repos/apache-mynewt-core/libc/baselibc/src/vsscanf.c
Compiling repos/apache-mynewt-core/libc/baselibc/src/vsprintf.c
Compiling repos/apache-mynewt-core/sys/console/full/src/ble_monitor_console.c
Compiling repos/apache-mynewt-core/sys/console/full/src/console.c
Compiling repos/apache-mynewt-core/sys/console/full/src/console_fmt.c
Compiling repos/apache-mynewt-core/sys/console/full/src/rtt_console.c
Compiling repos/apache-mynewt-core/sys/console/full/src/ticks.c
Compiling repos/apache-mynewt-core/sys/console/full/src/uart_console.c
Compiling repos/apache-mynewt-core/sys/flash_map/src/flash_map.c
Compiling repos/apache-mynewt-core/sys/mfg/src/mfg.c
Compiling repos/apache-mynewt-core/sys/sysinit/src/sysinit.c
Compiling repos/apache-mynewt-core/util/mem/src/mem.c
Archiving apps_blinky.a
Archiving f103_blinky-sysinit-app.a
Archiving hw_bsp_bluepill.a
Archiving hw_cmsis-core.a
Archiving hw_drivers_uart.a
Archiving hw_drivers_uart_uart_hal.a
Archiving hw_hal.a
Archiving hw_mcu_stm_stm32_common.a
Archiving hw_mcu_stm_stm32f1xx.a
Archiving kernel_os.a
Archiving libc_baselibc.a
Archiving sys_console_full.a
Archiving sys_flash_map.a
Archiving sys_mfg.a
Archiving sys_sysinit.a
Archiving util_mem.a
Linking /home/jens/build/newt/myproj/bin/targets/f103_blinky/app/apps/blinky/blinky.elf
Target successfully built: targets/f103_blinky

Looks like it's still compiling "disabled" hal modules?
(not really an stm32 hal/spl/cube guru)

here's a verbose gist of the clean and build:
https://gist.github.com/zerog2k/17695431154b6baba271e26313b50b89
looks like maybe several of these are getting pulled in from mcu includes?

@zero2k Yes, those files are still being compiled because they are seen by newt (the build tool) and the are passed to gcc. But if you open of those files and check their contents, they have some form of #if HAL_XXX_MODULE_ENABLED at the beginning which acts like a #if 0 around the whole code inside the file.

do you want me to resubmit as a single commit pr, or would you squash merge it?


[Question] Does maestro support iOS physical devices?

Does maestro support iOS physical devices?

It doesn't. The main reason is that a lot of xcrun simctl is used to manage the simulator itself.


Adding augmentation to text

Description of changes:
Add text augmentation, including synonym replacement, random swap and random delete for now.
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

Job PR-1756-7 is done.
Docs are uploaded to http://autogluon-staging.s3-website-us-west-2.amazonaws.com/PR-1756/7/index.html

Job PR-1756-11 is done.
Docs are uploaded to http://autogluon-staging.s3-website-us-west-2.amazonaws.com/PR-1756/11/index.html

Job PR-1756-12 is done.
Docs are uploaded to http://autogluon-staging.s3-website-us-west-2.amazonaws.com/PR-1756/12/index.html

Job PR-1756-13 is done.
Docs are uploaded to http://autogluon-staging.s3-website-us-west-2.amazonaws.com/PR-1756/13/index.html

Job PR-1756-15 is done.
Docs are uploaded to http://autogluon-staging.s3-website-us-west-2.amazonaws.com/PR-1756/15/index.html

Job PR-1756-16 is done.
Docs are uploaded to http://autogluon-staging.s3-website-us-west-2.amazonaws.com/PR-1756/16/index.html


Clean up InternalFrame and around anchor.

Clean up InternalFrame to remove spark_column and fix around it, also add some utility methods.

LGTM

@ueshin Feel free to merge. I will not merge in case you have some more things to push here.

I'd merge this now. I'll have some more things to do but they should be in a separate PR.


Add DiscardAndCloseBody utility function

Use it to avoid unnecessary new
connections.
Also clean up cleanup flow a bit in
api.go.

cc @aalness

Kind of makes you miss C++-style destructors
Looks good to me!

Nice. Good idea.


Update for dropdown icon to be @ right most side

Dropdown icon hangs with just next to text of dropdown button which is fine for default-sized dropdown button. But for bigger customized width dropdown icon should be at rightmost side of dropdown button.

i signed it

@gspencergoog Could you please have a look at it?

Unfortunately, I think this is something that the majority of users would not want. This would mean that if you put an unbounded widget in the dropdown, it would be infinite width, causing any app which has already done that to break.  If you want a more custom dropdown than what is provided, you can always subclass and override the build method, or create your own widget class from scratch.


Windows test build fails

See this test run:

TLC is not found for some reason
TMate session never finishes (I think it is disabled for macOS and Ubuntu builds)

Ah. I didn't see this issue at all. I pushed fix already.

TLC was not found because the path separator character on Windows is ; not :. See the fix https://github.com/informalsystems/modelator/commit/b9144085ee7a8d5df121378cb7a65d14cc4fb428.
TMate is supposed to keep on running (unless timedout) until you ssh into the session (and debug the failures) and closes it. See,

Why does TMate write SSH string to log every 5 minutes?
TMate timeout

@rnbguy this is closed via https://github.com/informalsystems/modelator/commit/b9144085ee7a8d5df121378cb7a65d14cc4fb428, right?
In that case we should close the issue.

@andrey-kuprianov I wanted your response for the TMate config. Should we add a hard timeout for it - in case, any future build fails?

yes, let's add a hard timeout, say of 3 minutes. Thanks!


How to make all equal-height slides

Hello, and thank you for this awesome library!
I'm attempting to have all my slides be the same height, equivalent to the tallest of the slides (from wrapping text growing the element's height), and having some trouble achieving this. I tried toggling the adaptiveHeight prop to true, but this only adjusts the slick container to the taller height once that taller slide is centered/selected.
I have then added the following custom CSS to the .slick-track: display: flex; flex-direction: row; align-items: stretch to set the child items to take up the full height. I have also set each child item to display: flex; flex-direction: column; flex: 1 to have them take up the full height, but it doesn't appear to be stretching them vertically as expected. What's strange to me is that setting .slick-track's align-items to either flex-start or flex-end does indeed align the children appropriately, but setting the value to stretch does not take effect.
Any tips on how to handle this would be appreciated. Thank you very much!

Did this a while ago and it worked for me:
const CarouselLayoutContainer = styled.div`
    //// slick-track is the container of all slide items
    .slick-track {
         display: flex;
         align-items: stretch;
    }
    // slick slide is the container of a single slide item. There is also a wrapper div before our custom component
    .slick-slide {
        display: flex;
        align-self: stretch;
        height: unset;
        > div {
            display: flex;
            align-self: stretch;
            width: 100%;
        }
    }
`

@Cedric-Delacombaz Thanks! I used your solution with height: 100% on .slick-slide > div, and just had to add height: 100% to my custom component inside. Much appreciated.

I feel like this should be an option of the library.

Encountered same issue in my project.
It would be great if the library could include this as an optional setting.


Add new, better helper method for configuring HTTP servers.

Motivation:
The current HTTP server helpers are not modular, meaning that each
time we add a new first-party HTTP handler we need to add a brand new
method. Additionally, they do not currently compose, so if you want
assistance with HTTP pipelining and to support HTTP upgrade you are
out of luck.
Modifications:
Deprecate the two existing server helpers.
Add a new server helper that can be extended to support all of the
possible features that users may want in their HTTP pipelines.
Result:
Users will have a single place to go that can be used to configure
their HTTP server pipeline, and that understands how the different
handlers fit together in a complete pipeline.

@weissi Added tests back for the deprecated constructors.


layer2 下externalTrafficPolicy为local的时候，负载均衡ip无法访问，必须每个节点都配置一个pod

If spec:externalTrafficPolicy is set to Cluster (default value), OpenELB randomly selects a node from all Kubernetes cluster nodes to handle Service requests. Pods on other nodes can also be reached over kube-proxy.
If spec:externalTrafficPolicy is set to Local, OpenELB randomly selects a node that contains a Pod in the Kubernetes cluster to handle Service requests. Only Pods on the selected node can be reached.
layer2 下这个功能实现了吗？v0.5.0

We are currently having this issue, when using local mode, when Service is accessed using LB, the associated Pod is inaccessible after a rolling update, but openelb-manager works fine after a restart.
We only have one openelb-manager enabled in our development environment.

We are currently having this issue, when using local mode, when Service is accessed using LB, the associated Pod is inaccessible after a rolling update, but openelb-manager works fine after a restart.
We only have one openelb-manager enabled in our development environment.

Which version are you using?

We are currently having this issue, when using local mode, when Service is accessed using LB, the associated Pod is inaccessible after a rolling update, but openelb-manager works fine after a restart.
We only have one openelb-manager enabled in our development environment.

Which version are you using?

kubesphere/openelb:v0.5.0

我们目前遇到此问题，在使用模式时，当使用 LB 访问服务时，滚动更新后无法访问关联的 Pod，但在重新启动后工作正常。local``openelb-manager
在我们的开发环境中，我们只启用了一个。openelb-manager

需要换IP擦可以，重启服务，个人觉得arp上层确定 pod重启并没有拉取 openelb 的arp 重置

Subsequently I realized that the k8s version was upgraded from v1.23.x to
v1.26.x all functions as if they were normal, could it be that it's not compatible with certain network components?
And of course my lb was upgraded to v0.6.0


Initial work on Java bindings

Description
This represents my initial work on Java bindings through JNI. This is all built with Bazel. Most of the logic lies in the private_set_intersection/java/src/main/c/org_openmined_PsiServer.cpp file. This C++ code works with Java objects and converts them to formats that the core private_set_intersection/cpp/... code can understand. The private_set_intersection/java/src/main/java/org/openmined/PsiServer.java file is a very thin wrapper over the native org_openmined_PsiServer.cpp code. The Bazel BUILD file should be able to link with the core C++ PSI code and also build the protobuf code. Look at the README.md and the TODO comments in the code for more information.
More work needs to be done to implement all of the methods for a complete binding. This should be a good starting point.
Affected Dependencies
Added Java dependencies
How has this been tested?
Work in progress on tests.
Checklist

[x] I have followed the Contribution Guidelines and Code of Conduct
[x] I have commented my code following the OpenMined Styleguide
[x] I have labeled this PR with the relevant Type labels
[x] My changes are covered by tests

I'm going to merge this to the java-test branch so others can also contribute to that branch.


It is better if vector has implement some math like add, substract 2 vectors; scale, get distance or normalize vector

This is just basic math for vector. It is better if you have.

It has been updated in version 1.1.0


new term: chemosynthesis

chemosynthesis
the biological conversion of one or more carbon-containing molecules (usually carbon dioxide or methane) and nutrients into organic matter using the oxidation of inorganic compounds (e.g., hydrogen gas, hydrogen sulfide) or methane as a source of energy, rather than sunlight, as in photosynthesis.
https://en.wikipedia.org/wiki/Chemosynthesis
child of 'cellular metabolic process'
http://orcid.org/0000-0002-2908-3327

Since I used to be a caver I am going to use PMID:25050523 as a literature reference for this term. Let me know if you have a better one.

This term might also be a nice test case for our new procedure for adding taxon restriction in the ontology. Can you suggest any taxon restrictions we might want to add?

I also tweaked the definition to make it similar to our definition for photosynthesis. Please comment if it is not satisfactory.

When a taxon restriction is added, does that include all members of a taxon or does it just exclude non-members?

definition looks good to me

@diatomsRcool it would be a statement like "every instance of chemosynthesis is a member of taxon X" (chemosynthesis is only found in X and nowhere else) or "every instance of chemosynthesis is not a member of taxon Y" (chemosynthesis is never found in Y).

Thanks @diatomsRcool. And we would like taxon restrictions to be complete if possible. So saying it is never in animals even though it is never in plants would be correct, but incomplete.

OK, here's the sticky bit. We could say that chemosynthesis is never found in eukaryotes BUT there are eukaryotes that have chemosynthetic bacteria as symbionts. In the case of the deep sea tube worm, the chemosynthetic symbiont has taken the place of the gut as the way to gain nourishment. The symbiosis is obligatory. So, would we then say that these worms are chemosynthetic eukaryotes? What would be the implication for other such associations, such as termites and cellulose-digesting gut bacteria? Lichens?
I'm inclined to model this very specifically, linking chemosynthesis to the bacteria and then linking the bacteria to the worm in an obligate symbiosis, but I can be convinced otherwise.

I think I agree with you. The chemosynthesis occurs in the bacteria and would use gene products encoded by the bacterial genome. When I was creating the term I was under the impression it also occurred in some fungi. Is that correct?

I can't find any definitive evidence that a fungi can perform chemosynthesis, but there is a group of fungi wherein it is a possibility, but uncertain at this time. How would you like to handle that? For now, just say that no fungi can perform chemosynthesis?

Oh, and I found this https://en.wikipedia.org/wiki/Radiotrophic_fungus
You may want to also add "radiosynthesis"!

I think it can be in archaea too

So 'only in prokaryota', which includes archaea and bacteria?

Yes


feat: Expose reponse headers inside OperationResult

Summary
Goal: Expose response headers inside OperationResult.
Reason to do the change:
Sometimes is necessary to capture the response headers after every request and fire some side effects based on them.
An example of this is an Auth flow where the access-token changes after every request. The new token is send back by the server in an access-token response header. So is necessary to capture this header and save them so that the next request is sent with the correct headers. https://github.com/lynndylanhurley/devise_token_auth is an example of a popular JWT library following this scheme.
Set of changes
Affect packages: Core
Changes:

makeResult now includes response.headers in it's return value
OperationResult interface now includes a headers: Headers property

Hiya, we don't expose an unlimited amount of result properties on OperationResult. In fact, what's there is all that's defined in the spec for GraphQL results (albeit abstracted)
So I don't think we'll want to expose this on there and encourage adding more things to the result that aren't ultimately spec-compliant.
For operations there's the context but you'll also notice it's separate. For results there isn't since they closely match the spec.
There's several things that you could do on your end:

Use extensions rather than headers in your API
Create a custom fetchExchange based on core's one and expose the headers
Use cookies, etc, or wrap around fetch itself

Given multiple options are available I don't think this is the right approach to add to the core library 😅 Sorry!
Also please note, we do have an RFC process as part of our issue templates which allows more room to describe proposed changes and discuss them, which can avoid having the discussion "late" for a PR ✌

Hi @kitten thanks, for the quick feedback. Wanting to keep OperationResult spec compliant makes sense I will close this pr then.

Create a custom fetchExchange based on core's one and expose the headers

Yeah I currently have a working solution with this approach but creating a custom fetchExchange is a tedious process because if I wanted to preserve almost all the current fetchExchange code and only do this small change, I have to start copying private functions from utils etc.. which is not ideal. Would it be possible to allow users to extend the current fetchExchange like with fetchOptions but for OperationResult?
that way the default fetchExchange can remain being spec compliant but users can if they want extend the OperationResult from it.

it's also worth noting that an access token that changes for each request and is only valid for one may be a bad fit for GraphQL in general

Hehe yeah I know the server can batch parallel request so that they all can use the same accessToken 😄.


Files in temp folder are not deleted after uploading to S3.

File is not deleted after uploading to S3. The uploaded files are also stored in the temp folder.
Package version
1.0.4
Node.js and npm version
Nodejs - v14.18.1
npm - 6.14.15
Sample Code (to reproduce the issue)
Use S3 as disk and upload a file. The same file will exist in the temp folder .

Please provide the code for reproduction.


chore(release): v0.9.4

:robot: I have created a release beep boop
0.9.4 (2024-10-24)
Bug Fixes

index setting danger zone button text (gh-158) (74c6238)

This PR was generated with Release Please. See documentation.

:robot: Release is at https://github.com/riccox/meilisearch-ui/releases/tag/v0.9.4 :sunflower:


A way to handle ICE failure

On our solution we are currently using de default google stun server, and we are not providing any TURN server. Most of the times when we try to make a call between peers that are not in the same network the ICE process fails and the there is not a simple way to retry it using the current API. The WebRTC javascrit peerConnection object has a method "restartIce", is there an equivalent of this method on the MixedReality WebRTC API? What is the proper way to handle ICE failure?

There isn't an equivalent, the only way is to restart the PeerConnection entirely at the moment. I'll label this as an enhancement.

I`m experiencing a lot of ICE failure when calling peers from outside the local network. Is there something I can do to avoid to failures? When calling using chrome on both peers (with the same signaling solution) we have no ICE failures at all. Is it possible that we are during something wrong when setting up Mixed Reality WebRTC ?

@fibann is it planned to implement the restartIce?
my understanding is that the perfect negotiation pattern would solve these problems

@Felix-N there is no work planned for this at the moment. It seems a relatively low-hanging fruit though (should be as easy as setting a flag in the offer options and calling CreateOffer) so maybe it can be squeezed in

@fibann sounds good.
from my naive user perspective perfect negotiation is highly beneficial. which i can only confirm from doing some tests in the browser. the pattern makes everything around signaling so much easier.