MultiJson Parser Error

Its occuring when I am executing fastlane android screenshots
55: from C:/Ruby27-x64/bin/fastlane:23:in `<main>'
        54: from C:/Ruby27-x64/bin/fastlane:23:in `load'
        53: from C:/Ruby27-x64/lib/ruby/gems/2.7.0/gems/fastlane-2.143.0/bin/fastlane:23:in `<top (required)>'
        52: from C:/Ruby27-x64/lib/ruby/gems/2.7.0/gems/fastlane-2.143.0/fastlane/lib/fastlane/cli_tools_distributor.rb:119:in `take_off'
        51: from C:/Ruby27-x64/lib/ruby/gems/2.7.0/gems/fastlane-2.143.0/fastlane/lib/fastlane/commands_generator.rb:41:in `start'
        50: from C:/Ruby27-x64/lib/ruby/gems/2.7.0/gems/fastlane-2.143.0/fastlane/lib/fastlane/commands_generator.rb:349:in `run'
        49: from C:/Ruby27-x64/lib/ruby/gems/2.7.0/gems/commander-fastlane-4.4.6/lib/commander/delegates.rb:15:in `run!'
        48: from C:/Ruby27-x64/lib/ruby/gems/2.7.0/gems/fastlane-2.143.0/fastlane_core/lib/fastlane_core/ui/fastlane_runner.rb:76:in `run!'
        47: from C:/Ruby27-x64/lib/ruby/gems/2.7.0/gems/commander-fastlane-4.4.6/lib/commander/runner.rb:476:in `run_active_command'
        46: from C:/Ruby27-x64/lib/ruby/gems/2.7.0/gems/commander-fastlane-4.4.6/lib/commander/command.rb:153:in `run'
        45: from C:/Ruby27-x64/lib/ruby/gems/2.7.0/gems/commander-fastlane-4.4.6/lib/commander/command.rb:178:in `call'
        44: from C:/Ruby27-x64/lib/ruby/gems/2.7.0/gems/fastlane-2.143.0/fastlane/lib/fastlane/commands_generator.rb:108:in `block (2 levels) in run'
        43: from C:/Ruby27-x64/lib/ruby/gems/2.7.0/gems/fastlane-2.143.0/fastlane/lib/fastlane/command_line_handler.rb:36:in `handle'
        42: from C:/Ruby27-x64/lib/ruby/gems/2.7.0/gems/fastlane-2.143.0/fastlane/lib/fastlane/lane_manager.rb:56:in `cruise_lane'
        41: from C:/Ruby27-x64/lib/ruby/gems/2.7.0/gems/fastlane-2.143.0/fastlane/lib/fastlane/runner.rb:45:in `execute'
        40: from C:/Ruby27-x64/lib/ruby/gems/2.7.0/gems/fastlane-2.143.0/fastlane/lib/fastlane/runner.rb:45:in `chdir'
        39: from C:/Ruby27-x64/lib/ruby/gems/2.7.0/gems/fastlane-2.143.0/fastlane/lib/fastlane/runner.rb:49:in `block in execute'
        38: from C:/Ruby27-x64/lib/ruby/gems/2.7.0/gems/fastlane-2.143.0/fastlane/lib/fastlane/lane.rb:33:in `call'
        37: from Fastfile:56:in `block (2 levels) in parsing_binding'
        36: from C:/Ruby27-x64/lib/ruby/gems/2.7.0/gems/fastlane-2.143.0/fastlane/lib/fastlane/fast_file.rb:159:in `method_missing'
        35: from C:/Ruby27-x64/lib/ruby/gems/2.7.0/gems/fastlane-2.143.0/fastlane/lib/fastlane/runner.rb:157:in `trigger_action_by_name'
        34: from C:/Ruby27-x64/lib/ruby/gems/2.7.0/gems/fastlane-2.143.0/fastlane/lib/fastlane/runner.rb:227:in `execute_action'
        33: from C:/Ruby27-x64/lib/ruby/gems/2.7.0/gems/fastlane-2.143.0/fastlane/lib/fastlane/runner.rb:227:in `chdir'
        32: from C:/Ruby27-x64/lib/ruby/gems/2.7.0/gems/fastlane-2.143.0/fastlane/lib/fastlane/runner.rb:253:in `block in execute_action'
        31: from C:/Ruby27-x64/lib/ruby/gems/2.7.0/gems/fastlane-2.143.0/fastlane/lib/fastlane/actions/actions_helper.rb:50:in `execute_action'
        30: from C:/Ruby27-x64/lib/ruby/gems/2.7.0/gems/fastlane-2.143.0/fastlane/lib/fastlane/runner.rb:261:in `block (2 levels) in execute_action'
        29: from C:/Ruby27-x64/lib/ruby/gems/2.7.0/gems/fastlane-2.143.0/fastlane/lib/fastlane/actions/upload_to_play_store.rb:33:in `run'
        28: from C:/Ruby27-x64/lib/ruby/gems/2.7.0/gems/fastlane-2.143.0/supply/lib/supply/uploader.rb:32:in `perform_upload'
        27: from C:/Ruby27-x64/lib/ruby/gems/2.7.0/gems/fastlane-2.143.0/supply/lib/supply/uploader.rb:81:in `perform_upload_meta'
        26: from C:/Ruby27-x64/lib/ruby/gems/2.7.0/gems/fastlane-2.143.0/supply/lib/supply/uploader.rb:81:in `each'
        25: from C:/Ruby27-x64/lib/ruby/gems/2.7.0/gems/fastlane-2.143.0/supply/lib/supply/uploader.rb:89:in `block in perform_upload_meta'
        24: from C:/Ruby27-x64/lib/ruby/gems/2.7.0/gems/fastlane-2.143.0/supply/lib/supply/uploader.rb:89:in `each'
        23: from C:/Ruby27-x64/lib/ruby/gems/2.7.0/gems/fastlane-2.143.0/supply/lib/supply/uploader.rb:97:in `block (2 levels) in perform_upload_meta'
        22: from C:/Ruby27-x64/lib/ruby/gems/2.7.0/gems/fastlane-2.143.0/supply/lib/supply/uploader.rb:273:in `upload_screenshots'
        21: from C:/Ruby27-x64/lib/ruby/gems/2.7.0/gems/fastlane-2.143.0/supply/lib/supply/uploader.rb:273:in `each'
        20: from C:/Ruby27-x64/lib/ruby/gems/2.7.0/gems/fastlane-2.143.0/supply/lib/supply/uploader.rb:278:in `block in upload_screenshots'
        19: from C:/Ruby27-x64/lib/ruby/gems/2.7.0/gems/fastlane-2.143.0/supply/lib/supply/client.rb:500:in `clear_screenshots'
        18: from C:/Ruby27-x64/lib/ruby/gems/2.7.0/gems/fastlane-2.143.0/supply/lib/supply/client.rb:80:in `call_google_api'
        17: from C:/Ruby27-x64/lib/ruby/gems/2.7.0/gems/fastlane-2.143.0/supply/lib/supply/client.rb:501:in `block in clear_screenshots'
        16: from C:/Ruby27-x64/lib/ruby/gems/2.7.0/gems/google-api-client-0.36.4/generated/google/apis/androidpublisher_v3/service.rb:909:in `deleteall_edit_image'
        15: from C:/Ruby27-x64/lib/ruby/gems/2.7.0/gems/google-api-client-0.36.4/lib/google/apis/core/base_service.rb:360:in `execute_or_queue_command'
        14: from C:/Ruby27-x64/lib/ruby/gems/2.7.0/gems/google-api-client-0.36.4/lib/google/apis/core/http_command.rb:102:in `execute'
        13: from C:/Ruby27-x64/lib/ruby/gems/2.7.0/gems/retriable-3.1.2/lib/retriable.rb:56:in `retriable'
        12: from C:/Ruby27-x64/lib/ruby/gems/2.7.0/gems/retriable-3.1.2/lib/retriable.rb:56:in `times'
        11: from C:/Ruby27-x64/lib/ruby/gems/2.7.0/gems/retriable-3.1.2/lib/retriable.rb:61:in `block in retriable'
        10: from C:/Ruby27-x64/lib/ruby/gems/2.7.0/gems/google-api-client-0.36.4/lib/google/apis/core/http_command.rb:110:in `block in execute'
         9: from C:/Ruby27-x64/lib/ruby/gems/2.7.0/gems/retriable-3.1.2/lib/retriable.rb:56:in `retriable'
         8: from C:/Ruby27-x64/lib/ruby/gems/2.7.0/gems/retriable-3.1.2/lib/retriable.rb:56:in `times'
         7: from C:/Ruby27-x64/lib/ruby/gems/2.7.0/gems/retriable-3.1.2/lib/retriable.rb:61:in `block in retriable'
         6: from C:/Ruby27-x64/lib/ruby/gems/2.7.0/gems/google-api-client-0.36.4/lib/google/apis/core/http_command.rb:113:in `block (2 levels) in execute'
         5: from C:/Ruby27-x64/lib/ruby/gems/2.7.0/gems/google-api-client-0.36.4/lib/google/apis/core/http_command.rb:310:in `execute_once'
         4: from C:/Ruby27-x64/lib/ruby/gems/2.7.0/gems/google-api-client-0.36.4/lib/google/apis/core/http_command.rb:194:in `process_response'
         3: from C:/Ruby27-x64/lib/ruby/gems/2.7.0/gems/google-api-client-0.36.4/lib/google/apis/core/api_command.rb:86:in `decode_response_body'
         2: from C:/Ruby27-x64/lib/ruby/gems/2.7.0/gems/representable-3.0.4/lib/representable/json.rb:38:in `from_json'
         1: from C:/Ruby27-x64/lib/ruby/gems/2.7.0/gems/multi_json-1.14.1/lib/multi_json.rb:122:in `load'
C:/Ruby27-x64/lib/ruby/gems/2.7.0/gems/multi_json-1.14.1/lib/multi_json/adapter.rb:20:in `load': \e[31m[!] JSON::ParserError\e[0m (MultiJson::ParseError)

Here is the detail of fastlane env
✅ fastlane environment ✅
Stack

Key
Value

OS
UNKNOWN

Ruby
2.7.0

Bundler?
false

Git
git version 2.25.1.windows.1

Installation Source
C:/Ruby27-x64/bin/fastlane

Host
Unknown  ()

Ruby Lib Dir
C:/Ruby27-x64/lib

OpenSSL Version
OpenSSL 1.1.1d  10 Sep 2019

Is contained
false

Is homebrew
false

Is installed via Fabric.app
false

System Locale

Variable
Value

LANG
en_US.UTF-8
✅

LC_ALL
en_US.UTF-8
✅

LANGUAGE

fastlane files:
`./fastlane/Fastfile`
# This file contains the fastlane.tools configuration
# You can find the documentation at https://docs.fastlane.tools
#
# For a list of all available actions, check out
#
#     https://docs.fastlane.tools/actions
#
# For a list of all available plugins, check out
#
#     https://docs.fastlane.tools/plugins/available-plugins
#

# Uncomment the line if you want fastlane to automatically update itself
# update_fastlane

default_platform(:android)

platform :android do
  desc "Runs all the tests"
  lane :test do
    gradle(task: "test")
  end

# capturing screenshot
desc "Capture Screen"
lane :screenshot do
    gradle(task: "clean assembleDebug assembleAndroidTest")
    screengrab
end

lane :screenshots do
  screenshot
  upload_to_play_store(
             json_key: 'serviceApiKeyfinal.json',
             skip_upload_apk: true,
             skip_upload_metadata: true,
             skip_upload_aab: true,
             skip_upload_images: false,
             skip_upload_screenshots: false,
             track: 'beta'
             )
end

  desc "Submit a new Beta Build to Crashlytics Beta"
  lane :beta do
     gradle(task: 'clean')
     gradle(
          task: "assemble",
          build_type: "Release",
           properties: {
                  "android.injected.signing.store.file" => "dsss.jks",
                  "android.injected.signing.store.password" => "pass",
                  "android.injected.signing.key.alias" => "alias",
                  "android.injected.signing.key.password" => "pass",
                  })
          upload_to_play_store(
           track: 'beta',
           json_key: 'serviceApiKeyfinal.json',
           skip_upload_apk: true,
           skip_upload_metadata: true,
           skip_upload_images: true,
           skip_upload_screenshots: true)

    # sh "your_script.sh"
    # You can also use other beta testing services here
  end

  desc "Deploy a new version to the Google Play"
  lane :playstore do
    gradle(
        task: 'assemble',
        build_type: 'Release'
      )

     upload_to_play_store(
           track_promote_to: 'production',
           json_key: 'serviceApiKeyfinal.json',
           skip_upload_apk: true,
           skip_upload_metadata: true,
           skip_upload_images: true,
           skip_upload_screenshots: true,
           track: 'beta'
           )
     # Uploads the APK built in the gradle step above and releases it to all production users
  end
end

`./fastlane/Appfile`
json_key_file("serviceApiKeyfinal.json") # Path to the json secret file - Follow https://docs.fastlane.tools/actions/supply/#setup to get one
package_name("har.fastlanescreenshotandplaystoreupload") # e.g. com.krausefx.app

fastlane gems

Gem
Version
Update-Status

fastlane
2.143.0
✅ Up-To-Date

Loaded fastlane plugins:
No plugins Loaded
Loaded gems

Gem
Version

did_you_mean
1.4.0

slack-notifier
2.3.2

atomos
0.1.3

CFPropertyList
3.0.2

claide
1.0.3

colored2
3.1.2

nanaimo
0.2.6

xcodeproj
1.15.0

rouge
2.0.7

xcpretty
0.3.0

terminal-notifier
2.0.0

terminal-table
1.8.0

plist
3.5.0

public_suffix
2.0.5

addressable
2.7.0

multipart-post
2.0.0

word_wrap
1.0.0

tty-screen
0.7.1

tty-cursor
0.7.1

tty-spinner
0.9.3

babosa
1.0.3

colored
1.2

highline
1.7.10

commander-fastlane
4.4.6

excon
0.72.0

unf_ext
<IP_ADDRESS>

unf
0.1.4

domain_name
0.5.20190701

http-cookie
1.0.3

faraday-cookie_jar
0.0.6

faraday
0.17.3

faraday_middleware
0.13.1

fastimage
2.1.7

gh_inspector
1.1.3

json
2.3.0

mini_magick
4.10.1

multi_xml
0.6.0

rubyzip
1.3.0

security
0.1.3

xcpretty-travis-formatter
1.0.0

dotenv
2.7.5

naturally
2.2.0

simctl
1.6.8

jwt
2.1.0

uber
0.1.0

declarative
0.0.10

declarative-option
0.1.0

representable
3.0.4

retriable
3.1.2

mini_mime
1.0.2

multi_json
1.14.1

signet
0.13.0

memoist
0.16.2

os
1.0.1

googleauth
0.11.0

httpclient
2.8.3

google-api-client
0.36.4

google-cloud-env
1.3.1

google-cloud-errors
1.0.0

google-cloud-core
1.5.0

digest-crc
0.5.1

google-cloud-storage
1.25.1

emoji_regex
1.0.1

uri
0.10.0

unicode-display_width
1.7.0

bundler
2.1.4

aws-eventstream
1.0.3

aws-sigv4
1.1.1

jmespath
1.4.0

aws-sdk-core
2.11.463

aws-sdk-resources
2.11.463

aws-sdk
2.11.463

forwardable
1.3.1

logger
1.4.2

cgi
0.1.0

timeout
0.1.0

stringio
0.1.0

ipaddr
1.2.2

openssl
2.1.2

ostruct
0.2.0

strscan
1.0.3

fiddle
1.0.0

date
3.0.0

delegate
0.1.0

fileutils
1.4.1

etc
1.1.0

zlib
1.1.0

singleton
0.1.0

rexml
3.2.3

open3
0.1.0

yaml
0.1.0

psych
3.1.0

mutex_m
0.1.0

generated on: 2020-03-16

C:/Ruby27-x64/lib/ruby/gems/2.7.0/gems/fastlane-2.143.0/fastlane_core/lib/fastlane_core/ui/interface.rb:141: warning: Using the last argument as keyword parameters is deprecated; maybe ** should be added to the call
C:/Ruby27-x64/lib/ruby/gems/2.7.0/gems/fastlane-2.143.0/fastlane_core/lib/fastlane_core/ui/errors/fastlane_error.rb:9: warning: The called method `initialize' is defined here
[14:17:44]: Generating fastlane environment output, this might take a few seconds...
✅ fastlane environment ✅
Stack

Key
Value

OS
UNKNOWN

Ruby
2.7.0

Bundler?
false

Git
git version 2.25.1.windows.1

Installation Source
C:/Ruby27-x64/bin/fastlane

Host
Unknown  ()

Ruby Lib Dir
C:/Ruby27-x64/lib

OpenSSL Version
OpenSSL 1.1.1d  10 Sep 2019

Is contained
false

Is homebrew
false

Is installed via Fabric.app
false

System Locale

Variable
Value

LANG
en_US.UTF-8
✅

LC_ALL
en_US.UTF-8
✅

LANGUAGE

fastlane files:
`./fastlane/Fastfile`
# This file contains the fastlane.tools configuration
# You can find the documentation at https://docs.fastlane.tools
#
# For a list of all available actions, check out
#
#     https://docs.fastlane.tools/actions
#
# For a list of all available plugins, check out
#
#     https://docs.fastlane.tools/plugins/available-plugins
#

# Uncomment the line if you want fastlane to automatically update itself
# update_fastlane

default_platform(:android)

platform :android do
  desc "Runs all the tests"
  lane :test do
    gradle(task: "test")
  end

# capturing screenshot
desc "Capture Screen"
lane :screenshot do
    gradle(task: "clean assembleDebug assembleAndroidTest")
    screengrab
end

lane :screenshots do
  screenshot
  upload_to_play_store(
             json_key: 'serviceApiKeyfinal.json',
             skip_upload_apk: true,
             skip_upload_metadata: true,
             skip_upload_aab: true,
             skip_upload_images: false,
             skip_upload_screenshots: false,
             track: 'beta'
             )
end

  desc "Submit a new Beta Build to Crashlytics Beta"
  lane :beta do
     gradle(task: 'clean')
     gradle(
          task: "assemble",
          build_type: "Release",
           properties: {
                  "android.injected.signing.store.file" => "dsss.jks",
                  "android.injected.signing.store.password" => "pass",
                  "android.injected.signing.key.alias" => "alias",
                  "android.injected.signing.key.password" => "pass",
                  })
          upload_to_play_store(
           track: 'beta',
           json_key: 'serviceApiKeyfinal.json',
           skip_upload_apk: true,
           skip_upload_metadata: true,
           skip_upload_images: true,
           skip_upload_screenshots: true)

    # sh "your_script.sh"
    # You can also use other beta testing services here
  end

  desc "Deploy a new version to the Google Play"
  lane :playstore do
    gradle(
        task: 'assemble',
        build_type: 'Release'
      )

     upload_to_play_store(
           track_promote_to: 'production',
           json_key: 'serviceApiKeyfinal.json',
           skip_upload_apk: true,
           skip_upload_metadata: true,
           skip_upload_images: true,
           skip_upload_screenshots: true,
           track: 'beta'
           )
     # Uploads the APK built in the gradle step above and releases it to all production users
  end
end

`./fastlane/Appfile`
json_key_file("serviceApiKeyfinal.json") # Path to the json secret file - Follow https://docs.fastlane.tools/actions/supply/#setup to get one
package_name("har.fastlanescreenshotandplaystoreupload") # e.g. com.krausefx.app

fastlane gems

Gem
Version
Update-Status

fastlane
2.143.0
✅ Up-To-Date

Loaded fastlane plugins:
No plugins Loaded
Loaded gems

Gem
Version

did_you_mean
1.4.0

slack-notifier
2.3.2

atomos
0.1.3

CFPropertyList
3.0.2

claide
1.0.3

colored2
3.1.2

nanaimo
0.2.6

xcodeproj
1.15.0

rouge
2.0.7

xcpretty
0.3.0

terminal-notifier
2.0.0

terminal-table
1.8.0

plist
3.5.0

public_suffix
2.0.5

addressable
2.7.0

multipart-post
2.0.0

word_wrap
1.0.0

tty-screen
0.7.1

tty-cursor
0.7.1

tty-spinner
0.9.3

babosa
1.0.3

colored
1.2

highline
1.7.10

commander-fastlane
4.4.6

excon
0.72.0

unf_ext
<IP_ADDRESS>

unf
0.1.4

domain_name
0.5.20190701

http-cookie
1.0.3

faraday-cookie_jar
0.0.6

faraday
0.17.3

faraday_middleware
0.13.1

fastimage
2.1.7

gh_inspector
1.1.3

json
2.3.0

mini_magick
4.10.1

multi_xml
0.6.0

rubyzip
1.3.0

security
0.1.3

xcpretty-travis-formatter
1.0.0

dotenv
2.7.5

naturally
2.2.0

simctl
1.6.8

jwt
2.1.0

uber
0.1.0

declarative
0.0.10

declarative-option
0.1.0

representable
3.0.4

retriable
3.1.2

mini_mime
1.0.2

multi_json
1.14.1

signet
0.13.0

memoist
0.16.2

os
1.0.1

googleauth
0.11.0

httpclient
2.8.3

google-api-client
0.36.4

google-cloud-env
1.3.1

google-cloud-errors
1.0.0

google-cloud-core
1.5.0

digest-crc
0.5.1

google-cloud-storage
1.25.1

emoji_regex
1.0.1

uri
0.10.0

unicode-display_width
1.7.0

bundler
2.1.4

aws-eventstream
1.0.3

aws-sigv4
1.1.1

jmespath
1.4.0

aws-sdk-core
2.11.463

aws-sdk-resources
2.11.463

aws-sdk
2.11.463

forwardable
1.3.1

logger
1.4.2

cgi
0.1.0

timeout
0.1.0

stringio
0.1.0

ipaddr
1.2.2

openssl
2.1.2

ostruct
0.2.0

strscan
1.0.3

fiddle
1.0.0

date
3.0.0

delegate
0.1.0

fileutils
1.4.1

etc
1.1.0

zlib
1.1.0

singleton
0.1.0

rexml
3.2.3

open3
0.1.0

yaml
0.1.0

psych
3.1.0

mutex_m
0.1.0

generated on: 2020-03-16

Seems to be an upstream error with the Google API Ruby Client: https://github.com/googleapis/google-api-ruby-client/issues/864

@max-ott  what steps needed to resolve this. I am stuck at this.

We need Google to fix the issue in their library. It seems they changed their "empty responses" and therefore it's throwing that error.

how I troubleshoot them? is there any way?

We see identical error on supply when it tries to delete the existing screenshots and there is none.

@nzaghini-phorest  Yes, This issue is related to screenshot upload. metadata and Apk uploads are working fine for me.

It seems we need to manually add screenshot to make things work.
After adding 2 screenshot i execute the same command and it worked.

Thanks for reopening. Adding manually screenshots is a workaround we are doing too but way far from what we need, which is full automation. If Google API Ruby Client does not update the behaviour, the only option is to make sure Fastlane starts to "understand" the new "empty" result.

@nzaghini-phorest the issue is not in fastlane understanding the response, but the underlying Google API ruby client parsing it. Unless that’s fixed, we cannot change anything on the fastlane side of things. Feel free to open a pull request and change out the Google API client.

can we create the Application using fastlane on play store?

No, Google does not offer an API for that - you have to do that by hand @HarminderSinghSandhu

@HarminderSinghSandhu Here's an overview of the Google Play API: https://developers.google.com/android-publisher/api-ref This is was fastlane can do at most for you.

I have the same issue, and I looked into the Google Client ruby code to figure it out.
I have a workaround so I'll post it here in case it helps other people in the meantime...
I had the google-api-client-0.23.9 gem installed, and I was able to fix the problem by editing the function decode_response_body in the file gems/google-api-client-0.23.9/lib/google/apis/core/api_command.rb at line 79.
For reference, the file in the google client repo (line 84 in that file):
https://github.com/googleapis/google-api-ruby-client/blob/master/lib/google/apis/core/api_command.rb
I replaced this block:
        def decode_response_body(content_type, body)
          return super unless response_representation
          return super if options && options.skip_deserialization
          return super if content_type.nil?
          return nil unless content_type.start_with?(JSON_CONTENT_TYPE)
          instance = response_class.new
          response_representation.new(instance).from_json(body, unwrap: response_class)
          instance
        end

with this block (adding 3 lines to change the body if empty from "" to "{}":
        def decode_response_body(content_type, body)
          return super unless response_representation
          return super if options && options.skip_deserialization
          return super if content_type.nil?
          return nil unless content_type.start_with?(JSON_CONTENT_TYPE)
          instance = response_class.new
          if body.empty?
            body = "{}"
          end
          response_representation.new(instance).from_json(body, unwrap: response_class)
          instance
        end

This fixed the issue for me but I'm not sure if this is the right way to fix it at the moment.
Now for actually fixing the issue, I will send a PR this week in that other code base and link it here so that we can track the progress.
Once the other PR is merged I'll probably have to make a PR for fastlane to update their ruby gem dependencies... If anyone knows how that works please let me know, that will save me some trouble searching, otherwise I'll figure it out :-)

Created the PR in the google-api-ruby-client project:
https://github.com/googleapis/google-api-ruby-client/pull/867
I'll update on the progress here when it moves forward.

My PR on the Google ruby code base hasn't moved yet... I will try and reproduce the issue again next week to see if the problem is still there. With a bit of luck, the Google Play REST API would have fixed that by now.

Tested this again, and the issue is gone!
I haven't checked in details but my guess is that the bug in the Google Play REST API was fixed.
From my perspective it seems we can close this issue, closing my Google ruby code PR now.


add ipcam manually

Hi,
i can use the scripts example for my 3 ipcam onvif, but server.js don't find my ipcam
so is it possible to modify onvif.js or server.js to add ipcm manually (ip, port, user, pass) ?
thank a lot

ok discovery works now with the #28 solution, thanks


ParentDispatcherChangedDisposable.Dispose() thread safety

ParentDispatcherChangedDisposable.Dispose() can throw a NullReferenceException if called twice quickly.
This code ( https://github.com/nventive/Chinook.DynamicMvvm/blob/1d312d1649c1be64324faf7a738c5f6852b50fd8/src/DynamicMvvm.Abstractions/ViewModel/IViewModel.Extensions.Children.cs#L175C18-L175C18 ) is not thread-safe:
			public void Dispose()
			{
				_parentViewModel.DispatcherChanged -= OnParentDispatcherChanged;
				_parentViewModel = null;
				_childViewModel = null;
			}

_parentViewModel should probably be copied to a local variable and null-checked before unsubscribing.
Stack trace (posted as an image, as ($exception).StackTrace was truncated):

Expected Behavior
NullReferenceException is not thrown.
Actual Behavior
NullReferenceException is sometimes thrown.
Steps to Reproduce the Problem
This is a bit difficult to reliably reproduce. It appears to happen when list view's contents are changing quickly, and the user navigates to another page.
Specifications

Version: 1.2.0, also 1.2.1
Platform: Uno WinUI, possibly iOS and Android
Subsystem: Chinook.DynamicMvvm

Fixed in 1.2.2.


How to get ?

How to get genres of TVShow and how to get all names of episodes in particular season.

You'll have to go explore the API. We pretty much one-to-one map the official API docs, found here https://developers.themoviedb.org/3.
Find what you need in there, and then go to our client and find the relevant methods.

You are not helpfull

The info is there, it simply requires some effort on your part. There are examples in the test project and the unit tests if you need code examples

Most of the library can be explored by using Intellisense in Visual Studio for example. Code completion on f.ex. the client will show you all the methods we have, most of them are self-explanatory.
Simply writing client.Tv should show you stuff like GetTvShow.


Unexpected interaction between .default_value() and .required_unless_one()

Hi. Thank you for clap. I'm a complete Rust newbie, and struggling; clap made things a lot easier and I appreciate it!
Rust Version

rustc 1.26.0-nightly (a04b88d19 2018-03-19)

Affected Version of clap

name = "clap"
version = "2.31.2"

Expected Behavior Summary
When a default_value is provided for an Arg and the Arg is required unless another Arg is present, then I think the absence of both should be signalled as  the message:
error: The following required arguments were not provided
Actual Behavior Summary
Currently, if an Arg has a default_value, the required_unless_one() option is ignored, and the default value always provided.
The behaviour also occurs when the multiple_values flag is set.
Steps to Reproduce the issue
Run the code below with no command line parameters. I would expect it to fail, not provide the default.
Sample Code or Link to Sample Code
extern crate clap ;
use self::clap::{Arg, App} ;
fn main() {
    let matches = App::new("mwe")
        .version("0.0.1")
        .arg(Arg::with_name("reverse")
             .short("r")
             .takes_value(false))
        .arg(Arg::with_name("list")
             .takes_value(true)
             .default_value("Breakfast")
             .required_unless_one(&["reverse",]))
        .get_matches() ;
    println!("{:?}",matches)
}

Debug output (lines split to prettify)
D:\Development\Rust\mwe>target\debug\mwe
ArgMatches { args: {"list": MatchedArg { occurs: 0, indices: [1], vals: ["Breakfast"] }},
subcommand: None,
usage: Some("USAGE:\n    mwe [FLAGS] <list>...") }

D:\Development\Rust\mwe>target\debug\mwe -r
ArgMatches { args: {"list": MatchedArg { occurs: 0, indices: [2], vals: ["Breakfast"] },
"reverse": MatchedArg { occurs: 1, indices: [1], vals: [] }},
subcommand: None,
usage: Some("USAGE:\n    mwe [FLAGS] <list>...") }

I'm so sorry. I've just seen the .default_value_if construct. I've closed this issue for now; if need be, I may open it again.

No problems! Feel free to re-open if you need to.


Feature/params

Hey, here is the CancelScheduledValues
(also created an AtomicF32 to use instead of AtomicF64 for param.current_value)

Great work. I only have one remark ☝


Reproducing Paper Results

Hello,
I really appreciate your work and the extensive codebase!
I am trying to reproduce the results from the paper with the dataset from LMDrive.
For that, I fused both LiDAR folders and sampled at 2Hz (used every 5th image).
Anyway, I only get a DS of around 30-50 on the Town05 Long, which is caused by a quite low IS.
With the provided trained model to download from you, I achieve better results, so the error should not be in the benchmarking step.
This is my training script:
GPU_NUM=3
DATASET_ROOT='/beegfs/work/InterFuser/datasets/LMDrive/'
export CUDA_VISIBLE_DEVICES=0,1,3

./distributed_train.sh $GPU_NUM $DATASET_ROOT  --dataset carla --train-towns 1 2 3 6 7 10  --val-towns 4 \
    --train-weathers  0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 --val-weathers 0 8 20 \
    --model interfuser_baseline --sched cosine --epochs 35 --warmup-epochs 5 --lr 0.00025 --batch-size 85  -j 6 --no-prefetcher --eval-metric l1_error \
    --opt adamw --opt-eps 1e-8 --weight-decay 0.05  \
    --scale 0.9 1.1 --saver-decreasing --clip-grad 10 \
    --with-backbone-lr --backbone-lr 0.0001 \
    --multi-view --with-lidar --multi-view-input-size 3 128 128 \
    --experiment interfuser_baseline_2Hz_pretrained_rnd42_papervalues_trainseparated \
    --pretrained

Do you have any idea where this deviation in performance might come from?
Thank you!

@st3lzer
Hello, I may not be able to answer your question, but I have noticed a new problem. In your training script, --multi-view and --with-lidar have no parameters. I noticed that the default parameter in the source code is False, as shown in the figure. If we need to train, do we need to pass the Boolean value True to --multi-view and --with-lidar?

Hello @littleblackzi ,
I think by parsing --multi-view as an argument, it gets automatically triggered to a true value. I tried it e.g. with the --pretrained flag.


Do not make the linter rebuild on every change in master

Rational: the number of merges in opam-repository is rather high and I always end up looking at logs and not seeing the linter failure because it is being rebuilt (btw is there any ways in ocurrent(_web?) to never show when a job is being rebuilt @talex5 ?)

Fair enough, sorry for that. Fixed in https://github.com/ocurrent/opam-repo-ci/commit/5d5ed9ea3b5520c613eb01c9fde2c6285a3fba4a


add relaunch capability #275

I have some Angular experience so I decided to take matters into my own hands. Translations still need to be added. Let me know what you think.
All tests pass and I also ran the linter.

I addressed the few minor issues and force pushed to my branch. Thanks!


What is an Enterprise Application?

Okay, you've explained the difference between an application and an app registration and a service principal.
So, what the heck is an Enterprise Application?

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

ID: 6c12e139-8cb6-dd6d-2e08-89d4f22c7eef
Version Independent ID: 675b5ee9-bfe6-344f-7b39-ca0e2bc18b9b
Content: Apps & service principals in Azure AD - Microsoft Entra
Content Source: articles/active-directory/develop/app-objects-and-service-principals.md
Service: active-directory
Sub-service: develop
GitHub Login: @rwike77
Microsoft Alias: ryanwi

@pabrams
Thanks for your feedback! We will investigate and update as appropriate.

@pabrams
An Enterprise Application is a type of application in Azure Active Directory that is designed to integrate with other applications used by an organization. Enterprise Applications can be pre-integrated with popular SaaS applications, such as Salesforce, Box, and Dropbox, or custom-built applications that are specific to your organization.
Enterprise Applications can be used to provide single sign-on (SSO) to other applications, manage user access to those applications, and provide additional security features, such as multi-factor authentication (MFA) and conditional access policies.
When you add an Enterprise Application to your Azure AD tenant, you can configure it to use SSO with your organization's credentials, manage user access to the application, and view usage and activity reports. You can also customize the branding and user experience of the application to match your organization's standards.
Overall, Enterprise Applications provide a way to simplify access to other applications used by your organization, while also providing additional security and management features.

@yuanshingk So if I want to provide SSO to an application, I have to create an Enterprise Application for the SSO? How do I know which template to use? I could have sworn I enabled SSO before by creating an app registration, not an Enterprise Application.


Unable to boot ApiServiceProvider, configure an API domain or prefix

Then running the vendor:publish command I'm getting the following error returned.
Unable to boot ApiServiceProvider, configure an API domain or prefix.

I did solve this by specifying the API_PREFIX and API_DOMAIN in the environment file. Maybe we should keep default values?

I'll have it not throw the exception under certain circumstances. You do
not need to provide both. Just one or the other.
On Mon, 18 May 2015 16:19 Vincent Klaiber<EMAIL_ADDRESS>wrote:

Then running the vendor:publish command I'm getting the following error
returned.
Unable to boot ApiServiceProvider, configure an API domain or prefix.
I did solve this by specifying the API_PREFIX and API_DOMAIN in the
environment file. Maybe we should keep default values?
—
Reply to this email directly or view it on GitHub
https://github.com/dingo/api/issues/406.

Okay, good. Wouldn't it be better if when the user register the package it wouldn't throw an exception?

It would be but people will try and use it without configuring it and then
I'll get issues asking why it isn't working. Letting someone know it isn't
configured will hopefully get around that. I'll just have to not throw it
when running in the console.
On Mon, 18 May 2015 16:25 Vincent Klaiber<EMAIL_ADDRESS>wrote:

Okay, good. Wouldn't it be better if when the user register the package it
wouldn't throw an exception?
—
Reply to this email directly or view it on GitHub
https://github.com/dingo/api/issues/406#issuecomment-102936309.

Aaah, okay. Then we're on the same page. Misunderstood you. Sorry.

All good. I'll get a fix pushed up soon.
On Mon, 18 May 2015 16:30 Vincent Klaiber<EMAIL_ADDRESS>wrote:

Closed #406 https://github.com/dingo/api/issues/406.
—
Reply to this email directly or view it on GitHub
https://github.com/dingo/api/issues/406#event-307064027.

Awesome!

@vinkla (thumbsup)


Professional README

I need to write a professional readme that includes a description, screenshots, link and usage instructions at a minimum.

I have completed the writing of the professional readme with usage instructions, description, screenshot of the application and a link.


raft: provide protection against unbounded Raft log growth

Introduce a new, optional max_uncommitted_entries configuration. This config limits the max number of uncommitted entries that may be appended to a leader's log. Once this limit is exceeded, proposals will begin to return ProposalDropped errors.
You can refer to refer  https://github.com/etcd-io/etcd/pull/10167
This issue can be closed by:

Modifying the Config to have this new configuration setting.
Modify Raft::handle_append_entries to check the limit. You can return the existing ProposalDropped error.
Adding a test to tests/integration_cases/test_raft.rs similar to the one in the etcd PR.

As always, if you'd like to tackle this, or need any help, please feel free to reach out! We'd love to get you involved.

@utsl42 mentioned they might want to take a crack at this.

@siddontang @Hoverbear I am interested in taking this issue, can you assign this to me?

@Ishiihara Please consider yourself assigned! (We can't assign you an issue on github until you have a merge I think...)
Do you think you could start from #139, or are you planning to start from scratch?

Hi, i made a new PR working on this issue and code is ready for review. Glad to join the community :)


Exec tachikoma update<PHONE_NUMBER>4607

:hamster::hamster::hamster:   Strategy none
Powered by Interval Pull Request as a Service - Tachikoma.io Announcement: 2015-06-28 Updated permissions - Tachikoma.io

Coverage remained the same at ?% when pulling cb7da99d55f65365c536146966516b54b0bc2671 on pazjacket:tachikoma/update-20180320174607 into ddf31327ec9d3097b29bd6c49c1071d946319912 on sanemat:master.

Coverage remained the same at ?% when pulling cb7da99d55f65365c536146966516b54b0bc2671 on pazjacket:tachikoma/update-20180320174607 into ddf31327ec9d3097b29bd6c49c1071d946319912 on sanemat:master.


TagBot trigger issue

This issue is used to trigger TagBot; feel free to unsubscribe.
If you haven't already, you should update your TagBot.yml to include issue comment triggers.
Please see this post on Discourse for instructions and more details.
If you'd like for me to do this for you, comment TagBot fix on this issue.
I'll open a PR within a few hours, please be patient!

Triggering TagBot for merged registry pull request: https://github.com/JuliaRegistries/General/pull/30963

Triggering TagBot for merged registry pull request: https://github.com/JuliaRegistries/General/pull/73526

Triggering TagBot for merged registry pull request: https://github.com/JuliaRegistries/General/pull/75608

Triggering TagBot for merged registry pull request
This extra notification is being sent because I expected a tag to exist by now, but it doesn't.
You may want to check your TagBot configuration to ensure that it's running, and if it is, check the logs to make sure that there are no errors.

Triggering TagBot for merged registry pull request: https://github.com/JuliaRegistries/General/pull/85406

Triggering TagBot for merged registry pull request: https://github.com/JuliaRegistries/General/pull/93443

Triggering TagBot for merged registry pull request: https://github.com/JuliaRegistries/General/pull/114326

Triggering TagBot for merged registry pull request: https://github.com/JuliaRegistries/General/pull/114624


Not outputting methylation calls

Hi,
I have run signalAlign from source and also using the docker option. However, it is only creating the tempFiles_alignment directory. I have checked that bwa is installed in the PATH.
Any suggestions on what is causing this?

@clarepacini
I have the same issue. Did you figure it out?
I will try https://github.com/nanoporetech/tombo which do the same.

@clarepacini @tianrenmao
I also have the same issue.  Have you solved this problem?
Looking forward to your reply！


chore: Satisfy clippy and update org name.

This PR removes satisfies clippy and updates the organization name in LICENSE and README.md

rs branch isn't maintained

@CoffeeSip add log.txt to your global gitignore

rs branch isn't maintained

why not delete or archive it then

I maintain my own package for my nix repository. It’s faster so I use it. Sammy maintains the go (main) branch.
From,
Devin Singh

On Nov 6, 2021, at 7:09 AM, CoffeeSip @.***> wrote:

rs branch isn't maintained
why not delete or archive it then
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub, or unsubscribe.


rsmeter: deprecate single target

Signed-off-by: Zhenchi<EMAIL_ADDRESS>What is changed and how it works?
Close #11755
What's Changed:

Remove single target
Alter tests

Check List
Tests

Unit test
Integration test

Release note
none

/cc @breeswish @crazycs520

/run-test

/run-test

/run-test

Let's hold and merge it for release v5.5. In this way, there is one version for users to switch out.


fix: small edit to id display

Description
Css fixes to the wallet id displays
Motivation and Context
There were some small inconsistencies between the way the id displays in settings and in the wallet
How Has This Been Tested?
Manually

ACK


New installation - unit trouble

Hello and first of all thanks for the integration! Great job on that.
Now, here's my question, my unit doesn't have an indoor temperature sensor (afaik), it's a new install. Just got it done today. The installer now left.
Updated the firmware and both the water heater and space heating report unit state - problem. Is that because there's no internal temperature sensor? Or should I be worried?
The Onecta app doesn't report any faults and the indoor unit doesn't either. All the sensors seem to work.
Is that normal behaviour? TIA! <3

Hi, thank you so much for fast reply,  it was indeed in installer mode. I appreciate your fast reply, thank you so much


Presenting evidence in chapter 5.

There's a point where Arin is supposed to present evidence after he says: "We've already heard evidence that proves Jory cared about those coins, and I've got it right here!" and Arin immediately shows the livestream recording. Is this meant to be this way or are we supposed to present the evidence ourselves? Just wanted to make sure in case the coders forgot about that, although if it just a mechanic that hasn't been implemented yet, that's fine.

Not implemented yet, but evidence does have to be presented by the player, not the script


Firewall Optimization

I don't think the firewall module is receiving rules in the right way for example the current FirewallRulesResource file is accepting this scenario;
Rule id: 918326031	, Switch: 00:00:00:00:00:00:00:01, Priority: 0, Action: ALLOW
Rule id:<PHONE_NUMBER>	, Switch: 00:00:00:00:00:00:00:01, in port: 1, Priority: 0, Action: DENY
With this 2 rules we are accepting and denying the same traffic that comes from port 1 from switch  00:00:00:00:00:00:00:01.
In my opinion this is not correct because there is an overlapping issue.
Rule 918326031 is overlapping Rule id<PHONE_NUMBER>.
We shouldn't accept overlaping rules with the same priority because we can be both accepting and denying the same traffic. It is not clear for the user of this firewall witch rule is match and witch rule is not matched.
If we reject rules this kind of scenarios we can force the user to use different prioritys and avoid overlapping in rules with the same priority. Rules that Overlap other rules should have lower priority ( higher priority value number).

It there a reason you deleted FirewallResourceBase.java? There are some build errors too

there is no reason... i've made a mistake by deleting that file... i've re uploaded it.

@rizard All checks have passed. No errors detected.

@khayatkd this looks much better. I presume you've run some tests to verify it works? It would be great to have a unit test to verify the overlap is detected and the conflicting rule is discarded, but I understand if you don't have the time

As soon as i have the time i'll build a bash script with curl post commands so you can check overlap cenarios working correctly.

@khayatkd it looks good to me otherwise. I was thinking more of a unit test rather than a bash script. I'll go ahead and merge it. Thanks!


Support HTML report

safety version: 1.10.3
Python version: 3.6.8
Operating System: macOS/centos

Description
An HTML report with the finding will be very helpful

Yeah, would be great to support output in html format.

It would be nice to have this feature; probably it will be added in Safety 2.1

@yeisonvargasf what is the status of this? Is someone working on it? I want to contribute to this if there is a possibility. Thanks!

Hi @chowmean, It's in the roadmap, but there are other reports and features with higher priority; we are looking for more integration with other platforms, so the team is putting all the effort into those and other relevant features.
It would be great if you could send a PR for this feature (Thanks!); I'll review it and allow merging it in a quicker way possible.

sure, please assign this to me.

Thanks to @chowmean for the contribution!


[CS] Fixes #2253 : Prefer class::constant over $variable::constant

All checks have passed 🎉 @TomasVotruba it is ready for review.

The rule is missing in symplify-rules.neon again. Could you make sure it's always added?
It's very important, as only then it's run on Symplify code base and we can see if/how it works.

I've added to symplify-rules.neon

Thank you :+1:


sqlite alternative

Is it possible to use an alternative to sqlite for the database? I have access to some very large in memory systems which I'd love to try. The translation from the sqlite should be straightforward, but I wasn't sure if there was code to support the gemini query client.
Daryl

Currently, sqlite is the only database supported. However, we are exploring support for both sqlite and postgresql. The challenge is that much of the code and the database schema assume sqlite. More general database support will take some time.

Thanks just wanted to make sure.
On Sat, Mar 14, 2015 at 6:39 AM, Aaron Quinlan<EMAIL_ADDRESS>wrote:

Currently, sqlite is the only database supported. However, we are
exploring support for both sqlite and postgresql. The challenge is that
much of the code and the database schema assume sqlite. More general
database support will take some time.
—
Reply to this email directly or view it on GitHub
https://github.com/arq5x/gemini/issues/391#issuecomment-80479928.


/joined_members makes implementation specific claims about speed and use cases

https://matrix.org/docs/spec/client_server/r0.5.0#get-matrix-client-r0-rooms-roomid-joined-members
This is very much a nit, but given we are enforcing new proposals not to make such claims in the spec, we shouldn't make such claims in the current spec.

This API is primarily for Application Services and should be faster to respond than /members as it can be implemented more efficiently on the server.

The API shouldn't be described as primarily for app services because it gives the impression it is not useful for clients or bots, which of course it's perfectly fine to use.
The API certainly shouldn't make claims about speed, because it might well be the case that somebody's amazing Rust homeserver can be equally fast for /members, and the fact given here in the spec is based off a the reference implementation's speed issues.

Reading it the other way: the spec is suggesting that the implementation ensure that the endpoint is faster than most because appservices are likely to call it a lot. I'm not convinced that it's making implementation-specific claims, but the wording could be clarified to encourage server implementations to keep the particular endpoint faster than most.


Drag images from another Browser window or Tab.

Hi,
it doesn't work when you drag an image from another tab or window.
is there anyway to make it work on both the analysis and comparison.
I hope there will be a way , i really need this function and i like your script.
Best regards.

I think that's possible, Paste event maybe.  It's not core to the library itself, but I'm happy to review a Pull Request on the demo page code


Change app title

Fixes #121.

Codecov Report

Merging #143 (a741142) into master (c48ab60) will increase coverage by 3.58%.
The diff coverage is n/a.

@@             Coverage Diff              @@
##             master     #143      +/-   ##
============================================
+ Coverage     64.94%   68.52%   +3.58%
- Complexity      536      595      +59
============================================
  Files            99       99
  Lines          1900     1916      +16
  Branches        226      231       +5
============================================
+ Hits           1234     1313      +79
+ Misses          587      535      -52
+ Partials         79       68      -11

Impacted Files
Coverage Δ
Complexity Δ

...dress/model/person/PersonBlacklistedPredicate.java

...u/address/model/person/ModeOfContactPredicate.java

...model/person/AddressContainsKeywordsPredicate.java

...s/model/person/EmailContainsKeywordsPredicate.java

...eedu/address/model/person/ReturnTruePredicate.java

...ss/model/person/NameContainsKeywordsPredicate.java

...del/person/PersonTagContainsKeywordsPredicate.java

...ss/model/person/PhoneContainsNumbersPredicate.java

...rson/predicates/PhoneContainsNumbersPredicate.java
100.00% <0.00%> (ø)
7.00% <0.00%> (?%)

...n/predicates/AddressContainsKeywordsPredicate.java
100.00% <0.00%> (ø)
7.00% <0.00%> (?%)

... and 9 more

Continue to review full report at Codecov.

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


Autoprefixer not working

Any ideas why this is not working in my package.json (using browserify)?
"start": "budo src/main.js:build/script/bundle.js --live --open -- -t [ babelify --presets [ es2015 react ] --plugins [ csjs-postcss --plugins [ autoprefixer ] ] ] -t [ csjs-injectify ] & npm run test:watch"
Everything works fine, including style injection, but the prefixer does not do it's job. A sample csjs file looks like this:
import csjs from 'csjs'
import colors from './colors'

const styles = csjs`
  .normal {
    font-family: 'Roboto', sans-serif;
    line-height: 1.2;
    font-weight: 400;
    font-size: 15px;
    color: ${colors.text};
    filter: grayscale(100%);  // This should be prefixed
  }
`

export default styles

I cannot see from the docs if this is even supposed to be compatible with csjs-injectify... If that is not the case: is there already some combination of plugins that enables me to use csjs with Browserify and autoprefixer?

Try using a .babelrc rather than specifying babel options via command line options. I suspect the problem is the plugins option containing autoprefixer is not being correctly passed to csjs-postcss.

You are right. I just nailed it down to the plugins option not being passed correctly. Thanks for the quick response!
I really hope that your invention gains more traction, because csjs is in my opinion the best, simplest and most balanced implementation of css in js. And I did quite some research ;)


How to convert a Companion into an Entity?

UserCompanion  to User

You can call mapFromCompanion on the table instance (e.g. await users.mapFromCompanion(yourUsreCompanion)).
Note that this can only work when all fields in the companion are set, that method won't make stuff up for you.


Adding aptitude book

Adding link for quantitative book
Top 100 tips
Which will help to ace the first round during interview process.

To add the link for the quantitative book, if you're familiar with Git, please submit a PR. If you're not familiar with Git, provide the link you're specifying, and ensure you've read docs/CONTRIBUTING.md before contributing.

I'll be happy to work on this can you assign me ?

I'll be happy to work on this can you assign me ?

If you have a link to a resource that should be added to the repo, there's no need to wait to be assigned!
For books make sure it's an authorized distribution.
For courses, make sure it's free and not time-limited.


Build broken on ruby/ruby branches

I got build errors on branches of ruby/ruby.

2.4 https://travis-ci.org/ruby/ruby/builds/238065839
2.3 https://travis-ci.org/ruby/ruby/builds/238065845
2.2 https://travis-ci.org/ruby/ruby/builds/238065891

It is caused by CAPI changes of ruby/spec maybe.

Thanks, I'll take a look.

b2e6a3a2bb0dacf4131152ac34310e84cb512923 fixed 2.4, I restarted the build and it's now green.
I'm restarting the 2.3 build to see if it's fixed too.

a34d2a57ebe5f301ce95c7afaa80e1a0cc1a0f32 should fix all cases, I restarted all builds, let's see.

All are fixed!


Dynamic service repo and balances output

Testing keys pushed on this commit are now leaked to the public domain. These keys were for testing purposes ONLY. Do not use any of the keys erroneously pushed here.


FIle Interaction

It would Be Really Nice if the chat Feature has way more interactebility with files,
so for the Reading part it's already somewhat Implemented but not really stable at all, because every time I asked for something in a file it had some issues, and a lot of misinformation,
it would also be Really Nice if you could tell the chat to directly modify the existing code, this would not only be more time efficient for the user but also add a lot to the feeling of working with someone.
idk this is just something I would like to see, but probably not necessary for many people.

it would also be Really Nice if you could tell the chat to directly modify the existing code, this would not only be more time efficient for the user but also add a lot to the feeling of working with someone.

@Fightingpainter Did you try the inline chat feature? Go on a line, select ctrl+I (or cmd+i) and ask question in the context of the current editor


Fixed 2.6.x branch a minor issue like #2595

Fixed 2.6.x branch a minor issue with doConnect not using getConnectTimeout() in NettyClient，like  #2595
@carryxyh

Nice work!
LGTM.


PA2 flatMap

I am struggling to see how I can flatMap the value of the StateM into a new StateM without having any getters.

I tried to have a this.v attribute so can f.apply(this.v) to return the new StateM but I don't know how to implement it for StateM instantiated by a function with their value not yet defined. Any hints on how to do this?

StateM cannot have attributes. Key to flatMap is thinking in terms of higher order function, aka using the second constructor with the function for StateM.
Actually I dont know if this helps, but trying to do with null values first before thinking of how to substitute the null values might actually help (this was how I figured what flatMap should be)

You don't have to store any values within StateM as it is handled in the super class AbstractStateM. One unique feature of functional programming is that you can store data values within functions. The value T is stored within the supplier function and the state value is stored based on the initial value given.
jshell> StateM.<String, Integer>unit("init").accept(0)
$.. ==> (init, 0)

The unit allows you to create a StateM object with the input T value, but the state value of it is given by what you pass into accept. Here, the value is "init" but the state value is from the accept method of 0. If you want to modify the state value, you can only do so via get and put methods. This is also where flatMap comes into the picture as you have to combine every change with it.

First, we need to retrieve the current state value, so you need to call get which replaces the T value with the state value s.
From there, you can access the state value s using the put method via the lambda function's input variable, which replaces the T value with Nothing and updates the state value s accordingly.

// Updating S value:
StateM.<Integer>get().flatMap(currentState -> StateM.<Integer>put(<<Update currentState  value here>>)).accept(0)

Here, when calling StateM.<Integer>get() it returns a StateM<Integer, Integer> with a value of (0,0) using the value from accept. The currentState variable is actually the first value (T) of the return value of get. In order to combine state changes and creation of T value, you simply flatMap again like this:
// Updating S value then updating the T value:
StateM.<Integer>get().flatMap(currentState -> StateM.<Integer>put(<<Update currentState value here>>))
    .flatMap(nothing -> StateM.<Integer, Integer>unit(<<NEW integer/T value>>)

From these examples, hopefully you can see that the flatMap needs to get the first T value of the pair stored in AbstractStateM. You can do so with the accept method which returns the Pair<T,S>. Next, apply the mapper function with that T value, this will return the a new StateM<R,S>. As mentioned earlier, you realise that state values are NOT directly updated with flatMap but rather with get and put but still via the T value. Hence, within the flatMap method, you just have to retain the original state from the Pair<T,S>. This is the high level idea of the flatMap implementation, you will have to figure out the exact implementation of getting the types to match. Hope this helps.

finals is over you can close this issue


Batch Normalization typecheck

Add typecheck to BatchNormalization

Related to #123

I wrote some comments.

LGTM :+1:

Thank you!


fcitx5 unable to work in tor-browser in xfce

Describe the bug
fcitx5 unable to work in tor-browser in xfce
Fcitx5 is an [nput method framework with a lightweight core, offering additional language support via addons, like Japanese, Korean and Chinese. Without it, we cannot type Japanese, Korean, and Chinese.
However, fcitx5 is working fine with other browser like firefox
Is the nixpkgs version or tor-borwser implemented some kind of sandbox so that fcitx5 is not working with it?
Expected behavior
Japanese, Korean or Chinese can be typed with fcitx5 in tor-browser

Metadata
Please run nix-shell -p nix-info --run "nix-info -m" and paste the result.
[user@system:~]$ nix-shell -p nix-info --run "nix-info -m"
 - system: `"x86_64-linux"`
 - host os: `Linux 6.1.61-hardened1, NixOS, 23.11 (Tapir), 23.11.20231202.933d7dc`
 - multi-user?: `no`
 - sandbox: `yes`
 - version: `nix-env (Nix) 2.18.1`
 - channels(root): `"home-manager-23.11.tar.gz, nixos-23.11, nixos-unstable"`
 - nixpkgs: `/nix/var/nix/profiles/per-user/root/channels/nixos`

Add a :+1: reaction to issues you find important.

I'm able to reproduce this issue on nixos-unstable, but only when tor-browser is running on xwayland, by setting MOZ_ENABLE_WAYLAND=1 to force it running on wayland, the issue goes away.

Good to see it is working on wayland, but I am using xfce....
Sorry I didn't mention that.

@amalgame21 can you check if you also get this issue with mullvad-browser?
While both browsers use the same code-base the packages currently are a bit different.
tor-browser uses a bit of a more isolating wrapper script.
I've proposed to change this here: https://github.com/NixOS/nixpkgs/pull/260871

I thinks the issue is due to the wrapper wiping GTK_IM_MODULE and other input method related environment variables.

I think so, too. The question is do we want to figure out which environment variables we need to pass-through, and potentially do this for other features that might currently be limited, or do we just want to remove this complex wrapper and just allow Tor Browser to see all environment variables?
One other "issue" that is probably related to this is that, at least on Gnome, I see the default Gnome title bar in Tor Browser, while in Mullvad Browser it uses the more compact combined title bar that directly contains all tabs.

@amalgame21 can you check if you also get this issue with mullvad-browser?
While both browsers use the same code-base the packages in nixpkgs currently are a bit different. tor-browser uses a bit of a more isolating wrapper script.
I've proposed to change this here: #260871

I can use fcitx5 in mullvad-browser without any issue.

I think there should be 3 environmental variables:
https://github.com/NixOS/nixpkgs/blob/d996452779de10baca8631d95e6d689be28c317d/nixos/modules/i18n/input-method/fcitx5.nix#L121-L123
Also reference in archwiki:
https://wiki.archlinux.org/title/Fcitx#Set_environment_variables_for_IM_modules

I think these cosmetic issues can actually be seen as a feature since it could, in theory, reduce some fingerprints? But it's up to upstream to fix these loose ends, no reason to ask users to sanitize their environment.

Upstream Tor Browser doesn't do this, though, it could just as well go in the other direction and make users' fingerprints more unique. At least compared to other non-nixpkgs Linux users. Anyway, I don't think it's Nixpkgs's responsibility to add another layer of protection over upstream. And we don't have the same expertise to truly judge the effect our changes have (I'm speaking for all active tor-browser package maintainers, I think).

I can confirm that "ONLY" NIX_PROFILES is required for fcitx5 to work properly.
GTK_IM_MODULE and XMODIFIERS are not required in my case.


rustup; implement simd_and/or

I had to disable the integer division tests since they now require simd_eq, which seems non-trivial to implement.
Cc https://github.com/rust-lang/rust/issues/93619

@bors r+

:pushpin: Commit 6b8baee33978eaa526fec909f2de24754089acae has been approved by RalfJung

:sunny: Test successful - checks-actions
Approved by: RalfJung
Pushing a284d4f551ee12f7761128998efccdabebc4922f to master...


Build time external adaptor inclusion.

Hi, can I request a method of adding external adaptors, currently there doesn't seem to be a nice way of doing this with out adding my code to the contrib adaptors tree and updating the manifest.
Or by using the environment variable, I'd rather not have to globally add a new env var just to support this, I suspect that overrides the contribs/adaptors anyway ?.
I was thinking of some build time flag/config that can bake in an additional path for private adaptors.
cheers

@alatdneg out of curiosity, would this solution work for you?  It isn't what you're asking for exactly, but depending on if your studio uses pip or not, it might work:
https://github.com/PixarAnimationStudios/OpenTimelineIO/wiki/How-to-Write-an-OpenTimelineIO-Adapter#packaging-and-sharing-custom-adapters

There's currently three ways to add adapters:

Use OTIO_PLUGIN_MANIFEST_PATH with a colon-separated list of places to search (typically, yours + contrib + builtin)
Modify contrib_adapters.plugin_manifest.json
Use the pip method that @ssteinbach linked above.

In our internal deployments, we use all three - mostly the OTIO_PLUGIN_MANIFEST_PATH, and the pip method. However, in our main deployment, we case wrap opentimelineio in another module pixar.opentimelineio that does the required setup and then from opentimelineio import * to pull in all the symbols. That gives us the ability to add adapters, media_linker and a couple of other convenience methods to the module.
If none of those work for you, can you suggest something specific that would meet your needs? I'm not clear on the constraints you have.

@alatdneg Did we manage to get you a suitable solution for this?
Since we last checked in, this repo was created to make the pip method of making an adapter as a pip-installable plugin - that may also be helpful.

We believe this was resolved some time ago. If not, please re-open.


Add documentation for upgradeBytes

Documentation for https://github.com/ava-labs/subnet-evm/pull/148/files
Scheduled for release w/ subnet-evm 0.2.8

LGTM


interfaces: optionally support "auto_linklocal" in bridges

I am using OPNsense has a transparent filtering bridge, where WAN and LAN are bridged.
The new bridge interface works successfully for IPv4, but not for IPv6 as it does not receive a link local address, although I tried the DHCPv6 and SLAAC setting in the webgui for IPv6 interface configuration.
My main router's DHCPv6 server is configured to provide IA_PD and IA_ND.
Any idea how to fix this?

After doing some research I have found this pfSense issue.
The FreeBSD man page (man 4 if_bridge) says:
IPV6 SUPPORT
     if_bridge supports	the AF_INET6 address family on bridge interfaces.  The
     following rc.conf(5) variable configures an IPv6 link-local address on
     bridge0 interface:

	   ifconfig_bridge0_ipv6="up"

     or	in a more explicit manner:

	   ifconfig_bridge0_ipv6="inet6	auto_linklocal"

     However, the AF_INET6 address family has a	concept	of scope zone.	Bridg-
     ing multiple interfaces change the	zone configuration because multiple
     links are merged to each other and	form a new single link while the mem-
     ber interfaces still work individually.  This means each member interface
     still has a separate link-local scope zone	and the	if_bridge interface
     has another single, aggregated link-local scope zone at the same time.
     This situation is clearly against the description "zones of the same
     scope cannot overlap" in Section 5, RFC 4007.  Although it	works in most
     cases, it can cause some conterintuitive or undesirable behavior in some
     edge cases	when both of the if_bridge interface and one of	the member
     interface have an IPv6 address and	applications use both of them.

     To	prevent	this situation,	if_bridge checks whether a link-local scoped
     IPv6 address is configured	on a member interface to be added and the
     if_bridge interface.  When	the if_bridge interface	has IPv6 addresses,
     IPv6 addresses on the member interface will be automatically removed
     before the	interface is added.

     This behavior can be disabled by setting sysctl(8)	variable
     net.link.bridge.allow_llz_overlap to 1.

     Note that ACCEPT_RTADV and	AUTO_LINKLOCAL interface flag are not enabled
     by	default	on if_bridge interface even when net.inet6.ip6.accept_rtadv
     and/or net.inet6.ip6.auto_linklocal is set	to 1.

I have manually setup a link local IPv6 address on the bridge interface which seems to work currently. The bridge interface receives an IPv6 address from the main router.
So it seems that OPNsense needs some enhancement to take care of this.

I found this Mail in Internet:
https://lists.freebsd.org/pipermail/freebsd-net/2009-April/021675.html
it looks like the problem with the bridge Interface ist known about 10 years ago!
Can you tell me please how I can enter the IPv6 link-local manually for the Bridge Interface on OPNsense at the console?
I'm looking for a solution since 3 months but no chance :-(

Due to a private request: tickets are closed after a few months of inactivity to avoid stale work queues. I’ll reopen for now, but we need a continuation of discussion.
For the time being I’m absolutely unsure about the state of the described issue in FreeBSD as it relates to OPNsense 11.1 now in 18.7, 11.2 when we release 19.1).

Unfortunately, I am not using OPNsense anymore as it was chosen to use another firewall solution.
So I am not following this topic anymore, sorry!

Sorry this took so long. From the amount of reports and the little work required here but still nobody doing the integration work in 3 years one could argue that the configuration is rather exotic and not relevant most of the time. FWIW, now you can optionally enable link-local addresses in each bridge configuration.

thank you... I will try it soon...
Sent from my iPhone

On 25. Apr 2019, at 09:41, Franco Fichtner<EMAIL_ADDRESS>wrote:
Sorry this took so long. From the amount of reports and the little work required here but still nobody doing the integration work in 3 years one could argue that the configuration is rather exotic and not relevant most of the time. FWIW, now you can optionally enable link-local addresses in each bridge configuration.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub, or mute the thread.


SWARM-1157 - Embedded HTTPS certificate does not work with the Maven plugin

[ ] Have you followed the guidelines in our Contributing document?
[ ] Have you created a JIRA and used it in the commit message?
[ ] Have you checked to ensure there aren't other open Pull Requests for the same issue?
[ ] Have you built the project locally prior to submission with mvn clean install?

Can one of the admins verify this patch?

ok to test

Can one of the admins verify this patch?


Proposal: Scheduler

This proposal is an unfinished draft (RFC) of possible implementation of internal api scheduler. The purpose of this PR is to portray main features of the scheduler and introduce the overall scheduler solution. If accepted the implementation shall be finished.

Will not be merged...
Some code will be reused in planned async jobs feature


"Păltinoasa" and "Capu Codrului" are listed in the drop-down menu.

Description:
The villages are listed in the drop-down menu alongside its corresponding county and commune, according to the law
Preconditions:
The website (https://peviitor-ro.github.io/ui.orase/) is up and runing. After every step delete the text you typed from the search bar.

Step 1
Write in the search bar "Păltinoasa".

Expected results
The location is listed in the drop-down menu as "Sat Păltinoasa SUCEAVA (Păltinoasa)".

Step 2
Write in the search bar "Capu Codrului".

Expected results
The location is listed in the drop-down menu as "Sat Capu Codrului SUCEAVA (Păltinoasa)".


Minimization of  Inline Styles in the Project

Is your feature request related to a problem? Please describe.
Our project heavily relies on inline styles for web components' presentation.
Describe the solution you'd like
Transition away from inline styles and adopt CSS classes for a cleaner, more maintainable, and performant codebase.

attempting as my first open source contribution

@RamchandraWarang9822 it might make sense to sync with @bekossy in Slack to see how you could collaborate on this.

Hey @bekossy,
I want to start my first contribution to open source with this issue, would be a pleasure to collaborate with you on this issue.
Can we connect on Slack and how ?

Hello @RamchandraWarang9822 ,
Thank you for reaching out and your interest in contributing to our open-source project.
You're more than welcome to join our Slack channel. You can find the invite link in the project's README file and I'll be available on Slack to assist you.

fixed in #434


Make it possible to set the working directory to enable relative requires

I would like to be able to start Mancy from my Node project directory and be able to require files in it (require("./my-project-file.js");). It could either pick up the directory when starting or accept a setting / command line option to set the working directory.
That way, it would be much easier to experiment with an existing project.
(Currently my workaround is to do const root= "/absolute/path/to/project/dir/"; require(root + "my-project-file.js"))
Thank you!

I would be willing to help implement it if you could point me in the right direction (where to look / add it)

@jakubholynet I'll check and let you know.  I forgot the reason why I set this

Thanks!
Good messages in commits / comments FTW :)
tir. 21. jun. 2016 kl. 16.48 skrev Prince John Wesley <
<EMAIL_ADDRESS>
@jakubholynet https://github.com/jakubholynet I'll check and let you
know. I forgot the reason why I set this
https://github.com/princejwesley/Mancy/blob/master/src/main/index.js#L83
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/princejwesley/Mancy/issues/131#issuecomment-227463560,
or mute the thread
https://github.com/notifications/unsubscribe/AAmJPiyKgGhUQy3pPyyPVRha0IxzQbz8ks5qN_mfgaJpZM4IzC5Z
.

Try this fix 😄 Its a hack to make it work. While loading relative path, parent module file is set as index.html. Let me see whether there exists a better fix for this problem.
Unfortunately This particular fix is tricky, Its not easy to show direction. Very sorry!!!


Wanted: Mouse-over should show series label in 'Merit order hourly supply' chart

The 'Merit order hourly supply' chart is awesome in every way, but a little hard to read sometimes, due to the fact that it has so many series in it. The color differences are too subtle for me to see whether I am looking at 'fuel cells' or 'storage in batteries' for example.
This could be solved by having a pop-up show the series label when I hover my mouse pointer over the series in the chart.

notifying @ChaelKruip @dennisschoenmakers @jorisberkhout

I totally agree. I have to say that a mouseover might work for 'big' area's, but for the smaller one's (like "Windmolens aan kust") this will cause a problem. What we could also do is something similar to another awesome application I know of: ETMoses. Use a hover line to show the values?

:+1: It would be already be a big plus if it would only work for
big/visible areas.

Use a hover line to show the values?

I am not sure values are interesting for this chart: in and of themselves they say very little. Only in the context of the other series does it all mean something. I would say series label is enough.

As discussed with @grdw, it should be fairly easy to implement a mouse-over in this chart. We feel that this will make the merit order supply chart a lot more comprehensible.

Good to know!

Minor preview

There's one issue though but it's a bit minor. But when you move your mouse really slowly from path to path, Qtip (the rapper tooltip library we use) is having a bit of a problem detecting that there was movement. As shown here (wait for it):

Nice. The issue also exists for charts like the 'Final demand mekko', so this is a known issue.


RDKTV-19524 : Cleanup Headers for FactoryIF, Protect, EMP and Plugin …

…cleanup

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.

Made changes under new pull request


Animated button using js

Everything seems fine this time, Merging under issue #1

Sir , if you like please merge.

Thank you
On Fri, Oct 28, 2022 at 12:56 PM Arjun @.***> wrote:

Everything seems fine this time, Merging under issue #1
https://github.com/Spyware007/Animating-Buttons/issues/1
—
Reply to this email directly, view it on GitHub
https://github.com/Spyware007/Animating-Buttons/pull/213#issuecomment-1294578483,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AVYVZUNJDVDU3MLNEEPJPFLWFN53PANCNFSM6AAAAAARQY2AW4
.
You are receiving this because you authored the thread.Message ID:
@.***>


[API] Tensor labels by strings; contraction based on labels

I still recommend to use strings for tensors' labels, and make an option to use the labels to do the contraction. The design is to specify which label in tensor A is to be contracted with which label in tensor B. The idea is to not remember the order of indices when doing a contraction. The reasons for this suggestion are

Labels are easier to read and remember than the order of the indices. When I worked with Uli's code, which uses order, I needed to constantly ask the developer the correct order in every 1 month.
The order might change after a contraction, but the labels remain the same.
The readability is important when building a big program and work with other people's code.

Basically the situation I am thinking is that, imaging you are using an algorithm that generate an MPS for you, and you will use this MPS to do time evolution. It is difficult to trace the order of the indices by reading the code, but it could be more readable if |all the tensors have index labels like "left", "right", "top".
This design basically follows ITensor's logic that the users should not worry about the order of the indices, but with less restriction and nice flexibility. For example in ITensor it is annoying to do a simple contraction of two same tensors like
--A--A--
which we can do it easily.

All the labels are now changed to string after v0.9


Add new privacy policy link for archive 88 site

Description
New GDPR privacy policy link for archive 88 site.
Benefits
Users can access the updated privacy policy.
Possible Drawbacks
We may lose users if they don't accept the privacy policy.
Testing
Tested successfully in sandbox.

Good.


Updating the user role/level after creating the user

Is it possible to change the role of the user from user to admin or super after creating the user

It's already there, sorry for not noticing


Cancel task doesn't work in UI

After cancel task you should go back to the task list page

cannot repro


Zoom controls not working dev mode

What
If you run the site locally in dev mode and visit an item page (e.g. http://localhost:3001/works/vh8erxee/items), click the zoom button the try to use the zoom or rotate controls, in the zoomed view, they don't work.
It's not an issue on live because if you build the project first, then run it, they do work.
However, we should get to the bottom of it because it will make working on the controls difficult and may be a symptom of something that we need to fix.

Fixed by #10635 which prevented multiple openseadragon-container elements being rendered on the page in dev.


How to set async option for individual method calls?

In the docs, it's possible to set async to true or false in the setSchema method:
books: {hasMany: {type: 'book', options: {async: true}}}

But how can I set it to false for individual method calls like find?
For example:
// In some cases I want to use async: false
db.rel.find('books', {async: false});

// and in other cases I want to use async: true
db.rel.find('books', {async: true});

That isn't currently supported, but I would love to add it. Pull requests welcome! :)

@nolanlawson Thanks for the response. I'll see what I can do. Happy new year! :)

Ditto!

Oups, sorry for the noise ...

Has this issue been resolved in the meantime?

In progress : https://github.com/nolanlawson/relational-pouch/pull/53


Add a note component

It will need to support dark mode.

This should probably be a macro or a shortcode (whatever we did on web.dev). Maybe the old banner should also be one.


Remove periods from list

Why:
Remove periods from list as list items are not full sentences.
Closes: #33902

What's being changed (if available, include any code snippets, screenshots, or gifs):

Remove period from list items on lines 76-80

Check off the following:

[x] I have reviewed my changes in staging, available via the View deployment link in this PR's timeline (this link will be available after opening the PR).
[x] For content changes, I have completed the self-review checklist.

@SeanAverS Thanks so much for opening a PR with this fix! I'll update the branch and get this merged once tests are passing 🍏


Passcode prompt disappears occasionally when confirming txns.

What happened: When performing any txn such as dex swaps or adding liquidity the passcode prompt will dissappear before being able to key in passcode and will be stuck on the screen(see screenshot attached). Even after pressing the back button and returning to the txn page it remains in that state. The only workaround for now is killing the app and restarting the entire txn which most of the times is a minor hassle but during periods of price volatility can be a bigger issue.
OS: Android 11
Phone model : Samsung note 20 ultra
What you expected to happen: Be able to reopen the passcode screen without having to completely kill app and restart entire txn.
How to reproduce it (as minimally and precisely as possible): It happens randomly and I have not been able to replicate it by force. I have noticed it happens more frequently when trying to perform multiple txns consecutively like utxo swap>dex swap> add liquidity
(Screenshot of interface when issue happens)

Anything else we need to know?: I initially thought it might be a memory issue but even using the app standalone while every other app is killed the issue still happens.

Will be closing this in favor of #2175


Mobile App [Radzima UIKit] Images on Object page aren't loaded

Tested area:
iOS 14.4.2 (iPhone 7)
Steps to reproduce:

Run the App
Go to Object page

Expected result:
The information and images are loaded and visible
Actual result
Some images are not loaded

@KaterinaMal please recheck in the latest build


Create Github Action that deploys the hello-strongbox-npm into the Github Package Registry

Refs strongbox/strongbox#1927

Key thing here is that name field in the package.json name field should should match the GitHub repository name.
From docs:

By default, GitHub Packages publishes a package in the GitHub repository you specify in the name field of the package.json file. For example, you would publish a package named @my-org/test to the my-org/test GitHub repository. For more information, see npm-scope in the npm documentation.

Example commit: https://github.com/j4ckofalltrades/strongbox-examples/commit/4279e0adc5404fdbc34b740fac21944f83664398
Example package: https://github.com/j4ckofalltrades/strongbox-examples/packages/468529

@carlspring Requesting review.

Updated file name to gh-registry.yml.

Works like a charm! Great job! :)
Just one question to clarify things for myself. Do I need to set GH_TOKEN secret or GH Actions picks it up on it's own?
I did add one, but wanted to check if you also added it.

Excellent job, thank you! :)

@steve-todorov

Do I need to set GH_TOKEN secret or GH Actions picks it up on it's own? I did add one, but wanted to check if you also added it.

GitHub provides it automatically for you.
https://docs.github.com/en/free-pro-team@latest/actions/reference/authentication-in-a-workflow

Cool! Thanks for the clarification! :)


sworkstyle.log is empty

I was running an app that was showing the default icon so I went and looked but the log was empty.  It was working a while back but I don't know when it stopped.
I run it on startup with:
sworkstyle &> /tmp/sworkstyle.log
I even tried just running :
sworkstyle
from terminal and it didn't output any warns to the console.
I also tried:
sworkstyle --log-level debug
and still didn't get any output.
I double checked my version and I am runnign 1.2.2-1
yay -S sworkstyle
warning: sworkstyle-1.2.2-1 is up to date -- reinstalling

All the program I have setup work fine and get the right icons but I would like to be able to get new ones setup.
Any idea how to fix this would be great.

I just downgraded to V1.2.1-1 and the logs work in that version just not the new one.

I have the same issue.

With release 1.2.2, simple_logger was replace with env_logger, but the documentation and help message haven't been updated to reflect this.
Instead of passing a --log-level argument, the log level now needs to be set by specifying the RUST_LOG environment variable.

@EvyBongers Yes you're completely right. Not sure how I've missed this. Pr's are welcome :)


Undefined behaviour on 32-bit platforms

https://github.com/haskell-unordered-containers/unordered-containers/blob/63ec59ae20162b9b17aebc0c15000ce38d45b456/Data/HashMap/Internal.hs#L2258-L2261
The docs for unsafeShiftL say:

Shift the argument left by the specified number of bits.  The
result is undefined for negative shift amounts and shift amounts
greater or equal to the 'bitSize'.

With maxChildren being 32 since https://github.com/haskell-unordered-containers/unordered-containers/pull/317, the value of fullNodeMask seems to be subject to UB on 32-bit platforms.

I haven't found any other UB related to unsafeShift{L,R}.
For index, we can document the bounds on the Shift argument though.
https://github.com/haskell-unordered-containers/unordered-containers/blob/63ec59ae20162b9b17aebc0c15000ce38d45b456/Data/HashMap/Internal.hs#L2252-L2256

Do things work out if we manually set the value to -1, or do other bitwise operations go screwy for other reasons?

I think some operations expect the "empty bitmap" to be 0, for example the loop in unionArrayBy.
To fix this issue, I'd try using shiftL instead of unsafeShiftL.


Query result.loading is always false when used in statefulwidget

When Query is inside a statefulwidget and if the statefulwidget is re-rendered due to change of state in its parent stateful widget, result.loading is always false even when new query is being fired to take account of state change in parent widget that propagates down to the child widget.
I will try to provide a minimal working example ASAP this week. I can't do it right now because I've got too much work to do. However, I think it will be quite easy to reproduce based on above explanation.

Can you try the better version, I think this issue was resolved sometime back.

@mainawycliffe I was using 2.1.0 and now switched to 2.1.0-beta.2 to test but result.loading is always false. Anyway it's besides the point but what have you done to the library? It's got considerably faster after upgrading. (from 2.1.0 to 2.1.0-beta.2)


Stops validator if exception occurs

Tracked experiment https://wandb.ai/opentensor-dev/alpha-validators/runs/gyf5gjxe

The sys.exit() was not working, it was exiting the background thread but the main thread continued to run. After some tries with different solutions, I found that the simplest one would be to leverage the property should_exit of the validator itself since this variable is scoped within the background thread.

I also added a quick fix for the defined task_p for this release


API error with limit=0

https://clc.diversity.apache.org/api/details.json?project=www-site.git&limit=0 gives
API error occurred:
Traceback (most recent call last):
File "main.py", line 130, in handle_request
output = await self.handlers[handler].exec(self, session, indata)
File "/x1/clc/server/endpoints/details.py", line 103, in process
yml = yml[:limit]
TypeError: 'NoneType' object is not subscriptable

The website is still crashing

As does the Demo site:
https://clcdemo.net/api/details.json?project=incubator-ponymail-foal.git&limit=0


Add participant pre-interview to ADIDS

Having a meeting with each participant to evaluate interests and level of expertise to get them warmed up and involved in the agenda from the outset. (This is obviously contingent on the time for preparation and the number of participants).

And possibly a per-training questionnaire for when time is of the esscence


Arduino sketch should be in a directory

Hello,
Each Arduino sketch should be in a directory
for example:
https://github.com/itead/ITEADLIB_Arduino_Nextion/blob/master/examples/CompButton/CompButton_v0_32.ino
should be moved to
https://github.com/itead/ITEADLIB_Arduino_Nextion/blob/master/examples/CompButton/CompButton_v0_32/CompButton_v0_32.ino
Kind regards

I think @scls19fr raises a good point, but I would suggest the sketch files be renamed rather than the folders. Tracking the version number via the filename seems silly to me.
The current sketch file/folder name mismatch causes those sketches to not appear under the File > Examples > ITEADLIB_Arduino_Nextion menu. If one on of the mismatched sketches is opened directly, the Arduino IDE displays a dialog:

The file "SKETCHNAME.ino" needs to be inside a sketch folder named "SKETCHNAME".
Create this folder, move the file, and continue?

If you click "OK", the Arduino IDE will take the correct action, but this is an unnecessary extra step which will cause confusion for beginners.
If the suggested change is agreeable, I'm happy to submit a pull request for it.


Add a kickstart template

This PR will only works once merged into master.
To test however, you can run locally:
 kickstart .

After you answered all the questions, you will find your new file under: {{category}}/{{name}}.toml

Awesome ! Thank you so much for this.
The field for categories is categories.

The field for categories is categories.

Are you suggesting a change? Not sure what you mean :)

@chevdor Yes, sorry if I wasn't clear: category should be categories. thx !

I still don't get it sorry. If you mean that we can have several categories, since I am currently using THE category as folder name, a simple s/category/categories/ will not work.

Or do you want an additiionnal categories field in addition to category ?

The job that's importing the files from this repo will take the top-level folder name as category, plus, if there is a categories field defined (which is an array of strings), the content of that field will be merged with the "folder-name-as-category". So the category field will not be recognized, it should be name categories. Hope that makes sense.

Thx !

I find the process rather weird but I think I got what you expect and added it in the latest commit.
NOTE: If the user provides (note the extra spaces) aa, bb,cc ,dd it will be added as ["aa", " bb", "cc ", "dd"]

We can also probably cleanup in the template but that means adding an extra loop (there is a map function that could have been helpful but it does not work in that case)... possible if that really happends often.


Synchronous training scheme for federated training

The client now goes through the following training process (during model.fit):

Connect to the server for a given task. Fetch the corresponding model.
Wait to get selected by the server then start the next training round. Selection only occurs after enough clients asked to get selected. This step ensures we don't start training alone and ditches AFK clients. See this as an activity ping from client to server.
Train locally until the end of the round. A round is made of several epochs. As of now, all these parameters are provided in the task's json.
Synchronize on round ends. Synchronizing means sending our local weights to the server, then waiting for the server to gather enough local weights to perform aggregation on its side. Once this has been done, we can fetch the aggregated weights and update our local model. This step ensures the model we get from the server was aggregated upon enough contributions.
Go to 2.

And server-side:

Provide an API endpoint for selection status.
Provide an API endpoint for aggregation status.
Once enough weights were received from clients, override the task's served model's weights served. This is the aggregation step.
Ensure we avoid any weird states for clients, or process API requests unwanted at reception time.

Many more small changes were made to further improve server code readability and modularity.
Note: This is a basic scheme serving as a baseline for improvement, as the one currently in production makes no sense. For instance, @giordano-lucas and I will be looking into asynchronous training soon enough.

I made this PR with the wrong Github account... See #173


Add support to set/change log retention period

Issue #, if available:
Description of changes:
This change adds the support to set/change the retention period for log-groups. By default, when log group is created, log retention period is set to 'never expire'. So, it is necessary to allow to change it.
By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

/ok-to-test

@nnbu can we change the service link in metadata.yaml to https://docs.aws.amazon.com/cloudwatch/ ? we can merge right away

@nnbu can we change the service link in metadata.yaml to https://docs.aws.amazon.com/cloudwatch/ ? we can merge right away

Thank you @a-hilaly . I made the change. Tests are passing now. Should I create a release 0.0.1 in next PR?

Should I create a release 0.0.1 in next PR?

Yes please


various updates for kafka resources

LGTM. While at it, could you also take a look at @mimaison's PR #32 and add this one too? Thx!

The book is in there my friend. I didn't forget 😀

Awesome, thx!

Message ID: <a-great-day-out-with/a-great-day-out-with.github.
@.***>


Make it easy to write parquet to object_store -- Implement AsyncFileWriter for a type that implements obj_store::MultipartUpload for AsyncArrowWriter

Is your feature request related to a problem or challenge? Please describe what you are trying to do.

Recently I wanted to stream data to Object Store using the MultipartUpload via AsyncArrowWriter to create files asynchronously and streamed to Object Store. However, I had to manually create a type to do this as there is no obj_store type or parquet type that implements AsyncFileWriter
Describe the solution you'd like

A type that implements MultipartUpload or wraps the future from put_multipart_opts and also implements AsyncFileWriter for usage in AsyncArrowWriter
Describe alternatives you've considered

I can easily maintain this wrapper myself, but I figured I'm not the only one with this issue. There aren't really any alternatives besides not implementing this that I can think of.
Additional context

The code I have currently looks like this. I'm sure there would be more specific changes for the parquet crate, but hopefully this is enough to show that it's a fairly easy add.
struct AsyncMultiPart {
    multi_part: Box<dyn MultipartUpload>,
}

impl AsyncMultiPart {
    fn new(multi_part: Box<dyn MultipartUpload>) -> Self {
        Self { multi_part }
    }
}

struct AsyncMultiPartWrite {
    payload: Pin<Box<dyn Future<Output = Result<(), object_store::Error>> + Send + 'static>>,
}

impl Future for AsyncMultiPartWrite {
    type Output = parquet::errors::Result<()>;

    fn poll(mut self: Pin<&mut Self>, cx: &mut Context<'_>) -> Poll<Self::Output> {
        match self.payload.as_mut().poll(cx) {
            Poll::Pending => Poll::Pending,
            Poll::Ready(Ok(())) => Poll::Ready(Ok(())),
            Poll::Ready(Err(err)) => {
                Poll::Ready(Err(parquet::errors::ParquetError::General(err.to_string())))
            }
        }
    }
}

struct AsyncMultiPartComplete<'complete> {
    complete:
        Pin<Box<dyn Future<Output = Result<PutResult, object_store::Error>> + Send + 'complete>>,
}

impl Future for AsyncMultiPartComplete<'_> {
    type Output = parquet::errors::Result<()>;

    fn poll(mut self: Pin<&mut Self>, cx: &mut Context<'_>) -> Poll<Self::Output> {
        match self.complete.as_mut().poll(cx) {
            Poll::Pending => Poll::Pending,
            Poll::Ready(Ok(_)) => Poll::Ready(Ok(())),
            Poll::Ready(Err(err)) => {
                Poll::Ready(Err(parquet::errors::ParquetError::General(err.to_string())))
            }
        }
    }
}

impl AsyncFileWriter for AsyncMultiPart {
    fn write(&mut self, bs: Bytes) -> BoxFuture<'_, parquet::errors::Result<()>> {
        Box::pin(AsyncMultiPartWrite {
            payload: self.multi_part.put_part(PutPayload::from_bytes(bs)),
        })
    }

    fn complete(&mut self) -> BoxFuture<'_, parquet::errors::Result<()>> {
        Box::pin(AsyncMultiPartComplete {
            complete: self.multi_part.complete(),
        })
    }
}

I believe this is a duplicate of https://github.com/apache/arrow-rs/issues/5766


Sending Data message with FCM not working

Hi contributors, firstly thank you for your great package!
I have an issue regarding the "data" message format of FCM.
So following example in the doc, I send the data message only format (the only difference is that I send from a queryset instead of actual device):
# ==== Documentation ====
# Send a data message only
fcm_device.send_message(None, extra={"other": "content", "misc": "data"})

# ==== My code ====
devices.send_message(None, extra=data)

However, on my FCM console's report, it shows only Notification type and Data type is empty. The current version I am using is 1.6.1, which is supposed to be the latest as well.
Not sure if anyone encountered the same issue and how to solve this. If it is really not working, then I believe it is a bug.

okay after digging a bit deeper it seems that it's because of this part of the code
def _cm_send_request(
	...
	if cloud_type == "FCM" and use_fcm_notifications:
		notification_payload = {}
		if "message" in data:
			notification_payload["body"] = data.pop("message", None)

		for key in FCM_NOTIFICATIONS_PAYLOAD_KEYS:
			value_from_extra = data.pop(key, None)
			if value_from_extra:
				notification_payload[key] = value_from_extra
			value_from_kwargs = kwargs.pop(key, None)
			if value_from_kwargs:
				notification_payload[key] = value_from_kwargs
		if notification_payload:
			payload["notification"] = notification_payload
...

In my data, I have a title, which is one of the key in FCM_NOTIFICATIONS_PAYLOAD_KEYS, so it was automatically pulled out and insert into notification. Final payload looks like this:
{
  "data": {
    "data": "{}",
    "registration_ids": ["aaaa", "aaaa2"],
    "target": "main",
    "text": "The title",
    "type": "some_type"
  },
  "notification": {
    "title": "The title"
  },
  "registration_ids": ["aaaa", "aaaa2"]
}

I think it is better to at least highlight this behavior in the documentation so that it's less confusing for other users.

I agree. I had the same issue and solved the problem thanks to @nathando


Feature request: Is it possible to play a song providing file path?

Thanks for building this convenient tool, love it!
I wonder if it's possible to support playing a song with command like
voxctl playSong path/to/the/song.mp3

Thanks!

Just realize I can use open command on mac
Sorry about it

No worries!


Enhancing Logging in DVT to support enabling Info, Debug, Warning  and Error

Today DVT does not have different levels of Logs like Info, Debug, Warning  and Error. We should be able to enable all or few of these levels into standard output.
This will help us having standard output less verbose, so that we can focus on more summarised and pin pointed logs which will help us debug more efficiently. Also if we are putting the Info logs like result output into Bigquery we dont need to print them over standard output.

This issue has been resolved with following PR:
https://github.com/GoogleCloudPlatform/professional-services-data-validator/pull/577


Ads in the player

Have you read the Tutorials?
Yes
Have you read the FAQ and checked for duplicate open issues?
Yes
What version of Shaka Player are you using?
4.7.8
What browser and OS are you using?
Google Chrome, Windows
Please ask your question
I'm trying to implement a client-side ads insertion based on the https://shaka-player-demo.appspot.com/docs/api/tutorial-ad_monetization.html tutorial - IMA SDK Integration.
I've created a custom code based on the documentation, but the main methods called is the same of the tutorial:
async initPlayer(obj) {

        obj.shakaProps.videoElement = document.getElementById('video');
        obj.shakaProps.shakaUi = obj.shakaProps.videoElement['ui'];

        obj.shakaProps.controls = obj.shakaProps.shakaUi.getControls();
        obj.shakaProps.player = obj.shakaProps.controls.getPlayer();

        // Listen for error events.
        obj.shakaProps.player.addEventListener('error', obj.onPlayerErrorEvent);
        obj.shakaProps.controls.addEventListener('error', obj.onUIErrorEvent);

        // Try to load a manifest.
        // This is an asynchronous process.
        try {
            await obj.shakaProps.player.load(obj.manifestUri);

            obj.shakaProps.videoElement.addEventListener('play',  () => {
                 obj.initIma()
            });

            // This runs if the asynchronous load is successful.
            console.log('The video has now been loaded!');
        } catch (error) {
            obj.onPlayerError(error);
        }
    }

     initIma() {
        this.imaProps.adManager = this.shakaProps.player.getAdManager();
        this.imaProps.adManager.addEventListener(shaka.ads.AdManager.AD_STARTED, () => {
            console.log('An ad has started');
        });

        this.imaProps.adManager.addEventListener(shaka.ads.AdManager.AD_ERROR, () => {
            console.log('ad error');
        });

        console.log('Video Element')
        console.log(this.shakaProps.videoElement)

        this.imaProps.container = this.shakaProps.controls.getClientSideAdContainer();
        this.imaProps.adManager.initClientSide(this.imaProps.container, this.shakaProps.videoElement);

        const adsRequest = new google.ima.AdsRequest();
        adsRequest.linearAdSlotWidth = 640;
        adsRequest.linearAdSlotHeight = 480;
        adsRequest.adTagUrl = 'https://pubads.g.doubleclick.net/gampad/ads?sz=640x480' +
        '&iu=/124319096/external/' +
        'single_ad_samples&ciu_szs=300x250&impl=s&gdfp_req=1&env=vp&output=vast&' +
        'unviewed_position_start=1&cust_params=deployment%3Ddevsite%26sample_ct%' +
        '3Dlinear&correlator=';
        this.imaProps.adManager.requestClientSideAds(adsRequest)

    }

Is there something more that I need to do? I'm receiving no errors, I can see the VAST call on the network, but the ads isn't showing.

@avelad has done the most recent work in ads, but he is on leave right now.  I'll assign this question to him for when he returns.

It is working, thanks for the help @avelad !


Add Questionable Condition register

For some reason I left out the Questionable Condition register in my previous PR, so here it is!

Coverage increased (+0.02%) to 93.156% when pulling 3a4f333781a481b70fcd598bcc5a93ed9c5a619b on jfichtner:addQuesCondReg into 4f960d20c76cb67e206a62f0e6c7608d75693ddc on j123b567:master.


Accessing properties of an abstract struct fails

Hi,
Accessing properties of an abstract struct seems to be failing:
abstract struct Entry
  getter uid : String
  getter country : String

  def initialize(@uid, @country)
  end
end

struct MyEntry < Entry
end

entry = MyEntry.new("1", "GER")

p entry.uid # => "1"  CORRECT
p entry.as(Entry).uid # => "GER"  WRONG?

@jhass thinks that it might be "codegen fail".
See also: https://carc.in/#/r/125g
Kind regards,
Peter

Seems to happen only if there's one subclass for the abstract class.

@asterite That's right! A workaround right now is just to define a second subclass. It works, thanks :-)

@asterite :flushed: wow, that was fast. It works like charm.
Thanks a lot :+1: