Dataset enlarge ratio

Can you explain exactly what dataset_enlarge_ratio is doing? Is the default of 100 something to stick with? I'm just a bit confused about how this ratio changes the number of epochs, and if that matters.

@elezine
As stated here

dataset_enlarge_ratio  is for The ratio of enlarging dataset. For example, it will repeat 100 times for a dataset with 15 images
So that after one epoch, it will read 1500 times. It is used for accelerating data loader
since it costs too much time at the start of a new epoch

In practice, if you do not encounter the problem of long waiting time at the binning of each epoch for the dataloader, you can just set this to 1. Otherwise, you can increase this number.
And the implementation details are https://github.com/xinntao/BasicSR/blob/2ae16da2140bcc4418081f52cc13edcc6df0d5c5/basicsr/data/data_sampler.py#L26-L28


Kudos!

Thanks for this work!
In case you've not seen it before, shellcheck is a great linter for shell, and integrates with a bunch of editors (I use the this extension with vscode, fwiw).
It didn't find anything horrible here--just a few nits:
 shellcheck syno_create_m2_volume.sh

In syno_create_m2_volume.sh line 79:
[ "$BASH" ] && ! shopt -qo posix || {
            ^-- SC2015 (info): Note that A && B || C is not if-then-else. C may run when A is true.

In syno_create_m2_volume.sh line 127:
    minor=$(get_key_value /etc.defaults/VERSION minor)
    ^---^ SC2034 (warning): minor appears unused. Verify use (or export if used externally).

In syno_create_m2_volume.sh line 151:
args="$@"
     ^--^ SC2124 (warning): Assigning an array to a string! Assign as array, or use * instead of @ to concatenate.

In syno_create_m2_volume.sh line 176:
                log=yes
                ^-^ SC2034 (warning): log appears unused. Verify use (or export if used externally).

In syno_create_m2_volume.sh line 179:
                debug=yes
                ^---^ SC2034 (warning): debug appears unused. Verify use (or export if used externally).

In syno_create_m2_volume.sh line 216:
    dsm72="yes"
    ^---^ SC2034 (warning): dsm72 appears unused. Verify use (or export if used externally).

In syno_create_m2_volume.sh line 348:
                                delerr=1
                                ^----^ SC2034 (warning): delerr appears unused. Verify use (or export if used externally).

For more information:
  https://www.shellcheck.net/wiki/SC2034 -- debug appears unused. Verify use ...
  https://www.shellcheck.net/wiki/SC2124 -- Assigning an array to a string! A...
  https://www.shellcheck.net/wiki/SC2015 -- Note that A && B || C is not if-t...

Feel free to close this issue--I just wanted to stop by and thank you for your work.
(I found this project via https://www.mklibrary.com/synology-nvme-volume/)
Cheers!

(I found this project via https://www.mklibrary.com/synology-nvme-volume/)

That's a well written guide. I might put a link to it on my readme page.
I do use shellcheck.

The args="$@" is just so I can echo the arguments used. But I could change it args=("$@")
The unused variables are for future use.
Line 79 is something that does work when the script is in a different shell 9to check it's running in bash) even though shellcheck warns that it's not an "if, then, else".

ICYMI, you can prepend the line # shellcheck disable=SC2015 (or whatever the warning is) if you've checked out the linting error and have determined it's a false positive or otherwise ignorable.
Thanks again.


(cosmetic) default paths for areas and crops in "taniad -h"

Hello folks,
I've see in help message of taniad, the default upload paths are with values which doest not match conf.json & all.
I think it should be:

--upload_path_area string           Upload path for the Area photo (default "uploads/areas")
--upload_path_crop string           Upload path for the Crop photo (default "uploads/crops")

I found them in backend/config/config.go but don't know how to submit a patch.
Continue this great initiative !
Pierre

Hey, thanks @pimar57. We'll check it.

thanks

Thanks for the catch @pimar57! Now it's fixed in the 2.0 dev branch.


Global fee module

A way to set a minimum global fee via governance param for different tokens, this is NOT going to be in SDK47
Ex: force all nodes to use 0.025ujuno as a fee.
Can use as many token denoms here as you want (including ibc).
Default genesis is empty array, we could set it to be
If the fee token is less than the globalfee, the Tx fails for not enough fee

Hi @Reecepbcups visit the official COSMOS page to start a chat with an agent on a live chat support to report this for review and for further assistance via LIVE CHAT


feature/dynamic_response_fields :: Dynamically generates response_fields

In documenting an api with dozens of endpoints, each with dozens of response fields, the manual setting of response fields is tedious.  With proper fixtures/factories/fabricators, there is no need to manually specify the response fields. The resulting http response body should be correct.
Introducing, Dynamic Response Fields. This commit enables the ability to dynamically generate response_fields from actual http response body, including nested attributes with scope.  Manually supplied response_fields take precedent.  Dynamic response fields are disabled by default, but can be enabled through the following configuration:
config.dynamic_response_fields = true

Works out of the box with Raddocs.
Added Bonus:
The side benefit of dynamic response fields is that for the documentation to be accurate, the test suite must be accurate.  The fixtures/factories/fabricators must accurately represent the live data. Therefore,  improving the documentation, improves the test suite.

Closing due to age.


Merge nmdc-schema/main into copy of berkeley-schema-fy24/main (backmerge 2024-08-23)

Deleting this PR. I only created it to test out some instructions I'm writing.


Add xylar as a maintainer and update dependencies

Checklist

[x] Used a personal fork of the feedstock to propose changes
[x] Bumped the build number (if the version is unchanged)
[x] Re-rendered with the latest conda-smithy (Use the phrase @conda-forge-admin, please rerender in a comment in this PR for automated rerendering)
[x] Ensured the license file is being packaged.

closes #15

@conda-forge-admin, please rerender

@brl0, this is ready for you to have a look at.  I updated the recipe using the grayskull tool, which pulls in data from the PyPI source code.

I'm also removing bot automerge because I don't think it's safe to assume that the dependencies don't change for this package.  There can be cases where dependencies change but the tests don't detect that, so it's safer to check dependencies with each release.  I'm happy to do that from now on.

Thanks @brl0!


[BUG] - Variable updates in Modal don't work

NextUI Version
2.4.2
Describe the bug
just simple code in the below，you can run anywhere，when i click the button, the button text content is updated in a work, but not update in the Modal body, I'm not sure if this is a bug.
"use client";

import { Button, Modal, ModalBody, ModalContent } from "@nextui-org/react";
import { useState } from "react";

export default function Page() {
  const [show, setShow] = useState(false);
  const [nums, setNums] = useState(0);

  return (
    <>
      <Button onClick={() => setShow(true)}>{nums}</Button>
      <Modal isOpen={show} onOpenChange={setShow}>
        <ModalContent>
          <ModalBody onClick={() => setNums((s) => ++s)}>{nums}</ModalBody>
        </ModalContent>
      </Modal>
    </>
  );
}

Your Example Website or App
No response
Steps to Reproduce the Bug or Issue
just simple code in the below，you can run anywhere
"use client";

import { Button, Modal, ModalBody, ModalContent } from "@nextui-org/react";
import { useState } from "react";

export default function Page() {
  const [show, setShow] = useState(false);
  const [nums, setNums] = useState(0);

  return (
    <>
      <Button onClick={() => setShow(true)}>{nums}</Button>
      <Modal isOpen={show} onOpenChange={setShow}>
        <ModalContent>
          <ModalBody onClick={() => setNums((s) => ++s)}>{nums}</ModalBody>
        </ModalContent>
      </Modal>
    </>
  );
}

Expected behavior
Expect nums variables to be re rendered in the modeal and update their views
Screenshots or Videos
No response
Operating System Version
macos
Browser
Chrome

@bao-io  I tried the same code and everything seems perfectly fine.
Maybe you just need to update the version to the latest, and you problem is solved.
https://github.com/user-attachments/assets/3a821fe6-5e4c-40a9-b9cf-39161e255a83

@bao-io  I have also used  NextJs, more specifically I made a test app to solve your issue from,   NextUI CLI tool, following the simple guidelines. You can try with NexttUIProvider way too, both behave similarly

Kindly provide sandbox or stackbllitz  for efficient debugging

@bao-io  you may rebuild your app  cleaning the npm cache and node_modules.
Most probably everything should work fine.
if not kindly confirm
else close the issue as completed
you may refer to this one #3565

does anyone know why this happens? I have the same issue


Support showing stories inside the Emission beta

Right now stories are controlled entirely from an external website, in theory we could expose that and allow you to connect the beta to it, but that's pretty inelegant and no-one will do it.
E.g. only this is bad

Ideally there'd be a normal UITableView with all the top level, then low levels.
What could work instead is that we make a new component that makes a list of all stories and lets you choose them in-app.

Gave myself a few minutes to explore this, should be pretty feasible from the browsing aspect
import { getStorybook } from "@storybook/react-native"

// In some place to call the code
console.log("HIII")}
console.log(getStorybook())

Looks like

We don't ship the stories with the production JS, so these can only exist inside the emission side of the codebase.

@orta this is done, right?

Yep


Add a path parameter for a git source

Because charts are not always at the root of a git repository.
I've also added default values for the branch ("master") and the path ("")

@Redlinkk - Thanks!


request & dropbox

from #71 : fix audit & remove request from deps

move from dropbox-v2-api to dropbox

use dropbox instead

example:

upload
download
list
delete route

First task:

[ ] add more integration tests with dropbox in order to improve save, and add verify on list + delete


added bootstrap and MM1990 reversal test functions; added flexibility to naming requirements in vgp_calc

Okay, third time's the charm. Sorry for the confusion -- I should have seen that my pull request was modifying more than just ipmag.

which MM1990 reversal test is this?  if it is Watson’s V, then that should be maybe not MM1990, but maybe the Watson ref or  Tauxe et al., 2010?   if it is the A,B,C thing, that is a silly way to do reversals tests.  Not sure which one you guys are actually doing.

On Jan 26, 2016, at 1:10 PM, Luke Fairchild<EMAIL_ADDRESS>wrote:
Okay, third time's the charm. Sorry for the confusion -- I should have seen that my pull request was modifying more than just ipmag.
—
Reply to this email directly or view it on GitHub https://github.com/PmagPy/PmagPy/pull/39#issuecomment-175231610.

These functions that Luke put together are ipmag implementations of these two command line programs:

revtest.py (this test is an implementation of the Tauxe bootstrap reversal test that can now be done with ipmag.bootstrap_reversal_test)
revtest_MM1990.py (this test is an implementation of the Watson V common-mean/reversal test that also reports the critical angle as formulated by MM1990that can now be done with ipmag.MM1990_reversal_test)

MM1990 is the Watson V test with the additional formulation of the critical angle which provides a way to obtain a measure of the amount of information available for the test. Note that one can simply do the Watson's V test using ipmag.watson_common_mean which is the function underlying ipmag.MM1990_reversal_test. The issue is that if there are only a few observations, or the directions have quite low precision, then there are situations where the null hypothesis of a common mean cannot be rejected using Watson's V test (thereby constituting a "positive" reversal test), but where that result isn't meaningful or robust.
Consider two populations of directions with quite low precision that have slightly different means, but are far from antipodal from one another:
directions1 = ipmag.fishrot(k=1,n=4,Dec=20,Inc=20)

directions2 = ipmag.fishrot(k=1,n=4,Dec=340,Inc=-20)

These means are far from antipodal from one another, but if you draw these populations, take the antipode of one of them and conduct a Watson V test you will get the result that the null hypothesis of a common mean can not be rejected. The MM1990 formulation recasts the V statistic as a critical angle and in this test would argue that the reversal test is indeterminate (not enough information to draw a robust conclusion). This classification makes sense because the data are so bad and the result that they share are common mean is not particularly useful which why it is helpful to have a classification that says the test is indeterminate. These data and there actual (far from antipodal) means as specified in fishrot are plotted below:


Staging to main for 3.0.1 release

Description

Related Issue

Motivation and Context

How Has This Been Tested?

Screenshots (if appropriate):
Types of changes

[ ] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)

Checklist:

[ ] I have signed the Adobe Open Source CLA.
[ ] My code follows the code style of this project.
[ ] My change requires a change to the documentation.
[ ] I have updated the documentation accordingly.
[ ] I have read the CONTRIBUTING document.
[ ] I have added tests to cover my changes.
[ ] All new and existing tests passed.

closing this pr, changes will be part of the 4.0.0 release


[BUG] Canvas Drawing Failed on New Scene

Describe the bug
After updating to ETL 10.8 or 10.7, when viewing a newly created scene, there is an error that reads "Canvas drawing failed: Cannot read properties of null (reading 'map')"
To Reproduce
Steps to reproduce the behavior:

Be on ETL 10.8 or 10.7
Create a new scene
View the newly created scene
Receive error "Canvas drawing failed: Cannot read properties of null (reading 'map')"

Expected behavior
Newly created scene should not throw an error
Screenshots

Please complete as much of the following information as possible:

Browser: Chrome v 112.0.5615.50
Foundry Version 10.291
SystemD&D5e 2.1.5
Module version 10.8
Are there any errors in the console [e.g. press F12 and look for red text]: Yes, see screenshot
Have you tried using Find the Culprit to make sure it isn't a module interaction.: No, recreated the issue in a blank world with no other modules instead.

Additional context
No issue on ETL 10.6 or below and existing scenes also appear to be fine.

Should be fixed in the latest version


Update Mediator Configurations

Related to https://github.com/bcgov/DITP-DevOps/issues/113

These configurations have been deployed to dev, test, and prod`, and smoke tested.

Updated the PR with a new commit to migrate existing instances to a persistent queue configuration and eliminate the -pq instances; Migrate existing mediator instances to a persistent queue configuration.
The update is based on this request; https://github.com/bcgov/DITP-DevOps/issues/113#issuecomment-1856593037
The dev instance has been migrated and smoke tested.  The -pq instance in dev has been scaled down.

The test instance has been migrated and smoke tested. The -pq instance in test has been scaled down.


[$500] Mweb - Android chrome displays background chat behind emoji picker on selecting any emoji type

If you haven’t already, check out our contributing guidelines for onboarding and email<EMAIL_ADDRESS>to request to join our Slack channel!

Action Performed:

Open the app in android chrome
Open any report
Click on emoji to open emoji picker
Click on search to open keyboard
Click on any emoji category below search
Observe that app closes keyboard fast but relocates emoji picker slow because of which it displays background chat in place of emoji picker for sometime

Expected Result:
App should relocate emoji picker to bottom along with closing of keyboard to avoid displaying background chat in place of picker
Actual Result:
App delays relocation of emoji picker to bottom when we click any emoji picker causing app to display background chat in place of picker for sometime
Workaround:
Unknown
Platforms:

Which of our officially supported platforms is this issue occurring on?

[ ] Android / native
[x] Android / Chrome
[ ] iOS / native
[ ] iOS / Safari
[ ] MacOS / Chrome / Safari
[ ] MacOS / Desktop

Version Number: <IP_ADDRESS>
Reproducible in staging?:  y
Reproducible in production?: y
If this was caught during regression testing, add the test name, ID and link from TestRail:
Email or phone of affected tester (no customers):
Logs: https://stackoverflow.com/c/expensify/questions/4856
Notes/Photos/Videos: Any additional supporting documentation
https://github.com/Expensify/App/assets/93399543/1bec263b-411c-47c3-92ca-ebdf3e3c929a
https://github.com/Expensify/App/assets/93399543/e8613bde-8a4e-4355-807f-8be7e46a5f1d
Expensify/Expensify Issue URL:
Issue reported by: @dhanashree-sawant
Slack conversation: https://expensify.slack.com/archives/C049HHMV9SM/p1695460599996869
View all open jobs on GitHub
Upwork Automation - Do Not Edit

Upwork Job URL: https://www.upwork.com/jobs/~01e5fc23956be41e7c
Upwork Job ID:<PHONE_NUMBER>412886016
Last Price Increase: 2023-09-25

Cool, closing this one.


'ondemand' systemd service is not disabled when governor option is set to performance or powersave

On Bionic, and probably on Focal, when installing the sysconfig charm, the 'ondemand' service that comes with the 'systemd' package stays enabled by default.
This causes some race condition with the 'cpufrequtils' service, where sometimes the ondemand unit comes last, hence the governor is set to ondemand instead of 'performance' or 'powersave' is set.
We should disable the 'ondemand' service when we set the governor option on the charm, and to have to enable it again when removing the sysconfig charm.
Workaround is to disable 'ondemand' service manually with 'systemctl disable ondemand'.

(by bryanquigley)
Related bug, why not remove ondemand service: https://bugs.launchpad.net/ubuntu/+source/systemd/+bug/1503773.

(by hillpd)
See bug 1806012 for detailed analysis. A merge proposal [0] to address the ondemand - cpufrequtils race stalled and was ultimately rejected. This needs to be revisited and hashed out.
You've already identified the best work-around: disabling the ondemand service.
[0] https://code.launchpad.net/~joalif/ubuntu/+source/systemd/+git/systemd/+merge/367469


Aggregate counters

Working plan as discussed offline:

When a worker starts, we start a recursive_directory_inventory_events() channel on it to learn about the counters.
For any file in directory -- say we are opening /var/run/snabb/1234/ --
For any file like /var/run/snabb/foo/bar, if its basename (lib.basename()) has an extension of ".counter", then it's a counter.
So we will receive an event on the channel like {kind='creat', name='/var/run/snabb/1234/foo/bar.counter'}
On the manager when we see that, we do counter.open() on that counter, store away that counter somewhere and additionally, periodically we create a corresponding counter in the manager process
e.g. /var/run/snabb/5678/foo/bar.counter.
Where the manager counter = sum of all corresponding worker counters of that name + archived value
as a 64-bit unsigned integer.
When a counter goes away ({kind='rm', name='/var/run/snabb/1234/foo/bar.counter'}) then we add its last value to the archived counter, then remove it from the set of active worker counters
in that way when we do a "snabb top" on the manager process, we should see a sum of all counters from the workers.

So far I've created the channel and added a fiber for listening the directory events.

The issue with the failing bench test is that apparently schedule.shutdown was returning false. It seemed 100 iterations was not enough. I changed the function to shutdown all tasks until there's no more scheduled. I don't know if that's the right change or just simply should have increased the number of iterations.


Error thrown when used with expo-sqlite package

Question
I've successfully used react-native-ble-plx with past projects, but with my current project I receive the following error when calling npx react-native run-android:
* What went wrong:
Execution failed for task ':app:mergeDebugNativeLibs'.
> A failure occurred while executing com.android.build.gradle.internal.tasks.Workers$ActionFacade
   > File 'com.android.builder.files.ZipCentralDirectory@35c33e4d' was deleted, but previous version not found in cache

It appears that this is caused by the expo-sqlite package being installed. When I remove this package everything works as expected.
Any ideas what's going on? Is this a bug or do I need to modify my setup?

AFAIK this library does not use anything connected to sqlite. Never encountered such problem.

I took another look at the problem this morning. By reinstalling all my packages the error has now disappeared! Apologies for the red herring.


How to configure fans which only has increase/decrease buttons?

This is not a bug, but rather a question. The thing is, I see many fans in the default codes but all of them seem to support remotes that has specific buttons for each speed. In my case, I have a remote which only has the "increase" and "decrease" buttons. I wonder how I should configure SmartIR to handle this case.

All these remotes also has increase and decrease buttons, not numbers. But the thing is- codes they send really don't send "increase speed" command, but rather specific set of rules. In fact, any of the remotes button do this.
You can check it this way: set your AC to some mode, then block your remote (just block IR light by hand) and press "increase" a few times. Then open the light and press "increase" 1 more time. If your AC will go to the same more which your remote displays- it's supported by smartir and does right what I explained before

My remote is actually RF and not IR. Maybe that explains.

Same principal applies usually

Hi, I got the same situation with this issue.
The remote (IR) has a single button for on and increase speed (3 levels). If the current speed is at level 3 the speed will go back to level 1 again.
I try to make a PR to support this device, but not sure in the json file, what should be set in speed and default command ? Since there is no specific code for level 1,2,3

Same issue here with Honeywell fan. The remote has a On/Off button, swing button and speed button. When pressing speed it increases and loop back to slow when the fastest speed has been reached.

All these remotes also has increase and decrease buttons, not numbers. But the thing is- codes they send really don't send "increase speed" command, but rather specific set of rules. In fact, any of the remotes button do this.
You can check it this way: set your AC to some mode, then block your remote (just block IR light by hand) and press "increase" a few times. Then open the light and press "increase" 1 more time. If your AC will go to the same more which your remote displays- it's supported by smartir and does right what I explained before

Yeah, so it turns out that it's not the case for me. I think both my controller and my fan aren't smart enough for this. I had to resort to some tricky solutions like a Python script for controlling the fan speed, by iterating through the number of times it has to press the button (https://github.com/iml885203/HA-FanSpeedControl).
But I think it would be great if this feature could be part of SmartIR so more people could benefit of it.

My remote is actually RF and not IR. Maybe that explains.

If your AC will go to the same more which your remote displays- it's supported by smartir and does right what I explained before

My controller hasn't a display.

Thanks a lot for the explanation though.
I guess, as the name implies, I can only use SmartIR with IR controlled devices, lol.

I control the same device with a Broadlink RM Pro 3 and it works with SmartIR


updates transaction list and transactions deatils ui

Addresses:
#5194
#5218

For inputs and outputs, I think having the red icon for inputs and green for outputs makes more sense. Also would make sense to show the value of each input.


Pyproj Update needed for windows 10 64 and python

To Whom it May Concern:.
Please could somebody update and fix issues for pyproj as it now complete out dated !!
As i needed it for project and pip can't install it !!

There are no binaries wheels on PyPI for pyproj. You'll have to use Gohlke's binaries,
https://www.lfd.uci.edu/~gohlke/pythonlibs/#pyproj
of conda to get a compiled version. The alternative is to compile it yourself but I do not recommend that on Windows.

Refer to #216


Remove unused ref to hostnetwork in cpo role

What this PR does / why we need it:
The control-plane-operator Role has a rule to allow use of the hostnetwork SCC, but the control-plane-operator actually runs under the restricted-v2 SCC.
This change removes the unused rule.
Which issue(s) this PR fixes (optional, use fixes #<issue_number>(, fixes #<issue_number>, ...) format, where issue_number might be a GitHub issue, or a Jira story:
Fixes #
Checklist

[x] Subject and description added to both, commit and PR.
[ ] Relevant issues have been referenced.
[ ] This change includes docs.
[ ] This change includes unit tests.

/approve
/lgtm
/override "Red Hat Konflux / hypershift-operator-bf4t9 / hypershift-main-enterprise-contract"


AUBESS ZigBee Smart Plug Socket EU 16A/20A With Power Monitor For Tuya

Hi. I would like to get support for this plug:
Product ID: TS011F
Supplier ID: _TZ3000_hdopuwv6

@frode1814 if you know how to install the app from cli using homey app install you can add the support yourself by editing files from this repo / SDK3 branch. I have forked repo with my Zignito / Ajax Smart Plug added, so I could add it for you and then you can clone it and install. Up to you.

Added to next update


[Bug]: No connection to server

Application
Outline Client
Describe the bug
Hello. When I want to connect to any Outline keys, it says “The access key is invalid. If this error occurs again, please contact the user who provided it” The same keys work on Android. I can't figure out what the error is
Steps to reproduce

Open the application
Press the "Connect" button
The message appears  “The access key is invalid. If this error occurs again, please contact the user who provided it”

What did you expect to happen?
No response
What actually happened?
No response
Outline Version
1.12.1 (471860)
What operation system are you using?
Windows
Operating System Version
Windows 11 Pro Insider Preview Build 26020
Screenshots and Videos
No response

I wrote to you in the application that is installed on my desktop. My reference number is 00605384. I went to support.getoutline.org, alas, my problem is not there, they can’t help me
On Monday, 25 March 2024 at 18:29:40 GMT+3, Daniel LaCosse<EMAIL_ADDRESS>wrote:

Thank you for reaching out! Please submit feedback through the application on the device where you’re experiencing this issue – or contact us at support.getoutline.org – and include the GitHub issue number so that we can better support your needs.
If you haven’t already, check out the Outline Support Site at support.getoutline.org for access to help articles and more.
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you authored the thread.Message ID: @.***>


Wrong version endpoint

Getting the version is giving 404 errors, and only the UI version is showing up in the footer.

Seems that the endpoint is wrong?

Related to #690


Invite to POETs sprint March 17, 24, 31

(Please forward) Rob Fatland is inviting you to a scheduled Zoom meeting.
Agenda in brief

Sprint objectives (both today and thru March 31)
POETs Scope Review

Audiences
POETs management team
Issue handling

Integration: From Course to Pangeo Resource
Review POETs structure

What is there, what is missing?

Notes (Google Doc, Comment mode)
Topic: Pangeo Education (POETS)
Time: Mar 17, 2020 10:00 AM Pacific Time (US and Canada)
Every week on Tue, until Mar 31, 2020, 3 occurrence(s)
Mar 17, 2020 10:00 AM
Mar 24, 2020 10:00 AM
Mar 31, 2020 10:00 AM
Please download and import the following iCalendar (.ics) files to your calendar system.
Weekly: https://washington.zoom.us/meeting/u5UtduCgpz8p0uMqohs1OA9wpr2GOUTvrw/ics?icsToken=98tyKu-prjojEt2Rs1yCZ7ItA6_qbuG5kiFbh7JSlAy0LAEKdRPkZMVtB4ZpAs-B
Join Zoom Meeting
https://washington.zoom.us/j/610198943
Meeting ID: 610 198 943
One tap mobile
+16699006833,,610198943# US (San Jose)
+13462487799,,610198943# US (Houston)
Dial by your location
+1<PHONE_NUMBER> US (San Jose)
+1<PHONE_NUMBER> US (Houston)
+1<PHONE_NUMBER> US
+1<PHONE_NUMBER> US (Chicago)
+1<PHONE_NUMBER> US (New York)
+1<PHONE_NUMBER> US
Meeting ID: 610 198 943
Find your local number: https://washington.zoom.us/u/aWqVO6xSL
Join by SIP
<EMAIL_ADDRESS>Join by H.323
<IP_ADDRESS> (US West)
<IP_ADDRESS> (US East)
<IP_ADDRESS> (China)
<IP_ADDRESS> (India Mumbai)
<IP_ADDRESS> (India Hyderabad)
<IP_ADDRESS> (EMEA)
<IP_ADDRESS> (Australia)
<IP_ADDRESS> (Hong Kong)
<IP_ADDRESS> (Brazil)
<IP_ADDRESS> (Canada)
<IP_ADDRESS> (Japan)
Meeting ID: 610 198 943

Our third very casual sprint call is today at 10am PDT at this zoom link
These are very casual calls owing to circumstances so if you are a POET feel free to drop by and check in on the Pangeo outreach / training program. My agenda is in two parts:

Represent the Pangeo spectrum as it pertains to a new person learning the stack
Capture your perspective and/or what you are doing to contribute to said


Permission exception if I call GetCurrentPosition before calling Start/Stop

Your Environment

Plugin version: 1.8.0 (from master as of 6/21/2018)
Platform: Android
OS version: 8.1
Device manufacturer / model:  Pixel 2 or emulator.  Both have the issue.
Android SDK Tools: 26.1.1
Android SDK Build Tools: 27.0.3
Nativescript version (tns info):

√ Getting NativeScript components versions information...
‼ Update available for component nativescript. Your current version is 4.1.0 and the latest available version is 4.1.1.
√ Component tns-core-modules has 4.1.0 version and is up to date.
√ Component tns-android has 4.1.3 version and is up to date.
× Component tns-ios is not installed.

Plugin config

BackgroundGeolocation.getCurrentPosition(function(location) {
            // This location is already persisted to plugin’s SQLite db.
            // If you’ve configured #autoSync: true, the HTTP POST has already started.
            console.log("- Current position received: ", location);
          }, function(errorCode) {
            alert('An location error occurred: ' + errorCode);
          }, {
            timeout: 30,      // 30 second timeout to fetch location
            maximumAge: 5000, // Accept the last-known-location if not older than 5000 ms.
            desiredAccuracy: 10,  // Try to fetch a location with an accuracy of `10` meters.
            samples: 3,   // How many location samples to attempt.
            extras: {         // [Optional] Attach your own custom `metaData` to this location.  This metaData will be persisted to SQLite and POSTed to your server
              foo: "bar"
            }
          });

I tried adding the getCurrentPosition call in the success event of config but the error persisted.
BackgroundGeolocation.setConfig({
  desiredAccuracy: 10,
  distanceFilter: 10
}, function() {
  console.log('set config success');
}, function() {
  console.log('failed to setConfig');
});

Expected Behavior

Should automatically set permissions so we can call GetCurrentPosition without starting/stopping the background service.
Actual Behavior

Does not set permissions and throws exception.
An uncaught Exception occurred on "GoogleApiHandler" thread.
java.lang.SecurityException: Client must have ACCESS_COARSE_LOCATION or ACCESS_FINE_LOCATION permission to perform any location operations.
	at android.os.Parcel.readException(Parcel.java:2004)
	at android.os.Parcel.readException(Parcel.java:1950)
	at com.google.android.gms.internal.zzeu.zza(Unknown Source:10)
	at com.google.android.gms.internal.zzcfa.zzif(Unknown Source:9)
	at com.google.android.gms.internal.zzcfd.getLastLocation(Unknown Source:19)
	at com.google.android.gms.internal.zzcfk.getLastLocation(Unknown Source:2)
	at com.google.android.gms.location.zzg.zza(Unknown Source:2)
	at com.google.android.gms.common.api.internal.zze.zza(Unknown Source:8)
	at com.google.android.gms.common.api.internal.zzbo.zzb(Unknown Source:9)
	at com.google.android.gms.common.api.internal.zzbo.zzaiw(Unknown Source:82)
	at com.google.android.gms.common.api.internal.zzbo.onConnected(Unknown Source:16)
	at com.google.android.gms.common.internal.zzac.onConnected(Unknown Source:2)
	at com.google.android.gms.common.internal.zzn.zzakr(Unknown Source:131)
	at com.google.android.gms.common.internal.zze.zzw(Unknown Source:64)
	at com.google.android.gms.common.internal.zzi.zzaks(Unknown Source:52)
	at com.google.android.gms.common.internal.zzh.handleMessage(Unknown Source:270)
	at android.os.Handler.dispatchMessage(Handler.java:106)
	at android.os.Looper.loop(Looper.java:164)
	at android.os.HandlerThread.run(HandlerThread.java:65)

Steps to Reproduce

tns create MyTestApp --tsc
cd MyTestApp
tns plugin add nativescript-background-geolocation-lt
tns platform remove android
tns platform add android
I added the getCurrentPosition call in the onTap event in the template installed.
tns run android
tap button
(Optional) - I tried running config first before calling getCurrentPosition but the error persists.

Context

Get Current Position without background tracking.  We have a use case that depending on user settings they may be tracked in the background or may not but we do need to get their current position based on certain actions taking in the application.
Debug logs

error.log

I have a big refactor coming soon.  The Android plugin now handles perrmissions internally within plugin.

Thanks for your response. We knew you had a big refactor coming with the Cordova version but we weren't sure about the NativeScript version.  We are switching from Cordova to NativeScript.  Starting and stopping the bg service before calling getCurrentPosition is our current work around.  We will do that while we wait on the new version.

It’s pretty much ready.  I’m going to publish a beta tomorrow.

1.9.0-beta.2 is now published.

1.9.0.beta.3 released.  Be sure to do this.

Closing this old issue.


BFD: Data Ratios: SNF

Requested Feature
RIF export ratios need adjustment:

ratio of types of claims overall
ratio of claim types per bene
ratio of lines per claim type

Claim Ratio = Claim of Type / Claim Total across all types
Synthea Total:  1,054,589,695
Actual Total:  23,195,755,891

Table
Claim % (Synthea)
Claim % (Actual)
Notes

snf
0.29
0.16

Table
Average Line/Claim (Synthea)
Average Line/Claim (Actual)
Notes

snf
103.6
8.02
vastly overrepresented proportions in Synthea

"Actual" counts as of analysis time.

Table
Count

beneficiaries
83,178,011

snf_claims
36,724,616

snf_claim_lines
294,853,836

Full data analysis for all tables is here: https://github.com/synthetichealth/synthea/wiki/RIF-Data-Analysis

Work on this issue is in PR #1118.

Based on a sample of 10k beneficiaries after #1118 was applied, average lines per claim is now 8.34.

Claim Lines Per Claim

Synthetic
Real

Claims per Beneficiary

Synthetic
Real


test(ci): cache generated paths between runs

Cache should get busted with updates to tools.

Saves a 3MB cache https://github.com/pypi/warehouse/actions/runs/4213507608/jobs/7313255076#step:17:3

Post job cleanup.
/usr/bin/tar --posix -cf cache.tgz --exclude cache.tgz -P -C /home/runner/work/warehouse/warehouse --files-from manifest.txt -z
Cache Size: ~3 MB (2879970 B)
Cache saved successfully
Cache saved with key: Linux-pip-314e524033bf3b8fa92eb8db3ee92c2d1f80b5685c47b7212293759caf99e703


FortiOS SNMP Community Removal

SNMP Communities are not removed from FortiOS devices:
config system snmp community
    edit 100
        set name "communityXYZ"
    next
end

Netconan line-by-line and is oblivious to the type of file it's anonymizing or the multi-line structures therein.
I don't see how we can possibly catch this case -- set name "foo" is too generic. It's used for naming all kinds of things in FortiOS configs.
The best way to handle this is probably to add your secrets of this type to the list of reserved words. Then they will be one-way hashed.

Netconan line-by-line and is oblivious to the type of file it's anonymizing or the multi-line structures therein.
I don't see how we can possibly catch this case -- set name "foo" is too generic. It's used for naming all kinds of things in FortiOS configs.
The best way to handle this is probably to add your secrets of this type to the list of reserved words. Then they will be one-way hashed.


Predicate expression with optional key path throws error

Hello!
I'm using PredicateExpressions to build dynamically build predicates. I'm getting an exception when creating a PredicateExpressions.KeyPath with a keypath like \Dummy.optionalSub?.optionalString where both optionalSub and optionalString are optional values. The exception is:
Predicate does not support keypaths with multiple components

This message is a bit misleading as a predicate with a keypath like \Dummy.sub.optionalString, where only optionalString is optional, can be created without issue.
If optionalSub is made non-optional, the expression can be created.
Am I not creating the expressions correctly, or am I running into an issue here?
I've created a sample project showing the issue here: https://github.com/ordo-one/external-reproducers/tree/main/swift/predicate-optional-keypath.

This message is a bit misleading as a predicate with a keypath like \Dummy.sub.optionalString, where only optionalString is optional, can be created without issue.

I think this behavior that you're seeing is actually unintentional. I'll take a look at the sample project, but this construction should also produce the same fatal error. We likely have a bug in the check that we do for valid key paths that incorrectly lets this one through - thanks for catching that!

Am I not creating the expressions correctly, or am I running into an issue here?

PredicateExpressions.KeyPath is designed to only support a single component of a keypath. This enables introspection of each component of the keypath while walking the predicate expression tree (since KeyPath itself isn't introspectable). The #Predicate macro takes care of splitting keypaths into individual components (if you have a predicate that looks like #Predicate { $0.foo.bar} you'll see that there are two build_KeyPath calls, one for \.foo and one for \.bar) so you'll want to take care to construct predicates dynamically in the same manner. In your case you'll want to create one keypath operator for the \.optionalString keypath and one operator for the \.optionalSub keypath.
As for the optional handling within a keypath, the #Predicate macro handles this by using the PredicateExpressions.OptionalFlatMap operator. You can do the same thing by dynamically constructing a flat map operator to represent the optional chaining that is part of your keypath. The OptionalFlatMap operator will allow you to provide one input that produces an optional value (the \.optionalSub keypath operator) and a closure that provides an operator to execute if the value was non-nil (the \.optionalString keypath operator).

Thanks @jmschonfeld.
I'm able to use PredicateExpressions.OptionalFlatMap as you recommend—as long as I know the type of the key paths.
In my project the key paths are provided in runtime and are partially type erased. This has worked fine when dealing with a generic root type and some simple properties like Ints, because I can cast the type erased key paths from PartialKeyPath<RootType> to KeyPath<RootType, Int>, etc. But when the key paths are a chain KeyPath<RootType, LeafType?> & KeyPath<LeafType, Int>, I run into issues.
I created a sample project here: https://github.com/ordo-one/external-reproducers/blob/main/swift/predicate-optional-keypath2/Sources/PredicateKeyPathProviding.swift.
The idea is that the user of my API would provide key paths through a protocol, that I can then use to create predicates. Since the key paths can be of varying types, they are type erased with PartialKeyPath and AnyKeyPath when returned from the protocol method.
I suppose this is more of a question about key paths than it is about predicates, but any advice would be much appreciated, thanks!

You're definitely on the right track! Two things from your sample code to take a look at:

On Line 65: The type of the parameter ofType is LeafType, but you're providing Root.Leaf.self. This ends up causing LeafType to be Root.Leaf.Type.Type. Instead, you likely want ofType: LeafType.Type so that LeafType represents the Metatype of the leaf, and not the Metatype of the Metatype of the leaf. Making this change causes the first cast to succeed.
On Line 73 this cast fails because the keypath is a KeyPath<Leaf, Int?> but you're casting it to a KeyPath<Leaf, Int>. Changing Int to Int? on this line causes the cast to succeed. The remainder of the function compiles because when you create a Value(1) the type of 1 is inferred to be Int? instead of Int (based on the return type of PredicateExpressions.KeyPath and the same type constraint imposed by PredicateExpressions.Equal.

With those two changes, your sample code code executes successfully. Does that help?

Thanks @jmschonfeld. That definitely helps!
I've updated the sample project at https://github.com/ordo-one/external-reproducers/blob/main/swift/predicate-optional-keypath2/Sources/PredicateKeyPathProviding.swift so it now compiles.
However, my original goal of doing this while agnostic of the types remain. In the updated sample, both workingType and failingType resolve to the same Leaf in runtime, but failingType is type erased so I can't pass it to createPredicate2(). I assume I need to keep the type information somehow, but not sure how to go about it. Any ideas? Thanks!

Thanks @jmschonfeld—I will try to test this in Swift 6.

@jmschonfeld I've now tested this with the Swift 6 with ImplicitOpenExistentials turned on, and can happily report that it works there.
I updated my example at https://github.com/ordo-one/external-reproducers/blob/main/swift/predicate-optional-keypath2/Sources/PredicateKeyPathProviding.swift. The code inside #if hasFeature(ImplicitOpenExistentials) now works as expected.

#if hasFeature(ImplicitOpenExistentials)
        let predicate3 = factory.createPredicate2(rootType: Root.self, leafType: failingType)

        print("predicate3=\(predicate3)")
#else
      func body<Value>(_: Value.Type) -> Value.Type { Value.self }
      let predicate3 = factory.createPredicate2(
        rootType: Root.self,
        leafType: _openExistential(
          failingType,
          do: body
        )
      )

      print("predicate3=\(predicate3)")
#endif

@axelandersson AFAIK _openExistential (referenced by @jmschonfeld) is the legit workaround to compile this on 5.10… but there might be another solution I do not know about (other than waiting for 6.0 to ship).

@vanvoorden Thanks! For future reference I have updated the example at https://github.com/ordo-one/external-reproducers/blob/main/swift/predicate-optional-keypath2/Sources/PredicateKeyPathProviding.swift so it now works both with ImplicitOpenExistentials and _openExistential.

Revisiting this issue with a tangentially related problem—though let me know if it belongs in a new issue.
I have the following code:
struct Root {
    struct Leaf {
        let optionalValue: Int?
    }

    let optionalLeaf: Leaf?
}

let predicate1 = #Predicate<Root> {
    if $0.optionalLeaf == nil {
        true
    } else {
        false
    }
}

Which expands to this code:
let predicate2 = Foundation.Predicate<Root>({
    PredicateExpressions.build_Conditional(
        PredicateExpressions.build_Equal(
            lhs: PredicateExpressions.build_KeyPath(
                root: PredicateExpressions.build_Arg($0),
                keyPath: \.optionalLeaf
            ),
            rhs: PredicateExpressions.build_NilLiteral()
        ),
        PredicateExpressions.build_Arg(
            true
        ),
        PredicateExpressions.build_Arg(
            false
        )
    )
})

I get this build error:
Referencing static method 'build_Equal(lhs:rhs:)' on 'Optional' requires that 'Root.Leaf' conform to 'Equatable'

Leaf is not Equatable and I don't necessarily want to make it conform either. In regular Swift code this comparison is of course possible without Equatable.
@jmschonfeld Is it possible to make a nil checking predicate expression without Equatable?
Full project: https://github.com/ordo-one/external-reproducers/blob/main/swift/predicate-optional-keypath3/Sources/PredicateOptionalKeyPath.swift


[Feruchemy] Unable to compound Nicrosil

Issue description
Possibly only happens while storing. May not be an issue when tapping.
Steps to reproduce

store f-nicrosil while you also have allomantic nicrosil and other powers
try turn on compounding, via a-nicrosil

You will be unable to, as a-nicrosil is missing.
Minecraft version
1.19.2 (Latest)
Forge version
43.1.3
Cosmere version
Latest
Other relevant versions
No response
If a (crash)log is relevant for this issue, link it here: (It's almost always relevant)
No response

Part of a bigger problem with f-nicrosil, which we don't have working like in canon. Compounding changes will have to wait till after we update and fix f-nicrosil.


RCON closes with error, no error stack

Description of Issue
Every now and then RCON will close with an error, but without an error stack log line,
[RCON][1] Disconnecting from: <IP_ADDRESS>:21114
[RCON][1] Socket closed with an error.
[RCON][1] Disconnected from: <IP_ADDRESS>:21114
[SquadServer][1] Setting up new RCON instance...
[RCON][1] Connecting to: <IP_ADDRESS>:21114
[RCON][1] Connected to: <IP_ADDRESS>:21114
[RCON][1] Authentication succeeded.

From here:
https://github.com/Team-Silver-Sphere/SquadJS/blob/dc2bc1d663fb5b4aecab39d9072ef51dad089fae/core/rcon.js#L180
I would expect to see Logger.verbose('RCON', 1, Socket had error:, err);
Errors or Screenshots of Issue
Squad Information

SquadJS Version: 3.6.1
Squad Version: 4.1

If potentially relevant, please provide regarding the state of the Squad server at the time of error, e.g. the current layer.
System Information

Operating System: Linux
NodeJS Version: Node14
Yarn Version: N/A

I believe this may be due to us missing an 'end' event from the TCP socket, where the squad server has closed its side for whatever reason; though I'm still confused as to why we never see the error surface.
I had noticed this in previous versions of squadjs, but generally when our server had died off in the night.
https://nodejs.org/api/net.html#event-end
https://github.com/Team-Silver-Sphere/SquadJS/blob/dc2bc1d663fb5b4aecab39d9072ef51dad089fae/core/rcon.js#L35

https://github.com/Team-Silver-Sphere/SquadJS/blob/dc2bc1d663fb5b4aecab39d9072ef51dad089fae/core/rcon.js#L172
Is this ternary backwards?

Yeah, that's backwards.
I checked the node documentation to rule out, that the parameter was poorly named.
https://nodejs.org/api/net.html#event-close_1

Event: 'close'
Added in: v0.1.90

hadError <boolean> true if the socket had a transmission error.

Emitted once the socket is fully closed. The argument hadError is a boolean which says if the socket was closed due to a transmission error.

Yeah, that's backwards.
I checked the node documentation to rule out, that the parameter was poorly named. https://nodejs.org/api/net.html#event-close_1

Event: 'close'
Added in: v0.1.90

hadError  true if the socket had a transmission error.

Emitted once the socket is fully closed. The argument hadError is a boolean which says if the socket was closed due to a transmission error.

Yeah, thought so.
One thing I noticed, is with squadjs RCON timeout values, if we get blocked or broken in RCON (see #200 ) eventually squad will force close the socket; this is why I was wondering about us missing an "end" listener.
With the fixes in #267 (which is still missing the above listener!) we shouldn't ever timeout due to the 30 second polling loops we have.
I can remember helping someone else with an RCON tool and they had a similar issue with RCON closing if they didn't send a command for multiple minutes.

Hi, I just want to start that I don't have technical knowledge about this stuff.
I am currently experiencing this issue since February 20, 2022 UTC+8, I'm just sharing the date since that day and the day before I haven't changed anything in the settings nor installed any new plugins. It just began showing up on logs on that day.
What I see in the logs are these lines, and keeps happening non-stop:
[RCON][1] Connecting to: <IP_ADDRESS>:21114
[RCON][1] Connected to: <IP_ADDRESS>:21114
[RCON][1] Authentication succeeded.
[RCON][1] Socket closed with an error.
[RCON][1] Sleeping 5000ms before reconnecting.
[RCON][1] Connecting to: <IP_ADDRESS>:21114
[RCON][1] Connected to: <IP_ADDRESS>:21114
[RCON][1] Authentication succeeded.

In our Squad's logs, these shows too:
[2023.02.24-19.22.09:810][140]LogRCONServer: Warning: 1073142:HandleListenerConnectionAccepted(): Client is attempting multiple logins from <IP_ADDRESS>, stopping older sessions
[2023.02.24-19.22.09:832][141]LogRCONServer: 1073896:CloseConnection(): Closing socket for <IP_ADDRESS>:36788
[2023.02.24-19.22.14:822][365]LogRCONServer: Warning: 1073142:HandleListenerConnectionAccepted(): Client is attempting multiple logins from <IP_ADDRESS>, stopping older sessions
[2023.02.24-19.22.14:822][365]LogRCONServer: 1073897:CloseConnection(): Closing socket for <IP_ADDRESS>:36812
[2023.02.24-19.22.19:835][590]LogRCONServer: Warning: 1073142:HandleListenerConnectionAccepted(): Client is attempting multiple logins from <IP_ADDRESS>, stopping older sessions
[2023.02.24-19.22.19:835][590]LogRCONServer: 1073902:CloseConnection(): Closing socket for <IP_ADDRESS>:36836
[2023.02.24-19.22.24:847][815]LogRCONServer: Warning: 1073142:HandleListenerConnectionAccepted(): Client is attempting multiple logins from <IP_ADDRESS>, stopping older sessions
[2023.02.24-19.22.24:847][815]LogRCONServer: 1073903:CloseConnection(): Closing socket for <IP_ADDRESS>:36860
[2023.02.24-19.22.29:837][ 39]LogRCONServer: Warning: 1073142:HandleListenerConnectionAccepted(): Client is attempting multiple logins from <IP_ADDRESS>, stopping older sessions
[2023.02.24-19.22.29:859][ 40]LogRCONServer: 1073904:CloseConnection(): Closing socket for <IP_ADDRESS>:36882

What I tried so far:

I was initially running the changes in #267 and decided to change it back with the original version of the file and it still kept showing.
I reinstalled SquadJS, no custom plugins and all plugins set to false. Yet, it still showing those error.
I even tried changing my rcon password assuming that it got leaked but still the same.
Turned up verbosity level for RCON and SquadServer and attached the file here in Discord RCON.
Setting MaxConnections in RCON.cfg in Squad's config files to MaxConnections=4096. I am still requesting to add this in the arguments instead.

I hope someone can help enlighten me with the issue.


Run as administrator hotkey

Description of the new feature / enhancement
Press the shortcut key while clicking on the program to run it as administrator
在点击程序的同时按下快捷键，就能以管理员身份运行
Scenario when this would be used?
Improved efficiency when adjusting programs
调整程序的时候能够提高效率
Supporting information
No response

This is built into Windows.  Shift+Ctrl when interacting on an application icon tends to be that "power" interaction.
Does that not work?  Can you give me a bit more of where you're doing the interactions?  /needinfo


Method to ensure decoding output contain all input sequences?

Great work! Did you use any methods to enforce that the decoder outputs contained all the input sentences or did the model just learn that from the training data you provided? If yes, could you point me to the relevant code? I will cite your paper, thanks!

We did not use any specific constraints to enforce the output. However, you can add constraints during training/inference such that the decoded output lie within the max number of sentences within an input.

I see, so am I understanding correctly that in your case the model learned from training data by it self to generate a reordering of all the markers while not generating any duplicates?

Yes it worked perfectly for small inputs where the number of sentences were low (e.g. ROCDatasets), we did observe some degenerate output for larger inputs in some cases. We considered the accuracy and other metrics to be zero for those instances.

I see, thank you very much for your clarification!


[Question] Error when trying to convert "income statement" object to a data frame

Hello,
When I tried to convert the "income statement" object to a data frame using the following statement, I got an error message saying  "AttributeError: 'Statement' object has no attribute 'to_dataframe'. Did you mean: 'get_dataframe'?".
company = Company('AAPL')

# Get the 10 most recent 10-Ks
company_10Ks = company.get_filings(form="10-K").latest(10)

for i in range(0, len(company_10Ks)):
    dataframe_10Ks = company_10Ks[i].obj().income_statement.to_dataframe()

The code used to work. So, I was wondering whether the API has changed.
In addition, when I tried the sample code below. I received the same error message.

Thank you very much for your help!

Hi,
It looks like the error occurs because you're calling get_balance_sheet and then trying to apply .to_dataframe() on it. However, since get_balance_sheet is a method, you should call it like this: financials.get_balance_sheet().
If you want to access balance_sheet as an attribute. Here’s the corrected code:
balance_sheet_df = financials.balance_sheet.to_dataframe()
This should work because balance_sheet is likely an attribute that contains the data you want and has the .to_dataframe() method available.
Let me know if you need any further help!

So the Financials are completely rewritten and it looks like in the rewrite the method was changed from to_dataframe to get_dataframe. I will look at changing the docs, or maybe alias the function. Let me think about it.
At the very least I will change the documentation.
Can you use get_dataframe?

Ghedo44 and dguning, thank you both for your help!
Combining the suggestions from both of you, I was able to fix the problem and make the code work. Pasted it below
from edgar import *

set_identity("unparadise<EMAIL_ADDRESS>
tenk = Company("AAPL").get_filings(form="10-K").latest(1).obj()
financials = tenk.financials

# using get_income_statement as a method
income_statement = financials.get_income_statement()

# convert to dataframe
income_statement_df = income_statement.get_dataframe()

print(income_statement_df)

@dgunning, would like to let you know that the following example in the document generates an error that says "AttributeError: 'Financials' object has no attribute 'balance_sheet'. Did you mean: 'get_balance_sheet'?


Update ssm to 2.26.11 in scala-steward-dependencies

About this PR
📦 Updates software.amazon.awssdk:ssm from 2.26.8 to 2.26.11
Usage
✅ Please merge!
I'll automatically update this PR to resolve conflicts as long as you don't change it yourself.
If you'd like to skip this version, you can just close this PR. If you have any feedback, just mention me in the comments below.
Configure Scala Steward for your repository with a .scala-steward.conf file.
Have a fantastic day writing Scala!

⚙ Adjust future updates
Add this to your .scala-steward.conf file to ignore future updates of this dependency:
updates.ignore = [ { groupId = "software.amazon.awssdk", artifactId = "ssm" } ]

Or, add this to slow down future updates of this dependency:
dependencyOverrides = [{
  pullRequests = { frequency = "30 days" },
  dependency = { groupId = "software.amazon.awssdk", artifactId = "ssm" }
}]

labels: library-update, early-semver-patch, semver-spec-patch, commit-count:1

Superseded by #107.


folder empty and the folder check grayed out

The project folder shows empty from the left explorer sidebar, and if I right click on it, it shows the Folders option checked and grayed out as in the following image

In Explorer view the Folders section is always shown. It cannot be turned off.
It is empty until you open a folder.


Filesystem tweaks

Eliminate synchronous fs calls
Allow for fs in browser

Actually instead of adding and using the mutex dependency, the full wallet is already queuing tasks single threaded using this.module.queueTask.
I think we'd want to use this same mechanism, to ensure that the save is also queued behind scheduled wallet operations.

Right, maybe this is why it was sporadically erroring for me.
It is best if you will do that as you are more familiar with queueing

Want me to remove the mutex part?

Want me to remove the mutex part?

Yes please.

It is best if you will do that as you are more familiar with queueing

This:
await this.mutex.runExclusive(async () => {
  ...
});

Should be perfectly replaceable with this:
await this.module.queueTask(async () => {
 ...
});

this.module is not defined in MoneroWalletFullProxy. what should be used there?

The proxy will call into the non-proxied class, which will handle the queuing, so it's not necessary in the proxy.

No, currently these are direct calls in the proxy:
  async moveTo(path) {
    return MoneroWalletFull.moveTo(path, this);
  }

  async save() {
    return MoneroWalletFull.save(this);
  }

Ah, you're right. In that case, we can avoid adding the mutex dependency by using the existing ThreadPool class, which is used by queueTask() under the covers, so makes sense to use it for the same purpose:
const pool = new ThreadPool(1);
await pool.submit(async () => {
 ...
});

what do you think?

Done

I have published my fork of indexeddb-fs as the original was lacking the unlink anyway, restored to use rename without unlinking as my fork overwrites the target

Hey I'm finally looking into all this. Apologies for the delay; it's been a ride publishing Haveno's code.
So I was looking at these filesystem changes in more detail, and now I'm wondering if we can use memfs instead.
Memfs is already used to run tests in the browser: https://github.com/woodser/monero-ts/blob/039d11dd5198cd5bd6c74815c3263f896e3f797e/src/test/utils/TestUtils.ts#L75
It's Node.js compatible so should work for everyone?
Additionally, I'm considering moving save and moveTo to be just another instance method on MoneroWalletFull, instead of a static utility accessed by both the wallet and its proxy wrapper. This would solve the issue where you needed to add LibraryUtils.queueTask, since this.module.queueTask can be called instead.
However, doing this will mean the filesystem cannot be passed as an overridable parameter, because the filesystem parameter cannot be passed over the web worker proxy. So essentially memfs will be hardcoded for browser operations.
Do you think that would be acceptable or is it essential that the FS be overridable?

Actually, maybe the filesystem should not be accessed within web workers, since each web worker has its own filesystem, unless using shared storage APIs.
But we could still use memfs instead of a modified indexeddb-fs if I'm not mistaken.

monujo.cash wallet does make use of my modified indexeddb-fs to store the wallet sync data, and does it good. I am not making any preferences, any fs-compatible lib based on promises shall work

Does it have persistency between browser window refreshes?

Nope, it's purely in memory. Clients would be expected to persist to storage APIs manually or by passing a custom a filesystem.
I have this branch in progress with the latest filesystem updates: https://github.com/woodser/monero-ts/pull/225
I've tested it with webpack and Next.js, trying to get vite working.

Right, so memfs seems to be more like a shim for the library's needs. What shall end users use to persist their wallet state then?

Sorry to say, but you are solving the issue without solving it

I didn't think the purpose of this issue was to persist to storage APIs, but instead to fix the compatibility for doing so. #225 switches to async filesystem operations based on the promises API, removes html5-fs, calls unlink before rename, and fixes the issue with concurrent saves.
Maybe another change to support persisting directly to storage APIs can/should be a follow-up PR.

I think this should be stated explicitly somewhere in readme, that users do need to choose their fs/promises-compatibe browser implementation of fs and configure their webpack/rollupt to use it

I didn't think the purpose of this issue was to persist to storage APIs, but instead to fix the compatibility for doing so. #225 switches to async filesystem operations based on the promises API, removes html5-fs, calls unlink before rename, and fixes the issue with concurrent saves.
Maybe another change to support persisting directly to storage APIs can/should be a follow-up PR.

Indeed my work was to generalize the fs handling and replace the synchronous node:fs calls with asynchronous fs-like library calls for a user to drop-in

tbh I do not root for my fork of indexeddb-fs, I do not like it personally, it just works for me. if there'd be better choices, I'd consider an alternative

With the async filesystem changes, and using unlink before rename, indexeddb-fs should be a drop in replacement without any modifications, hopefully I have that right?

#225 is ready to be merged as far as I know. Please let me know if you see any further changes needed.

It tuned out that memfs has an excellent fs-compatible wrapper over OPFS. I have wrapped it into a small drop-in replacement package which can be put into next.js config file:
config.resolve.alias.fs = "@mainnet-pat/opfs";

will be dropping indexeddb-fs in favor for opfs

It tuned out that memfs has an excellent fs-compatible wrapper over OPFS. I have wrapped it into a small drop-in replacement package which can be put into next.js config file:
config.resolve.alias.fs = "@mainnet-pat/opfs";

will be dropping indexeddb-fs in favor for opfs

Good to know this option also exists for clients.

These changes have been incorporated in https://github.com/woodser/monero-ts/pull/225 and released in v0.10.0. Thanks very much for your help! :)


Removing shebang in python files that are not meant to be executed

The best practice calls for executable scripts, such as those with shebang, to have their execution bits set.
Among other things, this helps to immediately highlight them as scripts in the file system.

Hi @jpodivin could you provide me some references about the claims "it's best practice to set permission for scripts with shebang"? I'm a bit chilly to change those permissions to be honest. The modified files are never executed on there own. Scrips in ./utils are executed using make style / make quality commands and the CLI one is used by huggingface-cli.
I would be fine merging a PR that removes the shebang from the files you've referenced though. I don't think they have any purpose to be used on their own.

The general approach, mostly for ease of use, is to set execution bits on files that are meant to be executed, and provide shebang in scripts so that the right interpreter can be chosen for them. When the bit is missing, it usually indicates that the permissions were not committed properly (that happens way too often), or that filesystem without permissions was used when the files were added (slightly less often). Either way there is little reason to believe it's on purpose and not a mistake, because shebang in non-executable is pretty much useless (you can only run the file if you provide interpreter manually).
I don't really know when it got started, but it's embedded all the way to pre-commit If they are never executed directly they don't need shebang or +x.
The permission bit does have a small, secondary, benefit, in that it simplifies finding executable files.
If these were never meant to be directly executable, and from the looks if it they were not. Removing shebangs is preferrable alternative to make sure it's clear.

Thanks for the more detailed explanation @jpodivin, that makes it much clearer to me. I can confirm that those 4 files are never meant to be executed on their own so the correct fix would be to remove the shebang on those. Would you like to update the PR in that sense? Thanks!

Done. The PR is now just removing shebang.

The docs for this PR live here. All of your documentation changes will be reflected on that endpoint. The docs are available until 30 days after the last update.


Permission language for the branded preprint partners for using the -rXiv extension [EOSF-403]

Purpose
The purpose is to improve preprints UI by adding the permission language to the branded preprint sites.
The branded preprint partners are using the -rXiv extension with permission from Cornell and they need a language on their pages stating such.
engrXiv: "arXiv is a trademark of Cornell University, used under license. This license should not be understood to indicate endorsement of content on engrXiv by Cornell University or arXiv."
SocArXiv: "arXiv is a trademark of Cornell University, used under license."
PsyArXiv: "arXiv is a trademark of Cornell University, used under license. This license should not be understood to indicate endorsement of content on PsyArXiv by Cornell University or arXiv."
The language is showing now below the COS copyright on the UI. See the attached figures.

Changes

Create a new component permission-language.
Create a helper function “eq” to check provider name.
Update the application scss.
Add the new component in the proper place within the larger component preprint-branded-footprint.

Side effects
None expected.
Ticket
https://openscience.atlassian.net/browse/EOSF-403

The screenshot shows copyright 2011-2016. Should that be updated?

Also, be sure to run tests locally before pushing. Your new test was failing.


Forever detected script exited with code: 8

[<IP_ADDRESS>]     at Module.load (module.js:356:32)
at Function.Module._load (module.js:312:12)
at Module.require (module.js:364:17)
at require (module.js:380:17)
at Object.Npm.require (/opt/production/app/programs/server/boot.js:182:18)
at Package (packages/npm-bcrypt/wrapper.js:1:1)
at packages/npm-bcrypt/wrapper.js:1:1
at packages/npm-bcrypt/wrapper.js:1:1
error: Forever detected script exited with code: 8
error: Script restart attempt #96
[<IP_ADDRESS>]
[<IP_ADDRESS>] /opt/production/app/programs/server/node_modules/fibers/future.js:267[<IP_ADDRESS>]
[<IP_ADDRESS>] 	[<IP_ADDRESS>] 	[<IP_ADDRESS>] 	[<IP_ADDRESS>] 	[<IP_ADDRESS>] 	[<IP_ADDRESS>] 	[<IP_ADDRESS>] throw(ex);[<IP_ADDRESS>]
[<IP_ADDRESS>] 	[<IP_ADDRESS>] 	[<IP_ADDRESS>] 	[<IP_ADDRESS>] 	[<IP_ADDRESS>] 	[<IP_ADDRESS>] 	[<IP_ADDRESS>]  [<IP_ADDRESS>]  [<IP_ADDRESS>]  [<IP_ADDRESS>]  [<IP_ADDRESS>]  [<IP_ADDRESS>]  [<IP_ADDRESS>] ^[<IP_ADDRESS>]
[<IP_ADDRESS>] Error: /opt/production/app/programs/server/npm/node_modules/meteor/npm-bcrypt/node_modules/bcrypt/build/Release/bcrypt_lib.node: invalid ELF header[<IP_ADDRESS>]
[<IP_ADDRESS>]     at Module.load (module.js:356:32)[<IP_ADDRESS>]
[<IP_ADDRESS>]     at Function.Module._load (module.js:312:12)[<IP_ADDRESS>]
[<IP_ADDRESS>]     at Module.require (module.js:364:17)[<IP_ADDRESS>]
[<IP_ADDRESS>]     at require (module.js:380:17)[<IP_ADDRESS>]
[<IP_ADDRESS>]     at bindings (/opt/production/app/programs/server/npm/node_modules/meteor/npm-bcrypt/node_modules/bcrypt/node_modules/bindings/bindings.js:76:44)[<IP_ADDRESS>]
[<IP_ADDRESS>]     at Object. (/opt/production/app/programs/server/npm/node_modules/meteor/npm-bcrypt/node_modules/bcrypt/bcrypt.js:3:35)[<IP_ADDRESS>]
[<IP_ADDRESS>]     at Module._compile (module.js:456:26)[<IP_ADDRESS>]
[<IP_ADDRESS>]     at Object.Module._extensions..js (module.js:474:10)[<IP_ADDRESS>]
[<IP_ADDRESS>]     at Module.load (module.js:356:32)[<IP_ADDRESS>]
[<IP_ADDRESS>]     at Function.Module._load (module.js:312:12)[<IP_ADDRESS>]
[<IP_ADDRESS>]     at Module.require (module.js:364:17)[<IP_ADDRESS>]
[<IP_ADDRESS>]     at require (module.js:380:17)[<IP_ADDRESS>]
[<IP_ADDRESS>]     at Object.Npm.require (/opt/production/app/programs/server/boot.js:182:18)[<IP_ADDRESS>]
[<IP_ADDRESS>]     at Package (packages/npm-bcrypt/wrapper.js:1:1)[<IP_ADDRESS>]
[<IP_ADDRESS>]     at packages/npm-bcrypt/wrapper.js:1:1[<IP_ADDRESS>]
[<IP_ADDRESS>]     at packages/npm-bcrypt/wrapper.js:1:1[<IP_ADDRESS>]
[<IP_ADDRESS>] error: Forever detected script exited with code: 8[<IP_ADDRESS>]
[<IP_ADDRESS>] error: Script restart attempt #97[<IP_ADDRESS>]
[<IP_ADDRESS>]
[<IP_ADDRESS>] /opt/production/app/programs/server/node_modules/fibers/future.js:267[<IP_ADDRESS>]
[<IP_ADDRESS>] 	[<IP_ADDRESS>] 	[<IP_ADDRESS>] 	[<IP_ADDRESS>] 	[<IP_ADDRESS>] 	[<IP_ADDRESS>] 	[<IP_ADDRESS>] throw(ex);[<IP_ADDRESS>]
[<IP_ADDRESS>] 	[<IP_ADDRESS>] 	[<IP_ADDRESS>] 	[<IP_ADDRESS>] 	[<IP_ADDRESS>] 	[<IP_ADDRESS>] 	[<IP_ADDRESS>]  [<IP_ADDRESS>]  [<IP_ADDRESS>]  [<IP_ADDRESS>]  [<IP_ADDRESS>]  [<IP_ADDRESS>]  [<IP_ADDRESS>] ^[<IP_ADDRESS>]
[<IP_ADDRESS>] Error: /opt/production/app/programs/server/npm/node_modules/meteor/npm-bcrypt/node_modules/bcrypt/build/Release/bcrypt_lib.node: invalid ELF header[<IP_ADDRESS>]
[<IP_ADDRESS>]     at Module.load (module.js:356:32)[<IP_ADDRESS>]
[<IP_ADDRESS>]     at Function.Module._load (module.js:312:12)[<IP_ADDRESS>]
[<IP_ADDRESS>]     at Module.require (module.js:364:17)[<IP_ADDRESS>]
[<IP_ADDRESS>]     at require (module.js:380:17)[<IP_ADDRESS>]
[<IP_ADDRESS>]     at bindings (/opt/production/app/programs/server/npm/node_modules/meteor/npm-bcrypt/node_modules/bcrypt/node_modules/bindings/bindings.js:76:44)[<IP_ADDRESS>]
[<IP_ADDRESS>]     at Object. (/opt/production/app/programs/server/npm/node_modules/meteor/npm-bcrypt/node_modules/bcrypt/bcrypt.js:3:35)[<IP_ADDRESS>]
[<IP_ADDRESS>]     at Module._compile (module.js:456:26)[<IP_ADDRESS>]
[<IP_ADDRESS>]     at Object.Module._extensions..js (module.js:474:10)[<IP_ADDRESS>]
[<IP_ADDRESS>]     at Module.load (module.js:356:32)[<IP_ADDRESS>]
[<IP_ADDRESS>]     at Function.Module._load (module.js:312:12)[<IP_ADDRESS>]
[<IP_ADDRESS>]     at Module.require (module.js:364:17)[<IP_ADDRESS>]
[<IP_ADDRESS>]     at require (module.js:380:17)[<IP_ADDRESS>]
[<IP_ADDRESS>]     at Object.Npm.require (/opt/production/app/programs/server/boot.js:182:18)[<IP_ADDRESS>]
[<IP_ADDRESS>]     at Package (packages/npm-bcrypt/wrapper.js:1:1)[<IP_ADDRESS>]
[<IP_ADDRESS>]     at packages/npm-bcrypt/wrapper.js:1:1[<IP_ADDRESS>]
[<IP_ADDRESS>]     at packages/npm-bcrypt/wrapper.js:1:1[<IP_ADDRESS>]
[<IP_ADDRESS>] error: Forever detected script exited with code: 8[<IP_ADDRESS>]

I get the same error

I forked this repo and started a new project from this basis,  the deploy script will fix the bcrypt issue automatically
You can just install the mup from here https://github.com/c9s/meteor-up


url for the repo

@larnsce, do we get the url in the citation file for the repo? Dominic needs to be able to cite it and I'd like it to be easily trackable. Can I add https://github.com/Global-Health-Engineering/zurichwastecollection as the url entry? Will it stay as such forever?

@jaktk, yes you can add it. We typically only show the DOI to Zenodo and then from there the website link. Dominic's repo and Zenodo site are currently only WIP/MVP because he needed the actual citation for his thesis. This would cover it.
Once he has submitted his thesis, we will turn the repo into a website and also update the Zenodo entry.
Here is what I shared with him via email:
Referenz (in APA):
Wälti, D., Tilley, E., Tkaczuk, J., & Schöbitz, L. (2023). zurichwastecollection: Zurich (Switzerland) Waste Collection Data (v<IP_ADDRESS>00). Zenodo. https://doi.org/10.5281/zenodo.10039803Wälti, D., Tilley, E., Tkaczuk, J., & Schöbitz, L. (2023). zurichwastecollection: Zurich (Switzerland) Waste Collection Data (v<IP_ADDRESS>00). Zenodo. https://doi.org/10.5281/zenodo.10039803
BibTeX (already in Zotero)
https://www.zotero.org/groups/4445072/global_health_engineering/collections/6UEP3T33

Great, thank you Lars, I must have misunderstood the problem.


[Violation] Avoid using document.write(). Warning

Hi,
I have a Warning on jsqrscanner.nocache.js ( who works like a charm by the way)
jsqrscanner.nocache.js:3 [Violation] Avoid using document.write(). https://developers.google.com/web/updates/2016/08/removing-document-write
Seems to be located on :
function Bb(){var e,f=q,g;ob.write(r+f+s);...
I didn't found anything on that, are you already aware of that ?
Thanks for the job 👍

Thanks, it is a known issue https://github.com/jbialobr/JsQRScanner/issues/12

Hi Janusz,
Thanks for your answer.
Why not specifying this as known issue on your Github ?
Regards,
Patrice.

Le 15 févr. 2021 à 07:52, Janusz Białobrzewski<EMAIL_ADDRESS>a écrit :
Thanks, it is a known issue #12 https://github.com/jbialobr/JsQRScanner/issues/12
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub https://github.com/jbialobr/JsQRScanner/issues/45#issuecomment-778993291, or unsubscribe https://github.com/notifications/unsubscribe-auth/AB2CKLW3P724WPEIPVCMH3TS7DAEDANCNFSM4XTDDJHA.

That is a good idea, thanks.


"REDACTED.app/Frameworks/OPYSDKFPS.framework/OPYSDKFPS” binary file is not permitted

The following error has been reported after building and when attempting upload to TestFlight

Error uploading ipa file: 3605 [Application Loader Error Output]: ERROR: [ContentDelivery.Uploader] Asset validation failed (90171) Invalid bundle structure. The “REDACTED.app/Frameworks/OPYSDKFPS.framework/OPYSDKFPS” binary file is not permitted. Your app cannot contain standalone executables or libraries, other than a valid CFBundleExecutable of supported bundles. For details, visit: https://developer.apple.com/documentation/bundleresources/placing_content_in_a_bundle

The expected workaround of this issue is to remove OPYSDKFPS.framework from the workspace it is unnecessary since we have the .xcframework alternative.


feature/bump dart and package versions

I noticed the other PR now after I posted this PR.
I've further increased the package versions and also fixed the failing test case related to mockito that was mentioned in the other PR.

Resolved by #40 and published


Dependabot: Move grouped Dockerfiles into separate subdirectories

Due to limitations noted in dependabot/dependabot-core#2179, PRs continue to be generated which attempt to flip some Dockerfiles from one container image to another. This results in a mix of intended and unintended changes.
Intended (example):
-FROM golang:1.15.6-alpine3.12
+FROM golang:1.15.7-alpine3.12

Unintended:
-FROM golang:1.15.6
+FROM golang:1.15.7-alpine3.12

To help prevent this bug from affecting future PRs to this project, I plan to separate out all Dockerfiles grouped in one directory path into separate subdirectories. This should hopefully resolve the issue (from this project's perspective).
This change will require updating the Makefile used to build the images, and the Dependabot configuration to duplicate the current stable section, once per each Dockerfile to reflect new paths.

See #202 (source of examples in OP).

See #202 (source of examples in OP).


Update dependency from mypy-lang to mypy

When trying to use a development snapshot of mypy (through pip install git+https://github.com/python/mypy.git\#egg\=mypy), the current setup.py is ignoring the existing mypy installation because it doesn't match mypy-lang, making such use impossible.
Apparently mypy's maintainers managed to get access to mypy in PyPI, and their setup.py now builds using this very name.
This fix consists of dropping the dependency on mypy-lang and adding a new one on mypy requiring version 0.470 or newer, which is the earliest version available on  PyPI for this newly named package.

:+1: apparently the old version does not support all options documented at https://mypy.readthedocs.io/en/latest/config_file.html

big +1, it also makes it unusable with Python3.6 - sadly

Would love to see this merged: currently using @lastmikoi fork to get around this.

Me too. Please review this @dbader

Hey @lastmikoi thanks for the PR and sorry it took me so long to respond.
Let's get this merged—but unfortunately I don't have the time to test if we still play nicely with (private) API exported by mypy.
If anyone wants to provide some help with that, I'd really appreciate it. Basically the goal is to get this plugin working with the latest version of mypy (and I'm not sure if merging this PR is enough.)
Initial reception to this plugin was lukewarm, but if it provides a benefit to some of you I'd love to keep the project going 🙂

Initial reception to this plugin was lukewarm, but if it provides a benefit to some of you I'd love to keep the project going

Probably type annotations still need some time until they gain traction. Good tooling helps with that :)

Glad to hear it, thanks for the quick release after merging !
As for the benefits of this package I also think it's more about providing good tooling for people to adopt mypy. Build it and they will come,  I guess?
I'll make sure to report any issue with mypy latest.


[boost-modular-build-helper] Add missing dependency

Related to https://github.com/microsoft/vcpkg/issues/20769
vcpkg_cmake_configure() and  vcpkg_cmake_install() used in boost-modular-build-helper, however, the dependency port vcpkg-cmake is missing.
See https://github.com/microsoft/vcpkg/blob/master/ports/boost-modular-build-helper/boost-modular-build.cmake#L89
Failures:
CMake Error at installed/x64-windows/share/boost-build/boost-modular-build.cmake:89 (vcpkg_cmake_configure):
  Unknown CMake command "vcpkg_cmake_configure".
Call Stack (most recent call first):
  ports/boost-regex/portfile.cmake:15 (boost_modular_build)
  scripts/ports.cmake:141 (include)

BTW, I just tested it, it doesn't work when I added the dependency vcpkg-config to boost-modular-build-helper and remove the dependency vcpkg-config from boost-regex. So we need extra steps to handle the problem if we add vcpkg-cmake to boost-modular-build-helper.

@PhoebeHui Note that the helper functions are added via vcpkg-cmake-config.cmake - They are definitely loaded for a direct dependency, but probably not for a transitive dependency.

They are definitely loaded for a direct dependency, but probably not for a transitive dependency

@ras0219-msft @strega-nil-ms: Can we please somehow change this behavior? Because we cannot build script chains with this and it is one of the reasons I did not switch qt6 to the new helpers.

I agree that we should not do that; after all, it isn't like this is how headers work. Let me ask around...

Thanks Phoebe!


Build for New adding device winnerlte

(Python 3.8.10 on linux) Traceback (most recent call last):
File "/home/ost268/edk2-msm/Common/edk2/BaseTools/BinWrappers/PosixLike/../../Source/Python/build/build.py", line 2695, in Main
MyBuild.Launch()
File "/home/ost268/edk2-msm/Common/edk2/BaseTools/BinWrappers/PosixLike/../../Source/Python/build/build.py", line 2490, in Launch
self._MultiThreadBuildPlatform()
File "/home/ost268/edk2-msm/Common/edk2/BaseTools/BinWrappers/PosixLike/../../Source/Python/build/build.py", line 2282, in _MultiThreadBuildPlatform
Wa, self.BuildModules = self.PerformAutoGen(BuildTarget,ToolChain)
File "/home/ost268/edk2-msm/Common/edk2/BaseTools/BinWrappers/PosixLike/../../Source/Python/build/build.py", line 2133, in PerformAutoGen
Wa = WorkspaceAutoGen(
File "/home/ost268/edk2-msm/Common/edk2/BaseTools/Source/Python/AutoGen/WorkspaceAutoGen.py", line 43, in init
self._InitWorker(Workspace, MetaFile, Target, Toolchain, Arch, *args, **kwargs)
File "/home/ost268/edk2-msm/Common/edk2/BaseTools/Source/Python/AutoGen/WorkspaceAutoGen.py", line 116, in _InitWorker
self.ProcessModuleFromPdf()
File "/home/ost268/edk2-msm/Common/edk2/BaseTools/Source/Python/AutoGen/WorkspaceAutoGen.py", line 212, in ProcessModuleFromPdf
if self.FdfProfile:
File "/home/ost268/edk2-msm/Common/edk2/BaseTools/Source/Python/Common/caching.py", line 28, in get
Value = obj.dict[self._function.name] = self._function(obj)
File "/home/ost268/edk2-msm/Common/edk2/BaseTools/Source/Python/AutoGen/WorkspaceAutoGen.py", line 188, in FdfProfile
Fdf.ParseFile()
File "/home/ost268/edk2-msm/Common/edk2/BaseTools/Source/Python/GenFds/FdfParser.py", line 1320, in ParseFile
while self._GetFd() or self._GetFv() or self._GetFmp() or self._GetCapsule() or self._GetRule() or self._GetOptionRom():
File "/home/ost268/edk2-msm/Common/edk2/BaseTools/Source/Python/GenFds/FdfParser.py", line 2116, in _GetFv
isFile = self._GetFileStatement(FvObj)
File "/home/ost268/edk2-msm/Common/edk2/BaseTools/Source/Python/GenFds/FdfParser.py", line 2564, in _GetFileStatement
self._GetFilePart(FfsFileObj)
File "/home/ost268/edk2-msm/Common/edk2/BaseTools/Source/Python/GenFds/FdfParser.py", line 2660, in _GetFilePart
raise Warning.ExpectedCurlyClose(self.FileName, self.CurrentLineNumber)
GenFds.FdfParser.Warning: expected '}' near line 6, column 18: "ButtonsDxe"

Failed -
Build end time: 22:17:29, Jan.27 2023
Build total time: 00:00:01

return 1
root@ost268-VirtualBox:/home/ost268/edk2-msm#

looks like a syntax error?

Active Platform          = /home/ost268/edk2-msm/Platform/Samsung/sm8150/winnerlte.dsc
build.py...
: error C0DE: Unknown fatal error when processing [/home/ost268/edk2-msm/Platform/Samsung/sm8150/winnerlte.dsc]
(Please send email to<EMAIL_ADDRESS>for help, attaching following call stack trace!)
(Python 3.8.10 on linux) Traceback (most recent call last):
File "/home/ost268/edk2-msm/Common/edk2/BaseTools/BinWrappers/PosixLike/../../Source/Python/build/build.py", line 2695, in Main
MyBuild.Launch()
File "/home/ost268/edk2-msm/Common/edk2/BaseTools/BinWrappers/PosixLike/../../Source/Python/build/build.py", line 2490, in Launch
self._MultiThreadBuildPlatform()
File "/home/ost268/edk2-msm/Common/edk2/BaseTools/BinWrappers/PosixLike/../../Source/Python/build/build.py", line 2282, in _MultiThreadBuildPlatform
Wa, self.BuildModules = self.PerformAutoGen(BuildTarget,ToolChain)
File "/home/ost268/edk2-msm/Common/edk2/BaseTools/BinWrappers/PosixLike/../../Source/Python/build/build.py", line 2133, in PerformAutoGen
Wa = WorkspaceAutoGen(
File "/home/ost268/edk2-msm/Common/edk2/BaseTools/Source/Python/AutoGen/WorkspaceAutoGen.py", line 43, in init
self._InitWorker(Workspace, MetaFile, Target, Toolchain, Arch, *args, **kwargs)
File "/home/ost268/edk2-msm/Common/edk2/BaseTools/Source/Python/AutoGen/WorkspaceAutoGen.py", line 116, in _InitWorker
self.ProcessModuleFromPdf()
File "/home/ost268/edk2-msm/Common/edk2/BaseTools/Source/Python/AutoGen/WorkspaceAutoGen.py", line 212, in ProcessModuleFromPdf
if self.FdfProfile:
File "/home/ost268/edk2-msm/Common/edk2/BaseTools/Source/Python/Common/caching.py", line 28, in get
Value = obj.dict[self._function.name] = self._function(obj)
File "/home/ost268/edk2-msm/Common/edk2/BaseTools/Source/Python/AutoGen/WorkspaceAutoGen.py", line 188, in FdfProfile
Fdf.ParseFile()
File "/home/ost268/edk2-msm/Common/edk2/BaseTools/Source/Python/GenFds/FdfParser.py", line 1320, in ParseFile
while self._GetFd() or self._GetFv() or self._GetFmp() or self._GetCapsule() or self._GetRule() or self._GetOptionRom():
File "/home/ost268/edk2-msm/Common/edk2/BaseTools/Source/Python/GenFds/FdfParser.py", line 2116, in _GetFv
isFile = self._GetFileStatement(FvObj)
File "/home/ost268/edk2-msm/Common/edk2/BaseTools/Source/Python/GenFds/FdfParser.py", line 2564, in _GetFileStatement
self._GetFilePart(FfsFileObj)
File "/home/ost268/edk2-msm/Common/edk2/BaseTools/Source/Python/GenFds/FdfParser.py", line 2660, in _GetFilePart
raise Warning.ExpectedCurlyClose(self.FileName, self.CurrentLineNumber)
GenFds.FdfParser.Warning: expected '}' near line 6, column 18: "ButtonsDxe"

Failed -
Build end time: 16:50:49, Jan.28 2023
Build total time: 00:00:01

https://github.com/Ost268/edk2-msm
https://github.com/Ost268/edk2-msm-binary

I think the problem may be here https://github.com/Ost268/edk2-msm/blob/master/Platform/Samsung/sm8150/winnerlte.fdf.inc

Building ... /home/ost268/edk2-msm/Common/edk2/MdeModulePkg/Application/UiApp/UiApp.inf [AARCH64]
/usr/bin/aarch64-linux-gnu-ld: помилка: Optimization level must be between 0 and 3
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make: *** [GNUmakefile:415: /home/ost268/edk2-msm/workspace/Build/winnerlte/RELEASE_CLANG38/AARCH64/MdeModulePkg/Application/UiApp/UiApp/DEBUG/UiApp.dll] error 1

Building ... /home/ost268/edk2-msm/Common/edk2/MdeModulePkg/Application/UiApp/UiApp.inf [AARCH64]
/usr/bin/aarch64-linux-gnu-ld: error: Optimization level must be between 0 and 3
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make: *** [GNUmakefile:415: /home/ost268/edk2-msm/workspace/Build/winnerlte/RELEASE_CLANG38/AARCH64/MdeModulePkg/Application/UiApp/UiApp/DEBUG/UiApp.dll] error 1

Please refer to https://github.com/edk2-porting/edk2-msm/pull/197/commits/ce907c749a77abdb7ccc4d18d50f2a9f110b10e8

Active Platform          = /home/ost268/edk2-msm/Platform/Samsung/sm8150/winnerlte.dsc
build.py...
/home/ost268/edk2-msm/Platform/Samsung/sm8150/winnerlte.dsc(...): error 4000: Instance of library class [SerialPortLib] is not found
in [/home/ost268/edk2-msm/Common/edk2/MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf] [AARCH64]
consumed by module [/home/ost268/edk2-msm/GPLDrivers/Library/SimpleInit/src/main/SimpleInitMain.inf]

Failed -
Build end time: 17:16:31, Jan.28 2023
Build total time: 00:00:01

return 1

Building ... /home/ost268/edk2-msm/Common/edk2/MdeModulePkg/Application/UiApp/UiApp.inf [AARCH64]
/usr/bin/aarch64-linux-gnu-ld: error: Optimization level must be between 0 and 3
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make: *** [GNUmakefile:415: /home/ost268/edk2-msm/workspace/Build/winnerlte/RELEASE_CLANG38/AARCH64/MdeModulePkg/Application/UiApp/UiApp/DEBUG/UiApp.dll] error1
build.py...
: error 7000: Failed to execute command
make -s tbuild [/home/ost268/edk2-msm/workspace/Build/winnerlte/RELEASE_CLANG38/AARCH64/MdeModulePkg/Application/UiApp/UiApp]
build.py...
: error 7000: Failed to execute command
make -s tbuild [/home/ost268/edk2-msm/workspace/Build/winnerlte/RELEASE_CLANG38/AARCH64/MdeModulePkg/Bus/Usb/UsbMassStorageDxe/UsbMassStorageDxe]
build.py...
: error F002: Failed to build module
/home/ost268/edk2-msm/Common/edk2/MdeModulePkg/Application/UiApp/UiApp.inf [AARCH64, CLANG38, RELEASE]

Failed -
Build end time: 17:48:19, Jan.28 2023
Build total time: 00:00:29

return 1

Not work

(Python 3.8.10 on linux) Traceback (most recent call last): File "/home/ost268/edk2-msm/Common/edk2/BaseTools/BinWrappers/PosixLike/../../Source/Python/build/build.py", line 2695, in Main MyBuild.Launch() File "/home/ost268/edk2-msm/Common/edk2/BaseTools/BinWrappers/PosixLike/../../Source/Python/build/build.py", line 2490, in Launch self._MultiThreadBuildPlatform() File "/home/ost268/edk2-msm/Common/edk2/BaseTools/BinWrappers/PosixLike/../../Source/Python/build/build.py", line 2282, in _MultiThreadBuildPlatform Wa, self.BuildModules = self.PerformAutoGen(BuildTarget,ToolChain) File "/home/ost268/edk2-msm/Common/edk2/BaseTools/BinWrappers/PosixLike/../../Source/Python/build/build.py", line 2133, in PerformAutoGen Wa = WorkspaceAutoGen( File "/home/ost268/edk2-msm/Common/edk2/BaseTools/Source/Python/AutoGen/WorkspaceAutoGen.py", line 43, in init self._InitWorker(Workspace, MetaFile, Target, Toolchain, Arch, *args, **kwargs) File "/home/ost268/edk2-msm/Common/edk2/BaseTools/Source/Python/AutoGen/WorkspaceAutoGen.py", line 116, in _InitWorker self.ProcessModuleFromPdf() File "/home/ost268/edk2-msm/Common/edk2/BaseTools/Source/Python/AutoGen/WorkspaceAutoGen.py", line 212, in ProcessModuleFromPdf if self.FdfProfile: File "/home/ost268/edk2-msm/Common/edk2/BaseTools/Source/Python/Common/caching.py", line 28, in get Value = obj.dict[self._function.name] = self._function(obj) File "/home/ost268/edk2-msm/Common/edk2/BaseTools/Source/Python/AutoGen/WorkspaceAutoGen.py", line 188, in FdfProfile Fdf.ParseFile() File "/home/ost268/edk2-msm/Common/edk2/BaseTools/Source/Python/GenFds/FdfParser.py", line 1320, in ParseFile while self._GetFd() or self._GetFv() or self._GetFmp() or self._GetCapsule() or self._GetRule() or self._GetOptionRom(): File "/home/ost268/edk2-msm/Common/edk2/BaseTools/Source/Python/GenFds/FdfParser.py", line 2116, in _GetFv isFile = self._GetFileStatement(FvObj) File "/home/ost268/edk2-msm/Common/edk2/BaseTools/Source/Python/GenFds/FdfParser.py", line 2564, in _GetFileStatement self._GetFilePart(FfsFileObj) File "/home/ost268/edk2-msm/Common/edk2/BaseTools/Source/Python/GenFds/FdfParser.py", line 2660, in _GetFilePart raise Warning.ExpectedCurlyClose(self.FileName, self.CurrentLineNumber) GenFds.FdfParser.Warning: expected '}' near line 6, column 18: "ButtonsDxe"

Failed -
Build end time: 22:17:29, Jan.27 2023
Build total time: 00:00:01

return 1
root@ost268-VirtualBox:/home/ost268/edk2-msm#

Build error for any device

Obviously you need to use --fixclang
At the same time, the construction error of the new device should be caused by your own misoperation. I see that you have introduced many useless files. Please also pay attention to the syntax problem,

At the same time, you don't understand what I mean, just copy it blindly, and don't see that it can be used directly
https://github.com/Ost268/edk2-msm/commit/57edfe01c1c50b008ef280aa0aac3918f3bdcd49  You even changed most of the memory mappings, which is likely to cause problems in other devices. You should not change so much
There is no problem with the UEFI startup of r5q. You can refer to r5q and migrate according to the migration guide

Fd File Name:SM8150_UEFI (/home/ost268/edk2-msm/workspace/Build/winnerlte/RELEASE_CLANG38/FV/SM8150_UEFI.fd)
Generate Region at Offset 0x0
Region Size = 0x1000000
Region Name = FV
Generating FVMAIN_COMPACT FV
Generating FVMAIN FV
########################################
########################################
########################################
##############
GUID cross reference file can be found at /home/ost268/edk2-msm/workspace/Build/winnerlte/RELEASE_CLANG38/FV/Guid.xref
FV Space Information
FVMAIN [99%Full] 33987456 (0x2069b80) total, 33987448 (0x2069b78) used, 8 (0x8) free
FVMAIN_COMPACT [40%Full] 16777216 (0x1000000) total, 6751816 (0x670648) used, 10025400 (0x98f9b8) free

Done -
Build end time: 20:22:12, Jan.28 2023
Build total time: 00:02:03

_call_hook platform_build_kernel
local NAME=platform_build_kernel
shift
declare -F platform_build_kernel
eval platform_build_kernel
++ platform_build_kernel
++ cat /home/ost268/edk2-msm/tools/BootShim/BootShim.bin /home/ost268/edk2-msm/workspace/Build/winnerlte/RELEASE_CLANG38/FV/SM8150_UEFI.fd
++ '[' 1 = 0 ']'
++ gzip -c
++ cat /home/ost268/edk2-msm/workspace/uefi-winnerlte.img.gz /home/ost268/edk2-msm/Platform/Samsung/sm8150/FdtBlob_compat/winnerlte.dtb
++ cp /home/ost268/edk2-msm/workspace/uefi-winnerlte.img.gz-dtb /home/ost268/edk2-msm/workspace/uefi-winnerlte-kernel
return 0
_call_hook platform_build_bootimg
local NAME=platform_build_bootimg
shift
declare -F platform_build_bootimg
eval platform_build_bootimg
++ platform_build_bootimg
++ python3 /home/ost268/edk2-msm/tools/mkbootimg.py --kernel /home/ost268/edk2-msm/workspace/uefi-winnerlte-kernel --ramdisk ramdisk --kernel_offset 0x00000000 --ramdisk_offset 0x00000000 --tags_offset 0x00000000 --os_version 12.0.0 --os_patch_level 2022-11 --header_version 1 -o /home/ost268/edk2-msm/boot-winnerlte.img
return 0
echo 'Build done: /home/ost268/edk2-msm/boot-winnerlte.img'
Build done: /home/ost268/edk2-msm/boot-winnerlte.img
set +x

boot after build, memory map failed
Image


fix: fix get table of shards.

Which issue does this PR close?
Closes #
Rationale for this change
Fix some bugs found in release testing.
What changes are included in this PR?

Fix the bug of getTableOfShard, now CeresDB can open shard normally.
Rename deployMode to schedulerOperator.

Are there any user-facing changes?
None.
How does this change test
Pass all unit tests.

Codecov Report

Merging #164 (c40ff18) into main (494e15e) will increase coverage by 1.15%.
The diff coverage is 35.35%.

:exclamation: Current head c40ff18 differs from pull request most recent head 0e2a800. Consider uploading reports for the commit 0e2a800 to get more accurate results

@@            Coverage Diff             @@
##             main     #164      +/-   ##
==========================================
+ Coverage   39.07%   40.23%   +1.15%
==========================================
  Files          33       34       +1
  Lines        4217     4153      -64
==========================================
+ Hits         1648     1671      +23
+ Misses       2317     2257      -60
+ Partials      252      225      -27

Impacted Files
Coverage Δ

server/cluster/metadata/cluster_metadata.go
0.00% <0.00%> (ø)

server/cluster/metadata/table_manager.go
0.00% <0.00%> (ø)

server/cluster/metadata/topology_manager.go
0.00% <0.00%> (ø)

server/cluster/metadata/types.go
0.00% <0.00%> (ø)

server/coordinator/procedure/manager_impl.go
0.00% <0.00%> (ø)

server/coordinator/procedure/util.go
0.00% <0.00%> (-38.89%)
:arrow_down:

server/etcdutil/util.go
45.45% <0.00%> (-6.79%)
:arrow_down:

server/coordinator/factory.go
4.51% <4.51%> (ø)

server/storage/types.go
63.54% <38.23%> (-7.01%)
:arrow_down:

server/storage/storage_impl.go
62.30% <40.00%> (-1.21%)
:arrow_down:

... and 14 more

... and 2 files with indirect coverage changes


DPI aware Splash Screen

WPF splash screen images are not scaled according to the DPI.

Please remove this issues, wrong issue

Closing as this will be tracked in WP repo
https://github.com/dotnet/wpf/issues/947


lncli getinfo showing<PHONE_NUMBER> num_inactive_channels

Background
Closing some channels, opening some. Force close 15+. Was doing maintenance! Then I ran getinfo and saw something weird.
Your environment

version of lnd: 0.5.1-beta commit=v0.5.1-beta-256-089d461552ffc05d7b1c22d603af0fa82e788e85
which operating system (uname -a on *Nix): 3.10.0-957.1.3.el7.x86_64 #1 SMP Thu Nov 29 14:49:43 UTC 2018 x86_64 x86_64 x86_64
version of btcd, bitcoind, or other backend - bitcoind 0.17.1
any other relevant environment details

Steps to reproduce
Run lncli getinfo...
Expected behaviour
0 inactive channels, as I closed all inactive (which was not what I wanted to do but happened any way). In listchannels there were 0 inactive channels.
Actual behaviour
       "version": "0.5.1-beta commit=v0.5.1-beta-256-g089d461552ffc05d7b1c22d603af0fa82e788e85",
       "identity_pubkey": "020e56a13babec99abdc2c4afbe34e1e44230d79b234c059fd4ff1e367765fdb1b",
       "alias": "MiltonPusser.lightningnode.eu",
       "num_pending_channels": 2,
       "num_active_channels": 109,
       "num_inactive_channels":<PHONE_NUMBER>,
       "num_peers": 132,
       "block_height": 560488,
       "block_hash": "00000000000000000016bd943367e0941bf42605145c89ca031bb32e6ae10dae",
       "best_header_timestamp":<PHONE_NUMBER>,
       "synced_to_chain": true,
       "testnet": false,
       "chains": [
               "bitcoin"
       ],
       "uris": [
               "020e56a13babec99abdc2c4afbe34e1e44230d79b234c059fd4ff1e367765fdb1b@<IP_ADDRESS>:9735"
       ]

Fix for this would something along these lines:
channels, err := r.server.chanDB.FetchAllOpenChannels()
if err != nil {
        return nil, err
}

var numActiveChannels uint32
for _, channel := range channels {
        chanID := lnwire.NewChanIDFromOutPoint(&channel.FundingOutPoint)
        if r.server.htlcSwitch.HasActiveLink(chanID) {
                numActiveChannels++
        }
}

numInactiveChannels := uint32(len(channels)) - numActiveChannels


Output HTML Code in "Your Grid Code" window

This PR addresses Issue #60

My approach for handling this was to add a button to toggle between CSS and HTML in the generated Code modal.
For Display formatting, I used the yellow and orange coloring from the CSS.
I haven't worked with i18n before, and added "Show HTML" and "Show CSS" to the en file. Will this break for other languages since they don't have the existing values?

If there was a different approach that would be preferred for handling this, let me know! Love the tool! 😁

Thank you!