Using sprinkles in a recipe doesn't output the correct css variable

Describe the bug
When creating recipe variants utilising sprinkles to apply values to CSS attributes, the resulting output does not use the correct CSS vars. Instead it tries to place class names in the CSS itself.
Reproduction
https://codesandbox.io/s/quiet-sunset-v709yq?file=/src/App.tsx
System Info
System:
    OS: macOS 12.5
    CPU: (8) arm64 Apple M1 Pro
    Memory: 1.01 GB / 32.00 GB
    Shell: 5.8.1 - /bin/zsh
  Binaries:
    Node: 16.13.2 - ~/.nvm/versions/node/v16.13.2/bin/node
    Yarn: 3.2.2 - ~/.nvm/versions/node/v16.13.2/bin/yarn
    npm: 8.1.2 - ~/.nvm/versions/node/v16.13.2/bin/npm
  Browsers:
    Chrome: 104.0.5112.79
    Firefox: 100.0.2
    Safari: 15.6

Used Package Manager
yarn
Logs
No response
Validations

[X] Check that there isn't already an issue that reports the same bug to avoid creating a duplicate.
[X] The provided reproduction is a minimal reproducible example of the bug.

The purpose of sprinkles is to "Generate a static set of custom utility classes and compose them ... statically at build time", so the output of the sprinkles function is a series of classnames.
If you look at the example docs for recipes, where the sprinkles functions are used directly, you can see that sprinkles is actually used at the variant level, not the individual property level.
  // ...

  variants: {
    color: {
      neutral: sprinkles({ background: 'neutral' }),
      brand: sprinkles({ background: 'brand' }),
      accent: sprinkles({ background: 'accent' })
    },
    size: {
      small: sprinkles({ padding: 'small' }),
      medium: sprinkles({ padding: 'medium' }),
      large: sprinkles({ padding: 'large' })
    }
  },
  // ...

The good news is that sprinkles already does most of what you're trying to do. You can pass multiple properties to the sprinkles function, so
variants: {
    tone: {
-      primary: {
-        color: sprinkles({ color: "white" }),
-        background: sprinkles({ background: "green-500" })
-      },
+     primary: sprinkles({ color: "white", background: "green-500" }),

For what you want to do with the borders, you should use your vars directly, and compose up that style with the sprinkles you do have.
secondary: style([
  sprinkles({ color: "green-500", background: "white" }),
  `1px solid ${vars.color["green-500"]}`,
]),

I forked your codesandbox, take a look and let me know if that answers your questions.
https://codesandbox.io/s/amazing-frog-jck5lf?file=/src/App.css.ts

Thanks @benjervis!


Tractography plotting improvements

Hello! I've been experimenting more with niivue and it looks great! However, I'd like to do the following:

Color/show specific bundles (from .trk)
Clip the tractography (mesh) view when added to 2D volume views to a given threshold before/after the plane

Is it possible with the current implementation or does it require some tweaking?
Concerning the first point, in nvmesh.js, I see the following:

Bundle reading for readTRACT
Nothing of the sort in readTRK

@pierre-nedelec you can already show bundle specific colors. The tractography demo includes a pull-down menu that allows you to set per-vertex and per-streamline colors. For TrackVis TRK files the n_properties sets the data_per_streamline (dps) and n_scalars sets the data_per_vertex (dpv). The As you note, the AFNI .tract.niml format uses Bundle_Tag to set dps. NiiVue code uses the dps and dpv terminology to match the TRX specifications.

With regards to clipping the mesh near a boundary, do take a look at mesh clipping slider on the advanced world space demo. Note that it works on the 2D slices, not the 3D rendering. Also, if your voxel data grid is rotated relative to world space, the effect works best in voxel space mode not world space mode. This reflects an inherent limitation of WebGL2, where you can not read the depth buffer. A great thing about WebGL2 is that it is a lowest common denominator language that can be implemented on the optimal graphics driver for the hardware (OpenGL ES, Metal, Vulcan, DirectX). However, a consequence of this is that it lacks some of the advanced features of these advanced APIs (e.g. geometry shaders, reading depth buffer, etc).

Hi @neurolabusc! Thank you for pointing out to the example, it was super helpful. Sorry I meant to come back to this earlier, I don't think it's quite closed yet.

The mesh clipping works great.
The default bundle highlighting works too (with nv1.setMeshProperty(nv1.meshes[0].id, "fiberColor", "DPS0");)
However, is there a way to:

specify the color for each tract based on tract name?

What is the correct way to assign a colormap that maps into the bundle id? it seems I can modify nv1.colormap maybe, but not sure if that's the right approach...
https://github.com/niivue/niivue/blob/df657245fc510e1318f0c7fdba4fce14e7d6bb1c/src/nvmesh.js#L240-L256
Also, in nv1.meshes[0].dps, I only see numerical values, not bundle names, even though those were saved in the trk file (see screenshot below). The mapping should occur by name and not just id since these could be mixed up.

decide which one to show or to hide?

Thank you for your help!

Thanks for the response, I understand the limits of the TRK file better. Looks like TRX is very promising! I think I could currently overcome that by using the json sidecar that comes with the TRK file which has the mapping between bundle name and # (see below).
Concerning the coloring, thanks for pointing out the example file. Re: your cal_min comment, if for some reason the tract # is different from one file to the other using a colormap like that wouldn't be consistent, so it'd be useful to be able to assign a color to each # by passing a dictionary or function as argument. I can imagine people to be interested in that with other types of property for which they want some fancy coloring (e.g., thresholding, non linear mapping).
But more importantly for us here, is there a way to show/hide bundles based on property value? I.e., could I tell NiiVue to only display fibers that have the DPS property value of 5?
"bundle_ids": {
    "ATR_L": 1,
    "ATR_R": 2,
    ...
    "VOF_R": 17,
    "VOF_L": 18
    }

Thanks!


refactor html and javascript

:warning: Please install the  to ensure uploads and comments are reliably processed by Codecov.
Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:
:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.


Copied promise stays unresolved

I believe this issue is related to 23bc92b1 commit in v1.3.0-beta.18.
Up until this change, when you copied a promise with angular.copy and resolved deferred afterwards, the copy would be resolved along with it. But now it stays unresolved. I'm not sure if this behaviour makes sense as both promises originate from the same deferred, which you then resolve.
See these fiddles with identical code, but different AngularJS versions, illustrating the issue:

v1.3.0-beta.17 – both promises are resolved
v1.3.0-beta.18 – only original promise is resolved

Which behaviour should be considered correct?
I have encountered this issue when dotJEM/angular-routing stopped working with v1.3.0-beta.18. So if not a regression, it's a breaking change then.

This issue is not isolated to angular promises, as all Promise A+ implementations have the same issue. The root of the problem is that promises are not meant to be copied around. With this in mind, I am closing this issue as invalid.

@lgalfaso while that is correct, aren't you also stating that the angular.copy method does in fact misbehave in that it actually copies promises??...
Since the angular.copy method already has special handing for allot of things, would it be that bad to add a special case for when encountering promises?...

@jeme I think it would be a bad idea for angular.copy to try to handle every single thing that is out there and handle it using a specific API for each case. There are just too many different things that need to be handled in different ways. Now, once ES6 promises is out and there is a reasonable browser support, then I think it would be ok to add some special logic (same goes for other ES6 constructs)

@lgalfaso yet angular already looks at "IsPromiseLike" when providing something to the $q.when service... so the difference is?
It would be fair if it only worked with angular promises in my mind though.

$q.when deals needs to know what is a promise and what is not a promise. That is what $q.when does, so it needs to know what it is a promise and what is not. The fact that thenable objects are handled as promises is a consequence of the fact that Promise/A+ mandates this.
angular.copy is meant to handle simple objects. Given a promise p1, what is the expected behavior of a copy p2? Should p2 get resolved when p1 is resolved? If p1 is locked/resolved, should p2 also be locked/resolved? If p1, when resolved, would resolve other promises (each with its own functions that should get called), should p2 also have other promises that should get called and also trigger the same functions?
Many of these are not easy questions to answer, the reason being that it is not defined what a copy of a promise is, nor how it should behave.
If I go back to the original issue opened, it reads
...
v1.3.0-beta.17 – both promises are resolved
v1.3.0-beta.18 – only original promise is resolved

Which behaviour should be considered correct?
...

The answer would be: When passing a promise to angular.copy, the resulting object has its behavior unspecified

@lgalfaso I think your making a promise out to be a much more complex construct that it is.
If you review it just as a future result I think the answer is quite simple.
Why should copying an object change it's behavior? By the second argument, the promise should be able to be resolved with a different state?... But now it's not really a true copy is it?...

A) both promises are resolved: Framework friendly, as you can grap an object from a framework, copy it and pass it on. Things won't break... The framework can be treated as a black-box.
B) only original promise is resolved: Not Framework friendly, copying objects may break behavior and you will have a hard time figuring out why. To compensate you need to know the insides of the framework, the framework must suddenly be treated as a white-box...

Anyways, I stand by my opinion here...
But I can see ill have to stop using angular.copy...

thanks @jeme, wasted a day and then came to this article. Not sure how many more hours I would have spent if I had not read this. I agree with the thought. I don't see any reason to copy a promise at the same time I do not see any reason not to , especially when promises are part of big object.


Make debugger widgets more compact

This is a heavily opinionated PR. I believe that Plasma's widgets and by extension, Matter's debugger widgets are a little too big. This PR makes them a bit more compact. It's not completely finished yet.
See https://github.com/evaera/plasma/pull/14, a related PR.

Before:

After:

I think this all looks better, but I would like to see more structural changes and that is more indicative of the UI needing a redesign in my opinion. The feeling as to why I feel like this is more bloated as opposed to something like imGUIs presets for UI is the size of padding, the style and such.
I might not have everyones vote of confidence in having an eye for design but I think Flecs have a great dashboard that feels compact and uniform

Sure, I agree with you, but the PR is intended to make the widgets a little more usable. A full redesign is out of scope for this PR and is not something I have time for.
Ideally the APIs that the debugger can be made public at some point so that we can ship our own if we disagree.

Should also be noted that the reason this is a draft is because it's not finished. I haven't gotten to all of the widgets in Plasma yet

A full redesign is out of scope for this PR and is not something I have time for.

The way I see it is that if we plan to redesign it, all of this effort may go to waste. It is your decision whether you want to continue this though.

I am not aware of a project to fully redesign the debugger. What was discussed was to simply make it separable from Matter.
Regardless, these changes took less than 10 minutes.


Should we provide a new tab "Action History" ?

As an user, I want to see the action history which I have applied, it could be pretty useful for the audit purpose, can we provide this function ? or I can try to raise a PR.

Yes indeed. The For audits, we usually analyze the repository directly. There are a few caveats why this might be hard to implement:

The only data we have is the git commit history.
We avoid fetching more than we need atm, so it's incomplete on the server.
Even if you have all commits, they only encode changes but not the high-level actions that caused them.

That being said. I like the idea but it's hard to get right.

Got it, thanks for your reply,  hope we can do it when there is a better opportunity.


feat: add proxies and reactors patch method

Description
Title

Testing required outside of automated testing?

[x] Not Applicable

Screenshots (if appropriate):

[x] Not Applicable

Rollback / Rollforward Procedure

[x] Roll Forward
[ ] Roll Back

Reviewer Checklist

[ ] Description of Change
[ ] Description of outside testing if applicable.
[ ] Description of Roll Forward / Backward Procedure
[ ] Documentation updated for Change

:tada: This PR is included in version 1.78.0 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Update reduce_openapi_spec in spec.py to handle NULL value for 'docs'

@hinthornw
Description
When iterating through an openapi spec, if the value of docs  is NULL within a get/post/patch or delete endpoint, then the code throws an error - docs not have attribute "get".
Example
An openapi compliant json spec where this is material fix - https://github.com/SpaceTradersAPI/api-docs/blob/main/reference/SpaceTraders.json
Code blob to load the file and check
from langchain.tools import OpenAPISpec
from langchain.agents.agent_toolkits.openapi.spec import reduce_openapi_spec

raw_spacetraders_spec = OpenAPISpec.from_file('Path/to/SpaceTraders.json') # load referenced JSON openapi spec
converted_spacetraders_spec = json.loads(raw_spacetraders_spec.json())
reduced_spacetraders_spec = reduce_openapi_spec(converted_spacetraders_spec)
# The above line throws an Attribute error because a null type doesn't have attribute 'get'

Suggested Fix
We can additionally check for docs being NULL as a part of the if statement. Thus, only if an endpoint is get/post/patch/delete AND the route is not null, do we store the tuple

@gokul92 Hi , could you, please, address the last comments (if needed)? After that, ping me and I push this PR for the review. Thanks!

Looks like this isn't being worked on anymore. I'll close for now, and if you resume work, feel free to reopen!


Can't install the plugin

Hello, there seems to be a problem with the server as when I try to install I get the following error:
Installing plugin heroku-accounts... !
 ▸    yarn —non-interactive —mutex=file:/Users/adria/Library/Caches/heroku/yarn —cache-folder=/Users/adria/Library/Caches/heroku/yarn
 ▸    exited with code 1
 ▸    error An unexpected error occurred:
 ▸    "http://cli-npm.heroku.com/sprintf-js/-/sprintf-js-1.0.3/04e6926f662895354f3dd015203633b857297e2c/04e6926f662895354f3dd015203633b857297e2c.tgz:
 ▸    Request failed \"500 Internal Server Error\"".
 ▸
 !    error installing plugin heroku-accounts

What can I do? Thanks

Can you try again? Our npm server was down temporarily


Make Content Navigation a single component

Use this component (data is correct on getting-started page) everwhere
Should be dynamic and can support 2-4 blocks on same row (centered if less than 4 - even otherwise)
Each landing page should have this section before the footer.

Where you have it now above the social links makes sense to me!


Symbol's function definition is void when installing on home-manager flake

I'm getting a Symbol's function definition is void / (doom-modules-initialize) traceback when running home-manager switch --flake. I'm running NixOS unstable and Home Manager flake using the standalone home-manager tool.
In my home-manager flake.nix inputs I have:
    nix-doom-emacs-unstraightened = {
      url = "github:marienz/nix-doom-emacs-unstraightened/main";
    };

and in my home-manager configuration:
{ config, pkgs, inputs, ... }:

{
  programs.doom-emacs = {
    enable = true;
    doomDir = ./doom.d;
  };
  home.packages = with pkgs; [
    ctags
  ];
}

Here is the traceback:

$ home-manager switch
$ home-manager switch --show-trace --flake ~/repos/nixos-config/home-manager

warning: Git tree '/home/akaihola/repos/nixos-config' is dirty
warning: updating lock file '/home/akaihola/repos/nixos-config/home-manager/flake.lock':
• Updated input 'nix-doom-emacs-unstraightened':
    'github:marienz/nix-doom-emacs-unstraightened/f42213c85926350c31be8c37f162d05a5d7b1240?narHash=sha256-v6iwYZ%2BYpI2u9Zcig8H9YfYJS3mpg0PKxRkeBK2GSzY%3D' (2024-11-02)
  → 'github:marienz/nix-doom-emacs-unstraightened/728040b0b7c2c0baa47fb3365b57bd3e1658207a?narHash=sha256-KEuh2nsgl8iiPWMg4wfrnCoZqPssw6dbMCy9MheLJZg%3D' (2024-12-16)
warning: Git tree '/home/akaihola/repos/nixos-config' is dirty
warning: Git tree '/home/akaihola/repos/nixos-config' is dirty
warning: Git tree '/home/akaihola/repos/nixos-config' is dirty
warning: Git tree '/home/akaihola/repos/nixos-config' is dirty
trace: warning: You are using

  Home Manager version 24.11 and
  Nixpkgs version 25.05.

Using mismatched versions is likely to cause errors and unexpected
behavior. It is therefore highly recommended to use a release of Home
Manager that corresponds with your chosen release of Nixpkgs.

If you insist then you can disable this warning by adding

  home.enableNixpkgsReleaseCheck = false;

to your configuration.

error:
       … while calling the 'derivationStrict' builtin
         at <nix/derivation-internal.nix>:34:12:
           33|
           34|   strict = derivationStrict drvAttrs;
             |            ^
           35|

       … while evaluating derivation 'home-manager-generation'
         whose name attribute is located at /nix/store/22r7q7s9552gn1vpjigkbhfgcvhsrz68-source/pkgs/stdenv/generic/make-derivation.nix:336:7

       … while evaluating attribute 'buildCommand' of derivation 'home-manager-generation'
         at /nix/store/22r7q7s9552gn1vpjigkbhfgcvhsrz68-source/pkgs/build-support/trivial-builders/default.nix:59:17:
           58|         enableParallelBuilding = true;
           59|         inherit buildCommand name;
             |                 ^
           60|         passAsFile = [ "buildCommand" ]

       … while calling the 'getAttr' builtin
         at <nix/derivation-internal.nix>:44:19:
           43|       value = commonAttrs // {
           44|         outPath = builtins.getAttr outputName strict;
             |                   ^
           45|         drvPath = strict.drvPath;

       … while calling the 'derivationStrict' builtin
         at <nix/derivation-internal.nix>:34:12:
           33|
           34|   strict = derivationStrict drvAttrs;
             |            ^
           35|

       … while evaluating derivation 'activation-script'
         whose name attribute is located at /nix/store/22r7q7s9552gn1vpjigkbhfgcvhsrz68-source/pkgs/stdenv/generic/make-derivation.nix:336:7

       … while evaluating attribute 'text' of derivation 'activation-script'
         at /nix/store/22r7q7s9552gn1vpjigkbhfgcvhsrz68-source/pkgs/build-support/trivial-builders/default.nix:102:17:
          101|       ({
          102|         inherit text executable checkPhase allowSubstitutes preferLocalBuild;
             |                 ^
          103|         passAsFile = [ "text" ]

       … while calling the 'concatStringsSep' builtin
         at /nix/store/781lg988vxf6dw57igf4l6plm92dfj6c-source/modules/home-environment.nix:673:13:
          672|           if sortedCommands ? result then
          673|             concatStringsSep "\n" (map mkCmd sortedCommands.result)
             |             ^
          674|           else

       … while calling 'mkCmd'
         at /nix/store/781lg988vxf6dw57igf4l6plm92dfj6c-source/modules/home-environment.nix:666:17:
          665|       let
          666|         mkCmd = res: ''
             |                 ^
          667|             _iNote "Activating %s" "${res.name}"

       … while evaluating the attribute 'data'
         at /nix/store/781lg988vxf6dw57igf4l6plm92dfj6c-source/modules/lib/dag.nix:89:43:
           88|     in if sorted ? result then {
           89|       result = map (v: { inherit (v) name data; }) sorted.result;
             |                                           ^
           90|     } else

       … while evaluating the attribute 'data'
         at /nix/store/781lg988vxf6dw57igf4l6plm92dfj6c-source/modules/lib/dag.nix:83:9:
           82|         name = n;
           83|         data = v.data;
             |         ^
           84|         after = v.after ++ dagBefore dag n;

       … from call site
         at /nix/store/781lg988vxf6dw57igf4l6plm92dfj6c-source/modules/lib/dag.nix:83:16:
           82|         name = n;
           83|         data = v.data;
             |                ^
           84|         after = v.after ++ dagBefore dag n;

       … while calling anonymous lambda
         at /nix/store/22r7q7s9552gn1vpjigkbhfgcvhsrz68-source/lib/attrsets.nix:1204:18:
         1203|         mapAttrs
         1204|           (name: value:
             |                  ^
         1205|             if isAttrs value && cond value

       … from call site
         at /nix/store/22r7q7s9552gn1vpjigkbhfgcvhsrz68-source/lib/attrsets.nix:1207:18:
         1206|             then recurse (path ++ [ name ]) value
         1207|             else f (path ++ [ name ]) value);
             |                  ^
         1208|     in

       … while calling anonymous lambda
         at /nix/store/22r7q7s9552gn1vpjigkbhfgcvhsrz68-source/lib/modules.nix:254:72:
          253|           # For definitions that have an associated option
          254|           declaredConfig = mapAttrsRecursiveCond (v: ! isOption v) (_: v: v.value) options;
             |                                                                        ^
          255|

       … while evaluating the attribute 'value'
         at /nix/store/22r7q7s9552gn1vpjigkbhfgcvhsrz68-source/lib/modules.nix:846:9:
          845|     in warnDeprecation opt //
          846|       { value = addErrorContext "while evaluating the option `${showOption loc}':" value;
             |         ^
          847|         inherit (res.defsFinal') highestPrio;

       … while evaluating the option `home.activation.installPackages.data':

       … while evaluating the attribute 'mergedValue'
         at /nix/store/22r7q7s9552gn1vpjigkbhfgcvhsrz68-source/lib/modules.nix:881:5:
          880|     # Type-check the remaining definitions, and merge them. Or throw if no definitions.
          881|     mergedValue =
             |     ^
          882|       if isDefined then

       … while evaluating a branch condition
         at /nix/store/22r7q7s9552gn1vpjigkbhfgcvhsrz68-source/lib/modules.nix:882:7:
          881|     mergedValue =
          882|       if isDefined then
             |       ^
          883|         if all (def: type.check def.value) defsFinal then type.merge loc defsFinal

       … while evaluating the attribute 'values'
         at /nix/store/22r7q7s9552gn1vpjigkbhfgcvhsrz68-source/lib/modules.nix:875:9:
          874|       in {
          875|         values = defs''';
             |         ^
          876|         inherit (defs'') highestPrio;

       … while evaluating a branch condition
         at /nix/store/22r7q7s9552gn1vpjigkbhfgcvhsrz68-source/lib/modules.nix:871:11:
          870|           # Avoid sorting if we don't have to.
          871|           if any (def: def.value._type or "" == "order") defs''.values
             |           ^
          872|           then sortProperties defs''.values

       … while calling the 'any' builtin
         at /nix/store/22r7q7s9552gn1vpjigkbhfgcvhsrz68-source/lib/modules.nix:871:14:
          870|           # Avoid sorting if we don't have to.
          871|           if any (def: def.value._type or "" == "order") defs''.values
             |              ^
          872|           then sortProperties defs''.values

       … while evaluating the attribute 'values'
         at /nix/store/22r7q7s9552gn1vpjigkbhfgcvhsrz68-source/lib/modules.nix:974:7:
          973|     in {
          974|       values = concatMap (def: if getPrio def == highestPrio then [(strip def)] else []) defs;
             |       ^
          975|       inherit highestPrio;

       … while calling the 'concatMap' builtin
         at /nix/store/22r7q7s9552gn1vpjigkbhfgcvhsrz68-source/lib/modules.nix:974:16:
          973|     in {
          974|       values = concatMap (def: if getPrio def == highestPrio then [(strip def)] else []) defs;
             |                ^
          975|       inherit highestPrio;

       … while calling the 'concatMap' builtin
         at /nix/store/22r7q7s9552gn1vpjigkbhfgcvhsrz68-source/lib/modules.nix:861:17:
          860|         # Process mkMerge and mkIf properties.
          861|         defs' = concatMap (m:
             |                 ^
          862|           map (value: { inherit (m) file; inherit value; }) (addErrorContext "while evaluating definitions from `${m.file}':" (dischargeProperties m.value))

       … while calling anonymous lambda
         at /nix/store/22r7q7s9552gn1vpjigkbhfgcvhsrz68-source/lib/modules.nix:861:28:
          860|         # Process mkMerge and mkIf properties.
          861|         defs' = concatMap (m:
             |                            ^
          862|           map (value: { inherit (m) file; inherit value; }) (addErrorContext "while evaluating definitions from `${m.file}':" (dischargeProperties m.value))

       … while calling the 'map' builtin
         at /nix/store/22r7q7s9552gn1vpjigkbhfgcvhsrz68-source/lib/modules.nix:862:11:
          861|         defs' = concatMap (m:
          862|           map (value: { inherit (m) file; inherit value; }) (addErrorContext "while evaluating definitions from `${m.file}':" (dischargeProperties m.value))
             |           ^
          863|         ) defs;

       … while evaluating definitions from `/nix/store/781lg988vxf6dw57igf4l6plm92dfj6c-source/modules/home-environment.nix':

       … from call site
         at /nix/store/22r7q7s9552gn1vpjigkbhfgcvhsrz68-source/lib/modules.nix:862:128:
          861|         defs' = concatMap (m:
          862|           map (value: { inherit (m) file; inherit value; }) (addErrorContext "while evaluating definitions from `${m.file}':" (dischargeProperties m.value))
             |                                                                                ^
          863|         ) defs;

       … while calling 'dischargeProperties'
         at /nix/store/22r7q7s9552gn1vpjigkbhfgcvhsrz68-source/lib/modules.nix:933:25:
          932|   */
          933|   dischargeProperties = def:
             |                         ^
          934|     if def._type or "" == "merge" then

       … while evaluating a branch condition
         at /nix/store/22r7q7s9552gn1vpjigkbhfgcvhsrz68-source/lib/modules.nix:934:5:
          933|   dischargeProperties = def:
          934|     if def._type or "" == "merge" then
             |     ^
          935|       concatMap dischargeProperties def.contents

       … while evaluating the attribute 'value'
         at /nix/store/22r7q7s9552gn1vpjigkbhfgcvhsrz68-source/lib/modules.nix:614:53:
          613|                 (n: value:
          614|                   [{ inherit (module) file; inherit value; }]
             |                                                     ^
          615|                 )

       … while calling the 'getAttr' builtin
         at <nix/derivation-internal.nix>:44:19:
           43|       value = commonAttrs // {
           44|         outPath = builtins.getAttr outputName strict;
             |                   ^
           45|         drvPath = strict.drvPath;

       … while calling the 'derivationStrict' builtin
         at <nix/derivation-internal.nix>:34:12:
           33|
           34|   strict = derivationStrict drvAttrs;
             |            ^
           35|

       … while evaluating derivation 'home-manager-path'
         whose name attribute is located at /nix/store/22r7q7s9552gn1vpjigkbhfgcvhsrz68-source/pkgs/stdenv/generic/make-derivation.nix:336:7

       … while evaluating attribute 'passAsFile' of derivation 'home-manager-path'
         at /nix/store/22r7q7s9552gn1vpjigkbhfgcvhsrz68-source/pkgs/build-support/trivial-builders/default.nix:60:9:
           59|         inherit buildCommand name;
           60|         passAsFile = [ "buildCommand" ]
             |         ^
           61|           ++ (derivationArgs.passAsFile or [ ]);

       … while evaluating the attribute 'passAsFile'
         at /nix/store/22r7q7s9552gn1vpjigkbhfgcvhsrz68-source/pkgs/build-support/buildenv/default.nix:107:7:
          106|       # XXX: The size is somewhat arbitrary
          107|       passAsFile = if builtins.stringLength pkgs >= 128 * 1024 then [ "pkgs" ] else [ ];
             |       ^
          108|     }

       … while evaluating a branch condition
         at /nix/store/22r7q7s9552gn1vpjigkbhfgcvhsrz68-source/pkgs/build-support/buildenv/default.nix:107:20:
          106|       # XXX: The size is somewhat arbitrary
          107|       passAsFile = if builtins.stringLength pkgs >= 128 * 1024 then [ "pkgs" ] else [ ];
             |                    ^
          108|     }

       … in the argument of the not operator
         at /nix/store/22r7q7s9552gn1vpjigkbhfgcvhsrz68-source/pkgs/build-support/buildenv/default.nix:107:50:
          106|       # XXX: The size is somewhat arbitrary
          107|       passAsFile = if builtins.stringLength pkgs >= 128 * 1024 then [ "pkgs" ] else [ ];
             |                                                  ^
          108|     }

       … while calling the 'lessThan' builtin
         at /nix/store/22r7q7s9552gn1vpjigkbhfgcvhsrz68-source/pkgs/build-support/buildenv/default.nix:107:50:
          106|       # XXX: The size is somewhat arbitrary
          107|       passAsFile = if builtins.stringLength pkgs >= 128 * 1024 then [ "pkgs" ] else [ ];
             |                                                  ^
          108|     }

       … while calling the 'stringLength' builtin
         at /nix/store/22r7q7s9552gn1vpjigkbhfgcvhsrz68-source/pkgs/build-support/buildenv/default.nix:107:23:
          106|       # XXX: The size is somewhat arbitrary
          107|       passAsFile = if builtins.stringLength pkgs >= 128 * 1024 then [ "pkgs" ] else [ ];
             |                       ^
          108|     }

       … while calling the 'toJSON' builtin
         at /nix/store/22r7q7s9552gn1vpjigkbhfgcvhsrz68-source/pkgs/build-support/buildenv/default.nix:102:14:
          101|         ;
          102|       pkgs = builtins.toJSON chosenOutputs;
             |              ^
          103|       extraPathsFrom = lib.optional includeClosures (writeClosure pathsForClosure);

       … while evaluating list element at index 56

       … while evaluating attribute 'paths'
         at /nix/store/22r7q7s9552gn1vpjigkbhfgcvhsrz68-source/pkgs/build-support/buildenv/default.nix:64:7:
           63|     chosenOutputs = map (drv: {
           64|       paths =
             |       ^
           65|         # First add the usual output(s): respect if user has chosen explicitly,

       … while evaluating list element at index 0
         at /nix/store/22r7q7s9552gn1vpjigkbhfgcvhsrz68-source/pkgs/build-support/buildenv/default.nix:64:7:
           63|     chosenOutputs = map (drv: {
           64|       paths =
             |       ^
           65|         # First add the usual output(s): respect if user has chosen explicitly,

       … while calling the 'getAttr' builtin
         at <nix/derivation-internal.nix>:44:19:
           43|       value = commonAttrs // {
           44|         outPath = builtins.getAttr outputName strict;
             |                   ^
           45|         drvPath = strict.drvPath;

       … while calling the 'derivationStrict' builtin
         at <nix/derivation-internal.nix>:34:12:
           33|
           34|   strict = derivationStrict drvAttrs;
             |            ^
           35|

       … while evaluating derivation 'emacs-with-doom-29.4'
         whose name attribute is located at /nix/store/22r7q7s9552gn1vpjigkbhfgcvhsrz68-source/pkgs/stdenv/generic/make-derivation.nix:336:7

       … while evaluating attribute 'doomEmacs' of derivation 'emacs-with-doom-29.4'
         at /nix/store/sf5kvvh3v521i1xa0qg5zgg7fgh7vccy-source/default.nix:443:13:
          442|     inherit (emacs) meta;
          443|     inherit doomEmacs emacs;
             |             ^
          444|     buildCommandPath = ./build-helpers/build-emacs-with-doom.sh;

       … while calling the 'getAttr' builtin
         at <nix/derivation-internal.nix>:44:19:
           43|       value = commonAttrs // {
           44|         outPath = builtins.getAttr outputName strict;
             |                   ^
           45|         drvPath = strict.drvPath;

       … while calling the 'derivationStrict' builtin
         at <nix/derivation-internal.nix>:34:12:
           33|
           34|   strict = derivationStrict drvAttrs;
             |            ^
           35|

       … while evaluating derivation 'doom-emacs'
         whose name attribute is located at /nix/store/22r7q7s9552gn1vpjigkbhfgcvhsrz68-source/pkgs/stdenv/generic/make-derivation.nix:336:7

       … while evaluating attribute 'doomProfile' of derivation 'doom-emacs'
         at /nix/store/sf5kvvh3v521i1xa0qg5zgg7fgh7vccy-source/default.nix:430:7:
          429|       binPath
          430|       doomProfile
             |       ^
          431|       doomLocalDir

       … while calling the 'getAttr' builtin
         at <nix/derivation-internal.nix>:44:19:
           43|       value = commonAttrs // {
           44|         outPath = builtins.getAttr outputName strict;
             |                   ^
           45|         drvPath = strict.drvPath;

       … while calling the 'derivationStrict' builtin
         at <nix/derivation-internal.nix>:34:12:
           33|
           34|   strict = derivationStrict drvAttrs;
             |            ^
           35|

       … while evaluating derivation 'doom-profile'
         whose name attribute is located at /nix/store/22r7q7s9552gn1vpjigkbhfgcvhsrz68-source/pkgs/stdenv/generic/make-derivation.nix:336:7

       … while evaluating attribute 'EMACS' of derivation 'doom-profile'
         at /nix/store/sf5kvvh3v521i1xa0qg5zgg7fgh7vccy-source/default.nix:407:5:
          406|     initEl = ./init.el;
          407|     EMACS = lib.getExe emacsWithPackages;
             |     ^
          408|     inherit (emacsWithPackages) deps;

       … from call site
         at /nix/store/sf5kvvh3v521i1xa0qg5zgg7fgh7vccy-source/default.nix:407:13:
          406|     initEl = ./init.el;
          407|     EMACS = lib.getExe emacsWithPackages;
             |             ^
          408|     inherit (emacsWithPackages) deps;

       … while calling 'getExe'
         at /nix/store/22r7q7s9552gn1vpjigkbhfgcvhsrz68-source/lib/meta.nix:433:12:
          432|   */
          433|   getExe = x: getExe' x (x.meta.mainProgram or (
             |            ^
          434|     # This could be turned into an error when 23.05 is at end of life

       … from call site
         at /nix/store/22r7q7s9552gn1vpjigkbhfgcvhsrz68-source/lib/meta.nix:433:15:
          432|   */
          433|   getExe = x: getExe' x (x.meta.mainProgram or (
             |               ^
          434|     # This could be turned into an error when 23.05 is at end of life

       … while calling 'getExe''
         at /nix/store/22r7q7s9552gn1vpjigkbhfgcvhsrz68-source/lib/meta.nix:473:16:
          472|   */
          473|   getExe' = x: y:
             |                ^
          474|     assert assertMsg (isDerivation x)

       … in the condition of the assert statement
         at /nix/store/22r7q7s9552gn1vpjigkbhfgcvhsrz68-source/lib/meta.nix:474:5:
          473|   getExe' = x: y:
          474|     assert assertMsg (isDerivation x)
             |     ^
          475|       "lib.meta.getExe': The first argument is of type ${typeOf x}, but it should be a derivation instead.";

       … from call site
         at /nix/store/22r7q7s9552gn1vpjigkbhfgcvhsrz68-source/lib/meta.nix:474:12:
          473|   getExe' = x: y:
          474|     assert assertMsg (isDerivation x)
             |            ^
          475|       "lib.meta.getExe': The first argument is of type ${typeOf x}, but it should be a derivation instead.";

       … while calling 'assertMsg'
         at /nix/store/22r7q7s9552gn1vpjigkbhfgcvhsrz68-source/lib/asserts.nix:39:21:
           38|   # TODO(Profpatsch): add tests that check stderr
           39|   assertMsg = pred: msg: pred || builtins.throw msg;
             |                     ^
           40|

       … in the left operand of the OR (||) operator
         at /nix/store/22r7q7s9552gn1vpjigkbhfgcvhsrz68-source/lib/asserts.nix:39:31:
           38|   # TODO(Profpatsch): add tests that check stderr
           39|   assertMsg = pred: msg: pred || builtins.throw msg;
             |                               ^
           40|

       … from call site
         at /nix/store/22r7q7s9552gn1vpjigkbhfgcvhsrz68-source/lib/meta.nix:474:23:
          473|   getExe' = x: y:
          474|     assert assertMsg (isDerivation x)
             |                       ^
          475|       "lib.meta.getExe': The first argument is of type ${typeOf x}, but it should be a derivation instead.";

       … while calling 'isDerivation'
         at /nix/store/22r7q7s9552gn1vpjigkbhfgcvhsrz68-source/lib/attrsets.nix:1282:5:
         1281|   isDerivation =
         1282|     value: value.type or null == "derivation";
             |     ^
         1283|

       … from call site
         at /nix/store/sf5kvvh3v521i1xa0qg5zgg7fgh7vccy-source/default.nix:120:23:
          119|   # Step 2: override Emacs packages to respect Doom's pins.
          120|   doomEmacsPackages = (emacsPackagesFor emacs).overrideScope (
             |                       ^
          121|     eself: esuper:

       … while calling 'overrideScope'
         at /nix/store/22r7q7s9552gn1vpjigkbhfgcvhsrz68-source/lib/customisation.nix:545:27:
          544|           callPackage = self.newScope {};
          545|           overrideScope = g: makeScope newScope (extends g f);
             |                           ^
          546|           packages = f;

       … from call site
         at /nix/store/22r7q7s9552gn1vpjigkbhfgcvhsrz68-source/lib/customisation.nix:545:30:
          544|           callPackage = self.newScope {};
          545|           overrideScope = g: makeScope newScope (extends g f);
             |                              ^
          546|           packages = f;

       … while calling 'makeScope'
         at /nix/store/22r7q7s9552gn1vpjigkbhfgcvhsrz68-source/lib/customisation.nix:541:25:
          540|   */
          541|   makeScope = newScope: f:
             |                         ^
          542|     let self = f self // {

       … in the left operand of the update (//) operator
         at /nix/store/22r7q7s9552gn1vpjigkbhfgcvhsrz68-source/lib/customisation.nix:542:23:
          541|   makeScope = newScope: f:
          542|     let self = f self // {
             |                       ^
          543|           newScope = scope: newScope (self // scope);

       … from call site
         at /nix/store/22r7q7s9552gn1vpjigkbhfgcvhsrz68-source/lib/customisation.nix:542:16:
          541|   makeScope = newScope: f:
          542|     let self = f self // {
             |                ^
          543|           newScope = scope: newScope (self // scope);

       … while calling 'extends'
         at /nix/store/22r7q7s9552gn1vpjigkbhfgcvhsrz68-source/lib/fixed-points.nix:323:7:
          322|     (
          323|       final:
             |       ^
          324|       let

       … in the right operand of the update (//) operator
         at /nix/store/22r7q7s9552gn1vpjigkbhfgcvhsrz68-source/lib/fixed-points.nix:327:12:
          326|       in
          327|       prev // overlay final prev
             |            ^
          328|     );

       … from call site
         at /nix/store/22r7q7s9552gn1vpjigkbhfgcvhsrz68-source/lib/fixed-points.nix:327:15:
          326|       in
          327|       prev // overlay final prev
             |               ^
          328|     );

       … while calling anonymous lambda
         at /nix/store/sf5kvvh3v521i1xa0qg5zgg7fgh7vccy-source/default.nix:121:12:
          120|   doomEmacsPackages = (emacsPackagesFor emacs).overrideScope (
          121|     eself: esuper:
             |            ^
          122|     let

       … in the right operand of the update (//) operator
         at /nix/store/sf5kvvh3v521i1xa0qg5zgg7fgh7vccy-source/default.nix:372:38:
          371|       doomPackages = lib.mapAttrs makePackage doomPackageSet;
          372|       allPackages = upstreamWithPins // doomPackages;
             |                                      ^
          373|     in

       … while calling the 'mapAttrs' builtin
         at /nix/store/sf5kvvh3v521i1xa0qg5zgg7fgh7vccy-source/default.nix:371:22:
          370|       ) esuper;
          371|       doomPackages = lib.mapAttrs makePackage doomPackageSet;
             |                      ^
          372|       allPackages = upstreamWithPins // doomPackages;

       … from call site
         at /nix/store/sf5kvvh3v521i1xa0qg5zgg7fgh7vccy-source/default.nix:115:20:
          114|   # Ignore agda-input: nixpkgs installs this as part of agda2-mode.
          115|   doomPackageSet = lib.filterAttrs (n: v: n != "agda-input") (
             |                    ^
          116|     lib.importJSON "${doomIntermediates}/packages.json"

       … while calling 'filterAttrs'
         at /nix/store/22r7q7s9552gn1vpjigkbhfgcvhsrz68-source/lib/attrsets.nix:646:5:
          645|     pred:
          646|     set:
             |     ^
          647|     removeAttrs set (filter (name: ! pred name set.${name}) (attrNames set));

       … while calling the 'removeAttrs' builtin
         at /nix/store/22r7q7s9552gn1vpjigkbhfgcvhsrz68-source/lib/attrsets.nix:647:5:
          646|     set:
          647|     removeAttrs set (filter (name: ! pred name set.${name}) (attrNames set));
             |     ^
          648|

       … from call site
         at /nix/store/sf5kvvh3v521i1xa0qg5zgg7fgh7vccy-source/default.nix:116:5:
          115|   doomPackageSet = lib.filterAttrs (n: v: n != "agda-input") (
          116|     lib.importJSON "${doomIntermediates}/packages.json"
             |     ^
          117|   );

       … while calling 'importJSON'
         at /nix/store/22r7q7s9552gn1vpjigkbhfgcvhsrz68-source/lib/trivial.nix:716:16:
          715|   */
          716|   importJSON = path:
             |                ^
          717|     builtins.fromJSON (builtins.readFile path);

       … while calling the 'fromJSON' builtin
         at /nix/store/22r7q7s9552gn1vpjigkbhfgcvhsrz68-source/lib/trivial.nix:717:5:
          716|   importJSON = path:
          717|     builtins.fromJSON (builtins.readFile path);
             |     ^
          718|

       … while evaluating the first argument passed to builtins.fromJSON

       … while calling the 'readFile' builtin
         at /nix/store/22r7q7s9552gn1vpjigkbhfgcvhsrz68-source/lib/trivial.nix:717:24:
          716|   importJSON = path:
          717|     builtins.fromJSON (builtins.readFile path);
             |                        ^
          718|

       … while realising the context of path '/nix/store/qrd1mrbabf6h7jvszvxmpiaqyabrf3a6-doom-intermediates/packages.json'

       error: builder for '/nix/store/wpczx1kkfr0a3hqd3chaldbb0m05v9qb-doom-intermediates.drv' failed with exit code 255;
       last 20 log lines:
       > x There was an unexpected runtime error
       >   Message: Symbol's function definition is void
       >   Details: (doom-modules-initialize)
       >   Backtrace:
       >     (doom-modules-initialize)
       >     (let ((output-directory (cdr (assq 'output-directory alist)))) (doom-mod...
       >     ((closure (t) (cli alist) (let ((output-directory (cdr (assq 'output-dir...
       >     (funcall (closure (t) (cli alist) (let ((output-directory (cdr (assq 'ou...
       >     (doom-cli-execute #s(doom-cli ("dump") nil (("SUMMARY" . "Dump intermedi...
       >     (let ((cli x16) (bindings x17)) (doom-cli-execute cli bindings))
       >     (let* ((x16 (car-safe x15)) (x17 (cdr-safe x15))) (let ((cli x16) (bindi...
       >     (progn (ignore (consp x15)) (let* ((x16 (car-safe x15)) (x17 (cdr-safe x...
       >     (let ((x15 (car tail))) (progn (ignore (consp x15)) (let* ((x16 (car-saf...
       >     (while tail (let ((x15 (car tail))) (progn (ignore (consp x15)) (let* ((...
       >     (let ((tail (nreverse runners))) (while tail (let ((x15 (car tail))) (pr...
       >     (let ((seen '(t)) runners) (let ((tail (doom-cli-find command (progn (or...
       > GNU Emacs     v29.4            nil
       > Doom core     v3.0.0-pre       fatal: not a git repository (or any of the parent directories): .git
       > Doom modules  v24.10.0-pre     fatal: not a git repository (or any of the parent directories): .git
       >   ! Wrote extended backtrace to /build/doomlocaldir/state/logs/cli.dump.241216205058.8.error
       For full logs, run 'nix log /nix/store/wpczx1kkfr0a3hqd3chaldbb0m05v9qb-doom-intermediates.drv'

I have
├───nix-doom-emacs-unstraightened: github:marienz/nix-doom-emacs-unstraightened/133c4303bbaff2ac8c0224843a5aea4275e7c3e3?narHash=sha256-CcxjoGIy3ycvPTvaNS1nYCWCCFf2GQ1QA/DetLdrRu4%3D (2024-12-25 03:11:21)
│   ├───doomemacs: github:doomemacs/doomemacs/c8a5e6ec1ca85a35f94d6c820c2fd8888373c2ae?narHash=sha256-iwpBfHuJUd5jJjSGSXqlU9V0XKRNTeh6PvUq8riDnCE%3D (2024-09-17 21:30:57)
│   ├───emacs-overlay: github:nix-community/emacs-overlay/d50b1c32137c01919f3a6ac22b5abd163d321774?narHash=sha256-HeP1DfZ0YzfU05QG3nV/YCWEGHT%2BL4cU495yGnqj1lg%3D (2024-09-28 04:32:19)
│   │   ├───flake-utils: github:numtide/flake-utils/c1dfcf08411b08f6b8615f7d8971a2bfa81d5e8a?narHash=sha256-X6rJYSESBVr3hBoH0WbKE5KvhPU5bloyZ2L4K60/fPQ%3D (2024-09-17 08:14:13)
│   │   │   └───systems: github:nix-systems/default/da67096a3b9bf56a91d16901293e51ba5b49a27e?narHash=sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768%3D (2023-04-09 08:27:08)
│   │   ├───nixpkgs follows input 'nix-doom-emacs-unstraightened'
│   │   └───nixpkgs-stable follows input 'nix-doom-emacs-unstraightened'
│   ├───nixpkgs: github:NixOS/nixpkgs/28b5b8af91ffd2623e995e20aee56510db49001a?narHash=sha256-1uw3y94dA4l22LkqHRIsb7qr3rV5XdxQFqctINfx8Cc%3D (2024-09-26 07:28:35)
│   └───systems: github:nix-systems/default/da67096a3b9bf56a91d16901293e51ba5b49a27e?narHash=sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768%3D (2023-04-09 08:27:08)

Ah, of course, I needed to do a nix flake update. Thanks @marienz!

That'd do it (doomemacs from 2024-09-17 is before some backwards-incompatible changes, nix-doom-emacs-unstraightened from 2024-12-25 is after them).
I'm not sure how you got into that state (unless you're manually pinning/controlling the doomemacs input)... If there's anything in particular our documentation should be warning against, please let me know so I can tweak the README.

how you got into that state

I think I did a home-manager switch since a long time, but without nix flake update. My doomemacs input is not pinned.

Hrm, I must be misunderstanding something about how flake updates work. Oh well, thanks for checking!


Header improvements

add option for headers to follow regular hierarchy (h2 currently bigger than h1)
add option to add a line to headers
use same font to headers

should now be inline with some additional options via style settings


Lazystream fix 4 unifiedbyblocks

Addresses #5753
Another attempt !

Status update 2024-03-08
The recent change appears to have got all tests passing.
I discovered some top-level Dask docs I hadn't noticed before - https://docs.dask.org/en/stable/best-practices.html#learn-techniques-for-customization
which may somewhat endorse the slightly messy way of doing things here
Here at MetOffice, we do have some good reasons for wanting to get a solution for this into a bugfix release.  There are quite a few outstanding things we'd like to clear up though, at least in an ideal world ...

benchmark to see what effect this has on performance more generally
add a benchmark to catch "the problem", which would have ben really useful here
raise as an issue on Dask, asking if there is "a better way" of getting what we want
investigate alternative, possibly preferable, ways as suggested by @bouweandela

da.reduce
dask.graph_manipulation.clone

remove or rework test_Saver__lazy.TestStreamed, as since we no longer call da.store, this seems to have become a bit pointless

The team are spending the next 2 weeks giving our testing infrastructure some TLC.
I we haven't made further progress on this PR by the beginning of April we should look at merging as-is and getting a bugfix release out.
In the meantime we'll have to encourage sufferers to use Iris 3.5.

The team are spending the next 2 weeks giving our testing infrastructure some TLC.
If we haven't made further progress on this PR by the beginning of April we should look at merging as-is and getting a bugfix release out.

I also raised https://github.com/dask/dask/issues/10991
There may be some answers there.
Even if not, I suspect @bouweandela suggestion of using da.reduce will probably prove one way to improve on this solution.
In any case, I'm sure we can make this neater some way. I'd love to see a neater solution to this tiresome bit of code

Replaced by #5833
KISS !


v0.3.3 is missing in dist

Hi, you have tagged the new release, but the dist code is stil 0.3.2. Could you please update?

Hi,
Thanks for pointing it out. I have released a new version 0.3.4 that now contains the correct dist as well. It is also available at npm.


apply security updates for 2.6.0

A vulnerability exists in Async through 3.2.1 (fixed in 3.2.2) , which could let a malicious user obtain privileges via the mapValues() method.
The following packages are affected but must be manually updated and verified since they affect build pipeline:

<EMAIL_ADDRESS>requires<EMAIL_ADDRESS><EMAIL_ADDRESS>requires<EMAIL_ADDRESS>via a transitive dependency on<EMAIL_ADDRESS><EMAIL_ADDRESS>requires<EMAIL_ADDRESS>via a transitive dependency on<EMAIL_ADDRESS>

actually, currently there are no fix versions available for these. they will be updated once available.


Cannot create server object

Hi,
I am trying to use slimDNS on my Wipy 3.0 board. However, when I try to create the server, I get the following error:
>>> server = slimDNS.SlimDNSServer(addr, "esp32")
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/flash/lib/slimDNS.py", line 189, in __init__
  File "/flash/lib/slimDNS.py", line 207, in _make_socket
AttributeError: 'module' object has no attribute 'IPPROTO_IP'

Is the socket library provided as part of the wipy firmware not compatible? In case you wonder, I am using version v1.8.6-849-046b350 of the firmware.
Best,
Jonathan.

@MoeweX Thanks for the message.
I don't have access to a WiPy board so I had never tried SlimDNS on one. Looking at the cc3200 micropython port it seems that it's socket module provides a setsockopt() method but does not expose the constants for the supported options the way that other micropython ports do. WIthout these platform-specific constants being exported there's no way to wrote portable code that will work on the WiPy.
I suggest that you file an issue with the WiPy project to ask them to expose all of the constants for the socket options they support, or at least the subset of them that are supported by other micropython implementations.

Thanks for the response. I opened an issue in the Pycom repository.


PET uptake model

Create one model that uses eddymotion's leave-one-volume-out framework to generate a motion-less target by interpolating from the "train" set of volumes, to then register the left-out volume to it.
cc/ @mnoergaard

As discussed on prep call, this can be more general than PET: for starters, this could be a time-series interpolation model that is agnostic to the specifics of the time-series, only assuming that neighboring time-points are similar to each other. Could take a variety of forms: linear interpolation, GP, spline interpolation. I suggest starting with linear interpolation first, because it's fast and simple.
At a second (?) stage, we could go more PET-specific, by using the PET-surfer model as a basis for volume and/or slice predictions.
Both real and simulated data would be good for benchmarking and testing.

When generalizing to time-series, a good place to start would be to think about ModelFactory and whether we need to either generalize that to other use-cases (it's very DWI-specific right now), or whether we need to split it up into a DWIModelFactory and a TimeSeriesModelFactory.

Thanks, Ariel! Post-meeting thoughts: Have to think about this a little bit more, but in an ideal model for PET, we need to take into account the time between volumes (frames) as they will often follow a sequence of short frames in the beginning and then longer frames in the end (an example is [20,20,20,60,60,60,120,120,120,300,300,600,600,600,600,600,600,600,600] seconds). In this regard, the tracer used will be important (11C, 18F) as it will provide information about the decay/half-life, and thereby what type of decay/signal (and SNR) is expected when leaving out a volume and then trying to predict it based on the remaining frames. This will be particularly important for the late frames. You suggested Gaussian processes, Arial, and in the case, I assume we should be able to add weights to the model fitting to take into account time between frames and signal decay.


ion-item-sliding not sliding on iOS

Bug Report
Ionic Info
Run ionic info from a terminal/cmd prompt and paste the output below.
Ionic:

   ionic (Ionic CLI) : 4.1.2

System:

   NodeJS : v8.11.1
   npm    : 5.6.0
   OS     : macOS Sierra

Describe the Bug
Nothing happens when swiping left on an <ion-item-sliding> except for the following error being produced in the console:
Uncaught (in promise) Error: navigation stack needs at least one root page
    at Nav.postViewInit (ion-item.ios.js:926)
    at Nav.runTransition (ion-item.ios.js:799)
    at Nav.nextTrns (ion-item.ios.js:782)
    at Nav.queueTrns (ion-item.ios.js:731)
    at Nav.onStart (ion-item.ios.js:1068)
    at fireOnStart (gesture.js:510)
    at tryToCapturePan (gesture.js:504)
    at HTMLBodyElement.pointerMove (gesture.js:469)

Steps to Reproduce
Steps to reproduce the behavior:

Open the app containing an <ion-item-sliding> in a Chrome browser using iOS device simulation (or in Safari on an iOS device)
Show Chrome DevTools (or Safari dev tools if running on an iOS device)
Show the Console output
Swipe left on the sliding item
Observe that the item does not slide and the console output shows the above exception

Related Code
Clone ionic-pwa-toolkit:
git clone https://github.com/ionic-team/ionic-pwa-toolkit my-pwa

Apply the following change:
diff --git a/src/components/app-profile/app-profile.tsx b/src/components/app-profile/app-profile.tsx
index d9b4db7..b0e7c9e 100644
--- a/src/components/app-profile/app-profile.tsx
+++ b/src/components/app-profile/app-profile.tsx
@@ -32,6 +32,17 @@ export class AppProfile {
           <ion-toggle checked={this.state} onIonChange={(ev) => this.state = ev.detail.checked} />
         </ion-item>

+        <ion-list>
+          <ion-item-sliding>
+            <ion-item>
+              Some item
+            </ion-item>
+            <ion-item-options>
+              Some options
+            </ion-item-options>
+          </ion-item-sliding>
+        </ion-list>
+
       </ion-content>
     ];
   }

Expected Behavior
The item should slide left to reveal the options and no exception should appear in the console output
Additional Context
It looks like in iOS the swipe to go back gesture is enabled and the exception is thrown because the current page is the last in the stack.
I have tried setting swipeGesture to false on the <ion-nav> but inspecting the value at runtime reveals that it is being forced back to true.
Overwriting swipeGesture with false at runtime (from the console), does disable the swipe back and then the sliding item does slide correctly.
I haven't found a place where I can successfully set this in the code without it being subsequently overwritten, so I currently have no viable workaround.

Actually, what's really doing on here is that the markup is incorrect.
        <ion-list>
          <ion-item-sliding>
            <ion-item>Some item</ion-item>
            <ion-item-options>
              <ion-item-option>
                Some options
              </ion-item-option>
            </ion-item-options>
          </ion-item-sliding>
        </ion-list>

You're missing the child ion-item-option component, which is required for sliding items


[Storage] az storage container create: Fix #13373 by adding validator for public access

Description

Add validator for public access which will transforming "off" to None to fix #13373
Testing Guide

az storage container create -n mycontainer --account-name mysa --public-access off
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.

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

[ ] I adhere to the Command Guidelines.

add to S170


[Request]Is there a example of distributed training for tensorflow keras.backend model

if not, what instructions should i follow?
thanks for any suggestion.

If you look for training on multiple GPU, you can find examples here and refer to https://github.com/microsoft/pai/tree/master/examples/keras#mnist_tensorflow_backend.
If you look for training on multiple nodes, you may refer to distributed TensorFlow ps-worker example https://github.com/microsoft/pai/tree/master/examples/tensorflow#distributed-tensorflow-cifar-10-image-classification.

Thanks @edenbuaa for raising the question, hope document listed by @abuccts helps. It is highly appreciated if you can also commit examples once you get your codes work.


setup aggregation hook

Implements https://github.com/astraly-labs/hyperlane_starknet/issues/51.
(Work in progress)

Hey, can you comment Issue #51, so I can assign you ? Thanks !

Hi @JordyRo1 !
Any news about this PR ? Should I change something or is it fine to be merged ?
This PR was done in the context of OD Hack 5 and the OD Hack 9 has just finished ... 😕
I would appreciate a feedback about this PR. Thanks 🙏


[BUG] DeepSpeed + PT nightly

Describe the bug
I have encountered this when installing accelerate (that installs deepspeed under the hood) together with PT nightlies
Getting:
Traceback (most recent call last):
File "/home/younes_huggingface_co/code/accelerate/src/accelerate/utils/other.py", line 27, in <module>
    from deepspeed import DeepSpeedEngine
  File "/home/younes_huggingface_co/miniconda3/envs/bt-optimum/lib/python3.9/site-packages/deepspeed/__init__.py", line 14, in <module>
    from . import module_inject
  File "/home/younes_huggingface_co/miniconda3/envs/bt-optimum/lib/python3.9/site-packages/deepspeed/module_inject/__init__.py", line 1, in <module>
    from .replace_module import replace_transformer_layer, revert_transformer_layer, ReplaceWithTensorSlicing
  File "/home/younes_huggingface_co/miniconda3/envs/bt-optimum/lib/python3.9/site-packages/deepspeed/module_inject/replace_module.py", line 15, in <module>
    from ..runtime.zero import GatheredParameters
  File "/home/younes_huggingface_co/miniconda3/envs/bt-optimum/lib/python3.9/site-packages/deepspeed/runtime/zero/__init__.py", line 6, in <module>
    from .partition_parameters import ZeroParamType
  File "/home/younes_huggingface_co/miniconda3/envs/bt-optimum/lib/python3.9/site-packages/deepspeed/runtime/zero/partition_parameters.py", line 22, in <module>
    from .linear import LinearModuleForZeroStage3, zero3_linear_wrap
  File "/home/younes_huggingface_co/miniconda3/envs/bt-optimum/lib/python3.9/site-packages/deepspeed/runtime/zero/linear.py", line 20, in <module>
    from deepspeed.runtime.utils import noop_decorator
  File "/home/younes_huggingface_co/miniconda3/envs/bt-optimum/lib/python3.9/site-packages/deepspeed/runtime/utils.py", line 19, in <module>
    from torch._six import inf
ModuleNotFoundError: No module named 'torch._six'

when installing pytorch nightlies. To reproduce:
pip install transformers accelerate
pip3 install --pre torch torchvision torchaudio --index-url https://download.pytorch.org/whl/nightly/cu117

from deepspeed import DeepSpeedEngine

Keep an eye for 0.8.2 release of deepspeed, should come tonight or tomorrow. This should fix this issue. Also you should be able to get around the issue now if you install from latest master.

Perfect! Thanks a bunch @jeffra

0.8.2 is out now, please re-open this issue if you are still experiencing problems.


DSD-569: component category for Table

Fixes JIRA ticket DSD-569
This PR does the following:

updates component category for Table from Basic Element to Page Layout

How has this been tested?

n/a

Accessibility concerns or updates

n/a

Checklist:

[ ] I have updated the Storybook documentation accordingly.
[ ] I have added relevant accessibility documentation for this pull request.
[ ] All new and existing tests passed.

Front End Review:

[x] View the example in Storybook

Tugboat has finished building the preview for this pull request!
Link:

https://pr810-eijjypd4omm9axlrmb5jaw1wnr4ddv2u.tugboat.qa

Dashboard:

https://dashboard.tugboat.qa/61bbb40c5f46ed13d815b03b

Tugboat has finished building the preview for this pull request!
Link:

https://pr810-eijjypd4omm9axlrmb5jaw1wnr4ddv2u.tugboat.qa

Dashboard:

https://dashboard.tugboat.qa/61bbb40c5f46ed13d815b03b


MCPDeobfuscationTransformer causes Forestry to crash in dev environment if GregTech is installed

Here's a log: https://www.dropbox.com/s/5a6ayt53k2z7rcr/deobfcrash.log?dl=0
I've spent a few good hours tracing the load process to figure out what's going on, and this is what i think is the order of events that lead to this crash:

Gregtech jar contains 2 @Mod classes - GT_Api (modid gregapi) and GT_Mod (modid gregtech)
gregapi has before:Forestry (and a bunch of other stuff)
gregapi gets construction event
forestry is not in class path yet
ProxyInjector is injecting @SidedProxy into both GT_Mod and GT_Api (It checks all annotations in the same container - jar file)
GT_Mod.class is loaded
MCPDeobfuscationTransformer (from CCC) runs on GT_Mod
GT_Mod references forestry.factory.gadgets.MachineCentrifuge$RecipeManager and the transformer is trying to load it
Forestry is not on class path yet, so it’s not found and is added to LaunchClassLoader.negativeResourceCache
This doesn’t cause an error because MCPDeobfuscationTransformer ignores it (good)

[…. some time later  ….]

Forestry is loading - it is now on class path

[…. some time later  ….]

Forestry gets preInit event
It attempts to access MachineCentrifuge$RecipeManager
LaunchClassLoader sees it in negativeResourceCache and thinks that it’s not found
crash!

I'm not sure how this could be fixed, either prevent MCPDeobfuscationTransformer from touching classes that can't be loaded yet or maybe somehow reset negativeResourceCache when it's done working?

FMLModContainer.constructMod:437
modClassLoader.clearNegativeCacheFor(candidate.getClassList());
not functioning properly?

Hm i totally missed that. I'll check.

Oh yeah, looks like clearNegativeCacheFor is absolutely useless there. The negative cache uses a different format (forestry.factory.gadgets.MachineCentrifuge vs forestry/factory/gadgets/MachineCentrifuge) and moreover ModCandidate.foundClasses doesn't include inner classes anyway.
I'll open a bug against FML (or forge since they were merged?). Not sure if you want to add some kind of workaround for that, otherwise this can be closed.

Suggestion for a fix on my end?

You could do something like this to clear the negative entries right away:
else
    Launch.classLoader.clearNegativeEntries(new HashSet<String>(Collections.singletonList(name)));

In MCPDeobfuscationTransformer:206 (and possibly in other places if there are similar calls, this is the one that was triggering the problem in my case)
I'm not sure if it's worth the hackiness (and possible performance cost) considering this is an edge case that only happens in dev environment. I can live with it being broken until hopefully fixed in FML.

There you go 3307b52f09185610efc932df65e477cfeb7b9150 (1.7.10-<IP_ADDRESS>)


Compile fixes

Description
This is a couple of 1-line changes that fix build errors on GCC 8.0 and clang 6.0.  These fixes are not sufficient to get it building on GCC 8.0 but building on clang 6.0 now works.

Thanks for this. I'd prefer for the change to RGP's code to happen in the upstream repository rather than here, unless the upstream is not amenable to changes (I don't think that's the case). Do you mind making that change there, and then I can sync it?

Where do I find the RGP upstream?  The github page only has a README with links to where you can download zip files of code.

Ah sorry, I should maybe drop a README in the folder 3rdparty folder with source info, atm it's only in the commit log. The RGP stuff comes from this repo, specifically this is the file you're after.

https://github.com/GPUOpen-Tools/DevDriverTools/pull/1
Time to see if they actually take pull requests. :smile:

They took the pull request so I dropped the RGP fix and now it's just the GCC 8 fix.

OK great, I will update the appropriate repos to pull in the #pragma fix from upstream.


fix #1228, add data source and data sink for java api

test failure is irrelevant.

updated.

Example of the java API can be found at:
https://github.com/gearpump/gearpump-java-example/commit/532083e49fb94b7486e3c983a3ff3be5d044926e

@stanleyxu2005  updated.

+1

+1


DPR TEST Environment Request

Environment details
digital-prison-reporting
GitHub team slug
hmpps-digital-prison-reporting
https://github.com/ministryofjustice/modernisation-platform-environments/tree/main/terraform/environments/digital-prison-reporting
Environments

[x] TEST

Tags

tag
value

application
digital-prison-reporting

business-unit
HMPPS

owner
<EMAIL_ADDRESS>

Networking options
Connectivity
Subnet sets

[x] General - this application will use the same subnet as other applications in your business unit
[ ] Isolated - this application has highly sensitive data which must have its own isolated subnet

How do users connect to the application?

[ ] Over the public internet
[x] With a purple cabled device (please give details)
[ ] With a MoJ Official device

Connectivity to other applications or external parties

Analytical Platform (Oracle)
Ports: 1521, 443, 5432

Additional features

[ ] Additional VPC Endpoints
[ ] Extended DNS Zones
[ ] Other - please specify

Other information
We will need access to Legacy Nomis Platform for Data Ingestion

PR for the new account https://github.com/ministryofjustice/modernisation-platform/pull/3315


Fix issue of keyboard hiding toasts on iOS 11 (imperfect: work in progress)

This solution for #117 just works. No crash. 🎉
Demo included for testing (see #134 for the Demo change alone).

Sadly it has a UI glitch. The keyboard will cover the toast if the toast in presented before the keyboard shows. But I think what you've done with overriding addSubview() is clever. I updated #124 PR with using some of your idea. I'd be glad if you could check t

@devxoul, I cannot reproduce the glitch you're mentioning. But maybe adding an observer on keyboardWillShowName would be enough so solve it.

Actually there are two.

Previous toast is covered by the keyboard.

The toast disappears without animations after the keyboard disappears.

@devxoul About the animation, you're correct, which means that your solution to keep a reference to originalSubviews is a required step, together with registering to keyboardDidHideName or keyboardWillHideName.
Regarding the toast being covered, and the glitch you have on your keyboard, I'm curious to know which version of Xcode and iOS you're using.

Closing this one, as #124 is better.


Fix test-network setting and README

I fixed the problem that test-network deployment could not be executed due to the path being changed.
Additionally, I fixed the content of the README.
Signed-off-by: ikegawa-koshi<EMAIL_ADDRESS>
What this PR does / why we need it:
Which issue(s) this PR fixes:

Fixes #
Special notes for your reviewer:
Does this PR introduce a user-facing changes and/or breaks backward compatability?:

@ikegawa-koshi I pushed a fixup with mentioned additional changes.


Generate CallMatcher on method call expressions

Summary
Currently, CallMatcher initializers can be generated when invoked on Java method signatures, on the method name. To simplify things, extend the intention to be available on method call expressions as well.
Tasks

Extend GenerateCallMatcherFromSignatureIntention to be available on method calls as well, for example on aCallToAnotherMethod() below:

public void someMethod() {
  aCallToAnotherMethod();
}

Completed in v0.2.0.


Optimization based on same sequence of Toffoli gates

Description
This PR adds an addition optimization technique which considers nodes that require the same sequence of Toffoli gates in order to get transformed to the identity structure. Hence, reducing the overall control bits and gate count
Checklist:

[x] The pull request only contains commits that are related to it.
[x] I have added appropriate tests and documentation.
[x] I have made sure that all CI jobs on GitHub pass.
[x] The pull request introduces no new warnings and follows the project's style guidelines.

I think this question is suitable for this for this PR.
We have considered Cube::Vector in many places. However, we don't require a Cube::Vector in the dd synthesis functionality (since path signature emplaced are always unique). Do we add a Cube::Set? By adding this we can also reduce the complexity of the function introduced in the above PR.

I think this question is suitable for this PR.
We have considered Cube::Vector in many places. However, we don't require a Cube::Vector in the dd synthesis functionality (since path signature emplaced are always unique). Do we add a Cube::Set? By adding this we can also reduce the complexity of the function introduced in the above PR.

Just went through the code and the corresponding paper. I think I only have minor comments/improvements on the code itself. Those can wait until later. As for the suggestion above: That would actually make a lot of sense. This is sort of similar to what the MinTerm data structure in the logic minimization is providing. I'd even say that the MinTerm class could be used throughout, but that would restrict us to 64bits without further modifications and I guess that could be a problem.
I assume you want the path signatures to be unordered_set's which would eliminate the std::is_permutation calls here.
Feel free to go ahead with this.
Reading this, I can only wonder if it would make sense to adopt
kitty's quaternary_truth_table instead of our own TT structure and work based off that. But that might be out of scope for this PR anyway.

I think this question is suitable for this PR.
We have considered Cube::Vector in many places. However, we don't require a Cube::Vector in the dd synthesis functionality (since path signature emplaced are always unique). Do we add a Cube::Set? By adding this we can also reduce the complexity of the function introduced in the above PR.

Just went through the code and the corresponding paper. I think I only have minor comments/improvements on the code itself. Those can wait until later. As for the suggestion above: That would actually make a lot of sense. This is sort of similar to what the MinTerm data structure in the logic minimization is providing. I'd even say that the MinTerm class could be used throughout, but that would restrict us to 64bits without further modifications and I guess that could be a problem. I assume you want the path signatures to be unordered_set's which would eliminate the std::is_permutation calls here. Feel free to go ahead with this.
Reading this, I can only wonder if it would make sense to adopt kitty's quaternary_truth_table instead of our own TT structure and work based off that. But that might be out of scope for this PR anyway.

The unordered set stores the signatures in random order right? Does the hash function affect the ordering in the unordered set? What type of hash function would be good for the TruthTable::Cube? just returning the cube.toInterger() be enough?

I think this question is suitable for this PR.
We have considered Cube::Vector in many places. However, we don't require a Cube::Vector in the dd synthesis functionality (since path signature emplaced are always unique). Do we add a Cube::Set? By adding this we can also reduce the complexity of the function introduced in the above PR.

Just went through the code and the corresponding paper. I think I only have minor comments/improvements on the code itself. Those can wait until later. As for the suggestion above: That would actually make a lot of sense. This is sort of similar to what the MinTerm data structure in the logic minimization is providing. I'd even say that the MinTerm class could be used throughout, but that would restrict us to 64bits without further modifications and I guess that could be a problem. I assume you want the path signatures to be unordered_set's which would eliminate the std::is_permutation calls here. Feel free to go ahead with this.
Reading this, I can only wonder if it would make sense to adopt kitty's quaternary_truth_table instead of our own TT structure and work based off that. But that might be out of scope for this PR anyway.

The unordered set stores the signatures in random order right? Does the hash function affect the ordering in the unordered set? What type of hash function would be good for the TruthTable::Cube? just returning the cube.toInterger() be enough?

It does store the elements as a hash table, so yes, the order is random. However, according to https://cplusplus.com/reference/unordered_set/unordered_set/operators/ the complexity of operator== on two unordered sets is linear in the average and quadratic in the worst case.
There is a template specialization for the hash of std::vector<bool>. So, if don't cares are not required for the path signatures, you could go for that (this would also be scalable beyond 64 bits)
cube.toInteger only works up to 64 bits and does not treat don't cares.

std::vector

I think this question is suitable for this PR.
We have considered Cube::Vector in many places. However, we don't require a Cube::Vector in the dd synthesis functionality (since path signature emplaced are always unique). Do we add a Cube::Set? By adding this we can also reduce the complexity of the function introduced in the above PR.

Just went through the code and the corresponding paper. I think I only have minor comments/improvements on the code itself. Those can wait until later. As for the suggestion above: That would actually make a lot of sense. This is sort of similar to what the MinTerm data structure in the logic minimization is providing. I'd even say that the MinTerm class could be used throughout, but that would restrict us to 64bits without further modifications and I guess that could be a problem. I assume you want the path signatures to be unordered_set's which would eliminate the std::is_permutation calls here. Feel free to go ahead with this.
Reading this, I can only wonder if it would make sense to adopt kitty's quaternary_truth_table instead of our own TT structure and work based off that. But that might be out of scope for this PR anyway.

The unordered set stores the signatures in random order right? Does the hash function affect the ordering in the unordered set? What type of hash function would be good for the TruthTable::Cube? just returning the cube.toInterger() be enough?

It does store the elements as a hash table, so yes, the order is random. However, according to https://cplusplus.com/reference/unordered_set/unordered_set/operators/ the complexity of operator== on two unordered sets is linear in the average and quadratic in the worst case. There is a template specialization for the hash of std::vector<bool>. So, if don't cares are not required for the path signatures, you could go for that (this would also be scalable beyond 64 bits) cube.toInteger only works up to 64 bits and does not treat don't cares.

there is no template for std::vectorstd::optional right? Although the path signatures don't require don't care we end up using the member functions of Truthtable::Cube. Therefore, a lot of changes will have to be incorporated. That is reason why I asked for a suitable hash function for cube.

No, there is no such template specialization and it's not that easy to define a hash function for std::vector<std::optional>. Technically, you could also opt for using std::set. That should work out of the box, since operator< is defined for Cubes.


Package Browser could usefully show unloaded packages on disk

The package browser currently shows only loaded packages. A useful enhancement would be to also represent the unloaded packages on disk in the folder hierarchy beneath the image, and offer appropriate operations on these such as loaded them. This would make it much easier to find and load packages that are not installed by default.

Funnily enough, I gave a Dolphin source code control demo yesterday and this was one of the comments/suggestions that came up.

As I user I'd like to have also a list of package categories because there are a lot of packages and it's a little tedious to look at each pac looking for something in particular. Also new users are not aware of all the code and where to look for specific things.
We can add a category or tags attribute to the packages but this forces us to read and compile before we can categorize. Another option is to look for a specific file, e.g. pacattributes.ini, with info related to the package. If you think that's a good idea I could do this together with #21
Bonus: Add the option/tool to clone Contributions with its submodules if not found

Yes; originally the package folder hierarchy was adequate, but probably stopped being so some time ago. I don't think it would be unreasonable to attach additional metadata to the package. This can be read without actually loading the package. Package class>>fromFile: will read the metadata section of the .pax/.pac file. It is stored in chunk format that is piped through the compiler for evaluation to set up the package object, so could theoretically have side effects. Normally it wouldn't, but it could have malicious content so there is a potential security issue if scanning packages from untrusted locations without a deliberate decision from the user. A purely declarative form would be better of course.
PackageManager>>loadPackage: aString
	"Private - Answer the Package object stored in the package file at the specified path. Note that the
	loaded package's contents are NOT loaded and the package is NOT inserted into the receiver's
	collection of packages at this stage."

	^Package fromFile: aString

Could you perhaps have a PackageManager>>loadDescription: aString method? Sorry I'm late to the party on this one. That way you could reserve the "loadPackage:" for actually loading the Pac/pax, and use the loadDescription: for grabbing what useful data you need without otherwise loading the package classes or methods.
Just my NZ$0.02

i would like to be able to swap out version V1 of Package P and swap in a different version V2 of Package
P without it insisting that P can't be unloaded because other Packages are depending on P . When this
happened many years ago maybe more than 10 years ago i thought : Well . That's one hell of a way to run
a railroad . For a time i had a script that would load everything into a virgin image every time i started
Dolphin . i guess that is the way to get around the lack of this feature . That is the way to live without it.

See also #1083, which has some related ideas


Poc/new theme

adds gds style theme to django admin
Migration and fixture included

From Adam:

Hard code whatever the mixins are doing
import the mixins into each SCSS file that it's being used

Option 2 is probably preferred here

Just completed option 2 "import the mixins into each SCSS file that it's being used" and looks like the travis is passing the build. May need another review


XSS (via svg file upload) in WonderCMS-2.5.2

Affected software: WonderCMS-2.5.2
Type of vulnerability: XSS (via SVG file upload)
URL: : https://www.wondercms.com
Discovered by: Provensec LLC
Website: https://www.provensec.com
Author: Balvinder Singh
Description: I would like to report an XSS (via SVG file upload) Vulnerability that I found on wondercms-2.5.2
Description: SVG files can contain Javascript in

Hello security-provensec.
Please check #57, both of the vulnerabilities you've reported are self attacks which we have already disclosed and have their own discussion.
Closing issue, please feel to comment to keep the discussion going.


How do I add vcpkg to Visual Studio 2019

Hey,
I changed "use vcpkg" to no and the whole vcpkg option is gone from my project! It's still showing in other projects and also in newly created projects, but once its disabled, it's gone.
Deleting and reinstalling vcpkg (+ all the libraries that were installed) did not help. The only way is to make a new project and copy over all the source files to the new project (.cpp .h...)
Is that a bug? Isn't there a way to re-enable it after it was disabled? And also even though it's "disabled", the options in side of it are all active that is the project still links normally to where libraries are installed and removing the vcpkg folder would cause errors.

Thanks for taking the time

@Ou7law007, this is a VS bug, and already fixed in VS 16.8.2, could you upgrade vs and try again?

I am using latest version.

I can confirm the issue is there on latest VS 2019 (16.8.2). I believe it has the same root cause as #14735 - #13755 and reverting to e126e3e fixes the issue.

@ZhilkinSerg, thanks for the comments!
I forget to pull the latest source from master, and doesn't repro on 16.8.2 in another machine, it's my fault, sorry for the mistakes.
I will take a look .

@Ou7law007, I have summited PR #14797 to fix this issue, could you help to test if it works for you?

I re-cloned the repository of vcpkg and installed it normally and tested again. For me, the vcpkg option still disappeared after setting it to 'No'. Did you add a re-enable option that I'm missing?

You need to apply changes from #14797 to your local copy first.

You're right, it works for me now. I'm sorry this was literally my second post github, guess I don't know how things work yet.


Minor non-behavior-changing updates and clean-up

This PR contains a few code-clean-up updates that should not affect behavior.

MVKSmallVector allow constructor to size with default values.
Remove obsolete MVKVector, which was long ago replaced with MVKSmallVector.
Remove unnecessary concrete implementations of template functions that are used only within a single compilation unit.
Add strings for all current VkResult values.
Make logging functions globally accessible to ease their use in debugging activities.
Add and use MVK_APPLE_SILICON macro definition.
Remove a few unused member variables.

@cdavis5e Specifically wanted another pair of eyes on use of MVK_APPLE_SILICON.

@cdavis5e Specifically wanted another pair of eyes on use of MVK_APPLE_SILICON.


Added EvaCLIP as one the classification base model

Eva CLIP is a larger clip model shown to have relatively good performance compared to CLIP and MetaCLIP

This looks great! Nice work! I am going to modify your PR slightly to include that this is a community contribution, then I will merge.


Log output from resolvers and callbacks

From a support email:
"We are using flyway via Java-API and need to get the log output of resolvers and callbacks under control of the flyway application to access them via flywayClient.log_results.
It would be great if you could consider enabling this feature in upcoming flyway versions."

Hi there,
the situation is as follows. We are using sql based migrations e.g.
V1__Initial.sql
V1.1__Initialize.sql
V1.2__Populate_table.sql
as well as Java based Resolvers and Callbacks. Resolvers and Callbacks either implement or extend the appropriate Interfaces/Baseclasses, and we see that they are executed (based on the results).
We are starting the Migration process via a python wrapper (because of the local deployment solution), and if we are using the log_results method of the flyway client (after executing the migrate method), we are able to see information the sql scripts produce, but we are not able to see output that is generated by the Resolvers and Callbacks.
Could you pls advice on how to setup the logging within Java-Based resolvers and Callbacks so that the information can be collected via the log_results method of the Flyway client, or - in case this is not implemented - pls consider this as a feature request.
Many thanks in advance..

Closing for lack of response.


Add comment support to the maildog JSON config file

Fix #7

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


GLES3 causes lockup for 30-45 seconds in the 3d demos

Please see this relevant Godot issue:
https://github.com/godotengine/godot/issues/56670
Perhaps we could move to GLES2 export for the demo example to prevent issues with GLES3 shader compilation?

Hi, Thanks for the report.
I wasn't aware of this issue, I'll re-export the demos using GLES2 and update the website later today :)


feat(alert): add inline prop

I also fixed the hard-coded colors

:tada: This PR is included in version 4.3.0 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Adding animation to the "favourite" panel.

Hello sir, I am a GSSOC'21 participant.
I would like to add animation to the "favourite" panel that is displayed at the bottom of the page, so that it can look more responsive while hovering over it.

@anu-cn We are planning to change the UI for the Favorites section, so we can't go ahead with this issue right now. But if you have any other ideas on how to improve the UI for the Favorites section, please feel free to create a new issue and we can assign that to you :smile:


'Error: mat-form-field must contain a MatFormFieldControl' after upgrading to V6

After upgrading from Formly core and material @5.12.5 to @6.1.3, there is a consistent list of errors in the console stating;
Error: mat-form-field must contain a MatFormFieldControl.
I've looked through other posts around this issue on StackOverflow but the solutions haven't fixed the issue. I also can't recreate the issue on StacklBlitz, any idea what may be going wrong?

Hello, I am having this exact same issue. Is there any conclusion to this?

What fixed this issue for me was importing FieldType from @formly/material instead of @formly/core. Not sure what i was doing wrong in the first place to cause this issue, as the documentation for custom fields states to import field type from core but it seems to have worked for me so far.

@CDohertyPayescape That indeed fixed my problem too. Thanks!


Hide password during login

Is your feature request related to a problem? Please describe.
At the moment the password is shown as clear text during input on login. I really do not like to see my or any other peoples passwords in clear.
Describe the solution you'd like
The password should be only visible as dots or asterisks.
Describe alternatives you've considered
In my opinion the password should never ever be visible in clear, except there is an eye-button to have a look at it.

Duplicate of #45. This is a technical limitation in Druid that we can't do anything about.


Build fails at third party software exit code 1

The build works fine for me the only issue is the build fails with exit code 1 when it tries to download third party software can anyone help? I do have the actual chromium source downloaded and I think this might have something to do with it

Please provide full build log.

was able to fix it thanks a lot though!


Performance issues with predefined options in Forms\Components\Select

Package
filament/filament
Package Version
filament/filament v2.7.0
Laravel Version
laravel/framework v8.77.1
Livewire Version
livewire/livewire v2.8.2
PHP Version
PHP 8.1.1
Bug description
Noticable delay between select element's options are loaded and the previously set value is populated.
Steps to reproduce
With a new filament project set up:

Create a resource
Add a select field to the resource's form, for example:

Forms\Components\Select::make('language_id')
                    ->label('Language')
                    ->required()
                    ->options(Language::all()->pluck('name', 'id'))
                    ->searchable(),

In filament admin, create an new instance of the resource, assign a value to the select and save it
Go to the newly created instance's edit page and watch as the select renders, it will go from empty with loader/spinner to "Select an option" (loader disappears) and then finally to display the previously assigned value, but with a noticable delay for this last step.

Relevant log output
No response

Fixed by #1202! Will be much better in the next release.


Error when updating to Angular 1.3 (multiple directives asking for isolated scope)

I just tried to use angular-nvd3 with Angular 1.3 and I got this error (it worked with angular 1.2):
Error: [$compile:multidir] Multiple directives [ngController, nvd3] asking for new/isolated scope

Is this caused by a problem in my code which needs to be changed for 1.3 or in the angular-nvd3 directive?
Should I use the rewrite branch (2.0) of the "nvd3" library / is this issue already addressed there?

Has anyone come up with a solution to this? I experience the same issue when going from upgrading to angular1.3


add integration semgrep and trivy scan output to conviso platform

import Trivy and Semgrep scanners output to Conviso Platform

FYK @htrgouvea
Could u review it?


2.0

As best I can tell, all of these patches are already on the development trunk.  Please clarify what you wanted us to do with them.


Moon and run time errors.

I think it would be wise to allow only IO functions to throw run time errors.
What is your opinion?

Please, be more specific! What do you mean by IO functions? What runtime errors?

E.G. should (get [1, 2] 10) throw an error or return Nothing : Maybe a instead?
Should we provide functions, that can throw an error from pure code (code that does not communicate with outside world)?

Oh, I see. So, yes, one of those two things should happen. We should either throw an error to the host language, or change get to return Maybe a instead. What is your vote?

My argument for not returning Maybe is that get, once typed, would require a compile-time proof key is on the map you're accessing. Something like:
get : ∀ a . (key : String) -> Map (key :: keys) a -> a

So it is still total.

Compile time safety would be definitely nice, but won't it make the core language too unreadable? Since Map can return different types the final signature will look like:
get : (key : String) -> (key -> value) -> Map (key :: keys) value -> value
Isn't it too much?


requests dependency confusion

Hi, maintainers:
i'm attempting to use this awesome package in my project to do some workflow integration.
when i try to pip install -r requirements.txt, it says
The conflict is caused by:
    The user requested requests==2.27.1
    camunda-external-task-client-python3 4.3.0 depends on requests==2.24.0

To fix this you could try to:
1. loosen the range of package versions you've specified
2. remove package versions to allow pip attempt to solve the dependency conflict

here is the part of my requirements.txt:
camunda-external-task-client-python3==4.3.0
requests==2.27.1

but i have another package which uses requests package version >= 2.24.0
when i remove ==4.3.0, it works, got an old version 3.0.0,
maybe here are some clue to find out the reason:
the 2.24.0 appears in setup.cfg, but in requirements.txt it is 2.26.0
https://github.com/camunda-community-hub/camunda-external-task-client-python3/blob/ed7a493942dea6c1b570298f67b09dc12ff7da11/setup.cfg#L26
https://github.com/camunda-community-hub/camunda-external-task-client-python3/blob/ed7a493942dea6c1b570298f67b09dc12ff7da11/requirements.txt#L1
i'm new to python, i don't know how pypi/pip works.
but i guess it was just a mistyping of manifest .
thx.

Hello @Muyv,
Thank you for pointing this mistake out. I will try to make the dependencies consistent in next release.
Meanwhile, can you update your requirements.txt to just following and see if things work for you?
camunda-external-task-client-python3==4.3.0

Hello @Muyv, Thank you for pointing this mistake out. I will try to make the dependencies consistent in next release. Meanwhile, can you update your requirements.txt to just following and see if things work for you?
camunda-external-task-client-python3==4.3.0

thanks for your response, i can now install the package by pip install camunda-external-task-client-python3 and then pip install requests==2.27.1 indenpendently to avoid the errors.
look forward to your upgrade.

Please, allow new requests in install_requires (setup.cfg)
You can use requests>=2.24.0


[Fix] Cache block requests on the gateway

This PR implements caching for block requests so they can be rate limited and matched to inbound block responses. I have also refactored some verbose branching logic to use match statements in the second commit. It can be dropped, if a smaller diff is preferred.
I've opted to clear the outbound block request cache in the same way as the validator requests (https://github.com/AleoNet/snarkOS/pull/3254). Time-based expiry isn't necessary as the committee is bounded and the collection is cleared on peer disconnect. Inbound requests use a time-based expiry.
Fixes #3324.

Solid


Use jax whisper space for Whisper

Let's use this space https://huggingface.co/spaces/sanchit-gandhi/whisper-jax when https://github.com/gradio-app/gradio/pull/3924 is shipped

Let's not replace the existing Whisper tool. The jax space cannot be cloned easily as it has some custom secrets


Tutorial for external script pipeline

Once #193 is completed, there needs to be another tutorial on the readthedocs site detailing how it works with an external script (modern sibilant analysis?), in the style of the other tutorials on the site.

Michael G is doing this.

@MichaelGoodale finally tried out the tutorial, and asked Glasgow people to do so as well.
The tutorial works for me.  The one thing I would suggest changing is actually editing Waveform.R so it looks like this:
  def = function(waveform, startTime) {
    # Determine the value of the @amplitude slot according to whether
    # the [waveform] argument is mono or stereo...
    if (waveform@stereo) {
      # If the Wave object is stereo, ask the user which channel they would
      # like to use.
      message("Making a mono Waveform object from a stereo Wave object by averaging channels')
#Initializing a mono Waveform object from a stereo Wave object...")
channel <- 'Average'
# MS changed.
#flush.console()
#      channel <- select.list(title     = "Which channel would you like to use?",
#                             choices   = c("Left", "Right", "Average"),
#                             preselect = "Left", graphics = TRUE)
      if (channel == "Left") {
        wave.amp <- waveform@left
      } else if (channel == "Right") {
        wave.amp <- waveform@right
      } else if (channel == "Average") {
        wave.amp <- (waveform@left + waveform@right) / 2
      } else {
        wave.amp <- as.numeric(NA)

that is, instead of asking the user for stereo files how to make a mono file, it just automatically averages the channels. Otherwise the user has to select a number from a graphical menu n times, where n = # rows in input CSV, for any corpus (like ice-can) where the wav files aren't mono.

Michael G did the change above, and this can be closed.
btw tutorial is here:
https://iscan.readthedocs.io/en/latest/tutorials_iscan.html#tutorial-4-custom-scripts
Thanks!


On Print Case, Claim is Optional

Problem
Automatic claiming up on printing is causing problems and confusion in the field. We would like to understand why they are printing and not claiming.
Solution
We still want to encourage people to claim cases if they plan to do something with them, but have the option to NOT claim if they want to.
On print, a popup says, "Please claim this case if you plan to do any part of it. If you do not plan to do the work, please let us know why you are printing the case."
[Checkboxes for each of the available work types, all of which are pre-checked]
"Explain if you are not claiming the case:"
[Required Textarea if user prints without claiming]
Buttons: [Claim and Print] [Print without Claiming] [Cancel]
If user clicks "Print without Claiming," then all checked boxes are ignored, and the user MUST add some text in the "Explain if you are not claiming the case" textarea.
Add print_tokens.no_claim_reason text to store user explanations why they did not claim the case upon printing.
Additional context and instructions
Add any other context or screenshots about the feature request here.

@aarontitus Having the work type check boxes creates a bit of a tricky situation that we can deal with later, but for now, we keep the all-or-nothing claim but have the modal with the no_claim_reason_text

We can then add the work type check boxes as an improvement

Ok.
One important detail: Do not show the modal if they have already claimed one or more work types.

Oh, and I realized that I told you to put the buttons in exactly the wrong order. It should be Cancel, Print without claiming, and then Claim and Print.

Looks great.