Customized loss function in R

How can I make customized loss function in R? For example i want to use weighted mean squared loss

Have you tried to write a new metric?
See https://github.com/dmlc/mxnet/blob/master/R-package/R/metric.R for examples.

When I follow this example for using a custom evaluation metric; i.e. passing an argument to eval.metric in a call to mx.model.FeedForward.create(), I can see the custom evaluation metric reported during the training, but it does not change the training of the model.
Is it possible to define a custom layer in R so that we can train a network to minimize some other loss function?

Sorry that I misunderstood you. You should use mx.symbol.MakeLoss.

I provide a simple example in https://github.com/dmlc/mxnet/blob/master/docs/tutorials/r/CustomLossFunction.md
Please check that.

Many thanks for the simple example. This will definitely help me and others to make use of mx.symbol.MakeLoss

@thirdwing , Sorry if I missed something, but in your tutorial, which besides that is really clear, you didn't indicate what is the nature of the variable label that appears in :
lro <- mx.symbol.MakeLoss(mx.symbol.square(mx.symbol.Reshape(fc1, shape = 0) - label))
Of course when I execute your code  i get the error :
mx.varg.symbol.MakeLoss(list(...)) : object 'label' not found
I guess label is a kind of MXNET symbolic variable associated with the y parameter that we give to mx.model.FeedForward.create for optimization.  So how did you defined label?
Plus, to go further, how you define and manipulate this variable in the multilabel case, ie when y is a matrix.

Ok I found issue #6596, and some other which create the symbol label = mx.symbol.Variable('label') and it works.
However, i still don't understand how mx.model.FeedForward.create function understands it must replace of the variable label  with the values of parameter y...


Layout videos one-on–top-of-the-other instead of in a carousel

Resolved by https://github.com/Australian-Genomics/CTRL/pull/43.


fix: linter panics on export without argument

MWE:
import Mathlib.Tactic.Linter.Lint
export

This PR fixes the panic.

Seems straightforward; thanks for the fix.
maintainer merge


Abstract properties

Fixes #4669.
The change is extremely small because almost all the machinery is already in place. I decided to give an error for an accessor with one abstract and one not-abstract member. I couldn't come up with a good example with mixed abstractness.

:+1:


Plugin does not work with 0.7.x

The plugin does not work with the latest version of NodeBB

I have it running fine with 0.7.x.
What errors are you getting?

On my side that's work but I can't remove and edit message since 0.7.0

New version is compatible with 0.9.x.


Payment channels

This pull request implements ChannelClient and ChannelServer which, respectively, represent interactions with a ChannelClient and ChannelServer bitcoind

Coverage decreased (-0.7%) to 75.829% when pulling 3647bd0cc40844f27f0666254185bf004d7079cf on Christewart:payment_channels_example into 1f350d621f30c3dace417bf8b7eb01e64b5de664 on bitcoin-s:master.

Coverage decreased (-0.7%) to 75.829% when pulling 36498463d76f2895d7409ab139b9fecca437219b on Christewart:payment_channels_example into 1f350d621f30c3dace417bf8b7eb01e64b5de664 on bitcoin-s:master.

Coverage decreased (-0.9%) to 75.62% when pulling 56b91ace4516bfe78e6ee6e4ffdd247012b03afd on Christewart:payment_channels_example into 1f350d621f30c3dace417bf8b7eb01e64b5de664 on bitcoin-s:master.


Test Issue created at Tue, 23 Mar 2021 14:11:29 GMT

Test issue body  Tue, 23 Mar 2021 14:11:29 GMT

Comment on issue at Tue, 23 Mar 2021 14:11:33 GMT


Alex

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you all sign our Contributor License Agreement before we can accept your contribution.1 out of 2 committers have signed the CLA.:white_check_mark: loubbrad:x: Alex SpangherAlex Spangher seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.You have signed the CLA already but the status is still pending? Let us recheck it.


Elevate access for a GA

Text states "Global admin can manage Azure Subscriptions and Management Groups switch" but isn't that now called "Access management for Azure resources"  on the Directory's Properties blade?
And the text on the blade suggests that other admin roles also could elevate themselves?
"<EMAIL_ADDRESS>can manage access to all Azure subscriptions and management groups in this tenant. Learn more"

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

ID: 11cda2e8-81c4-ab6a-371e-73506948488f
Version Independent ID: f18c9bf9-a0e7-ea07-144b-c2c7cedc8b6b
Content: Classic subscription administrator roles, Azure roles, and Azure AD roles
Content Source: articles/role-based-access-control/rbac-and-directory-admin-roles.md
Service: role-based-access-control
GitHub Login: @rolyon
Microsoft Alias: rolyon

@andrePKI  Thanks for reaching out. We will investigate the thread and update.

@rolyon Can you look into this ?

Hi @andrePKI
Thanks for the feedback. Yes, I'll update this switch name.

Hi @andrePKI
This article has been updated:
https://docs.microsoft.com/en-us/azure/role-based-access-control/rbac-and-directory-admin-roles
thanks

#please-close


ci: specify exact paths and better names for gitlab artifacts

Issue being fixed or feature implemented
We include too many files in artifacts on build ci step, some of which (*.a and *.o) can be pretty heavy. This was ok-ish for some time but artifacts size is getting closer to the limit and even starts to cause issues, see #6462.
What was done?
Specify exact files that are needed for functional tests (test ci step) and for users who wants to get binaries from artifacts. Also, change artifacts name to make it easier to distinguish them when you get a few of them from the same pipeline - build-arm-linux.zip, build-linux64.zip etc. instead of binaries.zip, binaries (1).zip etc., same for depends.
As a result the size of tsan artifacts for example is down from 508MB in 6462 to 116MB in this PR (or 78MB if we exclude logs 47ae9a4abe2896301bb99d4adffd465280d41e38).
How Has This Been Tested?
Breaking Changes
Checklist:

[ ] I have performed a self-review of my own code
[ ] I have commented my code, particularly in hard-to-understand areas
[ ] I have added or updated relevant unit/integration/functional/e2e tests
[ ] I have made corresponding changes to the documentation
[ ] I have assigned this pull request to a milestone (for repository code-owners and collaborators only)

superseded by #6487


Add a scene viewer tool

Objective

Allow quick and easy testing of scenes

Solution

Add a scene-viewer tool based on load_gltf.

Run it with e.g. cargo run --release --example scene_viewer --features jpeg -- ../some/path/assets/models/Sponza/glTF/Sponza.gltf#Scene0

Configure the asset path as pointing to the repo root for convenience (paths specified relative to current working directory)
Copy over the camera controller from the shadow_biases example
Support toggling the light animation
Support toggling shadows
Support adjusting the directional light shadow projection (cascaded shadow maps will remove the need for this later)

I don't want to do too much on it up-front. Rather we can add features over time as we need them.

It would be nice to be able to spawn a useful default camera when there isn't one in the scene.
For example https://gltf-viewer.donmccurdy.com computes a bounding box, then moves the camera to be sure the box is fully visible

I think this should be in /examples/tools rather than in /tools

Do you plan to add environments as above gltf-viewer?

I think this should be in /examples/tools rather than in /tools

Done.

It would be nice to be able to spawn a useful default camera when there isn't one in the scene. This would be more useful than a movable camera I think
For example https://gltf-viewer.donmccurdy.com computes a bounding box, then moves the camera to be sure the box is fully visible

It depends heavily on the model. All the interesting parts of Sponza are on the inside and if you can't maneuver around to look at it then you're stuck looking at the outside walls. That said, it may absolutely make for a sensible default position in general and would allow configuring any directional light shadow projection automatically. So I'll do it. :)

It would be nice to be able to spawn a useful default camera when there isn't one in the scene. This would be more useful than a movable camera I think
For example https://gltf-viewer.donmccurdy.com computes a bounding box, then moves the camera to be sure the box is fully visible

It depends heavily on the model. All the interesting parts of Sponza are on the inside and if you can't maneuver around to look at it then you're stuck looking at the outside walls. That said, it may absolutely make for a sensible default position in general and would allow configuring any directional light shadow projection automatically. So I'll do it. :)

This was very awkward to do. I have to store a Handle<Scene> to wait for the scene to have loaded. Then once it has loaded, I can iterate over all the cameras in the scene world and take the first one I find that is named either of the CameraPlugin::CAMERA_2D or CameraPlugin::CAMERA_3D strings and I remove all the rest for now. Then spawn the scene. Then in a separate system, when I see that the scene has loaded, if there was no camera, check whether the meshes have Aabbs (they are added by the calculate_bounds system), if not, return. Otherwise, roughly transform the Aabbs to obtain a new Aabb that contains the entire scene. Use the centre and size of this to focus on the scene and have it fully in-view.

Do you plan to add environments as above gltf-viewer?

Environment maps and other image-based lighting techniques will likely come in the future and then be added to this example tool, yes. I don’t know when though.

Well, I'm not sure why the gltf scenes sometimes load and sometimes not, but it doesn't look like it's the fault of this example tool to me. :/ bevy_gltf loads all the textures itself within its LoadContext, and I see no errors. Very confusing.

Help welcome for figuring out the "sometimes doesn't display the model" bug. It seems to be that the AssetServer indicates that the Handle<Scene> is loaded but the Handle<Scene> does not exist in Assets<Scene>.

Help welcome for figuring out the "sometimes doesn't display the model" bug. It seems to be that the AssetServer indicates that the Handle<Scene> is loaded but the Handle<Scene> does not exist in Assets<Scene>.

That wasn't it. Using commands.spawn_scene() gives really poor visibility of when the scene has actually been spawned and so when I can do things that require the scene to have been fully spawned. I had to change to using SceneSpawner::spawn(...) -> InstanceId and SceneSpawner::instance_is_ready(id: InstanceId) -> bool. Now it spawns Sponza reliably.

self plug for #2424 to remove the spawn_scene command 😄

bors try

bors r+


[Bug]: ImportError: cannot import name 'accelerate' from 'towhee.dc2'

Is there an existing issue for this?

[X] I have searched the existing issues

Current Behavior
import towhee
(towhee.dc'text'
.text_embedding.transformers'text', 'vec'
.show())
Expected Behavior
No response
Steps To Reproduce
No response
Environment
- Towhee version(e.g. v0.1.3 or 8b23a93):v0.9.0
- OS(Ubuntu or CentOS):windows10
- CPU/Memory:intel i3-8100
- GPU:
- Others:

Anything else?
No response

python 3.10.9

@suforme Fixed. Please clean cache ~/.towhee/operators/text-embedding/transformers and re-try your code.


Puppet dependencies

Reorganizes and refactors significant parts of puppet/, with the goal of clarifying which puppet classes can be applied to machines, as opposed to just helpers.  This includes a renaming of the major puppet classes, and corresponding upgrade steps to adjust puppet_classes in zulip.conf.
Testing Plan: Upgraded a test prod server.

Renaming zulip::dockervoyager will break docker-zulip. Can we leave it as an alias until after the 4.0 release?

Oh maybe your migration code will make it work. That’s fine if you’ve tested.

I merged a non-disruptive refactoring prefix as the series of commits through 0ea20bd7d8929f0944365802fdb30af317025602; still reading the rest.

Other than the concern about the supervisord directory purge behavior, the changes look good to me.  We may want to test-deploy this branch on our servers to see if it works without error on them (using the separate checkout in /root and seeing what errors/warnings/etc. one gets).
I could imagine continuing to rename the other variables to do postgres => postgresql in git grep postgres_ | wc in additional commits before doing so, if you think we'll want to do that.
(Have you tested the upgrade logic works with docker-zulip?)

Renaming zulip::dockervoyager will break docker-zulip. Can we leave it as an alias until after the 4.0 release?

I couldn't get docker to happily build even without this branch.  Rather than spend more cycles debugging that, I left dockervoyager in place for now.

I could imagine continuing to rename the other variables to do postgres => postgresql in git grep postgres_ | wc in additional commits before doing so, if you think we'll want to do that.

I'll do that in a follow-up, rather than make this longer.

This looks great, merged, thanks @alexmv!  @andersk can perhaps help you get docker-zulip working for verifying that piece.
Is the intent that users never interact with rules outside the profile namespace?  If so, I think we should also be moving rules like app_frontend_once.pp, postfix_localmail.pp, and apache_sso.pp.


chore(deps): upgrade dev dependencies

Upgrades project dependencies. See details in workflow run.

Automatically created by projen via the "upgrade-dev-dependencies-k8s-29-main" workflow

⚪ Backport skipped
The pull request was not backported as there were no branches to backport to. If this is a mistake, please apply the desired version labels or run the backport tool manually.
Manual backport
To create the backport manually run:
backport --pr 4556

Questions ?
Please refer to the Backport tool documentation


Get execute command(final)

Hi
I want to get final command to execute on other server
how I can after set all parameter get the command?
thanks

It's not possible, but it would be quite useful for debugging purposes... will have a look as soon as possible...

thanks a lot

That would be a very useful feature - verbose or dry run. Currently my method is to set an additional parameter that I know will cause an error, and see the output in console. For example:
$format->setAdditionalParameters(array('stupidflag', 'iknowthiswontwork'));

@adriangoris
please share more about your solution?


no such file or directory

i have some issue when using this buildpack to deploy on railway.app and the error is:
ERROR: failed to build: downloading buildpack: locating in registry: 'jontewks/puppeteer': lookup buildpack 'jontewks/puppeteer': reading entry: finding buildpack: jontewks/puppeteer: stat /home/conductor/.pack/registry-a932275bd19c2d9e1b88fa06698fd2f5427a363d25bf87fa500691c373089381/pu/pp/jontewks_puppeteer: no such file or directory

I've never messed with railway but this buildpack is for running puppeteer on heroku, and its working there running the command to install it from the README:
➜  puppeteer-test git:(master) heroku buildpacks:add jontewks/puppeteer
Buildpack added. Next release on puppeteer-test will use:
  1. heroku/nodejs
  2. jontewks/puppeteer
Run git push heroku main to create a new release using these buildpacks.
➜  puppeteer-test git:(master)

Can't help you with railway specifically.


[TC-1667] - Dashboard - Bar chart front end - address reviews

https://issues.redhat.com/browse/TC-1667

Add the X and Y labels to explain that each axis means
Make the sbom names clickable -> it opens a new tab, unfortunately I couldn't manage to do navigation within the same page due to the fact that the chart's code is in JS and the navigation is a Rust/Yew library. We will need to fix it in the future but it is good enough for now.
Move the legend to the top
On the right side panel replaced "CSAF description" by "CSAF ID"

You can call into the navigation from JS like we do it in the branding chart:
onclick="window.wasmBindings.spogNavigateTo('/sbomuploader'); return false;"

You can call into the navigation from JS like we do it in the branding chart:
onclick="window.wasmBindings.spogNavigateTo('/sbomuploader'); return false;"

Thank you very much @ctron ! that worked like charm!


boards: arm: st_stm32: added nucleo_l433rc-p board

Add support for Nucleo L433RC-P board.
Signed-off-by: Arvin Farahmand<EMAIL_ADDRESS>

@arvinf did you close this PR on purpose?

No. It was by mistake. I was cleaning up my tree and moving PRs into their own branches. I've made a new PR (#26309). Same commit that was approved here but c325410 on a different branch.


Add social icon buttons to navbar from config files

Feature Request
I'd like to add a couple of icon buttons on the right side of the navbar, exactly as showcased on the Academic website (see screenshot below). I'm unable to figure out whether this is possible out-of-the-box, or whether I need to customize something.
It would be great if this could be done from a config file!

The repo is publicly available.
See https://github.com/sourcethemes/academic-www/blob/master/config/_default/menus.toml

Thanks @gcushen! I had been looking for this, but apparently I wasn't searching hard enough 😓

The https://github.com/sourcethemes/academic-www/blob/master/config/_default/menus.toml is broken, and I can't find a menus.toml file in https://github.com/wowchemy/wowchemy-hugo-modules.

@gcushen I was also looking for it

See https://github.com/sourcethemes/academic-www/blob/master/config/_default/menus.toml

and no menus.toml is publicly accessible in the wowchemy organization
https://github.com/search?q=org%3Awowchemy+menus.toml


DPL-975 Create functionality to allow storage of custom metadata on requests for Targeted Nanoseq pipeline

User story
As PSD we need a flexible way to add optional metadata to requests, to support stories for the Targeted NanoSeq pipeline.
See research story here https://github.com/sanger/sequencescape/issues/3896
Who are the primary contacts for this story
PSD
Who is the nominated tester for UAT
PSD
Acceptance criteria
To be considered successful the solution must allow:

[ ] custom key value metadata to be optional and storable against individual requests
[ ] request metadata must be accessible through Sequencescape api v2 for Limber to both read and write

Dependencies
This story is blocked by the following dependencies:
None
References
This story has a non-blocking relationship with:
See research story here https://github.com/sanger/sequencescape/issues/3896
See related Targeted NanoSeq stories here:
Customer file modification story https://github.com/sanger/limber/issues/1448
Merged file creation story https://github.com/sanger/limber/issues/1449
Additional context
Create request_custom_metadata and request_custom_metadatum_collection tables and models to allow storing custom information on requests (or better solution). Goal to be able to store key value pairs.
See existing custom_metadata and custom_metadatum_collection versions linked to labware (asset_id) for similar functionality.
Tasks:
1.) DPL-975-a - SS migration for tables
2.) DPL-975-b - SS models
3.) DPL-975-c - SS api v2
4.) DPL-975-d - Limber api v2 resources and models

@StephenHulme
Yes that's not a bad idea.
Maybe split task 3 up as well as involves 2 repos, for SS v2 api, then Limber access via v2 api
So split it into:

DPL-975-a - SS migration for tables
DPL-975-b - SS models
DPL-975-c - SS api v2
DPL-975-d - Limber api v2 resources and models

@yoldas Draft PR linked to story for adding polymorphic metadata table, model and concern. Has a failing test I don't understand. Seems to work in rails console:
r = Request.first
PolyMetadatum.create(key: 'testkey', value: 'testvalue', metadatable: r)
r.reload
r.poly_metadata

@andrewsparkes PolyMetadatum enforces belongs_to association, however the test uses it independently. If you change it to optional the test should pass.
class PolyMetadatum < ApplicationRecord
  # Associations
  belongs_to :metadatable, polymorphic: true, optional: true


Upgrade Bower

It seems the version of Bower you're depending on depends on a version of bower-config that doesn't exist anymore. The earliest version of bower-config that exists is 0.3.0. I'm not sure why this just started happening, but it's breaking npm installs for us and probably many other people.
List of GitHub tags:

List of NPM versions:

+1

+1

+1
This happening when I trying to install grunt-phantomcss module.

+1
Any workaround?

@elbowz there's a pull request open that fixes this, you can install it directly for now: npm install clarkeadg/grunt-phantomcss --save-dev

great thanks!

+1
Any news on this?

+1

+1

1

:+1:

+1

+1

:+1:

+1

+1

+1

Fixed in v0.3.0


ENS on other chains

Description
Now enables ENS on other Ethereum-compatible chains (with same derivation path).
Changes include

[ ] Bugfix (non-breaking change that solves an issue)
[x] New feature (non-breaking change that adds functionality)
[ ] Breaking change (change that is not backwards-compatible and/or changes current functionality)
[x] Tests
[ ] Documentation
[ ] Other (for changes that might not fit in any category)

To rebase


Fix name typos of CdlStickSandwich

Looks like CdlStickSandwhich is just a misspelling of CdlStickSandwich?

Thanks for fixing this.


Simple calico gnp blocks traffic, when autoHEP is enabled

Adding a simple Global Network Policy to a kubernetes cluster with calico CNI, ends up blocking access to the cluster.
The policy in question is this:
apiVersion: projectcalico.org/v3
kind: GlobalNetworkPolicy
metadata:
  name: test
spec:
  types:
  - Ingress
  ingress:
  - action: Log
    destination:
      nets:
      - <IP_ADDRESS>/32

Expected Behavior

I expect that no traffic should be blocked.
Current Behavior

I am unable to connect to the apiserver, which makes the cluster quite unusable.
I have not tested what else is blocked...
Possible Solution

I could disable autoHEP, but I need those host endpoints, to be able to create network policies relating to host networked pods.
Steps to Reproduce (for bugs)

Enable AutoHEP calicoctl patch kubecontrollersconfiguration default --patch='{"spec": {"controllers": {"node": {"hostEndpoint": {"autoCreate": "Enabled"}}}}}'
Add the gnp using calicoctl
Wait a moment
All connections to the apiserver are blocked

Context

I am currently adding network policies to all the pods in a cluster. And to test those policies, I want to log the traffic that is not allowed in the policies. And it makes more sense to add the logging rule as a global policy, instead of adding a policy to every namespace.
Your Environment

Calico version
% calicoctl version
Client Version:    3.19.1
Git commit:        6fc0db96
Cluster Version:   v3.19.1
Cluster Type:      kops,bgp,kdd,k8s

Operating System and version:
Ubuntu 20.04

Hi @DavidDarville , auto host endpoints protect all virtual interfaces on the host as well. When you applied the ingress policy, that would have blocked ingress to localhost (e.g.. 9099 for Calico, whatever port used by typha). You can get an idea of that in this tutorial: https://docs.projectcalico.org/security/kubernetes-nodes (please note that the <IP_ADDRESS>/32 rule should really be <IP_ADDRESS>/8). I think the docs for auto host endpoints need to be improved.

@lmm isn't the issue here that the single GNP selects everything in the cluster (including all the HEPs and Pods) but doesn't allow any traffic?
Basically, that GNP enforces a cluster-wide default-deny, and so other policy rules will need to be written to allow the desired traffic.

I missed this issue, yes I missed that there isn't a selector in the rule so everything is selected.


fixed bug with widget attrs consistency. #298

after the _render of a widget via FieldRenderer, the attributes «addon_before» and «addon_after»
was removed and then, 2 render of the same field returned not always the same result
fix #298

Thanks!


Configuration updates

Coverage remained the same at 100.0% when pulling c552674f10cbbd22208b09dabd387f2ff6fa1880 on configuration-updates into f249647d6a4ca1fac983f03e5991318ca14ace2f on master.

Coverage remained the same at 100.0% when pulling c552674f10cbbd22208b09dabd387f2ff6fa1880 on configuration-updates into f249647d6a4ca1fac983f03e5991318ca14ace2f on master.


Fix comparison warning

works but relies on an cpython implementation detail

Ok, what behaviour was intended here? This now fails because it compares an array.
Before, somearray is not 0 would enter the true branch.

might check with @ParsonsRD if in doubt

@watsonjj but the change fails because it now compares 0 to a numpy array.
So I need some information how to convert this check.


dump in profiler

@adrienbrault first of all amazing work!!!
I have a little doubt, is there any way to make the dump() go out through the profiler?
Thank you so much!
<?php

namespace App\Command;

use Sourceability\Instrumentation\Profiler\ProfilerInterface;
use Symfony\Component\Console\Command\Command;
use Symfony\Component\Console\Input\InputArgument;
use Symfony\Component\Console\Input\InputInterface;
use Symfony\Component\Console\Output\OutputInterface;

class PagerFantaCommand extends Command
{

    /**
     * @var ProfilerInterface
     */
    private $profiler;

    public function __construct(ProfilerInterface $profiler)
    {
        parent::__construct();

        $this->profiler = $profiler;
    }

    protected function configure()
    {

        $this
            ->setName('app:pager:fanta');

    }

    protected function execute(InputInterface $input, OutputInterface $output): int
    {

        $this->profiler->start('pagerFanta');

        dump('hi world!');

        $this->profiler->stop();

        return 0;
    }

}

I think I tracked down what is preventing the profiler from handling/collecting dumps on the CLI.
After adding the following code to my \Symfony\Component\HttpKernel\Kernel::build method:
$container->addCompilerPass(new class() implements CompilerPassInterface {
    public function process(ContainerBuilder $container): void
    {
        if ($container->hasDefinition('debug.dump_listener')) {
            $container->removeDefinition('debug.dump_listener');
        }
    }
});

I no longer see dump() print anything on the cli, but I do see the dumps in the toolbar/profile.
Could you try this hack/workaround and let me know if does what you're after? I'm not quite sure yet how to best approach this

@adrienbrault It works perfect.

@adrienbrault That's the functionality I'm looking for.
Searching in google I have come to this article ( https://smaine-milianni.medium.com/how-to-disable-the-listeners-in-symfony-3d30de1d6929 ) in which they explain how to diabled an event, maybe it will guide you a little on how to address this topic.

That's the functionality I'm looking for.
Searching in google I have come to this article https://smaine-milianni.medium.com/how-to-disable-the-listeners-in-symfony-3d30de1d6929 in which they explain how to deactivate an event, maybe it will guide you a little on how to address this topic.


Filter nodegroups by search id

Introduce a search bar in nodegroups store view to be able to filter nodegroups by ingestion nodegroup id

Introducing search bar within a table item seems to require more effort than anticipated
For now  the search bar is placed on top of the nodegroups table

As we press keys in the search bar, a free text search is performed and any nodegroup entry with a matching substring column is selected and shown


Webpack generates script tags that will trigger warning for W3C HTML validator due to the extra type attribute

Bug report

What is the current behavior?
Webpack generates the script tags with JavaScript resources that has an extra type attribute type that will trigger warning for W3C HTML validator.

If the current behavior is a bug, please provide the steps to reproduce.
Use webpack to build an react app, it add the bundled main.XXXXXX.js file in a script tag with the extra type="text/javascript" attribute.
The type attribute is unnecessary for JavaScript resources, e.g.
<script type="text/javascript" src="/main.211a6080b1002980d663.js"></script>

What is the expected behavior?
It should NOT add type="text/javascript" attribute. Removing that attribute, it will pass W3C HTML validator clean.
e.g.
<script src="/main.211a6080b1002980d663.js"></script>

Other relevant information:
webpack version:  4.39.8
Node.js version: v12.8.0
Operating System: macOS Mojave 10.14.6
Additional tools:

It is warning, also it is require for old browsers, solved for webpack@5 https://github.com/webpack/webpack/blob/master/lib/WebpackOptionsDefaulter.js#L284

It is warning, also it is require for old browsers

@evilebottnawi No, type is NEVER required for HTML 5 because in HTML 5 spec, type is default to text/javascript.
https://developer.mozilla.org/en-US/docs/Web/HTML/Element/script
It was only required in HTML 4 spec, but how many projects who use webpack to build single page apps do you expect to follow HTML 4 spec not HTML 5 spec??
Modern browsers are updating at least monthly, so I don't know what you are talking about by "old browsers". We are not living in pre-2014 days (that's when HTML5 was first officially released)
So no, I don't think your reasoning is valid - why does one of most popular JavaScript tools is insisting to generate standard non-compliant markup code????
We should backport that fix into webpack 4.x as well.

@ye it is breaking change for webpack@4, we can't do it, because some developers can use webpack for old browsers as i said before

@evilebottnawi again as I said, what "older" browsers? The ones who only support HTML4 from 1999? It simply doesn't make sense. Yes it's a breaking change, in the sense that HTML5 is NOT compatible with HTML4. But webpack 4.x must support HTML 4 from 1999 ??? Do you even have a concrete example of that use case???


question

Sorry, I just turned off this comment by accident.
question:
I can run predict_gui.py successfully and output gestures. But the information output by predict.py is bad frame.

See my reply in your original issue: https://github.com/UoA-eResearch/leapmotion_gestures/issues/8#issuecomment-711491935


Auto Hide-Restore windows no longer works

Describe the bug
I've unchecked 'auto hide/restore windows'. It still continues to supress and hide WIM during combat for unknown reason.
To Reproduce
Enter combat. WIM does not appear, whisper appears in line

Look at the Window Behaviors in options. (Whispers and Chat has its own rules).
There are window behaviors for various states of game place (while in combat or resting for example). Look at the tabs for the particular states and set your desired preferences.

Alternatively, if you always want it to behave the same for all states, you can check the following option.


IOError not raised when chmod a non-existent file

def test_chmod_not_exist(sftpserver):
    '''verify error if trying to chmod something that isn't there'''
    with sftpserver.serve_content(CONTENT):
        with pysftp.Connection(**conn(sftpserver)) as psftp:
            with pytest.raises(IOError):
                psftp.chmod('i-do-not-exist.txt', 666)

sftpserver = <SFTPServer(Thread-1, started daemon<PHONE_NUMBER>48576)>

    def test_chmod_not_exist(sftpserver):
        '''verify error if trying to chmod something that isn't there'''
        with sftpserver.serve_content(CONTENT):
            with pysftp.Connection(**conn(sftpserver)) as psftp:
                with pytest.raises(IOError):
>                   psftp.chmod('i-do-not-exist.txt', 666)
E                   Failed: DID NOT RAISE

Fixed, thanks!


Broken Markdown syntax regarding italics

Bug description
When writing italics in Markdown syntax (i. e. encased in single asterisks) in a Markdown file, the part afterwards is also stylized in italics, although it shouldn't be. This is a known bug in vim-markdown documented in this issue. It's already resolved in this commit but vim 8.2 comes packaged with an older version of vim-markdown.
To Reproduce
Detailed steps to reproduce the behavior:

Open a Markdown file with vim: vim test.md
Write something in italics and afterwards something else (not in italics):

*this is in italics*
this is also in italics but shouldn't be

The first line is correctly stylized in italics but the second line as well, even though it shouldn't

Expected behavior
The expected behaviour is that the first line should be stylized in italics and the second line shouldn't.
Screenshots
A screenshot can be seen here (uploading one of my own doesn't work for some reason).
Environment:

Vim version 8.2.0095 (manually compiled on 2020-01-06)
OS: Debian Buster (also happens with the packaged Vim version (8.2.0033) on Arch Linux)
Terminal: SSH to a Debian VM

Additional context
This is a known bug in vim-markdown documented in this issue. It's already resolved in this commit but vim 8.2 comes packaged with an older version of vim-markdown.

This doesn't need to be reported upstream. I will send along an updated version when I am confident in the fix.

Closing for now.


Update README.markdown

add swift version

@Moon1102 Adding the Swift sample code is a good idea. Though, I noticed your implementation is different from the code in the project. We should keep the 2 consistent.

Just to follow up, could you update the code snippet you added with the one that's currently written in the Swift file?

Sure. I was already found the difference between the two codes,and I tried to improve my code.

I pull new request,#392.  I'm sorry about my English is not well.

@Moon1102 Could you update this README to match the implementation from #392?

Sure. I'll be glad to do it.

Looks good. Thanks @Moon1102!

@kelvinlauKL  You're welcome.


[Feature] Support SafeTensor and GGUF format in loading and saving model weights.

MLX now supports loading and saving npz, safeTensor, and gguf formats, but in the module's load_weights and save_weights methods we still save the weights as npz format. This has already caused some confusion within the community, for example in the mlx-example issue here. I'm just wondering if there are any plans to support safeTensor and gguf formats in these methods?

Yea we can definitely do that, it's a minor modification!

Also, I will probably start with safetensors only until our API for gguf solidifies.

I was thinking of implementing it in C++ because we need to check the file header to determine the file type. However, if you prefer doing it in Python, I am happy to work on that :).

We should do the saving part in PyThon for now because we aren't planning to add a new C++ API to mlx.core to save any format.
So this function  Module.save_weights(self, file: str) should check the extension and dispatch accordingly.
I believe the Module.load_weights function should already work with safetensors since mlx.core.load does actually check the extension and dispatch accordingly.

@mzbac if you are interested to work on it, LMK I will assign this issue to you! Happy to have the contribution.

@mzbac if you are interested to work on it, LMK I will assign this issue to you! Happy to have the contribution.

Yeah, I am more than happy to take care of this issue :)


Putlocker and resolvers/hosts

Hi everyone,
My question is what resolvers/hosts does Putlocker use? The link used for Putlocker is http://www.putlocker.systems which then transfers to flixanity.is, and that site does have TV series that I wish to watch,  but when I search for that series no links show up.
Thank you.
Best regards,
Bob

This is fixed (i think)


fix precommit version in readme

version 1.0.0 still fails with No module named 'requests'.
use 1.0.1 in pre-commit, avoid No module named 'requests' solved in https://github.com/Yelp/detect-secrets/issues/407 .

Closed as this will be updated in #513


E2E Tests

PR created here
https://github.com/openforge/OPENFORGE.IO/tree/e2e-tests
Awaiting review

E2E PR was merged so closing the ticket.


Compatibility clarification request

Thank you so much for your effort @dantmnf!
I'm trying to use it to clamp my wide gamut display (75% BT.2020, 99,88% DCI-P3, 100% sRGB coverage) to sRGB and Display P3. However it looks like it isn't working as expected (gamma isn't applied correctly). I have tested with Windows 10, version 21H2 and AMD Software: Adrenalin Edition 22.5.2 to 23.9.1.
Would you kindly provide an update on the current state and compatibility of the project?

Short answer: I don't know.
AMD doesn't give such clarification, nor any word that describes the behavior, for APIs we used. Even worse, the regamma API is revealed from leaked properitery SDK and therefore no promises for stable behavior.
After release of this project, AMD published a new library[^1] that covers everything we used in public (yet still undocumented) API, so the behavior should be stable on newer drivers containing amdadlx64.dll file.
[^1]: https://gpuopen.com/adlx/ , also with (unusable?) 3D LUT API.


[SP-4979] Backport of PDI-17907 - Parsing NULL values in Integer colu…

…mns throws a conversion error when passed as a parameter (8.2 Suite)
Cherry-pick of https://github.com/pentaho/pentaho-kettle/pull/6307

Build Completed
:fire: This pull request has some issues. It would be preferable to fix them in order for it to be just perfect. See below for more details. Some links are also available below for further assistance in addressing those issues.
Build Commands
mvn -B -f 'pom.xml' -pl 'engine' -P '!assemblies' -Dsurefire.runOrder=alphabetical -Daudit -amd clean install

Cleanup Commands
mvn -B -f 'pom.xml' -pl 'engine' -P '!assemblies' -amd build-helper:remove-project-artifact

Changed files
  engine/src/main/java/org/pentaho/di/trans/steps/transexecutor/TransExecutor.java
  engine/src/test/java/org/pentaho/di/trans/steps/transexecutor/TransExecutorUnitTest.java

Newly Fixed Tests:
org.pentaho.di.core.logging.MetricsPainterTest.testDrawTimeScaleLineInfinityLoop:
:large_blue_circle: java.lang.Exception
java.lang.Exception: test timed out after 1000 milliseconds
	at org.pentaho.di.core.logging.MetricsPainterTest.testDrawTimeScaleLineInfinityLoop(MetricsPainterTest.java:65)

Unit Test Coverage
These statistics help you identify how your changes have affected the coverage of the following files. If a file is not in this list, then its coverage was not affected by your changes. To get some help interpreting these metrics, please refer to Jacoco's documentation.

:warning: Coverage Changes (click to expand)
org.pentaho.di.job.entries.getpop.MailConnectionMeta

Branch Change: -1% :small_red_triangle_down:
Complexity Change: -1.5% :small_red_triangle_down:
Instruction Change: -0.3% :small_red_triangle_down:

org.pentaho.di.job.entries.sql.JobEntrySQL

Instruction Change: -3.4% :small_red_triangle_down:
Line Change: -3.8% :small_red_triangle_down:

org.pentaho.di.trans.steps.dbproc.DBProcMeta

Instruction Change: -0.1% :small_red_triangle_down:

org.pentaho.di.trans.steps.ldapoutput.LDAPOutputMeta

Instruction Change: -0.1% :small_red_triangle_down:

org.pentaho.di.trans.steps.sort.SortRowsMeta

Instruction Change: -0.1% :small_red_triangle_down:

org.pentaho.di.trans.steps.sortedmerge.SortedMergeMeta

Instruction Change: -0.2% :small_red_triangle_down:

org.pentaho.di.trans.StepWithMappingMeta

Branch Change: -1.6% :small_red_triangle_down:
Complexity Change: -1.7% :small_red_triangle_down:

org.pentaho.di.www.TransformationMap

Branch Change: -1.1% :small_red_triangle_down:
Complexity Change: -1.6% :small_red_triangle_down:

org.pentaho.di.ui.repository.pur.repositoryexplorer.model.UISecurityRole

Branch Change: -1.8% :small_red_triangle_down:
Complexity Change: -1.5% :small_red_triangle_down:
Instruction Change: -0.2% :small_red_triangle_down:
Line Change: -0.5% :small_red_triangle_down:

org.pentaho.di.trans.steps.salesforceupdate.SalesforceUpdateMeta

Instruction Change: -0.2% :small_red_triangle_down:

org.pentaho.di.trans.steps.salesforceupsert.SalesforceUpsertMeta

Instruction Change: -0.1% :small_red_triangle_down:


Using plugin serve with watch option

I'm not sure if I'm using this incorrectly or it is a "bug".
I'm trying to use this plugin with the watch option. The first time it runs ok, It looks like the socket is kept open. The second time I run the build it reports the port is already in use.
It only happens while using the watch option but it is completely fine without it.
Here is my rollup.config.js
import commonjs from "rollup-plugin-commonjs";
import resolve from "rollup-plugin-node-resolve";
import babel from "rollup-plugin-babel";
import uglify from "rollup-plugin-uglify";
import serve from "rollup-plugin-serve";
import livereload from "rollup-plugin-livereload";

const DISTFOLDER = "dist";

export default {
    entry: "src/main.js",
    format: "iife",
    moduleName: "app",
    plugins: [
        resolve({ jsnext: true, main: true }),
        commonjs(),
        babel({ exclude: "node_modules/**" }),
        uglify(),
        serve({ contentBase: DISTFOLDER,  port: 8080 }),
        livereload({ watch: DISTFOLDER })
    ],
    external: [],
    dest: `${DISTFOLDER}/bundle.js`
};

I've just noticed something:
1.- Running rollup -c then Ctrl+C to stop the server. Works ok.
2.- Running rollup -c -w I have to Ctrl+C twice... but it works. The socket is freed.
3.- Running it through npm with npm run dev I only have to Ctrl+C once but the socket is not freed.
"scripts": {
    "dev": "rollup -c -w --sourcemap",
}

Thanks for reporting 😃
I'm not sure how to fix it. PRs welcome!

Submitted a PR to close the server when termination signals are encountered

What's the holdup for releasing this to npm?

Time ;-)
It has been published.


Remove outdated benchmarking information in CONTRIBUTING.md

Description
Removes outdated outdated benchmarking information in CONTRIBUTING.md
Fixes #3058
Setting as draft in case answers in #3058 warrant changes

I edited the pull request title so it no longer says it's a draft.


module-xrdp-sink.so and module-xrdp-source.so installed but no sound

I do as https://github.com/neutrinolabs/xrdp/wiki/How-to-set-up-audio-redirection written, and I can see xrdp-sink and xrdp-source. When I play a song, the second progress bar will move, but I can not hear the sound.

Should I do some additional configuration?
Should I use other session (Xorg, X11rdp) not Xvnc?
pulseaudio 10.0
xrdp 0.9.5
CentOS 7

I've seen something similar while trying to build my own 0.9.5 RPM on CentOS 7.  I get the exact behavior described above.  And when I check the chansrv folder, there aren't any sockets there.  Thinking this was odd, I attached strace to the xrdp-chansrv process, and it seemed to be stuck in select().  I'd love to understand what's going on, since CentOS' xrdp packages are always out-of-date, or missing essential options (like audio!).

@coredump4  Which one are you used? Xvnc Xorg X11rdp?

I use xorgxrdp and Xvnc back-ends... same behavior with each.  Which makes sense to me, since it seems to be something with the channel server.

The last message I see from chansrv is:
channel_thread_loop:  thread start
@metalefty any idea what could be going on with channels?
Thanks!

PROBABLE SOLUTION
Hi, was just having a same issue - everything looks OK, no sound (Windows 10, Windows Server 2012 R2). It turned out that my issue was due to modules being compiled using the git clone of the current xrdp... It compiled just fine on the latest Raspibian with apt source pulseaudit, however it did not work. What I did next is, I downloaded the Raspibian source of the xrdp (apt source xrdp) - v0.9.1 and compiled modules from that source. Now the sound redirection works.
Hope this helps.

Thanks bmalnersic!
Had the same issue. Your solution also works for Debian 9.

For me (Ubuntu 18.04) the modules (no matter whether I build them by hand or using xrdp-build-pulse-modules) compile fine but constantly fail to connect to a socket in /tmp/.xrdp/ - apparently that's supposed to be created by xrdp-chansrv, which for some reason doesn't even start, and if I start it by hand, it doesn't do anything (last message same as with @coredump4, /tmp/.xrdp still doesn't exist...) - is this a known issue? Any ideas how to make chansrv create the sockets? It just says the socket types that are allowed, but for some reason, they aren't opened? I'm out of ideas here, and after hours of googling I'm quite annoyed about the nonexistence of docs about troubleshooting the PulseAudio forwarding - there's hardly any on building the module to begin with, everything else seems to just be "trial and error". Is this even actively developed/maintained any more?

Looking for the best linux-friendly RDP server solution but same sound issue on my stretch. The xrdp-pulseaudio-installer package is brokken and not really better with rebuilding modules on 0.9.1 which just have correct vumeter display on xrdp sink...

cat /etc/xrdp/xrdp.ini
....
[Channels]
rdpsnd=true
....
???

I had same issue and I was able to solve it by simply changing allow_channels from false to true in my /etc/xrdp/xrdp.ini file and after that I restarted the machine and everything started working as expected.
; Section name to use for automatic login if the client sends username
; and password. If empty, the domain name sent by the client is used.
; If empty and no domain name is given, the first suitable section in
; this file will be used.
autorun=

allow_channels=true
allow_multimon=true
bitmap_cache=true
bitmap_compression=true
bulk_compression=true
#hidelogwindow=true
max_bpp=32
new_cursors=false

I'm closing this issue now. Version 0.6 of the pulseaudio module has been released with significant changes, and the wiki README has been updated with better build instructions.


v1 bug: Cannot accept - as program argument

my urfave/cli version is
1.22.4
Checklist

[x ] Are you running the latest v1 release? The list of releases is here.
[x ] Did you check the manual for your release? The v1 manual is here
[ ] Did you perform a search about this problem? Here's the Github guide about searching.

Dependency Management

[x ] My project is using go modules.
[ ] My project is using vendoring.
[ ] My project is automatically downloading the latest version.
[ ] I am unsure of what my dependency management setup is.

Describe the bug
CLI is unable to accept arguments starting with "-" e.g. an argument like "-rx--xrwx" would be invalid. Even surrounding the - with "" does not work.
To reproduce
Run something like "go run x.go "-abc" and it will present the program's default usage info
Observed behavior
Program's usage info shown
Expected behavior
Program runs as expected and reads the "-" as an argument (can be referenced in os.Args)
If the issue relates to a specific open source Github repo, please link that repo here.
If you can reproduce this issue with a public CI system, please link a failing build here.
Want to fix this yourself?
We'd love to have more contributors on this project! If the fix for this bug is easily explained and very small, free free to create a pull request for it. You'll want to base the PR off the v1 branch, all v1 bug fix releases will be made from that branch.

This is a common problem with CLIs—if you had a flag named -x, and you wanted to pass -x, how would you do it? We can't safely allow args that look like flags in cases where no such flag exists because then we lose error messages if someone fat fingers -z instead of -x, and the app silently treats it as an arg.
The common solution to this, which this library also implements, is that anything after -- is considered an arg, unconditionally. So in the provided example, the correct way to disambiguate would be:
go run x.go -- -abc

Thanks. I thought a way of differentiating would be to surround any arguments with "" or ''. Would a solution like this be possible in the library?

It's an interesting idea, but unfortunately shells like bash or zsh don't make that so simple.
Consider the following program:
package main

import (
	"fmt"
	"os"
)

func main() {
	if len(os.Args) != 3 {
		fmt.Println("Error: Pass two args to compare")
		os.Exit(1)
	}

	fmt.Println(os.Args[1:])

	fmt.Println("args are equal:", os.Args[1] == os.Args[2])
}

It's a simple utility that takes two args passed, prints them, then prints whether they are equal. Run it with the following:
go run foo "foo"

And get the following output:
[foo foo]
args are equal: true

The application doesn't actually receive the quotation marks, and the two args are equal. The reason is because a shell uses quotation marks to determine word boundaries. If for example you wanted to pass a program a single arg containing many spaces, you could do something like this:
mycmd "super long arg with many spaces"

Instead of this:
mycmd super\ long\ arg\ with\ many\ spaces

Or take a variable and prevent it from splitting, for example if a filepath might include a directory called My Documents by calling "$SOMEDIR" instead of $SOMEDIR.
In theory you could get around that by quoting your quotes, or backslash escaping them:
mycmd \"foo\" '"foo"'

But then how would you disambiguate those as args from args that are supposed to have quotes in them? You could pick another pattern, but it starts to get tricky.
People far better at this than I am decided that -- would be a good enough standard for flagging that everything after should be an arg and not a flag. Most command-line applications I know of use that, so I would advocate for us continuing to stick to that standard.

Ah I see. I didn't realise this was such a long-standing and widespread issue.
Thanks for your help! Closing


ThreadNet test for a two-era chain: Allegra to Mary hardfork

Fixes #2846.
As for Shelley to Allegra, the Consensus Layer tests in this PR now also test Allegra to Shelley in a small ThreadNet test involving just those two eras.
Since our transaction generators for those are temporarily disabled (CAD-2119), the only transactions are the votes and d-reductions that the test itself injects.
The longer-term plan is for the ThreadNet rewrite to subsume this by simply testing the entirety of Cardano. The planned shrinker will be able to reduce a failing test case down to involve only a single faulty hardfork when that is indeed the bug (it will start in the era before the fork and schedule it to stop in the next).

Commit fcf33be just copies and renames the files. The next one makes the actual changes, so see it's diff.
Note that the commit history will be cleaned before this PR merges.

@nc6 Would you skim the mkAllegraSetDecentralizationParamTxs function in ouroboros-consensus-shelley-test/src/Test/ThreadNet/Infra/Shelley.hs. Specifically, I'm wondering if there's already (parts of) a general interface in the ledger API that I could use to write this testing function in a more general way. Could it be used for both Allegra and Mary? Ideally, even Shelley itself too? Thanks.

bors r+


feat: Migration from coupled server to engine - Python Sub System

Problem
Currently @CameronNg is working on Python sub system, but we are in the process of migrating to a more decoupled project.
@CameronNg needs to refactor it to a single component backend, first version is being implemented by @vansangpfiev
Success Criteria
Run alongside with other backends like llama cpp etc, as an engine

current PR
https://github.com/janhq/cortex/pull/505

It's now cortex.python-rt


[ALLUXIO-2696]Special null variable in Configuraton.java precondition check

https://alluxio.atlassian.net/browse/ALLUXIO-2696

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Alluxio-Pull-Request-Builder/14600/
Test PASSed.


Implement FileAuthorization dependency

Add FileAuth dependency we can use if file_id is available in a route, and implements it on several file routes.

I checked and this one looks pretty good, I noticed that the backend lint was failing so I just pushed a commit to fix that.


Possible freeze during image transfer using remote backend

See: https://github.com/Interpause/auto-sd-krita/issues/24#issuecomment-1287142742
Possible freeze during image transfer in http request. Need to test if this is due to latency/connection issues when using a remote backend, or if it can happen for local backend as well.
Given that image generation can take an unspecified amount of time, fixing this likely means figuring out async/background threads in pyQt. One solution is to use the eta/status updates provided by upstream as a sort of keep alive mechanism to cancel the request.

Need to test

I had this freeze just few times, and I do not have correct way to reproduce... happening randomly.
Sorry can not help on this one :(

The freeze can happen locally.

The freeze appears to be somewhat rare locally. However, sending 64 images at once (locally) didn't crash. It either means it isn't a network issue, or the network issue isn't due to the size of the image payload. It could also be I haven't tried sufficiently many images (or poor enough connection i.e. remote backend).

on remote backend (Colab) it also hapening very rare, I had whole sessions for about 1 hour time long with no problems at all
this is not very "important and serious problem" as I see it, for end user enough is just "save everything" before pressing Start in SD plugin
(and fix to it may be way too overcomplicated, like adding exceptions and timers for every remote api call on client and server...)

This should not occur anymore now that networking is threaded. Instead, it should either result in a network error or outright crash (#33).


Generate visual display of OM

It would be nice to have some kind of visual display of the OM hierarchy and connections, UML or otherwise
@julesjacobsen @hdietze @jnguyenx any recommendations?

This would be nice, but I usually use pen and paper to sketch these things out so I can't recommend anything digital!

Started on graffle here, but may be out of date https://github.com/phenopackets/phenopacket-format/tree/master/model

I'm not able to see the graffle as it may not be compatible with my free viewer version.

@selewis provided some figures here: https://github.com/phenopackets/phenopacket-reference-implementation/blob/master/images/PhenotypeExchange.png

Anyone used PlantUML?
Can be embedded in javadoc, e.g.
https://github.com/Abnaxos/pegdown-doclet

I made this in IntelliJ. Does that help?

Great, v helpful. Especially if this is dynamic and we can regenerated periodically
I don't suppose there is an imagemap option?


refactored flag variable default values into consts

refers to  #64

What validation should i add for pids?

Validation is already taken care of, since you've added the const defaultProcPid, you could use that in the check on line 64 so that if a default value should be changed, it only needs to be changed in the defined consts and not anywhere else.

@souvikmaji a PR for changing PID types has already been made and ideally should not be a part of this PR. Please revert those changes for now.

Reverted


Laravel 10.48.1 Shift

This pull request includes updates for the recent minor version release of Laravel as well as updates to your package dependencies. Feel free to commit any additional changes to the shift-ci-v10.48.1 branch.
Before merging, you need to:

Checkout the shift-ci-v10.48.1 branch
Review all pull request comments for additional changes
Run composer update
Thoroughly test your application (no tests?, no CI?)

:warning: The Shift build servers run PHP 8.2. If you are running a different version of PHP you should run composer update locally to ensure you have the proper versions of your dependencies to reflect your PHP environment.


UI freeze on internet connection

UI is freezing while connecting to network.
Reproducing steps

Go to some pages where there are UI controls like picker.
Turn on the wifi so that wifi auto connects to some network with internet access.
Open and close the picker repeatedly while the wifi is connecting to the network.
UI freezes for a second.

Device Information

OS : Android oreo 8.1
Phone : Honor 8x

@nakulashok bugs and issues with Visual Studio should be reported directly in the IDE, using the Help > Report a problem menu item.
This issues list is specifically for the documentation. Reporting directly in Visual Studio will provide more information to the team for debugging. Thanks.

@conceptdev this is not issue related to the IDE.
When I install the app and test it in real device I am facing this issue.

Nevertheless bugs should be reported via Help > Report a problem. If you believe the issue is with Xamarin.Forms, you can use the open-source issues list https://github.com/xamarin/xamarin.forms/issues
This documentation site is not a support forum, for community help visit stackoverflow.com.


Manifests directory is 2 years old :)

Expected behaviour
modulo ocp... We probably should add notes to the manifests/ directory to clarify that they're not published anymore ?  or maybe just delete if from head.

Are you judging by the fact that some of the files in the repo under manifests/ocp haven't changed in the last 2 years?
Those files are linked to other files that do get updated and when the docs are published, those file are being generated with updated content.
If I'm misunderstanding please clarify what files you believe aren't being updated.


remove duplicate timestep iteration in switch_controller function. Fi…

Remove the extra increment to _t_at_mode when changing controllers. Tests on pv_battery_integration_test. Solves #346.
Let me know if this should go to patch or develop.

Merged into patch. I'm going to let https://github.com/NREL/ssc/pull/348 merge this into develop, since that will resolve the merge conflict in test/CMakeLists.txt


Bug: binary.github prevents further manifest actions from running when it thinks no action is required.

Description
If I have:
files/enact/enact.service
[Unit]
Description=Enact Auto configures Xrandr

[Service]
ExecStart=$HOME/.local/share/bin/enact --pos top --watch

enact.yml
---
where: os.name == "linux"

actions:
  - action: binary.github
    name: enact
    directory: "{{ user.home_dir }}/.local/share/bin/"
    repository: chmln/enact
    version: v0.1

  - action: file.copy
    from: enact
    to: "{{ user.home_dir }}/.config/systemd/user/"

then:

1st run both actions run
2nd run binary.github attempts, fails and nothing else in the manifest is processed.

If I switch to:
---
where: os.name == "linux"

actions:
  - action: file.copy
    from: enact
    to: "{{ user.home_dir }}/.config/systemd/user/"

  - action: binary.github
    name: enact
    directory: "{{ user.home_dir }}/.local/share/bin/"
    repository: chmln/enact
    version: v0.1

Then it works.
This would obviously force certain workflows that depend on the installed binary to be split into two manifests.
Steps to reproduce
Try the above two manifests.

The first one will succeed on first try, never attempt to copy the files on the 2nd try.
The second one will always run both actions.

Expected behaviour
binary.github should never cause the current manifest to bail/error/exit/prevent-further-actions/prevent-further-manifests
Environment

OS: Fedora release 36 (Thirty Six) 5.19.15-201.fc36.x86_64
Version: 0.8.0

Additional information
Add more context which didn't fit in the fields above.

Actually the workaround doens't work.. any other manifest coming after enact will never run.

This is fixed on the main branch.
https://github.com/comtrya/comtrya/commit/54095b34419efcfe1af469866925f35ea76b4758

@rawkode how do I get a binary for the lates fixes? 👈🏻 rust noob.

https://crates.io/crates/comtrya is broken, because we messed up the tag name and our action didn't run to make a release and nobody reran the whole shebang :D

yeah I've already got that release.
Does publishing a crate result in a executable that i can download and use on windows/linux and mac without installing rust?

Nope, you have to install it via cargo install comtrya and it will compile it based on your local Rust install.


[Setup] Update dotnet to 3.1.20

Summary of the Pull Request
What is this about:
What is include in the PR:
How does someone test / validate:
Quality Checklist

[x] Linked issue: #13074
[ ] Communication: I've discussed this with core contributors in the issue.
[ ] Tests: Added/updated and all pass
[ ] Installer: Added/updated and all pass
[ ] Localization: All end user facing strings can be localized
[ ] Docs: Added/ updated
[ ] Binaries: Any new files are added to WXS / YML

[ ] No new binaries
[ ] YML for signing for new binaries
[ ] WXS for installer for new binaries

Contributor License Agreement (CLA)
A CLA must be signed. If not, go over here and sign the CLA.

Can you please change the README entry as well and link #13074 ?
Thank you!

Thank you. I've updated the PR description to link the issue.


Content-Security-Policy and inline code

I have been looking at Javascript security and notice that mxgraph (and draw.io) index.html use inline code.
There are a whole bunch of improvements to security through the Content-Security-Policy
The first one I am looking at (and need to implement for my stuff to work) is refactoring the inline code as Inline code is considered harmful
Is there any reason that it is implemented this way or is it just legacy? Are there examples of not using inline code about that can be used to update mxgraph/drawio?

It is just legacy. CSP is on our roadmap, but we can't give an ETA.

ok - thanks. Leave the issue open and I will try and submit code for the inline code

We use "default-src 'self' 'unsafe-eval' *.jgraph.com *.draw.io apis.google.com *.googleapis.com drive.google.com api.trello.com js.live.net code.jquery.com www.dropbox.com; style-src 'unsafe-inline' *.draw.io *.jgraph.com; img-src https://* data:; child-src content.googleapis.com accounts.google.com;" so far, style-src 'unsafe-inline' is OK and 'unsafe-eval' is due to https://github.com/jgraph/mxgraph/blob/v3.9.8/javascript/examples/grapheditor/www/js/Graph.js#L4360 which can only be avoided when adding all JS stencils to app.min.js.

I am still getting my head around Javascript and now understand how hard it is to pull out the inline code. I discovered though that the lack of Content Security Policy may not be my blocker. So I will stop here and will try and revisit this later. Documenting where I go to...
I can add the following to ./javascript/examples/grapheditor/www/index.html. This will add Content-Security-Policy without stopping anything working as-is (with inlines unchanged). The localhost:* is required if developers need to run a local instance with the "ant grapheditor" .
<head>
        <title>Grapheditor</title>
        <!-- Content-Security-Policy localhost:* is only required during development while running locally -->
        <meta http-equiv="Content-Security-Policy" content="
        default-src 'self' 'unsafe-eval' 'unsafe-inline' localhost:* *.jgraph.com *.draw.io apis.google.com *.googleapis.com drive.google.com api.trello.com js.live.net code.jquery.com www.dropbox.com;
        style-src 'unsafe-inline' localhost:* *.draw.io *.jgraph.com;
        img-src https://* data:;
        child-src content.googleapis.com accounts.google.com;">

The other interesting thing I found was CSP Evaluator for sanity checking options. It flags 'unsafe-inline' as unsafe (obviously) but also things like *.googleapis.co and object-src missing. So everything needs to be reviewed to get the options right.

CSP is probably outside of the scope of mxGraph in some ways, it's more an app level setting.
That said, we have removed the need for unsafe-eval in the codebase now, see https://github.com/jgraph/drawio/blob/86d47fe5389058dcd3f818efa02e4d6907634034/src/main/webapp/index.html#L162. That's the CSP for the desktop version, it might give some hints for what does need to be allowed.


Add support for eslintIgnore key

Since support for eslintConfig already exist, I think it would make sense to support the eslintIgnore key as well. This key is an alternative to defining ignored paths for eslint in a separate .eslintignore file, and consists of an array containing file blobs (should not be sorted).
https://eslint.org/docs/user-guide/configuring#using-eslintignore-in-packagejson

good work @simonkberg 👍

1.10.0!


Column name in table (and derived references) divorced from the YAML field name

What would you like to be added?
I would like to have the ability to rename the column header without it changing the name of the YAML field in the frontmatter.
Why is this needed?
I am working in both Full Calendar and Projects, with the same notes being referenced in each. Full Calendar creates YAML fields like startTime, endDate, and daysOFWeek... I prefer to be able to view and edit those fields in a table view in Projects, but I would prefer to view them as "Start Time", "End Time",  and "Days of the Week"... When I rename them with the "Configure field" dialog box, it changes that actual name of the YAML field in the note, and the Full Calendar functionality breaks.
This is by no means a deal breaker, I can just deal with the camelCase column headers, but it would be nice.

I think we could solve this by adding a "Display name" or "Alias" field in the Configure field modal. Would that work for you?

Sounds like that would work perfectly

Related to #332


Provide a non CardView-based Adapter

Hey,
It's me again. I would like to have an (expandable-)adapter that does not wrap every library into a CardView and therefore follow the Material Design Guidelines:

Source: Material Design Guidelines

Hey,
That seems like a simple enough request, although I'll need to think about it. You could easily copy the expandable card view and make it extend something else (like FrameLayout) if you wanted to for yourself, but I'm not sure how best to do it in Homage. I don't want to make the base view require nesting since that will just lower performance, so I might need to extract some logic out to make it easier to have different base view types. Either that, or see if it's possible to programmatically remove the card background so I can add a constructor parameter and don't need to add any extra classes/methods to achieve this, as one of my main goals is keeping the method count as low as possible.

I had another look and I don't think this applies, as it only specifically says not to use cards for content that 'doesn't have many actions'. The cards in homage have at least 2, which by the look of the docs is the magic number that says it should probably be on a card.

Ok, I still disagree. They suggest to use cards when there are more than two actions. Homage has the link and an expand button as far as I know. Furthermore cards should be used to present content of different types or length, where the card helps to visually separate each item. But since Homage displays the same type of content in every item, I think the cards are more distracting.
But if you are still not convinced, you can close the issue and I will just adjust the implementation for my app accordingly ;-)

That's fair enough, it's a grey area at best. I'm happy to accept a pull request, but I just have other priorities at the moment. It's quite easy to setup your own adapter if you don't like the included one, which is by design. I want to keep Homage lightweight and low method count so it doesnt become another dependency I want to remove from my apps.

Great :)
I'll submit a pull request when I'm finished ;-)

Merged, sorry it took a bit longer than I'd hoped.


installation failed using pip in main cmd shell

pip install backports-shutil_get_terminal_size
Collecting backports-shutil_get_terminal_size
Downloading backports.shutil_get_terminal_size-1.0.0-py2.py3-none-any.whl
Installing collected packages: backports-shutil-get-terminal-size
Exception:
Traceback (most recent call last):
File "d:\programs\python\python27\lib\site-packages\pip\basecommand.py", line 215, in main
status = self.run(options, args)
File "d:\programs\python\python27\lib\site-packages\pip\commands\install.py", line 317, in run
prefix=options.prefix_path,
File "d:\programs\python\python27\lib\site-packages\pip\req\req_set.py", line 742, in install
**kwargs
File "d:\programs\python\python27\lib\site-packages\pip\req\req_install.py", line 831, in install
self.move_wheel_files(self.source_dir, root=root, prefix=prefix)
File "d:\programs\python\python27\lib\site-packages\pip\req\req_install.py", line 1032, in move_wheel_files
isolated=self.isolated,
File "d:\programs\python\python27\lib\site-packages\pip\wheel.py", line 348, in move_wheel_files
assert info_dir, "%s .dist-info directory not found" % req
AssertionError: backports-shutil_get_terminal_size .dist-info directory not found

(windows)

downloading package from this github repo and running python setup.py install appears to work.
I think pip's problem is that it was looking for a .dist-info directory within the backports.shutil-get-terminal-size-1.0.0 parent directory, but instead it had created a  backports.shutil-get-terminal-size-1.0.0.dist-info directory and dumped the files in there.  I could not seem to execute a work-around by splitting the directory apart (with .dist.info being  sub of the other) and putting the full set of files (6?) into both backports.shutil... and .dist-info directories and re-running pip. So, this package's build in pip is borked, but it can be installed manually from this github repo.  Thanks

pip 9.0.1 solves this issue.  It's possible pip 9.0.0 also did.


Timesheet - 02/05/2021 - TristanS

Task 1
Reviewed Timesheets
Proof of Work

https://github.com/thenewboston-developers/Contributor-Payments/issues

Time Spent
0.5 hours

Task 2
Reviewed project proposals. Also updated user permissions in TNBProjects and added some channels.
Proof of Work

Conversations with Chuy and Bucky.

Time Spent
1.5 hours

Total Time Spent
2 hours
Account Number
6d4e7ec412472b5cfabb234555bc37f9a5a1a75a4926f9fee2a54d3e070f4b3f

Approved


Export Canvas Image to SVG

Hi thank you for this great plugin its very useful for me in my project but I'm unable to find how to convert a rendered canvas image to SVG can you help me how to do this.

Hi, I am afraid that you can't "convert" a populated canvas as it's just a bitmap while SVG is vector format.
This library will just execute all the commands you do on canvas in "svg context". It doesn't (and can't) use pixels from bitmap output of canvas.

a very late thank you to @durasj for fielding this question ages ago.


Move off of gcr.io/cloud-builders/gcloud

It's deprecated:
***** DEPRECATION NOTICE *****

This image is deprecated and will no longer be updated.
This recent version of the image will continue to exist.

In place of this image, please use one of the following
images from https://hub.docker.com/r/google/cloud-sdk/:

google/cloud-sdk
google/cloud-sdk:slim
google/cloud-sdk:alpine

Please note that these images support pinned versions
as well.

***** DEPRECATION NOTICE *****

I asked for clarification internally.
gcr.io/cloud-builders/gcloud is used extensively all over the GCP docs. I doubt it's really deprecated (especially in favor of an image hosted on Dockerhub).
My guess is that the deprecation notice is deprecated :)
Please hold until we learn more from the Cloud Build team.

@ImJasonH Can you provide any insight?

The deprecation message should link to a bug or doc with more motivation, and should recommend gcr.io/google.com/cloudsdktool/cloud-sdk
The issue is https://github.com/GoogleCloudPlatform/cloud-builders/issues/638
cc @bendory

Yes -- you'll get that notice if you look in the repo (or build from :latest; the hosted service is not yet showing that deprecation notice to users, so I haven't yet done a full cleanup sweep.

The deprecation message says to use google/cloud-sdk, but @ImJasonH you're suggesting gcr.io/google.com/cloudsdktool/cloud-sdk instead?

As @bendory said, the image you're using isn't rolled out to GCB yet, so users shouldn't be seeing this message at all today. I believe the intention is that the error message will be changed before it is rolled out.

Yes -- and indeed, this is already updated here in the repo.
Reference: https://github.com/GoogleCloudPlatform/cloud-builders/pull/674


[SPARK-15458][SQL][STREAMING] Disable schema inference for streaming datasets on file streams

What changes were proposed in this pull request?
If the user relies on the schema to be inferred in file streams can break easily for multiple reasons

accidentally running on a directory which has no data
schema changing underneath
on restart, the query will infer schema again, and may unexpectedly infer incorrect schema, as the file in the directory may be different at the time of the restart.

To avoid these complicated scenarios, for Spark 2.0, we are going to disable schema inferencing by default with a config, so that user is forced to consider explicitly what is the schema it wants, rather than the system trying to infer it and run into weird corner cases.
In this PR, I introduce a SQLConf that determines whether schema inference for file streams is allowed or not. It is disabled by default.
How was this patch tested?
Updated unit tests

Test build #59053 has started for PR 13238 at commit ab78dfb.

Test build #59054 has started for PR 13238 at commit bf0a2bb.

Test build #59053 has finished for PR 13238 at commit ab78dfb.

This patch fails Spark unit tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/59053/
Test FAILed.

Test build #59054 has finished for PR 13238 at commit bf0a2bb.

This patch fails Spark unit tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/59054/
Test FAILed.

Test build #59151 has started for PR 13238 at commit 71e117f.

Test build #59152 has started for PR 13238 at commit e5a5f1b.

Test build #59151 has finished for PR 13238 at commit 71e117f.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/59151/
Test PASSed.

Test build #59152 has finished for PR 13238 at commit e5a5f1b.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/59152/
Test PASSed.

Merged build finished. Test PASSed.

Test build #59217 has started for PR 13238 at commit f6a536d.

Test build #59217 has finished for PR 13238 at commit f6a536d.

This patch fails MiMa tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/59217/
Test FAILed.

Test build #3016 has started for PR 13238 at commit f6a536d.

Test build #3016 has finished for PR 13238 at commit f6a536d.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

LGTM

Merging this to master and 2.0. Thanks for reviewing!


docs: fix rule name in comment

@antfu Sorry to bother you. I didn't notice that the merge didn't use squash. the commit message now incorrectly uses the old title. And the main branch is protected, I can't change the commit message. Can you fix this?

Oh ok, I fixed it no worries


prettier version mismatch

Version
3.2.3
Environment info

Environment Info:

  System:
    OS: macOS 10.14
    CPU: (4) x64 Intel(R) Core(TM) i5-7360U CPU @ 2.30GHz
  Binaries:
    Node: 8.11.3 - ~/.nvm/versions/node/v8.11.3/bin/node
    Yarn: 1.9.4 - /usr/local/bin/yarn
    npm: 6.5.0 - ~/.nvm/versions/node/v8.11.3/bin/npm
  Browsers:
    Chrome: 71.0.3578.98
    Firefox: 62.0.3
    Safari: 12.0
  npmPackages:
    @vue/babel-preset-app:  3.2.2
    @vue/cli-overlay:  3.2.0
    @vue/cli-plugin-babel: ^3.2.0 => 3.2.2
    @vue/cli-plugin-eslint: ^3.2.0 => 3.2.2
    @vue/cli-service: ^3.2.0 => 3.2.3
    @vue/cli-shared-utils:  3.2.2
    @vue/component-compiler-utils:  2.4.0
    @vue/eslint-config-prettier: ^4.0.1 => 4.0.1
    @vue/preload-webpack-plugin:  1.1.0
    @vue/web-component-wrapper:  1.2.0
    babel-helper-vue-jsx-merge-props:  2.0.3
    babel-plugin-transform-vue-jsx:  4.0.1
    eslint-plugin-vue: ^5.0.0 => 5.1.0
    vue: ^2.5.21 => 2.5.21
    vue-eslint-parser:  2.0.3
    vue-hot-reload-api:  2.3.1
    vue-loader:  15.4.2
    vue-style-loader:  4.1.2
    vue-template-compiler: ^2.5.21 => 2.5.21
    vue-template-es2015-compiler:  1.6.0
  npmGlobalPackages:
    @vue/cli: 3.2.3

Steps to reproduce
vue create my-project

# select `Manually select features`
# select `Babel and Linter / Formatter`
# select `ESLint   Prettier`
# select `Lint on save`
# select `In dedicated config files`

cd my-project

less package-lock.json

What is expected?
Version of Prettier at my-project/node_modules/  should be greater than 1.15.(The 1.15 version is inside my-project/node_modules/@vue/eslint-config-prettier/node_modules.
eslint-plugin-prettier turns off all rules about vue template, this means we should format vue template using Prettier?
So I wrote an npm script:
prettier --write src/**/*.{js,json,css,vue}

However, Prettier 1.13 does not support format vue template.
What is actually happening?
Version of Prettier at my-project/node_modules/ is 1.13

the eslint plugin add @vue/eslit-config-prettier when you choose the prettier option, and that config has<EMAIL_ADDRESS>as a dependency, os without looking your actual project I don'T see any reason for this.
https://github.com/vuejs/vue-cli/blob/dev/packages/%40vue/eslint-config-prettier/package.json#L26

<EMAIL_ADDRESS>requires<EMAIL_ADDRESS>I used npm to install packages so yarn whydidn't work.(npm version is 6.5.0)
Then I tried installing packages using yarn. But this time<EMAIL_ADDRESS>was in my-project/node_modules，and<EMAIL_ADDRESS>was in my-project/node_modules/@vue/component-compiler-utils/node_modules.
And here is the repo:
https://github.com/zhuscat/vue-cli-prettier-minimum-reproduction/tree/master
git clone git@github.com:zhuscat/vue-cli-prettier-minimum-reproduction.git

If you want to use prettier in your npm scripts, you need to add it to the project's direct (dev)dependencies.

For now we added prettier to @vue/eslint-config-prettier to avoid eslint-plugin-prettier's peer dep warning and it now seems misleading.
Maybe we should make it a peer dep and add it to the root package.json during project generation.

Already fixed in recent versions of @vue/component-compiler-utils


Write a custom function like a postgraphql introspected CRUD function

What I've done so far:

Followed the tutorial to create a split user record: one in a ..._private schema and one in a anonuser and appuser accessible schema.
Followed the tutorial to create a register_user function.

What I want to do:
I want to create the remaining CRUD functions for updateUser and deleteUser BUT I want them to have the same signatures / functionality as the automatically generated mutations that postgraphql creates when introspecting tables.
For example, on posts: updatePost and updatedPostByID, both of which take an input object, and the input object is the global id and a patch object. I'd like to be able to replicate the this function signature in my custom functions.
Is it possible? What function signature do I need to create for postgraphql to look at my function generate this same graphql mutation?
Stretch goal:
I'm very bad with SQL / pgplsql and I've tried searching for solutions to 'variadic postgresql functions to update tables' and no dice so far. A complete function skeleton (signature, SQL UPDATE statement for this would be very helpful. -- or a link to a stackoverflow answer if you know one!)

This is not currently possible in SQL; in fact it’s not currently possible to use the Patch type in custom SQL mutations at all, let alone matching the payload. Also the nodeId is implemented in JS so again it’s not currently possible to use it in a custom mutation.
Hopefully one day this will be possible; it will probably be achieved using smart comments on the function to change its interpretted behaviour.
You can, however, achieve all of this using the plugin interface on v4, but it’s a fair amount of work. Check the extending docs on graphile.org
Good luck!

@benjie -- well thanks for the clarification, at least.
So the approach would be to just a custom mutation that takes (id + all fields) with STRICT setting, so front-end supplies all values, either unchanged / updated, and update the entire row?

Here's a few ways you could do it:

Create a new patch type with only the fields you care about: create type user_patch2 as (name text, dob date); create function update_user(id int, user_patch user_patch 2) ...
Accept the fields explicitly create function update_user(id int, name text, dob date)
Use the default mutations combined with triggers and/or RLS policies (this'll require more mastery of SQL though)
Use replaceAllPlugins to "remove" the mutations plugins and replace them with your own forks that do what you need

@benjie is there any way to decode the nodeId in Postgres to identify a unique row?
I have a scenario where I'm rewriting a component, which will use new tables, but I need it to be backwards compatible with existing versions of our app so I created a view that mimics the old schema and I have been recreating the mutations, which works for create and update because the patch has enough data, but not for deletes because the only input parameter is nodeId.


Improve multicurl download()

Curl::download and MultiCurl::addDownload uses different logic to download files.
And judging by the codes I would say Curl::download is much much better. Why not implement/use the same logic in MultiCurl::addDownload ?
Also, Curl::download and MultiCurl::addDownload both honor cURL timeout, I had a hard time debugging why I could not download a 300mb files. I think something could also be done there.

Thanks for the suggestion. download and addDownload have been more unified.

In the latest commit files getting saved as "34564.zip.pccdownload"
the .pccdownload not removing. please check.


Bare Metal Install Stalls

Doing an install of Canonical Kubernetes with localhost (LXD), the install process repeatedly stalls out. (Repeated twice with the default bundle, then again with cloning the repo to add/increase resources limits in bundle.yaml and leave the process running overnight. The clone repo is as of commit a5855235fce2da0aa43fafb4404079dfd748155c)
In each case, the process will stall for hours with the kubernetes master node state remaining on "Installing" and after about 8 hours or so settling on "Rendering authentication templates". A screenshot of "juju status" is below, after roughly 24 hours install time.

Each time, the initial multi hour stall is after the master node logs show

2016-12-12 20:44:18 INFO install Successfully installed MarkupSafe-0.23 PyYAML-3.12 Tempita-0.5.2 charmhelpers-0.10.0 charms.reactive-0.4.5 netaddr-0.7.18 pip-8.1.2 pyaml-16.11.4
2016-12-12 20:44:21 INFO juju-log Reactive main running for hook install
2016-12-12 20:44:22 INFO juju-log Invoking reactive handler: reactive/kubernetes_master.py:55:install

Given eight hours or so, the nodes status will update to 'Rendering Templates' as in the screenshot above.
Running grep over the logs to check for errors gives

2016-12-12 20:22:05 ERROR juju.worker.dependency engine.go:539 "metric-collect" manifold worker returned unexpected error: failed to read charm from: /var/lib/juju/agents/unit-kubernetes-master-0/charm: stat /var/lib/juju/agents/unit-kubernetes-master-0/charm: no such file or directory
2016-12-12 20:22:08 ERROR juju.worker.dependency engine.go:539 "metric-collect" manifold worker returned unexpected error: failed to read charm from: /var/lib/juju/agents/unit-kubernetes-master-0/charm: stat /var/lib/juju/agents/unit-kubernetes-master-0/charm: no such file or directory
2016-12-12 20:22:11 ERROR juju.worker.dependency engine.go:539 "metric-collect" manifold worker returned unexpected error: failed to read charm from: /var/lib/juju/agents/unit-kubernetes-master-0/charm: stat /var/lib/juju/agents/unit-kubernetes-master-0/charm: no such file or directory
2016-12-12 20:22:14 ERROR juju.worker.dependency engine.go:539 "metric-collect" manifold worker returned unexpected error: failed to read charm from: /var/lib/juju/agents/unit-kubernetes-master-0/charm: stat /var/lib/juju/agents/unit-kubernetes-master-0/charm: no such file or directory

The entirety of the kubernetes master node logs are here - http://paste.ubuntu.com/23625873/
As troubleshooting steps undertaken so far, I've done a complete reinstall of Ubuntu 16.04.01, run "apt-get update && apt-get upgrade", installed the PPA's for LXD and Juju, updated their software and run through "lxd init" keeping the defaults before cloning the repo here to edit the bundle.yml and install with "juju deploy ./bundle.yml"

Hi Paul,
The title of the issue really had me going at first. I know that we have been testing on bare metal very aggressively (backed by MAAS) and to see its stalling gave me pause for alarm.
The LXD defaults are what's causing you trouble. There is a default, very strict set of apparmor profiles, and limited access bits that we haven't come up with a clear way to indicate to the end user this is the case.
What you can do, if you prefer to keep testing on LXD, is install the conjure-up package, and
conjure-up canonical-kubernetes
The big thing that's happening behind the scenes, is conjure creates and alters the profile assigned to the LXDt container to allow privilege escalation it requires to run kubernetes.
If you want to know the exact bits that its tuning, the profile edits can be found in the spell
Here's the profile its actually using:
https://github.com/conjure-up/spells/blob/master/kubernetes-core/steps/lxd-profile.yaml
Let me know if this doesn't resolve your problem and I'm happy to hop in a hangout and do some real time troubleshooting to get you unblocked as quickly as possible.

Many thanks, that resolved it nicely - all installed well, and using conjure-up is IMO a much better user experience. I'd suggest it's worth changing the "Getting Started" video to use conjure-up as it is a far superior first run experience.
However, the documentation will need to show that users (currently) will have to install conjure-up from the PPA and not with the default (and current documentation) of "apt install", as the default version is one that is unable to find canonical-kubernetes to install at all.
A minor note worth adding in the documentation somewhere is that conjure-up will show an error about LXD not having been initialised and missing its network bridge if you have forgotten to add the user the command is running as to the lxc group. (Oops!)
Huge thanks for your time. Canonical Kubernetes is fantastic.

Thanks for the feedback!

I'd suggest it's worth changing the "Getting Started" video to use conjure-up as it is a far superior first run experience

@castrojo It'd be good for us to re-do the introduction video with conjure-up

the documentation will need to show that users (currently) will have to install conjure-up from the PPA and not with the default (and current documentation) of "apt install", as the default version is one that is unable to find canonical-kubernetes to install at all

@battlemidget Where is conjure-up in the queue for updates for xenial?

conjure-up will show an error about LXD not having been initialised and missing its network bridge if you have forgotten to add the user the command is running as to the lxc group. (Oops!)

This is a good point, we could add some validation to conjure-up which makes sure things like group is added, etc. I've opened conjure-up/conjure-up/521 to track this.

@marcoceppi we are coordinating our release to the archive with Juju 2.1, I don't have an exact date but Juju 2.1 rc1 is supposed to go out today so hopefully very soon.

This was addressed in #170
If this continues to be an issue, please re-open the bug and lets continue the conversation.


C impl: Prevent memcpy undefined behavior

This prevents a (potential, depending on the caller) case of undefined behavior in the call to memcpy in chunk_state_fill_buf. This can happen when blake3_hasher_update is called with input=NULL and input_len=0. Passing a null pointer to memcpy is undefined behavior even if the n argument is 0.
Empy C++ vectors (can) behave this way, eg.:
std::vector<uint8_t> v;
blake3_hasher_update(&hasher, v.data(), v.size());

Thanks for catching this. I probably won't have time to merge it today, but I should get to it tomorrow. For now, I'll note that this code is currently only used to test the other C code; the Rust crate does not build this file.

Passing a null pointer to memcpy is undefined behavior even if the n argument is 0.

I'm not sure that's undefined behavior (but I'm also not confident it isn't).  From C18, § 7.24.1 "String handling" > "String function conventions", (2):

Where an argument declared as size_t n specifies the length of the array for a function, n can have
the value zero on a call to that function. … On such a call, ... a function that copies characters copies zero characters.

A few paragraphs later, § <IP_ADDRESS>, "The memcpy function", (2):

The memcpy function copies n characters from the object pointed to by s2 into the object pointed to by s1 .

I don't really understand how any valid implementation of memcpy could produce UB regardless of s1 and s2, if n is 0.

@cemeyer take a look at https://www.imperialviolet.org/2016/06/26/nonnull.html

@oconnor663 It's a great write-up.
I think perhaps Langley and definitely the glibc authors have interpreted §7.1.4 differently than I have.  The language only says,

If an argument to a function has an invalid value (such as ... or a null pointer, or ….) …, the behavior is undefined."

The sentence includes other examples clearly irrelevant to string functions, such as mathematical values out of domain.  So I believe the "such as" language is intended to provide only examples of possible invalid argument values, rather than a list of values which are always invalid.  Indeed, some of the string.h functions explicitly permit NULL arguments, so it cannot be the case that the entire list is always invalid and therefore use in arguments is always UB.
So the question I think is, is NULL an invalid value for s1 or s2 of any valid implementation of memcpy, with n=0?  And I don't see any reason to believe that.  If n is zero, it is completely bogus for memcpy to dereference s1 or s2, and thus it does not matter if they are valid object pointers.
Similarly, it is valid for malloc(0) to return a non-null pointer.  But it is UB to attempt to access the object pointed to.  Such a pointer would be a valid input to memcpy(,, 0), but not a valid input with any non-zero size, despite being non-NULL.  NULL is not what makes a memcpy argument valid or invalid; it is a combination of the value of n, as well as the size of the object pointed to by s1 and s2 (or NULL, which is essentially the same as a theoretical non-null pointer returned by malloc(0)).
In response to Langley's example of glibc, nonnull, and compiler optimizations, I think basically glibc was wrong to annotate memcpy with the nonnull attribute.  (And perhaps GCC was wrong to provide the attribute in the first place — the name is misleading and leads to accidental misuse, the optimizations from the annotation that are not provided by other analysis are extremely limited, and the downside is large.)  The optimization bugs are fallout from that erroneous annotation.
As Langley goes on to describe, there is negligible to zero program code benefit from making this invocation UB, and potentially large downside.  I think I'm largely on the same page with his Conclusions section.

Although I've little hope of it happening, I'd suggest that GCC and glibc remove these assumptions and that the next revision of the C standard change 7.24.1(2) to clarify that when a length is zero, pointers can be NULL.

💯
In summary: I am still not persuaded this is actually UB per the standard.  However, please go ahead and make this change to defend against the glibc/GCC implementation-specific foot-gun.

Merged and followed on with d7d71b2c5fb4aad6c50e1302ccd7d3be2e3d321d.


docs: Make "Install guest kernel images" arch-sensitive

Make "Install guest kernel images" in Developer-Guide
arch specific.
Fixes: #140
Signed-off-by: Nitesh Konkar<EMAIL_ADDRESS>

lgtm

CI failing as #150 hasn't landed yet.

@sboeuf @grahamwhaley

Travis is passing now post  #150 merger.

Hi @klynnrif - ptal.