error: function 'anonymous lambda' called without required argument 'buildPackages'

Hi, I'm trying to build a single crate in my workspace with
    perSystem = { config, lib, pkgs, ... }:
      let
        deps = [
          pkgs.pkg-config
          pkgs.openssl
          # pkgs.alsa-lib
          # pkgs.udev
          pkgs.librsvg
          pkgs.pandoc
          pkgs.texliveFull
        ];
        cfg = {
          mkDerivation.buildInputs = deps;
          env.LD_LIBRARY_PATH = lib.makeLibraryPath deps;
        };

        project-name = "project";
        crate-name = "crate";
        crateOutputs = config.nci.outputs.${crate-name};
      in
      {
        nci.projects.${project-name} = {
          path = ./../rust;
          export = false;
        };

        nci.crates.${crate-name} = {
          export = true;
          depsDrvConfig = cfg;
          drvConfig = cfg;
        };

        devShells.${crate-name} = crateOutputs.devShell;
        packages.${crate-name} = crateOutputs.packages.release;
      };

and I'm getting the following error when doing a nix build .#crate

 error log
error:
       … while calling anonymous lambda

         at /nix/store/rz50qm74nicyhql7wrsibvanlj5kdm78-source/lib/types.nix:581:29:

          580|       merge = loc: defs:
          581|         zipAttrsWith (name: defs:
             |                             ^
          582|           let merged = mergeDefinitions (loc ++ [name]) elemType defs;

       … while calling anonymous lambda

         at /nix/store/rz50qm74nicyhql7wrsibvanlj5kdm78-source/lib/modules.nix:822:28:

          821|         # Process mkMerge and mkIf properties.
          822|         defs' = concatMap (m:
             |                            ^
          823|           map (value: { inherit (m) file; inherit value; }) (builtins.addErrorContext "while evaluating definitions from `${m.file}':" (dischargeProperties m.value))

       … while evaluating definitions from `/nix/store/5yhqhsl8x9xmhsy3ql8hi05c3zbnxx2x-source/modules/transposition.nix':

       … from call site

         at /nix/store/rz50qm74nicyhql7wrsibvanlj5kdm78-source/lib/modules.nix:823:137:

          822|         defs' = concatMap (m:
          823|           map (value: { inherit (m) file; inherit value; }) (builtins.addErrorContext "while evaluating definitions from `${m.file}':" (dischargeProperties m.value))
             |                                                                                ^
          824|         ) defs;

       … while calling 'dischargeProperties'

         at /nix/store/rz50qm74nicyhql7wrsibvanlj5kdm78-source/lib/modules.nix:894:25:

          893|   */
          894|   dischargeProperties = def:
             |                         ^
          895|     if def._type or "" == "merge" then

       … while calling anonymous lambda

         at /nix/store/rz50qm74nicyhql7wrsibvanlj5kdm78-source/lib/types.nix:581:29:

          580|       merge = loc: defs:
          581|         zipAttrsWith (name: defs:
             |                             ^
          582|           let merged = mergeDefinitions (loc ++ [name]) elemType defs;

       … while calling anonymous lambda

         at /nix/store/rz50qm74nicyhql7wrsibvanlj5kdm78-source/lib/modules.nix:822:28:

          821|         # Process mkMerge and mkIf properties.
          822|         defs' = concatMap (m:
             |                            ^
          823|           map (value: { inherit (m) file; inherit value; }) (builtins.addErrorContext "while evaluating definitions from `${m.file}':" (dischargeProperties m.value))

       … while evaluating definitions from `/nix/store/9cvqvpg15mnsjmjm9wl0sd8ipqmhcbyg-source/nix/report-generator.nix, via option perSystem':

       … from call site

         at /nix/store/rz50qm74nicyhql7wrsibvanlj5kdm78-source/lib/modules.nix:823:137:

          822|         defs' = concatMap (m:
          823|           map (value: { inherit (m) file; inherit value; }) (builtins.addErrorContext "while evaluating definitions from `${m.file}':" (dischargeProperties m.value))
             |                                                                                ^
          824|         ) defs;

       … while calling 'dischargeProperties'

         at /nix/store/rz50qm74nicyhql7wrsibvanlj5kdm78-source/lib/modules.nix:894:25:

          893|   */
          894|   dischargeProperties = def:
             |                         ^
          895|     if def._type or "" == "merge" then

       … while calling 'g'

         at /nix/store/rz50qm74nicyhql7wrsibvanlj5kdm78-source/lib/attrsets.nix:701:19:

          700|           g =
          701|             name: value:
             |                   ^
          702|             if isAttrs value && cond value

       … from call site

         at /nix/store/rz50qm74nicyhql7wrsibvanlj5kdm78-source/lib/attrsets.nix:704:20:

          703|               then recurse (path ++ [name]) value
          704|               else f (path ++ [name]) value;
             |                    ^
          705|         in mapAttrs g;

       … while calling anonymous lambda

         at /nix/store/rz50qm74nicyhql7wrsibvanlj5kdm78-source/lib/modules.nix:242:72:

          241|           # For definitions that have an associated option
          242|           declaredConfig = mapAttrsRecursiveCond (v: ! isOption v) (_: v: v.value) options;
             |                                                                        ^
          243|

       … while evaluating the option `perSystem.x86_64-linux.nci.outputs.report-generator.packages':

       … while calling anonymous lambda

         at /nix/store/rz50qm74nicyhql7wrsibvanlj5kdm78-source/lib/modules.nix:822:28:

          821|         # Process mkMerge and mkIf properties.
          822|         defs' = concatMap (m:
             |                            ^
          823|           map (value: { inherit (m) file; inherit value; }) (builtins.addErrorContext "while evaluating definitions from `${m.file}':" (dischargeProperties m.value))

       … while evaluating definitions from `/nix/store/vd1mk37lbi3rgkcx6dgbd5iq8ialibyh-source/src/implementation.nix, via option perSystem':

       … from call site

         at /nix/store/rz50qm74nicyhql7wrsibvanlj5kdm78-source/lib/modules.nix:823:137:

          822|         defs' = concatMap (m:
          823|           map (value: { inherit (m) file; inherit value; }) (builtins.addErrorContext "while evaluating definitions from `${m.file}':" (dischargeProperties m.value))
             |                                                                                ^
          824|         ) defs;

       … while calling 'dischargeProperties'

         at /nix/store/rz50qm74nicyhql7wrsibvanlj5kdm78-source/lib/modules.nix:894:25:

          893|   */
          894|   dischargeProperties = def:
             |                         ^
          895|     if def._type or "" == "merge" then

       … from call site

         at /nix/store/vd1mk37lbi3rgkcx6dgbd5iq8ialibyh-source/src/implementation.nix:154:28:

          153|                 else crate.targets;
          154|               allTargets = import ./functions/mkPackagesFromRaw.nix {
             |                            ^
          155|                 inherit pkgs runtimeLibs profiles targets;

       … while calling anonymous lambda

         at /nix/store/vd1mk37lbi3rgkcx6dgbd5iq8ialibyh-source/src/functions/mkPackagesFromRaw.nix:1:1:

            1| {
             | ^
            2|   rawPkg,

       … while calling 'g'

         at /nix/store/rz50qm74nicyhql7wrsibvanlj5kdm78-source/lib/attrsets.nix:701:19:

          700|           g =
          701|             name: value:
             |                   ^
          702|             if isAttrs value && cond value

       … from call site

         at /nix/store/rz50qm74nicyhql7wrsibvanlj5kdm78-source/lib/attrsets.nix:704:20:

          703|               then recurse (path ++ [name]) value
          704|               else f (path ++ [name]) value;
             |                    ^
          705|         in mapAttrs g;

       … while calling anonymous lambda

         at /nix/store/rz50qm74nicyhql7wrsibvanlj5kdm78-source/lib/modules.nix:242:72:

          241|           # For definitions that have an associated option
          242|           declaredConfig = mapAttrsRecursiveCond (v: ! isOption v) (_: v: v.value) options;
             |                                                                        ^
          243|

       … while evaluating the option `perSystem.x86_64-linux.nci.projects.metabuild.targets':

       … while calling anonymous lambda

         at /nix/store/rz50qm74nicyhql7wrsibvanlj5kdm78-source/lib/modules.nix:832:19:

          831|           # Avoid sorting if we don't have to.
          832|           if any (def: def.value._type or "" == "order") defs''.values
             |                   ^
          833|           then sortProperties defs''.values

       error: function 'anonymous lambda' called without required argument 'buildPackages'

       at /nix/store/iza32qzsnvhhhlaj0h04lp8zfsarshy3-rz50qm74nicyhql7wrsibvanlj5kdm78-source/pkgs/build-support/rust/lib/default.nix:1:1:

            1| { lib
             | ^
            2| , stdenv

I've built packages with nci before and this kind of irritated me. I also didn't find any obvious places in the code that were related to the error.
Please let me know if you need more info.

This is because a recent change in nixpkgs changed some of the stuff NCI accessed in it so I had to update it so that it supported the newest nixpkgs. So you can either update your nixpkgs, or use the last working commit for older nixpkgs (before this commit https://github.com/yusdacra/nix-cargo-integration/commit/8f2876d5c803a88c78248788f5d5c89533846f7a). I was meaning to add this to somewhere :sweat_smile:


Add flag to cmds to use AWS profile

Add a new flag to command line utilities to allow to choose a AWS profile from the aws credentials file

Codecov Report

Merging #1790 into v0.14.x will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff            @@
##           v0.14.x    #1790   +/-   ##
========================================
  Coverage    24.93%   24.93%
========================================
  Files           98       98
  Lines         5078     5078
========================================
  Hits          1266     1266
  Misses        3673     3673
  Partials       139      139

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 a1abe5b...6d91a65. Read the comment docs.


Error on composer update command

Hello,
Thank you for sharing your code.
I am getting the following error:
Problem 1
    - Root composer.json requires php ^7.1.3 but your php version (8.0.3) does not satisfy that requirement.
  Problem 2
    - laravel/framework[v5.8.0, ..., 5.8.x-dev] require php ^7.1.3 -> your php version (8.0.3) does not satisfy that requirement.
    - Root composer.json requires laravel/framework 5.8.* -> satisfiable by laravel/framework[v5.8.0, ..., 5.8.x-dev].

How can I solve it?

Hello,
You need to have the PHP 7.1.3 version for this project and your computer is running the 8.0.3 version.
I hope it's helpful.

Hello,
Thank you for sharing your code.
I am getting the following error:
Problem 1
    - Root composer.json requires php ^7.1.3 but your php version (8.0.3) does not satisfy that requirement.
  Problem 2
    - laravel/framework[v5.8.0, ..., 5.8.x-dev] require php ^7.1.3 -> your php version (8.0.3) does not satisfy that requirement.
    - Root composer.json requires laravel/framework 5.8.* -> satisfiable by laravel/framework[v5.8.0, ..., 5.8.x-dev].

How can I solve it?

Hello,
You need to have the PHP 7.1.3 version for this project and your computer is running the 8.0.3 version.
I hope it's helpful.


hostNetwork Parameter

Hi,
I will like to ask if it is strictly necessary to run frr-k8s with the hostNetwork set to true? I tried to disable it but the frr and frr-k8s containers could not come up properly.
Below are the error logs
frr.txt
frr-k8s.txt
Thanks

To provide more context, I want to use VPP (plus the VPP Linux Control Plane, this allows VPP routing table to be controlled at the kernel space via routing protocols) as the forwarding plane, so I adjusted the allinone-frr-k8s.yaml manifest as follows:
      - command:
        - /bin/sh
        - -c
        - |
          sleep 20
          ip link add dev vrf1 type vrf table 1
          ip link set dev vrf1 up
          ip link set dev vlan100 master vrf1
          ip link set dev dpdk1 master vrf1
          /sbin/tini -- /usr/lib/frr/docker-start &
          attempts=0
          until [[ -f /etc/frr/frr.log || $attempts -eq 60 ]]; do
            sleep 1
            attempts=$(( $attempts + 1 ))
          done
          tail -f /etc/frr/frr.log
        env:
        - name: TINI_SUBREAPER
          value: "true"
        image: quay.io/frrouting/frr:9.1.0
        livenessProbe:
          failureThreshold: 3
          httpGet:
            host: <IP_ADDRESS>
            path: /livez
            port: 7573
          periodSeconds: 5
        name: frr
        securityContext:
          capabilities:
            add:
            - NET_ADMIN
            - NET_RAW
            - SYS_ADMIN
            - NET_BIND_SERVICE
        startupProbe:
          failureThreshold: 30
          httpGet:
            host: <IP_ADDRESS>
            path: /livez
            port: 7573
          periodSeconds: 5
        volumeMounts:
        - mountPath: /var/run/frr
          name: frr-sockets
        - mountPath: /etc/frr
          name: frr-conf
      - args:
        - --metrics-port=7573
        - --metrics-bind-address=<IP_ADDRESS>
        command:
        - /etc/frr_metrics/frr-metrics
        image: quay.io/frrouting/frr:9.1.0
        name: frr-metrics
        ports:
        - containerPort: 7573
          name: monitoring
        volumeMounts:
        - mountPath: /var/run/frr
          name: frr-sockets
        - mountPath: /etc/frr
          name: frr-conf
        - mountPath: /etc/frr_metrics
          name: metrics
      - command:
        - /etc/frr_reloader/frr-reloader.sh
        image: quay.io/frrouting/frr:9.1.0
        name: reloader
        volumeMounts:
        - mountPath: /var/run/frr
          name: frr-sockets
        - mountPath: /etc/frr
          name: frr-conf
        - mountPath: /etc/frr_reloader
          name: reloader
      - name: vpp
        image: ligato/vpp-base:24.02
        command: ["/bin/sh", "-c"]
        args:
          - |
            vpp -c /etc/vpp/startup.conf
        volumeMounts:
        - name: vpp-config
          mountPath: /etc/vpp/bootstrap.vpp
          subPath: bootstrap.vpp
        - name: vpp-startup-config
          mountPath: /etc/vpp/startup.conf
          subPath: startup.conf
        securityContext:
          privileged: true
        resources:
          requests:
            cpu: "2"
            memory: 2Gi
            hugepages-1Gi: 4Gi
          limits:
            cpu: "2"
            memory: 2Gi
            hugepages-1Gi: 4Gi

This works with using the hostNetwork but when I set it to false, it gives the errors as I posted previously.
In this scenarios, I don't need the hostNetwork since VPP is doing the dataplane processing via DPDK

not sure I understood what you are trying to do.
If you remove hostnetwork, frr will run in a network namespace isolated from the host, like any other pod.
FRR-K8s wasn't meant to work like that, as it's purpouse is to affect the host routing space.

Is hostnetwork a hard requirement for frr-k8s to work? Because when I disable it, the frr and frr-k8s containers are not able to start properly, they keep crashing.

so I guess it is today, but it's not set in stone. So, if there's value in having it non host-networked (while I can't see it, as all the routes would land inside the network namespace of the pod), the project is open to change.

In my case (stand-alone), not using the hostNetwork allows me to automate some of the configurations e.g. using Multus to manage the network interfaces and IP allocation because Multus does not work when hostNetwork is enabled.
Also my dataplane is in DPDK, hostNetwork in this sense does not provide any advantages, the whole routing stack in user-space (all the routes will not be visible in the usual kernel space).
I agree that if this might be a strict requirement if this is to be run in conjunction with Metallb but for stand-alone scenarios I think the option of enabling hostNetwork should be an individual choice.

I am still not sure I understood the whole workflow. The frr-k8s pod would interface with the external world via an interface plugged with multus, then who is going to leverage those learned routes? Because they'll stay in the pod's net namespace.
Would you mind drawing a diagram?

Ok so not only you want frr-k8s to be non host-networked, but you'd also want to have vpp as a sidecar of it

Yes, VPP will take care of the dataplane packet processing, FRR will be where BGP will be running and controlling the routing-table of the VPP

and how do you think to add vpp ot the same frr-k8s pod?

we could potentially think about a mutating webhook that embeds the "frr sidecar" to any given pod. The other missing bit is that the configuration selector is per node, while we should have something else that is more "per pod / namespace".
This is something that came up also on the slack channel here https://kubernetes.slack.com/archives/C8FSTGU56/p1718817041610479
I am leaving for PTO tomorrow for 3 weeks, so expect little follow up, but I am open to discuss (not sure I'll have bandwith to actually implement, but we could have a design ongoing if somebody wants to pick up the work).

I'm happy to discuss and I might have the bandwidth to implement something in the fall (also going on vacation).

Ok.. Reading through the slack archive, I am also using this in the context of Telco based architecture. If you need to discuss more about the approach/design let me know.
I also agree the selection method will need to evolve to maybe POD level, this is also true in cases where a daemonset is not needed e.g. only 2 instances of the routers may be needed (in this case, it will be deployment/statefulset controllers) irrespective of the number of worker-nodes. This will provide more control on the deployment mode.

My super quick thought is:

config selector at node level
a way to inject a "frr-k8s" sidecar to a given set of pods

Can you shed more light on config selector at node level, I thought the config selection should be at the Pod level

Currently frr-k8s is meant to run per-node, as it affects the configuration of the node network. If we move the paradigm, we should allow to have a configuration per pod / per namespace.


Could you release a new version?

I found some unreleased feature in master. (diff: https://github.com/lassebunk/gretel/compare/v3.0.8...025419b5 )
I can use it via bundler.
However It is useful for us if we can just install via gem install.

I agree wholeheartedly.
I've just spent a few hours trying to figure out why I was getting deprecation warnings on Rails 5.  I saw that the fix had been merged in a long time ago.  I never looked at whether it was actually released though.
Just bundle updated to the newest release.
After some further investigation, I came to realize that the merged fix for Rails 5 deprecation warnings on this gem were never actually released in a new version and are just sitting on master.
The last release - 3.0.8 - was made in 2014.
I think we'd all really appreciate a new release.

Version 3.0.9 has been released.

Thanks @WilHall .  Really appreciate that.


BUG: sinc: broken on torch

Consider
In [1]: import torch

In [2]: from array_api_compat import array_namespace

In [3]: xp = array_namespace(torch.ones(3))

In [4]: m, n = 7, 4.0

In [5]: import array_api_extra as xpx

In [6]: xpx.sinc(2. * xp.arange(n, m, dtype=xp.float64) / (m - 1) - 1.0, xp=xp)
---------------------------------------------------------------------------
RuntimeError                              Traceback (most recent call last)
Cell In[6], line 1
----> 1 xpx.sinc(2. * xp.arange(n, m, dtype=xp.float64) / (m - 1) - 1.0, xp=xp)

File ~/.conda/envs/scipy-dev/lib/python3.11/site-packages/array_api_extra/_funcs.py:518, in sinc(x, xp)
    516     raise ValueError(err_msg)
    517 # no scalars in `where` - array-api#807
--> 518 y = xp.pi * xp.where(
    519     x, x, xp.asarray(xp.finfo(x.dtype).smallest_normal, dtype=x.dtype)
    520 )
    521 return xp.sin(y) / y

File ~/repos/array-api-compat/array_api_compat/torch/_aliases.py:503, in where(condition, x1, x2)
    501 def where(condition: array, x1: array, x2: array, /) -> array:
    502     x1, x2 = _fix_promotion(x1, x2)
--> 503     return torch.where(condition, x1, x2)

RuntimeError: where expected condition to be a boolean tensor, but got a tensor with dtype Double

The same MRE on numpy or jax.numpy is OK.

The spec doesn't say whether only bool dtypes for condition are supported (https://data-apis.org/array-api/2023.12/API_specification/generated/array_api.where.html). That should be clarified in the spec, and then:

if it is only bool dtypes, a fix needs to be made in array-api-strict (and then here)
if other dtypes are allowed, a fix needs to be made in array-api-compat for torch (and nothing needs to change here)

it sounds like the intention in the standard was to only accept boolean arrays here, but that detail was lost with https://github.com/data-apis/array-api/pull/116


[Web Install] Consider alternate approach to using * as an install_source

For  install_sources, you mention the use of * as a way to grant access to all sites:
https://github.com/MicrosoftEdge/MSEdgeExplainers/blob/ef5973793bb431e12222a803f14fde610e5a96f4/WebInstall/explainer_cross_domain.md?plain=1#L226
@dmurph had a good point for Scope Extensions in WICG/manifest-incubations#89, where he pointed out that using an asterisk can complicate URL parsing.  Continuing with the feedback from that issue, you may want to consider two things:

The object in the install_sources may want to have a second property, similar to what Dan is suggesting for scope extensions that would allow for all sub-domains of the specified origin to be considered valid as well.  Dan suggested treat_as_registrable_domain, although I'm not enthusiastic on that exact naming. (I believe that's based off of this).
Another top-level property in the web-manifest (possibly allow_all_install_sources) that would act as your global *.  If set to true, the install_sources list would be ignored (if included).  If set to false or absent, it would defer to whatever install_sources said.

@HowardWolosky I think we should go with the second option. While I like the first idea (not a fan of the naming either) I think the use case for scope extensions where you want to include multiple different domains is very different from web install where you might want to allow ANY domain to install the app.

Some explanation on the naming - this is the eTLD+1.
https://developer.mozilla.org/en-US/docs/Glossary/eTLD

This is the scope of cookies, for example.


Multiple Power BI workspaces

According to this documentation page, it's currently possible to link only a single Power BI workspace to an Azure Synapse Workspace.

Is it planned on the Microsoft roadmap to remove this limitation? Could you provide an estimated timeline?

Is there an alternative, e.g. by connecting to the data sources using a Power BI Data Gateway deployed in a vNet with private endpoints to the corresponding PaaS resources (to protect against data exfiltration)?

@BE-Digital-Solutions-Bart -
Thank you for your question.
Can you please share with us the URL of the document that you are having issues with?
Please note that we scope issues on this repo to feedback related to the docs. If you have a product question, please post it on Microsoft QnA or Stack Overflow. Thank you for your understanding.

https://docs.microsoft.com/en-us/azure/synapse-analytics/overview-faq#q-can-i-link-more-than-one-power-bi-workspace-to-a-single-azure-synapse-workspace
This FAQ page just contains one line that mentions the current limitation.
https://docs.microsoft.com/en-us/power-bi/connect-data/power-bi-data-sources
This documentation page that it's also possible to connect to many data sources using a Data Gateway, incl. Azure Data Lake Storage Gen2 & Azure SQL Data Warehouse. The SQL Serverless Pool is not mentioned, but I'm not sure whether there is currently a way to create a private endpoint to it in your own vNet, is there?

@BE-Digital-Solutions-Bart
We have a plan to remove the limitation (1 per workspace). On the Power BI, the document, should be updated. It's not current.
Thank you,
Arnaud

@ArnoMicrosoft - Thanks for providing your insights.
@BE-Digital-Solutions-Bart - Thanks again for bringing this to our attention. We have updated the Doc and it will be live once its merged.  We will now proceed to close this thread. If there are further questions regarding this matter, please tag me in your reply. We will gladly continue the discussion and we will reopen the issue.


Deprecate the mysql package in favor of engine/dolphin

The current MySQL support is implemented as a totally separate package. The support in that package is incomplete; many queries that work in PostgreSQL fail for MySQL. When improvements are made to the compiler, code generation, or type-checking, the mysql package doesn't benefit. The replacement package, engine/dolphin, is coming along nicely. It's implemented using the same code as the PostgreSQL and (experimental) SQLite support.
The roadmap will be as follows:

v1.5.0

mysql: no changes
engine/dolphin: available when SQLC_EXPERIMENTAL_PARSER is on

v1.6.0

mysql: deprecated, available when SQLC_EXPERIMENTAL_PARSER is off
engine/dolphin: default

v1.7.0

mysql: removed

Do you have any idea when v1.5.0 will be ready?

I had hoped to release it this week, but I think I need another week to get the engine/dolphin package ready for general use


Unit testing for embedchain/vectordb/elasticsearch.py #698

Description
Please include a summary of the change and which issue is fixed. Please also include relevant motivation and context. List any dependencies that are required for this change.
Fixes # (issue)
Type of change
Please delete options that are not relevant.

[ ] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] Refactor (does not change functionality, e.g. code style improvements, linting)
[ ] Documentation update

How Has This Been Tested?
Please describe the tests that you ran to verify your changes. Provide instructions so we can reproduce. Please also list any relevant details for your test configuration
Please delete options that are not relevant.

[ ] Unit Test
[ ] Test Script (please provide)

Checklist:

[ ] My code follows the style guidelines of this project
[ ] I have performed a self-review of my own code
[ ] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation
[ ] My changes generate no new warnings
[ ] I have added tests that prove my fix is effective or that my feature works
[ ] New and existing unit tests pass locally with my changes
[ ] Any dependent changes have been merged and published in downstream modules
[ ] I have checked my code and corrected any misspellings

Maintainer Checklist

[ ] closes #xxxx (Replace xxxx with the GitHub issue number)
[ ] Made sure Checks passed

Hi @Clement-Okolo Can you please the above conversation and update on it?

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

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

Closing this PR as of now, please feel free to work on it again.


tsdb documentation: More details about Chunks

Hi,
I'm implementing a parser and I thought I could add more details to the documentation:

I added a documentation link about the uvarint variable length encoding.
The type enum is a byte that is 0000 0001 (XOR), 0000 0002 (Histogram), or 0000 0003 (Float Histogram).
The CRC32 is actually a CRC32C (Castagnoli) and uses the type byte too.
The CRC32C is serialised using a big endian binary representation.

Sounds correct to me, but an actual TSDB export should have a look. @jesusvazquez or @codesome maybe?

Hello from the bug scrub. @fungiboletus are you still able to work on this PR?

Hi. I made some changes based on the suggestions and fixed the merge conflict


include/grpcpp/test/mock_stream.h is not installed by cmake's make install

What version of gRPC and what language are you using?
v1.20.1 & c++
What operating system (Linux, Windows,...) and version?
Ubuntu 16.04.6 LTS
What runtime / compiler are you using (e.g. python version or version of gcc)
gcc version 5.4.0
What did you do?
cd /tmp && git clone -q --single-branch --depth 1 --branch v1.20.1 https://github.com/grpc/grpc.git && cd grpc && git submodule update --init && make CFLAGS='-Wimplicit-fallthrough=0' CXXFLAGS='-Wimplicit-fallthrough=0' > /dev/null && make install STRIP=/bin/true
What did you expect to see?
Expect following header file to be present:
/usr/local/include/grpcpp/test/mock_stream.h
What did you see instead?
All other include files/directories are available except the /usr/local/include/grpcpp/test directory.
Make sure you include information that can help us debug (full error message, exception listing, stack trace, logs).
See TROUBLESHOOTING.md for how to diagnose problems better.
Anything else we should know about your project / environment?
I need mock_stream.h to be able to write mock tests for my grpc service.

I don't understand your requirement here. So you want to write mock test but cannot use # include "mock_stream.h"? Is that what you mean?

@nanahpang that's right, mock_stream.h is not installed as a public header, so I cannot include it. Sorry for the confusion.

Yes, the header  files under /test folder are not public headers. They are for test only. You need to add dependency in your build file while using them.

@nanahpang I use grpc for my application but build grpc before I build my application. I do not build grpc along with my application. So, I cannot add dependency on specific grpc build targets in my application build file. Is there anyway to emit this file when building grpc by itself?

@nanahpang Did you get a chance to look into this? Would greatly appreciate if this issue can be resolved soon. Thanks!

Hi, sorry for the late reply, I am busy with other things last week.
The header files in test folder are private. I don't see a way you could use them outside grpc. But you could write your own test service based on that.

Oh. Would grpc team consider making it public?
This public documentation describes how to unit-test client side logic:
https://grpc.github.io/grpc/cpp/md_doc_unit_testing.html
This uses MockClientReaderWriter but this class is defined in mock_stream.h. So I wonder if mock_stream.h was supposed to be public but is not due to a bug in the Makefile.

I need to talk with some folks in the team before responding to you. But if you are hurried to implement this, I would suggest you to write your own test service first.

Thanks for the document you sent, I will look into that.

Thanks @nanahpang This is not urgent, I'll wait.

Hi, @sandeepgd
After discussing this issue within the team, we think it is reasonable to release the headers in include/grpcpp/test folder. So I have opened a pull request for it. Thanks for sharing the information here!
Good luck with your works.

Awesome, thanks @nanahpang! Appreciate the quick fix. Please feel free to close the issue now.

Hi, @sandeepgd
Could you check out the pull request locally, and see if it solve your problem? I have tested it myself, but want to make sure I could close this issue after merge it.

Friendly ping, @sandeepgd I have merged the pull request. Could you verify that your problem is solved? If not, you could reopen this issue.

Hi @nanahpang, just verified that the test files are getting installed now. Thanks for the fix!

Previous PR is reverted, because it broke the build process in MacOS and Windows. Reopen this issue and investigate on another solution.

It would be great to get this issue fixed again.

See here https://github.com/grpc/grpc/issues/22937#issuecomment-630128278
Some updates:

note that installing with make (not cmake) is now deprecated
with cmake you should be able to build/install grpc++_test (see the link for details).

@sandeepgd  can you verify whether things got fixed (see my previous comment)?

@jtattermusch Can you please clarify, how is grpc++_test installable with CMake? I don't think that CMake currently installs any headers from test/

I too would very much like the mock_stream.h file available as part of the Cmake install

same here, I think it would be beneficial if mock_stream.h is part of main installation

+1, it's weird that you have to enable gRPC_BUILD_TESTS and build the tests in order to get the headers you need for your own tests.

+1, it's weird that you have to enable gRPC_BUILD_TESTS and build the tests in order to get the headers you need for your own tests.

Are there any plans to add exporting mock_stream.h without using of gRPC_BUILD_TESTS? Compiling with unnecessary gRPC_BUILD_TESTS increases the build time multiple times.

Please consider installing mock_stream.h without gRPC_BUILD_TESTS: there are packages of gprc that do not install this header due to this configuration gate, at least

Homebrew grpc, and
OpenSUSE grpc-devel

Homebrew maintainer here: I think this issue is for upstream to fix, we are not going to patch grpc to ship the file.
guess that splitting the grpc_cc_library function call in two different calls could fix it (with testonly = True/False):
https://github.com/grpc/grpc/blob/6546fcd19640ead78749e135ab7514f2f5f93343/BUILD#L2775-L2797
Don't know if there is more to tweak, but maybe the fix is really easy to implement (I'll leave this to the grpc maintainers or anyone motivated enough to try this out and maybe submit a pull request here).

+1 I have to patch the vcpkg port for this to work which is quite painful.


intellisense for tsx files not working

hi
after updating to 7.4.4 intellisense not working with .tsx files, snippet not working too.
ts files are ok
i tried to uninstall and reinstalling plugin, but it doesn't help either.
thanks

Having exactly the same issue.

for now stay with 7.4.3
apm install<EMAIL_ADDRESS>

@ra0o0f @samuel-vincent I just pushed a quick patch for the scope of completion and linting. Can you let me know if it works now?

@blakeembrey code completion works now, but snippet doesnt yet.
exapmle: importr or import

Unless I'm mistaken, snippets have never been supported there. I'll open a new issue for this.

@ra0o0f Support for snippets added with v7.4.6

@blakeembrey thanks a lot


fail early with ErrTooManySamples in rangeEval

account for the samples loaded in memory before eval of next expression
Signed-off-by: darshanime<EMAIL_ADDRESS>

Closing as no update after 6 months.  We noted at the bug-scrub that a lot of code in this area has changed due to native histograms, so it probably has to be re-coded from scratch.

@codesome maybe you can help us out here?

BTW: The sub-queries are much harder to reason with. I cannot really explain the precise values in the tests. (Perhaps @codesome can, but he has still very limited availability.)

In any case, I'll create a follow-up PR where I had histograms to the tests, because reviewing this PR showed me that they are still missing.

Thanks for your comments. I'll look into them once I find time. (But I have to say that I feel heavily underqualified for this review. I guess we need help of somebody who is more familiar with this sample counting, maybe @jesusvazquez or @codesome . I'll take it as a challenge to learn more about it, but it will take me a lot of time, and I'm heavily distracted with other tasks.)

Note to reviewers: https://github.com/prometheus/prometheus/pull/10369 is the PR that implemented the feature. This might be helpful to find out what the intended meaning of the stats fields is.

Still not enough capacity on my side to generate conclusive evidence here, but with https://github.com/prometheus/prometheus/pull/13744 in, it might be worth updating this PR once more because https://github.com/prometheus/prometheus/pull/13744 simplifies code that is part of the discussion here, so after https://github.com/prometheus/prometheus/pull/13744, it might be easier to reason about.

Hello from the bug-scrub!
I can assign myself to review this, but I would like to know if you will update after #13744, @darshanime.


Cost models fix typos and update wording - fit & finish

closes #1193
closes #1077

[x] In the filter box, the grey text doesn't fit (Filter by cost model name"). Shorten to "Filter by name"

[x] Change  "Enter a positive or negative percentage to add or subtract to the base cost of the sources" to "Enter a positive or negative percentage to add to or subtract from the base cost of the sources."

[x] The message needs a period (.) at the end of it and I suggest editing out "we" since we don't use this voice elsewhere in the app.
Current text: "We are looking for your sources. Do not refresh the browser"
Revision: "Searching for your sources; do not refresh your browser."  (Searching or Looking is fine I think)

[x] Change Assign source(s) description from "Select one or more source to this cost model. If the source already has a cost model assigned to it, this selection will override that assignment." to "Select one or more source to assign to this cost model. If the source already has a cost model assigned to it, this selection will override that assignment. You can also assign sources to your cost model at a later time."

[x] Change from "Select from the following sources that are of type AWS" to "Select from the following AWS sources:" or "Select an AWS source:" or "Select a source from the list:"
Same for OCP.

[x] Typo when filtering: "Clear all filter" needs to be plural: "Clear all filters"

[x] Current text: "To create a price list, select a metric and fill in the values. You can set one or more rates in a price list."
Revision suggestion: "Select the metric you want to assign a price to, and specify a measurement unit and rate. You can set one rate per metric in a price list."

[x] Message is incomplete. Edit "You have successfully created" to "You have successfully created your cost model."

[x] Change in Markup tab to "Percentage to add to or subtract from the base cost of the source(s)"

[x] Change "Filter by source Name" to "Filter by source name"

[x] Change "Assign a source, like an Amazon Web Services account, to apply this cost model." to  "Select the source(s) you want to apply this cost model to."

Codecov Report

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

@@           Coverage Diff           @@
##           master    #1194   +/-   ##
=======================================
  Coverage   74.93%   74.93%
=======================================
  Files         229      229
  Lines        4465     4465
  Branches      860      860
=======================================
  Hits         3346     3346
  Misses       1002     1002
  Partials      117      117

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 fca8732...8dafc63. Read the comment docs.


Fix not found links in wiki home.md

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


 People like you need to be fired. Security first policy is just laughable and b s.

Version
Shit like this is precisely why Linus Torvalds said, "Security people are fking morons." Windows is just dying for things like this. What’s the point of using Windows as an operating system if it cannot even run its program (.exe) files? The most secure device is useless.
It’s baffling that a $39.99 Android phone I grabbed from Walmart could run Windows .exe files natively while a $1000 Windows Phone couldn’t—even though both operated within sandboxed, walled-garden environments. The inability to run .exe files natively on Windows Phone due to restrictive sandboxing, enforced managed code, and the prohibition of C++ (all in the name of "security") effectively killed the platform. Ironically, many applications require cross-platform C/C++ codebases, so these restrictions alienated developers and users.

The fundamental ability of a computer to execute programs (.exe) is non-negotiable. Stripping this away undermines what it means to be a computer in the first place.
Looking ahead, I wouldn’t be surprised if Microsoft takes this even further—banning web browsers and PWAs entirely under the guise of “security.” After all, web browsers can pose risks, such as enabling cryptocurrency mining via malicious websites. By this logic, why not ban browsers, computers, and phones altogether? When does it stop? Do we secure devices by locking people away in prison for safety?
These policies feel less about genuine security and more like monopolistic practices aimed at locking users into tightly controlled ecosystems filled with store-driven junk.


Fixed "Invalid parameter not satisfying: date" error on iOS at the se…

…cond opening of the date picker

Forked & applied this patch to address a need in my own project, worked for me.  Thanks for contributing, hopefully we'll see this merged in soon

Thanks for this mvidailhet.


Is this method applicable to other architectures?

apologies if this is not a good place to ask this, but I'm not sure where else might be appropriate. I'm hoping the question label is available.
this is a fascinating project, I never thought it would be possible to bypass the emulation problem entirely and recompile a program from one architecture to another. I'm wondering, is it possible to use this same logic to do the same for other platforms? platforms such as n64 to android, PC to Android, or even the other way around? I know theoretically it's possible, but is it possible using this same, or a similar, codebase? I don't know how this project maps N64 Bytecode to PC Bytecode, but shouldn't it be possible to build a map of any machine's bytecode, and figure out a way to map that again onto any other machine's bytecode? maybe through some intermediate representation that has known conversions to and from any architecture?
this is a very complicated way to say, I'm curious how difficult it would be to apply this same method to other platforms/architectures, is a lot of the groundwork laid down already, or would it essentially be working from scratch?

You'll find the answer to your question here: https://github.com/N64Recomp/N64Recomp/issues/42

You'll find the answer to your question here: #42

ah, I understand now. C is the intermediate representation, we just need to "translate" the bytecode to C, and then use the preestablished C compilers to recompile for the target system. And this project only translates n64 bytecode. Thank you for the insight.


Can't work with bookshelf plugin

FYI,
Can't work with bookshelf plugin which extend & replace Model (e.g: virtuals & visibility).
TypeError: Journal.query is not a function
    at Object.<anonymous> (....\test-model.js:13:4)
    at Module._compile (module.js:409:26)
    at Object.Module._extensions..js (module.js:416:10)
    at Module.load (module.js:343:32)
    at Function.Module._load (module.js:300:12)
    at Function.Module.runMain (module.js:441:10)
    at startup (node.js:134:18)
    at node.js:962:3

This plugins looks extensive. But if I can't create other custom plugin which enrich the Model, hence this is a dead-end.

Hi!
Looks like I've pinned this down.
The problem was caused by Bookshelf extend method which manipulates proto instead of copying static methods directly to child class. It brokes CS class inheritance.