Cannot generate code, build_runner giving strange error

I am having an issue with flutter build_runner. It's failing to generate files when running watch or build.
t.dart
import 'package:json_annotation/json_annotation.dart';

part 't.g.dart';

@JsonSerializable()
class Test{
  final String test;
  Test(this.test);
}

pubspec.yaml
name: flutterappddd
description: A new Flutter application.

# The following line prevents the package from being accidentally published to
# pub.dev using `pub publish`. This is preferred for private packages.
publish_to: 'none' # Remove this line if you wish to publish to pub.dev

# The following defines the version and build number for your application.
# A version number is three numbers separated by dots, like 1.2.43
# followed by an optional build number separated by a +.
# Both the version and the builder number may be overridden in flutter
# build by specifying --build-name and --build-number, respectively.
# In Android, build-name is used as versionName while build-number used as versionCode.
# Read more about Android versioning at https://developer.android.com/studio/publish/versioning
# In iOS, build-name is used as CFBundleShortVersionString while build-number used as CFBundleVersion.
# Read more about iOS versioning at
# https://developer.apple.com/library/archive/documentation/General/Reference/InfoPlistKeyReference/Articles/CoreFoundationKeys.html
version: 1.0.0+1

environment:
  sdk: ">=2.7.0 <3.0.0"

dependencies:
  flutter:
    sdk: flutter
  json_annotation: ^3.0.1
  cupertino_icons: ^0.1.3

dev_dependencies:
  flutter_test:
    sdk: flutter
  build_runner:
  json_serializable: ^3.3.0

# For information on the generic Dart part of this file, see the
# following page: https://dart.dev/tools/pub/pubspec

# The following section is specific to Flutter.
flutter:

  # The following line ensures that the Material Icons font is
  # included with your application, so that you can use the icons in
  # the material Icons class.
  uses-material-design: true

  # To add assets to your application, add an assets section, like this:
  # assets:
  #   - images/a_dot_burr.jpeg
  #   - images/a_dot_ham.jpeg

  # An image asset can refer to one or more resolution-specific "variants", see
  # https://flutter.dev/assets-and-images/#resolution-aware.

  # For details regarding adding assets from package dependencies, see
  # https://flutter.dev/assets-and-images/#from-packages

  # To add custom fonts to your application, add a fonts section here,
  # in this "flutter" section. Each entry in this list should have a
  # "family" key with the font family name, and a "fonts" key with a
  # list giving the asset and other descriptors for the font. For
  # example:
  # fonts:
  #   - family: Schyler
  #     fonts:
  #       - asset: fonts/Schyler-Regular.ttf
  #       - asset: fonts/Schyler-Italic.ttf
  #         style: italic
  #   - family: Trajan Pro
  #     fonts:
  #       - asset: fonts/TrajanPro.ttf
  #       - asset: fonts/TrajanPro_Bold.ttf
  #         weight: 700
  #
  # For details regarding fonts from package dependencies,
  # see https://flutter.dev/custom-fonts/#from-packages

Steps to Reproduce

Create a new flutter project
Add json_serializable and build_runner to dev dependencies.
Following instructions of json_serializable, create a class with json annotations
Run flutter pub run build_runner watch --delete-conflicting-outputs

Logs

[INFO] Build:Running build...
[INFO] build_resolvers:Generating SDK summary...
[SEVERE] json_serializable:json_serializable on lib/main.dart:

Bad state: Unexpected diagnostics:
C:\flutter\bin\cache\dart-sdk\lib\internal\internal.dart:172:16 - This requires the 'non-nullable' language feature to be enabled.
package:analyzer/src/summary/summary_file_builder.dart 145:7                                  _Builder._parse
package:analyzer/src/summary/summary_file_builder.dart 108:36                                 _Builder._addLibrary
package:analyzer/src/summary/summary_file_builder.dart 117:9                                  _Builder._addLibrary
package:analyzer/src/summary/summary_file_builder.dart 117:9                                  _Builder._addLibrary
dart:collection                                                                               SetMixin.forEach
package:analyzer/src/summary/summary_file_builder.dart 86:20                                  _Builder.build
package:analyzer/src/summary/summary_file_builder.dart 66:58                                  SummaryBuilder.build
package:build_resolvers/src/resolver.dart 344:8                                               _buildSdkSummary
package:build_resolvers/src/resolver.dart 295:36                                              _defaultSdkSummaryGenerator
package:build_resolvers/src/resolver.dart 232:37                                              AnalyzerResolvers._ensureInitialized.<fn>
package:build_resolvers/src/resolver.dart                                                     AnalyzerResolvers._ensureInitialized.<fn>
package:build_resolvers/src/resolver.dart 234:6                                               AnalyzerResolvers._ensureInitialized
package:build_resolvers/src/resolver.dart 239:11                                              AnalyzerResolvers.get
package:build_runner_core/src/performance_tracking/performance_tracking_resolvers.dart 19:58  PerformanceTrackingResolvers.get.<fn>
package:build_runner_core/src/generate/performance_tracker.dart 302:15                        _NoOpBuilderActionTracker.trackStage
package:build_runner_core/src/performance_tracking/performance_tracking_resolvers.dart 19:16  PerformanceTrackingResolvers.get
package:build                                                                                BuildStepImpl.resolver
package:source_gen/src/builder.dart 68:32                                                     _Builder.build
package:build                                                                                runBuilder
package:build_runner_core/src/generate/build_impl.dart 486:19                                 _SingleBuild._runForInput.<fn>.<fn>.<fn>
package:build_runner_core/src/generate/performance_tracker.dart 302:15                        _NoOpBuilderActionTracker.trackStage
package:build_runner_core/src/generate/build_impl.dart 484:23                                 _SingleBuild._runForInput.<fn>.<fn>
package:build_runner_core/src/generate/build_impl.dart                                        _SingleBuild._runForInput.<fn>.<fn>
package:timing/src/timing.dart 222:44                                                         NoOpTimeTracker.track
package:build_runner_core/src/generate/build_impl.dart 441:22                                 _SingleBuild._runForInput.<fn>
package:pool/pool.dart 127:28                                                                 Pool.withResource
package:build_runner_core/src/generate/build_impl.dart 437:17                                 _SingleBuild._runForInput
package:build_runner_core/src/generate/build_impl.dart 375:38                                 _SingleBuild._runBuilder.<fn>
dart:async                                                                                Future.wait
package:build_runner_core/src/generate/build_impl.dart 374:36                                 _SingleBuild._runBuilder
package:build_runner_core/src/generate/build_impl.dart 320:20                                 _SingleBuild._runPhases.<fn>.<fn>
package:build_runner_core/src/generate/build_impl.dart                                        _SingleBuild._runPhases.<fn>.<fn>
package:build_runner_core/src/generate/performance_tracker.dart 184:15                        _NoOpBuildPerformanceTracker.trackBuildPhase
package:build_runner_core/src/generate/build_impl.dart 316:47                                 _SingleBuild._runPhases.<fn>
package:timing/src/timing.dart 222:44                                                         NoOpTimeTracker.track
package:build_runner_core/src/generate/build_impl.dart 310:32                                 _SingleBuild._runPhases
package:build_runner_core/src/logging/logging.dart 25:30                                      logTimedAsync
package:build_runner_core/src/generate/build_impl.dart 267:26                                 _SingleBuild._safeBuild.<fn>
dart:async                                                                                runZoned
package:build_runner_core/src/generate/build_impl.dart 262:5                                  _SingleBuild._safeBuild
package:build_runner_core/src/generate/build_impl.dart 209:24                                 _SingleBuild.run
package:build_runner_core/src/generate/build_impl.dart 94:56                                  BuildImpl.run
dart:async                                                                                _completeOnAsyncReturn
package:build_runner_core/src/generate/options.dart                                           BuildOptions.create
dart:async                                                                                _completeOnAsyncReturn
package:build_runner_core/src/package_graph/target_graph.dart                                 TargetGraph.forPackageGraph
dart:async                                                                                _completeOnAsyncReturn
package:build_runner_core/src/package_graph/target_graph.dart                                 _packageBuildConfig
dart:async                                                                                _completeOnAsyncReturn
package:build_config/src/build_config.dart                                                    BuildConfig.fromBuildConfigDir

[√] Flutter (Channel master, 1.19.0-1.0.pre.21, on Microsoft Windows [Version 10.0.18363.815], locale en-US)
    • Flutter version 1.19.0-1.0.pre.21 at C:\flutter
    • Framework revision f5d2c8c770 (14 hours ago), 2020-05-08 17:35:40 -0700
    • Engine revision 9b905d3f03
    • Dart version 2.9.0 (build 2.9.0-7.0.dev 617bc54b71)

[√] Android toolchain - develop for Android devices (Android SDK version 29.0.3)
    • Android SDK at C:\Users\osf01\AppData\Local\Android\sdk
    • Platform android-29, build-tools 29.0.3
    • Java binary at: C:\Program Files\Android\Android Studio Preview\jre\bin\java
    • Java version OpenJDK Runtime Environment (build 1.8.0_212-release-1586-b04)
    • All Android licenses accepted.

[√] Chrome - develop for the web
    • Chrome at C:\Program Files (x86)\Google\Chrome\Application\chrome.exe

[√] Android Studio (version 3.5)
    • Android Studio at C:\Program Files\Android\Android Studio
    • Flutter plugin version 42.1.1
    • Dart plugin version 191.8593
    • Java version OpenJDK Runtime Environment (build 1.8.0_202-release-1483-b03)

[√] Android Studio (version 3.6)
    • Android Studio at C:\Program Files\Android\Android Studio Preview
    • Flutter plugin version 45.1.1
    • Dart plugin version 192.7761
    • Java version OpenJDK Runtime Environment (build 1.8.0_212-release-1586-b04)

[√] VS Code (version 1.45.0)
    • VS Code at C:\Users\osf01\AppData\Local\Programs\Microsoft VS Code
    • Flutter extension version 3.10.1

[√] Connected device (4 available)
    • E6633               • BH901TM44A    • android-arm64  • Android 7.1.1 (API 25)
    • AOSP on IA Emulator • emulator-5554 • android-x86    • Android 9 (API 28) (emulator)
    • Web Server          • web-server    • web-javascript • Flutter Tools
    • Chrome              • chrome        • web-javascript • Google Chrome 81.0.4044.138

• No issues found!

FYI @jakemac53

See https://github.com/dart-lang/sdk/issues/41820

This should be resolved now if you update to the latest versions of the build_* dependencies.

I can confirm, that this has been fixed with build_runner 1.10.0. I think this bug can be closed.

I have the same error or a similar error though using build_runner 1.10.0 that should fix it:
 flutter packages pub run build_runner build --delete-conflicting-outputs
[INFO] Generating build script...
[INFO] Generating build script completed, took 382ms

[INFO] Creating build script snapshot......
[INFO] Creating build script snapshot... completed, took 10.3s

[INFO] Initializing inputs
[INFO] Building new asset graph...
[INFO] Building new asset graph completed, took 560ms

[INFO] Checking for unexpected pre-existing outputs....
[INFO] Checking for unexpected pre-existing outputs. completed, took 1ms

[INFO] Running build...
[INFO] Generating SDK summary...
[SEVERE] json_serializable:json_serializable on test/widget_test.dart:

Bad state: Unexpected diagnostics:
/Users/dani/development/flutter/bin/cache/dart-sdk/lib/internal/internal.dart:172:16 - This requires the 'non-nullable' language feature to be enabled.
[SEVERE] json_serializable:json_serializable on test/widget_test.dart:

@technolion I have also the same error using 1.10.0.
publish_to: 'none'

version: 1.0.0+1

environment:
  sdk: ">=2.7.0 <3.0.0"

dependencies:
  flutter:
    sdk: flutter
  cupertino_icons: ^0.1.3
  fluttertoast: ^4.0.0
  url_launcher: ^5.4.7
  json_annotation: ^3.0.1
  retrofit: ^1.3.4
  dio: ^3.0.8
  http: ^0.12.1
  flutter_web_browser: ^0.11.0

dev_dependencies:
  flutter_test:
    sdk: flutter
  flutter_localizations:
    sdk: flutter
  build_runner: ^1.10.0
  json_serializable: ^3.3.0
  retrofit_generator: ^1.3.4+2

flutter:
  uses-material-design: true

flutter pub run build_runner build
[INFO] Generating build script...
[INFO] Generating build script completed, took 971ms

[INFO] Initializing inputs
[INFO] Reading cached asset graph...
[INFO] Reading cached asset graph completed, took 312ms

[INFO] Checking for updates since last build...
[INFO] Checking for updates since last build completed, took 2.3s

[INFO] Running build...
[INFO] Running build completed, took 33ms

[INFO] Caching finalized dependency graph...
[INFO] Caching finalized dependency graph completed, took 105ms

[SEVERE] json_serializable:json_serializable on lib/main.dart (cached):

Bad state: Unexpected diagnostics:
E:\Android\flutter\bin\cache\dart-sdk\lib\internal\internal.dart:172:16 - This requires the 'non-nullable' language feature to be enabled.
[SEVERE] Failed after 188ms
pub finished with exit code 1

But I have no error in my old project with 1.7.3.
version: 1.0.0+1

environment:
  sdk: ">=2.7.0 <3.0.0"

dependencies:
  flutter:
    sdk: flutter
  cupertino_icons: ^0.1.3
  flutter_icons: ^1.1.0
  logger: ^0.6.0
  fluttertoast: ^4.0.0
  url_launcher: ^5.4.7
  json_annotation: ^3.0.1
  retrofit: ^1.3.4
  dio: ^3.0.8

dev_dependencies:
  flutter_test:
    sdk: flutter
  build_runner: ^1.7.3
  retrofit_generator: ^1.3.4+2
  json_serializable: ^3.3.0
  flutter_localizations:
    sdk: flutter

$ flutter pub run build_runner build
[INFO] Generating build script...
[INFO] Generating build script completed, took 995ms

[INFO] Initializing inputs
[INFO] Reading cached asset graph...
[INFO] Reading cached asset graph completed, took 425ms

[INFO] Checking for updates since last build...
[INFO] Checking for updates since last build completed, took 11.5s

[INFO] Running build...
[INFO] Running build completed, took 83ms

[INFO] Caching finalized dependency graph...
[INFO] Caching finalized dependency graph completed, took 259ms

[INFO] Succeeded after 372ms with 0 outputs (0 actions)

Make sure to run pub upgrade https://dart.dev/tools/pub/cmd/pub-upgrade

I'm getting another stranger error:
Failed to precompile build_runner:build_runner:
../../flutter/.pub-cache/hosted/pub.dartlang.org/build_resolvers-1.3.9/lib/src/resolver.dart:329:7: Error: The setter 'useSummary' isn't defined for the class 'FolderBasedDartSdk'.
 - 'FolderBasedDartSdk' is from 'package:analyzer/src/dart/sdk/sdk.dart' ('../../flutter/.pub-cache/hosted/pub.dartlang.org/analyzer-0.39.12/lib/src/dart/sdk/sdk.dart').
Try correcting the name to the name of an existing setter, or defining a setter or field named 'useSummary'.
    ..useSummary = false
      ^^^^^^^^^^

Doctor summary (to see all details, run flutter doctor -v):
[✓] Flutter (Channel stable, v1.17.5, on Linux, locale en_US.UTF-8)                                                                                ⣟
[✓] Android toolchain - develop for Android devices (Android SDK version 28.0.3)
[✓] Android Studio (version 4.0)
[✓] Android Studio (version 3.6)
[!] Connected device
    ! No devices available

! Doctor found issues in 1 category.

Having this problem as well.
flutter pub upgrade doesn't work, cleaning flutter caches (rm -rf) doesn't work.
Here's my log
Bad state: Unexpected diagnostics:
/Users/gabrielrohden/Library/Android/flutter/bin/cache/pkg/sky_engine/lib/ui/channel_buffers.dart:119:41 - This requires the 'non-nullable' language feature to be enabled.
/Users/gabrielrohden/Library/Android/flutter/bin/cache/pkg/sky_engine/lib/ui/channel_buffers.dart:152:17 - This requires the 'non-nullable' language feature to be enabled.
/Users/gabrielrohden/Library/Android/flutter/bin/cache/pkg/sky_engine/lib/ui/channel_buffers.dart:88:62 - This requires the 'non-nullable' language feature to be enabled.
/Users/gabrielrohden/Library/Android/flutter/bin/cache/pkg/sky_engine/lib/ui/channel_buffers.dart:153:38 - This requires the 'non-nullable' language feature to be enabled.
/Users/gabrielrohden/Library/Android/flutter/bin/cache/pkg/sky_engine/lib/ui/channel_buffers.dart:186:51 - This requires the 'non-nullable' language feature to be enabled.
/Users/gabrielrohden/Library/Android/flutter/bin/cache/pkg/sky_engine/lib/ui/channel_buffers.dart:133:32 - This requires the 'non-nullable' language feature to be enabled.
/Users/gabrielrohden/Library/Android/flutter/bin/cache/pkg/sky_engine/lib/ui/channel_buffers.dart:154:25 - This requires the 'non-nullable' language feature to be enabled.
/Users/gabrielrohden/Library/Android/flutter/bin/cache/pkg/sky_engine/lib/ui/channel_buffers.dart:18:17 - This requires the 'non-nullable' language feature to be enabled.
/Users/gabrielrohden/Library/Android/flutter/bin/cache/pkg/sky_engine/lib/ui/channel_buffers.dart:64:4 - This requires the 'non-nullable' language feature to be enabled.
/Users/gabrielrohden/Library/Android/flutter/bin/cache/pkg/sky_engine/lib/ui/channel_buffers.dart:168:32 - This requires the 'non-nullable' language feature to be enabled.
/Users/gabrielrohden/Library/Android/flutter/bin/cache/pkg/sky_engine/lib/ui/channel_buffers.dart:47:14 - This requires the 'non-nullable' language feature to be enabled.
/Users/gabrielrohden/Library/Android/flutter/bin/cache/pkg/sky_engine/lib/ui/channel_buffers.dart:159:38 - This requires the 'non-nullable' language feature to be enabled.
/Users/gabrielrohden/Library/Android/flutter/bin/cache/pkg/sky_engine/lib/ui/channel_buffers.dart:132:37 - This requires the 'non-nullable' language feature to be enabled.
/Users/gabrielrohden/Library/Android/flutter/bin/cache/pkg/sky_engine/lib/ui/channel_buffers.dart:118:48 - This requires the 'non-nullable' language feature to be enabled.
/Users/gabrielrohden/Library/Android/flutter/bin/cache/pkg/sky_engine/lib/ui/channel_buffers.dart:19:11 - This requires the 'non-nullable' language feature to be enabled.
[SEVERE] json_serializable:json_serializable on lib/ui/molecules/primary_raised_button.dart:

So, luckly I had put my old project on trash folder, so I was able to find out what the hell did changed when I created the project from scratch :D
Here it is (thx pubspec.lock)

In the whole lock file, only dart analyser had changed.
Reverting it back to 0.39.14 fixed the non nullable message, which is a really nice thing to find out (JK, sorry, I'm really pissed of with this after losing like 3 hours of my sanity trying to figure out what I did wrong, switching channels and trying to find a way to enable nndb)
I just wish I could link the real issue here, this will probably pop up in the next few days because dart analysis 0.39.15 was published today

@Grohden Gaaahhdd! You saved me. (Still lost an hour)
"someone released something wrong"

@Grohden Nice find! This solved the problem I was having as well

@Grohden saved me and my team mate after 45 mins~! Thank you

@Grohden saved me and my team mate after 45~ mins! Thank you

Thanks. Just added this.
dependency_overrides:
  analyzer: '0.39.14'

An alternative until it's resolved.

@f0rx that's what I meant about reverting XD, but thanks anyway.
Anyway, guys, comment on the opened issue and give a thumbs up there. Flutter maintainers probably don't look at closed issues, and this one is not related to the current problem (despite having the same log)

Might not help anyone - but all I needed to do was update flutter and it fixed the issue for me

@niallshaw What version are you using? I just updated Flutter was well, but the problem persists.

Thanks

@niallshaw What version are you using? I just updated Flutter was well, but the problem persists.

Flutter 1.21.0-6.0.pre.89 • channel master

flutter pub upgrade solved it in my case.

Bad state: Unexpected diagnostics:
C:\flutter\bin\cache\pkg\sky_engine\lib\ui\channel_buffers.dart:119:41 - This requires the 'non-nullable' language feature to be enabled.
C:\flutter\bin\cache\pkg\sky_engine\lib\ui\channel_buffers.dart:152:17 - This requires the 'non-nullable' language feature to be enabled.
C:\flutter\bin\cache\pkg\sky_engine\lib\ui\channel_buffers.dart:88:62 - This requires the 'non-nullable' language feature to be enabled.
C:\flutter\bin\cache\pkg\sky_engine\lib\ui\channel_buffers.dart:153:38 - This requires the 'non-nullable' language feature to be enabled.
C:\flutter\bin\cache\pkg\sky_engine\lib\ui\channel_buffers.dart:186:51 - This requires the 'non-nullable' language feature to be enabled.
C:\flutter\bin\cache\pkg\sky_engine\lib\ui\channel_buffers.dart:133:32 - This requires the 'non-nullable' language feature to be enabled.
C:\flutter\bin\cache\pkg\sky_engine\lib\ui\channel_buffers.dart:154:25 - This requires the 'non-nullable' language feature to be enabled.
C:\flutter\bin\cache\pkg\sky_engine\lib\ui\channel_buffers.dart:18:17 - This requires the 'non-nullable' language feature to be enabled.
C:\flutter\bin\cache\pkg\sky_engine\lib\ui\channel_buffers.dart:64:4 - This requires the 'non-nullable' language feature to be enabled.
C:\flutter\bin\cache\pkg\sky_engine\lib\ui\channel_buffers.dart:168:32 - This requires the 'non-nullable' language feature to be enabled.
C:\flutter\bin\cache\pkg\sky_engine\lib\ui\channel_buffers.dart:47:14 - This requires the 'non-nullable' language feature to be enabled.
C:\flutter\bin\cache\pkg\sky_engine\lib\ui\channel_buffers.dart:159:38 - This requires the 'non-nullable' language feature to be enabled.
C:\flutter\bin\cache\pkg\sky_engine\lib\ui\channel_buffers.dart:132:37 - This requires the 'non-nullable' language feature to be enabled.
C:\flutter\bin\cache\pkg\sky_engine\lib\ui\channel_buffers.dart:118:48 - This requires the 'non-nullable' language feature to be enabled.
C:\flutter\bin\cache\pkg\sky_engine\lib\ui\channel_buffers.dart:19:11 - This requires the 'non-nullable' language feature to be enabled.

Flutter Doctor
[√] Flutter (Channel beta, 1.20.0-7.3.pre, on Microsoft Windows [Version 10.0.19041.388], locale ko-KR)
    • Flutter version 1.20.0-7.3.pre at C:\flutter
    • Framework revision e606910f28 (24 hours ago), 2020-07-28 16:06:37 -0700
    • Engine revision ac95267aef
    • Dart version 2.9.0 (build 2.9.0-21.10.beta)

I am going to release a version of build_runner that pins analyzer to an older version - the error you all are experiencing has a canonical issue here https://github.com/dart-lang/build/issues/2763.

Ok, the latest build_runner now pins analyzer to 0.39.14 which should resolve this issue in the short term.
We are also working on a longer term fix in the language specification for experiments to prevent this issue in the future.

Can some of the users experiencing the issue here try removing their pinning of analyzer and see if this in fact resolved your issue? cc @Grohden @HiroshiHorie @HatFeather  @baksha97  @f0rx
There is some concern that even us pinning it doesn't fix things if you have other transitive dependencies on analyzer, so I would like to know in practice whether or not that fix is actually resolving things.

@jakemac53
I've removed my pubspec.lock and recreated it (also removing the manual analyzer pinning) and it worked (build_runner 1.10.0)
thanks!

I have a weird situation. Earlier today I was having this problem, but I managed to find a workaround for it following the solution proposed by @f0rx:
dependency_overrides:
  analyzer: '0.39.14'

However, I just installed the newest version of build_runner (1.10.1) but I also upgraded Flutter to the latest version (ran flutter upgrade), but now it doesn't work anymore. Even if I put back the workaround proposed by @f0rx before.
This is what I did:

Deleted pubspec.lock
Ran flutter upgrade
Ran flutter pub upgrade
Ran flutter pub run build_runner build --delete-conflicting-outputs

Here is my setup:

flutter doctor
Doctor summary (to see all details, run flutter doctor -v):
[✓] Flutter (Channel master, 1.21.0-6.0.pre.120, on Mac OS X 10.15.6 19G73, locale en-SE)
[✓] Android toolchain - develop for Android devices (Android SDK version 30.0.0)
[✓] Xcode - develop for iOS and macOS (Xcode 11.6)
[!] Android Studio (version 4.0)
    ✗ Flutter plugin not installed; this adds Flutter specific functionality.
    ✗ Dart plugin not installed; this adds Dart specific functionality.
[✓] IntelliJ IDEA Ultimate Edition (version 2020.1)
[!] VS Code (version 1.47.2)
    ✗ Flutter extension not installed; install from
      https://marketplace.visualstudio.com/items?itemName=Dart-Code.flutter
[!] Connected device
    ! Error: vinicius-iphonexs is busy: Waiting for Device.  See my comments in the issue you filed (https://github.com/dart-lang/sdk/issues/42887).
tldr; the fix is to either pin the latest analyzer (0.39.15) or previous build_runner (1.10.0)

Can some of the users experiencing the issue here try removing their pinning of analyzer and see if this in fact resolved your issue? cc @Grohden @HiroshiHorie @HatFeather @baksha97 @f0rx
Specifically I would ask you to remove the manual pinning of analyzer, run pub upgrade, and see what version of analyzer you get (0.39.14 or higher?)
There is some concern that even us pinning it doesn't fix things if you have other transitive dependencies on analyzer, so I would like to know in practice whether or not that fix is actually resolving things.

I removed the manual pinning of analyzer as you said & then flutter pub upgrade.
Version of analyzer after flutter pub upgrade: 0.39.16
I still get the error when I run flutter packages pub run build_runner build --delete-conflicting-outputs.
Bad state: Unexpected diagnostics:
C:\src\flutter\bin\cache\pkg\sky_engine\lib\ui\channel_buffers.dart:119:41 - This requires the 'non-nullable' language feature to be enabled.
C:\src\flutter\bin\cache\pkg\sky_engine\lib\ui\channel_buffers.dart:152:17 - This requires the 'non-nullable' language feature to be enabled.
C:\src\flutter\bin\cache\pkg\sky_engine\lib\ui\channel_buffers.dart:88:62 - This requires the 'non-nullable' language feature to be enabled.
C:\src\flutter\bin\cache\pkg\sky_engine\lib\ui\channel_buffers.dart:153:38 - This requires the 'non-nullable' language feature to be enabled.
C:\src\flutter\bin\cache\pkg\sky_engine\lib\ui\channel_buffers.dart:186:51 - This requires the 'non-nullable' language feature to be enabled.
C:\src\flutter\bin\cache\pkg\sky_engine\lib\ui\channel_buffers.dart:133:32 - This requires the 'non-nullable' language feature to be enabled.
C:\src\flutter\bin\cache\pkg\sky_engine\lib\ui\channel_buffers.dart:154:25 - This requires the 'non-nullable' language feature to be enabled.
C:\src\flutter\bin\cache\pkg\sky_engine\lib\ui\channel_buffers.dart:18:17 - This requires the 'non-nullable' language feature to be enabled.
C:\src\flutter\bin\cache\pkg\sky_engine\lib\ui\channel_buffers.dart:64:4 - This requires the 'non-nullable' language feature to be enabled.
C:\src\flutter\bin\cache\pkg\sky_engine\lib\ui\channel_buffers.dart:168:32 - This requires the 'non-nullable' language feature to be enabled.
C:\src\flutter\bin\cache\pkg\sky_engine\lib\ui\channel_buffers.dart:47:14 - This requires the 'non-nullable' language feature to be enabled.
C:\src\flutter\bin\cache\pkg\sky_engine\lib\ui\channel_buffers.dart:159:38 - This requires the 'non-nullable' language feature to be enabled.
C:\src\flutter\bin\cache\pkg\sky_engine\lib\ui\channel_buffers.dart:132:37 - This requires the 'non-nullable' language feature to be enabled.
C:\src\flutter\bin\cache\pkg\sky_engine\lib\ui\channel_buffers.dart:118:48 - This requires the 'non-nullable' language feature to be enabled.
C:\src\flutter\bin\cache\pkg\sky_engine\lib\ui\channel_buffers.dart:19:11 - This requires the 'non-nullable' language feature to be enabled.
[SEVERE] built_value_generator:built_value on lib/app.dart:

Not sure at what point it was fixed, but I did the following and it fixed it for me:

flutter upgrade
flutter pub upgrade
flutter pub cache repair
flutter clean
flutter pub run build_runner build --delete-conflicting-outputs

I have analyzer version 0.39.14 in pubspec.lock and build_runner version 1.10.0 in pubspec.yaml

Manually setting the analyzer version seems to have fixed it for me: analyzer: 0.39.14

Thanks. Just added this.
dependency_overrides:
  analyzer: '0.39.14'

An alternative until it's resolved.

Thanks man

Anyone seeing this on Dart version 2.10.0, you need to pin analyzer: 0.39.15 instead


Fix 'Go to' selection handling in docs-client

Motivation

Let's say we have A and B endpoints
If the user selects A from the Go to... dropdown and navigates to B from the sidebar
Browser is now on the B endpoint, but the dropdown still has A selected
User cannot navigate back to A from the Go to... dropdown since the change event is not triggered

Modifications
Instead of calling navigateTo() in handleSelection(), split the logic into two steps:

handleChange() updates the currently selected value
handleClose() calls navigateTo() with the current value

Reference: Autocomplete API
Result

User can now correctly navigate to the item that's already selected

Updated. Feel free to review, but I want to do a final test on an internal servers with many methods and structs to verify everything is working as expected.

Updated. Feel free to review, but I want to do a final test on an internal servers with many methods and structs to verify everything is working as expected.

I checked the behavior with two internal servers and I didn't notice any issues 🎉
Thanks for reviewing!

I checked the behavior with two internal servers and I didn't notice any issues 🎉
Thanks for reviewing!


Pull request to introduce copy and paste for GNOME environments and terminal operations.

Pull request to resolve #3 for GNOME environments.
Also put in some basic terminal interaction, allowing users to run terminal commands without leaving e entirely. Can be used tested by entering meta and then typing - followed by desktop command to run (i.e. "-echo hello" or "-rm -rf X"). This is very basic at the moment.

I would like to leave the latter part (the terminal commands out). It’s brittle, and entirely possible from Lua (take a look at my personal config where I bound this to the ! key for an example).

Understood, I apologise for not noticing that!

That’s completely fine! In general, I’d rather that we open one PR per feature instead of putting multiple features in a branch. Maybe I should write a Contributing document?

Looks good to me now!

@hellerve, what would be cool with me. I understand completely, I'll keep it all separate from now on.


Start testing against Node 8 and 9

Hi Folks, over at my PR (#265) I noticed that the tests are run against Node 4, 5, 6, 7. Is there a reason for not testing against the actual LTS and Current releases (8.x and 9.x respectively).
BTW, Node 5 and 7 are no longer supported upstream. You can stop testing against those.

@jshcrowthe WDYT?

I actually got a test failure on Node 9: https://travis-ci.org/firebase/firebase-admin-node/builds/313726251


snap install fails with “cannot allocate memory” error

Gitea version (or commit ref): snap stable
Git version: See above
Operating system: Ubuntu 20.04
VPS ram: 4GB, cores: 2, storage: 100GB

Description

sudo snap install gitea

Error:
error: cannot perform the following tasks:
- Setup snap "snapd" (10492) security profiles (cannot run udev triggers for input subsystem: exit status 1
udev output:
Failed to write 'change' to '/sys/devices/virtual/input/input0/uevent': Cannot allocate memory
)

Hmm, so I don’t know if I had to install git manually on the server before installing gitea but installing git and re-running the snap install line succeeded.
Now, when I do gitea status, I get the following error:
2020/12/23 14:18:06 ...les/storage/local.go:43:NewLocalStorage() [I] Creating new Local Storage at /var/snap/gitea/5133/data/lfs
2020/12/23 14:18:06 ...eue/queue_wrapped.go:75:setInternal() [W] [Attempt: 1] Failed to create queue: level for push_update cfg: queue.LevelQueueConfiguration{ByteFIFOQueueConfiguration:queue.ByteFIFOQueueConfiguration{WorkerPoolConfiguration:queue.WorkerPoolConfiguration{QueueLength:20, BatchLength:20, BlockTimeout:1000000000, BoostTimeout:300000000000, BoostWorkers:5, MaxWorkers:6}, Workers:1, Name:"push_update-level"}, DataDir:"/var/snap/gitea/5133/data/queues/push_update", ConnectionString:"", QueueName:""} error: open /var/snap/gitea/5133/data/queues/push_update/LOCK: permission denied
…

So I tried:
sudo chown -R `whoami`:`whoami` /var/snap/gitea/5133/data

And that got it past those errors but surely I shouldn’t be haphazardly changing permissions inside of a snap.
And now I have the following error:
2020/12/23 14:32:48 cmd/web.go:163:runWeb() [I] Listen: http://<IP_ADDRESS>:3000
2020/12/23 14:32:48 ...s/graceful/server.go:55:NewServer() [I] Starting new server: tcp:<IP_ADDRESS>:3000 on PID: 1806
2020/12/23 14:32:48 ...s/graceful/server.go:79:ListenAndServe() [E] Unable to GetListener: listen tcp <IP_ADDRESS>:3000: bind: address already in use
2020/12/23 14:32:48 cmd/web.go:206:runWeb() [C] Failed to start server: listen tcp <IP_ADDRESS>:3000: bind: address already in use
2020/12/23 14:32:48 cmd/web.go:208:runWeb() [I] HTTP Listener: <IP_ADDRESS>:3000 Closed

If I sudo lsof -i :3000, I see:
gitea   1567 root   16u  IPv6  10630      0t0  TCP *:3000 (LISTEN)

So it’s starting up once as root and then again trying to start up in the non-privileged account?
I think I’m going to give up on the “easy” snap install now.

I think this issue can be closed, feel free to reopen if there are more clues.


split and restructure arc commander manual

I've split and restructured the ARC commander manual to make it easier to

maintain (e.g. find and edit errors)
find specific ARC commander functions and other contents
reuse contents (towards teaching material bricks).

I think, I've addressed all points and / or added to issues // or added as TODOs to text (for those not addressable yet).


TypeError("print_exception() missing 2 required positional arguments: 'value' and 'tb'")

client = sheets_client(AUTH_SCOPE_READONLY) produces
client
PyError ($(Expr(:escape, :(ccall(#= /home/tim/.julia/packages/PyCall/BD546/src/pyfncall.jl:43 =# @pysym(:PyObject_Call), PyPtr, (PyPtr, PyPtr, PyPtr), o, pyargsptr, kw))))) <class 'TypeError'>

TypeError("print_exception() missing 2 required positional arguments: 'value' and 'tb'")

pyerr_check@exception.jl:62[inlined]
pyerr_check@exception.jl:66[inlined]
_handle_error(::String)@exception.jl:83
macro expansion@exception.jl:97[inlined]
#107@pyfncall.jl:43[inlined]
disable_sigint@c.jl:458[inlined]
__pycall!@pyfncall.jl:42[inlined]
_pycall!(::PyCall.PyObject, ::PyCall.PyObject, ::Tuple{PyCall.PyObject}, ::Int64, ::Ptr{Nothing})@pyfncall.jl:29
_pycall!(::PyCall.PyObject, ::PyCall.PyObject, ::Tuple{PyCall.PyObject}, ::Base.Iterators.Pairs{Union{}, Union{}, Tuple{}, NamedTuple{(), Tuple{}}})@pyfncall.jl:11
var"#_#114"(::Base.Iterators.Pairs{Union{}, Union{}, Tuple{}, NamedTuple{(), Tuple{}}}, ::PyCall.PyObject, ::PyCall.PyObject, ::Vararg{Any, N} where N)@pyfncall.jl:86
(::PyCall.PyObject)(::PyCall.PyObject, ::Vararg{Any, N} where N)@pyfncall.jl:86
var"#sheets_client#12"(::RateLimiter.TokenBucketRateLimiter, ::RateLimiter.TokenBucketRateLimiter, ::typeof(GoogleSheets.sheets_client), ::GoogleSheets.AuthScope)@client.jl:186
sheets_client(::GoogleSheets.AuthScope)@client.jl:148
top-level scope@Local: 1[inlined]

The errors coming from PyCall are awful.  I'm working on some improvements in another branch which I hope to finish within a week.  I have seen one more problem along these lines and have not had a chance to look at it yet.  It just started appearing in the last few days.
Can you confirm that you have gone through these steps in the readme?
To use:

Create a Google Sheets API token from either the python quick start reference or the developer's console.
Place the Google Sheets API credentials.json file in ~/.julia/google_sheets/.

Can you pull the latest and see if the problem has been resolved?

Hi @chipkent
Thanks for this package.
I have the same issue, with similar stacktrace when calling sheets_client(AUTH_SCOPE_READONLY).
I went through the step you mentioned.
Besides, the credentials_file function called within sheet_client returns .julia/config/google_sheets/credentials.json which is not the path you give in your provide in your previous comment nor in the readme. Trying both locations didn't work.
Any help would be very appreciated.


[BUG] Previews / Thumbnails not loading

Describe the bug
I've noticed that often previews/thumbnails don't seem to show up:

To Reproduce
Import this model to Depot:
8CD7F604-9832-4089-9C12-2654FA0D8299.zip
Expected behaviour
Previews to show up in the library.
Mac (please complete the following information):

OS: 13.1
Version [e.g. 22]

Hmm.. Previews show up for me.. will need to investigate.

Did you import that directly from Thingiverse using the Depot integration?

I downloaded the model from Thingiverse, then unzipped and dropped the directory into Depot.

Weird - I just deleted it and re-added it and it shows up now!

It's corrupted all the names of the files though I think that's related to https://github.com/getdepot/depot/issues/21


Html direction update on locale change

Description
A potential implementation to update the dir attribute for the html tag when the locale changes.

useEffect hook used to refresh when dependency (locale) changes
Extracted logic into useLocaleDirection hook
Executed in _app; _document avoided as lifecycle hooks are not accessible
Removed direction being passed to Chakra provider as this is no longer necessary

Related Issue
https://www.notion.so/efdn/NextJS-general-QA-session-Dec-14th-cdec3085d96c4608a96b80772755f53a?pvs=4#18fdaf6f3a9748ffbbf9b69fad955cf6
Note: Don't love the usage of document here, but it works... thoughts from others?

@wackerow @pettinarip seems it can be fixed updating _document only

@nhsz So we're effectively already doing what is shown in that link:

...but this only runs once and doesn't update when the locale changes.
Only main difference I saw was they're using a functional component and we're using a class component, but switching this to a functional component locally didn't change anything.
This was why I tried approaching this with _app where we could use the useEffect hook to produce this side-effect when the route changes

Yeah, just tried this one last time using hooks within _document after refactoring to a functional component; still only running once and not updating when the locale changes... going to pull this PR in, and if we find an approach not using the document object we can update separately.


.Net: ![ＬＩＶＥ＠ＳＴＲＥＡＭsTv !] Mr Olympia 2024 Ｌｉｖｅ Ｓｔｒｅａｍｓ Ｆｒｅｅ Ｃｏｖｅｒａｇｅ ＯＮ 11 October 2024

The bodybuilding competition of the year is here. That's right — Mr. Olympia is back for its 60th anniversary and returning to Las Vegas.
Ms. Olympia pre-judging will take place on Friday morning with finals in the evening, and the Mr. Olympia main event is scheduled to start on Saturday night. Bodybuilders from all over the world will be competing for the coveted title this weekend.
🅻🅸🆅🅴🔴▶ CLICK HERE TO WATCH LIVE ONLINE
🆆🅰🆃🅲🅷🔴▶ CLICK HERE TO LIVE STREAM
MR. OLYMPIA RESULTS: Updated list of winners in 2024
American bodybuilder Derek Lunsford took home the title in 2023, making him the first winner of the competition in two separate divisions (2023 Mr. Olympia and 2021 212 Mr. Olympia). Lunsford swapped places with defending champion Hadi Choopan, who had beaten him out for first place in 2022.
Both Lunsford and Choopan have qualified for the 2024 competition, as well as 2019 champion Brandon Curry. Andrea Shaw will be looking for an incredible five-peat in the Ms. Olympia competition.
Here is everything you need to know about the 2024 competition, including a full schedule and list of participants.
When is Mr. Olympia in 2024?
Dates: Friday, Oct. 11-Saturday, Oct. 12
This year, Mr. Olympia will be held at Resorts World Las Vegas. The finals for Ms. Olympia and Mr. Olympia will take place on Friday and Saturday, respectively.
Mr. Olympia schedule 2024
Date Time (ET) Event
Oct. 11 12:30 p.m. Ms. Olympia pre-judging
9 p.m. Ms. Olympia finals/Mr. Olympia pre-judging
Oct. 12 10 p.m. Mr. Olympia finals
Mr. Olympia live stream 2024
Live stream: Olympia pay-per-view
Mr. Olympia will not be available to watch on a national TV channel. Viewers can live stream the event on OlympiaTV, which provides a pay-per-view package for $74.99.
Who is competing in Mr. and Ms. Olympia?
In order to qualify for events, competitors must meet the requirements set by the IFBB Professional League. Nineteen men qualified for Mr. Olympia, while 15 women qualified for Ms. Olympia.
Lunsford is the defending Mr. Olympia champion and will be looking for his second title this year. Choopan won in 2022 and will be hungry for a championship after placing second last year.
Shaw is competing for a fifth straight Ms. Olympia title.
Mr. Olympia qualifiers 2024
Name Country
Derek Lunsford USA
Hadi Choopan Iran
Samson Dauda UK
Theo Leguerrier France
Rafael Brandao Brazil
Martin Fitzwater USA
Nicholas Walker USA
Tonio Burton USA
Akim Williams USA
Brandon Curry USA
William Bonac Netherlands
Behrooz Tabani Iran
Nathan De Asha UK
John Jewett USA
Mohamed Foda Egypt
Jonathan Delarosa USA
Chinedu Andrew Obiekea UAE
Hunter Labrada USA
Bruno Santos Brazil
Ms. Olympia qualifiers 2024
Name Country
Andrea Shaw USA
Angela Yeo USA
Alcione Santos Barreto Brazil
Leyvina Rodrigues Barros Brazil
Theresa Ivancik USA
Julia Whitesel USA
Ashley Lynette Jones USA
Ava Melillo USA
Nadia Capotosto Italy
Helle Trevino USA
Anastasia Leonova Russia
Michaela Aycock USA
Sherry Priami USA
Kristina Mendoza USA
Alida Opre Hungary
What are the other events held during Mr. Olympia weekend?
There are a few other events beyond the typical Mr. and Ms. Olympia contests.
The other events for men are 212 Olympia, Men's Physique Olympia, Classic Physique Olympia and Wheelchair Olympia.
The other events for women are Figure Olympia, Fitness Olympia, Bikini Olympia, Women's Physique Olympia, Wellness Olympia and Wheelchair Olympia.
Mr. Olympia prize money 2024
The total purse has not yet been announced, but it is expected to break last year's record of $1.6 million.
The money will be split between the top finishers. In 2023, Lunsford took home $400,000, while the second- and third-place finishers earned $150,000 and $100,000, respectively.
The bodybuilding competition of the year is here. That's right — Mr. Olympia is back for its 60th anniversary and returning to Las Vegas.
Ms. Olympia pre-judging will take place on Friday morning with finals in the evening, and the Mr. Olympia main event is scheduled to start on Saturday night. Bodybuilders from all over the world will be competing for the coveted title this weekend.
🅻🅸🆅🅴🔴▶ CLICK HERE TO WATCH LIVE ONLINE
🆆🅰🆃🅲🅷🔴▶ CLICK HERE TO LIVE STREAM
MR. OLYMPIA RESULTS: Updated list of winners in 2024
American bodybuilder Derek Lunsford took home the title in 2023, making him the first winner of the competition in two separate divisions (2023 Mr. Olympia and 2021 212 Mr. Olympia). Lunsford swapped places with defending champion Hadi Choopan, who had beaten him out for first place in 2022.
Both Lunsford and Choopan have qualified for the 2024 competition, as well as 2019 champion Brandon Curry. Andrea Shaw will be looking for an incredible five-peat in the Ms. Olympia competition.
Here is everything you need to know about the 2024 competition, including a full schedule and list of participants.
When is Mr. Olympia in 2024?
Dates: Friday, Oct. 11-Saturday, Oct. 12
This year, Mr. Olympia will be held at Resorts World Las Vegas. The finals for Ms. Olympia and Mr. Olympia will take place on Friday and Saturday, respectively.
Mr. Olympia schedule 2024
Date Time (ET) Event
Oct. 11 12:30 p.m. Ms. Olympia pre-judging
9 p.m. Ms. Olympia finals/Mr. Olympia pre-judging
Oct. 12 10 p.m. Mr. Olympia finals
Mr. Olympia live stream 2024
Live stream: Olympia pay-per-view
Mr. Olympia will not be available to watch on a national TV channel. Viewers can live stream the event on OlympiaTV, which provides a pay-per-view package for $74.99.
Who is competing in Mr. and Ms. Olympia?
In order to qualify for events, competitors must meet the requirements set by the IFBB Professional League. Nineteen men qualified for Mr. Olympia, while 15 women qualified for Ms. Olympia.
Lunsford is the defending Mr. Olympia champion and will be looking for his second title this year. Choopan won in 2022 and will be hungry for a championship after placing second last year.
Shaw is competing for a fifth straight Ms. Olympia title.
Mr. Olympia qualifiers 2024
Name Country
Derek Lunsford USA
Hadi Choopan Iran
Samson Dauda UK
Theo Leguerrier France
Rafael Brandao Brazil
Martin Fitzwater USA
Nicholas Walker USA
Tonio Burton USA
Akim Williams USA
Brandon Curry USA
William Bonac Netherlands
Behrooz Tabani Iran
Nathan De Asha UK
John Jewett USA
Mohamed Foda Egypt
Jonathan Delarosa USA
Chinedu Andrew Obiekea UAE
Hunter Labrada USA
Bruno Santos Brazil
Ms. Olympia qualifiers 2024
Name Country
Andrea Shaw USA
Angela Yeo USA
Alcione Santos Barreto Brazil
Leyvina Rodrigues Barros Brazil
Theresa Ivancik USA
Julia Whitesel USA
Ashley Lynette Jones USA
Ava Melillo USA
Nadia Capotosto Italy
Helle Trevino USA
Anastasia Leonova Russia
Michaela Aycock USA
Sherry Priami USA
Kristina Mendoza USA
Alida Opre Hungary
What are the other events held during Mr. Olympia weekend?
There are a few other events beyond the typical Mr. and Ms. Olympia contests.
The other events for men are 212 Olympia, Men's Physique Olympia, Classic Physique Olympia and Wheelchair Olympia.
The other events for women are Figure Olympia, Fitness Olympia, Bikini Olympia, Women's Physique Olympia, Wellness Olympia and Wheelchair Olympia.
Mr. Olympia prize money 2024
The total purse has not yet been announced, but it is expected to break last year's record of $1.6 million.
The money will be split between the top finishers. In 2023, Lunsford took home $400,000, while the second- and third-place finishers earned $150,000 and $100,000, respectively.
The bodybuilding competition of the year is here. That's right — Mr. Olympia is back for its 60th anniversary and returning to Las Vegas.
Ms. Olympia pre-judging will take place on Friday morning with finals in the evening, and the Mr. Olympia main event is scheduled to start on Saturday night. Bodybuilders from all over the world will be competing for the coveted title this weekend.
🅻🅸🆅🅴🔴▶ CLICK HERE TO WATCH LIVE ONLINE
🆆🅰🆃🅲🅷🔴▶ CLICK HERE TO LIVE STREAM
MR. OLYMPIA RESULTS: Updated list of winners in 2024
American bodybuilder Derek Lunsford took home the title in 2023, making him the first winner of the competition in two separate divisions (2023 Mr. Olympia and 2021 212 Mr. Olympia). Lunsford swapped places with defending champion Hadi Choopan, who had beaten him out for first place in 2022.
Both Lunsford and Choopan have qualified for the 2024 competition, as well as 2019 champion Brandon Curry. Andrea Shaw will be looking for an incredible five-peat in the Ms. Olympia competition.
Here is everything you need to know about the 2024 competition, including a full schedule and list of participants.
When is Mr. Olympia in 2024?
Dates: Friday, Oct. 11-Saturday, Oct. 12
This year, Mr. Olympia will be held at Resorts World Las Vegas. The finals for Ms. Olympia and Mr. Olympia will take place on Friday and Saturday, respectively.
Mr. Olympia schedule 2024
Date Time (ET) Event
Oct. 11 12:30 p.m. Ms. Olympia pre-judging
9 p.m. Ms. Olympia finals/Mr. Olympia pre-judging
Oct. 12 10 p.m. Mr. Olympia finals
Mr. Olympia live stream 2024
Live stream: Olympia pay-per-view
Mr. Olympia will not be available to watch on a national TV channel. Viewers can live stream the event on OlympiaTV, which provides a pay-per-view package for $74.99.
Who is competing in Mr. and Ms. Olympia?
In order to qualify for events, competitors must meet the requirements set by the IFBB Professional League. Nineteen men qualified for Mr. Olympia, while 15 women qualified for Ms. Olympia.
Lunsford is the defending Mr. Olympia champion and will be looking for his second title this year. Choopan won in 2022 and will be hungry for a championship after placing second last year.
Shaw is competing for a fifth straight Ms. Olympia title.
Mr. Olympia qualifiers 2024
Name Country
Derek Lunsford USA
Hadi Choopan Iran
Samson Dauda UK
Theo Leguerrier France
Rafael Brandao Brazil
Martin Fitzwater USA
Nicholas Walker USA
Tonio Burton USA
Akim Williams USA
Brandon Curry USA
William Bonac Netherlands
Behrooz Tabani Iran
Nathan De Asha UK
John Jewett USA
Mohamed Foda Egypt
Jonathan Delarosa USA
Chinedu Andrew Obiekea UAE
Hunter Labrada USA
Bruno Santos Brazil
Ms. Olympia qualifiers 2024
Name Country
Andrea Shaw USA
Angela Yeo USA
Alcione Santos Barreto Brazil
Leyvina Rodrigues Barros Brazil
Theresa Ivancik USA
Julia Whitesel USA
Ashley Lynette Jones USA
Ava Melillo USA
Nadia Capotosto Italy
Helle Trevino USA
Anastasia Leonova Russia
Michaela Aycock USA
Sherry Priami USA
Kristina Mendoza USA
Alida Opre Hungary
What are the other events held during Mr. Olympia weekend?
There are a few other events beyond the typical Mr. and Ms. Olympia contests.
The other events for men are 212 Olympia, Men's Physique Olympia, Classic Physique Olympia and Wheelchair Olympia.
The other events for women are Figure Olympia, Fitness Olympia, Bikini Olympia, Women's Physique Olympia, Wellness Olympia and Wheelchair Olympia.
Mr. Olympia prize money 2024
The total purse has not yet been announced, but it is expected to break last year's record of $1.6 million.
The money will be split between the top finishers. In 2023, Lunsford took home $400,000, while the second- and third-place finishers earned $150,000 and $100,000, respectively.

xcvxcv


[FLINK-9559] [table] The type of a union of CHAR columns of different lengths should be VARCHAR

What is the purpose of the change
Currently, if the case-when expression has two branches which return string literal, redundant white spaces will be appended to the short string literal. For example, for the sql: case 1 when 1 then 'a' when 2 then 'bcd' end, the return value will be 'a ' of CHAR(3) instead of 'a'.
This pr tries to solve the redundant white spaces problem.
Brief change log

Override shouldConvertRaggedUnionTypesToVarying to true in FlinkTypeSystem, so that Calcite will return CHAR to VARCHAR when infer result type for CHAR with different length.
Adapt some old tests.
Add more tests.

Verifying this change
This change is already covered by existing tests, such as testValues in JavaSqlITCase and testOtherExpressions in ScalarOperatorsTest.
Also add more tests in ScalarOperatorsTest.
Does this pull request potentially affect one of the following parts:

Dependencies (does it add or upgrade a dependency): (no)
The public API, i.e., is any changed class annotated with @Public(Evolving): (no)
The serializers: (no)
The runtime per-record code paths (performance sensitive): (no)
Anything that affects deployment or recovery: JobManager (and its components), Checkpointing, Yarn/Mesos, ZooKeeper: (no)
The S3 file system connector: (no)

Documentation

Does this pull request introduce a new feature? (no)

+1

What does the SQL standard have to say about this? MySQL is not the most standard compliant db out there.
Maybe the problem here is that string literals are of CHAR(N) type, while we do not support CHAR anywhere else? Maybe our literals should also have a type of VARCHAR(N)? That would also solve this problem.

At least according to draft of 2008 SQL Standard, this PR violates it (paragraph 9.3, section 3) iii) 3) says that the result type in this case should be CHAR(N) where N is the maximum of the inputs. If any of the inputs is VARCHAR(x), the result should be also VARCHAR.

@pnowojski Hi, thanks for your review.
Yes, support VARCHAR(N) can solve the problem. As a workaround, we can cast the literals to varchar to solve the problem, like: case 1 when 1 then cast('a' as varchar) when 2 then cast('bcd' as varchar) end.
The behavior in strict SQL standard mode(SQL:2003) returns a CHAR(N) type with blank-padded.
However, I test Oracle/SqlServer/Mysql and they all return the value without blank-padded. Also, it seems that there is no way to turn blank-padded on.
This change will break implementations in Flink. Do you think we should make it configurable?
Thanks, Hequn

@hequn8128 may I ask what is the use case that you are trying to solve? I'm asking because I have mixed feelings with this:

as it is, it brakes standard, which is bad
adding configuration option shouldConvertRaggedUnionTypesToVarying, which by default would be true is equally bad
making it by default false leaves us with an option that's very hard to explain to the users what does it to. I would guess almost nobody would use it
having more configuration rises the complexity of the system - more features that we need to maintain, support, refactor, test etc. This can quickly become a nightmare.
it seems like very cosmetic change. In most cases it doesn't matter, since either the result is being printed or being stored in an external system that has it's own schema. As long as in this external system column is defined as VARCHAR(x) this issue doesn't matter. Isn't the scope of this limited purely to unit tests, where we need to compare to spaces?
if we agree to introduce this change, should we also agree when next time someone reports that he/she would like to have things like:

123.456 literal being double or decimal?
'abc' literal being CHAR(3) or VARCHAR(3)?
'A  ' || 'B  ' returning 'AB' or 'A  B  '
'NULL == 0` being true, false or null?
SUBSTRING('abc' FROM -2 FOR 4) should yield 'a' or 'bc'?

and the list goes on and on. We definitely can not provide a switch for all of such quirks. Having one switch like mysql-compatibility-mode: true would have more sense, however it's impossible to implement/maintain for different reasons.
That's why I don't like changing the default behaviour and I see more problems then positives by introducing this as a configurable option.
However I see one issue here that would solve this problem. Since Flink does not support CHAR(x) anywhere besides string literals, and our CHAR(x) support seems to be broken (for example 'A  ' || 'B  ' should return 'A  B  '), maybe we should treat all string literals as varchars?

Hi @pnowojski , thanks for your reply. There are many cases need this feature. Not only case when, but also nvl, greatest and least.  Most users encounter the blank problem is case when. Examples have been added in the test cases. Below I will add some more examples:
1.
SELECT country_name
FROM (
	SELECT CASE id
			WHEN 1 THEN 'GERMANY'
			WHEN 2 THEN 'CANADA'
			ELSE 'INVALID COUNTRY ID'
		END AS country_name
	FROM country_id
)
WHERE country_name = 'GERMANY'

This sql will output nothing since the blank problem. It is very confused.

SELECT country_name, country_info
FROM (
	SELECT CASE id
			WHEN 1 THEN 'GERMANY'
			WHEN 2 THEN 'CANADA'
			ELSE 'INVALID COUNTRY ID'
		END AS country_name
	FROM country_id
) nameTable join infoTable on nameTable.country_name = infoTable.country_name;

This sql cannot join correctly since the blank problem. 'GERMANY' in nameTable becomes 'GERMANY           '.
It is true the sql standard returns CHAR type, but nearly all major DBMSs return VARCHAR without blank-padded.
Thanks, Hequn

@hequn8128 I'm pretty sure that what you have just pointed out is bug in Flink SQL. I'm not 100% sure (maybe 95%), but when comparing different types like CHAR(3) with CHAR(5) or VARCHAR(2), all of the operands should be first converted to same type (adding/ignoring padding when necessary) and only then compared.
In other words 'A  ' == 'A' should return true, and this PR is not a proper fix to this problem. It doesn't fix for example:
SELECT * FROM country WHERE country_name = 'GERMANY  '

This further convinces me that:

and our CHAR(x) support seems to be broken (for example 'A ' || 'B ' should return 'A B ')

Probably either we should convert string literals to VARCHAR or properly implement support for CHAR

@pnowojski Hi，I'm wrong at the root cause of the two examples I listed above. Thanks for pointing it out and giving a detailed explanation. It should be a comparison problem for CHAR/VARCHAR. We probably should implement support for CHAR as you said,  making trailing spaces insignificant in comparisons.
I think this pr tries to solve the output problem. Once we solve the comparison problem, we still have to solve the output problem. Output case when results to a nonbinary strings field in storages. Some storages treat CHAR/VARCHAR with trailing spaces equally('a' equals to 'a '), like mysql, so no problems here. Others don't, for example, kafka or elasticsearch. So, I think we should not add trailing spaces in result of case when, just like most DBMSs do.
What do you think?
Thanks again. Hequn

@hequn8128, as I wrote before, we can not support hundreds of switches modifying semantic of SQL, especially not in so minor ways. This PR also do not fix your original issue - broken CHAR(x) support in Flink.
Output column type of CHAR(x) should be properly handled by each connector. For example if Flink is processing some CHAR(X) column which is then being written to some sink/connector, it's this Sink's responsibility to correctly handle padding - whether that means trimming it or not depends on the underlying column's type. Again, changing type of case when only partially hides the problem.

I think we should not add trailing spaces in result of case when, just like most DBMSs do.

Further more, please correct me if I'm wrong, but this sentence seems not quite correct:
MySQL http://sqlfiddle.com/#!9/ce6d86/1

string literals seems to be of VARCHAR type.
CONCAT on chars is broken
indeed case when returns VARCHAR

Oracle http://sqlfiddle.com/#!4/ce6d86/1

again, string literals seems to be VARCHAR
type of case when calculated dynamically, depending which branch was selected, but looks like CHAR(x)

PostgreSQL http://sqlfiddle.com/#!17/ce6d8/1

again, string literals seems to be VARCHAR
I don't understand the type of case when. Some magic is happening. Without concat it looks like VARCHAR with concat it looks like CHAR.

MSSQL http://sqlfiddle.com/#!18/ce6d8/2

again, string literals seems to be VARCHAR
oO... I'm not even attempting to interpret those results... probably concat is seriously broken

PS, if you look at those results, you should understand why I'm objecting into providing a configuration switch (or more like a hundred of them) in order to follow what "other DBMSs do". This is simply impossible...

@pnowojski  Thanks for looking into it.
I think there are bugs in all your 4 sqls, so we can't get the conclusions from them.

In mysql, trailing spaces are removed when CHAR values are retrieved from a table.
You use literal of length 3('aa ') to compare to CHAR(4) and VARCHAR(4).
Except for mysql, other database will not remove trailing spaces so that the result of case when contains blanks.

What result type of case when? Should we change case when result type to varchar? I think we can get the answer form the following sqls.

Mysql
There are no doubt, since mysql Reference Manual says the return type is VARCHAR.

Oracle
http://sqlfiddle.com/#!4/cd577/2/0

PostgreSql
http://sqlfiddle.com/#!17/c20bd/3/0

SqlServer
http://sqlfiddle.com/#!18/c20bd/10/0

From the results, we can see that

There are no trailing spaces
The result type length should not be 1, i.e., can not be char(1) or varchar(1). It should be char(3) or varchar(3)
Result of concat(CAST('a' AS char(3)), '|') contains blanks while concat(CAST('a' AS varchar(3)), '|')  not, so the result type of case when should be varchar.

I think it is meaningful to turn the result type of case when to VARCHAR. What do you think?
Thanks, Hequn

Yes, sorry for my mistake there, I realised about it too late and was in the process of fixing it, but it took me quite some time to find a way to determine the actual data type returned from case.
In your examples, you are missing one important issue: what's the type of string literal. Check out those examples:
PostgreSQL
http://sqlfiddle.com/#!17/c6522/1

string literals are of UNKNOWN type, that behaves like VARCHAR
case when on CHAR arguments returns CHAR type.

MSSQL:
http://sqlfiddle.com/#!18/50a92/1/0
(click browser schema button)

string literals are VARCHAR
case when return type strictly follows the standard - CHAR(8)

Oracle:
http://sqlfiddle.com/#!4/50a92/1/0
(click browser schema button)

string literals are CHAR
case when return type VARCHAR

This is still hardly conclusive to motivate the change for me.
I'm not sure why are you rejecting my proposal to change default string literal type to VARCHAR. It would fix all of our CHAR problems (comparisons, connector support, functions support, etc)  for now and case when would return VARCHAR automatically. Even if in the future we would want to provide a configuration switch string-literals-type: char/varchar, such configuration option would be cleaner and much easier to understand compared to shouldConvertRaggedUnionTypesToVarying.

Good point with the comparisons. I meant that after changing literal types to VARCHAR (and accepting that this brakes SQL standard) our comparisons/functions (like concat) would be more SQL standard compliant, without the need to fix them. Saying that our literals are VARCHAR and we are being consistent with handling them is better then providing broken CHAR. Also it should be a cheaper and way easier for us compared to finding all places that do not handle CHAR as they should and fixing them. As a side note, I generally consider CHAR as a pretty useless type, especially since unicode it's no longer fixed length.
Changing type of string literal would be easy in calcite (org.apache.calcite.rex.RexBuilder#makePreciseStringLiteral).
On our side it's might a little bit be more tricky. I might be wrong here, but it might be enough to provide RexShuttle that do CHAR to VARCHAR type rewrite and apply it to org.apache.calcite.rel.AbstractRelNode#accept(org.apache.calcite.rex.RexShuttle) as a yet another "zero" step. Which also doesn't sound overly complicated.
shouldConvertRaggedUnionTypesToVarying both with better CHAR support or VARCHAR literals looses it's purpose (and becomes cosmetic change), or doesn't it?
Since I consider this our CHAR handling to be a serious problem, I would like it to be fixed (in one way or the other) before 1.7.0 release. If we could fix this properly, would you be fine with dropping this PR? If we would be running out of time, we could reevaluate this closer to feature freeze.

Hi, @pnowojski I agree with you now: change all CHAR to VARCHAR in Flink.
And yes, this is a serious problem since case when, concat, etc are very commonly used in SQL. Considering that changing CHAR to VARCHAR brakes backward compatibility, I think we can provide a configuration that whether to change char to varchar for users.
Since this is a big change. It would be great to have your opinions here. @fhueske @twalthr


How to explore the result?

Hi, very gald to have the chance to use flowsig to explore cellchat between database!
But when i  run-throught the code in your tutorial, i feel confuse about the result. there are no  guidelines in the tutorial to help the user explore and understand the result. feel no user-friendly :)
So could you ples give some advices to visualize the output ? @axelalmet

Hello LJZYaaa,
You're right, the plotting functionality and documentation is dreadfully lacking. I just updated flowsig to finally include some plotting functions. I plan on adding a new notebook demonstrating the different ways to plot results and updating the README.md as well by the end of this week, but in the meantime, these functions may be of use to you:

If you want to see which variables are differentially flowing (inflowing) or outflowing, for the pancreatic islets scRNA-seq example outlined in the README, you can run:

fig, ax = plt.subplots(figsize=(6, 4))
fs.pl.plot_differentially_flowing_signals(adata,
                                        condition_key = 'Condition',
                                        pert_key = 'IFNg',
                                        var_type = 'outflow',
                                        flowsig_expr_key = 'X_flow_orig',
                                        flowsig_network_key = 'flowsig_network_orig',
                                        qval_threshold = 0.05,
                                        logfc_threshold = 0.5,
                                        label_lowqval = True,
                                        ax=ax
                                        )
plt.show()

Setting pert_key='IFNg orients results so that those upregulated in the perturbed condition have positive log fold change. Note also that you also need to set flowsig_expr_key = 'X_flow_orig' and flowsig_network_key = 'flowsig_network_orig' to visualise both significant and non-significant variables.

To plot the global intercellular flow network, you can run something like this:

flow_network = fs.tl.construct_intercellular_flow_network(adata,
                                                            flowsig_network_key = 'flowsig_network',
                                                            adjacency_key = 'adjacency_validated_filtered')

fig, ax = plt.subplots(figsize=(6, 4))
fs.pl.plot_intercellular_flows(adata,
                                flow_network = flow_network,
                                flowsig_network_key = 'flowsig_network',
                                align_mode = 'horizontal',
                                width_scale = 2.0,
                                x_margin_offset = 0.3,
                                y_margin_offset = 0.0,
                                ax=ax)
plt.show()

This command plots the entire intercellular flow network. If you want to look at the flows induced by a specific inflow variable, you can set inflow_vars, e.g.,
fig, ax = plt.subplots(figsize=(6, 4))
fs.pl.plot_intercellular_flows(adata,
                                flow_network = flow_network,
                                inflow_vars = ['SSTR2'],
                                flowsig_network_key = 'flowsig_network',
                                align_mode = 'horizontal',
                                width_scale = 2.0,
                                x_margin_offset = 0.3,
                                y_margin_offset = 0.0,
                                ax=ax)
plt.show()

You can also specify module_vars and/or outflow_vars.
More details will come ASAP!

HI, glad to receive your reply ! ^^ I notice the flowsig had been upgrade to the version 0.1.1 recently. And can't wait to try it.But when i install the new version , there may be a dependency conflict?

Look forward to the new version and hope anything go well on you ^^

Glad to recevice your reply, and can't wait ti use the new version of  flowsig!
Hope anything goes well on you ^^

Hi axelalmet，how can I visualize the results of spatial transcriptome data analysis?  Could you ples give some advices?  @axelalmet

Hi! Thank you for making this tool. Excuse me, how do I reproduce the figures from the article, such as Fig3c, Fig4a, Fig5a and b, and how do I take the transcription factors from the GEM module and make figures similar to Fig6d, e and f?

Thank you for developing such an excellent software! I also hope to replicate the visualization of Fig6 in your article. Is there currently visualization provided in the package, or would you be able to update the visualization section in the tutorial? Thank you very much!


Problems with other languages

All file paths must use English characters only, also applies to comments in the scripts. When using characters from other languages, errors occur. It would be good to use the default UTF-8 encoding, in order to avoid problems with other languages.

Archiving as this issue is partly a duplicate of other Unicode-related issues (e.g. #531).
The problem about "All file paths must use English characters only, also applies to comments in the scripts." seems more peculiar, but there's not enough info to make anything of it. Please open a new issue just for that if it's still affected you in the current master branch, and add details about how to reproduce the issues, what are the error messages, etc.


Unable to run compose.sh with docker compose plugin

Have set up a server with Docker and the Compose plugin.
Running the compose.sh gives me this error.
user@telemetry:/usr/local/idrac_telemetry/docker-compose-files$ ./compose.sh --influx-pump --influx-test-db
./compose.sh: line 179: docker-compose: command not found
./compose.sh: line 38: ((: 10#2 > 10#: invalid integer constant (error token is "10#")
./compose.sh: line 42: ((: 10#2 < 10#: invalid integer constant (error token is "10#")
FAIL: Your docker compose version is 2.2.0. It must be 2.2.0 or higher!

Running the command from the script docker-compose --version gives an error since the Compose Plugin expects
docker-compose version
That results in Docker Compose version v2.16.0

Please make sure docker-compose is in your PATH to find. It is usually symlink to actual docker-compose binary , say docker-compose-v2.16.0.   /usr/local/bin/docker-compose -> docker-compose-v2.16.0.  Add /usr/local/bin your PATH

Please let us know if we can close the issue. This is only setup issue, not compose.sh script issue.

This is only setup issue, not compose.sh script issue. User error.


Automatic variable for the pipeline index

Summary of the new feature/enhancement
Initiate and increase an automatic variable (e.g. $PSIndex) each time the current object ($_/$PSItem) is assigned to the next object.
The thought originated from request #13769; what if there isn't a parameter available to support my index selection requirement?
E.g.: in case I want to get each odd row to reformat it for a readability (or a combination with #13769 or anything else)
I would need to create a custom index. That index needs to be initiated and increased with each iteration, something like:
$Index = 0
'A'..'E' | Where-Object { $Index++ -notin 1, 3 }

This is also required in a other situations, as shown in StackOverflow questions along with:

Combine single arrays into columns
Make array elements as the keys of hashtable

Examples
If there would be an automated index variable, these solutions could be simplified to:
#13769 NotIndex
'A'..'E' | Where-Object { $PSIndex -notin 1, 3 }

Select odd rows
'A'..'E' | Where-Object { $PSIndex % 2 }

Combine single arrays into columns
$Column1 = 1..3
$Column2 = 4..6

$Column1 | Foreach-Object {
    [pscustomobject]@{ Column1 = $_; Column2 = $Column2[$PSIndex] }
}

Make array elements as the keys of hashtable
$Keys = 1,2,3
$Values = 'One', 'Two', 'Three'

$HashTable = @{}
$Keys | Foreach-Object { $HashTable[$_] = $Values[$PSIndex] }

Fundamental test (expectation)
$Collection | Foreach-Object {
    $Collection[$PSIndex].Equals($PSItem) | Should -BeTrue
}

Caveats

I suspect that there already internally exists an index to support parameters like -Index and -Skip in the Select-Object cmdlet but I have no clue if that is available for every cmdlet in the pipeline
The automatic index variable for every cmdlet in the pipeline (and methods like .Where{ $PSIndex ... } ?) should all refer to a different index:  1..5 | % { $PSIndex } | ... | { $PSIndex } (as also the case with $_/$PSItem)

it would simplify this too:
https://stackoverflow.com/questions/64481180/intrinsic-index-of-item-in-a-powershell-filtered-item-using-where-object-for-ex

@IBIT-ZEE, no, your use case wouldn't be solved by this, because the proposed $PSIndex variable would only be available inside the per-item-processing script blocks.
What you're looking for is a post-command way to query all the indices of the objects that Where-Object matched.
This probably shouldn't be automatic, because the overhead of maintaining this information for a large input collection with many matches can be nontrivial; an opt-in such as with -MatchingIndexVariable <variableName> (clunky, but just to illustrate the idea) may be a better approach. I encourage you to open a new feature request.

For this StackOverflow In PowerShell is there a way to return the index of an array with substring of a string question,
the answer would be something like:
$myarray | Foreach-Object { if ($_ -match $substring) { $PSIndex } }

As suggested in the linked issue #14724 implement indexer in loop, I think this purpose should be limited to cmdlets that initiate a new $_ / $PSItem where $Collection[$PSIndex] <=> $PSItem (as in the original purpose), meaning that $PSIndex always falls into step with $PSItem (no $PSItem, means no $PSIndex).
The way pipelines work it's significantly more important to have an index because it is possible to retrieve an object from a collection by its index but not visa versa: retrieve the index from a collection by the object. Meaning, a pipeline index should prevent scripters from stalling the whole pipeline by using an index iterator instead (or having to create their own index):
$Collection = ...                               # this should be avoided as it stalls the pipeline, but is required for:
For ($i = 0; $i -lt $Collection.Count; $i++) {  # or something like (0..($Collection.Count - 1)).ForEach
    $Item = $Collection[$i]                     # But if the $Collection is in memory anyways, this isn't an issue

To prevent that PSIndex falls apart in nested loops. it might have similar common parameter as -PipelineVariable for $_ / $PSItem, something like: -PipelineIndex (alias -pi?).

I agree that an automatic index is more helpful in pipeline script blocks compared to the foreach (loop) statement, but there's no reason to choose one over the other - both are useful.
I also agree that $PSIndex should be limited to contexts where $_ / $PSItem is defined, which, in addition to ForEach-Object an Where-Object comprises:

delay-bind script blocks
calculated properties (see  https://github.com/PowerShell/PowerShell/issues/14724#issuecomment-776764076 for examples of the latter two)
the switch statement

A new common -PipelineIndex parameter wouldn't work with switch (short of introducing such an option there too), and think it's generally fine to stick with $PSIndex, given that nested pipelines involve script blocks in which you can easily save the outer $PSIndex in another variable (e.g.
'foo', 'bar', 'baz' |  ForEach-Object { $ndx = $PSIndex; <# nested pipeline that references $ndx  #> })
With the explicitly named automatic index proposed in #14724 in the context of the foreach statement (e.g.,
foreach ($name in 'foo', bar', 'baz'; $index) { "name #$(1+$index): $name" }), the nesting problem wouldn't even arise.

It would be more PowerShell-ly if it were a property of this $PSItem.
(I would rather follow the concept of PowerShell than open courses to learn an infinite number of special variables.)

@iSazonov

... if it were a property of this $PSItem

Meaning, something like $_.PSObject.Members.Index?

$PSItem is the input object at hand, and I don't think it is appropriate to add an (instance-level ETS) property to it (for performance reasons alone, but primarily because it modifies the object - unless we use magic, which I think is ill-advised in general and also bears the risk of name collisions with type-native members)
I see a separate variable as the only feasible solution.
Yes, proliferation of automatic variables is a general concern, especially given the potential for name collisions, given that there's no separate namespace for PowerShell-defined variables, which would allow something like $ps:Index (see the discussion at https://github.com/PowerShell/PowerShell/issues/4216#issuecomment-315493182).
Currently, prefixing variable names with PS is the best solution, so $PSIndex seems like a good choice (especially to complement $PSItem) - and personally I have no doubt that there is indeed a need for such a variable.

@iSazonov

... if it were a property of this $PSItem

Meaning, something like $_.PSObject.Members.Index?

I mean $PSItem.PipelineIndex.

Yes, proliferation of automatic variables is a general concern, especially given the potential for name collisions, given that there's no separate namespace for PowerShell-defined variables, which would allow something like $ps:Index (see the discussion at #4216 (comment)).

It is probably worth having a tracking issue for this. I do not believe that MSFT team will waste time on creating new namespace, but we could enhance the Get-Variable cmdlet with new parameter -Kind All | Custom | Preference | System ... and explicitly enumerate "ill-know" :-) PowerShell variables.

I mean $PSItem.PipelineIndex.

For the reasons stated, I don't think adding a property to $PSItem is an option.

It is probably worth having a tracking issue for this
enhance the Get-Variable cmdlet with new parameter -Kind All | Custom | Preference | System ...

I like the idea in its own right, but it is obviously not a solution to the name-collision problem.
A related discussion was had in https://github.com/PowerShell/PowerShell/issues/3061#issuecomment-300239754, a long time ago.
At least we have the docs currently (about_Automatic_Variables and about_Preference_Variables)

For the record: Nothing counts everything that goes through the pipeline.  The -Index parameter on Select-Object is implemented by a counter in Select-Object which only gets instantiated and incremented when you specify the -Index (or -SkipIndex) parameter. There can't be a single pipeline counter: the count is different for every command in the pipeline, since any command in the pipeline can output additional things, pass input through, filter input, etc.
Setting that aside: we definitely should not add a counter property to the $_ pipeline object, because you will step on something. You don't know what properties the thing has, and there's no property you can add which you can guarantee won't interfere with an existing property. For instance, what would happen if you did:
1..5 | foreach { $_.Index; $_ } | foreach { $_.Index; $_ }

Do you want $PSIndex to be set in the -Begin block or the -End block? I assume not. In that case, I can imagine implementing this as a $PSIndex iteration counter, something that would exist everywhere there's a $PSItem ...
But doing so could be expensive if every foreach created a counter and incremented it in every loop, even when it's not used. It could even cause overflows if more than [int]::MaxValue or [int64]::MaxValue items went through the pipeline...
You know that ForEach-Object supports multiple process blocks, right:
'a'..'f' | ForEach-Object @(
    { $i = $j = $k = 0 } # begin
    { $i++; "I:$i = $_"; }
    { $j++; "J:$j = $_" }
    { $k++; "K:$k = $_" }
    { "Total: " + ($i + $j + $k) } # end
) | ForEach-Object @(
    { $l = 0; $m = 0 } # begin
    {
        $l++; "L:$l = $_";
        'm'..'p' | ForEach-Object {
             $m++; if($m -gt 75) { "We got $m of these" }
        }
    }
)

The comment above summarizes where I think $PSIndex should be defined and, yes, it should be tied to where $_ / $PSItem is available.
From that follows the answer to this question:

Do you want $PSIndex to be set in the -Begin block or the -End block? I assume not.

Given that $_ isn't available in ForEach-Object -Begin / -End blocks, the answer would be no.
However, while definitely pointless in -Begin blocks, it would be useful in -End blocks, as the count of input objects processed could be inferred from it, analogous to awk's NR (1-based row index) variable: 1..3 | awk 'END { print NR }' -> 3.

It could even cause overflows if more than [int]::MaxValue or [int64]::MaxValue

I think we can cross that bridge when we come to it, especially with [int64]::MaxValue (roughly 1e18 == a quintillion).
As for performance concerns: I haven't run tests, but I would expect maintaining an index is negligible compared to the cost of invoking PowerShell code (script blocks) iteratively in the pipeline.
If it is a concern nonetheless, perhaps (I can't speak to actual feasibility) references to $PSIndex can be detected in the script block(s), from which the (non-)need to maintain $PSIndex could be inferred.

@mklement0, thanks for your comments.
As for the infinite, long-running producer, if [int64]::MaxValue, I guess we are quiet safe for the upcoming thousands of years. The shortest pipeline where I can think about is ... |% {}, this takes about 3.5 seconds for a million iterations on my PC, meaning it would take me around a million years to reach that on my PC:
(Measure-Command { 0..999999 |% {} }).TotalSeconds
3.5419796

[int64]::MaxValue / 1000000 * 3.54 / 60 / 60 / 24 / 365 # / sec / min / hours /days
1035348.07871848 # Years

Anyways, if the limit is truly hit, I would simply stop counting which might be less confusing.
@Jaykul,
As with implement indexer in loop #14724, it is not only matter of readability, but also protecting scripters from possible pitfalls especially because PowerShell isn't a strict language by default. Knowing that omitting initializers (like { $i = $j = $k = 0 } # begin), might appear to work fine for a novice scripter, but could cause a terrible issue on the long run when the same variable is used in a higher scope (where counters used to get a simply common name like:  $i and $Count). In other words, a self-initializing index could prevent a PowerShell gotcha.

As for performance concerns: I haven't run tests, but I would expect the cost of maintaining an index to be negligible compared to the cost of invoking PowerShell code (script blocks) iteratively in the pipeline.

Maintaining a counter isn't necessarily the concern, assigning a variable can be somewhat expensive on it's own. I can think of a way that it might be able to be implemented with minimal impact (subclass PSVariable basically) but it'd require a lot of testing.

If it is a concern nonetheless, perhaps (I can't speak to actual feasibility) references to $PSIndex can be detected in the script block(s) on parsing, from which the (non-)need to maintain $PSIndex could be inferred.

Static analysis is pretty flimsy in PowerShell.  The variable would probably seem unreliable to a typical PowerShell user (iex, Get-Variable, etc would all fail to trigger it).

Personally I think the use cases for this are too rare enough to warrant the (even if minimal) perf/break risk and work required. Especially when existing solutions aren't terrible.

Thank you for the technical insights, @SeeminglyScience, as usual.
Perhaps needless to say at this point, but personally I think it is worth it; ditto for the related foreach proposal, (#14724).

[…] existing solutions aren't terrible.

I'd argue that the commonly-suggested solutions I found when looking into this are pretty terrible. I've since created a much better solution (at least for my own needs – more on that later), but I'd argue that PowerShell ought to have something better than "not terrible" built in to address such a common use case.
I will say, though, that I don't think the correct solution is yet another automatic variable – PowerShell has, uh, plenty of those already. 😅
I found my way here after trying to manage index variables in my own code related to multiple ForEach-Object pipelines. I was following the most commonly-suggested advice (also repeated here), which was to manually manage index variables external to the main script block where the pipeline objects are being handled. Below is a small toy example:
# Example 1
$list = @('first','second','third')
$index = 0 # make sure this variable name doesn't collide with others in this scope!
$list | ForEach-Object {
  "[$index] $_"
  $index += 1 # don't forget to increment! (and be sure it's the correct index variable!)
}

<# output:
[0] first
[1] second
[2] third
#>

While this can work in very simple scenarios like this, it's messy and error-prone, and I quickly discovered it that didn't scale well at all. I found myself agreeing with the concerns @iRon7 mentioned – this approach leads us to the Pit of Despair, not the Pit of Success.
After reading a comment from @iSazonov about wanting a more "PowerShell-ly" solution, I realized there was a much better way to do this within existing PowerShell functionality – transforming objects in the pipeline into custom objects / hashtables with .Index and .Value properties. Below is my (very rough-and-ready) implementation of this idea:
# Example 2

function indexify { # naming things is hard
  $index = 0 # each call creates and manages its own index variable - no collisions
  $input | ForEach-Object { # not sure this is the "correct" way to do this, but it works!
    @{
      Index = $index
      Value = $_
    }
    $index += 1
  }
}

$list = @('first','second','third')
$list | indexify | ForEach-Object {
  "[$($_.Index)] $($_.Value)"
}

# produces the same output as Example 1

I can now add indexify to pipelines anywhere in my code, and I get index/value pairs without having to manually name or increment any index variables – Pit of Success unlocked! 🎉
While I'm happy with the solution I've created (as it seems to address my current needs perfectly), I shouldn't have needed to figure this out on my own. Some built-in way for pipelines to opt into automated indexing ought to be available within PowerShell itself, so the most common online advice on how to do this doesn't keep pointing people to the Pit of Despair.

will try this on 1mill elements :D

I got here because I was sure that by now Powershell had a built-in way to keep track of the current index within something like a ForEach-Object loop, only to find out that it does not and there are some very interesting thoughts about it from both sides. I really like @GabrielBoehme13 's indexify (I agree naming is hard) function, but ultimately just wish there was something supported within PowerShell itself to know current index without having to resort to a for loop or maintaining the index manually as shown in Example 1.

If you consider a custom/self made solution, you might create a proxy command based on the existing ForEach-Object cmdlet.
For-Object
Install-Script -Name For-Object

'One', 'Two', 'Three' | For-Object { "[$PSIndex] $PSItem" }
[0] One
[1] Two
[2] Three


bash completion support

desired feature. closes #20 :D

It works. But this pull request has many customizations from my git-extras repository. Thus, I have opened a new pull request from a feature branch forked from visionmedia:master. See https://github.com/visionmedia/git-extras/pull/64


0x611c74310a06b10593e073affe4ea543b793f539

https://etherscan.io/address/0x611c74310a06b10593e073affe4ea543b793f539
Fincrypchain  (FCC)
📝 Issue

📖 Notes

What is the goal of this PR?

Token Information
The Fincrypchain Token (symbol: FCC ) will be used as currency within our
platform, and will therefore be used for donations, purchases. Using the
Ethereum blockchain our community will be able to receive payments safely
and quickly, thus eliminating the annoying problems and slowness of the fiat
currencies.
Fincrypchain ( FCC ) token is a long term project, all our calculations have been
made in order to guarantee an
“uninterrupted” production flow, (all this regardless of the various market
fluctuations). Our token will be essential for:
• Making a donation
• Purchasing a song
• Royalty Payouts
It will be used as means of payment on the cryptology research system.

Thankyou,  but we have no time now to integrate your request.

its ok sir ... take your time ... we understand as long we can work together ... thanks


Stop the change dimension sound

That is to say I dont have any actual authority to decide that this should be merged. That's up to yesdog. You may need to revise it in the end

Thank you, yes I must have.

It works great for me.

I like it too, but also no perm to decide that :C

will pull this in, clean up, and merge. thanks for the pr!


ID Service

Something to generate CSS IDs. Must be unique and not cause collisions on page.
On private Dexter, we went with something based on path and hashed it.
/content/xfs/my-xf/master/jcr:content/my-component > ee2b49d80498e239dcc727c355611696
I think there was some stumbling with this approach. @sabyamon may know more details as he dealt with this a bunch.

Another talking point: ID stability should be considered regardless of node / path structure.
By default, Target likes to use IDs when it finds them and if a page is refactored, it would be ideal if  the ID does not change to Target has a chance of continuing to run a test.

@auniverseaway so we should rather add a unique enough property "id" at node creation we can access through property, right?

nope, as this will not work with live copies...


mlx.core.conv1d/conv2d exceptions when padding is negative

Describe the bug

abort appears when mlx.core.conv1d padding is set to negative, indicating that there is a lack of padding checks, and I don't think mlx should be trying to allocate memory fundamentally.
mlx.core.conv2d returns an empty array when the padding is set to negative, and there is no crash.

Below with the torch.nn.functional.conv1d/conv2d comparisons.
To Reproduce
Conv1d
import mlx.core as mx

input_array = mx.array([[[1., 2, 3], [4, 5, 6]]])
weight_array = mx.array([[[1., 2,3], [4, 5, 6]]])

stride = 1
padding = -1
dilation = 1
groups = 1

conv1d = mx.conv1d(input_array, weight_array, stride=stride, padding=padding, dilation=dilation, groups=groups)
print(conv1d)

import torch
import torch.nn.functional as F

input_tensor = torch.tensor([[[1., 2, 3], [4, 5, 6]]])
weight_tensor = torch.tensor([[[1., 2, 3], [4, 5, 6]]])

stride = 1
padding = -1
dilation = 1
groups = 1

conv1d_result = F.conv1d(input_tensor, weight_tensor, stride=stride, padding=padding, dilation=dilation, groups=groups)
print("Conv1d result:", conv1d_result)

Conv2d
import mlx.core as mx

input_array = mx.array([[[[1., 2], [3, 4]]]])
weight_array = mx.array([[[[1, 0.5], [0.5, 1]]]])

stride = 1
padding = -1
dilation = 1
groups = 1

conv2d = mx.conv2d(input_array, weight_array, stride=stride, padding=padding, dilation=dilation, groups=groups)
print(conv2d)

import torch
import torch.nn.functional as F

input_tensor = torch.tensor([[[[1., 2], [3, 4]]]])
weight_tensor = torch.tensor([[[[1, 0.5], [0.5, 1]]]])

stride = 1
padding = -1
dilation = 1
groups = 1

conv2d_result = F.conv2d(input_tensor, weight_tensor, stride=stride, padding=padding, dilation=dilation, groups=groups)
print("Conv2d result:", conv2d_result)

Expected behavior
padding may need to add positive and negative checks.
Desktop (please complete the following information):

OS Version: MacOS 14.2.1
Version 0.10.0
torch 2.0.0+cu117

Thanks for taking the time to bring this to our attention. I will be closing the issue for now.

Thank you for your patience in dealing with the questions I submitted! May I ask if issue547 can be regarded as enhancenemt and issue548 can be regarded as a bug? @awni

I agree with your assessment re bug for #548 and enhancement for #547.

thx！


Release/2.1.0 merge into develop

PR Checklist
PR Structure

[x] This PR has reasonably narrow scope (if not, break it down into smaller PRs).
[x] This PR avoids mixing refactoring changes with feature changes (split into two PRs
otherwise).
[x] This PR's title starts with name of package that is most changed in the PR, ex.
paymentservice.stellar, or all or doc if the changes are broad or impact many
packages.

Thoroughness

[x] This PR adds tests for the most critical parts of the new functionality or fixes.

What
This merges release/2.1.0 into develop as part of https://github.com/stellar/java-stellar-anchor-sdk/issues/953.
Why
Gitflow
Known limitations
N/A

Reference Server Preview is available here:https://anchor-ref-pr957.previews.kube001.services.stellar-ops.com/SEP Server Preview is available here:https://anchor-sep-pr957.previews.kube001.services.stellar-ops.com/


Remove logging of cluster token

The secret token was being logged, since logs can be piped to public storage, we shouldn't log it.

This is tracked in https://github.com/rancher/rancher/pull/18113


jekyll-paginate and jekyll-sitemap

You have to gem install jekyll-paginate and jekyll-sitemap manually before doing bundler install.

When I run 'bundle install' bundler installs jekyll-paginate and jekyll-sitemap for me. So I can't confirm this (on Mac OS El Capitan and Linux Mint 17.3)
Someone else here, who has to install the gems before running 'bundle install'?

Everything works fine for me following README.md on Ubuntu Trusty


Logs for docker containers

Fixes #15

Codecov Report

Merging #37 into master will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master      #37   +/-   ##
=======================================
  Coverage   30.85%   30.85%
=======================================
  Files           2        2
  Lines          94       94
=======================================
  Hits           29       29
  Misses         64       64
  Partials        1        1

Impacted Files
Coverage Δ

main.go
13.33% <ø> (ø)
:arrow_up:

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 fc6295b...0685632. Read the comment docs.


UI is broken

When typing anything part of the UI starts scrolling up.

Most has been fixed, there is still an issue that there appears to be an empty line between
the last and the second last element.

I think I have a fix for the empty line in https://github.com/felipesere/selecta/pull/14, maybe.


How to add java script click action with xpath , in my case element is directly not accessible

How to add java script click action with xpath , in my case element is directly not accessible

for automating web browser

You can use XPath without JavaScript:
- description: Click the submit button
  action: org.getopentest.selenium.Click
  args:
    locator: { xpath: "//div[@id='order']//input[@type='submit']" }

If you must use JavaScript, you can use the $runAction API:
- script: |
    $runAction("org.getopentest.selenium.Click", {
      locator: { xpath: "//div[@id='order']//input[@type='submit']" }
    })


Add -txn flag to go build

This change adds a new go build flag called "txn". This flag is
read by compiler and will be used to protect normal compiler path
from future transaction related changes.
The changes are similar to how compiler reads msan/race build
flags.
Example use: go build -txn

Hi Pratap,
The testing for this is basically if you do go build with an unrecognized flag, the command fails.
So for example,
go build -tx fails.
But go build -txn builds.
So, "txn" flag is now recognized.
I'll add the testing in the description for future commits

For testing of this change and all future changes to the compiler, I'd like
you ti run the full compiler regressions tests that the golang people have
set up.
In addition, for this particular change, like you say, run with a
unrecognized flag to get an error. Then, run the full regression tests
with the flag to ensure that it continues to work.
Regards,
Pratap
On Wed, Aug 21, 2019 at 11:26 PM Mohit Verma<EMAIL_ADDRESS>wrote:

Hi Pratap,
The testing for this is basically if you do go build with an unrecognized
flag, the command fails.
So for example,
go build -tx fails.
But go build -txn builds.
So, "txn" flag is now recognized.
I'll add the testing in the description for future commits
—
You are receiving this because your review was requested.
Reply to this email directly, view it on GitHub
https://github.com/jerrinsg/go-pmem/pull/9?email_source=notifications&email_token=ABST4363OEHM7HSUA7VDZU3QFYWQNA5CNFSM4IOPNFDKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOD44A3SY#issuecomment-523767243,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ABST434D2ZJSWGYYN4SJFETQFYWQNANCNFSM4IOPNFDA
.

Hi Pratap,
This particular change passes the all.bash tests setup with Go compiler. Also, Travis setup in this repository will run all.bash for every pull request now. So, we are covered with that for this and all future commits.
For this particular commit, I ran with an unrecognized flag & with "-txn" & see expected outputs.
I also ran "all.bash" with -txn flag passed to all tests. I haven't added that change to this commit as I don't see this being done for other similar flags like msan. Updated the pull request description to show the testing done.


Qualify stat names to avoid collisions

Standard practice for OpenCensus measure names is to qualify them with project names so the names are unique. Since measure names are never exported (only view names), this is a safe change.
Also the measures are now exported so library users can create custom views with them This is also standard practice.
/cc @n3wscott

Thanks a bunch for looking at this.

Looks good to me.


Update sdk

Pull Request Checklist
Please leverage this checklist as a reminder to address commonly occurring feedback when submitting a pull request to make sure your PR can be reviewed quickly:
See the detailed list in the contributing guide.

[ ] C++ Guidelines
[ ] Doxygen docs
[ ] Unit tests
[ ] No unwanted commits/changes
[ ] Descriptive title/description

[ ] PR is single purpose
[ ] Related issue listed

[ ] Comments in source
[ ] No typos
[ ] Update changelog
[ ] Not work-in-progress
[ ] External references or docs updated
[ ] Self review of PR done
[ ] Any breaking changes?

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you all sign our Contributor License Agreement before we can accept your contribution.5 out of 13 committers have signed the CLA.:white_check_mark: jkuklis:white_check_mark: alesapin:white_check_mark: kssenii:white_check_mark: rschu1ze:white_check_mark: CurtizJ:x: azure-sdk:x: antkmsft:x: Jinming-Hu:x: LarryOsterman:x: ahsonkhan:x: danieljurek:x: teo-tsirpanis:x: JimSuplizioYou have signed the CLA already but the status is still pending? Let us recheck it.