Leapp preupgrade report failed

Playbook:
- name: Analysis
  hosts: '*<IP_ADDRESS>'
  strategy: free
  gather_facts: true
  become: true
  force_handlers: true
  vars:
    leapp_preupg_opts: '--target 8.8'
    leapp_answerfile: |
      [remove_pam_pkcs11_module_check]
      confirm = True
  tasks:
    - name: Generate preupgrade analysis report
      ansible.builtin.import_role:
        name: infra.leapp.analysis

OS release
cat /etc/redhat-release
Red Hat Enterprise Linux release 8.7 (Ootpa)

Role is failing on Leapp usage syntax:
invalid choice: '8.8' (choose from '9.3')
cat /var/log/ripu/ripu.log
RIPU preupgrade analysis
Job started at 2023-12-07T15:11:29Z
usage: leapp preupgrade [-h] [--nogpgcheck]
                        [--report-schema {1.0.0,1.1.0,1.2.0}] [--target {9.3}]
                        [--iso ISO] [--channel {ga,tuv,e4s,eus,aus}]
                        [--enablerepo <repoid>] [--no-rhsm-facts]
                        [--no-insights-register] [--no-rhsm] [--verbose]
                        [--debug] [--whitelist-experimental ActorName]

Description:

Generate preupgrade report

Optional arguments:
  -h, --help            show this help message and exit
  --nogpgcheck          Disable RPM GPG checks. Same as yum/dnf --nogpgcheck
                        option.
  --report-schema {1.0.0,1.1.0,1.2.0}
                        Specify report schema version for leapp-report.json
  --target {9.3}        Specify RHEL version to upgrade to for default
                        detected upgrade flavour
  --iso ISO             Use provided target RHEL installation image to perform
                        the in-place upgrade.
  --channel {ga,tuv,e4s,eus,aus}
                        Set preferred channel for the IPU target.
  --enablerepo <repoid>
                        Enable specified repository. Can be used multiple
                        times.
  --no-rhsm-facts       Do not store migration information using Red Hat
                        Subscription Manager. Automatically implied by --no-
                        rhsm.
  --no-insights-register
                        Do not register into Red Hat Insights
  --no-rhsm             Use only custom repositories and skip actions with Red
                        Hat Subscription Manager
  --verbose             Enable verbose logging
  --debug               Enable debug mode
  --whitelist-experimental ActorName
                        Enables experimental actors
error: argument --target: invalid choice: '8.8' (choose from '9.3')
Job ended at 2023-12-07T15:12:46Z

The infra.leapp collection is for doing upgrades of the RHEL major version, for example, from 8.x to 9.x. It looks like you are trying to go from 8.7 to 8.8?

Yes, 8.7 to 8.8.
Didn’t know about this limitation. I think it’s worth to make a debug statement before trying leapp that upgrade is not possible between minor versions and end play.

Didn’t know about this limitation.

Not a limitation as much as just not in the scope of what Leapp and this role do.

I think it’s worth to make a debug statement before trying leapp that upgrade is not possible between minor versions and end play.

I respectfully disagree. We depend on the Leapp framework to determine what upgrade paths are possible and adding logic to the role to do the same would be redundant. It would also be problematic because the supported upgrade paths change over time as Red Hat releases new minor versions.

8.7 to 8.8 is a minor release you can just dnf update.....


[Upcoming issue] Datapack load error with FD 0.6/1.1

Hi there! 😄
This issue is mostly a heads-up regarding changes to an upcoming release of FD, 0.6 (1.16) and 1.1 (1.18).
It seems Corn Delight is consulting FD's internal configs to determine whether to generate corn in shipwrecks and village houses. Due to the addition of several new chest loot modifications, I have recently removed these configs, substituting them for a universal generateFDChestLoot key.
This causes the current version to suffer a datapack load error, as shown in the logs below.
Though I understand why it was done, I don't recommend basing your add-on's features around FD's configs directly, as those are subject to minor changes. Might be better to have your own separate config here.
Sorry for the inconvenience! 😓
Logs:
https://pastebin.com/yYYmFzNQ

Roger that, thanks.

1.18.2 Now Finished


Update pre-commit

Closes #
📑 Description

✅ Checks

[ ] My pull request adheres to the code style of this project
[ ] My code requires changes to the documentation
[ ] I have updated the documentation as required
[ ] All the tests have passed

☢ Does this introduce a breaking change?

[ ] Yes
[ ] No

ℹ Additional Information

:white_check_mark: Build Sankhya-SDK-dotnet 3.0.944 completed (commit https://github.com/guibranco/Sankhya-SDK-dotnet/commit/757037c980 by @guibranco)


Docker Windows Container: DllNotFoundException: Unable to load DLL 'gdiplus.dll' or one of its dependencies

Hi guys,
I have an issue regarding libgdiplus which on windows containers.
I google a lot here and there but all answers are related Linux.
Anyone have any ideas on how to fix the issue?
Below is my windows container dockerfile.
Dockerfile Content
FROM mcr.microsoft.com/dotnet/aspnet:5.0 AS base
WORKDIR /app
EXPOSE 80
EXPOSE 443
FROM mcr.microsoft.com/dotnet/sdk:5.0 AS build
WORKDIR /src
COPY ["WebAPI/WebAPI.csproj", "WebAPI/"]
RUN dotnet restore "WebAPI/WebAPI.csproj"
COPY . .
WORKDIR "/src/WebAPI"
RUN dotnet build "WebAPI.csproj" -c Release -o /app/build
FROM build AS publish
RUN dotnet publish "WebAPI.csproj" -c Release -o /app/publish
FROM build AS final
WORKDIR /app
COPY --from=publish /app/publish .
ENTRYPOINT ["dotnet", "WebAPI.dll"]

I believe this dll is not present in the image you're using as it is a dotnet core image and that uses Nano Server. I'm not sure it is present in the Server Core image either, but would be the first thing to try out. The image to try would be https://hub.docker.com/_/microsoft-dotnet-framework-aspnet.
If that image doesn't work, you can still try the Windows image: https://hub.docker.com/_/microsoft-windows. However, I don't think there's a dotnet image based on that base image, so if it gets to that, you'll have to build the app on that image by hand.

Happy to open this issue once we hear back from the user.

This same on image mcr.microsoft.com/dotnet/aspnet:6.0

With mcr.microsoft.com/dotnet/framework/aspnet:4.8 I was unable to start container in Azure (App Service)


chore(deps): update dependency @qiwi/multi-semantic-release to v5

This PR contains the following updates:

Package
Type
Update
Change

@qiwi/multi-semantic-release
devDependencies
major
3.15.0 -> 5.0.3

Release Notes

qiwi/multi-semantic-release
v5.0.3
Compare Source
Bug Fixes

fix nextType resolver (606914b)

v5.0.2
Compare Source
Bug Fixes

add sync point for publish step (adc823e)

v5.0.1
Compare Source
Bug Fixes

fix cascade bumping when some dep belongs to several levels of the dep tree (cf20dea)

v5.0.0
Compare Source
Features

enable sequentialPrepare flag by default (ad7e81f)

BREAKING CHANGES

sequentialPrepare is set to true, to disable pass --no-sequential-prepare option

4.0.3 (2022-03-01)
Bug Fixes

update manifest version before npm plugin prepare step (a1ae4c3), closes #58

4.0.2 (2022-02-22)
Bug Fixes

pin npm as peer dep (67d8b80)

4.0.1 (2022-02-22)
Bug Fixes

pin npm version to v8.4.1 (22c89d1), closes #60

v4.0.3
Compare Source
Bug Fixes

update manifest version before npm plugin prepare step (a1ae4c3), closes #58

v4.0.2
Compare Source
Bug Fixes

pin npm as peer dep (67d8b80)

v4.0.1
Compare Source
Bug Fixes

pin npm version to v8.4.1 (22c89d1), closes #60

v4.0.0
Compare Source
Features

bump semrel to v19 (e6b8acb)

BREAKING CHANGES

semrel npm plugin calls local npm version semantic-release/npm#445

3.17.1 (2021-12-29)
Bug Fixes

fix globbing on Windows (#57) (1d71d21)

v3.17.1
Compare Source
Bug Fixes

fix globbing on Windows (#57) (1d71d21)

v3.17.0
Compare Source
Features

handle .cjs configs (38f657a)

v3.16.0
Compare Source
Features

add --tag-version-format flag (259864c)

Configuration
📅 Schedule: At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.

[ ] If you want to rebase/retry this PR, check this box.

This PR has been generated by Renovate Bot.

Renovate Ignore Notification
As this PR has been closed unmerged, Renovate will ignore this upgrade and you will not receive PRs for any future 5.x releases. However, if you upgrade to 5.x manually then Renovate will then reenable updates for minor and patch updates automatically.
If this PR was closed by mistake or you changed your mind, you can simply rename this PR and you will soon get a fresh replacement PR opened.


NPM package

Hi there!
We are integrating Philips device support into our web application, and aim to use dictation_support.
Our issue is that there is no available NPM package (preferably published in the NPM registry) with appropriate Typescript typings in it, that we could just easily add to our project.
The supplied (generated) index.d.ts file follows the "module" logic (declares modules) but when including said modules in for example a WebPack based bundled project, the modules are not found ("moduleResolution": "node",), there are no corresponding module folder structure.
Example imports with the supplied index.d.ts:
import { DictationSupport } from 'dictation_support';
import { DictationDevice } from 'dictation_support/dictation_device';
import { ButtonEvent } from 'dictation_support/dictation_device_base';
import { DictationDeviceManager } from 'dictation_support/dictation_device_manager';

The buid process fails with module 'dictation_support' not found without aliasing the resolved imports
So in order to use the build index.d.ts, we have to either:

Create a custom folder for the device-control library and either create a package.json pointing to the sdk.js or rename it to index.js

configureWebpack: {
    resolve: {
      alias: {
        dictation_support$: path.resolve('./packages/device-control-google-sdk'),
      },
    },
  },

Or build a custom d.ts file with a declared namespace for DictationSupport and put everything from every declare module 'xyz' into that declared namespace, and register it globally, in order to use the types for the library correctly from a Typescript project.

Although the above approaches are workable, they require extensive manual maintenance if anything gets updated in this library and completely lack versioning.
I think it would be really beneficial for the ease-of-use and maintaining aspects of this project if it would have an appropriate NPM package released and constantly updated with changes. All integrators would have a much easier (and standard) way of using the package and would probably help with the adoption rate as well!
Thanks in advance!

I have created https://github.com/GoogleChromeLabs/dictation_support/pull/9 as fix and will push as npm package once reviewed and landed. That should fix your issues and allow the package to be used as you intend.
Initially, we only had usage by including the precompiled SDK directly in mind, but you have a totally valid usage scenario here.

I´ll re-open this until we have an NPM package with appropriate Typescript typings in it

I´m closing this issue as done. npm package has been created, and it has been linked to this github repo. We can handle the request for automated npm publishing in another issue (if needed)


Build with VS 2015

Also simplifies build string as per @jakirkham's comment.
Closes #7.

Hi! This is the friendly automated conda-forge-linting service.
I just wanted to let you know that I linted all conda-recipes in your PR (recipe) and found it was in an excellent condition.

@inducer was there a specific reason why llvm was built with an older version of MSVC?

The appveyor build has completed although the status does not appear complete in the PR.

As discussed in https://github.com/conda-forge/llvmdev-feedstock/pull/7, please try ninja instead of nmake. Let's try to avoid wasting our precious CI time.

@jakirkham what do you think of going forward with this? The appveyor queue is short enough, and I could get the clang migration to conda-forge right after the appveyor for the merge commit has passed.

I've created a branch to build with ninja: https://github.com/SylvainCorlay/llvmdev-feedstock/pull/1
Feel free to merge, rebase, or just copy the code.

Here is one of the jobs that is still running: https://ci.appveyor.com/project/gqmelo/llvmdev-feedstock/build/1.0.8/job/8qvc959op5tcxy83

@gqmelo I merged your PR. Thanks!


CORE-9382 Retries when CPKs not available

Implemented retries of processing VerifyContractsRequest when error occurred during retrieving CPKs required for Verification Sandbox. Redelivery state is tracked with VerifyContractsRequestRedelivery and redeliveries are scheduled by RedeliveryScheduler.

I thought so as well and checked with @mnesbit and he said it needs to be implement this way.
@mnesbit could you please put more details here?

I tend to agree with Dan, In this cases, with a single producer (which I believe is the case here?), it makes sense to re-use the producers retry logic. The flow code (which I assume this pattern is taken from) is a very different case with regards to input events & state management, which is why it needs to generates it's own retry events.

Are there any cases where we're expecting to do transaction verification checks outside of flow (well, ledger) code? I could see us wanting to do this in some recovery scenarios potentially?

The flow external events framework should reuse the same ID/Key in a retry (@lankydan correct me If I'm wrong here) so it should go back to the same worker, I don't think the worker stickiness would be different between the two types of retry.

The flow external events framework should reuse the same ID/Key in a retry (@lankydan correct me If I'm wrong here) so it should go back to the same worker, I don't think the worker stickiness would be different between the two types of retry.

Yes, that is correct.

This is not needed anymore as it was decided that retries will be implemented using transient exceptions.


Kubelogin with SPN(service principal) option is note described.

[Enter feedback here]
On the kubelogin section,
https://docs.microsoft.com/en-us/azure/aks/manage-azure-rbac#use-azure-rbac-for-kubernetes-authorization-with-kubelogin
there is no description for kubelogin with SPN (service principal option).
However I fount that It is possible to kubelogin with SPN: https://github.com/Azure/kubelogin#service-principal-login-flow-non-interactive
Please kindly consider to add description for kubelogin with SPN.

Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: 42afd8de-b697-100c-98c7-ae8e6a6f1b92
Version Independent ID: 81674054-0ea2-210b-2e65-18a0f15617c1
Content: Manage Azure RBAC in Kubernetes From Azure - Azure Kubernetes Service
Content Source: articles/aks/manage-azure-rbac.md
Service: container-service
GitHub Login: @palma21
Microsoft Alias: jpalma

@eyoh5  Thank you for your feedback. We have shared the same with the content author.

Thanks for the feedback @eyoh5!
There is a link in the documentation to the kubelogin repository which shows the different ways of authenticating.
#please-close


Types related to ReactNode inferred incorrectly when using React 17

TL;DR: Array.map on ReactNode[] outputs something like ({} | null | undefined)[].
Answer: Because ReactNode in React 17 is equivalent to unknown.

“Bug” Report
Bug Report
Search Terms
Array.map, generics, union type, unknown
Version & Regression Information
This is the behavior in every version I tried
Link to Repro
I am not able to change the React version in the playground, so here is the link to CodeSandbox
Code
import type { ReactNode } from "react";
import type { Equal, Expect } from "@type-challenges/utils";

function test1(nodes: ReactNode[], fallback: ReactNode = <div />) {
  return nodes.map((item) => item || fallback);
}

function test2(nodes: ReactNode[], fallback: ReactNode = <div />) {
  return nodes.map((item) => (item === "" ? fallback : item));
}

function test3(nodes: ReactNode[], fallback?: ReactNode) {
  return nodes.map((item) => item || fallback);
}

function test4(nodes: ReactNode[], fallback?: ReactNode) {
  return nodes.map((item) => (item === "" ? fallback : item));
}

type Test1 = Expect<Equal<ReturnType<typeof test1>, ReactNode[]>>;
type Test2 = Expect<Equal<ReturnType<typeof test2>, ReactNode[]>>;
type Test3 = Expect<Equal<ReturnType<typeof test3>, ReactNode[]>>;
type Test4 = Expect<Equal<ReturnType<typeof test4>, ReactNode[]>>;

Actual behavior
In non-strict mode, the return type of test1 and test3 is {}[], and the other two produces ReactNode[].
In strict mode, the return type of test1 is ({} | null)[], test2 and test3 produces ({} | null | undefined)[], and the remaining one produces ReactNode[].
Expected behavior
The return type of all of the 4 functions above being ReactNode[].
React 17, not React 18.

ReactNode is
type ReactNode = ReactChild | ReactFragment | ReactPortal | boolean | null | undefined;

and ReactFragment is {} | Iterable<ReactNode>.
{} is the supertype of everything except null and undefined. So ReactNode reduces to {} | null | undefined (which is actually interchangeable with unknown in 4.8) when you poke it enough to force subtype reduction, e.g., in narrowing.
To get a feel for how this works, we can just look at test1. Since fallback has a default value, it actually narrows down from ReactNode. We know that fallback can be any one of the things ReactNode can be, except actually not undefined, since we can tell <div /> is not undefined. So we remove undefined from the possible return type of the map callback:
- ReactChild | {} | Iterable<ReactNode> | ReactPortal | boolean | null | undefined
+ ReactChild | {} | Iterable<ReactNode> | ReactPortal | boolean | null

and then do subtype reduction to remove redundant types, which leaves us with {} | null—that is, any possible value except undefined.
So this is actually a more specific type than ReactNode, which is equivalent to unknown. TypeScript is helping you narrow down what’s actually possible for this function to return. This is a feature. Operating on a pretty useless type, ReactNode. Literally anything can be a ReactNode—don’t let it trick you with its specific-sounding name—so it’s not surprising the return types are also pretty vague.
You’re free to annotate the return types of your functions as ReactNode if you want them to remain unknown.

@andrewbranch Oh I get it now. I missed the typing of ReactFragment. I should have inspected the type more carefully. A tooltip like type ReactNode = unknown would be helpful, nevertheless.
So this must be a DefinitelyTyped issue then. Does anyone know how come the definition of ReactNode in React 17 is so loose? (I understand changing this breaks things, but I am still looking for a (historical) reason.)
Well I guess I’m going to migrate to React 18 when I get some time.


Set up Github exporter for libp2p org

Using this: https://github.com/githubexporter/github-exporter

The github exporter hits the githup API too often and doesn't report all of the required metrics. Plus it doesn't create a historical record that can be used to do long-term analysis and KPI reporting. Closing this for now but will likely need to build a new exporter and solve the long-term storage problem with either Thanos or something like it.


Added inline roll data support to rolling items/features

When rolling an item or feature on a character sheet, it was not possible to make an inline roll in the description that included some data. For example, [[1d6 + @abilities.str.mod]]
I added actor data to the roll so the roll has proper context.

Cool. Easy enough fix.


The Audiences not work. The percentage of your users who are identified with each interest category.

Closing as a duplicate of #6494.


Whitelisted MDC keys in Sletuh are not present when Trace is enabled

Describe the bug
Cloud version: Hoxton.SR3
Boot version: 2.2.5
We configure Sleuth to include request headers in the mdc (for logs). It works well with the StackdriverJsonLayout by default, but after enabling trace, these headers are not populated anymore.
The expected behavior is that the population of MDC should work and be included in logging statements no matter if trace is enabled or not.
Including sample project with a test to verify the behavior. Enabling/disabling trace will make the test pass or fail.
demo.zip

Thanks for the report and the reproducible example @olssonoskar . I will take a look at this for you and hope to followup shortly.

@meltsufin - Some initial first thoughts after debugging - I think this might be related to zipkin code since the traces bring in Zipkin; maybe there is some code in our Zipkin dependencies that is not forwarding the MDC headers correctly.

@adriancole Do you have hints for us on how to investigate this?

@olssonoskar can you make a fork of this branch and add your changes to it (without gcp in use) I'd like to see if this is sleuth in general or specifically when -gcp is involved https://github.com/openzipkin/sleuth-webmvc-example#spring-webflux-tracing
when done, post your fork back here which has a commit of your changes. it makes it really easy to validate. cheers!

@meltsufin first trying to see if this has to do with the assembly hooks added by sleuth

I tried spring.sleuth.log.slf4j.whitelisted-mdc-keys=req-id instead of log.slf4j.whitelisted-mdc-keys=req-id as recommended in the documentation and it worked for me.

Never mind, my mistake. You actually have the right property in your example.
Continuing to investigate...

The difference I'm seeing is in the default extractor in the HttpServerHandler.
ExtraFieldPropagation$ExtraFieldExtractor
vs.
CompositeExtractor with B3Propagation and XCloudTraceContextExtractor.

I guess we need to add  ExtraFieldPropagation extractor here.

It looks like the same issue as https://github.com/openzipkin/zipkin-gcp/issues/167.
cc/ @elefeint @adriancole

should be a bit easier to workaround as this has come up before.
From TraceAutoConfiguration
		ExtraFieldPropagation.FactoryBuilder factoryBuilder;
		if (this.extraFieldPropagationFactoryBuilder != null) {
			factoryBuilder = this.extraFieldPropagationFactoryBuilder;
		}
		else {
			factoryBuilder = ExtraFieldPropagation
					.newFactoryBuilder(B3Propagation.FACTORY);
		}

So, if you provide a bean like this.
@Bean ExtraFieldPropagation.FactoryBuilder() {
  return ExtraFieldPropagation.newFactoryBuilder(YOUR_FACTORY);
}

should work I think

because you just need to wrap your factory. I wouldn't do any more engineering than this because the concept of how correlation fields work is likely to change anyway at some point.

@adriancole Thanks for the suggestion! This is perfect because we would no longer skip all of the logic in TraceAutoConfiguration.sleuthPropagation().

@olssonoskar We're waiting for the next Brave release to be added to Sleuth, but in the meantime, you can just add this bean to your application configuration to get the extra fields working.
	public ExtraFieldPropagation.FactoryBuilder extraFieldPropagationFactoryBuilder() {
		return ExtraFieldPropagation.newFactoryBuilder(StackdriverTracePropagation.FACTORY);
	}

I see, still great that the issue was resolved!
Any possibility that this will not be included in the release of 1.2.3 since awaiting brave release?

1.2.3 is currently scheduled for March 11 along with the rest of the Spring Cloud release train.
It should make it in. We're waiting for the next Brave release and the Sleuth release that would follow.

fyi for the moment, 2.x sleuth will stay with ExtraFieldPropagation eventhough it is deprecated. made changes here in brave 5.11 https://github.com/spring-cloud/spring-cloud-sleuth/pull/1595
3.x sleuth will move to the new BaggageField type for configuration, including BaggagePropagation. This is a lot more flexible, but the main difference for you is using that builder as an entrypoint instead of ExtraFieldPropagation.FactoryBuilder
In both cases you can use BaggageField to get values (even if configured implicitly with ExtraFieldPropagation.FactoryBuilder) we might make some backwards safe trick for sleuth 2.x who supply BaggagePropagation.FactoryBuilder, though.. will keep you posted.

Is Sleuth 2.2.x going to move to Brave 5.11.1? If so, are you expecting to release it soon? Thanks!

It is already 5.11.1 I'm not sure the next release of 2.2.x. I know 3.0 milestone (boot 2.3.x) seems to be blocking on me for monday.
https://github.com/spring-cloud/spring-cloud-release/milestones
@marcingrzejszczak do you know?


Consider replacing use of REST with HTTP

This project does not attempt to follow REST API design principles.
It aims to provide a cohesive HTTP API that makes it easy for new/existing developers to build iRODS software.

Closing as the project name has been changed to use HTTP instead of REST.


Fix issue with Menu index.html example

Sample code did not work as-is.

Please add [ci skip] to the beginning of your commit if you only do changes on the documentation.
More information here: https://github.com/atom/electron/blob/master/CONTRIBUTING.md#git-commit-messages

The original example seems correct. That example is for a context menu, so the fact that it doesn't set an application menu is fine. The second example in the doc, shows you how to set an application menu.

@etiktin - Agreed and thanks for pointing that out.
Sorry about the noise.


#1: add support for horses in database initialization

Aadds support for horses in databaase initialization

/paulo - can you please review this pull request?

/paulo - can you check now?


Fix up DynamoDB Watcher

Don't gather account limits (needs more permissions)
Don't collection anything by default: make it flag controlled (so we don't have to give permissions to ingester and distributor)

Will need post merge review #97

Yes, fair enough.


SEARCH clause bug with subquery

My Environment

ArangoDB Version:        3.6.0
Storage Engine:             RocksDB
Deployment Mode:       Single Server
Deployment Strategy:   Manual Start
Configuration:
Infrastructure:               own
Operating System:        MacOS 10.14.5
Total RAM in your machine:        16Gb
Disks in use:       SSD
Used Package:              tar.gz downloaded from ArangoDB website

Component, Query & Data
Affected feature:
AQL query using web interface
AQL query (if applicable): See below
AQL explain (if applicable):
See below
Dataset:
See below
Replication Factor & Number of Shards (Cluster only):
N/A
Steps to reproduce
Given the following:
db.test.drop()
db._create("test")
db.test.save({ "id": "1", "visits": [{ "city": "Toronto", "country": "Canada" }, { "city": "Vancouver", "country": "Canada" }, { "city": "Paris", "country": "France" }, { "city": "Paris", "country": "Canada" }] })
db.test.save({ "id": "2", "visits": [{ "city": "Paris", "country": "France" }, { "city": "Toronto", "country": "Canada" }] })
db._createView("test-view", "arangosearch", {links: {test: {includeAllFields: true}}})

The following (incorrectly) returns both records:
FOR x IN `test-view`
SEARCH
LENGTH(
    FOR p IN `test-view`
        FILTER p._key == x._key
        AND LENGTH( p.visits[* FILTER CURRENT.city == "Paris" AND CURRENT.country == "Canada" LIMIT 1] ) > 0
        LIMIT 1
        RETURN p
) > 0
RETURN x

The following (correctly) returns the first record:
FOR x IN `test-view`
FILTER
LENGTH(
    FOR p IN `test-view`
        FILTER p._key == x._key
        AND LENGTH( p.visits[* FILTER CURRENT.city == "Paris" AND CURRENT.country == "Canada" LIMIT 1] ) > 0
        LIMIT 1
        RETURN p
) > 0
RETURN x

I really need the first query to work since I need the SEARCH clause to combine with some other filtering that needs to be combined together in that SEARCH clause.
Explain plans show the issue:
WRONG (using the SEARCH clause):
Execution plan:
 Id   NodeType            Calls   Items   Runtime [s]   Comment
  1   SingletonNode           1       1       0.00000   * ROOT
  8   SubqueryNode            1       1       0.00009     - LET #4 = ...   /* subquery */
  2   SingletonNode           1       1       0.00000       * ROOT
  3   EnumerateViewNode       1       1       0.00003         - FOR p IN test-view   /* view query */
  4   CalculationNode         1       1       0.00005           - LET #6 = ((p.`_key` == x.`_key`) && (LENGTH(p.`visits`[* FILTER ((#2_.`city` == "Paris") && (#2_.`country` == "Canada")) LIMIT  0, 1]) > 0))   /* simple expression */
  5   FilterNode              1       1       0.00000           - FILTER #6
  6   LimitNode               1       1       0.00000           - LIMIT 0, 1
  7   ReturnNode              1       1       0.00000           - RETURN p
  9   EnumerateViewNode       1       2       0.00003     - FOR x IN test-view SEARCH (LENGTH(#4) > 0)   /* view query */
 10   ReturnNode              1       2       0.00000       - RETURN x

CORRECT (using the FILTER clause)::
 Execution plan:
 Id   NodeType            Calls   Items   Runtime [s]   Comment
  1   SingletonNode           1       1       0.00000   * ROOT
  2   EnumerateViewNode       1       2       0.00004     - FOR x IN test-view   /* view query */
  9   SubqueryNode            1       2       0.00007       - LET #4 = ...   /* subquery */
  3   SingletonNode           2       2       0.00000         * ROOT
  4   EnumerateViewNode       3       3       0.00002           - FOR p IN test-view   /* view query */
  5   CalculationNode         3       3       0.00003             - LET #6 = ((p.`_key` == x.`_key`) && (LENGTH(p.`visits`[* FILTER ((#2_.`city` == "Paris") && (#2_.`country` == "Canada")) LIMIT  0, 1]) > 0))   /* simple expression */
  6   FilterNode              2       1       0.00000             - FILTER #6
  7   LimitNode               2       1       0.00000             - LIMIT 0, 1
 13   CalculationNode         2       1       0.00000             - LET #10 = true   /* json expression */   /* const assignment */
  8   ReturnNode              2       1       0.00000             - RETURN #10
 10   CalculationNode         1       2       0.00000       - LET #8 = (LENGTH(#4) > 0)   /* simple expression */
 11   FilterNode              1       1       0.00000       - FILTER #8
 12   ReturnNode              1       1       0.00000       - RETURN x

This seems to be related to issue #10583

As explained on Slack by @gnusi, it is considered a bug that the query does not raise an error for such an unsupported query.
It is basically impossible to correctly process a query with a dependent sub-query. It's unclear what should be executed first: sub-query or main query. So the only possibility for now is to use FILTER.
FILTER always means post-processing, that's why it's perfectly valid to use dependent sub-queries. The SEARCH condition is a part of the EnumerateViewNode in the execution plan, therefore it's unclear what should be done first (like the chicken or egg problem).
The underlying search engine already supports indexing the city and country fields with positions, so that you can ask it to find all documents where the positions of city and country match. It's not exposed in AQL yet, but this is how it could look like:
FOR d IN myView
  SEARCH IS_SAME_POSITION(d.visits.country == 'Canada', d.visits.city == 'Paris')
  RETURN d

The query would match:
{
  visits : [ { country : "Canada", city: "Paris" }, { country: "Germany", city: "Cologne" } ]
}

but not:
{
  visits : [ { country: "France", city: "Paris" }, { country: "Canada", city: "Toronto" } ]
}


don't install pytest-codspeed on non x86_64 machines

Change Summary
Should fix failures like https://github.com/pydantic/pydantic-core/actions/runs/5879887441/job/15946120306
Related issue number
N/A
Checklist

[ ] Unit tests for the changes exist
[ ] Documentation reflects the changes where applicable
[ ] Pydantic tests pass with this pydantic-core (except for expected changes)
[ ] My PR is ready to review, please add a comment including the phrase "please review" to assign reviewers

please review


Add azure storage support

@joeldenning I didn't delete the yarn.lock file. npm had just generated its own lock file. The lock file is still there, and it is up-to-date.


Update rxFS.js

I eliminate the bug of "searching for files, listing files" and beautify the blocks.

Thank you for your patience
These changes look to be backwards incompatible. So we can either:

Keep all of the old blocks around forever, but hide them from the block list and add new ones to replace the old ones
Add an "rxfs2" extension to replace the old one on the homepage and not touch the old one

I choose the first one
"Keep all of the old blocks around forever, but hide them from the block list and add new ones to replace the old ones"

I suppose there is a third solution, we probably can consider a repository of not open source/proprietary extensions and move this one there

Can I make you a “共同 开发者”? This way, you can update the extension.
please E-mail to<EMAIL_ADDRESS>to registration.

I actually wasn't aware of this and now I have to remove this extension from one of my projects. This is a very sketchy practice from  0832k12 and I don't think I'll trust using their code in the future.

Sorry, I feel guilty for my mistake and the impact it has had on your work. I will not use this license again in the future.
@GarboMuffin @TheShovel

"directly compatible with MIT license" is good enough for us; we will use it under that license. thank you, will get this into the next batch of merges


Search for words with spaces

Hello maybe someone can help me,
I'm using Search Query and Term Suggester to build a search and it's working pretty good.
The only thing that doesn't work is e.g.
MexicoCity
when the correct entry is: Mexico City.
Is this kind of search correction possible with ES?
Would be great if I don't have to modify my data definition in the database.
What can fuzzy search do for me?

Hi @senj please ask this question on https://discuss.elastic.co/c/elasticsearch
GitHub issues are reserved for bug/feature requests, or questions about the .NET client itself.


go get fails to get github.com/mibk/g..

What version of Go are you using (go version)?

$ go version
go version go1.11.4 linux/amd64

Does this issue reproduce with the latest release?
Yes. This is a side effect of the security fix in 1.11.3, https://github.com/golang/go/issues/29230.

What did you expect to see?
g.. successfully installed.
What did you see instead?
package github.com/mibk/g..: github.com/mibk/g..: invalid import path: malformed import path "github.com/mibk/g..": double dot

The fix was made in 1.11.4 (https://github.com/golang/go/issues/29241), which you seem to have. Are you certain there are no conflicting versions of Go installed ?

I believe the fix in 1.11.4 only fixed go get github.com/user/repo/...

@nkovacs
I believe "g.." is violating package name [1].  Even if its work with previous Go version, it should not.
[1] https://golang.org/ref/spec#PackageName

g.. is not the package name though. It's just the repo name. The package name is main.

I see. The repo name itself is g...
/cc @bcmills

Sorry, but there are too many ways to play games with leading and trailing dots to produce name collisions on various filesystems, and this particular example appears to be deprecated since Go 1.9 anyway.


Add use_container_width argument

Add use_container_width argument in streamlit_image_coordinates method it would be so useful

👍 +1 on this! It would be super useful!

yes I don't want to use that white iframe . Would be great if there is option for that feature be removed

+1 on this! Could definitely use this feature :)

Closed by #13


Calendar's height on different orientations(landscape/portrait)/device sizes

Version of flutter_calendar_carousel
1.3.10
Assume a list/column in which it's children are [Calendar, Text] widgets.
Expected behavior
Wrap the height suppose in the vertical list, so that the next the element in the list is rendered wherever the actual calendar ends.
Actual behavior
Rather whatever height we give to widget only that part is rendered and the rest part is clipped, and the next element is rendered.

flutter doctor result (run flutter doctor in terminal)
[✓] Flutter (Channel stable, v1.2.1, on Mac OS X 10.14.1 18B75, locale en-GB)
[✓] Android toolchain - develop for Android devices (Android SDK version 28.0.3)
[✓] iOS toolchain - develop for iOS devices (Xcode 10.1)
[!] Android Studio (version 3.3)
    ✗ Flutter plugin not installed; this adds Flutter specific functionality.
    ✗ Dart plugin not installed; this adds Dart specific functionality.
[✓] VS Code (version 1.32.3)
[✓] Connected device (2 available)

! Doctor found issues in 1 category.

Steps to reproduce the behavior
Just create a list/column in which it's children are [Calendar, Text] widgets with Calendar having some height so that the whole calendar is visible. And then rotate to landscape.

I can hardly understand the problem here. The gif provided looks expected. Could you make it more clear for me and others to understand the problem?

I can hardly understand the problem here. The gif provided looks expected. Could you make it more clear for me and others to understand the problem?

Once orientation is landscape, the dates below 10 - 16 are not visible and are occluded.

Ok I see this now.. Hope you can give PR with this problem if you could since I am running out of time working on other things currently.


Add ability to provide helm values to tele build.

Add ability to override Helm values during tele build via --set and --values flags - flag names are the same as in helm commands and gravity app commands. Closes https://github.com/gravitational/gravity/issues/903.
Should be pretty easy to backport to 6.x as well.

Will this provide the same functionality that executing a "helm install" with value overwriting from multiple value files ex.
helm install . -n nodde_name --namespace dev -f ./values.yaml -f ./dev.yaml --debug --dry-run
With this command dev.yaml overwrites values in values.yaml, if this the functionality that was built into this change?
Would I do something like:
tele build -o project.tar mattermost/resources/app.yaml --values values.yaml, dev.yaml
Sorry for the question but I know it just got merged and I don't see it in the documentation.

@McKeownDesign Yes, you should be able to do that and internally these arguments are just passed to the same API used by helm template command so the behavior should be identical.
Just to clarify though, these values are only used to render helm templates in order to extract image references from them during tele build. During cluster installation, these values should still be passed to the helm install command.

@r0mant Where do you pass these to to helm install command? Is that using the --config flag on the gravity install? I don't see in the documentation where I can pass in similar helm install commands.

@McKeownDesign Would you mind asking this question on https://community.gravitational.com for easier future discoverability please? And I'll reply there. Thanks!


Enable code climate engines

This PR will enable the new (as of 2015) code climate engines
What this PR does:

enables rubocop and duplication engines
relocates our shared .rubocop.yml from the guides repo to the manageiq repo as .rubocop_base.yml since code climate doesn't support inheriting from a remote file
fully qualifies the cop names in the .rubocop_base.yml and sorts them
updates excludes based on results of files not properly excluded in my fork
You can review what this looks like on my repo on the code climate website
With the code climate browser extension, navigating code on github looks like this:

What this PR does NOT do:

we will not yet comment on PRs or add a github status check for code climate

As a follow up, I think I also want us to add the code-climate coverage tool.  Their coverage tool can only handle one suite, but if we have the coverage for even just vmdb, I'd be happy.

Great work @jrafanie


Pitch-bend range

In MIDI, the pitch-bend range is 2 semitones by default, but can be modified via specific RPN messages, usually followed by specific "Data Entry" messages.
It would be nice to have functionality that understands those messages and can report the correct pitch or pitch-bend range.
As far as I understand, the pitch-bend range is set by three to four consecutive MIDI control messages. In hexadecimal, they look like this (with variables shown in bold):
B06500
B06400
B00602
B02604
The "0" after the "B" is the MIDI channel for which the pitch-bend range is being set.
The "02" in the end of the third message is the number of semitones by which the pitch can bend.
The "04" in the end of the fourth message is the number of cents to be added to the semitones.
The last message is optional, i.e. if there is no message of the form /B.26../ (like "B02604" in the example) then the number of cents is zero.

This is one level of abstraction above what mido is currently providing.
Nothing prevents one from building a RPN/NRPN interpreter above mido though.
Don't get your hopes high unless there is a lot of interest in such a feature from the community.

Many mido-based repos intend to have correct pitch info. But the mistake of using the default pitch-bend range of 2 semitones without taking pitch-bend range messages into account is not obvious because not all MIDI files/streams have such messages and the correct pitch is not always known to the user. So they go through the tedious process of discovering this mistake late (after trying many MIDI files), searching for the reasons, implementing an RPN interpreter, and propagating the fix to their dependents and forks (of which there are many because the issue takes long to discover), often failing at one of those steps.
Do we want each such repo to go through this process separately, or would this functionality be welcome in mido?
There would be a lot of interest in the community if the community knew about this.

Thank you for your insight.
To be clear, I'm not against anyone contributing & maintaining such feature.
I'd welcome it even!
It could belong in a GM1 (For General MIDI System Level 1) module since it's specified in there (Specification reference: MMA-00007/RP-003).
The default ±2 semitones range comes from this specification and was not part of the MIDI 1.0 specification nor merged later.
It should be made clear that devices that do not conform to GM1 can have their default pitch bend range be whatever and may or may not interpret the corresponding pitch bend sensitivity RPN.

MidiFile.__iter__() iterates through the MIDI events and keeps track of info that is necessary for interpreting the meaning of later events. It keeps track of tempo changes and converts time to seconds in later events accordingly. We usually want to do that, while additionally observing pitch-bend range changes and computing correct pitch accordingly. If that loop isn't allowed to do the pitch-bend stuff, then there will be either duplicate code (duplicate code is bad practice and might lead to bugs for example if we adjust the treatment of the case time == 0 in only one of the duplicates) or the code structure will be too complex/nested where half of the already simple functionality of that function is further split into a separate function (and its remaining code will still be duplicate code shared by a gm1 module).
I don't see the advantages of having info related to General MIDI 1 in a separate module in this particular situation. The dictionary key of the output can be called 'general_midi_1' like in #535, so users can ignore that part (and maybe even set a flag to not compute it in the first place) if they don't want info from General MIDI 1.

We usually want to do that, while additionally observing pitch-bend range changes and computing correct pitch accordingly.

I don't think this is mido's responsibility. This is something that is perhaps better suited to the application side rather than the library. The library should provide the tools to make it easy for the application developer to do so but shouldn't make too much assumptions.

If that loop isn't allowed to do the pitch-bend stuff, then there will be either duplicate code (duplicate code is bad practice and might lead to bugs for example if we adjust the treatment of the case time == 0 in only one of the duplicates) or the code structure will be too complex/nested where half of the already simple functionality of that function is further split into a separate function (and its remaining code will still be duplicate code shared by a gm1 module).

I'll take a little complexity over rigidity any time.

I don't see the advantages of having info related to General MIDI 1 in a separate module in this particular situation. The dictionary key of the output can be called 'general_midi_1' like in #535, so users can ignore that part (and maybe even set a flag to not compute it in the first place) if they don't want info from General MIDI 1.

General MIDI 1 (and 2!) is a separate addenda to MIDI 1.0 to which devices can optionally adhere. It has to be separated. Remember, this is a library. We must provide flexibility to our users and not force them to use optional features. I we did, the next thing would be adding lyrics decoding in the loop, then tuning, then proprietary SysEx.
It's all about striking a balance between flexibility and useability. Your current code is undoubtedly very useful for the right audience but is not flexible enough and is force-fed to users that may not care.

We usually want to do that, while additionally observing pitch-bend range changes and computing correct pitch accordingly.

I don't think this is mido's responsibility. This is something that is perhaps better suited to the application side rather than the library.

You wrote earlier:

To be clear, I'm not against anyone contributing & maintaining such feature.
I'd welcome it even!

That's why I've made PR #535.

The library should provide the tools to make it easy for the application developer to do so but shouldn't make too much assumptions.

General MIDI 1 is an official standard used in many MIDI files. PR #535 offers access to info computed according to that standard (i.e. info that was intended by the creator of the MIDI file) via general_midi_1, so that users who are interested in exactly that info can have access to it.

We must provide flexibility to our users and not force them to use optional features.

We don't force them to read info provided as general_midi_1. We can even offer them to turn off the computation of that info to save memory or whatever. We can even turn it off by default (which would be very weird because that often ignores the intended meaning of the MIDI file) or force them to decide by not setting a default value.

the next thing would be adding lyrics decoding in the loop, then tuning, then proprietary SysEx.

We could some day. We can then let the users choose what they want: MIDI 1.0, General MIDI 1, ...
What flexibility does my code lack?
mido claims that it can read MIDI files but it can't even calculate the correct pitch...


Merge from upstream

I tested this PR with RetailSDK (a version prior to retail-payment-device refactor) and I was able to take a payment successfully. The only caveat is that we should be using Visual Studio 2015 and I am fine with it.
Although VS2015 was crashing on my machine, the Visual  Studio 2015 Update 1 patch got things working again. I am fine with merging this one.

However, this merge doesn't seem to fix the issues with BigNumber.js that we are seeing


Optionally caching decrypted values...

We're happily using Hiera-Eyaml and https://github.com/adenot/hiera-eyaml-kms to decrypt blobs on the fly on our puppet servers.. so thanks! The issue we're starting to run into though is that as we add more secrets, decryption takes long and longer. We have 500-600 hosts at any given time, and we regularly spin up 50-100 hosts in short spans. As we and more and more secrets to our codebase, we are seeing compilation times start to hit 55-60s.
While there are arguments around security here.. I think it would be useful for the Hiera-Eyaml backend to optionally cache (in memory) the secrets it has decrypted. For people where in-memory attacks on the secrets aren't a big issue, this should significantly reduce the amount of CPU and time wasted in repeatedly decrypting the same things over and over.
Thoughts?
(In thinking about the implementation, I am wondering whether it would be simpler to do this in the underlying decryption/encryption backend.)

@diranged do the changes in #239 address your request? Please feel free to test it and let us know how it improves your performance.


App-Closure: [Feature] ClosureDimension-instances implementation

Feature description
Feature description
...
TSG Closure Tiger Team:
Following the Closures specification: Need to add SDK support for new ClosureDimension-instances.
Platform
all
Platform Version(s)
No response
Anything else?
No response
Platform
all
Platform Version(s)
Matter 1.5
Anything else?
No response
Platform
all
Platform Version(s)
No response
Anything else?
No response

Covered in the server implementation.


Preventing Repeated Fetches and Resolves

When a URL is not resolved by the PWS, the client
will continue to attempt to fetch a result unnecessarily.
Also, we refetch whenever we see a new beacon rather than
only when we see a beacon not seen during the current scan

lgtm


Update to libxml2 2.9.14

libxml2 v2.9.14 was released today:
https://gitlab.gnome.org/GNOME/libxml2/-/releases
This ticket has been opened to drive the work to update to that version of libxml2 in the packaged libraries that are vendored with nokogiri. It will be released as v1.13.5. There will also be a GHSA published to reflect the fact that CVE-2022-29824 is fixed in v2.9.14.
Punchlist:

[ ] https://github.com/sparklemotion/nokogiri/issues/2468 re: incorrectly-opened comments
[ ] evaluate CVE-2022-29824 and draft a GHSA
[ ] publish v1.13.5 and the GHSA

One thing to think about with respect to the GitHub Advisory is the level of detail included. @noncombatant makes a persuasive case about The Poor State Of Information contained in CVEs and the need (as an industry) to do better.

@stevecheckoway Yup, I agree and that's why I want to spend some time evaluating whether and how the CVE is exploitable via Nokogiri, and will post more information in the GHSA

Also see https://mail.gnome.org/archives/xml/2022-February/msg00014.html for a prior conversation I had with the libxml2 maintainer about this.

Great!

Punchlist complete, closing.


fix conditional blocks, group echo and exit together

otherwise, the 'exit 1' gets executed whenever the test (which ...) returns 'true'
Signed-off-by: Gui Iribarren<EMAIL_ADDRESS>

Thanks!


Change C++ API to expose wait_for_ready instead of fail_fast.

The old set_fail_fast() method is still available for backward-compatibility, and I added a doc listing it as a pending API cleanup for the next release (cc @nicolasnoble).

retest this please

Note that this is part of addressing #7818.

I believe that the remaining test failures are unrelated to this PR.


Expose IdentitySpecification so we can change the seed value

Can you expose the IdentitySpecification  so we have a way to change the values?
Thank you

Sure,
I will ask my developer to check if that's already possible / to implement this
Best Regards,
Jon

Sponsorship
Help us improve this library
Performance Libraries
context.BulkInsert(list, options => options.BatchSize = 1000);
Entity Framework Extensions • Bulk Operations •  Dapper Plus
Runtime Evaluation
Eval.Execute("x + y", new {x = 1, y = 2}); // return 3
C# Eval Function • SQL Eval Function

Hello @tedypranolo ,
The v2.2.14 has been released.
It is now possible to set the identity seed and increment
Here is an example:
var connection = Effort.DbConnectionFactory.CreateTransient();

using (var context = new EntityContext(connection))
{
	context.Database.CreateIfNotExists();
	connection.Open();

	connection.DbManager.SetIdentity<EntitySimple>(50);
	connection.DbManager.SetIdentity<EntitySimple2>(100, 2);
}

Let me know if you need some help to get started.
Best Regards,
Jon
Is this library useful to you? Please help us by becoming a sponsor to keep it alive and supported.

Thank you so much.  This will help a lot.


Master-Slave configuration issues

Must the master/slave server have Powerdns-admin installed?

As long as the master server API port can be reached from PowerDNS-Admin, you should be fine. They don't have to be the same server.

@tmuncks
Thank you for your answer.
I would like to ask the main server installed Powerdns-admin, from the server also need to install powerdns-admin?

You can install Powerdns-admin on any server in your network, it doesn't have to be on the PDNS server itself. Does that answer your question or have I misunderstood it?

@fenice2
Powerdns master and slave How to configure?

That's now a question for here, it's already been described in the PowerDNS documentation and there's a ton of articles on the internet that cover this. Take a look at this search: https://preview.tinyurl.com/pdns-slave
I don't think a maste/slave is the best answer, I p[refer to use a percona cluster/proxysql/keepalived config to give me a HA solution. The cluster get's updated by one of the server and all the other PDNS servers just read that percona cluster DB.

@fenice2
Thanks, I'll keep looking on the Internet.

Just an tip how i do this:
I have a Mysql Galera Cluster (with 3 Servers)
On every of them runs pdns-auth + pdns-rec + powerdns-admin.
Everything of them uses the same Mysql Database (Galera Cluster)
And its working perfect here.
It doesnt matter on which of the servers i use Powerdns-admin, because of the synced database...
Just with the Avatars (the upload folder in powerdns-admin) i have to sync myself... but for that case i use incrond with a script...
Cheers :-)

@Ramalama2
Thank you for your answer.
I have used Powerdns's supermaster function to solve the master-slave.

i understand, but for me it seems like the mysql galera cluster configuration is superrior to everything...
you dont need to check if you domain is a master or slave or native domain or if there is any bug with the master/slave configuration etc etc....

If you change on Server1 sth, you get instantly the change on server2 too...
(Dunno how fast this is with a normal master-slave configuration)

The only negative sideeffect is, that its recommend to use at least 3 servers for Galera-Cluster....
Will work with 2 too, but its not recommended...
However, your 3rd server can be a VM, which runs only mysql and nothing else...
Im just asking, because im myself fascinated how awesome this configuration works :-)
Cheers :-)

@Ramalama2 @m1911
That scenario works well with Galera cluster and I use 5 VMs for my galera DBs and anything less than three servers is not a cluster. As I mentioned earlier, I also use proxysql and keepalived to provide redundancy in case any of the DB servers go down and you'll only need one IP address for your MySQL PowerDNS DB with that config.
I'd also recommend you use Precona XtraDB for the cluster, I've always had problems with MariaDB and some of the servers failing or refusing to start and/or corrupted DBs in recent versions of MariaDB. Percona is as performant and the product values data consistency for the DBs.


Wrong path for ignition config.ign in custom OEM

Here https://www.flatcar.org/docs/latest/installing/bare-metal/booting-with-pxe/#adding-a-custom-oem is written that the path for ignition config.ign in custom OEM is usr/share/oem.
But the config was not loaded.
After debugging in the flatcar with journalctl --all I found out that the correct location was usr/lib/ignition/base.d (and other subdirs).
I used the current stable channel.

Thanks, sounds like this part here should still use /usr/share/oem:
https://github.com/flatcar/bootengine/blob/a85e1977b29dbe8315733dbe1b1ab3ab84d039a2/dracut/30ignition/ignition-setup.sh#L19
pxe)
    # OEM directory in the initramfs itself
    src=/oem

Wow, so fast. Huge thanks.
I'm new to Flatcar, do you know how much time should pass before a new stable is tagged with this commit? Otherwise, I can easily go with the workaround and use the dst path directly like I did yesterday

A bugfix release should be out in around 2 weeks.

Will close already while we wait for the release


{AppService} az webapp config ssl upload: Remove deprecated OpenSSL.crypto.loads_pkcs12 for bumping pyOpenSSL to 24.0.0

Related command
az webapp config ssl upload
Description
At PR: https://github.com/Azure/azure-cli/pull/28306
azure-cli will update version from pyOpenSSL==23.2.0 to pyOpenSSL==24.0.0
OpenSSL.crypto.loads_pkcs12 is removed in 23.3.0.
Ref: https://www.pyopenssl.org/en/latest/changelog.html
Testing Guide
azdev test test_webapp_ssl
azdev test test_webapp_ssl_specify_hostname
History Notes

[Component Name 1] BREAKING CHANGE: az command a: Make some customer-facing breaking change
[Component Name 2] az command b: Add some customer-facing feature

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

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

[X] I adhere to the Command Guidelines.

[X] I adhere to the Error Handling Guidelines.

AppService

@amberwang113 Could you please ask the engineers from your team to also approve this PR?

@zhoxing-ms Silas has approved! Thanks.


Conversation Mode

A dedicated mode for fluent conversation. See Google, Microsoft or Apple apps.

interface to display running conversation

side by side, or mirrored halves of screen?
a switch for automatic synthesis after each translation
manual "turns" by pressing microfones (like chess clock)?

features for conversation

identify replicas (speech start + language detection)

may involve other issues, like #18 .

I think this is a duplicate of #21 (although this issue has a more apt name).


💚 Fix CI build x2

Upgrade the Flutter action to the latest, and run all drive tests on macOS.
Pull Request Checklist

[x] I have read the UME contribution document and understand how to contribute, commit the code according to the rules. 我已阅读过 UME 贡献文档，并了解如何进行贡献，按照规则提交了代码
[ ] I have added the necessary comments in code to ensure that other contributors can understand the reason for the change. 我在修改中已经添加了必要的注释，以确保便于其他贡献者理解修改原因
[ ] The code has been formatted by dartfmt before push. 代码在提交前已经经过 dartfmt 进行了格式化
[x] Change does not involve the adjustment of test cases. Or all existing and new tests are passing. 改动不涉及测试用例调整，或 example 工程与单元测试已经完全跑通

🚀


[BUG]: No types for nested 'with' queries

What version of drizzle-orm are you using?
^0.28.6
What version of drizzle-kit are you using?
^0.19.13
Describe the Bug
I have the following query:
  const reportsList = await db.query.reports.findMany({
    columns: {
      publicId: true,
      failedReason: true,
      createdAt: true,
      updatedAt: true,
    },
    where: (reports, { eq }) => eq(reports.userId, userId!),
    with: {
      video: {
        columns: {
          title: true,
          channel: true,
          thumbnail: true,
          publishedAt: true,
        },
      },
      content: {
        columns: { title: true, content: true, summary: true },
      },
    },
  });

The type of reportsList is:
const reportsList: {
    publicId: string;
    failedReason: string | null;
    createdAt: Date;
    updatedAt: Date | null;
}[]

The problem is that it doesn't include types for video and content.
Is this a skill issue and I'm misunderstanding something?
Expected behavior
Its my understanding from the docs that it should include types for video and content too, as mentioned here:

For any nested with queries Drizzle will infer types using Core Type API

Environment & setup
No response

I have a db package in a turbo repo with the following structure:
// schema/reports.ts

import { relations } from "drizzle-orm";
import {
  bigint,
  index,
  mysqlEnum,
  text,
  varchar,
} from "drizzle-orm/mysql-core";
import { createSelectSchema } from "drizzle-zod";
import type * as z from "zod";

import { createdAt, id, mySqlTable, publicId, updatedAt } from "./_table";
import { videos } from "./videos";

export const reports = mySqlTable(
  "reports",
  {
    id,
    publicId,
    userId: varchar("user_id", { length: 64 }).notNull(),
    videoId: bigint("video_id", { mode: "number" }).notNull(),
    contentId: bigint("content_id", { mode: "number" }),
    failedReason: varchar("failed_reason", { length: 256 }),
    createdAt,
    updatedAt,
  },
  (table) => ({
    publicIdIdx: index("public_id_idx").on(table.publicId),
    userIdIdx: index("user_id_idx").on(table.userId),
  }),
);

export const reportsRelations = relations(reports, ({ one }) => ({
  video: one(videos, {
    fields: [reports.videoId],
    references: [videos.id],
  }),
  content: one(reportContent, {
    fields: [reports.contentId],
    references: [reportContent.id],
  }),
}));

export const reportContent = mySqlTable("report_content", {
  id,
  title: varchar("title", { length: 256 }),
  content: text("content"),
  summary: varchar("summary", { length: 1024 }),
  createdAt,
  updatedAt,
});

export const reportContentRelations = relations(reports, ({ many }) => ({
  reports: many(reports),
}));

// schema/videos.ts
import { relations } from "drizzle-orm";
import { datetime, mysqlEnum, text, varchar } from "drizzle-orm/mysql-core";

import { createdAt, id, mySqlTable, updatedAt } from "./_table";
import { reports } from "./reports";

export const videos = mySqlTable("videos", {
  id,
  provider: mysqlEnum("provider", ["youtube"]).notNull(),
  providerVideoId: varchar("provider_video_id", { length: 32 }).notNull(),
  title: varchar("title", { length: 100 }),
  channel: varchar("channel", { length: 100 }),
  thumbnail: varchar("thumbnail", { length: 2048 }),
  publishedAt: datetime("published_at"),
  failedReason: varchar("failed_reason", { length: 256 }),
  createdAt,
  updatedAt,
});

export const videosRelations = relations(videos, ({ many }) => ({
  reports: many(reports),
}));

export type Video = typeof videos.$inferSelect; // return type when queried
export type NewVideo = typeof videos.$inferInsert; // insert type

// schema/_table.ts

import { createId } from "@paralleldrive/cuid2";
import { sql } from "drizzle-orm";
import {
  mysqlTableCreator,
  serial,
  timestamp,
  varchar,
} from "drizzle-orm/mysql-core";

export const mySqlTable = mysqlTableCreator((name) => `trendspot_${name}`);

export const id = serial("id").primaryKey();
export const publicId = varchar("public_id", { length: 24 })
  .$defaultFn(() => createId())
  .notNull();
export const createdAt = timestamp("created_at")
  .default(sql`CURRENT_TIMESTAMP`)
  .notNull();
export const updatedAt = timestamp("updated_at").onUpdateNow();

// index.ts

import { Client } from "@planetscale/database";
import { drizzle } from "drizzle-orm/planetscale-serverless";

import * as reports from "./schema/reports";
import * as videos from "./schema/videos";

export const schema = { ...reports, ...videos };

export { mySqlTable as tableCreator } from "./schema/_table";

export * from "drizzle-orm";

export const db = drizzle(
  new Client({
    url: process.env.DATABASE_URL,
  }).connection(),
  { schema },
);

I believe I'm experiencing similar. In my case the first level of my nested relationship (a client having many properties) is represented in the typing, but the next level of the relationship (a property having many reports) is not. The data returned by the query works as expected.
  const clients = await db.query.clients.findMany({
    where: eq(schema.clients.businessId, businessId),
    with: {
      properties: {
        with: {
          reports: {
            with: {
              images: true,
              workers: true
            }
          }
        }
      }
    }
  })

  => resulting clients Type = {
    clientId: string,
    properties: {
      propertyId: string
    }[]
  }[]

  const reports: ReportWithWorkersAndImages[] = []
  clients.forEach(c => {
    c.properties.forEach(p => {
      // @ts-ignore
      p.reports.forEach(r => {
        reports.push(r)
      })
    })
  })
  return reports

Thanks for a fab library though - I'm loving it otherwise :)

I think I found the issue in my code, in this file:
// schema/reports.ts

import { relations } from "drizzle-orm";
import {
  bigint,
  index,
  mysqlEnum,
  text,
  varchar,
} from "drizzle-orm/mysql-core";
import { createSelectSchema } from "drizzle-zod";
import type * as z from "zod";

import { createdAt, id, mySqlTable, publicId, updatedAt } from "./_table";
import { videos } from "./videos";

export const reports = mySqlTable(
  "reports",
  {
    id,
    publicId,
    userId: varchar("user_id", { length: 64 }).notNull(),
    videoId: bigint("video_id", { mode: "number" }).notNull(),
    contentId: bigint("content_id", { mode: "number" }),
    failedReason: varchar("failed_reason", { length: 256 }),
    createdAt,
    updatedAt,
  },
  (table) => ({
    publicIdIdx: index("public_id_idx").on(table.publicId),
    userIdIdx: index("user_id_idx").on(table.userId),
  }),
);

export const reportsRelations = relations(reports, ({ one }) => ({
  video: one(videos, {
    fields: [reports.videoId],
    references: [videos.id],
  }),
  content: one(reportContent, {
    fields: [reports.contentId],
    references: [reportContent.id],
  }),
}));

export const reportContent = mySqlTable("report_content", {
  id,
  title: varchar("title", { length: 256 }),
  content: text("content"),
  summary: varchar("summary", { length: 1024 }),
  createdAt,
  updatedAt,
});

export const reportContentRelations = relations(reports, ({ many }) => ({
  reports: many(reports),
}));

I'm exporting 2 tables reports and reportContent, if I remove reportContent and its relations from the file then the typing works as expected


New resource SPOStorageEntity

Pull Request (PR) description

New resource SPOStorageEntity
Updated url parameter name from CentralAdminUrl to SiteUrl

This change is

Codecov Report

Merging #87 into Dev will increase coverage by 0.18%.
The diff coverage is 100%.

@@            Coverage Diff             @@
##              Dev      #87      +/-   ##
==========================================
+ Coverage   89.98%   90.16%   +0.18%
==========================================
  Files          37       38       +1
  Lines        2745     2797      +52
  Branches        1        1
==========================================
+ Hits         2470     2522      +52
  Misses        274      274
  Partials        1        1

Impacted Files
Coverage Δ

...s/MSFT_SPOStorageEntity/MSFT_SPOStorageEntity.psm1
100% <100%> (ø)

...ControlSettings/MSFT_SPOAccessControlSettings.psm1
94.82% <100%> (ø)
:arrow_up:

...ManagedProperty/MSFT_SPOSearchManagedProperty.psm1
96.09% <100%> (ø)
:arrow_up:

..._SPOSiteDesignRights/MSFT_SPOSiteDesignRights.psm1
91.66% <100%> (ø)
:arrow_up:

...MSFT_SPOTenantSettings/MSFT_SPOTenantSettings.psm1
95.65% <100%> (ø)
:arrow_up:

...sources/MSFT_SPOSiteDesign/MSFT_SPOSiteDesign.psm1
90% <100%> (ø)
:arrow_up:

...SearchResultSource/MSFT_SPOSearchResultSource.psm1
91.97% <100%> (ø)
:arrow_up:

Continue to review full report at Codecov.

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

@NikCharlebois My thought on SiteUrl on these resources was they actually should be central admin url so this was why I didnt change variable names.. $CentralAdminUrl made more sense to me.
If you disagree I'll change them :)

@desmay, ok, let's keep the centraladminurl in there. I've attached your PR to Reviewable.IO. Please do the revision in there. Thanks

@desmay Reviewable is acting up again, Just one last comment above to handle before I can merge. Thanks


Why are all the tools commented out in the dockerfile?

https://github.com/bgruening/docker-galaxyp/blob/master/Dockerfile#L25-L62

Compile time. We are in a process of migrating everything over to conda packages and this will reduce compile time of such a large image so we can activate it all tools and test them with travis soon.
@zfrenchee we need help with this so if you want to make this happen earlier shim in :)

So if you wanted to build this image, you would uncomment all of it?


Feature/dynamic import errors

:tada: This issue has been resolved in version 1.1.0 :tada:
The release is available on:

GitHub release
npm package (@latest dist-tag)

Your semantic-release bot :package::rocket:


[Broker] Fix getTopic may hang

Link PR in KoP:
streamnative/kop#718 and failed test unit
Motivation
The bug cause by #11012, the loadOrCreatePersistentTopic has uncaught exception may cause getTopic hang.
Modifications
Caught the exception
Verifying this change
The unit test added by @kaushik-develop help to isolate and reproduce the issue.
Documentation

[x] no-need-doc

This is a bug fix, no need documentation.

/pulsarbot run-failure-checks

can we add the test case from #11290 ?
The patch makes sense to me, but if this is a fix for #11290 then it is better to commit them all together

/pulsarbot run-failure-checks

/pulsarbot run-failure-checks

/pulsarbot run-failure-checks

CI - Integration - Pulsar-IO Oracle Source / pulsar-io always timeout, I saw in #12031  is disabled this test, can anyone help me to skip this test? @eolivelli @merlimat

Rebase onto latest master branch

/pulsarbot run-failure-checks


Game crash to desktop

I be upfront that I'm using a mod-pack called "Bully Definitive Edition" is mostly contain bug fixes, interface retexture, and Improve game controls. Also it come pack with the silent patch as well from start so it should be working with it but yet I'm having crashing to desktop for every 30 min of gameplay. I tries many fixes like change compatibility mode, disable full-screen optimizations, run as an administrator, and install patches that suppose to fix it but didn't. Here is the dmp file of the crashed hoping you guys figure out what is the issues as I run out of ideas, appreciate it.
Bully.exe.20220902095404.dmp.zip

mods.


Use Cashier Model config variable

This PR allows laravel-mixpanel to use a custom Cashier model when receiving webhooks from Stripe.
Closes #90

I accidentally merged in from master branch. I'll be remaking this with a separate branch for these changes.


update for jdk-19

@imweijh Javalin 5 comes with built in loom-support, so you should be able to just remove all the code related to that. It's automatically enabled if you pass the preview flag :)

thanks for your works ;)
learn a lots from the benchmark.


Display last monitoring date before the deviations or segments list

If there is a lot of deviations or OSM segments, the Latest analysis timestamp is hidden.
Deviations list:

OSM segments list:

Related to #309.

The latest analysis timestamp has been moved to the top of the monitor map page.


fix(3739): added support for accessibility

Closes #3739

Hi @SoyDiego  @ruru-m07 , The merge option is still disabled. Please share the steps for merging this one


Treat $chocolateyErrored as a global variable, to ensure it bubbles up

Fixes chocolatey/chocolatey#663
$chocolatelyErrored was being treated by powershell as multiple local variables, so it was losing its value when it exited Chocolatey-Nuget.ps1.

This was tested successfully on Windows 2008R2, with both Powershell v2.0 and v4.0.

Started investigating how the issue came to be, as I'm sure the original error bubbling worked...
I presume (just a guess, dont know for certain), it was broken by commit https://github.com/chocolatey/chocolatey/commit/abe8bcc80e0348f14e479d6c830c9f693bac46f9 when it changed from Invoke-Expression to just calling the functions directly.

You went global - @mwrock went script - https://github.com/chocolatey/chocolatey/pull/658

I would love to see one of these 2 go in as it has required me to fork for internal use.  I put the changes in that @ferventcoder unwound :) despite them being an ugly fix.

Hmm... Do you think folks will want a 0.9.8.x along with the new choco
client at 0.9.9?
On Tuesday, January 20, 2015, Rich Siegel<EMAIL_ADDRESS>wrote:

I would love to see one of these 2 go in as it has required me to fork for
internal use. I put the changes in that @ferventcoder
https://github.com/ferventcoder unwound :) despite them being an ugly
fix.
—
Reply to this email directly or view it on GitHub
https://github.com/chocolatey/chocolatey/pull/664#issuecomment-70659364.

--
Rob
"Be passionate in all you do"
http://devlicio.us/blogs/rob_reynolds
http://ferventcoder.com
http://twitter.com/ferventcoder

Seems @mwrock went tests as well :) Probably best to close this, and merge his.
Would love to see a new 0.9.8.x version. Will take a while before we can upgrade to the new shiny.

Closing this to prefer #658.

Would love to see a new 0.9.8.x version.

:+1:


Update documentation colun.mask.with.length.chars

to explicit authorized value of length for column.mask.with.length.chars

Interesting; why is it you're not simply black-listing such column instead of "masking" it with a zero-length string?

Well, our use case required the structure to stay the same so we didn't wanted to drop columns and the
column.truncate.to.length.chars really don't work with length = 0

I see; thanks!


modify storage.config to match PR 497

Storage.config modified to match the features added in PR 497.  Should be merged when 497 is merged.

Can one of the admins verify this patch?

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/incubator-trafficcontrol-traffic_ops-test-PR/16/

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/incubator-trafficcontrol-PR-trafficops-test/25/

Closing pending any change in the status of 497.


How to use SQL Server?

Is it possible to use SQL Server as a store for cache like Redis etc?

no there is no implementation here for SQL


WIP - Error message on invalid config file

TODO:

[x] Make all tests green.

Note: Merge #55 first.
Closes: #57

@jpscaletti Thanks for your input!
Tests are green. Please check my changes out!


[BUG] Provisioning fails when rancher is using a proxy and the downstream cluster uses a custom CIDR

Rancher Server Setup

Rancher version: v2.8-head
Installation option (Docker install/Helm Chart): docker/source

If Helm Chart, Kubernetes Cluster and version (RKE1, RKE2, k3s, EKS, etc):

Proxy/Cert Details: running squid in docker

Information about the Cluster

Kubernetes version: v1.27.x
Cluster Type (Local/Downstream): downstream

If downstream, what type of cluster? (Custom/Imported or specify provider for Hosted/Infrastructure Provider): tested on both custom and digitalocean provided clusters

User Information

What is the role of the user logged in? (Admin/Cluster Owner/Cluster Member/Project Owner/Project Member/Custom)

If custom, define the set of permissions:
Admin

Describe the bug

When Rancher is installed with a proxy in use provisioning downstream clusters fails when using a custom cluster/service CIDR. The cluster provisions fine but then perpetually sits updating since it can't reach down due to the proxy eating the IP ranges.
To Reproduce

Deploy rancher with a proxy using these noProxy settings:
--set proxy=<PROXY> --set noProxy=<IP_ADDRESS>/8\\,<IP_ADDRESS>/8\\,cattle-system.svc\\,<IP_ADDRESS>/16\\,.svc\\,.cluster.local,<rancheurl>

Create a downstream cluster with the following pod/svc cidr range:
      cluster-cidr: <IP_ADDRESS>/16
      cluster-dns: <IP_ADDRESS>
      service-cidr: <IP_ADDRESS>/16

Result
The nodes will provision fine but never become available.
Expected Result

The nodes become available.
Screenshots

n/a
Additional context

The issue does not occur when leaving the CIDR fields blank for some reason.
SURE-6820

/backport 2024-Q1-v2.7x

/backport2024-Q1-v2.7x


feat: adapt Kafka bindings to v3 - take 2

Description

This is a replacement to https://github.com/asyncapi/spec-json-schemas/pull/446 to better align on other bindings that move to v3
This let only 0.4.0 and 0.3.0 being the possible versions of Kafka bindings to use with v3 specs
See the discussion and decision summarized here

Related issue(s)
Relates to https://github.com/asyncapi/bindings/issues/182

/rtm


Add missing case to isListExpr

Add a missing case for the empty list in isListExpr. Fixes https://github.com/ndmitchell/hlint/issues/1064.

Thanks!


Resurrect camera roll backup processing code

@sander, I know we’ve probably been through this before, but need to bring it up again now that we're implementing photo "backup" as a feature in the app.
Photo "backup" seems straight forward... we need to make sure the files are added to the local node and remotely pinned. In this case, backed up photos can also be used as the source for a photo shared to other groups/threads.
We used to talk about a "auto pin" feature where user's photos would be pinned locally, but not remotely pinned. I guess the use case was for syncing to other account peers like a desktop app. Do we still want to provide that feature?
If we do still want to support auto pin (no remote pin), I'm wondering how that interacts with sharing auto pinned files to other groups/threads. It seems like the content wouldn't be discoverable to other peers.
In that case, do we not show a "share" option for files that are only auto pinned locally?
If we need to choose whether or not to show a "share" option depending on if a file has been remotely pinned or not, where do we get that state from? Can the Textile node provide that information? Does the app need to keep track of that state on it's own?

@andrewxhill would love your input on the above as well as I remember you being a bit auto-pin proponent ;)

I feel like this could be an enhancement. On the other hand, maybe pinning locally and then using go-textile as the queue mechanism is actually a better workflow. In which case we could show icons for the remote pin(s). Let's talk through it tomorrow?

right yeah... don't mind the order of operations here, whatever makes sense. the two considerations I think I was including in thinking about that,

Is the open source app useful at all, without a cafe. Seems like it may have moved a bit further away from that, but perhaps with desktop peers we'll get back there.
What is it going to cost to store all camera rolls... this feature could turn our network from "each new user adds value" to "each new users costs money". What limits/quotas are possible, what happens when someone reaches those, etc. But let's experiment first, this isn't something to get too worried about yet.

So whatever development order makes sense at this point.

Ok thanks for in the input. Let's definitely talk today about it @sanderpick

Re: open source, https://github.com/textileio/go-textile/issues/566 will help massively.
Actually, the more I think about it, the more the "local pin first" approach make sense. Seems like a faster dev apporach. I'm also thinking about how I use Dropbox for photos... I have it set to not backup over cell data or even wifi, I just plug it in and it syncs. With textile, I could see a plug-in event triggering a sync (over wifi perhaps) to a desktop node, which in turn hits a cafe or two. Anyway, lots to talk about

Ok, I got all the existing camera roll related code rebased and merged into master, so considering this done. Any additional work is being tracked by new issues.


[Improvement]Add write region for openConnectionsAndInitCaches

Currently, for openConnectionsAndInitCaches, we have only open for the first preferred read region. Add support for write region   as well:
if the account is Multi Master -> use the first preferred region. If the logic is not MM, use the write region + first preferred region (if they are different)

This is done, closing it.


IOException not caught when closing socket, Return statements found in finally block

In CommunicatorFactory.java, IOException is not being caught when calling close() on socket from finally block.
The exception needs to be caught.
Also, return statements should not be kept in finally block.
https://stackoverflow.com/questions/17481251/finally-block-does-not-complete-normally-eclipse-warning/

Suggested fix,

diff --git a/src/networking/CommunicatorFactory.java b/src/networking/CommunicatorFactory.java
index de508a8..9dfac41 100644
--- a/src/networking/CommunicatorFactory.java
+++ b/src/networking/CommunicatorFactory.java
@@ -170,14 +170,22 @@ public class CommunicatorFactory{

                }
                finally{
-                       if(sock!=null)
-                               sock.close();
-                       /** In case failed to get client Id from server */
-                       if(from.equals(""))
-                               return -1;
-
-                       else return Integer.parseInt(from);
+                       try {
+                               if(sock!=null)
+                                       sock.close();
+                       } catch (IOException e){
+                                       logger.log(
+                                               ModuleID.NETWORKING,
+                                               LogLevel.ERROR,
+                                               "Error in closing the socket" + e.toString()
+                                       );
+                       }
                }
+               /** In case failed to get client Id from server */
+               if(from.equals(""))
+                       return -1;
+
+               else return Integer.parseInt(from);
        }

@sravand123 @Prudhvis-gitrepo Please note the change.


Implement tf.data.Dataset adaptor.

Codecov Report

Merging #136 into master will decrease coverage by 0.14%.
The diff coverage is 88.88%.

@@            Coverage Diff             @@
##           master     #136      +/-   ##
==========================================
- Coverage   81.08%   80.93%   -0.15%
==========================================
  Files          52       52
  Lines        2712     2728      +16
  Branches      395      353      -42
==========================================
+ Hits         2199     2208       +9
- Misses        444      450       +6
- Partials       69       70       +1

Impacted Files
Coverage Δ

petastorm/reader.py
89.92% <100%> (+0.87%)
:arrow_up:

petastorm/unischema.py
97.36% <100%> (+0.03%)
:arrow_up:

petastorm/tf_utils.py
79.82% <80%> (-2.36%)
:arrow_down:

petastorm/workers_pool/tests/test_workers_pool.py
97% <0%> (-2.4%)
:arrow_down:

petastorm/workers_pool/process_pool.py
94.81% <0%> (-0.75%)
:arrow_down:

petastorm/workers_pool/thread_pool.py
89.07% <0%> (+0.84%)
:arrow_up:

petastorm/test_util/reader_mock.py
82.05% <0%> (+2.56%)
:arrow_up:

Continue to review full report at Codecov.

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


regression due to surpassing insns limit with nodeport on 4.19.57 aka pre 5.3

Happens with both v4 and v6 enabled. Only with v4 it is not exposed.

test/bpf/verifier-test.sh is supposed to tell us this in CI ;) But I guess we only run these in the runtime tests VM (ie Linux v4.9.x).

Yeap, exactly the problem. We need something >= 4.19.57 and < 5.3 to make sure no new regressions slip in for BPF nodeport on any changes to bpf_netdev/lxc/etc. The net-next has the 1mio insn limit, so it's not visible there. :-/ Maybe we need a 3rd kernel in our CI?

Ah, sigh..


Examples missing from website

https://mflowcode.github.io/documentation/
and
https://mflowcode.github.io/documentation/examples/
Probably from PR #245 ?

Fixed in #256.


typo: Double word "using"

@nschonni : Thanks for your contribution! The author, @hirokib, has been notified to review your proposed change.

@nschonni thank you!
#sign-off

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


Upgrade Google APIs Version

Checked other resources

[X] I added a very descriptive title to this issue.
[X] I searched the LangChain.js documentation with the integrated search.
[X] I used the GitHub search to find a similar question and didn't find it.
[X] I am sure that this is a bug in LangChain.js rather than my code.
[X] The bug is not resolved by updating to the latest stable version of LangChain (or the specific integration package).

Example Code
Steps to Reproduce:

Set up a project with<EMAIL_ADDRESS>as a dependency.
Add<EMAIL_ADDRESS>as a dependency.
Run npm install.
Observe the dependency conflict error.

Error Message and Stack Trace (if applicable)
Detailed Description:
The specific error encountered is as follows:
npm ERR! While resolving<EMAIL_ADDRESS>npm ERR! Found<EMAIL_ADDRESS>npm ERR! node_modules/googleapis
npm ERR<EMAIL_ADDRESS>from the root project
npm ERR!
npm ERR! Could not resolve dependency:
npm ERR! peerOptional<EMAIL_ADDRESS>from<EMAIL_ADDRESS>npm ERR! node_modules/@langchain/community
npm ERR!   peerOptional @langchain/community@"*" from<EMAIL_ADDRESS>npm ERR!   node_modules/@langchain/community/node_modules/langchain
npm ERR<EMAIL_ADDRESS>from<EMAIL_ADDRESS>npm ERR<EMAIL_ADDRESS>from the root project
Description
We are encountering dependency conflicts due to the current version of googleapis used in our project. Our project requires<EMAIL_ADDRESS>but the @langchain/community package specifies a peer dependency on<EMAIL_ADDRESS>This mismatch is causing npm to fail in resolving the dependencies, leading to installation errors.
Proposed Solution:
We propose upgrading the googleapis dependency in the @langchain/community package to ^140.0.0 to align with the version required. This upgrade will help resolve the dependency conflict and allow for smoother installation and integration.
Impact:
This issue is blocking project setup and development, as we cannot proceed with the current dependency conflict. Resolving this will allow us to continue development without resorting to workaround options like --legacy-peer-deps, --force, or resolutions.
Additional Context:
We have attempted various solutions, including using the overrides option in package.json, but the conflict persists. Upgrading the googleapis version in the @langchain/community package seems to be the most viable solution.
System Info
node - v20.10.0
npm - v10.2.3
os- windows 10 pro

Thanks for raising this - will look into relaxing the dep.


Move config module out of common

Moves the /src/common/config to /src/config
The config module should be seen as something horizontal to the rest of the application (accessible from domain, data and routing layers)
The common module should be seen as common utilities used on the routes layer

Coverage remained the same at 90.559% when pulling d760ad0d1bc36ed991edc07454074ebe5f62f795 on move-config into a19df6a8fe41e4fb834638893a635f00a37eedc3 on main.


Add logging for Tyche

I wrote a start on how to implement tyche logging. I am aware that I should also change the various overloads for Sample (and for SampleAsync, etc.
) and the various other test approaches but thought it would be better to get some confirmation that current approach is okay before I would make similar changes elsewhere.

I think this can be added as a Sample overload that takes a Action<T, bool> logger in a similar way to Classifier (will need to add a catch around assert for exception failures etc). That way we can keep this out of the core code and more opt in.
I think it could be really good. Do you write to a file as it is logging to get realtime stats?
If you do this end to end for one overload (the first Action<T> assert one) I can make sure it covers all the others (ModelBased, Faster possibly  if it generalises).
public static void Sample<T>(this Gen<T> gen, Func<T, string> classify, Action<string> writeLine,
    string? seed = null, long iter = -1, int time = -1, int threads = -1, Func<T, string>? print = null)
{
    var classifier = new Classifier();
    Sample(gen, t =>
    {
        var time = Stopwatch.GetTimestamp();
        var name = classify(t);
        classifier.Add(name, Stopwatch.GetTimestamp() - time);
    }, null, seed, iter, time, threads, print);
    classifier.Print(writeLine);
}

Currently it first records all results and then logs so not real-time, but I think that's a simple change. I'll put all the logging/Tyche stuff in a separate file.

Actually adding an optional logger parameter to each method and switching the assert for a logged Action much like the other optional parameters is the better way to go if we want to be able to set env vars. Reduces the number of overloads, keeps it consistent and is still opt in.

Ah right, we can just wrap the old assert function in a new function and assign it again to create a new assert.
One thing I am not sure about though is committing to Action<T,bool> as parameter input. What if we want to log some new information in the future that can only be obtained in SampleActionWorker? That would require another overload in Sample with yet another Action definition, otherwise it is not backwards compatible.
I think it is probably to use something like
public class LogContext<T>
{
    public T Value { get; set; }
    public bool Success { get; set; }
    // Additional fields can be added here in the future
}

as input parameter. However this does mean you cannot use the previous assert trick as it is.

@AnthonyLloyd I did some more work on this. I use a Channel (with the workers as producers and a writer as consumer) and a background thread such that writing to a file occurs in real-time. It is difficult to check if this works however - the vs code tyche plugin does not seem to automatically open upon generation of the data as it is supposed to do (at least, in Hypothesis). You can open the generated file manually of course but then it doesn't affirm that data is real-time visible.
There is one failing test - Pow10_Double from the Hashtests. It is not quite clear to me why.
Generated collections are a bit annoying to test because the tyche plugin expects a slightly different format from regular json, so deserialization is a bit annoying.
Finally, I find it a bit weird that duplicates are visible in tyche:

I was under the impression that
if (MinSize is null || Size.IsLessThan(size, MinSize))
                        {
                            assert(t);
                        }
                        else
                            skippedLocal++;

would skip it. At first I thought it was because of the try catch in the loggingAssert:
            assertWithLogging = t =>
            {
                try
                {
                    assert(t);
                    channel.Writer.TryWrite(new GenLogger.LogContext<T>(t, true));
                }
                catch
                {
                    channel.Writer.TryWrite(new GenLogger.LogContext<T>(t, true));
                    throw;
                }
            };

But removing the try catch entirely (meaning that there would not be written to the channel in case of exception) did not cause elements to be unique.
@Zac-HD is the automatic generation part of the vs code tyche plugin or of hypothesis?

is the automatic generation part of the vs code tyche plugin or of hypothesis?

Hypothesis is responsible for (incrementally) writing the .jsonl file, and the Tyche VSCode plugin is responsible for reading and displaying those results.
I think you're asking "why doesn't the GUI automatically open"; as far as I know this is just because Tyche knows about the default location of Hypothesis' .jsonl files but not about your implementation.  You can run the vscode Tyche: Open command and point it to the new location, and I think that will then be watched for further updates.
Once you finalize this PR, we can also ask @hgoldstein95 to teach Tyche about the new location 🙂

Yes, I'd be happy to set the new directory as a default in Tyche! For now, you can configure Tyche to know about your output directory in the extension settings.


Mangled output - HTTP encoding applied twice

Minify version: 2.1
PHP version: 5.2.5

I wanted to install Minify on my account of a shared server.
I tried uploading to:
/www (which seems to be my DOCUMENT_ROOT)
and /www/my_domain

Both resulted in displaying content as attached, when I pointed the browser
to the minify directory (which redirected to builder/).

Did you run the unit tests? Did any FAIL?
Yes:
!FAIL: ImportProcessor (1 of 35 tests run so far have failed)
(output from this test also attached)

How to solve the problem?

Original issue reported on code.google.com by galadia on 6 Oct 2008 at 12:08
Attachments:

minify2.1.png
test_Minify_ImportProcessor.php

Was this Apache setting something that could be detected in $_SERVER or $_ENV?
I
guess a unit test could make an external HTTP call to detect this.

Original comment by<EMAIL_ADDRESS>on 6 Oct 2008 at 11:27

Changed state: Started

I really don't know. That was a setting in a custom-made admin panel.

Original comment by galadia on 6 Oct 2008 at 11:31

Can you try adding this to config.php?

ini_set('zlib.output_compression', '0');

I'm guessing that the content is being HTTP encoded (deflate/gzip) twice; once
by
Minify and once by this directive. If this fixes it I need to add that to
Minify
somewhere.

Original comment by<EMAIL_ADDRESS>on 6 Oct 2008 at 3:32

Changed title: Mangled output - character set or HTTP encoding issue
Changed state: NeedInfo

This directive didn't help, but thanks for the clue - Apache was indeed
configured to
compress it twice :)

Original comment by galadia on 6 Oct 2008 at 8:21

R252 now can warn of double-encoding in the builder app and gives a warning
about
this along with the status of PHP's "zlib.output_compression" option and if it
could
be successfully disabled. I think this is about the best I can do here as some
auto-
encoding is undetectable in PHP.

Original comment by<EMAIL_ADDRESS>on 7 Oct 2008 at 3:12

Changed title: Mangled output - HTTP encoding applied twice
Changed state: Verified

Original comment by<EMAIL_ADDRESS>on 7 Oct 2008 at 3:36

Added labels: Release-2.1.0