Embedded flutterview can be seen but doesnt recognize clicks

Steps to Reproduce
Firstly apologies for the terrible Folder tree i couldnt get it to work with just spaces.
So, I have semi-successfully managed to embed a flutter view inside a collectionView in one of my existing iOS projects. The steps involved were fairly simple.
After following flutter install instructions I then
I updated my pod file to contain and call the following function:
        def addFlutter
            pod 'Flutter', :path => "~/flutter/bin/cache/artifacts/engine/ios"

            if File.exists? '../.flutter-plugins'
              flutter_root = File.expand_path('..')
              File.foreach('../.flutter-plugins') { |line|
                plugin = line.split(pattern='=')
                if plugin.length == 2
                  name = plugin[0].strip()
                  path = plugin[1].strip()
                  resolved_path = File.expand_path("#{path}/ios", flutter_root)
                  pod name, :path => resolved_path
                else
                  puts "Invalid plugin specification: #{line}"
                end
              }
            end
          end

After a pod install i could successfully import Flutter into my appDelegate and it can now inherit from FlutterDelegate instead of UIResponder, UIApplicationDelegate
 class AppDelegate: FlutterAppDelegate {

Then in my viewController i declare my flutterViewController
private let flutterViewController = FlutterViewController()
and add its to my viewControllers subview
view.addSubview(flutterViewController.view)
From here I then created a parent folder with the same name as my iosProject to move my current iosProject into.
Current tree:
/iosProject
---|
-----/iosProject
--------|
---------xcworkspace etc
i then cd to above the parent folder.
run flutter create iosProject
This adds all the usual files into the parent folder as it has the same name as the iosProject
Current tree:
/iosProject
---|
----/iosProject
--------|
--------xcworkspace etc
----/android
----/assets
----/lib
----/test
----/ios
----android.iml
----iosProject.iml
----iosProject_android.iml
----pubspec.lock
----pubspec.yaml
----.idea
----.packages
From here I took the app.flx, App.framework and Flutter.framework from the flutter_view project example you have supplied that are created on running and copied them into a new Flutter folder i have created inside my iosProject folder. I then also copied across AppFrameworkInfo.plist, Debug.xcconfig, Generated.xcconfig and Release.xcconfig from the generated ios folder in my parent folder. I then deleted the ios folder.
/iosProject
----|
----/iosProject
--------|
--------/App.framework
--------/Flutter.framework
---------app.flx
---------AppFrameworkInfo.plist
--------Debug.xcconfig
--------Generated.xcconfig
--------Release.xcconfig
--------xcworkspace etc
----/android
----/assets
----/lib
----/test
----android.iml
----iosProject.iml
----iosProject_android.iml
----pubspec.lock
----pubspec.yaml
----.idea
----.packages
Now if I open and run Xcode the app builds and I can see the flutter view where it counts how many times you have tapped the button but tapping the + button does nothing.
Logs
flutter run -d c03c63487c83d10558370847be241056932f40fb
`Launching lib/main.dart on iPhone in debug mode...
Found saved certificate choice "iPhone Developer: wrumble (XXXXXXXX)". To clear, use "flutter config".
Signing iOS app for device deployment using developer identity: "iPhone Developer: wrumble)"
Running Xcode build...                               65.9s
Failed to build iOS app
Error output from Xcode build:
↳
2017-10-27 16:44:42.546 xcodebuild[36379:3327892]  iPhoneConnect: ## Unable to mount developer disk image, (Error Domain=com.apple.dtdevicekit Code=601 "Could not locate device support files." UserInfo={NSLocalizedRecoverySuggestion=This iPhone 5s (Model A1457, A1518, A1528, A1530) is running iOS 11.1 (15B93), which may not be supported by this version of Xcode., DeviceType=iPhone6,2, NSLocalizedDescription=Could not locate device support files.}) {
DeviceType = "iPhone6,2";
NSLocalizedDescription = "Could not locate device support files.";
NSLocalizedRecoverySuggestion = "This iPhone 5s (Model A1457, A1518, A1528, A1530) is running iOS 11.1 (15B93), which may not be supported by this version of Xcode.";
}
** BUILD FAILED **
The following build commands failed:
	CopyPlistFile /Users/waynerumble/Desktop/splitter/build/ios/Debug-iphoneos/Runner.app/AppFrameworkInfo.plist Flutter/AppFrameworkInfo.plist
	CpResource Flutter/Debug.xcconfig /Users/waynerumble/Desktop/splitter/build/ios/Debug-iphoneos/Runner.app/Debug.xcconfig
(2 failures)

Xcode's output:
`
There is a lot more output from xcode here can post it if needed.
There are some xcode errors but the main thing id like to point out is the final errors where it is trying to run the original Runner.app, how can i create a flutter project where the ios app is called whatever i want?
flutter analyze
Analyzing /Users/waynerumble/Desktop/splitter... No issues found! Ran in 21.7s
lol
Flutter Doctor
flutter doctor
`[✓] Flutter (on Mac OS X 10.12.6 16G29, locale en-GB, channel alpha)
• Flutter at /Users/waynerumble/Desktop/flutter
• Framework revision e8aa40eddd (10 days ago), 2017-10-17 15:42:40 -0700
• Engine revision 7c4142808c
• Tools Dart version 1.25.0-dev.11.0
[✓] Android toolchain - develop for Android devices (Android SDK 26.0.2)
• Android SDK at /Users/waynerumble/Library/Android/sdk
• Platform android-26, build-tools 26.0.2
• Java binary at: /Applications/Android Studio.app/Contents/jre/jdk/Contents/Home/bin/java
• Java version OpenJDK Runtime Environment (build 1.8.0_112-release-b06)
[✓] iOS toolchain - develop for iOS devices (Xcode 9.0.1)
• Xcode at /Applications/Xcode.app/Contents/Developer
• Xcode 9.0.1, Build version 9A1004
• ios-deploy 1.9.2
• CocoaPods version 1.3.1
[✓] Android Studio (version 2.3)
• Android Studio at /Applications/Android Studio.app/Contents
• Java version OpenJDK Runtime Environment (build 1.8.0_112-release-b06)
[✓] Connected devices
• iPhone   • c03c63487c83d10558370847be241056932f40fb • ios • iOS 11.1
• iPhone 7 • 476E9E8C-8248-4EF6-8054-67900D603E83     • ios • iOS 11.0 (simulator)`

yes, there is no a guidebook to show how to embed a flutter view into a exsiting iOS project.

cc @mravn-google

https://github.com/flutter/flutter/wiki/Add-Flutter-to-existing-apps

Is this still a problem?  In the parent UIViewController, did you also do:
addChildViewController(flutterViewController)
view.addSubview(flutterViewController.view)
flutterViewController.didMove(toParentViewController: self)

?  I am able to embed and interact with a child FlutterView when I tried it.


Big Message weapon purchased crash

I get this error when trying to use the Big Message scaleform:

System.ArgumentException: Unexpected argument type UInt32.
Parameter name: parameters
at LemonUI.Scaleform.BaseScaleform.CallFunctionBase(String function, Object[] parameters)
at LemonUI.Scaleform.BaseScaleform.CallFunction(String function, Object[] parameters)
at LemonUI.Scaleform.BigMessage..ctor(String title, String weapon, WeaponHash hash)

It happens when this line gets executed:

This happens because we don't have an entry for unsigned integers in CallFunctionBase. This affects all scaleforms that pass unsigned integers for them to work.
https://github.com/justalemon/LemonUI/blob/7132abddf5ea76266d3bdb84f048e285b784f46c/LemonUI/Scaleform/BaseScaleform.cs#L109-L181


Bug - x-hasura-user-id is not accessible in production function

Description
Currently in local development, I am able to access the x-hasura-user-id in a custom function by forwarding client headers. I access the user id this way below locally and it works.
const userId = req.body.session_variables["x-hasura-user-id"];

Problem
In the nhost production function, I am unable to access x-hasura-user-id. This is the error that was pulled from an nhost team member to help me debug:
(unsaved) test event

Response
{
  "errorType": "Runtime.UnhandledPromiseRejection",
  "errorMessage": "TypeError: Cannot read property 'x-hasura-user-id' of undefined",
  "trace": [
    "Runtime.UnhandledPromiseRejection: TypeError: Cannot read property 'x-hasura-user-id' of undefined",
    "    at process.<anonymous> (/var/runtime/index.js:35:15)",
    "    at process.emit (events.js:400:28)",
    "    at processPromiseRejections (internal/process/promises.js:245:33)",
    "    at processTicksAndRejections (internal/process/task_queues.js:96:32)"
  ]

Expectation
I should be able to access the x-hasura-user-id from the session_variables the same way in production as I do in local development

Is the function triggered by an Event trigger from Hasura?
If it is, I still don't 100% understand why this is working locally because the variable should be available under req.body.event.session_variables (notice the event). Docs reference
If the function is not triggered by an Event trigger, how do trigger the function?

@elitan The function is triggered by a Hasura action.
I went ahead and logged out the req.body from my local by adding this line to my function: console.log("For the Nhost team: ", req.body);
This is what gets logged out when I run the mutation that is linked to the custom function:
For the Nhost team:  {
  session_variables: {
    'x-hasura-role': 'user',
    'x-hasura-user-isanonymous': 'false',
    'x-hasura-user-id': '4a4f1ff9-03ee-4070-a126-593ea69547f3'
  },
  input: {
    object: {
      price_id: 'price_1JMLyLHlpGgmr1VnVnSVA7T4',
      occasion_id: null,
      custom_prompt: '',
      recipient_name: 'Johan',
      is_group: false,
      sender_name: 'Tuan',
      prompt_id: null
    }
  },
  action: { name: 'createAwwdio' }
}

I'm wondering if it could be a cache related issue?

@wontwon Ok, so it's a Hasura action. If session_variables are not set it means you're not logged in when you do the Hasura Action.
Can you double-check the network request headers for the GraphQL request with the Hasura action? Does the network request has the Authorization header set?
I would assume that locally when the action works, the Authorization header is set. Then, in production, when the action does not work, the Authorization header is not set.

@elitan, I just tried again and it looks like the Authorization header is set as expected, but still getting a 500 error. Please see attached screenshot:

Sure looks good!
And what if you print out the body for both the local function and the prod function with:
console.log(JSON.stringify(req.body, null, 2));

@wontwon the issue seams to be with the content type: if you add Content-Type: application/json as a header on your action definition it should fix the issue.

@nunopato the content type is set. I just didn't include that part in the header image, sorry.

We'll try to reproduce this internally. Very strange indeed.

@wontwon Is this still an issue for you?

Issue was resolved on the Nhost end. Thanks team!


feat(vmseries): Add output with created public IPs

Description
Add an output with public IPs created within a module.
Motivation and Context
The address may be further used as inputs for other resources.
How Has This Been Tested?
Deploy example using terraform 1.1.4.
Types of changes

New feature (non-breaking change which adds functionality)

Checklist

[x] I have updated the documentation accordingly.
[x] I have read the CONTRIBUTING document.
[ ] I have added tests to cover my changes if appropriate.
[ ] All new and existing tests passed.

👍


Test bug

Test bug

…because sometimes even the bugs in your program have bugs. (This is known as a heisenbug.)


Revert "[MLIR][XLA] Buffer Assignment"

Reverts tensorflow/tensorflow#37212
This lacks test coverage, it was merged incorrectly without addressing comments.

Can you clarify what is the extra work exactly?
(My main issue will be that it will be harder to assess the coverage of the tests without a revert)

@joker-eph Waiting for rollback to be approved, submitted, then approved in gerrit, then approved again. Then doing the same for the next PR with added tests. I think it is a waste of time.

How are you gonna check the test coverage?

@joker-eph Do we need to? I think it is pretty clear what tests have to be added.

@joker-eph Can you please resolve conflicts? Thanks!

This revert is no longer needed.


138828345 add follower resource

Unit tests for initializing and reading attributes. Inherit from resource.
[#138828345]

Resolved merge conflict in pivotal_tracker.rb with autoload statements.


:feature: Add a parameter to deactivate server side apply.

What type of PR is this?
/kind feature
What this PR does / why we need it:
This PR adds a parameter to deactivate server side apply.
This is required for the cache server when running in embedded mode. The server side apply feature gate is global and would apply to both kcp and the cache server.
Special notes for your reviewer:
This is in relation to the APIExportEndpointSlice reconciliation PR.
Does this PR introduce a user-facing change?
NONE
Signed-off-by: Frederic Giloux<EMAIL_ADDRESS>

@fgiloux please also update the commit message to be of the form: UPSTREAM: <carry>: TITLE

/lgtm

Just 1 comment about naming. @sttts @stevekuznetsov would like your 👀 please

Is it good to merge now?


Porting overscroll event to XWalkView and partially fix scrollTo method

These patch support the implementation of PR-3605 in Crosswalk.

@axinging @XiaosongWei PTAL.


Correct link for slack invite to use HTTP

I corrected the link for Slack invite tu use HTTP as the Slack server is not HTTP ready for now.
Linked to https://github.com/MasoniteFramework/masonite/issues/175

LGTM 👍


envoy.reloadable_features.send_header_raw_value causing empty headers when using ext_proc

Thank you in advance; envoy is a cool component!
Description:
I'm using a ext_proc server and sending back a ProcessingResponse_ImmediateResponse during the ProcessingRequest_RequestHeaders phase.
By default envoy.reloadable_features.send_header_raw_value is enabled, and this line:
https://github.com/envoyproxy/envoy/blob/21323d483ed163155fb8ceba0935c33c6dae7a2f/source/extensions/filters/http/ext_proc/mutation_utils.cc#L172
Is setting the header values to "".  So we have a header(s) with empty values.  I put in place debug logging to track down this issue, and building this project is complicated.  Thank you for having a docker build.
Repro steps:
I have recreated the bug using an envoy server built from the main branch.  I'm running the envoy server and ext_proc server inside Kubernetes.  I have not recreated this problem outside of K8s.  The same ext_proc server also functions as an xDS control plane (yes, we have a unique use case).
Here is the code that I'm using to send back the headers from the ext_proc gRPC server:
package xdsserver

import (
	"io"

	core "github.com/envoyproxy/go-control-plane/envoy/config/core/v3"
	pb "github.com/envoyproxy/go-control-plane/envoy/service/ext_proc/v3"
	v32 "github.com/envoyproxy/go-control-plane/envoy/type/v3"
	"github.com/rs/zerolog/log"
	"google.golang.org/grpc/codes"
	"google.golang.org/grpc/status"
)

type processServer struct {
}

func (s *processServer) Process(srv pb.ExternalProcessor_ProcessServer) error {
	ctx := srv.Context()
	for {
		select {
		case <-ctx.Done():
			return ctx.Err()
			break
		default:
		}

		req, err := srv.Recv()
		if err == io.EOF {
			log.Debug().Msg("EOF received")
			return nil
		}
		if err != nil {
			log.Error().Err(err).Msg("Error received")
			return status.Errorf(codes.Unknown, "cannot receive stream request: %v", err)
		}

		resp := &pb.ProcessingResponse{}
		switch v := req.Request.(type) {
		case *pb.ProcessingRequest_RequestHeaders:
			log.Debug().Msg("ProcessingRequest_RequestHeaders")

			hm := &pb.HeaderMutation{
				SetHeaders: []*core.HeaderValueOption{
					{
						Header: &core.HeaderValue{
							Key:   "foo",
							Value: "bar",
						},
						AppendAction: core.HeaderValueOption_APPEND_IF_EXISTS_OR_ADD,
					},
				},
			}
			resp = &pb.ProcessingResponse{
				Response: &pb.ProcessingResponse_ImmediateResponse{
					ImmediateResponse: &pb.ImmediateResponse{
						Headers: hm,
						Status: &v32.HttpStatus{
							Code: v32.StatusCode_TemporaryRedirect,
						},
						Details: "set headers",
					},
				},
			}

			break
		case *pb.ProcessingRequest_RequestBody:
			log.Debug().Msg("ProcessingRequest_RequestBody")
			break
		case *pb.ProcessingRequest_ResponseHeaders:
			log.Debug().Msg("ProcessingRequest_ResponseHeaders")
			break
		case *pb.ProcessingRequest_ResponseBody:
			log.Debug().Msg("ProcessingRequest_ResponseBody")
			break
		default:
			log.Debug().Msgf("Unknown Request type %v\n", v)
		}
		if resp != nil {
			log.Debug().Interface("resp", resp).Msg("sent response")
			if err := srv.Send(resp); err != nil {
				log.Err(err).Msgf("send error %v", err)
			}
		}
		log.Debug().Msg("response sent")
	}
	return nil
}

I put in place the following logging to debug this bug:
   absl::string_view header_value;
    if (Runtime::runtimeFeatureEnabled("envoy.reloadable_features.send_header_raw_value")) {
      header_value = sh.header().raw_value();
      ENVOY_LOG(trace, "header_value set sh.header().raw_value(): {}", header_value);
    } else {
      header_value = sh.header().value();
      ENVOY_LOG(trace, "header_value set sh.header().value(): {}", header_value);
    }

And the line:
      header_value = sh.header().raw_value();

Is setting header_value to an empty string.
When you disable envoy.reloadable_features.send_header_raw_value the header value is set correctly.  So, for my use case
      header_value = sh.header().value();

Is the only way I can get this to work.
Also, the logging line:
https://github.com/envoyproxy/envoy/blob/21323d483ed163155fb8ceba0935c33c6dae7a2f/source/extensions/filters/http/ext_proc/mutation_utils.cc#L195
It is very confusing because logging does not use the same function to print the header values, but really, if the header value is empty, I would recommend checking the other function to get headers and print a warning.
The real question is, are empty headers allowed?
Config:
admin:
  access_log_path: /tmp/admin_access.log
  address:
    socket_address:
      protocol: TCP
      address: <IP_ADDRESS>
      port_value: 9901
# Uncomment this stanza, and the headers are set correctly.
#layered_runtime:
#  layers:
#    - name: static-layer
#      static_layer:
#        envoy.reloadable_features.send_header_raw_value: false

# the ext_proc server is also a xDS control plane
# when an ext_proc call is made, it updates cds and lds values
# depending on the call.  The xDS control plane is working as
# expected.
dynamic_resources:
  cds_config:
    resource_api_version: V3
    api_config_source:
      api_type: GRPC
      transport_api_version: V3
      grpc_services:
        - envoy_grpc:
            cluster_name: xds_cluster
      set_node_on_first_message_only: true
  lds_config:
    resource_api_version: V3
    api_config_source:
      api_type: GRPC
      transport_api_version: V3
      grpc_services:
        - envoy_grpc:
            cluster_name: xds_cluster
      set_node_on_first_message_only: true
node:
  cluster: test-cluster
  id: test-id
static_resources:
  clusters:
    - connect_timeout: 1s
      load_assignment:
        cluster_name: xds_cluster
        endpoints:
          - lb_endpoints:
              - endpoint:
                  address:
                    socket_address:
                      address: xdsserver.default.svc.cluster.local
                      port_value: 8080
      health_checks:
        timeout: 1s
        interval: 10s
        unhealthy_threshold: 2
        healthy_threshold: 2
        grpc_health_check: {}
      http2_protocol_options: {}
      name: xds_cluster
      dns_lookup_family: V4_ONLY
      type: STRICT_DNS
      lb_policy: ROUND_ROBIN
      typed_extension_protocol_options:
        envoy.extensions.upstreams.http.v3.HttpProtocolOptions:
          "@type": type.googleapis.com/envoy.extensions.upstreams.http.v3.HttpProtocolOptions
          explicit_http_config:
            http2_protocol_options:
              connection_keepalive:
                interval: 30s
                timeout: 5s
  listeners:
    - name: listener_0
      address:
        socket_address:
          protocol: TCP
          address: <IP_ADDRESS>
          port_value: 10000
      filter_chains:
        - filters:
            - name: envoy.filters.network.http_connection_manager
              typed_config:
                "@type": type.googleapis.com/envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager
                stat_prefix: ingress_http
                access_log:
                  - name: envoy.access_loggers.file
                    typed_config:
                      "@type": type.googleapis.com/envoy.extensions.access_loggers.file.v3.FileAccessLog
                      path: /dev/stdout
                route_config:
                  name: local_route
                  virtual_hosts:
                    - name: render_redirect
                      domains:
                        - "*"
                      routes:
                        - match:
                            prefix: /
                          redirect:
                            port_redirect: 8080
                http_filters:
                  - name: envoy.filters.http.ext_proc
                    typed_config:
                      "@type": type.googleapis.com/envoy.extensions.filters.http.ext_proc.v3.ExternalProcessor
                      failure_mode_allow: false
                      mutation_rules:
                        allow_all_routing: true
                        allow_envoy: true
                      grpc_service:
                        envoy_grpc:
                          cluster_name: xds_cluster
                  - name: envoy.filters.http.router
                    typed_config:
                      "@type": type.googleapis.com/envoy.extensions.filters.http.router.v3.Router

Logs:
These logs are WITH the code changes I put in to print the header values:
[2023-12-29 04:47:36.266][21][trace][ext_proc] [source/extensions/filters/http/ext_proc/mutation_utils.cc:198] Setting header key: foo value: bar - append r
[2023-12-29 04:47:36.266][21][trace][ext_proc] [source/extensions/filters/http/ext_proc/mutation_utils.cc:205] setCopy: header_name: foo, header_value:
[2023-12-29 04:47:36.266][21][trace][ext_proc] [source/extensions/filters/http/ext_proc/mutation_utils.cc:206] setCopy:
':status', '307'
'foo', ''

We are printing out the header values later in the code, so I would recommend that we log the header values earlier in the code as well.
Call Stack:
It is not crashing; it sends empty header values to the HTTP client.
TLDR;
When using an ext_proc filter and having envoy.reloadable_features.send_header_raw_value: true envoy does not set a header value correctly.  I have the header value set to "foo," and the header value is getting set to "". That empty header value is getting sent back to the client.
If I were better at C++ I would create a unit test.

@yanjunxiang-google, since you have modified a bunch of this code, can you please provide some guidance?  Even if I'm doing something oddly we have at least an edge case that provides a challenging user experience.

@chrislovecnm ,  I am guessing the gRPC server you wrote is sending header value in "value" filed:
https://github.com/envoyproxy/envoy/blob/5a15b9fc828556e1243c852a24ce3f78d0c332a6/api/envoy/config/core/v3/base.proto#L329
not in "raw_value" field:
https://github.com/envoyproxy/envoy/blob/5a15b9fc828556e1243c852a24ce3f78d0c332a6/api/envoy/config/core/v3/base.proto#L336

I'm using:
<EMAIL_ADDRESS>
And that does not even have the raw value in it.  I updated to
<EMAIL_ADDRESS>
And I'm seeing
RawValue []byte

Even still, there is a bug in the API when you are using Value and not RawValue.

@chrislovecnm were you able to find a solution for this?

I'm was using:
<EMAIL_ADDRESS>
And that does not even have the raw value in it. I updated to
<EMAIL_ADDRESS>
And I'm seeing
RawValue []byte

Even still, there is a bug in the API when you are using Value and not RawValue.

@chrislovecnm this API doc: https://github.com/envoyproxy/envoy/blob/e9558d3f784b4378f7bab5cf8a83941452b98f97/api/envoy/service/ext_proc/v3/external_processor.proto#L205,  described when to use 'value' and when to use 'raw_value'.    Could you please elaborate what's the API bug?

Still relevant today.
java example:
Using setValue in the external processor ends up with empty string value in envoy.
                    HeaderValueOption headerValueOption = HeaderValueOption.newBuilder()
                            .setHeader(HeaderValue.newBuilder()
                                    .setKey("target")
                                    .setValue("www.google.com")
                                    .build()
                            ).build();

'target', ''
While setRawValue works and the value is correct.
                    HeaderValueOption headerValueOption = HeaderValueOption.newBuilder()
                            .setHeader(HeaderValue.newBuilder()
                                    .setKey("target")
                                    .setRawValue(ByteString.copyFrom("www.google.com".getBytes())
                                    .build()
                            ).build();

'target', 'www.google.com'


RON is missing from documentation

Hi,
Thanks for the great library.
The last release supports RON as well, but this is not added in the documentation.

Actually, I've read things more closely, and everything fine.


[ci][chore] Format PRs to someengineering/resoto.com with Prettier

Description
Format PRs to the someengineering/resoto.com repository.
Code of Conduct
By submitting this pull request, I agree to follow the code of conduct.

Codecov Report

Merging #726 (4868fda) into main (aee23b1) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##             main     #726   +/-   ##
=======================================
  Coverage   89.54%   89.54%
=======================================
  Files          69       69
  Lines        9636     9636
=======================================
  Hits         8629     8629
  Misses       1007     1007

Flag
Coverage Δ

resotocore
89.54% <ø> (ø)

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

Continue to review full report at Codecov.

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


Document the shutdown API

As a result of this K8s job feature support a new API for shutdown has need introduced that needs to be added to the Dapr API reference docs as a new section. https://docs.dapr.io/reference/api/
http://localhost:3500/v1.0/shutdown

Duplicate of #1386


Multiple Projectors

Have more then one projector.
Fix https://github.com/OpenSlides/OpenSlides/pull/916#issuecomment-26693901 by the way.

see concept page https://github.com/OpenSlides/OpenSlides/wiki/De%3AKonzept-Multiprojektor

closed if PR #2379 is merged

done with #2379


Group by does not work for date strings

DEMO: CodeSandbox mui v4
Describe the bug
When having date strings of the same day but different time. Group by date does not work as expected.
To Reproduce

Go to provided demo.
Group by timestamp column

Expected behavior
Expected 2 grouped rows for 6/2/2022 and 6/3/2022, but instead of date is a separate groupby
Screenshots

I tried to look into why this could be occurring.
I think I've pinpointed it to the data-manager.groupData function

You need to provide dates instead of strings to make them sortable by their date and not string comparison.


Add cabot_alert_slack as default plugin

I removed the plugin app versions from the default envs as they seem unnecessary as they are already in requirements-plugins and packaged by default to the correct versions

Codecov Report

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

@@           Coverage Diff           @@
##           master     #466   +/-   ##
=======================================
  Coverage   78.86%   78.86%
=======================================
  Files          34       34
  Lines        2446     2446
  Branches      154      154
=======================================
  Hits         1929     1929
  Misses        473      473
  Partials       44       44

Continue to review full report at Codecov.

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


Periodic table

This is a boundary node for the shell-model.

I'll modify it later.

This was meant to be a boundary node for the shell-model. We can close it.

for now, no boundary nodes.


push_pulp: describe using service account secrets (fixes #270)

This pull request describes how to use the pulp_secret_path parameter and some other build JSON changes to use secrets from the builder service account rather than using the sourceSecret slot.
It also adds a test case to verify that pulp_secret_path works correctly.

LGTM, merged. Related question, how is the service account that is used for building determined? Is the builder value hardcoded in openshift? I'm using default in ansible-osbs so I assume that's wrong now.

I think it's hardcoded, yes:
https://docs.openshift.org/latest/admin_guide/service_accounts.html#managed-service-accounts


Fill pattern for Canvas renderer flat styles

This pull request brings the fill-pattern-src, fill-pattern-size and fill-pattern-offset flat style properties, which were recently added to the WebGL renderer, to the Canvas 2d renderer. This is done by introducing a PatternDescriptor object structure, which can also be passed to ol/style/Fill's color property instead of a CanvasPattern.
The behavior of a pattern created from a PatternDescriptor or flat style is the same as a CanvasPattern passed to ol/style/Fill's color property, except for how pixel ratio is handled. Same as for the WebGL renderer, the pattern is scaled by the map's pixel ratio to ensure the same visual map output regardless of the pixel ratio.
Other than the WebGL renderer, there is no scaling between integer zoom levels. This is the reason why the rendering test result for fill-pattern is slightly different from webgl-fill-pattern.

fill-pattern-src used in conjunction with fill-color does give a significantly different result to WebGL if either has semi-transparency, but #15295 should fix that without any additional changes (although #15295 could be rebased after this is merged and a second rendering test added to confirm that).

Really cool that you have introduced this functionality so quickly! I have tried it out in our EOX AgriApp already. Here is a working usage example:

function getLayerConfig() {
      const cnv = document.createElement("canvas");
      cnv.width = 16;
      cnv.height = 32;

      const ctx = cnv.getContext("2d");
      ctx.fillStyle = "#d95f02";
      ctx.fillRect(0, 0, cnv.width, cnv.height);

      ctx.beginPath();
      ctx.fillStyle = "#7fc97f";
      ctx.moveTo(0, 0);
      ctx.lineTo(16, 16);
      ctx.lineTo(0, 32);
      ctx.closePath();
      ctx.fill();

      // const pattern = ctx.createPattern(cnv, "repeat");
      // const matrix = new DOMMatrix();
      // pattern.setTransform(matrix.rotate(90).scale(1 * 0.75));

      const patternStyle = {
        "stroke-color": "yellow",
        "stroke-width": 3,
        "fill-pattern-src": cnv.toDataURL("png"),
      };

      return {
        type: "VectorTile",
        declutter: true,
        source: {
          type: "VectorTile",
          url: decodeURI(url.toString()),
          format: "MVT",
        },
        style: patternStyle,
      };

The only thing that I could not get to work in comparison with the CanvasPattern usage, is the transform on the actual pattern, using a DOMMatrix. While this can worked around by modifying the path instructions, scaling is not easily achievable without introducing artifacts (a canvas with 30x15 pixels already introduces artifacts at the tile boundaries).

Thanks for the feedback, @StefanBrand. I need to coordinate with @jahow, but maybe it makes sense to introduce a fill-pattern-transform property. If not: you could rotate and scale the context you draw to, then you don't need to change the paths. Don't you also see artefacts at tile boundaries when using a CanvasPattern with a transform matrix applied`? Pattern images should always have a width and height that matches a power of two, to avoid these artefacts.

Compared alongside perfected aligned WebGL rendering, when the pixel ratio is not 1 a canvas pattern is slightly misaligned when the geometry, position and resolution is set so it should be perfectly aligned.  Unlikely to be noticeable by a user but could be inconvenient in rendering tests https://jsfiddle.net/L4359chw/

I'm getting a weird traceback and artifacts on text when used in combination with the pattern:
Uncaught TypeError: i is null
    re main-fb82107f.js:1040
    setTextStyle main-fb82107f.js:15348
    bD main-fb82107f.js:17526
    wD main-fb82107f.js:17358
    Gf main-fb82107f.js:17337
    renderFeature main-fb82107f.js:30093
    N main-fb82107f.js:29792
    updateExecutorGroup_ main-fb82107f.js:29805
    prepareTile main-fb82107f.js:29721
    getTile main-fb82107f.js:29732
    renderFrame main-fb82107f.js:29314
    render main-fb82107f.js:6316
    renderFrame main-fb82107f.js:6787
    renderFrame_ main-fb82107f.js:9730
    animationDelay_ main-fb82107f.js:9600
    render main-fb82107f.js:9624
    renderFrame_ main-fb82107f.js:9730
    animationDelay_ main-fb82107f.js:9600
    render main-fb82107f.js:9624
    renderFrame_ main-fb82107f.js:9730
    animationDelay_ main-fb82107f.js:9600
    render main-fb82107f.js:9624
    renderFrame_ main-fb82107f.js:9730
    animationDelay_ main-fb82107f.js:9600
    render main-fb82107f.js:9624
    renderFrame_ main-fb82107f.js:9730
    animationDelay_ main-fb82107f.js:9600
    render main-fb82107f.js:9624
    renderFrame_ main-fb82107f.js:9730
    animationDelay_ main-fb82107f.js:9600
    render main-fb82107f.js:9624
    renderFrame_ main-fb82107f.js:9730
    animationDelay_ main-fb82107f.js:9600
    render main-fb82107f.js:9624
    handleTileChange_ main-fb82107f.js:9551
    handleTileChange main-fb82107f.js:7563
    dispatchEvent main-fb82107f.js:837
    changed main-fb82107f.js:23388
    handleImageLoad_ main-fb82107f.js:23554
    node_modules chunk-vendors.js:59826
    promise callback*eO main-fb82107f.js:10806
    load main-fb82107f.js:23594
    loadMoreTiles main-fb82107f.js:7574
    handlePostRender main-fb82107f.js:9464
    node_modules chunk-vendors.js:58757
    setTimeout handler*renderFrame_ main-fb82107f.js:9737
    animationDelay_ main-fb82107f.js:9600
    render main-fb82107f.js:9624
    handleSizeChanged_ main-fb82107f.js:9483
    dispatchEvent main-fb82107f.js:837
    notify main-fb82107f.js:1103
    set main-fb82107f.js:1132
    setSize main-fb82107f.js:9758
    updateSize main-fb82107f.js:9805
    handleTargetChanged_ main-fb82107f.js:9545
    dispatchEvent main-fb82107f.js:837
    notify main-fb82107f.js:1103
    set main-fb82107f.js:1132
    setTarget main-fb82107f.js:9768
    firstUpdated main-fb82107f.js:84936
    _$AE main-fb82107f.js:267
    performUpdate main-fb82107f.js:258
    scheduleUpdate main-fb82107f.js:231

This is the style that should be applied (black text):
      const defaultStyle = {
        "stroke-width": 0.3,
        "stroke-color": "black",
        "text-value": "foobar",
        "text-font": "14px sans-serif",
        "text-fill-color": "black",
        "text-stroke-color": "#fff",
        "text-stroke-width": 3,
        "text-overflow": true,
      };

      const patternStyle = {
        ...defaultStyle,
        "stroke-color": "yellow",
        "stroke-width": 3,
        "fill-pattern-src": cnv.toDataURL("png"),
      };

The problems mentioned above should now be fixed.

Thanks @tschaub for the suggestions, I added a commit which addresses them.

Thanks for the thorough review, @tschaub!


Removed need for c++11 patch

Hopefully this fixes the need for the c++11 patch. I haven't got the chance to see if it works in your setup, so it's worth checking before accepting.

Yup, just what I was hoping for. Thank you.

You're welcome :)


Introducing ScalableSymbolicPulse to correctly compare pulses of amp,angle representation

Summary
Qiskit-Terra PR #9002, converted the library symbolic pulses from a complex amp representation to a real (float) amp,angle representation. To overcome the non-unique nature of the new representation (particularly, when negative amp is allowed), this PR introduces a new subclass ScalableSymbolicPulse which assumes the amp,angle representation, and compares the pulses accordingly.
PR #9257 presented a more general solution for any non-unique representation, but it was debated whether such a general solution is in fact needed.
Details and comments
Qiskit-Terra PR #9002, converted the library symbolic pulses from a complex amp representation to a real (float) amp,angle representation. To better support several experiments in Qiskit-Experiments, the amp parameter is allowed to take both positive and negative values. This decision creates a non-unique representation for the pulses, where a pi shift of angle and a sign flip of amp have the same effect (the issue obviously also exists for 2*pi shift of angle). For example, the following two pulses
from qiskit.pulse.library import Gaussian
import numpy as np

g1 = Gaussian(duration=100, sigma=50, amp=-1, angle=0)
g2 = Gaussian(duration=100, sigma=50, amp=1, angle=np.pi)

are not the same when equated (because their parameters are different):
g1 == g2 # False

but they represent the same waveform:
np.all(g1.get_waveform().samples == g2.get_waveform().samples) # True

This PR sets to correct this situation, by introducing a new subclass ScalableSymbolicPulse. This class assumes that the pulse envelope has the form amp * exp(1j * angle)*F(t,parameters) where F is some function. When two instances of this class are equated, the complex amplitude amp * exp(1j * angle) is compared, but the individual parameters amp,angle are ignored.
The comparison is being done using numpy.isclose(), with default values of rtol=1.e-5, atol=1.e-8, which I think is sufficient**.
the comparison of the complex amplitude (and the hashing) is carried out after a rounding to 6 decimal places. Considering the expected scale of the complex amplitude, and HW finite precision, this value should be sufficient to distinguish pulses which are really different from one another.
To accommodate the change, QPY format now includes a class_name field, which indicates the correct class when loading the pulse. QPY version was bumped to 6 to reflect this. QPY files of older versions assign only library pulses to the new subclass (even if a custom pulse might fit its purpose).
Returning to the example above, the new PR yields:
g1 == g2 # True

Along the way, the issue of hashing was raised. Because equal objects should have the same hash, this made hashing very problematic (the only sensible solution was to bin the complex amplitude via rounding). To avoid this issue, and because SymbolicPulse hashing was only used for _is_amplitude_valid, it was decided to remove the hashing option for SymbolicPulse and ScalableSymbolicPulse. Note that the caching of _is_amplitude_valid is based on a hashing which doesn't take into account the complex amp comparison.

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

42 of 50 (84.0%)  changed or added relevant lines in 4 files are covered.
2 unchanged lines in 1 file lost coverage.
Overall coverage increased (+0.04%) to 84.589%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

qiskit/pulse/library/symbolic_pulses.py
27
28
96.43%

qiskit/qpy/binary_io/schedules.py
11
18
61.11%

Files with Coverage Reduction
New Missed Lines
%

src/sabre_swap/layer.rs
2
98.95%

Totals

Change from base Build<PHONE_NUMBER>:
0.04%

Covered Lines:
63985

Relevant Lines:
75642

💛  - Coveralls

This implementation looks nice to me. I will let @nkanazawa1989 provide the approval.
I just want to mention a couple things about larger implications.

In future we may add other subclass with different set of parameter names with assigned role. So class name is much flexible

What kind of future pulse classes are you thinking of? If they implement features mutually exclusive to ScalabeSymbolicPulse, then subclasses make sense. If the features might overlap, then subclasses become more awkward than adding features to the base class since a pulse could only be one subclass at a time.
The other point I want to mention is that we should review when we need to check pulse equality. The main use cases that I can think of are the ones I mentioned in my inline comment about __hash__ -- when dealing with many pulse gates it can be useful to deduplicate the pulses for efficiency in processing them. Beyond that, I can imagine checking pulses for equality coming up, but I don't know that it is totally necessary (I can't think of a good case other than deduplication; maybe in round trip tests of QPY?). We might just reflect and make sure we think it is worth the extra complexity to support checking pulse equality. One of the motivations for this PR was that with the complex amp->amp+angle change in #9002 it became the case that serializing to QPY and deserializing back to Python could produce a pulse that was not equal to its original source which felt weird. Not supporting __eq__ would be an alternative solution.

What kind of future pulse classes are you thinking of? If they implement features mutually exclusive to ScalabeSymbolicPulse, then subclasses make sense. If the features might overlap, then subclasses become more awkward than adding features to the base class since a pulse could only be one subclass at a time.

I don't have any concrete idea in my mind, but I was just on the safe side. The original implementation introduced a boolean value to distinguish two classes. If we introduce another subclass in future PR we would need to bump the QPY version again and permanently maintain the another legacy loader. If we save class name instead of boolean we don't need to introduce such complexity.

@nkanazawa1989 Does one of us put the automerge tag on this or do we let someone from the core team do that? I have this open in a browser tab and each time I pass by it I see it out of date with main and still re-running the checks, so I am not sure a human will ever get a chance to merge it :slightly_smiling_face:

For reference: Will and I talked offline, and the answer is that code-owners are completely allowed (encouraged, even!) to apply "automerge" themselves when something's appropriate to merge.  It's much better to use the bot than to do it manually because the bot will only update the PR when it's its turn to merge, avoiding unnecessary CI usage to test updates that'll never be up-to-date.

Thanks Will for adding the automerge tag! I was waiting for your final review this time (if you wanted).

I might as well mention for @nkanazawa1989 and @TsafrirA that Jake also pointed out that the reno file uses reStructuredText format rather than markdown, so for example in line code formatting should use two ` around the text instead of one.

Thanks for the heads up @wshanks . This one's on me.


Add address to filter condition

What changes?
address  field in safeStatus table is an index, adding this field to condition is reducing heavily the cost of the resultant query.
The old query explain was as follows:
Gather Merge  (cost=1094612.73..1095395.38 rows=6708 width=46)
  Workers Planned: 2
  ->  Sort  (cost=1093612.70..1093621.09 rows=3354 width=46)
        Sort Key: history_safestatus.address, history_safestatus.nonce DESC, history_internaltx.block_number DESC, history_ethereumtx.transaction_index DESC, history_safestatus.internal_tx_id DESC
        ->  Hash Join  (cost=1019129.86..1093416.30 rows=3354 width=46)
              Hash Cond: (history_safestatus.internal_tx_id = history_internaltx.id)
              ->  Parallel Seq Scan on history_safestatus  (cost=0.00..59969.29 rows=670829 width=38)
              ->  Hash  (cost=1014551.76..1014551.76 rows=263368 width=16)
                    ->  Nested Loop  (cost=1.12..1014551.76 rows=263368 width=16)
                          ->  Index Scan using history_ethereumtx_pkey on history_ethereumtx  (cost=0.56..8.58 rows=1 width=37)
                                Index Cond: (tx_hash = 'any_tx_hash'::bytea)
                          ->  Index Scan using history_internaltx_ethereum_tx_id_e6ac35ab on history_internaltx  (cost=0.56..1011909.51 rows=263368 width=44)
                                Index Cond: (ethereum_tx_id = 'any_tx_hash'::bytea)

The first action that was planned was scan all the table to find the transaction hash that is not a field on SafeStatus.
SafeStatus table have the address field defined as index, adding this field to filter first is going to improve the execution.
Gather Merge  (cost=23778.85..23779.77 rows=8 width=46)
  Workers Planned: 1
  ->  Sort  (cost=22778.84..22778.86 rows=8 width=46)
        Sort Key: history_safestatus.nonce DESC, history_internaltx.block_number DESC, history_ethereumtx.transaction_index DESC, history_safestatus.internal_tx_id DESC
        ->  Nested Loop  (cost=46.76..22778.72 rows=8 width=46)
              ->  Nested Loop  (cost=46.20..22710.02 rows=8 width=74)
                    ->  Parallel Bitmap Heap Scan on history_safestatus  (cost=45.64..8949.35 rows=1610 width=38)
                          Recheck Cond: (address = 'any_address'::bytea)
                          ->  Bitmap Index Scan on history_safestatus_address_68cd154d  (cost=0.00..44.95 rows=2737 width=0)
                                Index Cond: (address = 'any_address'::bytea)
                    ->  Index Scan using history_internaltx_pkey on history_internaltx  (cost=0.56..8.55 rows=1 width=44)
                          Index Cond: (id = history_safestatus.internal_tx_id)
                          Filter: (ethereum_tx_id = '\\any_tx_hash'::bytea)
              ->  Index Scan using history_ethereumtx_pkey on history_ethereumtx  (cost=0.56..8.58 rows=1 width=37)
                    Index Cond: (tx_hash = '\\any_tx_hash'::bytea)

In the last explain we can see that the cost was reduced and the first action is to search by the address index, reducing the number of rows to search later by transaction hash.

Real good catch. I would like to add:

Please use EXPLAIN ANALYZE, so we see how the query is executed, not just planned
I'm a little afraid of going from a Hash join to a Nested Loop, even if that should be real quick. Could you try this query with EXPLAIN ANALYZE for a Safe with a big number of MultisigTransactions and SafeStatus?

Real good catch. I would like to add:

Please use EXPLAIN ANALYZE, so we see how the query is executed, not just planned
I'm a little afraid of going from a Hash join to a Nested Loop, even if that should be real quick. Could you try this query with EXPLAIN ANALYZE for a Safe with a big number of MultisigTransactions and SafeStatus?

Otherwise, this PR looks like a really good and logic optimization

Real good catch. I would like to add:
* Please use `EXPLAIN ANALYZE`, so we see how the query is executed, not just planned

* I'm a little afraid of going from a `Hash join` to a `Nested Loop`, even if that should be real quick. Could you try this query with `EXPLAIN ANALYZE` for a Safe with a big number of `MultisigTransactions` and `SafeStatus`?

@Uxio0 here the required results, I'm not sharing the address but is the address with more rows in MultisigTransactions and SafeStatus.
Without address in the filter:
Gather Merge  (cost=1094775.59..1095558.71 rows=6712 width=46) (actual time=310.332..311.703 rows=1 loops=1)
   Workers Planned: 2
   Workers Launched: 2
   ->  Sort  (cost=1093775.56..1093783.95 rows=3356 width=46) (actual time=307.563..307.566 rows=0 loops=3)
         Sort Key: history_safestatus.address, history_safestatus.nonce, history_internaltx.block_number, history_ethereumtx.transaction_index, history_safestatus.internal_tx_id
         Sort Method: quicksort  Memory: 25kB
         Worker 0:  Sort Method: quicksort  Memory: 25kB
         Worker 1:  Sort Method: quicksort  Memory: 25kB
         ->  Hash Join  (cost=1019280.42..1093579.03 rows=3356 width=46) (actual time=305.731..307.529 rows=0 loops=3)
               Hash Cond: (history_safestatus.internal_tx_id = history_internaltx.id)
               ->  Parallel Seq Scan on history_safestatus  (cost=0.00..59973.03 rows=671203 width=38) (actual time=0.015..151.288 rows=536387 loops=3)
               ->  Hash  (cost=1014700.83..1014700.83 rows=263407 width=16) (actual time=0.273..0.275 rows=2 loops=3)
                     Buckets: 131072  Batches: 8  Memory Usage: 1024kB
                     ->  Nested Loop  (cost=1.12..1014700.83 rows=263407 width=16) (actual time=0.225..0.229 rows=2 loops=3)
                           ->  Index Scan using history_ethereumtx_pkey on history_ethereumtx  (cost=0.56..8.58 rows=1 width=37) (actual time=0.020..0.020 rows=1 loops=3)
                                 Index Cond: (tx_hash = 'any_tx_hash'::bytea)
                           ->  Index Scan using history_internaltx_ethereum_tx_id_e6ac35ab on history_internaltx  (cost=0.56..1012058.19 rows=263407 width=44) (actual time=0.203..0.204 rows=2 loops=3)
                                 Index Cond: (ethereum_tx_id = 'any_tx_hash'::bytea)
Planning Time: 1.307 ms
Execution Time: 311.806 ms

Result for adding address to filter:
Gather Merge  (cost=36581.58..36584.15 rows=22 width=46) (actual time=11.008..12.518 rows=1 loops=1)
   Workers Planned: 2
   Workers Launched: 2
   ->  Sort  (cost=35581.56..35581.58 rows=11 width=46) (actual time=8.491..8.492 rows=0 loops=3)
         Sort Key: history_safestatus.nonce, history_internaltx.block_number, history_ethereumtx.transaction_index, history_safestatus.internal_tx_id
         Sort Method: quicksort  Memory: 25kB
         Worker 0:  Sort Method: quicksort  Memory: 25kB
         Worker 1:  Sort Method: quicksort  Memory: 25kB
         ->  Nested Loop  (cost=92.00..35581.37 rows=11 width=46) (actual time=5.148..8.464 rows=0 loops=3)
               ->  Nested Loop  (cost=91.44..35486.90 rows=11 width=74) (actual time=5.143..8.458 rows=0 loops=3)
                     ->  Parallel Bitmap Heap Scan on history_safestatus  (cost=90.87..16070.93 rows=2282 width=38) (actual time=0.175..0.896 rows=1790 loops=3)
                           Recheck Cond: (address = '\any_address'::bytea)
                           Heap Blocks: exact=289
                           ->  Bitmap Index Scan on history_safestatus_address_68cd154d  (cost=0.00..89.50 rows=5477 width=0) (actual time=0.406..0.407 rows=5370 loops=1)
                                 Index Cond: (address = '\any_address'::bytea)
                     ->  Index Scan using history_internaltx_pkey on history_internaltx  (cost=0.56..8.51 rows=1 width=44) (actual time=0.004..0.004 rows=0 loops=5370)
                           Index Cond: (id = history_safestatus.internal_tx_id)
                           Filter: (ethereum_tx_id = '\any_tx_hash'::bytea)
                           Rows Removed by Filter: 1
               ->  Index Scan using history_ethereumtx_pkey on history_ethereumtx  (cost=0.56..8.58 rows=1 width=37) (actual time=0.013..0.013 rows=1 loops=1)
                     Index Cond: (tx_hash = '\any_tx_hash'::bytea)
 Planning Time: 0.314 ms
 Execution Time: 12.581 ms

Perfect, really good improvement!


📝 Update include syntax for docs/az/docs/index.md

Hi @bilalqv, thanks for your interest in contributing to FastAPI! However, the syntax is wrong, you can see in the preview that it's not working as expected. Can you update it with the proper syntax? The details are explained in #12554
Thanks in advance! :raised_hands:

will create new one


[FEAT] responsive navbar

Description
add responsive navbar and fix merge conflicts

Issue Ticket Number
Fixes #(6)

Type of change

[x ] Bug fix (non-breaking change which fixes an issue)
[x ] 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

Checklist:

[ x] I have followed the contributing guidelines of this project as mentioned in CONTRIBUTING.md
[x ] I have checked to ensure there aren't other open Pull Requests for the same update/change?
[x ] I have performed a self-review of my own code
[ x] I have commented my code, particularly in hard-to-understand areas
[ x] I have made corresponding changes needed to the documentation

Sorry, the linter


EARB definitions of IT Solutions, Products, etc. and breakdown of rights vs services.

Question
At Governance / Produce the EARB standard definition of IT Solutions. Do we mean to formally define the relationships between IT Solutions, IT Products, Software, Infrastructure?
i.e. What is in Appendix A - Business Case / Build vs Buy : Oversimplified Question
Originally posted by @remyb2canada in https://github.com/sara-sabr/ITStrategy/pull/1325#discussion_r513708824

Need a more nuanced understanding of the complexity of managing IT within the organization. Bundling everything in procurement process seems like a simpler way of managing things from in incoming point of view but creates medium to long term constraints that could hinder ability for the org to course correct and actually deliver on its mandate.

Action item added to strategy and approved at ARC.


Lobrien remove variant return conflicts

Manual removal of MacOS/iOS return conflicts. These changes will be clobbered next mdoc update, I think. Favored iOS over MacOS, so might survive Xam.iOS.dll updates in CI.

Manual update of existing EcmaDoc XML while CI is blocked due to variant return types means that this ignores new binaries.

Docs Build status updates of commit 62a499f:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

en/AudioUnit/AUAudioUnit.xml
:white_check_mark:Succeeded

en/GameKit/GKAchievement.xml
:white_check_mark:Succeeded

en/GameKit/GKAchievementDescription.xml
:white_check_mark:Succeeded

en/GameKit/GKLeaderboard.xml
:white_check_mark:Succeeded

en/GameKit/GKPlayer.xml
:white_check_mark:Succeeded

en/GameKit/GKScore.xml
:white_check_mark:Succeeded

en/MediaPlayer/MPMediaItemArtwork.xml
:white_check_mark:Succeeded

en/PdfKit/PdfPage.xml
:white_check_mark:Succeeded

en/SceneKit/SCNRenderer.xml
:white_check_mark:Succeeded

en/SceneKit/SCNVector3.xml
:white_check_mark:Succeeded

en/SceneKit/SCNVector4.xml
:white_check_mark:Succeeded

en/SceneKit/SCNView.xml
:white_check_mark:Succeeded

en/Security/SecCertificate.xml
:white_check_mark:Succeeded

en/WebKit/WKWebView.xml
:white_check_mark:Succeeded

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.


LSF Rest: Use file upload for jobs with toolScript

I just saw, that this is super old. Do you still need to keep it open?


Valgrind Uninitialized Memroy Issues

There are a lot of Valgrind issues relating to the use of uninitialised memory and conditional jumps depending on them. Obviously a lot of this is unimportant since it doesn't make sense to initialize every bit of memory.
Is it safe to ignore all of such report from VVDeC, or is there a valgrind suppressions file somewhere? I'd be happy to help reporting and classifying them if necessary.
Best regards.

Please have a look at: https://github.com/fraunhoferhhi/vvdec/blob/192baa18cb8ded1786d1ff343eba63854f3e3bbf/source/Lib/CommonLib/TypeDef.h#L102
We identified a lot of false positives, and to check the code with Valgrind, we a use more memsets. For each of this memsets, we analyzed it and are quite sure those are false positives, thus don't need to be initialized in production code. Still, let me know if you disagree with any of the instances, or if you find unitialized memory issues even with this code enabled.

Thank you Adam :). Setting it fixes the issue at least so far. If there are still issues I will re-open the ticket


(vim) Path for batch files should not be into system Windows folder

Chocolatey Version
1.1.0
Chocolatey License
No response
Package Version
9.0.0040
Current Behaviour
I noticed an uninstall is removing "$env:windir\vimtutor.bat"
I would consider this a bad location for any scripts that come with vim because:

A user would not expect to find files spread across the system, where possible they should be kept together and tidy in one path.
A feature upgrade of Windows would move the old installation to Windows.old so this file would be orphaned, lost or not executable

Expected Behaviour
vim files found in one consolidated location (where possible) matching the install path as chosen on install. Nothing written to c:\windows* or equivalent
Steps To Reproduce
Install vim with chocolatey
Environment
- Operating System: Microsoft Windows NT 10.0.22000.0
- PowerShell Version: 5.1.22000.653
- Shell: Windows Terminal

Chocolatey Log
n/a

Anything else?
No response

A agree that files should not be installed to the windows directory without a good reason, I am a bit hesitant to change this without further knowledge about why this was chosen and has been doing that since 2019, with this is the first time someone has mentioned it (at least here on GitHub).
@matsuhav, as the one that worked on this package, do you remember why it was decided to copy the vimtutor.bat file into the windows folder?

I agree with you @AdmiringWorm .
I think we should stop copying it.
Messing around system directories like windir is a bad idea and Chocolatey should not touch them.
Even more, I did some quick experiments on the latest version and found that

vimtutor.bat created by the installer differs from what we are currently copying.
The copied vimtutor.bat is not even working properly. It cannot run GVim(GUI version of Vim).

We should definitely stop copying it for those reasons.
And, as a better fix, maybe we can create vimtutor.bat in proper manner by install.exe, though it is not documented. (i.e. 5th background explained later was false?)
https://github.com/vim/vim/blob/master/src/dosinst.c#L2421
https://github.com/vim/vim/blob/master/src/dosinst.h#L359
https://github.com/vim/vim/blob/master/src/dosinst.c#L2377

As a background, IIRC,

vim-win32-installer offers two install options: Zip installation and installer.
I chose Zip installation over installer because the installer didn't offer some installation options which were supported by the old vim package which was based on Cream.
Zip installation should be done by unzipping it and running unzipped install.exe.
However, Zip installation and installer didn't do the same thing.

The installer had created view.bat, vim.bat, vimdiff.bat and vimtutor.bat in windir.
install.exe had created all above but vimtutor.bat in windir.
(These bat files make vim commands available in cmd.exe and Powershell. So, Zip installation didn't offer vimtutor command)

When I copied vimtutor.bat to windir, vimtutor command worked.
I decided to copy it because I thought vimtutor command may be used by some introductory materials and should be available.

In summary, I think there are two issues around batch files:

batch files are generated in windir.
Copying vimtutor.bat part of install script is broken.

I made a commit which solves the latter here https://github.com/matsuhav/chocolatey-packages/commit/8b0935d842386a470d6f96c8dbec1b49d5a71c18
About the former, I inspected the behaviors and codes of installers.
Both install.exe in Zip installation and the installer generate batch files in windir by default and there are no options controlling the location.
But we can workaround this. Because install.exe searches for and overwrites batch files found in PATH, we can create dummy batch files in $env:ChocolateyInstall\bin beforehand and make it overwrite them.
I implemented this at https://github.com/matsuhav/chocolatey-packages/commit/94a292938e2fb3e367b562ad1ee4566f519f4d70
Changing the default location bothers me somehow, but these batch files are for interactive shell command and should not break anything.

@matsuhav as I was saying on another vim installer issue  - this is upstream problems with vim's installer mechanism. Maybe the solution is to fix the source of the problems raising issues with vim itself here: https://github.com/vim/vim-win32-installer   rather than trying to figure a way to post-process the sprawl of files in the wrong places/wrong permissions.

Yes, there is no clean way for us to specify where batch files are installed as far as I can tell.
Maybe we should update the title of this issue to something like "Path for batch files should not be ..." because vim package installs 8 batch files in windir in total.
Bad handling of vimtutor.bat made us become aware of this issue but this is not limited to vimtutor.bat.

@pauby
I'm not working on this now since we identified this as an upstream issue.
If the workaround I wrote earlier (quoted below) looks good to you, I'll make a PR.
Because it's a little bit hacky and can break in the future, I want your thoughts on this.

But we can workaround this. Because install.exe searches for and overwrites batch files found in PATH, we can create dummy batch files in $env:ChocolateyInstall\bin beforehand and make it overwrite them.
I implemented this at matsuhav@94a2929

The changes you're making create files directly in the Chocolatey bin directory, which for the Chocolatey Community Repository isn't allowed. 😭

Thank you for your comment. I was not aware of that. Well, I should have thought about that. It is an obvious rule to prevent dependency and conflict hell.
So, our only option is to implement these operations?
When installing,

Create some directory somewhere in vim package destination
Add it to PATH
Put empty dummy batch files in it
(and install.exe will overwrite them with real ones)

When uninstalling,

remove the directory from PATH

So, our only option is to implement these operations? When installing,

Create some directory somewhere in vim package destination
Add it to PATH
Put empty dummy batch files in it
(and install.exe will overwrite them with real ones)

I would suggest a bit different approach.

Create a vim directory in C:\tools folder (a user can configure this folder, and can be grabbed through the Get-ToolsLocation helper)
Add it to PATH
Can't speak of this one, but sure if the dummy file is needed then yeah.

On Uninstall

Remove the directory from PATH
Remove the directory itself


Gem version for Rails ?

I couldn't find any informations about this, did you plan to create a gem version to use with Rails ?
That would be awesome !

A Rails version has been started and should be in place to share it out soon for testing and contributions. You can follow the roadmap which will be evolving the structure of the project https://github.com/zurb/foundation-emails/wiki/Roadmap

We'll have the first version ready for testing today. Are you able to try it out and provide feedback?

Hi Rafi, I'm interested in a Foundation for Emails 2.0 Gem / workflow. Is there a repository / website for this gem? Any documentation?
Thanks.

I'd be interested in testing this out as well.

Will the inky-rb repo be opened up soon? I have version 0.0.2 of the gem that was published and was able to mount the engine so I could use inky templates. Not sure how this works for actually sending the emails (as right now I have it mounted to the development email preview path), but it's good enough to get developing with.

@rafibomb Is inky-rb still available for testing?  I'd love to try it out

@MSeneadza It is in the rubygems repo: https://rubygems.org/gems/inky-rb/versions/0.0.2
I've run into a couple of issues with it. The one I'm facing now is that I can't get it to render an email template using inky. It will render the email content just fine, but the outer layout, it can't find.

@jfalk @MSeneadza @RegisFrey The inky-rb repo will be open soon - until then, we have pushed v0.0.3 to Rubygems. You can find some setup instructions here https://github.com/zurb/foundation-emails/pull/446#issuecomment-229549261

The inky-rb repo has been released - have at it y'all!

Thanks @zokioki

@oyeanuj At this time, using the foundation_emails gem would not be the best choice to get the Foundation Emails assets into your mailer layouts, since API-only Rails projects do not have the Asset Pipeline enabled to reference or process the packaged Sass.
An alternative approach would be to grab the dist stylesheet and manually inline it within of your mailer layout. To keep the layout cleaner, you can use the premailer-rails gem to reference that stylesheet from the /public directory.

@zokioki Thanks for the quick response. I'll try out your suggestion (are there any major downsides to that?) If that doesn't work out, I'll try to see if there is a way to get the Asset Pipeline enabled.
Also, is supporting API-only Rails project in the plans? Anecdotally, with SPAs, I see a lot more of us floating around..

@zokioki Also, it seems that if I just use one of the template HTMLs, and have the premailer-rails run through it, that would be equivalent to the option your suggested. Is that correct?


Fix yum_repository makecache matcher

Get the correct action name after we fixed this in chef/chef
https://github.com/chef/chef/blob/master/lib/chef/resource/yum_repository.rb
Signed-off-by: Tim Smith<EMAIL_ADDRESS>

Do we need to do something for BC here? Maybe alias?

grep seems to suggest there should be updates to 4 files here:
% egrep -rl make_cache .
./.git/index
./examples/yum_repository/recipes/make_cache.rb
./examples/yum_repository/spec/make_cache_spec.rb
./features/yum_repository.feature
./lib/chefspec/api/yum_repository.rb

Updated for the examples and specs

and @sethvargo this was just written incorrectly to begin with, chef/chef didn't change, just somehow we started picking this up in chef/chef travis runs this AM and finally it started breaking us...

👍

Unfortunately this is fallout from a series of typos we fixed shortly after pushing 12.14. The behavior was correct in the yum cookbook and the matchers there. When I added the matchers here I just copied over the mistake in the 12.14 release.


Add some @function annotations to APIs that are defined by assignment.

This helps analyzer understand when something is a function despite not having any function-looking syntax on the right-hand-side.
Part of https://github.com/Polymer/gen-typescript-declarations/issues/23

LMK if you can think of any other APIs that might be affected by this.

I have restarted the builds, as they were failing. Let's see if the issues are related to your PR or general flakiness.

The only way this would break tests is with eslint failing, but that would fail before the actual test runner started. Rerunning the tests again, and if they fail the same way I'm just going to merge.


[refactor] separate logging into its own module

Pull Request Test Coverage Report for Build 176

52 of 53 (98.11%) changed or added relevant lines in 6 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+1.0%) to 83.207%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

src/lib/utils/logging.ts
30
31
96.77%

Totals

Change from base Build 174:
1.0%

Covered Lines:
640

Relevant Lines:
750

💛  - Coveralls


Deleting items

Is there any way to conditionally delete a folder as long as it is empty? I want to use a request combining ID+path, like:

DELETE /drive/items/{item-id}:{path-to-some-folder}/{folder}:

But delete {folder} if and only if it is empty. The key here is the atomicity of the operation, as opposed to using 2 requests to query for contents and delete the folder.

Also, is there any parameter to specify to ensure the file/folder is permanently deleted, and not moved to recycle bin? For my particular application, recycle bin is pretty much useless, so I don't want to pollute that folder with a ton of files that are obsolete.

There isn't a way to delete a folder only if it's empty. You can however confirm that the folder is empty, and then use the eTag from that metadata in the delete operation (If-Match: etag) to ensure that you only delete the folder if it hasn't changed from what you previously saw, so that you can avoid the race condition around deleting the folder just as something is added to it. This helps avoid some common reasons why you would need an atomic operation.
There isn't a way to delete permanently in the API right now. We're looking at ways to enable recycling bin management from the API, but one of the key elements of OneDrive is that your data is safe with us. Providing apps a way to destroy a file forever, while useful in some benign scenarios also enables it for destructive scenarios, so we have a balance to work through.

Well I don't know what I'm doing wrong, but if I upload files and create folders in a {folder} using web interface, that {folder}'s eTag does not change when I poll for the metadata after uploading. Not even if I rename the {folder}.

We're looking into what's going on here. I was able to confirm the behavior you mentioned where the etag does not change when the contents of the folder are changed.

Still don't have an answer about etag not changing, but you can use the "ctag" value which does change in the If-Match header as well, and ctag is only changed when the contents of the folder are changed, which is actually a better choice for your given scenario.

@rgregg This seems to be undocumented. Can I really count on this feature to be fixed?

You can count on using ctag values. I'll make sure that gets added to the documentation for the various etag headers.
We're investigating the issue with etag and may make a change to how the etag behavior works, but that won't affect the use of ctag.


Update module and inverter files (#761)

pvlib python pull request guidelines

[x] Closes issue #761
[x] I am familiar with the contributing guidelines.
[ ] Fully tested. Added and/or modified tests to ensure correct behavior for all reasonable inputs. Tests (usually) must pass on the TravisCI and Appveyor testing services.
[x] Updates entries to docs/sphinx/source/api.rst for API changes.
[ ] Adds description and name entries in the appropriate docs/sphinx/source/whatsnew file for all changes.
[ ] Code quality and style is sufficient. Passes LGTM and SticklerCI checks.
[x] New code is fully documented. Includes sphinx/numpydoc compliant docstrings and comments in the code where necessary.
[x] Pull request is nearly complete and ready for detailed review.

I am assuming already-existing tests are sufficient and I am not expected to add new tests for this change. Please tell me otherwise. :blush:
I did not modify docs/sphinx/source/whatsnew as I guess I am not supposed to know when this will be integrated and released (0.6.4, 0.7.0, x.x.x... ?)

I am assuming already-existing tests are sufficient and I am not expected to add new tests for this change. Please tell me otherwise. 😊
Correct

I did not modify docs/sphinx/source/whatsnew as I guess I am not supposed to know when this will be integrated and released (0.6.4, 0.7.0, x.x.x... ?)
v0.7.0

@cwhanse Tests seem to be passing now. :blush:
Mind suggesting (or directly amending) the note to "what's new" section?

@cwhanse Friendly ping. :innocent:

@cwhanse Tests seem to be passing now. 😊
Mind suggesting (or directly amending) the note to "what's new" section?

My apologies, this fell of my list to do.

@wholmgren ok to merge?


Example Question

Running with the Docker example, stuck in the following code and didn't move. May I ask what happened?
root@51c9472420ff:/app/metagpt# python startup.py "Write a cli snake game"
2023-08-09 08:19:23.902 | INFO     | metagpt.config:init:44 - Config loading done.
2023-08-09 08:19:25.939 | INFO     | metagpt.software_company:invest:39 - Investment: $3.0.
2023-08-09 08:19:25.940 | INFO     | metagpt.roles.role:_act:166 - Alice(Product Manager): ready to WritePRD

Having the same issue, unclear what do do at this point.

First wait for three minutes.
If it is still stuck, there is a high probability that it is a network problem, please refer to faq8 https://deepwisdom.feishu.cn/wiki/MsGnwQBjiif9c3koSJNcYaoSnu4


stat: WIP implementation of binomial distribution

NOTE: this is not 100% ready for merge.
I started working on the Binomial distribution. Most of the work is done, but there are a few issues that should be resolved before this is ready for final review

I don't sample directly from the distribution. Instead I sample b.N times from the distribution Bernoulli{P: b.P, Source: b.Source} and count the number of successes. In theory this is correct as the Binomial represents N iid draws from a Bernoulli, but I think this is probably less efficient than a routine  that can sample directly from the Binomial and some of the tests in testFullDist fail when I use this approach.
I have not implemented the Quantile function.

I didn't have the time to sort out how to sample directly from the Binomial or evaluate Quantiles, but I figured I'd share this in case members of the Gonum team either have the extra-capacity to finish this off or are willing to work with me and help me do it.
Thanks!

Thank you for the review. I will hopefully have another chance to take a look at this and make changes over the weekend.

Ping?

I'm sorry to leave this as is, but I don't think I will have the time to finish the PR any time soon. My Julia implementation of the project I was considering using go/gonum for was considerably faster than my go implementation, so I am focusing efforts there for now.
Hopefully the code I started can help towards the final implementation.
Sorry if I created extra review work for little gains.

Happy to help with speed, and happy to have future contributions if you ever want to come back.

I'd also be interested in some perf numbers and instructions to reproduce them :)

Thanks for the offers to help, but be careful what you wish for!
The binomial distribution code was a very small part of the overall project I'm using Julia for.
Knowing that, if you are still interested, let me know and I'll package up the code in a shareable way.


Add merkle sdk, still need WASM Poseidon

Similar to what I was discussing previously, we should have a merkle tree implementation (or wrapper) that allows us to benchmark other options of rebuilding the merkle tree.
This PR targets adding a MerkleTree from a third-party library @guildofweaves/merkle and a custom hash function interface in WASM for that to use. Since that merkle tree can integrate a hash function written in WASM, we can export our Poseidon implementation in Rust.
https://github.com/GuildOfWeavers/merkle/tree/master/lib/hash

What's remaining on this that we can tackle next week is to create a WasmPoseidon implementation that will allow us to use that hash function as the merkle tree hash function. Then we can benchmark between the full rust version.


Add possibility to add the top donator

Being able to see on the board who donated the most gives an incentive for people to donate a lot; they want to see their name on the board. Thus it would be beneficial if the script could automatically update this data onto the board.

Ill add this to the todo list

will be added in V2 (whenever I actually finish it lmao)


Build failing

What's up with this project? Is it still working? Is it abandoned?
Thanks in advanced...

Tests are passing now.


How we test without interactive_gui ?

when the image number too larger, the GUI will Collapse and out of memory. I want to use it without GUI

Test it under which setting?

only with command on servers without desktop,  input frames and pre_mask processed already .

What is pre_mask? First frame mask or mask of several frames?

first frame mask.
Thank you , I know how to solve it .

Then it is a semi-supervised setting. Use Mask-Propagation.

Collapse

I'm having the same problem. Why would it crashed? I have plenty of memory. I get prices killed when trying to open the tool with a 1.5 minute long resampled video at 480p that was originally a 4k video.


Add link to redux-easy-boilerplate in "boilerplate" section

Hello, it's a very nice list. Can you add our boilerplate in the list? +)
You can change description if you want

sure+)
Although, is there a reason you didn't use devarchy and did a PR instead?

Devarchy? I have'nt heard of it before. Sorry, i don't know how to make it =)

see https://github.com/brillout/awesome-react-components/blob/master/contributing.md

Yee, i read it now, but the boilerplate hasn't a npm package. Do you can't add it without a npm package?
Then you can just close PR =)

unfortunately npm is required

China


[Resource] az resource delete: Add new parameters --no-wait to support not waiting the long-running operation to finish

Related command

az resource delete
Description

Support --no-wait on az resource delete
close https://github.com/Azure/azure-cli/issues/19487
Testing Guide

History Notes

[Resource] az resource delete: Add new parameters --no-wait to support not waiting the long-running operation to finish

This checklist is used to make sure that common guidelines for a pull request are followed.

[ ] The PR title and description has followed the guideline in Submitting Pull Requests.

[ ] I adhere to the Command Guidelines.

[ ] I adhere to the Error Handling Guidelines.

Resource


request for some features

hi & thank for your work

what is the use to the option type=image in the ../theme.conf.user s'  file ?
can it be possible to get the cursor blinking ?
can you provide a blur-effect for the background ?

regards

It is probably kde auto-generated file with setting about image background
I think it is possible, but I did not see Qt Quick native features for this
I think I implement this feature in next release

@stepanzubkov

I think it is possible, but I did not see Qt Quick native features for this

there are ton of topic about blinking cursor on the web. Maybe you'll find one of then that will fit the case

...I implement this feature in next release

it will be great if you can do it :)
regard

Cursor blinking done by #35


Rename Code Lens

It's a bit unfortunate that Lapce's Code Lens feature is completely different from VSCode's Code Lens feature. I suggest renaming it. Unfortunately Makepad doesn't really have a name for it already.  Bird's eye view is my favourite.

This is a good idea, at some point we will implement LSP codelens and it will be confusing.

code scaleview

code pov

Also have some candidates: Glance View and Code (at) Glance

"code flash"?

Fixed via https://github.com/lapce/lapce/pull/3396


Update dataloader

This PR does the following:

The current SkipDataLoader and SkipBatchSampler keep skipping batches every epoch. I think it's more useful if they only skip batches for the first epoch

PyTorch DataLoader adds forward compatibilities for DataPipes. In particular, it broadcasts a shared seed across all dist processes to shuffle a datapipe when __iter__ is called (See here). This causes DataLoaderDispatcher to fall into an infinite wait, since DataLoaderDispatcher only creates an iterator for the main process.

Currently, prepare_data_loader re-builds a new DataLoader and completely discards the user's DataLoader. This could be problematic when a user subclass DataLoader and adds some custom behavior to the DataLoader. This PR proposes to turn DataLoaderShard and DataLoaderDispatcher into a wrapper that wraps user's DataLoader. They should hehave exactly the same as before except that DataLoaderShard and DataLoaderDispatcher are no longer DataLoader instances (e.g. isinstance check will fail)

The docs for this PR live here. All of your documentation changes will be reflected on that endpoint.

@yuxinyuan could you run make style; make quality? This will make the quality check pass

This PR changes way too many things to be merged as is. In particular we never advertise that we support custom subclasses of DataLoader from users (we don't, we support PyTorch dataloaders) so 3 is not a road we want to get in.
For 1, the skip_batches function builds a new dataloader that is shorter, this is the way the API was released/advertised but we won't break backward compatibility to change its behavior.
As for 2, we can explore a targetted fix in its own PR, with a clear regression test showing us the problem it fixes.

This PR changes way too many things to be merged as is. In particular we never advertise that we support custom subclasses of DataLoader from users (we don't, we support PyTorch dataloaders) so 3 is not a road we want to get in.
For 1, the skip_batches function builds a new dataloader that is shorter, this is the way the API was released/advertised but we won't break backward compatibility to change its behavior.
As for 2, we can explore a targetted fix in its own PR, with a clear regression test showing us the problem it fixes.

For 1, yes it's breaking backward compatibility. However, looking at the doc, It seems to me that skipped_dataloader is only useful for one epoch (do people skip dataloader besides resuming from a checkpoint ?)
So, from my point of view, changing the behavior of skip_first_batches can help users simplify their training code. e.g users can just do the following:
loader = DataLoader(...)
loader = accelerator.prepare(loader)
loader = accelerator.skip_first_batches(loader, num_batches=...)

for epoch in range(last_epoch, total_training_epoch):
    for batch in loader:
        # Training logic

Does this make sense to your team?


Add default logging support

Fixes #608. Refer to the task for more details. This is needed so that MCMC algorithms can output diagnostic messages to the logger.

Nice!  Also a prerequisite to integrating ideas from #20.

this is great and definitely needed, esp as the system gets more complex.
all the assert messages in the code probably should be changed to caught exceptions with a log.error message

We should still raise an exception if we have entered into a completely unexpected state so that we terminate early and throw a meaningful exception, but we can definitely supplement it with logging to output other information that may be useful for debugging.

We should still raise an exception if we have entered into a completely unexpected state
Yes sorry I meant replace/add the message not the assert.  Basically exceptions should be greppable in the logs since when you run things on remote machines a lot of times you don't have easy access to the output history

This is good to merge now.


updated the subject name error

@omidm1 : Thanks for your contribution! The author, @mahesh-unnikrishnan, has been notified to review your proposed change.

@tysonn please assign this to @eringreenlee for review and sign-off.

#sign-off

@eringreenlee: I'm sorry - only the author of this article, @mahesh-unnikrishnan, can sign off on your changes. But we do have an exception process - if you are on the Microsoft content or product team for this product area, you can ask the PR review team to review and merge it by sending mail to the techdocprs alias.


Two small corrections in de.json

The buttons in the modal said "menu" instead of "menu item" before - that is now corrected.

Cheers!


[WIP] Retry only usually-failing tests

as discussed with @asvetlov , we should retry only tests that usually fail. For now, it's make setup.
NOTE: during make setup, the most unstable part is neuro save. Firstly, I was planning to split make setup into few separate targets so that to test them individually (and re-run only neuro save part), but this is non-fair testing. So better test exact make setup and accept the overhead.
TODO: change the retry strategy: retry only when certain patterns found and break otherwise

not urgent PR, for now we can leave with the strategy to retry all failed tests


File 'kao.def' not found

I'm not able to compile report-template.tex:
$ pdflatex report-template
This is pdfTeX, Version 3.14159265-2.6-1.40.18 (TeX Live 2017) (preloaded format=pdflatex)
 restricted \write18 enabled.
entering extended mode
(./report-template.tex
LaTeX2e <2017-04-15>
Babel <3.10> and hyphenation patterns for 84 language(s) loaded.
(./kaohandt.cls
Document Class: kaohandt 2019/06/05 v1.0 kaohandt class v1.0
(/usr/local/texlive/2017/texmf-dist/tex/latex/koma-script/scrartcl.cls
Document Class: scrartcl 2017/04/13 v3.23 KOMA-Script document class (article)
(/usr/local/texlive/2017/texmf-dist/tex/latex/koma-script/scrkbase.sty
(/usr/local/texlive/2017/texmf-dist/tex/latex/koma-script/scrbase.sty
(/usr/local/texlive/2017/texmf-dist/tex/latex/graphics/keyval.sty)
(/usr/local/texlive/2017/texmf-dist/tex/latex/koma-script/scrlfile.sty
Package scrlfile, 2017/04/13 v3.23 KOMA-Script package (loading files)
                  Copyright (C) Markus Kohm

))) (/usr/local/texlive/2017/texmf-dist/tex/latex/koma-script/tocbasic.sty)
(/usr/local/texlive/2017/texmf-dist/tex/latex/koma-script/scrsize11pt.clo)
(/usr/local/texlive/2017/texmf-dist/tex/latex/koma-script/typearea.sty))

! LaTeX Error: File `kao.def' not found.

Type X to quit or <RETURN> to proceed,
or enter new name. (Default extension: def)

Enter file name:

Am I missing something (besides kao.def)?

Sorry, my mistake. I renamed that file, but did not update the references to it. The next commit will fix the problem.


Status for use with linux

What is the status for use on Linux? I seem to be having issues because freetype and gtk are not included properly.

Works fine, just use the regular CMake mechnisms for including third party libraries.
What I do is to use pkgconfig, in the top level CMakeLists.txt:
# Include useful scripts for CMake
find_package(PkgConfig REQUIRED)

# These calls create special `PkgConfig::<MODULE>` variables
pkg_check_modules(GTK REQUIRED IMPORTED_TARGET gtk+-3.0)
pkg_check_modules(WEBKIT REQUIRED IMPORTED_TARGET webkit2gtk-4.0)
pkg_check_modules(GLEW REQUIRED IMPORTED_TARGET glew)

and then use them for linking like this:
target_link_libraries(JammerNetzClient
    ${JUCE_LIBRARIES}
    PkgConfig::WEBKIT
    PkgConfig::GTK
    PkgConfig::GLEW
    ...more stuff
    )

Alright thanks for the hint, it worked. I am in the process of integrating this to the cmake files so that dependency changes are automatically grabbed through the module text format rather than the user having to manually add them. Let me know if this makes sense to make a PR out of.


Replace complicated temporal macro with generic functions

Which issue does this PR close?

Closes #2851.
Rationale for this change

What changes are included in this PR?

Are there any user-facing changes?

cc @sunchao @tustvold


[PROPOSAL] Embrace the new Android Splash Screen API

Context
Google released a new Splash Screen API which allow a consistent UI experience across apps running in the user device. The API provides to developers a set of entry-points to hook into the lifecycle of the splash screen.
Proposal
This PR is a proposal to adopt the Splash Screen API. Additionally it makes a little change on how the setup process deals with exceptions, bubble them up all the way to the presentation layer (setting some bases for communicating the error instead of crashing).

Nice


Cannot post PNG files at all

When I got to post a PNG it will fail and give me an error.
I have tried this with both True and False settings for the:
; strip metadata from the image during save
strip_metadata = True

  File "/usr/local/lib/python3.6/dist-packages/bottle.py", line 1748, in wrapper     rv = callback(*a, **ka)   File "./backend.py", line 311, in post_reply     (config['uploads.strip_metadata'] == 'True'), is_reply=True)   File "/etc/imageboard/utils.py", line 59, in file_validation     thumbnail(save_path, refnum, ext, is_reply)   File "/etc/imageboard/utils.py", line 37, in thumbnail     im.save(save_path)   File "/usr/local/lib/python3.6/dist-packages/PIL/Image.py", line 2235, in save     save_handler(self, fp, filename)   File "/usr/local/lib/python3.6/dist-packages/PIL/JpegImagePlugin.py", line 631, in _save     raise OSError(f"cannot write mode {im.mode} as JPEG") from e OSError: cannot write mode LA as JPEG

is your software up to date?


Correct cancel() return value

The API contract for grpc.Future states
Returns:
bool:
Returns True if the computation was canceled.

Returns False under all other circumstances, for example:

1. computation has begun and could not be canceled.
2. computation has finished
3. computation is scheduled for execution and it is impossible
     to determine its state without blocking.

Our current implementation returns False in all cases. This fixes that
bug. Fingers crossed that Hyrum's Law doesn't bite us.

https://github.com/grpc/grpc/issues/20678


"Everyone Welcome" block

Header, body copy, and button

And passive scroll carousel plz

Make sure the individual word blocks are working - overlayed on the image.
Words are Inclusive, Interdisciplinary, Innovative.
Passive scrolling carousel with three slides.
Designers will finalize the images being used.


Unable to access collections from webc:setup with EleventyRenderPlugin

I am also most likely trying to do something unsupported due to the use of the EleventyRenderPlugin:
index.njk
{% renderTemplate "webc" %}
  <item-list tag="foundations"></item-list>
{% endrenderTemplate %}

item-list.webc

  <li webc:for="item of getCollectionItems(collections, tag,

Problem writing Eleventy templates: (more in DEBUG output)
[11ty] 1. Having trouble rendering njk template ./src/index.njk (via TemplateContentRenderError)
[11ty] 2. (./src/index.njk)
[11ty]   EleventyShortcodeError: Error with Nunjucks paired shortcode `renderTemplate` (via Template render error)
[11ty] 3. Check the dynamic attribute: `webc:for="getCollectionItems(collections, tag)"`.
[11ty] Original error message: Cannot read properties of undefined (reading 'foundations') (via Template render error)
[11ty]
[11ty] Original error stack trace: Error: Check the dynamic attribute: `webc:for="getCollectionItems(collections, tag)"`.

If index.njk is renamed index.webc and removal of the renderTemplate block this works.

My guess is that this relates to the global data access from inside child components breaking change in 0.11: https://github.com/11ty/webc/releases/tag/v0.11.0
Does getCollectionItems($data.collections,  work?

Does <li webc:for="item of getCollectionItems($data.collections, tag, work?

It does!  Thank you!  Been poking at this all morning!


IndexReader should support Timer class

When indexing a large amount of documents, it would be good if we progress would be displayed on console. The Timer class should be used for this when the .build method of the PocketSearch class has verbose=True set.

Added in 0.30.0


Wrap H264 video stream in MP4 container

Hi
Sorry in advance that this is such a basic question:-
I have raw H264 data, stored in a python string object (or temporary file in memory) that I need to wrap in an MP4 container. I've looked at the remux example, however I specifically want to use the '-vcodec copy' flag, so no re-encoding is done.
How am I best to achieve this with PyAV? I'm currently calling FFmpeg through a subprocess, but want to switch to using your module
Thanks!

I'm sorry to say that this is something we are struggling on and off with already (see #47). Unfortunately the "copy" codec is a lot more complicated underneath than it seems, and we have yet to be able to get our heads around it.

This is close enough to #143 that we should consider it merged there.


horizontal scroll bar not fits longest line

atom: 1.15.0
os: windows 10 64bit
font: default
１２３４５６７８９０１２３４５６７８９０１２３４５６７８９０１２３４５６７８９０１２３４５６７８９０１２３４５６７８９０１２３４５６７８９０１２３４５６７８９０１２３４５６７８９０１２３４５６７８９０
123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890

Horizontal scroll bar must fits the length of the first line, but it fits the length the second line.

Thanks for opening a new issue for this @BlueSilverCat - just for completeness, can I trouble you to edit the issue body and fill out the issue template for the bug report?

I went ahead and completed the template since I could reproduce :v:

Note that the characters on the first line are not normal digits, they're fullwidth unicode characters. I guess we have some type of measurement bug (which could be a regression).

Note that the characters on the first line are not normal digits, they're fullwidth unicode characters

Thanks @thomasjo, I updated the issue body to mention this.

Any news here, horizontal scrolling just stopped working. was working before, got the newest version of atom.


add struct_pb

Why

protobuf compatible for yalanting
What is changing
add struct_pb sub project
Example
write xxx.proto first, and then use struct_pb protoc plugin to generate compatible code.
the source of protoc plugin will be added later.

 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.shuoshu.yh seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.You have signed the CLA already but the status is still pending? Let us recheck it.


First issue, I forget the confusing error messages, but eventually I figured out that 'folly' has renamed its branch from master to main.  patch:
+++ b/WORKSPACE
@@ -59,8 +59,8 @@ http_archive(
http_archive(
name = "facebook_folly",
build_file = "//:BUILD.folly",

strip_prefix = "folly-master",
urls = ["https://github.com/facebook/folly/archive/master.zip"],

strip_prefix = "folly-main",
urls = ["https://github.com/facebook/folly/archive/main.zip"],
)

ska::flat_hash_set and ska::bytell_hash_set
Second issue:
ERROR: /home/willy/.cache/bazel/_bazel_willy/a2fc307a5e109a80523e72df06593c55/external/facebook_folly/BUILD.bazel:1:11: C++ compilation of rule '@facebook_folly//:folly' failed (Exit 1) gcc failed: error executing command /usr/bin/gcc -U_FORTIFY_SOURCE -fstack-protector -Wall -Wunused-but-set-parameter -Wno-free-nonheap-object -fno-omit-frame-pointer -g0 -O2 '-D_FORTIFY_SOURCE=1' -DNDEBUG -ffunction-sections ... (remaining 48 argument(s) skipped)
Use --sandbox_debug to see verbose messages from the sandbox
In file included from external/facebook_folly/folly/container/detail/F14Table.h:42,
from external/facebook_folly/folly/container/detail/F14Table.cpp:17:
external/facebook_folly/folly/functional/Invoke.h:22:10: fatal error: boost/preprocessor/control/expr_iif.hpp: No such file or directory
22 | #include <boost/preprocessor/control/expr_iif.hpp>
|          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
Target //:hashtable_benchmarks failed to build
After trying a bunch of things, I decided to just "apt-get install libboost-all-dev"
Now I get a new error:
ERROR: /home/willy/.cache/bazel/_bazel_willy/a2fc307a5e109a80523e72df06593c55/external/facebook_folly/BUILD.bazel:1:11: undeclared inclusion(s) in rule '@facebook_folly//:folly':
this rule is missing dependency declarations for the following files included by 'external/facebook_folly/folly/lang/ToAscii.cpp':
'/usr/lib/gcc/x86_64-linux-gnu/11/include/stddef.h'
'/usr/lib/gcc/x86_64-linux-gnu/11/include/stdint.h'
'/usr/lib/gcc/x86_64-linux-gnu/11/include/stdarg.h'
Target //:hashtable_benchmarks failed to build
and I'm all out of spoons for debugging this.

Oh, good job github.  Why would anyone possibly want to paste a patch into an issue?  Far better to support markdown.  Yes, that's definitely the more important thing in an issue tracker.

Please maintain professional behavior and do not insult or demean the work of others when engaging with this project.


example ideas

[x] SPA

https://github.com/hi-ogawa/vite-plugins/pull/93
cf. https://github.com/remix-run/remix/discussions/2853

[ ] tanstack query suspense/prefetch hydration

get back removed demo from https://github.com/hi-ogawa/vite-plugins/pull/61

[ ] css code split

https://github.com/hi-ogawa/vite-plugins/pull/68

Interesting but probably obsolete now. let's close


Add check on different R versions

I was checking the world of GitHub actions and I found this action R package specific which is worth to be tested, I think.
Notice the checks below.

This is a test of course. We can decide to not build them. I would investigate about travis CI via GitHub actions.


WIP: merge develop for demo

Bringing in the IBC design by Peng

[ ] reduce technical dept -> tests

@mappum do we want this branch still, or do we continue from yours?


ImageQA: download of selected images as zip not working

this has been fixed by Florian. It is installed and tested


Azure App Service Deploy - help markdown update for Publish profile

Fixes Azure PublishSettings is not publish profile

Do we need to add this to function app task too?

Do we need to add this to function app task too?

Function app task doesnt have publish profile.