Mocking batchelor requests with Nock

Hey @jamesmhaley 👋 thanks for your great work on this library!
The official Node JS Google client still doesn't support the batching endpoint 😞 so there's still a need for a lib such as this.
Currently, we use the Node JS Google client to interact with the the Google Calendar API. I've been using Nock to mock responses in our tests. Nock is also used for the tests in the official Google client too.
Unfortunately, Nock doesn't seem to pick up requests made by batchelor. I can see batchelor is using the request lib, which seems as though it should be compatible with nock.
Do you have any suggestions as to why Nock isn't picking up batchelor's requests?
I can provide an example to reproduce if that's helpful.
As an aside, how actively are you looking to maintain this lib? Would be keen to make some contributions if this is still being actively worked on! 👍

I've since looked into this a little further. The reason Nock doesn't work with Batchelor seems to be an issue with Nock handling multipart requests. It seems like there a few workarounds, so will try those out!
Would still be keen to help out on this project if it's actively maintained.

Hey @lewisblackwood, Thanks for that. Would love to have you onboard with the project! Been on other projects which means I no longer have the time to maintain as much as I would like. Looking to take this forward over the next few months. I'll add you to the repo.


Fix for #88.

Now this only tests what happens when you POST a bad payload to a search endpoint.
Also added a couple of missing search endpoints.

Is this an update to the #105 PR? I think we should just update the PR directly.


Use make for building

Standardize Makefile targets for

testing
linting
building
cleaning
generating code

MinBFT's Makefile can serve as an example.

And this one from Eudico - https://github.com/filecoin-project/eudico/blob/eudico/Makefile


Update add-phone-call-task-email-appointment-activity-case-record.md

Added a note about OrgDBOrgSetting MakeSocialPanePhoneCallCompleted

I took to live via my working branch.


Tutorial uses buggy version for GKE example

Bug in question: https://github.com/kubernetes-incubator/external-dns/issues/154
This is fixed in 0.2.1

CLA

@omarkj thanks for the PR! Can you also try the latest alpha version registry.opensource.zalan.do/teapot/external-dns:v0.3.0-alpha.4 --- we are currently testing it in our AWS setup: https://github.com/zalando-incubator/kubernetes-on-aws/pull/374


404s from unclear karma.basePath karma-systemjs.config.baseURL and config.baseURL dependencies.

I get 404s when my tests try to reference SystemJS modules (conf files below). E.g.,
Error: XHR error (404 Not Found) loading<EMAIL_ADDRESS>
But I have added these systemjs libs to the systemjs "file" def (below). Although it's not clear to me why I need to add any of this since it seems that all of the appropriate information can be gleaned from the config.js?
[karma.conf.js]
"basePath": "src/main/javascript",
"systemjs": {
  "configFile": "config.js",
  "files": [
    "app/testing/**/*.js",
    "lib/**/*.js",
<EMAIL_ADDRESS>   // Explicitly added but still 404!
  ],
  "config": {
    "baseURL": "../../..",             // To counteract basePath: "src/main/javascript"
    "paths": {
      "babel": "node_modules/babel-core/browser.js",
      "es6-module-loader": "node_modules/es6-module-loader/dist/es6-module-loader.js",
      "phantomjs-polyfill": "node_modules/phantomjs-polyfill/bind-polyfill.js",
      "system-polyfills": "node_modules/systemjs/dist/system-polyfills.js",
      "systemjs": "node_modules/systemjs/dist/system.js"

[config.js]
System.config({
"baseURL": "/js",
"defaultJSExtensions": true,
"transpiler": "babel",
"paths": {
"github:": "lib/github/",
"npm:": "lib/npm/"
}
});
System.config({
"map": {
"angular"<EMAIL_ADDRESS>

It seems that setting "baseURL" to "." (not "") works, but I don't understand why.

Ok, it's hard for me to be sure without seeing the full layout of your project but the first thing I notice is that your 404 error doesn't include '/base/' at the start of the path.
Karma serves all files from localhost:[port]/base/.
karma-systemjs tries to handle this by appending /base to the start of your baseURL.
This has been kind of tricky for me because everyone has their own opinions on what baseURL should be, so I've tried to be as accommodating as I can but it does start to get confusing.
You can find the exact logic it uses here: https://github.com/rolaveric/karma-systemjs/blob/master/lib/adapter.js#L60
Oh, also baseURL in the SystemJS config has no relation what so ever with the basePath in your Karma configuration, so don't think you need to use "../../../" to cancel them out.
basePath is what Karma uses to resolve paths on your local file system. (eg. /home/rolaveric/myProject/), while baseURL is what SystemJS uses to build URLs within your browser to GET modules (eg. http://localhost:[port]/base/myLibrary.js).

Thanks for the response.
My (abbreviated) configs are below. This is now working for me, but as I say the systemjs.baseURL="." is completely non-intuitive (discovered after much trial-and-error), and having to prefix "../../.." on my paths since my "node_modules" and sources are in different places is a bit ugly.
For context, I'm using Flask (not node) as my web server. All JS resources are served via "/js"; my JS code source root is "src/main/javascript" (since I have "src/main/python", etc.), so (much simplified):
project/
    karma.conf.js
    node_modules/
    src/main/javascript/
        app/main.js
        lib/system.js
        config.js

[src/main/javascript/config.js]
System.config({
  "baseURL": "/js",
}

[karma.conf.js]
module.exports = function(config) {
  config.set({
    "basePath": "src/main/javascript",
    "systemjs": {
      "configFile": "config.js",
      "files": [
        "app/**/*.js",
      ],

      "config": {
        "baseURL": ".",
        "paths": {
          "babel":              "../../../node_modules/babel-core/browser.js",
          "es6-module-loader":  "../../../node_modules/es6-module-loader/dist/es6-module-loader.js",
          "phantomjs-polyfill": "../../../node_modules/phantomjs-polyfill/bind-polyfill.js",
          "system-polyfills":   "../../../node_modules/systemjs/dist/system-polyfills.js",
          "systemjs":           "../../../node_modules/systemjs/dist/system.js"
        }
      },
    },

Karma serves all files from localhost:[port]/base/.

I missing something really basic in the config for karma-systemjs: how to I serve my test files located in <root of git repo>/test?

Sorry for the late reply.
TLDR;
If you want to just serve (like web server) files, put them under systemjs.serveFiles and they will map to http://localhost:$port/base/$pathRelativeToBasePath
If you want to server and run (like <script src="myFile">) files, put them under files.
And if you don't use a basePath which is a common ancestor of all your file paths, you're going to have difficulties.
Karma does 2 important things:

Karma is serving files as a simple http-server under the URLhttp://localhost:$port/base/.
Karma serves a special HTML file under the URL http://localhost:$port/ which includes a select group of files using <script src="url"> tags.

The Karma Doco refers to this as "served" (1) and "included" (2).
You tell karma in the config that you want to serve files from your filesystem, based off a basePath, which defaults to your current folder.
So lets say you run Karma from your <root of git repo> and want it to include test/*.js as that's where all your test suites are.  So your karma config looks something like this:
{
  basePath: './', // Default
  files: ['test/*.js']
}

Without systemjs-karma, this would translate into:

Karma serving ./test/*.js as http://localhost:$port/base/test/*.js.
eg. `http://localhost:$port/base/test/myTestSuite.js
Karma's root HTML including a <script src=""> tag for each file it found at ./test/*.js.
eg. <script src="/base/test/myTestSuite.js"></script>

What karma-systemjs does is highjack the process so that instead of including your files with <script> tags, it handles them with System.import() calls.
And since modules can import from other modules, that leads to other subsequent System.import(), etc.
The problem is that while Karma is perfectly aware of where it's serving all it's files from, and therefore what URLs to use in it's <script> tags - karma-systemjs is not.
All it knows is that Karma provides all it's files under a "/base/" prefix, and what it can glean from the SystemJS config.
The simplest solution is just to use a common ancestor as your basePath in Karma, and things flow much smoother.

I'm not sure if my issue is the same as this one (mainly because I don't know how Karma really works and now I've added in karma-systemjs to the mix so I know even less of what's going on).  I'm running Angular 2 RC5  and I'm getting the following output with 404 warnings when I start karma (with the karma-systemjs plugin installed):

01 09 2016 13:40:19.865:DEBUG [middleware:source-files]: Requesting /base/app/RegisterUser/register-user.js /
01 09 2016 13:40:19.868:DEBUG [middleware:source-files]: Fetching C:/Projects/CustomerPortal/Dev/poc/src/Angular2MVCTest/app/RegisterUser/register-user.js
01 09 2016 13:40:19.872:DEBUG [middleware:source-files]: Requesting<EMAIL_ADDRESS>/
01 09 2016 13:40:19.878:DEBUG [middleware:source-files]: Fetching<EMAIL_ADDRESS>                                                                                01 09 2016 13:40:19.882:DEBUG [middleware:source-files]: Requesting<EMAIL_ADDRESS>/
01 09 2016 13:40:19.887:DEBUG [middleware:source-files]: Fetching<EMAIL_ADDRESS>01 09 2016 13:40:19.891:DEBUG [web-server]: serving (cached): C:/Projects/CustomerPortal/Dev/poc/src/Angular2MVCTest/app/RegisterUser/register-user.js
01 09 2016 13:40:19.896:WARN [web-server]: 404<EMAIL_ADDRESS>01 09 2016 13:40:19.900:WARN [web-server]: 404<EMAIL_ADDRESS>
And eventually I get this error

Error: (SystemJS) Error: XHR error (404 Not Found) loading<EMAIL_ADDRESS>Error loading<EMAIL_ADDRESS>as "@angular/core" from app/Authorization/authorize.js

Not sure why it can't find the modules since they are defined in systemjs.config.js.
My karma.conf.js looks like this
`
module.exports = function(config) {
  config.set({

    basePath: '.',

    plugins: ['karma-systemjs', 'karma-jasmine', 'karma-chrome-launcher'],

    frameworks: ['jasmine', 'systemjs'],

    files: [
      'unittests/**/*.js',
      'app/**/*.js'
    ],

    exclude: [
        'app/app.js'
    ],

    systemjs: {
        configFile: 'systemjs.config.js',
    },

    preprocessors: {
    },

    reporters: ['progress'],

    port: 9876,

    colors: true,

    logLevel: config.LOG_DEBUG,

    autoWatch: true,

    browsers: ['Chrome'],

    singleRun: false,

    concurrency: Infinity
  })
}

`
My systemjs.config.js looks like this:
`
(function (global) {
    // map tells the System loader where to look for things
    var map = {
        'app': 'app', // 'dist',
        '@angular': 'node_modules/@angular',
        'rxjs': 'node_modules/rxjs',
        'angular2-in-memory-web-api': 'node_modules/angular2-in-memory-web-api',
        'ng2-bootstrap': 'node_modules/ng2-bootstrap',
        'moment': 'node_modules/moment/moment.js',
        'primeng': 'node_modules/primeng',
        '@angular/router': 'node_modules/@angular/router',
        'angular2-jwt': 'node_modules/angular2-jwt/angular2-jwt.js',
        'lodash': 'node_modules/lodash'
    };
    // packages tells the System loader how to load when no filename and/or no extension
    var packages = {
        'app': { main: 'app.js', defaultExtension: 'js' },
        'rxjs': { main: 'bundles/Rx.umd.min.js', defaultExtension: 'js' },
        'angular2-in-memory-web-api': { main: 'index.js', defaultExtension: 'js' },
        'ng2-bootstrap': { main: 'ng2-bootstrap.js', defaultExtension: 'js' },
        'primeng': { defaultExtension: 'js' },
        '@angular/router': { main: 'index.js', defaultExtension: 'js' },
        'angular2-jwt': { defaultExtension: 'js' },
        'lodash': {main:'index.js', defaultExtension:'js'}
    };
    var ngPackageNames = [
      'common',
      'compiler',
      'core',
      'http',
      'platform-browser',
      'platform-browser-dynamic',
      'forms'
    ];
    // Add package entries for angular packages
    ngPackageNames.forEach(function (pkgName) {
        packages['@angular/' + pkgName] = { main: '/bundles/' + pkgName + '.umd.js', defaultExtension: 'js' };
    });

    var paths = {
        'systemjs': 'node_modules/systemjs/dist/system.js',
        'system-polyfills': 'node_modules/systemjs/dist/system-polyfills.js'
    };

    var config = {
        map: map,
        packages: packages,
        transpiler: null,
        paths: paths
    };
    System.config(config);
})(this);

`

I'm facing issues running tests with angular2 seed(https://github.com/mgechev/angular-seed) karma. I'm getting below issue.
'START:
09 11 2016 12:31:12.195:WARN [web-server]: 404: /base/node_modules/angular2localization/bundles/angular2localization.umd.min.js
Chrome 54.0.2840 (Windows 7 0.0.0) ERROR: '(SystemJS) XHR error (404 Not Found) loading http://localhost:9876/base/node_modules/angular2localization/bundles/angular2localization.umd.min.js
Error: XHR error (404 Not Found) loading http://localhost:9876/base/node_modules/angular2localization/bundles/angular2localization.umd.min.js
at XMLHttpRequest.wrapFn as _onreadystatechange
at ZoneDelegate.invokeTask (http://localhost:9876/base/node_modules/zone.js/dist/zone.js?c35727d0e64913b5669320b167e496fc94fc6928:236:37)
at Zone.runTask (http://localhost:9876/base/node_modules/zone.js/dist/zone.js?c35727d0e64913b5669320b167e496fc94fc6928:136:47)
at XMLHttpRequest.ZoneTask.invoke (http://localhost:9876/base/node_modules/zone.js/dist/zone.js?c35727d0e64913b5669320b167e496fc94fc6928:304:33)
Error loading http://localhost:9876/base/node_modules/angular2localization/bundles/angular2localization.umd.min.js as "angular2localization" from http://localhost:9876/base/dist/dev/app/app.component.js '
Below are my thoughts:

May be this issue is with the angular2localization library integration with angular2 seed.
Or currently I'm using, https://github.com/mgechev/angular-seed . Can this issue be due to karma version?
"name": "angular2-seed",
"version": "0.0.0"
I need an urgent help on this, it would lead to delay in my project delivery.
Please help.


Installation showing missing requirements.txt

I am trying this installation using pip install grad-cam and getting the following issue which I cannot resolve. Any help in this regard is highly appreciated
return hook(config_settings)
^^^^^^^^^^^^^^^^^^^^^
File "/tmp/pip-build-env-34_gqqvw/overlay/lib/python3.12/site-packages/setuptools/build_meta.py", line 325, in get_requires_for_build_wheel
return self._get_build_requires(config_settings, requirements=['wheel'])
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/tmp/pip-build-env-34_gqqvw/overlay/lib/python3.12/site-packages/setuptools/build_meta.py", line 295, in _get_build_requires
self.run_setup()
File "/tmp/pip-build-env-34_gqqvw/overlay/lib/python3.12/site-packages/setuptools/build_meta.py", line 311, in run_setup
exec(code, locals())
File "", line 6, in
FileNotFoundError: [Errno 2] No such file or directory: 'requirements.txt'

same problem,can u share me your solution??tks


C4 Dynamic Diagram

Dynamic: Diagram for both technical and non-technical people inside and outside the team. Focus is on how data and information flows within the system, specifically on the communication between components that isn't covered in the diagrams above. Similar to the UML Sequence Diagrams.
This will probably be several diagrams. Will add a todo list below eventually.

[x] seedcase-project/seedcase-sprout#6

I don't feel this diagram type is super helpful, so closing it.


dts/devicetree: Fix parsing of bytestrings

The bytestrings that are denoated by [] should be treated as hex values.
For example 'local-mac-address = [00 00 94 00 83 00]' was treating the
94 and 83 where getting treated as decimal 94 and 93 instead of 0x94 and
0x83.
Signed-off-by: Kumar Gala<EMAIL_ADDRESS>

Closing this as its fixed via #17395


changelog: Update with regards to removed deprecations (#521)

Thanks, totally forgot about the changelog this time.


chore(main): release 1.1.0

:robot: I have created a release beep boop
1.1.0 (2024-08-21)
Features

add scheduling (800acda)

This PR was generated with Release Please. See documentation.

:robot: Created releases:

v1.1.0
:sunflower:


Revert unit-testing modules

Reverted files changed by 7b4666f5e7f95c019a6d9b4607fb80cd84555d5d. These were only ever changed to improve testing coverage for edge cases. Doing so led to discovery of several new bugs (which were either resolved with regression tests in separate PRs or are still outstanding). But these changes otherwise did not impact source code performance or behavior, and these are the changes most suspiciously related to the Travis build failures in PRs #843, #842, and #840, which was not resolved by #844.

Closing this PR since it is superseded by #844, which is less aggressive in its reversions, which anyway are not due to Halotools source code.


Remuxing

See https://ffmpeg.org/doxygen/trunk/doc_2examples_2remuxing_8c-example.html

I think I've solved most of the issues with this. Needed to clear a few flags, and re-scale times. See scratchpad/remux.py on the remux branch.


Missing focused? or has_focus? on element class

It would be useful when testing to know whether an element has focus. Would it be possible to add a focused? or has_focus? method to the class?
-- following a conversation with @jarib on the #watir channel

It'd be simple to add Element#focused? and Browser#focused_element? I think maybe Watir may have something like this already.. @jarmo - thoughts?

There isn't any boolean focus methods in Watir at the moment. Maybe having Element#focus?. I'm not sure if having #focused_element adds any value to testing since in test you have to explicitly assert that some specific element needs to (not) be focused.
But what about supporting :focus?, :exist?, :visible?, :present? and other boolean methods as a locator so you could do something like this:
browser.divs(:visible? => true, :class => /link/)

Instead of:
browser.divs(:class => /link/).select &:visible?

I'm not sure, maybe the syntax above already works in Watir.

Adding these as new selectors is another discussion, so let's keep the issues on topic and file another issue for that (perhaps we should  file API issues in the watirspec issue tracker, and discuss there?).
Let's just do Element#focused? for now.

Done in c8af4f2ef.


Controller method index executed twice, losing variables on second pass

I originally posted this on SO, but with further debugging it appears to possibly be an issue in this gem?  I am using jquery-datatables-rails 3.3.0 with jquery-rails 4.0.4.  Monitoring a series of breakpoints, I found that the respond_to block is executed and then the second pass occurs.  Note that, while the respond_to block is executed twice, the datatable code is only executed on the second execution of the block.  I simply have no idea why and would appreciate any help.  Original SO entry follows:
I am trying to pass a variable named my_view to the Items Controller index method so that I can selectively display the results.  The current code works, sort of... In the end, the view is not maintained and any action in the resultant table, such as scrolling, causes the table to revert to showing all items instead of the desired selection.
The basic problem is that the index method is always executed twice any time a button is clicked.  The first time, the my_view variable is correctly set.  The second time, it is always nil.  This always happens before the target of the respond_to is executed.  The jquery-datatables-rails gem is executed on both passes and is probably involved.  It almost seems like I get two different transactions.  I've even tried instance variables and they are also nil during the second pass.  I don't understand how or why this happens.
To "fix" this problem, I set session[:my_view] during the first pass and then do not set it again on the second pass.  During the ItemsDatatable.new execution, I then must clear session[:my_view] or it would be retained for the next transaction giving incorrect results.  However, this results in the problem that I stated in that any change to the view, such as scrolling, causes a reversion to showing all items instead of the desired selection.
Curiously, I don't seem to have any other controller methods with this sort of anomaly, or at least haven't noticed it.  Can someone tell me why the index method is executed twice, and how I might resolve this issue?  Thank you!
EDIT UPDATE: I have one other controller in the admin namespace that uses respond_to with HTML/JSON options.  It also is executed twice, so it seems that may (?) be related.  Still seems odd behavior to lose all variables and execute it the second time, but I don't know.  Is it related and how might I resolve it?  Thanks...
Here are my buttons:
  <%= link_to 'My Items', items_path(my_view: current_associate.id), class: 'btn btn-primary kc-wide' %>
  <%= link_to 'All Items', items_path(my_view: "all"), class: 'btn btn-primary kc-wide' %>

And the Items Controller with the index method:
class ItemsController < ApplicationController

  def index
    session[:my_view] ||= params[:my_view]
    respond_to do |format|
      format.html
      format.json { render json: ItemsDatatable.new(view_context) }
    end
  end
end

Related routes, just in case?
                  POST     /items_index(.:format)                items#index
        items GET      /items(.:format)                      items#index
                  POST     /items(.:format)                      items#create
new_item GET      /items/new(.:format)                  items#new
edit_item GET      /items/:id/edit(.:format)             items#edit
        item GET      /items/:id(.:format)                  items#show
                PATCH    /items/:id(.:format)                  items#update
                PUT      /items/:id(.:format)                  items#update
                DELETE   /items/:id(.:format)                  items#destroy

The Rails datatable code is:
class ItemsDatatable < ApplicationController

  before_action :check_if_associate

  delegate :params, :h, :link_to, :edit_item_path, :new_item_path, :location, to: :@view

  def check_params(params)
    # When using the .json suffix in URI, need to stub params so that I can see that JSON information
    params[:draw] = 1 if params[:draw].blank?
    params[:columns] = Array.new(1, {data: 0, name: '', searchable: true, orderable: true, search: {value: '', regex: false}}) if params[:columns].blank?
    params[:order] = Array.new(1, {column: 0, dir: 'asc'}) if params[:order].blank?
    params[:start] = 0 if params[:start].blank?
    params[:length] = 10 if params[:length].blank?
    params[:search] = {value: '', regex: false} if params[:search].blank?
  end

  def initialize(view)
    @view = view
    check_params(params)
    @view
  end

  def as_json(options = {})
    {
        draw: params[:draw].to_i,
        recordsTotal: Item.count,
        recordsFiltered: items.total_entries,
        data: data
    }
  end

  private

  def data
    todays_date = Time.zone.now.to_date
    items.map do |item|
      status = item.status
      # If current associate has it, show where it is.
      if<EMAIL_ADDRESS>        status = "#{item.status}-#{item.lastloc}"
      end
      # If it's checked out but someone else has it, show who has it.
      if item.not_available? and<EMAIL_ADDRESS>        status = "#{item.status}-#{item.location}"
      end
      # Override the above if in return status, just showing that.
      status = item.status == "Rtn" ? "Rtn" : status
      odometer = item.odometer.to_s.gsub(/(\d)(?=(\d{3})+(?!\d))/, "\\1,")
      msrp = item.msrp.to_s.gsub(/(\d)(?=(\d{3})+(?!\d))/, "\\1,")
      age_date = item.age_date.nil? ? todays_date : item.age_date.to_date
      [
          link_to(item.stock_number, edit_item_path(item)),
          ERB::Util.h(item.year),
          ERB::Util.h(item.make),
          ERB::Util.h(item.model),
          ERB::Util.h(item.color),
          ERB::Util.h(status),
          ERB::Util.h(odometer),
          ERB::Util.h(msrp),
          ERB::Util.h((todays_date - age_date).to_i)
      ]
    end
  end

  def items
    @items ||= fetch_items
  end

  def fetch_items
    items = Item.order("#{sort_column} #{sort_direction}")
    items = items.includes(:item_location, item_location: [:locator])
    items = items.includes(:key, key: [:key_location])
    items = items.page(page).per_page(per_page)
    unless @view.session[:my_view].blank? || @view.session[:my_view] == "all"
      associate = Associate.find(@view.session[:my_view]).name
      associate = associate.gsub(/'/, "''") # .gsub(/'/, "\\\\\'")
      items = items.where("clshadow = \'#{associate}\'")
    end
    @view.session[:my_view] = nil
    if params[:search][:value].present?
      items = items.where("stock_number ilike :search or yrshadow ilike :search or mkshadow ilike :search or mdshadow ilike :search or coshadow ilike :search or status ilike :search", search: "%#{params[:search][:value]}%")
    end
    items
  end

  def page
    params[:start].to_i/per_page + 1
  end

  def per_page
    params[:length].to_i > 0 ? params[:length].to_i : 10
  end

  def sort_column
    columns = %w[stock_number yrshadow mkshadow mdshadow coshadow status odometer msrp age_date]
    columns[params[:order][0][:column].to_i]
  end

  def sort_direction
    params[:order][0][:dir] == "desc" ? "desc" : "asc"
  end

end

Related JavaScript code:
    var itemstable = $('#itemstable').DataTable({
        responsive: true,
        autoWidth: false,
        pagingType: 'full',
        jQueryUI: true,
        processing: true,
        serverSide: true,
        ajax: {
            url: 'items_index.json',
            type: 'POST',
            contentType: 'application/json',
            dataType: 'json',
            data: function(d) {
                return JSON.stringify(d);
            }
        },
        columns: [null, null, null, null, null, null,
            {className: 'dt-right'},
            {className: 'dt-right'},
            {className: 'dt-right'}
        ]
    });

And the view:

      Stock No.
      Year
      Make
      Model
      Color
      Status
      Mileage
      MSRP
      Aged

  <%= link_to 'My Items',  items_path(my_view: current_associate.id),
              class: 'btn btn-primary kc-wide' %>
  <%= link_to 'All Items', items_path(my_view: "all"),
              class: 'btn btn-primary kc-wide' %>
  <%= link_to 'Recent Items', x_logs_path,
              class: 'btn btn-primary kc-wide' %>
  <%= link_to 'Home', '/', class: 'btn btn-primary kc-wide' %>

It seems to me that this is a bug, as the gem is (unnecessarily?) dropping variables during its initiation process?
It appears that the gem executes independently, without transferring control to the supplied code, during the first pass in order to set up the parameter list with all the desired variables.  It then appears to force a reload to initiate the process with the parameter list as desired.  I am assuming this from reviewing the variables during the first and second passes.  During this process, it forgets any other variables, though I don't think that it should do that.
In any case, I have to use session variables to maintain status during this reload.  I changed the controller index as follows, and then eliminated the clearing of session[:my_view] in my datatables controller.
  def index
    unless params[:my_view].blank?
      session[:requested_view] = Array.new(2){|v| params[:my_view]}
    end
    session[:my_view] = session[:requested_view].pop
    respond_to do |format|
      format.html
      format.json { render json: ItemsDatatable.new(view_context) }
    end
  end


kube-state-metrics: init at 2.12.0

Description of changes
This add the k8s kube-state-metrics server. It is used to generating metrics from Kubernetes API objects such as deployments, nodes and pods. It is one of the main sources used to get prometheus metrics out of a k8s cluster.

Things done

Built on platform(s)

[x] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[x] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[x] Tested basic functionality of all binary files (usually in ./result/bin/)
24.11 Release Notes (or backporting 23.11 and 24.05 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[x] Fits CONTRIBUTING.md.

Add a :+1: reaction to pull requests you find important.

Result of nixpkgs-review pr 314208 run on x86_64-linux 1

1 package built:

kube-state-metrics

This pull request has been mentioned on NixOS Discourse. There might be relevant details there:
https://discourse.nixos.org/t/prs-already-reviewed/2617/1678

Thanks again @SebTM , your suggestions are appreciated! :-). Please ping me if I should squash the commits, or still miss something.

@ofborg build kube-state-metrics

Sorry did not see you note about squash - my company use outlook - did hide the notification. But thanks for your help!


Added the ability to schedule callbacks on an IScheduler

To avoid forcing the consuming code to dispatch onto the right
thread, we add the ability for the pipe to run the callback on an
IScheduler via IScheduler.Schedule.
It's more efficient to do it in the pipe implementation itself
rather than on the consuming side (things don't need to be scheduled
if data is already available).
The default scheduler is the inline scheduler (the consumer runs on the
producer's thread)
Also added a TaskRunScheduler which does Task.Run.
Changed the libuv networking implementation to schedule outbound callbacks on
libuv thread. Made UvThread an IScheduler.
Added PipeOptions to remove the number of overloads on PipelineFactory.Create

@dotnet-bot test this please


Add files via upload

Related Issue(s)

Has Unit Tests (y/n)

Documentation Included (y/n)

Change Description
A description of the changes contained in the PR.
Rationale
A rationale for this change. e.g. fixes bug, or most projects need XYZ feature.
Testing/Review Recommendations
Fill in testing procedures, specific items to focus on for review, or other info to help the team verify these changes are flight-quality.
Future Work
Note any additional work that will be done relating to this issue.

Related Issue(s)
Has Unit Tests (y/n)
Documentation Included (y/n)
Change Description
A description of the changes contained in the PR.
Rationale
A rationale for this change. e.g. fixes bug, or most projects need XYZ feature.
Testing/Review Recommendations
Fill in testing procedures, specific items to focus on for review, or other info to help the team verify these changes are flight-quality.
Future Work
Note any additional work that will be done relating to this issue.

JLeander8-patch-1

JLeander8-patch-1


GH-175 Remove description resolver for Descriptions annotation. Fix AnnotatedMember#getAnnotationsByType implementations. (#176)

...
Add junit tests for multiline comments for java and kotlin platform.
Resolve #175

Thanks!


Trying to make a platformer engine game crashes whenever I run this code (tbh we should have a discord just to make getting help easier)

What Happened

How to Reproduce

Use these code blocks on an object and then run the scene
Block Coding Plugin Version
Latest
Godot Engine Version
Latest
Operating System
Windows10
Logs or command-line output
No response
Anything else?
Please make a discord server or something for the plugin

Oh yep, that's a bug in the released version of the plugin. What's happening is it doesn't fall back to default values for the vector parameter in the "Change Velocity" / "Change Position" blocks. You can work around that by entering 0 in that empty y input field.
I couldn't say when it was fixed (I think it was supposed to be fixed in #173), but it does appear to be fixed after our big rework in the current main branch. Not sure when the next release is, but if you're curious, you'd be welcome to try that out! (There's no native code, so just download the addons directory from https://github.com/endlessm/godot-block-coding/addons and dump it in your project, and you'd be welcome to report any issues you spot there).
I like your idea to make a Discord server :) I'll ask around!

Thanks

also how would I go about adding gravity and getting the momentum to work

@Dracotyoshi if you want to do it easier:

Add a SimpleCharacter node (that comes with the plugin)
In the inspector, set a texture to it. Set a speed.
Add a BlockCode node as child of the SimpleCharacter node.
In the block canvas, add "On Process" and then from Input "Move with Player buttons as platformer".

About the Discord question, we have a thread in Godot forums for feedback: https://forum.godotengine.org/t/block-coding-high-level-block-based-visual-programming/68941/31

and from what I can tell this solution does not give me any control on custom input methods


[BUG] Width changes only apply if incremental

Checklist before submitting an issue

[X] I have searched through the existing closed and open issues for eww and made sure this is not a duplicate
[X] I have specifically verified that this bug is not a common user error
[X] I am providing as much relevant information as I am able to in this bug report (Minimal config to reproduce the issue for example, if applicable)

Description of the bug
When using a variable width (obtained through deflisten) the window will only increase but not decrease its width.
Reproducing the issue
(defwindow tray
  :stacking "bg"
  :geometry (geometry
    :anchor "top right"
    :x "-20px" :y "20px"
  )
  :reserve (struts :distance "70px" :side "top")
  (box
    :class "bar"
    :width width
    :height "40"
    :valign "center"
  )
)

(defpoll width
  :interval "1s"
  "scripts/tray"
)

# scripts/tray

#!/bin/sh

echo $(xwininfo -id $(xdotool search --class xfce4-panel | tail -1) | awk -F ':' '/Width/{print $2}')

In the script above, the width of the xfce4-panel is obtained, which is variable, in case more items are in the tray, the width will be greater, in case of less, it is reduced.
When the width variable is increased, the width of the widget increases as well, however if it decreases the widget width will stay the same even though the width updated (you can check if the width variable properly updates by using a label to display the width)
Expected behaviour
The widget reacts to decreases of the width variable
Additional context
No response

nearly a duplicate of #123 , although I'd have hoped that the width property actually doesn't_ run into this issue... I'll need to take a look at this again at some point


update deprecated method set_axis_bgcolor to set_facecolor

I removed the if block because it still tried to call plot.set_axis_bgcolor("w") which made this still fail.

resolves https://github.com/julioasotodv/spark-df-profiling/issues/13

e if bl
Hi,

how did u solve the issue for bg_color, i removed the line itself, still getting the error


** BUILD FAILED ** Mac OS Ventura M1

Description
ds@Dm-MBP rsb-mobile % npm run ios

<EMAIL_ADDRESS>ios /Users/ds/Documents/apps/rsb-mobile
react-native run-ios

warn Package rn-fetch-blob contains invalid configuration: "dependency.hooks" is not allowed. Please verify it's properly linked using "react-native config" command and contact the package maintainers about this.
info Found Xcode workspace "rsb_mobile.xcworkspace"
info Found booted iPhone 12 Pro
info Building (using "xcodebuild -workspace rsb_mobile.xcworkspace -configuration Debug -scheme rsb_mobile -destination id=00008101-00091D542E12001E")
error Failed to build iOS project. We ran "xcodebuild" command but it exited with error code 65. To debug build logs further, consider building your app with Xcode.app, by opening rsb_mobile.xcworkspace.
Command line invocation:
    /Applications/Xcode.app/Contents/Developer/usr/bin/xcodebuild -workspace rsb_mobile.xcworkspace -configuration Debug -scheme rsb_mobile -destination id=00008101-00091D542E12001E

User defaults from command line:
    IDEPackageSupportUseBuiltinSCM = YES

Prepare packages

Computing target dependency graph and provisioning inputs

Create build description
Build description signature: bb9fbf1762ec7ec79c396f28f38626d9
Build description path: /Users/ds/Library/Developer/Xcode/DerivedData/rsb_mobile-hjrysnrbgpijavdgpvwxqbsjaxrd/Build/Intermediates.noindex/XCBuildData/bb9fbf1762ec7ec79c396f28f38626d9.xcbuilddata

note: Building targets in dependency order
/Users/ds/Documents/apps/rsb-mobile/ios/Pods/Pods.xcodeproj: error: Signing for "TOCropViewController-TOCropViewControllerBundle" requires a development team. Select a development team in the Signing & Capabilities editor. (in target 'TOCropViewController-TOCropViewControllerBundle' from project 'Pods')
/Users/ds/Documents/apps/rsb-mobile/ios/Pods/Pods.xcodeproj: error: Signing for "RNImageCropPicker-QBImagePicker" requires a development team. Select a development team in the Signing & Capabilities editor. (in target 'RNImageCropPicker-QBImagePicker' from project 'Pods')
/Users/ds/Documents/apps/rsb-mobile/ios/rsb_mobile.xcodeproj: error: Provisioning profile "iOS Team Provisioning Profile: org.reactjs.native.example.rsb" doesn't include the currently selected device "Dmitriy’s MacBook Pro" (identifier C7071E10-6533-5483-BEA8-97F4D6C4455A). (in target 'rsb_mobile' from project 'rsb_mobile')
warning: Run script build phase 'Start Packager' will be run during every build because it does not specify any outputs. To address this warning, either add output dependencies to the script phase, or configure it to run in every build by unchecking "Based on dependency analysis" in the script phase. (in target 'rsb_mobile' from project 'rsb_mobile')
warning: Run script build phase 'Bundle React Native code and images' will be run during every build because it does not specify any outputs. To address this warning, either add output dependencies to the script phase, or configure it to run in every build by unchecking "Based on dependency analysis" in the script phase. (in target 'rsb_mobile' from project 'rsb_mobile')
/Users/ds/Documents/apps/rsb-mobile/ios/Pods/Pods.xcodeproj: error: Signing for "MLKitFaceDetection-GoogleMVFaceDetectorResources" requires a development team. Select a development team in the Signing & Capabilities editor. (in target 'MLKitFaceDetection-GoogleMVFaceDetectorResources' from project 'Pods')

2023-09-13 17:02:18.143 xcodebuild[2523:12596] DVTCoreDeviceEnabledState: DVTCoreDeviceEnabledState_Disabled set via user default (DVTEnableCoreDevice=disabled)
--- xcodebuild: WARNING: Using the first of multiple matching destinations:
{ platform:macOS, arch:arm64, variant:Designed for [iPad,iPhone], id:C7071E10-6533-5483-BEA8-97F4D6C4455A }
{ platform:iOS, id:dvtdevice-DVTiPhonePlaceholder-iphoneos:placeholder, name:Any iOS Device }
{ platform:iOS Simulator, id:dvtdevice-DVTiOSDeviceSimulatorPlaceholder-iphonesimulator:placeholder, name:Any iOS Simulator Device }
{ platform:iOS Simulator, id:EC39D368-BDB9-494A-8CE5-E820A4A70165, OS:16.4, name:iPad (10th generation) }
{ platform:iOS Simulator, id:EC39D368-BDB9-494A-8CE5-E820A4A70165, OS:16.4, name:iPad (10th generation) }
{ platform:iOS Simulator, id:3403E55A-B925-4951-8171-FA9686E6DD93, OS:16.4, name:iPad Air (5th generation) }
{ platform:iOS Simulator, id:3403E55A-B925-4951-8171-FA9686E6DD93, OS:16.4, name:iPad Air (5th generation) }
{ platform:iOS Simulator, id:B5660540-FBFC-44CE-9723-6AAB648F4C45, OS:16.4, name:iPad Pro (11-inch) (4th generation) }
{ platform:iOS Simulator, id:B5660540-FBFC-44CE-9723-6AAB648F4C45, OS:16.4, name:iPad Pro (11-inch) (4th generation) }
{ platform:iOS Simulator, id:7F058166-8EB9-449A-A33D-7410E159D30A, OS:16.4, name:iPad Pro (12.9-inch) (6th generation) }
{ platform:iOS Simulator, id:7F058166-8EB9-449A-A33D-7410E159D30A, OS:16.4, name:iPad Pro (12.9-inch) (6th generation) }
{ platform:iOS Simulator, id:3D8E9713-5949-40F1-8922-30A0E2893969, OS:16.4, name:iPad mini (6th generation) }
{ platform:iOS Simulator, id:3D8E9713-5949-40F1-8922-30A0E2893969, OS:16.4, name:iPad mini (6th generation) }
{ platform:iOS Simulator, id:93B4860C-A9AB-4957-AF2D-A5581627B1F7, OS:16.4, name:iPhone 14 }
{ platform:iOS Simulator, id:93B4860C-A9AB-4957-AF2D-A5581627B1F7, OS:16.4, name:iPhone 14 }
{ platform:iOS Simulator, id:C084DDFB-61F0-40C6-955F-E4955B6EA586, OS:16.4, name:iPhone 14 Plus }
{ platform:iOS Simulator, id:C084DDFB-61F0-40C6-955F-E4955B6EA586, OS:16.4, name:iPhone 14 Plus }
{ platform:iOS Simulator, id:D8346463-D7A9-4043-B26F-CCEB551AF58D, OS:16.4, name:iPhone 14 Pro }
{ platform:iOS Simulator, id:D8346463-D7A9-4043-B26F-CCEB551AF58D, OS:16.4, name:iPhone 14 Pro }
{ platform:iOS Simulator, id:6AD782E6-66F6-4306-B610-86820021917A, OS:16.4, name:iPhone 14 Pro Max }
{ platform:iOS Simulator, id:6AD782E6-66F6-4306-B610-86820021917A, OS:16.4, name:iPhone 14 Pro Max }
{ platform:iOS Simulator, id:38F3EF2C-EE83-4144-8DB7-AE298328B116, OS:16.4, name:iPhone SE (3rd generation) }
{ platform:iOS Simulator, id:38F3EF2C-EE83-4144-8DB7-AE298328B116, OS:16.4, name:iPhone SE (3rd generation) }
** BUILD FAILED **

info Run CLI with --verbose flag for more details.
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR<EMAIL_ADDRESS>ios: `react-native run-ios`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the<EMAIL_ADDRESS>ios script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR!      /Users/ds/.npm/_logs/2023-09-13T11_03_02_651Z-debug.log

React Native Version
0.71.2
Output of npx react-native info
System:
    OS: macOS 13.5.2
    CPU: (10) x64 Apple M1 Pro
    Memory: 17.73 MB / 16.00 GB
    Shell: 5.9 - /bin/zsh
  Binaries:
    Node: 14.15.1 - ~/.nvm/versions/node/v14.15.1/bin/node
    Yarn: 1.22.19 - ~/.nvm/versions/node/v14.15.1/bin/yarn
    npm: 6.14.8 - ~/.nvm/versions/node/v14.15.1/bin/npm
    Watchman: 2<IP_ADDRESS> - /opt/homebrew/bin/watchman
  Managers:
    CocoaPods: 1.11.3 - /usr/local/bin/pod
  SDKs:
    iOS SDK:
      Platforms: DriverKit 22.4, iOS 16.4, macOS 13.3, tvOS 16.4, watchOS 9.4
    Android SDK: Not Found
  IDEs:
    Android Studio: 2021.3 AI-213.7172.25.2113.9123335
    Xcode: 14.3.1/14E300c - /usr/bin/xcodebuild
  Languages:
    Java: 11.0.17 - /usr/bin/javac
  npmPackages:
    @react-native-community/cli: Not Found
    react: 18.2.0 => 18.2.0
    react-native: 0.71.2 => 0.71.2
    react-native-macos: Not Found
  npmGlobalPackages:
    *react-native*: Not Found

Steps to reproduce
i'm updated mac os to Vetura and XCode 13 to 14.3 and just run
npm run ios
Snack, screenshot, or link to a repository

You need to fix this error in your log:
/Users/ds/Documents/apps/rsb-mobile/ios/Pods/Pods.xcodeproj: error: Signing for "MLKitFaceDetection-GoogleMVFaceDetectorResources" requires a development team. Select a development team in the Signing & Capabilities editor. (in target 'MLKitFaceDetection-GoogleMVFaceDetectorResources' from project 'Pods')
This is no react-native bug, this is user configuration


Not Compatible with Swift 4.2

After updating xCode to 10.0 with Swift 4.2 gives errors but while I set Swift Language Version to 4.0 it works but with 4.2 it doesn't work.
How to fix this?
Thanks in Advance.

The code currently uses the now (as of Swift 4.2) obsolete UIViewContentMode. You can take Xcode's suggestion to edit the code, or leave the build settings for the GSImageViewerController target to stay at 4.0 and wait for @wxxsw to update the code, even if the rest of your workspace is using 4.2.

You can add this code to the last line of the Podfile:
post_install do |installer|
    installer.pods_project.targets.each do |target|
        target.build_configurations.each do |config|
            if target.name == 'GSImageViewController'
                config.build_settings['SWIFT_VERSION'] = '4.0'
            else
                config.build_settings['SWIFT_VERSION'] = '4.2'
            end
        end
    end
end

I will upgrade all my open source projects when I have time, thank you.

Please update the new version 1.5.0


Enable use with capitalized version SQLselect * from foo;

E.g. this repo uses the capitalized version: https://github.com/felixfbecker/node-sql-template-strings

Is there any other reason why you want to use the capitalized version? Because you can import the function from that library as lowercase:
const sql = require('sql-template-strings');

As far as I understand, node-sql-template-strings currently does not support escaping identifies with ??, so I often find the need to write SQL query in plain string. However, this way I loose syntax highlighting
While hacky, the solution might be to allow users to configure list of string prefixes that should trigger SQL syntax highlighting. This way, I could add custom prefix rawSql that would not modify string in any way, but would cause this extension to highlight the code. You can also add SQL to the list, to use the capitalized version

Reading vscode issues like this one, there seem to be know way to make configurable TextMate grammar
As a workaround, this extension can highlight string after any prefix that contains sql, case insensitive. So rawSql, sql, SQL, mySqL all will work. Not sure if it's good idea, but I use it locally
To support it, just replace the regex in "begin" with this one: "(?i)\\b(?=\\w+`)(\\w*sql\\w*)((`))"


Update README.md

Added Tiger Analytics which uses Argo and Argo CD

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

Pls Sign CLA

Raised new PR #1768 with sorted order


default_pdb_kwargs: remove skip for now

Should include "importlib._bootstrap_external" also/only, but might be
interesting to see/know anyway (without code being displayed).

Codecov Report

Merging #173 into master will increase coverage by 0.11%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master     #173      +/-   ##
==========================================
+ Coverage    63.2%   63.32%   +0.11%
==========================================
  Files           3        3
  Lines        1726     1726
  Branches      158      158
==========================================
+ Hits         1091     1093       +2
+ Misses        579      578       -1
+ Partials       56       55       -1

Impacted Files
Coverage Δ

pdb.py
46.07% <ø> (+0.24%)
:arrow_up:

Continue to review full report at Codecov.

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


free-programming-books-hi.md

Added book for java in Hindi
What does this PR do?
Languages book in hindi
For resources
Description
Why is this valuable (or not)?
People can study in hindi language
How do we know it's really free?
It is from a free pdf website called pdfdrive
For book lists, is it a book? For course lists, is it a course? etc.
yes it is a book
Checklist:

[ ] Read our contributing guidelines.
[ ] Search for duplicates.
[ ] Include author(s) and platform where appropriate.
[ ] Put lists in alphabetical order, correct spacing.
[ ] Add needed indications (PDF, access notes, under construction).
[ ] Used an informative name for this pull request.

Follow-up

Check the status of GitHub Actions and resolve any reported warnings!

In general, we do not link to file sharing sites, or file hosting sites such as google docs. or dropbox.


proposal: remove redundant struct specifier on methods declarations

The standard way to declare the method for some struct is the next:
type SomeStruct struct {
    someArg interface{}
}

func (s *SomeStruct) somePointerBasedMethod() {}

func (s SomeStruct) someValueBasedMethod() {}

If there are only few methods in the struct - it is ok, but if you have relatively big collection of methods - duplication of the struct specifier goes boring very quickly. For the structures which names are long - the problem goes further and significantly increases the code base size and decreases readability, for example:
type SomeVeryLongNameStructWithComplexLogic struct {
    someArg interface{}
}

func (s *SomeVeryLongNameStructWithComplexLogic) somePointerBasedMethod() {}

func (s SomeVeryLongNameStructWithComplexLogic) someValueBasedMethod() {}

The proposal is to simplify the syntax to the next way:
type SomeStruct struct {}

// Method of struct "SomeStruct",
// because it is first struct reached on the direction
// from the method declaration to the beginning of the file.
//
// 99% of code is written in the manner when struct-related methods
// are going right after the related struct. There is no need for huge code duplication.
//
// "*s" after keyword `func` automatically specifies that method's receiver is a pointer.
// At the same time it names the receiver to "s".
func *s somePointerMethod() {
    s.someArg = noop()
}

// For value based receivers - there is the same logic.
func s someValueMethod() {
    s.someArg = noop()
}

The presence of an argument between the keyword func and the method's name automatically indicates that this method belongs to the struct. We do not need any parentheses or redundant struct names specified.
With this improvement the code for long named structs would look like this:
type SomeVeryLongNameStructWithComplexLogic struct {}

func *s someMethod() {}

func *s someOtherMethod() {}

The code for the cases when there are several structs defined in common file:
type StructA struct {}

func *s method() {}

func *s other() {}

// etc ...

type StructB struct {}

func *s method() {}

func *s other() {}

One more important thing here is the potential performance boost.
Compiler would be able to identify corresponding struct significantly faster with this syntax, because it would be able to simply store the last seen struct and attach all methods seen further to it automatically. No more any receiver's name parsing needed.

Code I contribute to often has long type names (on the order of the example) and writing them over again is not a big issue (vim-go or other editor plugins help). I think the added syntactic sugar shown above doesn't provide much value for the cost of having two ways to write the same thing.

This would also add ambiguity to the language syntax. When the parser sees func foo, does it:

parse foo as a function name, e.g. func foo() { ... }
parse foo as this new receiver syntax, e.g. func foo bar() { ... }

Go has very few ambiguities like those at the moment, so I think we should be very careful when adding more.
Another point against this change that I see is that we already have the func (foo) bar() { ... } form, but it means a different thing - in there, foo is the receiver type, not name. I think this syntax would complicate the language for readers. Remember that Go should be easy to read and understand, not so much to write quickly.

For the record: since any type can have methods, this should clearly apply to any type, not just struct types.  (But I think it is unlikely that we would adopt this change.)

@mvdan

Another point against this change that I see is that we already have the func (foo) bar() { ... } form, but it means a different thing - in there, foo is the receiver type, not name. I think this syntax would complicate the language for readers.

In this case foo is wrapped by the parentheses, and it clearly indicates, that it is not a receiver. There is no mental collision here.

Remember that Go should be easy to read and understand, not so much to write quickly.

Agree that "Go should be easy to read and understand".
And code base shortening seems to be the good way to reach it.
Less code to read == less time for mental processing, no?

This is very transparent logic. There is no ambiguity here.

The parser should know how to parse a top-level declaration just by looking at each token. Remembering earlier type declarations, and peeking at tokens to see if there's an open parentheses, is precisely what would make the Go syntax much more complex. Just from looking at func foo it's completely ambiguous what the parser should do, as I explained above.

There is no mental collision here.

Your new proposed syntax is very similar to an existing syntax that does something very different - I'm only pointing that out.

And code base shortening seems to be the good way to reach it.

We agree to disagree. Languages that try to be fast to write by saving characters at all costs tend to be the less readable ones in the long run.


Default --ee-endpoint to http://localhost:8551

Description
Default the execution endpoint to localhost so that in simple setups where the EE is running on the same host it can be omitted.

There is a slight catch here we need to think through.  Currently you can run teku without connecting to an eth1 endpoint at all which is fine pre-merge and quite useful if you're not running a validator.  But if we provide a default --ee-endpoint value it will wind up automatically being used for --eth1-endpoint as well leaving no way to not load deposits. Setups that used to work would now generate errors that the eth1 endpoint is offline.  So we'd either want to wait until Bellatrix is scheduled for MainNet or only provide the default value when Bellatrix is scheduled.
Even then though, having this default to localhost may point it at the right port, but Teku would generate its own random JWT secret which is unlikely to be what the EL is using so it's unlikely for the actual connection to work. And providing the default value means teku would startup even if people hadn't prepared for the merge which may cause more configuration problems.
So I'm not sure this is such a great idea... It may be worth doing post merge but even then may be better to leave it as a required flag so users are aware they need to configure it properly.

Not seeing a compelling reason to do this given the jwt token has to be set anyway.


Fixed bug inverting matplotlib heatmap

Matplotlib handles inverting the data automatically if an axis is inverted which means that the code to invert the HeatMap data was actually undoing the inversion.

[x] Fixed https://github.com/ioam/holoviews/issues/2633

Good catch.  Do you know if mpl has always done that, or if it's a change in some more recent version?

Do you know if mpl has always done that

I think it's always done that, no other plot classes implement this inversion, so I think it was accidentally adding while I added support for it in the bokeh backend.

Glad this is fixed although I worry about how many people might have been affected by this without realizing it.

Looks good. I'll merge when the tests pass.


Yarn errors when trying to create a React app

I try to create a react app with the following command:
create-react-app eth-todo-list-react
I then receive these errors
'yarnpkg' is not recognized as an internal or external command,
operable program or batch file.
Installing packages. This might take a couple of minutes.
Installing react, react-dom, and react-scripts...

'yarnpkg' is not recognized as an internal or external command,
operable program or batch file.
events.js:167
      throw er; // Unhandled 'error' event
      ^

Error: spawn yarnpkg ENOENT
    at notFoundError (C:\Users\Aristophanes\node_modules\create-react-app\node_modules\cross-spawn\lib\enoent.js:6:26)
    at verifyENOENT (C:\Users\Aristophanes\node_modules\create-react-app\node_modules\cross-spawn\lib\enoent.js:40:16)
    at ChildProcess.cp.emit (C:\Users\Aristophanes\node_modules\create-react-app\node_modules\cross-spawn\lib\enoent.js:27:25)
    at Process.ChildProcess._handle.onexit (internal/child_process.js:246:12)
Emitted 'error' event at:
    at ChildProcess.cp.emit (C:\Users\Aristophanes\node_modules\create-react-app\node_modules\cross-spawn\lib\enoent.js:30:37)
    at Process.ChildProcess._handle.onexit (internal/child_process.js:246:12)

Any help fixing this would be much appreciated, thanks.

@Aristophanes888 Why did you close the issue, have you figured out what is the problem?


Added [[autodoc]] for ModelStatus

Attempting to bring back @Wauplin's docs fix to ModelStatus linking, that I clobbered in https://github.com/huggingface/huggingface_hub/pull/1740

@Wauplin I think you may have had more changes originally, I just don't know what they were

True, I forgot as well. Thanks for noticing. I've made a few changes and will merge soon :+1:


Update to RxSwift 3.0.0

Finish the work started in https://github.com/RxSwiftCommunity/RxMKMapView/pull/15

anyone able to merge this branch to master?

Not currently using this but I'll check it out and let you know.

I tested a handful of the operators. They all worked as advertised. Nicely done, thanks @victorg1991! 👏🏼 I'll merge this PR, and I'm going to use this in the new version of LŌC (which is in dire need of a complete rewrite since I last touched it in iOS 8, and it currently uses Parse 😫).

Can you push a updated version to cocoapods 👍🏻

@thanegill @sger can you guys push a new CocoaPod or give rights to someone else in the RxSwiftCommunity?

@icanzilb of course whats your email?

@sger just sent you an email 👍

@icanzilb cool you can push now

@sger Do you want to update CP trunk, or else I have a few minutes now and can take care of it.

@scotteg can you send me your email to add you also?

Oh, lol, I thought I already was added. Maybe not. Just sent you an email.

@scotteg cool you can push now

Ok, so who's going to do it? Thumbs up if you want to, or else I'll do it in 5 min.

@sger After dealing with CP issues, the podspec is still failing lint because resource_bundles doesn't match anything. The Pod/Assets directory is empty. Do you need to include it? When I comment that out in the podspec, it passes lint.

Hi @sger, the latest release hasn't been pushed to CP trunk yet. I was waiting to hear back from you on my previous question. Let me know and I can take care of it. Thanks!


Run client in background on iOS to reduce input lag during multitasking

Having the client reconnect every time it launches causes significant input lag when using multitasking on the connected iOS device. Client should be able to run in the background once connected so that multitasking can be used more easily.

We've been having issues with the state of the USB connection when doing this, that's why we decided to break down the connection as soon as the app goes into background.


Ensure our message enums are forwards compatible

By annotating a variant with serde(other), we can gracefully fail to
deserialize unknown variants.

bors r+


Remove the deprecated D3DX9 library

References

https://walbourn.github.io/living-without-d3dx/
https://walbourn.github.io/the-zombie-directx-sdk/
https://docs.microsoft.com/en-us/windows/win32/directx-sdk--august-2009-
https://github.com/ocornut/imgui/blob/c71a50deb5ddf1ea386b91e60fa2e4a26d080074/docs/CHANGELOG.txt#L2990
https://github.com/ocornut/imgui/blob/440824d4314b59049a196e9e6964d8e72aed25bd/backends/imgui_impl_dx9.cpp#L123

Delete: d3dx9.lib
https://github.com/rollraw/qo0-base/blob/101e504a4cebdc9851502463ad7df46dbbb5b116/base/cinnamon.vcxproj#L235

Delete: d3dx9.lib
https://github.com/rollraw/qo0-base/blob/101e504a4cebdc9851502463ad7df46dbbb5b116/base/cinnamon.vcxproj#L261

Delete: d3dx9.lib
https://github.com/rollraw/qo0-base/blob/101e504a4cebdc9851502463ad7df46dbbb5b116/premake5.lua#L76

Delete: d3dx9.lib - directx rendering
https://github.com/rollraw/qo0-base/blob/e19f443302ba954c2b534db953b6b69511174983/base/common.h#L83

Rename line 3 to line 2
https://github.com/rollraw/qo0-base/blob/e19f443302ba954c2b534db953b6b69511174983/base/common.h#L84

Delete: $(DXSDK_DIR)Include; + $(DXSDK_DIR)Lib\x86;
https://github.com/rollraw/qo0-base/blob/101e504a4cebdc9851502463ad7df46dbbb5b116/base/cinnamon.vcxproj#L207-L208

Delete: $(DXSDK_DIR)Include; + $(DXSDK_DIR)Lib\x86;
https://github.com/rollraw/qo0-base/blob/101e504a4cebdc9851502463ad7df46dbbb5b116/base/cinnamon.vcxproj#L215-L216

Next double check in <ExternalIncludePath> and <LibraryPath> if the various WindowsSDK references are actually being used, I am not using these in the latest version of Windows 10, one single reference should be used.

Do you know that CS:GO using directx 9?)

don't quite remember why i left it (probably imgui shit), but we have enough exports anyway and the only benefit is one less dependency that isn't the real case

Do you know that CS:GO using directx 9?)

You have no idea what this is about then.

don't quite remember why i left it (probably imgui shit), but we have enough exports anyway and the only benefit is one less dependency that isn't the real case

Ok, feel free to keep it, this was just about optimization.


Gotype fails to import subpackages of the same project

Say you have a project that is organized as follows:
$GOPATH/
+src/
 +name/
  +a/
   +a.go
  +b/
   +b.go

It is perfectly legal for b.go to have a line such as import name/a. However, in the current setup, gotype fails to do the import (presumably because of the way files are copied to the temp directory). As a result, I get a ton of lint errors on everything that uses that package, even though the code will run just fine.
I am currently forced to run gotype with the following ignore_match settings:
"could not import [a-z/]* \\(can't find import: [a-z/]*\\)",
"undeclared name: [a-zA-Z_]*"

I was wondering if there is something I am doing wrong, or if this is a bug in the plugin.

That's because this plugin copies files over to the temp dir. Why would you do that?

any news on the bug?

@zj8487 This issue contains all the news on this bug.
If anyone would like to fix this, or help out with this plugin in a permanent way, that would be more than welcome.
To be completely transparent, this is a linting plugin for a language I don't use for an editor I don't use. It's extremely unlikely I will be working on this further.

The main issue of this bug can't be fixed; if a GOPATH isn't defined, there's nothing the plugin can do. You can also define one in the plugin configuration, if you want (there's a configuration key gopath for that).
The other issue (running gotype on the full package) is fixed in 1.2.0, just released.


Notifications (EPNS?)

Messaging without notifications is half-baked
We need notifications
EPNS might be a decent stop-gap before implementing our own
How should we implement notifications?

Two ideas here:

Use EPNS channels
Pros: would integrate nicely with Bridge, would allow other EPNS sites to send notifications that Receiver knows how to handle and ping user for. EPNS phone app can give phone pings.
Con: adding another dependency when XMTP could work
@killthebuddh4 spend a bit of time on the docs here to get an idea: https://docs.epns.io/developers/concepts/create-your-notif-channel

Build Receiver to notify/ping the chatbox for incoming/new XMTP messages.

In either case, we can count the new messages coming in since the last read and show that as a red number on the icon.


Support option for supportsAllDrives

Hi,
For context, I am currently using this (https://github.com/hankei6km/gdrive-act-send) shared action as part of my workflow. And was hitting an error similar to this in my Github action workflow.
https://stackoverflow.com/questions/64649976/google-service-account-permissions-file-not-found-error
It seems that the solution to this is to allow supportsAllDrives. The original repo of the implementation leads to this repo. Thus, decided to create the issue here.
Anyway, the problem is highlighted in the title already. And, it seems to be a common issue discussed in other Github repo
https://github.com/search?q=supportsAllDrives&type=issues

Hi,
Added supportsAllDrives option to this package. But unfortunately I don't have a shared drive for testing.
I have released latest gdrive-act-send as 0.6.0 which links the new package, so could you try it?
https://github.com/marketplace/actions/google-drive-tools-action-send

parameter
description
required
default

supports_all_drives
Supports both My Drives and shared drives(includeItemsFromAllDrives is also enabled)
false

Tested, and is working. Thanks for the feature request. :)

@sr-pakwai Thank you for trying.
I'm glad to be able to add this new feature.


Properly handle i64::MIN when converting to Duration

fixes #632

Thank you for resolving the issue. Indeed, the code in this crate shouldn't panic, but for most cases return a serialization error if something happens. The solution with abs_diff is nice.
I can release the fix tomorrow.
bors r+


What is the difference between hidden_state and hidden_dim?

I saw that in the code, hidden_state is not implemented:
    def forward(self, input_tensor, hidden_state=None):
        """

        Parameters
        ----------
        input_tensor: todo
            5-D Tensor either of shape (t, b, c, h, w) or (b, t, c, h, w)
        hidden_state: todo
            None. todo implement stateful

meanwhile, hidden_dim is given.
What is the difference between those two variables?

I have the same problem... and why len(kernel_size) == len(hidden_dim) == num_layers needs to be true?

I have the same problem... and why len(kernel_size) == len(hidden_dim) == num_layers needs to be true?

ohh.... I think it just want to specify params for every of conv-lstm cell, not just a simple-copy.


All vods downloaded have audio desync

I'm using 1.4.2 rn. I've tried using 1.4.1 and it didn't work. I've tried changing the quality and downloading from different streamers. I've also tried reinstalling. So far nothing is working. Does anyone know how to fix this?

TL does not encode, it only merges files so TL cannot be the source of the problem. Tl does not change of shift the audio or video stream.
The more important thing is what program do you use to watch the video?  I strongly recommend VLC to test it because usually VLC does not mess things up.

I tried with vlc and it worked, the audio was in sync. My editing software (Camtasia Studio 8) doesn't play the vods in sync. Is there anything I can do to make the videos' audio in sync in Camtasia?

I know another person that also downloads twitch vods at source but can open them with wmp and Movies & TV.

The most common problem is that projects of various video editing softwares run at a certain FPS. Let's say you open up a new Camtasia project and you choose either 30 or 60 FPS for your project. Now you import the downloaded video from Twitch. That video has 29.97 or 58.76 FPS (and that is sometimes the case, don't ask me why).  Basically what happens is that it stretches the video to 30 FPS but leaves the audio stream alone resulting in A/V desync over time. So the longer the video is, the more desync there will be.
The solution is to set the project FPS to exactly the same FPS of the Twitch video. But then again the problem is that some consumer products like Camtasia cannot set the FPS to odd values like 58.76 FPS or something like that. I personally use Sony (or now Magix) Vegas Pro and it asks me to set the project FPS to the FPS of the very first imported video file. Now the whole project has 58.76 FPS and then I export it as 60 FPS. In this case Vegas interpolates the whole project and it works very smoothly without any desync.
I hope this explanation helps. I will use this issue in the future to link similar issues and requests to it.

@Franiac As you described TL process of combing clips, it sounds very similar to person I found on the adobe forums as they describe this issue of audio dsync occurring, when they combined (grouped) multiple "chapters" (clips) with the audio.
Before searching here for issues regarding such problem, I was trouble shooting Premiere Pro (PP), in the process I tried converting, copying etc. though got an error along the lines of The file duration is too long for timebase. Also trying to play the video with QuickTime (was changing to .mov, since PP has an easier time with them for some reason), the video would not open at all exiting with an error: a bad public movie atom was found in the movie. Which apparently refers to the mp4 container being damaged or incorrect.
So it I feel like something is happening when you're combing the clips and audio. I'm going to take a look  now, but I haven't dabbled in a lot of C#.

Well, you don't need to search:
TwitchService.cs line 1099, method "ProcessVideo". That's where TL calls FFMPEG with some arguments. It receives some parameters like the m3u8 playlist with all the downloaded VOD parts on the HDD alongside some cropping times (if cropping is enabled).
The main ffmpeg arguments are
"-y" + (cropInfo.CropStart ? " -ss " + cropInfo.Start.ToString(CultureInfo.InvariantCulture) : null) + " -i \"" + playlistFile + "\" -analyzeduration " + int.MaxValue + " -probesize " + int.MaxValue + " -c:v copy -c:a copy -bsf:a aac_adtstoasc" + (cropInfo.CropEnd ? " -t " + cropInfo.Length.ToString(CultureInfo.InvariantCulture) : null) + " \"" + outputFile + "\""

Now that does all the magic. There is a concat argument available in ffmpeg that I tried also but this way the resulting video was actually a concatination of the parts with little freezes between them (like every 2s). What we need in order to solve this issue here is not me fiddling around in C# (because that's not what the merging does) but a true ffmpeg pro who knows the shit (I am not!).
Thanks for your input. If you think you found something out that we should try on ffmpeg, let me know!


Ways to filter packet using tools

[x] I have read freeCodeCamp's contribution guidelines.
[x] My pull request has a descriptive title (not a vague title like Update index.md)
[x] My pull request targets the master branch of freeCodeCamp.
[x] None of my changes are plagiarized from another source without proper attribution.
[x] My article does not contain shortened URLs or affiliate links.

While incomplete (list seems random), I guess it could be helpful.

LGTM! Thanks @MihirrajDixit and for the QA @lynxlynxlynx 📦 💭 👃


Replace CFME docs with ManageIQ docs and rename

parent: #2078
The docs in vmdb/public/doc/cfme_*.pdf, are CFME 5.2 docs, should probably be the same as the ones on manageiq.org.
Should also be renamed to not contain cfme in the filename (and links in About fixed).

removed in #3493


Add Nipype interfaces for the Connectome Workbench

Add interfaces to the connectome workbench, before they are tested and upstreamed to nipype.
This issue would be the first step to accomplish poldracklab/fmriprep#1025. There is an open PR to partially address this (#279).

Actually, this may not be necessary at all if done as proposed here poldracklab/smriprep#59


Generate Mathematica paclet documentation files from markdown

The problem
Idea 1: While working with SetReplace functionality in Mathematica, it would be convenient if one could bring up the ordinary Mathematica documentation (e.g. pressing F1) on any given function. This would be nice for reasons that Mathematica's documentation is nice: one can evaluate examples in-line, tables of options are easy to read and can be easily navigated, "See also" makes it easy to jump around between documentation pages, etc.
Idea 2: Similarly, it would be very nice if all of our research notes became part of the paclet as well (although I can imagine file size might be a challenge here). That would make it instantaneous to "jump to the start of the art" and start playing around with a given model in Mathematica, turning the paclet itself into a kind of interactive textbook.
The good news is that this kind of functionality is well supported in Mathematica via paclet documentation, which allow a paclet to contain ordinary Mathematica documentation that works in the ordinary way. How do we build these notebooks, however?
Possible solution
Markdown is the appropriate format for creating, reviewing, and editing documentation for the reasons we all already know. Hence, if we can have an automated script assemble the correct docutools notebooks from our existing markdown function documentation then all of this functionality would basically come for free!
As for idea 2, If we think it is not appropriate to bundle research notes as part of the paclet, would could instead create a separate paclet that contains just the research nodes. This is slightly less ideal, since you could have conflicting versions checked out in which the research notes, when run, would not produce the correct output. However there could be automated workarounds for this, such as having a dynamic cell in the documentation notebook that checks at run-time whether the version of the SetReplace paclet is correct.
Alternative solutions
We could author corresponding Mathematica docutools-based documentation by hand, but this does not seem like a realistic workflow to me.
We could maintain the current status quo of not having deep in-product documentation, but I think this is less than ideal.
Additional context
This issue relates to https://github.com/maxitg/SetReplace/issues/449, which initially expressed a more ambitious scope that included bidirectional translation between notebooks and markdown. This proposal would require the markdown ⇒ notebook translation.

Duplicate of #27.
Note that our current documentation has a drastically different format than the documentation for built-in functions. Our documentation is written as a guide where the Mathematica convention for documentation is to make it brief with lots of examples.
So, even though we might want to use Markdown and the system from #449 to generate these notebooks, we will still have to rewrite existing documentation to be consistent with the expected style.


SPARKC-621 SAI support

SAI predicates pushdown rules:

IN clause for a partition key part prevents SAI push downs
OR clause prevents any push down
At most one equality is pushed
Only equality is pushed if equality and range are defined
Supported predicates:

numeric types: >, <, >=, <=, =
text types: =
set and list types: contains (non-frozen collections), = (frozen collections)
map type: contains key, contains value, key lookup result equality (map(key) == value), = (frozen collections)

NOTE that collection types support is going to be introduces in SPARKC-630

test this please

test this please

test this please

test this please


added 'Role' parameter to build only for a certain role

Hi there,
I added a parameter in order to build the mof- and meta mof files only for a certain role.
Greetings,
Sebastian

Would it be better to have a Filter parameter that allows the user to select the node based on whatever is important? There are many more options you might want to filter on, like Country, Domain, etc.

Thanks for the PR, much appreciated!
Filtering by node is already supported (but undocumented), using the parameter $FilterNode. This needs to be added to the .build.ps1 parameters should you wish to use it.
Whether a role filter should be present is a different question.
What's the use case and why?
When do you use it?
What's the value?
It's not a bad idea, but I'd like to understand the underlying reasons.
The DSCInfraSample is just an example control repo that people should customise to their taste, and that's a great example anyway.

The use case is that you want to build only a subset of nodes. Imagine you have some thousand nodes and the change to the config is affecting only some nodes that you want to build the MOFs for. Especially in dev and test this could speed things up.
To have the max flexibility I would vote for a FilterScript parameter so the use case is not fixed.

Yep, I was thinking the same. It should be a -Filter parameter...
On Mon, 23 Apr 2018, 11:10 Raimund Andrée [MSFT]<EMAIL_ADDRESS>wrote:

The use case is that you want to build only a subset of nodes. Imagine you
have some thousand nodes and the change to the config is affecting only
some nodes that you want to build the MOFs for. Especially in dev and test
this could speed things up.
To have the max flexibility I would vote for a FilterScript parameter so
the use case is not fixed.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/gaelcolas/DscInfraSample/pull/14#issuecomment-383524437,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AIjANVdFY_SUOOs9o5IxlPGeTyIWtqpTks5traiLgaJpZM4TeEt0
.

You've got a point there. I implemented the filter parameter today (it's not yet pushed though). How is the usual procedure? Closing this pull request and raising a new one?

If you made the change in the same branch, yes. Otherwise you can keep open and create new PR.
Please make sure you git pull --rebase from master.


MM-16540: userFriendlyJiraError

Ticket: https://mattermost.atlassian.net/browse/MM-16540
Also effectively cleaned up the handling of closing resp.Body, no need for https://github.com/mattermost/mattermost-plugin-jira/pull/215

I've reviewed the text in the messages - LGTM.


Use local random generator

Resolves #82

Oh, that's a big mistake from my side.
Is it OK to merge now?

@Lirt yes


Fix broken year number

2020 was inserted as 20202 - This broke my updating script for https://www.c19.mt/

Good Morning @simonamdev thanks for noting this. Fixed manually. Next time will use your pull request. Apologies


Renew of expired database lease

Hi 👋!
I have a strange behavior with spring-vault and database lease for Postgres: Vault is configured with a max_ttl of 24h and a default_ttl of 24h.
At the start of our application a database lease is acquired with a TTL of 24 hours. After 23 hours and 59 minutes spring-vault renew the lease which is understandable because of the expiryThreshold being 60 seconds.
And then every 10 seconds a renew is made wich is also understandable because minRenewal is 10 seconds. Unfortunately spring-vault is doing one last request after the lease has been expired by Vault resulting in an error:
Cannot renew lease: Status 400 Bad Request lease not found; nested exception is org.springframework.vault.VaultException: Status 400 Bad Request: lease not found; nested exception is org.springframework.web.client.HttpClientErrorException$BadRequest: 400 Bad Request: [{"errors":["lease not found"]}
]

See the following screenshot for example:

We can see here that the lease is created at 2022-08-02T10:23:24.657137798Z but the last renew is happening at 2022-08-03T10:23:24.89190918Z so after the expiration date of the lease.

At first sight, this may seem strange, but time is not an exact science in non-realtime systems. We have all sorts of latencies that add up (network latencies, garbage collection, system interrupts). Additionally, the client does not know the max ttl so we do not know when to stop in the future with requests.

Thanks for your answer.
Is there some kind of workaround? Or should I ignore the Vault error?

Or should I ignore the Vault error?

I think you can ignore the issue unless it causes a problem in your code.


Faction summary shows Happiness as e.g. "$faction_happinessband2;"

Presumably you just need to add a mapping from the tokens to, probably the English, localised versions.
"Happiness":"$Faction_HappinessBand2;", "Happiness_Localised":"Happy"
I don't have an example of the other 5 bands, but it's in the journal docs I believe.

Yup, I put it in the charts but I forgot to put the mapping in the table. Will fix soon.


28 jupyter package

Also the actions have a lot of warnings, these should be removed before merging outherwise they will stick around forever.

These step from the mock of the jupyter comms provided by the cookiecutter template, especially because 'explicit any' is used. THB, I'm not proficient enough in TypeScript to clear this up right now, but I will crate a Task for this.


Prometheus can't scrape mTLS pods in v1.5

Bug description
There seems to be an issue where the Prometheus shipped with Istio v1.5 can no longer scrape pods with the "prometheus.io/scrape: true" annotation. This seems to be because the job "kubernetes-pods-istio-secure" is gated behind the flag ".Values.security.enabled" which seems to not be present in the default profile when installing Istio with istioctl. Adding the flag manually by calling istioctl with the parameter "--set values.security.enabled=true" seems to resolve the issue. After installing Istio as described the workaround from #21843 seems to also be needed for the "kubernetes-pods-istio-secure" job to get the appropriate certificates.
Expected behavior
Prometheus should be able to scrape pods protected with mTLS.
Steps to reproduce the bug

Install istio with "istioctl manifest apply"
Deploy a pod with the annotation "prometheus.io/scrape: true"
Check Prometheus targets. The pod should not have been picked up as the "kubernetes-pods-istio-secure" job is missing and the "kubernetes-pods" drops mTLS pods because of the annotation "sidecar.istio.io/status".

Version (include the output of istioctl version --remote and kubectl version and helm version if you used Helm)
$ istioctl version --remote
client version: 1.5.0
control plane version: 1.5.0
data plane version: 1.5.0 (17 proxies)
$ kubectl version
Client Version: version.Info{Major:"1", Minor:"17", GitVersion:"v1.17.3", GitCommit:"06ad960bfd03b39c8310aaf92d1e7c12ce618213", GitTreeState:"clean", BuildDate:"2020-02-12T13:43:46Z", GoVersion:"go1.13.7", Compiler:"gc", Platform:"linux/amd64"}
Server Version: version.Info{Major:"1", Minor:"17", GitVersion:"v1.17.3", GitCommit:"06ad960bfd03b39c8310aaf92d1e7c12ce618213", GitTreeState:"clean", BuildDate:"2020-02-11T18:07:13Z", GoVersion:"go1.13.6", Compiler:"gc", Platform:"linux/amd64"}
How was Istio installed?
With istioctl CLI
Environment where bug was observed (cloud vendor, OS, etc)
Ubuntu 18.04 LTS running Microk8s (not the bundled Istio)

As far as I can tell this broke in 2d8249df15868ab1bdd116d5368285613a4fd623 when ".Values.prometheus.security.enabled" was changed to ".Values.security.enabled". The default profile still has ".Values.prometheus.security.enabled=true" so just reverting the change seems to be enough to solve the issue, but I don't know what other parts that might affect. If the change from 2d8249df15868ab1bdd116d5368285613a4fd623 is neccecary then inserting an "enabled: true" here should also sufficient to fix the problem as far as I can tell. I can submit a PR to fix the problem if someone could tell me which one of the solutions are appropriate. :smile:

It probably should be behind .Values.prometheus.provisionPrometheusCert @lei-tang

I attempted setting values.security.enabled to true as suggested by @hagen93, at which point the kubernetes-pods-istio-secure scrape job is added to the configmap, however prometheus can't actually create the scrape pool because the deployment still looks for the istio.default secret to get the certs.

@sibleyd I believe the certificate problem is covered by #21843. :smile:

Yep, that does resolve that issue, thanks. With that I have the kubernetes-pods-istio-secure job up and hitting my pod.

@howardjohn @lei-tang Do you guys know if .Values.prometheus.provisionPrometheusCert is correct yet? :)

As the default profile still has ".Values.prometheus.security.enabled=true" and in the original implementation, the job "kubernetes-pods-istio-secure" is gated behind the flag ".Values.prometheus.security.enabled", in my opinion, we may want to go back to the original implementation (i.e.,  the job "kubernetes-pods-istio-secure" is gated behind the flag ".Values.prometheus.security.enabled").

This is still not fixed in istio v1.5.4

In Istio 1.5.4, the job "kubernetes-pods-istio-secure" is still gated behind the flag ".Values.security.enabled" whereas the default profile has ".Values.prometheus.security.enabled=true". Thus, the job "kubernetes-pods-istio-secure" is not started with the default profile.
@hagen93 Thank you for offering to provide a PR to fix this problem! Gating the job "kubernetes-pods-istio-secure" behind ".Values.prometheus.security.enabled=true" (which is the original implementation) sounds good to me.
@bethmage Before the PR from @hagen93 is merged, you may try the workarounds mentioned in this issue, such as configuring ".Values.security.enabled" as true in your installation profile.

Thank you. I did so.

@lei-tang Looks like someone already fixed it. The configmap now gates it behind and .Values.prometheus.provisionPrometheusCert (not .Values.meshConfig.enablePrometheusMerge) which seems to be the values provided by the default profile here and here.

@hagen93 Thanks! The fix you mentioned is in the master branch. Can you cherrypick the change related to the job "kubernetes-pods-istio-secure" to the release-1.5 branch?

@lei-tang Sure, but the fix is part of a much larger commit, f44354b25790a88f6581227d22f00948b51a7d45. We should probably just cherry-pick the relevant changes right? Otherwise I'm afraid we'll break other stuff :)

@hagen93 That is right, just cherry-pick the relevant changes/lines :)

@lei-tang Cool, I'll have an MR in soon :)

@lei-tang I think the MR I just linked should fix the problem, but I am a bit unsure of how to test the changes. Tried building istioctl with go build, but the changes seems to not be included in the final binary. I suspect that is because go ends up pulling stuff from the GitHub repo instead of using my local copy. Had a quick look at the Makefile to see if there was a make profile that would build it for me, but it is a bit complex. Do you know of an easy way to test the changes?

@hagen93 Regarding to test the changes, "export HUB=YOUR-HUB; export TAG=YOUR-TAG; make push" should build istio (including istioctl) and push the binaries to the HUB you specified. After "make push", you can use the istioctl built locally along with other istio binaries pushed to the HUB to test the changes you made.

@lei-tang I think I fixed it, but to compile the fix into the binary it looks like I need to regenerate operator/pkg/vfs/assets.gen.go, do you know which make command triggers the regeneration? :)

@hagen93 IIRC, the command to trigger the regeneration is "make gen".

@lei-tang I ended up only gating the job behind .Values.prometheus.provisionPrometheusCert as .Values.meshConfig.enablePrometheusMerge seems to be intertwined with other things from f44354b25790a88f6581227d22f00948b51a7d45.
make gen edited a lot of files in addition to operator/pkg/vfs/assets.gen.go but I only included the one file in the MR.
Otherwise AFAIK the MR should be good now, pending the CI tests. :)


HLL aggreagate steps are missing for distributed tables in Realtime Dashboards tutorial

The Real Time Dashboards tutorial is aimed towards mostly single node Postgres. This causes confusion when users try these queries with distributed tables and see them fail.
Specifically the following HLL query won't work on distributed tables:
SELECT
  site_id, date_trunc('minute', ingest_time) as minute,
  hll_add_agg(hll_hash_text(ip_address)) AS distinct_ip_addresses
FROM http_request
WHERE date_trunc('minute', ingest_time) = date_trunc('minute', now())
GROUP BY site_id, minute;

We may consider distinguishing between what is distributed and what is non distributed.

What part is confusing or misleading? The dashboard example as I understand it isn't meant to be run only on single-node PostgreSQL. Is that query not supposed to be run on the master node?

@sumedhpathak I also thought that the query I mentioned was supposed to be run on the master node on a distributed table. However, when run on a distributed table, the query errors out with ERROR:  unsupported aggregate function hll_add_agg. So either the tutorial is aimed towards single node postgres or we need to modify the query.

Ok. After going through the tutorial again, if one is just trying to run every query, then it is a bit confusing. The text indicates that a query like this should be used in the roll-up script. So its not meant to be run on the master.
@aamederen The title for this issue is very broad, given the issue reported. Could you please update this issue with a more specific title?
Also, in the future, providing some context on how we could fix this (or better yet opening up a PR) will be helpful. It helps us work on the issue without having to run through the full use-case guide to understand the issue again.

@aamederen ping on this one.

@aamederen -- I think this particular step (in your comment) was written before we had INSERT INTO ... SELECT.
We have two issues that capture these dated steps in our docs. #41 talks about better documenting HLL (HyperLogLog). #198 talks about updating our use case guide and providing up-to-date (and distributed steps).
Do you think this issue could be merged into one of those issues as a comment?


Bump OpenZeppelin Version

ERC20 constructor changed slightly and the contract will need to be updated.

resolved with https://github.com/ava-labs/avalanche-smart-contract-quickstart/pull/24


Modified src/AotPackageReference/project.lock.json

Each time we compile the corert project, the following file src/AotPackageReference/project.lock.json is changed which is causing git to report modifications. Can this be removed from git?

Dupe of #520?

I guess it is related. Is there a reason to hold off on the removal?

I don't know why it was checked in in the first place. It might be needed on the TFS side of our source tree mirror?
@AlexGhiondea Will you have time to look at deleting the lock files anytime soon?

@MichalStrehovsky that item was on my plate and I was hoping to finish it a long time ago. Unfortunately I got side tracked by other work.
However, there wasn't anything in particular blocking this.
If you guys have any spare cycles I would be grateful it if you took it off my plate :).

We should just update the checked in copy of the file for now.

Just checked - the internal build still needs this file, it breaks without it.

Fixed by https://github.com/dotnet/corert/pull/883

thanks

Again the file has changed with the latest source code. I've submitted a new PR #995 to resolve the issue.


Feature Request - Add Simple "Grapple Hook Movement" Functionality

Understanding this isn't hugely different from the teleport functionality XR-Tools already has, a simple "batman bat-hook" style of grappling hook where the player is pulled to the "hook" location would be neat to have.
I have a simple version of a movement provider scene and script implementing this here, which I'm sure could be improved upon: https://drive.google.com/drive/folders/1osoVU7tWHyNJwMDtK8jpxOt9aVN4Rsgb?usp=sharing
The user can choose hook speed, which controls how fast the player gets to the hook point (and if low enough, whether the player fully makes it there at all) and hook length to control how far the player can "shoot."  Right now there is no mesh like the shooting of a physical hook or line implemented as I haven't figured that out yet, but there is a target, modeled off of the one that is used for the existing Pointer Function (the target is a different shape, a cube instead of a sphere, in case a player had both Pointer-with-target and Hook functions on, to distinguish them).
Note that this is also different from a "spider man web" style grappling system that has a lot more physics and bounce to it, which I don't know how to do.

I've got it working despite a mostly busted controller. There are some changes I'm looking to make:

All movement providers already have an 'enabled' property for situational disabling, so I think 'canGrapple' can be removed
All visibility updates (target and line) should be updated in _process() to prevent flicker
Grapple target should be hidden while grappling (as the line is visible)

The current "mode" appears to be to fire the user towards the hook_point, but then normal physics takes over and the grapple line is just for show. This initially works well, but then the player just falls to the ground.
I tried a second "mode" which is to linearly move the player towards the hook_point with physics turned off. This gets the player to the target, but doesn't feel very good.
I'm looking into a third "mode" where again the player is thrown towards the target, but essentially the rope is a ratchet which doesn't let the player move further away from the target. Eventually the player would be swinging by the rope until they let go. This would take some interesting vector math.

@teddybear082 I've put an example with swing mechanics in https://github.com/Malcolmnixon/godot-xr-tools-demo. There's still some more cleanup to do, but could you check it out and see what you think.

That's awesome will try it out soon! Appreciate your quick work on this!

@Malcolmnixon Tried it.   Your implementation is very slick, love it.  Hope this can find its way into the official XR-tools in the next release!!

I think I want to add one more thing - a "winch" velocity which tries to pull the user towards the target at a slow speed - just need to play with the physics of it a little more.

@teddybear082 I just did another update and I think it feels a little more natural. There's an initial impulse and a slow winch if you hold the grapple down. I also added simulated air friction to dampen the wild swings. Could you let me know if you're comfortable with the feel of it as well, and if so I'll turn this into a pull request for godot-xr-tools.

I like it! I personally like how you did it with your last iteration by default but grappling is very subjective and so what is better about this one is all of customization you built in so I was also able to get that feel by adjusting the winch and impulse values with this model and yet this model will also appeal to people who want a different feel.  Really great!

I think the physics of the actual swinging is good; but when I added grappling to my "DemoAll" example with all the movement providers available, I found a few more things need to be fixed:

The hand-off between movement providers isn't clean - For example gliding to grappling like batman doesn't report the end of the gliding so the gliding sound still plays
The player should still be blown around by the wind while grappling

I'll fix these and then get a pull request going.

Cool!  I forget, do I close the issue or do you?  I think we can close this one now.

The pull request is associated with this feature request, so once the pull request is merged into the main branch a final test is performed and the ticket is closed. Until then we keep the ticket open in case the review finds more work or issues that need fixing.


chore(ui): Delete ROX_NVD_CVSS_UI feature flag in ui

Description
This (frontend only) feature flag has been turned on since 2024-10-28 in #13063
Version 4.6.0 was released on 2024-12-03
Therefore, delete feature flag before changes for Advisories or EPSS columns in some of the same files.
https://github.com/stackrox/stackrox/tree/master/ui/apps/platform#delete-a-feature-flag-from-frontend-code
User-facing documentation

[x] CHANGELOG update is not needed
[x] documentation PR is not needed

Testing and quality

[x] the change is production ready: the change is GA or otherwise the functionality is gated by a feature flag
[ ] CI results are inspected

Automated testing

[ ] added unit tests
[ ] added e2e tests
[ ] added regression tests
[ ] added compatibility tests
[ ] modified existing tests

How I validated my change

npm run lint in ui/apps/platform
npm run build in ui/apps/platform and then compute branch - master for the following

wc build/static/js/*.js
main.js 0 = 4615653 - 4615653
total -218 = 11561621 - 11561839
ls -al build/static/js/*.js | wc
files 0 = 179 - 179

npm run start in ui/apps/platform

Manual testing
Local deployment without ROX_SCANNER_V4 feature flag.

Visit /main/vulnerabilities/workload-cves
WorkloadCVEOverviewTable
See absence in local without and presence on staging with: Top NVD CVSS column

Click a vulnerability
AffectedImagesTable
See absence in local without and presence on staging with: NVD CVSS column

Click an image
ImageVulnerabilitiesTable
See absence in local without and presence on staging with: NVD CVSS column

Visit /main/vulnerabilities/reports and then create a report configuration
ReportParametersForm
See absence in local without and presence on staging with: Include NVD CVSS checkbox

Visit /main/policy-management/policies create a policy, advance to Rules, and then expand Image contents
policyCriteriaDescriptors
See presence in both local without and on staging with: NVD CVSS field

Drag NVD CVSS field to rule.
See presence in both local without and on staging with: NVD CVSS scores require Scanner V4 info text

/test gke-nongroovy-e2e-tests


Updates and modifications to new features

Coverage increased (+0.6%) to 54.111% when pulling 781d75ccad513248b0ebc9d158b61a83c450c248 on gabrielburnworth:master into 553dcf28015e0a430b7bd44bb2f9d104ded31fa3 on FarmBot:master.

Coverage increased (+0.6%) to 54.111% when pulling 961b6eddf409e28a686999c764fefdadb5cc4716 on gabrielburnworth:master into 553dcf28015e0a430b7bd44bb2f9d104ded31fa3 on FarmBot:master.


CA share task

Use Case
Setting up new stacks to migrate existing over to will need the CA to be shared.
Describe the Solution You Would Like
Need ca to be copied over from existing to new stack prior to provisioning PE so the new infrastructure matches current CA agents are using.

@reidmv now that peadm::restore isn't blocked any good example of adding this to a bolt plan?


Option to hide Mod Settings (or make it work for all mods)

A lot of interesting mods depend on Jotunn, but a lot more don't, and they all need to be configured.
Not everyone wants their UI messed with, or require the option to configure the mods in-game at all.
That becomes doubly true for a function that potentially does not get used because it only works for a fraction of the mods in a load order, all of which can all be configured where you have to go to configure the remaining mods anyway.
I simply propose the option to hide the Mod Settings UI.
Either that, or making it work for all the mods in a load order so that it serves a purpose not already covered elsewhere.

New Jötunn version will have both: A config option to disable Mod settings and will also shows all mod configs, not just Jötunn ones.