Feature/essman/expr templates

This adds a set of operator overloads for making MFEM code more readable.  The overloads themselves do not have Doxygen annotations as they are just syntactic sugar over the expression classes, but I'm happy to add it in.  Ideally more operations would be added in future PRs.
The tricky lifetime issues regarding returning expressions from lambdas are addressed in a new Sphinx page, and are tested (though not exhaustively) in a new set of unit-ish tests.
The new templates are spread across three headers: one for the base class (such that the primary interface is accessible), one for the internal derived template classes, and one for the operator overloads (which is just a bunch of copy-and-paste).
The operator overload boilerplate could be partially reduced with macros, but that could be equally messy.
The "UnaryExpr" and "BinaryExpr" abstractions don't eliminate a ton of code duplication right now given the small set of currently implemented operations but as more are added the hope is that they will be useful.

I think this all looks good! You mentioned in a private discussion that you measured the performance of the previous implementation against the expression template one. It might be good to include timers in the unit test (or should we have a separate set of performance tests @jamiebramwell ?) to verify both correctness but also similarity in performance.

I think having a performance test is a good idea, but I don't have an opinion where it should go. Any thoughts @white238 ?

I would add it to the test and just print it out to the screen for now.  Do whatever is easiest until we implement a performance suite along with our integrated testing.

I've added a couple simple performance tests, though the results that run in CI should be taken with a grain of salt as the following was observed with the (default) debug builds:
Expression templates took 14.6052 times as long as the raw MFEM calls
...
Expression templates took 19.2782 times as long as the raw MFEM calls

versus the release builds:
Expression templates took 4.0012 times as long as the raw MFEM calls
...
Expression templates took 0.498103 times as long as the raw MFEM calls

The larger the expression, the better the expression templates perform (as one would expect).

It is worth noting that this implementation of expression templates here cannot eliminate a memory allocation when assigning the results to an mfem::Vector. With smaller vectors and fewer operations in the expression, that memory allocation overhead becomes more significant.
However, if we were able to implement an mfem::Vector constructor that takes a vector expression as an argument, this memory allocation could be eliminated.

With the large increase in times, I would worry about this creeping into non-prototyping code because it is so readable (credit to Josh), I may not even realize it's there.
Thought on how to stop this: ifdef'ing the template expressions against non-release builds in hopes when we test the release build in the future it would be very apparently if this crept into the mainline?

Thought on how to stop this: ifdef'ing the template expressions against non-release builds in hopes when we test the release build in the future it would be very apparently if this crept into the mainline? Maybe spit out a warning if it's used in a release build?

I went ahead and added a compiler warning for release builds, but the impact varies significantly and per above isn't always negative.  It may be useful to further investigate the inflection point at which the expression templates are faster in a release build.

oof, wrong PR, ignore the last comment!

The total time spent in the expression templates is 0.3% of total runtime so it looks like the overall impact is negligible regardless of which method is used.

LGTM

Azure doesn't seem to have reported and/or github diesnt seem to be receiving the last commit's status.  I am attempting to rerun the specific branch/sha through azure directly but honestly never hit this before so it may not work.  If this doesnt work make a small change to a random file to retrigger.

I win!


Take usings outside namespace in template

Visual Studio has a new bug where it tries to move usings outside the namespace while creating a project from a template and breaks code.
Make sure all templates has usings outside the namespace so that it can't break future code on StartSharp / Serene project creation.

Templates = Serenity Code Generator .scriban files


Directories created in bash/ubuntu are not persisted next time

I have an Ubuntu bash on Windows 10 insider preview.  I installed Postgres.  Now PG needs a dir for unix sockets.  The default is /var/run/postgresql. As the bash did not create that dir, I created it and it worked fine.
However next time, after a reboot, the dir went missing.  Is it by design that bash does not persist file system changes.

No, /var/run is a temporary directory for sockets on linux as well.

Aha got it.

Closing.

but since systemd isn't running, you have to create a shellscript to do it for you.

I think it should be technically possible without systemd as well, e. g. tmpfs/initramfs.
The /tmp directory was cleared upon a reboot (or perhaps it was just any variant
with tmpfs; but I am sure that either way, some directory was cleared between
reboots).
I have no idea if this would be possible on the "BashOnWindows" subystem though.


docs: fix duplicate word

Fixes the word "network" appearing twice instead of once when explaining the default contained network argument.

Thanks! LGTM


Add Advice Slip API to Entertainment

[ ] My submission is formatted according to the guidelines in the contributing guide
[ ] My addition is ordered alphabetically
[ ] My submission has a useful description
[ ] The description does not have more than 100 characters
[ ] The description does not end with punctuation
[ ] Each table column is padded with one space on either side
[ ] I have searched the repository for any relevant issues or pull requests
[ ] Any category I am creating has the minimum requirement of 3 items
[ ] All changes have been squashed into a single commit

Add advice api to entertainment

Hi @ceconelo
Thanks for your contribution ;)
We have some problems with Public APIs, so we won't be able to review/add this improvement right now.
Read this issue for more information, please: https://github.com/public-apis/public-apis/issues/3104


Skip text nodes in search for table header

Text nodes are messing with our counting to find the first
 or

Also:

The living standard says that
 needs to follow the body. If we ignore this content model detail, then we would need to expand our counting to also include
 and

The first child of our first
 could also be a text node, or maybe the developer wants to intermix  with , so we need to search all children in the row until we find the

No unit tests?

@alfaproject,
My apologies. I'm working on that now.

@alfaproject,
As you asked, unit tests have been added.

Thanks! I decided to skip non-tags instead of just elements with no name property. I think it's safe to skip anything that isn't a tag, but it's a very minor issue even if it isn't.


Documentation: in "Replicating onchain state", add a callout explaining that you should never have to do this yourself and this is just an illustration

In https://mud.dev/guides/replicating-onchain-state
Additionally:

MUD provides much of this out of the box. It uses a familiar data model with tables and fields, built on a standardized storage protocol. This lets us provide you with an automatic indexer, no code is necessary to use it. And because it's all standardized, our client libraries already know how to get your app's onchain state and keep your frontend in sync with the chain.

Quote found in https://mud.dev/introduction. The "in sync with the chain" links to this "Guide". I think we should either link to something else (what is the best page that demonstrates "syncing to the client?", maybe it could be the top-level page of the badly named "State Query". It would explain in abstract how different parts of MUD enable clients to query the state and keep it up to date, then link to individual implementations for different programming languages)

I'm also adding a templates page (a summary of the templates) because I need to link to it.

Quote found in https://mud.dev/introduction. The "in sync with the chain" links to this "Guide". I think we should either link to something else (what is the best page that demonstrates "syncing to the client?", maybe it could be the top-level page of the badly named "State Query".

The initial plan was to have "State sync" that explains synchronization, and "State query" that explains how to query the information. But @holic didn't have time to write State sync, and I didn't have the knowledge, so it got dropped.
For now I'm just removing the link in the introduction. I think "our client libraries already know how to get your app's onchain state and keep your frontend in sync with the chain" is clear enough.
It would be good to write a fuller description of how client synchronization works. But I think that should wait until stash and dozer are out.


Automated cherry pick of #9472

Cherry pick of #9472 on release-6.3.
/cc  @hahmadia
NONE

Will try to auto merge this PR once all tests and checks are passing. This might take up to an hour.

Trying to auto merge this PR.

Pull Request successfully merged
SHA: 5221d6deb9de026eb1ed75f94a43939c3a7f91b7


fix TestSelectExemplar_MultiSeries assertion message

WHile porting the test, the  message were confusing. The value used in the message were not matching expected value.

I believe the ci test is unrelated to the proposed changes.


Training error aftering dataset extension: list index out of range

When I try to train EYOC on KITTI following your instruction, epochs before extending  dataset interval is good, but after dataset extension all loss turn to 0 and raise a lot of "list index out of range" warning which is raised by the sc2_filtering module. Do you know how to solve this problem? Below is my training log.
05/27 22:32:25  Epoch: 6, LR: [0.2657527142592]
Checking train dataset: No need to update (6, latest altered at 0).
05/27 22:32:25 Labeler is disabled: using base mode training.
05/27 22:32:29 Train Epoch: 6 [0/160], Current Loss: 5.601e-01 Pos: 0.174 Neg: 0.386	Data time: 3.6507, Train time: 0.6590, Iter time: 4.3097	Labeler IR: 0.000
05/27 22:33:36 Train Epoch: 6 [40/160], Current Loss: 5.573e-01 Pos: 0.169 Neg: 0.388	Data time: 0.9822, Train time: 0.6924, Iter time: 1.6746	Labeler IR: 0.000
05/27 22:34:44 Train Epoch: 6 [80/160], Current Loss: 5.433e-01 Pos: 0.146 Neg: 0.398	Data time: 0.9765, Train time: 0.7015, Iter time: 1.6781	Labeler IR: 0.000
05/27 22:35:50 Train Epoch: 6 [120/160], Current Loss: 5.504e-01 Pos: 0.150 Neg: 0.401	Data time: 0.9747, Train time: 0.6800, Iter time: 1.6547	Labeler IR: 0.000
05/27 22:36:54 Saving checkpoint: ./outputs/KittiContinuousFramePairDataset/0.3/ContinuousCorrExtensionTrainer/ResUNetBN2C/SGD-0.3-200-8-1-modelnout-32/20240527_2204/checkpoint.pth ...
05/27 22:36:54 Resetting the data loader seed to 0
05/27 22:37:26 Validation iter 101 / 200 : Data Loading Time: 0.227, Feature Extraction Time: 0.034, Matching Time: 0.051, Loss: 0.928, RTE: 12.467, RRE: 0.078, Hit Ratio: 0.034, Feat Match Ratio: 0.119
05/27 22:37:58 Final Loss: 0.944, RTE: 12.345, RRE: 0.095, Hit Ratio: 0.029, Feat Match Ratio: 0.110
05/27 22:37:58 Current best val model with feat_match_ratio: 0.125 at epoch 1
05/27 22:37:58  Epoch: 7, LR: [0.26043765997401597]
Processing drive 0
Processing drive 1
Processing drive 2
Processing drive 3
Processing drive 4
Processing drive 5
Dataset extension for phase train: self.MAX_DIST=2
Data size for epoch 7 has been updated to: 1286
/media/zzzz/data1/Coding/EYOC-main/lib/trainer.py:1164: UserWarning: The use of `x.T` on tensors of dimension other than 2 to reverse their shape is deprecated and it will throw an error in a future release. Consider `x.mT` to transpose batches of matrices or `x.permute(*torch.arange(x.ndim - 1, -1, -1))` to reverse the dimensions of a tensor. (Triggered internally at ../aten/src/ATen/native/TensorShape.cpp:3614.)
  C_batch_0.append((input_dict["pcd0"][i] @ result[:3,:3].T + result[:3,3].T).to(self.device))
list index out of range
05/27 22:38:01 Train Epoch: 7 [0/160], Current Loss: 0.000e+00 Pos: 0.000 Neg: 0.000	Data time: 2.4150, Train time: 0.8287, Iter time: 3.2437	Labeler IR: 0.000
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
05/27 22:38:48 Train Epoch: 7 [40/160], Current Loss: 0.000e+00 Pos: 0.000 Neg: 0.000	Data time: 0.4172, Train time: 0.7648, Iter time: 1.1820	Labeler IR: 0.000
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
05/27 22:39:36 Train Epoch: 7 [80/160], Current Loss: 0.000e+00 Pos: 0.000 Neg: 0.000	Data time: 0.3836, Train time: 0.8182, Iter time: 1.2018	Labeler IR: 0.000
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
05/27 22:40:22 Train Epoch: 7 [120/160], Current Loss: 0.000e+00 Pos: 0.000 Neg: 0.000	Data time: 0.3881, Train time: 0.7604, Iter time: 1.1485	Labeler IR: 0.000
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
list index out of range
05/27 22:41:09 Saving checkpoint: ./outputs/KittiContinuousFramePairDataset/0.3/ContinuousCorrExtensionTrainer/ResUNetBN2C/SGD-0.3-200-8-1-modelnout-32/20240527_2204/checkpoint.pth ...
05/27 22:41:09 Resetting the data loader seed to 0
05/27 22:41:39 Validation iter 101 / 200 : Data Loading Time: 0.214, Feature Extraction Time: 0.035, Matching Time: 0.047, Loss: 0.934, RTE: 11.905, RRE: 0.082, Hit Ratio: 0.032, Feat Match Ratio: 0.119
05/27 22:42:10 Final Loss: 0.945, RTE: 12.341, RRE: 0.092, Hit Ratio: 0.029, Feat Match Ratio: 0.110
05/27 22:42:10 Current best val model with feat_match_ratio: 0.125 at epoch 1

I am terribly busy today. I will be back on the issue tomorrow.
I recommend uncommenting the try block at EYOC/lib/trainer.py  L1308, setting pair_min_dist to 2, and then rerunning the experiment. The problem should appear right away, so that you could debug it youself. Please update me for any fixes.

Thanks for your advise! The problem seems like caused by the corr_through_registration function, where the variable success_est does not update and always be an empty list, so the code 'if not success_est[i] == 0:' at L1207 always return a 'list index out of range' error. I comment L1207 and train again, get a good result.

I am terribly busy today. I will be back on the issue tomorrow.
I recommend uncommenting the try block at EYOC/lib/trainer.py L1308, setting pair_min_dist to 2, and then rerunning the experiment. The problem should appear right away, so that you could debug it youself. Please update me for any fixes.

Thanks for your advise! The problem seems like caused by the corr_through_registration function, where the variable success_est does not update and always be an empty list, so the code 'if not success_est[i] == 0:' at L1207 always return a 'list index out of range' error. I comment L1207 and train again, get a good result.

I am terribly busy today. I will be back on the issue tomorrow.
I recommend uncommenting the try block at EYOC/lib/trainer.py L1308, setting pair_min_dist to 2, and then rerunning the experiment. The problem should appear right away, so that you could debug it youself. Please update me for any fixes.

Thanks for your advise! The problem seems like caused by the corr_through_registration function, where the variable success_est does not update and always be an empty list, so the code 'if not success_est[i] == 0:' at L1207 always return a 'list index out of range' error. I comment L1207 and train again, get a good result.

Thank you a lot for the solution. The codebase is updated clear this problem.


Restore build service listener subscription for build service from included build correctly

Before this change, BuildServiceProvider instances would be written to the configuration cache in the context of the build in which they are referenced, no matter which build they were registered with. That has implications when build services are registered as build event listeners since event listener subscriptions are stored in the context of the root build.
After this change, BuildServiceProvider instances found while writing event listener subscriptions to the cache are simply marked as used and then later written to the cache in the context of the correct build.

@bot-gradle test this

OK, I've already triggered ReadyForMerge build for you.

@bot-gradle test this

OK, I've already cancelled the old build and triggered a new ReadyForMerge build for you.

@bot-gradle test RFN

OK, I've already triggered ReadyForNightly build for you.

Superseded by https://github.com/gradle/gradle/pull/15314


statement.getFullText() errors if program.getTypeChecker() is not called beforehand

Bug Report

🔎 Search Terms

typescript getFullText cannot find property text of undefined
typescript how to get statement text
🕗 Version & Regression Information
Happens in typescript v2, v3, v4

⏯ Playground Link
This is a typescript compiler API bug. Playground link is not applicable.

💻 Code
Repro steps:

npm install typescript

Create a src/test.ts with contents:

const a = 5

Create src/run.js with contents:

const ts = require('typescript')

const src = `${__dirname}/test.ts`
const program = ts.createProgram([src], {})

const f = program.getSourceFile(src)
console.log(f.statements[0].getFullText())

Run node run.js inside src/

🙁 Actual behavior
Error message:
C:\Users\someuser\Desktop\test\node_modules\typescript\lib\typescript.js:106693
            return (sourceFile || this.getSourceFile()).text.substring(this.pos, this.end);
                                                        ^

TypeError: Cannot read property 'text' of undefined

🙂 Expected behavior
This should print const a = 5.
Adding program.getTypeChecker() before calling .getFullText() works:
const ts = require('typescript')

const src = `${__dirname}/test.ts`
const program = ts.createProgram([src], {})

const f = program.getSourceFile(src)
program.getTypeChecker()
console.log(f.statements[0].getFullText())

These functions depend on parent references being set, but this doesn't happen until the binder runs which occurs as part of getTypeChecker. Based on the use cases it seems like you want to call createSourceFile with setParentNodes = true

Why is there an expectation I should call program.getTypeChecker() to get text for nodes when I'm not using the TypeChecker? I spent hours trying to figure out why AST source files weren't set. Would appreciate if there's some documentation.
My real use case is finding interfaces with a specific name, but in the future I may rely on .getFullText() for other things.

This is necessary for performance reasons to get the un-parented ASTs back as quickly as possible. Setting the parent references requires an additional pass over the tree and API scenarios that don't require those references are expecting to not pay that performance penalty.


Pass clients handshake failure information

@ubnt-yhlee I branched off your changes in order to keep those changes live if we decided to merge this.

Change the base to master. Thanks for reminding that it was not merged.
A few thoughts:

I'd prefer following upstream spacing rules - it would be easier to upgrade
upstream just release 1.3.1 (yes, almost 4yr gap)
what's the reason we want to continue when server side give 400?

I will change the base to master.

Whitespace changes are mostly in a separate commit. Though will ensure spacing rules are kept the same.
I'll look into grabbing those changes to see if they help.
Unless I'm mistaken, we don't? Only the MATCHED state will return a valid connection.

Ah I see. onWebsocketHandshakeReceivedAsClient is not really opening the connection, open( handshake ); is. But when 400 is thrown, who's going to call flushAndClose?

replaced by #2


blog post's invalid link

Hello there, thank you for such a nice theme. :+1:
I am not much experienced with editing jekyll site so I have a little doubt.
I am thinking to host this site on master branch, so I put baseurl : / in _config.yml, I am running it on my local machine, but when I click a post title on http://localhost:3000/blog.html the url in the address bar changes to http://post1.html/ and I get a page not found.
Also can we get rid of the extra / that comes before the post title in the post's url?(https://biomadeira.github.io/sustain//post1.html) ?
Any help is appreciated. :smiley:

Solved! All I had to do was in place of {{ site.baseurl }{{ post.url }} use only {{ post.url }}.


[Feature request] add failure count for for alerting

Would be nice if you could say set the monitor interval to say 2 mins but only alert if there are 3 consecutive failures to avoid a single failure from tripping an alert.

It's a good idea, thanks. The feature request list is a bit long at the moment, but I keep into consideration.

With 1.4.0 release failures are tracked from last success on and it is configurable to notify only after X failures


v1.6 backports 2020-02-27

v1.6 backports 2020-02-27

#10288 -- pkg/bpf: Fix KeepAlive usage for pathStr (@brb)
#10165 -- doc: Adjust documentation to renamed cilium-sysdump tool (@tgraf)
#10325 -- test: Wait for Istio POD termination before deleting istio-system or cilium (@jrajahalme)
#10299 -- iptables: Add a fallback to missing xt_socket module. (@jrajahalme)
#10227 -- node: Remove permanent ARP entry when remote node is deleted (@brb)
#10342 -- helm: Allow disabling xt_socket fallback (@brb)
#10322 -- doc: Fix links to contributing guide  (@CybrPunk)
#10355 -- install: Support generating vX.Y-dev charts (@joestringer)
#10290 -- clustermesh: Emit identity-change events for remote clusters (@raybejjani)

Once this PR is merged, you can update the PR labels via:
$ for pr in 10288 10165 10325 10299 10227 10342 10322 10355; do contrib/backporting/set-labels.py $pr done 1.6; done

~@jrfastab: Judging from https://github.com/cilium/cilium/pull/10291#discussion_r383680560, will you backport #10218 and #10268 manually by youself?~ (yes, John will backport).
@jrajahalme: There were merge conflicts for #10325 and #10299. Please double-check whether I've resolved them correctly.
@tgraf: I couldn't backport #10308, as it depends on #9757 which was not backported to v1.6.
~@raybejjani: I had to drop #10290, because WatchRemoteIdentities was converted into method only in v1.7 (https://github.com/cilium/cilium/pull/9066), and your change requires it to be a method.~ (resolved).

This change is

nevel-tell-me-the-odds

never-tell-me-the-odds

never-tell-me-the-odds

@brb Did the commit not apply for you? We just backported the PR it fixes and it applied without a conflict for me, but it does need a small fix to compile (IdentityAllocator is global and not a field on m)
diff --git a/pkg/identity/cache/allocator.go b/pkg/identity/cache/allocator.go
index 1a3e747bf..cc7a6b226 100644
--- a/pkg/identity/cache/allocator.go
+++ b/pkg/identity/cache/allocator.go
@@ -401,7 +401,7 @@ func WatchRemoteIdentities(backend kvstore.BackendOperations) (*allocator.Remote
                return nil, fmt.Errorf("Error setting up remote allocator backend: %s", err)
        }

-       remoteAlloc, err := allocator.NewAllocator(GlobalIdentity{}, remoteAllocatorBackend, allocator.WithEvents(m.IdentityAllocator.GetEvents()))
+       remoteAlloc, err := allocator.NewAllocator(GlobalIdentity{}, remoteAllocatorBackend, allocator.WithEvents(IdentityAllocator.GetEvents()))
        if err != nil {
                return nil, fmt.Errorf("Unable to initialize remote Identity Allocator: %s", err)
        }

@raybejjani It applied, but it didn't compile due to the missing m. Thanks, I will backport then.

never-tell-me-the-odds

@brb Did the commit not apply for you? We just backported the PR it fixes and it applied without a conflict for me, but it does need a small fix to compile (IdentityAllocator is global and not a field on m)
diff --git a/pkg/identity/cache/allocator.go b/pkg/identity/cache/allocator.go
index 1a3e747bf..cc7a6b226 100644
--- a/pkg/identity/cache/allocator.go
+++ b/pkg/identity/cache/allocator.go
@@ -401,7 +401,7 @@ func WatchRemoteIdentities(backend kvstore.BackendOperations) (*allocator.Remote
                return nil, fmt.Errorf("Error setting up remote allocator backend: %s", err)
        }

-       remoteAlloc, err := allocator.NewAllocator(GlobalIdentity{}, remoteAllocatorBackend, allocator.WithEvents(m.IdentityAllocator.GetEvents()))
+       remoteAlloc, err := allocator.NewAllocator(GlobalIdentity{}, remoteAllocatorBackend, allocator.WithEvents(IdentityAllocator.GetEvents()))
        if err != nil {
                return nil, fmt.Errorf("Unable to initialize remote Identity Allocator: %s", err)
        }

never-tell-me-the-odds


inherited font sizes

There are a number of components that explicitly use inherit for their font size (or the define no font size at all).
This causes a problem if you're using a root font-size that isn't 16px.
For example, we've been working with 1rem = 8px as it makes defining styles easier with our 8px grid design.
However obviously this causes a problem with the font-size: inherit as it will inherit 8px, rather than setting it to a sensible size based off of the theme.
Additionally, you can't quick-fix this (without breaking encapsulation). If you set the font-size on your react root element, this works fine as long as you don't use any components that portal render outside (i.e. Dialog, or Popover).
If you use a portal, it renders the element as a direct child of the body, outside of your react root element.
So the only fix is to use jss to @global add a selector to the page:
[data-mui-portal=true] {
    font-size: 16px;
}

Examples of elements with this problem:

[ ] Input
[ ] InputLabel / FormLabel

The font-size inheritance is here to help with overrides. When we don't rely on the parent font size. We rely on the body font size with rem. So I would expect you having issue with the Typography component as well. I don't know yet what's the best answer to your use case.

Looking through the code base I feel that a standard needs to be settled on.
Right now typography is defined using static values defined based on rems, spacing is defined using a purely static px value, and everything else is inherited from the body.
The problem I see is that in Typography it defines fontSize as 14px, but it assumes the html font size is 16px. This would leaves discrepancies between some components and leaves it open for the ambiguities and problems which I've logged here.

@bradzacher Thanks for the feedback. I have tried to address all your concern. Let me know if you find something missing.

👍  looks great!

After the changes in #8942 (thank you), I can restore the Input font-size to 100% by using both of the following styles with a base font-size of 62.5% in my case:
.my-text-input {
  /* Base 62.5% * 1.6 = 100% for MUI. */
  font-size: 160%;
}

.my-text-input div {
  font-size: inherit;
}

This works but is rather bothersome to do repeatedly; @oliviertassinari do you have any ideas for how to make this easier? The inner div specifically is the annoyance; it has dynamic classNames like MuiInput-root-85 MuiInput-formControl-86 MuiInput-inkbar-87 MuiInput-underline-91 which are impossible to match using CSS. Could inherit be added to that as well?
I'm on v1.0.0-beta.32.

@cooperka Have you tried the overrides key of the theme or using a wrapping component?

Thank you @oliviertassinari, you led me to these docs which is exactly what I was looking for:
createMuiTheme({
  typography: {
    // Account for base font-size of 62.5%.
    htmlFontSize: 10,
  },
});

@oliviertassinari Is it normal to that htmlFontSize: 10 yields a larger font size than htmlFontSize: 20?

@afilp Yes. It's what you can see in the documentation demo: https://material-ui-next.com/customization/themes/#typography-html-font-size. You tell Material-UI that the <html> element font size is 10px when, in reality, it's 16px. 16 > 10, hence the larger font size. Linked to #10579.

Thanks @oliviertassinari , I am not sure that I get the mathematics of this though. Is there a division where the htmlFontSize is a denominator?

@afilp The formula is:
actual font size = <html> font size * specification font size / htmlFontSize
All of the units are in pixels. Let's take the docs demo:

22.4 (actual font size) = 16 (<html> font size) * 14 (specification font size) / 10 (htmlFontSize)


refactor(links): refactor highlight links

Codecov Report
Patch has no changes to coverable lines.
:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.

Files Changed
Coverage

src/components/Header.tsx
ø

src/components/Navbar.tsx
ø

src/components/links/HighlightLink.tsx
ø

:loudspeaker: Thoughts on this report? Let us know!.


calico use ipipMode, Some node access other node pod  is no work , check the calico-node is running, and some calicoctl node status keep start cannot changed to up

Expected Behavior

Hope calicoctl node status keep "up"
Current Behavior

I can't access coredns pods across node.
Possible Solution

Steps to Reproduce (for bugs)

calico-node is running

pdak8s-worker-55(<IP_ADDRESS>) cannot Established to labk8s-master-004(<IP_ADDRESS>)

3.check calico-node
calico-node on labk8s-master-004(<IP_ADDRESS>):

bird: Mesh_10_250_86_81: Reconfigured
bird: Mesh_10_250_86_81: Reconfigured
bird: Adding protocol Mesh_10_250_86_81
bird: Mesh_10_250_86_81: Initializing
bird: Mesh_10_250_86_81: Starting
bird: Mesh_10_250_86_81: State changed to start

calico-node on:
bird: Mesh_10_250_84_218: Reconfigured
bird: Mesh_10_250_84_218: Reconfigured
bird: Mesh_10_250_84_218: Initializing
bird: Mesh_10_250_84_218: Starting
bird: Mesh_10_250_84_218: State changed to start

the State cannot change to up, but I can't find any other errors.
4. Increasing livenessProbe/readinessProbe timeoutSeconds time is not work
kubectl edit -n kube-system deployment.apps/calico-kube-controllers
kubectl edit -n kube-system daemonset.apps/calico-node
Context

Your Environment

Calico version
Orchestrator version (e.g. kubernetes, mesos, rkt):
Operating System and version:
Link to your project (optional):

  Normal   Scheduled  8m23s  default-scheduler  Successfully assigned kube-system/calico-node-zm9tv to pdak8s-worker-55
  Normal   Pulled     8m22s  kubelet            Container image "docker.io/calico/cni:v3.20.1" already present on machine
  Normal   Started    8m22s  kubelet            Started container upgrade-ipam
  Normal   Pulled     8m22s  kubelet            Container image "docker.io/calico/cni:v3.20.1" already present on machine
  Normal   Created    8m22s  kubelet            Created container upgrade-ipam
  Normal   Started    8m21s  kubelet            Started container install-cni
  Normal   Created    8m21s  kubelet            Created container install-cni
  Normal   Pulled     8m21s  kubelet            Container image "docker.io/calico/pod2daemon-flexvol:v3.20.1" already present on machine
  Normal   Started    8m20s  kubelet            Started container flexvol-driver
  Normal   Created    8m20s  kubelet            Created container flexvol-driver
  Normal   Pulled     8m19s  kubelet            Container image "docker.io/calico/node:v3.20.1" already present on machine
  Normal   Created    8m19s  kubelet            Created container calico-node
  Normal   Started    8m19s  kubelet            Started container calico-node
  Warning  Unhealthy  8m18s  kubelet            Readiness probe failed: calico/node is not ready: BIRD is not ready: Error querying BIRD: unable to connect to BIRDv4 socket: dial unix /var/run/calico/bird.ctl: connect: connection refused
  Warning  Unhealthy  8m13s  kubelet            Readiness probe failed: 2022-08-31 10:28:07.948 [INFO][283] confd/health.go 180: Number of node(s) with BGP peering established = 2
calico/node is not ready: BIRD is not ready: BGP not established with <IP_ADDRESS>,<IP_ADDRESS>,<IP_ADDRESS>,<IP_ADDRESS>,<IP_ADDRESS>
  Warning  Unhealthy  8m3s  kubelet  Readiness probe failed: 2022-08-31 10:28:17.942 [INFO][317] confd/health.go 180: Number of node(s) with BGP peering established = 2
calico/node is not ready: BIRD is not ready: BGP not established with <IP_ADDRESS>,<IP_ADDRESS>,<IP_ADDRESS>,<IP_ADDRESS>,<IP_ADDRESS>
  Warning  Unhealthy  7m53s  kubelet  Readiness probe failed: 2022-08-31 10:28:27.942 [INFO][348] confd/health.go 180: Number of node(s) with BGP peering established = 2
calico/node is not ready: BIRD is not ready: BGP not established with <IP_ADDRESS>,<IP_ADDRESS>,<IP_ADDRESS>,<IP_ADDRESS>,<IP_ADDRESS>

You should make sure all of your nodes are able to send BGP packets to each other. e.g., enable TCP port 179 in your cloud firewall for all nodes.
Also please provide some more information about your install, including install method, Calico version, Kubernetes installer and cloud provider.

Closing for inactivity.


[FLINK-5728] [kafka] Let FlinkKafkaProducers flush on checkpoints by default

What is the purpose of the change
This pull request makes flushing on checkpoints in the Kafka producer the default behaviour.
Effectively, the user now should not require any additional configuration for the producer to have at-least-once semantics.
Brief change log

initialize flushOnCheckpoint flag to be true
update documents

Verifying this change
Existing tests should already cover this change.
Does this pull request potentially affect one of the following parts:

Dependencies (does it add or upgrade a dependency): (yes / no)
The public API, i.e., is any changed class annotated with @Public(Evolving): (yes / no)
The serializers: (yes / no / don't know)
The runtime per-record code paths (performance sensitive): (yes / no / don't know)
Anything that affects deployment or recovery: JobManager (and its components), Checkpointing, Yarn/Mesos, ZooKeeper: (yes / no / don't know)
The S3 file system connector: (yes / no / don't know)

Documentation

Does this pull request introduce a new feature? (yes / no)
If yes, how is the feature documented? (not applicable / docs / JavaDocs / not documented)

LGTM! I will merge as soon as travis is green

Had to change this line to use StreamingRuntimeContext.class because the Producer would now actually call this: https://github.com/apache/flink/blob/96e898f2923f6b68bc845facf9c2d7ce1a951bbb/flink-connectors/flink-connector-kafka-base/src/test/java/org/apache/flink/streaming/connectors/kafka/FlinkKafkaProducerBaseTest.java#L100 😅

I merged this, could you please close the PR? 👍


Dockerize Template for Development

Tim,
Thanks for the templates.  Here are some docker files I use for local development
cd to directory after checking out and run

docker-compose up --build
Browse to http://localhost:8080
start hacking

Thank you for the Feature Request and interest in improving the Vuetify Material Dashboard. After careful consideration the team has decided that this is not functionality that we are looking to implement at this time.
If you have any additional questions, please reach out to us in our Discord community.


feat: add kvmfr akmod to properly support the looking-glass-client

For use with Looking Glass when doing GPU passthrough in virtual machines.
The shm file used currently in bazzite is deprecated and is considered for removal.
Addresses https://universal-blue.discourse.group/t/looking-glass-starting-point/858/4 and https://github.com/ublue-os/bazzite/pull/424#issuecomment-2028821558

Forgot to add i tested if the module loads correctly on Fedora Workstation and created the correct devices /dev/kvmfr0
once this is merged I will be giving this proper functional tests (with my gpu passthrough setup) in my personal image to see if we need any selinux rules set up (i know we will have to do some cgroups stuff at the very least) through ujust.
Once that is done i will work on adding this into bazzite at least.


EventSourceChanged not working.

$scope.$broadcast('eventSourceChanged', event);  not working. I am updating my event based on select option value and the value is updating but the new events are not displaying instead the event generated initially are being shown.

@vksingh225 Could you provide your code snippet?


fixes #3083 - api ignores prefix option - when binary started with custom web.external-url

fix for #3083
@fabxc
this pull request doesn't address https as I am not sure whether you want this implemented or return an error that https is not supported for the webHandle
Signed-off-by: Krasi Georgiev<EMAIL_ADDRESS>

I think this answers the question so maybe review the PR as it is or I can implement to error out when the web.external-url is trying to use https for the scheme

cc @fabxc

@grobie are you familiar with this part of the code to check this PR ?

Our router package in common/route already has support for prefixes, but I guess that doesn't apply here as we mount the API under its own prefix /api/v1/?
Why hasn't this been a problem before? @brancz @matthiasr does the magic Kubernetes proxy rewrite these URLs on-the-fly? Would this change break that?

IIRC the we intentionally did not prefix API endpoints, but I might be wrong.
The Kubernetes Proxy does indeed to url and http rewriting, but it doesn't touch the underlying applications paths (if it does, then that would be a bug).

We should be treating all endpoints the same way.

Agreed.

Either way, this looks good to me. Sorry about not getting to this earlier @krasi-georgiev. I'll rebase.

@fabxc no problem , I had to squash the commits to keep the CI happy but all looks good now.


[krew] Distribute with license

:wave: Hello, maintainer of the kubectl plugin manager krew here.
Thank you for your commitment to open source by making this plugin available via krew!
Krew wants to give credit where credit is due by installing the proper license file for the plugins it distributes. However, your plugin was found to not contain any license file.
What do you have to do?

Please ensure your GitHub repository has a license file.
Make sure your archive file (.tar.gz or .zip) contains the license file.
Please submit a pull-request to krew-index and update the files: section to copy the file to the installation directory. Have a look at this PR for an example: https://github.com/kubernetes-sigs/krew-index/pull/314/files

If you need further assistance, don't hesitate to ask for help.

Ping @jasonrichardsmith. Can you take a look at this, so that krew can install your license?

Hi @jasonrichardsmith this is a really nice plugin that's decently popular on Krew. If you can add a license file that'd be appreciated!

Sorry guys, updated
https://github.com/kubernetes-sigs/krew-index/pull/602

Thanks!


Alert Dialog blurring content inside of it.

Bug report
Current Behavior
When I use AlertDialog, my components inside my modal sometimes has a blurred appearence. It is a very weird behaviour because certain css properties trigger this blur. I have checked border-radius, background color in a options list and translate-x and translate-y.
Expected behavior
Components inside my AlertDialog modal should not be blurred unless told to or applied any css class to blur appearence.
Reproducible example
Still very difficult to reproduce, as it is inside a complex project. Will share some printscreens. Would love some ideias on how to fix it.
Additional context
When I remove some css properties used inside my modal, the blur appearence disappears.
Bugged behavior:

Applying border-radius 0:

Applying translate-x and translate-y 0

Applying background color transparent to ul:

Software
Name(s)
Version

Radix Package(s)

1.0.2

React

v18

Browser
Edge

Assistive tech

Node

16.18

npm/yarn

x

Operating System
Windows WSL

Not only transform can cause this bug, but other than overflow and many other css properties.

I have the same problem, especially on Windows devices with 1920 (low) resolution screens

This can definitely happen on low resolution screens when sub-pixels are involved.
This isn't really anything to do with the primitive as it comes unstyled.
The solution provided by @atulmy is one way to get around it.


Updated username description for AAS connections

Updated the "User a specific user name and password" user name description per GitHub issue https://github.com/MicrosoftDocs/azure-docs/issues/51574.

@jonburchel : Thanks for your contribution! The author(s) have been notified to review your proposed change. @wenjiefu

#sign-off

@jonburchel: I'm sorry - only the author of this article, @wenjiefu, can sign off on your changes. But we do have an exception process - if you are on the Microsoft content or product team for this product area, you can ask the PR review team to review and merge it by sending mail to the techdocprs alias.

@ktoliver : Thanks for your contribution! The author(s) have been notified to review your proposed change.


Pulling requirements.txt into test-requirements.txt

This will allow one to run 'pip install -r test-requirements.txt' rather then having to run pip install for both "requirements.txt and test-requirements.txt".

I don't like the idea of having two places to enumerate the same requirements. I'm going to leave as is.


[DNM] Test cifmw-data-plane-adoption-osp-17-to-extracted-crc

As a pull request owner and reviewers, I checked that:

[ ] Appropriate testing is done and actually running
[ ] Appropriate documentation exists and/or is up-to-date:

[ ] README in the role
[ ] Content of the docs/source is reflecting the changes

recheck


Distinct page for each feature

Fixes #697
HTML here: http://cockroach-docs-review.s3-website-us-east-1.amazonaws.com/df9a869f1fd5db0f829182656b2bc86c238daab0/high-availability.html
@jess-edwards, PTAL

This change is

@jseldess LGTM.
Looks like we've got more features than features pages at this point...
I'll point SQL to the SQL docs, but any ideas about where "highly available by design" should point?

@jess-edwards, I added a page for SQL and a page for High Availability, using content from our FAQ. Also updated a few of the other pages with FAQ content so as to not repeat the high-level language on the site homepage. Please take another look.

@jseldess
You're the best. Thank you!
On Wed, Sep 28, 2016 at 11:29 PM, jseldess<EMAIL_ADDRESS>wrote:

@jess-edwards https://github.com/jess-edwards, I added a page for SQL
and a page for High Availability, using content from our FAQ. Also updated
a few of the other pages with FAQ content so as to not repeat the
high-level language on the site homepage. Please take another look.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/cockroachdb/docs/pull/699#issuecomment-250361827, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AFwzUolZs710ydZ0pW7m6XuSXWDPuli8ks5quzCwgaJpZM4KJXwF
.

--
Jessica Edwards */ *Director of Marketing & Community
Cockroach Labs


HttpResponseWriter.redirect()

Related: https://github.com/line/centraldogma/pull/33
It would be useful when a user wants to send a redirect response:
res.redirect("/new-location");
res.redirect("/new-location/%s", someVar);
res.redirect(RedirectType.PERMANENT, "/new-location");

/cc @hyangtack

Closing in favor of #850 and #914


[Request] Anti flood

Any chance of auto kick for spam being implemented?

This is already planned, I just don't have the time right now.

Good to know, cheers.

how does e2c51ed8f1fe8ca20816c0df552a707ffaaee8b4 look to you? I haven't tested it yet, but it should be tweakable enough that someone can set it up the way they like it. It also has support for words you dislike; you can increase someone's score (a bad thing) when they say them.

Whenever someone in a chat says something, their score for that group gets increased
Whenever someone in a chat says a 'badword', their score gets increased by the amount specified for that badword

if the amount is null, it just applies the per-message penalty again
If you use this, you'll probably want to change the default warning message.
Use this to prevent people from spamming emoticons or items if you like

inventory items match /https?\:\/\/steamcommunity.com\/(id|profiles)\/[A-Za-z0-1_-]+\/inventory\/\#[0-9_]+/
emoticons match /\:[A-Za-z0-9_-]+\:/

Is the score high enough to get warned, kicked, banned, added to the global ignore list, or tattled on to the admins? time to do that.

If someone gets banned or ignored, set a timer to unban/unignore them.

On interval, we lower everyone's scores for every group.

Everything is customizable, from the penalties to the scores.
TODO:

when multiple regex matches found, apply the penalty multiple times.
when the number of unique characters in the message is significantly lower than the total length, apply a penalty. (much easier than detecting patterns, and will grab keyboard nonsense as well)

Looks good, does seem to only remove score right now though (should show in log I guess) and never warns/tattles/kicks/bans.

Works well for multi line stuff, probably not going to use the rest so not tried them. One thing it sends the warning message for every line after the warning is first sent which leads to it spamming the spammer if they post really fast, would be nice to have a timeout on it sending the message.

spamming the spammer

This is a problem? :smile_cat:

As amusing as it is, a little.

I'll take a look at it later, see if I can use disableForTimeout without it affecting anything other than the sendMessageAfterDelay functions.

Tried the ban, it logs that it's banning but doesn't actually ban

Does the bot have permission to ban users? Check steamcommunity.com/groups/your_group/permissionsEdit and steamcommunity.com/groups/your_group/membersManage to make sure. You can also check your group history page (steamcommunity.com/groups/your_group/history) to see if the ban went through.

 Apologies for not responding to this, somehow I never saw it.

For example if "bot" adds a point "robot" wont add a point, just the "exact:false" option.

Add a space. I'll be adding regex support soon, so you'll be able to specify word boundaries at that point. In the meantime, you can set your badword to " bot" instead of "bot" and it will only apply if there's a space before it.


Send stats emails only on production jobs servers

Adds an additional environment key for "service name" such as qa, production, stage, etc. which we can use to set the cron job for emailing monthly stats emails. This way, only the jobs server for the designated "production" service will send the emails.
Fixes #1614

Coverage increased (+31.3%) to 88.661% when pulling 432457af8d73a6093e10f9e22cf638c30e4c3052 on cron-update into 34c5c5f8993fd7aee21bd7bb21adb05e9fa368d1 on develop.


Ability to save import / export settings

Not having to turn off split by bone and join geometries each time would be nice

Maybe some kind of Blender Extension Caching? I couldn't find anything about this, but probably is somewhere out there.


Update plugin framework to not depend on ELL

ELL dropped its plugin API after release 0.33.  Revise the mptcpd plugin framework to instead use the standard dlopen() / dlsym() / dlclose() family of functions.  Take the opportunity to pass a pointer to the struct mptcpd object to the plugin init and exit functions so that plugins may have earlier and later, respectively, opportunities to perform calls through the mptcpd main path manager interface.  Fixes #84.

@mjmartineau I believe that I've addressed all of your review comments.  Please let me know if you have any other concerns.  Thanks!

@mjmartineau I believe that I've addressed all of your review comments.  Please let me know if you have any other concerns.  Thanks!

Looks good to me, thanks for the fixes!

Looks good to me, thanks for the fixes!


Can't run tests

I was trying to do some work on fixing a bug I'd found, but couldn't run the tests locally.
Here's the error I get:
Fatal error: Unable to find local grunt.
If you're seeing this message, either a Gruntfile wasn't found or grunt
hasn't been installed locally to your project. For more information about
installing and configuring grunt, please see the Getting Started guide:
http://gruntjs.com/getting-started

I'm not sure why this is happening, as there is a Gruntfile in the folder. Any ideas? It seems like some of the npm dependencies are out of date and this might be the cause of some of the issues…

This should also be resolved by merging #1314.

Hey @daviesgeek - this should be fixed by now. grunt was added as a dependency inside the package.json

Great thank you!

And #1315 completely fixed the reason why I wanted to run tests…


controller: Stop monitoring if the streaming does not work

longhorn/longhorn#2561
This is a surgery fix. IIRC, we need to refactor the monitor implementation in all controllers. @joshimoo Do you remember the issue number?

resource monitoring refactor is tracked at https://github.com/longhorn/longhorn/issues/2441
with a reference to my comment here https://github.com/longhorn/longhorn-manager/pull/854#issuecomment-812101940


Project Setup and Basic Infrastructure

Initial Project Setup and Development Environment
Objective
Set up the foundational development environment for tab-state-manager package
Tasks

[ ] Initialize project using TSDX

npx tsdx create tab-state-manager
cd tab-state-manager

[ ]  Configure TypeScript

Add strict mode

Set target to ES6

Configure module resolution

[ ] Set up testing environment

Configure Jest

Add React Testing Library

[ ] Configure Storybook

npx sb init

[ ]  Set up GitHub Actions for CI/CD

Add workflow for tests

Add workflow for build

Add workflow for npm publish

[ ] Configure package.json

Add proper metadata

Configure build scripts

Set up peer dependencies

Acceptance Criteria

Repository initialized with TSDX
TypeScript properly configured
Testing environment ready
Storybook running
CI/CD pipelines set up
package.json properly configured

@codemaxy I would like to contribute to this issue.

@SujalXplores Please go ahead! Happy coding


pilot groups not working

New Issue Checklist

[x] Updated fastlane to the latest version
[x] I read the Contribution Guidelines
[x] I read docs.fastlane.tools
[x] I searched for existing GitHub issues

Issue Description
I use this to deploy my ipa to Testflight:
  upload_to_testflight(
    api_key_path: "xxxxxxxxx.json",
    app_identifier: "com.foo.bar",
    distribute_external: true,
    groups: ["SFW"] # ID for SFW
  )

I have to manually add them every time:

Command executed
bundle exec fastlane run
Complete output when running fastlane, including the stack trace and command used
The output

 [10:00:36]: --- Step: upload_to_testflight ---
[10:00:36]: ----------------------------------
[10:00:36]: Using existing authorization token for App Store Connect API
[10:00:37]: Ready to upload new build to TestFlight (App:<PHONE_NUMBER>)...
[10:00:37]: Going to upload updated app to App Store Connect
[10:00:37]: This might take a few minutes. Please don't interrupt the script.
[10:01:30]: --------------------------------------------------------------------
[10:01:30]: Successfully uploaded package to App Store Connect. It might take a few minutes until it's visible online.
[10:01:30]: --------------------------------------------------------------------
[10:01:30]: Successfully uploaded the new binary to App Store Connect
[10:01:30]: If you want to skip waiting for the processing to be finished, use the `skip_waiting_for_build_processing` option
[10:01:30]: Note that if `skip_waiting_for_build_processing` is used but a `changelog` is supplied, this process will wait ppStoreConnect, update the changelog and then skip the remaining of the processing steps.
[10:01:30]: Waiting for processing on... app_id:<PHONE_NUMBER>, app_version: 0.0.1, build_version: 162, platform: IOS
[10:01:31]: Read more information on why this build isn't showing up yet - https://github.com/fastlane/fastlane/issues/
[10:01:31]: Waiting for the build to show up in the build list - this may take a few minutes (check your email for ntinues)
[10:02:01]: Waiting for the build to show up in the build list - this may take a few minutes (check your email for ntinues)
[10:02:32]: Waiting for the build to show up in the build list - this may take a few minutes (check your email for ntinues)
[10:03:02]: Waiting for the build to show up in the build list - this may take a few minutes (check your email for ntinues)
[10:03:33]: Waiting for the build to show up in the build list - this may take a few minutes (check your email for ntinues)
[10:04:03]: Waiting for the build to show up in the build list - this may take a few minutes (check your email for ntinues)
[10:04:36]: Waiting for App Store Connect to finish processing the new build (0.0.1 - 162) for IOS
[10:05:07]: Waiting for App Store Connect to finish processing the new build (0.0.1 - 162) for IOS
[10:05:38]: Waiting for App Store Connect to finish processing the new build (0.0.1 - 162) for IOS
[10:06:08]: Waiting for App Store Connect to finish processing the new build (0.0.1 - 162) for IOS
[10:06:39]: Waiting for App Store Connect to finish processing the new build (0.0.1 - 162) for IOS
[10:07:10]: Waiting for App Store Connect to finish processing the new build (0.0.1 - 162) for IOS
[10:07:43]: Waiting for App Store Connect to finish processing the new build (0.0.1 - 162) for IOS
[10:08:16]: Successfully finished processing the build 0.0.1 - 162 for IOS
[10:08:16]: Using App Store Connect's default for notifying external testers (which is true) - set r full control
[10:08:16]: Distributing new build to testers: 0.0.1 - 162
[10:08:17]: Export compliance has been set to 'false'. Need to wait for build to finishing processing again...
[10:08:17]: Set 'ITSAppUsesNonExemptEncryption' in the 'Info.plist' to skip this step and speed up the submission
[10:08:17]: Successfully distributed build to Internal testers 🚀
+------+------------------------+-------------+
|              fastlane summary               |
+------+------------------------+-------------+
| Step | Action                 | Time (in s) |
+------+------------------------+-------------+
| 1    | Switch to vault lane   | 0           |
| 2    | shell command          | 0           |
| 3    | Switch to              | 0           |
|      | get_provisioning_prof  |             |
|      | iles lane              |             |
| 4    | sigh                   | 1           |
| 5    | Switch to              | 0           |
|      | domain_sign_ipa lane     |             |
| 6    | mv ../*.ipa            | 0           |
|      | ../app.ipa             |             |
| 7    | resign                 | 2           |
| 8    | mv ../app.ipa          | 0           |
|      | ../app.iOS-signed  |             |
|      | -.ipa                  |             |
| 9    | upload_to_testflight   | 460         |
+------+------------------------+-------------+
[10:08:17]: fastlane.tools just saved you 8 minutes! 🎉
successfull published to testlfight

Environment
[✔] 🚀
[09:16:16]: Generating fastlane environment output, this might take a few seconds...
swift-driver version: 1.62.15 ✅ fastlane environment ✅
Stack

Key
Value

OS
13.2.1

Ruby
3.2.2

Bundler?
true

Git
git version 2.37.1 (Apple Git-137.1)

Installation Source
~/appname/vendor/bundle/ruby/3.2.0/bin/fastlane

Host
macOS 13.2.1 (22D68)

Ruby Lib Dir
/opt/homebrew/Cellar/ruby/3.2.2/lib

OpenSSL Version
OpenSSL 1.1.1t  7 Feb 2023

Is contained
false

Is homebrew
false

Is installed via Fabric.app
false

Xcode Path
/Applications/Xcode.app/Contents/Developer/

Xcode Version
14.2

Swift Version
5.7.2

System Locale

Variable
Value

LANG
en_US.UTF-8
✅

LC_ALL

LANGUAGE

fastlane files:
`./fastlane/Fastfile`
before_all do
  vault()
end

desc "Load secrets from vault"
lane :vault do
  sh("../bamboo-specs/vault.sh", log: false)
end

desc "Load provisioning profiles from apple server."
lane :get_provisioning_profiles do
  sigh(
    adhoc: true,
    app_identifier: "com.domain.appname",
    api_key_path: "xxxxxxx.json"
  )
  # add actions here: https://docs.fastlane.tools/actions
end

desc "Resign ipa file."
lane :domain_sign_ipa do
  sh("mv ../*.ipa ../app.ipa")
  # sh("security", "unlock-keychain", "-p", ENV["KEYCHAIN_PASS"], log: false)
  resign(
    ipa: "app.ipa",
    signing_identity: "Apple Distribution: domain (xxxxxxxxxx)",
    provisioning_profile: "AdHoc_com.domain.appname.mobileprovision"
  )
  sh("mv ../app.ipa ../appname.iOS-signed-.ipa")
end

desc "Upload ipa to testflight."
lane :deploy_to_testflight do
  upload_to_testflight(
    api_key_path: "xxxxxxx.json",
    app_identifier: "com.domain.appname",
    distribute_external: true,
    groups: ["SFW"] # ID for SFW
  )
end

desc "Run all lanes for testflight deployment"
lane :run_all_testflight do
  get_provisioning_profiles()
  domain_sign_ipa()
  upload_to_testflight()
end

desc "Run all lanes for google play deployment internal"
lane :run_all_google_internal do
  sh("mv ../*.aab ../app.aab")
  VERSION=sh('jq -r ".version" ../package.json')
  upload_to_play_store(
    package_name: "com.domain.appname",
    version_name: VERSION, # string
    version_code: ENV["bamboo_deploy_version"], #integer, the same can't be uploaded twice
    track: "internal",
    release_status: 'draft',
    json_key: "google_service.json"
  )
end

`./fastlane/Appfile`
app_identifier("com.domain.appname") # The bundle identifier of your app
<EMAIL_ADDRESS># Your Apple email address

fastlane gems

Gem
Version
Update-Status

fastlane
2.212.2
✅ Up-To-Date

Loaded fastlane plugins:
No plugins Loaded
Loaded gems

Gem
Version

error_highlight
0.5.1

did_you_mean
1.6.3

syntax_suggest
1.0.2

bundler
2.4.10

pathname
0.2.1

rake
13.0.6

rexml
3.2.5

CFPropertyList
3.0.6

public_suffix
5.0.1

addressable
2.8.4

artifactory
3.0.15

atomos
0.1.3

aws-eventstream
1.2.0

aws-partitions
1.749.0

aws-sigv4
1.5.2

jmespath
1.6.2

aws-sdk-core
3.171.0

aws-sdk-kms
1.63.0

aws-sdk-s3
1.120.1

babosa
1.0.4

claide
1.1.0

colored
1.2

colored2
3.1.2

highline
2.0.3

commander
4.6.0

declarative
0.0.20

digest-crc
0.6.4

unf_ext
<IP_ADDRESS>

unf
0.1.4

domain_name
0.5.20190701

dotenv
2.8.1

emoji_regex
3.2.3

excon
0.99.0

faraday-em_http
1.0.0

faraday-em_synchrony
1.0.0

faraday-excon
1.1.0

faraday-httpclient
1.0.1

multipart-post
2.0.0

faraday-multipart
1.0.4

faraday-net_http
1.0.1

faraday-net_http_persistent
1.2.0

faraday-patron
1.0.0

faraday-rack
1.0.0

faraday-retry
1.0.3

ruby2_keywords
0.0.5

faraday
1.10.3

http-cookie
1.0.5

faraday-cookie_jar
0.0.7

faraday_middleware
1.2.0

fastimage
2.2.6

gh_inspector
1.1.3

jwt
2.7.0

memoist
0.16.2

multi_json
1.15.0

os
1.1.4

signet
0.17.0

googleauth
1.5.2

httpclient
2.8.3

mini_mime
1.1.2

trailblazer-option
0.1.2

uber
0.1.0

representable
3.2.0

retriable
3.1.2

webrick
1.8.1

google-apis-core
0.11.0

google-apis-androidpublisher_v3
0.39.0

google-apis-playcustomapp_v1
0.13.0

google-apis-iamcredentials_v1
0.17.0

google-apis-storage_v1
0.19.0

google-cloud-env
1.6.0

google-cloud-errors
1.3.1

google-cloud-core
1.6.0

google-cloud-storage
1.44.0

json
2.6.3

mini_magick
4.12.0

naturally
2.2.1

optparse
0.1.1

plist
3.7.0

rubyzip
2.3.2

security
0.1.3

simctl
1.6.10

terminal-notifier
2.0.0

unicode-display_width
1.8.0

terminal-table
1.8.0

tty-screen
0.8.1

tty-cursor
0.7.1

tty-spinner
0.9.3

word_wrap
1.0.0

nanaimo
0.3.0

xcodeproj
1.22.0

rouge
2.0.7

xcpretty
0.3.0

xcpretty-travis-formatter
1.0.1

generated on: 2023-04-26

Please take a look
Seems its working with skip_waiting_for_build_processing: false key

skip_waiting_for_build_processing is default to false according to the docs https://docs.fastlane.tools/actions/pilot/
I did not set it in my Fastfile so it should be already on false, or did I miss something?

I found the issue, its on apple.
TLDR: Submit your External Testing Track and let apple review and approve it, then it will work.
When you don*t have the External Testing Track active and the most important part "reviewed" it wont let you set the Groups via fastlane/apple-api.
Only when you let apple review the submission for the External Testing Track and its done and approved, the groups will then be applied on the Internal Testing tracks.

Hello @axi92!
I've run into the same problem described here where we want to distribute builds to an external group via the fastlane API.
What do you mean by "External Testing Track" being active on App Store Connect? In Apps/{AppName}/Testflight, the groups are divided by "Internal Testing" and "External Testing", but I don't see any option of adding any groups to review, only the builds inside the groups themselves.
With External groups that have had at least one build reviewed and submitted, distribute_external still doesn't work for me.
Maybe I'm looking in the wrong place and I would be very thankful for any help. =)

@JowyAtreides I think what they mean is you must submit at least one build to the external group and (because that goes to Apple for review at least the very first time) wait for Apple to approve it.
However, I have done that and I still can't get pilot to send new builds to the external group with distribute_external set to true.

Hello @axi92! I've run into the same problem described here where we want to distribute builds to an external group via the fastlane API.
What do you mean by "External Testing Track" being active on App Store Connect? In Apps/{AppName}/Testflight, the groups are divided by "Internal Testing" and "External Testing", but I don't see any option of adding any groups to review, only the builds inside the groups themselves.
With External groups that have had at least one build reviewed and submitted, distribute_external still doesn't work for me.
Maybe I'm looking in the wrong place and I would be very thankful for any help. =)

@JowyAtreides okay, I finally got it to work by renaming my groups to be just single words. A space in the names causes it to not work. I don't have the time to dig into the cause but you could add prints to your local pilot gem's build_manager.rb (if you use a ruby env manager, it would be at ~/.gem/ruby/3.2.2/gems/fastlane-2.225.0/pilot/lib/pilot/build_manager.rb) here: https://github.com/fastlane/fastlane/blob/ec78d7d81a6a66e9e89fd29f6e0616d5ba09840a/pilot/lib/pilot/build_manager.rb#L460-L462, and then run the lane.

@JowyAtreides okay, I finally got it to work by renaming my groups to be just single words. A space in the names causes it to not work. I don't have the time to dig into the cause but you could add prints to your local pilot gem's build_manager.rb (if you use a ruby env manager, it would be at ~/.gem/ruby/<ruby_version>/gems/fastlane-2.225.0/pilot/lib/pilot/build_manager.rb) here:
https://github.com/fastlane/fastlane/blob/ec78d7d81a6a66e9e89fd29f6e0616d5ba09840a/pilot/lib/pilot/build_manager.rb#L460-L462
, and then run the lane.

Even more bizarre:

I added the prints to the location mentioned above and nothing looked wrong
because of 1, I reverted the name change and went back to Internal Testers and External Testers
I tried pilot again and this time it worked 😕


Could not pass DestructEntityEvent

Hi !
Lately my production server (debian 10) went mad with this reccurent error : https://pastebin.com/vvQnUvJj sorry for bad formatting)
I am running spongevanilla-1.12.2-7.3.0 with webapi-5.4.6-S7.2.0 and openjdk 1.8.0_292. The weird part is that I can't reproduce it on my local windows server, nor with an admin account.
Sometimes a MessageChannelEvent is not catched too but according to stack trace it seems to come from ultimatechat.
I disabled almost everything in servlets.conf
Any idea of the why ? I can provide more details regarding configuration.

Hi!
I haven't maintained this library in quite a while, so I'm not sure I can really help you with your issue.
Quickly looking at the error message it looks like something within the SpongeAPI changed - is it possible that you're using different Sponge versions when running it locally?
I'm currently working on a rewrite of the Web-API that will also work with Forge and Spigot. If you can tell me your most important endpoints that you're using I can prioritize those and make sure to get a working verison out soon-ish. That version would work with Sponge 8, if that's your ultimate goal.

Hi, thanks for your quick answer :)
I set up the exact same server locally and error occured, it might be related to sponge api then.
Currently I use command and interactive-messages. Also could it be possible to disable doc module ?
I am not in a hurry for api8 but it's awesome that you are working on it. You rock :D


Actual e2e script&code

I have never imagined how hard it is...

Still the code is a bit messy(actually I do not know what structure is correct😅), it normally works. This has just one case, but I want to concentrate on SinkBinding stuff so I move this to get merged.


Large tooltip when not tokenized on long lines makes code hard to read

When editing code inside a eval() call that is a large webpack-gernerated file (trying to fix bugs around importing node into web), there is a tooltip that is fairly large and says "Tokenization is skepped for long lines for performance reasons. This can be configured via editor.maxTokenizationLineLength. " This tooltip comes up somewhat quickly when hovering over this code, and so I have to constantly move my mouse in order to read the code. Is it possible to either make the tooltip time to show up much longer (about 5 times as long I think would be reasonable) or have a only show this once thing.
This is absolutely not a priority but would probably be an easy fix.
Thanks for your time!

That tooltip is just broken
as it is supposed to only show up when wordwrap is turned off
and iirc configuring editor.maxTokenizationLineLength doesn't work on it


Authority

Fix #9 (options for :authority) and #13 (options for :reserved)

There are some rubocop fixes pending

Hi @wacko , I mistakenly merged this --- there are some changes that I think should be fixed before merging.
Perhaps a new pull request will have to be created.


Fixing dir streaming and issue 6558

Signed-off-by: jackyalbo<EMAIL_ADDRESS>Explain the changes

Fixing issue 6558 - The cache wasn't working so we keep on adding more and more dir list to the cache until we ran out of memory - it was because we used the whole object as the key - which doesn't work. Changed to fs_dir + uid + gid - I hope it's good enough please let me know if we need other variables as well.
A quick fix for a huge directories. When I tried with 100K objects I got to 3 MB cache - So to get to 64 MB I guess we will need 2M. I have to say that this solution won't do - As most users just won't wait that much time for reading the all directory one by one. Trying with 100K objects it took aprox. one hour - CyberDuck won't wait. S3api did... but I don't know - need better tuning. Will be happy to hear what you suggest.

Issues: Fixed #xxx / Gap #xxx

Testing Instructions:

Please read the explanation before reviewing - I do need your feedback on the decisions I made. Thanks

You can make very long file names - that will increase the size of the dir in cache with lower number of entries.


CMake error: prevented in-tree built (SDL)

Operating system is Ubuntu 14.10 64-bit. Latest clone of Torque 3D from today. I tried using cmake . and mkdir build; cd build; cmake .., both return the same error.
CMake Error at Engine/lib/sdl/CMakeLists.txt:2 (message):
  Prevented in-tree built.  Please create a build directory outside of the
  SDL source code and call cmake from there

-- Configuring incomplete, errors occurred!

Interesting. In Ubuntu 14.04 I can reproduce the error using cmake . -DTORQUE_APP_NAME=test, but not if I make a build folder. CMake version <IP_ADDRESS>...

I only have My Projects with a a readme.txt inside…

Ah right. To create a new project, follow these instructions. We really need to add an end-to-end make-a-game tutorial. Most of us are just very used to the project layout at this point :joy:

I don't see CMake files inside the Empty and Full templates.

It works.

Oh, so did command-line CMake still give the same error? Could you post the entire command-line call? Usually it's also required to add -DTORQUE_APP_NAME at least, so the command-line snippets you posted above should have failed because of that.
And yeah, the warning count is a known issue :P.

Nevermind, it works in command-line too.

Yep, sorry... bad docs was my fault :(
This weekend is only for improve all Linux/Opengl documentation,


Use more algebra types

This labels many (I hope all) types we have with more precise types:
see:
https://github.com/typelevel/algebra/blob/master/docs/src/main/tut/typeclasses/overview.md
for an overview of the types.
@sritchie @piyushnarang @non please take a look. I want to get as many of these as possible added if we can so we don't break compatibility by wanting to add some we missed.

@piyushnarang addressed your concerns, I think.

Great thanks for the updates.

Ping @sritchie / @non I think this PR is the last one blocking our new release and it would be nice to get that out soon.

@tixxit said it looked good just noticed two ugly issues. Not easy to fix
and keep compatibility for source so I suggest we don't.
Unless there are objections, I think we should merge and publish 0.13.0
tomorrow.
On Wed, Feb 8, 2017 at 13:05 Piyush Narang<EMAIL_ADDRESS>wrote:

Ping @sritchie https://github.com/sritchie / @non
https://github.com/non I think this PR is the last one blocking our new
release and it would be nice to get that out soon.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/twitter/algebird/pull/620#issuecomment-278492038, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AAEJdtRBHHt9D9tyguJiygqybBC0BNrNks5rakpKgaJpZM4L1y5G
.


[Feature Request]: Adding functionality to add your own joke.

Is there an existing issue for this?

[X] I have searched the existing issues

Feature Description
i want to add an extra feature to add our own jokes.
Use Case
This will have an additional feature implementing backend and database.
Benefits
No response
Add ScreenShots

Priority
Medium
Record

[X] I have read the Contributing Guidelines
[X] I'm a GSSOC'24 contributor
[X] I have starred the repository

@Abhishek-465 you are assigned


getAffectedItems/Ids - util

Get item (ids) for items that will be affected by update, patch, remove with a specific query.
Usecase: I want to know which items will be changed in a before hook, so I can fetch these items before and compare the changes in an after hook.

getQuery for request from ability (with the provided method) and merge with provided query
fetchItems with $select or remove select
return items

Or just use mergeQueryFromAbility and do the fetch in custom implementation outside of feathers-casl https://github.com/fratzinger/feathers-casl/blob/9dba632a45e5044ed5cdf7b844ed1fb1857ce0f0/lib/hooks/authorize/authorize.hook.utils.ts#L202


[Annotations] Show buttons even if they've no actions

it's a regression from PR #14247:
before the PR, the button was rendered on the canvas whatever its status was;
after the PR, the button image has been moved in an other canvas so when the button is not renderable
(because it has no actions) then the image is not added the HTML element.
the buttons in the pdf in bug 1737260 or in the pdf in #14308 were not visible
make the button always renderable but don't add the link element if it's useless.

/botio test

Is the change in firefox-file_url_link-page1 correct? I seem to recall that links to local files were not rendered, but I'm not entirely sure of this.

isRenderable has been added in https://github.com/mozilla/pdf.js/pull/8865 in order to fix https://github.com/mozilla/pdf.js/issues/3897.
My feeling is that we should show the annotation whatever the action is but of course we don't have to bind an action in some case.
@timvandermeij, what's your opinion here ?

I'm not really sure what's best here. On the one hand we could say that we render the annotation but don't make it clickable since that's closer to what's actually in the PDF file, but on the other hand I can also see why https://github.com/mozilla/pdf.js/pull/8865 made them hidden because it's very likely to confuse the user if you see a link annotation but nothing happens when clicking it. Since we already know file:// URLs will not work well, it might be nicer to not show them at all to avoid confusion?
Maybe we should compare it to Acrobat and see what that does? I imagine they also have problems with file:// URLs pointing to non-existent files. Do they not render the annotation then, or just show a warning on click or so?

If you open the pdf in https://github.com/mozilla/pdf.js/issues/14862 in using for example Foxit, you can see a yellow page with a warning:

This yellow thing is a Widget button with no action.
When the viewer is Acrobat then it's hidden and visible else.
I think we must display everything we have in the pdf and of course when there are no action we must try to avoid to give the impress that it's a button (e.g. don't bind anything).
It isn't display in the viewer but if you to print the page you can see it.
About file:///:

in Acrobat:

and when clicking on Allow, it leads to nothing.
in Chrome: it tries to open the URL file://path/to/local/file.pdf in the browser

I've not really looked in any detail at the code in this PR, but as far as I understand it these changes will not make the links themselves visible/clickable (e.g. for file://-URLs) but only make the border visible (when one exist)?
While displaying a border around a non-clickable annotation might look a bit strange, and potentially slightly confusing to users, that in itself shouldn't change any actual behaviour here.
Furthermore, again assuming that I understand things correctly, we basically "have to" make these changes in order to properly support annotations whose visibility can be changed dynamically from scripting.

With file_url_link.pdf, the only visible change for the user is to have this green border but nothing.
From my pov, the only drawback would be to display a button with an action we don't support (if any), hence the user could try to click on it without any success. If we don't plan to support the action we should probably warn in the console (or with an alert) else it's a bug.
But if by design a button is displayed whatever the actions are, we should/must render it.

@timvandermeij Ping; how do think that we should proceed here?

Looking at this again, if it's indeed fixing the original issues with the only drawback that we see the green border I think I'm fine with that. Not showing the buttons indeed seems worse than showing them but not having them actually clickable.

@calixteman Do you have time to rebase this, so that we can run tests again and then land this?

/botio test

/botio-linux preview

Thanks!
/botio makeref


Detailed documentation for the project

Coverage remained the same at 97.241% when pulling 610e47dbf8a54213bdb4d94b5605c1b2f6196725 on docs into c2bf9ac1544726ce64962d0781a943e7fe191545 on master.

Coverage remained the same at 97.241% when pulling 023430a7ccfc3db66b19c0086d6712d6e425791c on docs into c2bf9ac1544726ce64962d0781a943e7fe191545 on master.


Improve Error Message from ObjectStore

Expected Behavior
ObjectStore logs user-friendly error messages.
Actual Behavior
We got the following message when we create more files than the limit impose:
ObjectStore Persistence Error: LocalObjectStore.InternalSaveBytes(): at file capacity: 101. Unable to save: ‘live_SCHW'

Potential Solution
Improve error message. E.g.:
ObjectStore Persistence Error: LocalObjectStore.InternalSaveBytes(): You have reached the ObjectStore limit for files it can save: 101. Unable to save the new file: ‘live_SCHW'

Checklist

[x] I have completely filled out this template
[x] I have confirmed that this issue exists on the current master branch
[x] I have confirmed that this is not a duplicate issue by searching issues
[x] I have provided detailed steps to reproduce the issue

I would like to take this one.


Relative Pathing to the .platypus Configuration File

I don't know if this is a bug, a feature request or simply an addition to the documentation but I noticed that the .platypus configuration files are absolutely pathing which means that one can't check them into version control such that they are useful for anyone else. Or even just wanting to move one's project to a different location on one's computer.
Is this a missing feature? Is there just something I'm missing in the platypus interface?

Relative paths are supported in .platypus profiles, but are not generated by the app. If you edit the plist manually, everything should work. If not, that's a bug.


Windows fixes

Pretty much following nimble's suggestions and testing it on windows:

Thanks for your efforts! It would be great that if you can add a new cuchar version to fix the deprecation message
type uchar* {.importc: "unsigned char", nodecl.} = uint8

Not sure that's what you meant! (we can revert the last commit otherwise)

Thanks!


Replace TryFrom with FromStr

This PR replaces TryFrom with FromStr for various identifier types. There are two primary reasons for this:

TryFrom is not stable and thus holds dependent crates hostage.
FromStr also provides str::parse for free which allows for better ergonomics.

Thanks for the PR!
The use of the try_from feature here is intentional. It was actually stabilized for Rust 1.26, but had to be reverted because of some problems related to the never type that were found afterwards. It's likely to be stabilized again soon, and hopefully in Rust 1.27. TryFrom is intended to replace FromStr, with the latter likely become deprecated. Since many parts of Ruma will require nightly for the foreseeable future, it doesn't hurt to keep waiting on this.


Keystrokes get lost

Observed under Linux (Ubuntu 20.04) with v0.8.2760:  After working with GT for a while, certain keystrokes are no longer processed: arrow keys, backspace, return, control+letter. Plain character insertion still works fine. The only fix I found is to switch to a different window, then back to GT.
Inspection of the keyboard events with GTMonitor shows that the keystrokes do arrive in GT.

I'm seeing this as well from v0.8.2782 on a apple silicon Mac.

Experiencing the same problem using v1.0.1360 and Mac OS Intel.

I develop in GT daily on Mac for years and I have literally never experienced stuck keys. If I could reproduce it, we could fix it. Did you notice any pattern or do you have any hint how to reproduce it?

Is this different than the modifier key issue?


Fix #4949 and Avoid Errno::EBUSY on docker containers

This commit fixes https://github.com/chef/chef/issues/4949 by adding
ohai-based docker detection code and statically checking for
/etc/hostname or /etc/resolv.conf.
cc @lamont-granquist

I've updated the implementation so that new_resource.atomic_updates always overrides the default, and also moved the implementation of docker? into lib/chef/dsl/platform_introspection.rb.  I wasn't able to use the same code as chef-sugar, as Travis was complaining bitterly about the File.exists? and mocking that everywhere with docker-specific code didn't seem to be the best option, so I'm just looking at Ohai data.

mmm yeah, file provider unit tests and mocking File.exists?...   there be dragons...

👍

👍


Future fallback for Async Hystrix Command

When creating a method
@HystrixCommand(fallbackMethod = "myFallback")
public Future<List<myType>> getSomethingAsync() { ...

with the fallback
private Future<List<myType>> myFallback() {
    return Futures.immediateFuture();
}

When calling .get() on the returned future from the fallback, it returned the future itself.
It seems that the fallback actually needs to be
private List<myType> myFallback() {
    return Collections.emptyList();
}

The method signature for the fallback needs to omit the future part.
However this is not documented?

is this behaviour expected?
If so, can it be documented please?

@dmgcodevil Are you able to answer this?  I'm not sure the status of wrapping async work (like in HystrixObservableCommand) in hystrix-javanica is.

Hi,
Actually there are two cases: fallback as regular method and a method annotated with @HystrixCommand
Both cases aren't documented and I'll fix it for sure, but meantime let's consider each case.

Fallback as regular method. In this case I think fallback method return type should be a type that used as generic parameter in Future i.e.

@HystrixCommand(fallbackMethod = "myFallback")
public Future<List<myType>> getSomethingAsync() { ...

fallback
private List<myType> myFallback() {
    return Collections.emptyList();
}

Fallback as command (marked with HystrixCommand annotataion).
2.1 Fallback as sync command - works
2.2 Fallback as async command - doesn't work, throws ClassCastException. We need to support this case, I'll fix it once #907 is closed and merged back to master, I'm going to do it shortly.

@mattrjacobs, issue was solved and pr merged, so you can close it

In what version is this corrected as I'm running 1.4.23 [shown below] and it still returns a Future inside another future so I have to call the invoke method.
Here's the dependency:
<dependency>
	<groupId>com.netflix.hystrix</groupId>
	<artifactId>hystrix-javanica</artifactId>
	<version>1.4.23</version>
</dependency>

And our code
@Override
@HystrixCommand(groupKey = "XmlTransactionThingsDao", commandKey = "retrieve", fallbackMethod = "retrieveAllByAccountId")
public Future<List<TransactionThing>> retrieveAllByAccountIdFailure(
		Context context, String accountId) {
	throw new ApiSystemException("retrieveAllByAccountIdFailure Failed on purpose");
}

@Override
@HystrixCommand(groupKey = "XmlTransactionThingsDao", commandKey = "retrieve")
public Future<List<TransactionThing>> retrieveAllByAccountId(
		Context context, String accountId) {
	logger.debug("In Thread Named {} with thread id {} and correlation id {}", Thread.currentThread().getName(),
			Thread.currentThread().getId(), EPFContextContainer.getContext().getCorrelationId());

	BankThingEntityCollectionResponse response = adaptor.readXml("AccountTransactionDetailData.xml");

	final Optional<BankThing> found = Iterables.tryFind(response.getEntries(), new AccountFinder(accountId));

	return new AsyncResult<List<TransactionThing>>() {
		@Override
		public List<TransactionThing> invoke() {
			if (found.isPresent()) {
				logger.debug("Transactions found: {}", found.get().getTransactions());
				return found.get().getTransactions();
			}
			else {
				logger.debug("No Transactions found");
				return Collections.EMPTY_LIST;
			}
		}
	};
}

@dmgcodevil Are you able to take a look at this?

Hi, I'm not aware about the procedure of releasing new versions and I'm not controlling what versions contain some changes of fixes. Your code should work fine, could you try 1.4.25 or later ?

Latest releases 1.4.26/1.5.2 should contain all relevant changes


Please provide a complete list of files and folders generated by VSCode and their locations

On re-opening a project and navigating to the terminal via Ctrl + backtick (Toggle Terminal), I notice that the terminal states:
*  History restored
This would mean that there is some file/folder on disk somewhere which tracks this project and stores this data.
Can a complete list of files and folders generated by VSCode and their locations be documented and put up on the web? My hard disk space is running out and I would like to keep deleting such extra folders routinely so that it does not eat into the remaining space.
In other words, what files and folders can one safely delete so as to restore VSCode to the status it would have been under right after the very first time it has been freshly installed on a new machine without any extensions, cache files, etc. without affecting its functionality.

Where VS Code puts settings is the "user data directory" (the Code folder in the examples here) https://code.visualstudio.com/docs/getstarted/settings#_settings-file-locations, this is the place where everything is cached.
The only other place is the extensions directory which is in ~/.vscode/extensions. Note that extensions themselves can put things anywhere, generally extensions only put things into those 2 folders or the opened folder though.
You might be interested in portable mode which is a more self contained version https://code.visualstudio.com/docs/editor/portable

@Tyriar
In Windows under WSL, should one be looking at $HOME/.config/Code folder under WSL? I don't have the Code folder under .config there. Or would it be the case that working on %APPDATA%\Code\ under the Windows directory structure suffices to delete the files created on the machine even if one had opened a project under WSL?
Thanks.

If your using the remote wsl extension it's a little more complicated, there will also be a .vscode-server (or similar) in the root with a corresponding extensions dir
The easiest way to find these directories is the open extensions folder command, and opening up the settings.json file (user or remote) and checking it's path.

@Tyriar
I am now interested in the Portable Mode VSCode. The page you linked to only says what to do to migrate over for pure Windows and pure Linux. I, however, also work on WSL on my Windows box and notice that there is VSCode data that is written to \\wsl$\Ubuntu-20.04\home\TryerGit\.vscode-server How should this be migrated to the portable mode?
Is there a way to work on WSL also portably?

@TryerGit I don't think there is

@TryerGit I don't think there is

I guessed as much. I posted this on SO and the suggestion there was to think of installing VSCode on WSL as if it were a completely new Linux only installation -- not related to the Windows install. See that thread here
Interesting, there was a user here before who had raised this issue a year ago (see here) but his solution would not work because in WSL he was trying to provide the link to the full VSCode Windows installation and not the portable installation.
This is a disappointment since I was hopeful portable VSCode would avoid the trouble of having an ever growing collection of cache, intellisence, and other temporary files in Windows/Linux system folder. I will continue to manually locate such big files and delete them.
Thanks.


Remove facility scope from seedbank search API

/api/v1/seedbank/values/all supports listing the values for an organization or a
facility, but we no longer ever use the facility scope. Replace the scoping
implementation with a simpler one that only supports organizations.
The fact that organization ID is a required field in the request payload is now
part of the OpenAPI schema instead of a runtime check.

@sgrimm started a stack merge that includes this pull request via Graphite.

Graphite rebased this pull request as part of a merge.

@sgrimm merged this pull request with Graphite.


[PR] Add in-game console

Hey there!
I don't know if this project is still maintained, but if it is, would you be interested in adding an in-game console to the CUDLR examples? I already have something ready that I could convert into a PR if you're interested. Please see the attached screenshot for further details (I'll alter the implementation to use Unity's default font if you're willing to integrate the change).

Cheers
Philipp

Thanks Philipp. We are not currently working on this project, but if you open the PR we will review and merge it.

I would certainly love to see this in the future. :)


Add README.md

Purpose
$Subject

Done.

Can you please change the github repo name to wso2-cellery?

Done.


Splitting up the LOADfile

Current LOADfile is of multiple purposes.
It contains configuration information, application data and also some secrets.
The current LOADfile shall be split into

CONFIGfile : config.json
DATAfile *) : data.json
SECRETSfile : secrets.?

*) the current DATAfile, which is the LOADfile plus some additional information, which is necessary for executing testing in Postman shall be named PMfile in future.
CONFIGfile shall be alike the current LOADfile, but it shall be limited to the configuration of the application.
Particularly the Profile section shall be reduced to profile instances that represent configuration information, but not application data.
Secrets like operation-keys shall be removed.
The CONFIGfile shall still define the initiation state of the application.
It will be provided as a part of the individual specification.
Its data format shall follow the ONF information modelling structure.
DATAfile shall either contain the application data or the connection information towards a database.
Content and structure shall be encapsulated by the individual application implementation.
It will not be part of the specification.
There will be no defined initiation state of the application.
There is no modelling structure prescribed, but the implementer has to provide open documentation.
SECRETSfile shall contain information, which needs to be protected against reading and changing.
It has to be encrypted, but its format shall be reused by all applications.
It will be provided as a part of the ApplicationPattern.
It's part of the definition of the initiation state of the application.
Its data format shall follow the ONF information modelling structure.

Regarding separating operation-key and maintaining it in a secret file , I could able to understand the proposal in a high level.
Whether this SECRETSfile contains information about operation-servers/clients with operation-keys represented in the ONF format ?
If so,
can we have the following ,

Operation-keys will be present in the CONFIGFile itself
Operation-Keys will be encrypted
CONFIGFile will be protected against unauthorized reading and changing

This will reduce the complexity in the server side implementation ,

reading operation-key of an operation-client in one file,
mapping the operation-client uuid in another file
finding out the tcp information from the mapped instance's server

Also by implementing the point(2) and (3) , we can ensure the safety of the key.

CONFIGfile - sounds reasonable. However, it should also contain information about DB connection and such settings which are needed for application to start.
DATAfile - contains domain specific application data. I assume/believe that in 99% of business applications this is database. In case there is existing file/database at start of application, it will be used. Otherwise the application will create one.
SECRETSfile - I think secrets can be part of CONFIGfile or CONFIGfile can reference to SECRETSfile. However, in both cases you need to encrypt and decrypt them somehow what usually requires a key which needs to be injected to application at start or application can obtained it from somewhere during start. Another aspect is that in case of DB you need to provide username and password, in case of some 3rd party apps some api-key, etc. to application before it starts. So you need to somehow encrypt these info (with the same mechanism as application will use for decrypting) before you put it to SECRETSfile/CONFIGfile and then start application and giving it a key for decryption. There is a lot of "somehow" which need to be specified.
In general, if there is a requirement to run 2 or more replicas of an application then storing any data to file during runtime will cause problems.

Current LOADfile is of multiple purposes.
It contains configuration information, application data and also some secrets.
Decision made on ApplicationImplementation call on 20th of May 2022:
The current LOADfile shall be split into

CONFIG : config.json
APPDATA : applicationName.json (or multiple files also of different file formats) or database (applicationName.*)

CONFIG:

It shall be alike the current LOADfile, but it shall be limited to the configuration of the application.
If application data is stored in a data base, information required for connection to the data base shall also be seen as part of the configuration, which is to be stored in the CONFIG.
If application data is stored in one or several files, name and location of the of these files shall also be seen as part of the configuration, which is to be stored in the CONFIG.
Particularly the Profile section shall be reduced to profile instances that represent configuration information, but not application data.
Secrets like operation-keys shall be encrypted.
The CONFIG shall still define the initiation state of the application.
It will be provided as a part of the individual specification.
Its data structure shall follow the ONF information modelling structure.

APPDATA:

It shall contain the application data.
Content and structure shall be encapsulated by the individual application implementation.
It will not be part of the specification.
There will be no pre-defined initiation state of the application.
In case there is existing file/database at start of application, it will be used. Otherwise the application will create one.
There is no modelling structure prescribed, but the implementer has to provide open documentation.

In the decision made on 20th of May 2022 it is stated:
.

APPDATA : applicationName.json (or multiple files also of different file formats) or database (applicationName.*)

Last part of the text implies every application potentially owning an individual database with an individual name in its folder or container.
Later it has been decided that all or several applications will share the same database instance and access by REST interface.
An ElasticsearchClient has been defined for that purpose in issue #235.
This change in the OAS does not lead to any change in the CONFIGfile of the ApplicationPattern, because it is individual to the respective application, whether it connects to one or even several databases.
.

If application data is stored in one or several files, name and location of the of these files shall also be seen as part of the configuration, which is to be stored in the CONFIG.

An FileProfile for storing such data has been defined in issue #287.
This change in the OAS does not lead to any change in the CONFIGfile of the ApplicationPattern, because it is individual to the applications, whether it uses one or even several files for storing application data.
.

Particularly the Profile section shall be reduced to profile instances that represent configuration information, but not application data.

A separate issue #289 has been created for tracking of the removal of obsolete Profile definitions and instances from the ApplicationPattern specification, incl. the CONFIGfile


Czech Republic is now Czechia

I mean, officially it has been for years but in the actual Partner Center options it now appears as 'Czechia', not 'Czech Republic' as listed here.

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

ID: 379c0973-6812-4fc7-d53c-9383fb1e44c6
Version Independent ID: 3a7d1d55-bb6f-3545-73af-01aee1c69f07
Content: Define market selection - UWP applications
Content Source: windows-apps-src/publish/define-market-selection.md
Product: uwp
Technology: publish
GitHub Login: @hickeys
Microsoft Alias: hickeys

@hickeys confirmed that Microsoft Partner Center uses Czechia as issue describes.
According to the UN country name list it's either "the Czech Republic" (long) or "Czechia" (short).
According to PCGN the short name should indeed be used as of April 2016.
Will send a PR to correct all instances.