google-fluentd crash

It appears that the GCP logging that was shipped with my cluster (running 0.14.2) crashed at some point, silently, and wasn't restarted?
Here's the entire text of the log file from /var/log/google-fluentd/google-fluentd.log:
2015-03-16 23:17:33 +0000 [info]: reading config file path="/etc/google-fluentd/google-fluentd.conf"
2015-03-16 23:17:34 +0000 [info]: starting fluentd-0.10.61
2015-03-16 23:17:34 +0000 [info]: gem 'fluent-mixin-config-placeholders' version '0.3.0'
2015-03-16 23:17:34 +0000 [info]: gem 'fluent-mixin-plaintextformatter' version '0.2.6'
2015-03-16 23:17:34 +0000 [info]: gem 'fluent-plugin-google-cloud' version '0.2.0'
2015-03-16 23:17:34 +0000 [info]: gem 'fluent-plugin-mongo' version '0.7.6'
2015-03-16 23:17:34 +0000 [info]: gem 'fluent-plugin-rewrite-tag-filter' version '1.4.1'
2015-03-16 23:17:34 +0000 [info]: gem 'fluent-plugin-s3' version '0.5.6'
2015-03-16 23:17:34 +0000 [info]: gem 'fluent-plugin-scribe' version '0.10.14'
2015-03-16 23:17:34 +0000 [info]: gem 'fluent-plugin-td' version '0.10.26'
2015-03-16 23:17:34 +0000 [info]: gem 'fluent-plugin-td-monitoring' version '0.2.0'
2015-03-16 23:17:34 +0000 [info]: gem 'fluent-plugin-webhdfs' version '0.4.1'
2015-03-16 23:17:34 +0000 [info]: gem 'fluentd' version '0.10.61'
2015-03-16 23:17:34 +0000 [info]: using configuration file: <ROOT>
  <source>
    type tail
    format none
    path /var/log/apache*/access.log,/var/log/httpd/access.log
    pos_file /var/tmp/fluentd.apache-access.pos
    read_from_head true
    tag apache-access
  </source>
  <source>
    type tail
    format none
    path /var/log/apache*/error.log,/var/log/httpd/error.log
    pos_file /var/tmp/fluentd.apache-error.pos
    read_from_head true
    tag apache-error
  </source>
  <source>
    type tail
    format none
    path /var/log/cassandra/system.log
    pos_file /var/tmp/fluentd.cassandra-system.pos
    read_from_head true
    tag cassandra
  </source>
  <source>
    type tail
    format none
    path /var/log/cassandra/cassandra.log
    pos_file /var/tmp/fluentd.cassandra.pos
    read_from_head true
    tag cassandra
  </source>
  <source>
    type tail
    format none
    path /var/log/cassandra/output.log
    pos_file /var/tmp/fluentd.cassandra-output.pos
    read_from_head true
    tag cassandra-output
  </source>
  <source>
    type tail
    format none
    path /var/log/chef-server/bookshelf/current
    pos_file /var/tmp/fluentd.chef-bookshelf.pos
    read_from_head true
    tag chef-bookshelf
  </source>
  <source>
    type tail
    format none
    path /var/log/chef-server/chef-expander/current
    pos_file /var/tmp/fluentd.chef-expander.pos
    read_from_head true
    tag chef-expander
  </source>
  <source>
    type tail
    format none
    path /var/log/chef-server/chef-pedant/http-traffic.log
    pos_file /var/tmp/fluentd.chef-pedant-http-traffic.pos
    read_from_head true
    tag chef-pedant-http-traffic
  </source>
  <source>
    type tail
    format none
    path /var/log/chef-server/chef-server-webui/current
    pos_file /var/tmp/fluentd.chef-server-webui.pos
    read_from_head true
    tag chef-server-webui
  </source>
  <source>
    type tail
    format none
    path /var/log/chef-server/chef-solr/current
    pos_file /var/tmp/fluentd.chef-solr.pos
    read_from_head true
    tag chef-solr
  </source>
  <source>
    type tail
    format none
    path /var/log/chef-server/erchef/current
    pos_file /var/tmp/fluentd.chef-erchef-current.pos
    read_from_head true
    tag chef-erchef-current
  </source>
  <source>
    type tail
    format none
    path /var/log/chef-server/erchef/erchef.log.1
    pos_file /var/tmp/fluentd.chef-erchef.pos
    read_from_head true
    tag chef-erchef
  </source>
  <source>
    type tail
    format none
    path /var/log/chef-server/nginx/access.log
    pos_file /var/tmp/fluentd.chef-nginx-access.pos
    read_from_head true
    tag chef-nginx-access
  </source>
  <source>
    type tail
    format none
    path /var/log/chef-server/nginx/error.log
    pos_file /var/tmp/fluentd.chef-nginx-error.pos
    read_from_head true
    tag chef-nginx-error
  </source>
  <source>
    type tail
    format none
    path /var/log/chef-server/nginx/rewrite-port-80.log
    pos_file /var/tmp/fluentd.chef-nginx-rewrite-port-80.pos
    read_from_head true
    tag chef-nginx-rewrite-port-80
  </source>
  <source>
    type tail
    format none
    path /var/log/chef-server/postgresql/current
    pos_file /var/tmp/fluentd.chef-postgresql.pos
    read_from_head true
    tag chef-postgresql
  </source>
  <source>
    type tail
    format none
    path /var/log/chef-server/rabbitmq/current
    pos_file /var/tmp/fluentd.chef-rabbitmq.pos
    read_from_head true
    tag chef-rabbitmq
  </source>
  <source>
    type tail
    format none
    path /home/git/gitlab/log/application.log,
    pos_file /var/tmp/fluentd.gitlab-application.pos
    read_from_head true
    tag gitlab-application
  </source>
  <source>
    type tail
    format none
    path /home/git/gitlab/log/production.log,
    pos_file /var/tmp/fluentd.gitlab-production.pos
    read_from_head true
    tag gitlab-production
  </source>
  <source>
    type tail
    format none
    path /home/git/gitlab/log/sidekiq.log,
    pos_file /var/tmp/fluentd.gitlab-sidekiq.pos
    read_from_head true
    tag gitlab-sidekiq
  </source>
  <source>
    type tail
    format none
    path /home/git/gitlab/log/unicorn.stdout.log,
    pos_file /var/tmp/fluentd.gitlab-unicorn-stdout.pos
    read_from_head true
    tag gitlab-unicorn-stdout
  </source>
  <source>
    type tail
    format none
    path /home/git/gitlab/log/unicorn.stderr.log,
    pos_file /var/tmp/fluentd.gitlab-unicorn-stderr.pos
    read_from_head true
    tag gitlab-unicorn-stderr
  </source>
  <source>
    type tail
    format none
    path /home/git/gitlab/log/githost.log,
    pos_file /var/tmp/fluentd.gitlab-githost.pos
    read_from_head true
    tag gitlab-githost
  </source>
  <source>
    type tail
    format none
    path /home/git/gitlab/log/satellites.log,
    pos_file /var/tmp/fluentd.gitlab-satellites.pos
    read_from_head true
    tag gitlab-satellites
  </source>
  <source>
    type tail
    format none
    path /home/git/gitlab-shell/gitlab-shell.log
    pos_file /var/tmp/fluentd.gitlab-shell.pos
    read_from_head true
    tag gitlab-shell
  </source>
  <source>
    type tail
    format multiline
    format_firstline /^\w+\s\d+,\s\d+/
    format1 /(?<message>.*)/
    path /var/log/jenkins/jenkins.log
    pos_file /var/tmp/fluentd.jenkins.pos
    read_from_head true
    tag jenkins
  </source>
  <source>
    type tail
    format none
    path /var/log/jetty/*.request.log
    pos_file /var/tmp/fluentd.jetty-request.pos
    read_from_head true
    tag jetty-request
  </source>
  <source>
    type tail
    format none
    path /var/log/jetty/*.stderrout.log
    pos_file /var/tmp/fluentd.jetty-stderrout.pos
    read_from_head true
    tag jetty-stderrout
  </source>
  <source>
    type tail
    format none
    path /var/log/jetty/out.log
    pos_file /var/tmp/fluentd.jetty-out.pos
    read_from_head true
    tag jetty-out
  </source>
  <source>
    type tail
    format none
    path /var/www/joomla/logs/*.log
    pos_file /var/tmp/fluentd.joomla.pos
    read_from_head true
    tag joomla
  </source>
  <source>
    type tail
    format none
    path /var/www/magento/var/log/system.log
    pos_file /var/tmp/fluentd.magento-system.pos
    read_from_head true
    tag magento-system
  </source>
  <source>
    type tail
    format none
    path /var/www/magento/var/log/exception.log
    pos_file /var/tmp/fluentd.magento-exception.pos
    read_from_head true
    tag magento-exception
  </source>
  <source>
    type tail
    format none
    path /var/www/magento/var/report/*
    pos_file /var/tmp/fluentd.magento-report.pos
    read_from_head true
    tag magento-report
  </source>
  <source>
    type tail
    format none
    path /var/log/mediawiki/*.log
    pos_file /var/tmp/fluentd.mediawiki.pos
    read_from_head true
    tag mediawiki
  </source>
  <source>
    type tail
    format none
    path /var/log/memcached.log
    pos_file /var/tmp/fluentd.memcached.pos
    read_from_head true
    tag memcached
  </source>
  <source>
    type tail
    format none
    path /var/log/mongodb/*.log
    pos_file /var/tmp/fluentd.mongodb.pos
    read_from_head true
    tag mongodb
  </source>
  <source>
    type tail
    format none
    path /var/log/mysql.log,/var/log/mysql/mysql.log
    pos_file /var/tmp/fluentd.mysql.pos
    refresh_interval 60
    read_from_head true
    tag mysql
  </source>
  <source>
    type tail
    format multiline
    format_firstline /^((. User)|(. Time))/
    format1 /(?<message>.*)/
    path /var/log/mysql/mysql-slow.log
    pos_file /var/tmp/fluentd.mysql-slow.pos
    refresh_interval 60
    read_from_head true
    tag mysql-slow
  </source>
  <source>
    type tail
    format none
    path /var/log/nginx/access.log
    pos_file /var/tmp/fluentd.nginx-access.pos
    read_from_head true
    tag nginx-access
  </source>
  <source>
    type tail
    format none
    path /var/log/nginx/error.log
    pos_file /var/tmp/fluentd.nginx-error.pos
    read_from_head true
    tag nginx-error
  </source>
  <source>
    type tail
    format none
    path /var/log/postgres*/*.log,/var/log/pgsql/*.log
    pos_file /var/tmp/fluentd.postgresql.pos
    read_from_head true
    tag postgresql
  </source>
  <source>
    type tail
    format none
    path /var/log/pe-httpd/access.log
    pos_file /var/tmp/fluentd.puppet-access.pos
    read_from_head true
    tag puppet-access
  </source>
  <source>
    type tail
    format none
    path /var/log/pe-httpd/puppetmasteraccess.log
    pos_file /var/tmp/fluentd.puppet-puppetmasteraccess.pos
    read_from_head true
    tag puppet-puppetmasteraccess
  </source>
  <source>
    type tail
    format none
    path /var/log/pe-activemq/activemq.log
    pos_file /var/tmp/fluentd.puppet-activemq.pos
    read_from_head true
    tag puppet-activemq
  </source>
  <source>
    type tail
    format none
    path /var/log/pe-activemq/wrapper.log
    pos_file /var/tmp/fluentd.puppet-activemq-wrapper.pos
    read_from_head true
    tag puppet-activemq-wrapper
  </source>
  <source>
    type tail
    format none
    path /var/log/pe-mcollective/mcollective.log
    pos_file /var/tmp/fluentd.puppet-mcollective.pos
    read_from_head true
    tag puppet-mcollective
  </source>
  <source>
    type tail
    format none
    path /var/log/pe-mcollective/mcollective_audit.log
    pos_file /var/tmp/fluentd.puppet-mcollective-audit.pos
    read_from_head true
    tag puppet-mcollective-audit
  </source>
  <source>
    type tail
    format none
    path /var/log/pe-puppetdb/pe-puppetdb.log
    pos_file /var/tmp/fluentd.puppet-puppetdb.pos
    read_from_head true
    tag puppet-puppetdb
  </source>
  <source>
    type tail
    format none
    path /var/log/pe-httpd/puppetdashboard.error.log
    pos_file /var/tmp/fluentd.puppet-dashboard-error.pos
    read_from_head true
    tag puppet-dashboard-error
  </source>
  <source>
    type tail
    format none
    path /var/log/pe-puppet-dashboard/mcollective_client.log
    pos_file /var/tmp/fluentd.puppet-dashboard-mcollective-client.pos
    read_from_head true
    tag puppet-dashboard-mcollective-client
  </source>
  <source>
    type tail
    format none
    path /var/log/pe-puppet-dashboard/production.log
    pos_file /var/tmp/fluentd.puppet-dashboard-production.pos
    read_from_head true
    tag puppet-dashboard-production
  </source>
  <source>
    type tail
    format none
    path /var/log/pe-puppet-dashboard/event-inspector.log
    pos_file /var/tmp/fluentd.puppet-dashboard-event-inspector.pos
    read_from_head true
    tag puppet-dashboard-event-inspector
  </source>
  <source>
    type tail
    format none
    path /var/log/pe-puppet-dashboard/certificate_manager.log
    pos_file /var/tmp/fluentd.puppet-dashboard-certificate-manager.pos
    read_from_head true
    tag puppet-dashboard-certificate-manager
  </source>
  <source>
    type tail
    format none
    path /var/log/pe-puppet-dashboard/live-management.log
    pos_file /var/tmp/fluentd.puppet-dashboard-live-management.pos
    read_from_head true
    tag puppet-dashboard-live-management
  </source>
  <source>
    type tail
    format none
    path /var/log/pe-console-auth/cas_client.log
    pos_file /var/tmp/fluentd.puppet-console-cas-client.pos
    read_from_head true
    tag puppet-console-cas-client
  </source>
  <source>
    type tail
    format none
    path /var/log/pe-console-auth/cas.log
    pos_file /var/tmp/fluentd.puppet-console-auth-cas.pos
    read_from_head true
    tag puppet-console-auth-cas
  </source>
  <source>
    type tail
    format none
    path /var/log/pe-console-auth/auth.log
    pos_file /var/tmp/fluentd.puppet-console-auth.pos
    read_from_head true
    tag puppet-console-auth
  </source>
  <source>
    type tail
    format none
    path /var/log/pe-httpd/puppetdashboard.access.log
    pos_file /var/tmp/fluentd.puppet-dashboard-access.pos
    read_from_head true
    tag puppet-dashboard-access
  </source>
  <source>
    type tail
    format none
    path /var/log/pe-puppet-dashboard/failed_reports.log
    pos_file /var/tmp/fluentd.puppet-dashboard-failed-reports.pos
    read_from_head true
    tag puppet-dashboard-failed-reports
  </source>
  <source>
    type tail
    format none
    path /var/log/pe-httpd/error.log
    pos_file /var/tmp/fluentd.puppet-error.pos
    read_from_head true
    tag puppet-error
  </source>
  <source>
    type tail
    format none
    path /var/log/pe-httpd/other_vhosts_access.log
    pos_file /var/tmp/fluentd.puppet-other-vhosts-access.pos
    read_from_head true
    tag puppet-other-vhosts-access
  </source>
  <source>
    type tail
    format none
    path /var/log/pe-puppet/masterhttp.log
    pos_file /var/tmp/fluentd.puppet-masterhttp.pos
    read_from_head true
    tag puppet-masterhttp
  </source>
  <source>
    type tail
    format none
    path /var/log/pe-puppet/rails.log
    pos_file /var/tmp/fluentd.puppet-rails.pos
    read_from_head true
    tag puppet-rails
  </source>
  <source>
    type tail
    format multiline
    format_firstline /^\[\d+/
    format1 /(?<message>.*)/
    path /var/log/puppet/masterhttp.log
    pos_file /var/tmp/fluentd.puppet-masterhttp.pos
    read_from_head true
    tag puppet-masterhttp
  </source>
  <source>
    type tail
    format multiline
    format_firstline /^\[\d+/
    format1 /(?<message>.*)/
    path /var/log/puppet/http.log
    pos_file /var/tmp/fluentd.puppet-http.pos
    read_from_head true
    tag puppet-http
  </source>
  <source>
    type tail
    format none
    path /var/log/rabbitmq/startup_log
    pos_file /var/tmp/fluentd.rabbitmq-startup.pos
    read_from_head true
    tag rabbitmq-startup
  </source>
  <source>
    type tail
    format none
    path /var/log/rabbitmq/startup_err
    pos_file /var/tmp/fluentd.rabbitmq-startup_err.pos
    read_from_head true
    tag rabbitmq-startup_err
  </source>
  <source>
    type tail
    format multiline
    format_firstline /^=\w+ REPORT====/
    format1 /(?<message>.*)/
    path /var/log/rabbitmq/*-sasl.log
    pos_file /var/tmp/fluentd.rabbitmq-sasl.pos
    read_from_head true
    tag rabbitmq-sasl
  </source>
  <source>
    type tail
    format multiline
    format_firstline /^=\w+ REPORT====/
    format1 /(?<message>.*)/
    path /var/log/rabbitmq/*.log
    pos_file /var/tmp/fluentd.rabbitmq.pos
    read_from_head true
    tag rabbitmq
  </source>
  <source>
    type tail
    format none
    path /var/log/redis*.log,/var/log/redis/*.log
    pos_file /var/tmp/fluentd.redis.pos
    read_from_head true
    tag redis
  </source>
  <source>
    type tail
    format none
    path /var/log/redmine/*.log
    pos_file /var/tmp/fluentd.redmine.pos
    read_from_head true
    tag redmine
  </source>
  <source>
    type tail
    format none
    path /var/log/salt/master
    pos_file /var/tmp/fluentd.salt-master.pos
    read_from_head true
    tag salt-master
  </source>
  <source>
    type tail
    format none
    path /var/log/salt/minion
    pos_file /var/tmp/fluentd.salt-minion.pos
    read_from_head true
    tag salt-minion
  </source>
  <source>
    type tail
    format none
    path /var/log/salt/key
    pos_file /var/tmp/fluentd.salt-key.pos
    read_from_head true
    tag salt-key
  </source>
  <source>
    type tail
    format none
    path /var/log/salt/syndic.loc
    pos_file /var/tmp/fluentd.salt-syndic.pos
    read_from_head true
    tag salt-syndic
  </source>
  <source>
    type tail
    format none
    path /var/log/solr/*.log
    pos_file /var/tmp/fluentd.solr.pos
    read_from_head true
    tag solr
  </source>
  <source>
    type tail
    format none
    path /var/www/*/sugarcrm.log
    pos_file /var/tmp/fluentd.sugarcrm.pos
    read_from_head true
    tag sugarcrm
  </source>
  <source>
    type tail
    format /^(?<message>(?<time>[^ ]*\s*[^ ]* [^ ]*) .*)$/
    path /var/log/syslog
    pos_file /var/tmp/fluentd.syslog.pos
    read_from_head true
    tag syslog
  </source>
  <source>
    type syslog
    port 514
    protocol_type udp
    bind <IP_ADDRESS>
    format /(?<message>.*)/
    tag syslog
  </source>
  <source>
    type syslog
    port 514
    protocol_type tcp
    bind <IP_ADDRESS>
    format /(?<message>.*)/
    tag syslog
  </source>
  <source>
    type tail
    format none
    path /var/log/tomcat*/localhost_access_log.%Y-%m-%d.txt
    pos_file /var/tmp/fluentd.tomcat.pos
    read_from_head true
    tag tomcat-localhost_access_log
  </source>
  <source>
    type tail
    format multiline
    format_firstline /^(\w+\s\d+,\s\d+)|(\d+-\d+-\d+\s)/
    format1 /(?<message>.*)/
    path /var/log/tomcat*/catalina.out,/var/log/tomcat*/localhost.*.log
    pos_file /var/tmp/fluentd.tomcat-multiline.pos
    read_from_head true
    tag tomcat
  </source>
  <source>
    type tail
    format none
    path /var/log/zookeeper/zookeeper.log
    pos_file /var/tmp/fluentd.zookeeper.pos
    read_from_head true
    tag zookeeper
  </source>
  <source>
    type tail
    format none
    path /var/log/zookeeper/zookeeper_trace.log
    pos_file /var/tmp/fluentd.zookeeper-trace.pos
    read_from_head true
    tag zookeeper-trace
  </source>
  <match fluent.**>
    type null
  </match>
  <match **>
    type google_cloud
    buffer_chunk_limit 512K
    flush_interval 5s
    max_retry_wait 300
    disable_retry_limit
  </match>
</ROOT>
2015-03-16 23:17:34 +0000 [info]: adding source type="tail"
2015-03-16 23:17:34 +0000 [info]: adding source type="tail"
2015-03-16 23:17:34 +0000 [info]: adding source type="tail"
2015-03-16 23:17:34 +0000 [info]: adding source type="tail"
2015-03-16 23:17:34 +0000 [info]: adding source type="tail"
2015-03-16 23:17:34 +0000 [info]: adding source type="tail"
2015-03-16 23:17:34 +0000 [info]: adding source type="tail"
2015-03-16 23:17:34 +0000 [info]: adding source type="tail"
2015-03-16 23:17:34 +0000 [info]: adding source type="tail"
2015-03-16 23:17:34 +0000 [info]: adding source type="tail"
2015-03-16 23:17:34 +0000 [info]: adding source type="tail"
2015-03-16 23:17:34 +0000 [info]: adding source type="tail"
2015-03-16 23:17:34 +0000 [info]: adding source type="tail"
2015-03-16 23:17:34 +0000 [info]: adding source type="tail"
2015-03-16 23:17:34 +0000 [info]: adding source type="tail"
2015-03-16 23:17:34 +0000 [info]: adding source type="tail"
2015-03-16 23:17:34 +0000 [info]: adding source type="tail"
2015-03-16 23:17:34 +0000 [info]: adding source type="tail"
2015-03-16 23:17:34 +0000 [info]: adding source type="tail"
2015-03-16 23:17:34 +0000 [info]: adding source type="tail"
2015-03-16 23:17:34 +0000 [info]: adding source type="tail"
2015-03-16 23:17:34 +0000 [info]: adding source type="tail"
2015-03-16 23:17:34 +0000 [info]: adding source type="tail"
2015-03-16 23:17:34 +0000 [info]: adding source type="tail"
2015-03-16 23:17:34 +0000 [info]: adding source type="tail"
2015-03-16 23:17:34 +0000 [info]: adding source type="tail"
2015-03-16 23:17:34 +0000 [info]: adding source type="tail"
2015-03-16 23:17:34 +0000 [info]: adding source type="tail"
2015-03-16 23:17:34 +0000 [info]: adding source type="tail"
2015-03-16 23:17:34 +0000 [info]: adding source type="tail"
2015-03-16 23:17:34 +0000 [info]: adding source type="tail"
2015-03-16 23:17:34 +0000 [info]: adding source type="tail"
2015-03-16 23:17:34 +0000 [info]: adding source type="tail"
2015-03-16 23:17:34 +0000 [info]: adding source type="tail"
2015-03-16 23:17:34 +0000 [info]: adding source type="tail"
2015-03-16 23:17:34 +0000 [info]: adding source type="tail"
2015-03-16 23:17:34 +0000 [info]: adding source type="tail"
2015-03-16 23:17:34 +0000 [info]: adding source type="tail"
2015-03-16 23:17:34 +0000 [info]: adding source type="tail"
2015-03-16 23:17:34 +0000 [info]: adding source type="tail"
2015-03-16 23:17:34 +0000 [info]: adding source type="tail"
2015-03-16 23:17:34 +0000 [info]: adding source type="tail"
2015-03-16 23:17:34 +0000 [info]: adding source type="tail"
2015-03-16 23:17:34 +0000 [info]: adding source type="tail"
2015-03-16 23:17:34 +0000 [info]: adding source type="tail"
2015-03-16 23:17:34 +0000 [info]: adding source type="tail"
2015-03-16 23:17:34 +0000 [info]: adding source type="tail"
2015-03-16 23:17:34 +0000 [info]: adding source type="tail"
2015-03-16 23:17:34 +0000 [info]: adding source type="tail"
2015-03-16 23:17:34 +0000 [info]: adding source type="tail"
2015-03-16 23:17:34 +0000 [info]: adding source type="tail"
2015-03-16 23:17:34 +0000 [info]: adding source type="tail"
2015-03-16 23:17:34 +0000 [info]: adding source type="tail"
2015-03-16 23:17:34 +0000 [info]: adding source type="tail"
2015-03-16 23:17:34 +0000 [info]: adding source type="tail"
2015-03-16 23:17:34 +0000 [info]: adding source type="tail"
2015-03-16 23:17:34 +0000 [info]: adding source type="tail"
2015-03-16 23:17:34 +0000 [info]: adding source type="tail"
2015-03-16 23:17:34 +0000 [info]: adding source type="tail"
2015-03-16 23:17:34 +0000 [info]: adding source type="tail"
2015-03-16 23:17:34 +0000 [info]: adding source type="tail"
2015-03-16 23:17:34 +0000 [info]: adding source type="tail"
2015-03-16 23:17:34 +0000 [info]: adding source type="tail"
2015-03-16 23:17:34 +0000 [info]: adding source type="tail"
2015-03-16 23:17:34 +0000 [info]: adding source type="tail"
2015-03-16 23:17:34 +0000 [info]: adding source type="tail"
2015-03-16 23:17:34 +0000 [info]: adding source type="tail"
2015-03-16 23:17:34 +0000 [info]: adding source type="tail"
2015-03-16 23:17:34 +0000 [info]: adding source type="tail"
2015-03-16 23:17:34 +0000 [info]: adding source type="tail"
2015-03-16 23:17:34 +0000 [info]: adding source type="tail"
2015-03-16 23:17:34 +0000 [info]: adding source type="tail"
2015-03-16 23:17:34 +0000 [info]: adding source type="tail"
2015-03-16 23:17:34 +0000 [info]: adding source type="tail"
2015-03-16 23:17:34 +0000 [info]: adding source type="tail"
2015-03-16 23:17:34 +0000 [info]: adding source type="tail"
2015-03-16 23:17:34 +0000 [info]: adding source type="tail"
2015-03-16 23:17:34 +0000 [info]: adding source type="tail"
2015-03-16 23:17:34 +0000 [info]: adding source type="syslog"
2015-03-16 23:17:34 +0000 [info]: adding source type="syslog"
2015-03-16 23:17:34 +0000 [info]: adding source type="tail"
2015-03-16 23:17:34 +0000 [info]: adding source type="tail"
2015-03-16 23:17:34 +0000 [info]: adding source type="tail"
2015-03-16 23:17:34 +0000 [info]: adding source type="tail"
2015-03-16 23:17:34 +0000 [info]: adding match pattern="fluent.**" type="null"
2015-03-16 23:17:34 +0000 [info]: adding match pattern="**" type="google_cloud"
2015-03-16 23:17:34 +0000 [error]: unexpected error error_class=SocketError error=#<SocketError: getaddrinfo: Name or service not known>
  2015-03-16 23:17:34 +0000 [error]: /opt/google-fluentd/embedded/lib/ruby/2.1.0/net/http.rb:879:in `initialize'
  2015-03-16 23:17:34 +0000 [error]: /opt/google-fluentd/embedded/lib/ruby/2.1.0/net/http.rb:879:in `open'
  2015-03-16 23:17:34 +0000 [error]: /opt/google-fluentd/embedded/lib/ruby/2.1.0/net/http.rb:879:in `block in connect'
  2015-03-16 23:17:34 +0000 [error]: /opt/google-fluentd/embedded/lib/ruby/2.1.0/timeout.rb:76:in `timeout'
  2015-03-16 23:17:34 +0000 [error]: /opt/google-fluentd/embedded/lib/ruby/2.1.0/net/http.rb:878:in `connect'
  2015-03-16 23:17:34 +0000 [error]: /opt/google-fluentd/embedded/lib/ruby/2.1.0/net/http.rb:863:in `do_start'
  2015-03-16 23:17:34 +0000 [error]: /opt/google-fluentd/embedded/lib/ruby/2.1.0/net/http.rb:852:in `start'
  2015-03-16 23:17:34 +0000 [error]: /opt/google-fluentd/embedded/lib/ruby/2.1.0/open-uri.rb:313:in `open_http'
  2015-03-16 23:17:34 +0000 [error]: /opt/google-fluentd/embedded/lib/ruby/2.1.0/open-uri.rb:724:in `buffer_open'
  2015-03-16 23:17:34 +0000 [error]: /opt/google-fluentd/embedded/lib/ruby/2.1.0/open-uri.rb:210:in `block in open_loop'
  2015-03-16 23:17:34 +0000 [error]: /opt/google-fluentd/embedded/lib/ruby/2.1.0/open-uri.rb:208:in `catch'
  2015-03-16 23:17:34 +0000 [error]: /opt/google-fluentd/embedded/lib/ruby/2.1.0/open-uri.rb:208:in `open_loop'
  2015-03-16 23:17:34 +0000 [error]: /opt/google-fluentd/embedded/lib/ruby/2.1.0/open-uri.rb:149:in `open_uri'
  2015-03-16 23:17:34 +0000 [error]: /opt/google-fluentd/embedded/lib/ruby/2.1.0/open-uri.rb:704:in `open'
  2015-03-16 23:17:34 +0000 [error]: /opt/google-fluentd/embedded/lib/ruby/2.1.0/open-uri.rb:34:in `open'
  2015-03-16 23:17:34 +0000 [error]: /opt/google-fluentd/embedded/lib/ruby/gems/2.1.0/gems/fluent-plugin-google-cloud-0.2.0/lib/fluent/plugin/out_google_cloud.rb:214:in `fetch_metadata'
  2015-03-16 23:17:34 +0000 [error]: /opt/google-fluentd/embedded/lib/ruby/gems/2.1.0/gems/fluent-plugin-google-cloud-0.2.0/lib/fluent/plugin/out_google_cloud.rb:90:in `start'
  2015-03-16 23:17:34 +0000 [error]: /opt/google-fluentd/embedded/lib/ruby/gems/2.1.0/gems/fluentd-0.10.61/lib/fluent/match.rb:40:in `start'
  2015-03-16 23:17:34 +0000 [error]: /opt/google-fluentd/embedded/lib/ruby/gems/2.1.0/gems/fluentd-0.10.61/lib/fluent/engine.rb:263:in `block in start'
  2015-03-16 23:17:34 +0000 [error]: /opt/google-fluentd/embedded/lib/ruby/gems/2.1.0/gems/fluentd-0.10.61/lib/fluent/engine.rb:262:in `each'
  2015-03-16 23:17:34 +0000 [error]: /opt/google-fluentd/embedded/lib/ruby/gems/2.1.0/gems/fluentd-0.10.61/lib/fluent/engine.rb:262:in `start'
  2015-03-16 23:17:34 +0000 [error]: /opt/google-fluentd/embedded/lib/ruby/gems/2.1.0/gems/fluentd-0.10.61/lib/fluent/engine.rb:213:in `run'
  2015-03-16 23:17:34 +0000 [error]: /opt/google-fluentd/embedded/lib/ruby/gems/2.1.0/gems/fluentd-0.10.61/lib/fluent/supervisor.rb:483:in `run_engine'
  2015-03-16 23:17:34 +0000 [error]: /opt/google-fluentd/embedded/lib/ruby/gems/2.1.0/gems/fluentd-0.10.61/lib/fluent/supervisor.rb:142:in `block in start'
  2015-03-16 23:17:34 +0000 [error]: /opt/google-fluentd/embedded/lib/ruby/gems/2.1.0/gems/fluentd-0.10.61/lib/fluent/supervisor.rb:268:in `call'
  2015-03-16 23:17:34 +0000 [error]: /opt/google-fluentd/embedded/lib/ruby/gems/2.1.0/gems/fluentd-0.10.61/lib/fluent/supervisor.rb:268:in `main_process'
  2015-03-16 23:17:34 +0000 [error]: /opt/google-fluentd/embedded/lib/ruby/gems/2.1.0/gems/fluentd-0.10.61/lib/fluent/supervisor.rb:243:in `block in supervise'
  2015-03-16 23:17:34 +0000 [error]: /opt/google-fluentd/embedded/lib/ruby/gems/2.1.0/gems/fluentd-0.10.61/lib/fluent/supervisor.rb:242:in `fork'
  2015-03-16 23:17:34 +0000 [error]: /opt/google-fluentd/embedded/lib/ruby/gems/2.1.0/gems/fluentd-0.10.61/lib/fluent/supervisor.rb:242:in `supervise'
  2015-03-16 23:17:34 +0000 [error]: /opt/google-fluentd/embedded/lib/ruby/gems/2.1.0/gems/fluentd-0.10.61/lib/fluent/supervisor.rb:136:in `start'
  2015-03-16 23:17:34 +0000 [error]: /opt/google-fluentd/embedded/lib/ruby/gems/2.1.0/gems/fluentd-0.10.61/lib/fluent/command/fluentd.rb:168:in `<top (required)>'
  2015-03-16 23:17:34 +0000 [error]: /opt/google-fluentd/embedded/lib/ruby/site_ruby/2.1.0/rubygems/core_ext/kernel_require.rb:55:in `require'
  2015-03-16 23:17:34 +0000 [error]: /opt/google-fluentd/embedded/lib/ruby/site_ruby/2.1.0/rubygems/core_ext/kernel_require.rb:55:in `require'
  2015-03-16 23:17:34 +0000 [error]: /opt/google-fluentd/embedded/lib/ruby/gems/2.1.0/gems/fluentd-0.10.61/bin/fluentd:6:in `<top (required)>'
  2015-03-16 23:17:34 +0000 [error]: /opt/google-fluentd/embedded/bin/fluentd:23:in `load'
  2015-03-16 23:17:34 +0000 [error]: /opt/google-fluentd/embedded/bin/fluentd:23:in `<top (required)>'
  2015-03-16 23:17:34 +0000 [error]: /usr/sbin/google-fluentd:7:in `load'
  2015-03-16 23:17:34 +0000 [error]: /usr/sbin/google-fluentd:7:in `<main>'
2015-03-16 23:17:34 +0000 [info]: shutting down fluentd
2015-03-16 23:17:34 +0000 [info]: process finished code=0
2015-03-16 23:17:34 +0000 [warn]: process died within 1 second. exit.

What's weird is that I have logs from that minion after the crash allegedly took place that are appearing in my Logs Viewer, but I'm missing maybe 99% of my logs. I get a couple of events on April 18 from one minion, and that's it. The other minion gives me a bunch of events from about a week ago, and that's it.
What's weird is, I stood the cluster up on 4/11: ENV_TIMESTAMP: '2015-04-11T16:15:14+0000' So I'm unsure how I got a crash almost a month before I stood the cluster up?
What's weird is the issue is right around the time when an issue was reported that affected a previous cluster. But I started the cluster from scratch, I didn't attempt an upgrade-in-place or anything. Though it is the same GCE project the previous cluster was in.

/cc @satnam6502 @a-robinson

@mr-salty
The actual log file used by our configuration is /var/log/google-fluentd.log -- what does that file say?
The setup runs Fluentd as part of the setup process -- and I've noticed that this crashes and I've mentioned this to @mr-salty
For us this does not matter because we re-run Fluentd with the Kubernetes config.

The crash logs are actually benign. My understanding is that they're just an unfortunate consequence of how the agent is installed in the Dockerfile. It's being started with the default google-fluentd configuration, before we manage to replace the config with a kubernetes-specific one and restart it. I also noticed this a while back (#5523). While it's benign, we should definitely try preventing them from happening, because it's confusing and misleading.
However, that doesn't explain why you're missing 99% of your logs... Which logs are you missing? Are they being written to stdout or stderr of your container process? If so, can you see them using docker logs <container-id>?

Is it just coincidence that the date stamps in that log (2015-03-16) are the same as the date of #5523 or is it the case that those errors are generated and persisted when the container is created?  In any case, I agree we should prevent that from happening but it should not affect anything operationally... although it that is the case it begs the question of where the rest of the logs went - I've seen fluentd failures before, but I've never seen it fail silently.

The actual log file used by our configuration is /var/log/google-fluentd.log -- what does that file say?

It's empty. But there's /var/log/google-fluentd/google-fluentd.log, which is where the paste from above comes from.

The crash logs are actually benign. My understanding is that they're just an unfortunate consequence of how the agent is installed in the Dockerfile. It's being started with the default google-fluentd configuration, before we manage to replace the config with a kubernetes-specific one and restart it. I also noticed this a while back (#5523). While it's benign, we should definitely try preventing them from happening, because it's confusing and misleading.

That makes sense to me.

However, that doesn't explain why you're missing 99% of your logs... Which logs are you missing? Are they being written to stdout or stderr of your container process? If so, can you see them using docker logs ?

They're being written to stdout. I can SSH to the minion and view them with docker log. Here's the only output generated by my containers (e.g., not kubernetes output, and not a GCE event):

That's not a sample, those are literally the only two events. For comparison:
$ sudo docker logs 1ad0b5cad94f | wc -l
2282

That's a container running on that minion. If you'd like more specifics, I'm happy to provide anything I can.

Is it just coincidence that the date stamps in that log (2015-03-16) are the same as the date of #5523

My ignorant guess is that the timestamp is when the image was created, and the errors are generated before the clock is set.
I can see the logs if I SSH in, so I know where they are... sort of. I just don't know why they're not reaching Google Cloud Logging.

Also, I'm running gcr.io/google-containers/fluentd-gcp:1.2

So, guess who checked his project configuration and found logging turned off?
That, uh
that would be a good explanation for why google cloud logging wasn't storing logs, huh? Helps if you tell it to store them.

Sorry for the ruckus. Problem exists with user, not with software.

Glad that this was resolved although there should be some error output from fluentd to help diagnose the problem, and it sounds like it may not be as apparent as it could be.  I tested as many error cases as I could think of and made sure the logging was reasonable and documented, but we could work on making the errors more discoverable (and eliminating the red herring).

I'm glad you got this sorted out!
@mr-salty does the agent log these sorts of errors by default? @satnam6502 has fluentd set to quiet logging such that it only logs errors (presumably to avoid using too much disk), but it'd be nice to make errors like this visible. Would you prefer that we make the logging a little less quiet, or is this something that should be fixed in the plugin to log with a little more severity?

The log level is set via a FLUENTD_ARGS env variable and currently is -qq which only logs errors. I think it would be fine to relax the log level a bit for a while to help find out what is going on.

Ah, that explains it.  These messages would be warnings, not errors (since we retry) -  I'd prefer turning up the default verbosity but I don't think the issue with fluentd logging too much has been fully resolved so perhaps we should hold off on that.

It may be worth logging 400s at a higher severity and giving up, since the backend is effectively saying it'll never accept the logs. Your call though, of course.

That's generally what would happen with 400s but I intentionally catch some of them and retry since they're not necessarily permanent failures; the user could fix the problem (which is definitely the case here).
In general I think that's the right thing to do (with backoff, of course), but we've seen some failure modes where fluentd gets into a tight loop logging repeatedly instead of waiting to retry...  which is probably why the messages got turned off here.


File exists conflict for kubebuilder

Related Repos
https://github.com/open-cluster-management-io/config-policy-controller
https://github.com/open-cluster-management-io/governance-policy-template-sync
https://github.com/open-cluster-management-io/governance-policy-status-sync
https://github.com/open-cluster-management-io/governance-policy-spec-sync
https://github.com/open-cluster-management-io/governance-policy-propagator
What happened
I run make test-dependency and get an error:
mv: cannot move '/tmp/kubebuilder_2.3.0_linux_amd64' to '/usr/local/kubebuilder/kubebuilder_2.3.0_linux_amd64': File exists

This is because I have test other repo before and I already run make test-dependency once.
Do we need to check whether the /usr/local/kubebuilder/kubebuilder_2.3.0_linux_amd64 is existed before mv it?

/kind bug

I can probably help out with this one
/assign mikeshng

Hi @dhaiducek https://github.com/open-cluster-management-io/governance-policy-template-sync/pull/1 just missing this merge and then this issue can be resolved.

Whoops--sorry I missed one! Merged!

@xuezhaojun please retest and I think this issue can be closed. Thanks.

@xuezhaojun please retest and I think this issue can be closed. Thanks.

Retested, /lgtm

@xuezhaojun please retest and I think this issue can be closed. Thanks.

Retested, /lgtm

/close


Starting a live stream a bit before live edge

Have you read the Tutorials? Yes
Have you read the FAQ and checked for duplicate open issues? Yes
What version of Shaka Player are you using? 3.3.0
Please ask your question
Hello there, we have received an internal requirement of starting a live stream a few seconds, an arbitrary and config-driven amount of time, before the live edge, on both Dash and HLS.
Does Shaka provide an integrated configuration parameter to perform automatically such seek instead of having us to perform manual seek after .load completes through, I guess, the usage of seekRange's end? Or, perhaps, do you have any other suggestion about how to accomplish this?
Thank you very much!

Hello @alexandercerutti
If I understand you correctly you want to seek back to the live edge after .load
if yes, then for that you can use player.goToLive() method to seek back to live.

Hey @hiren3897, no that's not what I need, but thank you for your help.
Maybe I didn't express correctly (and I edited my message above in the attempt of making it clearer). We don't need to go back to live-edge, but starting a live playback from live_edge - N, where N is an arbitrary amount of seconds or milliseconds.

Hey maybe you can use the defaultPresentationDelay to play live-edge -N seconds
manifest: {
      defaultPresentationDelay: xxx // your N seconds here
}

Hey there @hiren3897, using defaultPresentationDelay along with ignoreSuggestedPresentationDelay seems to be the key to achive this result, at least with Dash, but it should work also for HLS. Thank you! I'm closing this and I'll re-open it if I'll have any other doubts. 😄


Delete Roles corrupts positions

I retweaked my code so that deletion of unused roles locked out everything else from running that could possibly affect the roles on a server.
Delete roles, by itself, is causing the positions for the roles to get corrupted so that one position ends up with a value that's higher than what is supposed to be the highest position role on the server, causing the Discord API to issue a "Bad Request" error when trying to make changes afterwards.
This is the code:
function deleteRoles (roles, counter, deleteCallback = function () {}) {
    deletingRoles = true;
    if (roles.length > 0) {
        roles[counter].delete()
        .then(function () {
            if ((counter + 1) < roles.length) {
                deleteRoles(roles, counter + 1, deleteCallback);
            } else {
                deleteCallback();
                deletingRoles = false;
            }
        })
        .catch(function (err) {
            console.log("Error deleting roles (" + counter + ") " + err);
            deletingRoles = false;
        });
    } else {
        deleteCallback();
        deletingRoles = false;
    }
}

I don't know if this is on Discord's side or via this API, but it can't be fixed unless you manually move one of the positions.

[unrelated to issue] I'd recommend using Promises rather than callbacks for your code. 😄

Callback is what function I want to run next after the delete promise is returned. I could have made separate functions for each of them, but Javascript lets me do this, so it's easier to do.
Related to the problem at hand. I just figured out how to update discord.js to version 11 with npm (it was being a butt and I had to just install it again). I'll let you guys know if it happens again.

function deleteRoles (roles, counter, deleteCallback = function () {}) {
    deletingRoles = true;
    if (roles.length > 0) {
        roles[counter].delete()
        .then(function () {
            if ((counter + 1) < roles.length) {
                deleteRoles(roles, counter + 1, deleteCallback);
            } else {
                deleteCallback();
                deletingRoles = false;
            }
        })
        .catch(function (err) {
            console.log("Error deleting roles (" + counter + ") " + err);
            deletingRoles = false;
        });
    } else {
        deleteCallback();
        deletingRoles = false;
    }
}

function deleteRoles (roles) {
    const promises = [];

    for (const role of roles) {
      promises.push(role.delete());
    }

    return promises;
}```

This is a more sane way of doing what you're trying to accomplish. Discord.js's sequential sender will take care of the API request sending rate.

So you're making me handle an array of promises instead now, which I would have to handle with .all() on every element in the array in the previous function, which would also mean making another function to handle all promise returns of the array than doing it iteratively with one function, All instances of this function then can run async with one another and the whole reason why I coded it this way to be iterative in order to try to prevent the bug that is the subject of this thread? Because as soon as it occurs, it requires manual intervention to fix the problem.
If it's fixed with a recent update, then fine because I didn't know discord.js had a sequential sender. But that function was coded originally to occur after stripping a user of one or more roles, which passes it's callback function to this function, then delete any roles with no members in them BEFORE creating a new role or trying to add an existing one to a user.
I get the array being returned should accomplish this, but I'm supposed to wait for every single instance to be finished before doing anything else and if anything errors out, I want to know which one caused it and stop the code from screwing up the server roles anymore than originally happens. FYI, your function would be nicer since it never seems to actually error there, only when I try to change positions, but you're recommending I do something without knowing why I spent hours reworking my original code to this setup in the first place.

Closing issue due to not having any problems since updating to version 11. However, have a different bug to report.


[BUG] test jest + beforeAll(PlatformTest.bootstrap(Server)); causes process.exit called with "-1" at Object.importFiles

Information

Version: 5.60.2
Packages:

{
  "dependencies": {
    "@okta/jwt-verifier": "^1.0.0",
    "@okta/okta-sdk-nodejs": "^3.3.1",
    "@tsed/ajv": "5.60.2",
    "@tsed/common": "5.60.2",
    "@tsed/core": "5.60.2",
    "@tsed/di": "5.60.2",
    "@tsed/platform-express": "5.60.2",
    "@tsed/exceptions": "5.60.2",
    "@tsed/multipartfiles": "5.60.2",
    "@tsed/swagger": "5.60.2",
    "@tsed/typeorm": "5.60.2",
    "ajv": "6.12.2",
    "aws-sdk": "^2.700.0",
    "body-parser": "1.19.0",
    "compression": "1.7.4",
    "concurrently": "5.2.0",
    "cookie-parser": "1.4.5",
    "cors": "2.8.5",
    "cross-env": "7.0.2",
    "dotenv": "^8.2.0",
    "express": "4.17.1",
    "method-override": "3.0.0",
    "moment": "^2.26.0",
    "moment-timezone": "^0.5.31",
    "multer": "^1.4.2",
    "pg": "^8.2.1",
    "typeorm": "^0.2.25"
  },
  "devDependencies": {
    "@commitlint/cli": "^8.3.5",
    "@commitlint/config-conventional": "^8.3.4",
    "@tsed/cli-plugin-jest": "1.16.12",
    "@types/compression": "1.7.0",
    "@types/cookie-parser": "1.4.2",
    "@types/cors": "2.8.6",
    "@types/express": "4.17.6",
    "@types/jest": "26.0.3",
    "@types/method-override": "0.0.31",
    "@types/multer": "^1.4.3",
    "@types/node": "14.0.11",
    "@types/supertest": "^2.0.10",
    "@types/swagger-schema-official": "^2.0.21",
    "concurrently": "5.2.0",
    "husky": "^4.2.5",
    "jest": "^26.1.0",
    "nodemon": "2.0.4",
    "prettier": "^2.0.5",
    "standard-version": "^8.0.0",
    "supertest": "4.0.2",
    "ts-jest": "26.1.1",
    "ts-node": "8.10.2",
    "typescript": "3.9.5"
  }
}

When running cross-env NODE_ENV=test jest I get...
process.exit called with "-1"
at Object.importFiles (node_modules/@tsed/common/src/platform-builder/utils/importFiles.ts:17:15)

It seems to be to do with PlatformTest.bootstrap that is causing it specifically. This seems to be the standard way to test the API as detailed here - https://tsed.io/docs/testing.html#test-your-rest-api
Example
WORKS
beforeEach(PlatformTest.create);
afterEach(PlatformTest.reset);

BREAKS
  beforeAll(PlatformTest.bootstrap(Server));
  beforeAll(() => {
    request = SuperTest(PlatformTest.callback());
  });
  afterAll(PlatformTest.reset);

Server.ts (as per basic tsed init repo that works)
import { Configuration, Inject } from "@tsed/di";
import { PlatformApplication } from "@tsed/common";
import "@tsed/platform-express"; // /!\ keep this import
import { GlobalAcceptMimesMiddleware } from "@tsed/platform-express";
import * as bodyParser from "body-parser";
import * as compress from "compression";
import * as cookieParser from "cookie-parser";
import * as methodOverride from "method-override";
import * as cors from "cors";
import "@tsed/ajv";
export const rootDir = __dirname;

@Configuration({
  rootDir,
  acceptMimes: ["application/json"],
  httpPort: process.env.PORT || 8084,
  httpsPort: false, // CHANGE
  mount: {
    "/rest": [`${rootDir}/services/**/*.ts`],
  },
  exclude: ["**/*.spec.ts"],
})
export class Server {
  @Inject()
  app: PlatformApplication;

  @Configuration()
  settings: Configuration;

  $beforeRoutesInit() {
    this.app
      .use(cors())
      .use(GlobalAcceptMimesMiddleware)
      .use(cookieParser())
      .use(compress({}))
      .use(methodOverride())
      .use(bodyParser.json())
      .use(
        bodyParser.urlencoded({
          extended: true,
        }),
      );

    return null;
  }
}

index.ts (as per basic tsed init repo that works)
import { $log } from "@tsed/common";
import { PlatformExpress } from "@tsed/platform-express";
import { Server } from "./Server";

async function bootstrap() {
  try {
    $log.debug("Start server...");
    const platform = await PlatformExpress.bootstrap(Server);

    await platform.listen();
    $log.debug("Server initialized");
  } catch (er) {
    $log.error(er);
  }
}

bootstrap();

I've tried to repro with a fresh tsed init but it seems to work, so I'm trying to figure out exactly what is causing it in my repo, and https://github.com/TypedProject/tsed/blob/9a4bab528a7bd078dc931261e781e4367c050bcb/packages/common/src/platform-builder/utils/importFiles.ts doesn't seem to offer any ideas
Acceptance criteria

[ ] Test will run and either pass or fail

Hello @chorsnell,
If you are not able to reproduce the bug with a fresh install, it means, you've something wrong in your project (on a specific export).
I don't know why you have different behavior with beforeAll and beforeEach.
Have you more detail on the error ?
Can you edit the compiled file of importFile function and add this:
    try {
      const exports = await import(file);
      process.write(exports) /// maybe undefined. If it's undefined, you have a circular reference
      Object.keys(exports).forEach(key => symbols.push(exports[key]));
    } catch (er) {
      /* istanbul ignore next */
      process.write("Error on exported file: "  + file + "\n"); // add this
      process.write("Current symbol " + key); // add this
      $log.error(er);
      /* istanbul ignore next */
      process.exit(-1);
    }
  }

Try this and come back to me :)
See you
Romain

From a fresh install, beforeAll works :)

@Romakita thanks for the response!
So my<EMAIL_ADDRESS>"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
const globby = require("globby");
const logger_1 = require("@tsed/logger");
const cleanGlobPatterns_1 = require("./cleanGlobPatterns");
async function importFiles(patterns, exclude) {
    const files = globby.sync(cleanGlobPatterns_1.cleanGlobPatterns(patterns, exclude));
    const symbols = [];
    for (const file of files) {
        try {
            const exports = await import(file);
            console.log('exports', exports) /// maybe undefined. If it's undefined, you have a circular reference
            Object.keys(exports).forEach(key => symbols.push(exports[key]));
          } catch (er) {
            /* istanbul ignore next */
            console.log("Error on exported file: "  + file + "\n"); // add this
            console.log("Current symbol " + key); // add this
            $log.error(er);
            /* istanbul ignore next */
            process.exit(-1);
          }
    }
    return symbols;
}
exports.importFiles = importFiles;
//# sourceMappingURL=importFiles.js.map

I tried it with process.write, but had to use console.log instead
process.write is not a function

I'm getting:
Error on exported file: src/services/HealthController.ts

Which is just
import { Controller, Get } from "@tsed/common";

@Controller("/")
export class HelloWorldController {
  @Get("/")
  get() {
    return "hello";
  }
}

Also getting ReferenceError: key is not defined so not sure what that should be outputting.
Agreed it works with a fresh install. I made this repo with tsed init a few weeks ago based on v 5.57.0, and tried to get as much as possible back to 'stock` to see if it helps but its still not liking it.
Any ideas? :)

Sorry the error about key is related to my wrong example.
In the compiled code I see the « import » instruction. It should be transpiled to require()...
About the console.log(exports)? It show something? Try to add a log in the forEach. And replace $log.error by console.error to see the exact error :)

@Romakita I've just come back to this after a couple of weeks (sorry for the long delay!) and now it just works. I don't know why 😄
Thanks for your help. This can be closed now


Add migration

Whoops, I meant to add this PR on my forked repo. I haven't tested it yet.

Okay, this works to address #6.

I'd squash-merge this commit, as I moved things around until I got it right.

FYI, on a different note: I don't plan to use this project because it is GPL v3, and I would want it for commercial use.
I support your right to use GPL v3, so best wishes.
If you decide to change the license to something more permissive (e.g., MIT, BSD, Apache, ..), I would be interested.
Best wishes.

That's true until request type is application/json.
On Wed, 10 Mar 2021, 9:32 pm Dan F<EMAIL_ADDRESS>wrote:

Ah nice.
What I meant is, it looks like this library records web requests
regardless of whether they are DRF, which would be good for me. Is that
true? I might be missing something. Of course I should test it, too.
—
You are receiving this because you modified the open/close state.
Reply to this email directly, view it on GitHub
https://github.com/vishalanandl177/DRF-API-Logger/pull/7#issuecomment-795655673,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AD7SDTEKFLN4YFV5QH2LBYDTC6CZJANCNFSM4YUBXMTA
.


Shared Scalajs facade for types defined by Typescript core?

Is there interest in a small, shared/central Scalajs library for types defined by Typescript core, such as ReadonlyArray and PromiseLike?
Something along the lines of scala-js-dom..
When working with the Typescript to Scalajs Importer, Im noticing that it references such types, but they aren't defined anywhere, leading to duplicated copies within projects, such as this metabrowse example.
The reasons such a library makes sense to be centralized is:

The scope or charter is clearly defined, it'd only contains Scalajs versions of basic types defined by Typescript
To align it with the importer so the importer-emitted references to such types aligned with the libraries names
Typescript looks to play a leading role in the future of JS ecosystem; good Typescript <-> Scalajs interop will be important for Scalajs success in future in my estimation.

PromiseLike[A] is called js.Thenable[A] in Scala.js. This name aligns with the ECMAScript specification.
ReadonlyArray[A] is adequately represented as js.Array[_ <: A] in Scala.js.

Currently, https://github.com/sjrd/scala-js-ts-importer emits refs to PromiseLike & ReadonlyArray when those types are in the input TS.
Where there is an existing type defined in Scala.js, one solution is to be to teach the importer a rewrite mapping from TS-name to Scalajs name. @sjrd does your response above suggest you think that approach is the one to pursue?
How confident can we be that all the types defined in TS already have corresponding Scalajs forms? Uint32Array is another example Ive encountered emitted from Monaco TS.

@sjrd does your response above suggest you think that approach is the one to pursue?

Yes, basically.

How confident can we be that all the types defined in TS already have corresponding Scalajs forms? Uint32Array is another example Ive encountered emitted from Monaco TS.

As long as they have a spec equivalent, they are supposed to receive a type definition in the Scala.js standard library, although we are missing some at the moment, such as Map and Set.
Typed arrays are in the subpackage js.typedarray.*.

The best library is the one you dont have to maintain. Closing in favor of names translation in the importer.


Use the native open dialog for importing

The file import dialog is a little jarring to use on macOS, as it is significantly different than the native open dialog. I understand that it's not likely that Ghidra will behave or look like a regular macOS app, but in this case, couldn't the system APIs just be used?

Note that important features are missing such as:

User's bookmarks, network shares, tagged documents, etc. in the sidebar
The file preview (Quick Look) pane
Different browsing modes such as Miller columns
A search field
Automatic refresh

Also an important consistency detail is that the "Cancel" button goes on the left in Mac apps.

I believe the correct path is to use the native chooser where possible.
Originally, we chose to use our own version of the chooser for the following reasons:

Background thread capability to handle slow network shares
Uniform look-and-feel across platforms
Lack of native chooser API support

Much has changed since we created our own chooser.  It is worth exploring the possibility of abandoning our chooser in favor of the native platform's version.

It would be a big usability improvement on Windows too, the path to file is currently non pasteable directly from Explorer, so one has to manually move to the right folder

If using the file Explorer you can simply drag the file onto Ghidra to invoke the import on that file.  No chooser required for the drag-n-drop case.

We researched this a bit and found no simple API for using the native chooser.  The JavaFX API does have this capability, but we use Swing.  Using JavaFX from Swing is possible, but would significantly increase the complexity of our development and build processes.
As @ghidra1 pointed out, you can have a native file chooser running along side of Ghidra, dragging files from the chooser into Ghidra as desired.

@Piruzzolo For what it is worth, the path text field on the file chooser is not editable.  However, you can type/past directory paths in to the 'File name' text field, pressing Enter when you are done.  This will cause the chooser to load the entered directory.


Install ASCOM driver on my mini-pc

I just ran this focuser solution on my pc (windows 11) and it works perfectly. This is a really great solution. But when I load the software on the mini-PC (windows 11) at the telescope, NINA gives me an error. It's probably a trivial issue, but unfortunately I can't solve it.
The error is:
Retrieving the COM class factory for component with CLSID (xxxxxxx...) failed due to the following error : 80070002. The system cannot find the file specified. (exception from result:0x80070002)
Regards
Igor Korenika

Well, it was my fault.
 Solved.
Anyway thank you for the great solution !
Igor Korenika


Doc updates

The curl command in the README was pointing at the Thoughtbot version, also, since we added node-versions.rb, you need to get more than just the mac script.

This was intended to be merged to another repo - sorry.


Support java.time.Instant type

https://github.com/JavaUnit/AutoParams/issues/70

Add java.time.Instant type generator
Refactor some generators which are related to java.time package to use InstantGenerator and ZoneIdGenerator for fixing value.

ClockGenerator, OffsetDateTimeGenerator, ZonedDateTimeGenerator

이거 오래된 PR이 있는줄 모르고 있었네요 ㅠㅠ
@jwChung @mhyeon-lee 리뷰 부탁드립니다!


npm run node-test does not work as qunit-test does not support wildcards yet

Added wildcard support to qunit-cli as issue https://github.com/devongovett/qunit-cli/issues/17 waiting on pull request.

done https://github.com/devongovett/qunit-cli/pull/19

@AaronNGray I'm closing this because I don't see any problem with the npm run test-node script in Underscore. If you feel that this is still an issue in Underscore, please reopen and clarify.


Add redirect response return support to ResponseReturnTypeControllerActionRector

@TomasVotruba should we also add support for:
JsonResponse when we use json
BinaryFileResponse when we use file
StreamedResponse when we use stream

@johanadivare Definitelly, that would be very useful :+1:  Could you handle that?

@johanadivare Definitelly, that would be very useful +1 Could you handle that?

Will do :)

@johanadivare Thank you :bow:

See https://github.com/rectorphp/rector-symfony/pull/306


📌Sticky Issues Header

Why is this good?
This PR makes the bar the contains labels / milestones / assign at the top of the issues listing sticky on scroll.
This is super useful when you want to manipulate multiple issues at once, you can check issues and scroll down the list with available options and total selected remaining in view.
Screenshot
One selected issue is off screen, but sticky bar makes it clear that this is the case.

Thank you for your contribution @tommoor! Could you please update the readme with a link to the screenshot? Thanks!

Actually, what about PRs? Could we adapt that to be active on both issues and PRs?

It works on the PR's page too actually, classnames are the same because PR's is just a filter on issues

Thank you @tommoor! 🎉


IncomingRequestCfProperties Support

As stated in the CloudFlare documentation for Request:

In addition to the properties on the standard Request object, the request.cf object on an inbound Request contains information about the request provided by Cloudflare’s edge.

Initially, using the provided the examples to mock these properties should be sufficient.
Further enhancement could be done by using fast-geoip to return semi-accurate results for the geo-IP information.

(PS. Thanks for all your hard work on this so far!)

If you're using the API, it's up to you to set this on your requests. I chose to do this so it's easier to test with different values. Perhaps I should document that though...

Ah, indeed. I should have taken a closer look at the default implementation.
I think perhaps I didn't check because in your fork of node-fetch cf is optional and set to any.
--
If I have some time this weekend I'll try to submit a PR to the node-fetch fork to add to the TypeScript definition.
If I have more time I'll make a PR for implementing the geo-IP functionality. I think since the use case probably isn't really common, it could be enabled by a feature flag and fast-geoip could be added as an optional package.


Implement class utils::Range (cpp)

Should inherit from cv::Range with added constructors and assignment operators goodies.

Completed; Still to be tested.


QA - Site - Product Detail Page - Request Info - Need Proper alignment in Label of Request Info on Detail Page.

QA - Site - Product Detail Page - Request Info - .Need Proper alignment in Label of Request Info on Detail Page.

Done


MRG: Test fnirs channel structures for chromophore data

Reference issue
Preparation for #9141
What does this implement/fix?
Adds checking of fNIRs channel naming structure for data after transformation to chromophore.
Previously all testing was done on the raw data or after transformation to optical density. But with possibility of people creating their own data structures without the readers I have added additional error checking for the hbo/hbr data type.
Additional information
This is the last addition I have planned in preparation for #9141

@larsoner could you please review. This should be the last improvement to these checks, I think I have covered most edge cases now (famous last words).

Thanks @rob-luke !

Thanks @larsoner


add contributing doc

Hey @Mordil, you just merged a pull request, have a coin!
You now have 38 coins.


Store claimants names as separate fields

HMRC expect employees names to be reported as three separate fields: Forename, Second forename, and Surname. Given this, and given that we receive three separate names from Verify, we should probably store claimants names as three separate fields.
Added a data migration using the gem data_migrate - it seems well supported with active development. The features it provides will allow us to confidently migrate and modify data.
There was one annoyance I found with it, it doesn't create a db schema migration for the data_migrations table it generates, so I created one manually. There is an open issue on the gem repo about it: https://github.com/ilyakatz/data-migrate/issues/105

 Store claimants' names as separate fields

Ready for another look

@tekin Ready for another review. I added the separation of db:migrate and data:migrate, updated the readme.
I also had to add a commit that ignores some warnings from standard for the generated file 55e824cb1754a7c9f5c10a68d934e56473ea815f


Documentation fixes.

Correct command-line to run createIndex
Add steps regarding Postgres Sql install requirement.

@aimichal : simple!
@carissas : fyi

looks good to me.

done. merging!


Question about configuration file

we know that etcd can be started in three ways (in the old version): command line, environment variable, and configuration file. My question is why not started with the configuration file in the new version? As far as I know, the new etcd doesn't support the function of configuration file.

@shuqilou it's still supported. Use etcd --config-file config.yml. For an example configuration, see https://github.com/coreos/etcd/blob/master/etcd.conf.yml.sample
Loading from a config file isn't populating the configuration with the defaults in case the fields aren't set, so that's a bug. Will fix.

@heyitsanthony is #6151 fixed this issue? shall we backport the fix?

@xiang90 only master is affected since embed is not in release-3.0. The example config works fine in 3.0.4.


Test framework

To run these tests locally, just make sure you have dash installed for testing - you can run pip install -r tests/requirements.txt - then just pytest to run all the tests, or pytest -k cd001 will just run the one test with cd001 in its function name. pytest -k cd001 --pause will run that same single test, but drop into pdb right after opening the browser window, so you can debug the test both in python (n a few times and you'll be in the test code) and in the browser (open the js console and do whatever you like)
I added two example tests - one showing dragging & pinning columns and verifying that they're drawn as expected after, another filtering from the ui. I didn't add any tests with dash callbacks, but those work the same way. Both tests use the utils.Grid class to centralize all the ag-grid-specific selectors.

I had to downgrade to node 16 - pretty sure this is fixed in recent versions of Webpack (see this SO post), but this project is still on v4 so I'll upgrade to v5 in a separate PR and see if that lets us upgrade to node 18


Autocomplete: Documentation summary missing

It seems that the autocomplete documentation summary (which can be seen in the screenshots) is not working at the moment. While autocompletion in general works fine, the documentation information is nowhere to be seen.

System
Atom: 1.18.0
OS: macOS Sierra (10.12.5)
Atom-Elixir: 0.2.3

@Zeeker Any news?

This issue and the comments in it are all there is.

@Zeeker did you find a solution to this?

I've since switched to Spacemacs.


fix non-blocking issue

https://github.com/MicrosoftDocs/azure-docs-pr/pull/134177#issuecomment-714291850

Microsoft authors of articles need to make updates through the private repository so the updates can be staged and validated by the current validation rules. After you review staging and fix all validation issues, you can add the sign-off comment to let the PR reviewers know the updates are ready to be merged.It's easy to access the private repo version of your articles in GitHub. Just add -pr to the URL, as follows:
Public repo URL: https://github.com/Microsoft/azure-docs/blob/master/articles/azure-portal-overview.md
Private repo URL: https://github.com/Microsoft/azure-docs-pr/blob/master/articles/azure-portal-overview.md
We have closed this pull request. Please resubmit the updates through the private repo. If you need perms to the private repo, see the contributor guide instructions


fix: operator resource labels should be unique

What type of PR is this?

/kind bug

What does this PR do / why we need it:
operator-sdk sets the default labels as control-plane: controller-manager in the manifests. This label is generic and should be modified according the operator.
One of the users has reported the below issue on coreos slack.
I have a customer on ROSA on 4.9.37 who have got these operators installed from the OperatorHub.
Red Hat OpenShift GitOps  -----> 1.5.4 provided by Red Hat Inc.
GitLab Runner ----> 1.9.0 provided by GitLab, Inc.

The target namespace for these operators in "openshift-operators" and cannot be overridden.
The GitLab runner installs  3 services with a pod selector "control-plane=controller-manager".

This pod selector matches pods installed by both operators, hence customer is getting random deployment errors like:
one or more objects failed to apply, reason: Internal error occurred:
failed calling webhook "mrunner.kb.io":

failed to call webhook: Post "[https://gitlab-runner-controller-manager-service.openshift-operators.svc:443/mutate-apps-gitlab-com-v1beta2-runner?timeout=10s](https://gitlab-runner-controller-manager-service.openshift-operators.svc/mutate-apps-gitlab-com-v1beta2-runner?timeout=10s)":
dial tcp <IP_ADDRESS>:9443: connect: connection refused

Have you updated the necessary documentation?

[ ] Documentation update is required by this PR.
[ ] Documentation has been updated.

Which issue(s) this PR fixes:
Fixes a part of GITOPS-2144
Test acceptance criteria:

[ ] Unit Test
[ ] E2E Test

How to test changes / Special notes to the reviewer:

/retest

/test v4.9-e2e

@jopit can you please take a look and approve it ? I have done some testing and it went well

/retest

/test v4.9-e2e

/retest

/retest

/retest

/lgtm
/approve

/retest

/retest


SQL datetime format returns as integer value in Vanna flask app

while returning query results , Vanna App converts datetime fields into UNIX time format. how can i return the results in readable formats like "dd-MM-yyyy HH:mm:ss". i have tried adding in documentation like
vn.train(documentation="Use dd-MM-yyyy HH:mm:ss format for sql field with type datetime2(0)")
but couldnt find any changes. see attached image

This will be fixed in the next release. It is purely a display issue in the flask app.

Fix in v0.3.x


Return molecule if undefined stereochemistry is detected but exception is deactivated

Currently, we return None when OpenEye can't figure out the chirality of an atom/bond and exception_if_undefined_stereo is False so it is impossible to ignore the warning.
I'll fix this in the next PR.

May be related to #146 .

Based on our conversation today, I agree that we should let a Molecule with undefined stereochemistry be returned if the user has specified exception_if_undefined_stereo=False. Otherwise the toolkit will just be too hard to use for some molecules. However I also agree that we should put in a longer message about why what they're doing is potentially dangerous, and stating that turning the check off to avoid a tetrahedral nitrogen could, for example, make them miss an important double bond missing stereo later in their test set.

Are you sure you want to be calling OEPerceiveChiral here?
The documentation says:

as a side-effect, it also sets the ‘symmetry’ property of all the atoms the molecule to be their ‘explicit hydrogen suppressed’ symmetry class, by calling the OEChem TK function OEPerceiveSymmetry.

That sounds dangerous!
Don't you just want to query the stereochemistry of sites after constructing them from a SMILES?
Instead of letting users operate the toolkit with the safeties off just to deal with amines, what about instead detecting if you have a tertiary amine if OEChem thinks stereochemistry is undefined, and allowing that to be OK if so?

@jchodera , that's a good catch. I've split that into its own issue.
This issue will be closed when

a more thorough warning message is implemented

This was fixed in #182, but we still need to expand the warning message for this.


Support multiple versionings in the url

This currently only allows one api root to be set. This should be able to handle different routes requiring different api roots.

Fix has been merged


'updateUnreadCount' doesnt seem to be updated in iOS

Describe the bug
'updateUnreadCount' doesnt seem to be updated in iOS.
I also debugged the swift code, maybe I'm doing something wrong
To Reproduce
Intercom.addListener('updateUnreadCount', (data: { unreadCount: number }) => {
  this.unreadIntercomCount = data.unreadCount;
});

Intercom.setupUnreadConversationListener();
Intercom.getUnreadConversationCount().then(({ unreadCount }) => {
  this.unreadIntercomCount = unreadCount;
});

Expected behavior
A clear and concise description of what you expected to happen.
Screenshots
If applicable, add screenshots to help explain your problem.
Desktop (please complete the following information):

OS: [e.g. iOS]
Browser [e.g. chrome, safari]
Version [e.g. 22]

Smartphone (please complete the following information):

Device: [e.g. iPhone6]
OS: [e.g. iOS8.1]
Browser [e.g. stock browser, safari]
Version [e.g. 22]

Additional context
Add any other context about the problem here.

Fixed in: https://github.com/Fiksuruoka-fi/capacitor-intercom/pull/14/commits/e45b3deadd953a9fa7f14840ce8ca1c8e0679625

Fixed in 4.3.0


Add --create-dirs to curl call in download_files_inner

Without this option, curl does not create intermediate directories
and thus trying to retrieve binary cache from az blob storage
fails if the buildtrees and its various subdirectories for ports
are not already present.
The alternative is for vcpkg to create the intermediate dirs
explicitly, but we already use the option in try_download_file,
so there is no reason not to use it here as well.

Tests: not sure how to add tests for this, if you have any ideas
I don't mind adding them.

This is almost definitely wrong, I happily went by the guid_marker and apparently multiple functions have the same one.

Thanks!

Btw, when will version with this change be released? This is a blocker for us.

@horenmar we're gonna hotfix https://github.com/microsoft/vcpkg/issues/23862 then crank the release


Allow disabling .gonvim/init.lua

Allowing arbitrary code to be executed automatically can be a bad idea, so I'd suggest disabling per-project setup by default or at least allow the user to disable it in setup().

Sure, options added.

Thanks a lot!


Removed reference to cron file (issue #48) and other cleanup/tidying.

Removed reference to cron file (issue #48) and other cleanup/tidying.

Sorry for the slow response, but thanks @tedyoung for the contribution! These additions to the README look very helpful.


fix: ensure complete gRPC stream consumption in doListFilerEntries to prevent context canceled errors.

What problem are we solving?
When using the etcd filer backend with SeaweedFS's S3 API, an issue has been identified related to gRPC stream handling in scenarios where the number of objects being listed is capped by the MaxKeys parameter. To reproduce this behavior, we can follow these steps with test data:
Three objects are created within a bucket using the ceph s3 tests create_objects method:
create_objects(client, bucket_name, ['foo', 'bar', 'baz'])
List Objects with MaxKeys:
client.list_objects(Bucket=bucket_name, MaxKeys=2)
Error Log: Upon execution, the following warning is logged, indicating a premature stream closure caused by a context canceled error:
{"level":"warn","ts":"2024-03-31T14:45:36.154175+0300","logger":"etcd-client","caller":"v3@v3.5.12/retry_interceptor.go:62","msg":"retrying of unary invoker failed","target":"etcd-endpoints://0x14001b75dc0/<IP_ADDRESS>:2379","attempt":0,"error":"rpc error: code = Canceled desc = context canceled"}
This problem arises in scenarios where the gRPC stream from the etcd filer to the S3 API server is not fully consumed before being closed, leading to the context canceled error. The issue is observed when the SeaweedFS S3 API is configured to use an etcd filer backend.
How are we solving the problem?
To address this issue, the function's logic has been updated to continue consuming the gRPC stream (stream.Recv()) even after reaching the maxKeys limit, ensuring that all server responses are acknowledged and the stream is properly closed. The loop will be exited when recvErr is equal to EOF
How is the PR tested?
localy with ceph s3tests
Checks

[ ] I have added unit tests if possible.
[ ] I will add related wiki document changes and link to this PR after merging.

Can etcd support max limit?

yes, it has clientv3.WithLimit, but anyway it doesn't help. Maybe we need to do some more research, but I'm not sure which way to look.

In any case, if we can't tell gRPC that we don't need the other data, don't we have to read the remaining data from the stream?


Unexpected EOF

Steps to reproduce
1.decompression buffer
2.Unity 2018
3.
Expected behavior
     GZipInputStream gZipInputStream = new GZipInputStream(new MemoryStream(bytes));
            MemoryStream outStream = new MemoryStream();
            try
            {
                int count = 0;
                byte[] data = new byte[256];

                while ((count = gZipInputStream.Read(data, 0, data.Length)) != 0)
                {
                    outStream.Write(data, 0, count);
                }
            }
            catch (Exception ex)
            {
                throw new Exception("GZipcompress error:" + ex.Message);//unexpected eof
            }

Version of SharpZipLib
0.86.0

Don't remember if there were any quirks in v0.86
Try the latest version:
GIT: https://github.com/icsharpcode/SharpZipLib/tree/upm/v1.3.1
UPM: https://openupm.com/packages/org.icsharpcode.sharpziplib/

In no case can Available be less than 0

What this means is that when it's trying to decompress the data, it reaches a point where there needs to be more data to fully decompress, but it reaches the end of the file.
I would guess that one of three things causes this:

The .gz file is corrupt (if you could attach a problematic file I can analyze it)
Something is going wrong with the buffering/stream, is the above the source for UnZipStream?
Also, is it in Zip or GZip format? UnZipStream seems to point to Zip, but GZipInputStream is for GZip.
Some error in the old 0.86 code (it was released 10 years ago!)

If you have some spare time！
Check the source code！
I'm sorry, I can't provide the problem file right now！
I unzipped a base64 JSON stream
Unexpected EOF cannot be run after looking at the source code
发件人:                                                                                "icsharpcode/SharpZipLib"                                                                                @.>;
发送时间: 2021年7月8日(星期四) 晚上7:18
@.>;
<EMAIL_ADDRESS>主题: Re: [icsharpcode/SharpZipLib] Unexpected EOF (#647)
What this means is that when it's trying to decompress the data, it reaches a point where there needs to be more data to fully decompress, but it reaches the end of the file.
I would guess that one of three things causes this:
The .gz file is corrupt (if you could attach a problematic file I can analyze it)
Something is going wrong with the buffering/stream, is the above the source for UnZipStream?
Also, is it in Zip or GZip format? UnZipStream seems to point to Zip, but GZipInputStream is for GZip.
Some error in the old 0.86 code (it was released 10 years ago!)
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub, or unsubscribe.


Implement convertors to and from Polars DataFrames in Rust SDK using polars-arrow high level convertors #1099

Took a stab at #1099, but I have a few questions/concerns:

Because of the blanket implementation of IntoArrow for any type that implements RecordBatchReader, it is not possible to implement IntoArrow directly for Polar's DataFrame struct. Because of this, I had to create a new type (PolarsDataFrameRecordBatchReader) that consumed the DataFrame and implement the trait for this type. This does not seem ideal as users will not be able to directly called into_arrow() directly on their Polars DataFrame. Please advise on the best way to address this. If we remove the blanket implementation, we will have to explicitly box things that are already record batch readers, which also isn't too ergonomic.

My implementation of into_polars requires calling try_collect() on arrow::SendableRecordBatchStream. Into_polars is fallible due to any potential errors that occur in the LanceDB query OR due to any errors that occur in the conversion process. I wasn't sure the best way to surface that union to the user (creating a new Error enum specifically for this function didn't seem right), so I decided to extend the existing LanceDB error enum with a variant for Polars Errors behind a feature flag. This seems like bad practice too as it requires me to mark the enum as non-exhaustive, which is a breaking change. This is to handle cases where crate A depends on LanceDB, but does not enable the polars feature but crate B, which depends on crate A and LanceDB, does enable the polars feature, preventing crate A from compiling.

What is the purpose of SimpleRecordBatchReader and RecordBatchReader defined here? I don't see it referenced. When would we have a RecordBatchReader that uses the LanceDB error type and not the arrow error type?

Thanks!

It appears we have a bit of a conundrum.  You can reproduce this by running cargo update.
The latest version of arrow is 51.  LanceDb is pinned to version 50 (this is somewhat unavoidable as Lance is pinned to 50 because datafusion is pinned to 50).  LanceDb is close to upgrading to 51 (Lance already has) but we should generally assume that LanceDb will lag behind the latest version of Arrow.
polars-arrow uses a range (>=41). This seems like it should work.  Version 50 would satisfy both LanceDb and polars-arrow.  However, that is regrettably not how the cargo resolver works (https://doc.rust-lang.org/cargo/reference/resolver.html#unexpected-dependency-duplication).  As a result we end up with two different versions of Arrow, 50 and 51.  This is why we are getting errors in the CI jobs.
We can patch the dependency, and that would allow us to build, but patches have to be at the top-level and so anyone using lancedb would then fail.
The only solution I can think of at the moment is to move away from Arrow2Arrow and use the FFI stuff directly (polars can export to FFI, which is unversioned, and then lancedb can import from FFI and vice versa).

Ah I see, I was wondering why I couldn't reproduce the CI failures locally. I guess this was a good exercise in learning to run cargo update when taking on new dependencies.
The cargo book mentions using cargo update with a --precise flag - is that what you mean by patching locally? I guess even if you do use cargo update --precise, since LanceDB is a binary, the pinned locked file won't be all too useful - AFAIK even if its checked in, it is ignored during dependency resolution.
I'll take a crack at the FFI stuff next week.

This approach won't work, so closing the PR.


Embed information from the tools and editors guide

See the link to https://github.com/econtoolkit/tutorials/blob/master/julia.md#installation-and-setup/ in tools_editors.rst
Those instructions need to be emdeded here and that markdown file soon deprecated.  Luckily, it appears to be the only link to the old, rough, setup notes.

Leave in the opinionated setup instructions for Atom (i.e. the softwrap and the change to LF) in https://github.com/econtoolkit/tutorials/blob/master/julia.md#installation-and-setup

Also

Move all of the atom setup and installation steps right after installation of Atom
Get rid of the "I" and instead have "you" or something similar
Get someone to test the installation steps from scratch by nuking Atom and the .atom folder
Are we sure about the things about "changes in versions" etc. that are in those setup instructions?

@jlperla This is done now. Agree that the changing versions stuff doesn't make sense here (the fix was 'turn it off and turn it on again', which I suspect people would do anyway).
Will hand over to @XiaojunGuan to test since she's out of issues.

Great.  I will test as well.

I am going to close this since we are at the "run tests everywhere" stage


"Related Videos" list messed up

You need a youtube account and open one of your uploaded videos (it is important!).
Then you will see the first related video being cut off a little bit, like the following:

Firefox 34.0.5
YTC Dev Build 461

Not happening to me at least and I'm on Firefox 36 and latest dev version of YTC. You should try it if you already haven't. You can get it from: https://github.com/YePpHa/YouTubeCenter/wiki/Developer-Version
PS: Next time when you open a issue, please list your browser and it's version and also YTC version.

@ErdeFB
Firefox 34.0.5
YTC Dev Build 461

@ReporterX Is it possible tha this issue is being caused by the fixed that you mentioned here: https://github.com/YePpHa/YouTubeCenter/issues/1345#issuecomment-68638681

@Yonezpt Thanks for the reply. No, the CSS fix is not the culprit. This bug won't occur if I disable the script.
Note that you have to visit '''your own uploaded video'''. It won't occur if you watch other's videos.

@Yonezpt
Without YTC Dev Build:

With YTC, when I watch other's videos:

With YTC, when I watch my own uploaded videos:

Which option/feature causes this change? Any clues?

Sorry for the delay, didn't have any uploaded video to test the layout so I had to upload one and now I am able to replicate the issue.
It seems Youtube changed something, yet again, causing the code to malfunction, specifically these lines in YTC source code:
line 22543
        // Sidebar
        if (sidebar) {
          if (!large && !document.getElementById("watch7-playlist-data")) {
            var mt = calcHeight + pbh + (document.getElementById("watch7-creator-bar") ? 48 : 0);
            if (ytcenter.utils.hasClass(document.getElementById("watch7-container"), "watch-branded-banner") && !ytcenter.settings.removeBrandingBanner)
              mt += 70;
            sidebar.style.top = "-" + mt + "px";
          } else {
            sidebar.style.top = "";
          }
        }

What is happening is that in the line var mt it is trying to calculate the new top position of the sidebar wether the user is watching his own video or someone else's. When YePpHa wrote that section, the sidebar was supposedly 48px higher than it is now when compared to the page layout when watching someone else's video. Now it seems that the sidebar isn't higher than the default one, which supposedly leads me to believe that simply removing the end of the mentioned line fixes the issue, so the above code should be replaced with this fixed one:
        // Sidebar
        if (sidebar) {
          if (!large && !document.getElementById("watch7-playlist-data")) {
            var mt = calcHeight + pbh;
            if (ytcenter.utils.hasClass(document.getElementById("watch7-container"), "watch-branded-banner") && !ytcenter.settings.removeBrandingBanner)
              mt += 70;
            sidebar.style.top = "-" + mt + "px";
          } else {
            sidebar.style.top = "";
          }
        }

I just tested and it looks right for me now.

For those who are interested:
Temporary fix
Install Stylish addon.
Go to youtube.com
Write new style -> For youtube.com...
Copy this code:
#watch7-sidebar {
    top: -360px !important;
}

Name the style. Save.
@Yonezpt Thanks a lot for your detailed reply.

This bug is fixed. Closed.


Missing "DEMAIN" value

Hello,
With TEMPO contract and EJP we have a value set by RTE one day before who say the tarif of tomorrow.
It's the value "T1_DEMAIN" from Teleinfo, this value is'nt present in the sensor.py
Can you add  this in the sensor.py ?
"type_heures_demain": self.coordinator.data.get("T1_DEMAIN"),

Hello, done https://github.com/Aohzan/ecodevices/releases/tag/4.4.0

Hello @Aohzan
Thanks it's working ! :)


Verify if indirect invocation extrinsic has been successful on parentchain.

An extrinsic included in a parentchain block is currently executed without any checks. Hence, it will be executed on the worker side even if it was unsuccessful on the parentchain itself:

See https://github.com/integritee-network/worker/runs/6558543131?check_suite_focus=true
Open question: how can we check for the success of an extrinsic? Ideally, without checking the parentchain state.
Thanks goes to @Gauthamastro for detecting this vulnerability

https://polkadot.js.org/docs/api/cookbook/blocks/#how-do-i-determine-if-an-extrinsic-succeededfailed
Mapping extrinsic to its event: system.ExtrinsicSuccess and system.ExtrinsicFailed events.
// no blockHash is specified, so we retrieve the latest
const signedBlock = await api.rpc.chain.getBlock();

// get the api and events at a specific block
const apiAt = await api.at(signedBlock.block.header.hash);
const allRecords = await apiAt.query.system.events();

// map between the extrinsics and events
signedBlock.block.extrinsics.forEach(({ method: { method, section } }, index) => {
  allRecords
    // filter the specific events based on the phase and then the
    // index of our extrinsic in the block
    .filter(({ phase }) =>
      phase.isApplyExtrinsic &&
      phase.asApplyExtrinsic.eq(index)
    )
    // test the events against the specific types we are looking for
    .forEach(({ event }) => {
      if (api.events.system.ExtrinsicSuccess.is(event)) {
        // extract the data for this event
        // (In TS, because of the guard above, these will be typed)
        const [dispatchInfo] = event.data;

        console.log(`${section}.${method}:: ExtrinsicSuccess:: ${JSON.stringify(dispatchInfo.toHuman())}`);
      } else if (api.events.system.ExtrinsicFailed.is(event)) {
        // extract the data for this event
        const [dispatchError, dispatchInfo] = event.data;
        let errorInfo;

        // decode the error
        if (dispatchError.isModule) {
          // for module errors, we have the section indexed, lookup
          // (For specific known errors, we can also do a check against the
          // api.errors.<module>.<ErrorName>.is(dispatchError.asModule) guard)
          const decoded = api.registry.findMetaError(dispatchError.asModule);

          errorInfo = `${decoded.section}.${decoded.name}`;
        } else {
          // Other, CannotLookup, BadOrigin, no extra info
          errorInfo = dispatchError.toString();
        }

        console.log(`${section}.${method}:: ExtrinsicFailed:: ${errorInfo}`);
      }
    });
});

Simple enough. But how can we make that secure?

@haerdib In Polkadex, we created a storage value where successful transactions save messages in a vector, these can be relayed to enclave with storage read proofs. The vector in storage is cleared on every new block using on_initialize().
Enclave can verify the messages from blockchain using storage proofs.

Not necessarily, you can have the storage in teerex pallet ( in our case ocex) where other pallets can store the required data based on a standard.
For example
pub enum IngressMessages { Deposit(assetid, user, amount), GenericData(identifier, vec<u8>), .... }

Solution proposal:

[ ] Read the events (directly from the block, or read events at the given block from parentchain, whatever is possible)
[ ] Ensure the event is verified (might be obsolete due to header verification, but if not, verification should be possible via read proof)
[ ] Add unit tests and / or integration test to check if unsuccessful / successful indirect invocation extrinsics are (not) executed according to their success status.


[CI] Goreleaser support for release channel

Description
This PR fixes #2217
Notes for Reviewers
Signed commits

[ ] Yes, I signed my commits.

@utkarsh-pro, you da man.

@utkarsh-pro, you da man.


Added verification of whether the system has already been set up

 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.Lynn Rozen 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.

Closed the PR since a wrong github account was linked to the commits.


C++-ize slice_buffer

Should this be an issue in the gRPC issue tracker?
Yes
What version of gRPC and what language are you using?
Core, C++
What operating system (Linux, Windows, …) and version?
N/A
What runtime / compiler are you using (e.g. python version or version of gcc)
N/A
What did you do?
Read the code for grpc_slice_buffer
What did you expect to see?
Clean idiomatic C++ code
What did you see instead?
C-style code with manually-inlined vectors
Anything else we should know about your project / environment?

If you think this is an easy task as first contribution to grpc I can take care of this, at least I will try.

Although we love help from our partners, this issue does not seem like a good first issue. It is too all pervasive.

I'm all ears one what can be a first issue to work on

Your enthusiasm is awesome and I will try to make sure that we find some suggestions.

This is something that we still need to do.


fix(router): Ruby 3.3 compatibility issue with anonymous block parameter

The anonymous block parameter syntax (&) causes an error in Ruby 3.3 when the parameter is used within the method body. This change uses a named parameter instead while maintaining compatibility with older Ruby versions.

@ezekg Good to know, thanks for clarification! I guess I will update my ruby version then :D


Add more of our features to Readme examples

I'll merge but feel free to comment and I'll follow up


Will this repo get moved to the vertigis GitHub account?

@rcooney,  any plans to move this under the VertiGIS GitHub account?

Yes, all of the workflow-activities-* repos will eventually move. There isn't a timeframe for it yet though.

Moved!


Implement logic

WIP

see the stacked PRs for additional content here...

#16
akiross/wordlelm #3
akiross/wordlelm #2
akiross/wordlelm #1

reviewed during call with @akiross ❤


How to pass props in createElement

I have been using createElement on react-router to pass intlData for react-intl. But thats not working anymore with relay-nested-routes. Application does not get these intlData.
Does it seem like possible bug in relay-nested-routes?
function createElement(Component, props) {
    if (Component === Application) {
        return <Component {...props} {...intlData} />
    }
    return <Component {...props} />
}

There's a thought, actually - the current way that props forwarding to the RootContainer is set up doesn't actually work for renderFetched, because the user won't have any access to the NestedRenderer class there.
We could solve both that and this current issue by picking up the renderFetched prop on the route (if any) and using that to render each of the components in NestedRenderer.

The new API will involve explicitly passing in createElement to the Router. As needed, you'll be able to wrap that function to inject additional props.

Although in your example there, the renderFetched hook on the route for the Application component would probably serve you better than branching on every render there.


Add service bus queue binder readme

Codecov Report

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

@@            Coverage Diff            @@
##             master     #423   +/-   ##
=========================================
  Coverage     50.32%   50.32%
  Complexity      476      476
=========================================
  Files           140      140
  Lines          2164     2164
  Branches        102      102
=========================================
  Hits           1089     1089
  Misses         1007     1007
  Partials         68       68

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 d579d36...fed94eb. Read the comment docs.


feat(site-builder): check in walrus config for sites-config.yaml

IMHO, a command should fail with a "$HOME need to be defined" in very rare case of $HOME missing. That way the user knows that a fix is needed with their setup (cron/login/rlogin!?).
Defaulting to "/" may result in a more obscure error (e.g. a generic "access error")... and then you might have to provide support to explain "why?" Walrus is not able to load the files even if at one of the documented location.

IMHO, a command should fail with a "$HOME need to be defined" in very rare case of $HOME missing. That way the user knows that a fix is needed with their setup (cron/login/rlogin!?).

i wouldn't fail here, only b/c there may just be a valid config in one of the other default paths. If none can be found, we can error out and print that no config was found across any of the default paths.

The key is even if the file exists at one of the default path, it would fail to be seen by the command (because of a user setup error). That might result in an obscure support request to the Walrus team...
May be if the command reach the point of not finding a config anywhere... just additionally inform the user if $HOME is not defined?
(I don't feel strong about it, just a suggestion).

I also tend to agree that it would be a better approach throwing an error when $HOME is undefined.
I just update the code, @giac-mysten if you agree, feel free to resolve the issue and then we can merge.


Fix Windows CI test script to avoid caching kernel when in pull-request test

https://github.com/cupy/cupy/pull/4362#discussion_r572536881
This PR also fixes the issue that test script fails when all tests pass 😅

/test

/test

/test

Jenkins, test this please

Jenkins CI test (for commit 33bd3ffeb7bbe5bebb29eee0ef2daefc2ddaf6df, target branch master) failed with status FAILURE.

Uploading kernel cache message not in the Windows test results.
I think we don't have to retrigger Jenkins as this PR only changes FlexCI part.

@emcastillo This pull-request is marked as to-be-backported, but the corresponding backport PR could not be found. Could you check?


Fix issue 16179 - multiSort no longer callable with delegate with context

https://issues.dlang.org/show_bug.cgi?id=16179 (multiSort no longer callable with delegate with context)
Moved multiSort's nested functions to module scope.
Sorting predicates that access the frame of a function should work.

@wilzbach: The PR was automatically assigned to you, please reassign it if you were identified mistakenly.

FYI: This feature of the dlang-bot is still in work (it tries to assign persons without merge rights).
@togrue

You still seem to have an issue with trailing whitespace (If your phobos fork up-to-date, you can run make -f posix.mak style or make -f posix.mak checkwhitespace. I also recommend setting up editorconfig in your favorite editor (or switch to non-trailing whitespace by default)
If you change the title to "Fix 16179" or "Fix issue 16179" the dlang-bot will recognize it and automatically add it to the changelog and update the Bugzilla issue. Btw in general it's nice if you include the title of the issue in the PR too (e.g. people just reading their Github emails or browsing through the PR list)
I added a few nits, apart from LGTM and thanks for taking the time to fix!

If you change the title to "Fix 16179" or "Fix issue 16179" the dlang-bot will recognize it and automatically add it to the changelog and update the Bugzilla issue.

Sorry it's not the PR title, but any commit message (however I opened an enhancement request)

@togrue can you squash your commits into one (with the "Fix issue 16179" title), so that's ready for merging?
@wilzbach if you think it's ok, this should be merged as soon as possible (after the squash), as it's blocking #4737.

@wilzbach if you think it's ok, this should be merged as soon as possible (after the squash), as it's blocking #4737.

Oh, I lost a bit track of this one, sorry. Thanks for the ping!

@togrue can you squash your commits into one (with the "Fix issue 16179" title), so that's ready for merging?

Yep please squash & we are good to go :)

I'm on board with this, @wilzbach please merge when you approve.

I'm on board with this, @wilzbach please merge when you approve.

Thanks, this is sadly solely blocked due to @togrue's problem(s) with squashing.
This problem seems to happen regularly here. Has anyone a good idea how we could ease the flow? (I already started a discussion about auto-squashing, but this seems to be too problematic)
@togrue a couple of pointers:
https://git-scm.com/book/en/v2/Git-Tools-Rewriting-History
https://ariejan.net/2011/07/05/git-squash-your-latests-commits-into-one/

@togrue I saw that you repaired your last commit. Could you please squash all your commits into one?
We would like to add only one commit to the repo to keep a clean history.
Please let us know if you have troubles there - we are happy to help. A good chatting place might be #d on Freenode (you can ping me anytime - my nick is greenify) or D.learn on the NG.

Glad we could we solve the squashing problem :)

Auto-merge toggled on


Forms-210 # Unable to access the Gallery from the iOS app, and image data broken

Wrong name for cordova.PictureSourceType variable name
PictureSourceType will be undefined in catch so just assign blank object
Needs to be tested in app-shell or mBaas

Forms # Camera Button is not being rendered on browser

attach button to correct element
added tests to confirm the buttons are there

FORMS # set default attribute values

LGTM

LGTM :+1:
For future reference, I find Array#forEach() makes for a nice built-in alternative to _.each(). :)

Has a customer advocate taken a look at this yet?

UX reviewed by Rachel


-typo in README

Could you please motivate your denial?

We welcome academic exchanges and feedback on bugs in the code. Minor syntax errors are not acceptable. Anyway, thank you very much for your reminder.