I tried to input the data into the training and fit the function. The following problem occurred when printing the function at the end.

when i try to fit the function ,this problem occour,
train loss: 7.20e-01 | test loss: 7.39e-01 | reg: 2.51e+01 : 100%|█| 100/100 [00:17<00:00,  5.58it/s
Traceback (most recent call last):
File "D:\Anaconda3\envs\py38\lib\site-packages\sympy\core\assumptions.py", line 479, in getit
return self._assumptions[fact]
KeyError: 'zero'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "D:\Anaconda3\envs\py38\lib\site-packages\sympy\core\assumptions.py", line 479, in getit
return self._assumptions[fact]
KeyError: 'extended_real'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "D:\Anaconda3\envs\py38\lib\site-packages\sympy\core\assumptions.py", line 479, in getit
return self._assumptions[fact]
KeyError: 'complex'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "D:\Projects\py_works\pykan-master\human-temp-fomula-shuffel.py", line 101, in
model.symbolic_formula()[0][0]
File "D:\Projects\py_works\pykan-master\kan\KAN.py", line 1239, in symbolic_formula
self.symbolic_acts = [[ex_round(symbolic_acts[l][i]) for i in range(len(symbolic_acts[l]))] for l in range(len(symbolic_acts))]
File "D:\Projects\py_works\pykan-master\kan\KAN.py", line 1239, in
self.symbolic_acts = [[ex_round(symbolic_acts[l][i]) for i in range(len(symbolic_acts[l]))] for l in range(len(symbolic_acts))]
File "D:\Projects\py_works\pykan-master\kan\KAN.py", line 1239, in
self.symbolic_acts = [[ex_round(symbolic_acts[l][i]) for i in range(len(symbolic_acts[l]))] for l in range(len(symbolic_acts))]
File "D:\Projects\py_works\pykan-master\kan\KAN.py", line 1199, in ex_round
ex2 = ex2.subs(a, round(a, floating_digit))
File "D:\Anaconda3\envs\py38\lib\site-packages\sympy\core\basic.py", line 997, in subs
rv = rv._subs(old, new, **kwargs)
File "D:\Anaconda3\envs\py38\lib\site-packages\sympy\core\cache.py", line 70, in wrapper
retval = cfunc(*args, **kwargs)
File "D:\Anaconda3\envs\py38\lib\site-packages\sympy\core\basic.py", line 1111, in _subs
rv = fallback(self, old, new)
File "D:\Anaconda3\envs\py38\lib\site-packages\sympy\core\basic.py", line 1083, in fallback
arg = arg._subs(old, new, **hints)
File "D:\Anaconda3\envs\py38\lib\site-packages\sympy\core\cache.py", line 70, in wrapper
retval = cfunc(*args, **kwargs)
File "D:\Anaconda3\envs\py38\lib\site-packages\sympy\core\basic.py", line 1111, in _subs
rv = fallback(self, old, new)
File "D:\Anaconda3\envs\py38\lib\site-packages\sympy\core\basic.py", line 1083, in fallback
arg = arg._subs(old, new, **hints)
File "D:\Anaconda3\envs\py38\lib\site-packages\sympy\core\cache.py", line 70, in wrapper
retval = cfunc(*args, **kwargs)
File "D:\Anaconda3\envs\py38\lib\site-packages\sympy\core\basic.py", line 1111, in _subs
rv = fallback(self, old, new)
File "D:\Anaconda3\envs\py38\lib\site-packages\sympy\core\basic.py", line 1088, in fallback
rv = self.func(*args)
File "D:\Anaconda3\envs\py38\lib\site-packages\sympy\core\cache.py", line 70, in wrapper
retval = cfunc(*args, **kwargs)
File "D:\Anaconda3\envs\py38\lib\site-packages\sympy\core\function.py", line 469, in new
result = super().new(cls, *args, **options)
File "D:\Anaconda3\envs\py38\lib\site-packages\sympy\core\cache.py", line 70, in wrapper
retval = cfunc(*args, **kwargs)
File "D:\Anaconda3\envs\py38\lib\site-packages\sympy\core\function.py", line 309, in new
evaluated = cls.eval(*args)
File "D:\Anaconda3\envs\py38\lib\site-packages\sympy\functions\elementary\hyperbolic.py", line 331, in eval
i_coeff = _imaginary_unit_as_coefficient(arg)
File "D:\Anaconda3\envs\py38\lib\site-packages\sympy\functions\elementary\trigonometric.py", line 36, in _imaginary_unit_as_coefficient
return arg.as_coefficient(S.ImaginaryUnit)
File "D:\Anaconda3\envs\py38\lib\site-packages\sympy\core\expr.py", line 1712, in as_coefficient
r = self.extract_multiplicatively(expr)
File "D:\Anaconda3\envs\py38\lib\site-packages\sympy\core\expr.py", line 2245, in extract_multiplicatively
quotient = self / c
File "D:\Anaconda3\envs\py38\lib\site-packages\sympy\core\decorators.py", line 236, in _func
return func(self, other)
File "D:\Anaconda3\envs\py38\lib\site-packages\sympy\core\decorators.py", line 106, in binary_op_wrapper
return func(self, other)
File "D:\Anaconda3\envs\py38\lib\site-packages\sympy\core\expr.py", line 259, in truediv
return Mul(self, denom)
File "D:\Anaconda3\envs\py38\lib\site-packages\sympy\core\cache.py", line 70, in wrapper
retval = cfunc(args, **kwargs)
File "D:\Anaconda3\envs\py38\lib\site-packages\sympy\core\operations.py", line 98, in new
c_part, nc_part, order_symbols = cls.flatten(args)
File "D:\Anaconda3\envs\py38\lib\site-packages\sympy\core\mul.py", line 285, in flatten
if not a.is_zero and a.is_Rational:
File "D:\Anaconda3\envs\py38\lib\site-packages\sympy\core\assumptions.py", line 483, in getit
return _ask(fact, self)
File "D:\Anaconda3\envs\py38\lib\site-packages\sympy\core\assumptions.py", line 539, in _ask
fact_i_value = handler_i(obj)
File "D:\Anaconda3\envs\py38\lib\site-packages\sympy\core\add.py", line 703, in _eval_is_zero
if a.is_extended_real:
File "D:\Anaconda3\envs\py38\lib\site-packages\sympy\core\assumptions.py", line 483, in getit
return _ask(fact, self)
File "D:\Anaconda3\envs\py38\lib\site-packages\sympy\core\assumptions.py", line 539, in _ask
fact_i_value = handler_i(obj)
File "D:\Anaconda3\envs\py38\lib\site-packages\sympy\core\mul.py", line 1415, in _eval_is_extended_real
return self._eval_real_imag(True)
File "D:\Anaconda3\envs\py38\lib\site-packages\sympy\core\mul.py", line 1422, in _eval_real_imag
if (t.is_complex or t.is_infinite) is False and t.is_extended_real is False:
File "D:\Anaconda3\envs\py38\lib\site-packages\sympy\core\assumptions.py", line 483, in getit
return _ask(fact, self)
File "D:\Anaconda3\envs\py38\lib\site-packages\sympy\core\assumptions.py", line 539, in _ask
fact_i_value = handler_i(obj)
File "D:\Anaconda3\envs\py38\lib\site-packages\sympy\functions\elementary\hyperbolic.py", line 474, in _eval_is_positive
ymod = y % (2pi)
File "D:\Anaconda3\envs\py38\lib\site-packages\sympy\core\decorators.py", line 236, in _func
return func(self, other)
File "D:\Anaconda3\envs\py38\lib\site-packages\sympy\core\decorators.py", line 106, in binary_op_wrapper
return func(self, other)
File "D:\Anaconda3\envs\py38\lib\site-packages\sympy\core\expr.py", line 273, in mod
return Mod(self, other)
File "D:\Anaconda3\envs\py38\lib\site-packages\sympy\core\cache.py", line 70, in wrapper
retval = cfunc(*args, **kwargs)
File "D:\Anaconda3\envs\py38\lib\site-packages\sympy\core\function.py", line 469, in new
result = super().new(cls, *args, **options)
File "D:\Anaconda3\envs\py38\lib\site-packages\sympy\core\cache.py", line 70, in wrapper
retval = cfunc(*args, **kwargs)
File "D:\Anaconda3\envs\py38\lib\site-packages\sympy\core\function.py", line 309, in new
evaluated = cls.eval(*args)
File "D:\Anaconda3\envs\py38\lib\site-packages\sympy\core\mod.py", line 179, in eval
a = cls(i, q)
File "D:\Anaconda3\envs\py38\lib\site-packages\sympy\core\cache.py", line 70, in wrapper
retval = cfunc(*args, **kwargs)
File "D:\Anaconda3\envs\py38\lib\site-packages\sympy\core\function.py", line 469, in new
result = super().new(cls, *args, **options)
File "D:\Anaconda3\envs\py38\lib\site-packages\sympy\core\cache.py", line 70, in wrapper
retval = cfunc(*args, **kwargs)
File "D:\Anaconda3\envs\py38\lib\site-packages\sympy\core\function.py", line 309, in new
evaluated = cls.eval(*args)
File "D:\Anaconda3\envs\py38\lib\site-packages\sympy\core\mod.py", line 166, in eval
G = gcd(p, q)
File "D:\Anaconda3\envs\py38\lib\site-packages\sympy\polys\polytools.py", line 5393, in gcd
result = F.gcd(G)
File "D:\Anaconda3\envs\py38\lib\site-packages\sympy\polys\polytools.py", line 2916, in gcd
result = F.gcd(G)
File "D:\Anaconda3\envs\py38\lib\site-packages\sympy\polys\polyclasses.py", line 689, in gcd
return per(dmp_gcd(F, G, lev, dom))
File "D:\Anaconda3\envs\py38\lib\site-packages\sympy\polys\euclidtools.py", line 1625, in dmp_gcd
return dmp_inner_gcd(f, g, u, K)[0]
File "D:\Anaconda3\envs\py38\lib\site-packages\sympy\polys\euclidtools.py", line 1584, in dmp_inner_gcd
h, cff, cfg = _dmp_inner_gcd(f, g, u, K)
File "D:\Anaconda3\envs\py38\lib\site-packages\sympy\polys\euclidtools.py", line 1532, in _dmp_inner_gcd
f = dmp_convert(f, u, K, exact)
File "D:\Anaconda3\envs\py38\lib\site-packages\sympy\polys\densebasic.py", line 567, in dmp_convert
return dmp_strip([ dmp_convert(c, v, K0, K1) for c in f ], u)
File "D:\Anaconda3\envs\py38\lib\site-packages\sympy\polys\densebasic.py", line 567, in
return dmp_strip([ dmp_convert(c, v, K0, K1) for c in f ], u)
File "D:\Anaconda3\envs\py38\lib\site-packages\sympy\polys\densebasic.py", line 567, in dmp_convert
return dmp_strip([ dmp_convert(c, v, K0, K1) for c in f ], u)
File "D:\Anaconda3\envs\py38\lib\site-packages\sympy\polys\densebasic.py", line 567, in
return dmp_strip([ dmp_convert(c, v, K0, K1) for c in f ], u)
File "D:\Anaconda3\envs\py38\lib\site-packages\sympy\polys\densebasic.py", line 561, in dmp_convert
return dup_convert(f, K0, K1)
File "D:\Anaconda3\envs\py38\lib\site-packages\sympy\polys\densebasic.py", line 538, in dup_convert
return dup_strip([ K1.convert(c, K0) for c in f ])
File "D:\Anaconda3\envs\py38\lib\site-packages\sympy\polys\densebasic.py", line 538, in
return dup_strip([ K1.convert(c, K0) for c in f ])
File "D:\Anaconda3\envs\py38\lib\site-packages\sympy\polys\domains\domain.py", line 409, in convert
return self.convert_from(element, base)
File "D:\Anaconda3\envs\py38\lib\site-packages\sympy\polys\domains\domain.py", line 396, in convert_from
result = _convert(element, base)
File "D:\Anaconda3\envs\py38\lib\site-packages\sympy\polys\domains\rationalfield.py", line 136, in from_RealField
return MPQ(*map(int, K0.to_rational(a)))
File "D:\Anaconda3\envs\py38\lib\site-packages\sympy\polys\domains\realfield.py", line 108, in to_rational
return self._context.to_rational(element, limit)
File "D:\Anaconda3\envs\py38\lib\site-packages\sympy\polys\domains\mpelements.py", line 142, in to_rational
k = (ctx.max_denom - q0)//q1
ZeroDivisionError: integer division or modulo by zero

beg for help /(ㄒoㄒ)/~~

Try removing the pruning operation model = model.prune() and rerunning the code to see if it gives an error.

Try removing the pruning operation model = model.prune() and rerunning the code to see if it gives an error.

Thx, i tried, but it does't work, still the same erro.

try print all parameters, before:
File "D:\Projects\py_works\pykan-master\kan\KAN.py", line 1199, in ex_round
?

try print all parameters, before: File "D:\Projects\py_works\pykan-master\kan\KAN.py", line 1199, in ex_round ?

gotcha,  found the problem . When creating model=KAN(), i set too much hidden neurons, now decreasing to 6, works. But haven't found reason leads to this.


Automated Package Upgrade

:tada: This PR is included in version 19.2.2 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Update request: libopus 1.3.1 → 1.4

Package name: libopus
Latest released version: 1.4

Current version on the unstable channel: 1.3.1
Current version on the stable/release channel: 1.3.1

[x] Checked the nixpkgs pull requests

Notify maintainers

Note for maintainers: Please tag this issue in your PR.
Please update this (at least in the unstable channel) and release a version of opusTools with the new lib. Thanks.

Addressed by https://github.com/NixOS/nixpkgs/pull/231772


AMBARI-26114: Configure Chromium Browser in Jenkins file for Ambari

What changes were proposed in this pull request?
(Please fill in changes proposed in this fix)
Configure Chromium Browser in Jenkins file for Ambari
How was this patch tested?
(Please explain how this patch was tested. Ex: unit tests, manual tests)
(If this patch involves UI changes, please attach a screen-shot; otherwise, remove this)
Please review Ambari Contributing Guide before opening a pull request.

@virajjasani Hello,I have created some scripts to check if Chromium is installed on our servers. I discovered that the Jenkins server does not have this service installed.
How can we request the Jenkins team or relevant personnel to install Chromium on the Jenkins server?
This installation is necessary for our frontend service to test properly. Could you please advise on the best way to proceed with this request?
Thank you for your assistance.

We can create INFRA Jira I believe.

Once the Jira is created, we can also post on asfinfra channel in ASF slack https://the-asf.slack.com/archives/CBX4TSBQ8/p1723380330362469

Once the Jira is created, we can also post on asfinfra channel in ASF slack https://the-asf.slack.com/archives/CBX4TSBQ8/p1723380330362469

Very thanks for your help!

@virajjasani hi, I don't have an Infra Slack account and can't log in. The issue has already been created. Could you please help me post this to Slack? The issue link is: https://issues.apache.org/jira/projects/INFRA/issues/INFRA-26036

Sounds good, in the meantime i have sent you invitation to join ASF slack on<EMAIL_ADDRESS>

Sounds good, in the meantime i have sent you invitation to join ASF slack on<EMAIL_ADDRESS>
thanks again！

@virajjasani Could you help review this pr ?    The pull request at https://github.com/apache/ambari/pull/3809 needs to modify the Jenkinsfile first. However, I do not have the permissions to make the Jenkinsfile effective. Therefore, I am submitting this pull request to help move https://github.com/apache/ambari/pull/3809 forward.


changed the color of placeholder to gray-500

Placeholder color is changed to text-gray-500 and added select-none.
Old:

New:

Hey, we deliberately didn't have this placeholder color set as it was inconsistent with non-searchable select inputs. Since we use an empty <option> for the placeholder, it's difficult to consistently style the placeholder to be the correct color without affecting the color of the other options. We decided that it was better to have a consistent placeholder color across both select inputs.


A fix to update tags if specified in the re-importer

A fix for https://github.com/DefectDojo/django-DefectDojo/issues/7367

hi @coheigea ,
i did something similar in pr #7446 which was merged to dev instead of bugfix.

OK @gietschess , will close then.


Comparison to TartanLlama/expected

It would be nice to see a feature comparison against TartanLlama/expected, and maybe consider some of his functional extensions.

There's a branch with an initial implementation of D0786: ValuedOrError and ValueOrNone types.

This doesn't address yet the monadic operations that TartanLlama/expected, includes as member functions.
The original paper/implementation included such monadic operations.
[original version] http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2016/p0323r0.pdf
[original ref_impl] https://github.com/viboes/std-make/tree/master/include/experimental/fundamental/v3/expected
The last reference implementation doesn't include them.
[ref_impl] https://github.com/viboes/std-make/tree/master/include/experimental/fundamental/v3/expected2
For the monadic operations, the last not-yet-reviewed revision is at http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2018/p0650r2.pdf
I understand the advantage of the member function to be able to chain operations.
I believed the LEWG wanted non-member function, but I misunderstood surely.
With UFCS we will not have to discuss this ;-)
We will see what do we have at the end.


Keyboard Freezing on Samsung Galaxy J Max Tab - 32bit device with beta v1.12.13+hotfix.2

@timsneath
Steps to Reproduce

Open the app.
Start typing on any text field.
After some inputs, the keyboard freezes, you can still hear the ticking sound but it freezes with the OS at least for few mins.

The problem is happening with the Samsung Galaxy J Max tab with Android 5.1.1. Just FYI It has 32 Bit ARM-based CPUs.
I tried it with other channels. The build is working fine then.

Logs

[✓] Flutter (Channel beta, v1.12.13+hotfix.2, on Mac OS X 10.15.1 19B88, locale
en-GB)
• Flutter version 1.12.13+hotfix.2 at /Users/pawankumar/flutter
• Framework revision 4f54e46f56 (22 hours ago), 2019-12-04 09:20:18 -0800
• Engine revision 6955b06ced
• Dart version 2.7.0
[✓] Android toolchain - develop for Android devices (Android SDK version 29.0.2)
• Android SDK at /Users/pawankumar/Library/Android/sdk
• Android NDK location not configured (optional; useful for native profiling
support)
• Platform android-29, build-tools 29.0.2
• Java binary at: /Applications/Android
Studio.app/Contents/jre/jdk/Contents/Home/bin/java
• Java version OpenJDK Runtime Environment (build
1.8.0_202-release-1483-b49-5587405)
• All Android licenses accepted.
[✓] Xcode - develop for iOS and macOS (Xcode 11.2.1)
• Xcode at /Applications/Xcode.app/Contents/Developer
• Xcode 11.2.1, Build version 11B500
• CocoaPods version 1.8.4
[✓] Android Studio
• Android Studio at /Applications/Android Studio 3.6 Preview.app/Contents
• Flutter plugin version 41.2.3
• Dart plugin version 192.7761
• Java version OpenJDK Runtime Environment (build
1.8.0_212-release-1586-b4-5784211)
[✓] Android Studio (version 3.5)
• Android Studio at /Applications/Android Studio.app/Contents
• Flutter plugin version 41.1.2
• Dart plugin version 191.8593
• Java version OpenJDK Runtime Environment (build
1.8.0_202-release-1483-b49-5587405)
[✓] Android Studio
• Android Studio at /Applications/Android Studio 4.0 Preview.app/Contents
• Flutter plugin version 41.2.3
• Dart plugin version 192.7761
• Java version OpenJDK Runtime Environment (build
1.8.0_212-release-1586-b4-5784211)
[✓] IntelliJ IDEA Ultimate Edition (version 2019.2.4)
• IntelliJ at /Applications/IntelliJ IDEA.app
• Flutter plugin version 41.1.4
• Dart plugin version 192.7761
[✓] VS Code (version 1.40.2)
• VS Code at /Applications/Visual Studio Code.app/Contents
• Flutter extension version 3.6.0
[!] Connected device
! No devices available
! Doctor found issues in 1 category.

@dnfield

Tried on a Samsung Galaxy Tab S 10.5, did not reproduce.
Tried on Samsung Galaxy Tab 3 Lite, also didn't reproduce.
@iampawan the app I'm trying is just our default app from Flutter create with a text field added.  I'm selecting the text field and just typing a bunch of random letters quickly for a minute.  I'll try to track down the exact device you're on, but it'd be helpful to know if I'm just not using the right test :)

Also, FWIW, the devices I'm testing are on Android 4.4.2 (API 19) and 4.2.2 (API 17).
They're both armv7/32-bit.

I'm not able to track down a Galaxy Tab J Max either in our device lab, a bigger lab at Google, or on eBay :(

@dnfield no problem. Give me some time. I'll go to the office tomorrow morning IST and I will grab the device and try to perform the same thing with my other apps. Right now, I don’t have the device with me But I actually tried running the same app with the different channel and it started working fine.

@iampawan - it would be super helpful if you could bisect this issue since I'm not able to reproduce it.    Run your app, try typing, if it freezes use git bisect bad, if not git bisect good.  Eventually you should find the commit where things went wrong (probably an engine roll).  That would help us narrow down things a bit more.  If it's an engine roll, it may also be helpful to try all the engine commits in that roll to find out which one was bad.

@dnfield That's a very helpful suggestion. I'll definitely update you as soon as possible.

Note that I'm not marking this as a release blocker since we haven't been able to reproduce yet.

Hi, @tvolkert @dnfield This is what I could get using the above process.

[c382b8e990b6976f610764179f94e0416d82c057] Roll engine 3dc233f04e8e..55406841525f (5 commits) (#38756)

Also, it's not happening with normal text fields but it happens when I have text fields with focus nodes and I unfocus and request focus on other text fields. It's just my assumption though. I can make a video if you need.

Thanks for your help!
So did the bisect identify c382b8e as the commit that introduced this?  If you sync to the commit before that commit (2200e58), does the problem go away?  That commit is also in v1.9.1, so that would mean the bug is in stable right now...
What would be very helpful is if you could write a minimal sample app whose text field demonstrates this problem, so we can all agree on the code that we're testing against.

@tvolkert Actually I didn't complete it. I am doing it right now but it is taking time because with every commit I need to download the sdk again and again.

Ah, gotcha.  Thanks again!

Hi @tvolkert @dnfield I found the commit
[384a44d6bdce88d5bbd63fbcccc29ee8dc32f0ba] update docs (#32545)
commit 53c7ca7d5ada715f9c2c62fb1d3e0ab115c611f9 (refs/bisect/bad)
Author: Amir Hardon<EMAIL_ADDRESS>Date:   Wed Nov 20 17:00:46 2019 -0800
Allow unknown fields in pubspec plugin section (#45303)

Also, thanks for letting me know about this helpful tool. Is there any way to not download the sdk and tooling again and again?

Hi, @tvolkert @dnfield I found the commit. Also, thanks for recommending these commands. I didn't know about it.  Also, is there any way of doing this without downloading the SDK and build tools and running the app again and again.
6b66d794360bb7d3ff7bf2f6dfbcbd58516c3f20 is the first bad commit
commit 6b66d794360bb7d3ff7bf2f6dfbcbd58516c3f20
Author: Gary Qian<EMAIL_ADDRESS>Date:   Wed Nov 20 16:37:10 2019 -0800
Track and use fallback TextAffinity for null affinity platform TextSelections. (#44622)

.../flutter/lib/src/painting/text_painter.dart     |  9 +++--
packages/flutter/lib/src/rendering/editable.dart   | 35 ++++++++++++++++++--
.../flutter/lib/src/services/text_editing.dart     |  4 +--
packages/flutter/lib/src/services/text_input.dart  |  5 ++-
.../flutter/test/painting/text_painter_test.dart   | 38 ++++++++++++++++++++++
packages/flutter/test/rendering/editable_test.dart | 25 ++++++++++++++
.../flutter/test/services/text_input_test.dart     | 31 ++++++++++++++++++
7 files changed, 139 insertions(+), 8 deletions(-)

I hope it helps. Let me know if you want anything else from my side.

@iampawan - just to be clear, if you checkout beta and revert 6b66d79, the issue goes away right?

Yes
On Fri, Dec 6, 2019, 11:03 PM Dan Field<EMAIL_ADDRESS>wrote:

@iampawan https://github.com/iampawan - just to be clear, if you
checkout beta and revert 6b66d79
https://github.com/flutter/flutter/commit/6b66d794360bb7d3ff7bf2f6dfbcbd58516c3f20,
the issue goes away right?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/flutter/flutter/issues/46159?email_source=notifications&email_token=ADAI5HAUMI7HKHRIMSELOC3QXKEFNA5CNFSM4JV3YMNKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEGEZXYA#issuecomment-562666464,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ADAI5HB2ORX6BEARCTE2R7DQXKEFNANCNFSM4JV3YMNA
.

/cc @gspencergoog or @GaryQian - that commit doesn't strike me as especially fishy, but maybe one of you know something more about Focus nodes and TextAffinity...

@iampawan any luck in getting a minimal app & repro steps in the app that demonstrates the problem?

@tvolkert  I was out. Working on that just right now

Thanks!

Hi, @tvolkert @dnfield Pardon me for the worst code 😅I had to write to minimally reproduce it. https://gist.github.com/iampawan/efeff11154c6eba795ddf37730263968
Let me know if it works.

Also, the implementation might be very poorly done by my team mate but it was working for some reason without this weird issue but today because I checked it, may be I would be able to fix it (not sure though) by trying few things in the code. But even if it has any exception or something it should give that error rather than freezing. And it should not work on other commits then. Let me know if you need any other information from my side.

When I try this I can't type anything at all...

That's makes sense. Because the text is setting to " " in the listener .
Actually I just posted this because it was freezing the keyboard somehow. I
thought maybe your 32 bit devices will behave the same way.
On Sat, Dec 7, 2019, 12:37 AM Dan Field<EMAIL_ADDRESS>wrote:

When I try this I can't type anything at all...
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/flutter/flutter/issues/46159?email_source=notifications&email_token=ADAI5HGUNBSSN23O7D5J4BLQXKPIDA5CNFSM4JV3YMNKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEGFBXIY#issuecomment-562699171,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ADAI5HDOM4YTI2YX4YGLUM3QXKPIDANCNFSM4JV3YMNA
.

@iampawan once you've got a repro that works for you on other devices but not on the device in question, please post the code and we'll give it a look. It sounds like right now it's not working for us on any device.

@kf6gpe can we get this labelled with affected customers to better understand the impact here?

I missed what the code was doing there - I'm still not able to reproduce the keyboard freezing on the 32 bit Samsung tablets I have access to.

cc @timsneath, who should know which of the customers reported this.

Pawan is the reporter.
On Mon, Dec 9, 2019 at 4:42 PM Ray Rischpater, KF6GPE <
<EMAIL_ADDRESS>wrote:

cc @timsneath https://github.com/timsneath, who should know which of
the customers reported this.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/flutter/flutter/issues/46159?email_source=notifications&email_token=AARWL6YARFPTQPLHMDOBY4TQX23T7A5CNFSM4JV3YMNKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEGKZ23Y#issuecomment-563453295,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AARWL6ZCEE5OXZI222HTJX3QX23T7ANCNFSM4JV3YMNA
.

cc @GaryQian I took a guess and assigned this to you with a guess at the target milestone, please reassign if you're not the appropriate person. Thanks!

This was indeed introduced by https://github.com/flutter/flutter/commit/6b66d794360bb7d3ff7bf2f6dfbcbd58516c3f20
It is currently rolled back, pending a rewrite to avoid this and a few other flickering bugs this caused.
I will close this as I do not expect to reland without significant reworks.

This may require a hotfix to fix it in stable.

The following reverts are needed to hotfix this: https://github.com/flutter/flutter/pull/45698 as well as https://github.com/flutter/engine/pull/14053 engine side

cc @kf6gpe

cc @tvolkert


retry on exising job load collsion after jenkins restart

Fixes https://github.com/openshift/jenkins-sync-plugin/issues/117
@bparees @jimmidyson

@gabemontero do you want to make this change here first:
https://github.com/openshift/jenkins-sync-plugin
?

I didn't get around to trying it but @scoheb made the suggestion to use ItemListener.html.onLoaded which might be a cleaner solution to this problem.

Did I do it to the wrong repo ?!?!?!?!
Ok I'll cancel this one and redo.
On Mon, Feb 27, 2017 at 4:10 PM Ben Parees<EMAIL_ADDRESS>wrote:

@gabemontero https://github.com/gabemontero do you want to make this
change here first:
https://github.com/openshift/jenkins-sync-plugin
?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/jenkinsci/openshift-sync-plugin/pull/38#issuecomment-282854409,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ADbadE3elhF8Z1fNgWmByl2zFais-eyIks5rgzvXgaJpZM4MNm1T
.

Hmm. Yeah I've used that plug point before.
Have to redo the pull anyway I'll look into onLoaded.  At first blush I
agree it could help with the update path.  Not 100% sure about create yet.
On Mon, Feb 27, 2017 at 6:26 PM Jimmi Dyson<EMAIL_ADDRESS>wrote:

I didn't get around to trying it but @scoheb https://github.com/scoheb
made the suggestion
https://github.com/openshift/jenkins-sync-plugin/issues/109 to use
ItemListener.html.onLoaded which might be a cleaner solution to this
problem.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/jenkinsci/openshift-sync-plugin/pull/38#issuecomment-282890992,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ADbadNiuHq9902p3HhWI7xWQEJKf8p7Wks5rg1uTgaJpZM4MNm1T
.

Did I do it to the wrong repo ?

well neither repo is wrong and at least until we put some CI in place somewhere it doesn't matter all that much, but the pattern i think we've been following on the other plugins is to change the openshift org fork first, then push the change up to the jenkinsci fork.

On Mon, Feb 27, 2017 at 8:57 PM Ben Parees<EMAIL_ADDRESS>wrote:

Did I do it to the wrong repo ?
well neither repo is wrong and at least until we put some CI in place
somewhere it doesn't matter all that much, but the pattern i think we've
been following on the other plugins is to change the openshift org fork
first, then push the change up to the jenkinsci fork.

yea i meant i did it in the wrong order...i certainly knew that was the
pattern...just can't believe i got it that backwards:-)
I'll double check my set up on my laptop and see what i had miswired

—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/jenkinsci/openshift-sync-plugin/pull/38#issuecomment-282917925,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ADbadHEiciJ1MmIhqazAROtCGO9jhjLcks5rg38VgaJpZM4MNm1T
.

Sure enough my local repo has the wrong upstream remote .... OK, cancelling this PR.  Will rework.


Create backlog for implementation

💡 Proposed Solution
Capture minimum required issues for implementation of exercise.
🤷 Alternatives Considered

📚 Additional Context

🔗 Related Issues/PRs
Use outputs front issues #1 and #2 to begin implementation

Tickets created under implementation milestone that covers exercise

Initialise repository	https://github.com/tooniez/saucedemo-e2e-exercise/issues/8
Define configurations	https://github.com/tooniez/saucedemo-e2e-exercise/issues/9
Add initial tests	https://github.com/tooniez/saucedemo-e2e-exercise/issues/10
Configure Test Reporting	https://github.com/tooniez/saucedemo-e2e-exercise/issues/11
Add Maintenance approach	https://github.com/tooniez/saucedemo-e2e-exercise/issues/12


horizontal scroll bar

Is your feature request related to a problem? Please describe.
Hey there,
to be honest, I did not start coding with pygame_gui yet. But while looking for the possibilities, I mentioned that a horizontal scroll bar is missing (also a vertical slider). This is not a big deal, but leads to a gui redesign of my current project.
Describe the solution you'd like
A gui element that allows scrolling of a region in horizontal direction.
Describe alternatives you've considered
None
Additional context
None

There is a horizontal scroll bar from version 0.5.5, see docs here:
https://pygame-gui.readthedocs.io/en/latest/theme_reference/theme_horizontal_scroll_bar.html


Optimize seqtrigger

Codecov Report

Merging #299 into master will decrease coverage by 0.1%.
The diff coverage is 90.71%.

@@            Coverage Diff             @@
##           master     #299      +/-   ##
==========================================
- Coverage   92.23%   92.13%   -0.11%
==========================================
  Files         211      211
  Lines       10798    10859      +61
==========================================
+ Hits         9960    10005      +45
- Misses        838      854      +16

Impacted Files
Coverage Δ

malcolm/modules/pmac/util.py
91.53% <100%> (-3.7%)
:arrow_down:

malcolm/modules/pmac/parts/pmacchildpart.py
94.05% <83.72%> (-1.5%)
:arrow_down:

...modules/ADPandABlocks/parts/pandaseqtriggerpart.py
90.99% <91.54%> (-0.68%)
:arrow_down:

Continue to review full report at Codecov.

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

This is now ready to merge.


ngAnimate in conjunction with classNameFilter causes strange side effect in angular 1.4.x

I have an application where I use font-awesome spinners to indicate a work in progress.
In angular version < 1.4.x I used $animateProvider.classNameFilter(/^((?!(fa-spin)).)*$/) in order to exclude font-awesome spinner elements from ngAnimate animations.
However, in version 1.4.x there is a strange effect in using class name filter. The spinners are permanently shown, although they should be hidden (ngShow/ngHide).
[plunker] (http://plnkr.co/edit/ysMTs2VmtJ1bwDOvf6XF?p=preview)
By commenting the line app.js:19 out one gets the functionality almost as expected. The only problem now, of course, is that the "spinners" are extra animated by the ngAnimate.

Adding a little more info (not a solution), surrounding the <i> with a span that uses ng-show seems to behave properly.
plunker

This issue was fixed and is working in RC1. Here are two demos below (1.4.0 RC1 and 1.3.15) to show that it works as expected:
1.4.0-RC1 = http://plnkr.co/edit/dZAMEjaWoFWft7hxRqiZ?p=preview
1.3.15 = http://plnkr.co/edit/ysMTs2VmtJ1bwDOvf6XF?p=preview
Please reopen if I'm missing something.


The Gravity 3 Motherlode

After more than a year of work, I think it's time to merge the Gravity 3 work we've been doing in next up into develop, so that we can then release it. 🎉
Looking through the remaining issues, there's some pattern library tidy-ups we want to do, but I don't think they'd be likely to introduce breaking changes to the SASS/CSS code. So, no reason to hold back the release of v3.0.0 just for those.
There shouldn't be any need to review the changes in this PR as each one will have been individually done as a PR on next and thus reviewed at the time. But, reviewers are of course welcome to do whatever (spot) checks they want.

:tada: This PR is included in version 3.0.0 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


DSPy version 2.5 onward logging not compatible with Phoenix

Is your feature request related to a problem? Please describe.
Version 2.5 of the DSPy library is not supported by the openinference-instrumentation-dspy library.
Describe the solution you'd like
Add support for DSPy 2.5 to the openinference-instrumentation-dspy library..
Describe alternatives you've considered
None.
Additional context
DSPy is now using LightLLM for clients and this broke backward compatibly with tracing libraries.

We're happy to support this! Users love the Phoenix <> DSPy integration.

thanks for the issue @okhat @arthurgreef - We will dive in next week and get a fix out. We also have tracing for LiteLLM so this might work out nicely.


Support an expiry time for OAuth/OIDC 'ApproveAlways' consent

During the OAuth/OIDC consent prompt, we have the option of selecting approve always which results in a permanent consent for the particular app.

Currently we have to invoke updateApproveAlwaysForAppConsentByResourceOwner of OAuthAdminService and change the state of the consent.

It is better to consent to be expired automatically after some time. Include a global/application wise configuration to mention the expiration time of a consent Or provide a way for a user to change the expiration of consent in UI.

Refer: https://wso2.org/jira/browse/IDENTITY-5928

This issue is being closed due to extended inactivity. Please feel free to reopen it if further attention is needed. Thank you for helping us keep the issue list relevant and focused!


Create/form button

Overview
Creates New Button Components. Creates a new Button component that handles different button state (hover, disabled, loading) export styled components Primary, Secondary as well as a plain Text button.
Notes

Added classnames library as discussed earlier in call. For reference https://www.npmjs.com/package/classnames .

Well need to run npm run start as a result

Icons will be passed in as a JSX.Element from the .svg component folder

Screenshots
Primary Button

Disabled

Active

Loading

All of the screenshots of buttons will be on Search Fractal page for viewing of the Different Button styles.

Secondary button

Text Button

Primary with Icon right

Primary with Icon left

@adamgall updated with changes to loader so that the loading 'text' is absolute and sits over the 'hidden' label

I should also add instead of the word 'Loading' I used 3 asterisks * * *


Browser ext: Handle table has  at start of each table row.

Sort gets messed up if each table row has <th> at the start. Ops/sec doesn't infer numeric-sort check if its because of this, or some other reason.

http://vanilla-js.com/
https://www.gov.uk/government/publications/local-stop-smoking-services-and-support-additional-funding/local-stop-smoking-services-and-support-funding-allocations-and-methodology#smoking-prevalence-and-confirmed-funding-allocations-by-local-authority

Fixed for the most part in https://github.com/LeeWannacott/table-sort-js/releases/tag/v1.20.0
numeric-sort needs to handle currency and vanilla js ops has spans with the value in them; which isn't sorted.
Tests for this need to be written, I only manually tested this. This will most likely require rejigging testing not just writing the tests...


[Feature Request]: Enhance Login Page UI and Add Animations

Is there an existing issue for this?

[X] I have searched the existing issues

Feature Description
Improve the login page's design to make it more visually appealing and user-friendly. Add subtle animations for better user interaction and experience.
Record

[X] I agree to follow this project's Code of Conduct
[X] I want to work on this issue
[X] I'm willing to provide further clarification or assistance if needed.

Please see discussions join discord

@AnushkaChouhan25 Please see discussion tab and join discord plz

@AnushkaChouhan25 Show me the design first If I like it then I will assign it


Feature Request: Feather falling V

Could someone add the ability to create Feather Falling V in survival? Feather falling V would remove all fall damage. Thanks!

Hold up. I'd very much like to have feather falling 5 yes, but not if it removed all fall damage. It should merely allow falling somewhat further than ff4 before taking damage.

According to the formula that feather falling uses to calculate fall damage, feather falling V would remove all fall damage.

See my reply to datsanakas.

I wish you would reconsider, feather falling 5 (one that increases fall distance allowed before taking damage, not one that eliminates all fall damage) is something I'd very much like to have before starting my new Amplified world. Blocking a feature based on balance alone when said feature is optional anyway seems very limiting.

The issue in this case appears to be less of balance, and more of it actually being unfeasible.

We did have this for a short while. It was found to break most enchantments, though, so was removed

This is the reply that was previously referred to.


Move access token to a git-ignored file

It could be better to move the configuration values like access token and username or whatever it will be added in the future to a .json file and put it in .gitignore

Yup, i have to do this!

Close due to inactivity


Job hangs if connection to HPC resource failed

If lie_md/cerise is unable to connect to the external HPC resource the job hangs.
Should maybe try a few times and then fail the job.

Yep. This is not an lie_md issue though, it's up to Cerise to manage the connection to the HPC machine and reconnect as needed and as available. This is Cerise issue https://github.com/MD-Studio/cerise/issues/78, and it's already solved on the develop branch with the port to Cerulean.


websocket with customized certificate

Hi, I was wondering if there is one way to bind my own certificate when I created a secure socket connection(wss).
Thanks in advance!

Thank you for your quick response!! I'll look at it. Maybe I'll reach out to you if there is something wrong. I'll close this issue if everything goes well!
Thank you for your help!


interfaces: let rc.linkup coalesce interface events from devd

Important notices
Before you add a new report, we ask you kindly to acknowledge the following:

[x] I have read the contributing guide lines at https://github.com/opnsense/core/blob/master/CONTRIBUTING.md
[x] I am convinced that my issue is new after having checked both open and closed issues at https://github.com/opnsense/core/issues?q=is%3Aissue

Is your feature request related to a problem? Please describe.
This refs #6852 and the problem with rc.linkup being driven by devd is that reloads are done one interface at a time which might be too much overhead with many VLANs attached to a physical port going down and back up. Some reload hooks are executed each time but not really needed.
Describe the solution you like
Push devices into a fifo queue and reload all interface, but only after finishing all interfaces do the reload hooks of interface_configure($reload = true)
Describe alternatives you considered
There are no real alternatives. The boot is pretty well serialized but later on that is hard to ensure without restructuring all of the configuration code to check for changes in the system state and render them. Having many interfaces to check slows this down considerably again.
Additional context
#6852 and possibly another rc.linkup bug that @swhite2 mentioned today.

The issue lies with link-up events being triggered rather late in the boot sequence (which might be caused by anything, in my case slow-to-come-up SFP modules). If we consider a DHCP interface such as the factory default WAN, the following happens before a link:
/usr/local/etc/rc.bootup: The command '/sbin/dhclient -c '/var/etc/dhclient_wan.conf' -p '/var/run/dhclient.ax0.pid' 'ax0''
returned exit code '1', the output was 'ax0: no link .............. giving up'

The devd event is ignored during boot (by exit_on_bootup()), as it likely should to avoid other problems. The result is that the WAN interface will never obtain an IP. Ideally, dhclient should simply wait for a link to come up (which is the case on Linux AFAIK) and not bail at all, dhclient on FreeBSD does not support this I believe.
This may just as well be a driver issue, as it's quite uncommon that a link should come up this late, though wholly assuming there is a link is in my opinion a bit risky.

I just battled what I think is relevant problem for this issue. It started late last year after an upgrade to one of the later 23.x versions (still present in 24.1). I spent alot of time learning how OPNsense boots and debugging the boot process on our slow Atom D510 4MB RAM hardware.
It's long and drawn out but I thought I would write it up in case anyone finds it helpful or I need to refer back to it myself:)
What @fichtner is trying to fix and @swhite2 is saying about late link-up events is exactly what I found the problem to be.
Problem Description
For many years we have successfully run a redundant pair of OPNsense firewalls with 4 NICs, ~8 VLANs, some with CARP, some with FRR/ospfd. After upgrade to a later 23.x versions bootup would "complete" and FRR/ospfd would converge with all OSPF routes added to the kernel and working as expected. Within 2-3 minutes, some or all OSPF learned routes for an OSPF interface (or >1 interface sometimes) would be removed from the kernel and never re-added. I upgraded to the latest 24.x version and the issue remained.
Problem Details
Turns out that interface_configure() ends up doing an address flush which executes ifconfig <intf> <ip> -alias. The ip gets re-added at some point, but the kernel removed the OSPF route on the IP removal. FRR/ospfd never drops the adjacency and re-neighbors so the kernel is never re-informed to add the route.
I use rc.syshook.d/early/ to enable zebra debugging during boot and I can see FRR/zebra does receive notifications from the kernel about the address/route removal, but FRR does nothing about it. As far as FRR is concerned the kernel has the route zebra gave it and ospfd continues to maintain adjacency. Toggling the interface at either end of the link will cause OSPF to re-neighbor and the route(s) get re-added to the kernel.
Ultimately I found (at least on our ancient hardware/config) that rc.bootup finishes way before all the devd LINKUP/DOWN events are complete, so the flock on /var/run/booting is released well before all the devd linkup/down events fire off. During "booting", the call to interface_configure() is skipped in rc.linkup by exit_on_bootup(). After booting is considered complete, this interface_configure() call is not skipped, so the IP address flush in interface_configure() is executed which kills the kernel route(s) zebra added for that interface.
"My Workaround/Fix"
I added a long delay to the end of rc.bootup, before the final exit(0). This kept the "booting" state (flock on /var/run/booting) active for the duration of the artificial delay. With this delay place I can see in the system log file that devd events continue to be processed after bootup would normally have been "done". The interface_configure() calls get skipped, so there are no ifconfig <intf> <ip> -alias executions. The calls to plugin hooks for openvpn, ipsec, dhcp, dns,crl etc run very slowly. It takes 2-3 or more minutes to complete.... like @fitchner describes.
After my artificial delay is complete, rc.bootup exits, flock on /var/run/booting is released, normal boot continues (starting FRR etc) and everything works fine... because there are no more linkup/down devd events
For now I've left my rc.bootup extended delay in. It's a redundant firewall setup so we can live with a 3 minute longer boot.
Questions/Thoughts
So... I'm not an expert on the OPNsense/FreeBSD boot process or future goals for it but:

If FRR/zebra acted on the kernel messages about address/route removal, OSPF adjacency would/could drop and be re-aquired, sending the route(s) to kernel again.
If I upgraded to faster hardware, it may chew through the devd linkup/downs before rc.bootup completed.
@fitchner's coalesce concept for this issue may speed things up so devd linkup/downs are processed before rc.bootup is completed.
From some code and comments I ran into about older versions: There "may" have been special processing for interfaces with static IP (or just static ARP?) that did not remove the IP.... which would leave kernel route intact. That might explain why we did not see this issue until recently(later 23.x versions).
Maybe adding yet another interface plugin for FRR that restarts the OSPF process (via vtysh "clear ip ospf process" or full FRR/ospfd restart) could work.

Working and Not Working Log
I attached some logs with my added DEBUG logging that have been sanitized with IPs/names/etc replaced via sed.
Note that the ospfd already running? error in the logs is ok and is not involved in this issue. I noticed this at some point and found a @fichtner comment that it's by design to make 2nd start attempt later in startup process.
boot_with_rc.bootup_delay_added.txt:

rc.bootup has added delay, allowing a working bootup.
There is only 1 call to ifconfig <intf> <ip> -alias ... for loopback/<IP_ADDRESS>
boot_with_rc.bootup_delay_added.txt

boot_without_rc.bootup_delay_added.txt:

Normal bootup, no artificial delay added to rc.bootup
devd linkup/downs occur after bootup is "complete"
ifconfig <intf> <ip> -alias commands are invoked (which is what kills the kernel routes added by zebra)
boot_without_rc.bootup_delay_added.txt

@framer99 thanks for the detailed report. just to be sure you are already on 24.x or still on 23.x?

Yes that's correct, 24.1.1.

I've discovered that during normal operation we can still lose kernel routes zebra installed when a link toggled when a neighbor switch rebooted
Doing a clean 5 second long cable unplugs/re-plugs generally work. However, during card reset/switch reboots for equipment plugged into the OPNsense machine, routes can still end up in zebra but not the kernel.
I turned bfd back on for one OSPF link and bfd itself seems to bounce alot (3,4, maybe more times) when recovering instead of just bfd down then bfd up.
I commented out the actual ifconfig <intf> <ip> -alias command in legacy_interface_deladdress() and things seem better.
I will need to create a simple single-link test setup to be able to get to the bottom of it all. Maybe its all our ancient hardware or some other part of the config.


Make the MAX_SERIES limit a plugin parameter.

Add a new plugin parameter to change the maximum number of series that will be passed to the frontend.
The current value of 120 is kept for:

backward compatibility (after the plugin update, no value will be set, so 120 will still be used);
incorrect value set in the configuration panel (only round positive number are correct values).

Fixes https://github.com/grafana/influxdb-flux-datasource/issues/31

In the next release, this is supported on the serverside and has a configuraiton:
https://github.com/grafana/influxdb-flux-datasource/blob/master/src/components/ConfigEditor.tsx#L92


Adopt sphinx-apidoc and retire complex sphinxext

🚀 Pull Request
Description
Retire the old and convoluted sphinx extensions to generate the Iris API documentation.

Uses sphinx-apidoc instead
The indented blank line is now gone that appeared at the top of some API doc pages
The "In this module:" section  is now not present (part of the old extensions), this is fine as the right hand sidebar shows this now.
At the bottom of each page the TOC (Table of contents) for all child packages or modules is displayed.  I think this is useful, especially if viewing on a smaller screen where the sidebar may be hidden.
The order or sidebar contents are different but all are present
The docstrings can be in a slightly different place but all are present I believe (I welcome someone doing a review to check some api doc pages)
There is still a sphinxext (new one) that will remove the word package and module that make the sidebar hard to read imho.  I cannot find any option in sphinx-apidoc itself to disable this.

Without package and module in the sidebar (and headings)

With package and module in the sidebar (and headings)

package and module in the sidebar (and headings)

There are many incorrect indentations and incorrect syntax in the docstrings that should be using the numpydocs, I may address those in a separate PR.

Consult Iris pull request check list

OMG ❤

😍
Think the linkcheck failure is https://github.com/matplotlib/matplotlib/issues/25731

heart_eyes
Think the linkcheck failure is matplotlib/matplotlib#25731

There been a server outage for the mpl docs most of the afternoon, but it's back up now.
I respun the CI and all is well now :smile:


Unexpected match for sequence pattern with negative middle event

Query:
EVENT SEQ(t0 e0, !(t0 e1), t0 e2) WHERE e1.attr == "val"

Events:
		&tEventImpl{
			typ: "t0",
			ts:  time.Date(2014, 1, 1, 0, 0, 20, 0, time.UTC),
		},
		&tEventImpl{
			typ: "t0",
			ts:  time.Date(2014, 1, 1, 0, 0, 20, 1, time.UTC),
			attrs: map[string]interface{}{
				"attr": "val",
			},
		},

The above query is a match even though it seems it shouldn't?

This looks correct to me. It's matching the first event as e0 and the second as a2 (there are no filter conditions on e0 or e2)

e1 does match though? The condition e1.attr == "val" is satisfied by the second event?

Right. This is really a question of semantics. What will be happening here (I guess is):

A candidate of e0 and e1 is generated; evaluates to Negative
A candidate of e0 and e2 is generated; evaluates to Positive

Yes, exactly.

I don't know which is actually the correct outcome, though…

Thinking about this in more detail, this is definitely a bug. I'm not sure why this doesn't work (it should be taken care of by Invalid but I suspect a subtle ordering issue at play). Will investigate.

As far as I can tell, it's not a matter of Invalid. Your previous account is accurate, so it's basically due to allowing the second event to bind to e2 despite matching e1 which is earlier in the sequence. I think if an event x matches e_i in the pattern e_1, ..., !e_i, ..., e_n, then x should not be allowed to bind to e_i+1 ... e_n.

Right. This is somewhat complicated, however, when an operand value is not static. Consider:
EVENT SEQ(t0 e0, !(t0 e1), t0 e2) WHERE e1.attr == e2.attr
I think negated events need to be treated even more specially than they already are…

Okay, I think I have a solution. Stand by.

I think this relates to the "event selection strategy" described here:

Event Selection Strategy
The event selection strategy expresses how to select the events relevant to a pattern from an input mixing relevant and irrelevant ones. Three strategies can be chosen based on the application needs:
S1: Strict or partition contiguity ‘|’. The most stringent event selection strategy requires the selected events to be contiguous in the input. A close variant is partition contiguity, which partitions the input stream based on a logical condition, e.g., the same task id, and requires selected events
to be continuous in each partition.
S2: Skip till next match ‘→’. The strategy removes the contiguity requirements and instead, has the ability to skip irrelevant events until it sees the next relevant event to match more of the pattern. Using this strategy, Query 1 can conveniently ignore all irrelevant events, e.g., the reducer
events, which are only “noise” to pattern matching but commonly exist in input streams.
S3: Skip till any match ‘⇒’. The last strategy offers more flexibility by allowing non-deterministic actions on relevant events: Once seeing a relevant event, this strategy clones the current partial match to a new instance, then it selects the event in the old instance and ignores the event in the new instance. This way, the new instance skips the current event to reserve opportunities for additional future matches.

It looks like the current implementation corresponds to S3, though it's not entirely clear to me from the description above how the event selection strategy interacts with negation -- examining the formal semantics more closely might reveal this. If the event selection strategy was an explicit part of the implementation, we might be able to address these issues.

I have what I think is a solution, but yes, I think there needs to be more than one strategy available one way or another.


Feature Request: Parsing HTML Files or Strings

This is a feature request/question: What do you think about adding support for parsing HTML files and strings to LightXML.jl via the HTMLparser module of libxml2?
Two possible strategies to implement this functionality come to my mind:

Adding an argument to parse_file indicating whether it is a XML or a HTML file which has to be parsed and then internally chosing the corresponding libxml2 function.
Renaming parse_file (and similar functions) to parse_xml[file] [thus breaking the existing api] and adding parse_html[file] (and similar functions).

In addition one would have to think how to represent HTML documents (e.g., a separate HTMLDocument type which has a common supertype with the existing XMLDocument type?)
What do you think? I would love to have this functionality and would vote for implementation strategy 2. with some transition phase for depracating parse_file and similar functions. Overall I think it is cleaner. I could try to set up a prototype if there is support for this feature.

I wouldn't be opposed to exposing the C API if it's always present (can libxml2 be configured to not include the html parsing functionality?) but generally I think specialized html types would be better done in another package. Or parse_html could be added without breaking the api.

Thanks for your response! I looked at the source code and it is possible to turn off HTML parsing functionality when compiling the package. It is activated by default. I started writing a prototype based on a fork of the existing LightXML.jl package and it integrates fine with some glue code. I added parse_htmlfile and parse_htmlstring functions, renamed parse_file and parse_string to parse_xmlfile and parse_xmlstring and provided glue code functions parse_file and parse_string for backward compatibility (with a warning that these functions might be removed in the future.) With this functionality, existing tests work fine.
However, I also think a separate HTMLDocument type will be necessary as not every functionality for XMLDocument's will make sense for HTMLDocument's and vice versa. By unioning the two types, one could implement shared functionality.
I am fine with moving this stuff to a separate package LightHTML.jl also I can imagina that at some point in the future, both things could be merged into one parser package.

There are also other dedicated HTML parser packages out there, Gumbo.jl for example (might not be toi actively maintained right now) or other libraries that have not yet been wrapped in Julia.
Adding features doesn't seem like a very good reason to break the API, I really think that should be avoided if it isn't absolutely necessary.

@tkelman: Thanks for pointing out Gumbo.jl. I stumbled uppon it and it is nice but specifically designed for HTML5. My impression is that it is not yet as mature as libxml2 and also misses some features already present in libxml2.
Re API break: Please see my updated answer above. With two document types, no break of the existing API will happen.

I don't think it's necessary to add a deprecation warning about possible removal of the current API. Any HTML-specific functionality should be separate and under different names and not require existing users of the package to change their code for general-purpose xml.

I would say adding these features in LightXML makes sense as a lot of the API is shared between XML and HTML. But as @bkomboz noted, no API break is needed: parse_file can be made equivalent to parse_file(XMLDocument, ...), and the new HTML features be available under parse_file(HTMLDocument, ...). Other ways of passing this argument could also be used (symbol, boolean...).

Thanks for your feedback! Actually, I am not sure if my above proposed implementation of parse_file(XMLDocument, ...) and parse_file(HTMLDocument, ...) really makes sense as the first argument is currently either a string or a filename. One could wrap this in a special filetype and do some checks before trying to parse it but this also creates some overhead compared to the current implementation. The current implementation/interface is, just to be clear:
 parse_file(filename::AbstractString)
 parse_file(filename::AbstractString, encoding, options::Integer)
 parse_string(s::AbstractString)

I added:
 parse_xmlfile(filename::AbstractString)
 parse_xmlfile(filename::AbstractString, encoding, options::Integer)
 parse_xmlstring(s::AbstractString)
 parse_htmlfile(filename::AbstractString, encoding)
 parse_htmlfile(filename::AbstractString, encoding, options::Integer)
 parse_htmlstring(s::AbstractString, baseURL, encoding, options::Integer)

and kept the initial functions as wrapper pointing to the parse_xml[...] versions.
I understand your concern of not breaking the current API, @tkelman, therefore I would suggest to keep things as above without any deprecation warning in parse_file and parse_string. So everyone can use the package as before but there is additional HTML parsing functionality and additional glue code for consistency. What I don't like is something like:
 parse_file(filename::AbstractString)
 parse_file(filename::AbstractString, encoding, options::Integer)
 parse_string(s::AbstractString)
 parse_htmlfile(filename::AbstractString, encoding)
 parse_htmlfile(filename::AbstractString, encoding, options::Integer)
 parse_htmlstring(s::AbstractString, baseURL, encoding, options::Integer)

I don't think this is a clean and consistent interface and also indicates that HTML parsing somewhat a special case.
Concerning the return values of these functions I suggest two types, the already existing XMLDocument type and an HTMLDocument type which has to be implemented. Shared functionality can be based on the union for these types and specific functions can be set up for each type individually. I don't think there is any API break/change necessary for these things.
What do you think? If you agree with the current version (wrapper for compatibility + specific parse functions), I will go ahead and implement it fully. Otherwhise I suggest I create a new package LightHTML.jl which has all the HTML stuff in it.

HTML parsing is a special case. It's new untested functionality that has not been written yet, contributed by someone who's totally new to the community. I don't doubt that you're technically capable, but right now there's a non-negligible chance that you might write this html code then vanish without maintaining it going forward (as the original author of this package has done). So I think you should aim to add new functionality in a minimally disruptive way, get it into the package and tested first. Then long term we could maybe think about refactoring to make HTML functionality less of a second-class citizen. But it's going to have to start that way, since it doesn't exist yet. You'd have more freedom to design things however you like if you use a separate package, so it depends how much code will really be shared.

Ok, I understand your point. I cannot completely oversee how much overlap there will be. Some yes, but probably not too much. I therefore suggest that I create a separate package LightHTML.jl which focuses fully on HTML parsing with libxml2. I will try to design it in a way compatible with LightXML.jl so that users of this package can easily use it if wanted and we're able to join the two packages in the future if we want to and if it makes sense.
Thanks for your feedback! I'll close this issue now.

@bkomboz The pattern parse_file(XMLDocument, ...) and parse_file(HTMLDocument, ...) is quite common in Julia. It imposes no overhead nor any dispatch ambiguity. The other arguments can come after the type in their current order.


j2cl-java-util-TimeZone-annotation-processor required to supply firstDayOfWeek and minimalDaysOfWeek for each timezone

Closed by https://github.com/mP1/j2cl-locale/pull/57


More descriptive commands

The reader will be updated with more descriptive commands:

reader poll servicedirectory instead of reader servicedirectory
reader subscribe ...
reader watch ...

I may be overthinking here, but I am starting to think that having descriptive commands is very good but not in this ^ way, as the users aren't supposed to know how the "reading" is done, or better put they don't care.
So instead of having a poll this watch that I am thinking of just having a cnwan-reader read this or cnwan-reader observe that (or even just watch even if we're actually polling) and not confuse people about how the thing is done.
Maybe only actual pub/sub services like kafka would have it differently -- e.g. cnwan-reader subscribe kafka --topic this -- because that's the kind of terminology a pub/sub user would expect anyways.
Feedback much appreciated for this :)

I think that more descriptive commands make sense if the service registry supports multiple ways of interaction. In that case the user might have some preference on how the service registry is consumed. If there's only one way to interact with the service registry then yes, I agree there's no need to expose the low level details.


Maybe a BUG reporting : the returned idx in pointnet backbone implementation

Wonderful work! However,  I'm curious at this code in models/backbone/pointnet.py
        for i in range(len(self.SA_modules)):
            li_xyz, li_features, sample_idxs = self.SA_modules[i](l_xyz[i], l_features[i], numpoints[i], True)
            l_xyz.append(li_xyz)
            l_features.append(li_features)
            l_idxs.append(sample_idxs)
        if self.return_intermediate:
            return l_xyz[1:], l_features[1:], l_idxs[0]
        return l_xyz[-1], l_features[-1], l_idxs[0]

It seems that the idx is used to generate corresponding segmentation ground truth mask for the downsampled search point clouds. Is it correct that  simply return l_idxs[0] instead of merge all the results in l_idxs ?

Yes, it is correct.
In our implementation, we have two strategies to sample a point cloud: either FPS or simply taking the first N points (equivalent to the random sampling when point clouds are orderless).
        if self.use_fps:
            sample_idxs = pointnet2_utils.furthest_point_sample(xyz, self.npoint)
        else:
            sample_idxs = torch.arange(self.npoint).repeat(xyz.size(0), 1).int().cuda()

Besides,  when FPS is used, we only need to do FPS in the first layer due to the "farthest" nature.
Because of these, the remaining components of l_ids, which are always from 0~N, are useless.
Only l_idxs[0] contains useful information when FPS is applied.