Reduce CVEs by using alpine container instead of Ubuntu

Hey, I just made a Pull Request!
Ubuntu has lots of unresolved CVEs. I ran trivy on the image generated with the latest version of master and it produced the following report.
 You need trivy installed locally.
git checkout master
yarn
yarn docker-build
trivy docker.io/library/example-backend

:heavy_check_mark: Checklist

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

Hi! You forgot the DCO.

(and the PR doesn't yet do what the description says :))

How do I test the new image?
I would like to test that the new image works correctly. We talked about this previously, but I wasn't sure if anything changed since then.

(and the PR doesn't yet do what the description says :))

yep yep yep. That's why it's a draft :) I need some direction regarding https://github.com/backstage/backstage/pull/5366#issuecomment-821864784

Would really like to avoid alpine because of the subtle and hard to find bugs that you'll run into with incompatibilities in musl libc. I've been burnt by that too much in the past.

@Rugvip How do we deal with CVEs because in our case, our "Cyber" organization is quiet accommodating but I'm guessing that many large orgs will not be so understanding. They'll see that images have tons of ancient CVEs and block Backstage POCs.

@taras The Dockerfiles are just templates that people can modify as they wish really. We don't for example use the same base image internally, but have switched it out to one of our internal base images. Essentially I think it's up to each org to harden the deployment to the extent they want, and that it's not possible to have a one size fits all here. That's why we just run with the latest debian release of the official Node.js image as the default, as we'd rather provide a sane common base where pretty much anything can be installed on top, but then allow people to slim down/harden as they wish. The more important optimizations we're providing are in the commands and strategy for executing the builds rather than which base image is the default.
If it's plain bad and a security risk to run this image I'm all for looking for options, but also feel that's something to be reported back to the Docker image library repo in that case too 😅

If it's plain bad and a security risk to run this image I'm all for looking for options, but also feel that's something to be reported back to the Docker image library repo in that case too

The majority of it is not really hardening but rather making security analysis systems not complain. Eliminating these CVEs requires substantial effort and know-how.  I care about this, our org cares about it, and it's still difficult to keep on top of it.
GitHub Complains

Twistlock Complains

This is a well-known issue that's not getting addressed in the base images https://github.com/nodejs/docker-node/issues/787 If we can solve this issue upstream, we can users of Backstage a lot of hassle downstream.
If you still don't think it's something that we should solve here then I'll be happy to solve it at Frontside. We can contribute a solution that others who care about this can use. It still leaves me with the same question https://github.com/backstage/backstage/pull/5366#issuecomment-821864784

@taras I'm all for improvements to the base image, but switching to alpine I think it trading one set of headaches for another. I'm not saying alpine is bad in general, just that it's a bit of a minefield that can cost a lot of time for people that aren't experienced in that area.

@Rugvip

subtle and hard to find bugs that you'll run into with incompatibilities in musl libc

Where could one go to learn more about these bugs or how they typically represent?

@taras I'm all for improvements to the base image, but switching to alpine I think it trading one set of headaches for another. I'm not saying alpine is bad in general, just that it's a bit of a minefield that can cost a lot of time for people that aren't experienced in that area.

When you said base image, do you mean Dockerfile in packages/create-app or node:14-buster-slim which that container is based on?  Afaik a common thing that would cause issues is if you have a dynamically linked binary that's build for glibc but is then given musl libc at runtime. I don't think there's cause for you guys to switch or anything. It's just that when you find out about Backstage, run @backstage/create-app, install your favorite dependency from NPM that then just segfaults, it can be a bit tricky to know where to go from there.
Some more comparisons between C standard libs here, but my perception is that musl libc is build for a bit more memory constrained devices, with correctness and clean implementation as a focus, while glibc will typically give you somewhere between a bit to a lot more performance and support for everything from the beginning of time.
@taras The base image is node:14-buster-slim, or whatever else we use in FROM. The images build from the Dockerfiles are not base images, they're used to package the final application. We also don't publish those afaik, but if we do, it's for demo purposes and not for use as base images.

Another option could be to use alpine with glibc. I recently had to do this for Dart https://github.com/leoafarias/fvm/blob/master/.docker/alpine/Dockerfile#L21

@taras I'll give that a skeptical maybe, still looking to keep things simple and avoid unnecessary commands in the Dockerfile x)

@Rugvip I'm going to try this first on our internal deployment, give it a few weeks and then report back.

hey @taras, any update on this one? I've tried changing the base image to node:14-alpine but I get some build errors:
Error: Failed to compile.
<EMAIL_ADDRESS>Module not found: Can't resolve 'immer' in '/home/vsts/work/1/s/backstage/zurich-backstage/node_modules/@backstage/core-components/dist'

It has been a few years, is the consensus still to be using node:16-bullseye-slimas base? it has quite a lot of CVE's


fix(docs): change capsule helm repo url

Change helm repo url to the correct repo.

Hi @ppeereb1, I see you are fighting with helm-docs. Note: Just make the changes to charts/capsule-proxy/README.md.gotmpl. Then run make helm-docs, then your pipelines should become green.

@ppeereb1 whoops, your commits must be gpg signed, do you know how to do that?

@oliverbaehler yes thanks for your help. I think now it's ok?


Undefined method `site_identifier' for Custom resource iis_app from cookbook iis

Cookbook version
6.0.0
Chef-client version
12.9.41
Platform Details
Windows 2012 R2 running on Amazon EC2
Scenario:
When running a recipe containing an iis_app resource on system that already has the app due to a prior Chef run
Steps to Reproduce:

Create a recipe that includes an iis_app
Converge the system to create the app
Converge again to experience failure

Expected Result:
The Chef run should not fail, nor modify the unchanged app
Actual Result:
The Chef run fails with a stacktrace similar to this:
Generated at 2017-04-06 21:25:04 +0000
NoMethodError: iis_app['example'] (my_cookbook::go line 41) had an error: NoMethodError: undefined method `site_identifier' for Custom resource iis_app from cookbook iis
C:/opscode/chef/embedded/lib/ruby/gems/2.1.0/gems/chef-12.9.41-universal-mingw32/lib/chef/resource.rb:1340:in `method_missing'
C:\chef\running\cookbooks\iis\resources\app.rb:43:in `block in class_from_file'
C:/opscode/chef/embedded/lib/ruby/gems/2.1.0/gems/chef-12.9.41-universal-mingw32/lib/chef/resource/action_class.rb:54:in `load_current_resource'
C:/opscode/chef/embedded/lib/ruby/gems/2.1.0/gems/chef-12.9.41-universal-mingw32/lib/chef/provider.rb:127:in `run_action'
C:/opscode/chef/embedded/lib/ruby/gems/2.1.0/gems/chef-12.9.41-universal-mingw32/lib/chef/resource.rb:596:in `run_action'
C:/chef/running/cookbooks/compat_resource/files/lib/chef_compat/monkeypatches/chef/runner.rb:78:in `run_action'
C:/chef/running/cookbooks/compat_resource/files/lib/chef_compat/monkeypatches/chef/runner.rb:106:in `block (2 levels) in converge'
C:/chef/running/cookbooks/compat_resource/files/lib/chef_compat/monkeypatches/chef/runner.rb:106:in `each'
C:/chef/running/cookbooks/compat_resource/files/lib/chef_compat/monkeypatches/chef/runner.rb:106:in `block in converge'
C:/opscode/chef/embedded/lib/ruby/gems/2.1.0/gems/chef-12.9.41-universal-mingw32/lib/chef/resource_collection/resource_list.rb:84:in `block in execute_each_resource'
C:/opscode/chef/embedded/lib/ruby/gems/2.1.0/gems/chef-12.9.41-universal-mingw32/lib/chef/resource_collection/stepable_iterator.rb:116:in `call'
C:/opscode/chef/embedded/lib/ruby/gems/2.1.0/gems/chef-12.9.41-universal-mingw32/lib/chef/resource_collection/stepable_iterator.rb:116:in `call_iterator_block'
C:/opscode/chef/embedded/lib/ruby/gems/2.1.0/gems/chef-12.9.41-universal-mingw32/lib/chef/resource_collection/stepable_iterator.rb:85:in `step'
C:/opscode/chef/embedded/lib/ruby/gems/2.1.0/gems/chef-12.9.41-universal-mingw32/lib/chef/resource_collection/stepable_iterator.rb:104:in `iterate'
C:/opscode/chef/embedded/lib/ruby/gems/2.1.0/gems/chef-12.9.41-universal-mingw32/lib/chef/resource_collection/stepable_iterator.rb:55:in `each_with_index'
C:/opscode/chef/embedded/lib/ruby/gems/2.1.0/gems/chef-12.9.41-universal-mingw32/lib/chef/resource_collection/resource_list.rb:82:in `execute_each_resource'
C:/chef/running/cookbooks/compat_resource/files/lib/chef_compat/monkeypatches/chef/runner.rb:105:in `converge'
C:/opscode/chef/embedded/lib/ruby/gems/2.1.0/gems/chef-12.9.41-universal-mingw32/lib/chef/client.rb:667:in `block in converge'
C:/opscode/chef/embedded/lib/ruby/gems/2.1.0/gems/chef-12.9.41-universal-mingw32/lib/chef/client.rb:662:in `catch'
C:/opscode/chef/embedded/lib/ruby/gems/2.1.0/gems/chef-12.9.41-universal-mingw32/lib/chef/client.rb:662:in `converge'
C:/opscode/chef/embedded/lib/ruby/gems/2.1.0/gems/chef-12.9.41-universal-mingw32/lib/chef/client.rb:701:in `converge_and_save'
C:/opscode/chef/embedded/lib/ruby/gems/2.1.0/gems/chef-12.9.41-universal-mingw32/lib/chef/client.rb:281:in `run'
C:/opscode/chef/embedded/lib/ruby/gems/2.1.0/gems/chef-12.9.41-universal-mingw32/lib/chef/application.rb:267:in `run_with_graceful_exit_option'
C:/opscode/chef/embedded/lib/ruby/gems/2.1.0/gems/chef-12.9.41-universal-mingw32/lib/chef/application.rb:243:in `block in run_chef_client'
C:/opscode/chef/embedded/lib/ruby/gems/2.1.0/gems/chef-12.9.41-universal-mingw32/lib/chef/local_mode.rb:44:in `with_server_connectivity'
C:/opscode/chef/embedded/lib/ruby/gems/2.1.0/gems/chef-12.9.41-universal-mingw32/lib/chef/application.rb:226:in `run_chef_client'
C:/opscode/chef/embedded/lib/ruby/gems/2.1.0/gems/chef-12.9.41-universal-mingw32/lib/chef/application/solo.rb:301:in `block in interval_run_chef_client'
C:/opscode/chef/embedded/lib/ruby/gems/2.1.0/gems/chef-12.9.41-universal-mingw32/lib/chef/application/solo.rb:290:in `loop'
C:/opscode/chef/embedded/lib/ruby/gems/2.1.0/gems/chef-12.9.41-universal-mingw32/lib/chef/application/solo.rb:290:in `interval_run_chef_client'
C:/opscode/chef/embedded/lib/ruby/gems/2.1.0/gems/chef-12.9.41-universal-mingw32/lib/chef/application/solo.rb:269:in `run_application'
C:/opscode/chef/embedded/lib/ruby/gems/2.1.0/gems/chef-12.9.41-universal-mingw32/lib/chef/application.rb:58:in `run'
C:/opscode/chef/embedded/lib/ruby/gems/2.1.0/gems/chef-12.9.41-universal-mingw32/bin/chef-solo:25:in `<top (required)>'
C:/opscode/chef/bin/chef-solo:61:in `load'
C:/opscode/chef/bin/chef-solo:61:in `<main>'

hurm, i'll have to run the iis_app test with that version of chef-client

can't replicate with test::app recipe from the test cookbook
`#
Cookbook:: test
Recipe:: default

Copyright:: 2017, The Authors

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
include_recipe 'iis'
directory "#{node['iis']['docroot']}\v1_1" do
recursive true
end
iis_app 'Default Web Site' do
path '/v1_1'
application_pool 'DefaultAppPool'
physical_path "#{node['iis']['docroot']}/v1_1"
enabled_protocols 'http,net.pipe'
action :add
end
**results:**$ kitchen test app-windows-2012r2
-----> Starting Kitchen (v1.16.0)
WARN: Unresolved specs during Gem::Specification.reset:
rspec (~> 3)
nokogiri (~> 1.6)
WARN: Clearing out unresolved specs.
Please report a bug if this causes problems.
-----> Cleaning up any prior instances of
-----> Destroying ...
Finished destroying  (0m0.00s).
-----> Testing
-----> Creating ...
Bringing machine 'default' up with 'virtualbox' provider...
==> default: Importing base box 'opentable/win-2012r2-standard-amd64-nocm'...
==> default: Matching MAC address for NAT networking...
==> default: Checking if box 'opentable/win-2012r2-standard-amd64-nocm' is up to date...
==> default: Setting the name of the VM: kitchen-iis-app-windows-2012r2_default_1491537956908_63616
==> default: Clearing any previously set network interfaces...
==> default: Preparing network interfaces based on configuration...
default: Adapter 1: nat
==> default: Forwarding ports...
default: 5985 (guest) => 55985 (host) (adapter 1)
default: 5986 (guest) => 55986 (host) (adapter 1)
default: 22 (guest) => 2222 (host) (adapter 1)
==> default: Running 'pre-boot' VM customizations...
==> default: Booting VM...
==> default: Waiting for machine to boot. This may take a few minutes...
default: WinRM address: <IP_ADDRESS>:55985
default: WinRM username: vagrant
default: WinRM execution_time_limit: PT2H
default: WinRM transport: negotiate
==> default: Machine booted and ready!
==> default: Checking for guest additions in VM...
default: The guest additions on this VM do not match the installed version of
default: VirtualBox! In most cases this is fine, but in rare cases it can
default: prevent things such as shared folders from working properly. If you see
default: shared folder errors, please make sure the guest additions within the
default: virtual machine match the version of VirtualBox you have installed on
default: your host and reload your VM.
default:
default: Guest Additions Version: 4.3.12
default: VirtualBox Version: 5.1
==> default: Mounting shared folders...
default: /omnibus/cache => /Users/jschuhmann/.kitchen/cache
==> default: Machine not provisioned because --no-provision is specified.
[WinRM] Established
   Vagrant instance <app-windows-2012r2> created.
   Finished creating <app-windows-2012r2> (1m35.98s).

-----> Converging ...
Preparing files for transfer
Preparing dna.json
Resolving cookbook dependencies with Berkshelf 5.6.4...
Removing non-cookbook files before transfer
Preparing validation.pem
Preparing client.rb
-----> Installing Chef Omnibus (12.9.41)
Downloading package from https://packages.chef.io/files/stable/chef/12.9.41/windows/2012r2/chef-client-12.9.41-1-x64.msi
Download complete.
Successfully verified C:\omnibus\cache\chef-client-12.9.41-1-x64.msi
Installing Chef Omnibus package C:\omnibus\cache\chef-client-12.9.41-1-x64.msi
Installation complete
Transferring files to
Starting Chef Client, version 12.9.41
Creating a new client identity for app-windows-2012r2 using the validator key.
resolving cookbooks for run list: ["test::app"]
Synchronizing Cookbooks:
- test (0.1.0)
- iis (6.0.0)
- windows (3.0.4)
- ohai (5.0.2)
Installing Cookbook Gems:
Compiling Cookbooks...
Converging 4 resources
Recipe: iis::default
* windows_feature[IIS-WebServerRole] action install
* windows_feature_dism[IIS-WebServerRole] action install
* ohai_plugin[dism_features] action create[2017-04-06T21:14:48-07:00] WARN: The Ohai plugin_path does not include C:/Users/vagrant/AppData/Local/Temp/kitchen/ohai/plugins. Ohai will reload on each chef-client run in order to add this directory to the path unless you modify your client.rb configuration to add this directory to plugin_path. The plugin_path can be set via the chef-client::config recipe. See 'Ohai Settings' at https://docs.chef.io/config_rb_client.html#ohai-settings for more details.
[2017-04-06T21:14:48-07:00] WARN: Adding C:/Users/vagrant/AppData/Local/Temp/kitchen/ohai/plugins to the Ohai plugin path for this chef-client run only
    * directory[C:/Users/vagrant/AppData/Local/Temp/kitchen/ohai/plugins] action create
      - create new directory C:/Users/vagrant/AppData/Local/Temp/kitchen/ohai/plugins
    * cookbook_file[C:/Users/vagrant/AppData/Local/Temp/kitchen/ohai/plugins/dism_features.rb] action create
      - create new file C:/Users/vagrant/AppData/Local/Temp/kitchen/ohai/plugins/dism_features.rb
      - update content in file C:/Users/vagrant/AppData/Local/Temp/kitchen/ohai/plugins/dism_features.rb from none to f422aa
      --- C:/Users/vagrant/AppData/Local/Temp/kitchen/ohai/plugins/dism_features.rb	2017-04-06 21:14:48.000000000 -0700
      +++ C:/Users/vagrant/AppData/Local/Temp/kitchen/ohai/plugins/chef-dism_features.rb20170406-2524-pfht1f	2017-04-06 21:14:48.000000000 -0700
      @@ -1 +1,46 @@
      +#
      +# Author:: Wade Peacock<EMAIL_ADDRESS>      +# License:: Apache License, Version 2.0
      +#
      +# Licensed under the Apache License, Version 2.0 (the "License");
      +# you may not use this file except in compliance with the License.
      +# You may obtain a copy of the License at
      +#
      +#     http://www.apache.org/licenses/LICENSE-2.0
      +#
      +# Unless required by applicable law or agreed to in writing, software
      +# distributed under the License is distributed on an "AS IS" BASIS,
      +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
      +## See the License for the specific language governing permissions and
      +# limitations under the License.
      +#
      +
      +Ohai.plugin(:DismFeatures) do
      +  provides 'dism_features'
      +  collect_data(:windows) do
      +    dism_features Mash.new
      +    # This is for 32-bit ruby/chef client on 64-bit Windows
      +    # This emulates the locate_sysnative_cmd helper as it is not available
      +    cmd = 'dism.exe'
      +    dism = if ::File.exist?("#{ENV['WINDIR']}\\sysnative\\#{cmd}")
      +             "#{ENV['WINDIR']}\\sysnative\\#{cmd}"
      +           elsif ::File.exist?("#{ENV['WINDIR']}\\system32\\#{cmd}")
      +             "#{ENV['WINDIR']}\\system32\\#{cmd}"
      +           else
      +             cmd
      +           end
      +    # Grab raw feature information from dism command line
      +    raw_list_of_features = shell_out("#{dism} /Get-Features /Online /Format:Table").stdout
      +    # Split stdout into an array by windows line ending
      +    features_list = raw_list_of_features.split("\r\n")
      +    features_list.each do |feature_details_raw|
      +      # Skip lines that do not match Enable / Disable
      +      next unless feature_details_raw =~ /(En|Dis)able/
      +      # Strip trailing whitespace characters then split on n number of spaces + | +  n number of spaces
      +      feature_details = feature_details_raw.strip.split(/\s+[|]\s+/)
      +      # Add to Mash
      +      dism_features[feature_details.first] = feature_details.last
      +    end
      +  end
      +end
    * ohai[dism_features] action reload
      - re-run ohai and merge results into node attributes
    * ohai[dism_features] action reload
      - re-run ohai and merge results into node attributes

         - install Windows feature IIS-WebServerRole
         * ohai_plugin[dism_features] action create
    * directory[C:/Users/vagrant/AppData/Local/Temp/kitchen/ohai/plugins] action create (skipped due to not_if)
    * cookbook_file[C:/Users/vagrant/AppData/Local/Temp/kitchen/ohai/plugins/dism_features.rb] action create (up to date)
    * ohai[dism_features] action nothing (skipped due to action :nothing)
     (up to date)
         * ohai[Reloading Dism_Features Plugin - Action [:install] of feature IIS-WebServerRole] action reload
    - re-run ohai and merge results into node attributes

     * windows_service[iis] action enable (up to date)
     * windows_service[iis] action start (up to date)
   Recipe: test::app
     * directory[C:\inetpub\wwwroot\v1_1] action create
       - create new directory C:\inetpub\wwwroot\v1_1
     * iis_app[Default Web Site] action add
       - Creating the Application - "iis_app[Default Web Site]"

   Running handlers:
   Running handlers complete
   Chef Client finished, 10/16 resources updated in 32 seconds
   Finished converging <app-windows-2012r2> (8m42.42s).

-----> Setting up ...
Finished setting up  (0m0.00s).
-----> Verifying ...
Loaded app
Profile: iis_app InSpec Profile (app)
Version: 0.1.0
Target:  winrm://vagrant@http://<IP_ADDRESS>:55985/wsman:3389
Service W3SVC
✔  should be installed
✔  should be running
✔  startmode should eq "Auto"
iis_site 'Default
✔  Web Site' should exist
✔  Web Site' should be running
✔  Web Site' should have app pool "DefaultAppPool"
iis_app 'Default
✔  Web Site/v1_1' should exist
✔  Web Site/v1_1' should have application pool "DefaultAppPool"
✔  Web Site/v1_1' should have physical path "C:\inetpub\wwwroot\v1_1"
✔  Web Site/v1_1' should have protocol "http"
Test Summary: 10 successful, 0 failures, 0 skipped
Finished verifying  (0m3.90s).
-----> Destroying ...
==> default: Forcing shutdown of VM...
==> default: Destroying VM and associated drives...
Vagrant instance  destroyed.
Finished destroying  (0m5.92s).
Finished testing  (10m28.26s).
-----> Kitchen is finished. (10m32.80s)
`

@EasyAsABC123 that recipe seems to only create the app once, if you converge multiple times it should fail after the first. Or use a recipe similar to this:
include_recipe 'iis'

directory "#{node['iis']['docroot']}\\v1_1" do
  recursive true
end

iis_app 'Default Web Site' do
  path '/v1_1'
  application_pool 'DefaultAppPool'
  physical_path "#{node['iis']['docroot']}/v1_1"
  enabled_protocols 'http,net.pipe'
  action :add
end

iis_app 'duplicate' do
  site_name 'Default Web Site'
  path '/v1_1'
  application_pool 'DefaultAppPool'
  physical_path "#{node['iis']['docroot']}/v1_1"
  enabled_protocols 'http,net.pipe'
  action :add
end

I haven't been able to get the kitchen suite working at all locally so I'm unable to replicate it a repeatable environment

i was able to replicate this as well

Thanks so much for reporting this issue. Please check out version 6.0.1 of this cookbook for the fix.

Thanks so much for getting that fix out so quickly, I really appreciate it!


[features] auto install not allow autostart

By installing via GPO, no option to allow the app to start at windows boot.
No switch and no option IN the app for user choice ...

We can't help you because you have not filled in a proper bug template.
First read this:
https://rocket.chat/docs/contributing/reporting-issues
Then use this as a template:
https://github.com/RocketChat/Rocket.Chat.Electron/issues/new?template=ISSUE_TEMPLATE.md
Thanks!

Which bug  ????
it's not implemented, so it's not a bug, it's a feature needed as my object suggest it ...

Please test if the latest release did solve this. If not please reopen the issue or create a new one and tell us. I will be closing this one for now.
Thank you!

The last version didn't resolve that because there is no flag in auto install to add the autostart option !
Or no communication on this features !!!!

+1 feature is needed for enterprise deployments


Section <IP_ADDRESS> para 306, FCS_TLSC_EXT.3.1

FCS_TLSC_EXT.3.1 TSS is ‘none’. Please explain which TSS requirement covers discussing secure renegotiation?
Suggested change:
The evaluator shall ensure that the TSS explains how the TSF responds if the server does not offer the "renegotiation_info" extension or signals the TLS_EMPTY_RENEGOTIATION_INFO_SCSV cipher suite.
Also applies to Section <IP_ADDRESS> para 333, FCS_TLSS_EXT.3.1.

TLS working group agrees there would be no value in adding a TSS requirement since this info is well defined in the RFC 5746.


[incubator/sparkoperator] Change init job to a hook. Only delete secret on uninstall

Is this a new chart
No

NOTE: We're experiencing a high volume of PRs to this repo and reviews will be delayed. Please host your own chart repository and submit your repository to the Helm Hub instead of this repo to make them discoverable to the community. Here is how to submit new chart repositories to the Helm Hub.

What this PR does / why we need it:
Without this PR you must manually delete the init job before upgrading the chart.
Which issue this PR fixes
Special notes for your reviewer:
The gencerts.sh script that is run in the init job already handles the secret existing.
Checklist
[Place an '[x]' (no spaces) in all applicable fields. Please remove unrelated fields.]

[x] DCO signed
[x] Chart Version bumped
[x] Variables are documented in the README.md
[x] Title of the PR starts with chart name (e.g. [stable/mychartname])

/assign @liyinan926

Is there anything I can do to move this forward?

I don't think this PR brings much value, tbh. This chart works fine as is.

Actually, without this PR the user must manually delete the init job during any upgrades. By switching the init job to a helm hook the job cleans itself up when it succeeds.

Okay. Fair point. That was a nuisance indeed. I'll merge it.

/lgtm


Implement tests

implementation of tests for most modules

@davidaderup wdyt?

@drorasaf Sorry for the long delay. I don't remember the context of your question. Could you elaborate?


Update README.md

The readme for test "expect_table_column_count_to_be_between" changed to apply on "model/seed/source" instead of "column" (refer issue #95 for details)

Thanks for this PR @s-vinay ! Documentation PRs are my favorite.


Request for Guidance on Integrating Local Large Model into React Framework

Hello,
I hope this message finds you well. I am seeking assistance on how to embed my local large model into the React framework used in your experiments. However, I was unable to locate the specific section in the source code under the experiments/recoma directory where the deepseekcoder model is called for generation.
Any guidance you could provide would be greatly appreciated. Thank you for your time!

Is your model in Huggingface format? If so:
First, serve the model in an openai-compatible API. This can be done via VLLM or Huggingface TGI.
Then, since we use Litellm, you should only need to change the configuration (api_base_url, api_key).
@tusharkhot can you please here (^)? I am quite busy right now to find/jot down all the details.

Hi @Yingnan1234 You can create a custom class for your LLM e.g.

Say you create a class  experiments/code/recoma/custom_llm.py

import json
import logging
import os

from recoma.models.core.generator import GenerationOutputs, LMGenerator
from recoma.search.state import SearchState

logger = logging.getLogger(__name__)

@LMGenerator.register("custom_llm")
class CustomLLMGenerator(LMGenerator):

    def __init__(self, **kwargs):
        super().__init__(**kwargs)
        # IMPLEMENT THIS
        self.llm = <load_your_llm_model>

    def generate(self, input_str, state: SearchState):
        messages_json = self.extract_role_messages(input_str)
        logger.debug("Messages:\n{}".format(json.dumps(messages_json, indent=2)[:100]))

        # IMPLEMENT THIS
        # messages_json: standard chat format messages
        # generator_params: generator params from https://github.com/allenai/recoma/blob/main/recoma/models/core/generator.py#L13
        outputs_from_model: list[str] = self.llm.generate(messages_json, self.generator_params)
        generation_outputs = GenerationOutputs(outputs=outputs_from_model, scores=[])
        return generation_outputs

You can register it by importing this class in experiments/code/recoma/__init__.py
Then you can just modify the generator_params in the config to point to your custom class. E.g.

"generator_params": {
      "type": "custom_llm",
      "max_tokens": 400,
      "seed": 123,
      "stop": ["```\n"],
      "temperature": 0,
}

Note that any extra params that you want to pass to the constructor for the custom llm can be added to the same config.


Fixing issue ZF2-165 with updated PHPUnit version

Updated development documentation

Thanks Michelangelo!

sure, no problem


[FEAT]: Model diagram: Need better graph layout

If the users tries to change the layout by moving nodes manually, the edges are not redrawn to follow shortest path between the nodes. There should also probably be a reset layout button.

Dagre (the algorithm/library we use) doesn't really have the notion of a stand-alone edge routing so this is something we need DIY.
Using AStar to route the edges works, but because it is a greedy-algorithm it has the tendency to route edges such that they take the same optimal path, which is mathematically sound but not pleasing to the viewer.
There are a couple of posts about grid-based, orthogonal edges that look like they can be leveraged here, as our model-diagrams are fairly simple nowadays (no longer any hierarchical structures or cross-hierarchy edges).
See:

Demo: https://orthogonal.jose.page/
https://medium.com/swlh/routing-orthogonal-diagram-connectors-in-javascript-191dc2c5ff70
https://gist.github.com/jose-mdz/4a8894c152383b9d7a870c24a04447e4

Misc:

https://gist.github.com/jose-mdz/ed70f7d5677f6b9df63ee904a6a33743


Faster room joins: Add edge case tests for outgoing device list updates

Test that outgoing device list updates reach servers incorrectly thought
to not be in a partial state room once the room transitions to full
state.

Built on top of #473.
Best reviewed commit by commit.

We expect these tests to fail until https://github.com/matrix-org/synapse/issues/13891 is ready.


remove secure settings

Summary of the changes / Why this improves CrateDB
see commits
Checklist

[ ] User relevant changes are recorded in CHANGES.txt
[x] Touched code is covered by tests
[x] Documentation has been updated if necessary
[x] CLA is signed
[x] This does not contain breaking changes, or if it does:

It is released within a major release
It is recorded in CHANGES.txt
It was marked as deprecated in an earlier release if possible
You've thought about the consequences and other components are adapted
(E.g. AdminUI)

lgtm.
i'd keep separate commits for replacing and removing settings.

@kovrus you mean break down 3b303ad1d09dd3066c4f40ab7e173a87a720751b further?


CLI gives 403 on MacOS when given valid credentials

Problem
On my Mac the CLI fails with 403 Invalid Application-ID or API key when doing algolia indices list, or most operations, when given correct credentials.
The credentials were verified on a comparison Linux system (Ubuntu 22.04.04 LTS amd64) with identical Algolia CLI release version and everything worked smoothly.
Params

Algolia CLI: 1.6.3
System: MacOS Sonoma 14.2.1

Side notes

Although most operations 403, algolia profile list works and correctly lists the number of indices alongside the credentials

Hello @larsyencken and thanks for your report,
In both case, are you passing the Algolia credentials to the CLI through the flags (--api-key / --application-id) or using a profile? If you are using a profile, could you check the profile file content on the MacOS system?
I suspect a bug in the retro-compatibility of the profile format, since we recently changed some fields name in the profile (api_key vs admin_api_key).
Thanks!

I change  admin_api_key to api_key in config.toml and it works

I'm getting the same thing from a "just brew installed algolia-cli", and from building from source here:
algolia-cli dowideit.sven$ ./algolia profile list
NAME        APPLICATION ID     NUMBER OF INDICES  DEFAULT
sandbox     8<----snip  15
production  8<----snip         62                 ✓
algolia-cli dowideit.sven$ ./algolia indices list
Algolia API error [403] Invalid Application-ID or API key

my ~/.config/algolia/config.toml file only has api_key entries, and adding an admin_api_key value doesn't help either
is there something I can do quickly to debug, or should I start reading the code?

I started debugging this, and may be running into a combination of an env var being set, and that error not telling me enough to realise it ...
func (p *Profile) GetAPIKey() (string, error) {
	if os.Getenv("ALGOLIA_API_KEY") != "" {
		return os.Getenv("ALGOLIA_API_KEY"), nil
	}


Is there anyway to yank a line without selecting them with mouse or touch pad

It's a waste of time using mouse to copy a line .than with a keyboard shortcuts any help would be so awesome.

Depends... You can use alt + o to copy commands output. Or there is another shortcut to copy urls.

You can use tmux, but em..

You can use tmux, but em..

Oops.

Why can't we copy that using vim like yanking in shell and in st

there is a patch vimbrowser which basically just gives you a terminal wide vim buffer, you could add it to your fork of lukes terminal, It's in mine build of st which has all of lukes alt+(l|o|y),

jthere is a patch vimbrowser which basically just gives you a terminal wide vim buffer, you could add it to your fork of lukes terminal, It's in mine build of st which has all of lukes alt+(l|o|y), there is this build to try it out on, from the original creator. here

Thanks... I'll give a replay

jthere is a patch vimbrowser which basically just gives you a terminal wide vim buffer, you could add it to your fork of lukes terminal, It's in mine build of st which has all of lukes alt+(l|o|y), there is this build to try it out on, from the original creator. here

Also why vim is not showing cursor I mean it's invisible in normal mode ..and neovim works pretty well why is that

jthere is a patch vimbrowser which basically just gives you a terminal wide vim buffer, you could add it to your fork of lukes terminal, It's in mine build of st which has all of lukes alt+(l|o|y), there is this build to try it out on, from the original creator. here

Also why vim is not showing cursor I mean it's invisible in normal mode ..and neovim works pretty well why is that

Can you close this issue?  It seems a bit out of scope and isn't an actual issue related to st.

jthere is a patch vimbrowser which basically just gives you a terminal wide vim buffer, you could add it to your fork of lukes terminal, It's in mine build of st which has all of lukes alt+(l|o|y), there is this build to try it out on, from the original creator. here

Also why vim is not showing cursor I mean it's invisible in normal mode ..and neovim works pretty well why is that

Can you close this issue? It seems a bit out of scope and isn't an actual issue related to st.

Yesss


Enable SSL access

Hi - I have my Handbrake docker container behind a reverse proxy and it is using my domain it actually resolves the internal address and port with no issues along with SSL enabled.
I have set the SECURE_CONNECTION variable in the container to 1.  But after replace the certificates the main app (session inside the webpage) does not finish loading.  There is a wheel on where it shows the connection is secure or not (lock icon at the top) that keeps spinning and the actual apps does not show.
Any idea on why this happen?  Are any additional configurations to perform when this is behind a reverse proxy.  I'm using apache on my host machine.    Thanks in advance.

Hi, I have a similar problem.
I use a Synologa NAS and use the build in proxy server.
My setting is, that I connect to my proxy server via HTTPS and then unsecure to the Docker container.

As hogmac mentioned, the basic website loads fine. But the VNC part leads to a timeout.
I switched on the Firefox debug mode and it showed me that some websocket doesn't finish.

WebSocket support is needed.  This seems to be missing in your reverse proxy config.
See https://github.com/jlesage/docker-handbrake#reverse-proxy for example on nginx.

Did not have an idea about WebSocket support was needed on the config for this to work.  I was able to enable this with no major issues trough the Nginx Proxy Manager, but did realize it can be done in Apache via the a2enmod proxy_wstunnel module.  It is working ok for me now. Thanks!

WebSocket support is needed. This seems to be missing in your reverse proxy config.
See https://github.com/jlesage/docker-handbrake#reverse-proxy for example on nginx.

Thank you. I was able to activate this on my Synology NAS. Now it works perfect.
Thank you for your great support and your great work,


Simplify Connector Wire Messages Message type

removes unused and complicated flag system
forces event_time to always being present
a 0 event time signifies that a valid event_time is not present

ref #

@JONBRWN All the tests are failing, but the code looks ok to me minus my one comment.  Scott's much more familiar with the old connector protocol approach, so I'm going to let him approve this one.

@jtfmumm investigated the failing tests, the autoscale tests pass with this change from the base branch removed:
-	python3 -m pytest -c $(integration_path)/pytest.ini tests/*.py $(pytest_exp)
+	python3 -m pytest -c $(integration_path)/pytest.ini tests/*.py $(pytest_exp) -k Wait2_Rotate0_Wait2_Crash1_Wait2_Recover1_Wait2

@slfritchie is the above something you need?

@slfritchie I removed the DO NOT MERGE label, I'll let you decide when you want to merge this down to the simplify-connectors-1 branch


[BUG] More than one service binding to cloud-service-broker app causes app to crash

Description
We have been using spring cloud config to provide secrets to the cloud service broker (specifically the broker api username nad password that will also be registered with the cloud controller api).  It appears that VCAP_SERVICES can come back with service instances in different orders but it appears that cloud-service-broker only attempts to resolve the first bound service instance instead of leveraging tags.
Expected Behavior
Allow more than just the database be bound to a application instance
Actual Behavior
Random crashes of the application with logs:
   2021-02-23T15:46:25.83-0600 [APP/PROC/WEB/0] OUT {"timestamp":"1614116785.835094929","source":"cloud-service-broker","message":"cloud-service-broker.Invalid VCAP_SERVICES environment variable - falling back to explicit environment variables","log_level":1,"data":{}}
   2021-02-23T15:46:25.83-0600 [APP/PROC/WEB/0] OUT {"timestamp":"1614116785.835577965","source":"cloud-service-broker","message":"cloud-service-broker.Database Setup","log_level":2,"data":{"error":"DB_HOST, DB_USERNAME and DB_PASSWORD are required environment variables."}}
   2021-02-23T15:46:25.83-0600 [APP/PROC/WEB/0] ERR {"timestamp":"1614116785.835577965","source":"cloud-service-broker","message":"cloud-service-broker.Database Setup","log_level":2,"data":{"error":"DB_HOST, DB_USERNAME and DB_PASSWORD are required environment variables."}}

Possible Fix
Inspect the VCAP_SERVICES and look for service instances with the tag "tags":["mysql"]
Steps to Reproduce

Bind another service instance to the broker and restage
Might have to cycle a number of times before the broker will crash

Context
Unable to store secrets that are used by the broker securely.
Your Environment

Version used: 0.2.3
Operating System and version (desktop): TAS 2.10.10
Platform (Azure/AWS/GCP): AWS
Applicable Services: N/A

@xyloman can you provide the result of cf env for the service broker so we can see what VCAP_SERVICES looks like?
The broker does use tags for mysql and the error indicates there was some problem parsing the VCAP_SERVICES json.

Sorry for the delay:
VCAP_SERVICES: {
 "p.config-server": [
  {
   "binding_name": null,
   "credentials": {
    "credhub-ref": "/c/p.spring-cloud-services-scs-service-broker/e9ca123d-c312-4f57-88a4-aef09e887f83/9bf8581a-e760-4c2d-84bb-534b4dabbe6f/credentials-json"
   },
   "instance_name": "config-server",
   "label": "p.config-server",
   "name": "config-server",
   "plan": "standard",
   "provider": null,
   "syslog_drain_url": null,
   "tags": [
    "configuration",
    "spring-cloud"
   ],
   "volume_mounts": []
  }
 ],
 "p.mysql": [
  {
   "binding_name": null,
   "credentials": {
    "credhub-ref": "/c/548966e5-e333-4d65-8773-7b4e3bb6ca97/d33ef795-c769-4c03-ba3b-2387d5541890/8ca79dac-75b0-4ea7-bbfa-4a307de05dd4/credentials"
   },
   "instance_name": "csb-db",
   "label": "p.mysql",
   "name": "csb-db",
   "plan": "db-small",
   "provider": null,
   "syslog_drain_url": null,
   "tags": [
    "mysql"
   ],
   "volume_mounts": []
  }
 ]
}

@xyloman we won't get to this anytime soon. If you to submit a PR we would be very happy to review.

Closing per lack of activity


⚠ Fortnite has degraded performance

In 0c52710, Fortnite (https://fortnite.com) experienced degraded performance:

HTTP code: 200
Response time: 1254 ms

Resolved: Fortnite performance has improved in 5d8712d.


[Feature Request] CLI flag to continue as guest

Hi! This is a small feature request for a feature I'm happy to implement. I read the contributing section, and realized that I should submit an issue first to have a discussion on the idea first!
Is your feature request related to a problem? Please describe.
Not really a problem, but I tend to always use the login as guest option each time I open up mangadesk as I don't have a mangadex account.
Describe the solution you'd like
I'd like to have a flag like --guest that skips the login screen.
Describe alternatives you've considered
I hackily edited my local mangadesk copy to skip the login screen directly and to also not do a 750ms wait with the following diff:
mangadesk$ git diff
diff --git a/app/core/credentials.go b/app/core/credentials.go
index ca9524f..5323968 100644
--- a/app/core/credentials.go
+++ b/app/core/credentials.go
@@ -44,8 +44,6 @@ func (m *MangaDesk) loadCredentials() error {
 func (m *MangaDesk) restoreSession() error {
        // Try to read stored credential file.
        if err := m.loadCredentials(); err != nil { // If error, then user was not originally logged in.
-               fmt.Println("No past session, redirecting to login...")
-               time.Sleep(time.Millisecond * 750)
                return err
        }

diff --git a/app/ui/login_page.go b/app/ui/login_page.go
index 866896d..328936a 100644
--- a/app/ui/login_page.go
+++ b/app/ui/login_page.go
@@ -20,6 +20,8 @@ func ShowLoginPage() {

        core.App.TView.SetFocus(loginPage.Grid)
        core.App.PageHolder.AddAndSwitchToPage(utils.LoginPageID, loginPage.Grid, true)
+       core.App.PageHolder.RemovePage(utils.LoginPageID)
+       ShowMainPage()
 }

 // newLoginPage : Creates a new login page.

but ideally, I think this should be configurable via a flag.
Additional context
If this seems reasonable, I'm happy to put up a pr that adds --guest. Thanks! Also unsure if this seems reasonable. Maybe another solution is to remember/persist that the guest login option has been picked?

Oh whoops, just realized that there is already a nice story for configuration, so I think that instead of a CLI flag, maybe a field in the config.json like guestLogin might be better instead?

hi, yes this would be a good addition to the available configs. i will take a look at the PR when i have a bit more time!


Update all-cabal-hashes as a flake input

@ners The haskell subsystem has been merged by now. Could you re target this PR to main and rebase?


Added Dockerfile for quick testing.

Added Dockerfile and updated readme for building and running a Docker image.

Hey, can you rebase from master?  I think there's an issue with ruby-head that I resolved.
Also, is there any easy way to test this?  Or, maybe asked another way, will this be enough for someone using Docker to know what to do?

Sure, no problem.
I would expect that everything needed is in here. Basically there are only two commands to run if you have a working Docker environment on your desktop.
docker build .
docker run -d --env-file=/tmp/resque-brain.txt -p 8080:8080 09298f03207

That will start the service on port 8080 of your docker VM if on a Mac, or on localhost if using Linux.


Index Page Redesign

Index Page Redesign
Implements redesign for the home / index page, based on this spec:

It's not exactly to spec--notably,

the section heading sizes; I kept the h1s the size that they are in the codebase,
a max-width was imposed on the splash page poster for larger screens to prevent content from getting majorly cut off
an added section for the newsletter call-to-action that was present on the existing homepage, but overlooked in the design
we kept the existing footer

The header follows uses fixed positioning to follow the user as they scroll vertically. Other than that, not much new functionality / components were added. Things were just refactored a bit for the layout.

Closing and opening a new one to trigger another Netlify deploy


Broker - WithConnectionValidator and WithApplicationMessageInterceptor about ClientCertificate

I am trying to validate the certificate (who is connecting) to see if the credentials are valid. By the WithConnectionValidator method but the ClientCertificate is Null always.
Already at the time of receiving the message I need to know who it is sending. And the only information I have is the ClientId that does not work either.
Any suggestion?

First of all: Which version do you use? In the latest version, there is the .ConnectionValidator handler: Check https://github.com/chkr1011/MQTTnet/wiki/Server#validating-mqtt-clients, please.

Already at the time of receiving the message I need to know who it is sending. And the only information I have is the ClientId that does not work either.

Where do you need the information who sent the message? In the server? What you are looking for is https://github.com/chkr1011/MQTTnet/wiki/Server#intercepting-application-messages. If you want to get username or password, you need to either use the 3.0.6-alpha or wait for the next release (Check https://github.com/chkr1011/MQTTnet/issues/682).

I'm using the ConnectionValidator, I have specified it up there. Except that the certificate comes Null.

@rcs88 I was just asking because you wrote something about WithConnectionValidator, not .ConnectionValidator.
Do you use the latest version of the library?

Yes 3.0.5

Which environment are you using for the broker? AspNetCore, NetCore, UWP, NetStandard, Xamarin?

The problem is time to convert X509Certificate to X509Certificate2.
I've also seen this problem (.NET Framework 4.6), I made an adjustment and I'm going to do a pull.

On the WithApplicationMessageInterceptor, I also had to make an adjustment to bring the certificate, user, and password data in order to identify who was sending and change Payload.
I do not know if what I have changed will be accepted. But I'm going to do the Pull.
I am also making other adjustments that I have identified and which I need to expose.

The problem is time to convert X509Certificate to X509Certificate2.
I've also seen this problem (.NET Framework 4.6), I made an adjustment and I'm going to do a pull.

This is fixed with your PR https://github.com/chkr1011/MQTTnet/pull/702, @rudacs. @chkr1011 has merged it, so I guess it will be available in the release of version 3.0.6.
For your second PR (https://github.com/chkr1011/MQTTnet/pull/703), you need to use the SessionItems to store your data (available from 3.0.6-beta1 or so), Check e.g. https://github.com/chkr1011/MQTTnet/wiki/Server#storing-data-in-the-session


How to download boreas(aeva) dataset?

I saw the boreas_aeva_config.yaml file in the repository, how do I download this dataset?

We have a link to this in the readme for this repo.
https://drive.google.com/file/d/1JpQNnXejow3qy1qp5tVzak9qnuFmjYHW/view?usp=share_link

Are both steam_icp/steam_icp/config/aeva_config.yaml and steam_icp/steam_icp/config/boreas_aeva_config.yaml  configurations for this dataset?

use boreas_aeva_config.yaml

Well, thank you for your answer.


can not access cordexesg.dmi.dk

e.g., accessing

http://cordexesg.dmi.dk/thredds/fileServer/cordex_general/cordex/output/EUR-11/DMI/ECMWF-ERAINT/evaluation/r1i1p1/DMI-HIRHAM5/v1/mon/pr/v20140620/pr_EUR-11_ECMWF-ERAINT_evaluation_r1i1p1_DMI-HIRHAM5_v1_mon_198901-199012.nc

will require me to register with user access rights every time and fail afterwards.

see

https://github.com/ESGF/esgf-pyclient/issues/89


Invalid project path and unsupported image format

Description
Classifai branch: https://github.com/CertifaiAI/classifai/tree/sum_v2a_folderFileValidation
Changes:

Show invalid path status on project card, if the project path is invalid (project folder doesn't exist / has been moved).

Show alert modal to the user if there are unsupported images included during create project and reload project.

https://user-images.githubusercontent.com/76939137/122342235-f77a2580-cf76-11eb-865a-b9d7b2345614.mp4
Type of change
Please delete options that are not relevant.

[x] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] This change requires a documentation update

Tested on?

[x] Windows
[ ] Linux Ubuntu
[ ] Centos
[ ] Mac
[ ] Others  (State here -> xxx )

Checklist:

[ ] My code follows the style guidelines of this project
[x] I have performed a self-review of my own code
[ ] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation
[ ] My changes generate no new warnings
[ ] I have added tests that prove my fix is effective or that my feature works
[ ] New and existing unit tests pass locally with my changes
[ ] Any dependent changes have been merged

there's a small problem in the txt file.
some files are separated by newline, some are separated by commas

About the prompt message.
The title could be:
Unsupported Image Found!
The message could be:
There are <n> unsupported images included in the project!
The list of images is in the downloaded TXT file.
Kindly convert them to jpg/png type and reimport them again

the link provided in the pop up message will be refined.
Screenshots and step-by-step walkthrough will be included after everything is finalized

Changes:

Display project path on project card in dataset management page
Disable invalid path project.

Nice. Works from my side.

Changes:

Display project path on project card in dataset management page
Disable invalid path project.

Works on Windows


fix: exclude de.json for pre-commit codespell check

PR Description
pre-commit codespell can't works for de.json
seems only one json file can't works now, just ignore this file in pre-commit config.
Reason & Detail
#60 PR can't pass pre-commit codespell, it should be an error.
just ignore this file
Related issue
fix #X

For now is fine, but we should switch to https://app.lokalise.com/

For now is fine, but we should switch to https://app.lokalise.com/

got it, thank you.


MORE touchpad handgesture request!

Description of the new feature / enhancement
Im a lefthand-disabled, for some reason I changed my laptop from mac BACK TO windows. thus i know guestures and shoutcuts have their own convenient setting reason, we need a official tool to increase using touchpad handguesture.
As many friends using laptop without a mouse, even without a side of hand, they either haveto compromise with windows or drop it then buy a mac.
i know quite different types touchpad on windowsbooks,  pressing feedbacks and precision range and aspect ratio etc. As a very least, we just bring the very basic two and one finger handguesture in, like the touchscreen handguesture, one finger swipe from left to open widget, one *(two is macos) swipe from right to open notification center.
you did three and four fingers ditection, even swipe ditect, it seems narmal easy to make less finger ditection. i did python and some hardware develping, there will be some reasons to make less finger or some handguesture harder than more finer handguesture. like touching layer scanning signal decrese from top left to top right...i wanna say, if you deside to add up feature for touchpad,i can give some support for handgesture type, shortcut type, and some technical support(if you need for).
early thanks for taking my suggestion.
Scenario when this would be used?
for touchpad users without mouse, disabled users, using touchpad with touchscreen.
Supporting information
No response

/feedbackhub


A3C presets for ControlSuite

Following the settings in rl_coach/presets/Mujoco_PPO.py and rl_coach/presets/ControlSuite_DDPG.py, I'm creating my own presets to run A3C on ControlSuite with the following preset ControlSuite_A3C.py file:
from rl_coach.agents.actor_critic_agent import ActorCriticAgentParameters
from rl_coach.base_parameters import VisualizationParameters, PresetValidationParameters
from rl_coach.core_types import TrainingSteps, EnvironmentEpisodes, EnvironmentSteps
from rl_coach.environments.control_suite_environment import ControlSuiteEnvironmentParameters, control_suite_envs
from rl_coach.environments.environment import SingleLevelSelection
from rl_coach.filters.filter import InputFilter
from rl_coach.filters.observation.observation_normalization_filter import ObservationNormalizationFilter
from rl_coach.filters.reward.reward_rescale_filter import RewardRescaleFilter
from rl_coach.graph_managers.basic_rl_graph_manager import BasicRLGraphManager
from rl_coach.graph_managers.graph_manager import ScheduleParameters

####################
# Graph Scheduling #
####################
schedule_params = ScheduleParameters()
schedule_params.improve_steps = TrainingSteps(10000000000)
schedule_params.steps_between_evaluation_periods = EnvironmentEpisodes(10)
schedule_params.evaluation_steps = EnvironmentEpisodes(1)
schedule_params.heatup_steps = EnvironmentSteps(0)

#########
# Agent #
#########
agent_params = ActorCriticAgentParameters()
agent_params.algorithm.apply_gradients_every_x_episodes = 1
agent_params.algorithm.num_steps_between_gradient_updates = 10000000
agent_params.algorithm.beta_entropy = 0.0001
agent_params.network_wrappers['main'].learning_rate = 0.00001

agent_params.input_filter = InputFilter()
agent_params.input_filter.add_reward_filter('rescale', RewardRescaleFilter(1/20.))
agent_params.input_filter.add_observation_filter('observation', 'normalize', ObservationNormalizationFilter())

###############
# Environment #
###############
env_params = ControlSuiteEnvironmentParameters(level=SingleLevelSelection(control_suite_envs))

########
# Test #
########
preset_validation_params = PresetValidationParameters()
preset_validation_params.trace_test_levels = ['cartpole:swingup', 'hopper:hop']
preset_validation_params.test = True
preset_validation_params.min_reward_threshold = 400
preset_validation_params.max_episodes_to_achieve_reward = 1000
preset_validation_params.num_workers = 8

graph_manager = BasicRLGraphManager(agent_params=agent_params, env_params=env_params,
                                    schedule_params=schedule_params, vis_params=VisualizationParameters(),
                                    preset_validation_params=preset_validation_params)

However, running python rl_coach/coach.py -p ControlSuite_A3C -lvl cartpole:swingup in the command line keeps returning the error ValueError: The key for the input embedder (observation) must match one of the following keys: dict_keys(['measurements', 'action', 'goal']).
I'm not trying to access the keys of the input embedder in my preset above at all so I'm not sure why I get this error. How can I fix this issue?

@keAWang I'm facing the same issue on a different preset. Were you able to solve this?

@scttl any update on this?


is v1.3 ready for Rpi3 ?

Hi @rootzoll
There seems a lot of dev on v1.3 for Rpi4. I would really love to update my Raspiblitz Rpi3B+ to LND 0.7.1 on a stable Raspibltz version. Is it possible to release v1.3 for all existing Raspiblitz running on Rpi3 and continue dev on Rpi4 ?
Thanks
Sam

V1.3 is very close to finish - if not some last big thing is showing up:
https://twitter.com/rootzoll/status/1161238599045656576?s=20
It was not just stuff for the RP4 - it was also getting the TOR setup right, etc.

Thank you for the update and continued hard work on this project.


fix-bugs-trainingset-dependent-features

Problem description:  explainaboard_web failed to deal with system outputs of generation tasks from named datasets -> training set dependent features are not supported -> SDK bug
This PR fixed this, but it is still very slow when dealing with system outputs from the test set of cnn_dailymail

It looks like this is failing due to an upstream bug in DataLab when handling QA datasets. Could you fix that so tests pass?
Also, it'd be ideal if we could add a test that checks that training set dependent features are handled properly, as this is a pretty important feature.

It looks like this is failing due to an upstream bug in DataLab when handling QA datasets. Could you fix that so tests pass?

Yeah, I was interrupted by other things yesterday but will try to fix this ASAP.

Also, it'd be ideal if we could add a test that checks that training set dependent features are handled properly, as this is a pretty important feature.

Yes! That's also something in my mind, I will add some tests.

It looks like this is failing due to an upstream bug in DataLab when handling QA datasets. Could you fix that so tests pass?

Finally, found it's not the issue of DataLab (still because of independent feature bugs in other tasks).
The reason why I can pass the unit tests locally is that the cache files in .cache/explainaboard/stat/ are kept. So even if I set up a new env (but in the same server) I will still re-use the old caching files.
There is no fault with the current caching mechanism, I mention this just for a reminder in case we encounter these issues again in the future.

It seems that maybe using cnn_dailymail for unit tests is too heavy. Maybe we need to use a different dataset for this test, such as conala?


fix: Revive DanaKitPlugin target

Revive the missing DanaKitPlugin to fix build issue with the copy-plugins.sh script
Before:

After:

Now that dev branch and trio branch in bastiaanv/DanaKit are the same, I renamed the old trio branch in loopandlearn/DanaKit and created a new one so trio branch in bastiaanv and loopandlearn match.
Now I can just sync trio branch in loopandlearn whenever bastiaanv trio branch is updated and the SHA needed for bastiaanv/Trio:feat/dana will be the same as the SHA in loopandlearn/DanaKit: trio branch. I think this will make updates much easier.
I will be testing this of course.


[New] - Description | Token Anatomy

- [ ] Technical review
- [ ] Content review
- [ ] Initial doc created

Intro to tokens/👀 5 Token Anatomy - Description V0.1.md


MapCellsInRandomOrder ArgumentOutOfRangeException

Describe the bug
I'm driving my ship down at the map point, and he's always reporting errors on the way.
according to the latest source code, I found the reason for this exception.
int cycleIndex = (steadyEnvironmentEffectsCycleIndexOffset - index) % steadyEnvironmentEffectsArea;
IntVec3 c = steadyEnvironmentEffectsCellsInRandomOrder.Get(cycleIndex);

exception reason : cycleIndex  >= steadyEnvironmentEffectsCellsInRandomOrder.map.Area
I changed it a little bit
int cycleIndex = (steadyEnvironmentEffectsCycleIndexOffset - index) % steadyEnvironmentEffectsArea;
if (cycleIndex >= steadyEnvironmentEffectsArea)
{
	cycleIndex = 0;
}
IntVec3 c = steadyEnvironmentEffectsCellsInRandomOrder.Get(cycleIndex);

Since I don't know how I can't PR, I ask a Issue. Hope to help you.
Error Log
Exception ticking steadyEnvironmentEffectsCells 38: System.ArgumentOutOfRangeException: Index was out of range. Must be non-negative and less than the size of the collection.
Parameter name: index
  at System.ThrowHelper.ThrowArgumentOutOfRangeException (System.ExceptionArgument argument, System.ExceptionResource resource) [0x00029] in <567df3e0919241ba98db88bec4c6696f>:0
  at System.ThrowHelper.ThrowArgumentOutOfRangeException () [0x00000] in <567df3e0919241ba98db88bec4c6696f>:0
  at Verse.MapCellsInRandomOrder.Get (System.Int32 index) [0x00012] in <6326ac03f61f45efb3178f3bfd084139>:0
  at RimThreaded.RimThreaded.ExecuteTicks () [0x00613] in <2702e3b9302a4c3d9fce6ccb2bbae8b5>:0

And here
                    int cycleIndex = (WildPlantSpawnerCycleIndexOffset - index) % WildPlantSpawnerArea;
                    try
                    {
                        IntVec3 intVec = WildPlantSpawnerCellsInRandomOrder.Get(cycleIndex);

                        if ((WildPlantSpawnerCycleIndexOffset - index) > WildPlantSpawnerArea)
                        {

no restrictions

Please see:

Q&A

Mod Compatibility

Known Issues

The Community Modpack

This Mod Order Guide

Address the problems in your mod list before asking for help or submitting errors & bug reports!

You can submit a bug report here

If your submitted issue gets closed and the bug is still happening you can re open the issue.


[UPDATE] Updated packages to latest build

version incremented to 2.2.5
babel 5 replaced with 6
babel presets installed
babel-eslint updated
added direct babel-registry
fbjs updated to version 6
babel configs moved to package.json

@NullDivision WOW, thanks for the hard work! It looks great. I've left two code review comments. Please help to fix them and fixup the original commit with the following commit message:
feat(package.json): bump fbjs to ^0.6.0

* upgrade to babel@^6

@NullDivision WOW, thanks for the hard work! It looks great. I've left two code review comments. Please help to fix them and fixup the original commit with the following commit message:
feat(package.json): bump fbjs to ^0.6.0

* upgrade to babel@^6

I made the requested changes and left a comment on consideration towards .babelrc.

I made the requested changes and left a comment on consideration towards .babelrc.

Thanks! Released v2.3.0

Just found that @NullDivision had some experience with Facebook's flow. Just wondering that is there any way to run flow as a loader step when using webpack? It seems that I cannot find a proper way/existing loader plugin for that. But it should be doable?

Flowcheck-loader does what you want. Provided that you add the @flow comment tag and do flow init to generate the .flowconfig.

@NullDivision I've checked that, but it seems flowcheck is outdated for a while. Maybe I should give babel-plugin-typecheck a try.

As far as I know that plugin only helps in transpiling type annotations from Flow. I'll have to integrate it into my project as well soon enough so if it's outdated I'll probably end up updating that too. Force of habit :D
If you want to run it at build time you can just add Flow as a devDependency and call it with a conditional operator followed by the build command.
If you want to use it with the webpack-dev-server it'll have to do with the loader.
On the other hand I run it currently on Sublime Text with SublimeLinter and it works great.

Haha, I just tried and integrated babel-plugin-typecheck and babel-plugin-transform-flow-comments to my babel6 projects. It works as expected (immediately caught one error) so I'll just them.

Cool. :) But take into consideration that it adds sizable overhead when transpiling as it adds exceptions to every function call. ...which isn't a bad idea but I'd rather implement my own catches for those :)

Yup, so I only put it under specific env.
{
  "env": {
    "test": {
      "plugins": [
        "transform-runtime",
        "typecheck"
      ],
    },
  },
  "plugins": [
    "transform-flow-comments"
  ],
  "presets": [
    "es2015",
    "stage-0",
    "react"
  ]
}


Dependencies accidentally added to the path operation function instead of the path operation decorator are silently ignored

First Check

[X] I added a very descriptive title to this issue.
[X] I used the GitHub search to find a similar issue and didn't find it.
[X] I searched the FastAPI documentation, with the integrated search.
[X] I already searched in Google "How to X in FastAPI" and didn't find any information.
[X] I already read and followed all the tutorial in the docs and didn't find an answer.
[X] I already checked if it is not related to FastAPI but to Pydantic.
[X] I already checked if it is not related to FastAPI but to Swagger UI.
[X] I already checked if it is not related to FastAPI but to ReDoc.

Commit to Help

[X] I commit to help with one of those options 👆

Example Code
from fastapi import Depends, FastAPI, Header, HTTPException

app = FastAPI()

async def verify_token(x_token: str = Header(...)):
    if x_token != "fake-super-secret-token":
        raise HTTPException(status_code=401, detail="X-Token header invalid")

@app.get("/")
def hello_world(dependences=[Depends(enforce_login)]) -> str:
    return "Hello World!"

Description

Open the browser and call endpoint "/"
It returns "Hello World!"
It should issue a warning, fail to deploy, or return a 401 code.

Opening this for discussion purposes. I just did this myself so it's not just theoretical. No clue if I'm the first or only to have made this mistake, but seems unlikely.
The idea behind dependencies in decorators is to make use of dependencies whose return value we can ignore. One super obvious use case, that's actually mentioned in the docs, is verifying some access token. The problem is, not running the verification looks the same as passing verification, and it's really easy (I just did it) to accidentally toss the "dependencies=[]" on the function instead of the decorator. What happens then is you think your function is checking auth, but it's not, which is Bad (TM).
I'm not sure exactly what the "correct" behavior should be, this just seems like a classic case of needles next to poison-tipped needles that could easily slip by code review. Thoughts? I will note that a good linter catches the mutable object as default value.
Operating System
macOS
Operating System Details
No response
FastAPI Version
0.75.0
Python Version
3.10.2
Additional Context
No response

In this case your propose check is function/class exist in Depends statement? I believe that in this case the issue needs to change its label.

The issue isn't so much the function/class not existing in the Depends statement as it is the fact that the Depends is never getting resolved because it's being put into an unused kwarg underneath a list. Unfortunately it's probably too heavyweight, but it would almost be nice to have a warning in the destructor of Depends if it was never resolved.
It's totally possible that there's no good solution to this problem, but I thought it was worth bringing up since it bit me.


finishTransaction is missing from npm package

Version of react-native-iap
4.0.0-rc10
Version of react-native
0.61.2
Platforms you faced the error (IOS or Android or both?)
both
Expected behavior
finishTransaction should work
Actual behavior
finishTransaction is in index.ts here on next branch, but for some reason it's missing from index.js and index.d.ts of installed package.
Tested environment (Emulator? Real Device?)
Steps to reproduce the behavior

Hey sorry! I think I’ve forgot the build. I’ll release to rc11 soon.

Released rc11. Please try this.

Actually I'll publish to 4.0.0 soon.

Please try 4.0.1.


fixed .XX issue

Details
Currently, the regex is ^\d+(,\d+)*(.\d{0,2})?$ in validateAmount function of /src/pages/iou/steps/IOUAmountPage.js
Fixed Issues
I updated the regex to ^(.\d{0,2})|\d+(,\d+)*(.\d{0,2})?$
$ https://github.com/Expensify/App/issues/9389
Tests
I tested it on regex101.com

I have read the CLA Document and I hereby sign the CLA

This is an unauthorized PR and should be closed.

Ah yes, definitely an unauthorized PR. Closing.


Implement cheat sheet screen

The current design only has content for the first screen/tab/section.

We need to decide which tabs we will have and what is the content.
This is the list of all keyboard shortcuts used by the application:
Ref Studio Keyboard Shortcuts

Menu → File

⌘ N - New File (known shortcut)
⌘ S - Save File (known shortcut)
⌘ W - Close Editor (known shortcut)

Menu → Edit

These are all standard know, native, shortcuts

Menu → References

⌘ R - Open the references editor (our shortcut, normally used to refresh the app)

Menu → View

Toggle Full Screen - Native shortcut. Don’t even know what that globe is!
F11 - Notifications - Toggle the notification drawer (our shortcut)

Menu → Window

⌘ M - Native shortcut to minimize the app

Application

⌘ K - Open Command Palette (+/- known shortcut)
⌘ P - Open Files Palette (menu inside the command palette) (shortcut inspired by VSCode)
⌘ 1 - Select / Toggle Visibility of Explorer Pane (our shortcut)
⌘ 2 - Select / Toggle Visibility of References Pane (our shortcut)
⌘ 9 - Select / Toggle Visibility of Rewriter (our shortcut)
⌘ 0 - Select / Toggle Visibility of Chatbot (our shortcut)

Editor

Standard text editor keyboard shortcuts (⌘ B, ⌘ I, ⌫, ⌘ Z, ⌘ ⇧ Z, ...)
Standard basic markdown keyboard shortcuts (#, ##, ###, *, ...)
Text completion (our shortcuts)

⌘ J - Ask for text completion (when triggered again cycle through choices)

↹, →, ↵ - to accept suggestion
⎋ - (Escape) to remove suggestion

References (our shortcuts)

[ - Trigger a references citation interaction (show a popup to select a reference)

@ - Inside a citation will trigger the popup to select a reference)

"Notion-like" shortcuts

> {SPACE} - Creates a collapsible section

⌘ ↵ - Expand/Collapse the collapsible section

↹ - Indent editor block
⇧ ↹ - Remove indent from block
⎋ - Toggle block navigation

↑/↓ - Select previous/next block
→ - Expand collapsible section or select first child
← - Collapse collapsible section or select parent

Will implement the following screen for now, added to PR #546


[Feature]: improve distributed backend selection

🚀 The feature, motivation and pitch
We have three ways to start a new process:

multiprocessing by fork
multiprocessing by spawn
ray

by default, we use ray for multi-node serving, and multiprocessing by fork for single node setting.
however, if users initialize cuda context, multiprocessing by fork will not work.
if we set multiprocessing by spawn by default, it will not work when users don't have if __name__ == "__main__".
if we can figure out whether users have if __name__ == "__main__" automatically, we can improve the default user experience.
the proposed solution is:
if we find that cuda is initialized, we inspect the current function call stack, and trace back the stack until we reach the __main__ module, check the current line to see if we are under if __name__ == "__main__", if yes, switch the multiprocessing method from fork to spawn.
cc @russellb
Alternatives
No response
Additional context
No response
Before submitting a new issue...

[X] Make sure you already searched for relevant issues, and asked the chatbot living at the bottom right corner of the documentation page, which can answer lots of frequently asked questions.

if we find that cuda is initialized, we inspect the current function call stack, and trace back the stack until we reach the main module, check the current line to see if we are under if name == "main", if yes, switch the multiprocessing method from fork to spawn.

@youkaichao I looked into this a bit, and it doesn't seem straightforward. Let me know if you have a particular method in mind.
Another idea:

Set the default to spawn when the vllm CLI entry point is used. In that case, we know we are in full control, so we can set the default.
Add detection for the case where cuda is already initialized and the method is not spawn. In this case, add a warning log message to give clear instructions on what should be changed.
Expand developer documentation on the topic for those using the Python APIs.

(for reference, this was a related PR where I was changing the default: #8576)

Add detection for the case where cuda is already initialized and the method is not spawn. In this case, add a warning log message to give clear instructions on what should be changed.

then maybe you can add this. I think it can be enough.

I thought this was interesting. While testing out the behavior of different scenarios, I see that Python already does a nice job of detecting the case where spawn is used when the parent code isn't protected by if __name__ == "__main__".
...
  File "/usr/lib64/python3.11/multiprocessing/spawn.py", line 140, in _check_not_importing_main
    raise RuntimeError('''
RuntimeError:
        An attempt has been made to start a new process before the
        current process has finished its bootstrapping phase.

        This probably means that you are not using fork to start your
        child processes and you have forgotten to use the proper idiom
        in the main module:

            if __name__ == '__main__':
                freeze_support()
                ...

        The "freeze_support()" line can be omitted if the program
        is not going to be frozen to produce an executable.

        To fix this issue, refer to the "Safe importing of main module"
        section in https://docs.python.org/3/library/multiprocessing.html


Fix jvm tests.

2 things are done

all data files are read from resources not by relative path in a source tree (this enables easy move to SBT or other build system)
fixed DTDs

This is an extraction from this pull request https://github.com/dmlc/xgboost/pull/4687

Closing, as I don't think we'd move to SBT any time soon.


Added MemcachedStorage.php

Support for php Memcached.

you seem to kinda have totally ignored the code style rules (as defined in PSR-1 & PSR-2)


Fix the package version, and make it possible to do dspy.__version__

Two fixes:

The version in pyproject.toml and setup.py are wrong, we should use 2.5.13.dev0 for now. Basically we should write it as the next minor release + .dev0, which is a standard way (not officially documented though).
Added __version__ in dspy/__init__.py so that people can do dspy.__version__ to check the version.

See #1615. Can we automate this in the release workflow perhaps?

@okhat We can update this version frequently to match the actual pypi version, just need to standardize it as part of the release process. We can set up automated release pipeline that handles this version as well, but IMO manually updating it is not cumbersome.
Speaking of the automated release, I am thinking about automatically publishing to pypi when we push a new github tag. Similar to https://github.com/keras-team/keras-hub/blob/master/.github/workflows/publish-to-pypi.yml, does it work for you?


jadx.core.utils.exceptions.JadxRuntimeException: SSA rename variables already executed

Any idea what is the cause exactly of this error ?
jadx.core.utils.exceptions.JadxRuntimeException: SSA rename variables already executed
it seem happen only when have inner class inside a aclass, probably just a naming problem ?

@skylot  I tried to comment the line to throw that exception, then seem fine, source java generated seem fine.


Wrong type inference when using refine function

Hi, first of all thanks for this great library.
Unfortunately something went wrong after version 3.1.0 with the refine function.
Here is the code snippet:
import { z } from "zod";

const schema = z.object({
  date: z.date().refine((d) => true, "Invalid.")
});

type t = z.infer<typeof schema>;

const test: t = {}; //should be invalid
const test2: t = { date: "" }; //should be invalid

const test3: t = { date: new Date() }; //OK

Using version 3.1.0 the inferred type is ok:
type t = { date: Date }

but using later versions (3.2.0-3.8.2) the inferred type is:
type t = { date?: any }

https://codesandbox.io/s/zod-refine-issue-v203y?file=/src/index.ts
Can you fix it?
Is there any workaround for this bug?
Thanks,
Balazs

Ok, I found what was the problem.
I saw in releases tab:
v3.2: Fix TypeScript 4.3 recursive type issues
So I gave it a try to upgrade typescript to v4.4.2, and it WORKS! :)
It would be great if you could update this section: https://github.com/colinhacks/zod#typescript-requirements .
Thanks

This should be fixed for TS 4.1-4.3 in Zod 3.9.


Add fullwidth to mwc-button

I'm submitting a:

[ ] bug report
[x] feature request

Current behavior:
mwc-button needs width set to width: 100% to occupy the entire space
Expected behavior:
mwc-textfield has a fullwidth property to handle this behavior, does it make sense to add something like this to mwc-button?
Comparison mwc-button vs mwc-textfield:
      <style>
        mwc-button {
          width: 100%;
        }
      </style>

      <mwc-textfield fullwidth label="Standard"></mwc-textfield>
      <mwc-button label="Sign up via Email"></mwc-button>

Is this fullwidth property something you'd need in a dialog or constrained form?

Certainly very common in dialogs/forms, yes.
Another use case might be e. g. on a login form or any form that requires full-width expansion (basically any form on mobile).
So I guess the question is rather if it makes sense to do it via property or CSS. I think fullwidth property is the quick fix that works for most cases but sometimes a developer might want to do responsive custom CSS styles instead.


Spark on Kubernetes - basic submission client

Second draft upstreaming PR that contains the basic submission client implementation and unit tests. Branch spark-kubernetes-3-updated is a clone of spark-kubernetes-3 with latest changes from upstream/master merged in. spark-kubernetes-4 includes all our changes in spark-kubernetes-3.
cc @foxish @mccheah @apache-spark-on-k8s/contributors

This will be the follow-up to https://github.com/apache/spark/pull/19468

This seems like a large diff, but a quick scan shows everything included as necessary. We need the driver service bootstrap because of changes to master. I think we can reduce the fanciness of the credentials step but that doesn't reduce the complexity by a significant amount.

One TODO: Add the unit test in https://github.com/apache-spark-on-k8s/spark/pull/542 to this PR

Changed from #542 merged in.

A few comments but otherwise this captures the spirit of what we want to have upstream.

If there's no objection, I will squash the commits and push to upstream for review. @apache-spark-on-k8s/contributors

SGTM! We should see how we can make it less confusing for reviewers - because this PR encompasses changes in spark-kubernetes-3.

When pushing upstream, I'm gonna remove code for the first PR so this is less confusing.

The latest commit seems to address my comments so far. Thanks!

Squashed the commit and removed scheduler backend code and relevant changes in Yarn-related code.

@kimoonkim any more comments on the submission steps?

This is under review at https://github.com/apache/spark/pull/19717.

@ifilonenko @erikerlandson @mccheah Can you please help with integration tests here? We need signals on what's working and what's not working. We expect some integration tests to fail, but most should pass. @liyinan926 just informed me that we were missing some critical functionality with local:// file support. We want to ensure issues like that don't creep into our upstream PR.

cc @kimoonkim

To elaborate, we are missing DependencyResolutionStep in this PR. Without it, users won't even be able to use local:// dependencies.

we may be having a problem here if the docker poms were elided - the integration testing can't build images to run its tests, IIUC

Tracking in https://github.com/apache-spark-on-k8s/spark/issues/568. @erikerlandson, you're right. We need to separate out the integration testing now, so we can actually run it against any distribution - irrespective of whether it has the dockerfile target or not.

It seems that the LocalDirectoryMountConfigurationStep is also essential. @mccheah @foxish @kimoonkim @erikerlandson @ifilonenko to confirm.

The PR has been merged upstream. Closing this.


[PD] Manage time with your calendar

Coursework content
Set up your Google calendar to show your weekly availability for calls with your peers. Share your calendar with your pair of the week. If you prefer, you can use Calendly instead of Google calendar.
Estimated time in hours
0.5
What is the purpose of this assignment?
This assignment aims to help you start using calendar software effectively to manage your time and to collaborate with your peers and volunteers.
How to submit
Share the link of your calendar or a screenshot on the ticket on your coursework board.
Anything else?

Create a Google calendar
Share your Google Calendar

Stretch
You can also set-up a Calendly page, which you can share with people, so they can book time with you. Just make sure your calendar is up-to-date with your avaiability, or you might get invitations for times you cannot make.

Book a chat with me!
https://calendly.com/sc-heidari/30min

Book a chat with me! https://calendly.com/sc-heidari/30min

Hi @persianquant  - can you put this on your own coursework board? This is the shared ticket for everyone to copy. I will delete your comment in the morning to tidy up. Thanks!


SOIC PCB version

Is your feature request related to a problem?
Yes, DIP parts (especially 74LS245 and AT28C64B) are out of stock from many suppliers with very long lead times.
Describe the solution you'd like
SOIC footprint version of the PCB

Indeed it seems that components are increasingly difficult to source. I'm working on a hybrid board that will take either DIP or SOIC so any chip can be of either package type depending on availability.

Just built 2 of these, no 74LS245 DIP in stock anywhere, so used 74HCT245, no issues on ROM 1 IIGS or Laser 128EX so far.
The T in the IC part no is important, HCT parts have switching thresholds similar to LS (that's what the data sheets say anyway).
FWIW No problems to get the AT28C64B DIP in Australia - element14 show them in stock (although they take a couple of days to come into the local warehouse). But there's not a lot of them.
In any case thanks for the easy storage solution for the II's.

So i could source  all components but the 74LVC374, only found them on Mouser but shipping is too expensive. So i now tried with 74AC374. They seem to work in my BASIS108, will have to do more long time tests.

Note that there is a SOIC version of the A2Pico card which is now compatible with this project.
https://github.com/rallepalaveev/a2pico/tree/main/A2Pico.v2.7


[bug] CPU load when idle

It works for a single core:
lmp = LammpsBase(
    cores=1,
    oversubscribe=False,
    enable_flux_backend=False,
    working_directory=".",
)

but calling:
lmp = LammpsBase(
    cores=2,
    oversubscribe=False,
    enable_flux_backend=False,
    working_directory=".",
)

results in one process with 100% CPU load.
Found by @pmrv

@pmrv I moved the issue to pympipool as it is related to the SocketInterface class. The openMPI documentation suggests export OMPI_MCA_mpi_yield_when_idle=1 but at least for me this did not work out of the box.

If you are testing with OpenMPI, you might have to set oversubscribe=True depending on you configuration.

If you are testing with OpenMPI, you might have to set oversubscribe=True depending on you configuration.

The debugging is simplified by https://github.com/pyiron/pympipool/pull/178

Maybe it is related to https://github.com/mpi4py/mpi4py/issues/468

Maybe it is related to mpi4py/mpi4py#468

This fix was added in https://github.com/pyiron/pympipool/pull/279


Add jc_custom_fields to Cb::Models::Job

Add jc_custom_fields to Cb::Models::Job
--APACLocal team

Here are example tests:
https://github.com/careerbuilder/ruby-cb-api/blob/master/spec/cb/models/implementations/job_spec.rb#L26..L41

Thanks @oochelz, I have added unit test.

Very nice. Thank you!


fix typo

closes #172

 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.

issue #172

thank you @fadomire for noticing and fixing this


[SPARK-40334][PS] Implement GroupBy.prod

What changes were proposed in this pull request?
Implement GroupBy.prod
Why are the changes needed?
for API coverage
Does this PR introduce any user-facing change?
yes, the new API
df = ps.DataFrame({'A': [1, 1, 2, 1, 2],
                            'B': [np.nan, 2, 3, 4, 5],
                            'C': [1, 2, 1, 1, 2],
                            'D': [True, False, True, False, True]})

        Groupby one column and return the prod of the remaining columns in
        each group.

        df.groupby('A').prod()
             B  C  D
        A
        1  8.0  2  0
        2  15.0 2  11

        df.groupby('A').prod(min_count=3)
             B  C   D
        A
        1  NaN  2  0
        2  NaN NaN  NaN

How was this patch tested?
added UT

cc @zhengruifeng @xinrong-meng @itholic FYI

also cc @Yikun

Can one of the admins verify this patch?

Oh no! 💥 💔 💥
2 files would be reformatted, 352 files would be left unchanged.
Please run 'dev/reformat-python' script.
1
Error: Process completed with exit code 1.

lint-python failed, you would install related packages in your env via pip install -r dev/requirements.txt , and then reformat the python files via dev/reformat-python and check the lint locally via dev/lint-python

Merged into master, thank you @ayudovin for working on it!


[msal-core] Fix acquireTokenSilent closing pop up window from concurrent acquireTokenPopupCall

This PR:

Removes call to WindowUtils.closePopups() inside handleAuthenticationResponse()
Moves call to WindowUtils.closePopups() in acquireTokenHelper() outside of if block that caused it to only be called when used with Angular framework
Fixes #2116

Coverage increased (+0.01%) to 83.701% when pulling 94d21c07733fc15e8bb3abcd45a5096b832ede90 on fix-popup-window-close into c10e82eb620144de04aa13d3381662497888ca93 on dev.


log latency with fixed time unit

Latency gets logged as a time.Duration string which means it could be "312ms" or "45ns" or "102µs". This changes the latency to always be an int64 value in microseconds. This allows DataDog and similar tools to use this value more meaningfully.
This also adds a "logger" attribute with value "ginlogr". This will allow DataDog and similar tools to parse out logs that are coming from GinLogr with a known format.

note that we'll need to tag a new version, and then update projects using ginlogr


Moving the ParentChecker logic into the Delegate

And removing the ParentChecker since it isn't needed

Awesome work! Thanks! :+1:


Support for Unity Package Manager

I'm not sure whether this has been requested yet. It would be great if you could add support for Unity Package Manager. Similar to: https://github.com/mob-sakai/SoftMaskForUGUI/tree/upm#install

Oh thats cool - didnt realise it could link to git like that, nice.
Thanks for the info/suggestion and I'll report back if i get onto this, may not be in the very short term though.

The problems that make this difficult for me are nontechnical - i'm making a LWRP version to put on the store and the store still uses unitypackages (for now), and i dont want to have completely different structures for different versions. Also i hear the new packages don't play nicely with Unity Collab currently and there's probably other things that need to mature.
In any case I will likely move stuff to the package manager when the asset store moves over to it properly. I'll post here with any update.


Adds version support

Adds version support so we can link to 8.x docs as well for example.
Example commands:
docs csrf
docs 8.x csrf
docs csrf 8.x

Thanks!


[!] Not using xformers memory efficient attention.

Why not using it?

Downloaded the One Click Installer and now i don't get anymore that warning.

Using one click install this is a worthless tool to me since I keep getting CUDA oom errors with 6 gigs, YET I don't get them for inpainting in any other application so the memory saving features are just not here.

With the new version (0.33.0) stable diffusion inpainting need 2GB for 512x512 image.  Please check https://lama-cleaner-docs.vercel.app/memory#paint-by-example


perf issue in  'ws'  "drop-in

Hey, thanks for working on improving ws performance.
I realize this is a micro-benchmark, but it w

What are you talking about?

Wtf, I haven't even posted the issue yet!  How are you even seeing this?
On Jul 18, 2016 12:28 PM, "Alex Hultman"<EMAIL_ADDRESS>wrote:

What are you talking about?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/uWebSockets/uWebSockets/issues/198#issuecomment-233294756,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AGQZ0mno-owvSJfUgJJIZILQnPDXRVZiks5qW1VngaJpZM4JOlEK
.

You posted the issue.

No I didn't. I literally just posted it this second!
Weird...
On Jul 18, 2016 12:32 PM, "Иван К"<EMAIL_ADDRESS>wrote:

You posted the issue.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/uWebSockets/uWebSockets/issues/198#issuecomment-233295309,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AGQZ0kQdkPj2GQazSIfki9HCW8WCkG3Eks5qW1Y3gaJpZM4JOlEK
.

https://github.com/uWebSockets/uWebSockets/issues/198

Yeah I know exactly what you are talking about. I'm just saying, I started
receiving feedback from you before I even hit the Post button. I was stool
in the middle of editing it!
Very strange.
Anyway ... Posted now in complete form.
On Jul 18, 2016 12:37 PM, "Иван К"<EMAIL_ADDRESS>wrote:

#198 https://github.com/uWebSockets/uWebSockets/issues/198
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/uWebSockets/uWebSockets/issues/198#issuecomment-233296051,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AGQZ0kNNACtF2eVBK67UZXEnB7Dpv5kmks5qW1dGgaJpZM4JOlEK
.


Server metric for scrape interval exceeded

Proposal
Use case. Why is this important?
I'm looking for a metric in Prometheus for when a "context deadline exceeded" is encountered for a target.
I'm monitoring SNMP devices, some of which live on the other side of an unreliable connection and on occasion it takes longer than my scrape_timeout to query these devices and I would like to graph this out to spot them.

You can use up and scrape_duration_seconds for this.

We've looked at this as part of our bug scrub, and this appears to have been answered.


Multiple HibernateBundles in the same application registers healthcheck and metrics twice with "hibernate"

In https://github.com/dropwizard/dropwizard/blob/master/dropwizard-hibernate/src/main/java/io/dropwizard/hibernate/SessionFactoryFactory.java the line:
final ManagedDataSource dataSource = dbConfig.build(environment.metrics(), "hibernate");
causes issues for us because we use several different session factories for different databases. This causes invalid metrics in the old 0.7.0 dropwizard and in 0.8.0* dropwizard doesn't start because it discovers that the metric is registered twice.
One solution would be to support a configuration in DataSourceFactory which would default to hibernate to not break legacy code that depends on this metric.

@jontejj, please, take a look at #887.
It should resolve the problem with clashed health checks and metrics.


"Expected a variable" when using ${#@} or ${#*}

What steps will reproduce the problem?

nbr_args() {
   echo ${#@}
   echo ${#*}
}

It will tell that "@" and "*" is not a variable, while it is still valid bash
syntax.

$ nbr_args a b c d
4
4

Original issue reported on code.google.com by<EMAIL_ADDRESS>on 9 Oct 2013 at 11:42

Already fixed.