Synthetic monitoring

We are currently only getting network timings and not frontend timings that will include DOM parsing, rending etc. I wonder if we can script a headeless browser like puppeteer and run a couple accompanied with the load test?

sure.. what's stopping you?

I was looking for common agreement, I'll get on to it.

do you mean something in your own tests to do this?  or you want to add this to locust codebase?  I don't think the latter would make sense

Why would you use locust for synthetic monitoring?
Puppeteer and some sort of scheduled run is way more appropriate.

Wouldn't we want network and front-end figures to appear in one place?

No interest


Raspberry Pi 2 FBO's must be POT.

If they're NPOT, you get the error "incomplete attachment (36054)". We should add this to the documentation.
Running on Raspbian OS.
Run the fbowidget.py to reproduce.

Doesn't seem right that an issue is closed due to inactivity so I'm commenting.

That's weird. There is others issues related to this error message, so at least this is a lead. But others use screenmanager with fbo-based transition, and they are not POT. So i wonder if this is a matter of GL driver version on the PI?
Do you remember/have log about which driver version is used on the RPI you got the message?

For those not in the know (like me 30 seconds ago)
FBO = Framebuffer Object
POT = Power Of Two

@Julian-O , this is likely linked to the rpi_egl window provider (which will be removed soon), but we can't double check-it as the original author did not reply to tito request for clarifications.
Unless someone can add some additional info, better to add the awaiting-reply tag.

@kujukuju: We need further information about this issue, or we will need to close it, because it is likely a deprecated component that is no longer supported and we can't fix it.
Please provide some lots, and which driver version you used.


feat: deno task ok

I decided to try an idea I just came up with. Reviews and opinions from all are welcome.
The benefit of this task is that it provides a holistic check that a contributor can use before submitting a PR. The trade-off is that the contributor loses some visibility into which sub-task causes failure when a failure occurs.
This change also includes some other documentation improvements.

if this is an established pattern in the OSS community then i'm for it!! anything that makes getting started/contributing as easy as possible is +1

I see the benefit of this command. I'm in favor.

if this is an established pattern in the OSS community

I sometimes see this pattern especially in small to middle sized project (ex. chalk https://github.com/chalk/chalk/blob/a370f468a43999e4397094ff5c3d17aadcc4860e/package.json#L23 ).


Implement Automated Code Formatting and Linting-[Code Quality Enhancement]

Maintaining consistent code quality across GG Extensions projects is crucial for readability, maintainability, and collaboration. This issue proposes the implementation of automated code formatting and linting to ensure adherence to coding standards and best practices.
Proposed Solution:
Integrate automated code formatting and linting tools into the development workflow of GG Extensions projects. This involves setting up and configuring tools such as Prettier for code formatting and ESLint for code linting, along with any project-specific rules or configurations.
Approach:

Tool Selection: Research and select appropriate code formatting and linting tools based on compatibility with the project's technology stack and community preferences.
Configuration: Configure the selected tools to enforce coding standards, style guidelines, and best practices relevant to GG Extensions projects.
Integration: Integrate code formatting and linting tools into the project's build process or development environment to ensure automatic execution on code changes.
Customization: Customize tool configurations as needed to accommodate project-specific requirements and preferences, such as ignoring certain files or directories.
Testing: Test the automated code formatting and linting process on sample code snippets or test cases to verify correctness and effectiveness.
Documentation: Update project documentation to include information about the implemented code formatting and linting tools, along with instructions for contributors on how to use and configure them.
Continuous Integration: Set up continuous integration (CI) pipelines to run code formatting and linting checks automatically on pull requests and commits, providing immediate feedback to contributors.
8.Community Adoption: Encourage and educate contributors on the benefits of automated code formatting and linting, fostering a culture of code quality and consistency within the GG Extensions community.

By implementing automated code formatting and linting, GG Extensions projects will benefit from improved code quality, consistency, and collaboration, leading to a more efficient and enjoyable development experience for contributors and users alike.
As I'm a GSSOC' 24 Contributor, please assign this to me.

This is an extensions repository. Kindly reopen new Issues

thank you for information


Needs tests

Re-occuring issues as https://github.com/chrispahm/chartjs-plugin-dragdata/issues/39 show that this plugin is in need of some well defined tests.
The tests should cover

dragging on all types of charts is working
dragging on stacked charts is working
dragging to 0 is working
the callbacks are provided with the correct function arguments
rounding of values is working correct
dragData: false within a dataset is working as expected
touch device support

Did I forget something? I will try my best to review open PRs, and get started with writing these tests in the coming weeks. However, help would be greatly appreciated!

Since the tests introduced in #132, #97, #120, #140 and the coverage level reported in codecov is $\approx 90\%$, this issue can
now be closed 🎉


Validation errors thrown when using async/href loading of templates

Hi,
I love Twig.js and have been working for a while now succesfully with it. However, I'm getting these validation errors now in my Firefox error console after loading templates using href/async. My app runs fine however, but still I would like to fix these errors. They are for example:
Error: junk after document element
Error: mismatched tag. Expected: </expected tag>
Error: no element found
All errors are followed by a reference to the .twig template loaded, the line number and a snippet of the template.
The errors look like some kind of XML parsing error, but I'm guessing that XML parsing/validating at that point is not really necessary as it is to be processed by Twig.js. I know the templates won't validate because of the {{ }} and {% %} tags in them.
Any suggestions on how to fix this, except for enclosing templates in script tags?
I'm using Firefox 22.0 for development, with Firebug 1.11.4, Web developer 1.2.5 add-ons. HTML5 is used on the web app I'm using.
Regards,
Eric

No update in 30 days, closing.

I didn't know how to set the content-type in the request because that request is done inside twig engine, so I renamed template files, so instead "template.twig" would be "template.twig.html", the extension wouldn't be unknown and the XHR would use default content-type for that extension.


Not support Vast 3.0

Continuation #124
After fix #124  Vast can't playing: http://site.teasernet.com/fluidnew2.html
(version 2.2.0)
Example Vast Teasernet http://site.teasernet.com/lila/vast3.xml
The player does not launch it
Example http://site.teasernet.com/fluidnew2.html
Our partners can not start working with fluid and teasernet vast

Hi @JuliaTeasernet, we're going to look into this and hope to have a fix soon.

kristijanexads wrote:
... it seems that there is a similar problem as before, trimming whitespaces between CDATA solved previous issue, but we will have to apply the same on XML nodes around CDATA...

@cian-exads we try make without trimming whitespaces
vast http://site.teasernet.com/vast3.xml (without whitespaces )
player http://site.teasernet.com/fluidnew3.html
Does not work

Hi @JuliaTeasernet, we have just released version 2.2.1 of Fluid Player, which contains the fix for your issue. I've checked http://site.teasernet.com/fluidnew3.html and http://site.teasernet.com/fluidnew2.html and got VAST ads on both. Closing this issue.


SM3 hash is incorrect for inputs of a certain size

Example
Input:
ff27186ddc9b5f29a9c928583472f113c860b4781b24ea63852f211e48829fb7f93c8540e79aa3487f9789ddb0348e1a9090838f44d77fe7
Output:
F46E545D5B0D71AA45AC1790DFAD39DECE6AF7C22F966A361A35FEFAB5371E74
Info
I have tested 3 other implementations and, given the above input, they produce:
D649A9CF8544E0B7FD8DB124C1E85CBD934D66D6660F8EC6F45D571B5146597A
It seems that all inputs of lengths between 56-63 bytes consistently produce a hash that does not match up with other implementations, so I suspect this implementation has a bug.
The other implementations I tested were:

https://github.com/guanzhi/GmSSL
https://github.com/siddontang/pygmcrypto
https://github.com/SmartXiaoMing001/Chinese-Cipher-Of-SM2-SM3-SM4

sorry for the late reply.
I have already confirmed that this is an implementation mistake in padding process. Due to this implementation mistake, the output will not be correct when the input length is from (64-8) to 63 bytes.
When I have time, I will fix this mistake.


Run rtx CI for each PR and push

Resolves #37

Tested with local, the behavior looks weird. I have reported as https://github.com/jdxcode/rtx/issues/285

(Maybe) Looks worked! 🎉


Question: is "LocalDate.hashCode" implementation unique?

I need to know this in order to use it for identification of items. Each item has a different LocalDate (of a different day) than the other, and I need an integer/long that identifies the LocalDate uniquely.

No, not unique. You need a long to make it unique.

How can I do it?
Will just converting the code of what's in hashCode into long be enough?

ok wrote about it somewhere else


Fix db_span function of _dbapi2

Hi @yurishkuro,
For Python 3, passing sql_statement in the form of bytes to the db_span function of _dbapi2 module leads to raising of a TypeError.
This fix adds safe decoding when it's necessary.

Coverage increased (+0.04%) to 87.801% when pulling b7ddc033b6ca5029770c6a61d34a646f35413073 on Jamim:fix/dbapi2 into 59bd9205109aef850b6d5478e2d309e7a8570898 on uber-common:master.


[2704] Add scholarship option to bursary form

Context
https://trello.com/c/jmBMGGwt/2704-m-add-scholarship-option-to-bursary-form
Changes proposed in this pull request

Refactored BursaryForm to change from boolean to funding_type.
Updated component to show scholarship

Guidance to review

Choose Provider-led (postgrad) route and Chemistry. Go to funding section.

 [M] Add scholarship option to bursary form


Option 3. Build via Docker

Option 3. Build via Docker
DOCKER_BUILDKIT=1 docker build -t triton_trt_llm -f dockerfile/Dockerfile.trt_llm_backend .

This feels like it's a problem with my machine environment ？
There's another question. When will Triton 23.10 be released.

What's the reason for this? I'm stuck here again.

If you encounter this problem, execute  ‘docker system prune’
Come back
wish you good luck


Websocket issue: Huge Amount of Data not Received

hi
i create a websocket client and try to read file as bytearray (file size > 2 mega), so when i send this bytearray, in server side (javalin websocket) and with handler onMessageBinay and also onMessage nothing recieved !!
so whats the max size of data can recieved ?

Could you share your code, so we can take a look at it and try to reproduce your issue? If you'd reach the message limit size on Jetty's side, it would probably report the 1009 close code  (MESSAGE_TOO_LARGE)

Since this is a question (and not a bug or feature request), I will close the issue, but feel free to keep posting.


Add support for details in messages from the server

Public-Facing Changes
Adds an optional field to status messages from the server
Description
Websocket servers can send status messages to the client where they will show up as problems, but they will always have a subtext of 'no details provided' because there is no way to supply details or 'tips' to the client despite the client having facilities to support it (in Problem)
It would be nice to add a (maybe non-spec) optional field to the status message that will allow the client the possibility to display tips if the client supports tips, and otherwise be ignored

My understanding is that since the message is json anyways by the spec, the client can just load it into memory as a map and if there is no 'tips' provided then everything proceeds as-is

Thanks for sharing the idea. I don't think we are interested in this feature right now since the user impact is fairly minimal, and usually an error coming from the websocket server would indicate some kind of system problem that should be resolved by making configuration changes, therefore most users of the app wouldn't be needing to see details about these errors. If there is some other motivating example, I didn't see it in your PR description (either this one or the foxglove/studio PR). There is also a simple workaround available because you can put the details in the message string itself. If we were to add this feature it would also need to be mentioned in the spec document and supported in all the different languages that we offer libraries for. I will close this PR since we don't plan to merge in its current form, but if you have more info about the use case to share feel free to discuss here.


Add yolo-v2-tiny-vehicle-detection-0001 model

Jenkins please retry a build

2 @vladimir-dudnik:
Vladimir, please, take a look on this PR.
Please, note that I wrote that the demo object_detection_demo_yolov3_async works with all Yolo V2, Tiny Yolo V2 and Yolo V3 models.
But I have not checked if the demo works with the yolo networks from the AVA team.

@LeonidBeynenson please add AC config too.

2 @eizamaliev :   Added accuracy checker config

It turned out that several my github comments were in pending state. 🙁
Now I sent them and applied all the suggested changes
2 @eizamaliev , @eaidova :
Could you check if everything is OK now? can this PR be merged?


[FEATURE] Specify per-module prefix

Is your feature request related to a problem? Please describe.
Assuming my project has the prefix MY.
Re-using modules from implementations like ADDF is a two step process:

copy over the implementation
replace the prefix (example) to the one used by the current project, ie. replace all ADDF by MY

Describe the solution you'd like
Ideally, I would add that project as a git-submodule (eg. under thirdparty/addf) and refer to it as:
name: task-a
path: thirdparty/addf/modules/core/aws-batch
prefix: addf
parameters:
....

and have seed-farmer substitute the prefix ADDF with the one from the current project (MY) in the passed-over/exported parameters.
Describe alternatives you've considered
Like described above currently, copying code is required with the additional step of renaming the prefix. Having the solution as described via a git-submodule would allow to provide bugfixes upstream (example).

We are exploring a more effective solution to match this request.

see: https://github.com/awslabs/seed-farmer/pull/249

The PR #249 provide in-depth explanations to accommodate this rquest.


FAST - Fixes 498 - 02-networking-nva stage

Folks, I drop here this PR before the weekend. Let's review it together carefully, as it touches important pieces.
FYI:

fixed GCP ASN defaults: it was conflicting with the peer ASN. Moved to 64512 as in networking-vpn
added a table summarizing the subnets in the readme
for subnets conflicts: changes spoke subnet cidr, PSA ranges and l7ILB ranges (ip subnetting here):

the spoke subnets now consume a /20 instead of a /19
for each spoke, the other /20 has been further subnetted, to obtain (also) 3x /24 (more below)
the last /24 of each range is used for the corresponding regional spoke l7ilb subnet
the second-last /24 of each range is used for PSA sql server regional spoke subnet
the third-last /24 of each range is used for PSA mysql server regional spoke subnet

Closes #498

Hey Luca, variable custom_adv doesn't list subnets, but aggregate ranges as they should be routed/advertised, meaning you should carve your ip space from that range.
So, using gcp_dev_ew1="<IP_ADDRESS>/20" as an example:

dev-default-ew1 subnet should be a /24
var.l7ilb_subnets.dev should use the third to last available /24 for ew1 (i.e. { ip_cidr_range = "<IP_ADDRESS>/24", region = "europe-west1" })
var.psa_ranges.dev should use the second to last and last available /24 for ew1

    dev = {
      cloudsql-mysql-ew1     = "<IP_ADDRESS>/24"
      cloudsql-sqlserver-ew1 = "<IP_ADDRESS>/24"
#[...]
    }

LMK if it makes sense.

Simo, makes sense. Good catch!
Why at this point we don’t simply advertise the whole /19 aggregate (which
is indeed dedicated to each “regional spoke”?
Il giorno ven 4 feb 2022 alle 18:18 Simone Ruffilli <
@.***> ha scritto:

Hey Luca, variable custom_adv doesn't list subnets, but aggregate ranges
as they should be routed/advertised, meaning you should carve your ip space
from that range.
So, using gcp_dev_ew1="<IP_ADDRESS>/20" as an example:

dev-default-ew1 subnet should be a /24
var.l7ilb_subnets.dev should use the third to last available /24 for
ew1 (i.e. { ip_cidr_range = "<IP_ADDRESS>/24", region = "europe-west1"
})
var.psa_ranges.dev should use the second to last and last available
/24 for ew1

dev = {
  cloudsql-mysql-ew1     = "<IP_ADDRESS>/24"
  cloudsql-sqlserver-ew1 = "<IP_ADDRESS>/24"

#[...]
}
LMK if it makes sense.
—
Reply to this email directly, view it on GitHub
https://github.com/GoogleCloudPlatform/cloud-foundation-fabric/pull/501#issuecomment-1030189812,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AARY7UG76J4IRHUGBYX32Q3UZQC5DANCNFSM5NSFYMLQ
.
Triage notifications on the go with GitHub Mobile for iOS
https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675
or Android
https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.
You are receiving this because you were assigned.Message ID:
@.***
com>

Simo, makes sense. Good catch! Why at this point we don’t simply advertise the whole /19 aggregate (which is indeed dedicated to each “regional spoke”?

Yep, that's the idea.

I made the changes requested.
We need to be aware that this way we'll be advertising to on-prem the l7ilb subnets as well, which won't hurt, but it's probably not what we (/users?) would like to do.
Should we use a completely different subnet for different the l7ilb subnets, so we won't announce them?

I don't think you've pushed what you think you've pushed :)
Also, please enjoy your weekend!

LGTM modulo the required rebase and the tiny update in the README


In particular, the "flush the allocation unit" logic is only valid for
ms_structs (that is, MSVC).
It's slightly annoying to have this different behavior, but it'd work just fine
if we'd turn that on for MSVC.
This patch doesn't do that, yet at least, and adds tests for all the weird
bitfield alignments around.
Fixes #726 (and another set of hidden issues by the old code).

 Warning

These commits modify unsafe code. Please review it carefully!

r? @fitzgen

(Probably needs some test updates for libclang <4.0)

(Probably needs some test updates for libclang <4.0)

Or not, yay!

@bors-servo r=fitzgen

:pushpin: Commit 10106aa has been approved by fitzgen

:hourglass: Testing commit 10106aa8a40f36477fdc9cd034d9a2eec2698318 with merge c0389c3c7a77187c36ebeffc63bc5e6e43a0d11a...

:sunny: Test successful - status-travis
Approved by: fitzgen
Pushing c0389c3c7a77187c36ebeffc63bc5e6e43a0d11a to master...


Jest does not hoist mock declarations inside for-loops

🐛 Bug Report
When you have jest.mock calls inside for loop, they do not hoist, like they usually do at the top level.
To Reproduce
Consider this code example
import foo from "../foo";
import bar from "../bar";

// this does not work
for (const moduleName of ["foo", "bar"]) {
  jest.mock(`../${moduleName}`, () => "mock");
}

// this works, but not ideal when you have 10+ such modules
// jest.mock(`../foo`, () => "mock");
// jest.mock(`../bar`, () => "mock");

test("should mock", () => {
  expect(foo).toEqual("mock");
  expect(bar).toEqual("mock");
});

Expected behavior
Mocks inside for loop will work too. This would be helpful when you have multiple modules you want to mock with the same value.
Link to repl or repo (highly encouraged)
https://github.com/just-boris/jest-mock-loop
envinfo
  System:
    OS: macOS 10.15.7
    CPU: (12) x64 Intel(R) Core(TM) i7-9750H CPU @ 2.60GHz
  Binaries:
    Node: 15.8.0 - ~/n/bin/node
    npm: 7.5.1 - ~/n/bin/npm
  npmPackages:
    jest: ^26.6.3 => 26.6.3

Currently I found a workaround by extracting mocks into a separate file:
// do-mocks.js
for (const moduleName of ["foo", "bar"]) {
  jest.mock(`../${moduleName}`, () => "mock");
}

// test.js
import './do-mocks.js'
import foo from "../foo";
import bar from "../bar";

However, Jest documentation does not recommend this:

Note: In order to mock properly, Jest needs jest.mock('moduleName') to be in the same scope as the require/import statement.

As a workaround, I used jest.isolateModules in combination with jest.doMock and require syntax. Here is an example of testing a react-native component (in my case I want to avoid render of the components used inside of my TestComponent):
import React from 'react';
import { render } from '@testing-library/react-native';

const mockComponents = () => {
  const COMPONENTS_TO_MOCK = [
    { componentName: 'Component1', path: '../components/Component1' },
    { componentName: 'Component2', path:  '../components/Component2' },
    { componentName: 'Component3', path:  '../components/Component3' },
  ];

  COMPONENTS_TO_MOCK.forEach(mockComponent => {
    jest.doMock(mockComponent.path, () => {
      return { [mockComponent.componentName]: () => null };
    });
  });
};

describe('Test', () => {
  jest.isolateModules(() => {
    mockComponents();
    const { TestComponent } = require('.');
    render(<TestComponent />);
  });
});

Here is a working example for your code:
const mockStuff = () => {
  for (const moduleName of ['foo', 'bar']) {
    jest.doMock(`../${moduleName}`, () => 'mock');
  }
};

test('should mock', () => {
  jest.isolateModules(() => {
    mockStuff();
    const foo = require('../foo');
    const bar = require('../bar');

    expect(foo).toEqual('mock');
    expect(bar).toEqual('mock');
  });
});

Unfortunately, isolateModules has its limitations (I think it doesn't work with async/await atm), and it's more verbose...


[FLINK-29590][hive] fix literal issue in Hive dialect

What is the purpose of the change
To fix the thrown excpetion with literal in Hive dialect.
1: some folded constant like Double.NAN and no-primitive type  can't be convert into calcite literal
2: for divide function, if one parameter is decimal type and the other is int/long type literal, the exception of Mismatch of expected output data type 'DECIMAL(xx)' and function's output type 'DECIMAL(xx)' will be thrown.
Brief change log

Skip fold constant if the folded constant can't be converted into calcite literal.
If it's divide function, and one parameter is decimal type and the other is int/long type literal, force make the expected output data type to be consistent to infered output type by making the two logic consistent.

Verifying this change
Add test in HiveDialectQueryITCase#testLiteral
Does this pull request potentially affect one of the following parts:

Dependencies (does it add or upgrade a dependency): (yes / no)
The public API, i.e., is any changed class annotated with @Public(Evolving): (yes / no)
The serializers: (yes / no / don't know)
The runtime per-record code paths (performance sensitive): (yes / no / don't know)
Anything that affects deployment or recovery: JobManager (and its components), Checkpointing, Kubernetes/Yarn, ZooKeeper: (yes / no / don't know)
The S3 file system connector: (yes / no / don't know)

Documentation

Does this pull request introduce a new feature? (yes / no)
If yes, how is the feature documented? (not applicable / docs / JavaDocs / not documented)

@lsyldliu Thanks for reviewing. I have addressed your commens.

@flinkbot run azure

@wuchong Could you please help merge?


search button styling weird on ie 11

Yeah... ie is the....

IE try his/her best to align with W3C specs but some browsers are tried to be smart...

On inherited properties, the initial value may be surprising and you should consider using the inherit, unset, or revert keywords instead.
https://developer.mozilla.org/en-US/docs/Web/CSS/initial#Browser_compatibility

i fixed it and send a pull request. Thanks @ahmedre

#404

@ahmedre  close this issue.

jazakAllah khair bro


[FLINK-5750] Incorrect parse of brackets inside VALUES subquery

What is the purpose of the change
This pull request adds supporting multiple inputs in DataSetUnionRule
Brief change log

DataSetUnionRule should consider all inputs instead of only the 1st and 2nd

Verifying this change
This change added the following test:
- Added unit test testValuesWithCast that validates VALUES operator with values which have to to be casted. This query will be transform to UNION of VALUES in plan optimizer since values arguments are not literal value
Does this pull request potentially affect one of the following parts:

Dependencies (does it add or upgrade a dependency): (yes / no)
The public API, i.e., is any changed class annotated with @Public(Evolving): (yes / no)
The serializers: (yes / no / don't know)
The runtime per-record code paths (performance sensitive): (yes / no / don't know)
Anything that affects deployment or recovery: JobManager (and its components), Checkpointing, Yarn/Mesos, ZooKeeper: (yes / no / don't know)
The S3 file system connector: (yes / no / don't know)

Documentation

Does this pull request introduce a new feature? (yes / no)
If yes, how is the feature documented? (not applicable / docs / JavaDocs / not documented)

@AlexanderKoltsov Hi, thanks for looking into this problem. The PR looks good. I agree with @fhueske that DataStreamUnion  should be fixed in this PR. Furthermore, I find DataSetMinus and DataSetIntersect have the same problem. It would be great if you can open a new jira to track the problem.

Seems that during push I worked wrong with commits. Sorry!
Please review these changes in https://github.com/apache/flink/pull/6287

About another operators(DataSetMinus and DataSetIntersect): tickets will be created.


[ImgBot] optimizes images

Hey there. I've just optimized all of your images. They are the same dimensions and quality as before, only they take up less space now.
\images\white-smiling-face_263a.png (1.18%)
\images\blue-mail-icon-300x300.png (8.06%)

I ended up using http://tinypng.com to compress all my images, but thank you for the idea.


How to create queues?

How to create queues?

@tcfialho
You can use any SDK to create queue in Azurite.
Please follow ReadMe for how to start Azurite and how to set storage credential.
Do you meet any error when create queue?

Azurite is a Azure Storage emulator, you can use most of the ways of creating Azure Storage queue against Azurite. Like SDK mentioned, like tools, such as Storage Explorer which supports Azurite as well.


DPoP: Resource-Server provided Nonce

Introduces support for Resource-Server provided Nonce values for DPoP to pid-issuer.
More specifically:

Introduces DPoPNonce which is bound to a DPoPAccessToken
Updates DPoPTokenReactiveAuthenticationManager so that it also considers any active DPoPNonce values for the DPoPAccessToken of the user that tries to authenticate
Updates DPoPTokenServerAuthenticationEntryPoint to be able to inform the client of authentication failures due to DPoP Nonce mismatch, using use_dpop_nonce errors (also configures DPoPTokenServerAuthenticationEntryPoint as an AuthenticationFailureHandler in the AuthenticationWebFilter created for DPoP)
Introduces DPoPNonceWebFilter to send to clients refreshed DPoPNonce values whenever the previous ones expire
Adds issuer.dpop.nonce.enabled configuration property, to control whether DPoP Nonce is required or not

Closes #231

@babisRoutis Could you please check this?


fix: cannot import text_unidecode, nemo-toolkit

Describe your changes
Currently when Task tracing was turned on for a customer's modal.App the Task failed on startup due to errors in importlib machinery which do not occur normally.
I could workaround https://github.com/pypa/setuptools/issues/4487 by doing setuptools==70.3.0 but then hit other issues. Those other issues are fixed by the changeset here.
There's almost certainly more to understand about how an intercepting Loader should work but I think this change shouldn't introduce regressions.

Check these boxes or delete any item (or this section) if not relevant for this PR.

[x] Client+Server: this change is compatible with old servers

only an internal telemetry change

[x] Client forward compatibility: this change ensures client can accept data intended for later versions of itself

only an internal telemetry change

Are there any other methods in the Loader interface we need to implement?

This is somewhat answered by

There's almost certainly more to understand about how an intercepting Loader should work but I think this change shouldn't introduce regressions.

I would bet that there is, but understanding what needs to be implemented is a matter of grokking a graph of like a dozen abstract base classes that comprises the importlib system.


end of night script doesn't support large file numbers

I have an ASI290MM and shoot with these settings
Dec 13 12:55:02 allsky allsky.sh[26948]: ZWO ASI290MM Information:
Dec 13 12:55:02 allsky allsky.sh[26948]:   - Native Resolution: 1936x1096
Dec 13 12:55:02 allsky allsky.sh[26948]:   - Pixel Size: 2.9microns
Dec 13 12:55:02 allsky allsky.sh[26948]:   - Supported Bins: 1 2
Dec 13 12:55:02 allsky allsky.sh[26948]:   - Mono camera
Dec 13 12:55:02 allsky allsky.sh[26948]: Camera does not support serialNumber
Dec 13 12:55:02 allsky allsky.sh[26948]: - Sensor temperature: 41.10
Dec 13 12:55:02 allsky allsky.sh[26948]: Capture Settings:
Dec 13 12:55:02 allsky allsky.sh[26948]:  Image Type: ASI_IMG_RAW8
Dec 13 12:55:02 allsky allsky.sh[26948]:  Resolution (before any binning): 1936x1096
Dec 13 12:55:02 allsky allsky.sh[26948]:  Quality: 95
Dec 13 12:55:02 allsky allsky.sh[26948]:  Daytime capture: Yes
Dec 13 12:55:02 allsky allsky.sh[26948]:  Exposure (day): 0.500ms, Auto: Yes
Dec 13 12:55:02 allsky allsky.sh[26948]:  Exposure (night): 1,000ms, Auto: Yes
Dec 13 12:55:02 allsky allsky.sh[26948]:  Max Auto-Exposure (day): 60,000ms (60.0s)
Dec 13 12:55:02 allsky allsky.sh[26948]:  Max Auto-Exposure (night): 4,000ms (4.0s)
Dec 13 12:55:02 allsky allsky.sh[26948]:  Delay (day): 5,000ms
Dec 13 12:55:02 allsky allsky.sh[26948]:  Delay (night): 100ms
Dec 13 12:55:02 allsky allsky.sh[26948]:  Gain (night only): 250, Auto: No, max: 200
Dec 13 12:55:02 allsky allsky.sh[26948]:  Gain Transition Time: 15.0 minutes
Dec 13 12:55:02 allsky allsky.sh[26948]:  Brightness (day): 50
Dec 13 12:55:02 allsky allsky.sh[26948]:  Brightness (night): 50

Nearing the Northern Hemisphere's winter solstice, with long nights I get this many files:

allsky:~/allsky/images/20211211 $ ls -1 | wc -l
12335

In most cases the keogram and startrails are working well, but the timelapse does not produce a video.
In trying to clean them up with...
 /home/pi/allsky/scripts/removeBadImages.sh  .
it throws this error:
/home/pi/allsky/scripts/removeBadImages.sh: line 93: /usr/bin/which: Argument list too long
/home/pi/allsky/scripts/removeBadImages.sh: line 131: /usr/bin/egrep: Argument list too long
/home/pi/allsky/scripts/removeBadImages.sh: line 139: /usr/bin/bc: Argument list too long
/home/pi/allsky/scripts/removeBadImages.sh: line 143: /usr/bin/bc: Argument list too long
/home/pi/allsky/scripts/removeBadImages.sh: line 144: [: -eq: unary operator expected
/home/pi/allsky/scripts/removeBadImages.sh: line 153: /usr/bin/bc: Argument list too long

So I have 2 issues in one.

The timelapse NEVER generates a result over the past 6 nights
My inability to clean up any bad images via the included script.

Hi @maphilli14
We can certainly fix the high image count issues in removeBadImages.sh and the timelapse generation.  However, I suspect there's a mix-up in your config that is causing the high file counts...
Dec 13 12:55:02 allsky allsky.sh[26948]:  Max Auto-Exposure (day): 60,000ms (60.0s)
Dec 13 12:55:02 allsky allsky.sh[26948]:  Max Auto-Exposure (night): 4,000ms (4.0s)

Max auto-exposure:
DAY - 60s
NIGHT - 4s
With these settings, I'm surprised if you're not getting only the very brightest stars in your night exposures.  Is this intentional?

I was poking around a few nights back and am getting down to Mag 7+ even with a gibbous moon nearby!  That camera is super sensitive, especially with the 150degree lens on it!  I have the daytime set at default but it never goes that high, typically the daytime is in microSeconds in duration with no gain.  Typical nighttime are 4seconds and 250gain which gets me well past visual star limiting magnitude.  I'll pull a sample later to show you.

let me know how this comes across...

@linuxkidd could you please take a look at removeBadImages.sh on lines 93 and 139 and let me know why you think they are producing the error message?  They aren't even using the argument list.
@maphilli14 when I am back from vacation in a week I will fix removeBadImages.sh to work with any number of images.  I only take about 2000 a day so have never seen this problem.
A future enhancement will be to run it for every image as it is being processed rather than once a day for all images.
In the meantime you may want to increase your exposure time and decrease gain to decrease the graininess of your images.  For example, 8 sec exposure and 125 gain.
What do your log files say regarding the timelapse not working?

Hi,
I would have the problem elsewhere.
Increasing the ulimit helped.
ulimit -s 65535
or
ulimit -s 131071
Set this parameter at the begin in the shell command file.

for use of the scripts running at startup would you need to set this as some env var or where would you include?  Thanks @jimjackii
I have an older copy of allsky that creates the symlinks and I'm running it on a WSL in Win10's Ubuntu shell after scp'ing the files across the network.  Will see if that gets me a full mp4 or not!

yah, that didn't work, it removed all of them....

removeBadImages.sh: Removed './image-20211216004023.jpg' (bad threshold: MEAN=32)
removeBadImages.sh: Removed './image-20211216012113.jpg' (bad threshold: MEAN=41)
removeBadImages.sh: Removed './image-20211215180128.jpg' (bad threshold: MEAN=39)
removeBadImages.sh: Removed './image-20211215200035.jpg' (bad threshold: MEAN=37)
removeBadImages.sh: Removed './image-20211216005831.jpg' (bad threshold: MEAN=37)
removeBadImages.sh: 13115 bad file(s) found and removed.

@maphilli14 what are your values for REMOVE_BAD_IMAGES_THRESHOLD_LOW and REMOVE_BAD_IMAGES_THRESHOLD_HIGH in config.sh?
Can you attach one of the files it removed so I can try?

@maphhilli14
I set the parameter "ulimit" at the begin of my shell script like this
#!/bin/sh
--------------------------------------------------------------
ulimit -s 65535

srcipt begin
#...
srcipt end

exit 0

@jimjackii - Is end of night a sufficient place to put it?

Can you attach one of the files it removed so I can try?

I'm not sure I want to mix old and new versions across different platforms.  Let me try another set and get back with you.

@jimjackii - Is end of night a sufficient place to put it?

@maphilli14
I've set this parameter in every file that has a large number of files being edited.

@maphilli14 the Allsky scripts use some bash-specific commands like "source" so won't work with sh.
How many images are in 20211209.new?

Setting a higher ulimit likely won't fix this as it's not stack-related.  I just submitted a simple fix.

@maphilli14, @jimjackii, please grab the latest scripts/removeBadImages.sh and let me know how it goes.  It fixed the problem on my test machine.
@maphilli14, What do your log files say regarding the timelapse not working?

pi@allsky:~/allsky/images/20211209.new $ ls -1 | wc -l
13114

and it does seem to be at least running now, thanks!  Any other changes to running for each image save?

Fixes to the removebadimages worked great!  The genforday did not result in a proper timelapse....
ln -s /home/pi/allsky/images/20211209.new/image-20211210063956.jpg /home/pi/allsky/tmp/sequence-20211209.new/12758.jpg
ln -s /home/pi/allsky/images/20211209.new/image-20211210064000.jpg /home/pi/allsky/tmp/sequence-20211209.new/12759.jpg
ln -s /home/pi/allsky/images/20211209.new/image-20211210064008.jpg /home/pi/allsky/tmp/sequence-20211209.new/12760.jpg
pi@allsky:~/allsky/images/20211209.new $ cat /home/pi/allsky/tmp/timelapseTMP.txt | grep err
pi@allsky:~/allsky/images/20211209.new $ cat /home/pi/allsky/tmp/timelapseTMP.txt | grep ERR
pi@allsky:~/allsky/images/20211209.new $
pi@allsky:~/allsky/images/20211209.new $ less /home/pi/allsky/tmp/timelapseTMP.txt
pi@allsky:~/allsky/images/20211209.new $ /home/pi/allsky/scripts/generateForDay.sh t 20211209.new

================
If you want to upload the file(s) you just created, execute 'uploadForDay.sh  20211209.new'
================
pi@allsky:~/allsky/images/20211209.new $ /home/pi/allsky/scripts/generateForDay.sh -t 20211209.new
===== Generating Timelapse
/home/pi/allsky/scripts/timelapse.sh: line 128: 24965 Killed                  ffmpeg -y -f image2 -loglevel ${FFLOG} -r ${FPS} -i "${SEQUENCE_DIR}/%04d.${EXTENSION}" -vcodec ${VCODEC} -b:v ${TIMELAPSE_BITRATE} -pix_fmt ${PIX_FMT} -movflags +faststart $SCALE ${TIMELAPSE_EXTRA_PARAMETERS} ${TIMELAPSE_PARAMETERS} "${OUTPUT_FILE}" >> "${TMP}" 2>&1

*** : ERROR: ffmpeg failed.
Error log is in '/home/pi/allsky/tmp/timelapseTMP.txt'.

Links in '/home/pi/allsky/tmp/sequence-20211209.new' left for debugging.
Remove them when the problem is fixed.
[timelapseTMP.txt](https://github.com/thomasjacquin/allsky/files/7764863/timelapseTMP.txt)

Command Failed: '/home/pi/allsky/scripts/timelapse.sh' 20211209.new

================
If you want to upload the file(s) you just created, execute 'uploadForDay.sh  -t 20211209.new'
================
pi@allsky:~/allsky/images/20211209.new $

timelapseTMP.txt

@maphilli14 I'm 99% sure timelapse is failing due to memory or swap being too small. See this Wiki Page.
The ffmpeg command that creates the video does a lousy job with memory.
Let me know if the suggestions on the Wiki page helped.

@EricClaeys  the default swap is 100 and I bumped to max 2048 and yes htop is much better!  wish me luck!


YTDL -- Fresh install on new Project, no URLs work

Hi there, I freshly installed this on a new Unity project with VCC implemented. UdonSharp installed along with all other default packages.
Putting down the player prefab and hitting play, this occurs:
"[USharpVideo YTDL] Unable to find VRC YouTube-dl installation, URLs will not be resolved.
UnityEngine.Debug:LogWarning (object)
UdonSharp.Video.Internal.EditorURLResolverShim:SetupURLResolveCallback () (at Assets/USharpVideo/Scripts/Editor/EditorURLResolverShim.cs:35)"
Trying to add URLs to the playlist further cause errors pointing back to the URL failing.
Any ideas? Thanks!

Addition: Build & Test -- video player works as expected. There's just no way to test in Unity?

You can pull the updated https://github.com/MerlinVR/USharpVideo/blob/master/Assets/USharpVideo/Scripts/Editor/EditorURLResolverShim.cs over the old one and it'll work until there's a new release.


Zero-config library integrations

For example:
// node_modules/some-auth-library/package.json

{
  "name": "some-auth-library",
  "exports": {
    "./hattip": "./dist/hattip.js"
  }
}

// node_modules/some-auth-library/hattip.ts

export default {
  addHattipMiddleware,
}

function addHattipMiddleware() {
  return (ctx) => {
    const response = await ctx.next();
    response.headers.set("Cookie", "auth-secret=...");
    return response;
  }
}

I would even go as far as to have HatTip read all the pacakge.json#exports of all dependencies to see if they contain a HatTip zero-config integration.
So that all the user has to do is to npm install some-auth-library. Zero integration code needed. Works across all JS server platforms.

This idea is kind of growing on me. Do you know anyone else doing this?

I don't think anyone else does this, and I think we should do it :-).

A user today on Discord:

I'm considering using some other language for the backend that has batteries included framework eg Laravel. I feel like there is nothing alike in node ecosystem [...] I'm tired of stitching together packages from various developers and keeping that up to date. All of them have different release cycles too

Speaks volume of how much library zero-config integration is being craved for.

@elderapo Curious: why the downvote?

@brillout, a few things:

I don't believe package.json is the right place for runtime library configurations. It's okay for dev dependencies like prettier, eslint. Why? Because you would need to include it in a production bundle (and why would you want to include a list of packages, and scripts in the production bundle).
I don't like the idea of npm install having side effects on the app in the same directory. For example it makes it impossible to conditionally include some middleware:

import { authMiddleware, loggerMiddleware } from '@elderapo/hattip-middlewares';

if (!process.env.DISABLE_AUTH) {
  app.use(authMiddleware());
}

if (!process.env.DISABLE_LOGGER) {
  app.use(loggerMiddleware());
}

How would you pass configurations to such middleware:

import { loggerMiddleware } from '@elderapo/hattip-middlewares';

app.use(loggerMiddleware({ level: "debug }));

// hattip.config.js

import { auth } from 'awesome-auth/hattip'
import { logger } from 'awesome-logger/hattip'

// HaTip loads `hattip.config.js` before it auto-loads npm packages. It sees that `auth()` and `logger()` are
// already installed and therefore skips auto-loading them.
export default {
  plugins: [
   auth({ strategy: 'one_time_password' }),
   logger({ disable: process.env.DISABLE_LOGGER })
  ]
}

I believe this addresses all your concern.
Thing is, it becomes cumbersome to have to add your tool's plugins to Vite, HatTip and potentially more tools.

I don't see how that is any better than normally applying middlewares. What is wrong with the following code that needs fixing:
// handler.ts

import { compose } from "@hattip/compose";

import { auth } from 'awesome-auth/hattip'
import { logger } from 'awesome-logger/hattip'

export const handler = compose(
  authMiddleware({ strategy: 'one_time_password' }),
  logger({ disable: process.env.DISABLE_LOGGER }),

  ...
);

If it were only about adding one plugin to HatTip, then I'd agree. But it starts to become annoying when installing one tool means to 1. add a plugin to HatTip, 2. add a plugin to Vite, etc.
Reducing the installation step to a single step npm insall awesome-tool makes a non-negligible difference than having a 10-step installation guide. I'm exagerating with 10 steps, but you get the point. Two steps would be fine, I agree, but three steps starts to become enough of a justification for implementing a zero-config mechanism as described in OP.

If it were only about adding one plugin to HatTip, then I'd agree. But it starts to become annoying when installing one tool means to 1. add a plugin to HatTip, 2. add a plugin to Vite, etc.

Hmm... why would custom hattip middleware require plugin to be added to vite? Got some real-world example in mind?

Reducing the installation step to a single step npm insall awesome-tool makes a non-negligible difference than having a 10-step installation guide. I'm exagerating with 10 steps, but you get the point. Two steps would be fine, I agree, but three steps starts to become enough of a justification for implementing a zero-config mechanism as described in OP.

I am not sure this is such a big deal tbh...

Telefunc and vite-plugin-ssr: both need integration with Vite as well as with HatTip.

Closing for now. I'll re-open it in the future when the need for this arises.

I'll re-open it in the future when the need for this arises.

Now relevant for https://github.com/hattipjs/hattip/issues/51.
Basically:
// node_modules/vite-plugin-ssr/package.json

{
  name: "vite-plugin-ssr",
  exports: {
    "./hattip": "./dist/entry-hattip.js"
  }
}

// node_modules/vite-plugin-ssr/dist/entry-hattip.js

export default handler;

import { renderPage } from 'vite-plugin-ssr/server'

async function handler(ctx) {
  const pageContextInit = { urlOriginal: ctx.request.url }
  const pageContext = await renderPage(pageContextInit)
  const { body, statusCode, contentType } = pageContext.httpResponse
  return new Response(body, {
    status: statusCode,
    headers: {
      "Content-Type": contentType
    }
  })
}

This means HatTip seamlessly integrates with the meta framework. No hattip.config.js needed.
To support meta frameworks that don't have a package.json.exports["./hattip"] yet, we can ship the glue code as e.g. @hattip/vite-plugin-ssr.


Issue with output audio to speaker of phone with bluetooth microphone

If your issue is implementing AudioKit in your own code, post your problem to StackOverflow with the #AudioKit hashtag.
GitHub Issues should only be used for confirmed problems with AudioKit and
well-defined feature requests.
Sponsors will get more attention: https://github.com/sponsors/aure
Make sure you know about the common gotcha's outlined in this video:
https://vimeo.com/audiokit/connecting-nodes-part-2
Problems when submitting your app with the framework? First make sure to check your run phases are set up properly, as outlined in this doc:
https://github.com/AudioKit/AudioKit/blob/master/Frameworks/README.md
This is the code to output audio to speaker from bluetooth microphone.
But I can hear from bluetooth headphone.
Unable to hear from speaker of phone
AKSettings.audioInputEnabled = true
AKSettings.useBluetooth = true
AKSettings.defaultToSpeaker = true
AKSettings.enableEchoCancellation = true
    try! AKSettings.setSession(category: .playAndRecord, with: AVAudioSession.CategoryOptions.mixWithOthers)

    mic = AKMicrophone()
    mic.volume = 1.0

    tracker = AKFrequencyTracker(mic)
    silence = AKBooster(tracker, gain: 0)

    micMixer = AKMixer(mic)

    AudioKit.output = micMixer
    do {
        try AudioKit.start()

    } catch {
        AKLog("AudioKit did not start!")
    }

This is not well formed issue. Its more of an implementation, which you can post to stack overflow (which was in the boiler plate text you're supposed to read and erase when making an issue).


refactor(transformer): use AstBuilder instance from TraverseCtx

A small modification of #6173. Closes #6172.

#6209  👈
main

This stack of pull requests is managed by Graphite. Learn more about stacking.

Join @overlookmotel and the rest of your teammates on  Graphite

This is basically #6173 with a few tweaks and rebased on main to solve bug fixes. I've reviewed in full, so I don't think it needs further review. So merging.


feat(paeckchen-core): add progress step to source-map generation

ISSUES CLOSED: #159

Coverage remained the same at 100.0% when pulling 90a3e4af58120adfd6470a162a405ea8e9212d44 on core/source-map-step into a7c025ea9909c159c046b52bb428b2cb5af05084 on master.

Changes Unknown when pulling 618be2b28499f9b819870545427ffce9d9ba70ea on core/source-map-step into ** on master**.


Correct approach for invalidating partial models

Issue
I'm looking for a solution to invalidate cache for certain records and not for the entire model.
Our scenario is the following: We have a Site entity handling thousands of websites using the Site model (and related models). We would like to be able to clear cache for a particular website and not for all the other websites cached with modelCache.
I can't found any instructions for doing this in the modelCache documentation.
How can we achieve this?
Environment
Laravel Version: 8.70.2
Laravel Model Caching Package Version: 0.10.3
PHP Version: 7.4.26
Operating System & Version: macOS 12.0.1

Hi @lgrassini, thanks for writing in. Unfortunately that is not possible with this package, as this package caches the eloquent queries, not the models themselves.

So when we execute artisan modelCache:clear --model=App\SomeModelName what are we clearing? a model or eloquent queries?

@lgrassini that clears all the cached eloquent queries that use that model.


Configurable overrides location

Allow users to specify customer config-overrides.js location

Thanks for this I'll try to review it later this week.

@aarne can you put together a demo repo for this?  Looks good but needs to be tested.

FYI - will publish to NPM next week.


make ros_comm unit tests pass

ROS_ROOT=`pwd` catkin build --catkin-make-args run_tests
catkin_test_results --all | grep -v "Skipping"

Possibly catkin_make run_tests will show results more clearly.
Added github action files for ubuntu 20.04 and 22.04 to ros_comm branches- https://github.com/lucasw/ros_comm/tree/noetic_devel_github_action, https://github.com/lucasw/ros_comm/tree/salsa_noetic_aggregated, and https://github.com/lucasw/ros_comm/tree/zenoh_pub_sub_cpp
current results are seen here (every push):
https://github.com/lucasw/ros_comm/actions
Also make them pass locally on 23.04/23.10
https://github.com/lucasw/ros_one2z/issues/7#issuecomment-1866603192

On 23.04 see an error related to not having ROS_ROOT, set that manually just for the tests
ROS_ROOT=`pwd` catkin build --catkin-make-args run_tests

Run just one set of tests
ROS_ROOT=`pwd` catkin build roslaunch --no-status --catkin-make-args run_tests

catkin_test_results --all build/roslaunch | grep -v "Skipping" | grep error
test_results/roslaunch/nosetests-test.unit.xml: 111 tests, 2 errors, 0 failures, 0 skipped
Summary: 111 tests, 2 errors, 0 failures, 0 skipped

How about run one single test?

Probably missing an install, duplicate this in Docker:
Traceback (most recent call last):
  File "/home/runner/work/ros_comm/ros_comm/install_catkin_ws/build/catkin_tools_prebuild/catkin_generated/generate_cached_setup.py", line 22, in <module>
    code = generate_environment_script('/home/runner/work/ros_comm/ros_comm/install_catkin_ws/devel/.private/catkin_tools_prebuild/env.sh')
  File "/usr/lib/python3/dist-packages/catkin/environment_cache.py", line 63, in generate_environment_script
    env_after = ast.literal_eval(output.decode('utf8'))
  File "/usr/lib/python3.10/ast.py", line 64, in literal_eval
    node_or_string = parse(node_or_string.lstrip(" \t"), mode='eval')
  File "/usr/lib/python3.10/ast.py", line 50, in parse
    return compile(source, filename, mode, flags,
  File "<unknown>", line 1
    ROS_DISTRO was set to 'noetic' before. Please make sure that the environment does not mix paths from different distributions.
               ^^^
SyntaxError: invalid syntax
CMake Error at /usr/share/catkin/cmake/safe_execute_process.cmake:11 (message):
  execute_process(/usr/bin/python3
  "/home/runner/work/ros_comm/ros_comm/install_catkin_ws/build/catkin_tools_prebuild/catkin_generated/generate_cached_setup.py")
  returned error code 1
Call Stack (most recent call first):
  /usr/share/catkin/cmake/all.cmake:221 (safe_execute_process)
  /usr/share/catkin/cmake/catkinConfig.cmake:20 (include)
  CMakeLists.txt:4 (find_package)

Only on 22.04 (local so far)
/home/lucasw/ros/ros1_ros_comm/src/ros_comm/test/test_roscpp/test/src/service_exception.cpp: In member function ‘virtual void ListAppender::close()’:
/home/lucasw/ros/ros1_ros_comm/src/ros_comm/test/test_roscpp/test/src/service_exception.cpp:25:11: error: ‘class ListAppender’ has no member named ‘closed’; did you mean ‘close’?
   25 |     this->closed = true;
      |           ^~~~~~
      |           close

Try github actions and Docker file on noetic_devel_github_action
docker build . -t ros_comm_noetic_devel

2023-12-26T15:57:32.3949081Z ======================================================================
2023-12-26T15:57:32.3950019Z FAIL: test_offline (test.test_roswtf_command_line_offline.TestRoswtfOffline)
2023-12-26T15:57:32.3951130Z ----------------------------------------------------------------------
2023-12-26T15:57:32.3951823Z Traceback (most recent call last):
2023-12-26T15:57:32.3953365Z   File "/home/runner/work/ros_comm/ros_comm/install_catkin_ws/src/ros_comm/utilities/roswtf/test/test_roswtf_command_line_offline.py", line 107, in test_offline
2023-12-26T15:57:32.3954897Z     self._check_output(output[0])
2023-12-26T15:57:32.3956363Z   File "/home/runner/work/ros_comm/ros_comm/install_catkin_ws/src/ros_comm/utilities/roswtf/test/test_roswtf_command_line_offline.py", line 117, in _check_output
2023-12-26T15:57:32.3957859Z     self.assert_(
2023-12-26T15:57:32.3958453Z AssertionError: False is not true : OUTPUT[Package: roswtf
2023-12-26T15:57:32.3959155Z ]
2023-12-26T15:57:32.3959351Z

Where are these coming from?  Don't see any cases of _1 or _2 by themselves
Warnings << message_filters:make /home/runner/work/ros_comm/ros_comm/install_catkin_ws/logs/message_filters/build.make.001.log
In file included from /usr/include/boost/smart_ptr/detail/sp_thread_sleep.hpp:22,
                 from /usr/include/boost/smart_ptr/detail/yield_k.hpp:23,
                 from /usr/include/boost/smart_ptr/detail/spinlock_gcc_atomic.hpp:14,
                 from /usr/include/boost/smart_ptr/detail/spinlock.hpp:42,
                 from /usr/include/boost/smart_ptr/detail/spinlock_pool.hpp:25,
                 from /usr/include/boost/smart_ptr/shared_ptr.hpp:29,
                 from /usr/include/boost/shared_ptr.hpp:17,
                 from /home/runner/work/ros_comm/ros_comm/install_catkin_ws/install/include/ros/forwards.h:37,
                 from /home/runner/work/ros_comm/ros_comm/install_catkin_ws/install/include/ros/init.h:38,
                 from /home/runner/work/ros_comm/ros_comm/install_catkin_ws/src/ros_comm/utilities/message_filters/test/msg_cache_unittest.cpp:38:
/usr/include/boost/bind.hpp:36:1: note: ‘#pragma message: The practice of declaring the Bind placeholders (_1, _2, ...) in the global namespace is deprecated. Please use <boost/bind/bind.hpp> + using namespace boost::placeholders, or define BOOST_BIND_GLOBAL_PLACEHOLDERS to retain the current behavior.’
   36 | BOOST_PRAGMA_MESSAGE(
      | ^~~~~~~~~~~~~~~~~~~~

Current failures
rosunit-roswtf_command_line_online.xml
rostest-test_rostest_latch_unsubscribe.xml

Switching development over to https://github.com/lucasw/ros_comm/tree/salsa_noetic_aggregated so can run tests 23.04 locally then see how 20.04 and 22.04 actions do

Switch to catkin_make for running tests
a single package:
catkin_make run_tests_test_rospy

or even more specific
catkin_make run_tests_test_rospy_nosetests

  <failure message="Unable to find test results for gtest-test_base64.xml, test did not run.
Expected results in /home/lucasw/ros/ros1_ros_comm_catkin_make/build/test_results/xmlrpcpp/gtest-test_base64.xml" type=""/>

Calling this done since https://github.com/lucasw/ros_comm/tree/salsa_noetic_aggregated is passing for both 20.04 and 22.04, but need to revisit the failing tests that were disabled

Did a rebase that makes running tests work with python 3.12 (on Ubuntu 24.04), and using more gitlab ros_comm patches from https://salsa.debian.org/science-team/ros-ros-comm/-/tree/master/debian/patches now.

->
-        self.assertTrueeventually(
+        self.assertTrueEventually(

I think this has been deprecated
cannot import name 'assert_regexp_matches' from 'nose.tools'

This never finishes:
rostest log file is in /home/lucasw/.ros/log/rostest-lucasw-XPS-8940-222371.log
-- run_tests.py: verify result "/home/lucasw/ros/ros1/tmp/catkin_make_ros_comm/build/test_results/test_rosbag/rostest-test_random_play.xml"
[100%] Built target _run_tests_test_rosbag_rostest_test_random_play.xml
[100%] Built target _run_tests_test_rosbag_rostest
[100%] Built target _run_tests_test_rosbag


SnakeBidsApp needs refactoring

SnakeBidsApp in app.py is become quite long and convoluted. Attributes are defined across a number of functions, which rather confusing. And it breaks a few pylint rules (too-many-instance-attributes, too-many-locals) that would definitely simplify the class if fixed. So I plan on going through sometime soon and doing some refactoring.

I agree, thanks for taking this on!


Paging on untagged posts

~Feature request
Expected behaviour
I have a large collection of heterogenous content that has properties (or the lack thereof) that I wish to display in a manner similar to any other subpage (think: custom collections, tag pages).
As a concrete example, one use case is to collect and paginate blog posts which do not have tags.
Actual behaviour
I've tried a number of different routes to get a collection defined by a subset of resources. While I can't remember them all, I'll highlight a few.
https://github.com/middleman/middleman-blog/issues/233#issuecomment-68546154
Attempting this method ended up very hackish (duplication of parameters between the blog definition and the subsequent block). Notably, though, I couldn't even get this to compile - when middleman build got to my proxy, it would gripe about me trying to provide a local paginate variable (see: https://github.com/middleman/middleman/blob/master/middleman-core/lib/middleman-core/template_renderer.rb#L137).
By clearing the partial path of any page using the template local paginate, I got to a situation where when trying to render my page navigation, it couldn't find the paging "methods":
undefined local variable or method `prev_page' ...
I saw this as well: https://github.com/middleman/middleman-blog/issues/177#issuecomment-39612192
This predates middleman-blog 4, is highly manual, and doesn't work.
I also tried creating a subset of articles that were untagged and feeding them as a local into a template located at <blog_root>/tags/untagged.html.erb, but while the local was set, the Extension's determination of what the current articles were (i.e. all articles) overrode my local setting, and so I could see the first page_size untagged articles, for the num_pages determined by the blog as a whole.
In my case, what I finally got to work was monkey-patching the tags method as follows:
<... truncate>
    class BlogData
      alias_method :old_tags, :tags

      def tags
        tags = old_tags
        articles.each do |article|
          next unless article.tags.count.zero?
          tags['untagged'] ||= []
          tags['untagged'] << article
        end

        tags
      end

    end
<...>

But there are a lot of additional subsets of data that I'd like to mess around with (short posts, posts with no explicit title, posts with no category data) that I'd also like to generate views for.
A workaround I considered is to have an explicit "untagged" tag, but that screws with my display logic and would require going back and retroactively curating a large amount of content. Further, it doesn't address the general case, where for instance I might desire a category 'short' determined by the subset of all blog posts under 140 characters. (This is actually something I plan to do.)
My feature suggestion, since it seems to be a theme for a lot of the requests/bugs I've noticed in the past three hours of reading issues, is to allow the generation of arbitrary collections of blog resources via either string or proc, contrasted with the current method of string only.
Additional information

Ruby version: 2.4.1
Middleman version: 4.2.1
Middleman Blog version: 4.0.2
OS version: macOS 10.13.1

ℹ This issue is stale because it has been open for more than 90 days with no activity. It will be closed in 30 days if no further activity occurs. Thank you for your contributions.


Clarification on Netfetch Score Calculation

I have been using the Netfetch tool and appreciate its capability to assess the security posture of our Kubernetes namespaces. I have a few questions regarding the scoring mechanism:
Score Derivation: Could you please provide detailed information on how the Netfetch score is calculated? Specifically, how is the base score of 42 determined?
Denominator Basis: What is the rationale behind choosing 42 as the highest possible score? Is there a specific methodology or set of criteria that defines this value?
Impact of Policies: How does the  Network Policies influence the score? For example, if I apply a new policy, how is the increase in score calculated? Are there specific increments based on the type or number of policies applied?
Understanding these details would greatly assist in interpreting the scores accurately and making informed decisions to improve our cluster's security posture.
Thankyou

Hello @RajikaJain,
Glad to hear you are using netfetch. First of all, the scoring logic was implemented as a placeholder until something more "advanced" was developed. Unfortunately, I have not had time to work on this yet.
The score 42 is set as the base score when you start a scan, and this is because I work at a company called fortytwo, so I took some inspiration from that. This base score is subject to change in the future though.
Currently, the application checks if you have any policy in your cluster - if you dont, 20 points will be deducted from your base score of 42. In addition to this, every pod not hit by a network policy will reduce your score with 1.
Example:
No network policy present + 10 unprotected pods = 12

@RajikaJain

The score will be incremented on two occasions. Firstly, if there are zero policies, the first policy will greatly increase your score. Secondly, your score will be increased every time any unprotected pod is targeted by a new network policy.

Currently, there is no evaluation in place beyond checking if a policy is either a default deny or some other type of policy. Currently working on logic that will analyse and evaluate policies that are detected, in addition to updating the scoring logic itself. So improvements are on the way here. All policies in your cluster will still be evaluated, but as long as you have more then zero policies, they are all weighted the same.

Thats a very good point. Currently, the score will be capped at 42, meaning that you could essentially have what is deemed a "unsafe" cluster yet still receive the top score of 42 if your cluster is large enough with enough pods targeted by network policies. I will take that into account when updating the scoring logic going forward.

Thank you for your questions. Keep them coming if you have more!


import/no-extraneous-dependencies can't disable error message for specific files

Hi :)
In my eslintrc file I'm overriding the no-extra... rule like this:
"import/no-extraneous-dependencies": ["error", {
			"devDependencies": [
				"**/*.ts"
			]
		}]

So I don't want to see an error message for all .ts files. But it doesn't work.
The import that is marked as error:
import { $, browser} from 'protractor';
Protractor is not directly in the package.json, but it's added via another dev-dependency:
grunt-protractor-runner
So I'm not sure if I can use 'devDependencies' to exclude files, but I tried all of them with no luck(devDependencies, optionalDependencies, peerDependencies and bundledDependencies)

I'm confused, why would you want all your TS files to allow dev deps?
In general tho, if you're importing from protractor, it must be in your package.json - otherwise you're relying on the accident of npm hoisting it to the top level.

In a monorepo, Is there a way to mask certain dependencies and still let particular file lint about no-extraneous-dependencies when dependencies other than masked one's are imported
For eg:
MonoRepo Root level package.json
{    devDependencies: {         "react-testing-library": "^x.y.z"    } }
workspace module A package.json doesn't include "react-testing-library" as devDependencies (since its already been present at root level)
Now what we need is to mask "react-testing-library" no-extraneous-dependencies linting from every spec.js files, Is that possible?

@aqumus in that case, it should be an explicit dev dep of each subproject as well as the root.

Yeah that was my second thought.
Off the topic, Is there any downside with the specified setup ( which hoists common used dev dependencies at the root Level) or Is this something not recommended due to any strong reason?

The downside I can see is that you don't have a clear picture of which subprojects need which dev deps at which versions.

Closing for now; these questions seem answered.


DO NOT MERGE Optimize the constructor of RuntimeLong with a hack.

We avoid generating the super constructor call and creating the fields with the zero of their types. This leaves only the content of the init method (which we know is inlined for RuntimeLong), which directly assigns this.lo and this.hi.
We can do this because the superclasses of RuntimeLong do not declare any fields (hence the super constructor call is unnecessary) and because the init method is known to "behave well" wrt. the initialization of its fields (which means there is no need to initialize them first to their zero).
This optimization brings a 17% improvement on the SHA-512 benchmark.
We cannot apply this trick in ECMAScript 2015, because calling the super() constructor is mandatory for non-root classes.

This builds on top of #3139, so Do Not Merge for now. Only the third commit belongs to this PR.

Note that virtually all of the perf improvement comes from removing the super call (not from removing the assignment of fields to their zero). And that is something we could do to all classes in the world with a bit more effort. We just have to create all the inherited fields of a class in its constructor, rather than calling the super constructor. This requires some global knowledge, though, so it's not completely trivial to implement. But we really should do that. The perf improvements measured here are likely to apply across the board.
I'm submitting this PR as is because I'm on a paper deadline :P But maybe we should refrain from merging it until a global solution is implemented.

Refer to this link for build results (access rights to CI server needed):
https://scala-webapps.epfl.ch/jenkins/job/scalajs-pr/4270/
https://scala-webapps.epfl.ch/jenkins/job/scalajs-matrix-build/5704/
Test PASSed.

Well, I was motivated tonight, so I implemented the global solution. Hence I believe this PR is superseded by #3142, although I might revive the part that avoids the = 0's for RuntimeLong later.


AVRO-4100: [C++] Remove boost::noncopyable and boost::any

What is the purpose of the change
Remove boost::noncopyable and boost::any
Verifying this change
This change is a trivial rework / code cleanup without any test coverage.
Documentation

Does this pull request introduce a new feature? no

cc @martin-g @mkmkme @Fokko


"Pull request does not mention any issues"

I'm getting "Pull request does not mention any issue" even though the body of my PR contains the closed issue. It looks like this:
Closes #1234
while 1234 is a valid issue which was selected from GitHubs auto-complete dropdown (when pressing '#').
One thing that might be important is that we are using a different branch than "main" against which we want to merge the PR to. We have main too and main is the default branch. So we are NOT merging against the default branch (in case that might be an issue).

I think I found the reason. The problem was that the corresponding issue was not linked to its pull request. The problem is that the error message in fact tells exactly the opposite. It says: "Pull request does not mention any issues". But its the other way round. It should say e.g.: "Issue is not linked to any pull request".

Thanks for filing an issue!
Weird, it shouldn't matter if the issue is not linked to the pull request as long as the pull request links it. It also doesn't matter if the branch is the main branch or not.
If the repository is public, would you mind sharing the pull request link? I might need to check the API response for that PR.

Thanks again for your quick reply Cristopher. Yes indeed its strange. I tried it two times (linked and unlinked the PR in the issue) and in both cases when the PR was unlinked, it gave me the mentioned error message. Unfortunately the repo is one of our company repos so I'm not allowed to share the content. But if you can tell what debug output you need and how I can enable it, I'll get when having the next PR that shows the issue.

Aah ok, since it's not public. I'll try to reproduce it here instead.

It's reproducible via #112. My preliminary guess is that since 1 issue can only be mentioned 1 PR, the second one is ignored.
This is more like a GitHub bug to be honest (or it just works like that). I'll investigate further.

Great that you found it so fast Cristopher! Yes I already expected that I need to link a PR manually when I want to connect it to the corresponding issue and when not using the default branch. I was just surprised that obviously it is required to have the PR linked in the issue in order to for conventional-pr to run correctly. I thought linking the PR is just a nice-to-have GitHub feature for not having to search for PRs that belong to an issue.

Seems like #113 doesn't fix it, will conduct deeper investigation.


Appstudio update test-custom-default-branch-tcmm

Pipelines as Code configuration proposal
To start the PipelineRun, add a new comment with content /ok-to-test
For more detailed information about running a PipelineRun, please refer to Pipelines as Code documentation Running the PipelineRun
To customize the proposed PipelineRuns after merge, please refer to Build Pipeline customization

Pipelines as Code CI has failed.There was an error creating the PipelineRun: test-simple-build-uqzm-on-pull-request-
creating pipelinerun test-simple-build-uqzm-on-pull-request- in namespace build-e2e-krmc-tenant has failed.
Tekton Controller has reported this error: the namespace of the provided object does not match the namespace sent on the request

Pipelines as Code CI has failed.There was an error creating the PipelineRun: test-simple-build-lqle-on-pull-request-
creating pipelinerun test-simple-build-lqle-on-pull-request- in namespace build-e2e-krmc-tenant has failed.
Tekton Controller has reported this error: the namespace of the provided object does not match the namespace sent on the request

Pipelines as Code CI has failed.There was an error creating the PipelineRun: test-simple-build-ufgi-on-pull-request-
creating pipelinerun test-simple-build-ufgi-on-pull-request- in namespace build-e2e-krmc-tenant has failed.
Tekton Controller has reported this error: the namespace of the provided object does not match the namespace sent on the request

Pipelines as Code CI has failed.There was an error creating the PipelineRun: test-simple-build-wadk-on-pull-request-
creating pipelinerun test-simple-build-wadk-on-pull-request- in namespace build-e2e-krmc-tenant has failed.
Tekton Controller has reported this error: the namespace of the provided object does not match the namespace sent on the request

Pipelines as Code CI has failed.There was an error creating the PipelineRun: test-annotations-mijr-on-pull-request-
creating pipelinerun test-annotations-mijr-on-pull-request- in namespace build-e2e-krmc-tenant has failed.
Tekton Controller has reported this error: the namespace of the provided object does not match the namespace sent on the request

Pipelines as Code CI has failed.There was an error creating the PipelineRun: test-annotations-yrqk-on-pull-request-
creating pipelinerun test-annotations-yrqk-on-pull-request- in namespace build-e2e-krmc-tenant has failed.
Tekton Controller has reported this error: the namespace of the provided object does not match the namespace sent on the request

Pipelines as Code CI has failed.There was an error creating the PipelineRun: test-annotations-ntht-on-pull-request-
creating pipelinerun test-annotations-ntht-on-pull-request- in namespace build-e2e-krmc-tenant has failed.
Tekton Controller has reported this error: the namespace of the provided object does not match the namespace sent on the request

Pipelines as Code CI has failed.There was an error creating the PipelineRun: test-simple-build-imul-on-pull-request-
creating pipelinerun test-simple-build-imul-on-pull-request- in namespace build-e2e-krmc-tenant has failed.
Tekton Controller has reported this error: the namespace of the provided object does not match the namespace sent on the request

Pipelines as Code CI has failed.There was an error creating the PipelineRun: test-simple-build-mcmm-on-pull-request-
creating pipelinerun test-simple-build-mcmm-on-pull-request- in namespace build-e2e-krmc-tenant has failed.
Tekton Controller has reported this error: the namespace of the provided object does not match the namespace sent on the request

Pipelines as Code CI has failed.There was an error creating the PipelineRun: test-simple-build-nwtb-on-pull-request-
creating pipelinerun test-simple-build-nwtb-on-pull-request- in namespace build-e2e-krmc-tenant has failed.
Tekton Controller has reported this error: the namespace of the provided object does not match the namespace sent on the request

Pipelines as Code CI has failed.There was an error creating the PipelineRun: test-simple-build-nyrh-on-pull-request-
creating pipelinerun test-simple-build-nyrh-on-pull-request- in namespace build-e2e-krmc-tenant has failed.
Tekton Controller has reported this error: the namespace of the provided object does not match the namespace sent on the request


make-swf fails because flex-sdk does not install

Hi all,
flex-sdk does not get installed when I run npm install. This causes builds to fail because of missing mxlmc package found in scripts/make-swf. Anyone experience anything similar?
Steps taken:
I download the repo:
git clone https://github.com/google/marzipano.git
then I run npm install:
npm install
The installation of dependencies begins and proceeds:

but then finishes with the following output in my console:

It appears that flex_sdk does not install, and it is indeed missing from my node_modules:

Thus, when I run:
npm run dev
the build does not work:
scripts/make-swf: line 27: mxmlc: command not found
More verbose log of the build error:

Your help is greatly appreciated.

If there's no flex-sdk directory in node_modules, it looks like it failed to install. Can you try running npm install --verbose flex-sdk and look for errors?

Running the install command explicitly produces a similar result:
clayton@DevLinux:~/src/marzipano$ npm install --verbose flex-sdk
npm info it worked if it ends with ok
npm verb cli [ '/usr/bin/nodejs',
npm verb cli   '/usr/bin/npm',
npm verb cli   'install',
npm verb cli   '--verbose',
npm verb cli   'flex-sdk' ]
npm info using<EMAIL_ADDRESS>npm info using<EMAIL_ADDRESS>npm verb request uri https://registry.npmjs.org/flex-sdk
npm verb request no auth needed
npm info attempt registry request try #1 at 5:07:18 PM
npm verb request id 41e27f141b600e01
npm verb etag "534378aa-ae9f"
npm verb lastModified Tue, 8 Apr 2014 4:18:50 GMT
npm http request GET https://registry.npmjs.org/flex-sdk
npm http 304 https://registry.npmjs.org/flex-sdk
npm verb headers { date: 'Wed, 28 Feb 2018 17:07:20 GMT',
npm verb headers   via: '1.1 varnish',
npm verb headers   'cache-control': 'max-age=300',
npm verb headers   etag: '"534378aa-ae9f"',
npm verb headers   age: '0',
npm verb headers   connection: 'keep-alive',
npm verb headers   'x-served-by': 'cache-dfw18649-DFW',
npm verb headers   'x-cache': 'MISS',
npm verb headers   'x-cache-hits': '0',
npm verb headers   'x-timer': 'S1519837641.674326,VS0,VE68',
npm verb headers   vary: 'Accept-Encoding, Accept' }
npm verb etag https://registry.npmjs.org/flex-sdk from cache
npm verb get saving flex-sdk to /home/clayton/.npm/registry.npmjs.org/flex-sdk/.                cache.json
npm verb correctMkdir /home/clayton/.npm correctMkdir not in flight; initializin                g
npm verb cache add spec<EMAIL_ADDRESS>npm verb addNamed ">=4.6.0-0 <5.0.0" is a valid semver range for flex-sdk
npm verb addNameRange registry:https://registry.npmjs.org/flex-sdk not in flight                ; fetching
npm verb get https://registry.npmjs.org/flex-sdk not expired, no request
npm verb addNamed "4.6.0-0" is a plain semver version for flex-sdk
npm verb afterAdd /home/clayton/.npm/flex-sdk/4.6.0-0/package/package.json not i                n flight; writing
npm verb correctMkdir /home/clayton/.npm correctMkdir not in flight; initializin                g
npm verb afterAdd /home/clayton/.npm/flex-sdk/4.6.0-0/package/package.json writt                en
npm verb correctMkdir /home/clayton/.npm/_locks correctMkdir not in flight; init                ializing
npm verb lock using /home/clayton/.npm/_locks/staging-fc081ec33d657df6.lock for                 /home/clayton/src/marzipano/node_modules/.staging
npm verb unbuild node_modules/.staging/flex-sdk-fb3f8ad9
npm verb gentlyRm don't care about contents; nuking /home/clayton/src/marzipano/                node_modules/.staging/flex-sdk-fb3f8ad9
npm verb tar unpack /home/clayton/.npm/flex-sdk/4.6.0-0/package.tgz
npm verb tar unpacking to /home/clayton/src/marzipano/node_modules/.staging/flex                -sdk-fb3f8ad9
npm verb gentlyRm don't care about contents; nuking /home/clayton/src/marzipano/                node_modules/.staging/flex-sdk-fb3f8ad9
npm verb gentlyRm don't care about contents; nuking /home/clayton/src/marzipano/                node_modules/.staging/flex-sdk-fb3f8ad9/node_modules
npm info lifecycle<EMAIL_ADDRESS><EMAIL_ADDRESS>
><EMAIL_ADDRESS>preinstall /home/clayton/src/marzipano/node_modules/.staging/                flex-sdk-fb3f8ad9
> npm install playerglobal-latest

I tried installing flex-sdk in Ubuntu, and apparently the problem is that the install script for playerglobal-latest (which flex-sdk depends on) tries to execute node install.js. However, the Node interpreter name on Ubuntu is nodejs.
This is essentially the same issue as #73. Can you try the workaround suggested there (i.e. sudo apt-get install nodejs-legacy, which uses node instead of nodejs for the interpreter name)?

The issue does indeed seem to be related to Ubuntu as I am running Ubuntu 14.04 LTS.
Your workaround is valid and I would propose others use it.
Here are the steps I took to solve this:
I attempted to install run sudo apt-get install nodejs-legacy but received the following error:
clayton@DevLinux:~/src/marzipano$ sudo apt-get install nodejs-legacy
Reading package lists... Done
Building dependency tree
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
 nodejs-legacy : Depends: nodejs (>= 0.6.19~dfsg1-3~) but it is not going to be installed
E: Unable to correct problems, you have held broken packages.

Next, I tried to create a symlink between nodejs and node:
ln -s /user/bin/nodejs /usr/bin/node
but received the following error:
ln: failed to create symbolic link ‘/usr/bin/node’: File exists
Finally, I tried installing Nodejs Version Manager as proposed on this stackoverflow.
I was able to get a successful build by performing the following:
Install nvm:
curl https://raw.githubusercontent.com/creationix/nvm/v0.11.1/install.sh | bash
Run command:
source ~/.profile
Install 6.0.0:
nvm install 6.0.0
Try to build marzipano:
npm run dev
I then tried to view my other installed node versions to switch back to latest, but only saw 6.0.0 as being installed when I viewed available versions.
clayton@DevLinux:~/src/marzipano$ nvm ls
->    v6.0.0

So I am unsure if my version switching fixed it (had I always been on 6.0.0?) or if perhaps the other two commands solved my problem before failing out.
Very verbose comment here. Hopefully it helps someone or someone is able to give me clarity on which of these attempts made the build work. Will close the issue shortly if no one has any insight.
Thanks, @tjgq.

My guess is that you already have an executable named /usr/bin/node installed by some other package, which is why you are unable to install nodejs-legacy or create the symlink manually. See https://lists.debian.org/debian-devel-announce/2012/07/msg00002.html.
Using nvm is also a reasonable workaround. I've added a paragraph to the README.md file to provide guidance to people facing this issue.
I don't think the Node version matters at all. AFAICT, according to the above link, the node interpreter has been called nodejs on Debian systems since 2012, and that is the problem here.


chore: sms opt in changes

PR summary
sms opt in changes
Fixes: <! -- link to issue -->
PR Checklist
Please make sure that your PR fulfills the following requirements:

[x] The commit message follows the Angular Commit Message Guidelines.
[x] Tests for the changes have been added (for bug fixes / features)
[x] Docs have been added / updated (for bug fixes / features)

PR Type

[ ] Bugfix
[x] Feature
[ ] Code style update (formatting, local variables)
[ ] Refactoring (no functional changes, no api changes)
[x] New tests
[ ] Build/CI related changes
[ ] Documentation content changes
[ ] Other (please describe)

What is the current behavior?
sms opt in feature was not there to meet standars
What is the new behavior?
added sms opt in feature
Does this PR introduce a breaking change?

[ ] Yes
[x] No

Other information

Signed-off-by: Nitish Kulkrani<EMAIL_ADDRESS>

:tada: This PR is included in version 0.1.6 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


chore: better code reuse in callback

Small code improvement: created implementation of Consumer that is used 3 times as a callback. The removes the code duplication.

you probably need to run spotless apply first


BUG: starting modin on ray 2.0.0 on mac raises long DeprecationWarning

System information

OS Platform and Distribution (e.g., Linux Ubuntu 16.04): macOS Monterey
Modin version (modin.__version__): cfcdf081e197d35e1fd1526f5585e361793dc2fa
Python version: 3.10.4
Code we can use to reproduce:

import modin.pandas as pd
pd.DataFrame()

Describe the problem
Starting modin on ray 2.0.0 on mac raises long DeprecationWarning because Modin accesses the private variable MAC_DEGRADED_PERF_MMAP_SIZE_LIMIT.
Source code / logs

Stack trace
DeprecationWarning: `ray.ray_constants.MAC_DEGRADED_PERF_MMAP_SIZE_LIMIT` is a private attribute and access will be removed in a future Ray version.
  File "/Users/maheshvashishtha/opt/anaconda3/envs/modin-dev/bin/ipython", line 8, in <module>
    sys.exit(start_ipython())
  File "/Users/maheshvashishtha/opt/anaconda3/envs/modin-dev/lib/python3.10/site-packages/IPython/__init__.py", line 124, in start_ipython
    return launch_new_instance(argv=argv, **kwargs)
  File "/Users/maheshvashishtha/opt/anaconda3/envs/modin-dev/lib/python3.10/site-packages/traitlets/config/application.py", line 976, in launch_instance
    app.start()
  File "/Users/maheshvashishtha/opt/anaconda3/envs/modin-dev/lib/python3.10/site-packages/IPython/terminal/ipapp.py", line 318, in start
    self.shell.mainloop()
  File "/Users/maheshvashishtha/opt/anaconda3/envs/modin-dev/lib/python3.10/site-packages/IPython/terminal/interactiveshell.py", line 680, in mainloop
    self.interact()
  File "/Users/maheshvashishtha/opt/anaconda3/envs/modin-dev/lib/python3.10/site-packages/IPython/terminal/interactiveshell.py", line 673, in interact
    self.run_cell(code, store_history=True)
  File "/Users/maheshvashishtha/opt/anaconda3/envs/modin-dev/lib/python3.10/site-packages/IPython/core/interactiveshell.py", line 2881, in run_cell
    result = self._run_cell(
  File "/Users/maheshvashishtha/opt/anaconda3/envs/modin-dev/lib/python3.10/site-packages/IPython/core/interactiveshell.py", line 2936, in _run_cell
    return runner(coro)
  File "/Users/maheshvashishtha/opt/anaconda3/envs/modin-dev/lib/python3.10/site-packages/IPython/core/async_helpers.py", line 129, in _pseudo_sync_runner
    coro.send(None)
  File "/Users/maheshvashishtha/opt/anaconda3/envs/modin-dev/lib/python3.10/site-packages/IPython/core/interactiveshell.py", line 3135, in run_cell_async
    has_raised = await self.run_ast_nodes(code_ast.body, cell_name,
  File "/Users/maheshvashishtha/opt/anaconda3/envs/modin-dev/lib/python3.10/site-packages/IPython/core/interactiveshell.py", line 3338, in run_ast_nodes
    if await self.run_code(code, result, async_=asy):
  File "/Users/maheshvashishtha/opt/anaconda3/envs/modin-dev/lib/python3.10/site-packages/IPython/core/interactiveshell.py", line 3398, in run_code
    exec(code_obj, self.user_global_ns, self.user_ns)
  File "<ipython-input-2-6006e405f520>", line 1, in <cell line: 1>
    pd.DataFrame()
  File "/Users/maheshvashishtha/software_sources/modin/modin/logging/logger_decorator.py", line 128, in run_and_log
    return obj(*args, **kwargs)
  File "/Users/maheshvashishtha/software_sources/modin/modin/_compat/pandas_api/latest/dataframe.py", line 50, in __init__
    self._init(
  File "/Users/maheshvashishtha/software_sources/modin/modin/logging/logger_decorator.py", line 128, in run_and_log
    return obj(*args, **kwargs)
  File "/Users/maheshvashishtha/software_sources/modin/modin/pandas/dataframe.py", line 122, in _init
    Engine.subscribe(_update_engine)
  File "/Users/maheshvashishtha/software_sources/modin/modin/config/pubsub.py", line 217, in subscribe
    callback(cls)
  File "/Users/maheshvashishtha/software_sources/modin/modin/pandas/__init__.py", line 135, in _update_engine
    initialize_ray()
  File "/Users/maheshvashishtha/software_sources/modin/modin/core/execution/ray/common/utils.py", line 104, in initialize_ray
    object_store_memory = _get_object_store_memory()
  File "/Users/maheshvashishtha/software_sources/modin/modin/core/execution/ray/common/utils.py", line 193, in _get_object_store_memory
    mac_size_limit = getattr(
  File "/Users/maheshvashishtha/opt/anaconda3/envs/modin-dev/lib/python3.10/site-packages/ray/__init__.py", line 196, in __getattr__
    traceback.print_stack()
2022-08-23 22:40:26,742	INFO worker.py:1518 -- Started a local Ray instance.
UserWarning: Distributing <class 'NoneType'> object. This may take some time.

Regarding @RehanSD 's comment here: https://github.com/modin-project/modin/pull/4873#discussion_r953353691
We know from https://github.com/ray-project/ray/issues/20388 that for sure the bug was bad at ray 1.8.0. I tried some other versions:

using ray 1.6.0 in  python 3.9 on my mac, and I got 15 seconds for this benchmark vs .69 sec on linux
On ray 1.3 on python 3.6, I get 6.9 or 12.0 or 7.20 seconds (3 trials) vs .77 sec on linux, so still bad. Limiting the object store to memory to 2 GiB reduces the benchmark time to 4.69 sec or 3.52 sec or 2.55 sec, so the fix is still helpful.
same benchmark on python 3.6, ray 1.2: 23 sec with errors about object store being full, vs .834 sec on linux. Adding more object store doesn't help.
I tried the same benchmark on python 3.6, ray 1.0.0, and got some unrelated object store errors and the benchmark doesn't complete. I had to increase object store memory past the ray default to even complete the benchmark (13 sec for 10 GiB object store). linux takes .86 seconds.

From these results, it seems the mac bug has existed since at least ray 1.0.0. However, limiting the object store to 2 GiB seems to only start helping around ray 1.3. It seems reasonable to me to only apply the limit if ray version is >= 1.3. I've done that.
Regarding architecture, ray applies the limit to all macs regardless of architecture or OS version, so we should do the same: https://github.com/ray-project/ray/blob/16aa102984e4cbb5a149068ec217c6e06d3b88b0/python/ray/_private/services.py#L1941-L1945


Made stream binder optional

fixes gh-682

Codecov Report

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

@@             Coverage Diff              @@
##             master     #693      +/-   ##
============================================
- Coverage     60.95%   60.83%   -0.12%
+ Complexity     2018     2017       -1
============================================
  Files           220      220
  Lines          8350     8350
  Branches       1302     1302
============================================
- Hits           5090     5080      -10
- Misses         2572     2585      +13
+ Partials        688      685       -3

Impacted Files
Coverage Δ
Complexity Δ

...loud/contract/stubrunner/TemporaryFileStorage.java
22.58% <0%> (-25.81%)
5% <0%> (ø)

.../contract/stubrunner/ScmStubDownloaderBuilder.java
79.41% <0%> (-0.99%)
10% <0%> (ø)

...loud/contract/stubrunner/AetherStubDownloader.java
63.2% <0%> (-0.95%)
25% <0%> (-1%)

Continue to review full report at Codecov.

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


Update authorization-same-role-principal.md

case sensitive query

@rolyon
Can you review the proposed changes?
When the changes are ready for publication, add a #sign-off comment to signal that the PR is ready for the review team to merge.
#label:"aq-pr-triaged"
@MicrosoftDocs/public-repo-pr-review-team

Hi @edtorresco
Thanks for your feedback. We'll get this merged.

#sign-off


Funky headings

I think something in Github’s API must have changed very recently. Sometime in the past day or so my headings started to look like this:

This seems to happen to all of the headings # through ######:

Yikes! I just saw this too. Thanks for opening the issue, @meyer!
Yeah, looks like an API bug leaked through:
$ curl https://api.github.com/markdown -d '{ "text": "# testing" }'

{:"aria-hidden"=>"true", :class=>"octicon octicon-link"}testing

I just contacted GitHub's API support about it.
It's pretty annoying though, so if they don't respond or say they can't fix it quickly, I'll have time tomorrow to release a short-term workaround.

Alright. I haven't heard anything back yet. (It's the weekend after all.) I do think this is annoying enough to patch in the meantime, so here's a fix #245.
It's quite hacky (if you have a README that contains {:"aria-hidden"=>"true", :class=>"octicon octicon-link"}, it'll be outright replaced with ), but gets the job done. As such, I made a note to remove this once GitHub addresses it.
Since I've fallen behind, this release also includes several other fixes that were just waiting on me for a summary and PyPI upload.
Thanks for your patience, all 😃

@joeyespo thanks a lot for your great effort! can confirm that grip 4.4.0 does not show the "funky headings"

@joeyespo you are a star! 🌟 thank you for fixing this so quickly, much appreciated!

Update
GitHub responded with this:

Just wanted to let you know that the team deployed some changes which should have fixed this problem. If you can still reproduce this — please let us know.

This was sent last Monday (Sept 25), and I can confirm that it works now. (Thanks for the quick official fix, GitHub!) I'll remove the workaround in the next release 🎉

@joeyespo rad, thanks! 💃 💃 💃


RuntimeError: std::bad_alloc

Does anyone have an explanation for this error message?
python -m cellpose --dir /data/images/ --diameter 0 --savedir cpresults --verbose
2022-02-14 11:11:06,536 [INFO] WRITING LOG OUTPUT TO /home/saskra/.cellpose/run.log
2022-02-14 11:11:06,536 [INFO] >>>> using CPU
2022-02-14 11:11:06,543 [INFO] >>>> running cellpose on 150 images using chan_to_seg GRAY and chan (opt) NONE
2022-02-14 11:11:06,543 [INFO] >>>> using CPU
2022-02-14 11:11:06,639 [INFO] >>>> estimating diameter for each image
2022-02-14 11:11:06,640 [INFO] 0%|          | 0/150 [00:00<?, ?it/s]
2022-02-14 11:11:06,644 [WARNING] TiffPage 0: TypeError: read_bytes() missing 3 required positional arguments: 'dtype', 'count', and 'offsetsize'
2022-02-14 11:11:06,644 [INFO] ~~~ ESTIMATING CELL DIAMETER(S) ~~~
2022-02-14 11:11:07,568 [INFO] 0%|          | 0/150 [00:00<?, ?it/s]
Traceback (most recent call last):
  File "/home/saskra/anaconda3/envs/dead_cells/lib/python3.9/runpy.py", line 197, in _run_module_as_main
    return _run_code(code, main_globals, None,
  File "/home/saskra/anaconda3/envs/dead_cells/lib/python3.9/runpy.py", line 87, in _run_code
    exec(code, run_globals)
  File "/home/saskra/anaconda3/envs/dead_cells/lib/python3.9/site-packages/cellpose/__main__.py", line 458, in <module>
    main()
  File "/home/saskra/anaconda3/envs/dead_cells/lib/python3.9/site-packages/cellpose/__main__.py", line 317, in main
    out = model.eval(image, channels=channels, diameter=diameter,
  File "/home/saskra/anaconda3/envs/dead_cells/lib/python3.9/site-packages/cellpose/models.py", line 262, in eval
    diams, _ = self.sz.eval(x, channels=channels, channel_axis=channel_axis, invert=invert, batch_size=batch_size,
  File "/home/saskra/anaconda3/envs/dead_cells/lib/python3.9/site-packages/cellpose/models.py", line 1022, in eval
    masks = self.cp.eval(x,
  File "/home/saskra/anaconda3/envs/dead_cells/lib/python3.9/site-packages/cellpose/models.py", line 628, in eval
    masks, styles, dP, cellprob, p, bd, tr = self._run_cp(x,
  File "/home/saskra/anaconda3/envs/dead_cells/lib/python3.9/site-packages/cellpose/models.py", line 694, in _run_cp
    yf, style = self._run_nets(img, net_avg=net_avg,
  File "/home/saskra/anaconda3/envs/dead_cells/lib/python3.9/site-packages/cellpose/core.py", line 398, in _run_nets
    y, style = self._run_net(img, augment=augment, tile=tile, tile_overlap=tile_overlap,
  File "/home/saskra/anaconda3/envs/dead_cells/lib/python3.9/site-packages/cellpose/core.py", line 479, in _run_net
    y, style = self._run_tiled(imgs, augment=augment, bsize=bsize,
  File "/home/saskra/anaconda3/envs/dead_cells/lib/python3.9/site-packages/cellpose/core.py", line 580, in _run_tiled
    y0, style = self.network(IMG[irange], return_conv=return_conv)
  File "/home/saskra/anaconda3/envs/dead_cells/lib/python3.9/site-packages/cellpose/core.py", line 345, in network
    self.net = mkldnn_utils.to_mkldnn(self.net)
  File "/home/saskra/anaconda3/envs/dead_cells/lib/python3.9/site-packages/torch/utils/mkldnn.py", line 210, in to_mkldnn
    return m_fn_rec(module, dtype)
  File "/home/saskra/anaconda3/envs/dead_cells/lib/python3.9/site-packages/torch/utils/mkldnn.py", line 207, in m_fn_rec
    setattr(new_m, name, m_fn_rec(sub_m, d))
  File "/home/saskra/anaconda3/envs/dead_cells/lib/python3.9/site-packages/torch/utils/mkldnn.py", line 207, in m_fn_rec
    setattr(new_m, name, m_fn_rec(sub_m, d))
  File "/home/saskra/anaconda3/envs/dead_cells/lib/python3.9/site-packages/torch/utils/mkldnn.py", line 207, in m_fn_rec
    setattr(new_m, name, m_fn_rec(sub_m, d))
  [Previous line repeated 3 more times]
  File "/home/saskra/anaconda3/envs/dead_cells/lib/python3.9/site-packages/torch/utils/mkldnn.py", line 205, in m_fn_rec
    new_m = m_fn(m, d)
  File "/home/saskra/anaconda3/envs/dead_cells/lib/python3.9/site-packages/torch/utils/mkldnn.py", line 200, in m_fn
    return MkldnnBatchNorm(m)
  File "/home/saskra/anaconda3/envs/dead_cells/lib/python3.9/site-packages/torch/jit/_script.py", line 265, in init_then_script
    original_init(self, *args, **kwargs)
  File "/home/saskra/anaconda3/envs/dead_cells/lib/python3.9/site-packages/torch/utils/mkldnn.py", line 148, in __init__
    self.register_buffer('weight', dense_module.weight.to_mkldnn())
RuntimeError: std::bad_alloc

PS: This only happens with the current version from this Github repository, not with the previous version 1.0.

Does this happen if you set up an anaconda environment with a different python version, e.g. 3.8.5?

In fact, it does not. With Python version 3.8.5, Cellpose 1.0.1 is apparently compatible.

Ok good, we have run into this issue (or similar) before; I'm guessing the version of pytorch requires 3.8.5. The environment.yml provided configures python to 3.8.5 to avoid these issues. Eventually Carsen or I will get around to updating the dependencies to the latest versions and iron out any bugs that follow. We should also update the install instructions to make this clearer (right now it just says python 3.8).

I wanted to use the Cellpose pip package in an existing environment along with other packages, which in turn rely on Python >3.9. But then I try to work around that somehow, e.g. with Snakemake. Thanks in any case for the help.


Allow implementing custom text parents as extensions of RCTText

Summary:

There's no way to implement:

Custom text parent. Both Fabric and old renderers explicitely disallow this.
Extension of RCTText, e.g. as an Android native module.

My use case:
I needed to slightly override native behavior of ReactTextView, but conditions in React Native renderers make it impossible without monkey patching React Native.
Changelog:

[INTERNAL] [ADDED] - Option to extend native RCTText
Test Plan:
Create native module extending ReactTextViewManager with NAME starting with RCTTextExtension-.

Signed CLA now.

To provide some motivation context, opening RCTText for extensions allow such features to be added in project scope:
https://github.com/facebook/react-native/pull/45364


feat(pcm): add deployment targets from clouddriver

Well in my attempt to rebase to get the correct .github/workflows/mlc_config.json, I seemed to have totally foobarred this PR.

Replaced by PR 222

reopened, this is the correct one

closing in favor of a combined one for CAPI https://github.com/armory/docs/pull/219


This is a proposal to add example duration to the the html formatter's output

This is just a conversation starter. Happy to modify the actual implementation as you see fit. In particular, I haven't updated the html formatter spec yet, since I want to get feedback on this implementation before jumping through all the specs.

@richievos - 3 decimal places resulted in a bunch of examples with 0.000s. On the one hand it made me happy that they took virtually no time, but it was also not very helpful :)
I played around w/ different numbers and landed on 5, and updated the total run time and the time for failed examples to use the same format.

I was debating the number of decimal places to go with. I chose 3 because it seemed like anything below milliseconds was probably going to be noise, or something I personally wouldn't be that interested in. Meaning, that the 4th and 5th decimal place were probably below the level where they'd be realistically something I'd bother looking into, and may be noisy enough that they're not reliably useful.
However, your specs hopefully run faster than mine, so your call :)
Thanks for the merge!