Zarr 2.18 Breaks ParticleSet.execute(): ValueError: buffer source array is read-only

The latest release of Zarr is v2.18.0 and was released last week.
Using the parcels development environment, the following error is generated when performing particleset.execute().
Rather than include some other links pointing to possibly unrelated instances of this error, I'll leave the traceback below, and say that pinning the zarr dependency to zarr<2.18.0 in environment.yml will fix this.
Zarr v3.0.0 is soon in the works for this summer and maybe this behavior will change.
INFO: Output files are stored in [...]out.zarr.
  0%|                                                                                | 0/18000.0 [00:00<?, ?it/s]---------------------------------------------------------------------------
ValueError                                Traceback (most recent call last)
File ~/[...]:121
--> 121 pset.execute(
    122     kernels,
    123     runtime=timedelta(hours=5),
    124     dt=timedelta(minutes=5),
    125     output_file=output_file,
    126 )

File ~/repos/parcels/parcels/particleset.py:988, in ParticleSet.execute(self, pyfunc, pyfunc_inter, endtime, runtime, dt, output_file, verbose_progress, postIterationCallbacks, callbackdt, delete_cfiles)
    986         output_file.write_latest_locations(self, time)
    987     else:
--> 988         output_file.write(self, time_at_startofloop)
    989 if np.isfinite(outputdt):
    990     next_output += outputdt * np.sign(dt)

File ~/repos/parcels/parcels/particlefile.py:273, in ParticleFile.write(self, pset, time, indices)
    271         else:
    272             if max(obs) >= Z[varout].shape[1]:
--> 273                 self._extend_zarr_dims(Z[varout], store, dtype=self.vars_to_write[var], axis=1)
    274             Z[varout].vindex[ids, obs] = pset.particledata.getvardata(var, indices_to_write)
    276 pset.particledata.setvardata('obs_written', indices_to_write, obs+1)

File ~/repos/parcels/parcels/particlefile.py:184, in ParticleFile._extend_zarr_dims(self, Z, store, dtype, axis)
    182     obs = zarr.group(store=store, overwrite=False)["obs"]
    183     if len(obs) == Z.shape[1]:
--> 184         obs.append(np.arange(self.chunks[1])+obs[-1]+1)
    185 else:
    186     extra_trajs = self.maxids - Z.shape[0]

File ~/.conda/envs/parcels/lib/python3.12/site-packages/zarr/core.py:800, in Array.__getitem__(self, selection)
    798     result = self.get_orthogonal_selection(pure_selection, fields=fields)
    799 else:
--> 800     result = self.get_basic_selection(pure_selection, fields=fields)
    801 return result

File ~/.conda/envs/parcels/lib/python3.12/site-packages/zarr/core.py:926, in Array.get_basic_selection(self, selection, out, fields)
    924     return self._get_basic_selection_zd(selection=selection, out=out, fields=fields)
    925 else:
--> 926     return self._get_basic_selection_nd(selection=selection, out=out, fields=fields)

File ~/.conda/envs/parcels/lib/python3.12/site-packages/zarr/core.py:968, in Array._get_basic_selection_nd(self, selection, out, fields)
    962 def _get_basic_selection_nd(self, selection, out=None, fields=None):
    963     # implementation of basic selection for array with at least one dimension
    964
    965     # setup indexer
    966     indexer = BasicIndexer(selection, self)
--> 968     return self._get_selection(indexer=indexer, out=out, fields=fields)

File ~/.conda/envs/parcels/lib/python3.12/site-packages/zarr/core.py:1343, in Array._get_selection(self, indexer, out, fields)
   1340 if math.prod(out_shape) > 0:
   1341     # allow storage to get multiple items at once
   1342     lchunk_coords, lchunk_selection, lout_selection = zip(*indexer)
-> 1343     self._chunk_getitems(
   1344         lchunk_coords,
   1345         lchunk_selection,
   1346         out,
   1347         lout_selection,
   1348         drop_axes=indexer.drop_axes,
   1349         fields=fields,
   1350     )
   1351 if out.shape:
   1352     return out

File ~/.conda/envs/parcels/lib/python3.12/site-packages/zarr/core.py:2181, in Array._chunk_getitems(self, lchunk_coords, lchunk_selection, out, lout_selection, drop_axes, fields)
   2179 for ckey, chunk_select, out_select in zip(ckeys, lchunk_selection, lout_selection):
   2180     if ckey in cdatas:
-> 2181         self._process_chunk(
   2182             out,
   2183             cdatas[ckey],
   2184             chunk_select,
   2185             drop_axes,
   2186             out_is_ndarray,
   2187             fields,
   2188             out_select,
   2189             partial_read_decode=partial_read_decode,
   2190         )
   2191     else:
   2192         # check exception type
   2193         if self._fill_value is not None:

File ~/.conda/envs/parcels/lib/python3.12/site-packages/zarr/core.py:2049, in Array._process_chunk(self, out, cdata, chunk_selection, drop_axes, out_is_ndarray, fields, out_selection, partial_read_decode)
   2047     if isinstance(cdata, PartialReadBuffer):
   2048         cdata = cdata.read_full()
-> 2049     self._compressor.decode(cdata, dest)
   2050 else:
   2051     if isinstance(cdata, UncompressedPartialReadBufferV3):

File numcodecs/blosc.pyx:564, in numcodecs.blosc.Blosc.decode()

File numcodecs/blosc.pyx:365, in numcodecs.blosc.decompress()

File numcodecs/compat_ext.pyx:16, in numcodecs.compat_ext.Buffer.__cinit__()

ValueError: buffer source array is read-only

Thank you @erikvansebille! Do you want to keep this issue open until we see what happens with Zarr v3.0.0 or close it now?

Let's leave it open indeed, so we can revisit whether zarr v3.0.0 does work again

We did just release a 2.18.1 with a fix. Could you please check if that works better for you?
If not, could you please comment issue ( https://github.com/zarr-developers/zarr-python/issues/1883 )?

@jakirkham Thanks very much!
@erikvansebille The above ValueError appears to be solved by this fix to Zarr v2.18.1 however I'll note that two of the parameterized test_mpi_run tests are failing for me. I'm going to check to see if these fail for me using previous versions...

Fixed in #1567

Glad to help 🙂
Please feel free to raise issues with us as well should anything new crop up in the future 😉


Potential fix for #8

This is a potential fix for the regression #8.  I prototyped the fix as a change to the F# Compiler Service (which is somewhat easier to test as a component since you can script tests with F# Interactive).
I'm gradually building and running tests though it's challenging (it's a fix to intellisense, my VS CTP5 has expired, and I'm on a slowish connection so can't get VS CTP6).
Submitting here to get a validation of the build and to make it available for further testing.

@latkin @KevinRansom - I tried to run the "ideunit" tests but got lots and lots of errors, I'm sure unrelated to the fix (they were about failing casts related VS components).
I'm pretty sure I followed the instructions exactly as in DEVGUIDE.md and TESTGUIDE.md, I did this:
    msbuild src/fsharp-library-build.proj  /p:Configuration=Release
    msbuild src/fsharp-compiler-build.proj  /p:Configuration=Release
    msbuild src/fsharp-typeproviders-build.proj  /p:Configuration=Release
    msbuild src/fsharp-compiler-unittests-build.proj  /p:Configuration=Release
    msbuild src/fsharp-library-build.proj /p:TargetFramework=net20 /p:Configuration=Release
    msbuild src/fsharp-library-build.proj /p:TargetFramework=portable47 /p:Configuration=Release
    msbuild src/fsharp-library-build.proj /p:TargetFramework=portable7 /p:Configuration=Release
    msbuild src/fsharp-library-build.proj /p:TargetFramework=portable78 /p:Configuration=Release
    msbuild src/fsharp-library-build.proj /p:TargetFramework=portable259 /p:Configuration=Release
    msbuild src/fsharp-library-unittests-build.proj  /p:Configuration=Release
    msbuild src/fsharp-library-unittests-build.proj /p:TargetFramework=portable47 /p:Configuration=Release
    msbuild src/fsharp-library-unittests-build.proj /p:TargetFramework=portable7 /p:Configuration=Release
    msbuild src/fsharp-library-unittests-build.proj /p:TargetFramework=portable78 /p:Configuration=Release
    msbuild src/fsharp-library-unittests-build.proj /p:TargetFramework=portable259 /p:Configuration=Release
    src\update.cmd release -ngen
    tests\BuildTestTools.cmd release
    msbuild vsintegration\fsharp-vsintegration-build.proj /p:Configuration=Release
    msbuild vsintegration\fsharp-vsintegration-unittests-build.proj /p:Configuration=Release
    RunTests.cmd release ideunit

If you could either run the tests or double check the "ideunit" instructions I'd be very grateful.
thanks
don

I have trouble running unit tests against VS 12.0 on my box with 12.0 and 14.0, also lots of unhelpful casting errors.
Assuming you want to test this against VS 2015 SDK, you should to double-check that you are building with MSBuild 14.0, so that all of the 14.0 SDK assemblies are referenced.
In the meantime, I'll try running this myself soon.

ok, I see, thanks

I can confirm that the unit tests now pass :tada:

Great - I got them to pass on my machine too. Party party party.


Add missing state command to command list

Signed-off-by: Mrunal Patel<EMAIL_ADDRESS>

@crosbymichael PTAL

Isn't this on ctr state?

oh, nvm
LGTM


No response from the telegram bot

While installing BOS on ssh, i can not connect my telegram bot.
I have to give in the connection code , but there is no response from the (personel) bot after the /connect command is given.
I think something went wrong the first time i had to give in the connection code, and i have no idea how to 'reset' this..
Anybody with the same problem?
Grtz

There is a help telegram channel you can join

If you are using Umbrel there is a Telegram bot setup guide here: https://plebnet.wiki/wiki/Umbrel_-_Installing_BoS


Apply activity visiblity check before showing dialog

Description
LEARNER-1988
App gets crashed whenever we try to show dialog when the dialogs creator activity is no more in foreground. To avoid all these crashes we have applied the activity/fragment foreground check before showing dialog in this PR.

Codecov Report

Merging #989 into master will increase coverage by <.01%.
The diff coverage is 7.14%.

@@             Coverage Diff              @@
##             master     #989      +/-   ##
============================================
+ Coverage     16.77%   16.78%   +<.01%
  Complexity     1023     1023
============================================
  Files           477      477
  Lines         20471    20476       +5
  Branches       2358     2359       +1
============================================
+ Hits           3434     3436       +2
- Misses        16643    16646       +3
  Partials        394      394

Impacted Files
Coverage Δ
Complexity Δ

...mobile/view/CourseDiscussionResponsesFragment.java
0% <ø> (ø)
0 <0> (ø)
:arrow_down:

...java/org/edx/mobile/base/BaseFragmentActivity.java
30.28% <0%> (-0.3%)
24 <0> (ø)

...iew/adapters/CourseDiscussionResponsesAdapter.java
0% <0%> (ø)
0 <0> (ø)
:arrow_down:

...a/org/edx/mobile/view/EditUserProfileFragment.java
0% <0%> (ø)
0 <0> (ø)
:arrow_down:

.../mobile/view/CourseDiscussionCommentsFragment.java
0% <0%> (ø)
0 <0> (ø)
:arrow_down:

.../edx/mobile/view/DiscussionAddCommentFragment.java
0% <0%> (ø)
0 <0> (ø)
:arrow_down:

...edx/mobile/view/DiscussionAddResponseFragment.java
0% <0%> (ø)
0 <0> (ø)
:arrow_down:

...le/http/notifications/DialogErrorNotification.java
0% <0%> (ø)
0 <0> (ø)
:arrow_down:

...org/edx/mobile/view/DiscussionAddPostFragment.java
0% <0%> (ø)
0 <0> (ø)
:arrow_down:

...ava/org/edx/mobile/base/RoboAppCompatActivity.java
48.07% <66.66%> (+1.13%)
7 <0> (ø)
: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 bce141f...b4d7aef. Read the comment docs.

@miankhalid addressed the points you mentioned in review.


gnomeExtensions.taskwhisperer: init at v11

Motivation for this change
Add the TaskWhisperer GNOME Shell extension.
Things done

[ ] Tested using sandboxing (nix.useSandbox on NixOS, or option build-use-sandbox in nix.conf on non-NixOS)
Built on platform(s)

[x] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nox --run "nox-review wip"
[x] Tested execution of all binary files (usually in ./result/bin/)
[x] Fits CONTRIBUTING.md.

@jtojnar Thanks for the review. PR updated.

Thanks.


Tax Calculation for 2019

Could you please update calculation to also reflect 2019 tax calculation?
Thanks,
Sathish

if you could provide me numbers(here you can find current ones ) for 2019 I'll do it.
or you can do it yourself and make a nice pull request, it's open source ;)

I'll send a pull request for this as soon as I find the numbers.

@stevermeister created a PR for 2019.
Gathered information from below sites,
rulingThreshold
https://www.belastingdienst.nl/wps/wcm/connect/nl/wonen-of-werken-buiten-nederland/content/voorwaarden-30-procent-regeling
payrollTax (table 1), socialPercent (table 5 and 6), generalCredit (table 2a), labourCredit (table 2a)
https://download.belastingdienst.nl/belastingdienst/docs/nieuwsbrief-loonheffingen-2019-lh2091t94fd.pdf
generalCredit
https://www.belastingdienst.nl/wps/wcm/connect/bldcontentnl/belastingdienst/prive/inkomstenbelasting/heffingskortingen_boxen_tarieven/heffingskortingen/algemene_heffingskorting/tabel-algemene-heffingskorting-2019
labourCredit
https://www.belastingdienst.nl/wps/wcm/connect/bldcontentnl/belastingdienst/prive/inkomstenbelasting/heffingskortingen_boxen_tarieven/heffingskortingen/arbeidskorting/tabel-arbeidskorting-2019
Also used 2018 tax tariff as a reference to see how it's done,
https://download.belastingdienst.nl/belastingdienst/docs/nieuwsbrief_loonheffingen_2018_lh2091t84fd.pdf

Updated.
Only one small thing, I've already implemented service workers offline cache and now to have new version you need to deregister service worker that is not that convenient :(

We could have a link in the page to invalidate the service worker cache, something with the solution provided in the link.
https://github.com/GoogleChromeLabs/sw-precache/issues/340#issuecomment-349982432

I think it should be more clever way to do updates

ok, I've updated the sw version, now it should work :)

Thanks for the update. But why does the difference in 2018 vs 2019 not match up to example given here?
https://www.rijksoverheid.nl/onderwerpen/belastingplan/belastingwijzigingen-voor-ons-allemaal/tweeschijvenstelsel-inkomstenbelasting
Use the examples of €35k and €65k

could you please make a screenshot of example? I could not find it

In the example they give, Sarah earns €65k and should receive €1205 more in 2019 (vs 2018) and €1565 in 2021 (vs 2018).
In your excellent app, the difference is €675
It could also be that my Dutch has let me down (And then this is embarrassing) :)

Thanks for the update. But why does the difference in 2018 vs 2019 not match up to example given here?
https://www.rijksoverheid.nl/onderwerpen/belastingplan/belastingwijzigingen-voor-ons-allemaal/tweeschijvenstelsel-inkomstenbelasting
Use the examples of €35k and €65k

@joelbasson thanks for validating. I see what you mean. The information I provided is still based on four-bracket system whereas in rijksoverheid, in the example they used, is using two-bracket system to calculate for 2019. My understanding on two-bracket system is that it will be implemented gradually by 2021. I used the newsletter from belastingdienst (published on 21st Dec 2019) as reference for payroll tax and general credit tax which still has 4 brackets. Also the english version of the Tax Plan 2019 (still have to improve my Dutch) states that 2019 will have 4 brackets.
As I mentioned, I am not fluent in Dutch (yet). So it can be very well me who did some mistake (very unlikely) and the information in the rijksoverheid site is correct ;)

In their example https://www.rijksoverheid.nl/onderwerpen/belastingplan/belastingwijzigingen-voor-ons-allemaal/tweeschijvenstelsel-inkomstenbelasting they still have the 4 brackets for 2019, but the first three rates are adjusted to be more similar to each other (36.65%, 38.10% and 38.10%) which should result in a increase of take home pay of €1205 in 2019. Only in 2021 do they switch to 2 brackets which results in the increase to €1565

@joelbasson I would be happy to fix the bug (if it's there), but I need test data: trusted input and output. From what you are saying I only heard about difference between salaries

@stevermeister so tested with my Jan month payslip and I see a 3 euro difference (3 euro more than what it's been calculated here). I did the same with Dec 2018 payslip and it had 4 euro difference (with 2018 tax of course, 4 euro more than what's been calculated). So overall it seems to work, not accurate though but good enough.


Updates link on Testnet page to testnet challenges for 3.2

a quick link change here to link to the forums 3.2 challenges

can you confirm current represents the total points they've earned in 3.2a and the total represents all points they've earned in phase 3 (3.1 + 3.2a) ?


Sort by random

Being able to sort photos/videos randomly would be a great option.

Why?

Oh, i see. Then you can use the slideshow for that. It can play in random.


Following doc, Platform Views UiKitView not rendering on iOS, bunch of syntax errors

Steps to Reproduce

I'm having issues running the sample code for iOS in this doc: https://flutter.dev/docs/development/platform-integration/platform-views.html
There are errors thrown in FLNativeView.swift
Argument type 'Optional<_>' does not conform to expected type 'FlutterBinaryMessenger'
on
let factory = FLNativeViewFactory(messenger: registrar?.messenge)
    self.registrar(forPlugin: "<plugin-name>").register(
        factory,
        withId: "<platform-view-type>")

following the suggestions from Xcode, the errors were removed by making these changes
let factory = FLNativeViewFactory(messenger: registrar!.messenger())
    self.registrar(forPlugin: "<plugin-name>")?.register(
        factory,
        withId: "<platform-view-type>")

On my Flutter code, I only made changes for iOS. Here's my build method.
  @override
  Widget build(BuildContext context) {
    // This is used in the platform side to register the view.
    final String viewType = '<platform-view-type>';
    // Pass parameters to the platform side.
    final Map<String, dynamic> creationParams = <String, dynamic>{};
    switch (defaultTargetPlatform) {
      case TargetPlatform.android:
        // return widget on Android.
        print('TargetPlatform Android');
        return Scaffold(
            appBar: AppBar(
              title: Text(widget.title + ' Android'),
            ),
            body: Center(
              child: Text('Android'),
            ));
      case TargetPlatform.iOS:
        // return widget on iOS.
        print('TargetPlatform iOS');
        return Scaffold(
          appBar: AppBar(
            title: Text(widget.title + ' iOS'),
          ),
          body: UiKitView(
            viewType: viewType,
            layoutDirection: TextDirection.ltr,
            creationParams: creationParams,
            creationParamsCodec: const StandardMessageCodec(),
          ),
        );
      default:
        throw UnsupportedError("Unsupported platform view");
    }

Expected results:
I've yet to know what to expect from the sample in the docs, but I assume that it should render something from FLNativeViewFactory
Actual results:
Here's how the app looks when run.

UiKitView doesn't render anything. Any idea what might've gone wrong in the sample code that I tried? What's the expected output here? I tried running the app on both flutter stable and master channels, but I got same results.
I didn't made any major changes from the guide since I'd like to try the demo from the docs. Also, is there anything that should be added in creationParams? The HashMap is initialized in the doc, but doesn't seem to contain any value.

Logs

Launching lib/main.dart on iPhone Xs in debug mode...
Running Xcode build...
Xcode build done.                                           20.4s
Waiting for iPhone Xs to report its views...
Debug service listening on ws://<IP_ADDRESS>:58943/XTNyOwQuRxY=/ws
Syncing files to device iPhone Xs...
flutter: TargetPlatform iOS

Analyzing sampleplatformview...
No issues found! (ran in 3.2s)

[✓] Flutter (Channel stable, 1.22.0, on Mac OS X 10.15.7 19H2, locale en-PH)
    • Flutter version 1.22.0 at /Users/{USER}/Downloads/flutter
    • Framework revision d408d302e2 (7 days ago), 2020-09-29 11:49:17 -0700
    • Engine revision 5babba6c4d
    • Dart version 2.10.0

[✓] Android toolchain - develop for Android devices (Android SDK version 29.0.2)
    • Android SDK at /Users/{USER}/Library/Android/sdk
    • 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_242-release-1644-b3-6222593)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 12.0.1)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 12.0.1, Build version 12A7300
    • CocoaPods version 1.9.0

[✓] Android Studio (version 4.0)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin version 49.0.2
    • Dart plugin version 193.7547
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b3-6222593)

[✓] VS Code (version 1.49.0)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.12.2

[✓] Connected device (1 available)
    • iPhone Xs (mobile) • 82CF4677-9933-4698-AD5C-823D6E93F283 • ios • com.apple.CoreSimulator.SimRuntime.iOS-12-4 (simulator)

• No issues found!
Process finished with exit code 0

Hi @omatt
Thanks for filing the issue, It does look like documentation has some issues cause for ios, there are a bunch of xcode errors

logs
Launching lib/main.dart on iPhone 11 in debug mode...
Xcode build done.                                            7.7s
Failed to build iOS app
Error output from Xcode build:
↳
    ** BUILD FAILED **
Xcode's output:
↳
    /Users/tahatesser/AndroidStudioProjects/stable_flutter/ios/Runner/AppDelegate.swift:15:73: warning: forced cast from 'FlutterBinaryMessenger?' to 'FlutterBinaryMessenger' only unwraps optionals; did you mean to use '!'?
        let factory = FLNativeViewFactory(messenger: registrar?.messenger() as! FlutterBinaryMessenger)
                                                     ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
                                                                           !
    /Users/tahatesser/AndroidStudioProjects/stable_flutter/ios/Runner/FLNativeView.swift:12:22: error: 'weak' variable should have optional type 'FlutterBinaryMessenger?'
        private weak var messenger: FlutterBinaryMessenger
                         ^
                                                          ?
    /Users/tahatesser/AndroidStudioProjects/stable_flutter/ios/Runner/FLNativeView.swift:12:22: error: 'weak' variable should have optional type 'FlutterBinaryMessenger?'
        private weak var messenger: FlutterBinaryMessenger
                         ^
                                                          ?
    note: Using new build system
    note: Building targets in parallel
    note: Planning build
    note: Constructing build description
Could not build the application for the simulator.
Error launching application on iPhone 11.
Exited (sigterm)

flutter doctor -v
[✓] Flutter (Channel stable, 1.22.0, on Mac OS X 10.15.7 19H2, locale en-GB)
    • Flutter version 1.22.0 at /Users/tahatesser/Code/flutter_stable
    • Framework revision d408d302e2 (7 days ago), 2020-09-29 11:49:17 -0700
    • Engine revision 5babba6c4d
    • Dart version 2.10.0

[✓] Android toolchain - develop for Android devices (Android SDK version 30.0.2)
    • Android SDK at /Users/tahatesser/Code/sdk
    • Platform android-30, build-tools 30.0.2
    • ANDROID_HOME = /Users/tahatesser/Code/sdk
    • Java binary at: /Applications/Android
      Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build
      1.8.0_242-release-1644-b3-6222593)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 12.0.1)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 12.0.1, Build version 12A7300
    • CocoaPods version 1.10.0.rc.1

[✓] Android Studio (version 4.0)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin version 50.0.1
    • Dart plugin version 193.7547
    • Java version OpenJDK Runtime Environment (build
      1.8.0_242-release-1644-b3-6222593)

[✓] VS Code (version 1.49.3)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.15.0

[✓] Connected device (1 available)
    • RMX2001 (mobile) • EUYTFEUSQSRGDA6D • android-arm64 • Android 10 (API 29)

• No issues found!

@blasten could you take a look at this and the suggested changes to the documentation?


Merge LogStructured in SQLLog

This PR merges the functionality from LogStructured into SQLLog and removes LogStructured.
There are many reasons for this change but the most important one is the lack of a real separation between the two structs, making LogStructured a mere translation layer which adds no useful functionality (and actually acts as a limitation, forcing the implementation to be sub-optimal).
The PR is quite big, but each commit takes care of a single aspect of the transition, making it hopefully possible to perform a review.
Wherever made sense the PR also takes the opportunity to make some of the sub-optimal things better both in term of correctness and in terms of memory footprint/speed (for example avoiding some useless copy-paste or some useless memory allocation).
Some part of this PR (namely, the List/Get query) could be improved/made simpler, however this PR does not attempt to do that, so that it should be compatible with other outstanding PRs.
As a last note, the write path and the indexes do not change, so this PR is compatible with all existing versions.

Depends on #193

I rebased on top of master, this way we see the benchmark diff which does not include other changes.

Dropped dependency from #193


Add ColorPickerPreference

[x] I have verified there are no duplicate active or recent bugs, questions, or requests
[x] I have verified that I am using the latest version of Aesthetic (see the README)
[x] I have given my issue description title
[x] I have read over the documentation (before asking questions on how to do something).

It would be great to have preference which can be added to PreferenceScreens to simply let the user choose their prefered color and not only do this by code.

This is out of scope of this library.


11 vulnerabilities (9 moderate, 2 high)

when running npm i, it shows 11 vulnerabilities (9 moderate, 2 high)
running npm audit fix outputs added 7 packages, removed 23 packages, changed 12 packages, and audited 248 packages as well as the following npm audit report:
ansi-regex  >2.1.1 <5.0.1
Severity: moderate
 Inefficient Regular Expression Complexity in chalk/ansi-regex - https://github.com/advisories/GHSA-93q8-gq69-wqmw
No fix available
node_modules/eslint/node_modules/ansi-regex
node_modules/table/node_modules/ansi-regex
  strip-ansi  4.0.0 - 5.2.0
  Depends on vulnerable versions of ansi-regex
  node_modules/eslint/node_modules/strip-ansi
  node_modules/table/node_modules/strip-ansi
    eslint  4.5.0 - 7.15.0
    Depends on vulnerable versions of strip-ansi
    Depends on vulnerable versions of table
    node_modules/eslint
      ts-for-gir  *
      Depends on vulnerable versions of eslint
      node_modules/ts-for-gir
    string-width  2.1.0 - 4.1.0
    Depends on vulnerable versions of strip-ansi
    node_modules/table/node_modules/string-width
      table  4.0.2 - 5.4.6
      Depends on vulnerable versions of string-width
      node_modules/table

6 moderate severity vulnerabilities

Some issues need review, and may require choosing
a different dependency.

None of these packages are actually used at runtime. Most of these warnings are irrelevant except for ones that could cause typescript to compile vulnerable code.

a8e6237e4909d33bb1576d0433173607ec479e6e


Improve Timestamp conversions

I guess this may be a duplicate of https://github.com/googleapis/google-cloud-java/issues/2472
We barely use java.util.Date on modern apps, java.time is around long enough, and it would be awesome if Timestamp could natively support LocalDateTime,
having to do Timestamp.of(Date.from(ldt.atZone(ZoneId.systemDefault()).toInstant()))
Kinda wears out after a while.
Does not seem like a lot of effort, but could remove a lot of boiler plate code on client side

We can consider this after Java 7 support is dropped as java.time was introduced in Java 8. We would also likely need to do a major version bump for all clients to do this.


Feature/reset fix

Einfachere Logik für die resets, entfernen von unnötigen Variablen

@pitwegner No it's not lost. That's the whole reason for the change: backup-level is just updated when the level is manually set, independent of the simulation


Adapt scripts and lambda to include language

Currently added manually afterwards

Other metadata were missing. Lambda has been updated, should be tested with next ingestion.


Consider adjusting reward system

Consider counting in the number of burned coins and from that derive inflation:
example:
95+% burned = 100% of block reward distributed
0% burned = 5% of block reward distributed
for this, add indexer of total coins burned and total coins produced first

Alternative model: Makde rewards based on quadratic fees as suggested by Deerek69
reward = collect transaction fees over the last 100 blocks -> sum -> divide by numer of txs -> exponential


Next Steps

Problem
When you start a new project with "x", you force him into bluelibs with one admin one api structure. Ofcourse you don't generate it so the user can opt-out blueprint and use x:microservice.
Solution
We should make this smoother:

Project Name
Do you want an api? [Y/n]
Infrastructure: (blueprint | x-framework | plain http | plain graphql | x-framework queue consumer)
If plain help them choose (mongodb, sql) (we should do a dummy with MikroORM)
(if blueprint) Do you want an admin interface? [Y/n]
Do you want a frontend microservice that connects to your api?
Choose (none, nextjs, nextjs + storybook, x-ui, x-ui-admin)

All these elements need to be supported by a microservice writer so when x:microservice is invoked we can choose the same elements.
As we will improve our generated microservices we should take into consideration introducing automated tests, tests coverages. We should have a very friendly and descriptive README.
We should also take the time to create proper code generators for SQL as well.
Steps:

[ ] SQL Integration done Right
[ ] Blueprint SQL compatibility
[ ] SQL Security System Abstraction Layers
[ ] Microservices + READMEs
[ ] Project Inquirer & Writer
[ ] Move to new strategy (base folders, security in blueprint, db indexes, ability to ignore files, collections, etc)
[ ] Make Upload abstract and work on integration with S3 and provide a "Local" file writer.

My current concern is related to priorities, while SQL is a big part of the ecosystem, we have other things set in plan, we'll make our roadmap public in few months, and we want to develop a shop where you can get modules for your app like saas, invoicing, shop, etc.
Queston is what to choose, tighter sql integration first or shop, not sure we have resources to focus on both.

While both SQL and Shop are two nice things to have, I believe we should make order into:

Fixing all bugs
Code Quality
Setup Linting
Setup Code Quality Integration Following
Setup Test Coverage (min 90%) for all packages
X Shortcuts for branches, features, commits
Abstract Uploads with S3 Integration/Some node file manager that opens pathway to all (XCache style)
XAuthBundle (#184)
Event Logging Feature (included in LoggerBundle)
SQL Security Layer with MikroORM
SQL Boilerplates (Blueprint compatible)
Online Shop


developer: not able to debug Visual Studio Code with the option 'Launch VS Code'

I havea copy of the vscode master branch on my local windows machine, starting from last week, I started to have problem debugging VS Code with the option 'Launch VS Code', the main window is launched but the content is not rendering. i have no problem launching it with scripts\code.bat.
this is what I am getting:

from process explorer:

@weinand Hi Andre, Did you get a chance to look into the issue?

So it launches with .\scripts\code.bat from the terminal?
Is node on your system path? And not installed after vscode was launched?
I don't do a good job of surfacing errors that come from code.bat because usually we are launching chrome.exe which produces a lot of noisy not-real-error output.

see my comments inline.

So it launches with .\scripts\code.bat from the terminal?
[Alan]yes.
Is node on your system path? And not installed after vscode was launched?
[Alan]node is on the system path. version v10.15.3. It was installed a while back definitely way before vscode was launched.
I don't do a good job of surfacing errors that come from code.bat because usually we are launching chrome.exe which produces a lot of noisy not-real-error output.

I think I'll just have to put out a version of this that logs stderr from the program we launch.

@roblourens , Thanks, that will definitely help.

Please try this:

Download this zip, rename to .vsix, install it in vscode debugger-for-chrome-4.11.4.zip
Set "trace": true in your launch config
Try launching again, share the log from file in the debug console

Thanks!

@alanrenmsft, @roblourens - I was not able to reproduce this issue as of the following commit on windows machine.
commit 5a5ccf7ec13f01228d4d607983e3d2efbc81fb3b

I am also not able to reproduce this anymore. closing for now, thanks @roblourens .


Use rp-package instead of package for pipeline name in pipeline-generator tool

When use 'prepare pipelines' to create pipeline for new RP, prefix parameter + directory path's last segment (always package name) is used for pipeline name according to https://github.com/Azure/azure-sdk-tools/blob/4b13cb8063e2d9e872f77684e0debdfc218fe1eb/tools/pipeline-generator/Azure.Sdk.Tools.PipelineGenerator/SdkComponentScanner.cs#L52. But some RPs may have the same last segment of the path (e.g. resources/armsubscriptions vs subscriptions/armsubscriptions) or we may change the module path which result in pipeline creation failure with duplicated name. Is it possible to use rp-package instead of package for pipeline name in pipeline-generator tool to solve such problem?

Resolved by https://github.com/Azure/azure-sdk-tools/issues/2474#issuecomment-1004213313 with a recommended approach to name files like ci.resources.yml.


StackTrace printed if you quit mitmproxy and any flow is in intercept mode

Steps to reproduce the problem:

Launch mitmproxy
intercept any request
quit mitmproxy while the request still intercept

What is the expected behavior?
Did not expect the stacktrace ... earlier it used to be no such error
What went wrong?
Traceback (most recent call last):
  File "/Users/manish/Work/mitmproxy/venv/bin/mitmproxy", line 11, in <module>
    load_entry_point('mitmproxy', 'console_scripts', 'mitmproxy')()
  File "/Users/manish/Work/mitmproxy/mitmproxy/main.py", line 80, in mitmproxy
    m.run()
  File "/Users/manish/Work/mitmproxy/mitmproxy/console/master.py", line 495, in run
    self.shutdown()
  File "/Users/manish/Work/mitmproxy/mitmproxy/console/master.py", line 647, in shutdown
    self.state.killall(self)
  File "/Users/manish/Work/mitmproxy/mitmproxy/flow/state.py", line 269, in killall
    self.flows.kill_all(master)
  File "/Users/manish/Work/mitmproxy/mitmproxy/flow/state.py", line 182, in kill_all
    f.kill(master)
  File "/Users/manish/Work/mitmproxy/mitmproxy/models/flow.py", line 176, in kill
    master.error(self)
  File "/Users/manish/Work/mitmproxy/mitmproxy/controller.py", line 238, in wrapper
    ret = f(master, message)
  File "/Users/manish/Work/mitmproxy/mitmproxy/console/master.py", line 692, in error
    self.process_flow(f)
  File "/Users/manish/Work/mitmproxy/mitmproxy/console/master.py", line 681, in process_flow
    f.intercept(self)
  File "/Users/manish/Work/mitmproxy/mitmproxy/models/flow.py", line 186, in intercept
    self.reply.take()
  File "/Users/manish/Work/mitmproxy/mitmproxy/controller.py", line 314, in take
    raise exceptions.ControlException("Reply is {}, but expected it to be handled.".format(self.state))
mitmproxy.exceptions.ControlException: Reply is committed, but expected it to be handled.

Any other comments? What have you tried so far?
This may result in problems in saving flows to file? if any request is in intercept mode it might cause abort at that point .. only flows till that point gets saved.. i think, also, har dump may get problem due to this..

Mitmproxy Version: head, master
Operating System: mac

Thanks for the great bug report!


Possible to tell if azcopy is logged in?

Is there a way to tell, programmatically, if azcopy login or azcopy logout has been previously run on this machine? I'd like to know if it's going to use OAuth authentication or something else when I go to transfer a file.
I looked in the c:\users\<username>\.azcopy directory but there wasn't anything that looked like a token.

Hi @Hong-Revo, thanks for reaching out!
I'll discuss your suggestion with the team.

This would be a useful feature. I need to know if the consumer is logged into azcopy before attempting any operations, so that I can ask them to login.

Hi @ollieatkinson, could you please elaborate a bit on your use case? Do you need to know any other information? I.e. is a simple "yes" enough or do you need to know more about how the user is logged in?

Hi @ollieatkinson, could you please elaborate a bit on your use case? Do you need to know any other information? I.e. is a simple "yes" enough or do you need to know more about how the user is logged in?

A simple yes or no answer would suffice, I am including it as a step in a Makefile and it would be useful to give a descriptive error (or just ask them to login) if they are not currently signed into the tool.
As long as they are authenticated it's fine to move on.

I am using this workaround until support is added into the tool:
login:
	@azcopy list "https://myskyappdependencies.blob.core.windows.net/binaries${AZURE_SAS_TOKEN}" \
		| grep "ServiceCode=ResourceNotFound" > /dev/null \
		&& open https://microsoft.com/devicelogin \
		&& echo "Please login with the code:" \
		&& azcopy $@ \
		| sed -n "s/.*code \(.*\) to.*$$/\1/p" \
		&& echo "Logged in!" \
		|| echo "Logged in!"

On Linux we store the logged-in token in the SessionKey ring.  If you do keyctl show after logging in you'll see which keyname we use.  You can probably just grep the result of keyctl show, for that key-name string.
Note that this doesn't confirm that the token is still valid, but given their relatively long lifetimes, it's reasonably reliable.

Thanks @JohnRusk. We are currently using this for macOS - is the mechanism the same but using the Keychain?

Yes.

Thanks @JohnRusk
login:
	@security find-generic-password -a AzCopyOAuthTokenCache \
		&& open https://microsoft.com/devicelogin \
		&& azcopy $@ \
		|| echo "Logged in!"

Windows version
$isAzCopyLoggedIn = Test-Path "$env:USERPROFILE\.azcopy\accessToken.json" -PathType Leaf

This is available in the new version.
PS C:\Users\nakulkar\Desktop> .\azcopy --version azcopy version 10.12.2
PS C:\Users\nakulkar\Desktop> .\azcopy login status INFO: You have successfully refreshed your token. Your login session is still active


Baker messages in proto

Codecov Report

Merging #28 into master will decrease coverage by 1.93%.
The diff coverage is 90.19%.

@@            Coverage Diff             @@
##           master      #28      +/-   ##
==========================================
- Coverage   81.79%   79.85%   -1.94%
==========================================
  Files          87       90       +3
  Lines        1708     1832     +124
  Branches       83       79       -4
==========================================
+ Hits         1397     1463      +66
- Misses        311      369      +58

Impacted Files
Coverage Δ

...baker/petrinet/akka/PetriNetInstanceRecovery.scala
100% <ø> (ø)
:arrow_up:

...scala/com/ing/baker/serialization/Encryption.scala
100% <ø> (ø)

...cala/com/ing/baker/runtime/core/ProcessState.scala
45.28% <ø> (ø)

...ing/baker/petrinet/akka/AkkaObjectSerializer.scala
91.66% <ø> (+16.66%)
:arrow_up:

...la/com/ing/baker/petrinet/akka/PetriNetQuery.scala
100% <ø> (ø)
:arrow_up:

.../main/scala/com/ing/baker/runtime/core/Baker.scala
79.77% <ø> (ø)
:arrow_up:

.../com/ing/baker/runtime/petrinet/TaskProvider.scala
85.18% <0%> (ø)
:arrow_up:

...om/ing/baker/petrinet/akka/ScalaPBSerializer.scala
100% <100%> (ø)
:arrow_up:

...com/ing/baker/petrinet/akka/PetriNetInstance.scala
97.36% <100%> (-0.04%)
:arrow_down:

...et/runtime/persistence/ProtobufSerialization.scala
93.1% <100%> (-0.16%)
:arrow_down:

... and 9 more

Continue to review full report at Codecov.

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


add option to enable viewing library rules

As the number of library rules increases it may be useful to allow a user to enable these rules to be displayed in the plugin UI.

I can see this being useful in the plugin and maybe even for the -vv mode.
All render modes appear to use rutils.capability_rules which omits library rules. So adjusting there should be straight-forward.

I can see this being useful in the plugin and maybe even for the -vv mode.
All render modes appear to use rutils.capability_rules which omits library rules. So adjusting there should be straight-forward.

I played around with this idea and, in practice, opting to display library rules tends to make the output less readable. Additionally some samples have many, many library rule hits which can overwhelm the UI. For now, I'm closing this issue as triaged. We can revisit in the future if needed.


Update how-to-add-a-geolocation-column-to-a-list-programmatically-in-…

…sharepoint.md
This provides an example to add a Geolocation column with PowerShell. This is much easier than depending on Visual Studio. - ronalg
Category

[x] Content fix
[ ] New article
Related issues: fixes #X, partially #Y, mentioned in #Z

For the above list, an empty checkbox is [ ] as in [SPACE]. A checked checkbox is [x] with no space between the brackets. Use the PREVIEW tab at the top right to preview the rendering before submitting your issue.
(DELETE THIS PARAGRAPH AFTER READING)

What's in this Pull Request?

Please describe the changes in this PR. Sample description or details around bugs which are being fixed.
(DELETE THIS PARAGRAPH AFTER READING)

Guidance

Please update this PR information accordingly. We'll use this as part of our release notes in monthly communications.
Please target your PR to 'master' branch. Released documents are in live branch.
(DELETE THIS PARAGRAPH AFTER READING)

thx @RGrizzzz, appreciated.


Error: Message: element click intercepted

This sometimes happens, somehow I can try to prevent it.


Provide clearer guidance for usage of pipeline variables vs parameters

[Enter feedback here]
The first hand guidance for variables vs parameters does not mention parameters can be used to define "a variable in yaml with a default value" that can be overriden/changed on queue time.
While it's obvious in hindsight (the name is quite telling), it's not obvious for newcommers to ADO as evident by https://developercommunity2.visualstudio.com/t/overwrite-yaml-variables-from-the-ui/1149236?from=email&viewtype=all#T-ND1306270
Adding a quick note explicitly stating this use-case could go a long way.
Thanks :).

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

ID: dd7e0bd3-1f7d-d7b6-cc72-5ef63c31b46a
Version Independent ID: dae87abd-b73d-9120-bcdb-6097d4b40f2a
Content: Define variables - Azure Pipelines
Content Source: docs/pipelines/process/variables.md
Product: devops
Technology: devops-cicd-process
GitHub Login: @juliakm
Microsoft Alias: jukullam

Please include information from https://github.com/MicrosoftDocs/azure-devops-docs/issues/10169 in this request.


New suite and first test

This PR adds a new suite, parallel to tests / e2e with the purpouse of automating conformance tests in a cluster independent fashion.
Running these tests assume that we have a cluster available, with the sriov operator installed and at least one node with a sriov device available.

/lgtm

/hold cancel


quicksand and background

👷 Deploy Preview for idyllic-raindrop-a25235 processing.

Name
Link

🔨 Latest commit
1603e9034d6754eab66c66bd9d7e626cc7ebacc8

🔍 Latest deploy log
https://app.netlify.com/sites/idyllic-raindrop-a25235/deploys/636a2566c892d90008c7bf0d


[blog] Enable blog in website and add one for 2.1.0 release

Motivation
To provide a channel for users to catch up with latest information in Pulsar

rerun java tests

retest this please

Sally from ASF press has reviewed it. There is no legal issue from ASF to host a blog under *.apache.org.
Since there is no other review comments, I will go ahead to merge it.


torch_tree missing

Hi guys,
thanks for making the code available!
I'm trying to run the listops experiment, and am running into trouble in Step 4 of the instructions in the README, because Python can't find the module torch_tree. I can't find it on the Internet either. Is this a file that's missing in the repository?
The exact error message is below. Note that I have to run the script with -m because the syntax shown in the README won't work for me ("no module names 'utils'" because Python is looking for modules under the path of the script, not the current working directory).
Best,
Alexander.
koller@hilbert ~/D/w/latent-treelstm> python -m listops.ppo.train_ppo_model           (latent-treelstm)
Traceback (most recent call last):
  File "/anaconda3/envs/latent-treelstm/lib/python3.7/runpy.py", line 193, in _run_module_as_main
    "__main__", mod_spec)
  File "/anaconda3/envs/latent-treelstm/lib/python3.7/runpy.py", line 85, in _run_code
    exec(code, run_globals)
  File "/Users/koller/Documents/workspace/latent-treelstm/listops/ppo/train_ppo_model.py", line 17, in <module>
    from listops.models import PpoModel
  File "/Users/koller/Documents/workspace/latent-treelstm/listops/models/__init__.py", line 6, in <module>
    from listops.models.IdealTreeModel import IdealTreeModel
  File "/Users/koller/Documents/workspace/latent-treelstm/listops/models/IdealTreeModel.py", line 7, in <module>
    from modules import BinaryTreeLstmRnn
  File "/Users/koller/Documents/workspace/latent-treelstm/modules/__init__.py", line 9, in <module>
    from modules.BinaryTreeLstmRnn import BinaryTreeLstmRnn
  File "/Users/koller/Documents/workspace/latent-treelstm/modules/BinaryTreeLstmRnn.py", line 6, in <module>
    from torch_tree import BinaryTreeReducer
ModuleNotFoundError: No module named 'torch_tree'

Hi Alexander,
Thank you for catching this. I forgot to remove some imports. This pull request should fix it.
Regarding "no module names 'utils'" issue, it is quite strange. I can run all those scripts from the project's directory, maybe try modifying PYTHONPATH variable: "PYTHONPATH=. python listops/ppo/train_ppo_model.py"

Great, that seems to work. Thanks for the quick response!
The issue can be closed once the PR has been integrated.

Also, the PYTHONPATH tip also worked.


Auth::register without sending activation email

Hi,
I know you can do Auth::register([], true) to auto activate. Is there any way to do that without sending the activation successful email?

Can you please share your solution. I would also like not to send any emails.
Cheers.

Auth::register([], true) does not send the activation email. The activation email is sent as part of the Account component.


fix(client): Make Font Awesome Icons accessible to visually impaired campers

[x] I have read freeCodeCamp's contribution guidelines.
[x] My pull request has a descriptive title (not a vague title like Update index.md)
[x] My pull request targets the master branch of freeCodeCamp.
[x] None of my changes are plagiarized from another source without proper attribution.
[x] All the files I changed are in the same world language (for example: only English changes, or only Chinese changes, etc.)
[x] My changes do not use shortened URLs or affiliate links.

Closes #15739
Adds aria-label tags that explain the icons. Note that I also had to explicitly add aria-hidden="false", probably because of https://github.com/FortAwesome/react-fontawesome/issues/126 .
Interestingly, when using the ariaLabel prop notation, the DOM attribute would be rendered verbatim 🤷♂ . So I was explicit on it as well.
I also thought that the labels should represent the icon itself, and not the link/text they're related to (since the text would be read as well, resulting in duplication).

@ValeraS what would you like to see specifically? Titles instead of aria-label ?

@ValeraS changes applied, thank you for the detail 🙇 !!
I had mixed feelings regarding Link to {website} versus Link to our website. Let me know if you'd like me to change this.
Cheers and thanks for your time!

@xnt Thanks for your contribution.


Protocol error (Network.getResponseBody): No resource with given identifier found

Got this error when running:
shot-scraper https://lite.datasette.io/ --wait-for 'document.querySelector("h2")' --log-requests - | tee /tmp/datasette-lite.txt

Exception in callback SyncBase._sync.<locals>.callback(<Task finishe...ifier found')>) at /Users/simon/.local/pipx/venvs/shot-scraper/lib/python3.10/site-packages/playwright/_impl/_sync_base.py:104
handle: <Handle SyncBase._sync.<locals>.callback(<Task finishe...ifier found')>) at /Users/simon/.local/pipx/venvs/shot-scraper/lib/python3.10/site-packages/playwright/_impl/_sync_base.py:104>
Traceback (most recent call last):
  File "/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/asyncio/events.py", line 80, in _run
    self._context.run(self._callback, *self._args)
  File "/Users/simon/.local/pipx/venvs/shot-scraper/lib/python3.10/site-packages/playwright/_impl/_sync_base.py", line 105, in callback
    g_self.switch()
  File "/Users/simon/.local/pipx/venvs/shot-scraper/lib/python3.10/site-packages/playwright/_impl/_browser_context.py", line 122, in <lambda>
    lambda params: self._on_response(
  File "/Users/simon/.local/pipx/venvs/shot-scraper/lib/python3.10/site-packages/playwright/_impl/_browser_context.py", line 397, in _on_response
    page.emit(Page.Events.Response, response)
  File "/Users/simon/.local/pipx/venvs/shot-scraper/lib/python3.10/site-packages/pyee/_base.py", line 113, in emit
    handled = self._call_handlers(event, args, kwargs)
  File "/Users/simon/.local/pipx/venvs/shot-scraper/lib/python3.10/site-packages/pyee/_base.py", line 96, in _call_handlers
    self._emit_run(f, args, kwargs)
  File "/Users/simon/.local/pipx/venvs/shot-scraper/lib/python3.10/site-packages/pyee/_asyncio.py", line 42, in _emit_run
    self.emit('error', exc)
  File "/Users/simon/.local/pipx/venvs/shot-scraper/lib/python3.10/site-packages/pyee/_base.py", line 116, in emit
    self._emit_handle_potential_error(event, args[0] if args else None)
  File "/Users/simon/.local/pipx/venvs/shot-scraper/lib/python3.10/site-packages/pyee/_base.py", line 86, in _emit_handle_potential_error
    raise error
  File "/Users/simon/.local/pipx/venvs/shot-scraper/lib/python3.10/site-packages/pyee/_asyncio.py", line 40, in _emit_run
    coro = f(*args, **kwargs)
  File "/Users/simon/.local/pipx/venvs/shot-scraper/lib/python3.10/site-packages/playwright/_impl/_impl_to_api_mapping.py", line 88, in wrapper_func
    return handler(
  File "/Users/simon/.local/pipx/venvs/shot-scraper/lib/python3.10/site-packages/shot_scraper/cli.py", line 734, in on_response
    "size": len(response.body()),
  File "/Users/simon/.local/pipx/venvs/shot-scraper/lib/python3.10/site-packages/playwright/sync_api/_generated.py", line 574, in body
    self._sync("response.body", self._impl_obj.body())
  File "/Users/simon/.local/pipx/venvs/shot-scraper/lib/python3.10/site-packages/playwright/_impl/_sync_base.py", line 111, in _sync
    return task.result()
  File "/Users/simon/.local/pipx/venvs/shot-scraper/lib/python3.10/site-packages/playwright/_impl/_network.py", line 375, in body
    binary = await self._channel.send("body")
  File "/Users/simon/.local/pipx/venvs/shot-scraper/lib/python3.10/site-packages/playwright/_impl/_connection.py", line 39, in send
    return await self.inner_send(method, params, False)
  File "/Users/simon/.local/pipx/venvs/shot-scraper/lib/python3.10/site-packages/playwright/_impl/_connection.py", line 63, in inner_send
    result = next(iter(done)).result()
playwright._impl._api_types.Error: Protocol error (Network.getResponseBody): No resource with given identifier found

This was logged out a bunch of times, even though the command itself ran to completion.
I think this is likely caused by the new log requests feature from:

#88

Probably this code - I think request.body() is breaking: https://github.com/simonw/shot-scraper/blob/bf34a76cb0a1d2e34ae4e47440d14682f3942513/shot_scraper/cli.py#L728-L734

Added this debugging code:
diff --git a/shot_scraper/cli.py b/shot_scraper/cli.py
index d104725..f5636a8 100644
--- a/shot_scraper/cli.py
+++ b/shot_scraper/cli.py
@@ -726,6 +726,12 @@ def take_shot(
         if log_requests:

             def on_response(response):
+                try:
+                    body = response.body()
+                except Exception as ex:
+                    print(ex)
+                    print(response.url)
+                    return
                 log_requests.write(
                     json.dumps(
                         {

And got this:
Protocol error (Network.getResponseBody): No resource with given identifier found
https://cdn.jsdelivr.net/pyodide/v0.20.0/full/pyodide.js
Protocol error (Network.getResponseBody): No resource with given identifier found
https://cdn.jsdelivr.net/pyodide/v0.20.0/full/pyodide.asm.js
...

https://github.com/puppeteer/puppeteer/issues/2258#issuecomment-380647459 says "resources get dumped after page commits navigation" - so presumably what's happening here is that a page navigation has occurred which clears those resources from memory before my Python code gets a chance to call .body() on them.

My hunch is that it's a lot harder to reliably access the size of the resource than I had expected.

I'm going to try my best, but return "size": null if the resource body size could not be calculated.

This seems to do the right thing:
diff --git a/shot_scraper/cli.py b/shot_scraper/cli.py
index d104725..a19e878 100644
--- a/shot_scraper/cli.py
+++ b/shot_scraper/cli.py
@@ -726,12 +726,20 @@ def take_shot(
         if log_requests:

             def on_response(response):
+                try:
+                    body = response.body()
+                    size = len(body)
+                except Error as ex:
+                    if "Network.getResponseBody" in ex.message:
+                        size = None
+                    else:
+                        raise
                 log_requests.write(
                     json.dumps(
                         {
                             "method": response.request.method,
                             "url": response.url,
-                            "size": len(response.body()),
+                            "size": size,
                             "timing": response.request.timing,
                         }
                     )

Updated documentation: https://github.com/simonw/shot-scraper/blob/31bc975ff860b96c7533e98c270536b37f7d46e1/docs/screenshots.md#logging-all-requests


⚠ PrivateHD has degraded performance

In 6931315, PrivateHD ($PHD) experienced degraded performance:

HTTP code: 200
Response time: 1838 ms

Resolved: PrivateHD performance has improved in 7b5b48e.


text edits to figure 3

Hi Farnaz, I edited the text and captions for figure 3 to reflect the addition of the figure displaying the uncensored model on censored data. Please let me know if there's any changes I should make whenever it is convenient for you.

Codecov Report

Merging #741 (1a2c3db) into master (3112b94) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master     #741   +/-   ##
=======================================
  Coverage   84.38%   84.38%
=======================================
  Files          22       22
  Lines        1716     1716
=======================================
  Hits         1448     1448
  Misses        268      268

Flag
Coverage Δ

unittests
84.38% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

Continue to review full report at Codecov.

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

Codecov Report

Merging #741 (1a2c3db) into master (3112b94) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master     #741   +/-   ##
=======================================
  Coverage   84.38%   84.38%
=======================================
  Files          22       22
  Lines        1716     1716
=======================================
  Hits         1448     1448
  Misses        268      268

Flag
Coverage Δ

unittests
84.38% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

Continue to review full report at Codecov.

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


Dashboard rendering error on Dual Axis line chart

Make sure these boxes are checked before submitting your issue - thank you!

[x] I have checked the superset logs for python stacktraces and included it here as text if any
[x] I have reproduced the issue with at least the latest released version of superset
[x] I have checked the issue tracker for the same issue and I haven't found one similar

Superset version
{"GIT_SHA": "f905726c24b1d1f65a55b38592cb51c0f45deb15", "version": "0.23.0dev"}
Steps to reproduce
Create a dashboard with two dual axis line charts.
One of them renders fine, other slice and rest of the dashboard does not work.
Actual results

on Refresh (random slice has the error)

nvd3_vis.js:556 Uncaught TypeError: chart.xScale is not a function
    at Object.drawGraph [as generate] (nvd3_vis.js:556)
    at renderLoop (nv.d3.js:99)

@Mogball

nv.models.multiChart which is used for the Dual Axis Line Chart does not expose xScale in the latest release 1.8.6, although there is https://github.com/novus/nvd3/commit/2dd8024e8a782a06f9e4e7387e899619642adb2d.


Add step to fix Python version management tool issue

Some Python version management tools may not by default build libraries implemented in C, and CPython when installing a Python version. This can result in missing libraries in the Python install. This can be fixed by requesting the C, and CPython libraries to be explicitly built using --enable-framework flag.
Issue resolved by this Pull Request:
Resolves #2347
Checklist:

[ ] Commit Message Formatting: Commit titles and messages follow guidelines in the
conventional commits.
[ ] Changelog updated with breaking and/or notable changes for the next minor release.
[x] Documentation has been updated, if necessary.
[ ] Unit tests have been added, if necessary.
[ ] Functional tests have been added, if necessary.
[ ] E2E Workflow tests have been added, if necessary.

Thanks @bjhargrave for feedback. Updated and ready for review again.


Add types for query, remove type assertions and switch to inference where possible

Connects https://github.com/benvinegar/counterscale/issues/13
Sorry about the formatting changes 🤔  I think they're just prettier defaults. I'll try to revert them all to the previous style (unless you want to add a prettier config, then I can just apply that to the branch).
Notes on changes

I introduced an invariant fn for asserting on types returned from the cloudflare API

Made invariant checks a bit optimistic, as I thought looping over the whole dataset might get expensive 🤷♂
Invariants throw, but accessing malformed data will probably also throw later, so I figure that's ok.

Based types on documentation, haven't tested them.

Hopefully changes aren't controversial, but let me know.

@benvinegar These types should work, but the prettier changes make this un-reviewable 😅  will revert them tonight before marking this ready for review. These types can probably be more ergonomic than this, but it's better than any.

I spent a solid 30 minutes going over this, mostly because my TypeScript experience is pretty basic, and I had to read up on a bunch of concepts (like user-defined type guards).
I think this hardens the API-calling surface a ton, so +1 from me.
(Also should probably just put some Prettier rules in here already and add it to the pre-commit stuff.)

Also – thanks! You've made the first external contribution, which I'm super glad for, because this project isn't going anywhere with just me 😬

Invariants are nice, they're basically the same as as X but they add a runtime check. The one I included (and which I usually use) is a paired back version of tiny-invariant.

FYI I had to revert this PR in 6c7108 because #30. I didn't do any deep debugging but I agree with the reporters that the invariant code seems likely, and we should probably have more tests to cover these range of cases.
Let me know if that's something you wanna poke at – I'm happy to, but I also want to make room for folks.

First contributor, first to break everything. Casual 😅 . Agreed it's the invariants, though they should be throwing very clear errors. I wonder where those are getting swallowed 🤔 .
I see which invariant is broken, it's getVisitorCountByColumn.
I was working last night on improving that method to infer the return type based on the name of the column passed in, I'll update that branch to be a bit less aggressive in enforcing type correctness.


Support for multiple Security Groups

I understand why SecurityGroupId is a String rather than a CommaDelimitedList, but I'd like to launch my stack with several SGs attached.
If this isn't on the radar, I'll probably get around to a PR at some point, but just wanted to check here first.

We'd happily accept a PR for this.

Any updates to whether it is on the radar to add in this capability?

No specific plans @DoingItNow, would love to hear some more about your usecase though!

We currently have two SGs for our buildkite agent, one that allows SSH access and one that needs access to an RDS we are using. Ideally we would like the SGs to be split rather than putting the port 22 and port 3306 rules into one SG

I'll probably be PRing this in the near future; we've worked out a hack-y
solution internally, but I can add a bit more rigor to it and benefit all.
Should have it by next week.
On Thu, Aug 15, 2019 at 7:02 PM Jon C<EMAIL_ADDRESS>wrote:

We currently have two SGs for our buildkite agent, one that allows SSH
access and one that needs access to an RDS we are using. Ideally we would
like the SGs to be split rather than putting the port 22 and port 3306
rules into one SG
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/buildkite/elastic-ci-stack-for-aws/issues/562?email_source=notifications&email_token=AA3JDX5RSJVHPABRPNRNKBDQEYDCNA5CNFSM4HENQG5KYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOD4NOTMQ#issuecomment-521857458,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AA3JDXZDOWUXUGVZEEPTF6DQEYDCNANCNFSM4HENQG5A
.

Thanks @dannykansas! Looking forward to it!

Yeah I did some workarounds to get multiple SGs working but I be happy to see a proper solution merged in soon!

Any progress on this issue?


Support for GIF images

I have set up a gallery with sigal and would much appreciate if the .gif extension could be added to the list of formats recognized as an image.
It seams the toolchain already works quite well with gifs, if I just rename the files to .jpg they will get thumbnails etc, but it complains about not being able to read exif data.
Gifs can be quite useful for animated photobursts for example.
Thanks for a great gallery tool btw!

It should indeed be easy to add, I will try to look at this.

Any updates on the possibility of this?

Oh I am also looking for that :+1:


Error while starting Ubuntu VM after upgrading to 10.3-RELEASE

Hey bro,
After upgrading from 10.2-RELEASE to 10.3-RELEASE I get the following error
Starting servicedesk... (Takes 15 seconds for FreeBSD guests)
root@sauron:~ # Could not setup memory for VM
Error in initializing VM
Unable to setup memory (-1)
I'm running iohyve "v0.7.3 2016/01/08 Bear in a Datacenter Edition" from ports
Thanks a million

Can you also include the output of iohyve getall servicedesk?
Thanks!

Of course, sorry for the late reply
Getting servicedesk props...
autogrub     \n
os           debian
tap          tap0
con          nmdm1
boot         1
description  Tue
name         servicedesk
bargs        -A_-H_-P
loader       grub-bhyve
persist      1
install      no
size         120G
ram          8G
cpu          2

Nothing is standing out to me so far. Can you try a few things like destroying the VM resources first with something like iohyve destroy servicedesk(it won't delete data) and then make sure it's gone by running something like ls /dev/vmm.
After that, unload and load the vmm kernel module with something like kldunload vmm followed by kldload vmm.  Make sure it's back by running something like kldstat and checking for the vmm.ko module listed.
Once that is complete, try starting the guest again and report back.

Ok now this is really embarrassing.
I have already tried those commands and they didn't work, but as it turns out. This was a "Problem exists between keyboard and chair" kind of problem. I "forgot" to do the second "freebsd-update install" after rebooting the server :laughing:
I've had moments like this before, but having it public on GitHub is out of this world
Thanks man for the great efforts

It happens!
Thanks for taking the time to open the request at any rate.

It's the least I could do, thanks for the awesome job :)


[SPARK-46849][SQL] Run optimizer on CREATE TABLE column defaults

What changes were proposed in this pull request?
This PR updates Catalyst to run the optimizer over CREATE TABLE column default expressions.
Why are the changes needed?
This helps speed up future commands that assign default values within the table.
Does this PR introduce any user-facing change?
No.
How was this patch tested?
The functionality is covered by existing tests.
Was this patch authored or co-authored using generative AI tooling?
No

cc @cloud-fan

Please fix the two UT failures.
@dongjoon-hyun this is done.

Oh, could you take a look at the failures, @dtenedor ?
[info] *** 8 TESTS FAILED ***
[error] Failed: Total 10008, Failed 8, Errors 0, Passed 10000, Ignored 28
[error] Failed tests:
[error] 	org.apache.spark.sql.execution.command.v2.AlterTableDropPartitionSuite
[error] 	org.apache.spark.sql.DSV2SQLInsertTestSuite
[error] 	org.apache.spark.sql.connector.DataSourceV2SQLSuiteV1Filter
[error] 	org.apache.spark.sql.execution.command.v2.AlterTableAddPartitionSuite
[error] 	org.apache.spark.sql.execution.command.v2.AlterTableRenamePartitionSuite

Oh, could you take a look at the failures, @dtenedor ?

@dongjoon-hyun this is done.

Thank you!

cc @dongjoon-hyun @cloud-fan OK this looks stable now, all CI is passing.

Merged to master. Thank you, @dtenedor and @cloud-fan .


Refactoring

External worker control has been dropped and moved directly into the pool module
Rooster map has been replaced with an ETS table
prune/1 function to immediately shrink pool size back towards minimum

Looks good on a first glance. I'll have a more in-depth look tomorrow :)

Ok, I think this is good now :)
Btw, I just had the greatest idea =) Let's see what I think about it one hour from now, though ;)

Ok, I'll merge it then, and wait to see what becomes of your greatest idea ;)


Introduce Draft Mode

Feature Request
Description of Problem:
When building or revising a complex workflow, it is typically not in a useable / ready state for a while. In a traditional development cycle, developers will build and test code on their local devices before it gets deployed. In the WDK world, workflows are often live and edited as-is by users. This causes incomplete workflows to be deployed once they are saved and saving is the only way to validate the workflow contents at the moment.
Potential Solutions:
Introduce a boolean draft (or published or live) field in SWADL that will trigger the validation process when a watched workflow gets saved, but does not deploy the workflow. A workflow should also be able to be "undeployed" in the same manner, by inverting that boolean value.
Future Work:
A more elegant solution will involve workflow versioning by keeping a prior version of a workflow live while a revised version is in draft mode until it is ready to be published and replaces the live version with no downtime.

Implemented in #133 and released in https://github.com/finos/symphony-wdk/releases/tag/1.2.0


Check status of https://ci.chromium.org/p/golang/g/go-gotip/console.
What did you see happen?
Multiple failures involving timeouts on the darwin-amd64_13 builder:

http://ci.chromium.org/b/8759366472105663201
http://ci.chromium.org/b/8759455104674769409

What did you expect to see?
No timeouts: go test -short cmd/go takes <20s to run locally, so either the builders should be faster, or they should set a GO_TEST_TIMEOUT_SCALE that is long enough to reliably run the tests.
The only timeouts on the builders should be for (a) true deadlocks, and (b) tests that take a similarly long time (approaching 3 minutes) when run locally.

The "darwin-amd64-13" builder on the old dashboard doesn't have GO_TEST_TIMEOUT_SCALE in its configuration, so this isn't a case of that not being ported over. Perhaps our macOS amd64 13 builder configuration is less powerful? If we know by how much, it makes sense to set a corresponding GO_TEST_TIMEOUT_SCALE to compensate and avoid timeouts.
Another possibility is that we're running more tests on Mac builders in LUCI than we are on the old dashboard. For one, the old dashboard uses the macTestPolicy test policy, which attempts to skips some expensive portable tests.
CC @prattmic, @mknyszek.

We discussed and looked into this a bit.
This turns out not to be a consistent slowness: looking at https://ci.chromium.org/ui/p/golang/builders/ci/gotip-darwin-amd64_13 briefly shows many builds complete successfully in 15-20 min, with some taking 10 or 30 min, but the failures are taking an hour or longer and reaching timeout.
This builder at this time has two different providers. The two recent timeouts happened on the same darwin-amd64-13--ac2a2248-1530-... bot.

Update on this. I took a look at median, worst case, etc build times for the main repo builder by bot hostname and there definitely seems to be a lot of variance between different hosts: nearly 4x difference in median runtime between the fastest and slowest hosts.
My first thought was slow network on some hosts, so I eyeballed the difference between a run on the fastest and slowest hosts and found that the slowdown seems to impact pretty much all packages. e.g.,
cmd/go 139s -> 540s
cmd/compile/internal/types2 15s -> 55s (pretty sure there is no network here)
Even small packages, like
cmd/gofmt 0.064s -> 0.79s
Some are similar though
crypto/md5 0.021s -> 0.024s
So it seems unrelated to network.
That slowest machine is https://chromium-swarm.appspot.com/bot?id=darwin-amd64-13--ac2a2248-1530-4adb-bb91-ae854aa7c79c.golang.ca.macservice.goog. Interestingly, it seems to be much faster today. Previously x/tools was timing out, now it is ~15m. x/build is faster, etc.
This definitely still needs more investigation.

There seem to be timeouts on other LUCI darwin builders (other than 13). I put them all here for now. Feel free to split if this is really specific to 13. Thanks.

Filed https://github.com/golang/go/issues/65468 for TestVMInfo.

TestVMInfo failure is #62352. It seems that it matches this because it keeps retrying until it timed out, so test timed out is printed.

I changed the pattern to "default", so the other issue should take priority.


Add globalhub and metrics proxies

Fix problem seen in local development

/cc @zlayne

/test unit-tests-sonarcloud


Massmint not checking balance

a couple of weeks ago patricia was having issues mass-minting a large amount of NFTs
apparently she had enough funds on-chain bet she could not mint (transaction would fail), after checking her address she did not have funds on AHP after transferring funds to her wallet everything worked.
that's how I found that the massmint does not check the user balance at all
it should

take minting cost (itemDeposit and a base transaction fee) into consideration
ideally support auto-teleport

Originally posted by @hassnian in https://github.com/kodadot/nft-gallery/issues/11188#issuecomment-2502633458

Support auto-teleport in /massmint

1a. It should also take metadata deposit into consideration


Support for quiet mode on wget?

I am using the plugin to download a few large files and am wondering if you would add support for quiet mode to reduce the screen output.
Thanks,
-Tony

Sure! Code contributons on this topic would br welcome ;)
--
Mickael Istria
Eclipse IDE https://www.eclipse.org/downloads/eclipse-packages/
developer, at Red Hat Developers https://developers.redhat.com/ community
Elected Committer Representative at the Eclipse Foundation
https://www.eclipse.org/org/ board of directors

I've been looking at the code and wonder if modifying the interactiveMode in settings.xml would resolve this issue.  Thoughts?

I've been looking at the code and wonder if modifying the interactiveMode in settings.xml would resolve this issue. Thoughts?

it looks like this,but I tried to modify my settings profile and  it didn't work.Have you found some elegant ways to solve this problem?

@tonypiazza does the solution https://github.com/maven-download-plugin/maven-download-plugin/issues/101#issuecomment-452893423 solve your problem?

In my opinion, the interactive mode progress should be displayed by overwriting the last line, like Maven itself does when downloading artifacts. I don't know if that is possible from a MOJO though.

In my opinion, the interactive mode progress should be displayed by overwriting the last line, like Maven itself does when downloading artifacts. I don't know if that is possible from a MOJO though.

This would be very useful for security purpose when you have to pass a token in URL.

@tonypiazza --no-transfer-progress was added in 1.10.0
treating it as fixed
Thanks everybody involved :)


RecyclerView HEIGHT=WRAP_CONTENT not working (hasFixedSize=true, setNestedScrollingEnabled=false)

I'm trying to implement an expandable list using this library but I need that my RecyclerView working with WRAP_CONTENT (auto update of height attribute).
I used hasFixedSize = true and setNestedScrollingEnabled=false but the LinearLayoutManager doesn't update the RecyclerView size.
My layout hierarchy will be like this:
= FrameLayout
== LinearLayout (Vertical)
=== LinearLayout (Horizontal)
=== RecyclerView
== LinearLayout (Vertical)
There are a custom layout manager to make this work? Thanks

What are you getting as a result?

My RecyclerView get the initial height according with my groups, but after expand the groups, the height is not updated.

hi this is my layout

<android.support.v7.widget.RecyclerView
    android:id="@+id/commentList"
    android:layout_width="match_parent"
    android:layout_height="match_parent" />

<android.support.design.widget.FloatingActionButton
    android:id="@+id/addItem"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentBottom="true"
    android:layout_alignParentEnd="true"
    android:layout_alignParentRight="true"
    android:layout_gravity="right|end"
    android:layout_marginTop="@dimen/_16cdp" />

I have same problem and when I am expanded the list the height of list is not updated and the group for one second were hidden but when I read your issu I am understand that you should set your hieght of recyclerview to match_parent

and the parent of them is a relative layout

@mandybess please look into this issue

@moeintav We need to set it to wrap_content, because the RecyclerView should increase its size based on the size of its children.

please.. somebody fix this, this is a critical issue

i suggest you to put the recyclerview in any other layout (Relative layout is preferable). Then change recyclerview's height/width as match parent to that layout and set the parent layout's height/width as wrap content. it works for me

@margin555 you are 100% right just needs to be in another layout but that layout MUST be relative view.

@margin555 , thanks

@margin555 Amazing ! Many thanks.

@margin555 Thanks for the solution. It works great.

Put the RecyclerView into NestedScrollView like this
<android.support.v4.widget.NestedScrollView         android:layout_width="match_parent"         android:layout_height="match_parent">         <android.support.v7.widget.RecyclerView                 android:layout_width="match_parent"                 android:layout_height="wrap_content"/> </android.support.v4.widget.NestedScrollView>
and remove the android:nestedScrollingEnabled="false" from RecyclerVeiw

@moeintav We need to set the height parameter of RecyclerView to wrap_content, because the RecyclerView should increase its size based on the size of its children.

thank you dude

Switching to RelativeLayout worked when adding items to Recycler that initially had some items. But it did not work, when Recycler started out empty. Adapter's ItemCount and OnBind was getting called correctly; but the screen area was not getting redrawn. What finally worked for me, was to override OnLayout and force the RecyclerView to View.Layout. [Note: invoking View.Layout on the RelativeLayout was insufficient, it did not trickle down to the Recycler].

@margin555 you are 100% right just needs to be in another layout but that layout MUST be relative view. This works for me.

Putting recycler view inside in the relative layout works well, to acheive same wrap content effect.

for example i have screen in which multiple recycle views are present, in that i can not set recycle view height as match parent, but without match parent height recycle view seems only show my first element, in that case i wrap my recycle view inside a relative layout while put relative layout height as wrap content while putting recycle view height as match parent, below is sample example xml.
<androidx.core.widget.NestedScrollView
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:fillViewport="true">

       <RelativeLayout
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content">
                <androidx.recyclerview.widget.RecyclerView
                        android:layout_width="match_parent"
                        android:layout_height="match_parent"/>
        </RelativeLayout>

       <RelativeLayout
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content">
                <androidx.recyclerview.widget.RecyclerView
                        android:layout_width="match_parent"
                        android:layout_height="match_parent"/>
        </RelativeLayout>

       <RelativeLayout
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content">
                <androidx.recyclerview.widget.RecyclerView
                        android:layout_width="match_parent"
                        android:layout_height="match_parent"/>
         </RelativeLayout>

        <RelativeLayout
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content">
                <androidx.recyclerview.widget.RecyclerView
                        android:layout_width="match_parent"
                        android:layout_height="match_parent"/>
        </RelativeLayout>

       <Button
                   android:text="Sample"
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"/>

</NestedScrollView>

i suggest you to put the recyclerview in any other layout (Relative layout is preferable). Then change recyclerview's height/width as match parent to that layout and set the parent layout's height/width as wrap content. it works for me

Thanks a lot

i suggest you to put the recyclerview in any other layout (Relative layout is preferable). Then change recyclerview's height/width as match parent to that layout and set the parent layout's height/width as wrap content. it works for me

thanks a lot，it works for me. But why?

it works fine but any way to store list more efficient?

It didn't work with androidx's recycler view, any help please??

Just delete
Recyclerview.setHasFixedSize(true);
from your code if you are setting it to wrap the content

Hello there,
I'm having the same issue with recyclerView.
It seems that even on setting the height of of recyclerView as "wrap content", it achieves the max height as that of the layout.
I tried all the solutions above like putting the recyclerView in a different layout and setting the layout's height as wrap content.
I even tried adding a FrameLayout to the parent layout and embedding a new fragment inside it with recyclerView.
Nothing seems to work for me :(
Here's a screenshot how it looks:

Someone please help me out. I'm trying to find a solution to this for too long and couldn't find anywhere.

Hello there,
I'm having the same issue with recyclerView.
It seems that even on setting the height of of recyclerView as "wrap content", it achieves the max height as that of the layout.
I tried all the solutions above like putting the recyclerView in a different layout and setting the layout's height as wrap content.
I even tried adding a FrameLayout to the parent layout and embedding a new fragment inside it with recyclerView.
Nothing seems to work for me :(
Here's a screenshot how it looks:

Someone please help me out. I'm trying to find a solution to this for too long and couldn't find anywhere.

Just delete Recyclerview.setHasFixedSize(true); from your code if you are setting it to wrap the content

Thanks a ton, it worked for me.

I figured out that RecyclerView has a flaw with ConstraintLayout. Even if you set the top and bottom constraints for the recyclerView and set its height to "wrap_content", it goes out of screen when the items are filled up and the max height it acquired is that of screen height. A quick fix for this is to migrate the layout to RelativeLayout, define layout_above and layout_below attributes. Height can either be "wrap_content" or "match_parent", the recyclerView will constrain itself within the limits.

I figured out that RecyclerView has a flaw with ConstraintLayout. Even if you set the top and bottom constraints for the recyclerView and set its height to "wrap_content", it goes out of screen when the items are filled up and the max height it acquired is that of screen height. A quick fix for this is to migrate the layout to RelativeLayout, define layout_above and layout_below attributes. Height can either be "wrap_content" or "match_parent", the recyclerView will constrain itself within the limits.

If nothing from the above solutions work, this might still work. Try it

set the p

doesnt work , my entier screen still have space when deleting item on recycler on bottom sheet

just be a note here, Using constraint layout as parent did not worked for me but RelativeLayout did


docs: add subclassing notes for synchronizer

Give developers some advice/context about using the synchronizer when building their own applications.

@AnthonyMadia can u take a look on this topic?

Sure. I think it's a bit confusing when new developers encounter the synchronizer. I think a simplistic way to communicate about it is that it takes the events that are emitted from your attester smart contract and create off-chain state.
Or, more simply, the synchronizer takes on-chain state and creates off-chain state.

Can I have a note on what is meant by "subclassing" in this context? @vimwitch


[AIRFLOW-1602] LoggingMixin in DAG class

Dear Airflow maintainers,
As @ashb mentioned. Within the DAG class we want to use the LoggingMixer for more transparent logger instead of creating a new anonymous logger.
Please accept this PR. I understand that it will not be reviewed until I have checked off all the steps below!
JIRA

[x] My PR addresses the following Airflow JIRA issues and references them in the PR title. For example, "[AIRFLOW-XXX] My Airflow PR"

https://issues.apache.org/jira/browse/AIRFLOW-XXX

Description

[x] Here are some details about my PR, including screenshots of any UI changes:

Tests

[x] My PR adds the following unit tests OR does not need testing for this extremely good reason:

Commits

[x] My commits all reference JIRA issues in their subject lines, and I have squashed multiple commits if they address the same issue. In addition, my commits follow the guidelines from "How to write a good git commit message":

Subject is separated from body by a blank line
Subject is limited to 50 characters
Subject does not end with a period
Subject uses the imperative mood ("add", not "adding")
Body wraps at 72 characters
Body explains "what" and "why", not "how"

Codecov Report

Merging #2602 into master will decrease coverage by 0.01%.
The diff coverage is 66.66%.

@@            Coverage Diff            @@
##           master   #2602      +/-   ##
=========================================
- Coverage   70.71%   70.7%   -0.02%
=========================================
  Files         150     150
  Lines       11566   11564       -2
=========================================
- Hits         8179    8176       -3
- Misses       3387    3388       +1

Impacted Files
Coverage Δ

airflow/models.py
86.97% <66.66%> (-0.02%)
:arrow_down:

airflow/executors/dask_executor.py
79.06% <0%> (-2.33%)
: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 7ece956...4d4d349. Read the comment docs.

LGTM, given the follow up PRs


hexx v0.10.1 introduces breaking change for pre-rust v1.71.0

A change introduced by PR #114 will prevent hexx from compiling with rust versions prior to v1.71.0
This is because the implementation for impl<T> From <(T, T)> for [T; 2] was only stabilized in rust v1.71.0
This is the code block that causes this issue (src/hex/convert.rs):
impl From<(f32, f32)> for Hex {
    #[inline]
    fn from(v: (f32, f32)) -> Self {
        Self::round(v.into())
    }
}

Perhaps update/mention the MSRV for the crate or rollback the change for backwards compatibility?

Indeed that may be a problem, I don't know what would be the best way to handle that, maybe I should use the msrv attribute in the manifest.
@alice-i-cecile You are more experienced in OSS than I am, what would be your preferred way of handling this kind of problem ?

My preference here is to include the MSRV in our Cargo.toml.
If you want to be particularly by-the-books, you'd yank any published releases with this undocumented semver-violating change, and bump the major version when your MSRV is updated.

0.10.1 yanked !


How to get host IP and port from the discovery example?

I'm making a server client app and the clients need to get the servers IP.
I'm following the discovery example in Readme.md, but I tried many methods in event like event.info.host address etc.
I just want port and IP of an advertising server for which I have set a listener service as found in the discovery example.

We also resolve the host and ip for accessing gRPC services, you simply have to look at the ServiceInfo methods:
ServiceInfo serviceInfo = event.getInfo();
String name = serviceInfo.getName(); // Filtered service name
String host = serviceInfo.getHostAddresses()[0];
int port = serviceInfo.getPort();

Unfortunately the impl suggested above just doesn't work (in my specific "test case" all the host addresses arrays are empty and getPort() just returns 0 - which is wrong/useless).
I am using JDK1.7 and the jmdns HEAD version I downloaded here on 19.6.2018. My PC runs Win10Pro (64-bit). On the other  end I am using an ESP8266  based device (a WeMOS D2 ProMini) on which I am running the the standard Arduino "mDNS-SD example" code:
/*
  ESP8266 mDNS-SD responder and query sample

  This is an example of announcing and finding services.

  Instructions:
  - Update WiFi SSID and password as necessary.
  - Flash the sketch to two ESP8266 boards
  - The last one powered on should now find the other.
 */

#include <ESP8266WiFi.h>
#include <ESP8266mDNS.h>

const char* ssid     = "someSSID";
const char* password = "password";
char hostString[16] = {0};

void setup() {
  Serial.begin(115200);
  delay(100);
  Serial.println("\r\nsetup()");

  sprintf(hostString, "ESP_%06X", ESP.getChipId());
  Serial.print("Hostname: ");
  Serial.println(hostString);
  WiFi.hostname(hostString);

  WiFi.begin(ssid, password);
  while (WiFi.status() != WL_CONNECTED) {
    delay(250);
    Serial.print(".");
  }
  Serial.println("");
  Serial.print("Connected to ");
  Serial.println(ssid);
  Serial.print("IP address: ");
  Serial.println(WiFi.localIP());

 if (!MDNS.begin(hostString)) {
    Serial.println("Error setting up MDNS responder!");
  }
  Serial.println("mDNS responder started");
  MDNS.addService("espout", "tcp", 8080); // Announce esp tcp service on port 8080
}

void loop() {
  // put your main code here, to run repeatedly:
 Serial.println("Sending mDNS query");
  int n = MDNS.queryService("espin", "tcp"); // Send out query for esp tcp services
  Serial.println("mDNS query done");

  // NOTE: the ESP8226 seems to cache certain data, so the responses are sometimes
  // inconsistent!
  if (n == 0) {
    Serial.println("no services found");
  } else {
    Serial.print(n);
    Serial.println(" service(s) found");
    for (int i = 0; i < n; ++i) {
      // Print details for each service found
      Serial.print(i + 1);
      Serial.print(": ");
      Serial.print(MDNS.hostname(i));  // impl seems to be crap.. returns wrong hostnames sometimes..
      Serial.print(" (");
      Serial.print(MDNS.IP(i));
      Serial.print(":");
      Serial.print(MDNS.port(i));
      Serial.println(")");
    }
  }
  Serial.println();
  delay(10000);
  Serial.println("loop() next");
}

On the Java side I am using the two jmdns examples given here in the README.md  (just combined into one). The advertised services are "properly detected on both ends but on the Java side I am not getting the the IP/port infos - at least not with the original jmdns version.
For my immediate needs I just implemented a quick&dirty hack by adding the below code in JmDNSImpl.updateRecord:
...
            if ((event.getInfo() == null) || !event.getInfo().hasData()) {
                // We do not care about the subtype because the info is only used if complete and the subtype will then be included.
                ServiceInfo info = this.getServiceInfoFromCache(event.getType(), event.getName(), "", false);

                // >> start HACK: for some reason the original impl does NOT propagate the IP address of the ESP8266 (nor the port)
                InetAddress a= rec.getRecordSource();
                ServiceInfoImpl infoImpl= ServiceInfoImpl.class.cast(info);
                if (Inet4Address.class.isInstance(a)) {
                    infoImpl.addAddress((Inet4Address)a);
                } else if (Inet6Address.class.isInstance(a)) {
                    infoImpl.addAddress((Inet6Address)a);
                }
                // << end HACK
                if (info.hasData()) {
                    event = new ServiceEventImpl(this, event.getType(), event.getName(), info);
                }
...

This now at least gives me the IP (the port is still missing but I an live with that for now). But something seems to be wrong with the original jmdns impl that causes it to NOT propagate the IP/port info (at least in certain scenarios).
I hope this helps to track down the issue..

I am also only a user of the jmdns library but it works without problems for us if we attach our application code to the serviceResolved method of a ServiceListener:
@Override
        public void serviceResolved(ServiceEvent event) {
            final ServiceInfo serviceInfo = event.getInfo();
            final String deviceName = serviceInfo.getName();

            log.info("Device resolved: {}", serviceInfo);

            for (DeviceListener listener : deviceListenerList) {
                listener.deviceAdded(deviceName, serviceInfo.getHostAddresses()[0],
                        serviceInfo.getPort()
                );
            }
        }

Not sure if this is your problem, but someone more familiar with the inner workings should properly answer here :-) I just see also from the documentation of the Service Listener, that the serviceAdded notification is not supposed to have all the info yet:
A service has been added.

     * Note:This event is only the service added event. The service info associated with this event does not include resolution information.

     * To get the full resolved information you need to listen to {@link #serviceResolved(ServiceEvent)} or call {@link JmDNS#getServiceInfo(String, String, long)}

I guess you are right about the "serviceResolved" API and I don't remember why I started using "serviceAdded" instead.. when retesting with the original lib version I just noticed one "problem" and I might just have mixed things up while trying to find a fix:
When my GUI (which uses jmdns) is started after the device (which uses ESP8266mDNS) then the GUI immediately detects the device (i.e. the respective service). However, if the device is started after the GUI, then it takes more than 40minutes before the GUI detects the "new" device. I guess it's some kind of caching issue and I am still looking for some API that would allow me to manually trigger a refresh.

Yes, the refreshing is really unintuitive to do with this library, you have to reconstruct the jmdns object if I remember correctly. For our use case, we actually ended up doing our own implementation of discovery where we re-query the network with a fixed interval. (will publish that later this year)


Revert "Add delay between writing file and modifying it"

Reverts flutter/flutter#6968
Adding a sleep statement to the tests isn't reasonable. We need the tests to run as fast as possible.
cc @lukechurch

LGTM, the fix for using touch is taking a bit longer than expected.

Let me know if there's anything I can do to help — I don't mean to dump all our Mac woes on you!

Obsoleted by https://github.com/flutter/flutter/pull/7117


Implement prepend instrumentation for Excon

As part of implementing prepend auto-instrumentation for all libraries instrumented, introduce a prepend version of auto-instrumenting for the Excon gem
Feature Description
The agent instruments many libraries using the method chaining (a.k.a. method aliasing) approach to monkey-patching.  This is a form of monkey-patching was deprecated with Ruby's introduction of :prepend as a means to insert additional functionality into a module's method lookup mechanism ahead of the library's original method implementation.
Prepend strategy will be the default choice in 7.0+.  However, the prepend strategy may be reverted back to method chaining by adding the following configuration flag:
instrumentation:
  excon: chain

All configuration options are described in-depth here:
If you find a conflict between Prepend and another gem in your application's Gemfile, we would highly appreciate opening an Issue or commenting on this one specific to this gem so that we are aware and potentially work with gem authors to eliminate conflicts.
Additional Context
We are switching to prepending by default and deprecating method-chaining as this is the most acceptable and dependable way to extend libraries with auto-instrumentation support outside of using the subscriber/notification hooks pattern that some gem authors already provide for observability purposes.  However, this change is potentially a breaking change for some depending on other gems involved in an application's Gemfile makeup.  To facilitate switching over to 7.0 release, the method chaining approach is only deprecated (not removed) and a configuration switch is provided to revert back to method-chaining for customers that are affected by prepend auto-instrumentation strategies.

After additional research, we do not need to implement prepend for excon. Excon instrumentation uses the excon middlewares rather than method chaining, so this is not something that needs to be converted to prepend. We do have code that utilizes method chaining on very old versions of Excon we will not longer be supporting. This outdated instrumentation will be marked as deprecated and removed at a time in the future.