Feature request - Prevent Chat edit options keep changing on scroll - Reported by @mdneyazahmad

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 app
Navigate to any chat with multiple messages
Scroll through the chat messages

Expected Result:
Edit options should only be active when a user engages with a line
Actual Result:
The edit options are showing for each messages when user scrolls.  By default, we show them when you hover over a message, so you 'get' to see them all when hovering while your cursor is in the middle of the screen.
Workaround:
unknown
Platform:

Where is this issue occurring?

Web
Desktop

Version Number: 1.1.26-0
Reproducible in staging?: Y
Reproducible in production?: Y
Logs: https://stackoverflow.com/c/expensify/questions/4856
Notes/Photos/Videos: Any additional supporting documentation
https://user-images.githubusercontent.com/43995119/148885642-bd608771-444f-47d3-8ea1-044315860a2e.mov
Expensify/Expensify Issue URL:
Issue reported by: @mdneyazahmad
Slack conversation: https://expensify.slack.com/archives/C01GTK53T8Q/p1641522811073200
View all open jobs on GitHub

Triggered auto assignment to @Christinadobrzyn (AutoAssignerTriage), see https://stackoverflow.com/c/expensify/questions/4749 for more details.

Ah yeah, based on the Slack convo it sounds like we want to move forward with an Upwork job for this.
For Expensify/App GH's I believe the first step is to add the Engineering label then eng will add the External label > to get posted in Upwork.
So adding the engineering label to this!

Triggered auto assignment to @stitesExpensify (Engineering), see https://stackoverflow.com/c/expensify/questions/4319 for more details.

Triggered auto assignment to @NicMendonca (External), see https://stackoverflow.com/c/expensify/questions/8582 for more details.

Upwork job: https://www.upwork.com/jobs/~019e70455bdff93175

Triggered auto assignment to Contributor-plus team member for initial proposal review - @parasharrajat (Exported)

Current assignee @stitesExpensify is eligible for the Exported assigner, not assigning anyone new.

Open to proposals....

Proposal
As the solution steps are cleared for this problem. We have to create a flag to store scrolling state. And disable the options list when the user scrolls.
Solution steps:

Create a flag (isScrolling) to store the scrolling state.
Create a debounce function to reset the isScrolling to false (guaranteed) or else the app will be in inconsistent state.
Update isScrolling to true onScroll, when user stops scrolling it will automatically reset by setState callback function.
Pass isScrolling to ReportActionItem and handle the display based on this and hovered state.

diff --git a/src/pages/home/report/ReportActionItem.js b/src/pages/home/report/ReportActionItem.js
index a737a01b9..0134b1954 100644
--- a/src/pages/home/report/ReportActionItem.js
+++ b/src/pages/home/report/ReportActionItem.js
@@ -156,7 +156,7 @@ class ReportActionItem extends Component {
                             )}
                             <View
                                 style={StyleUtils.getReportActionItemStyle(
-                                    hovered
+                                    (hovered && !this.props.isScrolling)
                                     || this.state.isContextMenuActive
                                     || this.props.draftMessage,
                                 )}
@@ -178,7 +178,7 @@ class ReportActionItem extends Component {
                                 reportAction={this.props.action}
                                 displayAsGroup={this.props.displayAsGroup}
                                 isVisible={
-                                    hovered
+                                    (hovered && !this.props.isScrolling)
                                     && !this.state.isContextMenuActive
                                     && !this.props.draftMessage
                                     && !ReportUtils.isDeletedAction(this.props.action)

diff --git a/src/pages/home/report/ReportActionsView.js b/src/pages/home/report/ReportActionsView.js
index 32832c920..1e345ffbc 100755
--- a/src/pages/home/report/ReportActionsView.js
+++ b/src/pages/home/report/ReportActionsView.js
@@ -98,6 +98,7 @@ const defaultProps = {
     myPersonalDetails: {},
 };

+
 class ReportActionsView extends React.Component {
     constructor(props) {
         super(props);
@@ -114,6 +115,7 @@ class ReportActionsView extends React.Component {
         this.didLayout = false;

         this.state = {
+            isScrolling: false,
             isMarkerActive: false,
             localUnreadActionCount: this.props.report.unreadActionCount,
         };
@@ -128,6 +130,8 @@ class ReportActionsView extends React.Component {
         this.toggleMarker = this.toggleMarker.bind(this);
         this.updateUnreadIndicatorPosition = this.updateUnreadIndicatorPosition.bind(this);
         this.updateLocalUnreadActionCount = this.updateLocalUnreadActionCount.bind(this);
+
+        this.updateScrollState = _.debounce(this.updateScrollState.bind(this), 100);
     }

     componentDidMount() {
@@ -203,6 +207,10 @@ class ReportActionsView extends React.Component {
             return true;
         }

+        if(nextState.isScrolling !== this.isScrolling) {
+            return true;
+        }
+
         return false;
     }

@@ -462,6 +470,16 @@ class ReportActionsView extends React.Component {
     trackScroll({nativeEvent}) {
         this.currentScrollOffset = -nativeEvent.contentOffset.y;
         this.toggleMarker();
+
+        this.setState({isScrolling: true}, () => {
+            this.updateScrollState();
+        });
+
+
+    }
+
+    updateScrollState() {
+        this.setState({isScrolling: false});
     }

     /**
@@ -530,6 +548,7 @@ class ReportActionsView extends React.Component {
                 isMostRecentIOUReportAction={item.action.sequenceNumber === this.mostRecentIOUReportSequenceNumber}
                 hasOutstandingIOU={this.props.report.hasOutstandingIOU}
                 index={index}
+                isScrolling={this.state.isScrolling}
             />
         );
     }

How can we utilize ReportScrollManager here? Another thing is that when you stop scrolling on an item, the mini menu should show on that item.

How can we utilize ReportScrollManager here? Another thing is that when you stop scrolling on an item, the mini menu should show on that item.

I think slack has the same behaviour. And ReportScrollManager. I have to check it. However, I try to find a native solution but unfortunately some of ScrollView props are supported on web.

How can we utilize ReportScrollManager here? Another thing is that when you stop scrolling on an item, the mini menu should show on that item.

I think slack has the same behaviour.  I have to check it ReportScrollManager.However, I try to find a native solution but unfortunately some of ScrollView props are supported on web.

proposal
Add variable lastScrollTimespan on ReportScrollManagerl and export it.
in trackScroll we set the value of lastScrollTimespan each time this function being called and scroll move:
https://github.com/Expensify/App/blob/7e50a8d04d58f732db69e127b60515702700bd63/src/pages/home/report/ReportActionsView.js#L462-L465
In Hoverable we add isReportView properties
https://github.com/Expensify/App/blob/7e50a8d04d58f732db69e127b60515702700bd63/src/pages/home/report/ReportActionItem.js#L151
Inside Hoverable we import the lastScrollTimespan.
If isReportView active, set this.setIsHovered(true) if difference of current time span with lastScrollTimespan is more than let's say around 200 or 300 (can be configured).

Hoverable is a generalized component and it is not good to add unrelated props to it.

createRef to hoverable element.
Add onMouseEnter and onMouseLeave properties to hoverable. If this two props is exist use this two function as mouse enter and mouse leave event  handler on Hoverable view. (If not just use the existing function).
Provide onMouseEnter and onMouseLeave in reportActionItem.
Use setIsHovered of created ref of hoverable element,  inside onMouseEnter and onMouseLeave.
`

Hoverable component is not the right target. Could you please find some other way to do it?

Waiting for proposals...

How can we utilize ReportScrollManager here? Another thing is that when you stop scrolling on an item, the mini menu should show on that item.
@parasharrajat

If we add, along with my initial proposal https://github.com/Expensify/App/issues/7121#issuecomment-1011185451, inside componentShouldUpdate, it will display the menu when scroll stops. I am not sure about ReportScrollManager. Could you elaborate?
// File: src/pages/home/report/ReportActionItem.js

 || this.props.isScrolling !== nextProps.isScrolling;

https://user-images.githubusercontent.com/77761491/149355530-39e344cd-e582-41fb-89c5-e1f6d58f3b24.mov

|| this.props.isScrolling !== nextProps.isScrolling;

it will render all of the list items on the chat list. So NO.

I am not sure about ReportScrollManager. Could you elaborate?

you can take https://github.com/Expensify/App/issues/7121#issuecomment-1011229033 as an example.

I have a very random solution,

In ReportActionItem, we add a property, disableOptionsMenu (or some other name) based on which we don't trigger the options or allow trigger
The above prop will be set in ReportActionView, by adding a state variable, isListBeingScrolled
State value isListBeingScrolled,  will be set by

<InvertedFlatList
    onScrollEndDrag={() => this.setState({ isListBeingScrolled: false })}
    onScrollBeginDrag={() => this.setState({ isListBeingScrolled:  true })}/>

I have updated my proposal.

I will check them shortly...

<InvertedFlatList
    onScrollEndDrag={() => this.setState({ isListBeingScrolled: false })}
    onScrollBeginDrag={() => this.setState({ isListBeingScrolled:  true })}/>

@mananjadhav these two props are not supported on web and as you declare isListBeingScrolled in ReportActionView. It will re-render the entire FlatList item when it updates.

@K4tsuki has the best proposal so far.
Here are a few suggestions to improve.

Why don't we create an event listener onHover in the ReportActionItem so that when the user stops scrolling and on hover is fired. that listener can wait to check if scrolling is stopped and then show the menu.

https://upmostly.com/tutorials/react-onhover-event-handling-with-examples
There is no onHover event in react. The article use onMouseLeave and onMouseEnter, like in Hoverable.
Are we really want to add onMouseLeave and onMouseEnter in ReportActionItem?
My proposal is to supply onMouseLeave and onMouseEnter function for Hoverable from ReportActionItem.
So it can defer changing hovered state and do something like:

that listener can wait for a small interval to check if scrolling is stopped and then show the menu.

That is what I am proposing above.

There is no onHover event in react. The article use onMouseLeave and onMouseEnter, like in Hoverable.

Is Hoverable a native export from React-Native + Web?
If the answer is NO! Let me know if this sounds like that it can help https://github.com/Expensify/App/blob/56ef069322465b4025c4b2fd38bb86f9df95162f/src/components/Hoverable/hoverablePropTypes.js#L18

https://github.com/Expensify/App/blob/56ef069322465b4025c4b2fd38bb86f9df95162f/src/components/Hoverable/index.js#L51-L60
onHoverIn or onHoverOut is called after setState of isHovered inside setIsHovered(called on each onMouseEnter and onMouseLeave). So it is late  to use this callback, isHovered state is already changed and menu is displayed if isHovered is true.

Yup, That's true.
But what if we start a listener when onHoverIn is fired for a few ms and see if the user stopped scrolling at the end of that ms and if so, force the menu rendering on ReportActionItem. If the user was never scrolling then we don't need to start the listener.

@K4tsuki Do you think we can do the above?

Please wait ...

Any update @K4tsuki

I have tried, based on @parasharrajat suggestion it works.
Here is the change:
onHoverIn:
ReportScrollManager.setCurrentlyHoveredReportActionItem(this);
if (isScrollRunning) {
  this.state.isHovered && this.setIsHovered(false);
}

In ReportScrollManager add:
let isScrollRunning = false;
let activeHoveredItem = null;

const setScrollOff = _.debounce( () => {
    isScrollRunning = false;
    activeHoveredItem.setIsHovered(true);
}, 300);

function setScrollIsRunning() {
    activeHoveredItem.setIsHovered(false);
    isScrollRunning = true;
    setScrollOff();
}

function setCurrentlyHoveredReportActionItem(item) {
    activeHoveredItem = item;
}

export {
    isScrollRunning,
    setScrollIsRunning,
    setCurrentlyHoveredReportActionItem,
};

In trackScroll add ReportScrollManager.setScrollIsRunning()
Result:
https://user-images.githubusercontent.com/1313124/153115866-a96ee913-6889-4cf0-84a2-ad3a0ce0deb5.mp4

Thanks for the updated proposal @K4tsuki. This is one of the ways to do it. But I was hoping to do it differently as follows:

In ReportActionItem, in onHoverIn.
We check ReportScrollManager.isScrolling.
If No, we create a  debounce function call.
No when debounce function is called after 300 ms, It again checks if ReportScrollManager.isScrolling. If  ReportScrollManager.isScrolling === false and currentItem is Hovered. Then we show the menu.

I got your idea too. Which one do you think is better and why? Let's do some reasoning here first then I will post the same on Slack to get some votes.

@parasharrajat I have tried using your suggestion:
onHoverIn() {
  this.willShowMiniContext = _.debounce(() => {
    if (!isScrollRunning) {
      this.setIsHovered(true);
    }
  }, 500);

  if (isScrollRunning) {
    this.state.isHovered && this.setIsHovered(false);
  }
}

This doesn't work:
https://user-images.githubusercontent.com/1313124/153555294-2e65100c-5387-41b9-95d7-031b4c26840f.mp4

@K4tsuki Could you please post your final complete proposal so that I can review it?

@parasharrajat my proposal similar to this.
But need the right placement of the functions/variables.
Should I make libs for ReportActionItem Utils? (Will contain callback for trackscroll start and end).
In ReportScrollManager, Should I make function to register callback when trackScroll start and trackScroll stop?
What do you think about it?

I think you can add those in ReportScrollManager. I saw your proposal but it is unclear due to the discussion. I am asking you to put together all the steps and code changes in one place for easy picking. Thanks.

@parasharrajat based on your suggestion to add the functions in ReportScrollManager, then this is my proposal.
Is there anything wrong with that code?

I think there is some misunderstanding here. I was trying to get the complete steps as a proposal. That code could be fine but it would be helpful for review if you can:

Write the steps that you will take to solve it.
Reference the code links where you will do changes.
etc.

You already shared this info in previous comments. I am just asking to accumulate them in one post for other reviewers. :bow:

Thanks for sharing it @K4tsuki.

@K4tsuki will no longer be working on this issue, so we need a new contributor here

I assigned myself as CM as I'll be compensating @K4tsuki since they were hired before we chose to not work with them.

@parasharrajat or @stitesExpensify do you want to finish this issue or should I reopen to contributors?

K, Thanks Rajat, you're assigned, I removed the Help Wanted label

@K4tsuki paid $250

Looks like @parasharrajat is working on the PR

I will finish it up asap.

Do you have an update @parasharrajat , looks like the PR is still a draft

I will push it live in 2 hours.

Looks like this still needs to be pushed live @parasharrajat, bumping to Daily to help prioritize

Yup, I will update the recordings asap. PR is ready.

Didn't get time to complete the PR today. I think the code can be cleaned a bit on the PR and PR is also introducing a new pattern so I will ask for a general review on slack after marking it ready.

Hi @parasharrajat any update here?

I will push the updates tomorrow.

Working on the PR.

PR is live.

PR is in progress.

@parasharrajat , has the PR been waiting 8 days for changes from you?

Yes. i have tried a couple of things but still need to figure out the requested changes.

PR updated

@parasharrajat are you waiting for a reply here? https://github.com/Expensify/App/pull/8342#pullrequestreview-974123203

Seems like so. I will update the PR to the latest in some time.

@parasharrajat , can you reply to this comment in the PR plz
https://github.com/Expensify/App/pull/8342#issuecomment-1142618392

@parasharrajat looks like the PR is back on you

Will take this up tomorrow.

It got slipped my mind. Running a few tests and merging main into for review. Thanks for the ping.

Same update, PR still in review.

Still in review.

Still in review

Remains in review.

still in review

@stitesExpensify can you review the PR, been quite a while https://github.com/Expensify/App/pull/8342#issuecomment-1208242997

Okay so I refreshed myself on the PR and we are having performance issues with the solution. This seems like a very difficult problem to solve, and I don't think that it is worth fixing.
IMO we should close this and pay @parasharrajat for his time. It's not a glaring issue and is not significantly affecting user experience. Thoughts @mallenexpensify

Man... after 8 months, I'm not sure.  That said, I haven't heard much chatter about this being an issue so closing is likely fine.  Getting a gut check in #expensify-open-source, Shawn (one of our designers) suggests :donothing: so I have a feeling we'll close this tomorrow and pay @parasharrajat a whopping $250 (that's what you're owed, right?)


Add Colour Swatches for Overlay

Bug Description

Expected Behaviour
See Figma
Steps to Reproduce

Screenshots

Do not alter or remove anything below. The following sections will be managed by moderators only.
Acceptance Criteria
QA Instructions

@jauyong duplicate of #1207?

closing due to duplicate


Enabled support for multiple sln files

Fixed bug where each additional piped file would add to the list of parameters for the nuget restore call. Each file is now added to a local array instead of pushing to a global array.

Hi, I'm on holiday at the moment...I'll look at this when I'm back.

pong


Automatic "deployment" of artifacts to release doesn't work

Describe the bug
As described by @bbunzeck, not all artifacts are automatically added to releases. Instead, manual upload is necessary.
To reproduce the bug
Check upon release.
Expected behavior
All artifacts for all platforms end up on the release page.
Additional context
May be to do with the split-up of builds across OS (MacOS needs to sign on an OS system). May be a race condition.

@thomaskrause Should we close this for now as we have a separate release workflow for macOS?

Yes, since the release workflow now produces also a working macOS artifact, we can close this.


Extending tag model for custom scopes

Is there a way to extend the tag model that this gem provides? If so, a quick code example would be good.
I want to add a postgres search scope so that I can use tsearch/pg_search to do an autocomplete for tags.
Thanks

@the-teacher I noticed https://github.com/mbleigh/acts-as-taggable-on/issues/508 which seemed to imply that you had managed to extend the tag model using a concern so that you could add your own slug and validation.
Can you advise what code needs to go in what files to do that. I assume that's what I need to do to be able to add my own custom scopes or is there an even simpler approach somehow.
Thanks

@amnesia7
hello! Sorry, but this task is out of my scope at this moment. Answer was not found. I solved this task with my own tags implementation (if I can remember it correctly). I can't do any advice how to improve this code.
Good luck!

Closing this because I decided the easiest way was to just put some custom .where and .order in my tags controller instead. I still think it might be good if the tags model was extendable though.

@amnesia7
You can do this (just did myself). This is the example I followed: http://blog.paulrugelhiatt.com/ruby/rails/2014/10/27/rails-admin-custom-action-example.html


NET-IFUP-IFDOWN: Fix waiting for SSH during test, new ip would get value 'False'

Related to #477
When running test on Hyper-V Get-IPv4AndWaitForSSHStart can return false, (which is expected as the test reloads hv_netvsc and takes the interface up and down repeatedly during the test) but it is not handled properly and leads to $allVmData.PublicIP = $False
this happens when the VM is issued a different ip over dhcp

After change:
Expected behavior as ip is changing:
07-25-2019 12:37:08 : [ERROR] Wait-ForVMToStartSSH: VM did not start SSH within timeout period (30)
07-25-2019 12:37:08 : [ERROR] Get-IPv4AndWaitForSSHStart: Failed to connect <IP_ADDRESS> port 22 within timeout period (30)
[...]
07-25-2019 12:38:54 : [ERROR] Wait-ForVMToStartSSH: VM did not start SSH within timeout period (30)
07-25-2019 12:38:54 : [ERROR] Get-IPv4AndWaitForSSHStart: Failed to connect <IP_ADDRESS> port 22 within timeout period (30)

[LISAv2 Test Results Summary]
Test Run On           : 07/25/2019 12:34:16
VHD Under Test        : Ubuntu-18.04-gen1.vhdx
Initial Kernel Version: 4.15.0-46-generic
Final Kernel Version  : 4.15.0-46-generic
Total Test Cases      : 1 (1 Passed, 0 Failed, 0 Aborted, 0 Skipped)
Total Time (dd:hh:mm) : 0:0:6

   ID TestArea             TestCaseName                                                                TestResult TestDuration(in minutes)
-------------------------------------------------------------------------------------------------------------------------------------------
    1 NETWORK              NET-IFUP-IFDOWN                                                                   PASS                  4.7

@juhlee-microsoft please re-check this and merge the PR.


update docs to include pointer to sample-app source code

Hi, thank you for this great work here.
In reviewing what you have posted here for kubernetes-vault, I am able to get this project running using your deployment quickstart.
I was trying to find the location of where the sample-app source code and Dockerfiles were located and found them buried under: cmd/sample-app
Thank you!

Hey @cmosetick ! Thanks for your interest in this project, I am glad that you found it useful 😄
I am not quite sure what you meant. The project is published as a bunch of docker images so that you can use them directly. The "entrypoints" of the binaries are placed in the cmd folder, because it's convention for programs written in the Go language to put each "main" program under the cmd folder. Let me know if this makes sense.

Yeah, thanks very much for the clarification here. Closing this issue.


Make ConnectivityMgr().SetDelegate(&gDiagnosticDelegate) survive through  CHIP stack is shut down and restarted

Problem
void MatterGeneralDiagnosticsPluginServerInitCallback()
{
registerAttributeAccessOverride(&gAttrAccess);
PlatformMgr().SetDelegate(&gDiagnosticDelegate);
ConnectivityMgr().SetDelegate(&gDiagnosticDelegate);

}
SetDelegate depends on being called once per process execution. It will not work right if it's called more than once as things stand. If the CHIP stack is shut down and restarted (e.g. via PlatformManager::Shutdown and then a new InitChipStack, etc), either this function will get called again, in which case the attribute access interface bit will be broken, or it will not be called again, in which case are these delegates going to be set up right?
Member
Author
@yufengwangca yufengwangca 2 hours ago
MatterGeneralDiagnosticsPluginServerInitCallback should be called only once during the lifetime of per process execution. Do we have the scenario we shut down the CHIP stack and restart the CHIP stack without restarting the process? If there is the case, then "registerAttributeAccessOverride(&gAttrAccess);" will also not get called, we are not registering the handle for these platform attributes.
Member
@bzbarsky-apple bzbarsky-apple 1 hour ago
MatterGeneralDiagnosticsPluginServerInitCallback should be called only once during the lifetime of per process execution.
That is the intent, I think... It happens to not be true in practice right now; see #11352
Do we have the scenario we shut down the CHIP stack and restart the CHIP stack without restarting the process?
Yes, absolutely.
If there is the case, then "registerAttributeAccessOverride(&gAttrAccess);" will also not get called,
Yes, but shutting down the stack does not unregister attr access overrides, so this part is fine.
But in general, we need to decide what the call frequency guarantees are around these callbacks and then make sure that everything in them is operating correctly given those frequency guarantees. Right now, if we actually change MatterGeneralDiagnosticsPluginServerInitCallback to be once-per-process-lifetime this code would break.
Proposed Solution
<suggested fix, suggested enhancement>

@vivien-apple

Currently, shutting down the stack does not unregister delegate, so after PlatformManager::Shutdown and then a new InitChipStack, the delegate is still there until another SetDelegate is called

https://github.com/project-chip/connectedhomeip/pull/16085

I don't understand.  There were no code changes made in #16085.  @yufengwangca what am I missing?


Enable custom profiling interval via CLI flag (#357)

Issue: #357 (guest profiler support originally added in https://github.com/fastly/Viceroy/pull/301)
This PR adds the ability to pass a profiling interval to Viceroy, e.g. --profile=guest,/tmp/path,25 will set the profiling sample interval to 25 ms.
Open question(s):

It looks like wasmtime will parse the time including units, e.g. --profile=guest,/some/path,25ms. This PR assumes milliseconds by default. I can either add a small parse_duration helper function or use the humantime crate (used by wasmtime, so already an implicit project dependency) to stay consistent with wasmtime. Thoughts?
EDIT: I've added support for humantime, but if this is not preferable I'm happy to revert the latest change.
In Viceroy, the default sampling interval is set to be 0.05 ms (50 microseconds). The default interval in wasmtime appears to be 10 ms. Should Viceroy's default be changed?
Current CLI tests do not test anything related to profiling, I'm not sure how valuable those tests would be but I can certainly try to write something to cover the functionality/changes in this PR.

Hi @katef, I moved this from draft to 'ready for review'. Please let me know if this looks alright!


"global name 'in_hull' is not defined" in utils.py: error while sunrgb setup

While running sunrgbd_data.py
Getting below error:
"global name 'in_hull' is not defined" in utils.py
Please help

The same problem @charlesq34
Please help

Hi,
I am not @charlesq34 , but you can use the same function defined for Kitti here:
https://github.com/charlesq34/frustum-pointnets/blob/889c277144a33818ddf73c4665753975f9397fc4/kitti/prepare_data.py#L23

Thank a lot @PranjaLBiswas27

Thanks a lot @PranjaLBiswas27.

#69
@PranjaLBiswas27
Could you provide pre-trained weights for SUNRGBD dataset if you have?

@PranjaLBiswas27 For training and validation, I don't think we need FPN, since it is taking xmin,ymin,xmax,ymax from labels itself while we create pickle file for training and testing in sunrgb_data.py
See below lines of code:
https://github.com/charlesq34/frustum-pointnets/blob/2ffdd345e1fce4775ecb508d207e0ad465bcca80/sunrgbd/sunrgbd_data/sunrgbd_data.py#L191
https://github.com/charlesq34/frustum-pointnets/blob/2ffdd345e1fce4775ecb508d207e0ad465bcca80/sunrgbd/sunrgbd_data/utils.py#L19
Only for testing, we need to get detections.

Yes FPN needs 2D ground truth labels for proposing frustums. What weights are you asking for in that case?

@PranjaLBiswas27 I am asking for the final trained weights for predicting 3d bounding boxes using frustum pointnet while training on SUNRGBD dataset.
If you have, please provide?
For 2d detector, I can use some other pre-trained weigths

@gangooteli , Yes that is what I mentioned, I did not train FPN (predicts 3D bounding boxes) on SUNRGBD dataset. FPN network is required for training and validation as well and not just for training contrary to what you have mentioned. Check,

sunrgbd_detection/train_one_hot.py: Calls fpnv1 for training.
sunrgbd_detection/test_one_hot.py: Calls fpnv1 for testing.

@PranjaLBiswas27 Thanks got what you are saying.
Confused as FPN(Feature Pyramid Network) is 2d detector if you will read Frustum research paper.
FPN(predicts 3d bounding box) which you are taking is basically frustum point network.


I wish /docs/admin/nodes/ would exist as it is linked in http://kubernetes.io/docs/reference/

I wish /docs/admin/nodes/ would exist as it is linked in http://kubernetes.io/docs/reference/

Fixed.  Thanks!


Instead go with evaluation_mode

Sets an evaluation_mode instead under prepare_model, that will let torch.compile remain as well.

The docs for this PR live here. All of your documentation changes will be reflected on that endpoint.


Add documentation on how to contribute

Hello there,
I know its super early to add such request as the repository has been created ~10h ago. However, I am deeply interested in contributing to this project. I have authored a general machine learning framework for .NET and I am also a researcher on computer vision currently working with Keras, TensorFlow and Theano. So I might know a thing or two on both the .NET and TensorFlow camps, and I am offering to help on whatever is needed (in my free time, though).
Cesar

Good point Cesar.
I will try to put something together, right now I am doing a line-by-line port of the C API test suite:
https://github.com/tensorflow/tensorflow/blob/master/tensorflow/c/c_api_test.cc
Into the sample program, to exercise the API.  As I do that, I am both finding opportunities to improve the API (like the recent indexers - I like then very much) as well as mistakes I made on the API.
I will start filing Issues to track tasks and ideas.

I have both updated the README with guidance, as well as filed a number of issues as I did the binding.
The binding is almost done, with only some fringe features missing, and I am now switching my attention to improving the API usability from C# and F#.


Add FCLayer and refactor FCStack to use it

Code Pull Requests
Please provide the following:

a clear explanation of what your code dose
if applicable, a reference to an issue
a reproducible test for your PR (code, model definition and data sample)

Documentation Pull Requests
Note that the documentation HTML files are in docs/ while the Markdown sources are in mkdocs/docs.
If you are proposing a modification to the documentation you should change only the Markdown files.
api.md is automatically generated from the docstrings in the code, so if you want to change something in that file, first modify ludwig/api.py docstring, then run mkdocs/code_docs_autogen.py, which will create mkdocs/docs/api.md .

Looks great, thanks


Provide Target ID

Currently we don't expose any function that returns this data
See related issue

Closed by #15


Article page

Features

Implements Card
Use Card in ViewedArticle
Implements ArticleCard that uses Card

Used in article page (figma)
Calculates text height and show "Expand" only when needed

Use ArticleCard in article page

Bugfix

Fix gaps between FeedbackFormcontrols

iOS < 14.7 does not support flexbox gap
We use ordinary margin for irregular layouts and display: grid + grid-auto-flow: xxx to + xxx-gap to replace flexbox gap

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 87.233%

Totals

Change from base Build<PHONE_NUMBER>:
0.0%

Covered Lines:
961

Relevant Lines:
1087

💛  - Coveralls


DRY: Address New-Item calls in pre_install/post_install scripts

Should we address the repeated calls of New-Item in many pre_install/post_install scripts to keep them DRY? :smile:
Most of them run Test-Path, display a message and create a directory or a file with no content.

New-Item calls in main bucket
New-Item calls in extras bucket
Set-Content calls in main bucket
Set-Content calls in extras bucket

These scripts could be cleanup up and be more readable in JSON format by using some simple functions like:
New-Directory -Path "$dir\conf.d" -Message "Creating 'conf.d' directory"
New-JsonFile -Path "$dir\bla.json" -Message "Creating 'bla.json' for ..." -Content "{ "bla": "blubb" }" -Encoding "utf-8"
New-EmptyFile -Path "$dir\empty.ini"

Relate #2733
Some lib\ManifestHelpers will some usual persist checks would be nice. Documented, well named powershell module, which will be dot sourced in libexec-install or install.ps1
I would prefix it with Scoop- to preserve system wide naming / Aliases, ...

One step ahead of me :grin:
And I even answered your ticket ... wow, I am forgetful ...

Import-Module supports prefixes, so we could use this instead of dot sourcing.
Import-Module -Name .\lib\ManifestHelpers.psm1 -prefix Scoop -Verbose

Example module lib\ManifestHelpers.psm1:
function Expand-7zip {
    <#
    .SYNOPSIS
    SOME DESCRIPTION
    ...
    #>
    param(
        [String] $Archive,
        [String] $Destination = '',
        [Switch] $Recurse
    )
    process {
        extract_7zip $Archive $Destination $Recurse
    }
}

function Expand-Msi {
    <#
    .SYNOPSIS
    SOME DESCRIPTION
    ...
    #>
    param(
        [String] $Archive,
        [String] $Destination = '',
        [Switch] $UseLessMsi
    )
    process {
        if ($UseLessMsi) {
            extract_lessmsi $Archive $Destination
        } else {
            extract_msi $Archive $Destination
        }
    }
}

function New-Directory {
    <#
    .SYNOPSIS
    SOME DESCRIPTION
    ...
    #>
    param(
        [String] $Path,
        [String] $Name,
        [String] $Message = ''
    )
    process {
        if (!(Test-Path (Join-Path -Path $Path -ChildPath $Name))) {
            if ($Message) {
                Write-Host $Message -f Yellow
            }
            New-Item -Path $Path -Name $name -ItemType Directory | Out-Null
        }
    }
}

function New-File {
    <#
    .SYNOPSIS
    SOME DESCRIPTION
    ...
    #>
    param(
        [String] $Path,
        [String] $Name,
        [String] $Encoding = 'utf-8',
        [String] $Content = $null
    )
    process {
        $file = Join-Path -Path $Path -ChildPath $Name
        if (!(Test-Path $file)) {
            if($Encoding -eq 'byte') {
                if((Get-Command Set-Content).parameters.ContainsKey('AsByteStream')) {
                    # PowerShell Core (6.0+) '-Encoding byte' is replaced by '-AsByteStream'
                    Set-Content -Path $file -AsByteStream -Value $Content
                }
                else {
                    Set-Content -Path $file -Encoding byte -Value $Content
                }
            } else {
                Set-Content -Path $file -Encoding $Encoding -Value $Content
            }
        }
    }
}

function Write-File {
    <#
    .SYNOPSIS
    SOME DESCRIPTION
    ...
    #>
    param(
        [String] $Path,
        [String] $Name,
        [String] $Encoding = 'utf-8',
        [String] $Content = $null
    )
    process {
        $file = Join-Path -Path $Path -ChildPath $Name
        if ((Test-Path $file)) {
            if($Encoding -eq 'byte') {
                if((Get-Command Set-Content).parameters.ContainsKey('AsByteStream')) {
                    # PowerShell Core (6.0+) '-Encoding byte' is replaced by '-AsByteStream'
                    Set-Content -Path $file -AsByteStream -Value $Content
                }
                else {
                    Set-Content -Path $file -Encoding byte -Value $Content
                }
            } else {
                Set-Content -Path $file -Encoding $Encoding -Value $Content
            }
        }
    }
}

I like the idea of proper and powershell native code style, everything which make code more readable and reusable is awesome. But it should be adopted in whole scoop codebase or ditched. It's really mess when all code is dot sourced and just one module is real "module" with powershell standart codebase.
If this start some real Scoop refactor to adopt powershell standart and best practise, then Go for it.
Best would be to extract bucket folder, which will allow better maintanence of whole Scoop with less error   domain.
So best scenario:

Add this module and let know maintaners about adopting it
Extract bucket / supportings
Refactor install
Rest of code adoption to new codebase with some beautifier / linter (PSSA 1.18 will bring all time needed rule for Correct Casing, which would save lot's of manual code edit. PowerShell/vscode-powershell#1687, PowerShell/PSScriptAnalyzer#1117)

This will be long term goal with some core refactor and deduplicate code.

Holy cow! Extracting core bucket always be the first work.

Not always. For some hotfixes and small impact fixes it is not needed, but for future bigger refactoring / extending it's really crucial.


⚠ Bofrost.at has degraded performance

In 0871b9e, Bofrost.at (https://www.bofrost.at) experienced degraded performance:

HTTP code: 200
Response time: 1357 ms

Resolved: Bofrost.at performance has improved in 9ac57f2.


Request: Prodigous Two Weapon Fighting

Lets give Seelah some Shield Bashin' Love. I'd be very grateful.
https://www.d20pfsrd.com/alternative-rule-systems/path-of-war/feats/prodigious-two-weapon-fighting-combat/

https://github.com/Vek17/WrathMods-TabletopTweaks/pull/117
I already implemented this one independently and put in a pull request.

I reopened this as seemingly the aforementioned pull-request is in limbo


Enhance on About Page

Description
Content of about us page should be change. Picture should be change.Button should be change of header.
Screenshots
No response
Checklist

[X] I have checked the existing issues.
[X] I follow Contributing Guidelines of this project.
[ ] I am a IWOC'24 contributor.
[ ] I am a JWOC'24 contributor.
[ ] I am a SWOC'24 contributor.

Code of Conduct

[X] I agree to follow this project's "Code of Conduct".

I am a very creative person and made several websites which include about page,so i am confident that i will be able to solve this issue in a good way.Please assign me this task under GSSOC'24.Thank you.

Hi,
I am very eager to contribute to this project and have been following it closely. I have experience with HTML, CSS AND JAVASCRIPT and I am confident that I can resolve this issue effectively.
Can you please assign this issue to me? Your support would mean a lot to me as I am passionate about contributing to open source and growing my skills.
Thank you for considering my request!

can you assign this issue to me.I can do it


Two of the macros tests are failing to import SwiftDiagnostics.

Marking these as UNSUPPORTED for now, pending a fix.

@swift-ci Please smoke test

We are considering disabling these before the branch lockdown, unless there's a fix close by.

@swift-ci Please smoke test

@swift-ci Please smoke test and merge


Add line breaks into long lines

When I tried using Whisper to generate subtitles for one of my own talks earlier today, one adjustment I needed to make is to break up long lines. For example, instead of
A friend of mine was of the opinion that it was missing an exclamation mark in the string.

it is preferable to have
A friend of mine was of the opinion
that it was missing an exclamation mark in the string.

Netflix, along with other guidelines, recommends:

Prefer a bottom-heavy pyramid shape for subtitles when multiple line break options present themselves, but avoid having just one or two words on the top line.

I think it would be really cool if we could also automate that process of breaking the text into lines! :) Cheers for your really cool work here! \o/

Maybe we could find a library to generate the VTT instead of doing it manually? There has to be someone who's figured this out already

Although I couldn't find any existing Python implementation of this behavior, SubtitleEdit and Aegisub both have this feature.
There are several ways to do it (SubtitleEdit's process is probably the most robust,) but a simple method would be to count the characters in each segment returned from Whisper, and add a newline 42 characters or less from the end of the segment if necessary. Slicing from the end is important: the guidelines state that the second line should be the longest. If exactly 42 characters cuts off a word, the cut should be rounded to the end of that word.
In lieu of an automated method, manually passing through the subtitles with SubtitleEdit is a quick select-all in the meantime.

@radiohazard-dev I'd accept a PR that adds this as an optional flag, if you're up for it :D


Fix TabContainer emitting spurious tab_selected signals when a theme …

…is changed

The repaint code was moved outside of set_current_tab() and to a "_repaint()" private function
_on_theme_changed() will now only call _repaint() and update()
This means _on_theme_changed() will do only what it needs (repainting the TabContainer to account for the new theme)

fixes #39498
TabContainerFixTest.zip

Thanks!

Cherry-picked for 3.2.2.


GraphQLHandler.endpoint validation

https://github.com/Urigo/graphql-mesh/issues/1725

That json schema file is generated from GraphQL Schema files. So we need to make some changes in converter that converts GraphQL Files to json schema files.


add travis configuration file

please also enable on https://travis-ci.org/

Done and done (I think). Thanks a lot!


Open Connection Retry

Adds support for open connection retry to handle idle connection resiliency by adding 2 new connection properties similar to those in SqlClient: connectRetryCount and connectionRetryInterval.

/azp run Microsoft.mssql-jdbc.macOS


Exact Match metrics Tests

Adds the code for exact match metric.
Adds tests for exact match metric.

I was thinking, exact match isn't a statistical method, would it make sense to have an additional class?

I was thinking, exact match isn't a statistical method, would it make sense to have an additional class?

Well, we can make, but you might not be having lot of methods under that class. Also experience wise, more the classes are, would that make more complex to use (users have to keep more number of classes in mind? just trying to keep things simple here), let me know what you think.

I think we either merge all the scores under one Calculator class, or make another class, since the one thing we wouldn't want is provide users with misleading information through the naming. I'd say one calculator class would be better, the way of computing scores can be in the docs and doesn't have to be reflected in the code.

I think we either merge all the scores under one Calculator class, or make another class, since the one thing we wouldn't want is provide users with misleading information through the naming. I'd say one calculator class would be better, the way of computing scores can be in the docs and doesn't have to be reflected in the code.

Yeah that quite makes sense. Since the way of doing the classification or doing the taxonomy is relative. I just want to somehow distinguish the fact that there are some metrics which uses some kind of models / or may be services and some which are deterministic functions.
Because when metrics are deterministic functions, sometimes, people rely more on that. So another way of defining this notion could be:
For each function which is using a model it should have an Optional model parameter. And also, we can log that which model it is been using (if required), in that way people can still find that, which is using?
There can be a third option and that is in documentation, where we can do the grouping.

Great idea, model as optional parameter + documentation is the way to go. There's also existing parts of the code we can abstract away using this approach, for example: https://github.com/confident-ai/deepeval/blob/main/deepeval/metrics/factual_consistency.py#L11

Great idea, model as optional parameter + documentation is the way to go. There's also existing parts of the code we can abstract away using this approach, for example: https://github.com/confident-ai/deepeval/blob/main/deepeval/metrics/factual_consistency.py#L11

Awesome :smile: , will go with this then


Accel World vs. Sword Art Online: Millennium Twilight can't open the .APK files!!! HELP!!!

No matter what I seem to do I can't seem to open the .APK files in this game! Is there any to extract the .APK file from this game so that I can get the 2D Sprites!?

Those games are not Android game.
I must assume some game assets extension are .APK. you need to research more and maybe ask the Playstation or PC modding community


Change log level of "Vetoed installation of hairpin flow" to WARNING

It seems that "Vetoed installation of hairpin flow" happens not only in harmful cases, e.g. https://github.com/kontena/kontena/issues/1834#issuecomment-281611223 . Logging it as an error might confuse end users.

Also, the current DetectHairpin failed: Hairpin mode enabled on "vethwe-bridge" error msg could be improved to warn a user about possible connectivity issues.


Add test_iam_permissions to fake gcs to check permissions before running compose download

Dataflux pytorch dataset fail when user does not have required permissions to create and delete composed objects.
"test_iam_permissions" is an in-built function used to verify permission of a client and will be used in dataflux_iterable_dataset and dataflux_mapstyle_dataset to verify client permissions.
Adding test_iam_permissions support to fake_gcs which will be used in test_dataflux_iterable_dataset and test_dataflux_mapstyle_dataset for unit tests.
Related Issue: https://github.com/GoogleCloudPlatform/dataflux-pytorch/issues/58#issuecomment-2231552178

[x] Tests pass
[x] Appropriate changes to documentation are included in the PR

I'm a bit confused by reading the description of this PR -- "Adding
test_iam_permissions support to fake_gcs which will be used in dataflux_iterable_dataset and dataflux_mapstyle_dataset."
dataflux_iterable_dataset and dataflux_mapstyle_dataset should not import fake_gcs as it's for testing purpose. If this function is to be invoked in dataflux-pytorch. Should it be in different places, than fake_gcs?

@bernardhan33 @jdnurme Sorry for the confusion. I have updated PR description. Adding "test_iam_permissions" support to fake_gcs to unit test changes in dataflux_iterable_dataset and dataflux_mapstyle_dataset.


Issue with k8s.io/docs/tasks/tools/install-minikube/

This is a Bug Report
I've got some warning while starting minikube with google cloud's kubectl. To be honest, I didn't noticed it's a warning cause of ⚠sign, I thought it doesn't start.

Problem:
minikube start
>>>😄  minikube v1.5.2 on Darwin 10.14.6
>>>💡  Tip: Use 'minikube start -p <name>' to create a new cluster, or 'minikube delete' to delete this one.
>>>🏃  Using the running hyperkit "minikube" VM ...
>>>⌛  Waiting for the host to be provisioned ...
>>>🐳  Preparing Kubernetes v1.16.2 on Docker '18.09.9' ...
>>>🔄  Relaunching Kubernetes using kubeadm ...
>>>⌛  Waiting for: apiserver
>>>🏄  Done! kubectl is now configured to use "minikube"
>>>⚠  /Users/iamtodor/Downloads/google-cloud-sdk/bin/kubectl is version 1.13.11-dispatcher, and is incompatible with Kubernetes 1.16.2. You will need to update /Users/iamtodor/Downloads/google-cloud-sdk/bin/kubectl or use 'minikube kubectl' to connect with this cluster

gcloud components update
>>>All components are up to date.

Proposed Solution:
Add implicit warning with a word message; realize how to prevent to get this warning.
Page to Update:
https://kubernetes.io/docs/setup/learning-environment/minikube/
Google cloud information:
gcloud --version
>>>Google Cloud SDK 272.0.0
>>>bq 2.0.50
>>>core 2019.11.16
>>>gsutil 4.46
>>>kubectl 2019.11.04

Kubectl information:
kubectl version
>>>Client Version: version.Info{Major:"1", Minor:"13+", GitVersion:"v1.13.11-dispatcher", GitCommit:"2e298c7e992f83f47af60cf4830b11c7370f6668", GitTreeState:"clean", BuildDate:"2019-09-19T22:26:40Z", GoVersion:"go1.11.13", Compiler:"gc", Platform:"darwin/amd64"}
>>>Server Version: version.Info{Major:"1", Minor:"16", GitVersion:"v1.16.2", GitCommit:"c97fe5036ef3df2967d086711e6c0c405941e14b", GitTreeState:"clean", BuildDate:"2019-10-15T19:09:08Z", GoVersion:"go1.12.10", Compiler:"gc", Platform:"linux/amd64"}

kubectl cluster-info
>>>Kubernetes master is running at https://<IP_ADDRESS>:8443
>>>KubeDNS is running at https://<IP_ADDRESS>:8443/api/v1/namespaces/kube-system/services/kube-dns:dns/proxy

>>>To further debug and diagnose cluster problems, use 'kubectl cluster-info dump'.

minikube version and hash commit
minikube version
>>>minikube version: v1.5.2
>>>commit: 792dbf92a1de583fcee76f8791cff12e0c9440ad

hi
on a quick look:

Client Version: version.Info{Major:"1", Minor:"13+", GitVersion:"v1.13.11-dispatcher", GitCommit:"2e298c7e992f83f47af60cf4830b11c7370f6668", GitTreeState:"clean", BuildDate:"2019-09-19T22:26:40Z", GoVersion:"go1.11.13", Compiler:"gc", Platform:"darwin/amd64"}
Server Version: version.Info{Major:"1", Minor:"16", GitVersion:"v1.16.2", GitCommit:"c97fe5036ef3df2967d086711e6c0c405941e14b", GitTreeState:"clean", BuildDate:"2019-10-15T19:09:08Z", GoVersion:"go1.12.10", Compiler:"gc", Platform:"linux/amd64"}

this is not good because your server and client versions have a big difference (skew). they should be one MINOR apart, at most. or better - the client and server version matching.
try downloading a different version of kubectl.
/close
/triage support

@neolit123 From my point of view, it misleads. It tells you to update You will need to update /Users/iamtodor/Downloads/google-cloud-sdk/bin/kubectl , when I try to update I see I have the latest version

you should update your kubectl binary and then type kubectl version to make sure the update worked.
cc @tstromberg


ADD GRE figure & update captions

Changes requested by @dpapp86

Add new Figure
Add new caption
Update Figure labels

Having run the new file, it does produce the expected output.
Good to go from my point of view

Not quite. The y-scale of the CSF/SC contrast + B1+ efficiency figure is now not the same for all subjects, see issue here: #101

@dpapp86 I've pushed the commit for fixing y axes range.

Yup, all these changes are pushed here.

Just in case you did not see my edit:
Anything I need to do? I am not a reviewer on this PR, so I can't OK the merge.


[Patch 2/2] :: Add support to Marketplace endpoints

Description
This PR is the continuation of #635
Endpoint added:

https://developer.github.com/v3/apps/marketplace/#get-a-users-marketplace-purchases

PS.: I wasn't able to come up with a solution for the endpoint below given the way we currently handle non-4xx HTTP codes on this library. I do have a few ideas but I will create an issue so that we can discuss the available solutions before I implement it.
https://developer.github.com/v3/apps/marketplace/#check-if-a-github-account-is-associated-with-any-marketplace-listing
@bitwiseman let me know if you want me to change anything
Before submitting a PR:
We love getting PRs, but we hate asking people for the same basic changes every time.

[X] Push your changes to a branch other than master. Create your PR from that branch.
[X] Add JavaDocs and other comments
[X] Write tests that run and pass in CI. See CONTRIBUTING.md for details on how to capture snapshot data.
[X] Run mvn install site locally. This may reformat your code, commit those changes. If this command doesn't succeed, your change will not pass CI.

@bitwiseman I implemented your suggestions on the patch 1 here as well. This PR is ready for your review


COMMIT VICTOR SOTO

@victorsotofr this is a PR from your main branch, this should not

I'll close this, start from a clean branch


Remove 'rogerthat-control-center' from the aud in jwt

{
  "aud": [
    "rogerthat-control-center"
  ],
  "azp": "threefold",
  "exp":<PHONE_NUMBER>,
  "iss": "itsyouonline",
  "refresh_token": "***",
  "scope": [
    "user:memberof:threefold",
    "user:name",
    "user:see",
    "user:keystore"
  ],
  "username": "***"
}

https://github.com/rogerthat-platform/plugin-its-you-online-auth/commit/edaa5ffc365d201cdd6ebd88002762b301bab5e9


TypeError: tuple indices must be integers or slices, not list

The model transformation was successful, but this error occurred while loading
The keras version is 2.2.2

loading model
Traceback (most recent call last):
File "gtsrb_visualize_example.py", line 232, in
main()
File "gtsrb_visualize_example.py", line 224, in main
gtsrb_visualize_label_scan_bottom_right_white_4()
File "gtsrb_visualize_example.py", line 185, in gtsrb_visualize_label_scan_bottom_right_white_4
model = load_model(model_file)
File "/home/fanzh/.conda/envs/nc/lib/python3.6/site-packages/keras/engine/saving.py", line 260, in load_model
model = model_from_config(model_config, custom_objects=custom_objects)
File "/home/fanzh/.conda/envs/nc/lib/python3.6/site-packages/keras/engine/saving.py", line 334, in model_from_config
return deserialize(config, custom_objects=custom_objects)
File "/home/fanzh/.conda/envs/nc/lib/python3.6/site-packages/keras/layers/init.py", line 55, in deserialize
printable_module_name='layer')
File "/home/fanzh/.conda/envs/nc/lib/python3.6/site-packages/keras/utils/generic_utils.py", line 145, in deserialize_keras_object
list(custom_objects.items())))
File "/home/fanzh/.conda/envs/nc/lib/python3.6/site-packages/keras/engine/network.py", line 1027, in from_config
process_node(layer, node_data)
File "/home/fanzh/.conda/envs/nc/lib/python3.6/site-packages/keras/engine/network.py", line 986, in process_node
layer(unpack_singleton(input_tensors), **kwargs)
File "/home/fanzh/.conda/envs/nc/lib/python3.6/site-packages/keras/engine/base_layer.py", line 431, in call
self.build(unpack_singleton(input_shapes))
File "/home/fanzh/.conda/envs/nc/lib/python3.6/site-packages/keras/layers/normalization.py", line 92, in build
dim = input_shape[self.axis]
TypeError: tuple indices must be integers or slices, not list

Hello @zhang-f .
Can you please provide the model you try to convert?

Sorry for my late reply! @nerox8664 Thank you very much for reading my question!
I've put two models and code on this cloud disk, thanks again! https://cloud.tsinghua.edu.cn/d/962383929f244fe79559/

I think I found this bug.This is because my version of TensorFlow is 1.10.0, but this library contains onnx2Keras, which requires version 2.0. Thanks for the enthusiastic reply from the  @nerox8664 !Thank you very much for this wonderful project, too.


Binding failed to convert value of an inherited type to a base type

Describe the bug
Bindings failed to convert value of an inherited type to a base type, if the base type is a DependencyObject descendant.
See the attached sample
Steps to reproduce the bug

Steps to reproduce the behavior:

Run the attached sample.
Check the following binding error in output: "Error: Converter failed to convert value of type 'App1.Data' to type 'DataBase'; BindingExpression: Path='' DataItem='App1.Data'; target element is 'App1.MyClass1' (Name='c'); target property is 'Data' (type 'DataBase')."

Expected behavior
Binding should works correctly without errors.
Version Info
[WinUI 3 - Project Reunion 0.5: 0.5.6]

Windows app type:

UWP
Win32

Yes

Windows 10 version
Saw the problem?

Insider Build (xxxxx)

October 2020 Update (19042)
Yes

May 2020 Update (19041)

November 2019 Update (18363)

May 2019 Update (18362)

October 2018 Update (17763)

April 2018 Update (17134)

Fall Creators Update (16299)

Creators Update (15063)

Device form factor
Saw the problem?

Desktop
Yes

Xbox

Surface Hub

IoT

@Scottj1s possible cswinrt issue?


[DNM] Anc list page

this adds the anc list page:

Done:

a reusable table based on react-table library
the container itself with the help of react-async library to help with api calls error and loading state management

To be done:

Add ui components responsible for filtering the displayed data.: The logic behind the filters is already done.
Question around whether we will sort based on the first and last names, the mockups do not have this included.
Need to standardize how the date is stored in store, to make it easier to deal with sorting based on any date fields.

@p-netm can this branch be deleted?


Delete Comment

As a User I want to delete my comment/s so that I can **decide to bow out of debates or change my mind **.
Acceptance Criteria :

[ ]

completed


[ECS] Untag removed tags from ECS service

What would you like to be added:
When a user removes a tag from serviceDefinition,
then that tag should be removed on AWS.
Why is this needed:
Now we use TagResource() but don't use UntagResource() for ECS,
so the removed tags are not removed from ECS service.

My idea:

UpdateService()  should include tag/untag to the service, and the response should contain the tags.

That's because the response should be the same as the real status in AWS including tags.

We might need to change the func name likeReconcileService()

The below line should be refactored(removed) along with (1)
https://github.com/pipe-cd/pipecd/blob/0d81adf1ebc7eef3c8c7a630b0c201ce4afc1c24/pkg/app/piped/executor/ecs/ecs.go#L159


MOBILE-1503 Use a toggle instead of long press to delete messages

Thanks for your contribution, we'll review it once we are back from vacation

Sure. There are still some limitations and style related issues.
Delete icon should come on right side for mine messages and left for their messages. It seems like ionic doesn't support delete button to come on right side.

Closing since this was integrated


 However due to the commit prior to invoking handleCorruption, it's possible to throw a TaskMigratedException before actually cleaning up any of the corrupted tasks.
This is fine for active tasks since handleLostAll will finish up the job, but it does nothing with standby tasks. We should make sure that standby tasks are handled before attempting to commit (which we can do, since we don't need to commit anything for the corrupted standbys)

Test this please

Tests are still a WIP. Just wanted to open it up for input on the problem/fix

Btw: checkstyle  failed :)

Alright, tests/checkstyle/etc are all ready for the builds to be triggered

Test this please

Test this please

Test this please

Test this please

Test this please

Test this please

Test this please

Test this please

Ok to test

Retest this please

Test this please

Test this please

Retest this please.

Test this please

Retest this please.

Retest this please.

Unrelated flaky test failed: kafka.admin.ReassignPartitionsUnitTest.testModifyBrokerThrottles

test this please

test this please

test this please

Java 11 and 8 failed with (extremely) flaky ReassignPartitionsUnitTest.testModifyBrokerThrottles -- https://issues.apache.org/jira/browse/KAFKA-10155
Java 14 failed with SslSelectorTest.testCloseOldestConnection-- https://issues.apache.org/jira/browse/KAFKA-10156

test this please

test this please

test this please

test this please

test this please

@guozhangwang one of the failing tests is pretty much permanently broken, still waiting on this PR to be merged: https://github.com/apache/kafka/pull/8853

Will do

Alright, ran the full suite locally. The one test still fail (as expected) but otherwise green @guozhangwang  :

kafka.admin.ReassignPartitionsUnitTest > testModifyBrokerThrottles FAILED
    java.lang.NullPointerException
        at kafka.admin.ReassignPartitionsUnitTest.verifyBrokerThrottleResults(ReassignPartitionsUnitTest.scala:577)
        at kafka.admin.ReassignPartitionsUnitTest.testModifyBrokerThrottles(ReassignPartitionsUnitTest.scala:540)

Cherry-pick to 2.6.


Better diagnostics for mirror download errors

Conversation with @daniel-beck. If I use the default UC I now get errors like
java.security.DigestException: Wrong SHA-256 digest for https://updates.jenkins.io/download/plugins/database/1.7/database.hpi of length 226: expected dfb983ebc835c4cfb4c11693c730513e96d91330bd0d4988938289ca70434a78 but got a5c402fa795aa7b38c40559c9d1e2904c1e049580e216b292466d6c0634e9ab6 body: `<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">

<title>400 Bad Request</title>

Bad Request

Your browser sent a request that this server could not understand.

`

or
java.security.DigestException: Wrong SHA-256 digest for https://updates.jenkins.io/download/plugins/btc-embeddedplatform/2.7.3/btc-embeddedplatform.hpi of length 166: expected 78d17d02c2e24177f47debbb3d819362b69b962eb6090a43d739d00f71b5884a but got a783b9c187c2177ce3a44c19f53b338134329b8995e4049b10fe204fc7cb1ae0 body: `
<title>400 Bad Request</title>

400 Bad Request

nginx/1.18.0 (Ubuntu)

`

or
java.security.DigestException: Wrong SHA-256 digest for https://updates.jenkins.io/download/plugins/octopusdeploy/3.0.3/octopusdeploy.hpi of length 291: expected 453146f6dba68bb6ec720264d7089d86f6bbb3a58d673e1eb3a72c416a46b95e but got c25e5e9837d5a5e2e3dc3c17477767b32bfba82e9bc29cd3144fe1613433a850 body: `<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">

<title>400 Bad Request</title>

Bad Request

Your browser sent a request that this server could not understand.

<address>Apache Server at ftp.osuosl.org Port 443</address>

`

FYA @jvz

Oh and now CI for this PR is showing the same kind of failures I see! And https://ci.jenkins.io/job/Infra/job/usage-in-plugins/job/master/ has been broken for five days (with the uninformative errors improved by this PR), so a regression in the environment, not in the code.

It seems like the problem is that on the redirect requests the client is not sending most headers, in particular Host.

Indeed the “classic” (synch)
HttpClients.createDefault().execute(new HttpGet("https://updates.jenkins.io/download/plugins/checkmarx/2020.3.3/checkmarx.hpi"))

works; it is the HttpAsyncClients variant which fails.

@timja says there was some recent change to mirrors?

@timja says there was some recent change to mirrors?

Yes, mirrorbits is used now instead of mirrorbrain.
Functionality might be slightly different

I filed HTTPCLIENT-2113 for what appears to be the root bug.
Is there a way to request that updates.jenkins.io or get.jenkins.io not use mirrors, or use a specific mirror that might not care about Host headers?

Is there a way to request that updates.jenkins.io or get.jenkins.io not use mirrors, or use a specific mirror that might not care about Host headers?

I can only think of rewriting the URL returned as Location instead of going where it tells you to.

I could probably arrange for that, but is there some canonical download site? Or perhaps you mean to turn off the automatic redirect functionality in the client and manually follow redirects?
The other workaround would be to rewrite the core & plugin downloads to use HttpClient rather than HttpAsyncClient. Or, more ambitiously, to embed Maven and use repository-aware download preferentially (which would have the advantage of sharing cache space with regular Maven builds).

I could probably arrange for that, but is there some canonical download site? Or perhaps you mean to turn off the automatic redirect functionality in the client and manually follow redirects?

Basically the latter with a String#replace thrown in for consistent results; of course if the cause is the library redirecting, doing it manually may resolve it.
Unsure about the canonical site; while the reference files are hosted on our infra I don't think we make them easily available through there, that's what all of the htaccess rules causing redirects are for. We basically only have mirrors and the not-a-mirror fallback.get.jenkins.io, but accessing that costs the project nontrivial amounts of money.

I have no write permission here, FYI, so if you like it merge it.
The root bug is scheduled to be fixed in a library update.

o I now have merge access, here you go


📎 Handle base64 notebook cell attachments

This PR changes how notebooks are parsed to MyST: Instead of building a single markdown document from the cells and calling parseMyst once, each cell is parsed individually, nested into block nodes (except frontmatter), and concatenated.
This allows us to run mdast transforms at a notebook-cell level (the only time we have access to cell attachments), which we use to replace ![](attachment:...) image links with the base64 value directly. This base64 image is resolved later in transformImages (this functionality already existed prior to this PR).
Finally, we add one additional transform that trims base64 urlSource values on image nodes, so huge base64 payloads are not bundled into the mdast data.
Fixes: https://github.com/executablebooks/mystmd/issues/528

This seems to work well! Testing out some earthcube notebooks which are quite large:

@fwkoch I take it this does not impact/change the final mdast structure for notebooks? i.e. do we end up with an additional wrapping block around cells in the tree?

@stevejpurves No, there should be no impact in that regard.
Previously, this took the output node and replaced it with a single image or text nodes; now, if there are multiple outputs defined on the output node, it may be replaced with multiple image/text nodes. It does nothing to the wrapping block structure. Also - this change only affects tex, pdf, and docx exports; other exports (including the site build) keep the output node and pass it into their custom handlers. Hopefully that makes sense...?


Tag Error: No NDEF message found o NDEF not supported

Hi,
I'm getting TAG Error. Can you please help on this error?
Please find the details of the error.
Tag Error: No NDEF message found o NDEF not supported
at Poz1.NFCForms.Droid.NfcForms.ReadNdef (Android.Nfc.Tech.Ndef ndef) [0x00014] in :0
at Poz1.NFCForms.Droid.NfcForms.OnNewIntent (System.Object sender, Android.Content.Intent e) [0x0007c] in :0
at NFCApp.Droid.MainActivity.OnNewIntent (Android.Content.Intent intent) [0x00007] in :0
at Android.App.Activity.n_OnNewIntent_Landroid_content_Intent_ (System.IntPtr jnienv, System.IntPtr native__this, System.IntPtr native_intent) [0x00011] in <296d0ee83a1a4bffb8ba0a81b8bcee24>:0
at (wrapper dynamic-method) System.Object:4e767881-8b5b-417e-a598-da63a31751d0 (intptr,intptr,intptr)
Thanks in Advance.

just had the same problem.
i'm not sure, but it seems like the nuget version is not up to date.
using the code for Droid.NfcForms from this github repo did the trick for me.
i think the relevant commit for your problem might be 7ede53a


Feat/clickable links in cd

Description
Clickable links to procosys on HT, A/B-test and Switchboard

I think everything on onClickEntity has been taken care of. Everything works as expected in localhost. We'll see in test :)


unable to specifiy epoch parameter in rpm build

Preflight Checklist

[X] I have read the contribution documentation for this project.
[X] I agree to follow the code of conduct that this project follows, as appropriate.
[X] I have searched the issue tracker for a bug that matches the one I want to file, without success.

Issue Details

Electron Forge Version:

6.0.0-beta.54

Electron Version:

n/a

Operating System:

LinuxMint 19.3 / Ubuntu 18.04 x64

Last Known Working Electron Forge version::

n/a

Expected Behavior
$ rpm -qip make/rpm/x64/bbl100-chargen-2021.0-1.x86_64.rpm
Name        : bbl100-chargen
Epoch       : 345
Version     : 2021.0
Release     : 1
...

Actual Behavior
$ rpm -qip make/rpm/x64/bbl100-chargen-2021.0-1.x86_64.rpm
Name        : bbl100-chargen
Version     : 2021.0
Release     : 1
...

To Reproduce
$ git clone https://github.com/terefang/rpg-srds
$ cd rpg-srds
$ mvn clean generate-resources
$ rpm -qip Bare-Bone-Lite-d100/target/electron/BBL100-CharGen/out/make/rpm/x64/bbl100-chargen-2021.0-1.x86_64.rpm

Additional Information
refer also https://github.com/electron-userland/electron-installer-redhat/issues/190
also i have poked around code and found that "electron-forge/packages/maker/rpm/src/Config.ts"
is missing the epoch option.

Duplicate of https://github.com/electron-userland/electron-installer-redhat/issues/190


Clarification on "tcfeu_supported" Status in SmileWanted Bid Adapter Documentation

I am writing to seek clarification regarding the tcfeu_supported status in the documentation for the SmileWanted bid adapter https://github.com/prebid/prebid.github.io/blob/e9d55e525ac65f12ab9962f1d0af369e1cca21c2/dev-docs/bidders/smilewanted.md#L6 Upon reviewing the adapter's code https://github.com/prebid/Prebid.js/blob/master/modules/smilewantedBidAdapter.js, I observed that it processes GDPR consent information by including the consentString and gdprApplies fields in bid requests. However, the corresponding documentation specifies tcfeu_supported: false.
Could you please confirm whether the tcfeu_supported field in the documentation is purely declarative and we can passed it to true, or if it actively influences the adapter's functionality within Prebid.js? Additionally, I would appreciate guidance on the necessary steps to ensure full compliance with the IAB Europe's Transparency and Consent Framework (TCF) if the current implementation is insufficient.

Yes. It is declarative and needs to be manually updated. Can submit the pr now and update.


Bug in k nearest neighbors

In the Predict function in knn.go you "initialize" the neighbors array with random elements from k.trainingSet and then use insertSorted to insert new data into the neighbors array.
This is a problem because insertSorted requires that the array you are inserting into be sorted; it uses binary search.  The random data you initialize the neighbors vector with may not sorted.
A possible fix is to get rid of the rand package altogether, initialize the neighbors vector with the first k.K elements from k.trainingSet, and sort neighbors before calculating the nearest neighbors.
I can submit a pull request if you like.

Looking into it right now. Should have it fixed within the hour.
Thanks for the catch!


Discussion: Water Entity for Water Tank implementation

From Home Assistant Community Post: https://community.home-assistant.io/t/panasonic-aquarea-heat-pump-integration/392095/31
The water heater entity supports the following operations, but it doesn't include a "turn_on" or "turn_off" one :frowning:
water_heater.set_temperature , water_heater.turn_away_mode_on , water_heater.turn_away_mode_off , water_heater.set_operation_mode
https://www.home-assistant.io/integrations/water_heater#services
I had a lot of doubts on how to implement the water heater entity with Aquarea devices, to support the actions "on" and "off" but also to show via the interface if the heat pump is heating the water of the water tank or not: it can be turned on but the heat pump could be heating water for the heating floor (or cooling it) so the state/operation would be like "idle".
While it doesn't support turn_off, we can define the state as "STATE_OFF" or "STATE_HEAT_PUMP": https://developers.home-assistant.io/docs/core/entity/water-heater#states
I've implemented this via operations and so far the device accepts 2: heating and off:
Turn on:
service: water_heater.set_operation_mode
target:
  entity_id: water_heater.aerotermia_tank
data:
  operation_mode: heating

Turn off:
service: water_heater.set_operation_mode
target:
  entity_id: water_heater.aerotermia_tank
data:
  operation_mode: off

Opening this issue to discuss feedback, implementations and keep track of it.

Hi, I did such automation for water heating and it works correctly
alias: Test
description: ""
trigger:

platform: time
at: "13:02:00"
condition:
condition: numeric_state
entity_id: water_heater.dom_tank
attribute: current_temperature
below: 40
action:
service: water_heater.set_operation_mode
target:
entity_id: water_heater.dom_tank
data:
operation_mode: heating
mode: single

I'm not sure if a new issue is jusitified, so I figured to post my question here:
I noticed that the states of the climate entity are capitalized in the frontend (e.g. Heat, Idle etc.) but the states of the water_heater entity aren't (eg. heat, idle).
I found out they can be changed in const.py, but then I also need to use the capitalized states in automations. Whereas I can use the lowercase states for the climate entity. Is this a frontend issue? Since the states are also valid climate entity states, is it maybe possible to use those constants instead?

Hi @cjaliaga ,
I'm testing your great integration and I've managed to make two simple automations which looks like this:
alias: Heat water to 55 if <1kr and <55deg
description: >-
  Start water heating to 55 if current price less than 100öre/kWh and water temp below 55
trigger:
  - platform: time_pattern
    minutes: "1"
  - platform: numeric_state
    entity_id:
      - sensor.electricity_price_my_house
    attribute: price_level
    below: 1
condition:
  - condition: numeric_state
    entity_id: water_heater.aquarea1_tank
    attribute: current_temperature
    below: 55
action:
  - service: water_heater.set_temperature
    data:
      temperature: 55
      operation_mode: heating
    target:
      entity_id: water_heater.aquarea1_tank
mode: single

alias: Stop heating water if >1kr and >48deg
description: >-
  Stop water heating if current price more than 100öre/kWh and water temp above
  48
trigger:
  - platform: time_pattern
    seconds: "10"
  - platform: numeric_state
    entity_id:
      - sensor.electricity_price_my_house
    attribute: price_level
    above: 1
condition:
  - condition: numeric_state
    entity_id: water_heater.aquarea1_tank
    attribute: current_temperature
    above: 48
action:
  - service: water_heater.set_temperature
    data:
      operation_mode: "off"
      temperature: 50
    target:
      entity_id: water_heater.aquarea1_tank
mode: single

I can see on my dashboad and in the Aquarea Smart Cloud that the target is changing but the state on idle. After some reading I came to the conclusion that this is what you are describing in this post; but since it is pretty old, I was wondering if you had made any change/improvements?
What is the best way to enforce heating the water tank and prevent it from heating?
Should I set STATE_OFF instead of: "operation_mode: off" ?
Does the operation_mode: off only applies to the water tank or also the (floor) heating? I am asking because I also have climate.aquarea1_home (which I will look at next)
Thanks a lot!
/J@V0


AIY Voice - 429 Error - Too many requests.

This seems like a repeat of issue #472. My AIY voice kit is reporting the following error message, and crashing.
requests.exceptions.HTTPError: 429 Client Error: Too Many Requests for url: https://embeddedassistant.googleapis.com/v1alpha2/projects/voice-assistant-213123/deviceModels/voice-assistant-213123-voice-kit
I tried to access the google cloud API & Services dashboard to diagnose, but got another error message: "Error   Failed to load API keys.  Tracking Number:<PHONE_NUMBER>880017538"
I am at a loss, and unable to diagnose. All was fine yesterday. Nothing has changed on my end. The issue first occurred last night, and persists this morning. I have not changed anything on my end since it was working. I am not sure how many requests I am allowed in a certain time frame, but I have not made any successful requests in over 13 hours. I read somewhere about a 500 request limit in 24 hours, but I have definitely not made that many requests.
This looks like an issue at google's end. Please help!

The issue seems to be resolved now. It looks like I hit 2 issues. There was a google cloud console outage that prevented me from figuring out what the issue was, and it seems that I exceeded the 500 API requests, which seems very strange, unless it is 500 per week - as I am pretty sure that I didn't make 500 requests yesterday. Could anyone clarify what the time frame is for the 500 requests. Also, what is the process for requesting a quota uplift.


Crash on trying to add event to event buffer full of other event types

In EventBuffer.h
During a call to EventBuffer::UpdateAny(const Event& evt), when the outstation events is full of events of another type, the call to:
RemoveOldestEventOfType(T::EventTypeEnum)
fails and returns false.
As a result, the subsequent call to:
events.Add(SOERecord(evt.value, evt.index, evt.clazz, evt.variation))
returns a NullPtr and so:
events.Add(SOERecord(evt.value, evt.index, evt.clazz, evt.variation))->value.Reset();
results in a crash.
Suggested fix:
if (!RemoveOldestEventOfType(T::EventTypeEnum)) return;

The max size of the linked list that holds the events is initialised to the sum of the number of events before each type should overflow, so if you've configured the number of events for each type to something non-zero, the bug must be somewhere else. That suggested fix would still be good to implement for the sake of catching the zero length event buffer case, and probably log a warning.
If a zero length event buffer isn't the culprit, then something isn't overflowing properly, or maybe a problem with the linked list implementation?

Sounds like this would be easy to write a unit test for to isolate and fix.
Always easier to test the component directly than through a full integration. I can have a shot at it when I wake up a bit ;).

Hi Adam,
Taking a step back... This issue arose within our data concentrator (which
we're working on open sourcing ), during a stress test, that could have
been causing concurrent access to a single outstation.
We had made an assumption that the transaction interface was thread safe,
but were we wrong? Are we meant to serially access the outstation stack?
We haven't seen any issues up until now, but this is the first time we've
pushed the limits of async io.
Cheers,
Neil.
On 19/02/2015 1:10 am, "Adam Crain"<EMAIL_ADDRESS>wrote:

Sounds like this would be easy to write a unit test for to isolate and fix.
Always easier to test the component directly than through a full
integration. I can have a shot at it when I wake up a bit ;).
--
Reply to this email directly or view it on GitHub
https://github.com/automatak/dnp3/issues/122#issuecomment-74869059.

Hi Neil,
IDatabase is absolutely intended to be thread-safe. The implementation uses pretty much the only explicit lock in the entire stack:
https://github.com/automatak/dnp3/blob/2.0.x/cpp/libs/opendnp3/src/opendnp3/outstation/Database.cpp#L47
I'm p rettyconfident it's just an issue that can be replicated with a single-threaded unit test.
-Adam

Looking at the code, something has definitely gone wrong with either 1) the list or 2) the state tracking for how many events there are of every type.
Can you guys get me detailed information on what the list contains vs what the "total counts" says when this condition occurs?
I would modify:
auto pNode = events.Add(SOERecord(evt.value, evt.index, evt.clazz, evt.variation));
if(pNode)
{
totalCounts.Increment(evt.clazz, T::EventTypeEnum);
}
else
{
// this shouldn't be happening. print diagnostics and exit on the list and the total tracking.
}

Sorry Adam, we sent you on a bit of a wild goose chase.
Alan changed some code (yes, I'm dobbing you in Alan) to access the
outstation database directly, instead of using the transaction interface,
at the same time as moving to the new stack.
So it was our code causing the issue. Sorry again for letting you chase a
non-existent bug. Thanks for being so responsive. I hope you get this
message before doing any more work on this.
Cheers, Neil.
On 21/02/2015 2:34 am, "Adam Crain"<EMAIL_ADDRESS>wrote:

Looking at the code, something has definitely gone wrong with either 1)
the list or 2) the state tracking for how many events there are of every
type.
Can you guys get me detailed information on what the list contains vs what
the "total counts" says when this condition occurs?
I would modify:
auto pNode = events.Add(SOERecord(evt.value, evt.index, evt.clazz,
evt.variation));
if(pNode)
{
totalCounts.Increment(evt.clazz, T::EventTypeEnum);
}
else
{
// this shouldn't be happening. print diagnostics and exit on the list and
the total tracking.
}
--
Reply to this email directly or view it on GitHub
https://github.com/automatak/dnp3/issues/122#issuecomment-75257170.

Hahaha. Alan now owes me a beer (Or a data concentrator). =)
I really didn't spend more than 15 minutes. I'm just happy there isn't a glaring issue.
Perhaps there's something we can learn from this to improve the API.

A bit more detail of what went wrong:
A changed was made to use Database::Modify instead of using a
opendnp3::Transaction which calls Database::Start and Database::End
automatically. So Start and End weren't being called around the database
access.
Cheers, Neil.
On Sat, Feb 21, 2015 at 8:06 AM, Adam Crain<EMAIL_ADDRESS>wrote:

Hahaha. Alan now owes me a beer (Or a data concentrator). =)
I really didn't spend more than 15 minutes. I'm just happy there isn't a
glaring issue.
Perhaps there's something we can learn from this to improve the API.
--
Reply to this email directly or view it on GitHub
https://github.com/automatak/dnp3/issues/122#issuecomment-75319073.

OK. We should have a transaction flag and assertions that it's active. That would make things fail hard and fast as opposed to subtle/racy failures.

Yet another thing we could do:
Make Update/Modify/etc private. Transaction can be a friend class with its own mirror of the API. That would definitely fix this issue.

yeah, that would be awesome if it was all wrapped up in the Transaction
class. I don't see a down side if all the methods are mirrored with the
additional automatic Start and End.
Cheers,
Neil.
On Sat, Feb 21, 2015 at 10:55 AM, Adam Crain<EMAIL_ADDRESS>wrote:

Yet another thing we could do:
Make Update/Modify/etc private. Transaction can be a friend class with its
own mirror of the API. That would definitely fix this issue.
--
Reply to this email directly or view it on GitHub
https://github.com/automatak/dnp3/issues/122#issuecomment-75341305.

Although, if you're only looking to do small updates in release candidate
state, the simple addition of the assert you mention would do the job for
now.
Cheers,
Neil.
On Sat, Feb 21, 2015 at 12:24 PM, Neil Stephens<EMAIL_ADDRESS>wrote:

yeah, that would be awesome if it was all wrapped up in the Transaction
class. I don't see a down side if all the methods are mirrored with the
additional automatic Start and End.
Cheers,
Neil.
On Sat, Feb 21, 2015 at 10:55 AM, Adam Crain<EMAIL_ADDRESS>wrote:

Yet another thing we could do:
Make Update/Modify/etc private. Transaction can be a friend class with
its own mirror of the API. That would definitely fix this issue.
--
Reply to this email directly or view it on GitHub
https://github.com/automatak/dnp3/issues/122#issuecomment-75341305.

Unfortunately I don't think this was the only issue as I'm still getting the same crash when stress testing our datacon. Unless I'm not understanding what needs to be protected, after looking at all the calls on eventBuffer I suspect it is unprotected from concurrency in the following three locations:
OutstationContext::SetOffline()
OutstationUnsolicitedStateConfirmWait::OnConfirm(OutstationContext* pContext, const APDUHeader& header)
OutstationUnsolicitedStateConfirmWait::OnConfirmTimeout(OutstationContext* pContext)

I've added Transactions to these three function calls in my copy of the stack to see if this fixes things up and will let you know if it doesn't. I'm not exactly sure how to write unit tests to test for this sort of concurrency issues.
Thoughts?

I have an idea of how to fix this and get rid of the explicit locks completely. Let me know how the experiment goes, but I'm going to prototype a fix that makes the locks not needed anymore.

Ok guys.
Check out my prototype in the "measfix" branch. The main libs and demos are compiling so you should be able to build your linux binaries. If this works I'll update the tests and .NET:
https://github.com/automatak/dnp3/tree/measfix
I decided that trying to get all the locks correct all the time is a fools errand and even if we do get it right it will just cause regressions later.  Everything else in opendnp3 uses the execution context (IExecutor) to send messages to the correct underlying strand in a thread-safe way. Why shouldn't measurement updates from any thread also do this?
So now, instead of locking shared datastructures when we want to update things, we build a changeset that is dynamically allocated and applied automatically on the correct strand. The magic happens here:
https://github.com/automatak/dnp3/blob/measfix/cpp/libs/asiodnp3/src/asiodnp3/MeasUpdate.cpp#L46
The external API for using this thing is almost identical to before, and is much harder to use incorrectly:
https://github.com/automatak/dnp3/blob/measfix/cpp/examples/outstation/DemoMain.cpp#L112
The methods that MeasUpdate uses on IOutstation are private and MeasUpdate is a friend class.
Please try this branch out with your stress tests and let me know how it goes.

Stress test underway, so far so good (it usually crashes reasonably quickly).
I like the new asiodnp3::MeasUpdate and making hidden things outside the stack that shouldn't be touched.
Completely agree that strands seem to be the way to achieve thread-safety, makes things thread safe automatically which as you say avoids the risk of regressed bugs.
Will let you know how we go with further testing!
If this is all good, would you be leaning towards an RC-2 release of 2.0.1?

Yeah, we'll definitely issue RC2 pretty shortly after you confirm there are no more issues.

I really like the new solution of exposing the strand internally for the
update interface.
I've done a linux build, and kicked off another test:
One event stream, asynchronously multiplexed 4000 ways, then demultiplexed
back to a single slave. It's humming along with no crashes so far.
I'll check back in a few hours.
Cheers,
Neil.
On Sun, Feb 22, 2015 at 9:51 AM, Adam Crain<EMAIL_ADDRESS>wrote:

Yeah, we'll definitely issue RC2 pretty shortly after you confirm there
are no more issues.
--
Reply to this email directly or view it on GitHub
https://github.com/automatak/dnp3/issues/122#issuecomment-75397634.

2GB worth of events funneled into a single outstation in bursts of 4000 concurrent events every 100ms - passed no problems.

Ok, sounds like we're confident that multi-threaded access to event buffer was the root cause. I will close the ticket out once this gets merged into 2.0.1-RC2

Assuming we squashed this issue so closing,


Merge 3 commits from ReactiveX:3.x.

Thank you for contributing to RxJava. Before pressing the "Create Pull Request" button, please consider the following points:

[ ] Please give a description about what and why you are contributing, even if it's trivial.

[ ] Please include the issue list number(s) or other PR numbers in the description if you are contributing in response to those.

[ ] Please include a reasonable set of unit tests if you contribute new code or change an existing one. If you contribute an operator, (if applicable) please make sure you have tests for working with an empty, just, range of values as well as an error source, with and/or without backpressure and see if unsubscription/cancellation propagates correctly.

Codecov Report

Merging #4 (0792e05) into 3.x (bb03bcf) will decrease coverage by 0.00%.
The diff coverage is n/a.

@@             Coverage Diff              @@
##                3.x       #4      +/-   ##
============================================
- Coverage     99.54%   99.53%   -0.01%
- Complexity     6756     6759       +3
============================================
  Files           747      747
  Lines         47391    47391
  Branches       6382     6382
============================================
- Hits          47173    47172       -1
+ Misses          101      100       -1
- Partials        117      119       +2

Impacted Files
Coverage Δ
Complexity Δ

...tivex/rxjava3/internal/jdk8/ParallelCollector.java
91.74% <0.00%> (-4.59%)
2.00% <0.00%> (ø%)

.../operators/observable/ObservableFlatMapSingle.java
94.44% <0.00%> (-3.18%)
2.00% <0.00%> (ø%)

...ternal/operators/completable/CompletableMerge.java
97.29% <0.00%> (-1.36%)
2.00% <0.00%> (ø%)

...operators/flowable/FlowableFlatMapCompletable.java
98.71% <0.00%> (-1.29%)
2.00% <0.00%> (ø%)

...ternal/operators/observable/ObservableGroupBy.java
98.90% <0.00%> (-1.10%)
2.00% <0.00%> (ø%)

...a3/internal/operators/flowable/FlowableReplay.java
98.71% <0.00%> (-1.08%)
21.00% <0.00%> (ø%)

...ernal/operators/flowable/FlowableFromIterable.java
98.95% <0.00%> (-1.05%)
5.00% <0.00%> (ø%)

...ernal/operators/flowable/FlowableFlatMapMaybe.java
96.89% <0.00%> (-1.04%)
2.00% <0.00%> (ø%)

...operators/flowable/FlowableConcatMapScheduler.java
99.20% <0.00%> (-0.40%)
4.00% <0.00%> (ø%)

...al/operators/observable/ObservableWindowTimed.java
96.77% <0.00%> (-0.33%)
4.00% <0.00%> (ø%)

... and 12 more

Continue to review full report at Codecov.

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


Heartbeat event to track Deployment status

Requires https://github.com/k0sproject/k0smotron/issues/683 to be implemented and k0smotron bump.


Update: Postman.Postman version 8.3.0

Removing old versions to reduce clutter
Microsoft Reviewers: Open in CodeFlow

/azp run


why not add a register page or function?

why not add a register page or function?

Technically there is an option, it's used in the demo instance: https://github.com/sissbruecker/linkding/blob/b30486317d835cc70f272983d5981bcfc6aa4cd7/siteroot/settings/base.py#L160-L161
I don't intend to maintain that as a public feature, as most use-cases don't revolve around allowing random people to create accounts. There is another issue for adding an invitation workflow which would make more sense.


Livemarks with Firefox for Android

Dear all,
does Livemarks work or will it work (when) within Firefox for Android?
Thanks a lot for a kind answer.
Paolo
My email is<EMAIL_ADDRESS>

Firefox for Android doesn't support the bookmarks API, so at least for now we won't be supporting mobile.


Fix regression in stubber

Sometimes the list returned from dict.keys() will not be in the same order
which will cause the equality of keys check to fail:
    >>> ['key1', 'key2'] == ['key2', 'key1']
    False

To fix it, the keys need to be sorted.
Noticed it because of failing tests here: https://github.com/boto/s3transfer/pull/15
cc @jamesls @JordonPhillips

⛵


%server_uptime% not implemented?

hey,
is %server_uptime% not implemented yet or why does it not parse for me?

Server uptime is currently not a variable.


(bug) Nightly builds of the Python Wrapper are failing

The nightly builds failed on the Python wrapper.

I believe this will be resolved by #88 (thread shutdown at exit) and #89 (updating to sqlx 0.6). It's an intermittent crash after all the tests have run.


MAINT: Update link to RandomState

Fix the numpy doc change.

Circle is happy and I have checked flake locally, let's get this in to get things green


[xas_viewer][specfile] keV to eV conversion dialog at import level

After importing a scan from a Spec file and converting units from keV to eV the same energy conversion dialog reappears when interacting with the GUI, for example by plotting the MBACK background or when picking the pre-edge range.
@newville probably the best here is to pop the energy conversion dialog at the import level and apply to all imported groups (if multiple scans).

Yeah, I think it should probably have a dropdown (with a guess) of energy units for the energy array and do the conversion before the data gets "installed".  That would prevent the repeated pop-up dialogs.  The regular "read ascii file" dialog should probably do that too for people reading data from beamlines that save data in keV (or degrees).  On the ToDo list!

@maurov OK, the master branch now has a couple of changes for reading specfiles with xas_viewer:

the conversion of energy units (to eV from keV or from degrees, with mono d-spacing) now happens in the Importer window (both Specfile Importer and ColumnFile Importer).
the same routine for "guess energy units" used in the main xas_viewer is used for these as well.  If the datatype is "xas", the displayed plot in the Importer will show the data converted to eV.
the settings (with arrays to use, mono d-spacing) are remembered during a xas_viewer session and used as default values when opening another file (or the same file again).
read_specfile() tries to extract the file and scan heder (from 'instrument/specfile/scan_header' and 'instrument/specfile/file_header'  -- should those be abstracted out as the other urls are?) and Specfile Importer will show those.

I think these are all improvements, but only lightly tested.  Let me know how this works for you and if you have any thoughts on what is missing, wrong, etc.

@newville you did a wonderful work implementing all this, thanks! I have deployed on the beamline the master version and at a first test everything seems to work fine.
Regarding your last point, I will work soon in the URLs specification for reading BLISS-type HDF5 files too, as the mapping is not the same. I will update the list of tasks and close this issue for clarity.


Resolve #1764

Addition to parameter description.
https://github.com/MicrosoftDocs/windows-powershell-docs/issues/1764

Docs Build status updates of commit 003792d:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

docset/windows/addsadministration/Set-ADUser.md
:white_check_mark:Succeeded

docset/winserver2012-ps/activedirectory/Set-ADUser.md
:white_check_mark:Succeeded

docset/winserver2012r2-ps/addsadministration/Set-ADUser.md
:white_check_mark:Succeeded

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.

cc @dariomws @get-itips @tseward
@JohanFreelancer9

Docs Build status updates of commit 4cae468:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

docset/windows/addsadministration/Set-ADUser.md
:white_check_mark:Succeeded

docset/winserver2012-ps/activedirectory/Set-ADUser.md
:white_check_mark:Succeeded

docset/winserver2012r2-ps/addsadministration/Set-ADUser.md
:white_check_mark:Succeeded

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.

I am ok once @tseward suggestion is applied.

Docs Build status updates of commit e786815:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

docset/windows/addsadministration/Set-ADUser.md
:white_check_mark:Succeeded

docset/winserver2012-ps/activedirectory/Set-ADUser.md
:white_check_mark:Succeeded

docset/winserver2012r2-ps/addsadministration/Set-ADUser.md
:white_check_mark:Succeeded

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.


bug: Slide Box showing double items when using ng-repeat

Type: bug
Platform: android 4.4 webview
I'm having an issue using the directive ion-slide-box, where i have an array of 2 values, and want to do a ng-repeat on this array. When i do so, there are 4 slides shown in the screen. Here is a bit of my code:
  <ion-slide-box
  	 does-continue="true"
  	 show-pager="true">
    <ion-slide ng-show="revenda" ng-repeat="produto in revenda.produtos">

	        {{produto.title}}

	        {{produto.price | currency}}

    </ion-slide>
  </ion-slide-box>

My array is 'revenda.produtos', wich has 2 items in it.
In my app's screen, i see 4 slides (or dots underneath the slides). It may be something in the directive itself, or in my code (i am not an expert on Javascript nor AngularJS).
I have a post that describes this issue too on Ionic Forums.

Greetings @brunodb3!
My sensors indicate that you need to update your issue through our custom issue form. We are now requiring all issues to be submitted this way, to ensure that we have all of the information necessary to fix them as quickly as possible.
Click Here To Update Your Issue
I will have no choice but to close this issue if it is not resubmitted through the form. Please fill out the rest of the form, so that I may use my friendly robot powers to assist you.
Thank you!

Thanks, this looks like a dupe of #3609, please continue the discussion there

We had similar issues, that were actually caused by a bug in ngAnimate making ngRepeat to show stale items
The solution was to add in app.config
$animateProvider.classNameFilter(/^((?!(no-animate)).)*$/);

And then to add the no-animate class on the ion-slide elements that had ng-repeat