"Foreign" type in Interaction in scenegraph module

@ericdrobinson Any ideas? Since the type gets defined in the interactions module, it doesn't get recognized inside scenegraph.d.ts. Should this then be defined in the index.d.ts as global?
Thank you very much in advance.

Yes! The problem you have here is that the Interaction type is not included in the exported class. This is another instance wherein it is odd that you are exporting a class when you can never have instances of type interactions:
Whenever you export a class, you make its constructor available to importers.
Lots "classes" in the XD API do not allow instances. At the very least the constructor should be marked private. That said, these APIs are more likely intended to be accessors/modifiers and in such a light, treating them as members of a module or namespace is better aligned with the goal, I think. It's also frequently better aligned with reality. See the following:
// OUTPUT: Object
console.log(require('interactions').constructor.name);

The interactions module doesn't even have its own class...
In this case, I would suggest the following:

Convert the interactions class into a module.
Convert both allInteractions and homeArtboard properties into const declarations.

Behind the scenes these are actually implemented as getters with no setters, but that is more of an implementation detail. The result for the consumer of the API is identical.

Change the homeArtboard property declaration to:const homeArtboard: Artboard | null;

as the ? in Adobe's type annotations apparently means that value can be null rather than specifically undefined.
Move all of the type declarations into the interactions namespace.

The above done, you will be able to import the Interaction type into scenegraph via one of the following methods:

Top-level import:import { Interaction } from 'interactions';

Using import-types:readonly triggeredInteractions?: Array<import('interactions').Interaction>;

Either way should work fine now!

@ericdrobinson The problem I have with this is that this would – if I'm not mistaken – "suggest" that one can actually import this type (and possibly use it for instanceof type checking etc.). Since this is not possible for a plugin (as this isn't "more" than a type definition, making it "importable" would be wrong...

I've now solved this by moving those typedefs to the global namespace (in the index.d.ts). It passes the linters in VSCode and WebStorm – see 07a903ca7f28aebcbec62ce79248c4011a9125eb. @ericdrobinson Does that work for you? While it's probably not a very nice solution, it works without having "unreal" exports...

The problem I have with this is that this would – if I'm not mistaken – "suggest" that one can actually import this type (and possibly use it for instanceof type checking etc.).

@pklaschka In this case, you are indeed mistaken. It took me a while to understand this as well, but there is a very important distinction between a class and just about everything else.
When you define a class, you are defining both the type AND a constructor function with the same name as that type. It's something like doing the following:
interface MyObject {
    new (): MyObject;
}

let MyObject: MyObject;

For a more complete example, check out the type declaration for Object in lib.es5.d.ts. Here's what's happening:

Declare Object and ObjectConstructor types. These interact with one-another.
Declare the ambient constant Object name.

By declaring the constant Object name you are now telling TypeScript that users can access that directly. If you only had the interfaces (or types), then you only have TypeScript type names and attempting to add then to the right side of an instanceof will result in an error because there is no name associated with it.
So, when you declare a class, you are actually defining both the type and the name, which allows the "type" to appear on the right side of the instanceof in script without error.

I've now solved this by moving those typedefs to the global namespace (in the index.d.ts). It passes the linters in VSCode and WebStorm – see 07a903c.

Please give the version I suggested a try. The global approach is strictly worse for two reasons:

The type declaration is globally accessible, which should make it 100% available to every context, not just ones wherein you require('interactions').
The type declaration is no longer located in the module within which it is documented.

In my tests (in VSCode) with the type declarations defined in a module within interactions.d.ts, the following code results in an error:
// ERROR: Property 'Interaction' does not exist on type 'typeof interactions'.
let x = selection instanceof require('interactions').Interaction;

Which is expected as the type declaration did not define a type name. If WebStorm actually suggests that Interactions is a valid name to use in this case, then this is a bug in WebStorm.
For the record, VSCode's IntelliSense doesn't even suggest the types in autocomplete:

@ericdrobinson Understood. This, then, holds true for other modules as well, doesn't it? Specifically, I'll have to change application, clipboard, commands, and viewport as well, correct?

@ericdrobinson Understood. This, then, holds true for other modules as well, doesn't it? Specifically, I'll have to change application, clipboard, commands, and viewport as well, correct?

As done in
d663c5a3d9e4b386251f7f95f28243c7d59b0dc0 2b3ea03c46968788d6e59b1cb22a04f788a28a85 63574ec279fc5fb441f72ab0c26a29886ea17e23 37b07a1ce7126156e81e6620b2e8b1bc5ba93ee9

Alright, in that case, this issue should be get resolved with the PR as well. If there are now more issues within the next two hours 😆, I'll merge the PR...

Was about to write something along the lines of "Yes" but you beat me to it!
If you attempt to do the following in XD you get an error:
const viewport = require('viewport');
let v = new viewport();   // <-- Plugin TypeError: viewport is not a constructor

So these should be declared as modules. 😄

And, of course, @ericdrobinson: Thanks a lot (again) for your contributions. The great thing is that not only does this increase the quality of the typings, but I also feel like I have a better understanding of how TypeScript works now, so thanks on that "front" as well 👍

@pklaschka Happy to help! I'm very glad to hear that the conversation has helped you advance your understanding of TypeScript. That was a large portion of the motivation to provide suggestions with explanations instead of a monolithic PR with everything already packaged up.
And, honestly, this process clarified more TypeScript stuff for me as well! 😄
The one final question that I have is about the let module: {exports:any}; global declaration in index.d.ts. That doesn't appear to be necessary [in VSCode]. Removing it changes nothing as module is already defined (in VSCode, at least?). Do things go poorly for you in WebStorm if this is removed?

@ericdrobinson Yep. Unfortunately, WebStorm lets you decide if you

activate NodeJS support for the project (which means you gain access to all the default Node modules and that it asks you if you want to run npm install scenegraph since it is an "unresolved" module)
deactivate this option for the project (which means WebStorm doesn't know those two anymore).

Therefore, as long as this (or these – counting require() as well) doesn't interfere with VSCode stuff, I'd like to leave it in to "explicitly" allow for CommonJS module im-/ exports.

Sounds good to me! I expected that it might be an environmental thing. Still not entirely sure where VSCode infers that definition from, but c'est la vie.
Otherwise, everything here looks great. This PR fixes a massive amount of stuff and should really help clarify what's available to users! Great work!

Also, two more things:

Why does index.d.ts have the export {}; line?
Why does scenegraph.d.ts use the more standard export {...} format instead of the export = approach that all other modules use?

Why does index.d.ts have the export {}; line?

No idea, fixed in 8f7bd4fc077ea2bab3d92f9cc999f08ce2aa03b0

2. Why does scenegraph.d.ts use the more standard export {...} format instead of the export = approach that all other modules use?

Equally, I have no idea. Whyever, it appears to work for scenegraph (imports work without any problems)... I have no idea what the decisive difference between uxp and scenegraph is, but it works 🤔

I have no idea what the decisive difference between uxp and scenegraph is, but it works 🤔

I hate to rehash this now after uxp works, but does changing things in uxp.d.ts for you work as expected?
You mentioned here that you used export = because it was the closest way to implement the CommonJS module export pattern.
As I understand things, using export = is a bit of a kludge and should go away as JavaScript evolves towards an ES2015+ module world. In my local environment, I tested modifying uxp.d.ts in the following manner:

Remove the wrapper declare module uxp.
Add declare to both the shell constant and the storage module.
Change export = uxp; to the following:export {
    shell,
    storage
}

I saw no errors in VSCode. Do you see errors in WebStorm if you try this pattern?

@ericdrobinson I have no idea why, but now, this works... Does that mean that all the other things (application etc.) should get exported another way as well?

At least I now think I've got an idea of why WebStorm couldn't resolve this before. Somehow, changing the branch messed up my project configuration (no idea why), resulting in some strange way of WebStorm interpreting only parts of it... Sorry about that.

Does that mean that all the other things (application etc.) should get exported another way as well?

Basically, yes. But that said, it would be better, I think, to try a different approach. Please let me know if this works for you in scenegraph.d.ts and uxp.d.ts (two good test cases):

Remove the existing export statement.
Replace declare with export.

This is a quick test - the only items that should actually be exported are those that you want visible from outside of the module (read: internal types should not be exported). However, find-and-replace is a quick way to get a sense of whether this works or not...

@ericdrobinson Yep, that works.

Doing the above in VSCode changes the suggested property interpretation.
Single export {...} Version:

Individual export ... Version:

Resolved names are different because of the global find-and-replace for a quick test.

Ok. That makes sense so far.

If you're okay with it, I would suggest changing the export process to be of this latter approach (export class X, export interface Y, export const Z, etc.). It provides you with supreme control as to whether or not the type will be available outside of the module without needing special workarounds.

@ericdrobinson Doing so right now 😉

PR should now be up-to-date with this way of exporting... 😅

Cool. I'll take a look. I've spotted something... unexpected with this route that I want to check on.

@ericdrobinson If everything's working for you, I'd go ahead and merge the PR. Writing the changelog for this release will take long enough as it is – I don't need any further things to put into one PR 😆

Agreed. That said, I'm seeing something unexpected (and struggling to understand it). Specifically, the following:
const uxp = require('uxp');
uxp.   // <-- For autocomplete suggestions...

results in this in VSCode:

But... the Shell class isn't exported. 😕

@pklaschka Okay, I figured it out. The plugin approach seems to work for the XD APIs by doing the following:
declare module 'scenegraph'
{
    interface Point {
    // ...
}

Basically, wrap the entire module in `declare module` and use a _**string**_ version of the module name: `'scenegraph'` instead of `scenegraph`.

Can you give that a shot and see if it works for you with WebStorm?

Also, please be careful to test with a strict tsconfig.json file around to catch errant declares, etc.

@ericdrobinson Unfortunately, that doesn't work in WebStorm. It doesn't allow for checks like node instanceof Text which are, of course, vital for plugin development.

It works for the uxp module, though. Also, everything else works. It's only instanceof that breaks with this.

@pklaschka Let me look into it a bit. I say that because I think this is the "correct" path. The structure I suggested appears to be how you're 'supposed' to declare ambient modules.
Let me quickly check the instanceof case with scenegraph.d.ts...

 It simply "accepts" everything as "correct" code and does no type checking or autocompletion whatsoever...

@ericdrobinson I was able to get everything to work as expected by having
interface Shell {
  [...]
}

instead of
declare class Shell {
  [...]
}

Did you try:
class Shell {
    [...]
}

?
The problem should have been the declare statement, not that it was an interface vs class...

I mentioned above that you need to get rid of declare when you wrap the modules in declare module 'name' but you may have missed it...
I also suggested that you re-add the tsconfig.json file so that you can be notified about such errors. 😄

"A declare modifier is required for a top level declaration in a .d.ts file" for class Shell – I've added the tsconfig.json back in a few commits ago 😉

Just to be clear: By

I was able to get everything to work as expected by having
interface Shell {
  [...]
}

instead of
declare class Shell {
  [...]
}

cf. b0a1352

I meant without the "ambient module" declarations...

I meant without the "ambient module" declarations...

How about with the "ambient module" approach?

How about with the "ambient module" approach?

 It simply "accepts" everything as "correct" code and does no type checking or autocompletion whatsoever...

Does that include removal of the declare keyword when you made the move?
Also, did you try restarting WebStorm? (I've had to do that with VSCode in the past to get the language server to fully refresh...)

Does that include removal of the declare keyword when you made the move?
Also, did you try restarting WebStorm? (I've had to do that with VSCode in the past to get the language server to fully refresh...)

Unfortunately, yes. The problem remains.

With the shell being an interface (and no ambient modules), however, everything appears to be working as expected in WebStorm and VSCode.

Yes, but the type information is incorrect. Shell actually is a class, if memory serves.j

Let's provide an extremely simple test case. Please do the following:

Create a new file called uxp2.d.ts.
Add this script to it:class Shell {}

declare module 'uxp2' {
    export const shell: Shell;
    export namespace storage {
        const fileSystem: any;
    }
}

In your sample.js file, try the following:const uxp2 = require('uxp2').storage.fileSystem;

Do you get any errors with any of that?

According to the documentation, Shell should be a global class. However, new Shell() also doesn't work in XD, meaning it could actually be an interface...

@ericdrobinson

Do you get any errors with any of that?

It isn't that I get any errors with ambient modules. It is the fact that I'm not getting ones, e.g., with
const notMyShell = require('uxp');
notMyShell.openExternal('...');

Doesn't show an error. Basically, WebStorm just "gives up" on understanding the typings with the ambient modules and still provides some autocompletion, but doesn't actually "understand" the type flow (an object is of a certain type b in an if (a instanceof b) block, uxp does not equal uxp.shell) etc.

Let's provide an extremely simple test case. Please do the following:

Create a new file called uxp2.d.ts.
Add this script to it:class Shell {}

declare module 'uxp2' {
    export const shell: Shell;
    export namespace storage {
        const fileSystem: any;
    }
}

In your sample.js file, try the following:const uxp2 = require('uxp2').storage.fileSystem;

Do you get any errors with any of that?

Yeah, that actually should be declare class Shell. Restarting my VSCode instance revealed that same error (which is good!) 😄.

With the ambient module, the wrong code shows no error:

but without this module declaration, everything works as expected:

Okay, so it looks like declaring a class within a module will also cause it to export the name. If we want a type to exist in/for a module, then we need to use interface instead of class. There are ways to get an interface to work like a class, of course, but if the class isn't "public" in the module anyway, then it is probably not meant to be newed up.
Seems as though your approach of converting any class that shouldn't be exported into an interface is indeed the correct approach.
I tested the uxp.shell instance's constructor and, while it exists, it's name is "b" and almost certainly isn't meant to be used... 😜

I tested the uxp.shell instance's constructor and, while it exists, it's name is "b" and almost certainly isn't meant to be used... 😜

I actually just tested this myself and wanted to write the exact same thing.
So, I'll leave it the state it is in (b0a1352c1140ef37db8c02fd0ca3d39affa01fa0) and merge it?
If you'd like / you agree, I'd like to add you to the contributor's list in the package.json (since credit is definitely due to you here). For that, I would need name, url and email address of your choice:

    {
      "name": "",
      "email": "",
      "url": ""
    }

A few last minute items!
Repo Structure - New Issue?
I would like to suggest that the jsconfig.json and sample.js file get moved into a sample or example folder that's separate from the top level. A tsconfig.json file at the top level then makes the most sense. This will allow a clear separation of TypeScript and JavaScript files while allowing you to have a tsconfig.json file that's designed specifically for writing the declaration files.
Thoughts?
Inaccessible Types Complication
I did a quick test of the scenegraph module and got the following:
// Output:
//
 GraphicNode,Rectangle,Ellipse,Line,Text,Path,Group,Artboard,BooleanGroup,RepeatGrid,SymbolInstance,LinkedGraphic,Matrix,Color,LinearGradient,RadialGradient,ImageFill,Blur,Shadow,root,selection,Polygon
console.log(Object.getOwnPropertyNames(require('scenegraph')));

When you compare those to the list of types currently available from scenegraph.d.ts you will notice that RootNode and SceneNode are not available.
This is a bit more complicated because classes "extend" from SceneNode (at least). This would need to change to implements for the sub-classes and then they would need to add all the properties.
Boo. I'm still playing around with this...
Contributor Info
Thanks! I appreciate it.

Name: Eric Robinson
Email: eric - at - sonicbloom - dot - io
URL: https://github.com/ericdrobinson

@ericdrobinson

Repo Structure - New Issue?
I would like to suggest that the jsconfig.json and sample.js file get moved into a sample or example folder that's separate from the top level. A tsconfig.json file at the top level then makes the most sense. This will allow a clear separation of TypeScript and JavaScript files while allowing you to have a tsconfig.json file that's designed specifically for writing the declaration files.

The thing is that this would mean that the sample.js file wouldn't work when cloning the repo, anymore, since the jsconfig.json is meant to be placed at the project root folder with a types folder as a sibling (the way it is now). This makes using the typings for JS basically a copy-and-paste solution in VSCode as one simply has to copy types and jsconfig.json into the project directory to use it.
Therefore, while I understand the request, it's a bit more complicated than that and I'd, therefore, suggest having this in a new issue discussing solutions and "apart" from the current Pull Request.

Inaccessible Types Complication
I did a quick test of the scenegraph module and got the following:
// Output:
//
 GraphicNode,Rectangle,Ellipse,Line,Text,Path,Group,Artboard,BooleanGroup,RepeatGrid,SymbolInstance,LinkedGraphic,Matrix,Color,LinearGradient,RadialGradient,ImageFill,Blur,Shadow,root,selection,Polygon
console.log(Object.getOwnPropertyNames(require('scenegraph')));

When you compare those to the list of types currently available from scenegraph.d.ts you will notice that RootNode and SceneNode are not available.
This is a bit more complicated because classes "extend" from SceneNode (at least). This would need to change to implements for the sub-classes and then they would need to add all the properties.
Boo. I'm still playing around with this...

Interesting – one of my projects actually relies on such a type check. I guess it's time to hotfix that. However, I'd like to defer this into another pull request (as soon as we find a better-suiting solution) to not explode the current PR even further than it already is. Since the PR is mostly structure-related and this is an actual "content" mistake, that sounds like something that's going to be easy to merge with the next bigger update.

Contributor Info
Thanks! I appreciate it.

Name: Eric Robinson
Email: eric - at - sonicbloom - dot - io
URL: https://github.com/ericdrobinson

Perfect, thank you. You're now added to the contributor list.
I'll now merge the Pull Request and open new issues for the two ideas to keep this (slightly) organized. After all, this is the 56th comment on this issue and we're already far off-topic from the original issue title 😉

Repo Structure - New Issue?
I would like to suggest that the jsconfig.json and sample.js file get moved into a sample or example folder that's separate from the top level. A tsconfig.json file at the top level then makes the most sense. This will allow a clear separation of TypeScript and JavaScript files while allowing you to have a tsconfig.json file that's designed specifically for writing the declaration files.

The thing is that this would mean that the sample.js file wouldn't work when cloning the repo, anymore, since the jsconfig.json is meant to be placed at the project root folder with a types folder as a sibling (the way it is now). This makes using the typings for JS basically a copy-and-paste solution in VSCode as one simply has to copy types and jsconfig.json into the project directory to use it.
Therefore, while I understand the request, it's a bit more complicated than that and I'd, therefore, suggest having this in a new issue discussing solutions and "apart" from the current Pull Request.

moved to #57

Inaccessible Types Complication
I did a quick test of the scenegraph module and got the following:
// Output:
//
 GraphicNode,Rectangle,Ellipse,Line,Text,Path,Group,Artboard,BooleanGroup,RepeatGrid,SymbolInstance,LinkedGraphic,Matrix,Color,LinearGradient,RadialGradient,ImageFill,Blur,Shadow,root,selection,Polygon
console.log(Object.getOwnPropertyNames(require('scenegraph')));

When you compare those to the list of types currently available from scenegraph.d.ts you will notice that RootNode and SceneNode are not available.
This is a bit more complicated because classes "extend" from SceneNode (at least). This would need to change to implements for the sub-classes and then they would need to add all the properties.
Boo. I'm still playing around with this...

Interesting – one of my projects actually relies on such a type check. I guess it's time to hotfix that. However, I'd like to defer this into another pull request (as soon as we find a better-suiting solution) to not explode the current PR even further than it already is. Since the PR is mostly structure-related and this is an actual "content" mistake, that sounds like something that's going to be easy to merge with the next bigger update.

moved to #56


idris2-lsp does not build with latest main branch of idris 2

I believe this PR broke idris2-lsp building with the latest main: https://github.com/idris-lang/Idris2/pull/2076
61/68: Building Language.LSP.SignatureHelp (src/Language/LSP/SignatureHelp.idr)
Error: While processing left hand side of findRefNamesInTerm. When unifying:
    Name -> Term ?vars
and:
    Term ?_
Mismatch between: Name -> Term ?vars and Term ?_.

Language.LSP.SignatureHelp:46:21--46:29
 42 | findRefNamesInTerm (TDelay fc x ty arg)   = findRefNamesInTerm ty
 43 | findRefNamesInTerm (TForce fc x y)        = findRefNamesInTerm y
 44 | findRefNamesInTerm (PrimVal fc c)         = []
 45 | findRefNamesInTerm (Erased fc imp)        = []
 46 | findRefNamesInTerm (TType fc)             = []
                          ^^^^^^^^

make: *** [Makefile:11: build] Error 1

Closed by #109.

@ShinKage thank you! can confirm it compiles now


Add major change proposal template

[ ] add types team and mcp docs to forge
[ ] set up rfcbot to pick up this repo

Can you give some examples of what you might expect an MCP to cover?

One example from today is https://rust-lang.zulipchat.com/#narrow/stream/144729-t-types/topic/relating.20regions.20variance/near/284117043 (changing the way lifetime relations are handled and documented in the compiler without changing language behaviour.... too much?)
Basically anything that isn't a language feature per se, but isn't a pure compiler refactoring either

Okay :) Let's try it out and see how it goes


Question about benchmark experiments

Hi, I am trying to reproduce the suggested results( benchmark) using your library.
Could you please give me some detailed information for each experiment?
For example, I'd like to know

number of nodes
hyperparameters(batch size, learning rate, ...)

Thank you!

According to your suggestion, we changed our benchmark with not only results but also config, script, spec.
Thank you for your suggestion ;)

According to your suggestion, we append config, script and spec to benchmark!
https://kepnex.notion.site/Benchmark-e20f16b4d4f84b83b490edef13226658
Thank you so much for your suggestion! :)


Bugfix: Allows a column name to be any string, including special characters.

Use the brackets syntax instead of the dot syntax for selecting a column so it allows for column names with special characters.
For example, using an UUID as a column name such as "3f73c374-bf4e-4c64-8d07-d5ef722b5cba":
row.entity.3f73c374-bf4e-4c64-8d07-d5ef722b5cba would fail because it interprets the dashes as minus signs.
row.entity["3f73c374-bf4e-4c64-8d07-d5ef722b5cba"] works.

+1


Able to have camera position from htc tracker

Request description
Use a htc tracker to represent a camera for filming purposes.

This is nice to have feature but not right now.


Update trackselection doc. with Run 3 ITS requirements.

The O2Physics PR #1234 needs to be merged before the current PR.

@jgrosseo

Conflicts appeared in the meanwhile...


Fixed the Docker Service check when more docker services are running

When both Linux and Windows Docker are running, you get an error because one of the services is stopped. Succeeding test if 1 of the 2 services is running

@PatrickLang @enderb-ms

Thanks!


Unhandled Promise Reject Warning

This repo is currently on low maintenance. See README for details
Problem
When starting yarn, I get an UnhandledPromiseRejectionWarning.
Replication steps
Start yarn watch or yarn start
More Information
Here is the error:
(node:67572) UnhandledPromiseRejectionWarning: Error: Request failed with status code 404
at createError (/Users/jlippiner/Dropbox/Projects/fruitstand/fs-bootstrap/node_modules/axios/lib/core/createError.js:16:15)
at settle (/Users/jlippiner/Dropbox/Projects/fruitstand/fs-bootstrap/node_modules/axios/lib/core/settle.js:18:12)
at IncomingMessage.handleStreamEnd (/Users/jlippiner/Dropbox/Projects/fruitstand/fs-bootstrap/node_modules/axios/lib/adapters/http.js:202:11)
at IncomingMessage.emit (events.js:194:15)
at endReadableNT (_stream_readable.js:1125:12)
at process._tickCallback (internal/process/next_tick.js:63:19)
(no

Duplicates #1075
Does not affect workflow, just a visual annoyance when running slate.

Just workflow.  Thanks.
On Thu, Nov 21, 2019 at 8:36 AM Maurice-JB<EMAIL_ADDRESS>wrote:

Duplicates #1075 https://github.com/Shopify/slate/issues/1075
Does not affect workflow, just a visual annoyance when running slate.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/Shopify/slate/issues/1077?email_source=notifications&email_token=AAATIASLRU4OYRODUVYTSMDQU2FG5A5CNFSM4JQCBOGKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEE2HXAQ#issuecomment-557087618,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAATIAWPFU5IE7UA4XFVQJDQU2FG5ANCNFSM4JQCBOGA
.

Sorry I meant just visual.
On Thu, Nov 21, 2019 at 9:10 AM Joshua Lippiner<EMAIL_ADDRESS>wrote:

Just workflow.  Thanks.
On Thu, Nov 21, 2019 at 8:36 AM Maurice-JB<EMAIL_ADDRESS>wrote:

Duplicates #1075 https://github.com/Shopify/slate/issues/1075
Does not affect workflow, just a visual annoyance when running slate.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/Shopify/slate/issues/1077?email_source=notifications&email_token=AAATIASLRU4OYRODUVYTSMDQU2FG5A5CNFSM4JQCBOGKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEE2HXAQ#issuecomment-557087618,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAATIAWPFU5IE7UA4XFVQJDQU2FG5ANCNFSM4JQCBOGA
.


fix link & typo in release node 0.14.0

Minor nit, the markdown hyperlink had a whitespace.
I believe today was some typo / autocorrect, I don't know if to use is the intended meaning though.
Thanks all for the release!

Thanks for the fixes! The commit has itself a typo :sweat_smile: and needs the [skip ci] tag and the docs:  prefix.
Taking it over in #5998 to fast track the changes, I hope you don't mind (the commit author will be preserved).


[ALLUXIO-3334] Remove usages of empty string from configuration properties

https://alluxio.atlassian.net/browse/ALLUXIO-3334

alluxio-bot, check this please

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Alluxio-Pull-Request-Builder/548/
Test PASSed.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Alluxio-Pull-Request-Builder/552/
Test FAILed.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Alluxio-Pull-Request-Builder/553/
Test FAILed.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Alluxio-Pull-Request-Builder/554/
Test PASSed.


Multi DB backups in k8s

Per our discussion with Sanjay, we aim to implement the same configuration for backing up different databases in the k8s environment. Since we are running many important databases in this environment, it's essential to optimize how we manage backups, at least for web-db-api, OSMCha, and in the future for the TM database. Additionally, we should have a cleaner option to remove db backups that are older than a certain number of days, also we should implement a cleanup mechanism to delete database backups older than a specified number of days to prevent the accumulation of too many files in S3.
cc. @danrademacher @batpad @geohacker

sorry not updating this ticket early, this is been completed , e.g https://github.com/OpenHistoricalMap/ohm-deploy/blob/staging/values.production.template.yaml#L270-L311


/list route not usable

Hi Eliaz, thanks for providing this open source project.
The See all public snippets... link in index page requests to the /api/all, and calling mongoDB find method underneath. The code requests find method with private parameter, which was not defined in the Snippet schema, I highly suggest remove this Link.

Thanks!
It used to be working if I remember correctly, I will try to fix it instead of removing it all, i liked this feature.

Now it works!  But it's working at least! Anyone is free to PR lol


customers: create an interface, don't leak moovcustomers

Issue: https://github.com/moov-io/paygate/issues/386

Codecov Report

Merging #399 into master will decrease coverage by 0.23%.
The diff coverage is 2.5%.

@@            Coverage Diff             @@
##           master     #399      +/-   ##
==========================================
- Coverage   58.31%   58.07%   -0.24%
==========================================
  Files          86       86
  Lines        6089     6114      +25
==========================================
  Hits         3551     3551
- Misses       1898     1923      +25
  Partials      640      640

Impacted Files
Coverage Δ

internal/customers/client.go
11.42% <0%> (-2.49%)
:arrow_down:

internal/customers/test_client.go
18.18% <20%> (ø)
:arrow_up:

Continue to review full report at Codecov.

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


Fix :: add back editStep event handler in Vqb

Following bad resolution of merge conflicts

Codecov Report

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

@@           Coverage Diff           @@
##           master     #161   +/-   ##
=======================================
  Coverage   85.77%   85.77%
=======================================
  Files          29       29
  Lines         689      689
  Branches       79       79
=======================================
  Hits          591      591
  Misses         85       85
  Partials       13       13

Impacted Files
Coverage Δ

src/components/Vqb.vue
86.48% <ø> (ø)
:arrow_up:

Continue to review full report at Codecov.

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


pre and post script icons don't disappear when clearing script

If I delete the whole pre or post script, the script icon doesn’t disappear because the script tags in the xml are not deleted. it looks like:
<spiffworkflow:postScript />
If I delete the xml tag for the postScript then, for sure, the script icon disappears as well.
so we should delete the entire postScript xml node when the contents of the post script are empty.
See these files:
app/spiffworkflow/extensions/propertiesPanel/SpiffScriptGroup.js
app/spiffworkflow/extensions/propertiesPanel/ExtensionsPropertiesProvider.jsx
and test files inside of test/spec

This issue seems to be fixed now.


expand TileID/MarkID/PieceID to 32bits

This PR expands TileID/MarkID/PieceID to 32bits to allow for games with larger piece counts.
Note that saving 32bit IDs to a file requires file format changes, making the files incompatible with previous versions of CyberBoard.  I am not yet enabling the file format changes by default since I am waiting for more testing of these changes.  To opt-in to the file support for 32bit IDs,  run CyberBoard with command line switch /id32.
I am also waiting for some more testing before I mark the 32bit issue fixed.

We seem to need a rebase. I'm confused why since we didn't add any commits since this group. Any ideas?
-Dale

I upgraded some gameboxes and games that are from various older versions of CB and they seem to operate fine. The new file sizes seem to be nearly identical to the originals. Shouldn't they have expanded some due to the doubling of the 16bit elements?

Note: I still need to look at the code more closely before adopting the changes.
-Dale

We seem to need a rebase. I'm confused why since we didn't add any commits since this group. Any ideas?

I don't understand that at all.  It looks to me like master's commit is 89f08dc, and I see wsu-cb:id32 has 89f08dc in its commit log.  To me, fast-forward merge should therefore be possible.
What does git merge-base master id32 report?  What do you see in the master and wsu-cb:id32 logs?  And what happens if you copy master and then try to apply wsu-cb:id32 to the copy?  Does git still want a rebase?  And if it does, maybe try the rebase and see what the history looks like afterwards?

I upgraded some gameboxes and games that are from various older versions of CB and they seem to operate fine. The new file sizes seem to be nearly identical to the originals. Shouldn't they have expanded some due to the doubling of the 16bit elements?

Did you run CB with the /id32 command line switch?  If you don't, then the files won't change.  Also, bitmaps are relatively large, so I wouldn't be surprised if the addition of two bytes per ID is a small percentage of the total .gbx size.  I might expect more percentage change for .gam files.

I don't understand that at all. It looks to me like master's commit is 89f08dc, and I see wsu-cb:id32 has 89f08dc in its commit log.

Looking more carefully everything seems right. It checks out in my local copy as well. I think I just got spooked by GitHub's UI putting the button in a bright red color as if something is broken if we proceed.
-Dale

Did you run CB with the /id32 command line switch? If you don't, then the files won't change. Also, bitmaps are relatively large, so I wouldn't be surprised if the addition of two bytes per ID is a small percentage of the total .gbx size. I might expect more percentage change for .gam files.

Yep. In fact I put a breakpoint on the code the processes the switch.  The new version files are definitely different in content. And a normal launch of CB refuses to load the new id32 version. I was just struck by how little the size in bytes of the files reported by the OS changed. One didn't change at all but the content inside was definitely different.
I need to find find an example with lots of pieces and stuff and try again.
-Dale

Looking more carefully everything seems just fine. It checks out in my local copy as well. I think I just got spooked by GitHub's UI putting the button in a bright red color as if something is broken if we proceed:

Is it possible the bright red is because I have marked this PR as draft still?  I hadn't marked it as "ready" since I wasn't sure how much testing we would do on this before merging it to master.

Yep. In fact I put a breakpoint on the code the processes the switch. The new version files are definitely different in content. And a normal launch of CB refuses to load the new id32 version. I was just struck by how little the size in bytes of the files reported by the OS changed. One didn't change at all but the content inside was definitely different.
I need to find find an example with lots of pieces and stuff and try again.

I agree that NO change in size seems suspicious.  If you post the id16 version of the file, I will see if I can find an explanation for id32 being the same size.

Sorry I missed your response.
Here are the files I was testing with. Those with id32 in the name are the upgraded versions.
Id32-vs-id16-gbx-gam-files.zip
-Dale

Here are the files I was testing with. Those with id32 in the name are the upgraded versions.

When I extracted the .zip, the 32bit files are all somewhat bigger than the 16bit files.
Directory of C:\Users\wsu\Documents\temp\Id32-vs-id16-gbx-gam-files
09/16/2021  10:20 PM              .
09/16/2021  10:20 PM              ..
09/13/2021  10:09 AM           478,006 pogupgrdTEST-id32.gbx
08/27/2005  12:26 PM           471,038 pogupgrdTEST.gbx
09/13/2021  10:15 AM           270,499 WarOf1812-Game1-Dale-id32.gam
07/08/2020  04:14 PM           241,428 WarOf1812-Game1-Dale.gam
09/13/2021  10:06 AM         1,873,751 WarOf1812V2-id32.gbx
09/19/2005  08:24 PM         1,872,965 WarOf1812V2.gbx
6 File(s)      5,207,687 bytes
As a further test, I instrumented the load of the 16bit .gbx to count how many 16bit ids there are, and the change from WarOf1812V2.gbx to WarOf1812V2-id32.gbx is exactly as expected.  I'm not seeing any evidence of trouble here.

all somewhat bigger than the 16bit files.

I think I was thrown by using Explorer to see size and two were Identical. It must've been rounded in that case. I shoulda (sic) used the command line.

As a further test, I instrumented the load of the 16bit .gbx to count how many 16bit ids there are, and the change from WarOf1812V2.gbx to WarOf1812V2-id32.gbx is exactly as expected. I'm not seeing any evidence of trouble here.

That sounds great to me!
Shall I merge? I assume you don't want this squashed? Your choice.
-Dale

Shall I merge? I assume you don't want this squashed? Your choice.

I definitely think this should not be squashed.


Js calculator test suite

Issue Description

The test suite doesn't work for half of the questions of my Js calculator (from 8 to 15). I can verify them directly in the app but the test suite doesn't.
Browser Information

Browser Name, Version: Chrome
Operating System: Windows
Mobile, Desktop, or Tablet: Desktop

Your Code / Link to Your Pen

https://codepen.io/Jrej/pen/RwPyyLV
Thanks for your help

It doesn't appear that there is an issue that needs fixing here, the test suite is working as intended. If anyone feels I am wrong in closing this, feel free to leave a comment and we can reopen it. Thanks and happy coding 🎉


PATCH request not working

Not sure, whether patching of States is supposed to be working already or still work in progress.
Describe the bug
when performing a PATCH request via the swagger UI or via e.g. Postman, I cannot patch a state value. Instead I get the error message:
{
"id": "tradfri.0.L-65547.lightbulb.brightness",
"error": "Error: The state contains no properties! At least one property is expected!"
}
However, the GET method on the same object works and returns:
{
"val": 100,
"ack": true,
"ts":<PHONE_NUMBER>796,
"q": 0,
"from": "system.adapter.tradfri.0",
"user": "system.user.admin",
"lc":<PHONE_NUMBER>685
}
To Reproduce
I tried the swagger UI and entered: "tradfri.0.L-65547.lightbulb.brightness" at PATCH /state/{stateid} and added as data:
{
"val": 20
}
Expected behavior
I would expect "val" to be set to 20 but only receive the error from above
Versions:

Adapter version: newest, 1.0.4
Node version: 14.21.1
Operating system: running on a raspberry pi 4

@Predator83 The reason for that is, 'application/octet-stream' is selected as request content type. But it should be 'application/json'. Unfortunately on swagger UI you are not able to change that selection, but on you Postman request you can change that. It worked for me.
@Apollon77 could you please fix the content type for swagger?
https://github.com/ioBroker/ioBroker.rest-api/blob/883d42808f36e15103690eb6c5a542f157eedcde/lib/api/swagger/swagger.yaml#L84


Do not always clear Onyx VBA data when accessing workspace sections

@MonilBhavsar, @tgolen
I'm not super happy with this solution, so I'm open to suggestions 😬
Fixed Issues
$ https://github.com/Expensify/App/issues/5760
Tests/ QA Steps

On NewDot, Log into an account with no VBA in its free workspace.
Open the workspace and add an OPEN account.
Go to the Workspace->Pay Bills. You should immediately see the option to pay the bills:

Tested On

[X] Web
[ ] Mobile Web
[X] Desktop
[ ] iOS
[ ] Android

The solution I had in mind is to only render the children if we have reimbursementAccount.loading == false
https://github.com/Expensify/App/blob/24cc6ff595c611d252b7e67f86d310c8aa277b16/src/pages/workspace/WorkspacePageWithSections.js#L72-L72
Otherwise we are passing hasVBA with a value that might not be correct until we are done loading.

I think that almost everywhere else in the app we have decided that this is OK to do that
So, there isn't anything about this case which makes me think that we should treat it differently, but this is possibly where I am open to reason.

Only thing I can add is that this feature was not implemented with that idea in mind and the interactions with local data and API are fairly complex in comparison to other simpler flows in the app. That's not to say we can't change how it works, but I think that's something that should have been established in the design stage.

🚀 Deployed to production by @AndrewGable in version: 1.1.7-24 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅

🚀 Deployed to staging by @marcaaron in version: 1.1.7-25 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅

🚀 Deployed to production by @roryabraham in version: 1.1.8-9 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅


Compile using wlroots git from local directory.

Hello, I want to try Hyprland and not really want to mess up with wlroots on my /usr and /usr/local. I installed wlroots-git to ~/.local and already exported C_INCLUDE_PATH to ~/.local/include but Hyprland still complaints that I missing some headers from wlroots-git. Any clue ? Thanks.

Nevermind, I'll stick to easier and more flexible Wayland compositor. Thanks.


Update README.md

Why did you change this? The previous line seems correct.

... {props: {href: '/foo'}, 'I\'ll take you places!'} ...

can´t be correct => Uncaught SyntaxError: Unexpected token }

Nice catch! Thank you :+1:


Style guide refinement plans

User story
As a user, I want to have a consistent and clear content to help me use ReportStream.
Background & context
The audit revealed a need for consistency across our content to aid in user confidence and clarity. The style guide will create alignment for content both on the site and other communications with users. We have started work on a v2 and identified areas to begin defining. There has also been ongoing collaboration with SimpleReport on areas of overlap in style needs for increased consistency across PRIME.
Open questions

Which new additions to prioritize
If we need specific tickets for different additions/updates
How/when to integrate with design components/style guide

Working links

v2 working doc

Acceptance criteria

[ ] Update service blueprint with relevant learnings
[ ] Update the questions pool with any questions that came up
[x] Priority areas reviewed and Q2 updates scoped and ticketed as needed

Follow up tickets for priorities
Tentatively planned for sprint 70:
9565
9566
9567
Tentatively planned for Sprint 71:
9568

@lizzieamanning closing. See comment above for the scoped updates

@audreykwr looks good. Reminder to add final docs or deliverables as comments to the respective tickets when you get there


libspiro: 20190731 -> 20200505

Semi-automatic update generated by nixpkgs-update tools. This update was made based on information from https://github.com/fontforge/libspiro/releases.
meta.description for libspiro is: "A library that simplifies the drawing of beautiful curves"
meta.homepage for libspiro is: "https://github.com/fontforge/libspiro"
Updates performed

Version update

To inspect upstream changes

Release on GitHub

Compare changes on GitHub

Impact

Checks done (click to expand)

built on NixOS

The tests defined in passthru.tests, if any, passed

0 of 0 passed binary check by having a zero exit code.

0 of 0 passed binary check by having the new version present in output.

found 20200505 with grep in /nix/store/jw2845g9ca23i2ll97jgki01yaszc9kv-libspiro-20200505

directory tree listing: https://gist.github.com/b7338f44dd0fcb06779908f5fad46ff4

du listing: https://gist.github.com/08a2aef9c41b901fedba0760c1fdf6f4

Rebuild report (if merged into master) (click to expand)

49 total rebuild path(s)

22 package rebuild(s)

22 x86_64-linux rebuild(s)
10 i686-linux rebuild(s)
7 x86_64-darwin rebuild(s)
10 aarch64-linux rebuild(s)

First fifty rebuilds by attrpath
fontforge-gtk
gegl_0_4
gimp
gimp-with-plugins
gimpPlugins.exposureBlend
gimpPlugins.focusblur
gimpPlugins.fourier
gimpPlugins.gap
gimpPlugins.gimplensfun
gimpPlugins.gmic
gimpPlugins.lightning
gimpPlugins.lqrPlugin
gimpPlugins.resynthesizer
gimpPlugins.resynthesizer2
gimpPlugins.texturize
gimpPlugins.ufraw
gimpPlugins.waveletSharpen
gnome-photos
gnome3.gegl_0_4
gnome3.gnome-photos
libspiro
ufraw

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/jw2845g9ca23i2ll97jgki01yaszc9kv-libspiro-20200505 \
  --option binary-caches 'https://cache.nixos.org/ https://r-ryantm.cachix.org/' \
  --option trusted-public-keys '
  r-ryantm.cachix.org-1:gkUbLkouDAyvBdpBX0JOdIiD2/DP1ldF3Z3Y6Gqcc4c=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

(r-ryantm's Cachix cache is only trusted for this store-path realization.)
For the Cachix download to work, your user must be in the trusted-users list or you can use sudo since root is effectively trusted.
Or, build yourself:
nix-build -A libspiro https://github.com/r-ryantm/nixpkgs/archive/96908213c098404336046a1af3d9402538212d5e.tar.gz

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/jw2845g9ca23i2ll97jgki01yaszc9kv-libspiro-20200505
ls -la /nix/store/jw2845g9ca23i2ll97jgki01yaszc9kv-libspiro-20200505/bin

Security vulnerability report

Security report (click to expand)

CVEs resolved by this update:

CVE-2019-19847

CVEs introduced by this update:
none
CVEs present in both versions:
none

Pre-merge build results
We have automatically built all packages that will get rebuilt due to
this change.
This gives evidence on whether the upgrade will break dependent packages.
Note sometimes packages show up as failed to build independent of the
change, simply because they are already broken on the target branch.
Result of nixpkgs-review 1

3 packages marked as broken and skipped:
- gimpPlugins.exposureBlend
- gimpPlugins.focusblur
- gimpPlugins.texturize

16 packages built:
- fontforge-gtk
- gegl_0_4
- gimp
- gimp-with-plugins
- gimpPlugins.fourier
- gimpPlugins.gap
- gimpPlugins.gimplensfun
- gimpPlugins.gmic
- gimpPlugins.lightning
- gimpPlugins.lqrPlugin
- gimpPlugins.resynthesizer
- gimpPlugins.ufraw
- gimpPlugins.waveletSharpen
- gnome-photos
- libspiro
- ufraw

Maintainer pings
cc @erictapen for testing.

@GrahamcOfBorg build gimp


DH Code Review

The ticket for this code review is https://github.com/DHCodeReview/DHCodeReview/issues/6
I'm including code for two related Mesa models:

Hawk-Dove with risk attitudes - here's a readable version of the model README
Hawk-Dove with multiple risk attitudes - readable version of the model README

I'm primarily interested in feedback on the second one, but since it extends the simpler one I thought it would be useful to include that code.
I've included some unit tests and batch running code in the review in case it's useful for context but that's a lower priority.
The full repository is available at https://github.com/Princeton-CDH/simulating-risk
A running version of the application is available online. Here are links to view the two models that are under review, in case it's helpful to see the logic running:
https://simrisk.pulcloud.io/hawkdove-single
https://simrisk.pulcloud.io/hawkdove-multiple

Thank you so much @sgfost @maltevogl for your time reviewing this code and engaging with the research and modeling behind it!
I've implemented fixes for the two highest priority errors you flagged (invalid grid size & neighborhood size combinations, inaccurate proportional scaling of neighborhood sizes) and will be rerunning analysis and investigating convergence logic and behavior next week as I prepare to present on this work at DH2024 and update results for the articles we're working on.


fix(addon-charts): fix axis hints

PR Checklist
Please check if your PR fulfills the following requirements:

[ ] The commit message follows Conventional Commits
[ ] Tests for the changes have been added (for bug fixes / features)
[ ] Docs have been added / updated (for bug fixes / features)

PR Type
What kind of change does this PR introduce?

[x] Bugfix
[ ] Feature
[ ] Refactoring
[ ] Code style update
[ ] Build or CI related changes
[ ] Documentation content changes

What is the current behavior?
Closes #1195
What is the new behavior?
Does this PR introduce a breaking change?

[ ] Yes
[x] No

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage decreased (-9.2%) to 72.199%

Totals

Change from base Build<PHONE_NUMBER>:
-9.2%

Covered Lines:
139

Relevant Lines:
181

💛  - Coveralls


Hassio Unauthorized Web Socket

After the latest update i am seeing the following system log repeated every a few seconds.
19-06-15 05:32:37 WARNING (MainThread) [hassio.api.proxy] Unauthorized WebSocket access!
19-06-15 05:32:42 INFO (MainThread) [hassio.api.proxy] Home Assistant WebSocket API request initialize
19-06-15 05:32:42 WARNING (MainThread) [hassio.api.proxy] Unauthorized WebSocket access!
19-06-15 05:32:47 INFO (MainThread) [hassio.api.proxy] Home Assistant WebSocket API request initialize
19-06-15 05:32:47 WARNING (MainThread) [hassio.api.proxy] Unauthorized WebSocket access!
19-06-15 05:32:52 INFO (MainThread) [hassio.api.proxy] Home Assistant WebSocket API request initialize
19-06-15 05:32:52 WARNING (MainThread) [hassio.api.proxy] Unauthorized WebSocket access!
19-06-15 05:32:57 INFO (MainThread) [hassio.api.proxy] Home Assistant WebSocket API request initialize
19-06-15 05:32:57 WARNING (MainThread) [hassio.api.proxy] Unauthorized WebSocket access!
19-06-15 05:33:02 INFO (MainThread) [hassio.api.proxy] Home Assistant WebSocket API request initialize
19-06-15 05:33:02 WARNING (MainThread) [hassio.api.proxy] Unauthorized WebSocket access!
19-06-15 05:33:03 INFO (MainThread) [hassio.homeassistant] Detect a running Home Assistant instance
19-06-15 05:33:07 INFO (MainThread) [hassio.api.proxy] Home Assistant WebSocket API request initialize
19-06-15 05:33:07 WARNING (MainThread) [hassio.api.proxy] Unauthorized WebSocket access!
19-06-15 05:33:12 INFO (MainThread) [hassio.api.proxy] Home Assistant WebSocket API request initialize
19-06-15 05:33:12 WARNING (MainThread) [hassio.api.proxy] Unauthorized WebSocket access!```

I have been using mopidy which was installed in another RPi to play mp3 storred in my hassio as voice notifications but after update this feature is also not working..

rebooted and now websocket error is not there in log but mopidy not working


chore: upgrade dependencies

With upgraded dependencies, the compiled bundles are exactly the same. New upcoming 0.4.1 tag will be just "decoration".


does this still work?

I tried to import this to my project to use tailwind css and it doesnt work
is it still being maintained?

@jlengstorf do you have any instructions how I can use tailwind like this project in an existing project? thanks

@LittleHamster I don't, unfortunately. This little demo is the extent of my experience with tailwind.
I'd recommend checking out the Gatsby docs on Tailwind for more help.
Good luck!


Add support for internal transfers (from one account to an other)

This PR adds the support for internal transfers as announced in the latest release notes (September 25th 2018).

[x] Adjust documentation
[x] Expose new transfer_payee_id field in YNAB::Account objects

Closes #28.

Thanks @schurig !
I was actually already working on #30 which I've merged.  I used the generator to update all the various locations on the code.  Sorry to dupe your work here!  If there are additional updates you'd like to make let me know.


improve code section

Description of changes:
Default style from just-the-docs theme has a quite large line-height for code sections, and the font-family list only take macOS and Windows into consideration. On Linux ( RHEL 7 in my case ), Droid Sans Mono looks better.
By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

I checked on my Mac, yeah the 1.4 line-height looks fine. The font-family is more important than line-height on Linux. I'll update this PR.

Before this explicit line-height specification, the code section would use inherited line-height from class "main-content", which is 1.6 in this case, that explains why the code section always looked weird to me.

LGTM, thanks a bunch.


fix(contrib/registry/file/v2): fix the panic caused by channel closing after resolver closed

This only fixes the problem of not triggering panic. As for why the resolver closed, I haven't investigated it yet and it will take more time.

@gqcn request review


Wrap sga in try catch

What do you guys think about this change?
So it can provide result for at least some of subgroups?
Is it enough?

Coverage decreased (-0.2%) to 92.17% when pulling c8069e15439b198ea4f7f80e3199ef6eaf4a364c on igusher:feature/sga-subgroup-try-catch into cf2ae7b08fbb6155d2c14d304f1c7d6dcbefc0fc on zalando:master.


Add Khushraj Rathod

P.S. Don't mind the ugly website background, that's temporarily broken I'll fix it today or tomorrow
Fixed

Nice! Welcome to the webring! 🎉

:)


Fix collection of rolling update options on Kubernetes workloads

What does this PR do?
Fix the collection of maxSurge and maxUnavailable fields in workload rolling update strategy when their content is an integer: they were empty in such a case.

Motivation

Additional Notes

Possible Drawbacks / Trade-offs

Describe how to test/QA your changes

/merge


Installer should properly detect "Documents" path

The installer (per-user) assumes that Documents live in the user'
s profile. This is often not the case.

Thank you and sorry for delay :) Replaced $env:USERPROFILE\Documents with [Environment]::GetFolderPath("mydocuments").
The original implementation actually came from msdn, so they apparently got it wrong:
https://msdn.microsoft.com/en-us/library/dd878350(v=vs.85).aspx

Released in 1.2.4.


Fix logger messages

A few minor fixes for the logger, changing messages in a few places to be slightly better. Also enable the logger for the tf example.

Quick question: why did you add a condition on the l2 being smaller than 1e9?
Besides that LGTM

You also have a pep8 pb:
======================================================================
FAIL: Test if pep8 is respected.
Traceback (most recent call last):
File "/home/travis/miniconda/envs/test-environment/lib/python2.7/site-packages/nose-1.3.7-py2.7.egg/nose/case.py", line 197, in runTest
self.test(*self.arg)
File "/home/travis/build/tensorflow/cleverhans/cleverhans/devtools/tests/test_format.py", line 45, in test_format_pep8
raise AssertionError("PEP8 Format not respected")
AssertionError: PEP8 Format not respected
-------------------- >> begin captured stdout << ---------------------
/home/travis/build/tensorflow/cleverhans/tutorials/mnist_blackbox.py:206:1: W293 blank line contains whitespace
--------------------- >> end captured stdout << ----------------------

Eh. It's probably not the cleanest part of the code, but that's how I report success/failure. It initializes to 1e10 and "success" will mean less than that. Probably that should be fixed, because it's a fine assumption for image tasks (a distortion of ~200 max is possible on imagenet) but may not hold in general. I can deal with that in another PR.

I see, this seems like a reasonable thing to do for now
LGTM

Looks like the travis bot had an internet connection problem.

Done

I restarted the Travis job that errored


chore(mock+router): Cleanup endpoints

There are a variety of endpoints that have been removed or added (or never existed!). This PR adjusts the following to account for those differences:

server mock
router doc comments

The server mock updates are a follow-up for (all of the mock methods are still in use for other endpoints, just the admin/ versions needed to be dropped from the mock):

#734

The router doc comment updates are a follow-up for:

#489
#765

From git spelunking, it looks like the removed /api/v1/users/:user/... endpoints never existed.

Not in use, but they are supported. Were the /stream endpoints used by the worker in the past, or were they designed for future use by the worker?
Something that streams the logs to the database sounds like a great idea to me. - the implementation probably needs work like in #795.

fair point. i think the idea was to, more or less, live stream with an open connection some day. the implementation details likely have to change. i haven't looked at this in a while though.

Rebased and dropped comments about endpoints removed in #799


license information

Hi, thank you very much for sharing your amazing work!
Could you add the license information to this repository? Can I consider it to be same as nerfstudio?
Thank you!

Thank you! Good point, just added the Apache 2.0 license as also used in nerfstudio.


US Opioid Epidemic [R]

App name
dashr-opioid-epidemic
App

[ ] This app is currently deployed on Dash(R) Gallery: [deployment URL]
[x] This app is new

Source code repository
[source code repo URL]
Current appearance
[attach screenshot of current app here]
Redesign
Link: https://github.com/plotly/streambed/issues/12068#issuecomment-455840062

Link: https://github.com/plotly/streambed/issues/12879#issuecomment-484241765

Playground deployment
[url of playground deployment]

US opioid.zip


Create CODEOWNERS

Not sure why I have access to this and am getting notifications, but unless you know something I don't, I probably shouldn't...

Not sure why I have access to this and am getting notifications, but unless you know something I don't, I probably shouldn't...

hey @jlaurelcacace! Thanks for the concern and mentioning something. This is a public repository so you must still be set up to watch this repository. Feel free to change your watch settings on any of our public repositories we have in order to stop receiving notifications.

Thanks for clarifying, @jeremyjhamel - it was actually kind of fun to see! I just didn't remember there being any public repos, so I was concerned. As you were!


ExecuteScriptML now routes failures to relationship

Resolves #125

Improved descriptions of each relationship
Extracted buildCall for better readability
Extracted logErrorAndTransfer

Mistakenly merged #149 into a separate feature branch, so using this to merge it into develop.


Freerdp/client/Android/Studio/freeRDPCore/src/main/cpp

Releated pull request for master:
i execute  "sudo cmake ." above the path,
report error
CMake Error: The following variables are used in this project, but they are set to NOTFOUND.
Please set them or make sure they are set and tested correctly in the CMake files:
jnigraphics-lib
but I commented out the library in the cmakeList.txt，
report not find include<jni.h>, but i solve it
report error
not find include<android/bitmap.h>

i want to build for android.so

check docs/README.android in sources.


Upper-bounded free variables in def restrictions

This is a more complete proposal of https://github.com/crystal-lang/crystal/issues/6997#issuecomment-450363123. It should be possible to define an upper bound for each free variable used in a def:
def foo(x : T) forall T <= Int; end

foo(1)    # okay
foo(2_u8) # okay
foo("")   # Error: no overload matches

Given a free variable T forall T <= U,

U must be a valid type that can be used e.g. as an argument to #is_a?. This disallows constructions like forall T <= Array(Array).
U must be a type; StaticArray(Int32, T) forall T <= 4 is not a valid restriction. It follows that T is always instantiated to be a type.
U does not contain any free variables; if U contains T then that T refers to a normal type in the enclosing scope.
An argument of type V matches the restriction if and only if V is a subtype of U, including U itself, and NoReturn. T is instantiated to be V. This subtype check is always strict, so in general the restrictions T forall T <= U and U are not the same when U is a generic instance:def foo(x : Array(Array(Int32 | String))); end
def bar(x : Array(T)) forall T <= Array(Int32 | String); end

foo [[1, ""]] # okay
bar [[1, ""]] # okay, T = Array(Int32 | String)

foo [[1]] # okay, `Array(Array(Int32))` is a restriction of `Array(Array(Int32 | String))`
bar [[1]] # error, `Array(Int32) <= Array(Int32 | String)` does not hold

def foot(x : Array({Int32 | String})); end
def bart(x : Array(T)) forall T <= Tuple(Int32 | String); end

foot [{1}] # okay, `Array(Tuple(Int32))` is a restriction of `Array(Tuple(Int32 | String))`
bart [{1}] # okay, `Tuple(Int32) <= Tuple(Int32 | String)` holds

The restriction T forall T <= U is stricter than U during overload ordering. If they accept the same argument types, then T gives more information; if they don't, U as an AST node restriction always accepts more types than U as a type, like the generic case above, so the forall is stricter.
If the same free variable appears in identical positions in two overloads, but is bounded by two different types, those types determine their overload order. A bounded free variable is stricter than an unbounded one. Examples:# lower overloads come before upper ones
def foo(x : Array(T)) forall T; end
def foo(x : Array(T)) forall T <= Enumerable; end
def foo(x : Array(T)) forall T <= Array; end
def foo(x : Array(T)) forall T <= Array(Int32); end

# unordered, neither `Int` nor `String` is a subtype of one other
def bar(x : Array(T)) forall T <= Int; end
def bar(x : Array(T)) forall T <= String; end

The overload order of more complex restrictions involving free variables is not concerned here. (Sooner or later we will have to revisit the precise semantics of free variables before this and #8973.)

The main motivation here is that some AST node restrictions do not correspond to any types, even after free variable and underscore substitution. One such example is:
https://github.com/crystal-lang/crystal/blob/bcf193a7068c98c3be3adc12b3dae3b49f294ad6/src/indexable.cr#L209-L209
With bounded free variables one could write:
def self.cartesian_product(indexables : Indexable(T)) forall T <= Indexable

But more importantly, Indexable(T) is no longer covariant by itself (but see #3803), so if we decide to make all restrictions invariant (#10214) then these free variables will act as a transition path when covariance is truly needed in the generic type variables. (This workaround doesn't exist for more than two levels of nesting, e.g. Array(Array(Array)), but those are considerably rarer.)
Lower-bounded, or contravariant free variables are not considered here. They require a much more extensive treatment of overload ordering because so far no restrictions have been contravariant before.

I guess doing this would be a breaking change, right? It would mean existing type restrictions will become invariant.

Not necessarily, bounded free variables should still work with the existing restrictions. However it is likely that the existing #restrict will be frozen in place once invariant restrictions are available in some form (bounded forall is the bare minimum extension needed for most code to compile successfully under both non-strict and invariant restrictions).

Oh, that's what happens when I read something one day and comment on another day 😊
I guess then this only has effect on generic types? Like:
def foo(x : T) forall T <= Int; end
def foo(x : Int)

would be equivalent, right?
Let's say we have:
class Foo; end
class Bar < Foo; end

What's the difference between these two?
def foo(x : Array(Foo))
def foo(x : Array(T)) forall T <= Foo

?

x : T forall T <= Int and Int should be equivalent. The benefit is T can now be extracted in the same method, but I suspect most methods don't need this. This however raises the question of what T would become in *x : *T forall T <= Int.
Technically speaking, x : Array(Foo) does not accept an Array(NoReturn), but x : Array(T) forall T <= Foo should, because NoReturn <= Foo holds. If the restrictions are strict then the differences are obvious.

This adds value to relationships between free variables: x : T, y : T forall T <= Foo is different from x : Foo, y : Foo.

Some additional notes: when the same free variable is used in multiple parameters, currently Crystal more or less does the following:
def foo(x : T, y : T, z : Array(T)) forall T; end

# semantically equivalent to:
def foo(x : T, y : U, z : Array(V)) forall T, U <= T, V <= T; end
# except `<=` is non-strict, and `T` refers to the actual free variable

# T = Array(Int32 | String)
# U = Array(Int32) <= T (non-strict)
# V = Array(String) <= T (non-strict)
foo [1 || ""], [1], [[""]] # okay

If T is bounded above then there would be a strict <= for the forall T, but U and V will remain the same.
This dependency on parameter and argument order is one of the things that need to be revisited afterwards, before we could arrive at a definitive answer for #8973.

Thinking about how the parser should work with respect to ->. If we expect them then the following is a syntax error:
def foo(x : T, y : U) forall T <= Int32, U # Error: expecting token '->', not 'NEWLINE'
end

If not, the following instead is a syntax error:
def foo(x : T, y : U) forall T <= Int32, U -> # Error: expecting identifier 'end', not 'EOF'
end

The latter could be circumvented by doing forall T <= (Int32, U ->), so I will most likely go with that.

We talked with @beta-ziliani and @ftarulla about the aspect of invariance, that can be observed in this extract from the OP:
def foo(x : Array(Array(Int32 | String))); end
def bar(x : Array(T)) forall T <= Array(Int32 | String); end

foo [[1]] # okay, `Array(Array(Int32))` is a restriction of `Array(Array(Int32 | String))`
bar [[1]] # error, `Array(Int32) <= Array(Int32 | String)` does not hold

In foo, Array(Array(Int32)) matches Array(Array(Int32 | String)).
In bar, Array(Array(Int32)) does not match Array(T) forall T <= Array(Int32 | String).

This can seem surprising and inconsistent because both type restrictions could be understood as being more or less equivalent.
Type restriction like the one in foo accept covariant types to make using them easier because there's no explicit syntax for expressing covariance. But when we add syntax for that, there's no need for that anymore. Type restrictions can be more explicit about variance.
An equivalent to the type restriction in foo can be expressed with an upper-bounded free variable. These two type restrictions should be equivalent:
def foo(x : Array(Array(Int32 | String))); end
def boo(x : Array(Array(T))) forall T <= Int32 | String; end

boo is more explicit about what it means and that's really valuable.
So I think upper-bounded free variables could eventually replace covariance in regular type restrictions, which in turn could become invariant at some point. Then foo would only match arguments of type Array(Array(Int32 | String)) and nothing else.

That is the ultimate plan, yes. Here is a larger example involving generic inheritance, using non-strict semantics:
class Foo(T); end
class Bar(T) < Foo(T); end

def foo(x : Foo(Foo(Int32 | String))); end

def bar1(x : T) forall T <= Foo(Foo(Int32 | String)); T; end
def bar2(x : Foo(T)) forall T <= Foo(Int32 | String); T; end
def bar3(x : Foo(Foo(T))) forall T <= Int32 | String; T; end

foo Foo(Foo(Int32 | String)).new # okay
foo Bar(Foo(Int32 | String)).new # okay
foo Foo(Bar(Int32 | String)).new # okay
foo Bar(Bar(Int32 | String)).new # okay
foo Foo(Foo(Int32)).new          # okay
foo Bar(Foo(Int32)).new          # okay
foo Foo(Bar(Int32)).new          # okay
foo Bar(Bar(Int32)).new          # okay

bar1 Foo(Foo(Int32 | String)).new # => Foo(Foo(Int32 | String))
bar1 Bar(Foo(Int32 | String)).new # => Bar(Foo(Int32 | String))
# bar1 Foo(Bar(Int32 | String)).new
# bar1 Bar(Bar(Int32 | String)).new
# bar1 Foo(Foo(Int32)).new
# bar1 Bar(Foo(Int32)).new
# bar1 Foo(Bar(Int32)).new
# bar1 Bar(Bar(Int32)).new

bar2 Foo(Foo(Int32 | String)).new # => Foo(Int32 | String)
bar2 Bar(Foo(Int32 | String)).new # => Foo(Int32 | String)
bar2 Foo(Bar(Int32 | String)).new # => Bar(Int32 | String)
bar2 Bar(Bar(Int32 | String)).new # => Bar(Int32 | String)
# bar2 Foo(Foo(Int32)).new
# bar2 Bar(Foo(Int32)).new
# bar2 Foo(Bar(Int32)).new
# bar2 Bar(Bar(Int32)).new

bar3 Foo(Foo(Int32 | String)).new # => (Int32 | String)
bar3 Bar(Foo(Int32 | String)).new # => (Int32 | String)
bar3 Foo(Bar(Int32 | String)).new # => (Int32 | String)
bar3 Bar(Bar(Int32 | String)).new # => (Int32 | String)
bar3 Foo(Foo(Int32)).new          # => Int32
bar3 Bar(Foo(Int32)).new          # => Int32
bar3 Foo(Bar(Int32)).new          # => Int32
bar3 Bar(Bar(Int32)).new          # => Int32

With strict semantics, the expected results are:
foo Foo(Foo(Int32 | String)).new # okay
foo Bar(Foo(Int32 | String)).new # okay
# foo Foo(Bar(Int32 | String)).new
# foo Bar(Bar(Int32 | String)).new
# foo Foo(Foo(Int32)).new
# foo Foo(Bar(Int32)).new
# foo Bar(Foo(Int32)).new
# foo Bar(Bar(Int32)).new

bar1 Foo(Foo(Int32 | String)).new # => Foo(Foo(Int32 | String))
bar1 Bar(Foo(Int32 | String)).new # => Bar(Foo(Int32 | String))
# bar1 Foo(Bar(Int32 | String)).new
# bar1 Bar(Bar(Int32 | String)).new
# bar1 Foo(Foo(Int32)).new
# bar1 Bar(Foo(Int32)).new
# bar1 Foo(Bar(Int32)).new
# bar1 Bar(Bar(Int32)).new

bar2 Foo(Foo(Int32 | String)).new # => Foo(Int32 | String)
bar2 Bar(Foo(Int32 | String)).new # => Foo(Int32 | String)
bar2 Foo(Bar(Int32 | String)).new # => Bar(Int32 | String)
bar2 Bar(Bar(Int32 | String)).new # => Bar(Int32 | String)
# bar2 Foo(Foo(Int32)).new
# bar2 Bar(Foo(Int32)).new
# bar2 Foo(Bar(Int32)).new
# bar2 Bar(Bar(Int32)).new

bar3 Foo(Foo(Int32 | String)).new # => (Int32 | String)
bar3 Bar(Foo(Int32 | String)).new # => (Int32 | String)
# bar3 Foo(Bar(Int32 | String)).new
# bar3 Bar(Bar(Int32 | String)).new
bar3 Foo(Foo(Int32)).new          # => Int32
bar3 Bar(Foo(Int32)).new          # => Int32
# bar3 Foo(Bar(Int32)).new
# bar3 Bar(Bar(Int32)).new

Indeed, under strict matching, Foo(Foo(Int32 | String)) and T forall T <= Foo(Foo(Int32 | String)) should accept the same types. But note that bar3's behavior also changes, because the inner Foo(T) in the restriction is no longer implicitly covariant.


Install chaincode error - SDK Cannot find ORG

cd ./scripts node install_chaincode.js
results in this error
info: First we enroll /Users/nikhilgupta/fabric/marbles/utils/connection_profile_lib/parts/org.js:102 		throw new Error('Cannot find org.', orgName); 		^ Error: Cannot find org.
when user is trying to install marbles on his local machine, and the fabric-samples are not installed in the $HOME directory

Hi Nikhil,
I am also facing the same issue. Did you find a solution?

Hi Nikhil & varshithr,
I am also facing the same issue. Did you find a solution?

If your fabric network was created from fabric samples, verify the path of checked out fabric sample project directory in marbles/config/connection_profile_local.json. Incorrect file path in client and organizations config could cause the above issue.
"client": {
        "organization": "Org1MSP",
        "credentialStore": {
            "path": "/$HOME/fabric-samples/fabcar/hfc-key-store"
        }
    },
"organizations": {
        "Org1MSP": {
            "mspid": "Org1MSP",
            "peers": [
                "fabric-peer-org1"
            ],
            "certificateAuthorities": [
                "fabric-ca"
            ],
            "x-adminCert": {
                "path": "/$HOME/fabric-samples/basic-network/crypto-config/peerOrganizations/org1.example.com/users/Admin<EMAIL_ADDRESS>            },
            "x-adminKeyStore": {
                "path"<EMAIL_ADDRESS>            }
        }
    },

@raghurok Hello,
I am also facing same issue and i have also got the locations correct, still no luck, can you please help?

Hi Nikhil & varshithr & javaer2012,
I am also facing the same issue. Did you find a solution?


Possible to create shortcuts??

Tried to create shortcuts for commands such as !p instead of !play, !q instead of !queue, !s instead of skip etc. etc. (I've changed the prefix to !).
I can't see any way to create these shortcuts. I tried to see if the preset feature would allow that, but I must be getting something wrong with the syntax, or the feature doesn't allow it.
I thought it would've been as simple as "!preset play !as p" (again, I've changed both prefix to !). But it tells me preset does not have a variable.

If your preset takes command input you need the %s formatter, so it's !preset play %s !as p, that means input is not necessarily appended at the end, for example you could do !preset "add %s !to favs" !as fav, to then be able to type fav !album meteora to add album meteora to playlist favs.


text not verticaly centered on polyline

Hello.
I have a bug on the demo page in latest version of Chrome, Firefox and IE

Thank you for this plugin.

Try to add 'vertical-align': 'middle' to the CSS options

vertical-align doesn't seem to work. dy property (https://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/dy) works though. Not sure why it needs to add few pixels, but it helps.


gotestwaf: 0.4.15 -> 0.4.16

Diff: https://github.com/wallarm/gotestwaf/compare/refs/tags/v0.4.15...v0.4.16
Changelog: https://github.com/wallarm/gotestwaf/releases/tag/v0.4.16
Description of changes

Things done

Built on platform(s)

[ ] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
24.05 Release Notes (or backporting 23.05 and 23.11 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[ ] Fits CONTRIBUTING.md.

Add a :+1: reaction to pull requests you find important.

Result of nixpkgs-review pr 297371 run on x86_64-linux 1

1 package built:

gotestwaf


Xcode 13 b4 - SwiftPackageManager App Extensions

Using latest version of FitAnalytics-WebWidget-iOS and Xcode 13.0 beta 4 the App Extensions targets don't compile due:
'sharedApplication' is unavailable: not available on iOS (App Extension) - Use view controller based solutions where appropriate instead.

and
'openURL:' is unavailable: not available on iOS (App Extension)

Swift Packages
Resolved in Xcode 13 Beta 5
You don’t need to annotate code as unavailable for use in application extensions if it references APIs annotated as unavailable for use in application extensions. This reverts a requirement that Xcode 13 Beta 3 introduced. (80615922) (FB9332020)


Extract Cadence templates

Closes #185 #224
Description
This PR extracts Cadence templates to a separate repo for SDKs. It then creates a module that embeds those templates and references them from SDK. More examples were added for templates.

For contributor use:

[x] Targeted PR against master branch
[x] Linked to Github issue with discussion and accepted design OR link to spec that describes this work.
[x] Code follows the standards mentioned here.
[x] Updated relevant documentation
[x] Re-reviewed Files changed in the Github PR explorer
[x] Added appropriate labels

I want to get this merged because it's blocking secure Cadence testing as seen here https://github.com/onflow/flow-go-sdk/pull/276#issuecomment-1104077881
Help would be appreciated from code owners cc @janezpodhostnik @turbolent

This looks good to me, but can we rename [remove-account-key.cdc](https://github.com/onflow/sdks/blob/main/templates/cadence/remove-account-key.cdc) to revoke-account-key.cdc

Good point.

This looks good to me, but can we rename [remove-account-key.cdc](https://github.com/onflow/sdks/blob/main/templates/cadence/remove-account-key.cdc) to revoke-account-key.cdc

Fixed


When will BCH be added back?

If there's a specific bug you're seeing, you can let us know but BCH has been supported since day 1. The server was updated to use BCHC as part of https://github.com/PayButton/paybutton-server/releases/tag/3.0.0 back in August.

Thanks -- unclear based on the readme and website. Only mentions XEC. Thank you for the clarification.

If there's a specific bug you're seeing, you can let us know but BCH has been supported since day 1. The server was updated to use BCHC as part of https://github.com/PayButton/paybutton-server/releases/tag/3.0.0 back in August.

Looking again, where is BCH supported on the website? Only XEC is listed even to create a button. The docs mention BCH as an option but the paybutton website does not have it as an option. Thanks


v4 barcodes

Hello,
is there any information on fluent V4 available?
Are you going to add this?
I found this: https://notarocketscientist.xyz/posts/2023-07-02-pip-seq-v4-update/
https://twitter.com/XiChenUoM/status/1671400417350017025
thank you very much,
ido

Hey @idot
I think that if the v4 uses the same barcodes as the v3 or if the construct is the same besides just that variable number of reads at the beginning then this tool should work for it.
I don't have any v4 reads to test it on - but if you have some feel free to run it and report back what the fraction of reads you were able to convert we can check.


Revert "Merge pull request #100 from beagles/add-python-unbound"

This reverts commit 66943106e27b63304ccca3e9ec11b0ce9f376bb8, reversing changes made to 68057a919690ec48a79114528d03a2c5e8a77e98.

wrong revert


Execute external program or script on succesfully renewals

Would be very useful the possibility to run an external program or a script at the renewal of the certificate occurred.
I'm thinking of services not covered by Letsencrypt clients such as Microsoft Exchange or physical devices such as firewalls, NAS etc...
Best Regards

I just added that into the source code yesterday. See the wiki for how to use it.

Would it be possible to use this with regular IIS renewals too?
In my imagined scenario, two sites exist (set up in IIS before trying to run Lets Encrypt):

Real Site - Available 24/7, only one binding for 443 / HTTPS required
Lets Encrypt Challenge Site - One binding for 80 / HTTP,  usually stopped, Virtual Directory for .well-known that maps to .well-known on real site, everything other than that Virtual Directory set to forward to real site (just in case)

Awesome Process:

Run script to start port 80 Lets Encrypt Challenge site
Do the regular challenge
Create / renew cert on Real Site
Run script to stop port 80 Lets Encrypt Challenge site

This way, the port 80 site is basically only started / answering long enough to do the challenge then goes away.

O yes, when i check 2 days ago the page not exist!!
Very nice! I'll wait for a binary release to testing!!

Would it be possible to use this with regular IIS renewals too?

+1 me too
Another scenario:
Exchange standalone mail server

IIS with Exchange OWA up and running, which manage renewal
Import certificate in different location store for Exchange service like SMTP, POP3, IMAP

Right now the Manual, FTP, and WebDav plugins all support the script in the latest source code. They also support it for renewal. I didn't think about adding it after the IIS plugin, but that would be a good idea.
However, I would like some feedback from people testing it on the existing plugins before I add it to the IIS plugin. It would be nice to know that the code is good before it's added into the IIS plugin so it doesn't cause more problems.

If you can provide a compiled version I could do some tests. Off course with Manual plugins

I probably won't have time to do another pre-release before i'll do the next full release so it will probably be released untested.
If you want to compile it, here are the steps.

For the generic plugin I have a similar use case.

Startup IIS-80
Update the Certificate&key
Store the Certificate&Key in the machine Certificate store
Stop IIS-80
Insert the Certificate thumbprint into a particular XML file
Give access to the Key to a particular user or group (eg: Network Service or DOM\ServiceUser).
Restart a Service. (Or schedule a restart for 3am)
Delete expired certificates.

Notes:
The IIS-80 could quite easily be a web service provided by some other means (eg: WCF)  as the port will be empty.
I want to keep all unexpired certificates so that the old certificate is, probably, still around until the next Windows Update reboot.

That can be done with using a custom install script. You will also want to use --keepexisting  to not delete old certs.

Oh, does "--keepexisting" still delete dead certificates? The Wiki seems to say it turns off the delete completely.

It turns off the deletion of old certs and the delete and recreate of existing HTTPS bindings.
It will keep any old certs in the cert store and it will just update existing existing HTTPS bindings.

If anyone wants to see this enhancement, add your +1 (via add your reaction) to the first comment of this issue.

Hi, I updated the program to version 1.90 because I need the script to run on the issuance of the certificate, that works properly!
Now I only have a doubt, I used the manual plugins:
letsencrypt.exe --manualhost webmail.mywebsite.com --webroot C:\inetpub\wwwroot --script C:\letsencrypt\myscript.bat --scriptparameters "{5}"
which automatically creates renewal in task scheduler:
c:\letsencrypt\letsencrypt.exe --renew --baseuri "https://acme-v01.api.letsencrypt.org/"
but when will do the renovation also will launch the script ?? how does? that there is not written anywhere? or do I have to change the task and add -script parameters?
You could confirm that the start of the script does not work with IIS plugins?
It is not very clear in the wiki :)
best regards

Right now the manual plugin does not run any renewals so it won't rewnew, see #195.
The wiki clearly states that the script only works with the Manual, FTP, or WebDav plugins.
The app saves the script and the script parameters in the registry with the rest of the renewal information right now. That will be moved in #146.

Ping to #398 - this shows that it might be necessary to chain multiple post-authorization actions.


[Bug] Fix integer dtype check

Description
Correct this line
https://github.com/microsoft/nni/blob/d68691d065a44f0e41e9711f941c2afbc2d3925b/nni/compression/pytorch/utils/utils.py#L58
to use torch_integer_dtype
Otherwise, for model which uses torch.int32 simple compression fails:
ModelSpeedup(
  model,
  [torch.randn(3, 25, 16), torch.randint(1, 25, size=(3,), dtype=torch.int32)],
  masks
).speedup_model()

Test Options

[ ] fast test
[ ] full test - HPO
[ ] full test - NAS
[ ] full test - compression

Checklist

[ ] test case
[ ] doc

How to test

Any comments? This is really simple update

LGTM


Document property_list_changed_notify

Godot version:
v3.1.alpha.calinou.d304228
OS/device including version:
Windows 10
Issue description:
There should be a way to force the redraw/refresh of the inspector when a property is changed (value is set). For example imagine working in a EditorInspectorPlugin that whenever an exported boolean is changed in a node the plugin should hide another exported property from the inspector! Right now the node must be unselected and reselected for the inspector to redraw!
I'm not saying it should be refreshed everytime as it could be bad for performance but there should be an option for plugin developers to force it! ;)
for example:
_redraw_inspector();
Steps to reproduce:
node with this code:
tool
extends Node
class_name TestNode

export(bool) var use_curve : bool = true;

export(Curve) var growth_curve : Curve
export(int) var fixed_value : int

plugin for inspector with this code:
extends EditorInspectorPlugin

func can_handle(object):
	if object is TestNode:
		return true;

func parse_property(object, type, path, hint, hint_text, usage):
	match path:
		'growth_curve':
			return !object.use_curve
		'fixed_value':
			return object.use_curve

Does property_list_changed_notify work for you?

It does work! I didn't know property_list_changed_notify() could do this! The documentation is not accurate about that!

Duplicate of #21009, which was resolved today.


Fixed ugb.sn to ugb.edu.sn - Université Gaston Berger Saint-Louis

UGB emails are like<EMAIL_ADDRESS>and not<EMAIL_ADDRESS>Feel free to check with mine<EMAIL_ADDRESS>

@huntingorion Thank you for the update. Pull request merged. By the way, the university website used to be at the address http://www.ugb.sn/ but now it is not accessible. You may wish to check with the university IT department whether they can help.


Improvement for k8s.io/docs/tasks/administer-cluster/configure-upgrade-etcd/

We should have a small article on how to change out weak ciphers between Kube-Apiserver and ETCD.

I I think  it is good idea to  have an article on how to change out weak ciphers between Kube-Apiserver and ETCD.

Page : https://kubernetes.io/docs/tasks/administer-cluster/configure-upgrade-etcd/
/language en
/sig docs

/priority awaiting-more-evidence

Closing this issue as it has been inactive for a long time. If you find this is important you can reopen it again.

/close


awesome-community repository

Hello, this patch adds a curated list of awesome programming, development, technical support and discussion channels, groups, communities and similar resources.
Thanks for considering merging it to this repository.

Thanks Peter!


[Event Request] Add New Event in Codeunit 99000810 in Function LoadCapForward

Add New Event in Codeunit 99000810 in Function LoadCapForward
Add new local variable IsHandled(Boolean)

LOCAL [IntegrationEvent] OnBeforeLoadCapForward(TimeType : 'Setup Time,Run Time,Wait Time,Move Time,Queue Time';VAR ProdStartingDate : Date;VAR ProdStartingTime : Time;VAR PlanningRoutingLine : Record "Planning Routing Line";VAR IsHandled : Boolean)

Thanks for reporting this. We agree, and we’ll publish a fix asap, either in an update for the current version or in the next major release. We will update this issue with information about availability.

Thanks for reporting this. We agree, and we’ll publish a fix asap, either in an update for the current version or in the next major release. We will update this issue with information about availability.

Thanks for reporting this. We agree, and we’ll publish a fix asap, either in an update for the current version or in the next major release. We will update this issue with information about availability.

Thanks for reporting this. We agree, and we’ll publish a fix asap, either in an update for the current version or in the next major release. We will update this issue with information about availability.


is there any availability to create group in aoc and map into workspace using CLI.

when i tried to create group on AOC using below command it says argument missing. how do we find out the important argument for sub-commands ?
ascli aoc admin resource group create --name=prabhu-test
ERROR: Argument: missing argument (single): creation data (Hash)
Use option -h to get help.
when i  use -h, it showing the default options, how to find out this specific actions arguments ?
ascli aoc admin resource group create -h
if possible can you check and let me know below are the actions can be done using this aoc CLI method?
creating groups using ascli?
mapping folders from nodes to specific workspace using ascli?
mapping group permissions to the specific folder using ascli?

New resources (users, groups, workspaces, etc..) can be created using a command like:
<%=cmd%> aoc admin res create <resource type> @json:'{<...parameters...>}'

Some of the API endpoints are described here. Sadly, not all.
Nevertheless, it is possible to guess the structure of the creation value by simply dumping an existing resource, and use the same parameters for the creation.
<%=cmd%> aoc admin res group show 12345 --format=json

{"created_at":"2018-07-24T21:46:39.000Z","description":null,"id":"12345","manager":false,"name":"A8Demo WS1","owner":false,"queued_operation_count":0,"running_operation_count":0,"stopped_operation_count":0,"updated_at":"2018-07-24T21:46:39.000Z","saml_group":false,"saml_group_dn":null,"system_group":true,"system_group_type":"workspace_members"}

Remove the parameters that are either obviously added by the system: id, created_at, updated_at or optional.
And then craft your command:
<%=cmd%> aoc admin res group create @json:'{"description":"test to delete","name":"test 1 to delete","saml_group":false}'

If the command returns an error, example:
+----+-----------------------------------------------------------------------------------+
| id | status                                                                            |
+----+-----------------------------------------------------------------------------------+
|    | found unpermitted parameters: :manager, :owner, :system_group, :system_group_type |
|    | code: unpermitted_parameters                                                      |
|    | request_id: b0f45d5b-c00a-4711-acef-72b633f8a6ea                                  |
|    | api.ibmaspera.com 422 Unprocessable Entity                                        |
+----+-----------------------------------------------------------------------------------+```

Well, remove the offending parameters and try again.

That being said, to create a group, then add it to a worksapce and add users or groups to it:

Create the group and take note of id

ascli aoc admin res group create @json:'{"name":"group 1","description":"my super group"}'

Group: 11111

Get the workspace id

ascli aoc admin res workspace list --query=@json:'{"q":"myworkspace"}' --fields=id --format=csv --display=data

Workspace: 22222

Add group to workspace

ascli aoc admin res workspace_membership create @json:'{"workspace_id":22222,"member_type":"user","member_id":11111}'

Get a user's id

ascli aoc admin res user list --query=<EMAIL_ADDRESS>--fields=id --format=csv --display=data

User: 33333

Add user to group

ascli aoc admin res group_membership create @json:'{"group_id":11111,"member_type":"user","member_id":33333}'

Note that the group_membership resource will be available only post 4.7.0

@laurent-martin  Thanks for guiding me on this, this will really help me to find out more on this CLI based tasks.
also can you post some of example of required argument on creating "shared_create" resource type.
when i tried using below parameter, it says missing argument.
ascli aoc admin res workspace --id=83893 shared_create @json:'{"name":"/test-cli-3", "node_id":"19292", "directory":"/test-cli-3", "create_directory":"false" }'
once again thanks for your valuable time. really appreciate you.

Hi,
Shared folder creation is not yet supported in ascli, but it will come soon.

Hi,
How do we upload files and folders using this CLI, i tried all the below commands using files resource it says its not available.
ascli aoc files upload --to-folder=/testsrc testfile.bin
ascli aoc files upload -N --to-folder=/ testfile.bin --link=my_aoc_publink_folder
ascli aoc files upload Test.pdf --transfer=node --transfer-info=@json:@stdin:
ascli aoc files upload --to-folder=/testsrc testfile.bin
ERROR: Rest: The resource you were looking for does not exist
code: not_found
request_id: 2fd285c4-8c09-44d6-b1f0-db172a27e8f8
api.ibmaspera.com 404 Not Found
ERROR: Argument: unprocessed values: ["upload", "testfile.bin"]
also i tried using below command its getting error. not sure what is exact syntax for this command.
ascli  aoc admin res node --id=xxxxxxxx--secret=xxxxxxxv4 upload
can you provide any other examples with command for upload and download using this CLI ?

The minimalistic command like:
ascli aoc files upload 'faux:///10m?10m'

will upload a file named 10m directly in the home of the authenticated user in the default workspace of this user.
To upload a real file, give the path of a real file
To upload to a subfolder , e.g, abc, provide option --to-folder=abc
Note: when showing command, please use triple ticks to have formated text.

Actually here the requirement is,
I wanted to migrate my on-prem data to aspera on cloud, which option i can use to upload/transfer files from on-prem to AOC,
which you mentioned is client/user based upload examples, but here i wanted to transfer my 1TB data from on-prem to AOC node.
is it possible can we use this CLI to migrate my data ?

Yes, sure it is possible, several ways are made available:
1- using "Aspera Connect Client" : https://www.ibm.com/aspera/connect/
You can connect your AoC account and then perform transfers with a simple drag and drop
Note that this option provides the possibility to "sync" a folder.
2- using the AoC web interface and Connect: drag and drop the folder in the browser and transfer will start
3- using this CLI, you can send a whole folder: ascli aoc files upload /path/to/folder
This requires proper configuration (easiest is to use the wizard).

@laurent-martin  any update on this ?

Well, run with additional option --log-level=debug
and check the error message

version 4.8 was released


Update unauthenticated Navbar

Navbar should be structured as follows
Left hand side (LHS):

SSEMMI (/)

Right hand side (RHS)

Sign-up
Login

Add a "Learn more" button on the information box that links to the About page.


add a new bug report template

Added new .yml files as issue templates instead of the previous .md files

Thanks @thecyberera


Reset Reload SBE side selection test

[x] Boot system, Verify boot count at 2, inject watchdog fail
[x] Let system auto reboot itself, Verify boot count at 1, inject watchdog fail
[x] Let system auto reboot itself, Verify boot count at 0 and SBE side is on side 1
[x] Easy way to verify sbe side is look at journal for “Setting SBE seeprom side to <0/1>”
If you want to get advanced you could use pdbg to read the cfam reg and look at the bit.
pdbg -p0 getcfam 0x2808” and check for bit 17

This is needed for RR testing , This input is from @geissonator
@SrideviRamesh  Let me know if u need help here..

You did this test last time, was it through actual error injection or via watchdog timer timedout to mimic this one @SrideviRamesh  ?

Already tracked here https://github.com/openbmc/openbmc-test-automation/issues/904
closing it

Re-opening so that @charleshofer can help us out here

[x] Working on pdbg -p0 getcfam 0x2808” execution .. while @charleshofer works on the framework

Finally have this in https://gerrit.openbmc-project.xyz/#/c/7433/