AssertionError: same_day_quantity <= acquisition_quantity

Hi,
Firstly, thanks for open sourcing this tool!
Secondly, this bug is not something that's causing me "Jan 31 worries".
Thirdly, the raw format is quite handy for debugging and excluding trading-platform-specific parser issues, thanks for that, too.
With the following raw format, I manage to trigger an assertion error:
2023-06-30,SELL,STOCK,100,100.00,1.0,USD
2023-06-30,STOCK_ACTIVITY,STOCK,50,99.00,1.0,USD
2023-06-25,SELL,STOCK,30,100.00,1.0,USD
2023-01-01,STOCK_ACTIVITY,STOCK,500,101.10,1.0,USD

I can't see anything particularly wrong with the transaction data (it's a minimal & anonymised repro of real data, and if I exclude the sale on 2023-06-25 then the tool runs fine).
repro:
python -m cgt_calc.main --year 2023 --exchange-rates-file ./hmrc_fx.csv --report ./raw_test.pdf --raw ./raw_test.csv

Output:
INFO: No schwab file provided
INFO: No schwab Equity Award JSON file provided
INFO: No trading212 folder provided
INFO: No mssb folder provided
INFO: No sharesight file provided
First pass completed
Final portfolio:
  STOCK: 419.00
Final balance:
  Unknown: 13098.00 (USD)
Dividends: £0.00
Dividend taxes: £0.00
Interest: £0.00
Disposal proceeds: £10589.62

Traceback (most recent call last):
  File "<frozen runpy>", line 198, in _run_module_as_main
  File "<frozen runpy>", line 88, in _run_code
  File "/home/whatever/capital-gains-calculator/cgt_calc/main.py", line 717, in <module>
    init()
  File "/home/whatever/capital-gains-calculator/cgt_calc/main.py", line 713, in init
    sys.exit(main())
             ^^^^^^
  File "/home/whatever/capital-gains-calculator/cgt_calc/main.py", line 696, in main
    report = calculator.calculate_capital_gain(acquisition_list, disposal_list)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/whatever/capital-gains-calculator/cgt_calc/main.py", line 587, in calculate_capital_gain
    ) = self.process_disposal(
        ^^^^^^^^^^^^^^^^^^^^^^
  File "/home/whatever/capital-gains-calculator/cgt_calc/main.py", line 434, in process_disposal
    assert same_day_quantity <= acquisition_quantity
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
AssertionError

This is with the current HEAD revision (339b854983075053cdecadcbd90282fc8282b94f), but I don't think the issue is very new as I also hit it with da4a4da676ecf.

I've done some debugging to try to investigate this issue. To simplify things further I changed the currencies to GBP in my repro example, i.e.:
2023-06-30,SELL,STOCK,100,100.00,1.0,GBP
2023-06-30,STOCK_ACTIVITY,STOCK,50,99.00,1.0,GBP
2023-06-25,SELL,STOCK,30,100.00,1.0,GBP
2023-01-01,STOCK_ACTIVITY,STOCK,500,101.10,1.0,GBP

Here's what seems to be happening:

The "first pass" (calculator.convert_to_hmrc_transactions) runs fine. You end up with the following:

{datetime.date(2023, 1, 1): {'STOCK': HmrcTransactionData(quantity=Decimal('500'),
                                                          amount=Decimal('50550.00'),
                                                          fees=Decimal('1.0'))},
 datetime.date(2023, 6, 30): {'STOCK': HmrcTransactionData(quantity=Decimal('50'),
                                                           amount=Decimal('4950.00'),
                                                           fees=Decimal('1.0'))}}
ipdb> pp disposal_list
{datetime.date(2023, 6, 25): {'STOCK': HmrcTransactionData(quantity=Decimal('30'),
                                                           amount=Decimal('2999.00'),
                                                           fees=Decimal('1.0'))},
 datetime.date(2023, 6, 30): {'STOCK': HmrcTransactionData(quantity=Decimal('100'),
                                                           amount=Decimal('9999.00'),
                                                           fees=Decimal('1.0'))}}

You start the second, capital gains calculation pass (calculator.calculate_capital_gain) and going through days.
2023-01-01,STOCK_ACTIVITY,STOCK,500,101.10,1.0,GBP is processed, and you end up with the following calculation_entries: [<CalculationEntry SECTION 104, quantity: 500, disposal proceeds: -50550.00, allowable cost: 50550.00, fees: 1.0, gain: 0>]
2023-06-25,SELL,STOCK,30,100.00,1.0,GBP is processed.

There is no same day disposal (correct). (https://github.com/KapJI/capital-gains-calculator/blob/main/cgt_calc/main.py#L364 - # Same day rule is first)
There is a B&B acquisition on 2023/6/30 (https://github.com/KapJI/capital-gains-calculator/blob/main/cgt_calc/main.py#L407 - # Bed and breakfast rule next)

this looks in the acquisition_list and finds HmrcTransactionData(quantity=Decimal('50'), amount=Decimal('4950.00'), fees=Decimal('1.0'))
it also looks in disposal_list and finds  HmrcTransactionData(quantity=Decimal('100'), amount=Decimal('9999.00'), fees=Decimal('1.0'))
same_day_quantity: 100, _same_day_amount: 9999, _same_day_fees: 1
acquisition_quantity: 50
this triggers the assert same_day_quantity <= acquisition_quantity at https://github.com/KapJI/capital-gains-calculator/blob/main/cgt_calc/main.py#L434.

In your case there should be applied only the same day rule on 2023-06-30, then the rest is just 104. I believe I have the fix but would you take a look at the attached report and double check is correct?
raw_test.pdf

Disclaimer: I'm not a financial advisor/accountant.

In your case there should be applied only the same day rule on 2023-06-30, then the rest is just 104.

This is my understanding as well. (For completeness, if there was another acquisition on, say, 2023-07-01 then I guess there might be some more B&B?)

I believe I have the fix

Nice!

look at the attached report and double check is correct?

Assuming our understanding above is correct, the report should have the same numbers as if we ran it on the following data, where I moved the sale from 2023-06-25 to 2023-05-25 to be outside of the 30 day window, avoiding triggering the assert:
2023-06-30,SELL,STOCK,100,100.00,1.0,GBP
2023-06-30,STOCK_ACTIVITY,STOCK,50,99.00,1.0,GBP
2023-05-25,SELL,STOCK,30,100.00,1.0,GBP
2023-01-01,STOCK_ACTIVITY,STOCK,500,101.10,1.0,GBP

And indeed the numbers seem to match, so it seems consistent.
In terms of correctness I'm still working on understanding a few things but I don't think those are specific to this issue.

Thanks for the clarification @m01, I created a PR with the fix: #473

Closed by #473


PageView NoSuchMethodError was thrown during performLayout()

Hi
I'm building my first flutter application and i have this problem that i can't figure out.
The app retrieve data from a firebase realtime database, add all the entries in a list, and show all the entries in the first page of a PageView.
When i launch app in debug mode i have the following error:

I/flutter ( 7901): ══╡ EXCEPTION CAUGHT BY RENDERING LIBRARY ╞═════════════════════════════════════════════════════════
I/flutter ( 7901): The following NoSuchMethodError was thrown during performLayout():
I/flutter ( 7901): The getter 'key' was called on null.
I/flutter ( 7901): Receiver: null
I/flutter ( 7901): Tried calling: key
I/flutter ( 7901): User-created ancestor of the error-causing widget was:
I/flutter ( 7901):   PageView-[#62d48] file:///home/amedeo/AndroidStudioProjects/pastore_app/lib/main.dart:241:17
I/flutter ( 7901): When the exception was thrown, this was the stack:
I/flutter ( 7901): #0      Object.noSuchMethod (dart:core-patch/object_patch.dart:51:5)
I/flutter ( 7901): #1      SliverChildListDelegate.build (package:flutter/src/widgets/sliver.dart:672:27)
I/flutter ( 7901): #2      SliverMultiBoxAdaptorElement._build.<anonymous closure> (package:flutter/src/widgets/sliver.dart:1153:67)
I/flutter ( 7901): #3      _HashMap.putIfAbsent (dart:collection-patch/collection_patch.dart:137:29)
I/flutter ( 7901): #4      SliverMultiBoxAdaptorElement._build (package:flutter/src/widgets/sliver.dart:1153:26)
I/flutter ( 7901): #5      SliverMultiBoxAdaptorElement.createChild.<anonymous closure> (package:flutter/src/widgets/sliver.dart:1166:55)
I/flutter ( 7901): #6      BuildOwner.buildScope (package:flutter/src/widgets/framework.dart:2328:19)
I/flutter ( 7901): #7      SliverMultiBoxAdaptorElement.createChild (package:flutter/src/widgets/sliver.dart:1159:11)
I/flutter ( 7901): #8      RenderSliverMultiBoxAdaptor._createOrObtainChild.<anonymous closure> (package:flutter/src/rendering/sliver_multi_box_adaptor.dart:354:23)
I/flutter ( 7901): #9      RenderObject.invokeLayoutCallback.<anonymous closure> (package:flutter/src/rendering/object.dart:1797:58)
I/flutter ( 7901): #10     PipelineOwner._enableMutationsToDirtySubtrees (package:flutter/src/rendering/object.dart:875:15)
I/flutter ( 7901): #11     RenderObject.invokeLayoutCallback (package:flutter/src/rendering/object.dart:1797:13)
I/flutter ( 7901): #12     RenderSliverMultiBoxAdaptor._createOrObtainChild (package:flutter/src/rendering/sliver_multi_box_adaptor.dart:343:5)
I/flutter ( 7901): #13     RenderSliverMultiBoxAdaptor.addInitialChild (package:flutter/src/rendering/sliver_multi_box_adaptor.dart:427:5)
I/flutter ( 7901): #14     RenderSliverFixedExtentBoxAdaptor.performLayout (package:flutter/src/rendering/sliver_fixed_extent_list.dart:196:12)
I/flutter ( 7901): #15     RenderObject.layout (package:flutter/src/rendering/object.dart:1701:7)
I/flutter ( 7901): #16     RenderViewportBase.layoutChildSequence (package:flutter/src/rendering/viewport.dart:406:13)
I/flutter ( 7901): #17     RenderViewport._attemptLayout (package:flutter/src/rendering/viewport.dart:1352:12)
I/flutter ( 7901): #18     RenderViewport.performLayout (package:flutter/src/rendering/viewport.dart:1270:20)
I/flutter ( 7901): #19     RenderObject.layout (package:flutter/src/rendering/object.dart:1701:7)
I/flutter ( 7901): #20     RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:105:13)
I/flutter ( 7901): #21     RenderObject.layout (package:flutter/src/rendering/object.dart:1701:7)
I/flutter ( 7901): #22     RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:105:13)
I/flutter ( 7901): #23     RenderObject.layout (package:flutter/src/rendering/object.dart:1701:7)
I/flutter ( 7901): #24     RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:105:13)
I/flutter ( 7901): #25     RenderObject.layout (package:flutter/src/rendering/object.dart:1701:7)
I/flutter ( 7901): #26     RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:105:13)
I/flutter ( 7901): #27     RenderObject.layout (package:flutter/src/rendering/object.dart:1701:7)
I/flutter ( 7901): #28     RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:105:13)
I/flutter ( 7901): #29     RenderObject.layout (package:flutter/src/rendering/object.dart:1701:7)
I/flutter ( 7901): #30     RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:105:13)
I/flutter ( 7901): #31     RenderObject.layout (package:flutter/src/rendering/object.dart:1701:7)
I/flutter ( 7901): #32     RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:105:13)
I/flutter ( 7901): #33     RenderObject.layout (package:flutter/src/rendering/object.dart:1701:7)
I/flutter ( 7901): #34     RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:105:13)
I/flutter ( 7901): #35     RenderObject.layout (package:flutter/src/rendering/object.dart:1701:7)
I/flutter ( 7901): #36     RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:105:13)
I/flutter ( 7901): #37     RenderObject.layout (package:flutter/src/rendering/object.dart:1701:7)
I/flutter ( 7901): #38     MultiChildLayoutDelegate.layoutChild (package:flutter/src/rendering/custom_layout.dart:142:11)
I/flutter ( 7901): #39     _ScaffoldLayout.performLayout (package:flutter/src/material/scaffold.dart:444:7)
I/flutter ( 7901): #40     MultiChildLayoutDelegate._callPerformLayout (package:flutter/src/rendering/custom_layout.dart:212:7)
I/flutter ( 7901): #41     RenderCustomMultiChildLayoutBox.performLayout (package:flutter/src/rendering/custom_layout.dart:356:14)
I/flutter ( 7901): #42     RenderObject.layout (package:flutter/src/rendering/object.dart:1701:7)
I/flutter ( 7901): #43     RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:105:13)
I/flutter ( 7901): #44     RenderObject.layout (package:flutter/src/rendering/object.dart:1701:7)
I/flutter ( 7901): #45     RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:105:13)
I/flutter ( 7901): #46     _RenderCustomClip.performLayout (package:flutter/src/rendering/proxy_box.dart:1232:11)
I/flutter ( 7901): #47     RenderObject.layout (package:flutter/src/rendering/object.dart:1701:7)
I/flutter ( 7901): #48     RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:105:13)
I/flutter ( 7901): #49     RenderObject.layout (package:flutter/src/rendering/object.dart:1701:7)
I/flutter ( 7901): #50     RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:105:13)
I/flutter ( 7901): #51     RenderObject.layout (package:flutter/src/rendering/object.dart:1701:7)
I/flutter ( 7901): #52     RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:105:13)
I/flutter ( 7901): #53     RenderObject.layout (package:flutter/src/rendering/object.dart:1701:7)
I/flutter ( 7901): #54     RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:105:13)
I/flutter ( 7901): #55     RenderObject.layout (package:flutter/src/rendering/object.dart:1701:7)
I/flutter ( 7901): #56     RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:105:13)
I/flutter ( 7901): #57     RenderObject.layout (package:flutter/src/rendering/object.dart:1701:7)
I/flutter ( 7901): #58     RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:105:13)
I/flutter ( 7901): #59     RenderObject.layout (package:flutter/src/rendering/object.dart:1701:7)
I/flutter ( 7901): #60     RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:105:13)
I/flutter ( 7901): #61     RenderObject.layout (package:flutter/src/rendering/object.dart:1701:7)
I/flutter ( 7901): #62     RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:105:13)
I/flutter ( 7901): #63     RenderOffstage.performLayout (package:flutter/src/rendering/proxy_box.dart:3140:13)
I/flutter ( 7901): #64     RenderObject.layout (package:flutter/src/rendering/object.dart:1701:7)
I/flutter ( 7901): #65     RenderStack.performLayout (package:flutter/src/rendering/stack.dart:510:15)
I/flutter ( 7901): #66     RenderObject.layout (package:flutter/src/rendering/object.dart:1701:7)
I/flutter ( 7901): #67     RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:105:13)
I/flutter ( 7901): #68     RenderObject.layout (package:flutter/src/rendering/object.dart:1701:7)
I/flutter ( 7901): #69     RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:105:13)
I/flutter ( 7901): #70     RenderObject.layout (package:flutter/src/rendering/object.dart:1701:7)
I/flutter ( 7901): #71     RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:105:13)
I/flutter ( 7901): #72     RenderObject.layout (package:flutter/src/rendering/object.dart:1701:7)
I/flutter ( 7901): #73     RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:105:13)
I/flutter ( 7901): #74     RenderObject.layout (package:flutter/src/rendering/object.dart:1701:7)
I/flutter ( 7901): #75     RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:105:13)
I/flutter ( 7901): #76     RenderObject.layout (package:flutter/src/rendering/object.dart:1701:7)
I/flutter ( 7901): #77     RenderView.performLayout (package:flutter/src/rendering/view.dart:152:13)
I/flutter ( 7901): #78     RenderObject._layoutWithoutResize (package:flutter/src/rendering/object.dart:1578:7)
I/flutter ( 7901): #79     PipelineOwner.flushLayout (package:flutter/src/rendering/object.dart:844:18)
I/flutter ( 7901): #80     RendererBinding.drawFrame (package:flutter/src/rendering/binding.dart:341:19)
I/flutter ( 7901): #81     WidgetsBinding.drawFrame (package:flutter/src/widgets/binding.dart:761:13)
I/flutter ( 7901): #82     RendererBinding._handlePersistentFrameCallback (package:flutter/src/rendering/binding.dart:280:5)
I/flutter ( 7901): #83     SchedulerBinding._invokeFrameCallback (package:flutter/src/scheduler/binding.dart:1033:15)
I/flutter ( 7901): #84     SchedulerBinding.handleDrawFrame (package:flutter/src/scheduler/binding.dart:975:9)
I/flutter ( 7901): #85     SchedulerBinding.scheduleWarmUpFrame.<anonymous closure> (package:flutter/src/scheduler/binding.dart:784:7)
I/flutter ( 7901): #94     _Timer._runTimers (dart:isolate-patch/timer_impl.dart:382:19)
I/flutter ( 7901): #95     _Timer._handleMessage (dart:isolate-patch/timer_impl.dart:416:5)
I/flutter ( 7901): #96     _RawReceivePortImpl._handleMessage (dart:isolate-patch/isolate_patch.dart:172:12)
I/flutter ( 7901): (elided 8 frames from package dart:async and package dart:async-patch)
I/flutter ( 7901): The following RenderObject was being processed when the exception was fired: RenderSliverFillViewport#d6420 relayoutBoundary=up1 NEEDS-LAYOUT NEEDS-PAINT:
I/flutter ( 7901):   creator: SliverFillViewport ← Viewport ← IgnorePointer-[GlobalKey#cec9a] ← Semantics ←
I/flutter ( 7901):     _PointerListener ← Listener ← _GestureSemantics ←
I/flutter ( 7901):     RawGestureDetector-[LabeledGlobalKey<RawGestureDetectorState>#9d04a] ← _PointerListener ← Listener
I/flutter ( 7901):     ← _ScrollableScope ← _ScrollSemantics-[GlobalKey#04774] ← ⋯
I/flutter ( 7901):   parentData: paintOffset=Offset(0.0, 0.0) (can use size)
I/flutter ( 7901):   constraints: SliverConstraints(AxisDirection.right, GrowthDirection.forward, ScrollDirection.idle,
I/flutter ( 7901):     scrollOffset: 0.0, remainingPaintExtent: 600.9, crossAxisExtent: 802.7, crossAxisDirection:
I/flutter ( 7901):     AxisDirection.down, viewportMainAxisExtent: 600.9, remainingCacheExtent: 600.9 cacheOrigin: 0.0 )
I/flutter ( 7901):   geometry: null
I/flutter ( 7901):   no children current live
I/flutter ( 7901): This RenderObject has no descendants.
I/flutter ( 7901): ════════════════════════════════════════════════════════════════════════════════════════════════════
I/flutter ( 7901): Another exception was thrown: NoSuchMethodError: The method 'debugAssertIsValid' was called on null.
I/flutter ( 7901): Another exception was thrown: NoSuchMethodError: The getter 'visible' was called on null.

I have tried to add a GlobalKey to the PageView key value but it didn't work.
Maybe the problem is in the _onEntryChanged function but i commented it and the problem still remaining.
Here is the link of the github repo with all the file. GitHub Repository
Thank you very much if you can help me.

Hello @hobbit-xD !
Thank you for posting an issue.
Can you please also attach the flutter doctor -v command output?
Your question seems to be a good fit for the StackOverflow as well. Flutter has a very active and helpful community there, so feel free to post it there too.
Thank you.

@hobbit-xD
This issue has been moved to https://github.com/FirebaseExtended/flutterfire/issues/1067. Any further collaboration will be done there.


Czech language support

Czech Language support
Possibility to override language by adding lang=en in the URL, better for embedding

Seems ok.
@gnibeda?


Theming

remove emotion library
revert styles accordingly
extend globalStyles file as needed

Why do you want to remove the emotion library, I thought they were just added? I don't have a specific preference myself, but just curious why we're reverting

As per todays Bifold UG/WG call we're closing stale issues. Please re-open if you feel strongly its still an issue and relevent.


On secureli init, install pre-commit library

As part of this story, also write .git/hooks/pre-commit script

@stujfiter Let's talk about the 3rd bullet point in this story in our next standup meeting


关于vIewModel的疑问，希望解答 （Questions about vIewModel, I hope to answer）

中文描述 ：
研读了一天关于architecture-components的库，对viewModel有一个疑问。描述如下：viewModel保存的数据可以独立于Activity之外，也就是说当Activity销毁后viewModel保存的数据还存在(根据屏幕旋转的例子可以看出，旋转屏幕后Activity实例已经重新创建，但viewModel实例还是原来的)，但是当我ActivityA跳转到ActivityB后，再从ActivityB用Intent方式跳转到ActivityA，viewModel却重新创建了导致UI显示错误(在跳转和屏幕旋转前，我更新了ViewModel的数据)，我觉得跳转方式和屏幕旋转方式并没有区别，然而viewModel却变了。
这个疑问困惑我很久，很着急，我不确定操作方式是否有问题，烦请解答！
English description ：
I studied the library of architecture-components for one day and had a question about viewModel. The description is as follows: The data saved by the viewModel can be independent of the Activity, that is to say, the data saved by the viewModel still exists after the Activity is destroyed. (According to the example of the screen rotation, the Activity instance has been re-created after rotating the screen, but the viewModel instance is still The original), but when I jumped from ActivityA to ActivityB, and then jumped from ActivityB to ActivityA with Intent, the viewModel was recreated and caused the UI display error (I updated the ViewModel data before the jump and screen rotation). ), I think there is no difference between the jump mode and the screen rotation mode, but the viewModel has changed.
This question has puzzled me for a long time,  very anxious, I am not sure if there is a problem with the operation method, please answer!

我觉得跳转方式和屏幕旋转方式并没有区别

See also the docs.

你以为你以为的就是你以为的吗
在2018年07月30日 10:36，rayworksnotifications<EMAIL_ADDRESS>写道：
我觉得跳转方式和屏幕旋转方式并没有区别
See also the docshttps://developer.android.google.cn/guide/components/activities/tasks-and-back-stack#ManagingTasks.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHubhttps://github.com/googlesamples/android-architecture-components/issues/424#issuecomment-408730501, or mute the threadhttps://github.com/notifications/unsubscribe-auth/ARMSfpjiNwYarpxMSecHfZBu9OKokmH7ks5uLnEigaJpZM4VlIIJ.


Missing Obs for Vitals and BMI

Instead of showing a line with possible Vitals with "NONE" value.
Show only for those patients with registered values on the encounter.

Coverage remained the same at 47.12% when pulling 985a6ccdc1a9e16fab1e4f9cac4e27b721148387 on larslemos:master into fe4553c30debb835dac775bd1e3cec072711b2f2 on esaude:master.

 Calculate BMI

 1.0.0_25 Feature: Display vitals header


copy colorcode with or without leading # (Example: #0d2222 vs. 0d2222)

Description of the new feature / enhancement
I'd like to see an option to copy the hex-code with/without the hashtag (#)
(Alternatively, you could enhance the list of color formats.)
Scenario when this would be used?
I copy a color and paste it into my CSS code.
Supporting information
No response

Yes, in the past the # was included, but there are some programs UI's that only accept max 6 characters, which made it impossible to paste the whole color. Therefore the desicion is made to exculde it. Typing the # by hand is a minor inconvenience. There's the idea as in #8305, but can't say if/when that'ld be reality.


Add ignition file flag

Copied from https://github.com/giantswarm/k8s-kvm/pull/93

The k8s-kvm PR was already approved. This should be equivalent.


Exception on ArteTVBaseIE

Please follow the guide below

You will be asked some questions and requested to provide some information, please read them carefully and answer honestly
Put an x into all the boxes [ ] relevant to your issue (like that [x])
Use Preview tab to see how your issue will actually look like

Make sure you are using the latest version: run youtube-dl --version and ensure your version is 2017.06.05. If it's not read this FAQ entry and update. Issues with outdated version will be rejected.

[x] I've verified and I assure that I'm running youtube-dl 2017.06.05

Before submitting an issue make sure you have:

[x] At least skimmed through README and most notably FAQ and BUGS sections
[x] Searched the bugtracker for similar issues including closed ones

What is the purpose of your issue?

[x] Bug report (encountered problems with youtube-dl)
[ ] Site support request (request for adding support for a new site)
[ ] Feature request (request for a new functionality)
[ ] Question
[ ] Other

$ youtube-dl -v http://www.arte.tv/de/videos/051656-000-A/die-revolution-der-selbstlosen
[debug] System config: []
[debug] User config: []
[debug] Custom config: []
[debug] Command-line args: [u'-v', u'http://www.arte.tv/de/videos/051656-000-A/die-revolution-der-selbstlosen']
[debug] Encodings: locale UTF-8, fs UTF-8, out UTF-8, pref UTF-8
[debug] youtube-dl version 2017.06.05
[debug] Python version 2.7.9 - Linux-3.16.0-4-amd64-x86_64-with-debian-8.8
[debug] exe versions: avconv 11.9-6, avprobe 11.9-6, rtmpdump 2.4
[debug] Proxy map: {}
[arte.tv:+7] die-revolution-der-selbstlosen: Downloading webpage
[arte.tv:+7] die-revolution-der-selbstlosen: Downloading JSON metadata
Traceback (most recent call last):
File "/usr/local/bin/youtube-dl", line 11, in
sys.exit(main())
File "/usr/local/lib/python2.7/dist-packages/youtube_dl/init.py", line 465, in main
_real_main(argv)
File "/usr/local/lib/python2.7/dist-packages/youtube_dl/init.py", line 455, in _real_main
retcode = ydl.download(all_urls)
File "/usr/local/lib/python2.7/dist-packages/youtube_dl/YoutubeDL.py", line 1897, in download
url, force_generic_extractor=self.params.get('force_generic_extractor', False))
File "/usr/local/lib/python2.7/dist-packages/youtube_dl/YoutubeDL.py", line 761, in extract_info
ie_result = ie.extract(url)
File "/usr/local/lib/python2.7/dist-packages/youtube_dl/extractor/common.py", line 433, in extract
ie_result = self._real_extract(url)
File "/usr/local/lib/python2.7/dist-packages/youtube_dl/extractor/arte.py", line 203, in _real_extract
return self._extract_from_webpage(webpage, video_id, lang)
File "/usr/local/lib/python2.7/dist-packages/youtube_dl/extractor/arte.py", line 246, in _extract_from_webpage
return self._extract_from_json_url(json_url, video_id, lang, title=title)
File "/usr/local/lib/python2.7/dist-packages/youtube_dl/extractor/arte.py", line 110, in _extract_from_json_url
for format_id, format_dict in player_info['VSR'].items():
AttributeError: 'list' object has no attribute 'items'

damn, video not available anymore. sorry.


Shifu Eval Step Scalability Improvement

In shifu 0.2.3, data are loaded in heap and then sort and then compute eval metrix.
Should be sorted in pig and computed one by one, not loading data into heap. Better to decrease iterate times.

Done in 0.2.4 release


show progress on reclaiming space

currently, reclaiming space on a disk image only shows a spinner.

there's no indication of progress happening, which doesn't assure the user progress is being made (or how much is done).

just checked to say there's -p to "display progress bar" (is it actually a bar? also only convert and rebase) and not "verbose mode"

well, it's actually just a number, not a progress bar.
i think parsing implementation would be easy, but i'm not sure about the UI part.
(also, each new line shows up as ^M on neovim on macOS, just making note of that)
example output
    (0.00/100%)
    (1.01/100%)
    (2.03/100%)
    (3.05/100%)
    (4.05/100%)
    (5.07/100%)
    (6.08/100%)
    (7.09/100%)
    (8.09/100%)
    (9.09/100%)
    (10.10/100%)
    (11.12/100%)
    (12.12/100%)
    (13.13/100%)
    (14.14/100%)
    (15.16/100%)
    (16.17/100%)
    (17.19/100%)
    (18.21/100%)
    (19.22/100%)
    (20.24/100%)
    (21.25/100%)
    (22.26/100%)
    (23.28/100%)
    (24.28/100%)
    (25.29/100%)
    (26.32/100%)
    (27.32/100%)
    (28.33/100%)
    (29.34/100%)
    (30.35/100%)
    (31.36/100%)
    (32.38/100%)
    (33.39/100%)
    (34.41/100%)
    (35.42/100%)
    (36.43/100%)
    (37.45/100%)
    (38.45/100%)
    (39.46/100%)
    (40.47/100%)
    (41.48/100%)
    (42.48/100%)
    (43.50/100%)
    (44.52/100%)
    (45.53/100%)
    (46.56/100%)
    (47.58/100%)
    (48.58/100%)
    (49.60/100%)
    (50.61/100%)
    (51.62/100%)
    (52.62/100%)
    (53.63/100%)
    (54.65/100%)
    (55.66/100%)
    (56.67/100%)
    (57.67/100%)
    (58.67/100%)
    (59.68/100%)
    (60.69/100%)
    (61.70/100%)
    (62.71/100%)
    (63.72/100%)
    (64.73/100%)
    (65.73/100%)
    (66.74/100%)
    (67.75/100%)
    (68.75/100%)
    (69.75/100%)
    (70.78/100%)
    (71.80/100%)
    (72.81/100%)
    (73.81/100%)
    (74.82/100%)
    (75.83/100%)
    (76.84/100%)
    (77.84/100%)
    (78.85/100%)
    (79.88/100%)
    (80.88/100%)
    (81.90/100%)
    (82.91/100%)
    (83.92/100%)
    (84.93/100%)
    (85.93/100%)
    (86.95/100%)
    (87.97/100%)
    (89.00/100%)
    (90.01/100%)
    (91.01/100%)
    (92.02/100%)
    (93.03/100%)
    (94.03/100%)
    (95.04/100%)
    (96.06/100%)
    (97.07/100%)
    (98.08/100%)
    (99.08/100%)
    (100.00/100%)
    (100.00/100%)


Changes to reddit.py so that it will run on Windows 10

🐛 Bug

I needed to make the following changes to reddit.py, for it to run on Windows:

num_workers =1, for train_loader and subgraph_loader, so:

from sys import platform
num_workers = 1 if platform == "win32" else 12
train_loader = NeighborSampler(data.edge_index, node_idx=data.train_mask,
                               sizes=[25, 10], batch_size=1024, shuffle=True,
                               num_workers=num_workers)
subgraph_loader = NeighborSampler(data.edge_index, node_idx=None, sizes=[-1],
                                  batch_size=1024, shuffle=False,
                                  num_workers=num_workers)

At the bottom, encase within if __name__ == "__main__":

if __name__ == "__main__":
    for epoch in range(1, 11):
        loss, acc = train(epoch)
        print(f'Epoch {epoch:02d}, Loss: {loss:.4f}, Approx. Train: {acc:.4f}')
        train_acc, val_acc, test_acc = test()
        print(f'Train: {train_acc:.4f}, Val: {val_acc:.4f}, '
            f'Test: {test_acc:.4f}')

OS: Windows 10
Python version: 3.8
PyTorch version: 1.6
CUDA/cuDNN version: 10.1

Thanks for the feedback. Any reason why num_workers does not work on Windows? What's the error message?

Here's the error message.  I'm running out of memory or virtual memory:
Traceback (most recent call last):
  File "<string>", line 1, in <module>
  File "C:\Anaconda3\envs\Python38\lib\multiprocessing\spawn.py", line 116, in spawn_main
    exitcode = _main(fd, parent_sentinel)
  File "C:\Anaconda3\envs\Python38\lib\multiprocessing\spawn.py", line 125, in _main
    prepare(preparation_data)
  File "C:\Anaconda3\envs\Python38\lib\multiprocessing\spawn.py", line 236, in prepare
    _fixup_main_from_path(data['init_main_from_path'])
  File "C:\Anaconda3\envs\Python38\lib\multiprocessing\spawn.py", line 287, in _fixup_main_from_path
    main_content = runpy.run_path(main_path,
  File "C:\Anaconda3\envs\Python38\lib\runpy.py", line 265, in run_path
    return _run_module_code(code, init_globals, run_name,
  File "C:\Anaconda3\envs\Python38\lib\runpy.py", line 97, in _run_module_code
    _run_code(code, mod_globals, init_globals,
  File "C:\Anaconda3\envs\Python38\lib\runpy.py", line 87, in _run_code
    exec(code, run_globals)
  File "C:\Python\PyTorch\pytorch_geometric\examples\reddit.py", line 19, in <module>
    subgraph_loader = NeighborSampler(data.edge_index, node_idx=None, sizes=[-1],
  File "C:\Anaconda3\envs\Python38\lib\site-packages\torch_geometric\data\sampler.py", line 85, in __init__
    adj = adj.t() if flow == 'source_to_target' else adj
  File "C:\Anaconda3\envs\Python38\lib\site-packages\torch_sparse\transpose.py", line 34, in <lambda>
    SparseTensor.t = lambda self: t(self)
  File "C:\Anaconda3\envs\Python38\lib\site-packages\torch_sparse\transpose.py", line 8, in t
    csr2csc = src.storage.csr2csc()
  File "C:\Anaconda3\envs\Python38\lib\site-packages\torch_sparse\storage.py", line 348, in csr2csc
    csr2csc = idx.argsort()
RuntimeError: [enforce fail at ..\c10\core\CPUAllocator.cpp:72] data. DefaultCPUAllocator: not enough memory: you tried to allocate 916927136 bytes. Buy new RAM!

Playing with this some more (I was in a hurry last night), a better fix is to encase all initialization under if __name__ == "__main__":
if __name__ == "__main__":
    path = osp.join(osp.dirname(osp.realpath(__file__)), '..', 'data', 'Reddit')
    dataset = Reddit(path)
    data = dataset[0]

    device = torch.device('cuda' if torch.cuda.is_available() else 'cpu')
    model = SAGE(dataset.num_features, 256, dataset.num_classes)
    model = model.to(device)
    optimizer = torch.optim.Adam(model.parameters(), lr=0.01)

    x = data.x.to(device)
    y = data.y.squeeze().to(device)

    num_workers = 1 if platform == "win32" else 12
    train_loader = NeighborSampler(data.edge_index, node_idx=data.train_mask,
                                sizes=[25, 10], batch_size=1024, shuffle=True,
                                num_workers=num_workers)
    subgraph_loader = NeighborSampler(data.edge_index, node_idx=None, sizes=[-1],
                                    batch_size=1024, shuffle=False,
                                    num_workers=num_workers)
    for epoch in range(1, 11):
        loss, acc = train(epoch)
        print(f'Epoch {epoch:02d}, Loss: {loss:.4f}, Approx. Train: {acc:.4f}')
        train_acc, val_acc, test_acc = test()
        print(f'Train: {train_acc:.4f}, Val: {val_acc:.4f}, '
            f'Test: {test_acc:.4f}')

Using this approach, I see the following performance for various num_workers (times are per-epoch; (4)=(1)-(3), (5)=(2)-(3); I'm calling "Loader Init Time" the time that tqdm sits at 0%):

num_workers
(1) Train Tm [s]
(2) Test Tm [s]
(3) Loader Init Time
(4) Train Exec Tm [s]
(5) Test Exec Tm [s]

1
27
89
8
19
81

2
24
70
13
11
57

3
27
74
19
8
55

4
32
82
25
7
57

12
77
172
70
7
102

I think it's related to this, but it may not be exactly the same. I think this problem is somewhat for common PyTorch Windows users; for better performance, I've set num_workers=1 often for open-source projects that were developed under Linux, even when things couldn't be addressed by putting everything under if __name__ == "__main__" .


Initial Build Failed when creating new Gen 2 React Vite or Next app

Environment information
System:
  OS: macOS 14.4.1
  CPU: (8) arm64 Apple M1
  Memory: 184.72 MB / 16.00 GB
  Shell: /bin/zsh
Binaries:
  Node: 20.12.2 - ~/n/bin/node
  Yarn: 1.22.19 - /opt/homebrew/bin/yarn
  npm: 9.8.1 - ~/.npm-global/bin/npm
  pnpm: undefined - undefined
NPM Packages:
  @aws-amplify/backend: 0.13.0-beta.15
  @aws-amplify/backend-cli: 0.12.0-beta.17
  aws-amplify: 6.0.28
  aws-cdk: 2.137.0
  aws-cdk-lib: 2.137.0
  typescript: 5.4.5
AWS environment variables:
  AWS_STS_REGIONAL_ENDPOINTS = regional
  AWS_NODEJS_CONNECTION_REUSE_ENABLED = 1
  AWS_SDK_LOAD_CONFIG = 1
No CDK environment variables

Description
Following https://docs.amplify.aws/gen2/start/quickstart/vite-react-app/ to setup gen2 React + Vite (or Next), I got all the way to the last line:

Review all of your settings to ensure everything is set up correctly. Choose Save and deploy to deploy your web app.

The tutorial omits instructions on which role to select so I went with the "Create and use a new service role" option. When clicking create & deploy, I receive an error page. If I navigate to "All Apps", no apps appear. I also tried a few of the gen2 roles to no avail.

Here is a link to my repo which should be a mirror image of the tutorial: https://github.com/protoEvangelion/postcards

I see different error Error updating stack: UPDATE_ROLLBACK_IN_PROGRESS The following resource(s) failed to update: [StagingBucket, ContainerAssetsRepository]. when I use all default settings to create a starter repo in github and deploy to amplify front end hosting.

Looks related: https://github.com/aws-amplify/amplify-backend/issues/1229
Note I previously created an app with gen1 no problem.

@protoEvangelion 👋 , I am glad to hear that you are unblocked and yes I agree that the error messaging needs improvement for debugging purposes and also to ensure clear next steps on how to resolve it.

@protoEvangelion can you please check out this: https://docs.amplify.aws/react/deploy-and-host/fullstack-branching/custom-pipelines/

@protoEvangelion, we've recently deployed an update that enhances the error messaging to provide better clarity. I'll be closing this thread now. Thanks!


Verify Facebook Login on current release build

Works with latest beta :+1:

In the current App Store version you are presented with an in-app modal window that only shows a spinner, this might be the issue that was reported to Carter.

In the 1.8.0 beta you are simply sent to Safari, like the Twitter auth already does in the current App Store release.


Update if...else statements to c.Asserts:  Issue #16756

Updated docker_cli_kill_test.go to change if...else statements to c.Asserts
Signed-off-by: Zuhayr Elahi<EMAIL_ADDRESS>

Part of #16756

@zelahi you need to gofmt the file : gofmt -s -w  integration-cli/docker_cli_kill_test.go.

@vdemeester Thanks for the tips!! I just ran it =)

Is there a way to debug janky, or the Jenkins?  I looked at the log and it said that it failed to destroy the container.  Am I missing something?

Maybe needs a re-trigger

The janky failure seems unrelated to this change.
You can run git rebase -i HEAD~3 and change the pick in the 2nd and 3rd lines to squash, this way you can squash the 3 commits into one. After that run git push -f origin 16756-dockercli-killtest to force push the change to github.
Once the push finishes, janky will start the build automatically.

Please sign your commits following these rules:
https://github.com/docker/docker/blob/master/CONTRIBUTING.md#sign-your-work
The easiest way to do this is to amend the last commit:
$ git clone -b "16756-dockercli-killtest" git@github.com:zelahi/docker.git somewhere
$ cd somewhere
$ git rebase -i HEAD~5
editor opens
change each 'pick' to 'edit'
save the file and quit
$ git commit --amend -s --no-edit
$ git rebase --continue # and repeat the amend for each commit
$ git push -f

Ammending updates the existing PR. You DO NOT need to open a new one.

@zelahi it seems there is some unrelated changes in this PR (daemon.md and docker_cli_nat_test.go), you're gonna need to remove these from the commit :wink:.

Ahh shoot, thanks for catching that @vdemeester . I can take care of it

Actually before I attempt something I do want to ask. Is there a recommended way to remove files that got into a commit?

@zelahi since the branch for this PR is 16756-dockercli-killtest and I think there must be a master branch and it should be update to the upstream/master. If so you can do
git checkout origin/master FILENAME

Please sign your commits following these rules:
https://github.com/docker/docker/blob/master/CONTRIBUTING.md#sign-your-work
The easiest way to do this is to amend the last commit:
$ git clone -b "16756-dockercli-killtest" git@github.com:zelahi/docker.git somewhere
$ cd somewhere
$ git rebase -i HEAD~14
editor opens
change each 'pick' to 'edit'
save the file and quit
$ git commit --amend -s --no-edit
$ git rebase --continue # and repeat the amend for each commit
$ git push -f

Ammending updates the existing PR. You DO NOT need to open a new one.

@zelahi Could you fix this PR or close it and re-open one with a clean commit please :wink:

Ahh sry, sure I can close this and open a clean pull request

@zelahi Thank you very much :bow:


tlp says bluetooth is on

tlp reports that bluetooth is activated on my computer:
$ sudo tlp stat
[...]
+++ Wireless
bluetooth = on

But nixos disagrees:
$ sudo nixos-option hardware.bluetooth.enable
[sudo] password for cassou:
Value:
false

Default:
false

Description:

Whether to enable support for Bluetooth.
Declared by:
  "/home/cassou/nixpkgs/nixos/modules/services/hardware/bluetooth.nix"

Defined by:
  "/home/cassou/Documents/configuration/configuration.nix"

Gnome3 says "No Bluetooth adapters found"

/cc @abbradar

What does rfkill list report?

Agrees with tlp:
$ rfkill list
$ rfkill list
0: phy0: Wireless LAN
	Soft blocked: no
	Hard blocked: no
1: hci0: Bluetooth
	Soft blocked: no
	Hard blocked: no

Looks like you indeed have an enabled Bluetooth adapter. config.hardware.bluetooth.enable only enabled services required for Bluetooth to work (and for GNOME to see it), but it doesn't touch the physical adapter.

Oh, thanks. Any idea how to deactivate bluetooth so that it does not consume battery anymore?

You can just use TLP for that -- I can't remember the exact configuration though. Also you can use "systemd-rfkill@hci0" service but I can't remember how exactly, too (I suppose it should just be enabled).

Let's close this as it's not a TLP bug.


Websockets init

Fully functional and tested websocket on conversations (still some issues with dtos on emit which will have to be addressed asap), implemented base in users module (users.gateway.ts) for you to have fun with. conversations.gateway.ts should give you a solid sense of the syntax. !!! Gateways have to be registered as providers and the server variable in the gateway classes is the same for all of them gateways !!!
Auth on connect is header-based as of now which makes no sense on socket.io which supports auth package on connect, however the feature is not supported by Postman and I had no front-end to test with, hence the temporary workaround

Fixed issue of dtos on emit


Add a @root schema key

This will attach marchers to the validated element itself, rather than just an individual key.

Closed - I don't really think this is necessary, as this package is mainly used to validate request bodies, and thus, only their contained keys.
To validate the element itself, it's easy to just throw an AngelHttpException.badRequest().


Use static::class when checking model search engine mapping

Fixes #744

The proposed changes are breaking. so i closed the pull request by now. needs more investigating.


Uncaught Error: Call to a member function isOk()

Required Information

PHP version: 7.0.13
PHP Telegram Bot version: 0.39.0
Using MySQL database: yes
Update Method: Webhook
Self-signed certificate: no
RAW update (if available):

Expected behaviour
Bot should reply to commands.
Actual behaviour
Bot stucks and is not responding to any messages/commands after an unknown issue. Sometimes I can solve this cleaning DB or removing/uploading again files.
Steps to reproduce
Execute some /command, and randomly all commands stop working. Bot don't reply anymore to any command after this.
OR call directly hook.php, and next error appears
Extra details (error.log Apache)
PHP Fatal error:  Uncaught Error: Call to a member function isOk() on boolean in /var/www/html/_tg/vendor/longman/telegram-bot/src/Telegram.php:363
Stack trace:\n#0 /var/www/html/_tg/hook.php(29): Longman\\TelegramBot\\Telegram->handle()
#1 {main}\n  thrown in /var/www/html/_tg/vendor/longman/telegram-bot/src/Telegram.php on line 363

@jacklul @noplanman

 'localhost',
   'user'     => 'usern',
   'password' => 'passw',
   'database' => 'dbname',
];

try {
    // Create Telegram API object
    $telegram = new Longman\TelegramBot\Telegram($API_KEY, $BOT_NAME);
/*
    \Longman\TelegramBot\TelegramLog::initUpdateLog(__DIR__ . '/' . $BOT_NAME . '_update.log');
    \Longman\TelegramBot\TelegramLog::initDebugLog(__DIR__ . '/' . $BOT_NAME . '_debug.log');
    \Longman\TelegramBot\TelegramLog::initErrorLog(__DIR__ . '/' . $BOT_NAME . '_error.log');
*/
    $telegram->enableMySQL($mysql_credentials);
    $telegram->enableAdmin(1111);
    $telegram->addCommandsPath(__DIR__ . '/vendor/longman/telegram-bot/src/Commands/CustomCommands');

    // Handle telegram webhook request
    $telegram->handle();
} catch (Longman\TelegramBot\Exception\TelegramException $e) {
    // Silence is golden!
    // log telegram errors
    // echo $e;
}

hook.php output:
Longman\TelegramBot\Exception\TelegramException: Input is empty! in /var/www/html/teleg/vendor/longman/telegram-bot/src/Telegram.php:354
Stack trace:
#0 /var/www/html/teleg/hook.php(28): Longman\TelegramBot\Telegram->handle()
#1 {main}

Is this the case for all commands or just custom ones?
It looks like the command you are calling returns a boolean instead of a ServerResponse object.

Stack trace:
#0 /var/www/html/tg/hook.php(29): Longman\TelegramBot\Telegram->handle()
#1 {main}Longman\TelegramBot\Exception\TelegramException: Input is empty! in /var/www/html/tg/vendor/longman/telegram-bot/src/Telegram.php:354
Stack trace:

That is a normal response when opening hook.php with your browser.
When you install a fresh version of the latest version and an empty database, do all commands work without any issues?
If issues start when you add custom commands, could you please post one of the commands that creates the issue? That way we can see what is causing it, thanks!

Thanks for your reply @noplanman
Yes, all commands works without any issues on a fresh install. Also, when I use my customs commands works too, but after 1-2 days something broke, and all commands stops working.
Some times I can fix this commenting my custom commands include on hook.php:
//$telegram->addCommandsPath(__DIR__ . '/vendor/longman/telegram-bot/src/Commands/CustomComm');
and calling hook.php again.
This time I can't fix this, neither commenting line above :(

So you always get the PHP Fatal error:  Uncaught Error: Call to a member function isOk() on boolean error then?
Have you enabled the error logging in your bot?

@noplanman hope I can enable error loggin, but having issuis with write permissions (tried with 755 also on all bot files/folders and same). Will try to enable logging to give you best acurate details about error!

@noplanman solved with chown & chmod:  http://stackoverflow.com/questions/5165183/apache-permissions-php-file-create-mkdir-fail
Now bot can write _error.log and _access.log also
_error.log
`
{"update_id":990XXXXX, "edited_message":{"message_id":5XXX,"from":{"id":32XXXXXX"first_name":"nesttle","username":"nesttle"},"chat":{"id":32XXXXXX,"first_name":"nesttle","username":"nesttle","type":"private"},"date":148646XXX,"edit_date":1486468XXX,"text":"/whois testing","entities":[{"type":"bot_command","offset":0,"length":6}]}}
{"update_id":990XXXXX, "edited_message":{"message_id":5XXX,"from":{"id":32XXXXXX"first_name":"nesttle","username":"nesttle"},"chat":{"id":32XXXXXX,"first_name":"nesttle","username":"nesttle","type":"private"},"date":148646XXX,"edit_date":1486468XXX,"text":"/whois testing","entities":[{"type":"bot_command","offset":0,"length":6}]}}
{"update_id":990XXXXX, "edited_message":{"message_id":5XXX,"from":{"id":32XXXXXX"first_name":"nesttle","username":"nesttle"},"chat":{"id":32XXXXXX,"first_name":"nesttle","username":"nesttle","type":"private"},"date":148646XXX,"edit_date":1486468XXX,"text":"/whois testing","entities":[{"type":"bot_command","offset":0,"length":6}]}}
{"update_id":990XXXXX, "edited_message":{"message_id":5XXX,"from":{"id":32XXXXXX"first_name":"nesttle","username":"nesttle"},"chat":{"id":32XXXXXX,"first_name":"nesttle","username":"nesttle","type":"private"},"date":148646XXX,"edit_date":1486468XXX,"text":"/whois testing","entities":[{"type":"bot_command","offset":0,"length":6}]}}
{"update_id":990XXXXX, "edited_message":{"message_id":5XXX,"from":{"id":32XXXXXX"first_name":"nesttle","username":"nesttle"},"chat":{"id":32XXXXXX,"first_name":"nesttle","username":"nesttle","type":"private"},"date":148646XXX,"edit_date":1486468XXX,"text":"/whois testing","entities":[{"type":"bot_command","offset":0,"length":6}]}}
`

@noplanman solved with chown & chmod:  http://stackoverflow.com/questions/5165183/apache-permissions-php-file-create-mkdir-fail
Now bot can write _error.log and _access.log also
_error.log
`
{"update_id":990XXXXX, "edited_message":{"message_id":5XXX,"from":{"id":32XXXXXX"first_name":"nesttle","username":"nesttle"},"chat":{"id":32XXXXXX,"first_name":"nesttle","username":"nesttle","type":"private"},"date":148646XXX,"edit_date":1486468XXX,"text":"/whois testing","entities":[{"type":"bot_command","offset":0,"length":6}]}}
{"update_id":990XXXXX, "edited_message":{"message_id":5XXX,"from":{"id":32XXXXXX"first_name":"nesttle","username":"nesttle"},"chat":{"id":32XXXXXX,"first_name":"nesttle","username":"nesttle","type":"private"},"date":148646XXX,"edit_date":1486468XXX,"text":"/whois testing","entities":[{"type":"bot_command","offset":0,"length":6}]}}
{"update_id":990XXXXX, "edited_message":{"message_id":5XXX,"from":{"id":32XXXXXX"first_name":"nesttle","username":"nesttle"},"chat":{"id":32XXXXXX,"first_name":"nesttle","username":"nesttle","type":"private"},"date":148646XXX,"edit_date":1486468XXX,"text":"/whois testing","entities":[{"type":"bot_command","offset":0,"length":6}]}}
{"update_id":990XXXXX, "edited_message":{"message_id":5XXX,"from":{"id":32XXXXXX"first_name":"nesttle","username":"nesttle"},"chat":{"id":32XXXXXX,"first_name":"nesttle","username":"nesttle","type":"private"},"date":148646XXX,"edit_date":1486468XXX,"text":"/whois testing","entities":[{"type":"bot_command","offset":0,"length":6}]}}
{"update_id":990XXXXX, "edited_message":{"message_id":5XXX,"from":{"id":32XXXXXX"first_name":"nesttle","username":"nesttle"},"chat":{"id":32XXXXXX,"first_name":"nesttle","username":"nesttle","type":"private"},"date":148646XXX,"edit_date":1486468XXX,"text":"/whois testing","entities":[{"type":"bot_command","offset":0,"length":6}]}}
`

Also, on db table.edited_message I can see same request again and again:
http://i.imgur.com/s1fsHZG.png :: Database

Target username on /whois has numbers. Username is like A1234b.

@noplanman you can close this, I made a new issue better explained with this error, ty!


pull request for e2e test at 01/15/2017 12:45:13

:white_check_mark: Validation status: passed
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.


fixing potential async deadlock.

Just been fighting an rather annoying async deadlock issue.
Information on the async deadlock from a similar issue i had before that let me find the solution rather quickly.
http://stackoverflow.com/questions/30841406/how-to-avoid-async-await-deadlock-when-blocking-is-required
http://blog.stephencleary.com/2012/07/dont-block-on-async-code.html
anyway, to ensure that nothing goes into a deadlock the PR provides a simple fix that will save others the headache of putting the Task.Run into their application code.

Sorry - this repo is not maintained anymore.


Fix! Enable authentication for packet capture

Description

For a multicluster setup, tigera-guardian service account needs to be
allowed to create authentication reviews inside the managed cluster
For an OIDC setup, api controller needs to be notified when
authentication CR is created
Reduce initial delay time for readiness probe

For PR author

[ ] Tests for change.
[ ] If changing pkg/apis/, run make gen-files
[ ] If changing versions, run make gen-versions

For PR reviewers
A note for code reviewers - all pull requests must have the following:

[ ] Milestone set according to targeted release.
[ ] Appropriate labels:

kind/bug if this is a bugfix.
kind/enhancement if this is a a new feature.
enterprise if this PR applies to Calico Enterprise only.

LGTM


CU-8685udeqc changing ios perms

Task linked: CU-8685udeqc New Call Creation, Edit Call and Close Call in Unit App

Approve


Huge Google Index Problem

I was desperately trying to find out why on every index request of google a lot of my websites gave an error (5xx) ?!?
Indeed the pages were shown correctly in any browser but nonetheless google could not read them correctly (indeed some web-sniffer neather)
By chance I found that the bot requested .txt.twig instead of .html.twig (still don't know why). And the chance was even bigger when I found that issue on git (https://github.com/getgrav/grav/issues/2337) where the solution seemed to be to adjust the files-array in the system-config.
Now I suppose this is not only happening to me (people check your webpages on google webmaster even if they are almost indexed - mine were but by chance I rechecked and was confronted to the problem)!!!
And maybe the Grav-Team could find us a real fix instead of having to change all the system configs of all my websites!!!
@rhukster if you need more details about the problem, just tell me, I will provide them.

Have you tried turning gzip compression on? I experienced similar oddities with LinkedIn, the Wayback machine, and the W3C Validator refusing to index pages --- turning gzip on fixed the issue for me. Maybe this is a related issue.

Unfortunately, there is really no way to automatically change your site configuration once you have saved it from admin.
@rhukster Maybe we should force html to be the first in the list; after all, it is a web site.

I've decided to use a new function that will always ensure the list is ordered with html/htm first. I only found 2 occurences of this value being used, both within Grav core, so should be fine for future updates.  Please test.


No red text

Challenge Use a CSS Class to Style an Element has an issue.
User Agent is: Mozilla/5.0 (X11; Ubuntu; Linux i686; rv:51.0) Gecko/20100101 Firefox/51.0.
Please describe how to reproduce this issue, and include links to screenshots if possible.
My code:

CatPhotoApp

Kitty ipsum dolor sit amet, shed everywhere shed everywhere stretching attack your ankles chase the red dot, hairball run catnip eat the grass sniff.

I don't think it is an issue. Using .red-text as a selector is enough to solve the challenge, but you can also use h2.red-text (without space between them).

Thank you for reporting this issue.
This is a standard message notifying you that this issue seems to be a request for help. Instead of asking for help here, please click the "Help" button on the challenge on freeCodeCamp, which will take you to the help chatroom for that specific challenge. You can also view our full list of official chatrooms.
If you think I'm wrong in closing this issue, please reopen it and add further clarification. Thank you, and happy coding.

putting the right syntax but it wont pass


Multi Usb Descriptor (More channels)

I come with an idea. I know that both Arduino and R-pi-pico support sending a USB descriptor with multiple instances of a device.
I am in need of a version that can support multiple instances of Lighting Node Pro to use more than two outputs.
The idea is to be able to control each fan/LED strip independently, creating fabulous effects.
In iCue it would look like multiple devices connected, as opposed to just one per arduino/pico.
This is achieved by modifying the USB configurations by sending a descriptor with a collection of more than one device (changing the
0x85 report ID value) and handling the messages for each one independently.
Unfortunately, C/C++ is a language that I don't have enough knowledge to do it myself, but I understand that the class should be adjusted so that it accepts several instances and the constructor have to receive the serial and ID for one each of them.
I hope this can be achieved, so all the outputs of an arduino/pico could be used.
RGDS,
Mario.

Can you try to make a PR, where you make the changes you explained. It does not have to be correct C++ but I is much easier for us to understand what needs to be changed.


chore(pitr): restore support display progress

Type of change:

[ ] Bugfix
[ ] New feature provided
[x] Improve performance
[ ] Backport patches

What this PR does / why we need it:

restore support display progress of task and will print result in table format after all task done.
fix some typo

Pre-submission checklist:

[x] Did you explain what problem does this PR solve? Or what new features have been added?
[x] Have you added corresponding test cases?
[ ] Have you modified the corresponding document?

Codecov Report

Merging #326 (69fce53) into main (f2266af) will decrease coverage by 23.21%.
The diff coverage is 0.00%.

@@             Coverage Diff             @@
##             main     #326       +/-   ##
===========================================
- Coverage   41.96%   18.76%   -23.21%
===========================================
  Files          19       10        -9
  Lines        1544      533     -1011
===========================================
- Hits          648      100      -548
+ Misses        816      423      -393
+ Partials       80       10       -70

Impacted Files
Coverage Δ

pitr/agent/internal/handler/restore.go
0.00% <0.00%> (ø)

... and 9 files with indirect coverage changes
:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more

approve


Enable passing tests in multilabel_confusion_matrix_test.py

This does not fix #1204 but at least now we're running some tests.

@ssaishruthi
You are owner of some files modified in this pull request.
Would you kindly review the changes whenever you have the time to?
Thank you very much.


olefinic phospholipid (CHEBI:76170) has wrong children

Hi Adnan,
Olefinic phospholipid (CHEBI:76170) has wrong children. Please could you remove

4-O-β-D-glucosyl-4-coumaric acid (CHEBI:17335) is a olefinic phospholipid (CHEBI:76170)
N-[9-(dichloromethylene)-1,2,3,4-tetrahydro-1,4-methanonaphthalen-5-yl]-3-(difluoromethyl)-1-methylpyrazole-4-carboxamide (CHEBI:83097) is a olefinic phospholipid (CHEBI:76170)

Now removed. Thanks


Export to markdown

This could be outputted to markdown using html2markdown libraries. Some content may may need to be output as pure html.

Exporting is not a part of this project. You can use whatever external library you want to convert to and from markdown/html.

@brijeshb42 I understand that import/export is not part of this project.
If I were to create a ContentState though saying using draft-js-import-markdown, how would I initiate the EditorState? I can't use your createEditorState(data) as it uses convertFromRaw and we already have a ContentState with this plugin.
I've tried directly doing something like editorState: EditorState.createWithContent(contentState)
which basically works. But then I notice highlighting of a linked work no longer is highlighted, even though in the markdown it has been changed to a link.
This issue disappears if I start with your createEditorState() with no arguments. I can see your decorator is doing some extra work.
Do you need convertFromRaw()? What data object do you pass in that you call createEditorState with an argument?

The data object passed to createEditorState  is the output of convertToRaw(this.state.editorState.getCurrentContent()). Under the hoods, it applies the Link decorator. If you want to use EditorState.createWithContent, you should also pass a 2nd argument, that is the link decorator -
import { CompositeDecorator } from 'draft-js';
import { Link, findLinkEntities } from 'medium-draft';

const decorator = new CompositeDecorator([
  {
    strategy: findLinkEntities,
    component: Link,
  },
]);

var yourContentState;

// finally,
editorState: EditorState.createWithContent(yourContentState, decorator)

Yes, this works thanks @brijeshb42
I understand how there is a performance hit using the second code sample by converting it to raw, then immediately converting it from raw. But given it only happens once from the constructor, I think it's probably worth it given the terseness of the code. And to keep my code more compatible with yours.. in case you update your decorator at some point.

@tianshuo You could use https://www.npmjs.com/package/draft-js-export-markdown
And use it like so
import { stateToMarkdown } from 'draft-js-export-markdown';

  onRTEchange = editorState => {
    console.log(stateToMarkdown(editorState.getCurrentContent()));
    this.setState({ editorState });
  }

This will only convert the content that can be turned into markdown. So everything in the toolbar except the todo list and the highlight section buttons.
@brijeshb42 is there a way to customise the toolbar? So that only standard markdown buttons are present? I haven't worked out what you mean by sidebuttons yet.

@magician11 I haven't gotten around to documentation yet, but you can take a look at the props that Editor from medium-draft accepts and their default values here.


Add support for Map, Tuple1, ByteArray and Any

Here's the PR: https://github.com/casper-ecosystem/casper-deploy-generator/pull/66 currently in the review; although manual.json file is perfectly usable in this branch.
This PR adds a few more test cases for the following types:

Map
Tuple1
ByteArray
Any

When this is done, it should close #100 as well

:link: zboto Link

Implemented here: https://github.com/Zondax/ledger-casper/pull/103


[Event Hubs Client] Intermittent test failures during nightly runs (Track One)

Summary
The test ReceiverTests.CreateReceiverWithInclusiveSequenceNumber has recently begun experiencing intermittent failures during nightly runs, typically constrained to the net461 platform.  An example failure can be found in the nightly results from February 4.   The failure looks like:

Scope of Work

Analyze the test(s) to understand the point of non-determinism and decide on an approach to stabilize for nightly runs.

Refactor the tests as needed to ensure that the results are deterministic and consistently pass.

Out of Scope

Changes or refactoring in other areas.

Success Criteria

The test(s) discussed in the summary have been refactored or removed and no longer cause intermittent, but frequent, failures during nightly runs.

The changes did not cause regressions elsewhere; nightly test runs pass consistently and reliably with deterministic results.

//cc: @serkantkaraca, @JamesBirdsall

Thx, I will take a look.

PR for fix submitted.


Add animate.css to relevant jQuery challenges

Pre-Submission Checklist

[X] Your pull request targets the staging branch of FreeCodeCamp.
[X] Branch starts with either fix/, feature/, or translate/ (e.g. fix/signin-issue)
[X] You have only one commit (if not, squash them into one commit).
[X] All new and existing tests pass the command npm run test-challenges. Use git commit --amend to amend any fixes.

Type of Change

[X] Small bug fix (non-breaking change which fixes an issue)

Checklist:

[X] Tested changes locally.
[X] Closes #10087

Description
Adds animate.css to all challenges where it is a required dependency, determined by challenges whose seed code includes the animated class (required for any use of animate.css), or whose tests require that class to be added by the user. Adds version of animate.css currently used in production (3.2.0, latest is 3.5.2), tested locally.

@BKinahan I don't see animate.css being applied to the challenges in anyway.

@atjonathan The effect can be seen in the animation of elements in the iPhone preview in the relevant challenges, eg the #target3 and #target6 buttons in Target a Specific Child of an Element Using jQuery, both on initial load and any time the tests are run.
These elements do not animate in the current staging due to lacking a reference to animate.css
Here's a list of affected challenges for your convenience:

Target HTML Elements with Selectors Using jQuery
Target Elements by Class Using jQuery
Target Elements by ID Using jQuery
Delete your jQuery Functions
Target the same element with multiple jQuery Selectors
Remove Classes from an element with jQuery
Change the CSS of an Element Using jQuery
Target a Specific Child of an Element Using jQuery
Target Even Numbered Elements Using jQuery
Use jQuery to Modify the Entire Page

Thanks @BKinahan Works great!

@BerkeleyTrue, could you update the beta with the latest from staging? I couldn't get this to work, just wanna check it was an issue on my local machine.

@atjonathan Did you beforehand seed?

@BerkeleyTrue, yeah

hmmm..

@BerkeleyTrue, just cleared my mongo collections, which seems to have fixed the issue. Not sure the cause lol.


Multi core functionality missing for multisample projects

svtyper is an amazing tool that does what it is supposed to in most of the cases. However, unfortunately multicore functionality is missing for projects involving multiple samples.

We'd recommend running svtyper individually for each sample and then combining the results after the fact. See the svtools tutorial for an example.
You may also be interested in Brent Pederson's smoove which provides support for running many samples in parallel on the same machine (as well as improvements to the underlying SV calling with Lumpy via filtering).

Could you please elaborate a bit on why this is recommended?
Does svtyper have trouble discriminating calls from different samples?

My recollection (although now fuzzy) is that the existing multi-sample code simply runs across each sample in serial. There isn't any information sharing across samples and thus I don't think you'd gain much by running svtyper with multiple samples as an input.
The workflow we run regularly, and thus can recommend with some confidence, executes svtyper individually and combines the result. This is a more complex workflow though and may not be terribly convenient if you have 10s of samples rather than 100s to 1000s to 10,000s.
If you have a medium number of samples then smoove is a well-supported and convenient wrapper for parallelizing and combining svtyper results on a single machine.


Update piped dashboards

What this PR does / why we need it:
Which issue(s) this PR fixes:
Fixes #
Does this PR introduce a user-facing change?:

NONE

Keep going!
/lgtm

/approve


operator support validate item of slice

Bug description
relevant to https://github.com/istio/istio/issues/22137
For field of slice type, eg.
	IngressGateways      []*GatewaySpec
	EgressGateways       []*GatewaySpec

https://github.com/istio/api/blob/master/operator/v1alpha1/component.pb.go#L37-L38
In order to validate each item of the slice, we need to support path like jsonpath, eg.
Components.IngressGateways[i]

We should also support * for all matching items, so that if we want to validate the name of IngressGateways, we just need to add validation function for path:
Components.IngressGateways[*].Name

[ X ] Installation

Related: https://github.com/istio/istio/issues/21473
It would be great if we could make IstioOperator part of Istio and also use it for the analyzer.  Please comment on PR https://github.com/istio/istio/pull/22166


refactor: replace only the updated group in the cache

General Checklist

[ ] Affected Issues have been mentioned in the Closing issues section
[ ] Documentation has been written/updated
[ ] PR title is ready for inclusion in changelog

Database Migrations

[ ] If your PR contains a database migation, it MUST be the latest in date order alphabetically

Explain the details for making this change. What existing problem does the pull request solve?

Closing issues
Put closes #XXXX in your comment to auto-close the issue that your PR fixes (if such).

closing for #3612


create installer images

The installer images need to be created.
Currently templates are used:

Location: https://github.com/fifengine/fife-windows-sdk/tree/master/installer/images

That was fast. Awesome 👍


[FEATURE] Experimental release of opensearch-sdk-java

Is your feature request related to a problem?
We are planning to release opensearch-sdk-java as a part of 2.9 release  of OpenSearch. Steps required to release opensearch-sdk-java

[x]  Onboard opensearch-sdk-java to 1-click-release-process
[x] Add a jenkinsfile for the setup
[x] Create a new branch 0.1 from 1.x
[x] Documentation

SDK is released now: https://aws.oss.sonatype.org/content/repositories/releases/org/opensearch/sdk/opensearch-sdk-java/0.1.0/


Vue-slider-component installs git hooks

Starting with version 2.5.9, the package installs git pre-commit-msg hooks,
in a project that is using this vue-slider-component as a (dev-)dependency.
I have fixed the version to 2.5.8 which doesn't suffer from this issue, but this should be resolved
as it should not alter the git hooks of a repo where the package is just a dependancy.

Sorry, this is my negligence, 2.6.0 has been fixed.


Unsupported version

 - name: install llvm and clang
        uses: KyleMayes/install-llvm-action@v2
        with:
          version: '17.0.2'

Checking known assets (os=linux, arch=x64, version=17.0.2)...
Error: Unsupported version for platform (os=linux, arch=x64, version=17.0.2)!

Note sure what has gone wrong here as I see both versions in the assets.json file

I'm not sure what went wrong either, I added a CI run for version: 17.0.2 and it worked just fine:
https://github.com/KyleMayes/install-llvm-action/actions/runs/9247731890/job/25436990021#step:5:1
If you are still having problems with the latest version of the action, please re-open this with an example failed CI run.


ARROW-8488: [R] Remove VALUE_OR_STOP and STOP_IF_NOT_OK macros

Prefer templated functions over macro to align with the C++ style.

autotune

autotune everything

Neat!

One thing, the checks are gone?

No idea why it didn't run checks on the commit that was pushed


New decorator: data_node

In a live discussion around #203, @JNmpi and I both agreed that we like the use of dataclasses to package together related sets of variable, e.g. for input to different functions/codes. From a technical perspective, "input injection" is tricky.
The solution we were both content with was to allow users to turn data classes into nodes with a decorator. Stealing from his phonopy work as an example, you might write something like this:
@Workflow.wrap_as.data_node()
class InputPhonopyGenerateSupercells:
    distance: float = 0.01
    is_plusminus: Union[str, bool] = "auto"
    is_diagonal: bool = True
    is_trigonal: bool = False
    number_of_snapshots: Optional[int] = None
    random_seed: Optional[int] = None
    temperature: Optional[float] = None
    cutoff_frequency: Optional[float] = None
    max_distance: Optional[float] = None

This would then produce a new node class InputPhonopyGenerateSupercells(DataNode(SingleValue)), which holds a .dataclass: type[InputPhonopyGenerateSupercellsDataclass] as a class-attribute, similar to how Function and Macro (will) have node_function and graph_creator as class attributes. InputPhonopyGenerateSupercellsDataclass is just a dynamically created class that is (nearly) @dataclasses.dataclass applied to the wrapped class above --  the difference being that we pull in some QoL improvement's from Joerg's pyiron_workflow.node_library.dev_tools.wf_data_class, like the ability to ** unpack instances of the dataclass into kwargs. This node would have an input for each field, and return and instance of the dataclass as its single value.
This allows us to take snippets like this, which are either totally broken due to the impossibility of input injection, or which suffer from incorrect connections and off-time run calls:
@Workflow.wrap_as.macro_node(...)
def run_phonopy(wf, ..., displacement: float = 0.01):
    ...
    wf.phonopy = wf.create.atomistic.property.phonons.create_phonopy(
        ...
        parameters=InputPhonopyGenerateSupercells(distance=displacement.run()),
        ...
    )

Where InputPhonopyGenerateSupercells is a (modified) dataclass, displacement.run() returns a float, and displacement is a single-value node (UserInput in this case)
Into functioning, connected graph code like this:
@Workflow.wrap_as.macro_node(...)
def run_phonopy(wf, ..., displacement: float = 0.01):
    ...
    wf.phonopy = wf.create.atomistic.property.phonons.create_phonopy(
        ...
        parameters=wf.create.atomistic.property.phonons.InputPhonopyGenerateSupercells(distance=displacement),
        ...
    )

Where InputPhonopyGenerateSupercells is a DataNode, displacement is also a node, and everything works as expected.
We could introduce some associated generic nodes like wf.create.standard.dict({"some_input_channel_name": some_value_or_SVN_or_output_channel}) that dynamically creates a node class and instantiates it, similarly for things like wf.create.standard.list, but let's do the dataclass first and see how it feels.

For posterity, the example and code references are from this commit point, and are in pyiron_workflow/node_library/atomistic/property/phonons.py, notebooks/phonopy_wf.ipynb, and pyiron_workflow/node_library/dev_tools.py

Done in #308


Fix theming when theme has been changed using ThemeProvider

Fixes #261

@mxstbr appveyor didn't pass because order of css properties generated by autoprefixer is reversed.

Added className checks to tests too so it won't happen again.

Unfortunately this doesn't work for me (tested with React)

@k15a can you create an example so I can reproduce this? Because I added the test that reproduced the issue and it's fixed.

I will try it.

If you pass theme as same reference but with changed property it won't update a theme.

I am sorry for reopening, misclicked. :(

If you pass theme as same reference but with changed property it won't update a theme.

Is this the intended behaviour?

Reproduction without fix: https://styledtheme-xmbczspacp.now.sh/
Reproduction with fix: https://styledtheme-prtnqsuxfk.now.sh/
You can see the src code if you append _src to the url.

@k15a I am looking at https://styledtheme-prtnqsuxfk.now.sh/_src/?f=package.json and you don't have correct styled-components. You need to set it like this:
{
   "dependencies": {
       "styled-components": "git://github.com/michalkvasnicak/styled-components.git#fix/theming"
   }
}

I've copied the styled-components.js from dist to the src and importing it with '../styled-components.js'. See https://styledtheme-prtnqsuxfk.now.sh/_src/?f=src%2FApp.js. I will upload another one with the "styled-components": "git://github.com/michalkvasnicak/styled-components.git#fix/theming".

How can I trigger the styled-components build script if I am using the git url? Otherwise webpack can't find styled-components. Sorry I haven't done this before.

@k15a I tried your example locally and this bug is still here.

@mxstbr this is caused by weird race condition. In @k15a example it'll generate css classes for all themes but componentWillReceiveProps will rewrite changes made by setState from change subscriber.
In examples from above links there is change in theme. This will call setState in subscriber but it will also trigger re-render so componentWillReceiveProps will be called too. Somehow this.state.theme in componentWillReceiveProps is not new value from subscriber, but previous one (in this case it is always the value from first render).

If we keep everything as is except componentWillReceiveProps and we change it to be like this:
componentWillReceiveProps(nextProps: { theme?: Theme, [key: string]: any }) {
        const theme = nextProps.theme || this.state.theme;

        const generatedClassName = this.generateAndInjectStyles(theme, nextProps)
        this.setState({ generatedClassName })
}

it starts to work but first change will be weird because it will use second theme not after first click, but after second click.

@michalkvasnicak the second argument of componentWillReceiveProps is nextState, maybe that could help

Another idea is to use the callback of this.setState to prevent the race condition

@brunolemos second argument is not nextState or maybe I am missing something (https://facebook.github.io/react/docs/react-component.html#componentwillreceiveprops)

I don't see how I can use callback from this.setState because we are setting theme and generatedClassName to state. But maybe I am just tired. Do you have some idea?

Only thing that helped is if we generateAndInjectStyled in render method. This way we have always the correct state.
Component willReceiveProps will work only if this.props.theme is set otherwise it won't do anything.
This way it behaves correctly with ThemeProvider or without it. But I think we would need to incorporate some memoization to generateAndInjectStyles.
Any ideas?

Sorry again for reopening, incorrect rebase. Now it should be just fine. Please someone test it with react-native. It works fine with examples from @k15a. Also there is a test case which is testing ThemeProvider changes as well as props changes.

@michalkvasnicak Tested on React Native, it's working 👍  :shipit:

Yeah, probably, because it's back on render method.

Maybe there is but I can't find one. If we revert back to 1.1.1 then theming does not work without ThemeProvider.
I don't see how componentWillReceiveProps is performance optimization. It is called on every re-render except the one issued by setState. So if you are using ThemeProvider like the one in examples from @k15a there is setState called with componentWillReceiveProps too.

I don't know how #137 has been benchmarked but from what I see there is only speed up in render but slow down in componentWillReceiveProps so I think this affects reconciliation. But really I don't know :)
Maybe some memoization would be better, we return current theme if theme or props are not changed.

Closing in favor of #264 which solves this much more elegantly. Thanks for the effort put into this PR and digging into it @michalkvasnicak!


Testing framework

Is it possible to add a testing framework to the generator? Thank you.

Yes it is. I haven't added it to the boilerplate yet, because there are so many different ways to do your tests.
Just create a test.js file in the tasks directory (./tasks/test.js).
This will get automatically loaded via gulp.
import gulp from 'gulp';
import livereload from 'gulp-livereload';
import args from './lib/args';

gulp.task('test', () => {
  return gulp.src('./test/index.js')
    ...
    .pipe(gulpif(args.watch, livereload()));
});

(Replace ... with your own config)
More Info: https://github.com/sindresorhus/gulp-mocha


chore(OWNERS): move michelleN to emeritus

Thank you.

Thanks for all you've done for Helm, @michelleN! 💖

@michelleN You can merge away when you feel like it!


Use pointers to couple InflowWind and AeroDyn

This is a draft pull request for review of the implementation.
Feature or improvement description
The goal of this PR is to allow AeroDyn to call InflowWind directly via a pointer to FlowFieldType derived data type and the IfW_FlowField_GetVelAcc function. This code adds logic to copy the FlowField pointer from the InflowWind Parameters derived type into the AeroDyn Parameters derived type during initialization. From there AD_CalcOutputs and AD_UpdateStates can call IfW_FlowField_GetVelAcc to get and update the wind velocities and acceleration.
Impacted areas of the software

AeroDyn
AeroDyn Inflow
OpenFAST Library (glue code)

Additional supporting information
The calls to get the wind velocity from InflowWind and transfer them to AeroDyn within FAST_Solver have been removed as they are no longer needed. To avoid disrupting Linearization, the wind velocity variables have been left as inputs in AeroDyn but will be moved to MiscVars as part of Linearization work in a future PR.
Test results, if applicable
Test results are unchanged as expected.

Thanks, @deslaughter! I'm actually surprised the old registry parsed that without the escape character. There are probably other registry input files that have the same issue, but I just happened to see the AA and AD ones.


License is missing

Do you have a license for your code?

Just added one :) feel free to use as you wish

Thanks for the quick reply :)


How to calculate the predict_someone_threshold and predict_move_threshold (AEGHB-558)

Hello, thank you very much for sharing. Could you please explain how predict_someone_threshold and predict_move_threshold are calculated? I can't find related code from this repo. If that's not open-source, could you please give some hints about its implementation? Thank you very much!

This is determined by calibration when no one is in the room, cf:Calibration threshold

Yes, I mean what’s the calibration algorithm behind it?
Thank you very much!

From: bond @.>
Sent: Tuesday, February 20, 2024 11:59:47 PM
To: espressif/esp-csi @.>
Cc: Kyrie Zhao @.>; Author @.>
Subject: Re: [espressif/esp-csi] How to calculate the predict_someone_threshold and predict_move_threshold (AEGHB-558) (Issue #164)
This is determined by calibration when no one is in the room, cf:Calibration thresholdhttps://urldefense.com/v3/__https://github.com/espressif/esp-csi/tree/master/examples/esp-radar/console_test*52-calibration-threshold__;Iw!!K-Hz7m0Vt54!lQff3NxFTL41wGO0AXw2ZSs4OFpUMMKWkIAkr0pidw_tOtFZ_Tn1gER6X-iQHusWrDf_zubmiuNoHCHvruLQAI0$
—
Reply to this email directly, view it on GitHubhttps://urldefense.com/v3/__https://github.com/espressif/esp-csi/issues/164*issuecomment-1956081194__;Iw!!K-Hz7m0Vt54!lQff3NxFTL41wGO0AXw2ZSs4OFpUMMKWkIAkr0pidw_tOtFZ_Tn1gER6X-iQHusWrDf_zubmiuNoHCHvxP2B9e0$, or unsubscribehttps://urldefense.com/v3/__https://github.com/notifications/unsubscribe-auth/BBXNRKFSPH2BKEVR5UKCZUDYUWSPHAVCNFSM6AAAAABDQSRT2CVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTSNJWGA4DCMJZGQ__;!!K-Hz7m0Vt54!lQff3NxFTL41wGO0AXw2ZSs4OFpUMMKWkIAkr0pidw_tOtFZ_Tn1gER6X-iQHusWrDf_zubmiuNoHCHv-8RqPPA$.
You are receiving this because you authored the thread.Message ID: @.***>

Human Motion Detection: Calculates the maximum CSI waveform when no one is moving.
Human Presence Detection: Records the CSI waveform when no one is present.

Could you please give me some hints about how to transform the CSI amplitude waveform to the wander/jitter waveform on the right in ESP_CSI_TOOL? What's the unit of the wander(someone) threshold and jitter(move) threshold?

@zhaofz99 I have written a related patent before, you can refer to it: Method and Smart Device for Wi-Fi Human Detection


Busted tests for Hue driver + Bugfix for migrated lights

We don't run Busted tests in CI, but the Hue driver is now very testable after the recent refactor. The ability to write integration tests for LAN Drivers is still forthcoming, but we're also going to be accumulating unit tests for Hue going forward as well.
We keep the spec folder as a sibling to the src folder so that it doesn't get included in the driver package, so care should be taken when setting up the LUA PATH to run these tests.
We also fix a bug that was reported by some community users, the presence of which was validated by and is also now covered by the new specs.
For Reviewers
The PR is broken up in to two commits. The first commits are all of the new Busted work. The second commit is the bugfix.

I approved, but actually I think we may want to move the spec and other folders under the test folder as that will by default be excluded from the archives that get uploaded.  But let me verify that.

Yeah, test or tests directory would have the not uploaded and thus not pushed to everyones hub: https://github.com/SmartThingsCommunity/smartthings-cli/blob/0ebd3c72c819fd3681746c4b01740038a7ede910/packages/edge/src/commands/edge/drivers/package.ts#L136


Missing linking back and forth between repo and Github page

I am missing a link to the Github repository when browsing the Github page (which in itself is awesome). Maybe add a link to the navigation such as React has it, or in the footer section, such as Bootflat has it. I'd personally prefer the first approach, since the navigation is in place anyways and could easily host another item.
Furthermore, but that's sugar: you could extend the title on Github ("Podcast publishing extension for Jekyll") with the link to the Github page. Again, same as React has it

Thanks for the suggestions! (Easier for me to get to the issues as well :-) )
The nav column on the right is a more natural place than the bottom. So I put one there as well.

Well, you know have it in the navbar twice. Was that intended? Looks kind of weird on mobile with the hamburger menu though...

It was on purpose, will probably change some things around after the workshop tomorrow anyways ...

I had the feeling, that the lonely link on the top was a bit lost, but the second one was weird, as you pointed out.
I believe, the solution, I came up with (issues and repo link) now, fits my goal to be visible, useful and not weird.


Added search addons.

Included dialog addons for pretty search dialogs. #58

Can we improve the UX a bit here? Searching from the command line doesn't work, for example.

I agree with you that the default code-mirror UX is pretty ugly, requiring Cmd+G to browse through results. So this PR doesn't finish the search feature, but it certainly moves it in the right direction while someone can work on improving the dialog boxes.
Also, don't know what you mean about searching from the command line. The CLI is right now only a shortcut to open a file. Why wouldn't a user just open the file then press Ctrl+F or Cmd+F to search after opening the file? I think there is a use-case here that I am not seeing.

Hey sorry this took so long for me to get to, I was away for a while. Could you rebase and then I will check it out/merge?


feat: give component EntityMembersListCard a memberType prop

Signed-off-by: djamaile<EMAIL_ADDRESS>Hey, I just made a Pull Request!
I wanted to use this component when showing the contributors of a certain Gitlab repo. In that context having members doesn't really make sense because a contributor doesn't have to be a member of the repo. Another use case I can see for this is companies having their own specific name for their engineers.
:heavy_check_mark: Checklist

[x ] A changeset describing the change and affected packages. (more info)
[ ] Added or updated documentation
[ x] Tests for new functionality and regression tests for bug fixes
[x ] Screenshots attached (for UI changes)
[ x] All your commits have a Signed-off-by line in the message. (more info)

Hi! Was wondering the core maintainers even want this change in? If not then I know I have to copy the component to my internal repo and just make some tweaks to it. I completely understand if this change is totally different from the vision the maintainers have! Just let me know :)

Sorry this was on my list of stuff to do today!
So when would this actually be used? Is this when you call your staff something different other then employees or members or something and want a new title for the members of a squad that applies company wide or a different use case?

Sorry this was on my list of stuff to do today!
So when would this actually be used? Is this when you call your staff something different other then employees or members or something and want a new title for the members of a squad that applies company wide or a different use case?

Yes that is exactly the use case. I am using this component as well in the servicePage and instead of calling them members I want to call them contributors. Because 'members' means something else in the context of Gitlab.

Perfect - glad we're on the same level, so maybe something like memberDisplayTitle or memberTitle would be better than type as it's purely for visual display?

@benjdlambert updated 😄

@djamaile just wondering if maybe this could be helpful to you? They have a ContributorsCard in the GitLab plugin:
https://github.com/loblaw-sre/backstage-plugin-gitlab/blob/bb8b1042c473cdeb65606d8af42e4f02cee00151/src/components/widgets/ContributorsCard/ContributorsCard.tsx#L21

Thanks! :pray:


New version: Ripose.Memento version 1.2.1

Pull request has been created with Komac v1.11.0 :rocket:
Microsoft Reviewers: Open in CodeFlow

@wingetbot waivers Add Validation-Executable-Error


Merging 12-dev branch into master branch

Merging 12-dev branch (for CarbonData 1.2 development) to master, following new feature will be merged:
[CARBONDATA-782] add SORT_COLUMNS options
[CARBONDATA-842] no sort datawriter
[CARBONDATA-886] remove redundant variable
[CARBONDATA-888] Added options to include and exclude dictionary column
[CARBONDATA-909] Added option to specify single pass load in data frame
[CARBONDATA-935] Define PartitionInfo model
[CARBONDATA-936] Parse partition table ddl This closes
[CARBONDATA-1015] Refactory write step and add ColumnPage in data load
[CARBONDATA-936] Create table with partition and add test case
[CARBONDATA-937] Data loading for partition table
CI will fail as these PRs include modification of thrift format

Build Failed  with Spark 1.6.2, Please check CI http://<IP_ADDRESS>:8080/job/ApacheCarbonPRBuilder/2027/

LGTM. Verified locally


[feature request] Provide docker image for each release

Is your feature request related to a problem?
I want to use score-humanitec in my pipelines. That requires a docker image as execution environment for the deploy job. Example in gitlab (the value in image that i would like to use):
Deploy Camunda 7 With score:
  stage: deploy
  image: ghrc.io/score/score-humanitec:0.6.0
  script:
    - score-humanitec delta .......  --deploy

Right now I have to build the base image myself or install score-humanitec in each pipeline execution.
Describe the solution you'd like
Easiest would be, if docker image is published together with each release.

humctl which provides equivelant score-humanitec functionality has its own image: ghcr.io/humanitec/cli:latest


Use rc advisory

add the advisory = "rc" for theme alert

auto-LGTM, merging.

marking this as cherry-picked - in reality, we're not using it in 1.12 bump, but it keeps poping up in my TODO report.


isBinary detect proper HTML page as binary

Failing test case:
    @Test
    public void testBinaryFail() throws IOException {
        Jsoup.parse(new URL("https://www.searspartsdirect.com/repair-parts-for-kenmore-106w14f/0582/0160000.html"), 50000);
    }

Detecting a binary file is complicated :/
At one point in my own project I was using something like:
public abstract class NonPrintableDetector {

    private final static Pattern NON_PRINTABLE_PATTERN = Pattern.compile("\\p{C}", Pattern.UNICODE_CHARACTER_CLASS);

    /**
     * @param value Sequence of chars to test against non printable characters
     * @param maxRatio Maximum accepted ratio of non printable characters (between 0.0 and 1.0)
     * @return True if ratio of non printable characters is above maxRatio
     */
    public static boolean isAboveThreshold(final CharSequence value, final float maxRatio) {
        if (value == null || value.length() == 0) {
            return false;
        }

        // check for high ratio of non printable characters
        final Matcher matcher = NON_PRINTABLE_PATTERN.matcher(value);

        int nonPrintableChars = 0;
        while (matcher.find()) {
            nonPrintableChars++;
        }

        return nonPrintableChars > Math.ceil(value.length() * maxRatio);
    }

}

But even so I had PDF accepted because it had a bunch of textual metadata near the beginning of the file...
I finally resorted to use the Tika library because of its knowledge of magic bytes, etc.
IMO JSoup should not even attempt to do this or at least give a way to be disabled because I for-see a lot of false positive or negative.

Thanks - I removed it.


(PUP-1289) Manage service logon credentials on Windows

This feature allows puppet users to gain more control over their Windows services by now being able to manage the logon credentials for any of them as desired.
This commit adds the logonaccount property and the optional logonpassword parameter (not needed when the user specified in the logonaccount field has no password). These can be managed alone or in combination with the ensure property.
In the first case, the credentials will be checked for validity and then set but will not be used by the service until it is restarted. This respects the Windows GUI behaviour from services.msc where after changing the logon credentials, it prompts the user with the alert message The new logon name will not take effect until you stop and restart the service..
When also managing ensure with it specified as running or true and the logonaccount is different from the current service settings, puppet will automatically restart the service to make instant use of the newly given credentials.
The logonaccount field accepts local users (when respecting the pattern User, .\User or PCNAME\User) and also from domain (respecting the pattern DOMAIN\User<EMAIL_ADDRESS>or just User if the name doesn't also match with a local one as our user validation starts looking for its existence and information about it locally first, and if it's not found there, only then the search will continue onto the domain). It is not case sensitive and for the problematic language specific users (such as System, Local Service, Network Service etc.) their respective SIDs can be used instead (S-1-5-18, S-1-5-19, S-1-5-20 etc.).

CLA signed by all contributors.

jenkins please test this on windows10ent-64a,windows10ent-32a,windows2008r2-64a,windows2012r2-64a,windows2016-64a,windows2019-64a,windows2008r2-64a,windows2012-64a,windows2012r2-64a,windows2016-64a,windows2019_fr-64a,windows2019_ja-64a

jenkins please test this on windows10ent-64a,windows10ent-32a,windows2008r2-64a,windows2012r2-64a,windows2016-64a,windows2019-64a,windows2008r2-64a,windows2012-64a,windows2012r2-64a,windows2016-64a,windows2019_fr-64a,windows2019_ja-64a

jenkins please test this on windows10ent-64a,windows10ent-32a,windows2008r2-64a,windows2012r2-64a,windows2016-64a,windows2019-64a,windows2008r2-64a,windows2012-64a,windows2012r2-64a,windows2016-64a,windows2019_fr-64a,windows2019_ja-64a

jenkins please test this on windows10ent-64a,windows10ent-32a,windows2008r2-64a,windows2012r2-64a,windows2016-64a,windows2019-64a,windows2008r2-64a,windows2012-64a,windows2012r2-64a,windows2016-64a,windows2019_fr-64a,windows2019_ja-64a

jenkins please test this on windows2019_fr-64a

jenkins please test this on windows10ent-64a,windows10ent-32a,windows2008r2-64a,windows2012r2-64a,windows2016-64a,windows2019-64a,windows2008r2-64a,windows2012-64a,windows2012r2-64a,windows2016-64a,windows2019_ja-64a


How to use/create a simple block grid

hello
is there a way using bourbon/neat to create a simple block grid to put a standard Wordpress gallery into e.g. 3 columns - I guess applying some negative margin to the gallery container and floating the gallery-items. whatever I try using span-columns doesn't seem to work and using omega seems to be kind of overkill.
thank you in advance for your input.

tried flex-grid as well - cannot get it to work.
somebody please help

@mmjaeger Did you take a look at the example page, specifically the “Automatic rows” section? Is that what you’re trying to accomplish?

What doesn’t work when you use span-columns?
Can you provide a CodePen or link to your code?

I'm a little hesitant using omega since it has to be reset when collapsing the grid, but I'm sure that could be solved.
another issue I'm having is creating three columns in a row, each 33.33333% with no margin - assumed 'block-collapse' would do the trick but I'm getting 2 columns that are 34....% and one column that is some 31....% wide - not what I would have expected.

bump

I'm a little hesitant using omega since it has to be reset when collapsing the grid, but I'm sure that could be solved.

What do you mean by "collapsing the grid"?
You want a different block grid for smaller screens?
If you want to avoid resetting the omega with bad CSS, you can use mutually exclusive media queries
  li {
    @include media($small-screen) {
      @include span-columns(6);
      @include omega(2n);
    }

    @include media($large-screen) {
      @include span-columns(3);
      @include omega(4n);
    }
  }

Hope it helps.

Closing for now, since we don’t have responses to @mehlah’s questions above. Please re-open if you’re still having issues.


feat: "Only Mine" toggle for execution tasks list.

Motivation: Why do you think this is important?
Currently users have no way to filter execution lists by only their executions.  To fix this we will add an "Only Mine" check box to the table header section that will inform list with filter.
Goal: What should the final outcome look like, ideally?
All lists that have filters will check the state of the "Only Mine" filter.  Table will include a subtext that indicates they are showing results filtered by "Only Mine" as a tag.  Clicking to close that tag will also set the toggle button to disabled.
Propose: Link/Inline OR Additional context

Display checkbox

When box is checked, show only executions from user

Are you sure this issue hasn't been raised already?

[X] Yes

Have you read the Code of Conduct?

[X] Yes

Already fixed starting from flyteconsole v.0.47.0