[SPIKE] Throw attempting to override an object value with a non-object

Make both mergeConfig and extractConfigByNamespace throw if they try to merge a non-object value on a key that already stores an object value.
The errors would let users know that they are (likely unintentionally) passing a property or data-attribute that conflicts with deeper values (for example setting data-i18n which would default with the configuration for the default message).
While this sounds a handy information:

#4808 ignores merges of values for 'shallow' configuration keys when a deeper one is already set
these error may cause some people to have to edit their code, are they cause for being a breaking change?

Implementation note
Was a bit shy to pass componentName to the helper functions, but that could be an alternative solution that avoids catching and re-throwing the errors. Doesn't feel super tidy from a separation of responsibility point of view.

Closing to avoid noise in the list of PRs now that #4792 is merged.


chore: Add the ability to use icons in WdsButton

Adds ability to pass icon in button component
Description
Fixes #21924
Media

A video or a GIF is preferred. when using Loom, don’t embed because it looks like it’s a GIF. instead, just link to the video

Type of change

Bug fix

How Has This Been Tested?

Manual

Test Plan

Add Testsmith test cases links that relate to this PR

Issues raised during DP testing

Link issues raised during DP testing for better visiblity and tracking (copy link from comments dropped on this PR)

Checklist:
Dev activity

[ ] My code follows the style guidelines of this project
[ ] I have performed a self-review of my own code
[ ] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation
[ ] My changes generate no new warnings
[ ] I have added tests that prove my fix is effective or that my feature works
[ ] New and existing unit tests pass locally with my changes
[ ] PR is being merged under a feature flag

QA activity:

[ ] Test plan has been approved by relevant developers
[ ] Test plan has been peer reviewed by QA
[ ] Cypress test cases have been added and approved by either SDET or manual QA
[ ] Organized project review call with relevant stakeholders after Round 1/2 of QA
[ ] Added Test Plan Approved label after reveiwing all Cypress test

/build-wds-preview

/build-wds-preview


C# Tutorial: Exception Practices

Discuss how exceptions are the key method of communicating contract failures in .NET. In addition, this should discuss the Exception Filter language features added in C# 6.

If we're going to have tutorials on this, then we should not port the content as in issue #222

@mairaw I missed that issue when I wrote this. I can close this one as a duplicate, and add a note on #222 that when its ported, it should be updated to discuss Exception Filters.

The PR for Issue #222 has been merged, and that issue has been closed.
We still need to update some of the exception content with a discussion of exception filters, including some examples. (That may be a duplicate of the "What's new in C# 6" topic though.)


Make master api peers list their endpoint ipaddress in their certificate SANs

The bug
Each openshift master API peer should list their endpoint ip-address in their certificate SANs.
We did not catch this error in the kitchen spec before because we used node['cookbook-openshift3']['openshift_common_api_hostname'] = <ipaddress>, resulting in the ipaddress being included in the certificate SANs automatically.
Context
Using an HA deployment of openshift, where node['cookbook-openshift3']['openshift_common_api_hostname'] = <some resolvable dns name pointing to at least one master api instance>.
I want to make the prometheus monitoring system scrape the kubernetes-apiserver target defined in the sample configuration file here: https://github.com/prometheus/prometheus/blob/14d0604aba95c7bb434f3a7687f7903bbe4fd81f/documentation/examples/prometheus-kubernetes.yml#L15-L48 . The scraping works like this:

prometheus queries kubernetes to find all endpoints for service "kubernetes" in the "default" namespace.
for each endpoint found, it scrapes the https://<endpoint ipaddress>:8443/metrics URL (prometheus has the openshift CA mounted in /var/secrets).
when the  is not listed in the certificate returned by the master API instance at that address then the certificate validation fails because of hostname not being listed in the certificate

In my (test) setup, node['cookbook-openshift3']['openshift_common_api_hostname'] = '<IP_ADDRESS>.xip.io' (and not: <IP_ADDRESS>); as a consequence, <IP_ADDRESS>.xip.io is listed in the SANs of certificate at /etc/origin/master/master.server.crt but <IP_ADDRESS> is not.
Reproducing the bug in the kitchen VMs
Assuming that node['cookbook-openshift3']['openshift_common_api_hostname'] = '<IP_ADDRESS>.nip.io` is set in .kitchen.yml , provision one of the test VMs and log into it.
[root@origin-centos-72 ~]# curl --fail --cacert /etc/origin/node/ca.crt  https://$(oc get endpoints kubernetes -n default -o jsonpath='{.subsets[*].addresses[0].ip}'):8443
curl: (51) Unable to communicate securely with peer: requested domain name does not match the server's certificate.
root@origin-centos-72 ~]# echo $(oc get endpoints kubernetes -n default -o jsonpath='{.subsets[*].addresses[0].ip}')
<IP_ADDRESS>
[root@origin-centos-72 ~]# openssl x509 -in /etc/origin/master/master.server.crt  -text | grep -A1 'Subject Alternative Name'
            X509v3 Subject Alternative Name:
                DNS:<IP_ADDRESS>.nip.io, DNS:kubernetes, DNS:kubernetes.default, DNS:kubernetes.default.svc, DNS:kubernetes.default.svc.cluster.local, DNS:localhost, DNS:openshift, DNS:openshift.default, DNS:openshift.default.svc, DNS:openshift.default.svc.cluster.local, DNS:origin-centos-72, DNS:<IP_ADDRESS>, DNS:<IP_ADDRESS>, IP Address:<IP_ADDRESS>, IP Address:<IP_ADDRESS>

After applying this PR, the above curl command should work.
I have have added inspec example to ensure no regression.

Looks like good work. Will look at it ASAP.

Thanks @ianmiell  . While I investigated what led to this PR I played a bit with the adhoc_redeploy_certificates recipe and I found it to lack documentation, so I prepare a second PR about it.

I'm literally on a conference call about that now also, and we are
struggling to get redeploy working.
We may go back to manual commands until we understand it better.
Ian
On Mon, May 15, 2017 at 4:08 PM, Julien Pervillé<EMAIL_ADDRESS>wrote:

Thanks @ianmiell https://github.com/ianmiell . While I investigated
what led to this PR I played a bit with the adhoc_redeploy_certificates
recipe and I found it to lack documentation, so I prepare a second PR about
it.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/IshentRas/cookbook-openshift3/pull/119#issuecomment-301504675,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AGrczU_NGwWfYHcfNAjGXUcDCaPfWKhcks5r6GptgaJpZM4NbPk5
.

--
My book on Docker in Practice: Get 39% off with the code 39miell
http://manning.com/miell/?a_aid=zwischenzugs&a_bid=e0d48f62

I just tested this PR with a test cluster of multiple VMs, including 2 masters; the above curl test worked as expected.
[root@master ~]# /bin/bash -c 'set -xe ; for ip in $(oc get endpoints kubernetes -n default -o jsonpath="{.subsets[*].addresses[*].ip}"); do echo curl --fail -s -o/dev/null --cacert /etc/origin/node/ca.crt https://${ip}:8443 ; done'
++ oc get endpoints kubernetes -n default -o 'jsonpath={.subsets[*].addresses[*].ip}'
+ for ip in '$(oc get endpoints kubernetes -n default -o jsonpath="{.subsets[*].addresses[*].ip}")'
+ echo curl --fail -s -o/dev/null --cacert /etc/origin/node/ca.crt https://<IP_ADDRESS>:8443
curl --fail -s -o/dev/null --cacert /etc/origin/node/ca.crt https://<IP_ADDRESS>:8443
+ for ip in '$(oc get endpoints kubernetes -n default -o jsonpath="{.subsets[*].addresses[*].ip}")'
+ echo curl --fail -s -o/dev/null --cacert /etc/origin/node/ca.crt https://<IP_ADDRESS>:8443
curl --fail -s -o/dev/null --cacert /etc/origin/node/ca.crt https://<IP_ADDRESS>:8443

I'll add that cluster test to the regression tests.

Added to tests.

@jperville Please rebase. I have updated master.

@IshentRas rebased to current master


feat: add support for watching node status

This introduces support for waiting for all nodes to report back as Ready.
This fixes an edge case where self hosted pods come up on other control
plane nodes but not on the bootstrap node and all control plane nodes are
pointed to the bootstrap node.
Depends on #1087.

This does increase the time required for the bootkube start process to exit, it is negligible but i believe it leaves the cluster in a better state since it waits for node status prior to exiting

/lgtm


koord-manager: support cpu normalization

Ⅰ. Describe what this PR does

Ⅱ. Does this pull request fix one issue?

Ⅲ. Describe how to verify it
Ⅳ. Special notes for reviews
V. Checklist

[ ] I have written necessary docs and comments
[ ] I have added necessary unit tests and integration tests
[ ] All checks passed in make test

/hold for UT

/unhold
@zwzhang0107 @hormes @eahydra PTAL

/lgtm


Sync tabs in split view

An interesting idea popped up on our.
https://our.umbraco.com/forum/umbraco-8/93641-discussion-about-tabs#comment-317850
Syncing the tabs when working in split views. I like the idea, but should probably be togglable.
If anyone wants to give it a go, I've marked it up for grabs :)

I've started working on this. I'll try to have a PR by the end of the weekend.

I created the functionality including the syncing of the scrollto functionality
PR can be found here: https://github.com/skttl/umbraco-matryoshka/pull/34


chore: don't depend on gcc

Type of change

Bug fix (change which fixes an issue)
New feature or functionality (change which adds functionality)
Style (white-space, formatting, etc...)
Refactor (a code change that neither fixes a bug or adds a new feature)
Performance (a code change that improves performance)
Documentation (updates to documentation or READMEs)
Chore (any other change that doesn't affect source or test files, such as configuration)

For changes visible to end-users

Breaking change (this change will force users to change their own code or config)
Relevant documentation has been updated
Suggested release notes are provided below:

Test plan

Covered by existing test cases
New test cases added
Manual testing; please provide instructions so we can reproduce:

Could you update the description to give a bit of context of what's going on here? Should I try to green it up?

I assume this went stale


Datagrid[useActionsColumn]: support isDelete prop

https://github.com/carbon-design-system/ibm-products/pull/3657/files#r1367387172
What will this achieve?
We should use the prepareProps utility to remove the isDelete prop if there are either 1 or 2 column actions, because as @paul-balchin-ibm pointed out the OverflowMenu trigger component does not accept isDelete as a property.

How will success be measured?
When prepareProps is used to remove isDelete if there are 1 or 2 actions to prevent prop type errors.

Additional information

Designs
Existing code
etc

Closing as #4161 & #4173


No darknet19.pb as our pre-trained model

Hi, I find that there is no darknet19.pb to train the network, where can I get it and thanks a lot!

Hi,
Sorry, I forgot to add it to the README.md.  Thanks for point it out.  Now, you can follow the instruction in section: Quick Start/Training/5. in README.md.

Really useful repo, thx


Issues with Rules and Prettier Integration in Versions 3.0.10 and 3.0.8

I am experiencing issues with versions 3.0.10 and 3.0.8 of the ESLint plugin for Visual Studio Code that were not present in version 2.4.4. Specifically, the rules added to the .eslintrc.json file are not being applied correctly, and the integration with Prettier has stopped working, ignoring the settings specified in the .vscode/settings.json file.
import Container from '@/components/Container'

export default function ProductPage({
  params: { slug }
}: {
  params: { slug: string }
}) {
  return (
    <>
      <Container>product by slug: {slug}</Container>
    </>
  )
}

{
  "parser": "@typescript-eslint/parser",
  "env": {
    "browser": true,
    "es2021": true,
    "node": true
  },
  "plugins": [
    "react",
    "prettier",
    "@typescript-eslint"
  ],
  "extends": [
    "next/core-web-vitals",
    "prettier",
    "eslint:recommended",
    "plugin:@typescript-eslint/recommended",
    "plugin:react/recommended",
    "plugin:prettier/recommended"
  ],
  "overrides": [],
  "parserOptions": {
    "ecmaVersion": "latest",
    "sourceType": "module"
  },
  "settings": {
    "react": {
      "version": "detect"
    }
  },
  "ignorePatterns": ["node_modules/"],
  "rules": {
    "no-console": ["error", { "allow": ["warn", "error"] }],
    "react-hooks/rules-of-hooks": "error",
    "react-hooks/exhaustive-deps": "warn",
    "react/prop-types": "off",
    "react/react-in-jsx-scope": "off",
    "@typescript-eslint/explicit-module-boundary-types": "off",
    "@typescript-eslint/no-non-null-assertion": "off"
  }
}

.vscode/settings.json file:
{
  "editor.formatOnSave": false,
  "editor.codeActionsOnSave": {
    "source.fixAll": "explicit"
  }
}

Notice that the rule "react/react-in-jsx-scope": "off" is not applied and does not respond to the settings.
Expected Behavior:
The rules defined in the .eslintrc.json file should be applied correctly, and Prettier should respect the settings specified in the .vscode/settings.json file.
Operating System: Windows 11
Visual Studio Code Version: 1.90.1
Node.js Version: v20.11.1

@caiobarilli which package manager are you using? yarn pnp?
It is always very helpful if you could provide me with a GitHub repository I can clone that demos this. Something like this is very often version dependent and that way it is ensured that we use the same setup.

@dbaeumer you can use this base project to check by installing with yarn
yarn create next-app -e https://github.com/caiobarilli/nextjs-boilerplate/tree/main/app_router/eslint-prettier issues_1872

then open the project issues_1872
You can switch between plugin versions in vscode to check the error I'm getting
.eslintrc.json --> check line 34 and page.tsx on .\src\app between versions and see the error.
ps: issues with versions 3.0.10 and 3.0.8 of the ESLint plugin for Visual Studio Code that were not present in version 2.4.4

@caiobarilli I get exactly the same errors when running eslint in the terminal:
./node_modules/.bin/eslint src/app/page.tsx
Warning: React version not specified in eslint-plugin-react settings. See https://github.com/jsx-eslint/eslint-plugin-react#configuration .

/workspaces/issues_1872/src/app/page.tsx
  3:5  error  'React' must be in scope when using JSX  react/react-in-jsx-scope
  4:7  error  'React' must be in scope when using JSX  react/react-in-jsx-scope

✖ 2 problems (2 errors, 0 warnings)

And can you please provide me with steps on the Prettier problem so that I am sure I see the same.

It looks like that eslint prefers the eslint.config.mjs file over the .eslintrc.json file. If a renamed eslint.config.mjs to eslint.config.mjs.off things work correctly on the command line

Nice @dbaeumer My mistake, looks like I missed this, thanks for sharing.

Will close the issue then.


ci: audit formula after installed it

There are post-install checks in brew audit.
So let's audit neovim after we installed it.

Thanks!


missing letter in message (possiby => possibly)

Hello. For some reason the appveyor CI did hang (it happens sometimes...).
You should be able to force a refresh by issue a git push --force upstream of your branch.


Including a material icon in a custom plugin

Love the material skin and would like to include a material style icon in my plugin.
Looked through docs and could not see how to specify a "material alt" icon.
Is there a way for me to add this to my plugin and get material to use it whilst using the original for non-material converts?
My plugin is here https://github.com/codechimp-org/lms-tvh

There is no way, material itself maps from LMS icons to material-style icons. This is done via the MaterialSkin/HTML/material/html/misc/icon-map.json file

OK - will you accept a pull request if I provide the icon/updated map file?

Of course! Saves me doing it :)

Perhaps the tv icon here - https://material.io/resources/icons/?style=baseline ??

I was going to provide the official TVH icon into /lms-material/tree/master/MaterialSkin/HTML/material/html/images
It will go material/mono quite easily with my Sketch skills - https://worldvectorlogo.com/logo/tvheadend

I can download, and fix that for Material if you like. Not sure what then entry in icon-map.json should be.

Just working that out myself and half way through the material icon fix, I'll PR you both shortly.

Icon added now.

I suggest, if its OK, that you rename your icon to tvheadend.png then the mapping becomes: "/tvheadend.png":{"svg":"tvheadend"},

Or "/TVH/html/images/radio.png":{"svg":"tvheadend"}, if you don't want to rename, and TVH is the plugin's folder name.

Got impatient, so implemented :)

p.s. App shows as "TVH" in app list - not a very friendly name. Perhaps "TVHeadend" might be better?

I was halfway through changing my repo lol. I'll undo that.
Everyone knows it as TVH and technically it's a bit like Spotty, not Spotify but something that talks to Spotify.
Thanks for the very quick update.


Sort units by scale

Is your improvement request related to a problem? Please describe.
When selecting custom units in different menus, one would expect them to be sorted by scale like "Pa, kPa, bar, MPa...". There is no sorting today so the appear in no specific order.
Describe the solution you'd like
This is basically about returning a sorted list in rUnitScales by modifying
void Configuration::getUnitScales(const QString &rQuantity, QList &rUnitScales)
...since this is used to populated the menus.
Describe alternatives you've considered
Sorting in suggested commit below is done when getting values. Can also be done when setting them I guess.
Additional context
If you like the idea I can make a pull request. See
https://github.com/MarkusBagge/hopsan/commit/c9406b9f19089777e944670c631a1e6a9782c9d5

Related to #1483

Yes please, make pull request, looked over the code, seems resonable. Will review PR more thoroughly

Pull request #1809


AMBARI-25218. Updating guava version

Guava version updated to 24.1.1
Java min version updated to 1.8

What changes were proposed in this pull request?
Updating guava version due to CVE issues
How was this patch tested?
UT, Cluster setup

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/Ambari-Github-PullRequest-Builder/5608/
Test FAILed.
Test FAILured.

retest this please

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/Ambari-Github-PullRequest-Builder/5611/
Test FAILed.
Test FAILured.


Should recommend list() be replaced with []

test.py
l = list()
print(l)

$ flake8 test.py

Actual: (no output)
Expected: I think perhaps this should output that list() is better written as []. Same is true for dict() -> {}.
I see this as being very similar to "Unnecessary generator - rewrite as a list comprehension.", except it is a literal instead of a comprehension.
What do you think?
Noticed while running against the Django codebase:
https://github.com/django/django/blob/f3427ccb25806bb062becad0d6a0904930b36635/tests/model_inheritance/test_abstract_inheritance.py#L321

I guess, but also taking the library a bit out of its remit of "comprehensions". I wish I gave it a more generic name 🤔


Fixes #1017 by cascading __call to mounted ControllerCollection

all method calls that are handled by ControllerCollection::__call
will be recorded and replayed for a mounted ControllerCollection.
forward method calls to already mounted ControllerCollections
in the list of controllers.
include support for route-level middlewares using a priority
queue for the callbacks. insertion order is preserved by converting
the priority to an array and negative count as the subordinate
priority

A few things:

There are a number of things going on in this PR, and I would like to see the two parts (cascading calls, and before/after priorities) in separate PRs, as they address separate issues.

On one hand I like the caching of the cascading calls, but this raises a few issues in and of it's self:

If you are going to cache, the cached calls should be called on both mount as well as match.
Caching the calls prevents garbage collection from ever releasing references in the cache.  This could be mitigated by clearing the calls cache on flush.

There are a number of things going on in this PR, and I would like to see the two parts (cascading calls, and before/after priorities) in separate PRs, as they address separate issues.

If separate commits would get this merged, I'd separate them, but I don't really view them as separate issues b/c the problem is that ControllerCollection middleware do not follow the same semantics as Application middleware, and this commit fixes that by addressing the two pieces of that problem.

On one hand I like the caching of the cascading calls, but this raises a few issues in and of it's self:

If you are going to cache, the cached calls should be called on both mount as well as match.

match already has a caching mechanism - ControllerCollection->defaultRoute - the defaultRoute is cloned and passed to new Controller instances created in match.

Caching the calls prevents garbage collection from ever releasing references in the cache. This could be mitigated by clearing the calls cache on flush.

I think this is the case for all callbacks passed into a Silex method - nothing is ever unset to remove references to callbacks passed into any type.

there is a big issue with this change: handling 2 requests with your Silex app is not possible anymore, because the first request will empty the priority queue when iterating over it.

@stof, thanks for your comment:

there is a big issue with this change: handling 2 requests with your Silex app is not possible anymore, because the first request will empty the priority queue when iterating over it.

I wondered about this, but there are no test cases that demonstrate how it would come to pass that the list of Route middleware would be iterated multiple times. If you can provide a test case that illustrates the problem, I think there is a simple fix.

@jstewmon
<?php

use Symfony\Component\HttpFoundation\Request;
use Silex\Application;

require "vendor/autoload.php";

$app = new Application();
$app['counter'] = 0;

$app->get('/', function () use ($app) {
    return $app['counter'];
})->before(function () use ($app) {
    $app['counter'] = $app['counter'] + 1;
});

for ($i = 0; $i < 5; $i++) {
    echo $app->handle(Request::create('/'))->getContent() . "\n";
}

Cloning the queue before it is iterated should fix it?

@davedevelopment, thanks for the example.
Cloning the queue is exactly what I had in mind. I updated the PR branch to clone and added a test to demonstrate the use case (subsequent push was to fix an unrelated linting error in ApplicationTest.php).


tests: add tests for writing hive-partitioned parquet

Which issue does this PR close?
Closes #9237
Rationale for this change
Took this open ticket which was to update the tests around the parquet partition writing feature... https://github.com/apache/arrow-datafusion/issues/9237#issuecomment-1951850821
What changes are included in this PR?
Test updates
Are these changes tested?
The changes are tests :)
Are there any user-facing changes?
No

Thanks again @tshauck
cc @devinjdangelo


display import modal

Summary
Display the 3-dot menu with the Import item on page and docs manager.
Clicking on this item display the import modal.
For now, the modal does not actually import selected zip files.

What are the specific steps to test this change?
use pro-4272-import-modal branch of apostrophe. (now on main)
setting import: false on the page module, on project side, should remove the 3-dots menu
same for the pieces, setting it to articles for instance should hide the menu, only for articles manager modal.
What kind of change does this PR introduce?
(Check at least one)

[ ] Bug fix
[x] New feature
[ ] Refactor
[ ] Documentation
[ ] Build-related changes
[ ] Other

Make sure the PR fulfills these requirements:

[x] It includes a) the existing issue ID being resolved, b) a convincing reason for adding this feature, or c) a clear description of the bug it resolves
[ ] The changelog is updated
[ ] Related documentation has been updated
[ ] Related tests have been updated

If adding a new feature without an already open issue, it's best to open a feature request issue first and wait for approval before working on it.
Other information:

final:


Add support for Consul security

Support Consul's security features. Consul-template already has these implemented (see https://github.com/hashicorp/consul-template#usage)

[ ] ACL token support (dup of issue #125)
[ ] http basic authentication
[ ] SSL
[ ] SSL verification

Great, thanks for starting to track this.

Is this not already supported implicitly by the environment variable lookups done at https://github.com/hashicorp/consul/blob/master/api/api.go#L129-L173 ?
Or is this issue more about having a registrator specific way of specifying the auth, e.g. in the registry URI consul://user:pass@<IP_ADDRESS>:8500?

Does registrator support Consul's ACL system?

@jsok interesting, it does look like those environment variables could work. Have you tried it out? @progrium may have some more thoughts on whether it's better to document those as the recommended way of configuring Consul auth, or make it part of the registrator URI format.
@fmahnke registrator doesn't have explicit support for ACL tokens yet (see the checklist in the first comment), though as @jsok noted, the Consul API code does recognize certain environment variables, so you may be able to configure it by setting those (though I haven't checked whether the latest registrator builds include that Consul code yet). We'll update this ticket and the documentation once there is an official method for setting Consul auth configuration values.

i tested it and you can set an acl token by enviroment variable:
eg.
docker run -d -v /var/run/docker.sock:/tmp/docker.sock -h node1 -e CONSUL_HTTP_TOKEN="<token with write permission to service>" --name regis gliderlabs/registrator:master -ip <IP_ADDRESS> consul://<IP_ADDRESS>:8500

this enviroment variable is ignored in lastest , in master it works

To achieve what Markus @Shinzu  suggested with progrium/consul docker image I needed to inject it with newly compiled binary using -v flag, like this:
sudo docker run -d -v /opt/consul/config/:/config/ -v /opt/bin/consul:/bin/consul -p 8400:8400 -p 8500:8500 -p 8600:53/udp -h node1 progrium/consul -server -bootstrap
After that I finally got services registered with CONSUL_HTTP_TOKEN env variable.

Okay, so latest Registrator has supported ACL tokens for a while now because of the Consul library's support of environment variables. It would be good if somebody wanted to update the docs about this, so we'll do that.
Regarding the rest of the items in the checklist... registrator is meant to be used with Consul agent on the same host. In that case TLS and auth and such aren't that relevant ... so unless people have specific requests because they need it, I'd rather close this out after we document the environment variable.

@progrium We have setup where Consul listens on the external interface as well as uses certs for security. Registrator without supporting TLS wouldn't be able to talk to Consul agent running on the local machine in that scenario, or can it ?

@TalonOne Have you tried it?

@progrium I just had a chance to try this out and it looks like registrator fails connecting to a consul agent on my local machine over TLS.
I guess registrator would need a way to consume cert/keys which it can use to authenticate to the consul agent running on local box exposing its api over https://<IP_ADDRESS>:85xx.
Is this the current expected behavior or am I missing anything obvious ?
My Configuration: Docker 1.7.1, Consul 0.5.2, registrator:v6

I'm trying to set up a Consul + Registrator environment where Consul is protected with SSL and the API token.
I did not find the information on how to tell Registrator that Consul uses security from the official docks, but @sergeatrelayr's comment did the trick:
Before
registrator_1 | 2015/10/18 18:57:51 Starting registrator v6 ...
registrator_1 | 2015/10/18 18:57:51 consul: Get http://consul:8500/v1/status/leader: dial tcp <IP_ADDRESS>:8500: connection refused

After adding CONSUL_HTTP_TOKEN env variable
2015/10/18 19:00:23 Starting registrator v6 ...
2015/10/18 19:00:24 consul: Get http://consul:8500/v1/status/leader?token=cg8StVXbQJ0gvvMd9o7yrg%3D%3D: dial tcp <IP_ADDRESS>:8500: connection refused
2015/10/18 19:01:18 Starting registrator v6 ...
2015/10/18 19:01:18 consul: current leader
2015/10/18 19:01:18 Using consul adapter: consul://consul:8500
2015/10/18 19:01:18 Listening for Docker events ...
2015/10/18 19:01:18 Syncing services on 4 containers

Who runs consul on external port with tls, is any opportunity to connect registrator to it?

+1

docker run --rm \
        --name=registrator0 \
        --net=host \
        --restart unless-stopped \
        -h $HOSTNAME \
        --volume=/var/run/docker.sock:/tmp/docker.sock \
        -e "CONSUL_CACERT=/etc/nginx/ssl/test.crt" \
        -e "CONSUL_TLSCERT=/etc/nginx/ssl/test.crt" \
        -e "CONSUL_TLSKEY=/etc/nginx/ssl/test.key" \
        gliderlabs/registrator:latest \
            -ip <IP_ADDRESS> \
            consul-tls://<IP_ADDRESS>:443

latest registrator and docker gives me this:
2016/08/09 17:23:37 Starting registrator v7 ...
2016/08/09 17:23:37 Forcing host IP to <IP_ADDRESS>
2016/08/09 17:23:37 unrecognized adapter: consul-tls://<IP_ADDRESS>


Is there a way to destroy a DPM request?

To address #11, I'm specifying DPM02 for my DPM context. I had a datalogger job fail overnight, now when I try to restart I'm given a [1 -6] error essentially saying the connection timed out or the job is already queued. Is there a way to tell DPM to destroy all jobs in the queue for the machine I'm on? If not, I think this would be very usefull.

Actually, the error appears to be what you get if you are not on the right network to connect to DPM. I had assumed fgz was sufficient to connect to the DPM. I connected through vpn.fnal.gov and now it is connecting as expected. Not sure, If I tricked the DPM into thinking Im a new request or fgz isnt sufficient to DPM.

You can stop all your front-end requests by calling dpm.stop(). dpm.start() will restart all your requests. The connection to DPM isn't restarted, however. To do that you have to exit the async with DpmContext scope so things get cleaned up.
But even though there are these workarounds, we don't want our users to have to know about them or use them. The dpm module is supposed to recover from transient errors so I believe you found a bug. Unfortunately it might take a while to reproduce the error, so you might have to use the workarounds. ☹

The fgz vs VPN event is a coincidence.
@charlieking65 found DPM02 crashed last night in a way that it wasn't taking requests anymore. He must have restarted in between you being on fgz and VPN. To be clear fgz should be fine for DPM access.
The [1 -6] ACNET_REQTMO is saying that it can't find DPM02.
In the future, this should be invisible as you failover to another DPM. I created #14 to make this even more seamless. At the moment, when switching DPMs the request will start again meaning that the developer needs to know that the switch has happened and throw collected data away and start over.
The need to specify DPM02 is driven by the fact that we have multiple DPM versions deployed at the moment. DPM02 has the newest code, but because you had this issue overnight we'll have to look at things closer before deploying it to all the DPMs. Once the newest code is deployed, setting dpm_node=None will enable service discovery to find the best DPM for you and failover in the case of an error like this.

Once the newest code is deployed, setting dpm_node=None will enable service discovery to find the best DPM for you and failover in the case of an error like this.

I'm going to work on the backward-compatible Kerberos support this morning. Hopefully we can get this out soon.

By chance, is DPM02 dead again. I re-ran my script again this morning and it stalled at the same spot.

By chance, is DPM02 dead again? I re-ran my script again this morning and it stalled at the same spot.

This sort of question should be asked in Slack. 😄

Thanks!


Prove freeness for SLists

https://github.com/vikraman/generalised-species/tree/master/gpd/SList/SMGStructure


⚠ Processors has degraded performance

In dd02ea0, Processors ($STATUS_URL) experienced degraded performance:

HTTP code: 200
Response time: 58 ms

Resolved: Processors performance has improved in b371a3f.


DIsable Approve button on proposal if user has already approved.

For Multi DAO, if the current connected wallet has already approved a proposal. Disable the Approve button.

thinking we should hide the "Sign Transaction" + Button if they have already approved.


Saving sessions with MongoDB

I'm trying to save sessions (for many users) in mongoDB, but the problem is keys generated by this library are not uniq,
this is my code and a db saved data example :
import db from 'db';

class AsyncStorage {

  async get(key) {
    let data = await db.sessions.findOne({
      key
    });

    if (data && data.value) {
      return data.value;
    }

    return null;
  };

  async set(key, value) {
    let session = {
      key,
      value
    };

    let pro = await new db.sessions(session).save();

    return pro;
  };
  async remove(keys) {
    let pro = await db.sessions.remove({
      key: {
        $in: keys
      }
    });

    return pro;
  };

  async clear() {
    let pro = await db.sessions.drop();

    return pro;
  };
}

module.exports = AsyncStorage;

Sample DB data :
/* 1 */
{
    "_id" : ObjectId("595dbc058724342c57b34de5"),
    "key" : "dc2_auth_key",
    "value" : "something",
    "__v" : 0
}

/* 2 */
{
    "_id" : ObjectId("595dbc058724342c57b34de6"),
    "key" : "dc2_server_salt",
    "value" : "something",
    "__v" : 0
}

/* 3 */
{
    "_id" : ObjectId("595dbc078724342c57b34de7"),
    "key" : "dc2_server_salt",
    "value" : "something",
    "__v" : 0
}

/* 4 */
{
    "_id" : ObjectId("595dbc078724342c57b34de8"),
    "key" : "nearest_dc",
    "value" : 2,
    "__v" : 0
}

/* 5 */
{
    "_id" : ObjectId("595dbc078724342c57b34de9"),
    "key" : "dc",
    "value" : 2,
    "__v" : 0
}

if another user need to use his session to work with API, How can I implement it?

Save the whole storage not just one key for every user.

With this storage structure, How can I do it?

It was assumed that the library does not mess with data storage management, even in this case. The next version probably will be able to store unique instances, but I don't know yet how it should look

@elyas74 You can prepend a user id before every key

My solution for this problem was this, exactly what @wfjsw said, a user id or something uniq.
code may help others.
import db from 'db';

class AsyncStorage {

  constructor(phone_number) {
    this.phone_number = phone_number;
  }

  async get(key) {
    let data = await db.sessions.findOne({
      phone_number: this.phone_number,
      key
    });

    if (data && data.value) {
      return data.value;
    }

    return null;
  };

  async set(key, value) {
    let session = {
      phone_number: this.phone_number,
      key,
      value
    };

    // let pro = await new db.sessions(session).save();
    let pro = await db.sessions.update({
      phone_number: this.phone_number,
      key
    }, session, {
      upsert: true
    });

    return pro;
  };

  async remove(keys) {
    let pro = await db.sessions.remove({
      phone_number: this.phone_number,
      key: {
        $in: keys
      }
    });

    return pro;
  };

  async clear() {
    let pro = await db.sessions.drop();

    return pro;
  };
}

module.exports = AsyncStorage;


Import as agx prefab several times will create multiple copies of materials etc

It would be really nice if it would be possible to import as prefab multiple times and replacing the data for each imported object that already exists since before.
Right now I get multiple contactmaterials, materials etc...
Also, I really want to keep the Unity objects so that references to transforms, materials joints etc. are kept.
So only the underlying data, not the actual references should change.

Are you sure the name of the .agx file is the same? The already created files should be updated with the new values and Unity is handling the prefab instances.

Completely 100% positive.
Importing an .agx file once generate friction models and materials and contact materials
Importing same file again, generates additional materials with the same name.
So I need to delete data directory and generated prefab and re-import. Which leads to lost references.


Middleware doesn't work with useUser composable

Hi,
i created a nuxt middleware to restrict access to certain pages.
Therefore i imported the useUser composable and tried to check the isLoggedIn status.
But i got the following error:

-> "Shopware context is not available"
Did i do something wrong or is this not supported yet?
Thank you in advance for checking.

hey @benjamin-ott !
Could you provide a small reproduction of that middleware using our Nuxt template?
https://stackblitz.com/github/shopware/frontends/tree/main/templates/vue-blank
or
https://stackblitz.com/github/shopware/frontends/tree/main/templates/vue-demo-store

@patzick no problem.
Please just copy the 2 following files in an existing vue-demo-store setup:
vue-demo-store-middleware-test.zip

hey @benjamin-ott
sorry it took so long, needed to discover some possibilities.
Overall Nuxt guards are something unusual and they are fired outside Vue instance, so they do not have access to application data in a "standard Vue's way".
Trying a way with middleware was causing more and more troubles it requires either do something like
  nuxtApp.hook("vue:setup", () => {
    const sessionContextData = useState("swSessionContext");
    //...

which not always work! Or so dome additional data fetching with API client, but then hard to pass it back to Vue's instance.
Also with Nuxt middlewares you need to register them in every page component, so for example you cannot register it on AccountLayout and be done with auth.
Proposed solution
For that I prepared a separate composable inside the template. So this way you can do
<script setup lang="ts">
useAuthGuardRedirection();
</script>

inside any page or layout component. It will not only block access to page on SSR/CRS, but also will throw you out in case your login state changes being on that page. Logic of the composable can be adjusted to your needs, it's only a suggested way of handling this. But if you'll have some better ideas let us know :)
composable is here: https://github.com/shopware/frontends/blob/main/templates/vue-demo-store/composables/useAuthGuard.ts
and usage examples:

https://github.com/shopware/frontends/blob/main/templates/vue-demo-store/layouts/account.vue#L8
https://github.com/shopware/frontends/blob/main/templates/vue-demo-store/pages/checkout/success/[id].vue#L2

Is that helpful enough for you?

hi @patzick,
thank you very much, this looks promising and should solve our use case (limit certain pages to logged in users)
I will try this as soon as possible.
But i need to update the @shopware-pwa/composables-next package right? As of now it seems there is no new version available.
Thanks again.

@benjamin-ott it's released now :)

@patzick Thank you for helping out! It works really well and solves our use case.


PA2 level 5?

To give context, the way I did this question was to start from the StateM returned by the recursive ack calls, so even for the else if part of the code, I cant seem to trace how doing StateM.put("funcstat").flatMap(x -> ack("recursivecall") even works. By the way the terms in quotation are just placeholders.
And then, everyone is doing decrement depth after increment depth, but I completely dont understand the logic behind it. Can someone explain in simple terms why do I need a decrement depth? So far every post seems to be saying to just do it, but I dont even understand why I need an increment depth, much less why I need a decrement depth?

For context, this is a snippet of code sent to me by my friend, I have no idea whether it works or not. But can someone explain how do i trace anything here? Especially the line of code within the else if statement, I dont get why it returns the StateM that I want

My understanding is that in the above code snippet when you do x.inc(), x is whatever that has been passed by the accept statement of the test cases given, in the context of the public test cases, its a new FuncStat() which initialises count and maxDepth to 0. Increment calls in this case just makes it a funcstat of (1,1). When I put this funcstat inside a stateM, i get a stateM with functstat of (1,1) as my state, then when you flatMap over, how does flatMap know how to combine the funcstat of (1,1) with the funcstat returned inside the state returned by ack?

Nvm I got it the flatMap part already, can someone explain the decrement depth?

Nvm solved.

The idea is that you want to use a global variable to track the current depth of the current ack method function call. Let's look at a simple example ack(1, 0) first:
1. ack(1, 0) current depth: 1
└── 2. ack(0, 1) current depth: 2
    └── returns 2

When you call line 1, you increment depth by one so you know that function call is of depth 1. When you are in line 2, you increment depth from 1 to 2 so you know that at line 2 you are at depth 2. So why decrement then? You need that when you have the nested ack call where there is "branching" of the ack statements. Let's look at a slightly more complicated example ack(1,1)
1. ack(1, 1) DEPTH 1
├── 2. ack(0, ack(1, 0)) DEPTH 2
│   └── 3. ack(0, 1) DEPTH 3 (returns 2)
└── 4. ack(0, 2) DEPTH 2 (returns 3)

At line 4, the only way for ack(0, 2) to know that its depth is 2 is if you decrement depth after line 3 ack(0, 1). This is so that if line 4 has any other ack method calls, they know what their corresponding depth is.
ack(4,0) DEPTH 1
ack(3,1) DEPTH 2
ack(2, ack(3,0)) DEPTH 3
├── ack(2,1) DEPTH 4
│   ├── ack(1, ack(2,0) DEPTH 5
│   │   └── ack(1,1) DEPTH 6
│   │       ├── ack(0, ack(1,0)) DEPTH 7
│   │       │   └── ack(0,1) DEPTH 8
│   │       └── ack(0,2) DEPTH 7
│   └── ack(1, 3) DEPTH 5
│       ├── ack(0, ack(3, 2)) DEPTH 6
│       │   └── ...
│       └── ... DEPTH 6
└── ... DEPTH 4

@TongZhengHong Can check if my understanding is correct? The main idea is using depth to capture the current depth of each method, then each time upon incrementing depth, check if there is a need to update maxDepth and update accordingly if need be. Once function exits, decrement depth because im going back up the tree for every ack closure. So depth accurately reflects the current depth that my function is, while maxDepth reflects what is the maximum depth i have come across at this point. And then somewhere along the chain, maxDepth just gets passed all the way up and my final answer will reflect that maxDepth correctly.

yes, you got it :)👍

An explanation for flatMap can be found here.


UI for a wait step that continues on failure

I'd like a UI for the YAML under the subheading "Continuing on failure" in the documentation.
Could we have a check box (or whatever) in the UI for the wait job step that expresses the intention to continue even if the previous steps failed?
Right now, it seems the only way to implement this is by uploading YAML files which hides the details of the steps from the web interface, increases the conceptual complexity of the pipeline and increases the risk of error when editing a YAML file by hand should the steps need changing.

@kielgillard 👋 we hear you! We've got a secret feature that allows you to manage pipelines in the UI by describing them with the same YAML syntax that you use for pipeline uploads. Is that something you'd be interested in testing? You'd be able to define steps with the continue_on_failure flag then.

Turns out, after reconsidering the problem, we didn't need the wait step, so I might pass on testing it. But thank you anyway, I really appreciate it. I'm very suprised though: has there not been any demand for a UI for this kind of step?

Hey @kielgillard! Sorry for the delayed reply 😅You got me curious about requests for this feature, so I went and had a look through our support system and github issues - surprisingly, you're the first to ask! We're always keen to hear about different use cases, so thanks for letting us know that it would be useful for you 👌🏻👍🏻
I'm going to close this for now, but definitely shoot us an email at<EMAIL_ADDRESS>if you run into any other issues! 🙏🏻


show Grand Exchange buy limit

A option to toggle to see how much of a certain item you have bought

Duplicate of #9169


Can't locate folder for external scripts

Hi there! I can't seem to locate the folder Esse uses for external scripts.
I read the help page:

External scripts are stored in Esse’ folder on iCloud drive, you can access it in Files app on iOS and in Finder on macOS. Esse monitors this folder for changes and refreshes scripts automatically, but you can do it manually as well from app settings.

I don't have an Esse folder in my iCloud drive after installing Esse on both macOS and iPadOS. I tried creating an Esse folder myself in my iCloud drive and putting a script in  both /Esse/ExternalScript.js and /Esse/scripts/ExternalScript.js but that didn't do anything.
I have the feeling I might be missing something obvious, but I can't figure out what it is.

Thank you, it's a known issue, iCloud folder is not created in some cases, I'm working on an update, stay tuned.
On Mac you can set a custom folder through app's menu, on iOS there is no workaround

@villeodell check out this build


Raw request

Hey, so we would like to consume the raw request, but it seems it's not possible. The reason for doing this is the body contains binary data we need to consume as is.

Could you provide some minimal examples? What's your request data look like? If it's not related to OpenAPI generation, you may need to request this feature in Flask itself.

Could you provide some minimal examples? What's your request data look like? If it's not related to OpenAPI generation, you may need to request this feature in Flask itself.

Yes so the request will look like this:
POST /upload
Content-Type: image.jpeg
Body: <image data>

We can grab the reqeust data from flask like so:
from flask import request
from apiflask import App

app = App()

@app.post('/upload')
def upload():
   request.body # Do something with the body

The issue is there isn't anyway to tell APIFlask to emit a spec which indicates the endpoint accepts binary data as the body  nor does there seem to be a way override manually the generated spec via the api.doc decorator when we need to bypass the default behaviour beyond a global app level decorator which is a bit more complicated to do.


RouterLink invalid route parameters

I define route:
{
        path: "/photos/:id(\\d+)",
        name: "Photos",
        component: Photos
}

In Photos I define:
export let id;
In RouterLink  I define:
let photoId = 5;

<RouterLink to={{ name: 'Photos', parms: { id: photoId } }}>
          Photos
</RouterLink>

And routing to component Photos  not working in console is error:
svelte-router/link, invalid route parameters, :TypeError: Expected "id" to be a string

I redefine route but still getting error:
{
        path: "/photos/:id(\\d+)",
        name: "PHOTOS",
        component: Photos,
        props: route => {
          return {
            id: route.params.id
          };
        }
      }

@sysmat just to double check:

You have a type here {{ name: 'Photos', parms: { id: photoId } }} parms
Are you using the latest version of the router? v1.0.16 has introduces the automatic number props parsing

Yes I have
"devDependencies": {
    "@spaceavocado/svelte-router": "^1.0.16",
...

error:
svelte-router/link, invalid route parameters, :TypeError: Expected "id" to be a string
// Resolve route object to URL
  $: {
    if (tc.isObject(to)) {
      try {
        to = $router.routeURL(to);
      } catch (e) {
        console.error(`svelte-router/link, ${e.message}`);
        to = '';
      }
    }
    matchUrl = trimPrefix(to, $router.basename);
  }

Error in console is when app is loaded(error in createRouter )
I'm using rollup
So in this definition id is path parameter
Is it possible to have query parameters?

@sysmat so what what about the first question:

You have a type here {{ name: 'Photos', parms: { id: photoId } }} parms

= misspelled params, "parms"

Is it possible to have query parameters?
Yes, https://github.com/spaceavocado/svelte-router#location-object


Handles Crash the game

Describe the Bug
By placing handles the game instantly crashes and shuts down
Reproduction Steps
1.place a handle
2.
3.
...
Expected Result
Crash
Screenshots and Videos
No response
Crash Report or Log
No response
Operating System
Windows 10
Mod Version
0.4.0b
Minecraft Version
1.18.1
Other Mods
No response
Additional Context
No response

please give a log file.

Closing this unless and until any actionable information is provided.


Right-click to make a menu and VSC Not Responding

I right-click to make a menu and keep it for a long time(no more than one minute). It will report VSC Not Responding. But the fact is reverse. Actually, it is responding.

VSCode Version: Code 1.3.0 (e724f269ded347b49fcf1657fc576399354e6703, 2016-07-07T16:56:12.476Z)
OS Version: Windows_NT ia32 10.0.10586

Steps to Reproduce:
1.

duplicate https://github.com/Microsoft/vscode/issues/6414

YUP :D


Investigate, design initial performance tests for ALM

See:  https://www.redhat.com/archives/almighty-public/2016-October/msg00027.html
Tools to investigate:

https://httpd.apache.org/docs/2.4/programs/ab.html
https://www.perfcake.org/

Maybe you can check this one also: https://github.com/tsenart/vegeta

Apache AB and Vegeta are very hammer on a 'single URL' focused. I think we want something that is more user near, where we can define scenarios that represent more what a user would do.

Max just suggested:
An ongoing (daily) performance/throughput status test - We want to be able to track consistency of performance as exhibited by our production instance. This is not meant to be an exhaustive performance test, but rather is intended to highlight only unexpected and sudden changes in throughput.

OpenShift Cluster load setup:
https://github.com/openshift/svt/tree/master/openshift_scalability#using-cluster-loader-with---auto-gen-for-dynamic-jmeter-pod-creation
Can spawn multiple JMeter pods to simulate load etc..

Summary of planned tests:
Test type 1 - Core Throughput

Tests will directly access REST endpoint URLs and bypass UI
Tests will be implemented with https://www.perfcake.org/
First test to be built will be that suggested by Max - CRUD operations on workitems run on a daily/hourly basis to track trends

There is probably a typo here. Is the ratio 1:10 or 1:20?
Recommendation from Perfcake team, based on EAP/Fuse testing, is a 1/20 ratio of test threads to human users (1 thread ~= 10 users)

Do you plan to run these tests in production-like environment, i.e. in OpenShift? If yes, how will be this environment provisioned? If no, how do we measure performance decrease caused by OpenShift itself?

I think that, in order to isolate any performance issues, we will have to test on both a physical network, and in a production/openshiift environment.

Would it make sense to use some cloud provider (Blazemeter or similar) for perf testing until we prepare proper lab etc?

Basic perfcake scenario to create workitems:
<?xml version="1.0" encoding="utf-8"?>
 <scenario xmlns="urn:perfcake:scenario:7.0">
    <run type="time" value="10000"/>
    <generator class="DefaultMessageGenerator"
               threads="${thread.count:10}"/>
    <sender class="HttpSender">
       <target>http://localhost:8080/api/workitems</target>
       <property name="method" value="POST"/>
       <property name="expectedResponseCodes" value="201"/>
    </sender>
    <reporting>
       <reporter class="ResponseTimeStatsReporter">
          <property name="minimumEnabled" value="false"/>
          <property name="maximumEnabled" value="false"/>
          <destination class="ChartDestination">
             <period type="time" value="1000"/>
             <property name="name" value="Response Time"/>
             <property name="group" value="rt"/>
             <property name="yAxis" value="Response Time [ms]"/>
             <property name="attributes" value="Result,Average"/>
          </destination>
          <destination class="ConsoleDestination">
             <period type="time" value="1000"/>
          </destination>
       </reporter>
    </reporting>

    <messages>
       <message content='{"type":"system.bug", "fields":{"system.title":"test this workitem", "system.owner":"tmaeder", "system.state":"open", "system.creator":"ldimaggi"}}'>
          <header name="HttpSender" value="POST" />
          <header name="Content-Type" value="application/json" />
          <header name="Accept" value="application/json" />
          <header name="Authorization" value="Bearer eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJmdWxsTmFtZSI6IlRlc3QgRGV2ZWxvcGVyIiwiaW1hZ2VVUkwiOiIiLCJ1dWlkIjoiZmZhOTJlMzQtNWM0ZC00Yjc0LWE3NzEtZDFiNGYzNjE4ZWI0In0.M9WEhgNXksZyfED0McyvQd_z_43BdDaFv3Ptwk20-r0hha_LLLsK0UcmZhoVR_VeVdWbuVfqjwE6GT7n4AaBexBa0w3opxytajEVY0iQaZWW3bjBZdie0UwhFAkw2PxdPF-6r02dh4l7xyRqDsvLtzLWqb6Jw9xuX5gWBLdJcHCB-ovaR4FTNQ3bIs2_wv2URaRMBbhBOlVKLjMQrgD625fo7n47DCpj7aXrp0KbWuRiCHJngCZmS7E0R3O4IkSosp3LFiKQgMp4E4qDPeBLVVNMrtO1dhQOT31gF1YvtAp2W-0yB-w-jRdy9D3OwXmLgSt-IzcRe4pA6nZl9Jw-hg" />
       </message>
    </messages>

 </scenario>

Update - January 6, 2017 - Steps to perform:

The test requires a full core/server install:
git clone git@github.com:almighty/almighty-core.git
make deps
make dev

Perfcake must also be installed
Java must be installed first
Download Perfcake binary - https://www.perfcake.org/download/
Download this Perfcake config file - https://github.com/ldimaggi/perfcake/blob/master/http-post-reporting.xml
Execute perfcake test with this shell command: $PERFCAKE_HOME/bin/perfcake.sh -s http-post-reporting.xml -Dthread.count=1

Configure the job to run nightly

Configure the job to report all results (pass or fail) in email to<EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS>

https://gitlab.cee.redhat.com/dtsd/housekeeping/issues/114

Where are we in getting a CRUD performance test for the core/platform - and what are the steps to complete this?
Test requirements - in order to create work items, the test requires:

Local Core server, running in dev mode (to generate tokens)
Local installation of perfcake

What do we have set up today?

Target server - KB has set up this server for us: api-perf.dev.rdu2c.fabric8.io
Perfcake config file and test execution script - https://github.com/ldimaggi/perfcake

Steps to complete the test

Create test configuration here: https://github.com/almighty/almighty-jobs/blob/master/devtools-ci-index.yaml

Notes:

https://github.com/almighty/almighty-jobs, create the job in the repo, it shows up here: https://ci.centos.org/view/Devtools/

Create a .sh file which you define in the job description https://github.com/almighty/almighty-jobs/blob/master/devtools-ci-index.yaml#L358

That will run a fresh centos:7 node. from there you can do what ever yum install etc etc you want

The configuration of the test will be easier if we use Docker - we need to find a Docker image for the core server (running in dev mode) and Java, then all we have to do is install Perfcake

Marking this as closed - the POC test is in place - https://ci.centos.org/job/devtools-perfcake/ - additional performance tests are now under design.


Erroneous control flow type narrowing in loops

TypeScript Version:  2.3.2
Code
const enum Escape {None, Any}

function scan(): void {
    let escape: Escape = Escape.None;

    while (true) {
        // Error: Operator '===' cannot be applied to types 'Escape.None' and 'Escape.Any'.
        escape = escape === Escape.Any ? Escape.None : Escape.Any;
    }
}

Expected behavior:
The type to be correctly broadened, since it's in a loop.
Actual behavior:
The error denoted in the code comment above the line in question.

Note that neither of these variants reproduce the bug:
// Variant 1
const enum Escape {None, Any}

function scan(): void {
    let escape = Escape.None as Escape;

    while (true) {
        escape = escape === Escape.Any ? Escape.None : Escape.Any;
    }
}

// Variant 2
function scan(): void {
    let escape = false;

    while (true) {
        escape = escape === true ? false : true;
    }
}

My current workaround is casting the escape in the condition, like in this:
const enum Escape {None, Any}

function scan(): void {
    let escape: Escape = Escape.None;

    while (true) {
        // No error here
        escape = (escape as Escape) === Escape.Any ? Escape.None : Escape.Any;
    }
}

Also, note that in my code, I have about 8-10 cases, for a while/switch-based finite state machine loop.

I just noticed what I believe is the same bug, but without the loop:
enum MyEnum {
    Foo,
    Bar
}

class MyClass {
    private state: MyEnum;

    // Set state to Bar
    private modify(){
        this.state = MyEnum.Bar;
    }

    public fn() {
        this.state = MyEnum.Foo

        this.modify();

        if (this.state === MyEnum.Bar) {
            // Do stuff here...
        }
    }
}

This produces the following error
tmp.ts(19,13): error TS2365: Operator '===' cannot be applied to types 'MyEnum.Foo' and 'MyEnum.Bar'.

Just tested this with tsc version 2.7.2
Seems that typescript doesn't think that variables of enum type can ever change?

Yours could change between checks, where mine theoretically couldn't.

Works now. Other comment is a dupe of 9998


local.argocd_add_on_config.ingressNginx and local.argocd_add_on_config.nginxIngress

Why there are the keys ingressNginx and nginxIngress? Looks like a mistake.
https://github.com/aws-samples/aws-eks-accelerator-for-terraform/blob/3ca142345b00d5546e0c2236b7eb60f862f995b0/locals.tf#L95
https://github.com/aws-samples/aws-eks-accelerator-for-terraform/blob/3ca142345b00d5546e0c2236b7eb60f862f995b0/locals.tf#L98

@schwichti yep and is resolved here. https://github.com/aws-samples/aws-eks-accelerator-for-terraform/pull/83
Thank you!

Resolved as of #83


Caching GetDescription for improved performance, memory allocation.

This PR adds caching to GetDescription, as well as a benchmark project that compares the cached and uncached versions in terms of performance and memory allocation. On my machine:

Method
Mean
Error
StdDev
Ratio
Gen 0
Gen 1
Gen 2
Allocated

Original
6,769.37 us
37.350 us
29.160 us
1.00
242.1875
-
-
758.3 KB

Cached
91.18 us
3.545 us
3.143 us
0.01
37.5977
-
-
115.5 KB

Thanks for the PR, I hope to finish first version of the package in January.
Happy holidays!.


allow comments in line protocol

fixes #3037
cc @beckettsean @jwilder

@neonstalwart -- thanks for the change, but I think you have misinterpreted the requirement. Ticket #3037 is about supporting comments in queries, not writes.
I'm closing this, but I am happy to re-open if I am mistaken.

@otoolep oh right :open_mouth:
well, if this is ever something someone wants, it was simple

I would actually love to have this so I can put comments directly into test data we re-use or into to more advanced tutorial or documentation examples. It wasn't enough of a current need for me to make an issue but I will request this eventually, guaranteed.
@otoolep any reason we can't merge this?

No reason, I only closed it because it didn't seem to be what we asked for. I've no objection to this feature, though I find it a little strange. I can accept it would be useful.
There is one test case I'd to see in place first. Let me comment further in this PR.

Actually, no need for the test case. +1 on the code.

Waiting for @jwilder to return and bless.

I'm fine with this.  :+1:


Not working with linkedin learning now

I tried with latest version as of data and getting below errors when the download is beginned.
Traceback (most recent call last):
  File "c:\python39\lib\site-packages\youtube_dl\YoutubeDL.py", line 815, in wrapper
    return func(self, *args, **kwargs)
  File "c:\python39\lib\site-packages\youtube_dl\YoutubeDL.py", line 836, in __extract_info
    ie_result = ie.extract(url)
  File "c:\python39\lib\site-packages\youtube_dl\extractor\common.py", line 534, in extract
    ie_result = self._real_extract(url)
  File "c:\python39\lib\site-packages\youtube_dl\extractor\linkedin.py", line 127, in _real_extract
    self._sort_formats(formats, ('width', 'height', 'source_preference', 'tbr', 'abr'))
  File "c:\python39\lib\site-packages\youtube_dl\extractor\common.py", line 1374, in _sort_formats
    raise ExtractorError('No video formats found')
youtube_dl.utils.ExtractorError: No video formats found; please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; see  https://yt-dl.org/update  on how to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.

The command used:
youtube-dl --username "myaccount" --password "mypassword" --verbose --sleep-interval 120 "https://www.linkedin.com/learning/using-python-with-excel"

Hi !
Try using this command :

youtube-dl --cookies cookies.txt --sleep-interval 120 https://www.linkedin.com/learning/using-python-with-excel -o "/output/folder/%(playlist)s/%(chapter_number)s - %(chapter)s/%(playlist_index)s - %(title)s.mp4" --write-sub --playlist-start 1

--cookies cookies.txt : !!! Required cookie from Linkedin. You can use cookies.txt add-on for Firefox to get it (you must log in before)
--sleep-interval 120 : wait 120 seconds between 2 videos.
-o "/output/folder/%(playlist)s/%(chapter_number)s - %(chapter)s/%(playlist_index)s - %(title)s.mp4" : to get a good formatted output file name.
 --write-sub : if you want subtitles (if present).
--playlist-start 1 : very useful when you want to restart from  a particular video from the playlist.

Thank you @Nico207 it is working.
But there is a small problem, --playlist-start option is not working and it starts from first video again if any course failed during download and want to resume from there.
It is manageable at present as I am downloading from a remote machine where internet disconnection is rare.
Also, can you please suggest how to download a complete learning path.

I'm having the same problem. Can someone explain further the part about the cookies? Is this a file I need to download and place in the same directory as youtube-dl?  Is there an option for people who use linked-in on chrome-based browsers like Edge or Opera?


Inherit from requirements.txt instead of duplicating

Fixes #358

Coverage remained the same at 69.197% when pulling a3182b584cd9eefe3efe922c6725c0d2044f067d on mterzo:simple_requirements into 35486e8e49725e48bfb76707f5f1f2d5537eb190 on voxpupuli:master.

I wonder if getting requirements.txt into setup.py / install_requires may be a good idea. Unduplicating some lines.
Found also setup.py / test_require option.

Closing for PR #358


[T2A4][T3-A4]Cherlynn Cha

@Cherc in this particular case, the comment was unnecessary! //rename method showToUser()


Android Things. Allow build included like .so ( i.e. Flutter runtime) to be stored uncompressed

i am having issues putting the builds onto Android things.
Putting debug builds works fine over adb locally.
But uploading a release apk that is built using flutter build apk does not work.
The issue is that the .so are compressed and this is not allowed for Android things.
The exact error is:
"All shared object libraries(*.so) in the APK should be uncompressed"
Is there an option to make a release build this way to android ?

steps to repo to upload an app to android things console:

Compile a simple flutter app for android using:
flutter build apk --target-platform android-arm --release

go to:  https://partner.android.com/things/console/

Navigate to the main hamburger menu and pick "App Library"

Upload your apk, and wait a bit and you will get your error message "All shared object libraries(*.so) in the APK should be uncompressed"

@jason-simmons: Is this something that is controlled by Gradle?

@chinmaygarde i tried a few settings in the gradle build that i found online that mentioned compression etc. Cant remember the links right now.
None worked when i tried, but am not at all experience in this.
Will be interesting what @jason-simmons thinks...

is this not a dup of #17134 ?

Is there anything else I can do to help ?
I also also running on the vim2 hardware for fuchsia and can test that also if needed with Android things.

Any word on this? I am seeing the same error


failing to access POD's in BGP network mode - ubuntu vm's (self hosted private network).

setting up a lab environment running Ubuntu 20.04.2, kubernetes with Calico in BGP mode.
Expected Behavior
Enabling BGP should allow communication to PODs directly from external hosts.
Current Behavior
As soon as bgp is enabled (with node to node mesh disabled) to peer with the external Gateway, all routes get updated to the upstream router. Traffic generated from an external host, reaches the K8S node, but tcpdump reveals that no reply (return)packets are leaving the node.
Just enabling node-to-node mesh (no bgppeer) also causes the PODs not being able to communicate anymore.
Once disabling all bgp parameters again (bringing back to default), all pod-to-pod communication (testing icmp) works again.
Possible Solution
Steps to Reproduce (for bugs)

Clean install ubuntu 20.04.2
prep system for docker/kubernetes (swapoff, sysctl net.bridge.bridge, etc).
init kubernetes with Pod nw <IP_ADDRESS>/16
apply calico manifest https://docs.projectcalico.org/manifests/calico.yaml && install+configure calicoctl
apply calico bgpconfiguration && bgpPeer parameters.
Setup BGP peering with FW/router.

Context
trying to setup a lab running kubernetes with bgp (security testing).
Your Environment

Ubuntu 20.04.2 (clean install, all updates installed).
Calico 3.19.1
docker 20.10.2
kubernetes 1.21.1
BGP Router (routes are published correctly to the router).

additional info :
root@k8s-node-1:/home/sysadmin# kubectl version
Client Version: version.Info{Major:"1", Minor:"21", GitVersion:"v1.21.1", GitCommit:"5e58841cce77d4bc13713ad2b91fa0d961e69192", GitTreeState:"clean", BuildDate:"2021-05-12T14:18:45Z", GoVersion:"go1.16.4", Compiler:"gc", Platform:"linux/amd64"}
Server Version: version.Info{Major:"1", Minor:"21", GitVersion:"v1.21.1", GitCommit:"5e58841cce77d4bc13713ad2b91fa0d961e69192", GitTreeState:"clean", BuildDate:"2021-05-12T14:12:29Z", GoVersion:"go1.16.4", Compiler:"gc", Platform:"linux/amd64"}`

root@k8s-node-1:/home/sysadmin# kubectl get pod --all-namespaces -o wide
NAMESPACE     NAME                                       READY   STATUS    RESTARTS   AGE     IP              NODE         NOMINATED NODE   READINESS GATES
default       nginx-7848d4b86f-sh6gh                     1/1     Running   0          5h12m   <IP_ADDRESS>   k8s-node-2   <none>           <none>
default       pingtest-64f9cb6b84-6l4ds                  1/1     Running   0          4h26m   <IP_ADDRESS>   k8s-node-2   <none>           <none>
default       pingtest-64f9cb6b84-hgmps                  1/1     Running   0          4h26m   <IP_ADDRESS>   k8s-node-2   <none>           <none>
default       pingtest-64f9cb6b84-vkvjr                  1/1     Running   0          4h26m   <IP_ADDRESS>   k8s-node-2   <none>           <none>
kube-system   calico-kube-controllers-78d6f96c7b-5ckbv   1/1     Running   2          3d      <IP_ADDRESS>   k8s-node-1   <none>           <none>
kube-system   calico-node-98lsj                          1/1     Running   1          2d3h    <IP_ADDRESS>   k8s-node-2   <none>           <none>
kube-system   calico-node-nz8wq                          1/1     Running   2          2d23h   <IP_ADDRESS>   k8s-node-1   <none>           <none>
kube-system   coredns-558bd4d5db-kmc45                   1/1     Running   2          3d      <IP_ADDRESS>   k8s-node-1   <none>           <none>
kube-system   coredns-558bd4d5db-ltbzk                   1/1     Running   2          3d      <IP_ADDRESS>   k8s-node-1   <none>           <none>
kube-system   etcd-k8s-node-1                            1/1     Running   2          3d      <IP_ADDRESS>   k8s-node-1   <none>           <none>
kube-system   kube-apiserver-k8s-node-1                  1/1     Running   2          3d      <IP_ADDRESS>   k8s-node-1   <none>           <none>
kube-system   kube-controller-manager-k8s-node-1         1/1     Running   2          3d      <IP_ADDRESS>   k8s-node-1   <none>           <none>
kube-system   kube-proxy-f78q4                           1/1     Running   1          2d3h    <IP_ADDRESS>   k8s-node-2   <none>           <none>
kube-system   kube-proxy-j4htr                           1/1     Running   2          3d      <IP_ADDRESS>   k8s-node-1   <none>           <none>
kube-system   kube-scheduler-k8s-node-1                  1/1     Running   2          3d      <IP_ADDRESS>   k8s-node-1   <none>           <none>

iptables drop increasing when generating traffic to the pod network. I am not very knowledgeable in this area yet, but to me it looks like all traffic to the POD network is being dropped:
root@k8s-node-2:/home/sysadmin# iptables -vL | grep DROP
Chain FORWARD (policy DROP 0 packets, 0 bytes)
    0     0 DROP       all  --  any    docker0  anywhere             anywhere
    0     0 DROP       all  --  any    any     anywhere             anywhere             /* kubernetes firewall for dropping marked packets */ mark match 0x8000/0x8000
    0     0 DROP       all  --  any    any    !localhost/8          localhost/8          /* block incoming localnet connections */ ! ctstate RELATED,ESTABLISHED,DNAT
    0     0 DROP       all  --  any    any     anywhere             anywhere             ctstate INVALID
    0     0 DROP       ipencap--  any    any     anywhere             anywhere             /* cali:_wjq-Yrma8Ly1Svo */ /* Drop IPIP packets from non-Calico hosts */
    41  2140 DROP       all  --  any    any     anywhere             <IP_ADDRESS>/16        /* cali:psm35bqDi_vI9aM9 */
    0     0 DROP       all  --  any    any     anywhere             anywhere             /* cali:bZYfqsceRMviPiBc */ /* Unknown interface */
    0     0 DROP       all  --  any    any     anywhere             anywhere             /* cali:q_xvxXmlJ2xyks76 */ ctstate INVALID
    0     0 DROP       udp  --  any    any     anywhere             anywhere             /* cali:K8gTCMRArs0ETI4l */ /* Drop VXLAN encapped packets originating in workloads */ multiport dports 4789
    0     0 DROP       ipencap--  any    any     anywhere             anywhere             /* cali:7KJ9DkOAVbFe2g2L */ /* Drop IPinIP encapped packets originating in workloads */
    0     0 DROP       all  --  any    any     anywhere             anywhere             /* cali:pH20ceaCrIw9Kf-q */ /* Drop if no profiles matched */
    0     0 DROP       all  --  any    any     anywhere             anywhere             /* cali:_DvGQJuD7ceUCn1G */ /* Unknown interface */
    0     0 DROP       all  --  any    any     anywhere             anywhere             /* cali:HOByjaLr-sSOR05N */ ctstate INVALID
    0     0 DROP       all  --  any    any     anywhere             anywhere             /* cali:uBdj7DqjApewyIEJ */ /* Drop if no profiles matched */

root@k8s-node-1:/home/sysadmin# calicoctl get bgppeer
NAME                  PEERIP           NODE       ASN
check-point-gateway   <IP_ADDRESS>   (global)   64511

root@k8s-node-1:/home/sysadmin# calicoctl get bgpconfiguration
NAME      LOGSEVERITY   MESHENABLED   ASNUMBER
default   Info          false         63400

root@k8s-node-1:/home/sysadmin# calicoctl node status
Calico process is running.

IPv4 BGP status
+----------------+-----------+-------+----------+-------------+
|  PEER ADDRESS  | PEER TYPE | STATE |  SINCE   |    INFO     |
+----------------+-----------+-------+----------+-------------+
| <IP_ADDRESS> | global    | up    | 07:26:02 | Established |
+----------------+-----------+-------+----------+-------------+

IPv6 BGP status
No IPv6 peers found.

root@k8s-node-1:/home/sysadmin# calicoctl get ippool -o yaml
apiVersion: projectcalico.org/v3
items:
- apiVersion: projectcalico.org/v3
  kind: IPPool
  metadata:
    creationTimestamp: "2021-05-22T12:48:24Z"
    name: default-ipv4-ippool
    resourceVersion: "4181"
    uid: d2c999d4-92e1-4fbb-9522-36df49e767f1
  spec:
    blockSize: 26
    cidr: <IP_ADDRESS>/16
    ipipMode: Always
    nodeSelector: all()
    vxlanMode: Never
kind: IPPoolList
metadata:
  resourceVersion: "230302"

@cowbalt sorry for the delay here! Missed this one.
It sounds likely to be something on the host, as BGP is established and packets are reaching the node. Do you know if packets are being dropped on arrival at the host, or are they making it to the pod and the response packets are being dropped?
Could you share the output of iptables-save -c? This will give me a better idea if something in iptables is dropping the packets incorrectly.

Not sure if the same but I had something like this on my lab setup. Setting serviceLoopPrevention to Disabled worked around it. Not ideal. (I added a non default ip pool, and that ended up getting added to a cali-cidr-block iptables rule. Found using iptables -vL | grep DROP).


[Feature] Conditionally remove docs page from sidebar

Description
There are situations where I want to keep a docs page on the site, but prevent it from appearing in the sidebar.  I'd like this configuration to live at the ng-doc.page.ts level.
Proposed solution
Add sidebar boolean field to NgDocPage interface.  When set to false, remove element from sidebar.
Alternatives considered
I've implemented my own sidebar which filters context.navigation, but an official integration would be nice.

Do you need this page in the production build? I'm asking because maybe you just want to create a development page to develop some components on it

Yes, still need the page in the production build.  Example: page link is available somewhere on the site, but not from the sidebar.

For pages that I don't want to show in the sidebar, but still want to render with ng-doc.
Nextra provides a way to do this:
https://nextra.site/docs/docs-theme/page-configuration#hidden-routes

Yes, I see and understand what you want, I just don't understand the use cases of this, but ok I'll add it to the next release

There are situations where I want a page but don't want it to crowd up the
sidebar.  I'm not sure how to explain it more than that.
On Sat, Mar 25, 2023, 5:03 AM Alex Skoropad @.***>
wrote:

Yes, I see and understand what you want, I just don't understand the use
cases of this, but ok I'll add it to the next release
—
Reply to this email directly, view it on GitHub
https://github.com/skoropadas/ng-doc/issues/35#issuecomment-1483806800,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AC3BMGHCHPFSUFHEZ7DWJ33W53NIXANCNFSM6AAAAAAWB2ALKU
.
You are receiving this because you commented.Message ID:
@.***>

No problem, it's not difficult to add I just wanted to understand all possible use cases of this feature to implement it correctly, I will release it with code blocks improvements

I decided to release this feature today because I need more time to finish the improvements for the code blocks, in addition I want to add several other features in the next release, improve the search that you requested earlier, a new version of the demo, and most likely the option demo that you asked in one of the tickets, in general the next release will be much more bigger than usual and I need more time to prepare it


glTFSerializer: Add texture transform support

This was originally going to be support for the KHR_texture_transform extension, but I ran into a bunch of edge cases in terms of implementing the fallback behavior.  So for now, if texture transform properties are applied to a texture, the texture file will be modified.  Should resolve https://github.com/BabylonJS/Babylon.js/issues/4974

This looks good so far:

Can you update the what's new file?
Can you provide one visual test where we serialize a scene and load it again to make sure we have a validation?
Would like to get @bghgary approval as well

Yeah sure thing

LGTM as well but completely agree on the validation test :-)

@sebavan @deltakosh does the validator visual test support promises?  It seems to exit before the serializer is able to execute since it waits for the scene to finish rendering.

Yes but you have to turn on the polyfill: BABYLON.PromisePolyfill.Apply(true);

Let's see how the CI feels about that :)

Let's see how the CI feels about that :) (and you have a conflict)


Can I get index of clicked parent?

Hi, I'm using this library and it's great.
I want add image button to parent view which opens popup window for some additional actions.
But I have no idea how to get parent item that is clicked. I can get adapterPosition on viewholder and send it through listener to adapter. But adapterPosition is absolute position in adapter... to get my object I must count only parent views, not parent and child.
Is there some method to get position of only parent views?
Or method which returns me list of all displayed items?
Please help me

I tried use getListItem(adapterPosition) but it returns ParrentWrapper and I don't know how to get my parent object from it...

I found a solution probably... but it is realy ugly...
((Recipe) ((ParentWrapper) getListItem(adapterPosition)).getParentListItem()).getId()

Thanks @fichna, in onBindParentViewHolder we give the ParentListItem associated with that view, you can store that as a variable in your ParentViewHolder so that it's not as ugly a chain of methods.
That's the current best solution I've come up with right now, let me know if it doesn't fit your needs.

i have similar problem, i want to notify child data changed, but i can't get parent and child locations? how can I get this data so i could pass it to method?

It would be nice to have some example of this

Hi, I'm relativity new to Android programming, so i don't know what days you need, in my child view i have button and when i press it,  some communication with server is done and if response is successful, i want to change color and text on that button in child view. For that there is a method from this library, but i need to pass parent and child position as parameters, so i could notify data set changed on that view. (In this case text and background color)

It's not days, is should be data, autocorrect made mistake.

Thanks for the feedback @fichna and @mrkidjordje, I will see about improving our documentation around this area (possibly improving the library itself to make this easier to configure).
I'm going to rename this issue and use it for tracking said work.

With #171 there is now a snapshot build that should let you access more information from the ViewHolders:

Added ParentViewHolder methods:

getParentListItem()
getParentAdapterPosition()

Added ChildViewHolder methods:

getChildListItem()
getParentAdapterPosition()
getChildAdapterPosition()

This required changing the package location so bumped up the version to 3.0.0, which means this will probably be a snapshot as we get more features in for the library.
Instructions on how to get the snapshot are available in the README at https://github.com/bignerdranch/expandable-recycler-view/tree/dev
Hope this helps everyone with their logic.

Hello. I am trying to use the:
compile 'com.bignerdranch.android:expandablerecyclerview:3.0.0-SNAPSHOT'

to use the new methods and get my currect parent possition, but when builded, I get this error:
Error:(31, 13) Failed to resolve: com.bignerdranch.android:expandablerecyclerview:3.0.0-SNAPSHOT
There are any error in the syntaxis of the version that I ang trying to get?
Thanks

@schelbin Hi there,
Did you add the snapshot repository? Instructions are the following:
Add Sonatype's snapshots to your repositories closure in the root build.gradle:
allprojects {
    repositories {
        maven { url "https://oss.sonatype.org/content/repositories/snapshots" }
    }
}

Hello, we've released 3.0.0-RC1 with a fix for this issue.
I would love your feedback with any issues you have with the solution before we make 3.0.0 final. Check out the Pull Request that contains the fix for your issue (should be referenced above), and the changelog for a list of changes that have come with 3.0.0 (there are a lot of them!).
If you have any issues feel free to re-open this issue with details of what you are seeing.
As a note, the method names have changes since the release above.


Fixing Issue #169

This PR solves issue #169

Added more information and a better way to read the Cmdlets of multiple lines

Added the correct way to check if a module exists or if it's not

Added 2 reports of the users with the passwordsNeverExpire attribute as CSV and as HTML.

Added an Image of how to use Powershell v5 and Nuget gallery to install a specific Module in this case AzureAD.

Preserved edits from @nenonix , If you want to add anything let me know.

Removed the reference to the AzureAD reference since that documentation is plain bad, It doesn't explain at all how to install the module that's the reason why I did it separately on this PR.

Please go to https://docs.microsoft.com/en-us/powershell/module/Azuread/?view=azureadps-2.0 and try to understand something, how is that related to how to install a module?, specific to the AzureAD module.

@dianef77 - can you please assist to check, approve and merge the content for this PR based on issue #169  ?
Thank you.

@dianef77 - I would like to follow up on this. Can you please assist to check, approve and merge the content for this PR based on issue #169 ?
Thank you.

Hi, please polish the writing so it follows our guidelines. For example, "With," "Report," and "Cmdlet" should be lowercase.  End of sentence needs a period or colon, depending on whether it's introducing a step. We use "Run" instead of "Execute."

@dianef77 - the coordinator on this one, @mypil , is going to get a copy edit for you and is also taking this knowledge back to others coordinating repositories so we can catch copy edit needs before they get to you. Thanks for your patience as we get this worked out!


Race condition in async completions with debounce

Since the introduction of the debounce timer for completions in #7, typing quickly can sometimes cause nu to return an error like the following:
thread 'main' panicked at 'assertion failed: self.is_char_boundary(idx)', /rustc/90743e7298aca107ddaa0c202a4d3604e29bfeb6/library/alloc/src/string.rs:1532:9

This looks similar to errors I've seen before when asking nu to generate completions for a cursor position beyond the end of the file.
I suspect this might be caused by a race condition, likely from differences between the temporary file that nu's being asked to generate completions against and the cursor position reported by null-ls.

I've bumped the debounce time for completions in https://github.com/zioroboco/nu-ls.nvim/commit/6a7205d96ad9f678b2c411a2c571d904f55d1f02 so this is probably happening a lot more now. The errors themselves are being suppressed, so we'll wait and see if it causes any trouble in practice.


load_examples TimeoutError: [Errno 110] Connection timed out

Hi friends, i found timeout error while superset load_examples:

My server env :
CentOS 7
Python3.8
Superset 0.30.0
Flask 1.1.1
Werkzeug 0.16.0
superset db upgrade and flask fab create-admin had succeed,
but superset load_examples always failed.
And, i used Python3.6 on CentOS 6 is the same problem...
Any help will be appreciated!!!

I am so sorry, that's my fault:
my server can not resolve the domain: raw.githubusercontent.com
Sorry again ...

I am so sorry, that's my fault:
my server can not resolve the domain: raw.githubusercontent.com
Sorry again ...

I use sqlite:
019-11-02 06:22:39,866:INFO:root:Database.get_sqla_engine(). Masked URL: sqlite:////home/work/incubator-superset/superset/.superset/superset.db
Traceback (most recent call last):
File "/usr/local/lib/python3.6/urllib/request.py", line 1318, in do_open
encode_chunked=req.has_header('Transfer-encoding'))
File "/usr/local/lib/python3.6/http/client.py", line 1254, in request
self._send_request(method, url, body, headers, encode_chunked)
File "/usr/local/lib/python3.6/http/client.py", line 1300, in _send_request
self.endheaders(body, encode_chunked=encode_chunked)
File "/usr/local/lib/python3.6/http/client.py", line 1249, in endheaders
self._send_output(message_body, encode_chunked=encode_chunked)
File "/usr/local/lib/python3.6/http/client.py", line 1036, in _send_output
self.send(msg)
File "/usr/local/lib/python3.6/http/client.py", line 974, in send
self.connect()
File "/usr/local/lib/python3.6/http/client.py", line 1407, in connect
super().connect()
File "/usr/local/lib/python3.6/http/client.py", line 946, in connect
(self.host,self.port), self.timeout, self.source_address)
File "/usr/local/lib/python3.6/socket.py", line 724, in create_connection
raise err
File "/usr/local/lib/python3.6/socket.py", line 713, in create_connection
sock.connect(sa)
TimeoutError: [Errno 110] Connection timed out

This is occurring for me under SQLite as well.. I would need to supply a proxy if a call to raw.githubusercontent.com is necessary and the proxy would have to be open for that domain.

This is occurring for me under SQLite as well.. I would need to supply a proxy if a call to raw.githubusercontent.com is necessary and the proxy would have to be open for that domain.

Yeah, that is right;
Or you can find a reachable ip and bind it to the domain in your /etc/hosts

@Gypsying @myzcid would it work if we allowed the examples to be loaded from a local path, instead of a URL? You would download the files somewhere else, and run:
superset load_examples examples-data-master.zip

@Gypsying @myzcid would it work if we allowed the examples to be loaded from a local path, instead of a URL? You would download the files somewhere else, and run:
superset load_examples examples-data-master.zip

Yes, that seems like a workable solution.


how to drop a connection as fast as possible? (in the event of ddos attack)

so now i hv
req.body().socket_addr().to_string()
how do i drop the connection as soon as possible?
    let res = Response::builder()
        .status(200)
        // possible redirect browser to http/3 service.
        .header("Alt-Svc", "h3=\":443\"; ma=86400")
        .header(CONTENT_TYPE, TEXT_UTF8)
        .body(remote_addr.into())?;
    Ok(res)

what am i supposed to return? are there any documentations i can reference?

You can send Connection: Close header to client to inform it the connection is about to be closed. After you sent the header xitca would go into graceful shutdown for that client connection. For http/1 it means the connection would be closed immediately. For http/2 it means the connection would be closed after all existing multiplex streams belonging to that client connection are finished. For http/3 there is no explicit way to close the connection yet.

@fakeshadow is there a way to drop the connection without informing the client? i want it discon / terminated immediately. notifying the client will encourage it to continue with the ddos

No that's not how it works. you are misunderstanding how DDoS work. Replying and close connection does not encouraging DDoS.

Let's put it simple. If you are rate limiting a client the only difference between immature shutdown and graceful shutdown is an extra write to socket with possibly less than a hundred bytes of data as http response. There is no amplification in any form and the cost of attack scales linearly. It also means if you fail to rate limit client's socket connection with your firewall saving these bytes write would not change anything. You will still be flooded with newly opened connections.

@fakeshadow the problem is you are advertising the site is responding, which will cause the ddos not to stop. it's better to not respond to the ddos so as that in most normal circumstances, the attack will stop.
also, will use firewall settings to block the ip instead of the program but best not to even send a byte back.
how can this be done?


make Model2onnx agnostic to the type of model used by tensorflow

Currently Model2onnx expects a file with an extension of "h5" models (HDF5 format), but really there's not reason why this would be dependant on the file extension. This makes Model2onnx agnostic to the file extension (and also the tensorflow actual model type).
This replaces PR https://github.com/pythonlessons/mltu/pull/53

I merge this pull request to develop, later this will be integrated into main branch


Network - Import of projects and organisations

Some organizations are missing for the import (97 in the Excel file and 78 in the module).
I don't have access to the BO so I cannot change them but I have updated the Excel file on the short description.
Thanks

Bonjour @EmilieVrot,
Quel fichier contient la dernière version des organisations et projets ? Organisations and projects - Version 2 (5OCT2023).xlsx ?

Bonjour @clementprdhomme
oui c'est bien celui-là (https://sites.inrae.fr/site/projet-orcasa/_layouts/15/WopiFrame.aspx?sourcedoc={20BD8F22-F74E-4045-BA45-B9608A7DFDB0}&file=Organisations and projects - Version 2 (5OCT2023).xlsx&action=default&IsList=1&ListId={239D40F9-44DF-4443-82DC-6A0458D51053}&ListItemId=103 )

Hi Emilie,
All projects and organizations are published now on the demo environment. Now that you and the rest of the group have access to the back office, can we agree that further adjustments and additional projects and organizations will be added directly to the back office? This way you can see the changes/new additions automatically and we reduce the workload related to managing this data.

Hello Carla,
I think the import hasn't worked completely.
We are good on the number of projects and organisations.
Yet in the Excel file, INRAE is linked to these projects: ORCaSa, MIXROOT-C, MaxRoot C, CarboSeq, Road4Schemes, SOMMIT, EnergyLink, ProbeField, AGROECOseqC, STEROPES
I can see in the Excel file that Yasmine didn't use the correct list of values to select the organisations. Anyways, it will be quite long for us to correct it manually.
Do you have a journal log when doing the import that reflects all the errors? It will be easier for me to correct it.
Thanks

Hi Emilie, Tiago who is in charge of managing the back office and the importing is on holiday until November 24th. Is it okay for you to have a response after that date?

Yes that's fine, I have strated to correct some of them directly in the BO but I just want to make with the journal of errors that I don't forget anything.
Thanks

Update from meeting with Emilie: she would like to know how the import managed projects and organizations that didn't have all the mandatory fields. Were they created anyway?
In case they were not added, do we have the list of those that were not created?

Hi Emilie,
Sorry for the delay on this. November was very busy with the events and now Tiago is on holiday again. I already asked him these questions. We'll come back to you in January.

Emilie,
I got Tiago's response the entries missing required fields are not imported. There is a log that was generated when these were imported but is no longer available.
Let me know if I can help you somehow.

Hello Carla,
Thanks for your answer. It's unfortunate that I wasn't informed about the errors during the import. It's crucial moving forward that I'm notified about these kinds of issues so I can rectify errors as they occur. I will manually compare the list of projects and organizations (with the export functions in Strapi) to identify any discrepancies.
Best,
Emilie

Hi Emilie,
You are right. I apologize for this mistake and will ensure we inform you earlier.
Best,
Carla

Thanks Carla

Note: I have corrected the missing entries (or organisations not linked to projects). Attached the document I worked on (corrections are in green).
Organisations and projects - Version 2 (5OCT2023).xlsx


chore(deps-dev): update pre-commit tools

@behnazh I’m tempted to roll back Black to a 22.x.x release because of a disagreeable change that shipped with 23.x.x. See also https://github.com/psf/black/issues/902#issuecomment-1425285264 and issue https://github.com/psf/black/issues/3551.


Feature: @@last_generated_uuid system session variable

Dolt recommends customers prefer UUIDs over auto_increment values where possible. For auto_increment columns, the MySQL last_insert_id() function helps to retrieve the last generated ID, but there's not an analogue for UUIDs. This PR adds a new system session variable, @@last_generated_uuid that is populated each time the UUID() function is executed. Note that this is not a standard MySQL behavior.
Customer request: https://github.com/dolthub/dolt/issues/7547

Closing this one in favor of https://github.com/dolthub/go-mysql-server/pull/2362


Can useRefreshDatabase() use migrations to recreate database instead of entities?

Hello, I was wondering if there's a way to tell the useRefreshDatabase() function to use a TypeORM migrations file to recreate the database after it's dropped, rather than using the entities to recreate the schema. I find that recreating the schema from the entity classes is never really 100% accurate. Thank you.

In case anyone else runs into this problem, I actually solved this by not using useRefreshDatabase() at all. I used the createConnection() function instead to manually create a connection and drop the database and run the migrations. Here's the code I used:
`javascript
import {
configureConnection,
getConnectionOptions,
useSeeding,
runSeeder,
tearDownDatabase,
createConnection
} from "typeorm-seeding";
import path from "path";
async function seedDatabase(): Promise {
configureConnection({
root: path.join(process.cwd(), "config"),
connection: "default"
});
const option = await getConnectionOptions();
// Recreate the database using the migrations file.
const connection = await createConnection(option);
if (connection && connection.isConnected) {
await connection.dropDatabase();
await connection.runMigrations();
}
// Seed the database
await useSeeding();
. . .
}


Define a trait object that will be implemented by each tool struct to generate result output.

For example, this trait will have at least a method called check or something to invoke the actual command of a specific tool's option, and collect its output.

claim


help missing documentation and file for tests

Hi,
I like very much of your library and i would like to help us... i start to looking with my own garmin tcx activity exported files but i have some difficult to learn how to use the library to extract the values that i need, ex:

how can i get total distance, i tried data.dist[-1] but my garmin file has a NaN in the last line so this way don't work. I not cleanup the file yet, so i have a few Nans

02:37:03 	142.0 	1138.400024 	21043.250000 	-15.839027 	1.152 	-48.023138
02:37:11 	142.0 	1138.599976 	21050.830078 	-15.839044 	0.948 	-48.023208
02:37:14 	NaN 	1138.599976 	NaN 	NaN 	0.000 	NaN

how can i get the pace?

just i case, if you get me some directions i can write the tests for library and may be i can release one of my track file so we can automate the tests. I run and my longest activity was a half-marathon.
What you think about?
greate work.

The distance column is cumulative, so you're looking for: max(data.dist) or just data.dist.max().
For pace: data.speed.to_pace() (see here)
I will add more documentation when I get the time, as well as deploy with some tests. I have tests that run on my local machine, but a lot of the files I have aren't my own, hence I can't commit them here. If you want to compress some of your *.tcxs file and email them across to me I can start to build up a file bank.
With regards to documentation, this package is very much an extension of the numpy/pandas ecosystem. If you haven't already, read this.


Update release files to build prober image

Description

With the addition of the prober cli, we need to make sure that it is released when scaffolding is built.
@cpanato can you take a look at what is needed to ensure this is released? thank you.

sure thing

the prober is being generated, i will cut a release to get all in place


selfhosted: if statement with binary literal produces parse error

Code snippet to reproduce:
function g(a: u32) {
    if ( a & 0b1 ) {
    }
}

Error message:
 1 |
 2 | function g(a: u32) {
                        ^- Expected complete block
 3 |     if ( a & 0b1 ) {

It seems to depend on the parens (()). This also produces an error:
function f() {
    let a = ( 0b10u32 & 0b11u32 )
}

The error goes away if the parens are removed.

Binary, Hexadecimal and Octal numbers were not yet supported in the selfhosted compiler.
Should be fixed by #642

Fixed


Add Comprehensive Unit Tests for Service Layer and View Components

Description
Created a bunch of tests, tests all files in the service folder and the budget and dashboard views. Had to make some variables and functions visible to the package instead of private so that I could write tests to them
Closes #42
Testing

[ ] Bug fix
[ ] New/Update feature
[ ] New/Update Documentation
[X] Testing

Approved nice work with the unit tests all working nicely


Fix README and docker

Check if DOCKER_HUB_CACHED_REPO is in credentials, if not, use default value bugswarm/cached-images.
Run bugswarm run --image-tag image_tag twice will work properly now.

Needed new command to install: pip3 install --upgrade --force-reinstall -e .
We need to update bugswarm-common as well, as this does not run without DOCKER_HUB_CACHED_REPO. I verified this code works by cloning common and manually inserting the variable in its credentials.py, installing that version of common, and modifying the requirements.txt in this client repo to bugswarm-common==0.1.15.