Breakpoints not working unless debugger statement is present in source file

I'm using the latest commit (fb5c884fccfa204e4d1a12fd12132f716a3ee2f0 ) and I'm noticing that I can't hit breakpoints on a file unless I write an explicit "debugger;" statement in the file and then I can hit alternate breakpoints within that file.  Is this a known issue ?

No, it's not a known issue. Does it occur in every file? Even a basic hello world app?

Not sure, I'll try it out now...

Awesome thanks - if we can get a repro, we can try and track it down. Also worth turning on the Live Diagnostics pane, which helps us diagnose issues in the even that they aren't easy to reproduce. See this comment for more details:
https://github.com/Microsoft/nodejstools/issues/246#issuecomment-127715686

Breakpoints work fine on a basic hello world app so didn't get a repro there.  Here are the diagnostic logs from when I do get the breakpoint set error & then when I get a successful breakpoint set (appears to raising this AD7BreakpointErrorEvent on failure)...
[21:50:53.9853486] DebuggerConnection: Request: {"command":"setbreakpoint","seq":13,"type":"request","arguments":{"line":71,"column":0,"type":"script","target":"C:\vp\git\LocalListings\routes\authentication.js"}}
[21:50:54.0233486] DebuggerConnection: Response: {"seq":855,"request_seq":13,"type":"response","command":"setbreakpoint","success":true,"body":{"type":"scriptName","breakpoint":8,"script_name":"C:\vp\git\LocalListings\routes\authentication.js","line":71,"column":0,"actual_locations":[]},"refs":[],"running":true}
[21:50:54.0253486] AD7Engine Event: Microsoft.NodejsTools.Debugger.DebugEngine.AD7BreakpointErrorEvent (abb0ca42-f82b-4622-84e4-6903ae90f210)
[21:51:18.4133486] AD7Engine Called CreatePendingBreakpoint
[21:51:18.4133486] NodeDebugger Called Set Breakpoint
[21:51:18.4133486] DebuggerConnection: Request: {"command":"setbreakpoint","seq":14,"type":"request","arguments":{"line":7,"column":1,"type":"script","target":"d:\vp\git\LocalListings\routes\crossSellOffer.js"}}
[21:51:18.4913486] DebuggerConnection: Response: {"seq":856,"request_seq":14,"type":"response","command":"setbreakpoint","success":true,"body":{"type":"scriptName","breakpoint":9,"script_name":"d:\vp\git\LocalListings\routes\crossSellOffer.js","line":7,"column":1,"actual_locations":[{"line":7,"column":1,"script_id":700}]},"refs":[],"running":true}
[21:51:18.4983486] AD7Engine Event: Microsoft.NodejsTools.Debugger.DebugEngine.AD7BreakpointBoundEvent (1dddb704-cf99-4b8a-b746-dabb01dd13a0)

Can you describe the code that reproduces the issue? Or better yet, any chance you could share a small sample project?

I had a problem like this a long time ago when debugging with chrome and node-inspector.  I always figured it was a Chrome bug.

Closing since we need more info to take action. @enicolasWebs Please reopen if the original problem is still occurring for you.
Anyone experiencing a similar problem should open a new bug.
Thanks


FLEX-3420 ~ Adds light measurement device type.

SonarQube analysis reported 1 issue

 1 minor

Watch the comments in this conversation to review them.

All is well.

All is well.


Text-based query language (e.g. Entity SQL)

It shows 1.0 in EF6 column, is it correct?

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

ID: 5fc2d1a4-a434-69f9-3df3-9818c571c978
Version Independent ID: a272636c-100d-fb7b-d7a9-713adc0b2b8e
Content: EF Core & EF6 Feature by Feature Comparison
Content Source: entity-framework/efcore-and-ef6/features.md
Product: entity-framework
GitHub Login: @rowanmiller
Microsoft Alias: divega

Fixed in https://github.com/aspnet/EntityFramework.Docs/commit/153ba9f76399dcbe021d667e32bc404bac181bff. Thanks!


Generic  /  Component?

From @griffink-stripe:

Some critical actions we want to ensure are not mistakenly taken. Is there a confirmation dialog pattern or Generic  /  Component that you recommend for an action such as "Clear Credentials?" --> "Are you sure you want to clear your credentials?" --> "Yes" || "No"

Opening this to keep track of component request

We would love this too!


performances issues

the classify script does take 1 sec. on avg. to classify one picture.
any ideas to tuning performance? moving model + caffe into ram drive?

Switch to using the model via OpenCV's DNN module, it's pretty quick. On my desktop I can classify at about 34 FPS.


S3 Bucket Policy Support

Description of your changes
Fixes #280
This is a semi-complete PR that aims to add support for Bucket Policies which can be provided within the CRD for an S3 Bucket.
Checklist
I have:

[ ✅ ] Run make reviewable to ensure this PR is ready for review.
[ ✅ ] Ensured this PR contains a neat, self documenting set of commits.
[ ✅ ] Updated any relevant documentation, examples, or release notes.
[ ✅ ] Updated the dependencies in app.yaml to include any new role permissions.

@hasheddan I think this PR should be ready for review now

Hey @muvaf! Thanks for the review, these changes look good, I'll make them ASAP. This is the documentation I used.

For example, I have a policy in AWS console and I edit a few small things in my local and copy it to spec of my managed resource. If we keep it as raw string then there is no reason that this wouldn't work but there could be some weird exceptions related to format that we didn't take into account

I can introduce another string field under the spec, should this take priority over the generated body if both are provided, or should this cause an error?

This is the documentation I used.

@krishchow Great, could you refer to this doc in the code as well? If it's a match, copy-paste YAML should just work. I don't think we need an additional raw input field since it seems they pinned down the format to a specific version and we can rely on that.

@krishchow it appears some of the fields in the documentation you linked are not reflected here such as Not variations and Condition. Are those intentionally excluded?


Unable to update environment variables during Bicep template deployment

Please provide us with the following information:

This issue is a: (mark with an x)

[X ] bug report -> please search issues before submitting
[ ] documentation issue or request
[ ] regression (a behavior that used to work and stopped in a new release)

Issue description
When updating environment variables within my Bicep template for a container app, the added environment variables are not updated within the container's environment variables list in the portal. For example:
My environment variables defined in my bicep template:
env: [
            {
              name: 'ASPNETCORE_ENVIRONMENT'
              value: 'Development'
            }
            {
              name: 'APPINSIGHTS_INSTRUMENTATIONKEY'
              value: appInsights.properties.InstrumentationKey
            }
            {
              name: 'APPLICATIONINSIGHTS_CONNECTION_STRING'
              value: appInsights.properties.ConnectionString
            }
            {
              name: 'servicebusconnectionstring'
              secretRef: 'servicebusconnectionstring'
            }
            {
              name: 'cosmosdbconnectionstring'
              secretRef: 'cosmosdbconnectionstring'
            }
          ]

My listed environment variables in the portal:

Doing a quick scan of existing issues, I'm unsure whether this is a portal bug issue similar to #241 or whether the API fails to update the Container App.
Steps to reproduce

Use the following Bicep template as a starter template.
Deploy the bicep template to your subscription using the following AZ CLI command:

az deployment group create --resource-group <name-of-your-rg> --template-file main.bicep

Navigate to portal to verify the template has been successfully deployed.
Add the following environment variables to the orderweb Container App resource in the Bicep template:

{
              name: 'servicebusconnectionstring'
              secretRef: 'servicebusconnectionstring'
            }
            {
              name: 'cosmosdbconnectionstring'
              secretRef: 'cosmosdbconnectionstring'
            }
}

Deploy the Bicep template again using the same CLI command.
Navigate to the Container App in the portal and observe that the environment variables have not been updated.

Expected behavior [What you expected to happen.]
Expected additional environment variables defined in the Bicep template to be listed within the container's environment variable list in the portal.
Actual behavior [What actually happened.]
New environment variables were not listed in portal.
Additional context
I was attempting to deploy my updated Bicep template locally using the AZ CLI.

@willvelida  When you update a container app and change something in the template section, a new revision is generated. Can you check that a second revision was created and what its environment variables look like (az containerapp revision list ...)? Do the variables appear there but not when viewing the revision in the container app?

@anthonychu I checked the second revision and the added environment variable was there. Was a little confused by the portal not defaulting to the latest revision in the drop down under containers. Thanks for the help, I'll close the issue now.


Remove old code, update docs, add explicit algs

Purpose

This PR removes the old ark.jl and ssprk.jl files.
Content

Remove ark.jl and ssprk.jl
Extend the new interface to allow an ExplicitTableau and an ExplicitAlgorithm (both of which just call IMEXTableau and IMEXAlgorithm under the hood)
Port old tableaus to new interface (certain SSPRK tableaus could not be ported because the new interface only allows a single vector of coefficients β, whereas the old implementation allowed two vectors of coefficients)
Add a docstring for every tableau in the new interface, and update the bibliography with new entries

[x] I have read and checked the items on the review checklist.

bors r+


Plate failed preflight check at JLCPCB

I uploaded https://github.com/peej/for-science-keyboard/blob/master/gerber/for-science-plate.zip to JLPCB with PCB thickness 1.6mm.
I received a message from JLCPCB:
"Please kindly note that the connection tabs between the slots and the board edge is too small in you file which will make the board broken easily. In order to ensure the board quality, we advise you to enlarge the connection tabs to 3mm at least."

I ordered mine from AllPCB and didn't have a problem ordering with these gerbers or with the resulting plates. I guess JLCPCB have a different set of checks.
I think you'll be fine but you can always adjust the plate file to make it bigger if you feel the need.

Thanks for the reply!
I'll try tweaking the plate. Just wanted to flag it up.


Add README.md files for (Variables, Var, Let, Const, Datatypes and Operators)

Hey Admin! I want to contribute README.md files for the 6 javascript files mentioned in the title of this issue. This documentation would help user to understand your Repository better and ensures better readability of the files. Kindly, assign the issue to me.

@arkalsekar kindly give labels the issues as "hacktoberfest"

@utkarsh006 Kindly labels the issues as "hacktoberfest"


Allow specifying a namespace for scaffolding

Currently, the dotnet ef dbcontext scaffold command does not support a parameter to specify the namespace of the generated entities.
I have a project whose only purpose is to scaffold databases using parameters passed from the command line, and it'd be better if the generated entities did not have the project's namespace.
Ideally, I'd expect something like this:
$"ef dbcontext scaffold \"{connectionString}\" Microsoft.EntityFrameworkCore.SqlServer -d -c {contextName} -o \"{outputPath}\" -f -n {generationNamespace}"

Further technical details
EF Core version: 2.0.0
Database Provider: Microsoft.EntityFrameworkCore.SqlServer
Operating system: Windows 10
IDE: Visual Studio 2017 15.3

Duplicate of #9723


Test new kube-auth-api image

From rancher 2.4 kube-auth-api is updated to v0.1.4. This update only contains contains base image update and should not have real impact.
Verify image changes:
rancher/kube-api-auth: v0.1.3 -> v0.1.4
Related docs: https://rancher.com/docs/rancher/v2.x/en/overview/architecture/#4-authorized-cluster-endpoint

rancher/rancher:master-head 981263b5
Fresh install:

Deployed cluster
kube-api-auth image is rancher/kube-api-auth:v0.1.4
Cluster is functioning

Upgrade testing still needs to be performed.

rancher/rancher:master-head 17a40f50
Fresh install of 2.2.8 in HA

Deployed cluster
kube-api-auth image is rancher/kube-api-auth:v0.1.3
Cluster is functioning
Upgrade to master-head
kube-api-auth image is rancher/kube-api-auth:v0.1.4
Cluster is functioning


Upgrade request to 2.74 to address deprecation

tough-cookie <=2.2.2 was flagged for a security vulnerability, and the smallest upgrade to request to get the fixed tough-cookie version is<EMAIL_ADDRESS>This patch upgrades to that version.

Hi @chadxz, the link you provided 404s. Could provide an updated source? Is this the commit that fixes the vulnerability? Does this vulnerability apply to command line utilities (like this test reporter) or just to running node servers?
Thanks!

Hey Devon,
It's strange that you get a 404 on that link. When I click it, it works for me. Anyway, here's the gist:

Based on the description of the vulnerability, I believe the commit that fixes this is https://github.com/salesforce/tough-cookie/commit/e4fc2e0f9ee1b7a818d68f0ac7ea696f377b1534
I did not attempt to determine if the use of request in this library would expose users to this vulnerability. I just saw the deprecation warning in my own project and thought i'd throw up a PR to address it.

Gotcha. Sounds good to me. Looks like this PR needs a quick rebase and then it should be ready to merge.

good to go now

@chadxz Thanks!


Hazardous weather warning

Acceptance criteria

[x] Warning is shown on frontend.
[x] More visible warning on the top of map
[x] Story meets the criteria in Definition of Done

Task done.


[IMP] refactoring of code, support for IOS 11.2

[ ] Update README about this additional feature [IMP] show the guest number popup afte set empty table


Allow prefix matching for test class names

In addition to specifying specific test classes with only argument, this change allows you to specify a class prefix, which is useful if you want to run a number of test classes that are logically connected, which share the same prefix.
For example if you have test cases
WesterosNorthTestClass
WesterosEastTestClass
WesterosSouthTestClass

instead of specifying the 3 classes explicitly, you can just do -only SomeTarget:Westeros*

Looks awesome! Do you also want to add support of TARGET[:Class/casePrefix1*[,Class2/case2Prefix2*]]?

(Or may just support regular expressions? =) Not sure though how hard it would be)

Good idea to add support for test case prefixes - https://github.com/jmkk/xctool/commit/fbb4d4598f69b54a4ecbd3567375fa2d5fbb76b2
I think regular expressions is an overkill here ;-)

Looks good! Do you mind fixing several things:

NSString* -> NSString *
option description is wrong because you still support next: TARGET[:Class/case1_prefix*[,Class2/case2_prefix*]]. Same for classes.

Hard to specify all the different variations of arguments for option descriptions. How about this:

SPEC is TARGET[:Class/case[,Class2/case2]], or TARGET[:Class/case1_prefix*[,Class2Prefix*]]; You can mix prefix with non-prefix classes and cases

Hm, may be something like SPEC is TARGET[:Class/case[,Class2/case2]]; use * when specifying class or case prefix?

There. Also updated README with one example.

Awesome!

Thanks for hacking on xctool!


[BC Breaking] Make sure the pipeline input shape is in WH order

Thanks for your contribution and we appreciate it a lot. The following instructions would make your pull request more healthy and more easily get feedback. If you do not understand some items, don't worry, just make the pull request and seek help from maintainers.
Motivation
Please describe the motivation of this PR and the goal you want to achieve through this PR.
Modification
Please briefly describe what modification is made in this PR.
BC-breaking (Optional)
Does the modification introduce changes that break the backward-compatibility of the downstream repos?
If so, please describe how it breaks the compatibility and how the downstream projects should modify their code to keep compatibility with this PR.
Use cases (Optional)
If this PR introduces a new feature, it is better to list some use cases here, and update the documentation.
Checklist

Pre-commit or other linting tools are used to fix the potential lint issues.
The modification is covered by complete unit tests. If not, please add more unit test to ensure the correctness.
If the modification has potential influence on downstream projects, this PR should be tested with downstream projects, like MMDet or MMCls.
The documentation has been modified accordingly, like docstring or example tutorials.

Please also update some doc in the repo.

Please also update some doc in the repo to indicate our conventions.

I can't find any documentation for this information.

Should add some docs to tell users that the input setting is default as W, H, while the output should be H, W


Migrate to Swift 2.0

Xcode 7 GM has released. It's time to migrate.

The changes look good, but I'm hesitant to merge this until Xcode 7 is out of beta.

Understand. You can keep this PR open :+1:

Thanks @devxoul :+1:

:smile:

@jathu, how about making a new release?

@devxoul done https://github.com/jathu/UIImageColors/releases/tag/1.0.1 :+1:

Cool :smile:


_bcg URL fields?

Is there documentation on what fields the bcg will work with? I was getting errors with the URl fields, and date fields, can it only read text fields? Number fields?
How does the the afsg demo work with showing past QR codes? is the URL converted to a text field?

FYI Norm just fixed this!
There was a bug in the code that froze when it detected a field that was empty. Working Beta now!


Unable to build project

Hi - I've got an old project where I just added an NPM module (bing-search-api).
I also updated meteorkitchen to the newest version and then ran the command:
meteor-kitchen http://localhost:4000/api/getapp/json/stiLxmGxrRtPp6MuR gugalerts
This is on Windows 10 and everything used to work very well.
Now I get this error:
*** Meteor Kitchen v0.9.71 ***
Source code generator for Meteor.js - www.meteorkitchen.com
Copyright (c) Petar Korponai─ç
<EMAIL_ADDRESS>Downloading input file...
Reading input file...
WARNING: Object "privacy_policy" is using deprecated property "zoneless". Now you can have "free_zone" and put "zoneless" pages there. Property "zoneless" will be removed in near future.
WARNING: Object "terms_of_use" is using deprecated property "zoneless". Now you can have "free_zone" and put "zoneless" pages there. Property "zoneless" will be removed in near future.
Creating directory structure...
Checking installed packages...
Checking installed packages...
Executing "meteor add meteorhacks:npm  fortawesome:fontawesome momentjs:moment"...
npm-container: updating npm dependencies -- braintree...
meteorhacks:npm without a version constraint has already been added.
fortawesome:fontawesome: Font Awesome (official): 500+ scalable vector icons, customizable via CSS, Retina friendly
momentjs:moment: Moment.js (official): parse, validate, manipulate, and display dates - official Meteor packaging
Executing "npm init -f"...
INFO: Could not find files for the given pattern(s).
Error executing "npm". The system cannot find the path specified.

It should not be necessary to have npm installed, right? It wasn't in the past...

I went ahead and installed npm on my Windows PC and that did the trick, so forget about this issue


[BUG] Table page throwing an application error

When I'm trying to visit the collections/table section, I get an application error. Here is a screenshot of the error:

Thanks. Will fix it now.


Sentinl Watchers: Error 500 Internal Server Error with SPY plugin

Sentinl and Kibana version: 5.4.1
Issue Description:
Sentinl gives "Sentinl Watchers: Error 500 Internal Server Error: An internal server error occurred" whenever highlighted is there in input query & this comes with each watcher created using SPY plugin from dashboard:
{
"search": {
"request": {
"index": [
"<index{now/d}>",
"<index{now/d-1d}>"
],
"body": {
"query": {
Same error, when try similar pattern in condition. This works fine in Dev Tools. example below:
"@timestamp" : {
"gte" : "now-1d/d",
"lt" :  "now/d"

Thanks for your reports @varun0002  - they are deeply welcome and appreciated but for the sake of succeeding, I strongly suggest not to mix multiple issues and reports, or confusion will take over.
Could you please raise each issue separately with a clear title, so developers and contributors can work on it - Many Thanks!

Done


Terraform provider with SSO enabled

Hi there,
Is it possible to use this terraform provider having Google SSO? I can't provide user/password when SSO is enabled.
Could anyone help me, please?
Thanks!

Hi @ggmoy
Unfortunetly currently we are not supporting the SSO for terraform provider.
You can create the service account that will be used for provider actions only and other users will continue to use the SSO.
IF you need more details pls take it with Aqua Support


Consumer error

Describe the bug
I got the add-on up and running with 3 consumers in docker containers in my Synology NAS based on the default env file but I don't see them doing anything. When looking at the logs, I see Trackers being updated and that they have successfully connected to mongodb, but then I get the error: "Failed to connect and setup channel".
I see usage from the mongodb container  but not much from the consumers. Perhaps I just dont understand how they work or when they are supposed to work.
To Reproduce
Steps to reproduce the behavior: N/A
Expected behavior
A clear and concise description of what you expected to happen.
Logs
Provide logs for all containers when this issue occurs.
If the logs are short, make sure to triple backtick them, or use https://pastebin.com/
'''
{"level":30,"time":1709932559776,"pid":1,"hostname":"0c0030000002","msg":"Trackers updated at<PHONE_NUMBER>775: 98 trackers"}
{"level":30,"time":1709932560017,"pid":1,"hostname":"0c0030000002","msg":"Successfully connected to mongo db"}
{"level":50,"time":1709932560021,"pid":1,"hostname":"0c0030000002","msg":"Failed to connect and setup channel"}
'''
'''
{"level":30,"time":1709932552937,"pid":1,"hostname":"003f40000006","msg":"Trackers updated at<PHONE_NUMBER>937: 98 trackers"}
{"level":50,"time":1709932553145,"pid":1,"hostname":"003f40000006","msg":"Failed syncing database"}
{"level":30,"time":1709932562184,"pid":1,"hostname":"003f40000006","msg":"Trackers updated at<PHONE_NUMBER>184: 98 trackers"}
{"level":30,"time":1709932562289,"pid":1,"hostname":"003f40000006","msg":"Successfully connected to mongo db"}
{"level":50,"time":1709932562294,"pid":1,"hostname":"003f40000006","msg":"Failed to connect and setup channel"}
'''
Hardware:

OS and distro: Synology NAS DSM 7.2.1
Server: Baremetal

Additional context
Add any other context about the problem here.

Restart your consumers and then they will start going to work 😉


Version gate clients and servers separately

We should split up the version gate for servers and clients.
In particular in our current setup, updating a client is much easier than a server (assuming mod-manager). At the same time most vulnerabilities we had to patch and version gate for were on client. As such, we should selectively version gate so that we don't force servers to update where they don't have to.
Another use-case is changes that break backwards compatibility. For example, https://github.com/R2Northstar/NorthstarLauncher/pull/408 will break compatibility with old clients when joining newer servers but newer clients can still play on old servers. As such, it would make sense to version gate only client here.

If nobody else wants to try implementing this, I'll do it sometime in the next few days.


Not uncommenting block

Dag sê. Haven't tested extensively, but in my case it's not uncommenting a Javascript block in the  section of an HTML file.

Quote. The plugin does not toggle the comment from a Javascript block in any section.


added Fibonacci search for python

You no even waste time, you don drop PR and with 2 minutes you have merged  😂😂

Lol, I'm sorry boss
But is it because I  am contributor that I am able to merge?

No I do not have a problem with that.
You can keep creating PR at atleast one PR for one issue or update.
I will simply review it and then merge.
I just learnt how to restrict merging requests to avoid having conflicts.

Alright


Investigate polyglot language support for DataLoader API

Should check the vertx-codegen to see if the DataLoader API could be exposed such that polyglot code generation is possible.

Closing. No polyglot support planned.


IPv6 global resolver?

I enabled the global resolver option and set my second PC's IPv6 DNS address to the public IPv6 address of the PC running Simple DNSCrypt. I can ping the IPv6 address from second PC. With nslookup, IPv4 address (<IP_ADDRESS>) works, but IPv6 "timed out".
I tried adding [::]:53 to "Listen Addresses", but DNSCrypt then stopped responding to any query, both local and LAN. Removing <IP_ADDRESS>:53 leaving only [::]:53 makes it work again, but still only IPv4.
I have added dnscrypt-proxy.exe to allowed app in Windows Firewall, I also tried turning off Firewall, still same result as before.

Resource monitor shows that port is opened and not restricted on IPv6. Test-NetConnection -port 53 -computername my:ipv6:address on second PC says TcpTestSucceeded.
I found that it seems I can only get a response if I use the "temporary IPv6 address", not the public or manually assigned ip (for convenience), despite they all responded in tcp port test.

Worked around it by deselecting Ethernet card (manually reconfigure the DNS to be localhost later) and global resolver, then adding ip addresses of my choice to Listen Addresses.


Delete manifests/j/JanDeDobbeleer/OhMyPosh/7.52.1 directory

[ ] Have you signed the Contributor License Agreement?
[ ] Have you checked that there aren't other open pull requests for the same manifest update/change?
[ ] Have you validated your manifest locally with winget validate --manifest <path>?
[ ] Have you tested your manifest locally with winget install --manifest <path>?
[ ] Does your manifest conform to the 1.2 schema?

Note: <path> is the name of the directory containing the manifest you're submitting.

Microsoft Reviewers: Open in CodeFlow

@wingetbot run

@wingetbot run


Build back-end for speed

Build back-end for speed
Current behavior
The major issue with our MBTAccess application is slow speed. We began discussion of this in issue #33 . On mobile devices, the application can take >45 seconds to drop pins around the user's location. We think there are two major factors affecting the speed:

The geolocation feature
Calculation steps with the MBTA stop data

Geolocation

Our app reads the user's location with the Google Maps JavaScript API Geolocation feature. The navigator.geolocation code may be slow, though we haven't directly performance tested it.
We're not sure how to speed this up. The dynamic nature of the location is challenging.

Data

After obtaining the user's location, our app iterates through the list of >8000 MBTA stops to find stops near the user.
Caching:

We have already built in some local caching features with the Service Worker and localForage.
We considered caching the MBTA data on a CDN.
Caching could improve speed, but probably only by milliseconds.

Instead of caching, we decided to focus on building a back-end database API.

Suggested behavior

Database:

Instead of fetching data directly from the MBTA API and performing client-side calculations with JavaScript, we will store the MBTA data in a custom back-end database API.
@AbdouSeck has offered to build out a back-end for the application. He will create a new Git branch.

Calculation:

@AbdouSeck will write Python code to search through the database of MBTA stop data. This should be faster than client-side JavaScript.
We can also consider writing functions from within SQL.
If we do need to keep the calculations in JavaScript, we may want to use Google's Distance API on the MBTA data.

Next steps
After building the back-end, we can move on to templating, containerization and deployment of the app.

This issue was addressed by PR #48


CMake Error

what will it be?

It seems like your directory for cmakeLists.txt doesn.t match the dedicated one.
On the error message you might need to move your CmakLists.txt in
/home/pi/ros_catkin_ws/src/spotMicro/spot_micro_motion_command
to
/home/pi/ros_catkin_ws/src/spotMicro/
or the other way around


Exception in thread "main" java.lang.NoClassDefFoundError: org/slf4j/LoggerFactory

Does anyone know how to fix this? This is my code:
Email email = EmailBuilder.startingBlank()
	.from("Rahul", "xxxxx")
	.to("Rahul", "xxxxx")
	.withSubject("Sending emails through java")
	.withPlainText("This is an email send from java")
	.buildEmail();

MailerBuilder
	.withSMTPServer("smtp.host.com", 25, "username", "password")
	.buildMailer()
	.sendMail(email);

This is my code
Email email = EmailBuilder.startingBlank()
.from("Rahul Verma"<EMAIL_ADDRESS>.to("Rahul"<EMAIL_ADDRESS>.withSubject("Sending emails through java")
.withPlainText("This is an email send from java")
.buildEmail();
		MailerBuilder
		  .withSMTPServer("smtp.host.com", 25, "username", "password")
		  .buildMailer()
		  .sendMail(email);

Simple Java Mail has one single mandatory dependency which is the API library for library-agnostic logging. So at the very very least, you need to have slf4j-api on the classpath. Then to actually get output, you would also want to add an implementation library, suchs as Log4j, Logback, SLF4J's own Simple impl, or JUL.
<dependency>
      <groupId>org.slf4j</groupId>
      <artifactId>slf4j-api</artifactId>
      <version>1.7.21</version>
</dependency>

You can find config examples on the Simple Java Mail website.


Use portable-scala-reflect instead of the deprecated TestUtils.

TestUtils is deprecated in Scala.js 0.6.25. It has been replaced by the more general portable-scala-reflect library. This commit migrates to using the latter.
Since portable-scala-reflect does not support Scala Native yet, we need a bit more stuff in PlatformShims. These won't be necessary when Scala Native implements https://github.com/scala-native/scala-native/issues/1279 and portable-scala-reflect starts supporting Scala Native.
The change in depth of stack traces that are ignored is due to the fact that TestUtils.loadModule was a macro that forced inlining of its implementation, whereas PlatformShims.loadModule does not do that.

@sjrd I have given you commit access to this repo, so feel free to merge this and other PRs yourself once things are green and you're happy with it

Rebased after #178 was merged. Should be good now.

Thanks


add --no-clobber/-nc option

mimicing wget, adds a no-clobber option, so that files that already exist (and have non-zero size) won't be re-downloaded
On command line
$ waybackpack  http://www.whitehouse.gov/ --no-clobber -d ~/Downloads/dol-wayback --to-date 199803 --from-date 199801

INFO:waybackpack.pack: Fetching http://www.whitehouse.gov/ @<PHONE_NUMBER>4716
INFO:waybackpack.pack: Writing to /Users/merrillj/Downloads/dol-wayback/19980215014716/www.whitehouse.gov/index.html

$ waybackpack git:(master) waybackpack  http://www.whitehouse.gov/ --no-clobber -d ~/Downloads/dol-wayback --to-date 199803 --from-date 199801

Or in Python, download_to(..., no_clobber=True)
Tested in tests/test-download.py.
As a note, Jeremy, the dol.gov URL used in the existing test there is all redirects with zero content (which confused the heck out of me) and may be worth changing to be a URL that returns content from WayBack.

Thank you for this! Great suggestion/addition. And thanks for adding the test. Merging, though will be removing the -nc short flag, since it's slightly inconsistent with the other CLI params.


Can't build uglifyjs anymore

Building Uglifyjs doesn't work anymore after whiching to upstream nodejs-packaging. It produces error:
[   48s] + node2rpm-server --prep
[   49s] /usr/lib64/ruby/gems/2.1.0/gems/rpmspec-1.0.0/lib/rpmspec/changelog.rb:24:in `entries_suse': undefined method `map!' for nil:NilClass (NoMethodError)
[   49s] 	from /usr/lib64/ruby/gems/2.1.0/gems/rpmspec-1.0.0/lib/rpmspec/changelog.rb:13:in `entries'
[   49s] 	from /usr/lib64/ruby/gems/2.1.0/gems/rpmspec-1.0.0/lib/rpmspec/parser.rb:29:in `parse'
[   49s] 	from /usr/lib64/ruby/gems/2.1.0/gems/node2rpm-1.0.0/lib/node2rpm/system.rb:32:in `buildroot'
[   49s] 	from /usr/lib64/ruby/gems/2.1.0/gems/node2rpm-1.0.0/lib/node2rpm/system.rb:27:in `buildroot'
[   49s] 	from /usr/lib64/ruby/gems/2.1.0/gems/node2rpm-1.0.0/lib/node2rpm/server.rb:10:in `initialize'
[   49s] 	from /usr/lib64/ruby/gems/2.1.0/gems/node2rpm-1.0.0/bin/node2rpm-server:7:in `new'
[   49s] 	from /usr/lib64/ruby/gems/2.1.0/gems/node2rpm-1.0.0/bin/node2rpm-server:7:in `<top (required)>'
[   49s] 	from /usr/bin/node2rpm-server:23:in `load'
[   49s] 	from /usr/bin/node2rpm-server:23:in `<main>'
[   49s] error: Bad exit status from /var/tmp/rpm-tmp.uUCDaw (%prep)

Package can be found here: https://build.opensuse.org/package/show/home:illuusio:nodejs-bundle/uglifyjs

please remove :uglifyjs under %changelog and write changlog in.changes file

Ok you should have .changes and have something in it (if not it won't build).. It could be nice to check if changes size is 0 so it won't crash but closing.


chore: remove unnecessary return

Q
A

Bug fix?
no

Breaking change?
no

New feature?
no

Deprecations?
no

Spec compliancy?
no

Tests added/pass?
no

Fixed tickets
no

License
MIT

I'll go ahead and merge this. Tests are green.
Thanks @gebilaoxiong!


KiteTicker Java Reconnection Issue

Hi,
I have written following code for re-connection -
tickerProvider.setTryReconnection(true);
tickerProvider.setMaximumRetries(50);
tickerProvider.setMaximumRetryInterval(30);
But it is not working. Initially when we call KiteTicker connect() method we receive ticks properly. But once Internet Disconnected and then again Connected then reconnection not working. I recently updated to Kite API v3 and it is not working in v3 but in older version of API it was working properly.
I request you to please check this and help me as soon as possible.
Thanks

Hi,
We have made changes to kite3 branch to fix this. You can use the latest jar file from dist directory of the repository. Let us know if you still face the same problem.


Error at UpdateClients()

I have an edited version of MO-E but I get this error when kick a player:

cannot read property 'playerTracker' of undefined

    LINE: if (this.clients[i].playerTracker.isRemoved)

put the whole error, that includes the line number and file.


Run Historical Report #2 (3/1/21 - 3/31/21) for School Zone Speeding Detection Use Case

As part of the CVE Performance Measurement Plan, the team will need to run a final historical report that focuses on the school zone speeding detection
Report timeframe: March 1 - 31, 2021
Start running reports: April 1, 2021
Deliver reports to CVE team: April 8, 2021
ACs:

[ ] Pair with Chris to run query he has put together
[ ] Provide to CVE team for use in PfMP

Blocked due to timing - start April 1


Add new panel for UTM Parameters

Hi all,
Is there a way to configure goaccess to parse UTM (advertising campaign) ?
For example by using a prefix or query parameter name to be parsed instead of default "query=" ?
You can find below an nginx log generated by a visitor from Bing.com paid keyword, at referer position :

https://myserver.com/?utm_source=bing&utm_medium=cpc&utm_campaign=C3%20-%20clic&utm_term=MY%20KEYWORD&utm_content=g2

Google UTM should be very near, have no example to provide.
Thanks,
Fred

There's no way right now to track this data. However, I think it would be great if goaccess could have a panel (or multiple perhaps?) to display utm data. If implemented, how should these metrics be shown? Thanks.

From my point :

easy like a query keyword (starting/ending with $ for disambiguation)
be shown in a new UTM panel which requires more work

In such case maybe a panel like 'Visitor Hostnames and IPs' with an expendable data 'utm_campaign' could show distinct 'utm_term'.

I'm curious if Google/Twitter, etc use the same parameters. It looks like it should be straightforward to add a new panel dedicated to display to utm_* data, please keep this opened so I can look into it.

I remember seeing utm data quite often back in the days I used to spend more time on Analytics, and from what I see it continues to be common ground.
Adwords seems to have an auto tagging feature to add utm parameters automatically.
https://support.google.com/analytics/answer/1033867?hl=en
Its likewise fairly easy to track these parameters on Analytics
https://blog.kissmetrics.com/how-to-use-utm-parameters/

@allinurl do you have nay update on this? I'm trying to move out of Analytics and this would help me solve a big part of my current requirements.
Anyways, thanks for this tool, I've been using it already for a while 😄

Upvote for this UTM feature👍🏽

new panel dedicated to display to utm_* data

I'm still looking forward to see this =]

installed this program hoping to parse utm and ended up here... agreeing with the feature request!

Adding another up vote for seeing UTM.
As a work around, you can parse out your logs before processing in goaccess.  For instance, here is how to look for the utm_campaign=XYZ URLs:
zcat -f website_log-Oct-2024.gz | grep "utm_campaign=XYZ" | goaccess -a -o report-xyz.html --log-format=COMBINED


Proposal: richer image support for MenuFlyoutItem icons

Proposal: Richer image support for MenuFlyoutItem icons
Summary
Add the ability to use any XAML ImageSource as an icon for MenuFlyoutItem. The BitmapIcon control currently only supports URI image sources; we need it to support stream image sources in order to render things like app icons.
Rationale

Enable the shell to render app icons and favicons in context menus. These are backed by Windows.Graphics.Imaging.SoftwareBitmap objects rather than URI's and work fine with the Image control and ImageBrush.
Achieve long-term visual consistency by avoiding re-templating MenuFlyoutItem to render these icons.

Scope

Capability
Priority

This proposal will allow developers to render any bitmap supported by Windows.UI.Xaml.Media.ImageSource inside a MenuFlyoutItem
Must

Important Notes
Usage examples: File Explorer context menus and taskbar jump lists
Open Questions
n/a

@StephenLPeters Should we bundle issues asking for broader image support for Icon properties in a larger work item? With the idea being that we look at this platform-wide?
So far, we have seen asks for broader image support for the NavigationViewItem (here and here) and the MenuFlyoutItem (this issue). Then we also have the AppBarButton.Icon property and the TabViewItem.IconSource property in the framework, for example, for which we should also enable richer image support then if we do it for MenuFlyout and NavigationView items.
Thoughts so far range from expanding the IconSource and IconElement classes to cover more image scenarios to changing the type of the Icon poperty to object and adding an additional IconTemplate API.
This sounds too me like we should group all these issues and think about a solution applicable to all of WinUI then where Icons exist.

I agree, these all seem related and I think we should be thinking about the problem holistically.  A Meta feature proposal is probably warranted.  Additionally we'll want to keep in mind that we have an Animated Icon spec #2802 which is also in the same/similar space.

Is this only for strictly image types, so JPG, PNG, SVG, GIF?
What about ICO format icons? If these are supported, how do you choose the ICO size/format?


Fixing launch behavior for various Windows shell environments

Closes https://github.com/ansys/pyfluent/issues/2187
Two things were causing issues for custom shell environments on Windows and are fixed here:

Unnecessary empty spaces between arguments
Using quotes when they are not needed

Tested with Command Prompt, PowerShell and Cmder, this should not cause any regressions (famous last words)
Just to make sure no additional issues introduced, it would be helpful if reviewers could test this branch on their own Windows systems: just launch_fluent and then see if any obvious issues occur, and if PyFluent and the Watchdog were launched correctly.

Confirmed with @giannoko the issues he had are resolved when using this branch


SlackBOT to work with Deployer

Hello,
I am trying to build SlackBot to trigger deploymentm, but it seem I need to have "helper" site that will deal with hook and then trigger the CURL actions in deployer, any ideas/plans how to implement this into code?
Thanks

hmm, not thought about that, could be quite nice to have. Never looked at slack bots though so offhand I'm not sure how difficult it would be


Using extension in route params?

Hello,
I'm trying to achieve something like this using routerify:
Router::builder()
     // ...
    .get("/api/:id.source", get_message_source)
    .get("/api/:id.html", get_message_html)
    .get("/api/:id.eml", get_message_eml)
    .get("/api/:id.plain", get_message_plain)
     // ...

By doing so, I'm unable to get the :id parameter. The following test can replicate the issue:
#[tokio::test]
async fn can_extract_extension_path_params() {
    const RESPONSE_TEXT: &str = "Hello world";
    let router: Router<Body, routerify::Error> = Router::builder()
        .get("/api/:id.json", |req| async move {
            let id = req.param("id").unwrap(); // Error here:  "called `Option::unwrap()` on a `None` value'"
            assert_eq!(id, "40");
            let (parts, _) = req.into_parts();
            let id = parts.param("id").unwrap();
            assert_eq!(id, "40");
            Ok(Response::new(RESPONSE_TEXT.into()))
        })
        .build()
        .unwrap();
    let serve = serve(router).await;
    let resp = Client::new()
        .request(
            Request::builder()
                .method("GET")
                .uri(format!("http://{}/api/40.json", serve.addr()))
                .body(Body::empty())
                .unwrap(),
        )
        .await
        .unwrap();
    let resp = into_text(resp.into_body()).await;
    assert_eq!(resp, RESPONSE_TEXT.to_owned());
    serve.shutdown();
}

Am I doing something wrong, or is it a wider issue?
(I know I can bypass the problem by changing the routes from /api/:id.source to /api/:id/source, but it'd like to avoid it if possible)
Thanks a lot.

You can register a single route at .get("/api/:idExt"), then call the corresponding hooks based on the value of idExt parameter.

Hello @rousan. I can do that but in my opinion, the route parsing should be done by the router, not manually. PR #108 fix this issue and has no other impact, can you take a look at it please? It's just a simple change in the PATH_PARAMS_RE regex. It would be a much more elegant solution.
Thanks a lot


FLUID-5791: Docs update...

Adds documentation for the transformations added in FLUID-5791.

@jobara, as you have been handling the code PR, do you want to field this one as well?

@amb26 and @jobara, the associated code pull has been merged, this still needs to be looked at (I can't assign it myself).

@amb26, this now reflects the wording we agreed on for the date/string transforms in the other PR.


[WIP] Rewrite of ad_containers with reference_generator

Original Files
ad_containers.dart:
Total Number of Lines: 757
Lines of Code: 490
Lines of Comments/Documentation: 267
ad_instance_manager:
Total Number of Lines: 520
Lines of Code: 471
Lines of Comments/Documentation: 49
Changed Files
ad_containers.dart:
Total Number of Lines: 778
Lines of Code: 515
Lines of Comments/Documentation: 263
Removed Files
instance_manager.dart
New Generated Files
ad_containers.g.dart:
Total Number of Lines: 1687
Lines of Code: 1632
Lines of Comments/Documentation: 55
New User Written Files
ad_containers_channel.dart:
Total Number of Lines: 67
Lines of Code: 54
Lines of Comments/Documentation: 13
Math:
Fraction of Removed Lines of Written Code = 1 - ((lines in changed files) + (lines in new user written file)) / (Original Lines of Code)
0.41 = 1 -  (515 + 54) / (490 + 471)

Is this still WIP @bparrishMines or ready for review?

Are there any savings on the platform side as well, @bparrishMines? 41% of Dart seems pretty rad.

It would worth to also analyze the plugin as a whole when you get the platform and test code deltas.

@jjliu15 do you have any thoughts if we were to remove the need for ad_instance_manager.dart and associated platform code?  Do you think this would help you save time?

Yes, I think reducing the amount of boilerplate will reduce the amount of work long term.
I am curious to see what the platform and test changes will look like as well.


Revise param traits

Param traits need to be completely reworked in order to support the new info enums.

Final commit 807d99441d3a26f77e55230fa489f7564f8e485c


Pascal5i Fewshot Segmentation

Thanks for the great work.
I am wondering if I can add a loader for pascal5i dataset as a pull request? I think it will greatly benefit the fewshot segmentation community to have it in that repo too.

That would be a great addition! Feel free to open a PR. Have a look at how the Omniglot dataset works for an example of data-loader.


updated readme

changed doge to bel. Plus an additional grammar update.

Thanks, we will fix it in other request.


[Usage] Encountered an issue while installing the environment with 'pip install flash-attn --no-build-isolation“

Describe the issue
Issue:“pip install flash-attn --no-build-isolation”
“Collecting flash-attn
Using cached flash_attn-2.6.3.tar.gz (2.6 MB)
Preparing metadata (setup.py) ... error
error: subprocess-exited-with-error
× python setup.py egg_info did not run successfully.
│ exit code: 1
╰─> [8 lines of output]
Traceback (most recent call last):
File "", line 2, in
File "", line 34, in
File "/tmp/pip-install-e17h729i/flash-attn_04e1e09780f64807ac90bf9b6ff6b492/setup.py", line 21, in
import torch
File "/home/me/enter/envs/llava/lib/python3.10/site-packages/torch/init.py", line 235, in
from torch._C import *  # noqa: F403
ImportError: /home/me/enter/envs/llava/lib/python3.10/site-packages/torch/lib/../../nvidia/cusparse/lib/libcusparse.so.12: undefined symbol: __nvJitLinkAddData_12_1, version libnvJitLink.so.12
[end of output]
note: This error originates from a subprocess, and is likely not a problem with pip.
error: metadata-generation-failed
× Encountered error while generating package metadata.
╰─> See above for output.
note: This is an issue with the package mentioned above, not pip.
hint: See above for details.
”
Command:
PASTE THE COMMANDS HERE.

Log:
PASTE THE LOGS HERE.

Screenshots:
You may attach screenshots if it better explains the issue.

same question


Allow data-root to be an absolute path

Currently, because the data root field on the filesystem/storage struct is plumbed through the new Golang FS interface, it does not support absolute paths.
This makes it confusing for users when configuring their CSI driver deployments, as a relative path must be used (meaning they must have knowledge of the working directory configured in the container).
At the moment, because the working directory is /, this means that users have to strip the leading / from the data directory argument when starting their CSI driver.
/kind bug
/priority important-soon

It would be good to have some links to which parts of the code this issue refers to.


Feature: Voting Rework - Message Scoring

Implementation for new evaluation of message quality.
With required infrastructure, changes to the Database, the Indexation and the Localization.

config entry requiredMessagesForBeliever could be refactored to requiredScoreForBeliever to better represent changes.


Unable to connect to the Remote Hosts in Windows 10

Hi VSCode
I'm unable to connect to Linux remote host from windows VS code. Getting the below error.
It's trying to add the .ssh entries as per linux directory but not windows directory.
User is also trying from windows user not user given in configuration file.
[18:44:47.247] Log Level: 3
[18:44:47.268]<EMAIL_ADDRESS>[18:44:47.268] win32 x64
[18:44:47.271] SSH Resolver called for "ssh-remote+7b22686f73744e616d65223a2231302e39302e3234392e3432222c2275736572223a226275696c64736572766572227d", attempt 1
[18:44:47.271] SSH Resolver called for host<EMAIL_ADDRESS>[18:44:47.271] Setting up SSH remote "<IP_ADDRESS>"
[18:44:47.310] Using commit id "c47d83b293181d9be64f27ff093689e8e7aed054" and quality "stable" for server
[18:44:47.312] Install and start server if needed
[18:44:47.318] Checking ssh with "ssh -V"
[18:44:48.088] > OpenSSH_for_Windows_7.6p1, LibreSSL 2.6.4
[18:44:48.091] Running script with connection command: ssh -T -D 59433 buildserver@ bash
[18:44:48.099] Terminal shell path: C:\WINDOWS\System32\cmd.exe
[18:44:49.057] >
[18:44:49.058] Got some output, clearing connection timeout
[18:44:49.595**] > Could not create directory '/home/CByalihala/.ssh'.**

The authenticity of host '<IP_ADDRESS> (<IP_ADDRESS>)' can't be established.
ECDSA key fingerprint is SHA256:trAiv2am6FTB04j0SMLwqg5lqqtOCgEBVSvz3ZE+FCI.
Are you sure you want to continue connecting (yes/no/[fingerprint])?
[18:44:49.596] Detected fingerprint confirmation message
[18:44:49.596] Showing fingerprint confirmation dialog
[18:44:53.563] Got fingerprint response: yes
[18:44:53.564] "install" wrote data to terminal: "yes"
[18:44:53.578] > Are you sure you want to continue connecting (yes/no/[fingerprint])? ye
[18:44:53.615] > Are you sure you want to continue connecting (yes/no/[fingerprint])? yes
Failed to add the host to the list of known hosts (/home/CByalihala/.ssh/known_hosts).

VSCode Version:
OS Version:

Steps to Reproduce:

Does this issue occur when all extensions are disabled?: Yes/No

I am closing this issue.
It was due to bad ssh software added to Path of windows instead of openSSH


allow for disabling output to syslog with USE_SYSLOG=0

This makes marathon wrapper script more compatible with supervisor and systemd, or anyone else who doesn't want all of their application logs sent to syslog.
Basically the same change as: https://github.com/mesosphere/mesos-deb-packaging/pull/35

Thanks for your contribution, but this functionality has already been added to the script and will be part of 0.8.1.

I totally overlooked that.  Will mesos & chronos receive the same patch to their deb/rpm scripts?

I don't know. Please create tickets requesting this on the projects. Thanks!
Closing this.


How to save custom aperture masks?

Imagine you painstakingly create a custom aperture mask for aperture photometry.  Perhaps you've done so with our slick new .interact() method.  Or maybe you've done so programmatically by some other means that may be difficult to reproduce.  What are your options for saving your work?
Chiefly, the options come down to:

Do nothing--- leave it up to the user to save masks with their desired format (status quo)
Save just the mask (in some format-to-be-named-later)
Save the lightcurve with e.g. the .to_fits() method with an HDU extension for the mask
Save a new target pixel file with a new HDU extension for the mask

I think option 2 would be great. Right now for our TPF files HDU extension #2 (the third and final extension) is the pipeline aperture. Adding additional apertures as extension #3, #4, #5, etc. seems natural and convenient. Their format could mimic the existing #2 format.
I believe this would allow the file to be used normally by any software, as the first 3 extensions remain untouched.

I second Jeff, No 2 sounds great. Light curve is readily reproducible with the stored custom mask. We struggled with this in pyke where overwriting the mask files was rather easy...
And we will be able read back the mask from the light curve file onto the original TPF, right?

I'd be fine with #2!  Who would like to volunteer to try and implement it?

It looks like option 2 wins based on unanimous feedback so far: 3/3 votes.  So then the question becomes implementation, what needs to change in order to "save the lightcurve with e.g. the .to_fits() method with an HDU extension for the mask":
The .to_fits() method currently works on LightCurve objects, which presently have no way to know what mask generated them.  It seems to me that there are a few design and practical considerations for moving forward:

Modify to_fits() to support HDU mask extensions, and/or verify that it's possible and robust.  Do we want to mimic extant formats from, e.g. K2SFF/EVEREST/Kepler Pipeline?
Modify LightCurve or its subclasses to support a .mask_that_generated_this_lightcurve property (or a more-concise-attribute-name-to-be-decided-upon-later), which could get seamlessly passed to to_fits()).  This attribute may not be desirable or may not be possible to support.
Decide on the interact() user experience: click a button to save? Pass a kwarg-- interact(export_lightcurve=True) ? Do we want invisible/automatic triggering upon a Kwarg?
Decide on how to name the file-- do default names come from the metadata of the TPF?  What if multiple versions are exported?  Do we want to encode metadata about the mask in the filename?
Decide on whether/how to return the mask as a local variable, or force a save-and-read-in strategy?

By the way, I think @KenMighell and @christinahedges had verbally expressed interest in Option 3, "Save a new target pixel file with a new HDU extension for the mask".  If you still like option 3, please chime in here soon to extoll its virtues.

We should discuss, but my two cents:

I'm fine for LightCurve to have an optional aperture_mask attribute that gets written to its own extension by LightCurve.to_fits().  Although it deviates from the pipeline format, the mask really is an attribute that is associated with a LightCurve rather than a TargetPixelFile. The extension should use the same format as that used to save a mask in a TargetPixelFile however.
The interact() tool can have a simple save button which will call LightCurve.to_fits() using some default filename.  If a different filename is desired, it will have to be passed when starting interact, e.g. interact(output_filename=x) or similar.

Because interact runs in an asynchronous way (i.e. the tool still works after the method returns), I can't think of a good way to return the mask as a variable.  Accessing the mask by opening the FITS file created seems fine!

The extension should use the same format as that used to save a mask in a TargetPixelFile however

I propose a simple binary mask: 1 for in the mask, 0 for out of the mask.

Below I copy/paste the exact specification from the Kepler archive manual and the TESS documentation.  They are different but they both give the same meaning to bits 1 and 2, so I think we may want to stick to those!

See some discussion at #329 that relates to discussion here.  There does not presently exist a convenient way to "round trip":
LightCurve  ➡  fits file ➡ LightCurve
...while preserving metadata.  Issue #289 is essentially the solution to the round trip problem--- we need support for reading in non-mission-produced lightcurves (e.g. HLSPs and these custom interact-produced lightcurves).

They are different but they both give the same meaning to bits 1 and 2, so I think we may want to stick to those!

I will do the following per guidance above:
Our approach
Use 0 to indicate that the pixel was not telemetered by the spacecraft (e.g. all-NaN data... will require an additional cross-match with the original HDU, since we do not presently make this distinction.)
Use 1 to indicate that the pixel was telemetered by the spacecraft.
Use 2 to indicate that the pixel was in the custom (e.g. interact()-generated) aperture mask.
Common approach
Use 0 to indicate that the pixel was not in the custom mask
Use 1 to indicate that the pixel was in the custom mask
Note on prospects for confusion
A user could erroneously assume numpy-style boolean masking, the standard format adopted by K2SFF and our in-house methods (anything that accepts aperture_mask= expects a boolean mask, AFAIK).  User-generated to_fits() masks are unlikely to share our convention, so lightkurve-generated fits files will likely have discordant mask conventions.
With that said, I think users are generally comfortable with the notion that products from the Mission have one format, and products from the community have other formats, so it's probably no big deal.  I'm mostly noting these potential pitfalls here in case someone encounters them later and wonders which convention-is-used-when-and-where-and-why.

The inconsistency with the boolean aperture_mask convention used elsewhere in Lightkurve is a fair reason for concern.  I wonder if we should alter the _parse_aperture_mask() method in TargetPixelFile to accept both boolean masks and integer-based masks, e.g.:
if aperture_mask.dtype == bool:
    mask = aperture_mask
else:
    mask = aperture_mask & 2

...plus some error-checking to warn the user if they accidentally used an integer mask that contains only zeros and ones. Thoughts?

Maybe? I'll get some practical experience and make some tests to probe these scenarios as part of the present interrelated pull requests.

@gully, @nksaunders and I have had a chat about this.
We've weighed up the options from @gully's first post:

Do nothing--- leave it up to the user to save masks with their desired format (status quo)
Save just the mask (in some format-to-be-named-later)
Save the lightcurve with e.g. the .to_fits() method with an HDU extension for the mask
Save a new target pixel file with a new HDU extension for the mask

Some take aways from our discussion
Option 1. Save just the mask
Masks would be fits files with keywords describing the way they were generated and the file they apply to.
Pros:

Small file size
No change to lightkurve infrastructure needed.

Cons:

Have to carry around mask and TPF to use.
Have to include a way to read in masks in lightkurve (i.e. tpf.to_lightcurve(aperture_mask=parse_mask('mask.fits')))
Masks could be applied to the wrong file.

Option 2. Save a fits file with a light curve and an aperture extension
Pros:

Small file size
Easy to reproduce/share with collaborators
No intermediate steps
Will work for TESS regardless of postage stamp/tpf/two minute cadence etc
Potentially adds infrastructure for use when loading in HLSPs.

Cons:

Not inherently reproducible. To reproduce the light curve contained in the fits file you would also need the TPF.
Requires a new attribute aperture_mask in all LightCurve, which is populated or produces a descriptive warning in all subclasses. This is a fairly large change to a major class in lightkurve.
The aperture_mask attribute must be writeable in the LightCurve.to_fits()
Custom light curves fits files from tpf.interact will not behave like Light Curve Files. They must still be readable by lightkurve, into KeplerLightCurve objects (or TESSLightCurve objects). This is new behavior which needs to be written and unit tested.

Watch out for:

Need to ensure that the fits file generated by tpf.interact() has no  information loss compared with the equivalent lcf.SAP_FLUX() object.

Have to ensure that the fits file generated by the tpf.interact() button can be read back into lightkurve. (i.e. lk.open('custom_lc_file.fits') must produce the same object with the same attributes as the equivalent lcf.SAP_FLUX() object.) Gully refers to this as round tripping above. This is necessary for this button to really be useful. If we include this button in lightkurve v1.0, this issue must be addressed.

lk.open('custom_lc_file.fits') must return a KeplerLightCurve or TESSLightCurve class, not a generic LightCurve class. (Otherwise information has been lost.)

This option will require that the KeplerLightCurve returned by lk.open('custom_lc_file.fits') will have a new attribute aperture_mask. This requires changing the base class LightCurve to have a blank aperture_mask attribute that will be able to be set. When the attribute is accessed from different objects it should always provide a reasonable result, see below. All of these scenarios must be unit tested

tpf = open('targetpixelfile.fits')
tpf.aperture_mask     # equivalent to tpf.pipeline_mask

lc = tpf.to_lightcurve()
lc.aperture_mask      # provides pipeline aperture

lcf = open('lightcurvefile.fits')
lcf.aperture_mask   # MUST either produce a useful warning/exception, or fetch the aperture mask
lcf.SAP_FLUX.aperture_mask   # MUST either produce a useful warning/exception, or fetch the aperture mask

lcf.SAP_FLUX.to_fits('my_hlsp_file.fits')
my_hlsp_lc = open('my_hlsp_file.fits')
my_hlsp_lc.aperture_mask   # Has no aperture extension?

lc = open('custom_light_curve.fits')
lc.aperture_mask     # provides pipeline aperture
lc.to_fits('my_custom_file.fits')
my_custom_lc = open('my_custom_file.fits')
my_custom_lc.aperture_mask   # Does have an aperture extension?

Option 3. Save a new target pixel file with a new HDU extension for the mask
Pros:

Provides all the information for reproducible light curves, can share a single file with collaborators.
Requires no infrastructure change for lightkurve.

Cons:

Large file size, irresponsible to fill up users hard drives
Inconvenient for power users, who only want the aperture mask.

Some decisions
@gully has made lots of headway on option 2 in PR #329. I'm writing my concerns about option two in detail here. I find option 1 to probably on balance be the most palatable, although I don't love the idea of lots of dangling mask files that I'm easily going to lose.
If all my concerns under option 2 can be addressed then it is the best solution. However, it looks like quite a bit of work, especially before we release v1.0.

Thank you Christina for your thinking on this issue.
I've been confused on which-data-products-have-which masks, so I compiled some info to help guide the discussion.
The table below summarizes mask properties for existing data products.
The columns show the data products, their equivalent lightkurve object, how masks are stored, the provenance of the mask, what type of mask they are, and how to access those masks programmatically with lightkurve.
Existing data product files
|Data product| lightkurve object| Mask storage| Mask provenance | Mask type| lightkurve mask access|
| -- | -- | -- | -- | -- |
| Kepler Target Pixel File| KeplerTargetPixelFile | HDU ext. 2 "APERTURE" | mission| 4-bit optimal, centroid | tpf.pipeline_mask |
| TESS Target Pixel File| TessTargetPixelFile | HDU ext. 2 "APERTURE" | mission| 9-bit optimal, bkg, centroid, detector| tpf.pipeline_mask |
| Kepler Lightcurve File| KeplerLightCurveFile | HDU ext. 2 "APERTURE" | mission | 4-bit optimal, centroid| (lcf.hdu[2].data & 2) == 2 |
| Tess Lightcurve File| TessLightCurveFile | HDU ext. 2 "APERTURE" | mission | 9-bit optimal, bkg, centroid, detector| (lcf.hdu[2].data & 2) == 2 |
| K2SFF HLSP | not implemented | HDU ext. 22, 23 "CIRC_APER_TBL", "PRF_APER_TBL" | Vanderburg & Johnson | binary image cube | not implemented|
| EVEREST HLSP | not implemented | HDU ext. 3 "APERTURE MASK" | Luger et al. | binary image | not implemented|

I still favor Option #3 (Save a new target pixel file with a new HDU extension for the mask).
The advantage of requiring no infrastructure change for lightkurve is important.
I have sent a notebook to Gavin Ramsay showing how to improve his K2 analysis of the dwarf
nova AK Cnc by (1) customizing the aperture and (2) reducing the size of the TPF to have less
than 30000 cadences.  The notebook showed how to do this by hand:
===== snip =====
stpf = lk.KeplerTargetPixelFile.from_archive(target=211378904,campaign=18,cadence='short',
quality_bitmask=0)
mask = stpf.pipeline_mask
mask[0,5:9] = True
mask[1,5:9] = True
mask[2,4:9] = True
mask[3,3:9] = True
mask[4,2:9] = True
mask[5,2:9] = True
mask[6,2:8] = True
mask[7,3:7] = True
mask[8,4:7] = True
hdul = fits.open(stpf.path)
hdul[1].data = hdul[1].data[5000:20000]
mymask = np.zeros(ltpf.pipeline_mask.shape,dtype=np.int32)
mymask[mask] = 3
mymask[~mask] = 1
hdul[2].data = mymask.copy()  # new aperture mask
filename = 'ktwo211378904-c18_spd-targ_small.fits'
hdul.writeto(filename,overwrite=True)
hdul.close()
===== snip =====
One can then open the new TPF, print the new pipeline mask, plot the lightcurve, and use interact():
===== snip =====
stpf2 = lk.KeplerTargetPixelFile(filename,quality_bitmask=0)
print stpf2.pipeline_mask
stpf2.to_lightcurve()
stpf2.interact()
===== snip =====
lightcurve  is quite happy working with the new hacked short-cadence TPF --- it does not
know that it is not a standard K2 data product.
Allowing interact() to write a new TPF with a new mask in the second extension
[e.g., hdul[2].data = mymask.copy()  # new aperture mask] allows lightkurve
to be used normally.  To the user this would appear to be an easy and simple operation.

After much discussion, we are going to implement a way to save masks as the final HDU extension with the first data-holding extension possessing the affiliated custom aperture photometry lightcurve.  We agreed to store the mask as a bitmask with bits 1,2,3,4 yielding values in the set [0, 15], which is the Kepler pipeline standard.
The meaning of the bits in this bitmask will depart slightly from the Kepler pipeline standard.  The meaning of bit 2 will become "pixel was part of the custom aperture" rather than the so-called "optimal" aperture.  Bits 3 and 4 (values 4 and 8) will likely be ignored under most use cases.  Bit 1 signifies whether the pixel was telemetered (conveying whether its inclusion/or exclusion in the custom mask was possible).  Bit 1 might be preserved depending on the application.
Reading-in the mask will require the bitwise and operator in the same way as can be done for KeplerLightCurveFile hdu extensions.  In python:
aperture_mask = (bit_mask & 2) == 2

n.b. The TESS bitmask standard equals the Kepler standard, if you ignore bits greater than 4, but I have setup to_fits() separately for TESSLightCurves and KeplerLightCurves, just in case someone wants to make some custom bitmasking for TESS.


DocsArchive-<IP_ADDRESS>Auto archive content

Auto archive content from https://github.com/opstest2/docs-archive-test-source.git

Docs Build status updates of commit 7f29b76:
:x: Validation status: errors
Please follow instructions here which may help to resolve issue.
If you see build warnings/errors with permission issues, it might be due to single sign-on (SSO) enabled on Microsoft's GitHub organizations. Please follow instructions here to re-authorize your GitHub account to Docs Build.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
Note: Your PR may contain errors or warnings unrelated to the files you changed. This happens when external dependencies like GitHub alias, Microsoft alias, cross repo links are updated. Please use these instructions to resolve them.
For any questions, please:Try searching the docs.microsoft.com contributor guidesPost your question in the Docs support channel


⚠ Bofrost.at has degraded performance

In 7e506e9, Bofrost.at (https://www.bofrost.at) experienced degraded performance:

HTTP code: 200
Response time: 3335 ms

Resolved: Bofrost.at performance has improved in b9321ff after 6 minutes.


code converted to lower case

This pull request is a fix for issue #23

@bryanchriswhite No it is my fault. Thanks for the fix.

closed #23


Update Model: Save all datetimes with timezone

Postgres uses the system timezone by default. If we don't store the timezone in the model fields, and migrate our data to a system with another timezone, the stored datetimes will be wrong.
For a solution see http://justatheory.com/computers/databases/postgresql/use-timestamptz.html .

This is already solved. We are using TIMESTAMP(timezone=True) everywhere.


Refactor and improve Distance Calculation

Have a class that builds different distance calculation method based on config file and create a different class for each distance method with similar interfaces.

@emmaWdev
It will be great to do some basic R&D to figure out if we can any monocular perspective calculation using scene & object priors?
https://www.researchgate.net/publication/312486995_Using_the_Scene_to_Calibrate_the_Camera
https://www.csd.uwo.ca/~oveksler/Courses/Fall2007/840/StudentPapers/hoiem_cvpr06.pdf
Keeping in mind that we can afford to do expensive computations since the camera will be stationary and we only need to do calibration once.

@mhejrati need any help?
It would be my pleasure to contribute.

So, one thing I noticed trying to solve this last night in C is that distance calculations may be unnecessary. So, I haven't closely looked at your distance caculation code, but I assume you do some sort of screen space to world space transform. You need to know how many pixels is 6 feet for a given pair of boxes in a given location of the image, right?
But it may be that we don't need to do this calculation because we already have the result. Why not use the average bounding box height between the two objects? Think about it. People are about 6 feet high in average and the bounding box is just larger than that, accouting for variation in height. It's not exact, no, but neither is a perspective transform. It also means no calibration is necessary. Thoughts?

@mdegans thanks for your comment.
Assuming a fix height for a person is something we considered in our current algorithm. However, we wanted to try some algorithm to consider depth of a scene for better estimation of distances.

@alpha-carinae29
Aha. But the bounding box height changes with distance too, doesn't it? If a person is far away, the box height is ~six feet in real world units. If a person is close, the box height is ~six feet in real world units. Only children would be smaller, and in this case we don't want to alert if they're too close to their parents so it works out well anyway. Anyway it's an idea. I may experiement with it on my own. I'll update here if it turns out well.

Hey, so it works better than I thought actually. Many thanks for Nvidia and the recent CUDA course that i took recently that gave me the idea. If I hadn't done that n-body simulation, I wouldn't have thought of this.
Feel free to use it anywhere so long as you preserve the license. I'll update my NValhalla project with this later. I can probably bind this for Python as well so it can be used directly as a pad probe callback in this project.
You can probably port this to anythining, but if you do an all-pairs calculation like this in Python, it's going to be slow, even with only a few elements.
/* cb_buffer.c
 *
 * Copyright 2020 Michael de Gans
 *
 * 4019dc5f7144321927bab2a4a3a3860a442bc239885797174c4da291d1479784
 * 5a4a83a5f111f5dbd37187008ad889002bce85c8be381491f8157ba337d9cde7
 *
 * Permission is hereby granted, free of charge, to any person obtaining
 * a copy of this software and associated documentation files (the
 * "Software"), to deal in the Software without restriction, including
 * without limitation the rights to use, copy, modify, merge, publish,
 * distribute, sublicense, and/or sell copies of the Software, and to
 * permit persons to whom the Software is furnished to do so, subject to
 * the following conditions:
 *
 * The above copyright notice and this permission notice shall be
 * included in all copies or substantial portions of the Software.
 *
 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
 * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
 * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
 * NONINFRINGEMENT. IN NO EVENT SHALL THE X CONSORTIUM BE LIABLE FOR ANY
 * CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
 * TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
 * SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 *
 * Except as contained in this notice, the name(s) of the above copyright
 * holders shall not be used in advertising or otherwise to promote the sale,
 * use or other dealings in this Software without prior written
 * authorization.
 */

static float
calculate_how_dangerous(NvDsMetaList* l_obj, float danger_distance);

GstPadProbeReturn
on_buffer_osd_distance(GstPad * pad, GstPadProbeInfo * info)
{
  float how_dangerous=0.0;

  GstBuffer* buf = (GstBuffer*) info->data;
  NvDsObjectMeta* obj_meta = NULL;
  NvDsMetaList*  l_frame = NULL;
  NvDsMetaList* l_obj = NULL;
  NvDsBatchMeta* batch_meta = gst_buffer_get_nvds_batch_meta (buf);

  NvOSD_RectParams* rect_params;
  // NvOSD_TextParams* text_params;

  for (l_frame = batch_meta->frame_meta_list; l_frame != NULL;
      l_frame = l_frame->next) {

    NvDsFrameMeta *frame_meta = (NvDsFrameMeta *) (l_frame->data);

    if (frame_meta == NULL) {
      GST_WARNING("NvDS Meta contained NULL meta");
      return GST_PAD_PROBE_OK;
    }

    // for obj_meta in obj_meta_list
    for (l_obj = frame_meta->obj_meta_list; l_obj != NULL;
         l_obj = l_obj->next) {
      obj_meta = (NvDsObjectMeta *) (l_obj->data);
      // skip the object, if it's not a person
      if (obj_meta->class_id != PERSON_CLASS_ID) {
        continue;
      }

      rect_params = &(obj_meta->rect_params);
      // text_params = &(obj_meta->text_params);

      // get how dangerous the object is as a float
      how_dangerous = calculate_how_dangerous(l_obj, rect_params->height);

      // make the box opaque and red depending on the danger
      rect_params->border_width = 0;
      rect_params->has_bg_color = 1;
      rect_params->bg_color.red = how_dangerous * 0.6 + 0.2;
      rect_params->bg_color.green = 0.2;
      rect_params->bg_color.blue = 0.2;
      rect_params->bg_color.alpha = how_dangerous * 0.8 + 0.2;
    }
  }
  return GST_PAD_PROBE_OK;
}

/**
 * Calculate distance between the center of the bottom edge of two rectangles
 */
static float
distance_between(NvOSD_RectParams* a, NvOSD_RectParams* b) {
  // use the middle of the feet as a center point.
  int ax = a->left + a->width / 2;
  int ay = a->top + a->height;
  int bx = b->left + b->width / 2;
  int by = b->top + b->height;

  int dx = ax - bx;
  int dy = ay - by;

  return sqrtf((float)(dx * dx + dy * dy));
}

static float
calculate_how_dangerous(NvDsMetaList* l_obj, float danger_distance) {
  NvDsObjectMeta* current = (NvDsObjectMeta *) (l_obj->data);
  NvDsObjectMeta* other;

  // sum of all normalized violation distances
  float how_dangerous = 0.0;

  float d; // distance temp (in pixels)

  // iterate forwards from current element
  for (NvDsMetaList* f_iter = l_obj->next; f_iter != NULL; f_iter = f_iter->next) {
    other = (NvDsObjectMeta *) (f_iter->data);
    if (other->class_id != PERSON_CLASS_ID) {
        continue;
    }
    d = danger_distance - distance_between(&(current->rect_params), &(other->rect_params));
    if (d < 0.0) {
      d = 0.0;
    } else {
      how_dangerous += d / danger_distance;
    }
  }

  // iterate in reverse from current element
  for (NvDsMetaList* r_iter = l_obj->prev; r_iter != NULL; r_iter = r_iter->prev) {
    other = (NvDsObjectMeta *) (r_iter->data);
    if (other->class_id != PERSON_CLASS_ID) {
        continue;
    }
    d = danger_distance - distance_between(&(current->rect_params), &(other->rect_params));
    if (d < 0.0) {
      d = 0.0;
    } else {
      how_dangerous += d / danger_distance;
    }
  }

  return how_dangerous;
}

So here's a video of the above code on Xavier. For some reason the bboxes are green, while on x86 they are red. This appears to be a bug in NvOSD_RectParams, but can be hacked around with some preprocessor defines.
https://youtu.be/1Ui7A061fpY
I will a post a video from x86-Nvidia shortly.

Here it is on x86, with the proper color bounding boxes except for a small bug with the channel value clipping. When some values go above 1.0, the box becomes black, but that's easy enough to fix. You get the idea of how it can work, and it's very very fast.
https://youtu.be/m5GBm793D9k

Nice. @mdegans I am a bit confused now with this thread and the other on #50, is there any problem with using this code for post-processing?

Nice. @mdegans I am a bit confused now with this thread and the other on #50, is there any problem with using this code for post-processing?

So, the above code is from another project, written in C and Vala (GObject C shorthand, basically). If you'd like, I can port this algorithm to Python or Cython so we can use it in this project, but I mostly provided it as an example to give @alpha-carinae29 some ideas. I don't want to interfere with WIP.
If @alpha-carinae29 decides to use this method, The one thing that it may not be compatible with is the "bird's eye view", since it doesn't do any sort of screen space to world space transform. The calculations are entirely screen space based on the height of bounding boxes, but it seems to work pretty well and it's fast. That being said, speed is less important now for GstEngine since we do these calculations in a separate process. Even the existing code will work find if modified a bit.

Hey, so I noticed non_max_suppression_fast is copypasta from this blog with the comments removed. I think we'll need a license to use it unless pyimagesearch has some page somewhere with a notice about all blog code that I can't find. I can reimplement it in another language.
Also, I think it might be faster to do the cenroid calculation after. Likewise the code might not even be necessary. My understanding of the networks themseves is rudimentary, but don't most of them do the suppression inside?  LMK what you want to do @mhejrati , or if you've updatet this code any @alpha-carinae29 or @mrn-mln .

@mdegans yeah we don't need these modules anymore since now we have a high accuracy object detector.
Also the filtering and tracking algorithm is under development right now and the tracking algorithm will change soon.

If @alpha-carinae29 decides to use this method, The one thing that it may not be compatible with is the "bird's eye view", since it doesn't do any sort of screen space to world space transform. The calculations are entirely screen space based on the height of bounding boxes, but it seems to work pretty well and it's fast. That being said, speed is less important now for GstEngine since we do these calculations in a separate process. Even the existing code will work find if modified a bit.
Thanks for your activities in this issue.
I think first of all we should create a metric and some ground truth so we can benchmark different methods. Deciding by just watching the result might not be a good idea.
Do you have any idea how we can evaluate different methods?

Ok. Thanks. I'll know not to work on it now @alpha-carinae29 . Please @ me when you commit so I can integrate the changes. For the moment I'm just going to avoid this part. I have my code spitting out the boxes, and trackign is already done interally to the Gstreamer pipeline. The only thing I'd ask is when you rework the code, to provide a way to account for objects that already have a uid assigned. I'd propose working with a dict of dicts with an object uid as integer key as a list of dicts with string keys and uid values might be slower lookup when I get back the scored results. I can work with anything, so long as each object has a uid somewhere, however.

Thanks for the suggestions, I think it will be ready in a week. I will mention you in the PR so we can talk about the implementations, data structures, etc.

Do you have any idea how we can evaluate different methods?

Well, we have a test video, but we could use more from different angles. Not sure if there's an objective, automated, way of verifing accuracy unless you measure distances with a ruler irl and annotate the video manually to get ground truth.
Could possibly generate some ground truth synthetic footage of simple objects (eg. spheroids) moving around randomly in a 3d scene with the camera in a bunch of different perspectives. I know enough Blender to do that (Arts and Visual tech was actually my major in college, not software engineeing).
Or we could just be subjective about it. i.e,  how close are these results, how fast is the technique, do we really need this feature, etc, and play it by ear.

Thanks for the suggestions, I think it will be ready in a week. I will mention you in the PR so we can talk about the implementations, data structures, etc.

Sounds good @alpha-carinae29

@alpha-carinae29 thanks for taking this one. Can you please keep us updated with your progress here?
With respect to evaluation, I agree that we need a more objective and methodical. One possible approach is to try to calibrate the oxford towncenter camera's manually (if possible) and use that as ground truth (it is not 100 accurate but probably a lot better than what we have now). Also, we can do synthetic dataset as @mdegans suggested, to isolate the detector performance from the distance calculation performance.  My vote is to do something quick and dirty with oxford towncenter and then get fancier :)

Hey, so I noticed non_max_suppression_fast is copypasta from this blog with the comments removed. I think we'll need a license to use it unless pyimagesearch has some page somewhere with a notice about all blog code that I can't find. I can reimplement it in another language (like Cython).

@alpha-carinae29 can you please make a PR to put a copyright text at the top of the NMS code? or if we are not using it anymore just removing it from the code?

Hey, so I noticed non_max_suppression_fast is copypasta from this blog with the comments removed. I think we'll need a license to use it unless pyimagesearch has some page somewhere with a notice about all blog code that I can't find. I can reimplement it in another language (like Cython).

@alpha-carinae29 can you please make a PR to put a copyright text at the top of the NMS code? or if we are not using it anymore just removing it from the code?

I've done this in my branch here, so you can copy and paste (or whatever) @alpha-carinae29 . I added the comments back as well since they're useful to understand what's going on.


expect: Improve report when matcher fails, part 11

Summary
For .toContain, .toContainEqual, and .toMatch:

Display matcher name in regular black instead of dim color
Display rejects or resolves in matcher hint
Display comment in hint when toContain or toContainEqual throw matcher error
Display not following expected label
Inverse highlight the not-expected substring or array item in received value

For more information, see discussion with @jeysal in #7795
Your critique about clarity is especially welcome, because I had to wrestle with the code not to add any more any type than the one already in toContain matcher.
Design discussion your thoughts are welcome for a possible future pull request:

Is // indexOf comment in matcher hint for toContain confusing if received is iterable (for example, set) instead of array?
What do y’all think when .toContain referential identity fails for item in array but deep equality succeeds, to highlight the item?
Let’s brainstorm how to rewrite the message that suggests .toContainEqual matcher to be less wordy and more neutral (for example, to fix mistake in Redux reducer, .toContain might fail in first phase of TDD even though referential identity is the correct criterion)

Residue for future pull requests:

Inverse highlight the not-expected substring in received value for .toThrow(string | RegExp) matcher
Breaking change to require .exec method in addition to .test method
Better organize print functions after all reports have been improved

Test plan
Updated existing snapshot tests:

matcher

14
.toContain

10
.toContainEqual

17
.toMatch

41
total

See also pictures in following comment.

Is // indexOf comment in matcher hint for toContain confusing if received is iterable (for example, set) instead of array?

For now, I'd say "no". If (when) we add support for Set to toContain, we might want to tweak it.

Looking forward to your screenshots 😀

Example pictures baseline at left and improved at right
Matcher name is regular black:

Possible future improvement to highlight item found according to deep equality:

Can highlight substring in string:

Cannot (yet) highlight value in non-array iterable object:

Matcher name is regular black:

Can highlight item in array:

Align expected and received values:

Can highlight pattern in string:

Codecov Report

Merging #8008 into master will increase coverage by 0.12%.
The diff coverage is 90.16%.

@@            Coverage Diff             @@
##           master    #8008      +/-   ##
==========================================
+ Coverage   64.12%   64.25%   +0.12%
==========================================
  Files         259      260       +1
  Lines       10150    10163      +13
  Branches     1754     1767      +13
==========================================
+ Hits         6509     6530      +21
+ Misses       3255     3245      -10
- Partials      386      388       +2

Impacted Files
Coverage Δ

packages/jest-matcher-utils/src/index.ts
91.83% <100%> (+0.08%)
:arrow_up:

packages/expect/src/print.ts
88.88% <88.88%> (ø)

packages/expect/src/matchers.ts
95.54% <90.19%> (-1.79%)
:arrow_down:

packages/jest-get-type/src/index.ts
89.65% <0%> (-0.35%)
:arrow_down:

packages/jest-jasmine2/src/jasmine/Env.js
0% <0%> (ø)
:arrow_up:

packages/jest-each/src/bind.js
100% <0%> (ø)
:arrow_up:

packages/jest-circus/src/utils.ts
16.12% <0%> (+0.5%)
:arrow_up:

packages/jest-haste-map/src/index.ts
84.24% <0%> (+0.95%)
:arrow_up:

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 591eb99...08b54d2. Read the comment docs.


The wallet API configuration nginx agent returns 400

The wallet API configuration nginx agent returns 400？I'm having a headache！

Be sure your use of the API works without nginx first, then configure nginx.
If you still have the problem and wish to discuss further, please post it in https://eosio.stackexchange.com. To keep things organized, Github issues are intended for bug reporting and feature tracking, and Stack Exchange is the right place for any technical support discussions. Thanks!


new Mamba for Tabular data

Hi... Please, include Mambular another Mamba for tabular data:
https://github.com/basf/mamba-tabular
Thank you!

Hi, thank you for your interest in our work. We have added your paper to the repository.


Update stable version in repo from 1.13.0 to 1.14.1

Think about update stable version to 1.14.1
Version: stable=1.13.0 (48 days old) => latest=1.14.1 (15 days old)
Installs: stable=7891 (43.53%), latest=1679 (9.26%), total=18129
Click to edit

@GermanBluefox Maybe the tool which generates these issues should also check, if the globalDependencies and dependencies are stable

@Apollon77 The custom component had a bug (names were missing). This is already fixed in the WIP version. New release required.

Ok, Telergram issues and PRs increased in prio on my list


Taxonomy for the hierarchies

Thanks for sharing the dataset! Can you share the taxonomy of the hierarchies for this data? Ideally to load with networkx, but if it is not in that format, that should be fine too.

Thanks for your interest!
RE hierarchy, is this what you need:
https://github.com/visipedia/inat_loc/tree/main/dataset#class_labels_xtxt
If useful, the iNat2021 dataset has the taxonomy described in the annotation file e.g.
{'id': 0,
 'name': 'Lumbricus terrestris',
 'common_name': 'Common Earthworm',
 'supercategory': 'Animalia',
 'kingdom': 'Animalia',
 'phylum': 'Annelida',
 'class': 'Clitellata',
 'order': 'Haplotaxida',
 'family': 'Lumbricidae',
 'genus': 'Lumbricus',
 'specific_epithet': 'terrestris',
 'image_dir_name': '00000_Animalia_Annelida_Clitellata_Haplotaxida_Lumbricidae_Lumbricus_terrestris'}

You just need to download the train or validation json files from here:
https://github.com/visipedia/inat_comp/tree/master/2021#data
I hope this helps.

You can also parse this information out of the iNatLoc metadata files described here, since each image has a label for every tier of the taxonomy.
Please re-open the issue if this doesn't answer your question!


Co-ordinating Multiple Flows

Is there a way to coordinate multiple flows, or for a flow to state that it requires another flow to have run prior?
For example if I have a Data Preprocessing flow that I'd want to share data with to other flows/using the Client API it could be useful for a flow to state that it is reliant on another flow. Possibly via a decoration on the flow or something like that
And possibly also being able to kick off another flow in a declarative fashion

@nabeelvalley You can trigger workflow executions based on other workflow executions if you are using AWS Step Functions by setting custom rules on Amazon Event Bridge. We will soon provide a parameter TriggerOnFinish that will automate this setup and trigger a downstream workflow on AWS Step Functions on successful completion.

@savingoyal thanks for the information
is it possible to do this locally? or any plans to work on something like that?

@nabeelvalley We recently released a new feature that paves the way for introducing namespaced triggers - https://docs.metaflow.org/going-to-production-with-metaflow/coordinating-larger-metaflow-projects. I will follow up with a memo on event based triggers shortly.

Hi @nabeelvalley @savingoyal,
I'd also like to trigger a flow B from a flow A, is there any update on this? :)
Cheers

Hello everyone,
Any update?
Would be a great feature!

Yes indeed - we are actively working on - https://github.com/Netflix/metaflow/pull/1139

@savingoyal #1139 appears to be closed, is it still being worked on? Cheers


Correct rainfall display in model/model app

The model vs model app is currently showing average hourly rainfall over a 3 hour period for the rainfall display, rather than 3 hour accumulation as shown for the GPM app. We should change the app to make this consistent, and update the title and stats appropriately.

No longer relevant to latest implementation of FOREST.

No longer relevant to latest implementation of FOREST.


2.0 Failed to resolve conflict while trying to delete the document

Steps to reproduce:

Create documents.
Update documents which creates some revisions and updates the document.
Now delete the document
Result :
Document gets deleted in local database , but not get deleted in sync-gateway and server.
When I check the count after deletion , I can see that count has reduced.
When replicator tries to delete the document on sync-gateway and server, it throws this error on client

Expected behavior :
2.0 should handle conflicts and should delete without any revisions
Logs on client:
https://gist.github.com/sridevi-15/7d4932516fbf6d17b9fe914d522d593f

@sridevi-15 Can you write unit test or code snipet for this issue?

This is a sync gateway issue. Filed https://github.com/couchbase/sync_gateway/issues/2713

Hi Hideki,
I heard unit test coverage is done by developers.

Hi @sridevi-15,
developers measure the test coverage.
DB013 test coverage
http://uberjenkins.sc.couchbase.com/view/Build/job/couchbase-lite-android/138/artifact/android/CouchbaseLite/build/reports/coverage/debug/index.html

@djpongh There's an exception being thrown in CBL, according to the logs shown above; that looks unrelated to SG.


Activity planner

Activity planner will keep track your daily activities to avoid missing deadlines and prioritize your task. Plan out your day week or a month .This will help track your progress and boost confidence. This is will not only help complete your pending task but but also help in keeping yourself organized as well as improve your daily routine.
@akshitagupta15june please assign this issue to me.

okay


proof-of-payment as part of the getHeader response in v0.2

On the mev-boost workshop it came up that it would be great to include the proof of payment in the getHeader response, with which the builder proves to the proposer/mev-boost that the payment has actually happened.
This could go into the initial v0.2.x (and would probably be good to have, even if we don't automatically verify it).
How would this proof work exactly?

It depends on how much information we expect the verifier to have. I see two main possibilities here:

The verifier has no state beyond the GetHeader response. In this case, there needs to be two proofs. One proof against the parent root in the payload of the feeRecipient's balance. The second proof against the stateRoot in the paylaod of the feeRecipient's balance. This authenticates the balance before and after. The delta can be verified against the claimed value.
The verifier has the previous block's state. Here, only the later proof in 1) would be needed because the balance of the feeRecipient before the payload is executed can be ascertained by just looking in up in the state.

Closing for now, until proof of payment comes up again for the next discussions.


Usage of public-yum.repo deprecated since January 2019

The usage of the public-yum repository files has been deprecated in January 2019.
Details from Oracle:
https://docs.oracle.com/cd/E52668_01/F14052/html/notice_description.html
I like to change the default behavior of ansible-oracle for the following task:
  - name: Get newest repo-file for OL (public-yum)
    get_url: dest={{ repo_dir}}/{{ ol_repo_file }}  url=http://public-yum.oracle.com/{{ ol_repo_file }} backup=yes
    when: configure_public_yum_repo and ansible_distribution == 'OracleLinux'

The variable configure_public_yum_repo should be changed to False.
This will break old OS templates without a public-yum repositoriydefinition. New OS templates without a public-yum repositofyfile will be messed up with this task and leads to duplicate repository definitions.
We could add another task to check against a RPM from the new definitions but I think that this is not needed due to the fact that every installation should be execute a 'yum update -y' with a migration to the new repositorydefinnitions before the start of ansible-oracle.

I will look into this, but I think what could/should be done is to check for the existence of the old monolithic file, and if it exists make sure the correct release package oraclelinux-release-el7/el6 is installed and run the conversion script for the modular configuration (if needed). That effectively disables the monolithic  repo. (Maybe make it an option with True/False )
I'll do some tests.
I should also probably replace the epel repo with the oracle-epel repo for OL systems.

#205


How to enable in Electerm?

Hello, I install theme two times but it's now visible in Electerm. How to import that theme?
Regards.

No one to maintain it?


Unknown error: Non-base32 digit found

Describe the bug
While running Home Assistant and installing the Alexa media player through HACS when configuring the app it throws the error Non-base32 digit found.
To Reproduce
Steps to reproduce the behavior:
1. Go to config ->integrations -> Add Intergration -- > Alexa Media Player
2. Fill all user credentials including the "FA Code + Built In 2FA App Key (this has been setup correctly my end) (Amazon region domain has been changed to amazon.co.uk
3. Advanced debugging unchecked
4. Included device, excluded device, seconds between scans + Cookies.txt data all stays as default
5. Click Submit
Expected behavior
To login to amazon.co.uk
Screenshots
If applicable, add screenshots to help explain your problem.
System details

Home-assistant (version):

Home Assistant 0.118.3

Hassio (Yes/No): (Please note you may have to restart hassio 2-3 times to load the latest version of alexapy after an update. This looks like a HA bug).
Restarted 3 times and still no change

alexa_media  (version from const.py or HA startup):

3.3.1 (latest)

alexapy (version from pip show alexapy or HA startup):

version 1.16.0

Amazon 2FA is enabled (y/n). We will not debug login issues if unanswered:
Yes all setup and enabled.

Logs
2020-11-29 23:03:25 DEBUG (MainThread) [custom_components.alexa_media.config_flow] Creating new login 2020-11-29 23:03:25 DEBUG (MainThread) [alexapy.alexalogin] Creating TOTP for 4**728 2020-11-29 23:03:25 WARNING (MainThread) [custom_components.alexa_media.config_flow] Unknown error: Non-base32 digit found 2020-11-29 23:03:27 DEBUG (MainThread) [custom_components.alexa_media.config_flow] Using existing login 2020-11-29 23:03:27 WARNING (MainThread) [custom_components.alexa_media.config_flow] Unknown error: Non-base32 digit found 2020-11-29 23:03:27 DEBUG (MainThread) [custom_components.alexa_media.config_flow] Using existing login 2020-11-29 23:03:27 WARNING (MainThread) [custom_components.alexa_media.config_flow] Unknown error: Non-base32 digit found 2020-11-29 23:03:28 DEBUG (MainThread) [custom_components.alexa_media.config_flow] Using existing login 2020-11-29 23:03:28 WARNING (MainThread) [custom_components.alexa_media.config_flow] Unknown error: Non-base32 digit found 2020-11-29 23:03:28 DEBUG (MainThread) [custom_components.alexa_media.config_flow] Using existing login 2020-11-29 23:03:28 WARNING (MainThread) [custom_components.alexa_media.config_flow] Unknown error: Non-base32 digit found
Additional context
Add any other context about the problem here.

You are putting the 2FA code in the wrong field. Do not put it in the Built-In 2FA Key.


Add google.api_core.gapic_v2.client_info

Resolves #4068

@lukesneeringer @dhermes this is my attempt to fix #4068 without making myself angry. I'm open to feedback and suggestions at alternatives.


fix(close): clean up

ref #292

👋 Thanks for creating a pull request! 🚀 Checkout the storybook we created for it here.


Initial implementation.

This wraps logrus in order to provide common flags (currently only
-log.level) and to add file:line annotations in log lines.

@beorn7 @fabxc

Looks good :+1: