Mapping of tuple type

In https://github.com/amzn/ion-python/commit/7651c7a4fe7d736dc439e45edd6ce28f5da429e1 I see that a python tuple is mapped to IonType.LIST. My expectation is that it would be to IonType.SEXP. At least that's what I have in my workspace and it works as I would expect.
Isn't mapping it List effectively losing data?

A python tuple is just an immutable sequence. It does not have s-expression semantics. Most python applications that expect a sequence type would not behave differently based on whether the type is a list or tuple, and ion-python follows that practice.
To write an Ion s-expression, wrap your tuple using IonPyList.from_value(IonType.SEXP, ()).
Data is not lost because when an s-expression is read by simpleion.load, it will produce an IonPyList with the type IonType.SEXP. When this is written with simpleion.dump, it will produce an s-expression.

Looks like there are workarounds which allow tuples to be written as IonType.SEXP so I'm closing this for now.  Please re-open if there are additional questions.  Thanks.

Given the use of tuple types in Python as an immutable sequence (in cases that list would not be appropriate such as module level properties), I am not inclined to make a default mapping for tuple to sexp (I can think of many use cases that this would be surprising behavior).
That said, I do think having a way to customize the mapping table as a public API is appropriate, as there are many potential use cases there.  The Python json module supports customizing how decoding and encoding work.  I am not saying we expose exactly this functionality, but it may serve as an example.

tuple_as_sexp option added in #101.


Error when reconnecting arc agent

When reconnecting the arc agent through DSC (say because you've changed resource group for example) it currently throws the following error:
VERBOSE: [FOO01]:                            [[AzureConnectedMachineAgentDsc]ConnectToArc] Machine FOO01 is already onboarded.
 Disconnecting, restarting service, and reconnecting.               Error: unknown flag: --resource-name
    + CategoryInfo          : NotSpecified: (Error: unknown flag: --resource-name:) [], CimException
    + FullyQualifiedErrorId : NativeCommandError
    + PSComputerName        : foo01

Usage:
  azcmagent disconnect [flags]
Flags:
     --access-token string               Access token
  -f, --force-local-only                  Delete local state only
  -p, --service-principal-secret string   Service Principal Secret
  -v, --verbose   Increase logging verbosity to show all logs
VERBOSE: [FOO01]:                            [[AzureConnectedMachineAgentDsc]ConnectToArc] Attempting to register machine.
The PowerShell DSC resource '[AzureConnectedMachineAgentDsc]ConnectToArc' with SourceInfo
functionality. These errors are logged to the ETW channel called Microsoft-Windows-DSC/Operational. Refer to this channel for more details.
    + CategoryInfo          : InvalidOperation: (:) [], CimException
    + FullyQualifiedErrorId : NonTerminatingErrorFromProvider
    + PSComputerName        : foo01

I suspect some arguments were removed from the azcmagent disconnect command and in any case there seems to be a simple fix for this which is remove the arguments that are no longer needed. If I've time I will submit a PR for this one.

I will do my best to review this week. We are working hard to get DSCv3 out.
Just fyi - I would really like to refactor this module. Ideally, it could be converted to be class-based and it could use a custom resource that checks for the agent by trying to run the executable and evaluating version rather than productid, which has to be updated on every release. It also could support Linux starting in DSCv3.

I believe this is now fixed by the latest changes, though a reminder that at some point it'll need publishing to PowerShell Gallery which as far as I can tell it isn't yet.


Set PVC access mode ReadWriteOnce

This changes the PVC access mode from ReadWriteMany
to ReadWriteOnce to allow the default lvmtopo driver
installed in SNO to provide stoage to glance.
When using the local file backend for glance
each pod uses its own pvc and there is no assumtion that
the glance instnace can share data between the pods via
the filesystem. Infact glance assumes that the backing
store used by the file backend is not shared.

Hey @SeanMooney thanks for all the input in the patch and I'll make sure to review it properly and
follow up.
Not that I'm against your argument on the ReadWriteOnce, and if you look at [1] it proves that I see
your point; I had similar issues in the past, especially when you're not deploying it w/ crc but SNO
is used.
I think this is the result of some technical debt we have in the operator that should be smart enough at
some point to provide the right configuration and it's something we're going to prioritize next quarter.
[1] https://github.com/openstack-k8s-operators/install_yamls/pull/23


Ability to add foreign utxo

bdk has https://docs.rs/bdk/latest/bdk/wallet/tx_builder/struct.TxBuilder.html#method.add_foreign_utxo
it would be a great addition to bdk flutter

Dependant on https://github.com/bitcoindevkit/bdk-ffi/pull/358


fix arithmetic error when offset is nil

Hey guys, I was running some code and I discovered that the Connection.offset(args) will return nil if the args do not specify an offset. Since there is a nil return and we do Connection.from_slice(posts, offset) we will get, as I generated from the test:
  1) test .from_slice/2 when the offset is nil it will set default offset to 1 (Absinthe.Relay.ConnectionTest)
     test/lib/absinthe/relay/connection_test.exs:195
     ** (ArithmeticError) bad argument in arithmetic expression
     code: Connection.from_slice([%{foo: :bar}], nil)
     stacktrace:
       (absinthe_relay) lib/absinthe/relay/connection.ex:425: Absinthe.Relay.Connection.build_cursors/2
       (absinthe_relay) lib/absinthe/relay/connection.ex:287: Absinthe.Relay.Connection.from_slice/3
       test/lib/absinthe/relay/connection_test.exs:196: (test)

To mitigate this, I'm setting offset with a fallback value of 0 in case nil is passed in.

Thanks, @BenMorganIO. Doesn't hurt for this to be extra careful.

I'll get this out in a release, bundled along with #69 shortly.


[sdk] Sdk sendTransaction helper

The Problem
SDK was operating on assumption in a lot of places that the injected signer has already been reconnected to the correct providers.
The Solution
A sendTransaction helper in NxtpSdkBase connects the injected signer to the providers passed down in the SDK config as soon we intend to execute a transaction. Otherwise, the signer could be connected to the wrong chain ID.
Checklist

[x] Update documentation if needed.
[ ] Update CHANGELOG.md.

closing this pr, because of inactivity. Please reopen it if necessary.


Martin development

Fetch function works as intended except that output looks like Hello Martin! rather than just Hello Martin! Unknown where error is in html file.


Screenshots for Course 4: Convolutional Neural Networks

do you have the Deep convolutional models quiz answer?

If you follow the lectures the quiz would not be a problem.
On Wed, Nov 15, 2017 at 8:35 AM, cindysillence<EMAIL_ADDRESS>wrote:

do you have the Deep convolutional models quiz answer?
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/Kulbear/deep-learning-coursera/issues/14#issuecomment-344650104,
or mute the thread
https://github.com/notifications/unsubscribe-auth/Afy6DwREMjugaOPPP9TiDTkaFE-gQeBbks5s2xK5gaJpZM4QPCHB
.

--
Li Yang
Ph.D  EIT
502.802.9284

are you going to upload the yolo code? i finished my session and didnt save a copy :(

It's completed. But no plan to make it public recently. @Favi0

Kulbear, Have you felt that giving only 1 week to digest YOLO is too less? I feel the course is rushing too fast on complex topics. Disclaimer: I have completed YOLO assignments & week already. Still I feel course is rushing.

"It's completed. But no plan to make it public recently." why? I am stuck on YOLO assigment and just cant figure out the python array syntax :-(

@meethariprasad I don't think you are ready to do research or are job ready after taking the course... These are just very basic stuff... But yeah, for beginners it might be a little bit fast.

@manish88888 lots of concerns on the Coursera rules.


Adsk Contrib - Proposal - Add Category support to the public API

Here is the proposal to support the color space categories ( as defined by #623 ).
The pull request only defines the public API change without any implementation. The proposal preserves the API backward compatibilities so that any applications keeping the current behavior (i.e. not using any filtering) would only have to recompile without any code changes.
DO NOT MERGE.

Closing the pull request as the implementation is now underway.


Links not Existent in Translated Web Page

The translations do not display the links correctly.
For example in Spanish:

Whereas in English:

Resuelto via pull request


add create secret for k8s v1.24+

What type of PR is this?
/kind feature
What this PR does / why we need it:
Creating a ServiceAccount does not automatically generate Secret in v1.24+
Which issue(s) this PR fixes:
NONE
Special notes for your reviewer:
NONE
Does this PR introduce a user-facing change?:
NONE

/assign @warjiang

@guozheng-shen could recheck dco?

/lgtm
/approve


stdenv: add pure Linux stdenv support for powerpc64le and sparc64

Motivation for this change
I have a sparc64 system I want to try to get NixOS running on, and if I can get NixOS working well in a powerpc64le emulator, I'll consider getting a ppc64le server to play around with (and probably use as a Hydra buildbox so I can add ppc64le to my binary cache).
I've been building things for this branch on my Hydra instance as part of my nixfiles project/jobset: https://hydra.piperswe.me/jobset/nixfiles/main
Since changing stdenv requires rebuilding the world, I might also add a few more interesting architectures to this PR so that we have bootstrap tools for most architectures out there at the cost of one world rebuild.
Things done

Built on platform(s)

[x] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
[ ] Tested execution of all binary files (usually in ./result/bin/)
21.11 Release Notes (or backporting 21.05 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[x] Fits CONTRIBUTING.md.

Cool, I'm glad there are others interested in exotic platforms. Feel free to ping me for review on any related PRs.
W.r.t. bootstrap tools, see also https://github.com/NixOS/nixpkgs/pull/115406. These always get held up because it's hard to verify that the bootstrap tools are reproducible - how do you do that for native bootstrap tools on a platform we don't support yet? But on the other hand, cross-compiled bootstrap tools won't build stdenv because of https://github.com/NixOS/nixpkgs/issues/113977, so I'm not really sure how to proceed here.
Your first commit (https://github.com/NixOS/nixpkgs/commit/b8eebed2d146fdd53cc266766c0d11b0490770ff) looks pretty noncontroversial, if you'd like to split that off into a separate PR we could probably get that merged quickly and start playing around with cross-compiled sparc64 packages.

W.r.t. bootstrap tools, see also #115406. These always get held up because it's hard to verify that the bootstrap tools are reproducible - how do you do that for native bootstrap tools on a platform we don't support yet? But on the other hand, cross-compiled bootstrap tools won't build stdenv because of #113977, so I'm not really sure how to proceed here.

Very true... it seems like there are three stages to building bootstrap tools:

Cross-compile
Native using cross tools
Native using native tools

Maybe there should be more automation around building these - like, on a system with qemu-binfmt, you have a derivation that runs through all three stages, though that requires having a way to inject the newly built bootstrap tools into nixpkgs.


Added status colors to mouse without borders documentation

As part of the work on the ticket for Issue

@microsoft-github-policy-service agree


Fix: show QR code even if no safe name

What it solves
Resolves #2593
How this PR fixes it
Removes the safe name check when showing the QR code.
How to test it
Open a safe w/o a name and click on the QR code button.
Screenshots

Looks good to me


Move copy role for use w/ podified containers

Add the copy_container role from ci-config
so that it can be modified and used with
the podified container build/test/push
workflow.
This PR has:

[ ] Appropriate testing (molecule, python unit tests)
[ X ] Appropriate documentation (README in the role, main README is up-to-date)

/lgtm


helm: no rate-limiting by default, set by configuration

Currently, none of the rate-limiting configurations is set (see here).
We should by default not limit the number of requests and only set it if the admin that installs REAN requires rate-limiting.

Dup of https://github.com/reanahub/reana/issues/286.


feat: add StdTypes

The rationale behind this PR is two-fold:

StdCheats has become cluttered with structs
Users cannot easily use the structs outside of a contract that doesn't inherit from StdCheats

I've recently bumped into the second issue while trying to use the new type Account introduced in https://github.com/foundry-rs/forge-std/pull/331:
import { StdCheats } from "forge-std/StdCheats.sol";

struct Users {
    StdCheats.Account admin;
    StdCheats.Account broker;
    StdCheats.Account recipient;
    StdCheats.Account sender;
}

It would be much cleaner (and more logical, since Account should not be connected to StdCheats) to be able to do this instead:
import { Account } from "forge-std/StdTypes.sol";

struct Users {
    Account admin;
    Account broker;
    Account recipient;
    Account sender;
}

Notes:

I have also ordered the structs alphabetically.
This PR will introduce a breaking change for some StdCheats users who depend on the structs being in the namespace of the contract. They will have to rewrite their tests to import the structs from StdTypes. I acknowledge this as a trade-off, but the PR still seems worth it to me.

It would be much cleaner (and more logical, since Account should not be connected to StdCheats) to be able to do this instead:

Hmm, I agree it's cleaner because it's shorter, but that comes at the cost of losing context. Now it's less clear whether Account is something specific to your protocol vs. a test helper from forge-std. And if you do want a struct named Account in your protocol, now one of them needs to be aliased.
Related to this is: why do we move StdCheats structs into StdTypes, but not all the other structs from StdChains, StdStorage, etc? If we did that, then all structs no longer have any context which I think is confusing, as you need to search the code to know which structs are used where.
We'd also probably want to rename many structs to be prefixed with Std to make namespace collisions less likely.

This PR will introduce a breaking change for some StdCheats users who depend on the structs being in the namespace of the contract. They will have to rewrite their tests to import the structs from StdTypes.

Since we're at v1, I do want to try avoiding unnecessary breaking changes (there of course have been exceptions), but I'm not quite convinced this one is worth it given the above

comes at the cost of losing context

We could address this by nesting the types under a StdTypes library

not all the other structs from StdChains, StdStorage, etc?

Argh, I missed those.

all structs no longer have any context which I think is confusing

I don't think that that would be more confusing if we applied my herein suggestion to nest the types under StdTypes.

I'm not quite convinced this one is worth it

Sure, happy to wait for some time to see if others find this PR valuable.


Rolling @user [s#4d20] produces two results

https://discord.com/channels/435304187442757634/437058984738816023/1278543904945340479

it was transient


Angular-CLI (RC2) Template - Websocket connection failed

I get the following error in the browser using the new Angular-CLI template:

The only thing that I changed was deleting the content of the ClientApp folder and replacing it with a standard angular cli template. (I'm getting the same error if I use the default template.)

Can you provide more info on how to reproduce this? It doesn't happen by default (at least not for me or the vast majority of people, otherwise there would be a huge number of reports of this). I can only guess there's something unusual about your dev machine setup.
If you can provide repro steps that reproduce the issue on a clean dev machine, please let us know.
It's possible your issue might be related to #1543 if you're running on net461, though that surfaces as a 500 response error, rather than the 400 response error in your screenshot. If it is related to this it will be fixed in the next update, but I still don't know why you'd be getting a 400 instead of a 500.
I'll close this until we have repro steps. Hope that's OK.


MINOR:  ZKAcl Migration Client Test Problem failing in Scala version 2.12

[Error] /Users/hy/kafka/core/src/test/scala/unit/kafka/zk/migration/ZkAclMigrationClientTest.scala:234:88: type mismatch;
 found   : Seq[String] => Unit
 required: java.util.function.Consumer[String]
[Error] /Users/hy/kafka/core/src/test/scala/unit/kafka/zk/migration/ZkAclMigrationClientTest.scala:279:88: type mismatch;
 found   : Seq[String] => Unit
 required: java.util.function.Consumer[String]

Problem failing in Scala version 2.12
Committer Checklist (excluded from commit message)

[ ] Verify design and implementation
[ ] Verify test coverage and CI build status
[ ] Verify documentation (including upgrade notes)

@mimaison
Problem failing in Scala version 2.12
Please review! thanks :)

Thank you for looking into this @highluck  but this seems to have already been fixed by https://github.com/apache/kafka/pull/15343


Dynamic CSS attributes improperly sanitized

I'm developing a site which has a lot of dynamically generated CSS.
I've found assorted CSS syntaxes which are being improperly marked as unsafe:
css exampleClass(config Config) {
	grid-template: { fmt.Sprintf("repeat(%d, 1fr) / repeat(%d, 1fr)", config.Rows, config.Cols)) };
	font-size: { fmt.Sprintf("calc(4vmin * %d)", config.FontScale) };
}

I worked around the font size attribute by creating a helper function that does the calculation but can't figure out a way around the grid-template attribute. Is there a way (other than using Go's html templates for the CSS) to generate this CSS in Templ?

I did think of a work around to skip the repeat function, but it would be nice to be able to dynamically construct CSS values with functions.
css exampleClass(config Config) {
	grid-template-rows: { strings.Repeat("1fr ", config.Rows) };
	grid-template-cols: { strings.Repeat("1fr ", config.Cols ) };
	font-size: { fmt.Sprintf("calc(4vmin * %d)", config.FontScale) };
}

Hi, sorry, it's not in the docs yet, but you can do it with templ.SafeCSSProperty which bypasses CSS sanitisation for known safe values - i.e. by using it, you're marking that, as a develop, you know the string is safe.
css windVaneRotation(degrees float64) {
	transform: { templ.SafeCSSProperty(fmt.Sprintf("rotate(%ddeg)", int(math.Round(degrees)))) };
}

It sounds like the best course of action is to use this ticket as a documentation change?

I've documented it in 6365f9449e3a5a965c52060b3343676979fa2df2


Clarification regarding BotKube's support policy

Hey 👋
I'm sorry if this isn't the right place but I needed some help with BotKube's support policy.
I understand that the archived versions listen in the documentation are not supported anymore and it's a safe assumption that the versions prior to these aren't either. I wanted to know if the previous versions are supported or is it just the latest major.minor release that is supported at any given time. Is there any such support policy that BotKube follows? As this would help us loads in planning our upgrades.
TIA

bump.
I had the same question

Hi,
As Botkube Cloud services have been discontinued (read the blog post here), Botkube support is now fully community-driven. There's no guarantee that bug fixes introduced in the latest versions will be backported to previous ones so it's better to keep Botkube up-to-date.
Cheers!


Add Next JS Indonesia

What does this PR do?
Add resource(s) | Remove resource(s) | Add info | Improve repo
For resources
Description
Why is this valuable (or not)?
How do we know it's really free?
For book lists, is it a book? For course lists, is it a course? etc.
Checklist:

[x] Read our contributing guidelines.
[x] Search for duplicates.
[x] Include author(s) and platform where appropriate.
[x] Put lists in alphabetical order, correct spacing.
[x] Add needed indications (PDF, access notes, under construction).
[x] Used an informative name for this pull request.

Follow-up

Check the status of GitHub Actions and resolve any reported warnings!

Not a book. Please see in CONTRIBUTING what we really accept as acceptable content


Use Fubar great FtpServer with Castle Windsor

Hello,
We are testing the integration of Fubar FtpServer on our project that use asp.net boilerplate framework.
This framework and all our classes are injected through Castle Windsor solution.
We have use the asp.net core injection to use fubar ftpserver like discribe in the sample and it works well but now we want make a custom filesystem and access to our injected classes in castle windsor.
Is there a solution to make working fubar ftp server on another injection system like castle windsor?
Thanks for your help.
Nicolas

Hello,
No idea for this?
Thanks for your help.
Nicolas.


Add single train MI

Also added a passthrough for any BCIController Behaviour to pass custom messages to Bessy Python.

@ekinney-lang ran the tests and they passed, things look good to me, I am merging.


wrapping c errors as zig errors

makeBuffer and many other make functions can return null
pub fn makeBuffer(desc: BufferDesc) Buffer {
    return sg_make_buffer(&desc);
}

↓
pub fn makeBuffer(desc: BufferDesc) !Buffer {
    const res = sg_make_buffer(&desc);
    if(res.id == 0) return error.PoolExhausted;
    return res;
}

I think this could be done with a minor modification to gen_zig.py def gen_func_zig but I'm not sure if there's any way for it to know which functions to do this for or what field to check.
def gen_func_zig(decl, prefix):
    c_func_name = decl['name']
    zig_func_name = as_camel_case(check_name_override(decl['name']))
    zig_res_type = funcdecl_result_zig(decl, prefix)
+   can_error = decl['name'].startsWith("sg_make_")
    l(f"pub fn {zig_func_name}({funcdecl_args_zig(decl, prefix)}) {zig_res_type} {{")
+   if can_error:
+       s = f"    const res = {c_func_name}("
-   if zig_res_type != 'void':
+   elif zig_res_type != 'void':
        s = f"    return {c_func_name}("
    else:
        s = f"    {c_func_name}("
    for i, param_decl in enumerate(decl['params']):
        if i > 0:
            s += ", "
        arg_name = param_decl['name']
        arg_type = param_decl['type']
        if is_const_struct_ptr(arg_type):
            s += f"&{arg_name}"
        elif is_string_ptr(arg_type):
            s += f"@ptrCast([*c]const u8,{arg_name})"
        else:
            s += arg_name
    s += ");"
    l(s)
+   if can_error:
+       l("    if (res.id == 0) return error.PoolExhausted;")
+       l("    return res;")
    l("}")

Yes makes sense, I'm hesitant to implement this though before getting a better idea of how to map certain "Zig-isms" to the language bindings wrapper. For instance another "obvious" change would be to accept a Zig allocaor in the sg.setup() function, but this requires additional work on the C side so that allocation calls from C are forwarded into the Zig allocator.
In general, error handling in the Sokol headers by far isn't as strictly designed as it would be required for Zig's error handling approach, and in general I preferred "silently ignored errors", which also isn't quite compatible with Zig's philosophy. In some headers this is mostly fine, but in others the error feedback should be better (for instance in sokol_gl.h).
I'll keep the ticket open as reminder and maybe further discussion.


serializeRequest performs JSON.stringify on a Buffer

https://github.com/apify/apify-client-js/blob/5093b8f98425af8c829478e8df5aeee1d007c283/src/interceptors.ts#L34
https://github.com/apify/apify-client-js/blob/5093b8f98425af8c829478e8df5aeee1d007c283/src/interceptors.ts#L49-L50
https://github.com/apify/apify-client-js/blob/5093b8f98425af8c829478e8df5aeee1d007c283/src/interceptors.ts#L68-L72
I was wondering why I was receiving {"type":"Buffer","data":[...]} instead of actual data...
This breaks .call(buffer, { contentType: 'application/json' }).

Passing a string does not work either because axios does this:
https://github.com/axios/axios/blob/892c241773e7dda78a969ac1faa9b365e24f6cc8/lib/defaults/index.js#L119


[Feature request] Table of contents for Python API

Is your feature request related to a problem? Please describe.
It's a little difficult to navigate the docs and see what classes exist. At the moment it looks like I need to scroll through the docs.

Describe the solution you'd like
It would be great if there was a heading level which let me see a listing of classes in a module.

@ebezzi please apply this change to the Census doc-site as well. I believe the desired functionality is something like scanpy that I fully support we implement


Error: Expected drag drop context

The application crashes with this error:

Uninstalling and updating the package did not help, any ideas?

Deleting node_modules and package-lock helped, can be closed

@Nerevar123
Thanks for the report.
I just tried it in a different environment and got the same phenomenon.
I will investigate.

@Nerevar123
I looked into this issue and found that there was a problem with the package dependencies.
I have fixed it and published it as v1.5.7.
If you still have any problems, please reopen this issue.


Implement NavigationView

Implemented NavigationView, combined NavigationCompact and NavigationFluent
Pull request type

[ ] Update
[ ] Bugfix
[x] Feature
[ ] Code style update (formatting, renaming)
[ ] Refactoring (no functional changes, no api changes)
[ ] Build related changes
[ ] Documentation content changes

@pomianowski I also changed container, but i changed content page in #322 and I don't want to change it twice if it will merged.
You can check how it looks here https://github.com/IvanDmitriev1/wpfui/tree/navigationView-container-demo

See #355


Create MOA's (military operating area)

Create MOA's in order to facilitate Air-to-air training. Now that we have the Mirage we should structure additional airspace to facilitate this, and provide the necessary documentation for it.
Should also be seen in conjunction with merging documentation for standard training mission  (Range orders + Spins + Mission brief+ ingame mission brief)

:+1:

I want to start working in the training mission tomorrow in order to prepare for the training mission on Sunday.
For the edit I intend to add OCA Range at Kutaisi (See issue #18 ), and at the same time create one or two more ranges in that general area. I will also add in the MOA airspace together with range airspaces.
Anyone have any inputs on how the airspace structure should look like?

I came here to ask you about #28, and I saw this post.
This is a lot of work in small time frame.
I think we should start by creating the range boundaries.

Create a group named "OCA RANGE"
Set it to "Late activation"
Create a closed polygon around the range area with its waypoints
Waypoints coordinates in ED format (x, y) can be translated to LAT/LONG via a function in the scripting engine
Add range as LAT/LONG to LotATC drawing

We should also close #28; my job, but I need your input.
What else would you like to have implemented for Sunday ?

I can make the range on develop now? and then we have the range outlines (airspace), and then I can just finetune them with content later?

If you're Ok with it, I would rather you'd make a branch based on develop, named "feature/26_MOA". This should be standard COA. You know, the one I absolutely did not follow yesterday =p

Ok, so I make a branch from develop, add inn the range airspaces, with a outline using a group ref explanation below, and then commit the branch once I am done?

That works for me ! I will integrate tomorrow, with the new AWACS, and amend the 176th LotATC *.json file accordingly.
Is there anything else you need for the range ?

Not at this time.

@132nd-etcher Could you please elaborate on you :

Waypoints coordinates in ED format (x, y) can be translated to LAT/LONG via a function in the scripting engine

Do you know what this function is called?

@jkhoel http://wiki.hoggit.us/view/DCS_singleton_coord

@jkhoel unfortunately, the function is hard-coded. I've been trying to come up with an equivalent algorithm may, many times, but never had a 100% correlation between LL & LO coords. If you ever find a solution to this conundrum, please share, you would be my hero =)

@132nd-etcher thanks! Yes - If I do, then I will share. However, I have a sneaking suspicion that any real-world calculations might not match EDs calculations..

@jkhoel No, I have no clue whatsoever what system, reference, or datum they're using to represent their 2D world. It's been puzzling me for years ...

@132nd-etcher Would it be possible to use the exported coordinates to get a graphical representation of the airspaces? It would be beneficial with a picture showing all new ranges, MOA's, old ranges and TMA airspace in one picture.

@132ndNeck Affirm, the only drawback is that it needs to be exported from a lua script inside the mission. I can't correlate ED's coordinate format with LL directly, I need an intermediate step.
Awhat I have in mind is this:

Declare a few groups that will be used as "markers" in the TRMT.lua script
Run the mission once, to export a "database" of those waypoints in LL format
Use EMFT to convert those LL points/polygons into a KML file usable in Google Earth / Google Maps.

Would that work for you ?

The feature is in progress: https://github.com/132nd-etcher/EMFT/issues/20
I was able to generate both JSON & KML from the MIZ file.
I will integrate the functionality in the GUI with the next release.

@jkhoel ok, so I kind of did it.
This has bene bugging me for so long I decided to go nuclear on its face. I made a lua script to spew the raw values of 6 billions (yes) points in the X plane, and 6 others billions in the Y plane, then computed the polynomial to the tenth degree for both those values.
This is the plot showing the final result:

(there are actually four lines, with an deviation of 0.014%)
Here are the generic conversion methods:
    poly = [1.7871157276496346e-63, -3.7017105376966803e-56, 3.2739211586271487e-49, -1.61035664804101e-42,
            4.8132831946662597e-36, -8.9716034302632608e-30, 1.0303954202826318e-23, -6.9242087443114205e-18,
            2.5109873548809445e-12, -1.7404291057902361e-07, 34.279300215537305]
    return sum(x * LO**pwr for x, pwr in zip(poly, reversed(range(len(poly)))))

def convert_long(LO):
    poly = [7.7823586472318142e-68, -1.4889802851577457e-60, 9.7709735498211447e-54, -4.0889355382250073e-48,
            -2.1984858913186359e-40, -1.4836779870704244e-34, 1.1548134826958055e-26, 4.6020819684197637e-21,
            -7.0744191595680773e-13, -1.4089631590656565e-07, 45.129497060854682]
    return sum(x * LO**pwr for x, pwr in zip(poly, reversed(range(len(poly)))))```

@132ndNeck what exactly did you have in mind with this ?
Should also be seen in conjunction with merging documentation for standard training mission (Range orders + Spins + Mission brief+ ingame mission brief)

bump, can this be closed?

The ranges are there, but what about documentation and guidelines?


Multiple deps with same name but no version does not work

Consider the following fuzz/Cargo.toml:
# ...
[dependencies]
miniscript = { path = "..", features = [ "compiler" ] }
old_miniscript = { package = "miniscript", version = "12.3" }
# ...

where the initial miniscript has version 13.0. The issue with having mulitple dependencies with the same name was reported in #83 and fixed (at great complexity) in d6f28aac25a9e438598d7319e63ad444e5304b9f. However, if we look at the code in that commit:
https://github.com/nix-community/crate2nix/commit/d6f28aac25a9e438598d7319e63ad444e5304b9f#diff-facb01e83a0e857f2b36f8d94bfb4241c6af2c0cad2716fa7f25c7cb0e89882bR588-R597
We see that, when we encounter the package name miniscript, we iterate through all packages we know by that name, and look for one that matches package_dep.req. In the second line of my Cargo.toml, package_dep.req describes the version = "12.3" requirement and the correct package will be found. But in the first line, package_dep.req is empty (you can check by adding debug printlns) so any package will match and it's more-or-less random whether you'll get the right one.
If it chooses the wrong one, then it will set the package ID for both deps to miniscript 12.3.0, and then buildRustCrate will only see one of them, and you will get compilation errors about one of old_miniscript or miniscript being missing.
The way cargo itself resolves this, I think, involves some special-casing of path where it reads the Cargo.toml at the given path and infers a version from there. I debug-printed all the variables that seemed potentially useful at this point in the code and none of them had enough information to do the right thing. So I'm really not sure what the right course of action for a fix here is.

I also explored indexing packages by something other than name, but (as you undoubtedly noticed when fixing #83) this doesn't seem workable, because prior to resolving the dependencies, the name is pretty-much all you know.
It's easy enough for the user to work around this by adding a version field to all lines in the Cargo.toml.


Tables-in-a-bucket docs broken

"The link to the GA4GH example in the docs is borked. I can see the table endpoint (https://storage.googleapis.com/ga4gh-tables-example/tables) but not the docs (https://storage.googleapis.com/ga4gh-tables-example/EXAMPLE.md)."
This is referring to the last line in this section of the docs.

I've checked the file does not exist in the bucket and I don't remember what it originally referred to (@jfuerth do you?). With the new docs we have now, I think we can probably just remove it.

No, I don't remember what that EXAMPLE.md file was. The contents of that bucket have been recreated several times to keep up with changes in the spec, and the markdown file must have been lost along the way.


Added open-source icon

Added the open-source icon in the required files. Please check that out.

@krshkodes Please check, I have added it in GetIcons.js file.

@krshkodes Please merge it.

@SaptarshiSarkar12 Please wait for a few more approvals.

@krshkodes okay

@Panquesito7 Please check the Icons.md file, I have made the required changes. Possibly, it would help.

@EmmaDawsonDev @Panquesito7 Please check if the size is right or not. I have added a screenshot, from my end, it seems all right.

__
  Summary: :hammer_and_wrench: This code needs a fix

Hopefully, now it seems good to go! 🚀
This is how it looks at this point!
__        👌 This code looks good  |

Thanks @kumarsonsoff3 for your help.
@Panquesito7 Please approve the changes. The code looks good to merge. 👍 __
  Summary: :ok_hand: This code looks good  |  Tags: Readable, Elegant, Maintainable


kv sub-options that don't advertise flags, actually accept some flags

Several Key-Value sub-options including upgrade, history, watch, status, update, create, and put that don't advertise (usage, args) that they accept flags actually take at least one flag:  --trace
$ nats help kv put
usage: nats kv put <bucket> <key> [<value>]

Puts a value into a key

Flags:
  -h, --help                    Show context-sensitive help (also try --help-long and --help-man).
      --version                 Show application version.
  -s, --server=NATS_URL         NATS server urls
      --user=NATS_USER          Username or Token
      --password=NATS_PASSWORD  Password
      --creds=NATS_CREDS        User credentials
      --nkey=NATS_NKEY          User NKEY
      --tlscert=NATS_CERT       TLS public certificate
      --tlskey=NATS_KEY         TLS private key
      --tlsca=NATS_CA           TLS certificate authority chain
      --timeout=NATS_TIMEOUT    Time to wait on responses from NATS
      --js-api-prefix=PREFIX    Subject prefix for access to JetStream API
      --js-event-prefix=PREFIX  Subject prefix for access to JetStream Advisories
      --js-domain=DOMAIN        JetStream domain to access
      --context=CONTEXT         Configuration context
      --trace                   Trace API interactions

Args:
  <bucket>   The bucket to act on
  <key>      The key to act on
  [<value>]  The value to store, when empty reads STDIN

$ nats kv put --trace bucket1 bar baz
16:39:12 >>> $JS.API.STREAM.INFO.KV_bucket1:
16:39:12 <<< $JS.API.STREAM.INFO.KV_bucket1: {"type":"io.nats.jetstream.api.v1.stream_info_response","config":{"name":"KV_bucket1","subjects":["$KV.bucket1.\u003e"],"retention":"limits","max_consumers":-1,"max_msgs":-1,"max_bytes":-1,"max_age":0,"max_msgs_per_subject":1,"max_msg_size":-1,"discard":"old","storage":"file","num_replicas":1,"duplicate_window":120000000000,"sealed":false,"deny_delete":true,"deny_purge":false,"allow_rollup_hdrs":true},"created":"2021-12-02T00:03:54.800442935Z","state":{"messages":1,"bytes":46,"first_seq":2,"first_ts":"2021-12-02T00:29:00.071641515Z","last_seq":2,"last_ts":"2021-12-02T00:29:00.071641515Z","consumer_count":0},"cluster":{"name":"cluster1","leader":"vbox3"}}
baz

Technically those flags are for “nats” and not the sub command, sub command has no flags.
Either way we can’t change it. Those are generated by the cli library and not configurable


py.test should not use local config

When running the tests using
py.test
The config file from user ~/.isort.cfg is still loaded up.  This can cause many test failures since the user can customise max line length etc.
The test runner should know to patch out his own (default) configs, so that the tests are always executed from a known initial state.

@wimglenn,
I agree with this assertion. Will try to get a fix in for this before the next release.
Thanks!
~Timothy


Resolves issue with securityConfig path

Issue #39
This updates the securityConfig path in values to use the correct value
for opensearch.
Signed-off-by: Harrison Goscenski<EMAIL_ADDRESS>Description
Resolves #39
Issues Resolved
#39
Check List

[x] Commits are signed per the DCO using --signoff

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
For more information on following Developer Certificate of Origin and signing off your commits, please check here.

@TheAlgo @DandyDeveloper  My apologies for all of my scattered PR's, I have been opening them as I run into issues deploying this to replace an Opendistro installation.

@TheAlgo @DandyDeveloper My apologies for all of my scattered PR's, I have been opening them as I run into issues deploying this to replace an Opendistro installation.

I don't mind and rather appreciate it. We can make the charts robust and bug free only if the community actively participates in fixing the issues. Thanks @hgoscenski-imanage

Need one more review from @DandyDeveloper @smlx . Thanks.

@hgoscenski-imanage Merge conflicts FYI

@hgoscenski-imanage Merge conflicts FYI

@DandyDeveloper should be resolved.


Fill shuffle buffer very slow

When training with shuffle buffer size 100,000, it take a long time to fill us shuffle buffer, it can take up to 1 minute for each training epoch.
INFO:tensorflow:Saving checkpoints for 0 into /home/gma/results/minigo/final/estimator_working_dir/model.ckpt.                                                               2018-10-15 00:01:20.219185: I tensorflow/core/kernels/data/shuffle_dataset_op.cc:98] Filling up shuffle buffer (this may take a while): 23398 of 100000                      2018-10-15 00:01:30.217862: I tensorflow/core/kernels/data/shuffle_dataset_op.cc:98] Filling up shuffle buffer (this may take a while): 47305 of 100000                      2018-10-15 00:01:40.218016: I tensorflow/core/kernels/data/shuffle_dataset_op.cc:98] Filling up shuffle buffer (this may take a while): 70837 of 100000                      2018-10-15 00:01:50.218091: I tensorflow/core/kernels/data/shuffle_dataset_op.cc:98] Filling up shuffle buffer (this may take a while): 94768 of 100000                      2018-10-15 00:01:52.428082: I tensorflow/core/kernels/data/shuffle_dataset_op.cc:136] Shuffle buffer filled.
After some investigation, it turns out in preprocessing.py, a FilterDataset is used to sample input data:
dataset = dataset.filter(lambda x: tf.less(     tf.random_uniform([1]), filter_amount)[0])
When running this FilterDataset, it would run the predicate repeatedly, which is very slow.
I propose to introduce a 'SamplingDataset' to TensorFlow, which accepts a rate as parameter, and do sampling based on an internal random number generator.   It would greatly reduce the time spend on filling shuffle buffer.

Adding a new op to TensorFlow itself is outside the scope of the MiniGo project.
That being said - do you have profiler evidence to suggest that the inline filter is what is causing the slowness, rather than having to do the I/O for 20 examples for every 1 that ends up being used?

I didn't successfully get profiling data with the following profiling code:
     with tf.contrib.tfprof.ProfileContext('/tmp/train_dir') as pctx:
         main.train(ESTIMATOR_WORKING_DIR, TRAINING_CHUNK_DIR, save_file,
                generation_num=model_num + 1)

But I verified by repeat calling EvaluatePredicate twice in tensorflow->filter_dataset_op.cc:
           TF_RETURN_IF_ERROR(
               dataset()->EvaluatePredicate(ctx, *out_tensors, &matched));
           TF_RETURN_IF_ERROR(
               dataset()->EvaluatePredicate(ctx, *out_tensors, &matched));
           if (!matched) {
             // Clear the output tensor list since it didn't match.
             out_tensors->clear();

The effect is the filter will be called twice every iteration.  It is purely filter overhead.  The amount of I/O will not change.   So its a quick verify whether the filter is the bottleneck.  And it turns out the filling up slowed down.  Note how it only fills up to 17118 for the first 10 second, while in my previous log, it fills up to 23398.
2018-10-21 00:36:32.288609: I tensorflow/core/kernels/data/shuffle_dataset_op.cc:97] Filling up shuffle buffer (this may take a while): 17118 of 100000
2018-10-21 00:36:42.288490: I tensorflow/core/kernels/data/shuffle_dataset_op.cc:97] Filling up shuffle buffer (this may take a while): 34088 of 100000
2018-10-21 00:36:52.288549: I tensorflow/core/kernels/data/shuffle_dataset_op.cc:97] Filling up shuffle buffer (this may take a while): 50881 of 100000
2018-10-21 00:37:02.288416: I tensorflow/core/kernels/data/shuffle_dataset_op.cc:97] Filling up shuffle buffer (this may take a while): 67932 of 100000
2018-10-21 00:37:12.288681: I tensorflow/core/kernels/data/shuffle_dataset_op.cc:97] Filling up shuffle buffer (this may take a while): 84838 of 100000

I also experimented a sampling dataset in my local tensorflow branch.    This dataset takes a 'rate' parameter and do sampling inside the dataset op, instead of use filter to do the sampling.  The training is a lot faster:
Batch size = 128, filter amount = 0.05, board size 9x9, examples trained per generation: 100000
Measure training time:
Use filter dataset: 148.877 seconds
Use sampling dataset instead of filter dataset: 86.363 seconds
Use filter dataset (twice to double filter overhead): 197.128 seconds

during my development, I found that "dataset.filter" for each element is slow. It's like the "dataset.map" that each time you run a python function in tensorflow, there will be static cost.
So the solution is to reduce the call of python function by "dataset.batch" before the "dataset.fillter". And the use "dataset.map" after "dataset.batch".
in "dataset.map" you can use "tf.boolean_mask" to gather the element satisfy the filter condition.
my script is like this:
                mydataset = mydataset.batch(1000)
                mydataset = mydataset.map(_parse_function, num_parallel_calls=4)
                mydataset = mydataset.unbatch()

		def _parse_function(example_proto, filterfn=lambda x:xxxxxxxx):
			# Parse the input `tf.Example` proto using the dictionary above.
			parsedf = tf.io.parse_example(example_proto, feature_descriptiondebug)
			if filterfn is not None:
				filterbool = filterfn(parsedf)
				parsedf['fea'] = tf.boolean_mask(parsedf['fea'],filterbool)
				parsedf['label'] = tf.boolean_mask(parsedf['label'],filterbool)
			return parsedf

Yeah, I experimented with a similar approach but ended up writing a C++ binary to perform shuffling and filtering: https://github.com/tensorflow/minigo/blob/master/cc/sample_records.cc
Selfplay generates a large number of small training records, and the sample_records binary batches them up into a small number large records, which also helps throughput when training. It reads and writes on multiple threads and so is pretty fast. We've only used it so far with the MLPerf benchmark so I don't know how well it would perform on a full run (like Andrew said, we use Cloud BigTable for those).

A new C++ op is added to TensorFlow to support fast random sampling, and an optimization to convert the filter op automatically.
https://github.com/tensorflow/tensorflow/pull/25384
An example of applying the filter optimization can be found at
https://github.com/mlperf/training_results_v0.6/blob/master/Intel/benchmarks/minigo/implementations/tensorflow/preprocessing.py#L144 , in the case of small filter amount, performance improvement can easily be seen.

It looks like that optimization has been disabled: https://github.com/tensorflow/tensorflow/blob/01981de67a0d509f1fb475d158f3ee852bc607be/tensorflow/core/grappler/optimizers/data/filter_with_random_uniform_fusion.cc#L275


sam build deletes (package.json local path) source files

Description
When using npm local paths (ie a package.json dependency that is not in npm but rather on the local file system), sam build builds correctly the first time, on subsequent builds however, it deletes the source files in addition to the build files.
tl;dr; Mitigation is to rm -rf .aws-sam every time prior to running sam build
Steps to reproduce
sam init #hello-world
cd sam-app

# Shared libs are common with APIG / Lambda since many tutorials indicate that each API should be its own lambda function
mkdir -p shared-libs
echo "{}" > shared-libs/package.json # Fake package for now
# Add a dependency on the shared-libs
cat > hello-world/package.json << PACKAGE_JSON
{
  "name": "hello_world",
  "version": "1.0.0",
  "dependencies": {
    "shared-libs": "file:../../../shared-libs"
  }
}
PACKAGE_JSON

sam build # this one will succeed
sam build # this one will fail because the shared-libs directory has been deleted

Observed result
$ sam build --debug
Telemetry endpoint configured to be https://aws-serverless-tools-telemetry.us-west-2.amazonaws.com/metrics
'build' command is called
No Parameters detected in the template
2 resources found in the template
Found Serverless function with name='HelloWorldFunction' and CodeUri='hello-world/'
Building resource 'HelloWorldFunction'
Loading workflow module 'aws_lambda_builders.workflows'
Registering workflow 'PythonPipBuilder' with capability 'Capability(language='python', dependency_manager='pip', application_framework=None)'
Registering workflow 'NodejsNpmBuilder' with capability 'Capability(language='nodejs', dependency_manager='npm', application_framework=None)'
Registering workflow 'RubyBundlerBuilder' with capability 'Capability(language='ruby', dependency_manager='bundler', application_framework=None)'
Registering workflow 'GoDepBuilder' with capability 'Capability(language='go', dependency_manager='dep', application_framework=None)'
Registering workflow 'GoModulesBuilder' with capability 'Capability(language='go', dependency_manager='modules', application_framework=None)'
Registering workflow 'JavaGradleWorkflow' with capability 'Capability(language='java', dependency_manager='gradle', application_framework=None)'
Registering workflow 'JavaMavenWorkflow' with capability 'Capability(language='java', dependency_manager='maven', application_framework=None)'
Registering workflow 'DotnetCliPackageBuilder' with capability 'Capability(language='dotnet', dependency_manager='cli-package', application_framework=None)'
Found workflow 'NodejsNpmBuilder' to support capabilities 'Capability(language='nodejs', dependency_manager='npm', application_framework=None)'
Running workflow 'NodejsNpmBuilder'
Running NodejsNpmBuilder:NpmPack
NODEJS packaging file:C:\Users\cheruvian\workspaces\sam-app\hello-world to C:\Users\CHERUV~1\AppData\Local\Temp\tmp3rug8kkf
executing NPM: ['npm.cmd', 'pack', '-q', 'file:C:\\Users\\cheruvian\\workspaces\\sam-app\\hello-world']
NODEJS packed to hello_world-1.0.0.tgz
NODEJS extracting to C:\Users\CHERUV~1\AppData\Local\Temp\tmp3rug8kkf\unpacked
NodejsNpmBuilder:NpmPack succeeded
Running NodejsNpmBuilder:CopyNpmrc
NodejsNpmBuilder:CopyNpmrc succeeded
Running NodejsNpmBuilder:CopySource
NodejsNpmBuilder:CopySource succeeded
Running NodejsNpmBuilder:NpmInstall
NODEJS installing in: C:\Users\cheruvian\workspaces\sam-app\.aws-sam\build\HelloWorldFunction
executing NPM: ['npm.cmd', 'install', '-q', '--no-audit', '--no-save', '--production']
NodejsNpmBuilder:NpmInstall failed
Traceback (most recent call last):
  File "C:\Program Files\Amazon\AWSSAMCLI\runtime\lib\site-packages\aws_lambda_builders\workflows\nodejs_npm\actions.py", line 108, in execute
    ["install", "-q", "--no-audit", "--no-save", "--production"], cwd=self.artifacts_dir
  File "C:\Program Files\Amazon\AWSSAMCLI\runtime\lib\site-packages\aws_lambda_builders\workflows\nodejs_npm\npm.py", line 85, in run
    raise NpmExecutionError(message=err.decode("utf8").strip())
aws_lambda_builders.workflows.nodejs_npm.npm.NpmExecutionError: NPM Failed: npm ERR! code ENOLOCAL
npm ERR! Could not install from "..\..\..\shared-libs" as it does not contain a package.json file.

npm ERR!      C:\Users\cheruvian\AppData\Roaming\npm-cache\_logs\2020-04-30T08_36_46_582Z-debug.log

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "C:\Program Files\Amazon\AWSSAMCLI\runtime\lib\site-packages\aws_lambda_builders\workflow.py", line 269, in run
    action.execute()
  File "C:\Program Files\Amazon\AWSSAMCLI\runtime\lib\site-packages\aws_lambda_builders\workflows\nodejs_npm\actions.py", line 112, in execute
    raise ActionFailedError(str(ex))
aws_lambda_builders.actions.ActionFailedError: NPM Failed: npm ERR! code ENOLOCAL
npm ERR! Could not install from "..\..\..\shared-libs" as it does not contain a package.json file.

npm ERR!      C:\Users\cheruvian\AppData\Roaming\npm-cache\_logs\2020-04-30T08_36_46_582Z-debug.log

Build Failed
Sending Telemetry: {'metrics': [{'commandRun': {'awsProfileProvided': False, 'debugFlagProvided': True, 'region': '', 'commandName': 'sam build', 'duration': 5577, 'exitReason': 'BuildError', 'exitCode': 1, 'requestId': 'fff5b25a-cb15-4e5b-9efe-edcdd1351b97', 'installationId': 'df7219e8-3473-48e3-9d07-ed6a44dee7f3', 'sessionId': '76da64b5-0cc0-464c-b398-519796eb1624', 'executionEnvironment': 'CLI', 'pyversion': '3.7.6', 'samcliVersion': '0.46.2'}}]}
Telemetry response: 200
Error: NodejsNpmBuilder:NpmInstall - NPM Failed: npm ERR! code ENOLOCAL
npm ERR! Could not install from "..\..\..\shared-libs" as it does not contain a package.json file.

npm ERR!      C:\Users\cheruvian\AppData\Roaming\npm-cache\_logs\2020-04-30T08_36_46_582Z-debug.log

Expected result

Should never delete source files
Should build successfully every time

Additional environment details (Ex: Windows, Mac, Amazon Linux etc)

OS: Windows 10 Pro
Shell: gitbash
sam --version: SAM CLI, version 0.46.2

I am facing the same issue here. I would love to hear about a fix (or a workaround). It seems related to this npm issue.


Create onboarding widgets as needed

Remove OnboardingWindow
Dynamic create TrainingGuide & TermsPage

I like the simplicity of the way it's done now: one loop to get all the alerts initially and another to update them. What do these changes accomplish?

Oops that comment was meant for the offroad alert PR.

lol,I know~

I think the terms and training widgets along with their logic are nicer wrapped in the separate window. The MainWindow class should mainly be a glue class that connects the signals/slots for all the other classes.

Closing this one for now.


When set num_heads = 1, doesnt train

First of all, thank you for the wonderful work.
I have a quick question though.
I see you have set num_head  = 6, meaning you iteratively update bounding box results 6 times before getting final output.
I wanted to see if i can just use 1 iteration so i set cfg.model.sparsercnn.num_heads = 1
But training does not go well and i get following result

AP only goes upto 3%...
Any suggestion to what i'm doing wrong? should i also set
cfg.model.sparsercnn.deep_supervision = false? even though this is same as setting num_heads = 1?
Thank you!

Hi~
Do you change any other codes?

@PeizeSun no i didnt change anything else. when i set num_heads=6, it trains well.
Its only when i set num_heads=1, it doesnt train well

when you set num_heads=6, is the final performance the same as our reported performance?

In the paper AP is 42.3 but i reproduced 38%. Not the same but close enough.

Do you train on 8GPUs?

No, just 1 gpu.

Maybe reducing learning rate could help.

thank you, i'll try it.

First of all, thank you for the wonderful work.
I have a quick question though.
I see you have set num_head = 6, meaning you iteratively update bounding box results 6 times before getting final output.
I wanted to see if i can just use 1 iteration so i set cfg.model.sparsercnn.num_heads = 1
But training does not go well and i get following result

AP only goes upto 3%...
Any suggestion to what i'm doing wrong? should i also set
cfg.model.sparsercnn.deep_supervision = false? even though this is same as setting num_heads = 1?
Thank you!

Hi,
Your plots look really nice and clean. Could you share how you plot the mAP trend from the log, please?


Carousel Cards working in Emulator but not working on WebChat

I am trying out this example on Carousel Cards - https://github.com/Microsoft/BotBuilder-Samples/tree/master/Node/cards-CarouselCards
I am able to see the Carousel Cards on Emulator but the same when tried on WebChat I am getting the result as a conversation bubble but not as a Carousel Card.
Attaching screenshots!
On Emulator

On WebChat (Embedded via an iframe)

Dependencies
"dependencies": {
   "botbuilder": "^3.2.3",
   "restify": "^4.1.1"
 }

Hi @sriharshakappala, cards are supported in the preview version of the web chat control.
To enable the preview, visit the Web Chat configuration page for your bot and click the "Enable web chat preview" checkbox near the bottom of the page.

Thanks @dandriscoll It worked. I added a new site in the Web Chat configuration page, enabled preview and updated secret in my iframe.
However, It looks like welcome message from bot has been deprecated in preview version. Is that how it was supposed to be or is it a bug?
Attaching a side by side screenshot!
Left - With preview disabled, Welcome message, Carousel Cards not working
Right - With preview enabled, No Welcome message, Carousel Cards working

@dandriscoll Is #1718 possible?

Hi @sriharshakappala, that's correct, the new web chat control no longer displays a hardcoded welcome message. Instead, you bot can send a message when it receives the ConversationUpdate activity.

Okay! Got it. Thanks a lot @dandriscoll


Fixes #92 - limit Docker logging

Description of the Change
Limit Docker logging. Fixes #92.
Verification Process
docker build -t blacklabelops/jira .

Thanks!


Allow configuration dir to be overridden

What is the areas you would like to add the new feature to?
Notation CLI
Is your feature request related to a problem?
Currently, the notation CLI defaults to using os.UserConfigDir from notation-go dir/path via cmd/notation/verify.go and notation-go verifier/trustpolicy/trustpolicy.go
On MacOS, this ends up being $HOME/Library/Application Support which isn't extremely obvious and is super varied based on system:
// On Unix systems, it returns $XDG_CONFIG_HOME as specified by
// https://specifications.freedesktop.org/basedir-spec/basedir-spec-latest.html if
// non-empty, else $HOME/.config.
// On Darwin, it returns $HOME/Library/Application Support.
// On Windows, it returns %AppData%.
// On Plan 9, it returns $home/lib.

What solution do you propose?
It would be nice if this value could be overridden with an environment variable, so a user could support multiple configurations (as with docker or kubectl) or could more easily store things in their home directory (os.UserHomeDir) on non linux based operating systems.
What alternatives have you considered?
There could be multiple other avenues for this but an environment variable seems the most flexible.
Some alternatives could be:

A new configuration flag.  This would be extremely cumbersome from a user experience stand point.
Changing the value to use os.UserHomeDir instead. This wouldn't provide flexibility and would not incorporate the original reason for using os.UserConfigDir

Any additional context?
No response

@JeyJeyGao  PTAL, /cc: @shizhMSFT

Hi @jeremyrickard, sorry for late reply. Currently, you can use those environment variables for each platform to override the config directory as you mentioned, which is by designed. The Notation cli will add a trust policy command to manage the trustpolicy.json file, so you may don't need modify the files under notation config directory manually. As a result, I prefer to keep the current UX and decide to whether optimize the directory experience after the CLI command has been completed.

@JeyJeyGao  you can you an environment variable to override the config directory? I couldn't find documentation for that so it might be useful to document how this is done?
I tried to determine by looking at code:
// NewFromConfig returns a verifier based on local file system
func NewFromConfig() (notation.Verifier, error) {
	// load trust policy
	policyDocument, err := trustpolicy.LoadDocument()
	if err != nil {
		return nil, err
	}
	// load trust store
	x509TrustStore := truststore.NewX509TrustStore(dir.ConfigFS())

	return New(policyDocument, x509TrustStore, plugin.NewCLIManager(dir.PluginFS()))
}

and
// LoadDocument loads a trust policy document from a local file system
func LoadDocument() (*Document, error) {
	jsonFile, err := dir.ConfigFS().Open(dir.PathTrustPolicy)
	if err != nil {
		return nil, err
	}
	defer jsonFile.Close()
	policyDocument := &Document{}
	err = json.NewDecoder(jsonFile).Decode(policyDocument)
	if err != nil {
		return nil, err
	}
	return policyDocument, nil
}

It wasn't clear how a user could override today.
Documentation for the notation CLI would be beneficial for this.

Hi @jeremyrickard , are you a CLI user? or notation-go library user?
For CLI user, you can modify the environment variable based on per OS to change the notation config directory

OS
Directory

Unix
$XDG_CONFIG_HOME/notation

Windows
%AppData%/notation

Darwin
$HOME/Library/Application Support/notation

For example, you are a MacOS user, you can create a path <Your prefered directory>/Application Support/notation and update $HOME to be <Your prefered directory>, then you can override the notation directory to be your custom directory. However, it is not recommanded to change the default directory.  Different OS may have different policy to manage the configuration files, so put them in the OS prefered directory is rational.
For a Notation-go user, you can update the package variable dir.UserConfigDir to be your custom directory.

I could identify a use case of overriding NOTATION_CONFIG and NOTATION_LIBEXEC, basically giving users more flexibility.
Assuming in Unix, I want to customize my config path and plugin path. The only way of doing it is to override $XDG_CONFIG_HOME. This works if I directly use notation.
However, if I want to integrate notation to my application and let my users customize their notation configs, the only safe way is exposing something like $NOTATION_HOME in my application and translate it to $XDG_CONFIG_HOME when calling notation, which is cumbersome. Directly exposing $XDG_CONFIG_HOME for notation is not safe because $XDG_CONFIG_HOME may be also used for other configs in my application.
I posted a quick PR for discussion https://github.com/notaryproject/notation-go/pull/279 and happy to discuss different thoughts. https://github.com/notaryproject/notation-go/pull/279

Currently, we are improving user experience of notation CLI. After the improvement, the user can add trust policy or add plugin by cli command, so the user don't need to manipulate the configuration directory by themselves and don't need to be care about where is the config directory.
If the user uses notation-go library, they can easily change the UserConfigDir or UserLibexecDir to be prefered directories.
Also, adding those environment variables is risky. The behavior of notation is extensively decided by configuration files which can be overridden by environment variables. I'm not sure is this the right way to do it.

Got it. The use case is the downstream software using Notation as dependency may want to separate their user data from the normal Notation's user data to keep a clear trust boundary. Does this imply that the downstream software using Notation as dependency should use notation-go instead of notation CLI?

Got it. The use case is the downstream software using Notation as dependency may want to separate their user data from the normal Notation's user data to keep a clear trust boundary. Does this imply that the downstream software using Notation as dependency should use notation-go instead of notation CLI?

Downstream software should use notation-go if it is written in Go. Otherwise, notation CLI binary should be used since we currently don't have libraries for other languages.

The macOS path is a bit complicated. $HOME/Library/Application Support/notation
Is there a specific reason to make Library/Application Support part of path instead of some simple paths like $HOME/.notation?
I have the solution of dealing with Library/Application Support in my use case but it needs some additional logic.
If notation is open to simply the macOS path, I'm happy to help. If notation has a specific reason of keeping the long path, I'm happy to learn and add the addtional logic of dealing with Library/Application Support in my use case.
@JeyJeyGao @shizhMSFT

$HOME/Library/Application Support is the conventional directory for MacOS to store app’s user-specific data. If the app is running in MacOS sandbox, it can only access data in $HOME/Library/Application Support. Currently, it doen't run in MacOS sandbox, but we prefer to follow OS preference.

@ningziwen You may refer the details to this original doc, which was removed in rc.2.
As documented in File System Basics, the Application Support folder is used to

store all app data files except those associated with the user’s documents. For example, you might use this directory to store app-created data files, configuration files, templates, or other fixed or modifiable resources that are managed by the app.

That really makes sense to me. Thanks all!


504 gateway timeout

Travis is saying coveralls succeeded, but there's no information on the website. If I look at the repo on Travis CI, and expand the log, I see HTML with really long raw bits of CSS and JavaScript. After scrolling through it for a while, I can see

Gateway time-out

The web server reported a gateway time-out error.

Ray ID: 2d25012b3279086e

Your IP address: <IP_ADDRESS>

Error reference number: 504

CloudFlare Location: Ashburn

Errors from the coveralls API should now actually generate an error case in coveralls-python. Thanks for the report!


Error in demo code

There is an error in demo code causing continous ESP32 reboot:
In PrintSerialNumber() subroutine instead of
char format[12];
should be
char format[13];
to have place for closing zero of sprintf.
Regards
Gregory

I don't know why but 13 wasn't enough.
char format[14];
was OK.


Use Section From Layout Inside View Component

I am unable to call any section that I have defined from a view component.  Has anyone done this yet?

You can use it to render sections for a Layout that the view component's view declares. However, sections defined in partials and view components don't flow back to the rendering view or it's Layout.

I think you thought I meant that I have a section defined in the VC and then I was expecting it to render in the layout, but no, just the opposite.  In my layout, I have a section like this:
@RenderSection("Scripts", false)
And in my VC, I am trying to call that section like so:
@section Scripts {
    <script type="text/javascript">
        alert('did I make it here??? NO');
    </script>
}

That make more sense?

Does seem like you're trying to define a section in the ViewComponent (that's what @section does) and render it in the layout (RenderSection). Like I said earlier, this isn't supported.

Umm, no.  Not sure if you've read the documentation or ever created a layout file, but to define a section, you use @RenderSection("Scripts", false) and then when you want to use those sections in your views, you simply use @section Scripts { // put script here } per the documentation:
https://docs.microsoft.com/en-us/aspnet/core/mvc/views/layout
I'm doing that and it works fine in a view, but not in a view component.

@clockwiseq I'm scratching my head over here on why the hell I would need a view component if I can't use CSS/JS lol. I guess my only logical choice is to my grid component into a view so I can use the grid-specific jquery I was trying to inject in the view compnent

That's precisely my issue.  I'm not sure why "they" didn't allow the VC's to access sections defined in a layout.  It seems possible in the pipeline, but is above my head.  There would never be an instance where I would create some reusable piece of HTML that would not require some type of front-end scripting.  It seems like this is a fairly common scenario and I'm wondering if I'm the only one that has a problem with this?

There's some discussion for this feature request here - https://github.com/aspnet/Mvc/issues/2910. The guidance was to use a script \ css management feature as described here - https://github.com/aspnet/Mvc/issues/2910#issuecomment-328585001.

That's EXACTLY what I'm experiencing and wish existed.  I will look at the script/css management feature and see if that works for me.

How do I reopen my issue?  This is a valid request as I have seen tons of devs request and comment on this feature for months now and both requests have been closed.  Maybe no one is seeing the bigger picture here.  If I wanted to create a reusable component for my application inside my web project (should not violate SoC), this feature is a must as something as simple as wanting to create a select2 component should be example enough.  If I need to elaborate, I can.


Fix Numerical Stability Issues with geomeTRIC

For some reason on different machines the Cartesian coordinates displacements returned by geomeTRIC are quite different. I need to look into why. Perhaps I'm just asking for too much numerical stability across machines? But I'm surprised it has the issues it does!

Fixed with #49 thanks to comments from Todd here.


Additional React ~18 support

I tried to update the dependencies in package.json and package-lock.json to add the support for React v.18, but I can't see how I can actually test and run the project to see if any bug occurs.
It would be great if you could provide me with a guide on how to run the project to see if everything works as it should.
All the tests and builds were performed.

Hi @zeromero-dev,
Thank you for trying this out. I deployed a new beta earlier today with react 18 support. You can try it out npm install react-simple-maps@beta. There's still some more stuff in the works, but this will be part of react-simple-maps v3.

That's great news! So my pull request is no longer needed, right? If not, I'd be glad to help you @zimrick out.

Yeah, it's ok. I merged your previous one for the peer dependencies. That should be ok for now. We are currently working on a number of things here in order to make this repo a bit easier to test and contribute to.


Run actions on 2-x-stable branch

Our (CI and gem-publish) workflows on the master branch are configured to run when changes happen to on master branch. For the same workflows to run on changes to the 2-x-stable branch, we need to reconfigure the workflow triggers. (Note that the workflows are unchanged on master, so they will now trigger on both branches).

I’m sorry, I’m lost. What is the 2-x-stable for?

I’m sorry, I’m lost. What is the 2-x-stable for?

I saw your comment https://github.com/rubocop/rubocop-rspec/pull/1894#issuecomment-2144024083, but just in case anyone else are lost:
My apologies, I probably have never properly explained it. My idea with having a 2-x-stable branch was to keep making v2.x releases of rubocop-rspec while we are using master branch to prepare the v3 release. Some of the changes that go into master can be backported to 2-x-stable, and I think especially new cops should be backported. This ensures that we can get feedback on their use before we release v3. If we don’t solicit such feedback, we can hardly make those new cops enabled, but would keep them as pending until v4 some time in the future.

🤦🏼 I forgot to squash before merging. Sorry.


INT | B-18497 B-18630 | closeout office shipment card

B-18497
B-18630
Summary
Requested addition from govt. to #12256.
This adds a closeout field to the shipment card when a user finishes setting up a PPM shipment.
How to test
Login as a user and create a PPM shipment. Before signing, on the home screen that shows the yellow PPM shipment card, you should now see a new Closeout Location field, that contains the office you chose when making the shipment.

Warnings

:warning:
This PR does not include changes to unit tests, even though it affects app code.

  Generated by :no_entry_sign: dangerJS against 27edfae1ed666ff2bfef0b25d71bfb2a3562d22e


feat(playground): add playground/preview of your DocSearch index

Summary

Result

Postponing this feature to the release of an alpha


Fix updating GUI plugin on load

🦟 Bug fix
Summary

Ignition GUI has been sending an empty string until now, see https://github.com/ignitionrobotics/ign-gui/pull/249/. With that fix, the signal will send a unique string instead of the plugin name.
The current code is always getting the first plugin loaded, because they all have empty names. With this fix, the newly added plugin should be correctly got.
If the ign-gui PR is released without this fix, users will be spammed with error messages that they can't get the plugin with name plugin<number>.
Checklist

[x] Signed all commits for DCO
[ ] Added tests
[ ] Updated documentation (as needed)
[ ] Updated migration guide (as needed)
[x] codecheck passed (See contributing)
[x] All tests passed (See test coverage)
[x] While waiting for a review on your PR, please help review another open pull request to support the maintainers

Note to maintainers: Remember to use Squash-Merge
🔸🔸🔸🔸🔸🔸🔸🔸🔸🔸🔸🔸🔸🔸🔸🔸🔸🔸🔸🔸🔸🔸🔸🔸🔸🔸🔸🔸🔸🔸🔸🔸🔸🔸🔸🔸🔸

@osrf-jenkins retest this please

@osrf-jenkins retest this please


Null Pointer Exception

Making adjustment to temperature in Nest app or on thermostat itself does not update in Hubitat. Getting following error in logs:
errorjava.lang.NullPointerException: null (postEvents)

Is there a code line included with this NPE? If not, can you provide additional logs that surround it?

No code line number.
app:277 2020-10-07 09:18:58.825 pm error java.lang.NullPointerException: null (postEvents) app:277 2020-10-07 09:18:58.819 pm debug {   "eventId": "c597b3a1-1816-4ee6-8d63-1b288375904e",   "timestamp": "2020-10-08T00:07:52.919Z",   "resourceUpdate": {     "name": "enterprises/0d10ebe0-737f-4a35-a7eb-6b0be8eef6ec/devices/AVPHwEviuuBw3ok4VfDeRkTII5ew8cYBcUW3eXIsGyUFe7mi7LLcWu_AntRxKgpbb6XGFgvzNakC93fIl61GMUYKHqIE5A",     "traits": {       "sdm.devices.traits.ThermostatMode": {         "mode": "OFF",         "availableModes": ["HEAT", "COOL", "HEATCOOL", "OFF"]       },       "sdm.devices.traits.ThermostatEco": {         "availableModes": ["OFF", "MANUAL_ECO"],         "mode": "OFF",         "heatCelsius": 12.77776,         "coolCelsius": 29.4444       },       "sdm.devices.traits.ThermostatTemperatureSetpoint": {       }     }   },   "userId": "AVPHwEs2Yn7LGwWQG-s8gpC1NTXI8KLxL_XXP59Pro63" } app:277 2020-10-07 09:18:58.812 pm debug event received


Fixes #26 Add code to read Surpac files

I'm just starting to code and I saw you needed code to read in the Surpac code. I've started to write up some code and I was wondering if you could have a look at it and let me know if I am on the right track or not. Could you also let me know where you would like me to put the code.

Hi @kdal108,
Thank you for your contribution.


Where to resize bboxes?

Hi @lufficc,
I changed the resizing of the input images, such that it keeps the aspect ratio unchanged by padding the shorter sides with zeros. However, I don't know where to change the resizing of the labels (bbox, segmentation of the gt_data).
BR

Resizing of boxes is done in transforms.py by the ToPerecentCoords class


Add prashanaregmi's file

I have created a branch, created a file and made a commit, and opened a pull request


Add retry logic

This is related to the issue when DBreeze transaction commit throws an I/O exception during disk write when multiple nodes are running on the same disk.
Another thing to consider is to upgrade DBreeze nuget package from 1.89 to 1.92 as few minor improvements were made.

This is related to the issue when DBreeze transaction commit throws an I/O exception during disk write when multiple nodes are running on the same disk.

Are you trying to run several nodes with the same datafolder?
How to reproduce this problem?

This is related to the issue when DBreeze transaction commit throws an I/O exception during disk write when multiple nodes are running on the same disk.

Are you trying to run several nodes with the same datafolder?
How to reproduce this problem?

Not the same datafolder. Check Issue 3032 in AzureDevOps for more details.

Looks good. Please look at my comment though.

Not the same datafolder. Check Issue 3032 in AzureDevOps for more details.

Checked it.
So did anyone investigate what is the cause of the issue? We know when it happens but don't know why. Therefore we can't be sure of retrying is the right fix.

@noescape00 I was able to reproduce it only once when I was running about 12 nodes for a long time, since I put a retry strategy it hasn’t occurred again. It seems to be an intermittent error during a disk write. TableNotOperable exception doesn’t have much documentation around it only this: https://github.com/hhblaze/DBreeze/blob/5b90cdd4c6e11c401e79a494a7b7698e6b727bff/DBreeze.NetCoreApp/Exceptions/TableNotOperableException.cs.

I'd still check DBreeze's source code to see why it was thrown but I guess it's not that bad to retry.

@dangershony As per our conversation removed retrylogic from ProvenBlockHeaderStore for now, but keeping useful RetryStrategy utility.


Improve grant entry forms and grant details page

This has turned into a rather large pull request...
Improves the form entry for grants to give not only the criteria and description, but also the amount of the grant requested and details about the rent.  The PDF forms include more information about this right now but I would like for us to learn more about how that actually is used.
This pull request also combines the property and payee steps into one.  It also includes the income sources code (merged from the existing pending work that had already been started).  Additionally, it improves the grant status page.
Crisis and Grant Request are one page (note the new money entry type):

The budget page money entries are different looking:

Property and Payee are on one page:

Income Sources are now working:

The grant details (show) page is improved:

Reviewed up to 104cee6


docker image name in competition page

@ mention of reviewers
@Didayolo
A brief description of the purpose of the changes contained in this PR.
Now users can see docker-image name for a competition
Screenshots
Admin view

Participant view

Issues this PR resolves
#764 -> Point 1

display docker-image name in competition

Checklist

[x] Code review by me
[x] Hand tested by me
[x] I'm proud of my work
[x] Code review by reviewer
[x] Hand tested by reviewer
[x] CircleCi tests are passing
[x] Ready to merge

Thank you for the PR. I've made some slight changes so the new line (docker image) is more integrated in the UI:


I dont know what to do first

Sorry, cause I am poor about programming.. so i want you to teach me about the process of
doing this well..
As i see.. 1. download the dataset and api
2. running the code using zupiter notebook
3. input image to code
Is it right?
But actually i dont know the process of writting the code .. threre are too many codes you uploded ..
Is there full code that i can use?

Hi there, you need to run one notebook after another. The code can be put into 1 single notebook or script but it’s easier to follow via different notebook. I’d recommend signing up for the relevant program with Udacity so that you can grasp the fundamental concepts.


Add the removal of unrequired certificates

What this PR does / why we need it:
When the SecretName of a TLS entry in an ingress is changed/modified, the previous certificate is deleted.
This fixes issues with work queues being filled with unrequired certificates.
Which issue this PR fixes: fixes #912
Special notes for your reviewer:
The change to sync_test.go will need to be modified for simplicity to follow the changes in pull request #1670 (w.r.t. owner references).
Release note:

Add the removal of certificates when no longer required by the owner ingress

Looks like we may have created a new test flake with the new webhook support 😅 this PR looks good to me.
I'll add the appropriate labels in case you want to get this merged (just comment /hold cancel). If you want to update this according to the comment above, ping me afterwards and I can re-lgtm 😄 (pushing any changes will remove the lgtm label)
/lgtm
/approve
/hold

/retest

/retest

/lgtm

/hold cancel


singing ios example

in xcode the bundle ID needs to be changed ?
In Xcode GUI under General > Signing i have:
Failed to create provisioning profile.
The app ID "io.gomatcha.SampleApp" cannot be registered to your development team. Change your bundle identifier to a unique string to try again.

Ah just a matter of changing the "Bundle Identifier" in the XCode GUI itself.


Instance: USP Course; Diego Astúa

Cloud Computing Instance Flavor
g3.xl - GPU instance (32 CPUs, 125 GB RAM and A100 GPU)
Description
I am attending the USP Course on 3DSlicer.
ORCID
0000-0002-9573-6437
Email
U2FsdGVkX18j7NPXFjdIuPkbX0M/vgfGSgXDaFb6QpxBDsUXmxBL/NgbZDPDV1qz
Confirm Email
U2FsdGVkX18j7NPXFjdIuPkbX0M/vgfGSgXDaFb6QpxBDsUXmxBL/NgbZDPDV1qz
Instance Name
instance-117
The instance name is derived from the GitHub issue number using the template instance-NNN. The instance may also be located in the exosphere interface using this name.
Volume Name
My-Data-117
The volume name is derived from the GitHub issue number using the template My-Data-NNN. The volume may also be located in the exosphere interface using this name.

/create

/unshelve

/shelve

/unshelve

/unshelve


Explicitly install Go 1.4.2 on CircleCI

Any particular reason?

Should we update CONTRIBUTING.md?

@otoolep i wasn't sure if it made a difference, but wanted to check. what do you think? i thought that maybe if we were installing 1.4.0, it might explain some inconsistencies

Also, I think we can pass --binary at the end of the gvm install command to skip compilation and download the packages directly.

@toddboom @otoolep I'm wondering why you were installing 1.4 in the very beginning. Circleci containers already have golang 1.4 installed in their system.
Why don't we ask the circleci guys if they're planning to update to 1.4.2 soon?.

@marcosnils we were trying to do some build isolation by installing our own version of Go

By build isolation you refer to a script which anyone can run and it will work magically?

@marcosnils -- to ensure we fully understand our CI process, we prefer to have complete control.

I don't have any objection upgrading to 1.4.2. I think it'll be very helpful if we also update CONTRIBUTING.md to say we required 1.4.2 or greater.

@otoolep @toddboom I see . The preparing process takes only 7 seconds so I guess it's ok to stick with a fixed version.
:+1: to the PR.

+1 from me. If you merge, I will update CONTRIBUTING.md and package.sh.

@otoolep merged, thanks!


Fix race condition in IdealStateGroupCommit

This fix is inspired by https://github.com/apache/pinot/pull/14214
Handles the failure scenario gracefully.
Test
Adding a test to update IS from many processors to ensure no loss of the events.

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 0.00%. Comparing base (59551e4) to head (b498211).
Report is 1187 commits behind head on master.

:exclamation:  There is a different number of reports uploaded between BASE (59551e4) and HEAD (b498211). Click for more details.
HEAD has 53 uploads less than BASE

Flag
BASE (59551e4)
HEAD (b498211)

integration
7
1

integration2
3
1

temurin
12
1

java-21
7
1

skip-bytebuffers-true
3
0

skip-bytebuffers-false
7
1

unittests
5
0

unittests1
2
0

java-11
5
0

unittests2
3
0

integration1
2
0

custom-integration1
2
0

Additional details and impacted files
@@              Coverage Diff              @@
##             master   #14237       +/-   ##
=============================================
- Coverage     61.75%    0.00%   -61.76%
=============================================
  Files          2436        3     -2433
  Lines        133233        6   -133227
  Branches      20636        0    -20636
=============================================
- Hits          82274        0    -82274
+ Misses        44911        6    -44905
+ Partials       6048        0     -6048

Flag
Coverage Δ

custom-integration1
?

integration
0.00% <ø> (-0.01%)
:arrow_down:

integration1
?

integration2
0.00% <ø> (ø)

java-11
?

java-21
0.00% <ø> (-61.63%)
:arrow_down:

skip-bytebuffers-false
0.00% <ø> (-61.75%)
:arrow_down:

skip-bytebuffers-true
?

temurin
0.00% <ø> (-61.76%)
:arrow_down:

unittests
?

unittests1
?

unittests2
?

Flags with carried forward coverage won't be shown. Click here to find out more.

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.

It would be good to add logging and even metrics)on batch commit, if we don't already have it:

How many IS updates in the batch?
Time for update
Retry count

Yes, metrics are here: https://github.com/apache/pinot/blob/master/pinot-common/src/main/java/org/apache/pinot/common/utils/helix/IdealStateGroupCommit.java#L294

@xiangfu0 : this might be causing UTs to fail like in this PR: #14251 (the PR was forked from 76b219b6d628d0d)
I see similar issue with this PR: #14249.
I am unable to figure out the exact root-cause for the test failure because the unit-test logs are only partially loading.. when they loaded I was seeing a ton of IdealStateCommit related logs.


bumping minimum required zend-registry version

I noticed a php 7.4 (prefer-lowest) build of zf1-date was failing because the version of zf1-registry being used was throwing notices in php 7.4.
To help ease the testing of php 7.4, I'm requiring 1.0.2 for zf1-registry that doesn't throw the notice (offending code has been removed) so even prefer-lowest picks up the fixed version.

Codecov Report

Merging #5 into master will not change coverage.
The diff coverage is n/a.

@@            Coverage Diff            @@
##             master       #5   +/-   ##
=========================================
  Coverage     95.14%   95.14%
  Complexity      845      845
=========================================
  Files             6        6
  Lines          2121     2121
=========================================
  Hits           2018     2018
  Misses          103      103

Continue to review full report at Codecov.

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


Flow 0.54.0 updates

Fixes #8041

[x] PR has tests / docs demo, and is linted.
[x] Commit and PR titles begin with [ComponentName], and are in imperative form: "[Component] Fix leaky abstraction".
[x] Description explains the issue / use-case resolved, and auto-closes the related issue(s) (http://tr.im/vFqem).

:tada:


fix(a11y-checker): fix file-loader for karma a11y checker in React

Related Ticket(s)
No related issue
Description
file-loader was not properly configured for the React a11y checker. This should add this back so that the tests run properly.
Changelog
Changed

Add file-loader to karma-accessibility-checker.conf.js

@ariellalgilmore fyi, not sure if you're running into the same issues with the work you're doing for web components.


react-scripts test does not fail when coverage threshold is not met

Describe the bug
Utilizing create-react-app, when running tests,
Did you try recovering your dependencies?
Yes.
Which terms did you search for in User Guide?
Tests.  Coverage.
Environment
  System:
    OS: macOS 10.14.6
    CPU: (12) x64 Intel(R) Core(TM) i7-8850H CPU @ 2.60GHz
  Binaries:
    Node: 10.15.3 - ~/.nvm/versions/node/v10.15.3/bin/node
    Yarn: Not Found
    npm: 6.4.1 - ~/.nvm/versions/node/v10.15.3/bin/npm
  Browsers:
    Chrome: 77.0.3865.120
    Firefox: 69.0.2
    Safari: 13.0.2
  npmPackages:
    react: ^16.8.6 => 16.9.0
    react-dom: ^16.8.6 => 16.9.0
    react-scripts: 3.0.1 => 3.0.1
  npmGlobalPackages:
    create-react-app: 3.0.1

Steps to reproduce
package.json
  "scripts": {
    "start": "react-scripts start",
    "build": "react-scripts build",
    "test": "react-scripts test",
    "test:coverage": "npm run test -- --coverage --watchAll=false",
  },
  "jest": {
    "collectCoverageFrom": [
      "src/components/**/*.js",
      "src/state/**/*.js",
      "src/templates/**/*.js",
      "src/routes/**/*.js"
    ],
    "coverageThreshold": {
      "global": {
        "branches": 80,
        "functions": 80,
        "lines": 80,
        "statements": 80
      }
    }
  }

Run test:coverage, the console shows a message that test coverage failed, but the test passes.
Expected behavior
If the code coverage thresholds are not met, the console returns a non-zero response.
Actual behavior

Hi @plummer-flex : Is this open for grabs?

@anusha5696 what do you mean? To be worked?

Is there any way to fail the script if coverageThreshold is not matched?

fwiw: this is working with Node.js 18, NPM 8, and react-scripts 5.


Address OWASP API Security Top 10 vulnerabilities

This second draft brings about 100 rules that should address the vulnerabilities described in the 2019 version of the "OWASP API Security Top 10" project.

To make it easier for myself, I took the liberty of deleting the few examples provided by @bosa-cihan in the initial draft.
It stands to reason that these should be incorporated, where appropriate, in future drafts.

10/draft will be merged with the master branch, as agreed upon at the last board meeting.


✨ Remove Entity Component from Entity UI Logic

Checklist

[X] I have not removed the ✨ emoji from the title.
[X] I have searched to ensure that no existing issue covers this feature request.
[X] For maintainers: I have updated the projects and milestones if needed.

Description
This feature aims to enhance the editor by enabling users to efficiently remove components from entities. By implementing a RelayCommand that adheres to the MVVM architecture, users will be able to interact with a UI element to trigger the removal of components from entities.
Justification
Allowing users to remove components directly from the editor interface streamlines the game development process. This feature enhances the user experience by providing a method to modify entity compositions, improving productivity. Some users might not want to have a TransformComponent attached to each Entity that is created.
Implementation Approach
1. Create RemoveComponentCommand: Create a RemoveComponentCommand (RelayCommand) that is responsible for removing a component from an Entity. It will likely need to name of the component as it's CommandParameter. This should be impleemtned in the EntityComponentViewModel.
2. Required Validation: Ensure that any component that has a RequiredAttribute cannot be removed from an Entity. This ensures that components like TagComponent cannot be removed. This will likely be done in a CanRemoveComponent() method.
3. Create a EntityModifiedMessage: Create a EntityModifiedMessage to notify the EntityInspectorViewModel to update it's shown components - or - you could pass in a Func parameter to EntityComponentViewModel that also updates the ObservableCollection in EntityInspectorViewModel to remove the component from the view.
https://github.com/softwareantics/FinalEngine/blob/c3505654de35bf043494721f22f64f5d72e3173c/FinalEngine.Editor.Desktop/Views/Inspectors/EntityInspectorView.xaml#L27
Maybe I could just add a ContextMenu to the DataTemplate here and have the EntityInspectorViewModel handle adding/removing components directly instead of having to use the weak reference messenger?

Actually, it might be important to implement the memento pattern here for the following reasons:

Adding/removing entities might be a feature that will be allowed via multiple different ways. This will allow us to centralize the following logic:

Adding the entity to the scene.
Adding the entity to the EntityWorld
Notifies the rest of the view models that will require it (scene hierarchy, etc)

This is a big awesome bonus so that we don't have to worry about using the weak reference messenger directly.

Lastly, this allows for future support of undo/redo functionality.


get_athlete_starred_segments

In V3 API there are methods for collecting authenticated user starred segments and any user starred segments. That second possiblity is missing in stravalib. Code for client.py:
    def get_athlete_starred_segments(self, athlete_id, limit=None):
        result_fetcher = functools.partial(self.protocol.get,
                                           '/athletes/{id}/segments/starred',
                                           id=athlete_id)

        return BatchedResultsIterator(entity=model.Segment,
                                      bind_client=self,
                                      result_fetcher=result_fetcher,
                                      limit=limit)

The get_starred_segment should be get_starred_segments by the way.
Could you please add this method to next version?

Yeah, that looks pretty straightforward.

Thanks.


Bug in findfunc\extend.cpp

Extend.cpp is built into extend64.dll for x64, and extend86.dll for x86, but the code in extend.cpp references the dll without specifying the DETOURS_BITS in the dll name. The DetourFindFunction fails because of this.
static int WINAPI ExtendEntryPoint()
{
...
TrueTarget = (DWORD (WINAPI *)(DWORD)) DetourFindFunction("target.dll", "Target");
...
TrueHidden = (DWORD (WINAPI *)(DWORD)) DetourFindFunction("target.dll", "Hidden");
...
}
The 2 places should be changed to use the DETOURS_BITS as follows
TrueTarget = (DWORD (WINAPI *)(DWORD)) DetourFindFunction("target" **DETOURS_STRINGIFY(DETOURS_BITS)** ".dll", "Target");

TrueHidden = (DWORD (WINAPI *)(DWORD)) DetourFindFunction("target" **DETOURS_STRINGIFY(DETOURS_BITS)**  ".dll", "Hidden");

Same issue exists in SymTest.cpp too - the DLL name ("target.dll") is specified in a hard coded fashion in there as well.
Additionally, (even thoug a copy of it seems to be supplied in the package), the "dbghelp.dll" could be loaded from system path instead of the local path, and that makes hard-coding size of IMAGEHLP_MODULE64 (at line 286 as of this comment) buggy, since the API then returns ERROR_INVALID_PARAMETER if the struct size doesn't match the in-use binary.


Incorrect path on Mac

The default path on mac is set to /Application/Unity/Hub/Editor/... however, this is wrong.
The path should be /Applications/Unity/Hub/Editor/... note the 's'. /Application is not a folder:
$ ls /Application | grep Unity
ls: /Application: No such file or directory

$ ls /Applications | grep Unity
Unity Hub.app

This appears to be from here https://github.com/DerploidEntertainment/UnityAssemblies/blob/c81c384f51837d27b811d4b80b2dd824552ae575/nupkg/build/Unity3D.props#L6
Unfortunately adding:
<UnityInstallRoot>/Applications/Unity/Hub/Editor</UnityInstallRoot>

Doesn't fix it because then you get:
warning MSB3106: Assembly strong name "warning MSB3106: Assembly strong name "/Applications/Unity/Hub/Editor/2019.4.15f1/Editor/Data/Managed/UnityEngine.dll" is either a path which could not be found or it is a full assembly name which is badly formed.

Where the correct path is actually:
ls /Applications/Unity/Hub/Editor/2019.4.15f1/Unity.app/Contents/Managed/
ExCSS.Unity.dll
Unity.Cecil.dll
....

Anyway, long story short: sadly, this doesn't really work on macs.

@shadowmint Thanks for reporting this. Sorry for the delayed response, I just realized that I hadn't set GitHub to watch all activity in this repo! Anyway, you are correct, the root MacOS paths are wrong. I work on a Windows machine, and I never actually tested the paths out on a Mac when I copied them from Unity's docs. So yeah, I'll take the blame for some egregious false advertising there. 😬 Luckily, somebody else made a fork of this repo and corrected the paths, so I was able to copy those back over into this repo (see the mac-and-2020.2 branch). I plan to have the NuGet package updated within a day or two.

Okay @shadowmint I just published v1.6.0 of the package. If you use a Mac, could you please verify that the default paths are working correctly in that version?

@Rabadash8820 Not the OP, but I can confirm that the path is correct from my build

@hoonsubin Works for me, thanks for checking that!


Enlarge timeout of client register

According to K64F & NUMAKER_IOT_M487 platform through WiFi connection, default time out 30 seconds is not enough, so suggest to adjust as 60 seconds.
Details of test log are attached for your reference.
k64f_smcc_armcc.txt
Uploading m487_smcc_armcc.txt…

@cyliangtw That's a good point! Thanks.


Move responsibilities to DataContainer class

See comments/discussion in #275

Ideally, the superclass would take define some common fields (attributes). However, any field (attribute) defined in the superclass would be first in de init function. label and name have default values in EITData, which would not work with non-default fields like path. Also, path would no longer be the first argument, potentially breaking existing code. To move fields toDataContainer, they would have to be the first arguments, or we would have to switch to keyword-only arguments.

I agree with this, and I think this should be implemented. I also think that the first fields should be identical for each container, and then the specific arguments per container should follow after that. Also, I think that nomenclature should be aligned more. For example, vendor and pixel_impedance in EITData in my mind is the equivalent of category and values (respectively) in the other containers.
Regarding breaking existing code, this is an argument that you have made a few times now (e.g. in issue #262). I don't think we have a large enough user base at this point to make that a prohibitive reason not to change things. We are very much still in the developmental phase of this project, and it's more important to "get things right", even if that means breaking changes, than ensuring backwards compatibility.
I think these kinds of changes can be implemented in a separate PR though, so that this one can stay light, as you suggest.
NOTE: comment copied from here

Also, consider moving the methods from the current mixin-classes directly to DataContainer rather than inheriting them one by one.

Also, consider moving the methods from the current mixin-classes directly to DataContainer rather than inheriting them one by one.

This would bunch a whole load of unrelated methods together, making it very difficult to understand the separate functionalities and responsibilities. I would vote against that, unless we can reduce the total codebase to a few hundred lines.


[helm-chart] Scrape metrics from taraxa-indexer

Purpose

We need to scrape prometheus metrics from taraxa-indexer
How does the solution address the problem

Added metrics port.
Changes made

Added metrics port.

prnet cleaned-up successfully


HW: pixart_js

comfort: 4
completeness: 5
After the tiny for loop bug that took me forever to find, it was fairly simple.

:+1:


why the minimal did not contains xelatex

did not found the xelatex in the minimal version of image.

I am afraid the minimal scheme just does not contain XeTeX. Official docs say XeTeX should be present since small. Do you have any reason to think that XeTeX should be present in minimal?