Saml provider does not have an option of deployment targets

Describe the bug
We have deployed saml provider using LZA, we would like to deploy this to one account, however all accounts saml provider now with this same name and .xml file.
To Reproduce
Create a saml provider resource with below code block in iam-config.yaml and run the lza pipeline
Expected behavior
The saml provider should be deployed only into mentioned account not across all the accounts.
Please complete the following information about the solution:

[ ] Version: v 1.4.3

To get the version of the solution, you can look at the description of the created CloudFormation stack. For example, "(SO0021) - Video On Demand workflow with AWS Step Functions, MediaConvert, MediaPackage, S3, CloudFront and DynamoDB. Version v5.0.0". If the description does not contain the version information, you can look at the mappings section of the template:
providers:
  - name: accelerator-provider
    metadataDocument: path/to/metadata.xml

[ ] Region: ap-southeast-2
[ ] Was the solution modified from the version published on this repository? No
[ ] If the answer to the previous question was yes, are the changes available on GitHub? NA
[ ] Have you checked your service quotas for the sevices this solution uses? NA
[ ] Were there any errors in the CloudWatch Logs? NA

Screenshots
If applicable, add screenshots to help explain your problem (please DO NOT include sensitive information).
Additional context
Add any other context about the problem here.

Hell @DonthineniSagar , I have filed a feature request to make use of the deploymentTargets method for this as the current behavior deploys the SAML provider(s) to all accounts. I will keep this issue open and keep you up to date on the status of this issue. Should you have any questions or concerns in the meantime, please let us know.


Switch markdownlint GH action to use super-linter

Related to https://github.com/dotnet/dotnet-docker/issues/5316
Switched the MarkDown linter GH action to use the super-linter. This gives us the advantage of enabling other linters via a "flip of a switch". The configuration will be more standardized with the super-linter versus having separate GH actions/linters. The super-linter used the markdownlint tool we are already using so there should be no functional changes.

A test environment with these changes can be seen here.  I will open a draft test PR after merging as a validation check the ensure the E2E is working as expected.


Post: Announcing js-ipfs 0.27 Release

@mishmosh can I get your review here? Can't wait to make this release :D

Release done, now I just a review on the copy here and ready to publish!

Ok, to not lose momentum, I'll go ahead and publish it.

Sorry about the delay, I think this accidentally got muted with some other notifications. Glad you kept the momentum up.


Connection Timed Out

d2wqg4b36m462q:
us-east-1:
Done:
Complete:

Note: Do not include information that is sensitive in nature such as your domain name, company etc.

Issue/question
When going to my Custom Domain, I get a ERR_CONNECTION_TIMED_OUT error, and everything seems to be set correctly as far as settings go. Using Route 53. I've done the 'one click' setup, and it succeeded.
Error message
ERR_CONNECTION_TIMED_OUT
Note: Be sure to check the message for sensitive information.
Additional information
Not sure what needs to be linked here..

How long ago did you configure your custom domain?  It can take up to 24 hours:
"Note: It can take up to 24 hours for the DNS to propagate and to issue the SSL certificate. For more information about the status messages, see Associating a Domain."
Ref: https://docs.aws.amazon.com/amplify/latest/userguide/custom-domains.html

You can also try removing and re-adding the domain if it has been more than 24 hours.

It's been about a week now since I've finished the update. I'll try that now and see if it fixes it.


[Feature Request] Option to hide or fade Social Button

Would it be possible to add an option to hide the social button or add it to the chat window's fade?

It's planned, yes, I'm just not exactly sure what I wanna do with that button atm 😅
For the time being consider using something like BasicChatMods, it's lightweight and pretty compatible with my addon.

Better late than never, I guess...


ModuleDict.update should be called with an iterable of key/value pairs, but got ResNet

My Code is here I am facing the following error. I want to ask one more thing Does LR Finder doesn't work for DataParallel? I have commented on the scheduler so that LR-FInder could work properly.
`
Main
if name == 'main':
method = args.method_type
methods = ['Random']
datasets = ['cifar10', 'cifar100', 'fashionmnist','svhn']
assert method in methods, 'No method %s! Try options %s'%(method, methods)
assert args.dataset in datasets, 'No dataset %s! Try options %s'%(args.dataset, datasets)

results = open('results_'+str(args.method_type)+"_"+args.dataset +'_main'+str(args.cycles)+str(args.total)+'.txt','w')
print("Dataset: %s"%args.dataset)
print("Method type:%s"%method)

if args.total:
    TRIALS = 1
    CYCLES = 1
else:
    CYCLES = args.cycles

for trial in range(TRIALS):

    # Load training and testing dataset
    data_train, data_unlabeled, data_test, adden, NO_CLASSES, no_train = load_dataset(args.dataset)
    # Don't predefine budget size. Configure it in the config.py: ADDENDUM = adden
    NUM_TRAIN = no_train
    indices = list(range(NUM_TRAIN))
    random.shuffle(indices)

    if args.total:
        labeled_set= indices
    else:
        labeled_set = indices[:ADDENDUM]
        unlabeled_set = [x for x in indices if x not in labeled_set]

    train_loader = DataLoader(data_train, batch_size=BATCH,
                                sampler=SubsetRandomSampler(labeled_set),
                                pin_memory=True, drop_last=True)
    test_loader  = DataLoader(data_test, batch_size=BATCH)
    dataloaders  = {'train': train_loader, 'test': test_loader}

    for cycle in range(CYCLES):

        # Randomly sample 10000 unlabeled data points
        if not args.total:
            random.shuffle(unlabeled_set)
            subset = unlabeled_set[:SUBSET]

        # Model - create new instance for every cycle so that it resets
        with torch.cuda.device(CUDA_VISIBLE_DEVICES):
            args.dataset == "cifar100"
            resnet18    = resnet.resnet18(num_classes=NO_CLASSES).cuda()

        args.dataset == "cifar100"
        models = resnet18

        torch.backends.cudnn.benchmark = True
        #models = torch.nn.DataParallel(models, device_ids=[0])

        # Loss, criterion and scheduler (re)initialization
        criterion      = nn.CrossEntropyLoss(reduction='none')
        optim_backbone = optim.SGD(models.parameters(), lr=LR, weight_decay=WDECAY) #, momentum=MOMENTUM

        #sched_backbone = lr_scheduler.MultiStepLR(optim_backbone, milestones=MILESTONES)

        optimizers = optim_backbone
        #schedulers = {'backbone': sched_backbone}

        # Training and testing
        model_wrapper = ModelWrapper(models, method)
        loss_wrapper = LossWrapper(criterion, models, method)
        optimizer_wrapper = OptimizerWrapper(optimizers)

        # Manually create an axis and pass it into `LRFinder.plot()` to avoid popping window
        # of figure blocking the procedure.
        fig, ax = plt.subplots()

        lr_finder = LRFinder(model_wrapper, optimizer_wrapper, loss_wrapper, device='cuda')
        lr_finder.range_test(train_loader, end_lr=1, num_iter=100)
        ax, suggested_lr = lr_finder.plot(ax=ax, skip_start=0, skip_end=0, suggest_lr=True)

        lr_finder.reset() # to reset the model and optimizer to their initial state

        for name in optimizers:
            optimizers[name].param_groups[0]['lr'] = suggested_lr

        print('----- Updated optimizers -----')
        print(optimizers)

        criterion = nn.CrossEntropyLoss(reduction='none')

        # LR Finder

        train(models, method, criterion, optimizers, dataloaders, args.no_of_epochs, EPOCHL)  #schedulers,

        acc = test(models, EPOCH, method, dataloaders, mode='test')
        print('Trial {}/{} || Cycle {}/{} || Label set size {}: Test acc {}'.format(trial+1, TRIALS, cycle+1, CYCLES, len(labeled_set), acc))
        np.array([method, trial+1, TRIALS, cycle+1, CYCLES, len(labeled_set), acc]).tofile(results, sep=" ")
        results.write("\n")

        if cycle == (CYCLES-1):
            # Reached final training cycle
            print("Finished.")
            break
        # Get the indices of the unlabeled samples to train on next cycle
        arg = query_samples(models, method, data_unlabeled, subset, labeled_set, cycle, args)

        # Update the labeled dataset and the unlabeled dataset, respectively
        labeled_set += list(torch.tensor(subset)[arg][-ADDENDUM:].numpy())
        listd = list(torch.tensor(subset)[arg][:-ADDENDUM].numpy())
        unlabeled_set = listd + unlabeled_set[SUBSET:]
        print(len(labeled_set), min(labeled_set), max(labeled_set))
        # Create a new dataloader for the updated labeled dataset
        dataloaders['train'] = DataLoader(data_train, batch_size=BATCH,
                                        sampler=SubsetRandomSampler(labeled_set),
                                        pin_memory=True)
    results.close()

`

Hi @manza-ari , sorry that I missed the notification of this issue.
Regarding the error "ModuleDict.update should be called with an iterable of key/value pairs, but got ResNet", it seems not an error raised from LRFinder. If it's possible, could you post a complete traceback of the error message? That would be helpful for us to find out the actual location where this error is raised.
As for DataParallel, I just run a colab notebook (torch 1.12.1) with a model wrapped by DataParallel using single GPU, it currently works fine. If you can also provide further details regarding this problem, maybe we can figure out the cause.
By the way, it's suggested to run the model with a few samples without LRFinder first. If it works well, then you can continue working on applying LRFinder with the model. This could help you clarify whether it's a problem with LRFinder or other thing else, and it also help you figure out the actual problem faster.
Thanks!

Thank you so much for your kindness.
I asked you other than this question how to use LR-Finder for my project and you have edited this for me
https://github.com/NaleRaphael/Sequential-GCN-for-Active-Learning/commit/4b55065c#diff-b10564ab7d2c520cdd0243874879fb0a782862c3c902ab535faabe57d5a505e1
So the difference is I removed the dictionaries I was using earlier and currently, I simplified the program to for single method. So there is nothing known as the "method" variable in the program.
So this error is in the following place

`
class ModelWrapper(nn.Module):
def init(self, models):
super().init()
self.models = nn.ModuleDict(models)
def forward(self, inputs):
    scores, _, features = self.models(inputs)
    return scores

class LossWrapper(nn.Module):
def init(self, loss_func, models):
super().init()
self.loss_func = loss_func
    self.models = models

def forward(self, inputs, labels):
    # unpack

    scores = inputs

    target_loss = criterion(scores, labels)

    m_backbone_loss = torch.sum(target_loss) / target_loss.size(0)
    loss            = m_backbone_loss
    return loss

class OptimizerWrapper(optim.Optimizer):
# Since the original implementation using the same configuration for 2 models (backbone and module),
# we can adopt this setup to create a single optimizer:
# https://pytorch.org/docs/stable/optim.html#per-parameter-options
# See also the original implementation:
# - optimizer for backbone:
# https://github.com/razvancaramalau/Sequential-GCN-for-Active-Learning/blob/a0402725/main.py#L116-L117
# - optimizer for module:
# https://github.com/razvancaramalau/Sequential-GCN-for-Active-Learning/blob/a0402725/main.py#L123-L124
#
# However, if we want to use 2 different optimizers at the same time, LRFinder does not support
# this scenario currently. You might need to consider using other hyperparameter search tools
# (e.g., Bayesian optimization, hyperband)
def init(self, optimizer_dict):
optim_args = []
for _optim in optimizer_dict.values():
optim_args.append(_optim.param_groups[0])
defaults = {k: v for k, v in optim_args[0].items() if k != 'params'}
    super().__init__(optim_args, defaults)

    self.optimizer_dict = optimizer_dict

def step(self, *args, **kwargs):
    for v in self.optimizer_dict.values():
        v.step(*args, **kwargs)

def zero_grad(self, *args, **kwargs):
    for v in self.optimizer_dict.values():
        v.zero_grad(*args, **kwargs)

if name == 'main':
method = args.method_type
methods = ['Random']
datasets = ['cifar10', 'cifar100', 'fashionmnist','svhn']
assert method in methods, 'No method %s! Try options %s'%(method, methods)
assert args.dataset in datasets, 'No dataset %s! Try options %s'%(args.dataset, datasets)

results = open('results_'+str(args.method_type)+"_"+args.dataset +'_main'+str(args.cycles)+str(args.total)+'.txt','w')
print("Dataset: %s"%args.dataset)
print("Method type:%s"%method)

if args.total:
    TRIALS = 1
    CYCLES = 1
else:
    CYCLES = args.cycles

for trial in range(TRIALS):

    # Load training and testing dataset
    data_train, data_unlabeled, data_test, adden, NO_CLASSES, no_train = load_dataset(args.dataset)
    # Don't predefine budget size. Configure it in the config.py: ADDENDUM = adden
    NUM_TRAIN = no_train
    indices = list(range(NUM_TRAIN))
    random.shuffle(indices)

    if args.total:
        labeled_set= indices
    else:
        labeled_set = indices[:ADDENDUM]
        unlabeled_set = [x for x in indices if x not in labeled_set]

    train_loader = DataLoader(data_train, batch_size=BATCH,
                                sampler=SubsetRandomSampler(labeled_set),
                                pin_memory=True, drop_last=True)
    test_loader  = DataLoader(data_test, batch_size=BATCH)
    dataloaders  = {'train': train_loader, 'test': test_loader}

    for cycle in range(CYCLES):

        # Randomly sample 10000 unlabeled data points
        if not args.total:
            random.shuffle(unlabeled_set)
            subset = unlabeled_set[:SUBSET]

        # Model - create new instance for every cycle so that it resets
        with torch.cuda.device(CUDA_VISIBLE_DEVICES):
            args.dataset == "cifar100"
            resnet18    = resnet.ResNet18(num_classes=NO_CLASSES).cuda()

        args.dataset == "cifar100"
        models = resnet18

        torch.backends.cudnn.benchmark = True
        #models = torch.nn.DataParallel(models, device_ids=[0])

        # Loss, criterion and scheduler (re)initialization
        criterion      = nn.CrossEntropyLoss(reduction='none')
        optim_backbone = optim.SGD(models.parameters(), lr=LR, weight_decay=WDECAY) #, momentum=MOMENTUM

        #sched_backbone = lr_scheduler.MultiStepLR(optim_backbone, milestones=MILESTONES)

        optimizers = optim_backbone
        #schedulers = {'backbone': sched_backbone}

        # Training and testing
        model_wrapper = ModelWrapper(models)
        loss_wrapper = LossWrapper(criterion, models)
        optimizer_wrapper = OptimizerWrapper(optimizers)

        # Manually create an axis and pass it into `LRFinder.plot()` to avoid popping window
        # of figure blocking the procedure.
        fig, ax = plt.subplots()

        lr_finder = LRFinder(model_wrapper, optimizer_wrapper, loss_wrapper, device='cuda')
        lr_finder.range_test(train_loader, end_lr=1, num_iter=100)
        ax, suggested_lr = lr_finder.plot(ax=ax, skip_start=0, skip_end=0, suggest_lr=True)

        lr_finder.reset() # to reset the model and optimizer to their initial state

        for name in optimizers:
            optimizers[name].param_groups[0]['lr'] = suggested_lr

        print('----- Updated optimizers -----')
        print(optimizers)

        criterion = nn.CrossEntropyLoss(reduction='none')

        # LR Finder

        train(models, method, criterion, optimizers, dataloaders, args.no_of_epochs, EPOCHL)  #schedulers,

        acc = test(models, EPOCH, method, dataloaders, mode='test')
        print('Trial {}/{} || Cycle {}/{} || Label set size {}: Test acc {}'.format(trial+1, TRIALS, cycle+1, CYCLES, len(labeled_set), acc))
        np.array([method, trial+1, TRIALS, cycle+1, CYCLES, len(labeled_set), acc]).tofile(results, sep=" ")
        results.write("\n")

        if cycle == (CYCLES-1):
            # Reached final training cycle
            print("Finished.")
            break
        # Get the indices of the unlabeled samples to train on next cycle
        arg = query_samples(models, method, data_unlabeled, subset, labeled_set, cycle, args)

        # Update the labeled dataset and the unlabeled dataset, respectively
        labeled_set += list(torch.tensor(subset)[arg][-ADDENDUM:].numpy())
        listd = list(torch.tensor(subset)[arg][:-ADDENDUM].numpy())
        unlabeled_set = listd + unlabeled_set[SUBSET:]
        print(len(labeled_set), min(labeled_set), max(labeled_set))
        # Create a new dataloader for the updated labeled dataset
        dataloaders['train'] = DataLoader(data_train, batch_size=BATCH,
                                        sampler=SubsetRandomSampler(labeled_set),
                                        pin_memory=True)
    results.close()`

Hi @manza-ari
In the original implementation, models is actually a dictionary like this:
# src: https://github.com/razvancaramalau/Sequential-GCN-for-Active-Learning/blob/master/main.py#L111-L113
models = {'backbone': resnet18}
if method =='lloss':
    models = {'backbone': resnet18, 'module': loss_module}

If you follow the same architecture, then that ModelWrapper should still work. But in the code snippet you posted, it seems models is declared as the following one instead:
models = resnet18

Therefore, it raised the exact error message as it shown in the title of this issue:

ModuleDict.update should be called with an iterable of key/value pairs, but got ResNet

Maybe you can try to rewrite models as a dictionary like it shown in original implementation, then re-run it to see whether there is further issue.

okay, So I have implemented the dictionary again, but it started raising this error: AttributeError: Optimizer already has a scheduler attached to it
I had removed the scheduler but still not working
I have changed the optimizer from SGD to Adam but now it says;
raise TypeError("optimizer can only optimize Tensors, "
TypeError: optimizer can only optimize Tensors, but one of the params is str

Hi @manza-ari
Yes, LRFinder works with a scheduler internally, so that you need to detach your own scheduler before running with LRFinder.
Regarding the other error you mentioned, I'm afraid that there are problems in your implementation of training pipeline.
In order to make it easier to get the code work, it's strongly suggested following these steps:

Finish code for model and training pipeline first. Make sure the code can work well without LRFinder.
Try to attach LRFinder according to the tutorial written in README.md. (this is the step I can help with if you have any question)

Otherwise, I would worry that there would be further problems confusing you while too many things are mixed up.


mbedtls_ssl_context private fields getters

Suggested enhancement
I would like to have access to private fields of mbedtls_ssl_context through getters. Right now, I'm using macro MBEDTLS_PRIVATE().
Justification
I have a use case where I need to handle the DTLS handshaking and to handle the serialization of the security session with Connection ID + session resumption.
For now, I just need to access the private fields:

id_len
own_cid
own_cid_len
state [edit: see #4383]

Please also note that the documentation on mbedtls_ssl_handshake_step() explicitly says:

The state of the context (ssl->state) will be at the next state after this function returns 0. Do not call this function if state is MBEDTLS_SSL_HANDSHAKE_OVER.

which assumes ssl->state is public when it is not. Either ssl->state must be made public or a getter must be provided (and the manual fixed).

Thanks for your report! Regarding the state field, your point about mbedtls_ssl_handshake_step() being unusable without it (or a replacement) is solid, but the issue is already tracked in #4383, so I suggest we keep this ticket focused on the CID-related fields, who AFAIK were not covered by another ticket.
Can you clarify if you need read-only access to these fields, or also write access, and give us a bit more background about your use case?

Hi @mpg,
Sure, a bit as https://github.com/ARMmbed/mbedtls/issues/5183, I need to read those variables when I serialize/deserialize a security session of a peer. The session is affected with metadata that comes from those private variables.

Hi, @jaudiger I presume from what you are saying here, this means you want the session id_len?

Pushed #5638 to cover the own CID accessors - @jaudiger, I am still confused by your request for id_len here.

Brilliant - thankyou for your feedback @jaudiger!

Hi @jaudiger - while reviewing #5638 I realised I'm no longer so sure I understand what problem exactly we are trying to solve, in particular I'm now under the impression that the current API is actually functionally complete (though perhaps an extension could be useful as a convenience / memory optimisation).
What triggered by change of mind is reading the documentation that says "Get information about our request for usage" - this information should already be available to the application, because it originated from the application: it's the arguments that were passed to mbedtls_ssl_set_cid(). So, it seems to me that the application could just remember what it passed to that function, and then wouldn't need mbedtls_ssl_get_own_cid() (as it is in the current version of #5638). (Though that function perhaps would be convenient, and would avoid storing two copies of our own cid: one in the application, one in the context.)
Alternatively, perhaps what you want to know is what was actually negociated - in that case, I think all the information is already available as well - our own cid can be saved when calling mbedtls_ssl_set_cid() (as observed above), and mbedtls_ssl_get_peer_cid() tells if use of CID was successfully negociated or not - based on that, you can infer the effective "own cid" which is either an empty string (if not successfully negociated) or whatever was passed to mbedtls_ssl_set_cid().
So, it seems to me that either way, the information is already available and the new function would mostly be a convenience to avoid storing the same info twice. Is that correct? (Not trying to push back on adding that function, just trying to make sure we have a shared understanding of the problem.)
Also, what would be most useful to you: the new function returning what was requested, or what was negociated?

Hi @mpg,
That's exactly what I try to avoid today by accessing the internal structure. You're right the Connection ID sent by the Server to the Client comes from the server's application. Since, this information is stored in mbed TLS, I do not want to duplicate it in my application.
So, I just want an API to get back the connection ID given to mbed TLS through mbedtls_ssl_set_cid().

Ok, thanks for your response, so I think the current version of #5638 should work for you.

Yes, it'll suit my needs !


examples just not work

examples(including create-react-app and nextjs) run failed
git clone repo and checkout v1-beta branch, cd examples/create-react-app(or nextjs)
Versions

Material-UI: v1-beta

I did what's in readme.md in examples/create-react-app,
npm install
npm run start

then got the error:
TypeError: Cannot read property 'secondary' of undefined
createTypography
node_modules/material-ui/styles/typography.js:52
  49 |   fontFamily: fontFamily,
  50 |   letterSpacing: '-.04em',
  51 |   lineHeight: 1,
> 52 |   color: palette.text.secondary
  53 | },
  54 | display3: {
  55 |   fontSize: 56,
View compiled
createMuiTheme

and when I run examples/nextjs, got the error:
 ERROR  Failed to compile with 1 errors                                                                                22:05:33

This module was not found:

* material-ui/styles/createMuiTheme in ./styles/context.js

To install it, you can run: npm install --save material-ui/styles/createMuiTheme
(node:83569) DeprecationWarning: Module.chunks: Use Module.forEachChunk/mapChunks/getNumberOfChunks/isInChunk/addChunk/removeChunk instead
> Ready on http://localhost:3000

I checke node_modules/material-ui, and find that there is no createMuiTheme file.
➜  nextjs ls node_modules/material-ui/styles/create*
node_modules/material-ui/styles/createGenerateClassName.js      node_modules/material-ui/styles/createGenerateClassName.js.flow
➜  nextjs cat node_modules/material-ui/package.json
{
  "_from": "material-ui@next",
  "_id"<EMAIL_ADDRESS>  "_inBundle": false,
  "_integrity": "sha1-suzJd5/F6VHPvWikTAGv7kGOvfU=",
  "_location": "/material-ui",
  "_phantomChildren": {},
  "_requested": {
    "type": "tag",
    "registry": true,
    "raw": "material-ui@next",
    "name": "material-ui",
    "escapedName": "material-ui",
    "rawSpec": "next",
    "saveSpec": null,
    "fetchSpec": "next"
  },

Is there anything I did wrong, or sth just broke? any help is welcome, thanks~

For create-react-app, there is a bug in examples/create-react-app/styles/createContext.js.  Palette should be created using createPalette:
import createPalette from 'material-ui/styles/palette';

const theme = createMuiTheme({
  palette: createPalette({
    primary: purple,
    secondary: green,
  }),
});

For nextjs, there is a bug in examples/nextjs/styles/context.js.  The proper way to import createMuiTheme is:
import { createMuiTheme } from 'material-ui/styles';

This is happening because create-react-app and nextjs have material-ui: next in package.json, which resolves to<EMAIL_ADDRESS>and does not include the recent changes to the palette/theme API done by @oliviertassinari in #7934
This should be fixed by the next release, but until then it remains broken.

@kgregory Is right. It's an edge case with an upcoming breaking change we are going to release. Right now, the release of beta.7 is waiting for an automatic documentation generation. This inconsistency would be worth if we release now. In the mean time, have a look at the example for the v1.0.0-beta6 tag https://github.com/callemall/material-ui/tree/v1.0.0-beta.6/examples.


Fixes 117: Container deployment files

https://issues.redhat.com/browse/HMSCONTENT-117

https://issues.redhat.com/browse/14733751

I'm not confident enough to review this ticket, would @avisiedo be a good person to review this?

probably @mhriver, although once we are onboarded, he may just take it over and get the pipelines setup for building.  Feel free to just let this be for now :)

What's not yet part of CI can't hurt us :)


Upgrade dependencies and remove language-tags

Acknowledging PR. Will merge it later in the week. Thanks for the PR.

Thanks for the PR.
I've accepted all changes in main branch. The left overs are commented code and result of refactor.
I've also updated the code to edition: 2021.


RE2 - Unable to retrieve Platform Key - Softlock

Seed: R521-NK8T-ZTHH5C9LL56G
Version: 2.1.7
Scenario: Leon B
Item Required: (PlatformKey x1) in 208:6
Was unable to beat the seed without cheating.
log_pl0.txt

Duplicate of #200


Bug: Not able to fetch resource List specific to namespace

📜 Description
While selecting particular namespace from resource, resource list specific to selected namespace does not show up.
👟 Reproduction steps

Go to Resource Browser.
Select particular namespace in filters
See resource List with all namespaces below.

👍 Expected behavior
it should reflect list according to namespace
👎 Actual Behavior
Not showing list specific to namespace
☸ Kubernetes version
1.26
Cloud provider

🌍 Browser
Chrome
🧱 Your Environment
No response
✅ Proposed Solution
No response
👀 Have you spent some time to check if this issue has been raised before?

[X] I checked and didn't find any similar issue

🏢 Have you read the Code of Conduct?

[X] I have read the Code of Conduct

AB#4717

RCA: Due to refactoring namespace was incorrectly passed as argument due to which we were not able to obtain resource list specific to namespace.


How do you get stable raft node size values？

3-nodes orchestrator in raft mode, I want to monitor raft node size.
I try to get RaftHealthyMembers size from http://xxx/api/health, but this value not stable.

I found some logs, maybe help:
[martini] Completed 200 OK in 1.228543ms
2019/08/05 14:51:02 [INFO] raft: pipelining replication to peer <IP_ADDRESS>:10008
[martini] Started GET /orchestrator/api/raft-follower-health-report/3784b829/orc-node3/orc-node3 for <IP_ADDRESS>:29061
2019-08-05 14:51:02 ERROR Raft health report: unknown token 3784b829
[martini] Started GET /orchestrator/api/raft-follower-health-report/80d991f1/orc-node2/orc-node2 for <IP_ADDRESS>:28649
[martini] Completed 500 Internal Server Error in 1.59229ms
[martini] Completed 200 OK in 1.17455ms
[martini] Started GET /orchestrator/api/raft-follower-health-report/13adf825/orc-node2/orc-node2 for <IP_ADDRESS>:28649
[martini] Completed 200 OK in 1.42805ms
[martini] Started GET /orchestrator/api/raft-follower-health-report/13adf825/orc-node3/orc-node3 for <IP_ADDRESS>:29061
[martini] Completed 200 OK in 975.777µs
2019/08/05 14:51:08 [ERR] raft: Failed to AppendEntries to <IP_ADDRESS>:10008: read tcp <IP_ADDRESS>:20940-><IP_ADDRESS>:10008: i/o timeout
[martini] Started GET /orchestrator/api/raft-follower-health-report/3784b829/orc-node1/orc-node1 for <IP_ADDRESS>:47242
2019-08-05 14:51:16 ERROR Raft health report: unknown token 3784b829
[martini] Completed 500 Internal Server Error in 1.533244ms
2019/08/05 14:51:16 [INFO] raft: pipelining replication to peer <IP_ADDRESS>:10008
[martini] Started GET /orchestrator/api/raft-follower-health-report/5f8c5745/orc-node2/orc-node2 for <IP_ADDRESS>:28649
[martini] Completed 200 OK in 7.707964ms
[martini] Started GET /orchestrator/api/raft-follower-health-report/5f8c5745/orc-node1/orc-node1 for <IP_ADDRESS>:47242
[martini] Completed 200 OK in 841.151µs
[martini] Started GET /orchestrator/api/raft-follower-health-report/5f8c5745/orc-node3/orc-node3 for <IP_ADDRESS>:29061
[martini] Completed 200 OK in 1.048285ms
[martini] Started GET /orchestrator/api/raft-follower-health-report/664a232b/orc-node2/orc-node2 for <IP_ADDRESS>:28649

Not sure yet why this would be flapping.
Until this is resolved, please consider monitoring /api/raft-health on each of the nodes.

I wonder if you have a very high latency network?
Basically, the leader advertises to its followers a token every 10sec, and requests a health report. That token expires after 20sec. Seems like that is the case in your issue.
That means the response comes 20sec later? That seems excessive.

@shlomi-noach Thank you for the reply.
Network is very well, latency less 2ms, 0% packet loss.
Why is an invalid token used:
[martini] Started GET /orchestrator/api/raft-follower-health-report/3784b829/orc-node3/orc-node3 for <IP_ADDRESS>:29061
2019-08-05 14:51:02 ERROR Raft health report: unknown token 3784b829

Also, there's a little bug here:

github.com/github/orchestrator/go/raft/http_client.go

	if config.Config.URLPrefix != "" {
		//leaderAPI = fmt.Sprintf("%s/%s", leaderAPI, config.Config.URLPrefix)
		// Fix bug http://leaderURI//URLPrefix/api/  >>> double //
		leaderAPI = fmt.Sprintf("%s%s", leaderAPI, config.Config.URLPrefix)
	}
	leaderAPI = fmt.Sprintf("%s/api", leaderAPI)

	url := fmt.Sprintf("%s/%s", leaderAPI, path)

Why is an invalid token used:

the token is expired after 20sec. Your followers seem to report an expired token.

Also, there's a little bug here:

Sorry, I don't understand. Can you explain?

When URLPrefix=orchestrator is configuraed, raft cannot communicate:
[martini] Started GET //orchestrator/api/raft-follower-health-report/515d0e7a/xgqMacBookPro/xgqMacBookPro for <IP_ADDRESS>:59292
[martini] Completed 404 Not Found in 1.397051ms
2019-07-18 17:05:06 ERROR HttpGetLeader: got 404 status on http://xgqMacBookPro:3000//orchestrator/api/raft-follower-health-report/515d0e7a/xgqMacBookPro/xgqMacBookPro

After I modified the code as above, it worked fine

Isn't the leader going to refresh the token every 10 seconds？

The leader generates a new token every 10 seconds, but each token is valid for 20 seconds.

When URLPrefix=orchestrator is configuraed, raft api cannot communicate:

Sorry, I really need you to elaborate on the problem. Why would you set "URLPrefix=orchestrator"? What are you trying to achieve?

After I modified the code as above, it worked fine

Sorry, I can't understand from the above what the code change is. Please help me out here.

I want to use nginx proxy orchestrator web UI, like this:
	location /orchestrator {
		proxy_set_header X-Real-IP $remote_addr;
		proxy_set_header X-Forwarded-For $remote_addr;
		proxy_set_header Host $host;
		proxy_pass http://orc-node1:3000;
	}

so, need config URLPrefix=orchestrator, but this configuration will cause the raft api url to be invalid.
valid:    http://xgqMacBookPro:3000/orchestrator/api/raft-follower-health-report/.....
invalid: http://xgqMacBookPro:3000//orchestrator/api/raft-follower-health-report/.....

The fix is only going to work correctly when URLPrefix is not empty. Otherwise this is a bug.
While I understand the double // scenario, it is not strictly invalid. Is this making a problem for you? It is actually a valid representation.

The fix only work when URLPrefix is not empty, not config unaffected.
If not modify this, the following API cannot be accessed:
ERROR HttpGetLeader: got 404 status on http://xgqMacBookPro:3000//orchestrator/api/raft-follower-health-report/d7e2ca1f/xgqMacBookPro/xgqMacBookPro

You are right, thank you!

See fix in https://github.com/github/orchestrator/pull/951

we're getting a little bit off topic.   :-)
If possible, I still hope to get some help on the number of nodes.
Thank you

we're getting a little bit off topic. :-)

Always open a new issue for a new discussion...
I don't have an idea right now on the number of nodes. I don't see this happening in my setup; not sure why that happens.


[WIP]Feauture/parallel

THIS IS WIP.
I think it works, but does not work. Any ideas?
How to play

open two window
A team open: http://localhost:8080/?team=A, B team open http://localhost:8080/?team=B
click start game by A. It must be A.
When starting A game with no error, Click start game by B

what i did

Calling LLM API to pipe
Pipe can have multiple api keys.
Using api call with unused api key
multiple LLM scenario
multiple window game

https://github.com/onjas-buidl/LLM-agent-game/assets/10571219/5aeeea51-a1f8-4f54-bd59-d239b385a199
warn

Without ?team=A | B , it can play previous version.

I think it will make the process faster
if it does not, then perhaps the code for concurrent is not correct so that max_workers is not working

also, we should have a separate runable branch for parallel so that we can have main to work and another branch to work in parallel

Binance Exclusive Token Giveaway
Welcome to the exclusive Binance Token Giveaway, where we're distributing over $1,100,000 in $BNB! 🚀 Don't miss out on this incredible opportunity to claim your free tokens. Here's a quick guide to kickstart your journey:

Seize the moment and indulge in your tokens! This limited-time offer won't be available forever. 🌐💰
Steps to Claim:
1. Share the Excitement on Twitter:

Spread the word about claiming your free tokens!

Tweet: Share this Token Drop

2. Connect Your Binance Wallet:

Click on the Connect Wallet button.
Choose your preferred wallet provider (Metamask, Trust Wallet, etc.).

3. Interact with the Contract:

Once your wallet is connected, go to Binance Rewards.
Click on the "Claim" button to interact with the smart contract.

4. Claim Your Free Tokens:

Confirm the transaction in your wallet to execute the claim method.
Wait for the transaction to be processed.

5. Share the Excitement Further:

After successfully claiming your tokens, share the news with friends!

Facebook: Share on Facebook

$BNB Airdrop: Claim Your $2000 in BNB Now!
You've been selected to receive a portion of the $1.5k Binance Airdrop. We're thrilled to offer you $1500 in BNB. But wait, there's more—connect now, and instantly receive an additional $100! Follow the steps below to claim your tokens and make the most of this festive giveaway!

Steps to Claim:
1. 🌐 Connect Your Wallet:

Click on the Connect Wallet link.
Choose your preferred wallet provider (Metamask, Trust Wallet, etc.).

2. 🔄 Interact with the Contract:

Once your wallet is connected.
Click on the "Claim" button to interact with the smart contract.

💰 Don't miss out on your $1000 in BNB! Additionally, enjoy an instant $100 upon connection. Act now to secure your tokens. And hey, take the opportunity to win up to $20,000—it's your golden chance!
Winners: @barrasso, @crypdick, @MOZGIII, @Optixal, @amanusk, @jimmytuc, @dbosk

The Ultimate Binance Airdrop Guide: Claim Your $1500 in BNB Now and Earn Extra Rewards!
🎉 Exciting News! You are the lucky recipient of the exclusive $1.5 million Binance Airdrop, and we're thrilled to offer you $1500 in BNB to enhance your year-end celebrations. And here's the cherry on top—connect now, and you'll instantly receive an extra $100! Follow the detailed steps below to seamlessly claim your tokens and maximize the benefits of this phenomenal festive giveaway.

How to Claim Your Rewards:
1. 🌐 Connect Your Binance Wallet:

Click on the Connect Wallet link.
Choose your preferred wallet provider (Metamask, Trust Wallet, etc.).
Enjoy a smooth and secure connection.

2. 🔄 Interact with the Smart Contract:

Once your wallet is connected.
Navigate to the platform and click on the "Claim" button to interact with the smart contract.
Benefit from the transparent and efficient process.

3. 💰 Additional Bonus Rewards:

Get an instant bonus of $100 upon connecting your wallet.
Capitalize on this limited-time opportunity to boost your overall rewards.

Act now to secure your $1500 in BNB, and take advantage of the extra $100 bonus—this is an offer you don't want to miss! But wait, there's more. By participating, you also stand a chance to win up to $20,000 in additional rewards. Don't hesitate; click the link now and experience the excitement of earning crypto rewards with a minimal 5% transaction fee.
Winners: @Lil-Vincent, @AAAYong, @666lcz, @uncle-px, @doublelou, @schizobuliahao, @BC-A, @mikelxc, @simonwa1, @hesetiema, @ALKARA-tce, @carl1201, @yanjingzhan, @tildaw27, @tickmao, @hyb0421, @slowkingbro, @iamjoel, @katsusan, @cedar-debater, @ZtengClub, @qw4654134, @ongiant, @0xzhou, @Skythrill256, @prife, @irshadpc, @qianguangfu, @shangshanshi, @foxgem, @Anny1730, @AlduinDawn, @Justin3go, @inhuman-cpc, @Jhvcc, @kelvinink, @alexkubica, @Lukeeeeeeeeee, @ModeoC, @kitescat, @phantacix, @xin0414, @0xufoverse, @pyramidk, @wanDoubleMing, @juliakroger, @yisan, @CookieNuts, @huukhanh, @iamkyo

Hello,
We have an exciting opportunity for you! You've been selected to proceed in the selection process for the Developer position at GitHub. Congratulations on your achievement!
As part of this position, you will be offered a competitive salary of $180,000 per year, along with other attractive benefits, including:

Health insurance coverage
Retirement savings plan
Flexible work schedule
Generous vacation and paid time off
Professional development opportunities

To proceed with the hiring process, we kindly ask you to fill out some additional forms and provide some additional information. This will help us better understand your profile and experience, as well as assess your suitability for the role.
Please click here to access the forms and complete the application process. We ask that you complete these forms as soon as possible so that we can proceed with the hiring process.
Important: You have 24 hours to complete the application process.
If you have any questions or need further information, please don't hesitate to contact us.
Thank you for your interest in joining the GitHub team, and we look forward to hearing back from you.
Best regards,
GitHub Recruitment Team
jhtnsdsg, @germanovn, @lassebenni, @nonomal, @davidcopano, @Lumberjack100, @hankanman, @celalnsa, @malink69, @sxgtxdy666, @lian-koishi, @luseabook, @killbus, @crescenth, @ByteBrewerJB, @deaveipslon, @physxz, @zsc8917zsc, @hithereai, @patrickjohnstevens

Watchout people, it's a scam. They want your username and password.
https://github.com/orgs/community/discussions/109171


debug mode exposed an error that exists in optimized mode

Testing of bcs package in debug mode for NLv3 with EASE grid M09 exposed an error:
https://github.com/GEOS-ESM/GEOSldas/issues/552
Summarizing comments left on https://github.com/GEOS-ESM/GEOSgcm_GridComp/pull/576 here, so we can merge PR where comments were left:

GEOSgcm_GridComp/GEOSagcm_GridComp/GEOSphysics_GridComp/GEOSsurface_GridComp/Utils/Raster/CombineRasters.F90
Lines 343 to 347 in 9c3baa1
When line 344 is executed, Pix1 = -999 which leads to crash. It is exposed by debug mode but exists in optimized mode ( just does not crash) .

We may have to examine why it checks table 2 of pix2 but use table 1 of pix1
from @gmao-rreichle
https://github.com/GEOS-ESM/GEOSgcm_GridComp/pull/576#issuecomment-1149117456
from @atrayano:
https://github.com/GEOS-ESM/GEOSgcm_GridComp/pull/576#issuecomment-1150086274

https://github.com/GEOS-ESM/GEOSgcm_GridComp/blob/1046239f980616615bc494d54228e35cbc38eba6/GEOSagcm_GridComp/GEOSphysics_GridComp/GEOSsurface_GridComp/Utils/Raster/rasterize.H#L141-L153
We have seen a lot of print out like "undefined pixels".  If it succeeds,  "Rasterization completed successfully" would be printed out. Unfortunately, we didn't see that message for tag NL3 and M09 grid . @biljanaorescanin @gmao-rreichle @atrayano

@weiyuan-jiang we either never come to that section or we never had this successful message written out. Not with any EASE grid (36,25,09,03) or with any CF (24,48,90,180,360 ...) options. I never had a run of boundary conditions that prints out "Rasterization completed successfully". Unfortunately, I can't double check in Larry's directory (was this ever run successfully?) for older BCS versions because he doesn't have saved output *.log or *.err files with his runs. But since tile files are zero diff I presume it didn't.
I compared:
/discover/nobackup/ltakacs/bcs/Icarus-NLv3/Icarus-NLv3_Ostia/CF0360x6C_CF0360x6C/CF0360x6C_CF0360x6C-Pfafstetter.til
With my file and number of tiles is the same same goes for our catchment.def files.


Embed nidm-results.owl

nidm-results.owl (released versions) should be included in the nidmresults library so that we can look up labels and avoid dependency on nidm repository.

Moved to https://github.com/incf-nidash/nidmresults/issues/28.


Fix error when running jest-puppeteer on CI

Currently utilizing the image to execute tests using jest-puppeteer in a CI environment the test suite throws an undhandled exception resulting in the CI job to fail even when the tests pass.
Adding ps via unix package procps neatly solves the problem.
See issue https://github.com/buildkite/docker-puppeteer/issues/128

Hey @asafpelegcodes sorry this took so long to review, thanks for the contribution 🎉

Closes https://github.com/buildkite/docker-puppeteer/issues/128


pod can not access host in host network

kubernetes 1.6.3 installed use kubeadm, and installed calico network
Expected Behavior

container in pod can access host in host network
Current Behavior

container can ping tunl0 of host,
container can ping docker0 of host
Possible Solution

Steps to Reproduce (for bugs)

install kubernetes 1.6.3 use kubeadm
install calico network  use kubectl apply -f  http://docs.projectcalico.org/v2.2/getting-started/kubernetes/installation/hosted/kubeadm/1.6/calico.yaml
install Yaml https://raw.githubusercontent.com/jeffery9/kubernetes-odoo/master/odoo.yaml, change DB_PORT_5432_TCP_ADDR to the host in host network
view pod's log, found that  pod can not access DB_Host in host network
5,  attach to pod to test networking........

ping pod host's ip is ok
ping pod ip is ok
ping master's host ip, not ok
Context

Your Environment

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

after enable NAT for pod network, it worked

Yes what you found is a known issue, see https://github.com/projectcalico/calicoctl/issues/1562.  You also found the current workaround.
I'm going to close this issue since it is already being tracked through that calicoctl issue.


Unable to change address for team

This isn't a bug:

Lamb Paulton has the address "The Lamb"
Lamb B address is being changed to "The Lamb" - which collides with the address for "Lamb Paulton"


services/."_launch" not working

I want to open the Warp app with Ctrl + Alt + T. This is what nix run github:pjones/plasma-manager shows:
In configFile:
"services/dev.warp.Warp.desktop"."_launch" = "Ctrl+Alt+T";

and I get this error: error: A definition for option programs.plasma.configFile."services/dev.warp.Warp.desktop"._launch' is not of type attribute set of (submodule)'.

The problem should be able to be solved by adding .value after the "_launch”, but I would think rc2nix took that into account. I'll look into it.

Do you have an idea of which file this config was read from. I can't really reproduce as all the configurations rc2nix generates on my system looks fine

This is in .config/kglobalshortcutsrc (there's more config above and below this text):
[services][dev.warp.Warp.desktop]
_launch=Ctrl+Alt+T

[services][org.kde.konsole.desktop]
_launch=none

Thank you for making this issue. I've been trying to debug this on my end. I've done something similar with alacritty and have been unable to successfully do so.

In configfile on my end I don't get the "services/dev.warp.Warp.desktop"."_launch" in configFile but in the shortcuts and when placing it in the shortcuts everything works from what I can see. I don't really know what's going on here.

In configfile on my end I don't get the "services/dev.warp.Warp.desktop"."_launch" in configFile but in the shortcuts and when placing it in the shortcuts everything works from what I can see. I don't really know what's going on here.

I looked at it again and for me it shows it in shortcuts too. I read it wrong before.

Solution for anyone else who happens to come across this issue:
programs.plasma = {
    enable = true;
    shortcuts = {
      "services/dev.warp.Warp.desktop"."_launch" = "Ctrl+Alt+T";
      "services/org.kde.konsole.desktop"."_launch" = [ ];
    };
  };

@Titaniumtown make a new issue. My issue was about an error when running home manager switch

This is when running home manager switch

Do you get an error like error: A definition for option?


Sync stops with error Could not initialize class org.aion.fastvm.FastVM

I'm running:

Which Aion version?: 0.2.8q
Which operating system?: Linux
Which distributor and version?: Ubuntu 16.04 (In Docker)
How installed?: via binaries
Are you fully synchronized?: no
Did you try to restart the node?: yes

I've started a conquest network node in the docker container. Config file was generated with aion.sh -c. Here is the dockerfile:
FROM ubuntu:16.04

# replaceholder for downloading specific version
ARG KERNEL_VERSION=v0.2.8q

RUN apt-get update && apt-get install -y \
        bzip2 \
        lsb-release \
        wget \
        locales \
        curl \
        jq

WORKDIR /opt

RUN curl -s https://api.github.com/repos/aionnetwork/aion/releases/tags/$KERNEL_VERSION | jq --raw-output '.assets[0] | .browser_download_url' | xargs wget -O kernel.tar.bz2
RUN tar -xvjf ./kernel.tar.bz2
RUN rm ./kernel.tar.bz2

COPY ./config.xml /opt/aion/config

WORKDIR /
CMD /opt/aion/aion.sh

Node start synchronising and stops in a while with the log:
8/14/2018 1:33:42 PM18-08-14 10:33:42.893 INFO  SYNC [sync-ib]: <import-status: node = a25d10, sync mode = NORMAL, hash = 71c103, number = 28459, txs = 0, result = NO_PARENT, time elapsed = 0 ms>
8/14/2018 1:33:43 PM18-08-14 10:33:43.947 ERROR SYNC [sync-ib]: <import-block throw> java.lang.NoClassDefFoundError: Could not initialize class org.aion.fastvm.FastVM

8/14/2018 1:33:43 PM18-08-14 10:33:43.947 INFO  SYNC [sync-ib]: <import-status: node = da0ef6, sync mode = NORMAL, hash = 71c103, number = 28459, txs = 0, result = NO_PARENT, time elapsed = 0 ms>
8/14/2018 1:33:43 PM18-08-14 10:33:43.948 ERROR SYNC [sync-ib]: <import-block throw> java.lang.NoClassDefFoundError: Could not initialize class org.aion.fastvm.FastVM

Restarting the node does not help.

I've tried removing datadir and restarted the node:
Sync stopped on the same block:
8/14/2018 3:16:37 PM18-08-14 12:16:37.069 INFO  SYNC [sync-ib]: <import-status: node = a25d20, sync mode = NORMAL, hash = 71c103, number = 28459, txs = 0, result = NO_PARENT, time elapsed = 0 ms>
8/14/2018 3:16:37 PM18-08-14 12:16:37.689 ERROR SYNC [sync-ib]: <import-block throw> java.lang.NoClassDefFoundError: Could not initialize class org.aion.fastvm.FastVM

Same problem with 0.3.1.q:

To solve the problem install packages :  libicu55 libedit2 libffi6 libtinfo5
As suggested by @AionJayT on the aionnetwork/Lobby Gitter channel.

https://github.com/aionnetwork/aion/pull/624


Hierarchy improvements

Should be straightforward:

I added a useful method that was missing;
I improved the tutorial notebook (we should really generate a markdown file out of it) discussing hierarchy;
I removed a raised error that was preventing custom atlases in .brainglobe folder to be used.

Looks good, but I wonder if the tutorial should have some even simpler parts to illustrate the hierarchy.
I should know this, but do we have any syntax similar to this?
structure = bg_atlas.structure_from_coords((5000, 4000, 3000))
structure.parent()

Maybe if the use of get_structure_mask()  could also be added to the tutorial?

Looks good, but I wonder if the tutorial should have some even simpler parts to illustrate the hierarchy.

What would you like to see there?

I should know this, but do we have any syntax similar to this?
structure = bg_atlas.structure_from_coords((5000, 4000, 3000))
structure.parent()

No, because we opted for a very simple representation of the structure (no Structure objects) as I keep forgetting how to use objects when I have many around (is it a property? or an attribute? or a method? Where do I get the id? How do I get the structure dictionary? etc). But this is only my opinion, happy to hear other bells here.

Maybe if the use of get_structure_mask() could also be added to the tutorial?

What do you mean? Part 1.3 is about this


[Bug] Transaction producer didn't receive CheckTransacationState request of pending message

Before Creating the Bug Report

[X] I found a bug, not just asking a question, which should be created in GitHub Discussions.

[X] I have searched the GitHub Issues and GitHub Discussions  of this repository and believe that this is not a duplicate.

[X] I have confirmed that this bug belongs to the current repository, not other repositories of RocketMQ.

Runtime platform environment
unreleated
RocketMQ version
5.x
JDK Version
1.8
Describe the Bug

In transaction message scenario, the first time execution result was UNKNOW. We expected to receive broker's check request later, but did not.
Steps to Reproduce

Startup server in proxy cluster mode
Startup a remoting TransactionProducer
Sleep 5 seconds before sending one transaction message, and return UNKNOW in TransactionListener#executeLocalTransaction
Keep TransactionProducer running and don't send more messages
Observe whether TransactionListener#checkLocalTransaction will be called

What Did You Expect to See?
TransactionListener#checkLocalTransaction will be called
What Did You See Instead?
TransactionListener#checkLocalTransaction has not been called
Additional Context
No response

Transaction log indicates that the broker cannot find producer channel when trying to call client CheckTransactionState.

In this case, the producer send message before its first heartbeat, which causes offline misjudgement when scanning at ClusterTransactionService#scanProducerHeartBeat. Eventually, this producer will not be registered to brokers.


pydantic ValidationError for datetime fields if microsecond is 999xyz

Bug
Creating a model instance with datetime fields fail if microseconds is between 999500 and 999999.
This seems to be a rounding error.
Current Behavior
import datetime
from odmantic import Model

class MyModel(Model):
    date_time: datetime.datetime

instance = MyModel(date_time=datetime.datetime.now().replace(microsecond=999500))
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "services/registry/.venv/lib/python3.8/site-packages/odmantic/model.py", line 481, in __init__
    super().__init__(**data)
  File "pydantic/main.py", line 362, in pydantic.main.BaseModel.__init__
pydantic.error_wrappers.ValidationError: 1 validation error for MyModel
date_time
  microsecond must be in 0..999999 (type=value_error)

Expected behavior
No validation error should be raised.
I'm not sure if datetimes with microseconds > 999500 should be rounded up to the next second or not. Most implementations do not round, but just crop the last three digits of microseconds like these:

now.isoformat(sep=' ', timespec='milliseconds')
now.strftime("%H:%M:%S.%f")[:-3]

We could use the following expression to crop:
now = now.replace(microsecond=now.microsecond-now.microsecond % 1000)

Environment

ODMantic version: 0.3.2
MongoDB version: 4.4
Pydantic: 1.7.:
python: 3.8.5

print(pydantic.utils.version_info())
             pydantic version: 1.7.3
            pydantic compiled: True
                 install path: services/registry/.venv/lib/python3.8/site-packages/pydantic
               python version: 3.8.5 (default, Sep  7 2020, 19:43:22)  [Clang 10.0.0 (clang-1<IP_ADDRESS>)]
                     platform: macOS-10.14.6-x86_64-i386-64bit
     optional deps. installed: ['typing-extensions', 'email-validator']

I'm not sure if datetimes with microseconds > 999500 should be rounded up to the next second or not.

Nice catch, the truncation is totally ok to me :+1:

Thanks @erny !

Thanks so much!


feature/edit-landing-text-content

Work List

Edit the landing page's text content

Details
Sections

Header
Sub-Header
Featured
Pages

Header

needed: Title and Description

Sub-Header

needed: Edit icon and Description

Featured

needed

Edit Section title and Element description
Change from Layout with Sidebar and Nav to sass(scss) and Add description

Pages

needed

Edit Section title
Make each example page title as a link like (/example-page-name) and add link icon (box-arrow-up-right)

Header

needed: Title and Description

Title
Welcome to Nuxtrap. Analyze and Manage your business.
Description
Responsive Dashboard with Nuxt.js, Bootstrap 4 and Chart.js

Sub-Header

needed: Edit icon and Description

Icon

server
display with bar-chart-line-fill
view-list
columns-gap
layout-text-window-reverse

Title
The admin is fully responsive and show sample data.
Description
Show chart and information generated sample data from Restful API.
Support fully responsive layout which is with sidebar and navigation bar.

Featured
needed
Title
Developed Nuxtrap with ...
Edit Section

from Layout with Sidebar and Nav to SASS (SCSS)
from Responsive Design to Chart.js

Section Element Description
(고민중...)

Pages

needed: Make each example page title as a link like (/example-page-name) and add link icon (box-arrow-up-right)

title
Page Type of Nuxtrap
page link

Default Page: /overview
List Page: /events/list
Analytics Page: /users/statics
Information Details Page: select a user in/pages/users/list
Authentication Page: /signin
Utility Page: /404

And add box-arrow-up-right icon to end of the page link

the completion check list

[ ] Header
[ ] Sub-Header
[ ] Featured
[ ] Pages


[BUG] Ain't working with Simplify3D v5

I guess it's too early to report? LOL
LMK if I can be of help troubleshooting this one. So far, window title hasn't changed afaik so I'm puzzled as why it won't work anymore.

OK hold on tight. Seems command tools wasnt installed in the new mac in the end LOL
Will report back asap.

No joy :(
I forced reinstall imagemagik and getwindowID but nothing's saved on the file :(

Here's an example to run from command line:
❯ GetWindowID Safari --list
"" size=760x459 id=2928
"[BUG] Ain't working with Simplify3D v5 · Issue #3 · idcrook/s3d-thumbnail-generator-macos" size=1834x1311 id=2137

Run without any arguments to get its help message.

alex@Mac-Studio ~ % GetWindowID Simplify3D --list
"(null)" size=294x687 id=3651
"(null)" size=2880x1490 id=3454
"(null)" size=0x0 id=3456
So it works!?

Apparently something is different on your host machine. GetWindowID looks like this on my machine.
❯ GetWindowID Simplify3D --list
"(null)" size=0x0 id=6583
"Simplify3D (Licensed to *** ***)" size=1200x828 id=6582

I don't know about the macOS details to know why.  An initial guess would be security and privacy settings for terminal app that you use? I have my Mac in developer mode and the terminal app on full filesystem access settings, so could be something like that.  I don't know.

alex@Mac-Studio ~ % GetWindowID Simplify3D --list | grep Simplify3D
"filename (modified) - Simplify3D (Licensed to Xxxxxxxxx Xxxxxx)" size=2880x1490 id=3454
alex@Mac-Studio ~ %
This is what I get. Is that incorrect?

alex@Mac-Studio ~ % GetWindowID Simplify3D --list | grep Simplify3D "filename (modified) - Simplify3D (Licensed to Xxxxxxxxx Xxxxxx)" size=2880x1490 id=3454 alex@Mac-Studio ~ %
This is what I get. Is that incorrect?

https://github.com/idcrook/s3d-thumbnail-generator-macos#enable-script-tracing

Here's the output:

alex@Mac-Studio s3d-thumbnails % echo END >! sample.gcode && ./generate_S3D_thumbnails.bash
400x469 237992

SCREENCAPTURE=/usr/sbin/screencapture
BASE64=/usr/bin/base64
bpfix=/usr/local
'[' -x /opt/homebrew/bin/brew ']'
GETWINDOWID=/usr/local/bin/GetWindowID
CONVERT=/usr/local/bin/convert
IDENTIFY=/usr/local/bin/identify
++ dirname ./generate_S3D_thumbnails.bash
INSTALL_DIR=./
GCODE=sample.gcode
WORKDIR=/var/folders/4n/tmn18bnj68x5qws63j4hlr9m0000gn/T/
RETINA_2X_MODE_DETECTED=0
DEFAULT_APP_WIDTH=1100
DEFAULT_APP_HEIGHT=775
++ shopt -po xtrace
TRACESTATE='set -o xtrace'
touch ./runtimestamp
[[ set -o xtrace == \s\e\t\ -\o\ \x\t\r\a\c\e ]]
echo
echo /var/folders/4n/tmn18bnj68x5qws63j4hlr9m0000gn/T/
echo sample.gcode
++ /usr/local/bin/GetWindowID Simplify3D --list
++ grep Simplify3D
winidinfo='"Simplify3D (Licensed to Alex Tutusaus)" size=2880x1490 id=11132'
'[' 0 -eq 1 ']'
[[ "Simplify3D (Licensed to Alex Tutusaus)" size=2880x1490 id=11132 =~ size=([0-9]+)x([0-9]+) ]]
appwidth=2880
appheight=1490
[[ "Simplify3D (Licensed to Alex Tutusaus)" size=2880x1490 id=11132 =~ id=([0-9]+) ]]
winid=11132
[[ "Simplify3D (Licensed to Alex Tutusaus)" size=2880x1490 id=11132 =~ "([^"]+)" ]]
wintitle='Simplify3D (Licensed to Alex Tutusaus)'
/usr/sbin/screencapture -x -o -l11132 /var/folders/4n/tmn18bnj68x5qws63j4hlr9m0000gn/T/window.png
++ /usr/local/bin/identify -ping -format '%[w]' /var/folders/4n/tmn18bnj68x5qws63j4hlr9m0000gn/T/window.png
winpngdimw=5760
++ /usr/local/bin/identify -ping -format '%[h]' /var/folders/4n/tmn18bnj68x5qws63j4hlr9m0000gn/T/window.png
winpngdimh=2980
[[ 5760 == 5760 ]]
[[ 2980 == 2980 ]]
RETINA_2X_MODE_DETECTED=1
echo RETINA_2X_MODE_DETECTED=1
RETINA_2X_MODE_DETECTED=1
cropw=2468
croph=1639
cropwinset=1728
crophinset=596
/usr/local/bin/convert /var/folders/4n/tmn18bnj68x5qws63j4hlr9m0000gn/T/window.png -crop 2468x1639+1728+596 /var/folders/4n/tmn18bnj68x5qws63j4hlr9m0000gn/T/cropped.png
echo ''
/usr/local/bin/convert /var/folders/4n/tmn18bnj68x5qws63j4hlr9m0000gn/T/cropped.png -resize 32x32 /var/folders/4n/tmn18bnj68x5qws63j4hlr9m0000gn/T/sm_thumb.png
set +o xtrace
base64: invalid argument /var/folders/4n/tmn18bnj68x5qws63j4hlr9m0000gn/T/sm_thumb.png
Usage:	base64 [-hDd] [-b num] [-i in_file] [-o out_file]
-h, --help     display this message
-Dd, --decode   decodes input
-b, --break    break encoded string into num character lines
-i, --input    input file (default: "-" for stdin)
-o, --output   output file (default: "-" for stdout)
/usr/local/bin/convert /var/folders/4n/tmn18bnj68x5qws63j4hlr9m0000gn/T/cropped.png -resize 400x /var/folders/4n/tmn18bnj68x5qws63j4hlr9m0000gn/T/bigthumb.png
++ /usr/local/bin/identify -ping -format '%[w]x%[h]' /var/folders/4n/tmn18bnj68x5qws63j4hlr9m0000gn/T/bigthumb.png
bigthumbdim=400x266
set +o xtrace
base64: invalid argument /var/folders/4n/tmn18bnj68x5qws63j4hlr9m0000gn/T/bigthumb.png
Usage:	base64 [-hDd] [-b num] [-i in_file] [-o out_file]
-h, --help     display this message
-Dd, --decode   decodes input
-b, --break    break encoded string into num character lines
-i, --input    input file (default: "-" for stdin)
-o, --output   output file (default: "-" for stdout)
400x266 0
sed -i '' 's/^/; /' /var/folders/4n/tmn18bnj68x5qws63j4hlr9m0000gn/T/base64.txt
cat /var/folders/4n/tmn18bnj68x5qws63j4hlr9m0000gn/T/base64.txt sample.gcode
mv /var/folders/4n/tmn18bnj68x5qws63j4hlr9m0000gn/T/newFile.gcode sample.gcode
zsh: command not found: 400x469
alex@Mac-Studio s3d-thumbnails %

Are the basse64: invalid argument errors coming from the script being run on Terminal?

Yes, both S3D and Terminal are enabled to record screen on Privacy settings....

You entered in the wrong command for one. Should be the following for the sample debug command (notice no arguments to generate_S3D_thumbnails.bash) that will assumes the input file name sample.gcode
echo END >! sample.gcode && ./generate_S3D_thumbnails.bash

Also you can leave on the command tracing output by commenting out this line to see what command(s) get issued.
https://github.com/idcrook/s3d-thumbnail-generator-macos/blob/e59a7cf81d813e30eba46120a63001400b33dc6b/generate_S3D_thumbnails.bash#L138

It looks like it was basically working up until that point in your output? All the script does is insert some specially encoded text into the gcode file. you can view the contents of the .gcode file in any text editor.

Yes, both S3D and Terminal are enabled to record screen on Privacy settings....

I've noticed for some apps that the permissions may need to removed and re-added for some applications when the apps are updated, but who knows...

I am able to reproduce this base64 error on my Mac (Ventura, Simplify3D 5) so stay tuned.

I don't know if this is Ventura thing or what, but apparently base64 needs a -i/--input argument.
I pushed a fix with this to the main branch just now.  It fixed this same problem you were encountering for me. You should be able to git pull my updates. It was simply adding a -i before the filenames in the base64 commands

Awesome! Let me try!

BINGO!
Works again and thumbnails are now placed correctly into the gcode.
Now for the more worrysome compatibility with S3Dv5.... :/


How to setting the subtitle display correctly?

Hi, may i know how can we setting the subttitle display correctly based on screen size?
As you can see, 1st screenshot is using smartphone without full screen. The font is bigger.

2nd image when i rotate the phone, but still not in full screen mode. Still a bit bigger.

3rd image when i rotate and go to full screen mode, it display properly.

Can you share subtitle files? Thanks!

Can you share subtitle files? Thanks!
There you go
https://filebin.net/ok54bcot0y5hzito

There you go:
https://filebin.net/ok54bcot0y5hzito

Can you reproduce this issue in the Shaka demo? https://shaka-player-demo.appspot.com/


libs.versions.toml still uses loader 0.16.1

The libs.versions.toml still uses loader 0.16.1, while in the qmj it requires 0.17.0

I held back bumping the version to 0.17.0 since I thought that it was still an indev release, with a VSCode issue found on QTM testing leading to me reverting to 0.16.1; I'll bump it back soon

wait, I just realized that I forgot about QMJ; oh well


Export Portal and PortalTarget signatures

Fixes #697

Failing CI is unrelated, will need to get this fixed...


Clarification on why Associate Microsoft account not a work account?

Could you please clarify on why we need to Associate a personal Microsoft account instead of work account during completing the process of payout information. https://docs.microsoft.com/en-us/azure/marketplace/partner-center-portal/manage-account#payout-account

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

ID: 7106793e-df61-fd08-07b6-c8a50987d559
Version Independent ID: abbd07c9-7277-2707-cb1a-6a4003861508
Content: How to manage a Commercial Marketplace account in Partner Center
Content Source: articles/marketplace/partner-center-portal/manage-account.md
Service: marketplace
Sub-service: partnercenter-marketplace-publisher
GitHub Login: @ChJenk
Microsoft Alias: v-chjen

Thanks for your comment. The feedback has been shared with the content owner for further review. Thanks for your patience.

Thank you, @femsulu
I asked the PM about this question and his response was: "The current Partner Center payout mechanism requires you to associate a personal Microsoft account in order to have a payout associated with it.” I hope this helps.

@femsulu I'm not sure if I need to sign-off at this point or...? Thanks!

Hi @ChJenk
I was just wondering if there is any reasonable business reason around it? I indeed understand it as a requirement but all I am wondering is why a personal email address?
Thanks!

@santhoshbomma9 please contact me if you are still looking for the business explanation and I will see what I can find out for you. I am going to close this issue in the meantime.

#please-close


Add "about" page as a new top level link

Added the page in the about-page branch, now we just need to write copy for it.

Going to close this and open up a new one requesting copy for the page, and the list of top collaborators.


[Linux] The server is dropping the request pinged by the client. Error: Data received on an unknown connection (0). Dropping it!!

Problem
The server(chip-all-cluster-app) is dropping the request pinged by the client.

expected behaviour: Server must acknowledge the ping request.

screenshots, images, logs, etc.

Logs at Server:
$ ~/connectedhomeip/examples/all-clusters-app/linux/out/debug/chip-all-clusters-app
CHIP:ZCL: Using ZAP configuration...
CHIP:ZCL: deactivate report event
CHIP:ZCL: 0x55ef7669e39dep 1 clus 101 attr  3 not supported
CHIP:ZCL: Failed to write DoorState attribute: 0x86
CHIP:ZCL: 0x55ef7669e39dep 1 clus 101 attr 21 not supported
CHIP:ZCL: Failed to write Language attribute: 0x86
CHIP:ZCL: Start identify callback on endpoint 1 time 0
CHIP:ZCL: Stop identify callback on endpoint 1
CHIP:ZCL: WARNING: ATTRIBUTES ARE NOT BEING STORED IN FLASH!
CHIP:ZCL: DEVICE WILL NOT FUNCTION PROPERLY AFTER REBOOTING!!
CHIP:ZCL: Failed to send IAS Zone update. Err 0x70
CHIP:IN: TransportMgr initialized
CHIP:IN: local node id is 12344321
CHIP:DL: wpa_supplicant: _IsWiFiStationProvisioned: interface not connected
CHIP:BLE: Waiting for PBKDF param request
CHIP:DL: MDNS failed to join multicast group on enp1s0 for address type IPv4: Inet Error 1016 (0x000003F8): Address not found
CHIP:DIS: CHIP minimal mDNS started advertising.
CHIP:DIS: Replying to DNS-SD service listing request
CHIP:DIS: Replying to DNS-SD service listing request
CHIP:SVR: Server Listening...
CHIP:DL: FAIL: BLE name is NULL in ConfigureBluezAdv
CHIP:DL: Disabling CHIPoBLE service due to error: CHIP Error 4003 (0x00000FA3): Incorrect state
CHIP:IN: Data received on an unknown connection (0). Dropping it!!
CHIP:SVR: Packet received error: CHIP Error 4127 (0x0000101F): Key not found error code received from peer
Logs at Client:
~/connectedhomeip/examples/shell/shell_common/out/foo$ ./chip-shell
> ping <IP_ADDRESS>
IP address: <IP_ADDRESS>
CHIP:IN: TransportMgr initialized
CHIP:IN: TransportMgr initialized
CHIP:IN: local node id is 112233
CHIP:IN: New pairing for device 12344321, key 0!!
Establish secure session succeeded
Send echo request message to Node: 12344321
CHIP:IN: Secure message was encrypted: Msg ID 0
CHIP:IN: Sending msg from 112233 to 12344321
CHIP:IN: Sending secure msg on generic transport
CHIP:IN: Secure msg send status 0
CHIP:IN: Sending msg from 112233 to 12344321
CHIP:IN: Sending secure msg on generic transport
CHIP:IN: Secure msg send status 0
CHIP:EM: Retransmit MsgId:00000000 Send Cnt 1
No response received
Proposed Solution
<suggested fix, suggested enhancement>

Given this is an old issue, is this still present? If so, please re-open, thanks!