Compare superpgram to fft and lombscargle

Here is the giant, KIC 5515413. The top panel shows the superpgram, the 2nd shows the FFT and the third shows the Lomb-Scargle periodogram of the data (bottom panel).

okay awesome!  Now what about the same for the tallest peak in the 8006161 SC data?
P.s. I don't need the fourth panel if it slows things down.


Bump reqwest to 0.9

reqwest 0.9 was recently released, using hyper 0.12. A couple of examples need to be updated because of the header changes. It should also help with openssl compatibility -- I can't build the examples because of a version mismatch.
I'll try to work on this.

I've been watching hyper::headers and I don't think this is ready.

actually, I"m going to close this in favor of https://github.com/rust-lang-nursery/rust-cookbook/issues/419

From the currently-enabled examples, the hardest to port seems to be the partial downloads one.

I guess you are right about the enabled issues moving to 0.9, I was thinking about just the header examples.  I reopened this.  My bad.

Closed by #460


cannot import name 'RemovedInSphinx50Warning' from 'sphinx.deprecation'

Description

Wanted to give it a go, but I stumble upon this exception when generating the sphinx doc.
Steps to Reproduce

install Sphinx==7.2.6
install attr-utils==0.9.0
generate the docs (make html)

Actual result:

make html
Running Sphinx v7.2.6

Extension error:
Could not import extension attr_utils.autoattrs (exception: cannot import name 'RemovedInSphinx50Warning' from 'sphinx.deprecation' (/Users/lucy.linder/tmp/slumber-keycloak/.venv/lib/python3.10/site-packages/sphinx/deprecation.py))
make: *** [html] Error 2

Expected result:
Reproduces how often:

Every time ;)
Version

Operating System: Mac
Python: Python 3.10.12
attr_utils: 0.9.0

Installation source

pip
Other Additional Information:

Can you try with attr_utils v1.0.0? I don't think this will be an issue any more


Renaming this RubyGem

Current thoughts on how to rename this RubyGem 💭

Maintain functionality of published gems - do not break projects that depend on this library

Allow people to use the existing published gems (no yanking)

Encourage folks to use the renamed version of the gem

Release one last version of the current named gem with a deprecation notice? e.g. print to stdout a friendly message?

Provide an easy migration process

Unix script to do a find and replace. e.g. sed

Reserve the new name of the RubyGem by publishing a pre version
Consider the process factory_bot underwent. What went well, what didn't?

The rename has been completed
v0.4.2 is the last version of password_blacklist
v0.5.0 is the first release of password_blocklist
v0.5.0 also includes a new feature (option to select different size password lists) as a gentle nudge to migrate across.


Failure to compile for x386 32 bit plaform

I compile project for windows 64 bit or macOS 64 bit and it works fine.
When I set GOOS=windows and GOARCH=386, project fails to compile with the following error.
pogreb@v0.10.0\fs\os_mmap_windows.go:23:12: constant<PHONE_NUMBER> overflows int
pogreb@v0.10.0\fs\os_mmap_windows.go:23:12: array bound is too large

Thanks for the report. Fixed in https://github.com/akrylysov/pogreb/commit/8924c227b51d909a32226c4c69e03158ed038bc0


Create annotated, signed tags

When creating annotated tags (by passing a message into them), you can use git describe.
For us, this is wanted behavior (anyone can see exactly what version they're using), but it's a matter of preference.

@gvangool This has gone stale, any plans for rebasing?
@peritus What are your current thoughts on this vs. #58 vs. #74?

@peritus Just to note that annotated tags are an absolute showstopper for me, no point adopting bumpversion without this feature imho. I'm sure many others feel the same. Anything I can do to help get this in please shout!

@peritus I'd like to bump this as well. We also prefer using signed release tags at my current job.


Apply OperatorRewriters until they become stable.

Background, Problem or Goal of the patch
Some optimizations (e.g. asakusafw/asakusafw-compiler#54) may remove operators from the operator graph. It can introduce new dead-flows, and some optimization requires such dead-flows are already removed from the operator graph. This commit will fix this problem by applying optimizations recursively.
Design of the fix, or a new feature
We first take snapshots before/after applying optimizations, and compare each other to detect whether the optimizations become convergent or not.
Related Issue, Pull Request or Code

asakusafw/asakusafw-compiler#54
asakusafw/asakusafw-spark#173

Wanted reviewer
@akirakw

BUILD SUCCESS. <jenkins-prb-asakusafw-dag-28>


Why does generate_source skip writing schema_name if it matches the source name?

https://github.com/dbt-labs/dbt-codegen/blob/46586eae319543ad7c57c47bd8ba1da7ebe2f953/macros/generate_source.sql#L34-L36
I'm experimenting with modifying generate_source to preserve existing descriptions if they already exist in the graph, and because a source yaml file generated with this macro sometimes lacks a schema_name field I am writing conditional logic to select source nodes from the graph based on the schema or instead the source_name if schema does not exist, rather than just schema every time, or also changing generate_source to always write schema_name no matter what.
Was the choice to skip populating schema_name made because it was considered redundant bloat, or were there other reasons?

bump, still curious about this


--pie-mode and --global-vars cause IDA to hang

for Apache and possibly other large PIE applications. problem does not arise in very simple test cases.
"It hangs when it adds the code references for all user defined Xrefs;
idc.AddCodeXref(ref, e, idc.XREF_USER|idc.fl_F)"

ooh so I've run into this or something similar before. It used to hang when we'd try to view the resulting IDB in IDA when it had too many user defined references at a certain point. I think the solution was to either not view it (and stick to batch processing with idal) or to set a global setting prior to disassembly... its been a while so can't recall.

Did you see the problem due of idaapi.FlowChart(...) api? It hangs while creating the map of function and basic block objects.

Ahh I totally missed that!
Our options broaden a bit:

Try to use an FC_* constant when doing idaapi.FlowChart and hope it bypasses the bug
Avoid using idaapi.FlowChart. We use custom functions to collect BBs belonging to a function in get_cfg already, so this may be the easiest option.
File a bug report and use the latest bug fixed ida (we should probably file a bug report anyway).
Track our references in another data structure and not in IDA (that is, avoid using idc.AddCodeXRef).

@kumarak Can you confirm whether or not this is still a problem?

The issue was resolved by using the custom functions to collect BB.


UAT: Litigant registration - aadhar number validation error

when entering aadhar number, it immediately shows error, even if I am entering numeric only. This should not happen. The error should come only if I have stopped to type in that edit box.  Also it would be a good idea if UI has a template of entering the data like

I have tested this and this is working fine in QA environment


Show details in status message

Followup to PR:

#136

Addresses issues:

https://github.com/open-cluster-management/backlog/issues/13182
https://github.com/open-cluster-management/backlog/issues/13940

/approve


[PINOT-3505] Update committing segmentmetadata from the incoming metadata file

Also fixed record count in RealtimeSegmentDataManager

lgtm

Current coverage is 63.06% (diff: 81.48%)

No coverage report found for master at b3d2550.

Powered by Codecov. Last update b3d2550...b2bdd83


Implement DNSSec

Is your request related to a new offering from AWS?
https://aws.amazon.com/de/about-aws/whats-new/2020/12/announcing-amazon-route-53-support-dnssec/
Is your request related to a problem? Please describe.
No
Describe the solution you'd like.
I would like to enable DNSSec on my public zones
Describe alternatives you've considered.
Using raw terraform resources
Additional context
It just nice to know, but adding dnssec could be a real benefit to this module

I agree that this should be a rather handy addition to the module if implemented in a flexible way.
PR is welcome.


Publish docker images with goreleaser

Alternative to #2
@Vinlock how does this look?
I think I'll figure out how to wire up GitHub Actions for goreleaser correctly, then this should cover it all from the same tool.

Oh neat. https://github.com/mattrobenolt/ps-http-sim/pkgs/container/ps-http-sim

Nice!


404 error on install

Thanks for the great library.  Running typings install threejs --ambient gives the following error.
typings ERR! message Unable to find "threejs" for "dt" in the registry. Did you want to install ambient typings with the ambient flag? If you can contribute these typings, please help us: https://github.com/typings/registry
typings ERR! caused by https://api.typings.org/entries/dt/threejs/versions/latest responded with 404, expected it to equal 200

Going to github folder hosting threejs d.ts you will see that above the folder list is "Fetching latest commit...", which never responds.  Perhaps that is related.  Perhaps a github issue with a very large repository.  Can you confirm?

Search for three, not threejs.

Great support too!  That was it.  How do you determine the typings token by looking at the project files?

The actual logic is https://github.com/typings/api/blob/master/src/worker/jobs/dt.ts#L103, but it's based on the filenames (not the folder names, turns out the folder names are mostly wrong). I have to apply some awkward js$ checks to the folder because of things like angularjs/angular.d.ts, etc. This falls in the same bucket, so it got matched as three.

In this case, the replacement is correct again because the module is called three and not threejs (https://www.npmjs.com/package/three).


New Personal Notes Not Saving

Describe the issue/bug:
When messaging a user or on their profile page and creating a new personal note, it does not save upon re-entering the page. Previous notes can still be viewed.
To Reproduce:

Visit a profile page: https://brainly.com/profile/user-userid
Type a personal note in the notes section

Refresh the page, the note is not saving.

https://user-images.githubusercontent.com/62516707/113498286-5b389a80-94c0-11eb-8ffb-0aca02f18ad9.mov
https://brainly.com/profile/LukeG1-16118329

Hey @LukeG294, could you please check and confirm it has fixed for you?

Hi @seahindeniz, looks like this is working now after 7.23.4, thanks!


feat: Extend AuthToken Forwarding

Context

SAP/cloud-sdk-java-backlog#ISSUENUMBER.
Please provide a short description of what your change does and why it is needed.
Feature scope:

[ ] Task1
[ ] Task2

[ ] SubTask1

Definition of Done

[ ] Functionality scope stated & covered
[ ] Tests cover the scope above
[ ] ~Error handling created / updated & covered by the tests above~
[ ] ~Documentation updated~
[ ] ~Release notes updated~

Some more tests for the destination service case and test-refactoring required.


Approving a kata translation should move kata back to top of the list

Instead of sorting by created by, it should sort by a new field that is updated whenever a new translation is approved.

Closing this because I believe this feature has been added (#859).


Configure App Transport Security

Currently we simply disable it completely, but once we’ve had time to see if opening arbitrary URLs with WKWebView is allowed with this enabled, then we can start scoping the domains etc.
Depends on #606.

For FB Auth: https://developers.facebook.com/docs/ios/ios9

It's interesting to see them state to disable it for them, which means they don't meet the criteria. Alas they don't mention what criteria that is and when they would fix it.


New versions yapb crashes my server!

Sorry for my poor english.
Yapb 5862 5896 5927 ubot <IP_ADDRESS>7 crashes my server.
Yapb 5859 is ok
same yapb.cfg used "yb cvars save" get from ver 5927.
My server info:
Debian 9 x64
Rehlds <IP_ADDRESS>5
Regamedll <IP_ADDRESS>8
Metamod-r v<IP_ADDRESS>
Reunion <IP_ADDRESS>
Amxmodx 1.9.0 5263

Hi. Crashes on load or during game?

Hi. Crashes on load or during game?

During game.

any specific  map? needs more info... test servers runnings just fine...
@dmitryzhukov can you write msg to telegram.


pypi.org Compatibility with pip 1.5.4

With ubuntu 14.04, you are unable to use pip without using the --allow-external pip flag.
Currently, pip fails with :
Downloading/unpacking Flask
  Could not find any downloads that satisfy the requirement Flask
  Some externally hosted files were ignored (use --allow-external Flask to allow).
Cleaning up...
No distributions at all found for Flask
Storing debug log for failure in /root/.pip/pip.log

It seems to be due to the migration from pypi.python.org to pypi.org in a combination with pip 1.5.4 (the default pip available in ubuntu trusty repository).
To fix, it seems that newer pip doesn't have this problem so an update of the version of pip fixes the problem
pip install --allow-external pip --upgrade -i https://pypi.org/simple  pip==9.0.1
To reproduce the bug, you can use the dockerfile here
https://gist.github.com/fbouliane/5c2cad96766740bd229927dc4d2bb484

@fbouliane thank you for your report! indeed upgrading pip is likely the best solution, but may not be acceptable for some users. we'll take this into consideration as we plan the remainder of the migration.

Yeah, a lot of people are still using Ubuntu 14.04, this is going to cause a lot of pain.

Breaking all our ansible 14.04 builds here 😢

we use ubuntu 14.04 internally for much of the PSF infrastructure as well.
most of our Python stuff is installed in its own virtualenv that uses a modern pip. this obviously isn't tenable for most.
Another alternative is to set your index URL to https://pypi.org/simple/ directly.

Load tests are going well, and we'll likely be concluding them for the evening soon. This will need be addressed in some way.

load splitting is completed for the evening.

appears to have been addressed by #3290 we're splitting traffic again and I'm unable to reproduce

It seems fixed !
Thanks for your help.

🎉


[Feature Request] screen effects

sorry I know I am asking for a lot of features lol but I never saw a reason to have an extension for something like this.
its pretty simple, add screen effects to edibles, so drinking vodka plays a drunk effect, maybe force the drunk walk too
same for weed, turn it into an edible and if you smoke it you get a different screen effect or something
again just something I thought of that was cool and I thought I would share
(ps. I do have code for it laying around, its just not vRP2 compatible)

(vRP modules are extensions too)
You can create an edible effect, but this could collide with other resources using screen effect, a alcohol/weed vital stat could be better.


Create Cucumber/Gherkin writeups for first 2 key user workflows/journeys

From #23, create the the test cases for these two:

Build out a location hierarchy
Build out a prefix/namespace hierarchy

First draft:
Feature: Locations
  In order to represent the geographical structure of my organization's infrastructure,
  As Nelly the Network Engineer
  I want to record in Nautobot an appropriate set of LocationType and Location records.

  Background:
    Given Nelly has appropriate Nautobot permissions for a Network Engineer
    And Nelly is logged in to Nautobot

  Scenario: Creating a root LocationType
    When Nelly uses the UI to create a LocationType with name Nation
    Then LocationType Nation should exist in Nautobot

  Scenario: Creating an intermediate LocationType
    Given LocationType Nation exists in Nautobot
    When Nelly uses the UI to create a LocationType with name City
    And Nelly specifies that this LocationType has parent Nation
    Then LocationType City should exist in Nautobot
    And LocationType City should have parent Nation

  Scenario: Creating a leaf LocationType
    Given LocationType Nation exists in Nautobot
    And LocationType City exists in Nautobot with parent Nation
    When Nelly uses the UI to create a LocationType with name Building
    And Nelly specifies that this LocationType has parent City
    And Nelly specifies that Devices can belong to Locations of type Building
    Then LocationType Building should exist in Nautobot
    And LocationType Building should have parent City
    And LocationType Building should show that Devices can belong to Locations of type Building

  Scenario: Creating a root Location
    Given LocationType Nation exists in Nautobot
    When Nelly uses the UI to create a Location with name "United States"
    And Nelly specifies that this Location has location_type Nation
    Then Location United States should exist in Nautobot
    And Location United States should have location_type Nation

  Scenario: Creating an intermediate Location
    Given LocationType Nation exists in Nautobot
    And Location "United States" exists in Nautobot with location_type Nation
    And LocationType City exists in Nautobot with parent Nation
    When Nelly uses the UI to create a Location with name Durham
    And Nelly specifies that this Location has location_type City
    And Nelly specifies that this Location has parent "United States"
    Then Location Durham should exist in Nautobot
    And Location Durham should have location_type City
    And Location Durham should have parent "United States"
    And Location "United States" should show Durham as one of its children

  Scenario: Creating a leaf Location
    Given LocationType Nation exists in Nautobot
    And Location "United States" exists in Nautobot with location_type Nation
    And LocationType City exists in Nautobot with parent Nation
    And Location Durham exists in Nautobot with location_type City and parent Location "United States"
    And LocationType Building exists in Nautobot with parent City
    When Nelly uses the UI to create a Location with name "Durham Bulls Athletic Park"
    And Nelly specifies that this Location has location_type Building
    And Nelly specifies that this Location has parent Durham
    Then Location "Durham Bulls Athletic Park" should exist in Nautobot
    And Location "Durham Bulls Athletic Park" should have location_type Building
    And Location "Durham Bulls Athletic Park" should have parent Durham
    And Location Durham should show "Durham Bulls Athletic Park" as one of its children

Second draft:
  In order to represent the geographical structure of my organization's infrastructure,
  As a Network Engineer
  I want to record in Nautobot an appropriate set of LocationType and Location records.

  Background:
    Given I have appropriate Nautobot permissions:
      | model             | permissions            |
      | dcim.locationtype | add,change,delete,view |
      | dcim.location     | add,change,delete,view |
    And I am logged in to Nautobot

  Scenario: Creating a hierarchy of LocationTypes
    When I navigate to the "Add LocationType" view
    And I make the following form entries:
      | name              | nestable |
      | Geographic Region | True     |
    And I submit the form
    Then a LocationType exists in Nautobot with the following properties:
      | name              | parent | nestable |
      | Geographic Region | None   | True     |
    And Nautobot shows the "LocationType Detail" view for LocationType with name "Geographic Region"
    When I click the "Add child" button
    Then Nautobot shows the "Add LocationType" view with the following presets:
      | parent            |
      | Geographic Region |
    When I make the following form entries:
      | name |
      | city |
    And I submit the form
    Then a LocationType exists in Nautobot with the following properties:
      | name | parent              | nestable |
      | City | Geographic Region   | False    |
    And Nautobot shows the "LocationType Detail" view for LocationType with name "City"
    When I click the "Add child" button
    Then Nautobot shows the "Add LocationType" view with the following presets:
      | parent |
      | City   |
    When I make the following form entries:
      | name     | content_types |
      | Building | [dcim.device] |
    And I submit the form
    Then a LocationType exists in Nautobot with the following properties:
      | name     | parent | nestable | content_types |
      | Building | City   | False    | [dcim.device] |
    And Nautobot shows the "LocationType Detail" view for LocationType with name "Building"

  Scenario: Creating a hierarchy of Locations
    Given that LocationType records exist with the following properties:
      | name              | parent            | nestable |
      | Geographic Region | None              | True     |
      | City              | Geographic Region | False    |
      | Building          | Building          | False    |
    When I navigate to the "Add Location" view
    And I make the following form entries:
      | name          | location_type     | status |
      | United States | Geographic Region | Active |
    And I submit the form
    Then a Location exists in Nautobot with the following properties:
      | name          | location_type     | parent | status |
      | United States | Geographic Region | None   | Active |
    And Nautobot shows the "Location Detail" view for Location with name "United States"

    When I click the "Add child" button
    Then Nautobot shows the "Add Location" view with the following presets:
      | parent        |
      | United States |
    When I make the following form entries:
      | name           | location_type     | status | time_zone |
      | North Carolina | Geographic Region | Active | America/New York |
    And I submit the form
    Then a Location exists in Nautobot with the following properties:
      | name           | location_type     | parent        | status | time_zone        |
      | North Carolina | Geographic Region | United States | Active | America/New York |
    And Nautobot shows the "Location Detail" view for Location with name "North Carolina"

    When I click the "Add child" button
    Then Nautobot shows the "Add Location" view with the following presets:
      | parent         |
      | North Carolina |
    When I make the following form entries:
      | name   | location_type | status  |
      | Durham | City          | Planned |
    And I submit the form
    Then a Location exists in Nautobot with the following properties:
      | name   | location_type | parent         | status  |
      | Durham | City          | North Carolina | Planned |
    And Nautobot shows the "Location Detail" view for Location with name "Durham"

    When I click the "Add child" button
    Then Nautobot shows the "Add Location" view with the following presets:
      | parent |
      | Durham |
    When I make the following form entries:
      | name                       | location_type | status  | physical_address     |
      | Durham Bulls Athletic Park | Building      | Planned | 409 Blackwell Street |
    And I submit the form via the "Create and Add Another" button
    Then a Location exists in Nautobot with the following properties:
      | name                       | location_type | parent | status  | physical_address     |
      | Durham Bulls Athletic Park | Building      | Durham | Planned | 409 Blackwell Street |
    And Nautobot shows the "Add Location" view with the following presets:
      | parent | location_type | status  |
      | Durham | Building      | Planned |
    When I make the following form entries:
      | name                          |
      | Durham Performing Arts Center |
    And I submit the form
    Then a Location exists in Nautobot with the following properties:
      | name                          | location_type | parent | status  |
      | Durham Performing Arts Center | Building      | Durham | Planned |
    And Nautobot shows the "Location Detail" view for Location with name "Durham Performing Arts Center"

    When I click on the "Durham" link
    Then Nautobot shows the "Location Detail" view for Location with name "Durham"
    And the table "Children" includes rows with the following properties:
      | name                          | status  |
      | Durham Bulls Athletic Park    | Planned |
      | Durham Performing Arts Center | Planned |

  Scenario Outline: Missing required fields for Location
    Given that LocationType records exist with the following properties:
      | name              | parent            | nestable |
      | Geographic Region | None              | True     |
      | City              | Geographic Region | False    |
      | Building          | Building          | False    |
    When I navigate to the "Add Location" view
    And I make the following form entries:
      | name   | location_type   | parent   | status   |
      | <name> | <location_type> | <parent> | <status> |
    And I submit the form
    Then Nautobot shows the "Add Location" view with the following presets:
      | name   | location_type   | parent   | status   |
      | <name> | <location_type> | <parent> | <status> |
    And the field "<required_field>" shows error message "<error_message>"

    Scenarios:
      | name          | location_type     | parent | status | required_field | error_message                      |
      |               | Geographic Region | None   | Active | name           | Please fill out this field.        |
      | United States | None              | None   | Active | location_type  | Please select an item in the list. |
      | United States | Geographic Region | None   | None   | status         | Please select an item in the list. |
      | Durham        | City              | None   | Active | parent         | A Location of type City must have a parent Location. |

    And I submit the form
    Then a LocationType exists in Nautobot with the following properties:
      | name              | parent | nestable |
      | Geographic Region | None   | True     |
    And Nautobot shows the "LocationType Detail" view for LocationType with name "Geographic Region"

Perhaps change that last line to And Nautobot redirects to the "LocationType Detail" view for LocationType with name "Geographic Region"

Implemented by #4803


processor(ticdc): remove useless start operation and use correct start ts

What problem does this PR solve?

Issue Number: ref https://github.com/pingcap/tiflow/issues/7864
What is changed and how it works?

Remove useless start operation because it has never been reached.
Use correct start ts as init progress. It is an open interval.

Check List
Tests
No code.
Questions
Will it cause performance regression or break compatibility?
No
Do you need to update user documentation, design documentation or monitoring documentation?
No
Release note
Remove useless start table operation when adding a table to a processor

/run-all-tests

/run-all-tests

/run-all-tests

/merge

/run-all-tests

/run-integration-test
/run-kafka-integration-test

/run-all-tests

/hold

/merge

/unhold

/run-integration-test


Air purifiers to clean smoke / other smells out of the air

I'm very sensitive to cigarette and other kinds of smoke, and they cause long-term damage to rooms and future tenants / airbnb guests. We could lose our damage deposit if the smell of smoke remains after we move out.
There are several smokers in the apartment. I've talked to a few people in person and will encourage more meetings to discuss solutions.
I propose getting desktop air filters for each room like this one:
https://www.amazon.com/Holmes-Desktop-Purifier-Optional-HAP242-NUC/dp/B0000DK35B?tag=cleanbreathing-20
and a bigger one for common areas.
I'm open to other solutions as well that return the air to neutral (not heavy scents or covering up the smells).

bought and running


Python scripting should allow returning proxies to "primitive" types

Python scripting currently converts some types (strings, dictionaries, arrays, etc.) into Smalltalk objects after being evaluated. We want to return proxies to these objects like is done for other types. Without using proxies, large strings, dictionaries, or collections would need to be transferred to be viewed in the inspector.


[Feature][Redis] Flush data when the time reaches checkpoint.interval

Purpose of this pull request

close #8174
Does this PR introduce any user-facing change?

How was this patch tested?

Check list

[ ] If any new Jar binary package adding in your PR, please add License Notice according
New License Guide
[ ] If necessary, please update the documentation to describe the new feature. https://github.com/apache/seatunnel/tree/dev/docs
[ ] If you are contributing the connector code, please check that the following files are updated:

Update plugin-mapping.properties and add new connector information in it
Update the pom file of seatunnel-dist
Add ci label in label-scope-conf
Add e2e testcase in seatunnel-e2e
Update connector plugin_config

[ ] Update the release-note.

Thanks @lm-ylj ! Could you add a test case?

Hi @lm-ylj , we already reverted this PR by https://github.com/apache/seatunnel/pull/8278. Because this PR broken our ci. Could you try re-raise a PR?

Hi @lm-ylj , we already reverted this PR by #8278. Because this PR broken our ci. Could you try re-raise a PR?

Sorry, I'll double check this test case


[RFC] Migrating Metrics From Performance Analyzer to OpenTelemetry Framework

Introduction
This RFC proposes migrating metrics from the OpenSearch Performance Analyzer (a plugin designed to gather system and application-level metrics) to OpenTelemetry framework, in light of the recent integration of OpenTelemetry as a trace/metrics collector within OpenSearch, and eventually deprecate the Performance Analyzer plugin.
Background
OpenSearch Performance Analyzer has been a valuable plugin within OpenSearch, offering insights into system and application level performance. With the advancement in observability frameworks and the community's move towards standardization, OpenSearch has integrated OpenTelemetry as a metrics collector, we are now presented with an opportunity to streamline our metrics collection workflow and framework and improve the maintainability and performance of the metrics collection workflow.
Motivation

Unified Metrics Collection: The integration of OpenTelemetry provides us a comprehensive metrics collection framework that can potentially replace the functionality of Performance Analyzer. Consolidating our metrics collection tools will simplify the architecture and reduce the complexity of our system.
Reduce Maintenance Overhead: Maintaining two metrics collection tools is resource-intensive. PA is using a metric collection framrowk built by ourselves to collect metrics and it's not industry standard. By focusing our efforts on a single framework (OpenTelemetry), we can ensure that we provide the best possible support and updates.
Community Adoption: OpenTelemetry has gained significant traction in the community, leading to more integrations, tools, and extensions that our users can benefit from.
Performance: OpenTelemetry is a widely-adopted project with optimizations and improvements being made continuously. Leveraging its capabilities can potentially offer better performance and resource utilization compared to maintaining our custom solution (PA/RCA).

Proposal

Deprecation Notice: We can begin by adding a deprecation notice on the Performance Analyzer's README and documentation. Inform users about the planned deprecation and the timeline for discontinuing support.
Migration Plan: Come up with a detailed migration plan which covers:

What are the different types of metrics we collect in Performance Analyzer
For each of the category, how to get the exact same metrics previously gathered by Performance Analyzer using OpenTelemetry.
For the downstream components that consume PA metrics, how to maintain the consistency.
Run the new metrics system as shadow mode for some time (?).

Deprecation: After we are confident of the new metrics collection workflow, , officially deprecate the Performance Analyzer.

Stopping active development and support.
Archiving the repository or clearly marking it as deprecated.

Removal: In a subsequent major release of OpenSearch, completely remove the Performance Analyzer from the codebase and documentation.

Appendix
Categories of PA (the plugin) Collectors

Host level metrics: collected by directly reading the host/node level metrics.
Service level metrics: collected directly from OpenSearch application, it uses the OpenSearchResource object with is created when the PA plugin is loaded and contains the OpenSearch related data like threadPool, environment, indicesService etc.

Metrics with reflect: involve using java reflection to get metrics from a library

JVM level metrics: collected from JVM directly by using GarbageCollectorMXBean etc.
Service level metrics with API: collected by calling an API.
PA internal metrics: Collects internal metrics from PA/RCA framework, not related to OpenSearch Core.

Collector Name
Type
Details: How are metrics collected
migrate to ..?
Feasible or not?

OSMetricsCollector
Host level metrics
Several customized data generator are created to gather CPU, Disk, Scheduling related metrics by reading the "/proc//task//*" files in a blocking way for all threads on the node. The metrics are then gathered by the OSMetricsCollector and forward to the Json file in shared Memory.
Other agent outside of OpenSearch process /OPTL collector
Feasible

DisksCollector
Host level metrics
Customized data generator are created to gather Disk related metrics by reading the "/proc/diskstats" files in a blocking way. The metrics are then gathered by the DiskCollector and forward to the Json file in shared Memory.
Other agent outside of OpenSearch process/OPTL collector
Feasible

NetworkInterfaceCollector
Host level metrics
Customized data generator are created to gather Network related metrics by reading the "/proc/net/snmp, /prov/net/snmp6, /proc/net/dev" files in a blocking way. The metrics are then gathered by the NetworkInterfaceCollector and forward to the Json file in shared Memory.
Other agent outside of OpenSearch process/OPTL collector
Feasible

HeapMetricsCollector
JVM level metrics
Utilize the GarbageCollectorMXBean and MemoryMXBean in java.lang.management library to get metrics related to JVM
Core
Feasible

GCInfoCollector
JVM level metrics
get GC related info from GarbageCollectorMXBeans
Core
Feasible

CircuitBreakerCollector
Service level metrics
from circuitBreakerService passed from OpenSearch
Core
Feasible.

NodeDetailsCollector
Service level metrics
from clusterService passed from OpenSearch
Core
Feasible

ClusterManagerServiceMetrics
Service level metrics
get the pending tasks stats from clusterService.clusterManagerService
Core
Feasible

ShardStateCollector
Service level metrics
get shard state metrics for each shard in each index using the routingTable data within the clusterService passed from OpenSearch
Core
Feasible, but need to check the CPU level metrics comming from threads.

ElectionTermCollector
Service level metrics
Get election term metric from clusterService passed from OpenSearch
Core
Feasible

ThreadPoolMetricsCollector
Service level metrics (with reflection)
Metrics are get from calling the stats() function on the threadpool object passed from OpenSearch. we use Java reflection to get the capacity of the threadpool
Core
Feasible. Migrating to core means we can directly send threadpool level metrics without using reflection.

CacheConfigMetricsCollector
Service level metrics (with reflection)
from indicesService passed from OpenSearch, use Java reflection to ensure backward compatibility. The indicesService is provided by DI and the binding is defined here
Core
Feasible.

NodeStatsAllShardsMetricsCollector
Service level metrics (with reflection)
from indicesService passed from OpenSearch, get the increment of the high level stats for all shards by calculating the diff between the previous shard stats
Core
Feasible

NodeStatsFixedShardsMetricsCollector
Service level metrics (with reflection)
Similar to NodeStatsAllShardsMetricsCollector, from indicesService passed from OpenSearch, get more detailed metrics for some specified shards passed by the user with shardsPerCollection
Core
Feasible

ClusterManagerServiceEventMetrics
Service level metrics (with reflection)
get cluster manager task event data from the clusterManagerService Object passed from OpenSearch
Core
Feasible

ClusterManagerThrottlingMetricsCollector
Service level metrics (with reflection)
get throttling metrics from the reflect of org.opensearch.action.support.clustermanager.ClusterManagerThrottlingRetryListener, from the clusterService passed from OpenSearch
Core
Feasible

ClusterApplierServiceStatsCollector
Service level metrics (with reflection)
"ClusterApplierServiceStats is ES is a tracker for total time taken to apply cluster state and thenumber of times it has failed". This collector uses the ClusterApplierService from opensearch.
Core
Feasible

AdmissionControlMetricsCollector
Service level metrics (with reflection)
Use the admissionController from com.sonian.opensearch.http.jetty.throttling.JettyAdmissionControlService in OpenSearch. Get AdmissionControl related metrics.
Core
Feasible

ShardIndexingPressureMetricsCollector
Service level metrics (with reflection)
Get Index pressure related metrics, from clusterService passed from OpenSearch. Using classes like org.opensearch.index.ShardIndexingPressureStore, org.opensearch.index.IndexingPressure, org.opensearch.index.ShardIndexingPressure classes from clusterService
Core
Feasible

FaultDetectionMetricsCollector
PA internal metrics
PA internal queue fault metrics? Get the FaultDetectionHandlerMetricsQueue from org.opensearch.performanceanalyzer.handler.ClusterFaultDetectionStatsHandler and emit metrics based on each entry.
Deprecate
Feasible

StatsCollector
PA internal metrics
PA internal metrics stats collector
deprecate
Feasible

@ansjcy, thanks for putting this up. Utilizing the OpenSearch telemetry framework for emitting these metrics does seem promising. The PA plugin generators are already well-written, making them easily reusable. Since these metrics are ideally part of a plugin rather than being merged directly into the core, migrating them to the OpenSearch telemetry framework within the PA plugin sounds like a sensible approach.
thoughts here @reta @backslasht @msfroh @khushbr @Bukhtawar

Agree with @Gaganjuneja , the OpenSearch already collects tons of metrics but exposes them through REST APIs, using the newly developed metric providers, we certainly could unify the approach. Thanks @ansjcy !

+1, I like the idea of migrating the Performance Analyzer plugin metrics into the OpenTelemetry format.
But, would like to understand bit more on deprecation of "Performance Analyzer" plugin part.

are you suggesting to move the logic into a new plugin which will emit these metrics in OTel format and once that is done deprecate "Performance Analyzer" plugin OR
are you suggesting to move the metrics collection into core?

Thank you, @reta and @backslasht, for your prompt responses. My suggestion is to retain these metrics within the "Performance Analyzer" plugin for the time being, given its extensive collection of operating system metrics. To facilitate this, we can pass the MetricsRegistry from the core to the Performance Analyzer plugin and initiate the migration of metrics to utilize an OpenTelemetry-based metrics registry for publishing purposes. Eventually, we can deliberate on the feasibility of integrating this plugin entirely into the core, taking into consideration the implications of backporting as well.

Catch All Triage - 1 2 3 4 5


RequestBodyUtil.create uses inputStream.available() as contentLength

Is this a bug report?
Yes
Have you read the Contributing Guidelines?
Yes
Environment
n/a
Bug
See: https://github.com/facebook/react-native/blob/master/ReactAndroid/src/main/java/com/facebook/react/modules/network/RequestBodyUtil.java#L132
RequestBodyUtil.create(MediaType mediaType, InputStream inputStream) uses inputStream.available() to set the contentLength of the RequestBody which is wrong.
https://developer.android.com/reference/java/io/InputStream.html#available()

Returns an estimate of the number of bytes that can be read (or skipped over) from this input stream without blocking by the next invocation of a method for this input stream. The next invocation might be the same thread or another thread. A single read or skip of this many bytes will not block, but may read or skip fewer bytes.
Note that while some implementations of InputStream will return the total number of bytes in the stream, many will not. It is never correct to use the return value of this method to allocate a buffer intended to hold all data in this stream.

Do you know what method should be used instead? I PR would be appreciated :)

InputStreams do not have a defined length. If you're uploading a local file within the app's container, you use file.length() on the file object you pass to new FileInputStream. If you are uploading an openable file from a document provider outside your app you can ask the content resolver for the openable size though it does not have to be defined, there are a few document providers that can give you documents without a known length until you read the full input stream And if you're uploading a virtual file by asking for an alternative mime type you can use assetFileDescriptor.getLength() though this can also return UNKNOWN_LENGTH.

I want to look into this one.
I'm not sure how I should verify testing this. I was thinking of creating an app that creates request with different types of data and seeing what input streams are created from this request body. Not sure if this is overkill or not.

Actually, I'm not sure if I'm the right person to look at this. I think I would need to learn more about Android. I will leave this available to anyone else that would like to work on this.

@janicduplessis Could you assign this to me? I want to start.

The available() method returns the the total number of bytes in the stream when certain implementations of InputStream is used. https://docs.oracle.com/javase/7/docs/api/java/io/InputStream.html#available()
For example, FileInputStream returns an estimate of the number of remaining bytes that can be read (or skipped over) from the inputstream.
As for other types of inputstream it is not possible to get the stream size this would result in an unpredictable behaviour, this method should return -1 by default to indicate unknown size.
https://square.github.io/okhttp/3.x/okhttp/okhttp3/RequestBody.html#contentLength--

👋 hey everyone. Thank you for raising this issue and the discussion of potential solutions here. Given the age of this issue and time since the last activity, I'm going to go ahead and close this issue for now.
However; should you still like this to remain open please let me know and I'll re-open - I would suggest though tackling this via a PR instead (if someone would like to volunteer that'd be great ❤) and having the discussion there on the various ways of resolving this issue.
Thank you


Read my mind

You guys read my mind! I just published the blog post about passing streams from parent to child component https://glebbahmutov.com/blog/why-use-reactive-streams-for-components/ and you lib implements it nicely. I need to list you as a better match for the idea than MobX

Thanks! Just read your post and it gave us a few ideas of where to go next. But yeah -- the approach you suggest is definitely what we're trying to do here. Also, I do try to follow your blog and it's been very helpful over the past few months -- great resource for functional and reactive programming in jasvascript.


[20.09] mupdf: 1.17.0 -> 1.18.0, pymupdf: 1.17.6 -> 1.18.0, llpp 32 -> 33, zathura: 0.4.5 -> 0.4.7

this is a squashed backport of https://github.com/NixOS/nixpkgs/pull/100441 and https://github.com/NixOS/nixpkgs/pull/103727
mupdf:
fixes CVE-2017-5991
fixes CVE-2020-26519
also drops the patch for shared libs (not needed anymore)
(cherry picked from commit 2b04dca238f64f089c16aa279c90ee0e7f0173a4)
mupdf: adopt post-release bugfix-patches from upstream
(cherry picked from commit 4a6235fcd6a666f99297f7bccf7ccdd352558d39)
pymupdf: 1.17.6 -> 1.18.0
(cherry picked from commit 5fd2f39726322f98d08c87903fb5f70c145ed1a2)
llpp: 32 -> 33
(cherry picked from commit 28e63e049e13739d68120e3a72ef253113f17b23)
mupdf: mark 1.17 as insecure but as still required as dependency
(cherry picked from commit 70e16bce7ab58829e710e75435f0112b88c75aeb)
zathura: 0.4.5 -> 0.4.7
(cherry picked from commit 3c3f70cdce34aa001154707d7833f0e48fa27a19)
zathura-pdf-mupdf: 0.3.5 -> 0.3.6, fix linking
(cherry picked from commit 2606a28a3a50e9bc6a175d32bc6c59de7722c65c)

Motivation for this change
Things done

[ ] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS linux)
Built on platform(s)

[X] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
[X] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[ ] Ensured that relevant documentation is up to date
[ ] Fits CONTRIBUTING.md.

/marvin opt-in

/status needs_reviewer

usually there's a 1 to 1 correlation between commits cherry-pick, we would prefer not have them squashed.
When backporting changes, please follow https://github.com/NixOS/nixpkgs/blob/master/.github/CONTRIBUTING.md#backporting-changes.
Namely, you should be doing git cherry-pick -x <rev> from (a) commit(s) that has already landed in master. If the branches have diverged, you may alter the commit or add another commit to ensure that the package is able to still evaluate and build

usually there's a 1 to 1 correlation between commits cherry-pick, we would prefer not have them squashed.

I deliberately deviated here as these commits all need to go together to avoid breaking things.

Yes, but if there is a regression, then we can use git bisect to locate which change caused it.
From the perspective of a channel user, they shouldn't experience an intermediate commit

Unsquashed and updated.

ping @jonringer


VTK8 - Vector plot appears to be missing some vectors in comparison with baseline.

Vector plot appears to be missing some vectors in comparison with baseline. http://portal.nersc.gov/project/visit/tests/20180505-22:00/surface_trunk_serial/field_op_04.html
-----------------------REDMINE MIGRATION-----------------------
This ticket was migrated from Redmine. As such, not all
information was able to be captured in the transition. Below is
a complete record of the original redmine ticket.
Ticket number: 3132
Status: Rejected
Project: VisIt
Tracker: Bug
Priority: Normal
Subject: VTK8 - Vector plot appears to be missing some vectors in comparison with baseline.
Assigned to: Alister Maguire
Category: -
Target version: 3.0
Author: Eric Brugger
Start: 05/17/2018
Due date:
% Done: 0%
Estimated time:
Created: 05/17/2018 12:36 pm
Updated: 06/19/2018 12:01 pm
Likelihood: 3 - Occasional
Severity: 4 - Crash / Wrong Results
Found in version: trunk
Impact:
Expected Use:
OS: All
Support Group: Any
Description:
Vector plot appears to be missing some vectors in comparison with baseline. http://portal.nersc.gov/project/visit/tests/20180505-22:00/surface_trunk_serial/field_op_04.html
Comments:
I've been isolating this failing test and running it both in the test suite and manually from within VisIt on both visit3.0 and visit2.13.2. As far as I can tell, both versions of visit have identical renderings when done through both the gui and the cli interfaces.When run in the test suite, however, visit3.0 saves an image with vectors missing, and visit2.13.2 does not. It looks like the missing vectors in visit3.0 correspond to vectors with very small magnitudes that are very hard to see in either version of visit when rendering through an interface.In short, there doesn't appear to be an issue with the actual rendering, but there does seem to be something odd happening when we save the image out during the test runs. The images are saved at a pretty low resolution in the test suite (300x300), what happens when you save the image interactively at 300x300 and at say 1024x1024? There is definitely noticeable data loss when comparing 1024x1024 to 300x300 saved windows in both versions of VisIt.The 1024x1024 images look pretty much the same from both versions. The 300x300 have noticeable differences (both have loss, but in different areas, and visit3.0 seems to have more loss).I've attached saved windows of this problem in both dimensions for both versions of VisIt. I'd say the results are the same, so you can reject it, stating such. This ticket has been rejected because, excluding the effects of window resolution, the results appear to be the same in VisIt3.0 as VisIt2.13.

2.13

3.0


Update cisdem-pdfmanagerultimate to 2.5.0

After making all changes to the cask:

[x] brew cask audit --download {{cask_file}} is error-free.
[x] brew cask style --fix {{cask_file}} left no offenses.
[x] The commit message includes the cask’s name and version.

Additionally, if updating a cask:

[ ] If the sha256 changed but the version didn’t,
provide public confirmation by the developer: {{link}}

Thank you for the contribution. It was merged directly as 6b6c1dafabc28ef51fe02fa53831eba545b3be48. Your contribution is still credited to you.


Bug Fix: NullReplaceTransformer to transform null strings

Allows for the replacement of a null String. Previously, a NullPointerException would be raised.
Tests have been added for NullReplaceTransformer.

A separate PR will be made for Travis CI test automation to verify this (and future) PRs


Change default git branch to 'main'

Do we link to work in this repo somewhere that needs to be updated?

Since we are moving a lot of repos right now, I'll change the default git branch. It's more likely we'll catch broken links now than if we wait.

done


extend tabs in tabline to full width of app window

good day!
when I create many tabs I get ellipsis in the middle:
screenshot
AFAIK in lightline both tabline and statusline are split in 3 parts: left, middle and right.
I specify tabs in left part in tabline configuration:
let g:lightline.tabline = { 'left': [['tabs']], 'right': [['close']] }

but it turns out that left part has maximum width that is approximately half the width of vim app window.
desirable behaviour is to have tabs that occupy full width of app window - with arrows on both sides that signify that there are more tabs on either left or right side.
is it possible to have such a behaviour? would vim-bufferline help in this case?

The line below determines the truncate threshold.
https://github.com/itchyny/lightline.vim/blob/a63a00d548fd20457a4f31d31fb9c8fe8a7ebc2a/autoload/lightline.vim#L453
What does :echo winwidth(0) print? I think I can extend the threshold but the 80 items limit (see :h E541) is causing much pain for me.

@itchyny thanks for your reply.
my window width without splits (:echo winwidth(0)) is 158.
this 80 items limit for statusline means that it's possible to create max 80 tabs? for me it's not a problem - I never create that many tabs.
according to your formula tabs width is determined by g:lightline.winwidth and will be multiple of 40. by trial and error I've found out that the best g:lightline.winwidth for me is 240 - in this case tabs extend almost till close button in upper right corner. but I guess it would be better to have winwidth to be multiple of 20 so that I could set it to 220 - it would allow for longer filenames to fit in tabline without adding < on the left.
btw g:lightline.winwidth setting is not mentioned in your docs - is it a proper way to configure tabs width?

this 80 items limit for statusline means that it's possible to create max 80 tabs

Vim counts the number of '%' items. For example, :echo lightline#tabline() will print something like %( %3T%{lightline#onetab(3,0)} %), which has four items. Within the 80 items limit, I think about 15~16 tabs can be displayed to avoid the E541 error. That's why I wrote min([ ..., 8]).

I've found out that the best g:lightline.winwidth for me is 240 - in this case tabs extend almost till close button in upper right corner.

I think it's very hard to find the general solution because each tab width varies due to the filenames. But I'm going to update the formula to show more tabs in various width of the terminals.

g:lightline.winwidth setting is not mentioned in your docs

Oh, I think I did not suppose the field to be configured by users. I think I should tweak the formula to make tabs better.

@itchyny as for me I'm used to tabs with <, > on both sides of tabline when there are too many tabs (just like in vim-airline) - without ellipsis in the middle. but it's just my preference and I don't know if it's easy to implement this behavior or if it's suitable for other users.
so far I'm going to live with g:lightline.winwidth setting and will wait for your updates regarding tabs.
thanks )

Any changes on this? I manually set the winwidth variable but I wasn't able to eliminate the ellipsis on my screen.
winwidth(0) returns 219 on my screen.


pywin32 dependency / size of menuinst in Miniconda etc.

Since #27 win_elevate.py is included, which is great since it resolved interactive elevation. This added pywin32 as a dependency though.
Since pywin32 is a rather "heavy" package, now menuinst (with its dependency) will account for a considerable size of minimal installers like Miniconda.
Sadly, I do not know of an alternative to pywin32 which provides similar functionality for Windows' interactive UAC.

pywin32 removed in #103


No unique materials selected

Hi, I was using atlas and faced 'No unique materials selected' while clicking 'Save atlas to' and failed to get the single material file that I want.

Pretty sure that's because you already have only one material, therefore you don't need an atlas.


Remove unused quorum_conf from NetworkManager

The required_peer_keys already has this role, the quorum_conf parameter was never used.

The Validator uses buildRequiredKeys

Please see the PR description.


add "deploy triggers"

Trigger an automatic deploy when a build completes. This will be useful for qa and release builds, while manual deployment will be useful for dev builds.

blocked by #22

abandoning Arbor CI


[BUG]: Imported README file is not displayed properly

Describe the bug
A clear and concise description of what the bug is.
To Reproduce
Steps to reproduce the behavior:

Click on 'import' button on a document with a github url
browse the github repo and select a readme file (.md or .txt)
Import file to project
Open the readme in the project
=> it opens the code viewer and does not show the content of the readme

Expected behavior
A .md or .txt file should be placed in the document section of the resources panel and open as a document (with appropriate metadata and provenance).
Screenshots

@dvince2 @brandomr

solved here https://github.com/DARPA-ASKEM/terarium/commit/5edaec38aa46466cb9f4c6638c3bb0f23d240509


Fixed duplicate titles for US-1889327

Summary
Describe your changes here.
Fixes #Issue_Number (if available)

@adegeo This PR is ready for technical review. Could you please review it?


pythonPackages.python-openems: init at unstable-2020-02-15

Motivation for this change
Adds python bindings for openems. Last piece of this PR. @jonringer.
Things done

[x] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS linux)
Built on platform(s)

[x] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
[ ] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[ ] Ensured that relevant documentation is up to date
[ ] Fits CONTRIBUTING.md.

Just want to say thanks for doing this packaging work!

I'm glad it's useful!

@jonringer added imports check.


makefile: allow users to define a dockercmd

This allows one to use a different tool, say podman instead of docker for their container build.
Signed-off-by: Raghavendra Talur<EMAIL_ADDRESS>

@raghavendra-talur the GH action uses docker, so either we need to update that to podman or we need to add the DOCKERCMD env to point to docker in sanity.yaml file (the checks are failing due to the same)

@ShyamsundarR I fixed the github workflow error.
I have also split the jobs for the github workflow to run tests on their own. This also makes the tests a bit faster as the unit tests and the image build jobs run in parallel.


Added missing flake reference for the Lenovo Legion 16IRX9H

Added missing reference mainly because I needed it personally.
Issue referencing the problem
Description of Changes
added a reference to an alreaady existing module, assuming that it was left out due to a typo.
Things Done
Really not that much

[x] Tested the changes in your own NixOS Configuration
[x] Tested the changes end-to-end by using your fork of nixos-hardware and
importing it via  Flake input

the only reason I even bothered to fix it was personal need and contributing it here is really just a way of pointing out the omission (merge it or edit the file in-browser, I won't feel slighted either way)

Thanks for all your hard work here and elsewhere in Nixland!
Thomas Leon Highbaugh

@mergify queue


Add assist for converting the base of integer literals.

This PR adds an assist similar to Intellij's convert number to. It also does a small refactor to assists/src/tests.rs to add the ability to specify the resolved assist for a specific action within an assist group.
Demo

Nicely written, thank you.
IMO, you could test things a bit less thorough and unite/omit a few cases, but up to you.
bors r+

@vlakreeh you might also want to take over https://github.com/rust-analyzer/rust-analyzer/pull/3683.

I implemented exactly the same thing, but did not open a MR yet :-P


Nonprofit projects still locked

I have completed the 3 certifications: Front-End, Data-Visualtization, and Back-End, but the non-profit projects are still locked. I have tried closing out of the page and going back in, and it still shows that those projects are locked until I finish the other certifications.
If I go into my profile, I can see that I have all 3 of those certifications.

I don't think this is a bug. Getting assigned to a non-profit project is a manual procedure, Search for a partner on the HalfWayClub or send your name and contact to<EMAIL_ADDRESS>

Gotcha. After some deeper digging, I found the documentation on the non-profits. Might be helpful to have that linked from that section in the map for future reference.


Add the copy button to the code blocks

Why:
Add the copy button to the code blocks

What's being changed (if available, include any code snippets, screenshots, or gifs):
Add the copy button to the code blocks on this page

Check off the following:

[ ] I have reviewed my changes in staging (look for the "Automatically generated comment" and click the links in the "Preview" column to view your latest changes).
[ ] For content changes, I have completed the self-review checklist.

Writer impact (This section is for GitHub staff members only):

[ ] This pull request impacts the contribution experience

[ ] I have added the 'writer impact' label
[ ] I have added a description and/or a video demo of the changes below (e.g. a "before and after video")

Interesting to see that the changes in data/reusables/gpg/list-keys-with-note.md break the list items in the output, while the other reusable file change works as expected.

I can update the PR without this file, but rather have it fixed in a better way :-D.

@rajbos Thanks for opening a PR and pointing out the broken output. Even though it's still a draft, I'm going to triage it for the team to get eyes on. Maybe there's a solution for the breakage. ⚡

👋 Hey again @rajbos! I spoke with the team and there may be one too many spaces leading up to the code block in the second reusable. Would you mind removing one of the spaces before the first ``` ?

Good catch. That space was already in the original file as well, as well as it already is in the other files as well. I did remove it but the redeploy does not display:
504.0 GatewayTimeout
Is there a way to force the redeploy so we can validate?

Bouddi OK tomorrow
On Wed, Aug 17, 2022, 8:27 PM Rob Bos @.***> wrote:

Good catch. That space was already in the original file as well, as well
as it already is in the other files as well. I did remove it but the
redeploy does not display:
504.0 GatewayTimeout
Is there a way to force the redeploy so we can validate?
—
Reply to this email directly, view it on GitHub
https://github.com/github/docs/pull/19676#issuecomment-1218403872, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AXP2PQL24HAUOHC6WWKP3ULVZU4ILANCNFSM56HDMIXA
.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>

I'm not sure what was causing the failure in the redeployment. I'm switching it from a draft to an opened pull request to see if that pushes through. I've marked it as "On hold" so it won't be on the review board until you are ready ✅

Hmm, that still didn't fix it. It's interesting because it looks like the note section from the previous reusable (list-keys-with-note) is leaking down into the broken one (copy-gpg-id-key). I still wonder if it has to do with spacing in the list-keys-with-note reusable. Maybe if we were to line them all up per the example in one of our contributing files, it will fix the leakage?

Testing that out. I think the are there (and might need to be) because they are used within list-items (either numbered or not)

👋 @rajbos I think told you opposite of what was needed 🙈
I ran this by the team and the thought is that the code block start  ``` on line 3 in the list-keys-with-note.md reusable needs to be tabbed in so that it is in line with the start of the list item above it (the word Use here). The break may be happening because the MD can’t tell that the codeblocks are part of the list items without that extra indentation.

ran this by the team and the thought is that the code block start ``` on line 3 in the list-keys-with-note.md reusable needs to be tabbed in so that it is in line with the start of the list item above it (the word Use here). The break may be happening because the MD can’t tell that the codeblocks are part of the list items without that extra indentation.

Seems reasonable, let's see if it will deploy this time 🙌 .

Nope, no success here:

Link<EMAIL_ADDRESS>

I spoke with the team again and made a couple of changes regarding the spacing (again). I think that's got it this time! I appreciate your patience as we've worked through this one. 👍

I'll get this merged down, soon! Thanks for the addition of the copy button! 💖

Thanks for adding the copy buttons! And for working with us as we were figuring out the breakage. 💖


Dead links in 'Release TypeScript 3.5.1'

Release page: https://github.com/microsoft/TypeScript/releases/tag/v3.5.1
All these links are going to a non-existent page:

All the broken links point to:
https://github.com/microsoft/TypeScript/blob/v3.5.1
There are honestly so many things wrong with that release post I don't even know where to start.  Best I can tell @weswigham must have been drunk when he posted it :smile:

Or automation script gone rogue?
Anyway, the list of fixed issues is also wrong, points here:
https://github.com/Microsoft/TypeScript/issues?utf8=✓&q=is%3Aissue+milestone%3A"TypeScript+3.3"+is%3Aclosed+

Whereas probably should go here:
https://github.com/Microsoft/TypeScript/issues?utf8=✓&q=is%3Aissue+milestone%3A"TypeScript+3.5.1"+is%3Aclosed+

I've updated the release notes for 3.5.1 with these recommendations - thanks!


[9.12.0] Enum bug within relationship

Laravel Version: 9.12.0
PHP Version: 8.1.5
Database Driver & Version: MariaDB

Description:
I suddenly get these errors after this commit (laravel v9.12.0), commit #42100.
v9.11.0 and earlier works correct...
str_starts_with(): Argument #1 ($haystack) must be of type string, App\Models\Enums\ProductType given

Seems to be caused by this line, https://github.com/laravel/framework/blob/9.x/src/Illuminate/Database/Eloquent/Concerns/QueriesRelationships.php#L786=
Steps To Reproduce:
I have a product model, with a product_type with an enum. The problem appears when doing something like this
--
This is located in my Product model
/**
     * Get all sub products
     *
     * @return \Illuminate\Database\Eloquent\Relations\hasMany
     */
    public function simpleProducts()
    {
        return $this->hasMany(self::class, 'parent_id', 'id')
            ->where('active', 1)
            ->where('product_type', ProductType::SIMPLE)
            ->orderBy('sort');
    }

ProductType enum
namespace App\Models\Enums;

enum ProductType: string
{
    case SIMPLE = 'simple';
    case GROUPED = 'grouped';
    case CONFIGURABLE = 'configurable';
}

return Product::withCount('simpleProducts')
    ->get();

Calling this works correct....
return Product::where('product_type', ProductType::SIMPLE)
    ->get();

Sent PR #42341 to address this issue.


chore: WIP! Adding printer

Implements a simple pretty printer for Kataw AST.
The returned output is similar to Prettier except for the known Prettier bugs and comment issues.

@aladdin-add Do you see what's coming next?

@aladdin-add You has to take an decision here. Should the comments be on or off by default?

@aladdin-add  Comments will be printed by default. I think it's okay?
This is how I print a "simple" CST node. The "comment magic" already fixed :)
function printForOfStatement(node: any, printer: Printer):  ForOfStatement {
  return chain([
    printKeyword(node.forKeyword, printer, node.start, node),
    printKeyword(node.awaitKeyword, printer, node.forKeyword.end, node),
    printer.space,
    printPunctuator('(', node.awaitKeyword ? node.awaitKeyword.end : node.forKeyword.end, node),
    printForBinding(node.initializer, printer, node),
    printer.space,
    printKeyword(node.ofKeyword, printer, node.initializer.end, node),
    printer.space,
    printExpressions(node.expression, printer, node),
    printPunctuator(')', node.initializer.end, node),
    adjustClause(node.statement, printer, printStatements(node.statement, printer, node))
  ]);
}

@aladdin-add the 'container' is a little tricky, maybe finish that one in a separate PR? It's the "outer wrapper" for comments on statement level and detach comments.
The CST node printing almost ready to be pushed

@aladdin-add Looks good!

60% has not yet been ported yet from my old code base, but the printer is there now.

@aladdin-add It still prints invalid syntax. That's a HUGE problem. See #68

there is still a test failing: https://github.com/kataw/kataw/blob/printer/test/snapshot/parser/expressions/template/crlf.md#input
the reason behind it: the printed code contains \r\n, but the repo has configured git to \n:
https://github.com/kataw/kataw/blob/26b5d903f19a9f570445dc2939194ba2604e2f6b/.gitattributes#L2
so, before committing to the repo, git would convert \r\n to \n automaticly.

How can we solve that test? Or just remove it?

@aladdin-add I'm little confused. What should we do with literals? Should we by default use rawText or text ? Maybe optional?
Linebreaks and trailing commas? I think the best solution is to use linebreaks if the 'NodeFlags' contains that masks, and skip it for the minified output?

@aladdin-add can you resolve the conflicts?

@aladdin-add Can you refresh the tests and solve the conflict?

@aladdin-add What we do? I clean up the source and we merge? Then I finish the comments in another PR ?

agreed, the PR is getting too big, and hard to follow. :)

Okay. Within this day I should have cleaned up this PR. Do you like the printer?


Fix conda-python-hdfs build error on flight-sql branch

This should fix Crossbow build conda-python-hdfs on flight-sql:
https://github.com/ursacomputing/crossbow/runs/4612261742?check_suite_focus=true
Using arrow::Result on SqliteStatementBatchReader::Create to avoid confusing with arrow::flight::Result.

@github-actions crossbow submit test-conda-python-3.7-hdfs-3.2.1 test-conda-python-3.7-hdfs-2.9.2


SAK-47068 SignUp Add drop down with list of current groups separate from drop down to modify them

https://sakaiproject.atlassian.net/browse/SAK-47068

@feralvarez95, I left a comment on SAK-47068 with suggestions on some changes to this change.


Add CI  jobs

We want to make sure the packaging scripts work every change, lets add jobs from azure.

I've listed a bunch of things we probably want to add here on https://github.com/kata-containers/ci/issues/10.


osram plugs don't show up in homebridge any more

Issue
After updating to homebridge 4.49, hue-plugin 0.11.23 and deconz 2.5.64 my osram Power Plugs no longer show up in homebridge. I still can successfully switch them in deconz.
fyi. they currently and used to show up as "connected lights" in deconz
(node version: 11.14.0)
Log Messages

Apr 24 22:22:23 ming systemd[1]: Started Node.js HomeKit Server.
Apr 24 22:22:30 ming homebridge[305]: [2019-4-24 22:22:30] Loaded config.json with 8 accessories and 4 platforms.
Apr 24 22:22:30 ming homebridge[305]: [2019-4-24 22:22:30] ---
Apr 24 22:22:30 ming homebridge[305]: [2019-4-24 22:22:30] Loaded plugin: homebridge-amazondash
Apr 24 22:22:30 ming homebridge[305]: [2019-4-24 22:22:30] Registering platform 'homebridge-amazondash.AmazonDash'
Apr 24 22:22:30 ming homebridge[305]: [2019-4-24 22:22:30] ---
Apr 24 22:22:30 ming homebridge[305]: [2019-4-24 22:22:30] Loaded plugin: homebridge-config-ui-x
Apr 24 22:22:30 ming homebridge[305]: [2019-4-24 22:22:30] Registering platform 'homebridge-config-ui-x.config'
Apr 24 22:22:30 ming homebridge[305]: [2019-4-24 22:22:30] ---
Apr 24 22:22:30 ming homebridge[305]: [2019-4-24 22:22:30] Loaded plugin: homebridge-fritz
Apr 24 22:22:32 ming homebridge[305]: [2019-4-24 22:22:32] Registering platform 'homebridge-fritz.Fritz!Box'
Apr 24 22:22:32 ming homebridge[305]: [2019-4-24 22:22:32] ---
Apr 24 22:22:32 ming homebridge[305]: [2019-4-24 22:22:32] Plugin /usr/local/lib/node_modules/homebridge-hue requires Node version of ^10.15.3 which does not satisfy the current Node version of v11.14.0. You may need to upgrade your installation of Node.
Apr 24 22:22:34 ming homebridge[305]: [2019-4-24 22:22:34] Loaded plugin: homebridge-hue
Apr 24 22:22:34 ming homebridge[305]: [2019-4-24 22:22:34] Registering platform 'homebridge-hue.Hue'
Apr 24 22:22:34 ming homebridge[305]: [2019-4-24 22:22:34] ---
Apr 24 22:22:35 ming homebridge[305]: [2019-4-24 22:22:35] Loaded plugin: homebridge-script2
Apr 24 22:22:35 ming homebridge[305]: [2019-4-24 22:22:35] Registering accessory 'homebridge-script2.Script2'
Apr 24 22:22:35 ming homebridge[305]: [2019-4-24 22:22:35] ---
Apr 24 22:22:35 ming homebridge[305]: [2019-4-24 22:22:35] Loaded plugin: homebridge-wol
Apr 24 22:22:35 ming homebridge[305]: [2019-4-24 22:22:35] Registering accessory 'homebridge-wol.NetworkDevice'
Apr 24 22:22:35 ming homebridge[305]: [2019-4-24 22:22:35] ---
Apr 24 22:22:35 ming homebridge[305]: [2019-4-24 22:22:35] Loading 4 platforms...
Apr 24 22:22:35 ming homebridge[305]: [2019-4-24 22:22:35] [Config] Initializing config platform...
Apr 24 22:22:35 ming homebridge[305]: [2019-4-24 22:22:35] [Config] Spawning homebridge-config-ui-x with PID 697
Apr 24 22:22:35 ming homebridge[305]: [2019-4-24 22:22:35] [Hue] Initializing Hue platform...
Apr 24 22:22:35 ming homebridge[305]: [2019-4-24 22:22:35] [Hue] homebridge-hue v0.11.23, node v11.14.0, homebridge v0.4.49
Apr 24 22:22:35 ming homebridge[305]: [2019-4-24 22:22:35] [Hue] warning: not using recommended node version v10.15.3 LTS
Apr 24 22:22:35 ming homebridge[305]: [2019-4-24 22:22:35] [jody] Initializing Fritz!Box platform...
Apr 24 22:22:35 ming homebridge[305]: [2019-4-24 22:22:35] [AmazonDash] Initializing AmazonDash platform...
Apr 24 22:22:35 ming homebridge[305]: [2019-4-24 22:22:35] Loading 8 accessories...
Apr 24 22:22:35 ming homebridge[305]: [2019-4-24 22:22:35] [NAS] Initializing NetworkDevice accessory...
Apr 24 22:22:35 ming homebridge[305]: [2019-4-24 22:22:35] [Push NAS Msg] Initializing Script2 accessory...
Apr 24 22:22:35 ming homebridge[305]: [2019-4-24 22:22:35] [Push 0 grad] Initializing Script2 accessory...
Apr 24 22:22:35 ming homebridge[305]: [2019-4-24 22:22:35] [Push Klingel] Initializing Script2 accessory...
Apr 24 22:22:35 ming homebridge[305]: [2019-4-24 22:22:35] [Push Wasser] Initializing Script2 accessory...
Apr 24 22:22:35 ming homebridge[305]: [2019-4-24 22:22:35] [Mail Wasser] Initializing Script2 accessory...
Apr 24 22:22:35 ming homebridge[305]: [2019-4-24 22:22:35] [Mail Klingel] Initializing Script2 accessory...
Apr 24 22:22:35 ming homebridge[305]: [2019-4-24 22:22:35] [Fernseher] Initializing Script2 accessory...
Apr 24 22:22:36 ming homebridge[305]: (node:305) [DEP0025] DeprecationWarning: sys is deprecated. Use util instead.
Apr 24 22:22:36 ming homebridge[305]: [2019-4-24 22:22:36] [jody] Fritz!Box platform login successful
Apr 24 22:22:36 ming homebridge[305]: [2019-4-24 22:22:36] [jody] Discovering accessories
Apr 24 22:22:36 ming homebridge[305]: [2019-4-24 22:22:36] [jody] Using tr64 api for guest Wifi
Apr 24 22:22:39 ming homebridge[305]: [2019-4-24 22:22:39] [jody] Alarm sensors found: none
Apr 24 22:22:39 ming homebridge[305]: [2019-4-24 22:22:39] [jody] Outlets found:<PHONE_NUMBER>87
Apr 24 22:22:39 ming homebridge[305]: [2019-4-24 22:22:39] [jody] Thermostats found: none
Apr 24 22:22:39 ming homebridge[305]: [2019-4-24 22:22:39] [jody] Sensors found: none
Apr 24 22:22:39 ming homebridge[305]: [2019-4-24 22:22:39] [jody] Initializing platform accessory 'Guest WLAN'...
Apr 24 22:22:39 ming homebridge[305]: [2019-4-24 22:22:39] [jody] Initializing platform accessory 'Waschmaschine'...
Apr 24 22:22:41 ming homebridge[305]: [2019-4-24 22:22:41] [homebridge-config-ui-x] Console v4.0.6 is listening on :: port 8080
Apr 24 22:22:42 ming homebridge[305]: [2019-4-24 22:22:42] [Hue] Phoscon-GW: dresden elektronik deCONZ gateway v2.5.64, api v1.16.0
Apr 24 22:22:42 ming homebridge[305]: [2019-4-24 22:22:42] [Hue] Phoscon-GW: /sensors/3: warning: ignoring unknown ZHASwitch sensor {"config":{"battery":100,"on":true,"pending":[],"reachable":false,"sensitivity":11,"sensitivitymax":21,"temperature":2600},"ep":1,"etag":"a04f4fdad47596b0bd0907409afbb3e8","manufacturername":"LUMI","mode":1,"modelid":"lumi.vibration.aq1","name":"Klingel","state":{"buttonevent":1007,"lastupdated":"2019-04-23T14:23:15"},"swversion":"20180130","type":"ZHASwitch","uniqueid":"00:15:8d:00:02:b7:7f:0a-01-0101"}
Apr 24 22:22:42 ming homebridge[305]: [2019-4-24 22:22:42] [Hue] Phoscon-GW: 10 accessories
Apr 24 22:22:42 ming homebridge[305]: [2019-4-24 22:22:42] [Hue] masked debug info dumped to /var/homebridge/homebridge-hue.json.gz
Apr 24 22:22:42 ming homebridge[305]: [2019-4-24 22:22:42] [Hue] Initializing platform accessory 'Phoscon-GW'...
Apr 24 22:22:42 ming homebridge[305]: [2019-4-24 22:22:42] [Hue] Phoscon-GW: 3 services
Apr 24 22:22:42 ming homebridge[305]: [2019-4-24 22:22:42] [Hue] Initializing platform accessory 'Button'...
Apr 24 22:22:42 ming homebridge[305]: [2019-4-24 22:22:42] [Hue] Initializing platform accessory 'Klingel'...
Apr 24 22:22:42 ming homebridge[305]: [2019-4-24 22:22:42] [Hue] Initializing platform accessory 'Wassersensor'...
Apr 24 22:22:42 ming homebridge[305]: [2019-4-24 22:22:42] [Hue] Initializing platform accessory 'Haustür'...
Apr 24 22:22:42 ming homebridge[305]: [2019-4-24 22:22:42] [Hue] Initializing platform accessory 'T Alexander'...
Apr 24 22:22:42 ming homebridge[305]: [2019-4-24 22:22:42] [Hue] Initializing platform accessory 'T Aussen'...
Apr 24 22:22:42 ming homebridge[305]: [2019-4-24 22:22:42] [Hue] Initializing platform accessory 'T Wohnzimmer'...
Apr 24 22:22:42 ming homebridge[305]: [2019-4-24 22:22:42] [Hue] Initializing platform accessory 'T Schlafzimmer'...
Apr 24 22:22:42 ming homebridge[305]: [2019-4-24 22:22:42] [Hue] Initializing platform accessory 'Terassentür'...
Apr 24 22:22:43 ming homebridge[305]: Setup Payload:```

Can you please attach the debug dump file?

@ebaauw Sorry for the false alarm, it seemed to be a caching issue, the smart switches are all back.


[Q]Graphs not populating and I'm not sure why

Beginning at 9 am EST and ending around 12 pm EST, some metrics in the Graphite web-app do not update. There is zero commonality between the metrics that do not populate and the ones that do. I can check the carbon-cache logs and they are updating regularly. So carbon is updating. Same for the carbon-relay log. Following metricfire's blog I updated the carbon-hashing algorithm and reduced the memcached values but these changes made zero difference.
I'm not sure where to take the troubleshooting next. If the carbon daemons are working and the relay is working, it has to be the graphite-web right?

Hi @itinneed2022
Unfortunately, Graphite is quite complex software and I'm not sure that it's possible to give you interactive troubleshooting session over github issues.
You can try to give us more information though  - more symptoms, configs, logs etc - maybe we can found there.

@deniszh I'm looking for more of general advice on what to look at next. Something I noticed yesterday when I restart the graphite web and carbon services (cache and relay), I suddenly received an update on all the metrics that had not been showing data. Now, at 40 minutes past the hour (so 9:40, 10:40, 11:40 am etc), I'm getting an update across every lagging metric right up to the minute.
Is there a delay that's configured somewhere intentionally?


Webm-Wasm plugin making it so timestamp doesn't fire

Description
I've followed this example here and got it apparently working, except player.on('timestamp') no longer fires
Steps to reproduce
Follow the example in the link, but in the options put a timeSlice: 1000 key. Then create a player.on('timestamp callback and watch as it does not fire
Results
Expected
I'm expecting the timestamp callback to fire so I can send up info from player.recordedData to my server
Actual
Doesn't fire at all. finishRecord callback runs no problem, but not the timeSlice
Error output
No errors
Additional Information
Please include any additional information necessary here. Including the following:
versions
videojs
what version of videojs does this occur with?
7.4.1
browsers
what browser(s) are affected? Make sure to test with all third-party browser extensions disabled.
Testing this on Chrome
OSes
what platforms (operating systems and devices) are affected?
Testing this on Windows

This is something that is not supported by RecordRTC and that has to be implemented there. @samjross can you open a RecordRTC.js ticket for this?


Adding an optional clusterName value in order to have the ability to filter by a cluster_name field in splunk.

Logs being collected into splunk will have a new field called "cluster_name".

@dtregonning Can you review PR for 1.1?

@shaunhouseman - Thanks for this PR. We've moved it to the develop branch.

Any idea when support for additional field cluster-Id would make it to the next release 1.0.2

@p-id Release 1.1 will be out in the next day or two

Thanks for the quick revert @dtregonning would surely like to give this a try this week.


start script reports failure because of timeout even though server starts

Start script (bash script that starts server) can sometimes report failure "sandbox server not started yet" because some (re)starts require more than hard coded  TIMEOUT=60 (line 1098 MySQL/Sandbox/Scripts.pm).
One example is recreating large InnoDB logs on slow disks. Script reports failure, however, MySQL server starts but not in 60 seconds.
One solution would be to increase this timeout value but then user would wait longer for real failure.
So this is mostly for info.

Thanks for the report.
There should not be any problem if we increase the timeout. The start script works by checking continuously for a PID file being generated. When it is found, the script exits successfully, which could happen after 1 second or 59 seconds. I thought 60 was a good timeout for a failure, but I will increase it.  I will first run a few tests and see if increasing the timeout produces any side effects.

This issue is fixed in MySQL-Sandbox 3.1.03


:arrow_up: Wagtail 2 compatible packages and documentation update

Tested inside the content-platform rush-upgrade-wagtail-2 image and within nhsuk-beta wagtail 2 branch and is compatible.

This adds compatibility for Wagtail 2 (and removes it for Wagtail 1).
For Django 2 compatibility, see my branch feature/upgrade-to-wagtail-2


⚠ Bofrost.at has degraded performance

In 7ac4651, Bofrost.at (https://www.bofrost.at) experienced degraded performance:

HTTP code: 200
Response time: 1055 ms

Resolved: Bofrost.at performance has improved in cb1fc91.


Search/find for column headers

I work with data sets that can have dozens (or hundreds) of columns and I won't know where in this set a particular column resides, or if it even exits in my current data. As it stands, I think the only thing I can do is scroll along until I spot the header I'm looking for. The browser's text search helps except:
In Apple Safari (14.0) the text can be found but the interface is subsequently broken and nothing is visible except the column headers. You have to close the project and reopen it to get the data view back.
In Google Chrome (Version 86.0.4240.111), the text is highlighted but the data window isn't moved to where the found text is visible, so if the column is off-screen you still need to scroll to find it.
In both cases the data window is searched as well, so it's not very satisfying.
I tried using the list in
All > Edit Columns > Re-order / remove columns...
and although this is a little easier to scroll down through, you can't search it at all in Safari. Chrome does find the text but again, if it's off the window you need to scroll down until you find it.
Proposed solution
I think it would good to add a column header search or filter tool, perhaps under the All > Edit Columns menu. It would also be handy to be able to search within the Re-order / remove columns... dialog window.
Alternatives considered

Additional context

@jquartel Can you be more descriptive on the Proposed solution?  What happens when you do the search and then a match is found (where and what does the search look like, where is it located in the UI, what options are there?) ... would you want to type into the search box and the data grid would scroll horizontally to the first matching column name into view as you type?  or something completely different. (an quick prototype viz for Project searching is in #2749 so take a look...are you suggesting something similar for columns?)  Just edit your original comment above to improve the proposal.  And thanks for this!

I think #213 is more closely related than #2749. Perhaps we could include the option to restrict it to column headings.
As an aside, browser Find in the Edit Columns display works for me in Chrome.

@thadguidry , yes in the simplest scenario, the browser's search functionality should work the way you describe. As it stands, Safari finds the text perfectly like this, but the data window is completely broken afterwards. Chrome finds the text without breaking the data view, but doesn't scroll to the found column. @tfmorris , this is also true in the Edit columns display (Chrome finds the text but you my have to do a lot of scrolling until you find the highlighted find), and if you use Safari then not only does it not search in the Edit columns dialog, but it breaks the data view in the way I mentioned earlier.
But thinking about it more, I think the Re-order / remove columns... dialog can do with a bunch of enhancements and the search could just be one of them.
It really needs a way to select multiple items from the list from one side to the other. As it stands, you can only move one at a time, so if you have 100 columns and you only want to use 3 of them, you'd had to move 97 items one at a time to the "Drop columns here to remove" space. What you want is to be able to Ctrl-A or Cmd-A select-all, move them all to the remove column, and then select the few you want to keep and move them back. Then if you add a magnifying class text search window in this dialog you will also be able to find the columns you want, and then select and drag them as necessary.
I'll try to add screen shots of the current search behavior when I get a moment.

@jquartel Hi there, I cannot help you with the problem to visually identify a particular column but I'd like to share what I do to check a project consinstency about its columns using the columnNames field of the row object which gives as output an array containing all column names ordered as in the project, from left to right.

create a column that will contain all checks output (ex: LOG) and set is value to ""
a. check if a column exists inside the project: with("NameOfTheColumn", x, if(row.index==0, if(forEach(row.columnNames, y, if(y==x, 1, 0)).sum()==1, value, value + "[ERROR] The column "+x+" doesn't exist|"), value))  This control is useful to find a mandatory column in a document where columns order is not important
b. check on the whole structure of the project if(row.index==0, if(row.columnNames.join("|")=="columnListPipeSeparated", value, value+"[ERROR] Column list is not as expected|"), value). This is a more general control where columns inside the project shoud have a particular order.

The row.index==1 inside the if statement is useful to limit the output of a general (not row related) check on the first row.
example of step n.2a

Thanks for this tip @iomicifikko! I found I could do this a little more succinctly (though with less descriptive message) with something like: if(cells["NameOfColumn"]==null,"Doesn't exist","Is ok")
But I would still like to be able to find the the column as well.

3.5-beta appears to have fixed the issue with text Find operations on MacOS Safari (i.e. the interface is no longer broken after doing a find) so this is great, thank you! I still think it would be good to enhance the functionality of the "Re-order / remove columns" window, especially with the ability to select and move multiple items rather than only one at a time. If you have a few hundred columns and you only want to see 6, then the current functionality doesn't make this easy.

I can confirm that the search issue with Chrome (where it wouldn't scroll the window to the located match) is also rectified in the 3.5-beta . I would say this issue is fully resolved. I might open a feature request for the extra functionality I described for the "Re-order / remove columns" window.

Thank you @jquartel for the good news :)


Remote pointers not cleared on user disconnect

Steps:

open https://excalidraw-git-roomdialog.excalidraw-team.now.sh/#room=42eee5595d9ed7ad7ec8,1nh-ao-36E9Q50THWN7XiA in 2 tabs
close the 2nd tab
remote pointer persisted in 1st tab

Looks like art though :p

This has been fixed in master


Not working in ios version 14.x.x.

I got blank canvas while testing with both react-spline and @splinetool/runtime packages in IOS version 14.x.x of Safari. Actually I tested my spline 3d website using real time browser testing of lambda test and got some errors in console as shown in the below screenshot.
.
The spline model that I used and code is the sample one from documentation of react-spline.
Here is the step to reproduce.

Open this sample website in ios 14.x.x Safari.
You will see it'll be blank page.

Codesandbox

Yes, unfortunately Safari 14 is no longer supported by Spline.


Local variable caching

There are a couple of other things that I want to use this local variable caching for, but the first is for arrays. Previously a List<> was created and destroyed for each array that was created. I now have a ArrayBuilder<> that gets created and used. This does have an infinite growth issue, but I see this as less relevant than the replacement for StringBuilder as interally List<> is ultimately just a wrapper for Array and so suffers exactly the same issue with large objects etc. In fact this should place less strain on the garbage collector for a number of reasons:

We're not creating a new List<> for each array
The ArrayBuilder<> itself is a struct
If the resultant is of length 0, we share a common empty array
The initial size of the ArrayBuilder is a bit bigger (32 items, list appears to be 4)

I have included a number of speed tests with access the arrays in various ways.

This has been in zombie state for ages, obviously not going anywhere. Closing.


Improve errors

Previously, the abstract term error, now:
https://github.com/patrick-kidger/diffrax/issues/446: ValueError: Error while tracing ODETerm(vector_field=<function equations>).vf: matmul input operand 1 must have ndim at least 1, but it has ndim 0
https://github.com/patrick-kidger/diffrax/issues/461: ValueError: The brownian increment BrownianIncrement(dt=f32[], W=f32[5]) does not have the minimal Levy Area <class 'diffrax._custom_types.AbstractSpaceTimeLevyArea'>.
https://github.com/patrick-kidger/diffrax/issues/474: ValueError: The brownian increment BrownianIncrement(dt=f32[], W=f32[]) does not have the minimal Levy Area <class 'diffrax._custom_types.AbstractSpaceTimeLevyArea'>.
Just generally propagating the actual error

(Let me know when you want a review btw, I'm ignoring this for now whilst it's a draft -- which I'm taking as a "you don't need to review this yet" signal)

(Let me know when you want a review btw, I'm ignoring this for now whilst it's a draft -- which I'm taking as a "you don't need to review this yet" signal)

Yea, that's exactly what I mean by draft, you can ignore it. But with the weird backward edge case resolved, it is ready for you to take a look at

Great! This LGTM.
Looks like one of the tests has gone a bit wonky, I'm not sure why. Anyway, happy to merge this once things are green.
(Whilst I'm here, I'm also noticing that our tests have quite a few warnings in them. Some of these are expected -- fixed upstream in Equinox, which should have a new release any day now. The one about WeaklyDiagonalControlTerm could probably do with being suppressed, though.)

And merged! :)


[react-cookie] Update hoist-non-react-statics package

Hi!
Get the warning when using getDerivedStateFromProps inside wrapped component:
Warning: withCookies(Component): Did not properly initialize state during construction. Expected state to be an object, but it was undefined.

According to the PR hoist-non-react-statics should be updated to the last version to fix the warning.
Thanks!

Fixed in v3.0.0


All tests fail due to "Object/factory with  type ConvenientTestSlot is already registered inside GetIt."

Describe the bug
When starting the test suite the following exception is always thrown:
══╡ EXCEPTION CAUGHT BY FLUTTER TEST FRAMEWORK ╞════════════════════════════════════════════════════
The following ArgumentError was thrown running a test:
Invalid argument(s): Object/factory with  type ConvenientTestSlot is already registered inside
GetIt.

To Reproduce
Steps to reproduce the behavior:

Create a main_test.dart file which looks something like this:

import 'package:convenient_test_dev/convenient_test_dev.dart';
import 'package:flutter/material.dart';
import 'package:flutter_test/flutter_test.dart';

void main() {
  convenientTestMain(MyConvenientTestSlot(), () {
    group('simple test group', () {
      tTestWidgets('choose some fruits', (t) async {
        expect(true, true);
      });
    });
  });
}

class MyConvenientTestSlot extends ConvenientTestSlot {
  @override
  Future<void> appMain(AppMainExecuteMode mode) async => main();

  @override
  BuildContext? getNavContext(ConvenientTest t) =>
      StoriesRouter.navigatorKey.currentContext;
}

Start the test suite.

Expected behavior
The first test should pass.
Actual behavior
The test fails with the following exception:
══╡ EXCEPTION CAUGHT BY FLUTTER TEST FRAMEWORK ╞════════════════════════════════════════════════════
The following ArgumentError was thrown running a test:
Invalid argument(s): Object/factory with  type ConvenientTestSlot is already registered inside
GetIt.

When the exception was thrown, this was the stack:
#0      throwIf (package:get_it/get_it_impl.dart:7:18)
#1      _GetItImplementation._register (package:get_it/get_it_impl.dart:803:5)
#2      _GetItImplementation.registerSingleton (package:get_it/get_it_impl.dart:587:5)
#3      convenientTestMain (package:convenient_test_dev/src/functions/core.dart:66:11)
#4      main (file:///Users/ronba/dev/projects/comobi/comobi/app/integration_test/main_test.dart:7:3)
#5      MyConvenientTestSlot.appMain (file:///Users/ronba/dev/projects/comobi/comobi/app/integration_test/main_test.dart:28:58)
#6      tTestWidgets.<anonymous closure>.<anonymous closure> (package:convenient_test_dev/src/functions/core.dart:204:12)
#7      ConvenientTest.withActiveInstance (package:convenient_test_dev/src/functions/core.dart:46:17)
#8      tTestWidgets.<anonymous closure> (package:convenient_test_dev/src/functions/core.dart:200:30)
#9      testWidgets.<anonymous closure>.<anonymous closure> (package:flutter_test/src/widget_tester.dart:171:29)

Desktop (please complete the following information):

MacOS
Ventura 13.0

Smartphone (please complete the following information):

Device: Android Emulator
OS: 12

Additional context
I've reproduced this issue with the master branch.
As a workaround, I locally applied a small hack as follows:
in the core.dart file, convenientTestMain:
  if (myGetIt.isRegistered<ConvenientTestSlot>()) {
    myGetIt.unregister<ConvenientTestSlot>();
  }

  if (myGetIt.isRegistered<ConvenientTestManagerClient>()) {
    myGetIt.unregister<ConvenientTestManagerClient>();
  }

Closing. Complete PEBCAK.
The issue was so obvious it's painful. In the sample code I sent:
  Future<void> appMain(AppMainExecuteMode mode) async => main();

I originally imported the file which had the app's main method.
Then I created the sample above - which also had a main method...
The next time I saved - it removed the import with the app's main method and now appMain was pointing to the test's main 🤦 .

No worries, everyone have PEBCAK mistakes once in a while :)


DO-NOT-MERGE: getting baseline load test run to examine workqueue metrics

to compare with https://github.com/redhat-appstudio/infra-deployments/pull/2177

low with current settings as well compared to pr #2177
        "tekton_tekton_pipelines_controller_workqueue_depth": {
            "iqr": 0.0,
            "max": 5.0,
            "mean": 0.021333333333333333,
            "median": 0.0,
            "min": 0.0,
            "non_zero_mean": 2.0,
            "non_zero_median": 1.5,
            "percentile25": 0.0,
            "percentile75": 0.0,
            "percentile90": 0.0,
            "percentile99": 0.7599999999999909,
            "percentile999": 3.8760000000002037,
            "range": 5.0,
            "samples": 1125,
            "stdev": 0.24503612922655818,
            "sum": 24.0
        }

will do another run or two but it is looking like changing the settings minimally does not benefit CI


Error sequencing class events when a superclass is removed: the addition of the superclass is not present

If we create a superclass/subclass, change the superclass to another one and delete the initial superclass, when sequencing we attempt to create a subclass if the removed superclass.

This has been fixed.


ARROW-12262: [Doc] Enable S3 and Flight in docs build

Also use Ubuntu 20.04 by default, instead of 18.04.

The Python Flight API docs still fail generating because of:
# python
Python 3.8.5 (default, Jan 27 2021, 15:41:15)
[GCC 9.3.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import pyarrow
>>> import pyarrow.flight
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/usr/local/lib/python3.8/dist-packages/pyarrow/flight.py", line 18, in <module>
    from pyarrow._flight import (  # noqa:F401
ImportError: /usr/local/lib/libarrow_flight.so.400: undefined symbol: _ZN4absl14lts_2020_09_2319str_format_internal13FormatArgImpl8DispatchINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEbNS2_4DataENS1_24FormatConversionSpecImplEPv
>>>

# c++filt _ZN4absl14lts_2020_09_2319str_format_internal13FormatArgImpl8DispatchINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEbNS2_4DataENS1_24FormatConversionSpecImplEPv
bool absl::lts_2020_09_23::str_format_internal::FormatArgImpl::Dispatch<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >(absl::lts_2020_09_23::str_format_internal::FormatArgImpl::Data, absl::lts_2020_09_23::str_format_internal::FormatConversionSpecImpl, void*)

For the C++ and Python side at least, it would be easier to use a Conda-based build... but I don't know how that would work for R :-/

I wonder if we can use Ubuntu's libgrpc++-dev package instead of building from source. As a bonus, the build would be faster...

I wonder if we can use Ubuntu's libgrpc++-dev package instead of building from source. As a bonus, the build would be faster...

You could try it by adding libgrpc to the ubuntu-20.04-cpp.dockerfile

Ok, it doesn't seem to work:

we need a more recent libprotobuf than 20.04 provides
our CMake build can't find Ubuntu's gRPC or c-ares libraries anyway :-/

Our packages for Ubuntu 20.10 use system gRPC.

That seems to work. However, c-ares still needs to be built from source. Is there a reason for that? I see that the Flight library links to the system c-ares...
# ldd /usr/local/lib/libarrow_flight.so.400.0.0 | grep ares
	libcares.so.2 => /lib/x86_64-linux-gnu/libcares.so.2 (0x00007f3d253bb000)

Ah, it's a bug of our CMake script.
We need to find system c-ares by pkg-config too.
Do you want me to create a patch for it?

That would be nice, yes :-)

OK. I'll work on it.

@github-actions crossbow submit test-ubuntu-20.10-docs

@github-actions crossbow submit test-ubuntu-20.10-docs

@github-actions crossbow submit test-ubuntu-20.10-docs

@github-actions crossbow submit test-ubuntu-20.10-docs

c-ares improvement: #9977

@github-actions crossbow submit test-ubuntu-20.10-docs

Crossbow failed unrelatedly in the Java build :-/

@github-actions crossbow submit test-ubuntu-20.10-docs

Ok, I don't think the Java failures should block this PR (we may also disable building the Java docs if that's required to upload the 4.0.0 docs). Will merge.


Moving running to the left panel

Looks and works well for me. I'll let @ellisonbg do the actual merge since he is masterminding a bunch of UI changes.

Great, merging!