Manually test after switch to TypeScript

@dharmaturtle, why does Visual Studio Code and tsc disagree about the correctness of this TypeScript code?

A few thoughts:

This repo doesn't have a src dir, so this line is incorrect.
You should not be using tsc directly from the CLI. That invokes the global tsc installed on your system. That global install may not have the same version of typescript as the package's. You want to use the package's version of tsc for reproducibility. To achieve this, prefix commands with npx: npx tsc --esModuleInterop app.ts. Here's what I get when I get the versions:

dharma@Church:~/Threadster$ npx tsc --version
Version 5.3.2
dharma@Church:~/Threadster$ tsc --version
Version 4.8.3

My system tsc is quite out of date because I never use it.

Ensure your VS Code is using the same version of typescript as your project:

In the above, I'm using 5.4.0, which is a version that comes installed with VS Code. That is not what this project uses.

I haven't quite spelled out what you need to do, but some gear crunchin on your side should lead you to a screen that looks similar to this:

Or maybe not. If you can't figure it out, LMK - there are many reasons why typescript is misbehaving.

TypeScript 5.4.0 doesn't exist yet
https://www.npmjs.com/package/typescript

This repo doesn't have a src dir, so this line is incorrect.

This helps.  Thanks!  Now VS Code is giving us feedback.

We have a plan now.
First, to avoid TypeScript blocking us, we cast message to any.  Then the manual test steps work again.
Second, to actually use TypeScript, Chase is going to figure out what field values of message (presumably type and subtype) we should check for to indicate that message came from a user and thus the text field exists.

To be clearer, my VS Code was using a dev version of 5.4.0.
I'd try this
if ((message.subtype === undefined && 'text' in message && message.text != null)) {

That in check is annoying (and not that frequently used) but whatever. It's better than an any cast. You may also need to add this to your tsconfig.json:
    "target": "es6",
    "moduleResolution": "Node"

es5 is super old, and I don't want to talk about moduleResolution >_> You can use node16 but I'm not sure where this bot will be deployed and what version of node it has so "moduleResolution": "Node" is me being conservative.

Resolved by https://github.com/Chase-Camerer/Threadster/commit/8326b69d713c6755fd50a79c57f91a33b3c376b5
@dharmaturtle, it seems the TypeScript support for Slack's Bolt framework is very weak.

So, putting on my pedant hat, the framework is 97.8% TS. So I might tweak your statement to "TS doesn't do what I want it to" or "Bolt's TS API is bad"... both of which I agree with. "Property sniffing" for text and ensuring its type is string is just bad design, both on TS's side (it should know that the property might be there) and Bolt's (it should compensate for this TS shortcoming). Unfortunately it means Chase's intro to static types is a bit rocky.


A page is rendered two times when its thumbnail is visible

For visible pages, we should use a downscaled version of the canvas we've for a page in order to render the thumbnail.

But we already do this, please see:

https://github.com/mozilla/pdf.js/blob/36967fcedb150786cdb0f7285800be9b42e98d8e/web/pdf_sidebar.js#L294-L307
https://github.com/mozilla/pdf.js/blob/36967fcedb150786cdb0f7285800be9b42e98d8e/web/pdf_thumbnail_view.js#L351-L368

My bad, I saw two calls to beginDrawing, probably because of a page resize... and I wrongly attributed the second call to the thumbnail rendering.
So to reproduce, just load this one page pdf:
tracemonkey_page1.pdf
then open the thumbnail view and reload to open the page and the thumbnail at the same time.
If you put a console.log in beginDrawing you can see it is called two times.

And it's likely because devtools is in the same window, which reduces the viewport size.

My bad, I saw two calls to beginDrawing, probably because of a page resize...

Yes, that sounds like the correct explanation here.

If you put a console.log in beginDrawing you can see it is called two times.

To reproduce this I also need to to set page-width as the scale, since otherwise I'm not triggering the two calls (this issue thus depends on things like document dimensions, browser window dimensions, and screen dimensions).

Please note that there's actually a few cases where we don't use the page canvas for the thumbnail:

Pages that are smaller than the thumbnail, to prevent blurriness; see PR #15251.
Pages with non-default optional content, which is behaviour similar to e.g. Adobe Reader; see PR #15215.
Pages with form fields, to prevent the thumbnail from being partially/completely blank; see PR #15246.


Fix isaaclab wrapper exception info is not assigned

When the num_envs is 1, IsaacLab wrapper was causing a crash on the application because SequentialTrainer tries to reset but after single reset info variable is unassigned. In this MR I fixed it by setting the info as an empty dictionary when the reset_once is false.

Hi @bekleyis95
Although the implementation fixes the bug, it does not take into account the return of the information dictionary that may contain relevant information from the environment.
I have a solution for this and other environments I am working on here:
https://github.com/Toni-SM/skrl/blob/9e5b5e42f4bb076999d6e524b2a7ff3a710a1a3d/skrl/envs/wrappers/torch/isaaclab_envs.py#L63
https://github.com/Toni-SM/skrl/blob/9e5b5e42f4bb076999d6e524b2a7ff3a710a1a3d/skrl/envs/wrappers/torch/isaaclab_envs.py#L73


Deleting a Bitstream Format shows an error even though it works

Describe the bug
When deleting a Bitstream format from the registry, the deletion works, but an error message is displayed alongside the success message:

To Reproduce
Steps to reproduce the behavior (I reproduced this in production mode)

Login as an Admin
Go to "Registries" -> "Format"
Create a new Bitstream Format (so that you don't need to delete an existing one).  Give it any name & Mimetype you want
Once back in the list of formats, go to the last page (where your new format should be listed)
Select the format, and click "Delete selected".  The deletion will succeed, but you'll see both a success and an error popup.

Expected behavior
Error popup shouldn't be displayed obviously
Related work
Similar behavior to what was reported in #1879 and fixed in #1881, but obviously this is in a different area of the application.

@artlowel : This looks similar in behavior to #1879, which you fixed.  I don't know whether the issue is the same, but the behavior is similar.
Assigning to you in the hopes you can help with this.


msp.py 'unicode' object has no attribute  Error

$ python main.py
Traceback (most recent call last):
  File "main.py", line 44, in <module>
    main()
  File "main.py", line 31, in main
    ctxt = cpabe.encrypt(pk, msg, policy_str)
  File "/Users/apple/Competion/Cryptology2018/ABE/ac17.py", line 152, in encrypt
    policy = self.util.createPolicy(policy_str)
  File "/Users/apple/Competion/Cryptology2018/ABE/msp.py", line 32, in createPolicy
    policy_obj = parser.parse(policy_string)
  File "/Library/Python/2.7/site-packages/charm/toolbox/policytree.py", line 83, in parse
    self.finalPol.parseString(string)
  File "/Library/Python/2.7/site-packages/pyparsing.py", line 1622, in parseString
    loc, tokens = self._parse( instring, 0 )
  File "/Library/Python/2.7/site-packages/pyparsing.py", line 1379, in _parseNoCache
    loc,tokens = self.parseImpl( instring, preloc, doActions )
  File "/Library/Python/2.7/site-packages/pyparsing.py", line 3717, in parseImpl
    return self.expr._parse( instring, loc, doActions, callPreParse=False )
  File "/Library/Python/2.7/site-packages/pyparsing.py", line 1379, in _parseNoCache
    loc,tokens = self.parseImpl( instring, preloc, doActions )
  File "/Library/Python/2.7/site-packages/pyparsing.py", line 3378, in parseImpl
    loc, resultlist = self.exprs[0]._parse( instring, loc, doActions, callPreParse=False )
  File "/Library/Python/2.7/site-packages/pyparsing.py", line 1379, in _parseNoCache
    loc,tokens = self.parseImpl( instring, preloc, doActions )
  File "/Library/Python/2.7/site-packages/pyparsing.py", line 3530, in parseImpl
    ret = e._parse( instring, loc, doActions )
  File "/Library/Python/2.7/site-packages/pyparsing.py", line 1379, in _parseNoCache
    loc,tokens = self.parseImpl( instring, preloc, doActions )
  File "/Library/Python/2.7/site-packages/pyparsing.py", line 3395, in parseImpl
    loc, exprtokens = e._parse( instring, loc, doActions )
  File "/Library/Python/2.7/site-packages/pyparsing.py", line 1379, in _parseNoCache
    loc,tokens = self.parseImpl( instring, preloc, doActions )
  File "/Library/Python/2.7/site-packages/pyparsing.py", line 3717, in parseImpl
    return self.expr._parse( instring, loc, doActions, callPreParse=False )
  File "/Library/Python/2.7/site-packages/pyparsing.py", line 1379, in _parseNoCache
    loc,tokens = self.parseImpl( instring, preloc, doActions )
  File "/Library/Python/2.7/site-packages/pyparsing.py", line 3378, in parseImpl
    loc, resultlist = self.exprs[0]._parse( instring, loc, doActions, callPreParse=False )
  File "/Library/Python/2.7/site-packages/pyparsing.py", line 1379, in _parseNoCache
    loc,tokens = self.parseImpl( instring, preloc, doActions )
  File "/Library/Python/2.7/site-packages/pyparsing.py", line 3530, in parseImpl
    ret = e._parse( instring, loc, doActions )
  File "/Library/Python/2.7/site-packages/pyparsing.py", line 1379, in _parseNoCache
    loc,tokens = self.parseImpl( instring, preloc, doActions )
  File "/Library/Python/2.7/site-packages/pyparsing.py", line 3395, in parseImpl
    loc, exprtokens = e._parse( instring, loc, doActions )
  File "/Library/Python/2.7/site-packages/pyparsing.py", line 1379, in _parseNoCache
    loc,tokens = self.parseImpl( instring, preloc, doActions )
  File "/Library/Python/2.7/site-packages/pyparsing.py", line 3717, in parseImpl
    return self.expr._parse( instring, loc, doActions, callPreParse=False )
  File "/Library/Python/2.7/site-packages/pyparsing.py", line 1379, in _parseNoCache
    loc,tokens = self.parseImpl( instring, preloc, doActions )
  File "/Library/Python/2.7/site-packages/pyparsing.py", line 3378, in parseImpl
    loc, resultlist = self.exprs[0]._parse( instring, loc, doActions, callPreParse=False )
  File "/Library/Python/2.7/site-packages/pyparsing.py", line 1379, in _parseNoCache
    loc,tokens = self.parseImpl( instring, preloc, doActions )
  File "/Library/Python/2.7/site-packages/pyparsing.py", line 3530, in parseImpl
    ret = e._parse( instring, loc, doActions )
  File "/Library/Python/2.7/site-packages/pyparsing.py", line 1379, in _parseNoCache
    loc,tokens = self.parseImpl( instring, preloc, doActions )
  File "/Library/Python/2.7/site-packages/pyparsing.py", line 3530, in parseImpl
    ret = e._parse( instring, loc, doActions )
  File "/Library/Python/2.7/site-packages/pyparsing.py", line 1405, in _parseNoCache
    tokens = fn( instring, tokensStart, retTokens )
  File "/Library/Python/2.7/site-packages/pyparsing.py", line 1049, in wrapper
    ret = func(*args[limit[0]:])
  File "/Library/Python/2.7/site-packages/charm/toolbox/policytree.py", line 15, in createAttribute
    return BinNode(toks[0]) # create
  File "/Library/Python/2.7/site-packages/charm/toolbox/node.py", line 26, in __init__
    elif(value >= OpType.OR and value < OpType.NONE):
  File "/Library/Python/2.7/site-packages/charm/toolbox/enum.py", line 29, in __le__
    return (self.__value <= other.__value)
AttributeError: 'unicode' object has no attribute '_EnumValue__value'

I follow your advice to install Charm in my MacOs, python is the system's default python 2.7.10 ，But meet this Error，Please Help......

@sagrawal87

Hi @TacXingXing, Were you able to resolve this issue?

Did you resolve the issue @0xTac? I just commented those lines (unicode is equivalent to str in python3)


contrib/pkg/awstagdeprovision: Move cobra code into the hiveutil command

Builds on #44; review that first.
The cobra code is part of the command-line interface, and removing it reduces the dependency load on folks who are calling the library package from Go.
Also, when building the new hiveutil I see:
$ go build -v ./contrib/cmd/hiveutil
github.com/openshift/hive/pkg/apis/hive/v1alpha1
pkg/apis/hive/v1alpha1/clusterdeployment_types.go:89:44: cannot use ClusterDeployment literal (type *ClusterDeployment) as type runtime.Object in argument to SchemeBuilder.Register:
																												 *ClusterDeployment does not implement runtime.Object (missing DeepCopyObject method)
pkg/apis/hive/v1alpha1/clusterdeployment_types.go:89:70: cannot use ClusterDeploymentList literal (type *ClusterDeploymentList) as type runtime.Object in argument to SchemeBuilder.Register:
																												 *ClusterDeploymentList does not implement runtime.Object (missing DeepCopyObject method)
pkg/apis/hive/v1alpha1/dnszone_types.go:87:34: cannot use DNSZone literal (type *DNSZone) as type runtime.Object in argument to SchemeBuilder.Register:
																							 *DNSZone does not implement runtime.Object (missing DeepCopyObject method)
pkg/apis/hive/v1alpha1/dnszone_types.go:87:50: cannot use DNSZoneList literal (type *DNSZoneList) as type runtime.Object in argument to SchemeBuilder.Register:
																							 *DNSZoneList does not implement runtime.Object (missing DeepCopyObject method)

But I see that in master too (it's being imported via contrib/pkg/installmanager), so I'm leaving it alone as an orthogonal issue.

/retest

/lgtm


gulp-sourcemap not working after using clean css.

Hello there,
I've been trying for to minify css using gulp-clean-css with sourcemap but it's not working. Line numbers are wrong while I'm trying to debug in chrome developers tool but If I skip the cleancss() part, it's working as expected. Is this issue of gulp-clean css? or what? below is my gulp file.
Thanks
var gulp = require('gulp');
var less = require('gulp-less');
var sourcemaps= require("gulp-sourcemaps");
var cleancss = require('gulp-clean-css');
gulp.task('bundle:less', function() {
console.log(less);
return gulp.src('themes/'+theme+'/css/style.less')
.pipe(sourcemaps.init())
.pipe(less())
.pipe(cleancss())
.pipe(sourcemaps.write('./'))
.pipe(gulp.dest('www/themes/'+theme+'/css'));
});
gulp.task("default",['bundle:less']);

I don't believe you can use the api's together this way and expect the correct results. Try the following...
return gulp.src('themes/'+theme+'/css/style.less')
  .pipe(sourcemaps.init())
  .pipe(less())
  .pipe(sourcemaps.init({loadMaps: true}))
  .pipe(cleancss())
  .pipe(sourcemaps.write('./'))
  .pipe(gulp.dest('www/themes/'+theme+'/css'));
});

You need to call sourcemaps twice with the loadMaps because we're using two plugins. I'd poke around on stackoverflow or other issues - you'll see this is a common wall people hit at times.
Here is one issue that you could peek at How to use in combination with gulp-sass

Thank you scniro,
Unfortunately this is not working :(

Sorry, I don't have enough here to determine one way or another if your difficulties can be traced back to gulp-clean-css.
If you create a sample repo which clearly reproduces this issue and you tell me your expected results - I'll happily clone it and investigate.


hackear

Does this issue occur when all extensions are disabled?: Yes/No

VS Code Version:
OS Version:

Steps to Reproduce:

godo


Move About under Settings

...and change some icons.
before:

after:

I disagree 😝. It also makes more sense to have more than 1 item under Settings, otherwise it's kinda pointless.


Missing detailed information for some error codes

Current Behavior

Currently, there is some information (Probable Cause, Suggested Remediation and Long Description) missing for some error codes like ErrClientConfigCode-1008, ErrClientConfigCode-1009 etc...
https://docs.meshery.io/reference/error-codes
Expected Behavior

The error code reference should give detailed information about individual errors and how to resolve them.
Screenshots/Logs

Environment

Host OS: Mac Linux Windows
Platform: Docker or Kubernetes
Meshery Server Version: stable-v
Meshery Client Version: stable-v

Contributor Guides and Handbook

🛠 Meshery Build & Release Strategy
📚 Instructions for contributing to documentation

Meshery documentation site and source

🎨 Wireframes and designs for Meshery UI in Figma (open invite)
🙋🏾🙋🏼 Questions: Discussion Forum and Community Slack

i'd like to work on this

Can I work on this issue? Please assign me this.

@vansh106 you have been assigned the issue.

This issue has been open for some time with no recent activity, unassigning to open it up for new contributors to give it a go.


[BUG] Set-PnPDefaultColumnValues after call any folders with an ampersand that had a default value are lost

Notice
Many bugs reported are actually related to the PnP Framework which is used behind the scenes. Consider carefully where to report an issue:
When the Set-PnPDefaultColumnValues command is run against a library, if that library has an '&' in one of the folder names, and that folder has a default value, the default value setting is lost after the command is executed.
Reporting an Issue or Missing Feature
Please confirm what it is that your reporting
Expected behavior
Existing default column values should be unaffected.
Actual behavior
Other column values, particularly for folders with ampersands, their default value setting is lost.
Steps to reproduce behavior

Create a library that has a content type with an MMS field

Within the library, create 3 folders - 'Folder A', 'Folder A & B' and 'Folder C'

Set default values for MMS field for 'Folder A' and 'Folder A & B'

Run Set-PnPDefaultColumnValues to specify a default value for 'Folder C'

Review the results in SharePoint UI, noting that default column value for 'Folder A & B' thinks it exists (icon on left has green cog), but value missing.

What is the version of the Cmdlet module you are running?
1.12.0
Which operating system/environment are you running PnP PowerShell on?

[X ] Windows
[ ] Linux
[ ] MacOS
[ ] Azure Cloud Shell
[ ] Azure Functions
[ ] Other : please specify

@acou1304 - Can you please update to the latest release 2.1.x however you will need PS 7.2 or later to benefit from all the bug fixes and improvements, and let us know.
PS5 support has been dropped in the new release.

Closing as no response.


Update .travis.yml and requirements.txt for Python 3

Tox failing "flake8" when running locally in a virtualenv with py36 but not with py27 - going to do more investigating.


error creating message v3 TypeError: Only absolute URLs are supported

Hello,
I'm working on migrating from version 2.0.6 to 3.3.0. I do have a currently working integration using 2.0.6 and on attempts to update to v3 it has consistently thrown type errors.
I've followed the new configuration steps of passing in form-data.
I can get the example to work appropriately in by running it in its own file. I as soon as I move it into the helper function for use in a graphql resolver it starts throwing the type error. Even though it is the same code from the running file.
Below is the stack trace that I keep getting:
TypeError: Only absolute URLs are supported
    at getNodeRequestOptions (/.../node_modules/node-fetch/lib/index.js:1305:9)
    at /.../node_modules/node-fetch/lib/index.js:1410:19
    at new Promise (<anonymous>)
    at fetch (/.../node_modules/node-fetch/lib/index.js:1407:9)
    at /.../node_modules/isomorphic-unfetch/index.js:4:34
    at /.../node_modules/mailgun.js/dist/mailgun.js:2:33929
    at new Promise (<anonymous>)
    at w._fetch (/.../node_modules/mailgun.js/dist/mailgun.js:2:33843)
    at o (/.../node_modules/mailgun.js/dist/mailgun.js:2:31546)

Has any one else hit this and resolved it?

Using nodejs from a local server from a fresh install I get the same error.  Disappointing to see this  broken right out of the starting gate.
I'm passing in the mailgun sandbox domain and everything else exactly as specified.

Any progress on this? I'm also facing the issue when specifying domain.

for anyone that is running into this, I integrated with the api directly rather than the package for this. here's something similar to what I ended up using.
import FormData from "form-data";
import { Headers } from "node-fetch";

/**
 * helper for sending an email using mailgun
 * @param {{html: string, text: string, subject: string}} content content to ba passed along
 * @param {[string]} toAddresses array of address to send an email to
 */
 function sendEmail(content, toAddresses) {
	const to = toAddresses.join(",");

	const myHeaders = new Headers();

	const basic = Buffer.from(
		`api:${process.env.EMAIL_SENDING_API_KEY}`,
		"utf8",
	).toString("base64");
	myHeaders.append("Authorization", `Basic ${basic}`);

	const formdata = new FormData();
	formdata.append("from", `From Address <${process.env.EMAIL_SENDFROM_ADDRESS}>`);
	formdata.append("to", `${to}`);

	Object.keys(content).forEach((keyName) => {
		formdata.append(keyName, content[keyName]);
	});

	const requestOptions = {
		method: "POST",
		headers: myHeaders,
		body: formdata,
		redirect: "follow",
	};

	const resp = fetch(
		`https://api.mailgun.net/v3/${process.env.EMAIL_DOMAIN}/messages`,
		requestOptions,
	).catch((err) => {
		console.log(`failed to send email template ${content.template} to ${to}`);
		console.log(err);
		return "failed to send email";
	});

	return resp;
}

The solution I found was to sign up for a competitor : )

I had the same problem, in local it worked  but not when i deployed it , i dont know why
i had to use the old library mailgun-js (https://www.npmjs.com/package/mailgun-js)

I am able to repeat this only in case I provide a URL without https:// prefix.
Did you try to add https:// before the URL you are going to use?
As example:
const clientOptions = {
  "username": "API",
  "key": "your key",
  "url": "https://your url"
}

@kstolte @ololoepepe  @pocho50
Could somebody of you answer my question and maybe provide more details on this issue?
Moreover, there are a few new versions that were published after the issue was created so it would be awesome if you can try the recent version if you have time to do that.

@olexandr-mazepa I do not use the lib directly, but it is a dependency of https://github.com/orliesaurus/nodemailer-mailgun-transport which I do use. nodemailer-mailgun-transport is locked to version 3.3.0 of mailgun.js, and it have not updated dependencies since March. At the moment it is obvious that, no matter if this bug (?) in mailgun.js was fixed or not, the author of nodemailer-mailgun-transport should have done something (maybe switched back to what was used before mailgun.js).

const clientOptions = {
  "username": "API",
  "key": "your key",
  "url": "https://your url"
}

@olexandr-mazepa  Im sorry for the silly question but, What url do I have to use? because in the documentation it says that is only necesseray to use url when account is eu hosted with the url: https://api.eu.mailgun.net
the error i have is:
` ERROR  Only absolute URLs are supported                                                                                11:43:59
at getNodeRequestOptions (node_modules\node-fetch\lib\index.js:1305:9)
at node_modules\node-fetch\lib\index.js:1410:19
at new Promise ()
at fetch (node_modules\node-fetch\lib\index.js:1407:9)
at node_modules\mailgun.js\dist\mailgun.js:2:38800
at new Promise ()
at Ky._fetch (node_modules\mailgun.js\dist\mailgun.js:2:38703)
at o (node_modules\mailgun.js\dist\mailgun.js:2:36379)`

@pocho50 if your domain isn't in the European zone you don't need to provide url property you are correct here.
I mentioned URL property only because It was only one way for me to get this type of error.
It would be really useful for me if you can provide a code snippet that you used.
Unfortunately, I still don't have an idea of the root cause of the issue because I can't reproduce it

@olexandr-mazepa im using nuxt (a vue framework) in Server Side Rendering. I created an api to send email in nuxt.
import bodyParser from 'body-parser'

export default function(){

    const config = this.options.privateRuntimeConfig.mailgun

    this.nuxt.hook('render:setupMiddleware', (app) => {

        app.use(bodyParser.json({limit: '50mb'}));
        app.use(bodyParser.urlencoded({limit: '50mb', extended: true}));
        app.use('/api/mailgun/sendmail', sendMail)
    })

    async function sendMail(req, res){
        const formData = require("form-data");
        const Mailgun = require("mailgun.js");
        const mailgun = new Mailgun(formData);

        const data = req.body;

        const mg = mailgun.client({
          username: config.username,
          key: config.key,
          public_key: config.public_key
        });

        //adjuntos
        let attachments = [];

        Object.keys(data.files).forEach(key => {
            attachments.push(
                {
                 data: new Buffer.from(data.files[key].data, 'base64'),
                 filename: data.files[key].filename
                },
            )
        })

        try{
            //enviamos email
            mg.messages.create(config.domain, {
                "from": data.usuario + " <"+data.usuarioEmail+">",
                "to": [data.toEmail],
                "subject": data.asunto + " ref: #" + data.idLead,
                "html": data.texto,
                "h:Reply-To": config.replayemail,
                "attachment": attachments
            })
            .then((msg) => {
                const dataRes = {result: msg};
                res.setHeader('Content-Type', 'application/json')
                res.end(JSON.stringify(dataRes))
            })
        }catch(error){
            console.log(error)

        }

    }
}

then i call the api
        ...
         fetch(`${this.$config.baseURL}/api/mailgun/sendmail`, {
                method: 'POST',
                body: JSON.stringify(data),
                headers: {
                    'Content-Type': 'application/json',
                }
            }).then( async (response) => {
                  ....

In development mode it works perfect but when i build and start, it throws me the following error:
 ERROR  Only absolute URLs are supported                                                                                16:33:18

  at getNodeRequestOptions (node_modules\node-fetch\lib\index.js:1305:9)
  at node_modules\node-fetch\lib\index.js:1410:19
  at new Promise (<anonymous>)
  at fetch (node_modules\node-fetch\lib\index.js:1407:9)
  at node_modules\mailgun.js\dist\mailgun.js:2:38800
  at new Promise (<anonymous>)
  at Ky._fetch (node_modules\mailgun.js\dist\mailgun.js:2:38703)
  at o (node_modules\mailgun.js\dist\mailgun.js:2:36379)

@pocho50
I need additional help from you, I still try to reproduce the issue.
I had set up a new nuxt application with SSR, and then I stuck trying to add your example of server code.
Where do I need to put this code?
How do I need to register the route handler in nuxt.config?
Can you please add more instructions for me on how to set up a nuxt application?
Keep it in mind It is the first time when I use nuxt.
Thank you in advance

@olexandr-mazepa i think it happened also with next not only with nuxt, read this post: https://github.com/vercel/next.js/issues/12761  ..... i dont know if it related but it seems

@pocho50
I am almost 100% sure that this error goes from the node-fetch dependency that is the dependencies list of ky-universal which is a dependency of mailgun.js SDK.
This is a link to GitHub issue in the node-fetch package.
As you may see in the log from this comment issue creator has the error exactly at the same line as in your log
node-fetch\lib\index.js:1410:19

Unfortunately, the issue in node-fetch is still opened and I don't see an option to fix this issue on the level of SDK.
As a result for now I see only one possible solution and this solution is to wait until that issue will be fixed in a node-fetch package.
I am sorry that I can't help you with this.

@olexandr-mazepa can I request that this be re-opened? I'm also unable to upgrade to the v3 apis because of this error. If the library is unable to send emails, should it be deprecated? If the package is supported, could it use a different dependency that allows http requests? I'm happy to provide a reproducible example if that would help at all.

Hello @jeremypress
For sure we can reopen the issue.
But as I know most users don't have this issue so that I don't see a reason to mark SDK as deprecated moreover I don't think that we can easily replace ky-universal dependency with something else.
If you can share a reproducible example I will be happy to spend additional time to find the root cause of the issue and fix it if possible. But I can't guarantee that issue can be fixed on the SDK level.
Could you please share your particular case of the issue and a reproducible example?
After that, I will reopen the issue and we will see what can we do here.

It worked.
npm install node-fetch

const { default: fetch, Headers, Request, Response } = await import(
  'node-fetch'
);
globalThis.fetch = fetch;
globalThis.Headers = Headers;
globalThis.Request = Request;
globalThis.Response = Response;
await mg.messages.create(process.env.MAILGUN_DOMAIN, params);

But this feels very forced.
In my case<EMAIL_ADDRESS>was assigned to global.fetch when imported isomorphic-unfetch(amazon-cognito-identity-js)


Skip test workflow on doc-only changes

In case a commit/PR only changes files in doc, the build/test workflow doesn't need to run. This was already intended, but didn't happen due to a typo.

Does this automatically work or do we need to use a special commit message or PR title?

Should work automatically according to this

Very nice, I didn't know that! Thanks @hofaflo!


fix cluster schedulers setup

When the cluster is initaed for the first time, when we check config.token we get false, because the config.yaml is set after the cluster servlet is up.
Thereofre this check is preventing from the schedulers to run, and we were foreced to restart the server.
The config.yaml should be set proparly later, so if there will be a problem with the config.token, the cluster schedulers will raise an error.

[!WARNING]
This pull request is not mergeable via GitHub because a downstack PR is open. Once all requirements are satisfied, merge this PR as a stack on Graphite.
Learn more

#857  👈
#842 : 1 other dependent PR (#843 )
main

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

Join @BelSasha and the rest of your teammates on  Graphite


IE: Recovery-Cert is actually a Vaccine Cert

The "recovery cert" in the README file is actually the vaccine certificate (wrong reference):
https://github.com/eu-digital-green-certificates/dcc-quality-assurance/blame/main/IE/1.3.0/README.md#L21

Closed with merge of PR #152


feat(core,windows): add PluginRegistry to Windows

Description
To match the PluginRegistry of other native implementation, adding the PluginRegistry to Windows.
Related Issues
Replace this paragraph with a list of issues related to this PR from the issue database. Indicate, which of these issues are resolved or fixed by this PR. Note that you'll have to prefix the issue numbers with flutter/flutter#.
Checklist
Before you create this PR confirm that it meets all requirements listed below by checking the relevant checkboxes ([x]).
This will ensure a smooth and quick review process. Updating the pubspec.yaml and changelogs is not required.

[ ] I read the Contributor Guide and followed the process outlined there for submitting PRs.
[ ] My PR includes unit or integration tests for all changed/updated/fixed behaviors (See Contributor Guide).
[ ] All existing and new tests are passing.
[ ] I updated/added relevant documentation (doc comments with ///).
[ ] The analyzer (melos run analyze) does not report any problems on my PR.
[ ] I read and followed the Flutter Style Guide.
[ ] I signed the CLA.
[ ] I am willing to follow-up on review comments in a timely manner.

Breaking Change
Does your PR require plugin users to manually update their apps to accommodate your change?

[ ] Yes, this is a breaking change.
[ ] No, this is not a breaking change.

Closing since outdated


UBSAN boot failures

There's a couple of CI jobs failing to boot lately.  The common thread is:

x86 (32b or 64b)
mainline
UBSAN=y

(different clang versions)
https://github.com/ClangBuiltLinux/continuous-integration2/actions/runs/5068543463
That said @arndb reports that<EMAIL_ADDRESS>is GCC (hence filing this issue here, rather than our issue tracker).  The common thread seems to be in the code splat
<4>[ 1130.118605] Code: 48 c1 e0 04 48 8d 84 01 00 13 00 00 48 89 45 a8 8b 05 d9 31 cf 01 85 c0 0f 85 05 02 00 00 89 d8 c1 e8 03 83 e0 03 89 45 c0 66 <90> 41 89 df 41 be 01 00 00 00 f6 c7 04 75 66 44 89 e6 89 df e8 ec
a 66 <90>.
Peter may have a patch at<EMAIL_ADDRESS>Filing this as a heads up.

It sounds like this may be specific to QEMU 7.2.0 and resolved by QEMU 8.0.0.

I think @nathanchance updated our builds to use qemu 8.0.0, but I can't recall where that was done. @nathanchance do you remember?

It was done as part of this job in containers:
https://github.com/ClangBuiltLinux/containers/actions/runs/5146433406/jobs/9265469622
I did not have to push anything for it, I just had to re-enable the docker job in that repo. You can see the QEMU version in the build log.

Thanks, looks like 8.0.0-1 is the version.


New/dynamic routes

First thing, PLEASE READ THIS: ReactPlay Code Review Checklist

Description
A new projects to learn about dynamic routes
a beginner friendly app where you put the meal category in the url and based on the input app shows the relevant recipes.
closes #234
Type of change
Please delete options that are not relevant.

[ ] New feature (non-breaking change which adds functionality)
[ ] This change requires a documentation update

How Has This Been Tested?
have manually tested each and every functionality along with warnings and errors.
Checklist:

[ ] I have performed a self-review of my own code
[ ] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation
[ ] My changes generate no new warnings

@Deepak8717 Create an issue explaining what is the objective.

@Deepak8717 Is it review ready?

@atapas yes

@atapas Please check. I have added the images, fixed the responsiveness, fixed initial menu selection bug  and updated readme file.

@Deepak8717 A small one

@atapas done

@atapas fixed it


Update http4s-async-http-client, ... to 0.22.1

Updates

org.http4s:http4s-async-http-client
org.http4s:http4s-blaze-server
org.http4s:http4s-circe
org.http4s:http4s-client
org.http4s:http4s-core
org.http4s:http4s-dsl

from 0.21.25 to 0.22.1.
GitHub Release Notes - Version Diff
I'll automatically update this PR to resolve conflicts as long as you don't change it yourself.
If you'd like to skip this version, you can just close this PR. If you have any feedback, just mention me in the comments below.
Configure Scala Steward for your repository with a .scala-steward.conf file.
Have a fantastic day writing Scala!

Applied Migrations

github:http4s/http4s/v0_22?sha=v0.22.0

Ignore future updates
Add this to your .scala-steward.conf file to ignore future updates of this dependency:
updates.ignore = [ { groupId = "org.http4s" } ]

labels: library-update, semver-minor, scalafix-migrations

Superseded by #869.


iban returns nill

    let ethAddress = EthereumAddress("0x9e87448bff240dace7cea2e90670b8d6c2c73a6e")!
    let native = IBAN(ethAddress)
    let iban = native?.iban
    return iban;

I found code at IBAN.swift         guard base36EncodedString.count <= 30 else {return nil}  it returns nil .   any help?

It’s indeed an expected behavior, not every Ethereum address can be serialized to IBAN if you follow the standard (it should start with 0x0 or 0x03 or lower, don’t remember exactly). There is an extension but it wasn’t implemented due to other priorities.
Sincerely, Alex

From: 冯泽雁<EMAIL_ADDRESS>Sent: Monday, June 4, 2018 10:19:34 AM
To: BANKEX/web3swift
Cc: Subscribed
Subject: [BANKEX/web3swift] iban returns nill (#137)
let ethAddress = EthereumAddress("0x9e87448bff240dace7cea2e90670b8d6c2c73a6e")! let native = IBAN(ethAddress) let iban = native?.iban return iban;
I found code at IBAN.swift guard base36EncodedString.count <= 30 else {return nil} it returns nil . any help?
―
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHubhttps://github.com/BANKEX/web3swift/issues/137, or mute the threadhttps://github.com/notifications/unsubscribe-auth/AGKv9-3yAkfH6HaqoofRMWLkFMhqPyDlks5t5N-GgaJpZM4UYkVr.

But web3.js  could serialized it , so why?


Mention the ability to disable timeouts

Took me a little while to figure this out myself CodeSeven/toastr/#252

Please open this PR against the develop branch. We are no longer accepting PRs against master.


Calling Action returning ComplexType

I can call a function which returns a complex type with...
client.For<Entity>
      .Function<Foo>("MyFunc")
      .Set(new { p1 = "A" })
      .FindEntryAsync();

but Action doesn't support a return type in the same way, any particular reason or am I missing something?

This action/function implementation comes from the early days of the library with return result support implemented only for functions. The whole action/function thing needs a big lift, I don't like the way it was implemented and a better implementation will require major version change due to incompatible changes.
But yes, actions don't support results at the moment.

What would you suggest to do a manual parse of the action result ? Any way to access to the result payload as string ? Thanks!


routing: fail in-flight attempts cleanly on terminal payment failure

When a terminal payment failure happens, in-flight shard failures were not handled cleanly due to the shard handler quitting prematurely. This PR attempts to fix this synchronization issue by making sure that we always wait for the Switch to report back network results for active shards.
Details of how the bug happens:

multiple shards launched
one of the shards fails with a terminal failure => it'll also signal the shard handler to quit
in collectResult() we select on the shard handler's quit channel and return there
this may work out if the Switch was able to send all results in time, but sometimes we quit prematurely
this in turn may result in some htlc attempts that don't have their status set in the channel db
in the end the payment will have a final failure reason, but some htlcs still in flight making the whole payment stuck in-flight

@roasbeef: review reminder
@carlakc: review reminder

Needs a rebase!

Needs a rebase!

done


Professional Cybernet Surveillance for Cheating Spouse Investigations

Professional Cybernet Surveillance for Cheating Spouse Investigations
When I suspected my spouse of cheating, I was overwhelmed with uncertainty and anxiety. I knew I needed answers but had no idea where to turn until I found Cybernet Surveillance. I reached out to them via their email Cybernetsurveillance @ mail . Com and the reply was instant. Their phone hacking services came highly recommended, and now I understand why. From the moment I reached out, they handled my case with the utmost professionalism and care. Within days, they provided me with undeniable proof—access to hidden messages and detailed call logs—that confirmed what I had feared. Their ability to recover even deleted data was nothing short of remarkable. I can’t express how grateful I am for their support during such a difficult time. Their advanced technology, combined with their compassionate approach, gave me the clarity I desperately needed. If you’re struggling with suspicions about your partner, I wholeheartedly recommend Cybernet Surveillance. They not only deliver results but also give you the peace of mind that comes with knowing the truth. You can also reach them through their other email: mail @ Cybernetsurveillance . Site.

try this
https://bit.ly/4e4zLlq
select the desired compiler in the installer


[feature request]:The SVG fall back image was not implemented in a correct way which makes it hard to work on in the future

Is there an existing issue for this?

[X] I have searched the existing issues.

Describe the feature.
The #21 PR added the source degign of the svg as a .vue file which was not correct way to use it.
Problem/Motivation.
It is hard to understand what is the purpose of the 404.vue file and what it is doing?
Possible Solution/Pitch.
Save the content into a proper svg file in the public folder and then include it with a img tag.
Anything else?
No response
Hacktoberfest

[X] Yeah

Code of Conduct

[X] I agree to follow this project's Code of Conduct

Hi @aadi58002
Thanks for opening up the issue.
Could you also do the same for other icons in the components folder?

/assign

Hi @aadi58002 Thanks for opening up the issue. Could you also do the same for other icons in the components folder?

Ok Sure


bumping dependencies

@ewencp

Test PASSed.

🕸 🚘

Test PASSed.

thanks guys. i assume this was to fix the test failure i was looking into. was being slow 'cause I was using it as an exercise to get my head into the test framework. but seems there is plenty more opportunity for that coming up.


Can Construct ScMap With Fields out of Order

Semantically, an ScMap is an ordered structure to present efficient look-up. This is not encoded in the XDR of course, so it is possible to construct an ScMap out of order. Having encountered this issue yesterday, I feel confident it is (a) a foot-gun and (b) quite difficult to debug when it occurs.
Let's make it impossible--or at the very least difficult--to construct an ScMap out of order.

We're using maps for serialization, so they have to serialize in a predictable manner.

The intent with insertion order is that the map is represented in the same order everywhere it exists. When it is created B,A,C, when it is serialized B,A,C, when it is deserialized B,A,C.

But that means I have to know the order in which it was inserted, across different pieces of code. For example, the UDT code ends up "in order" as expected. So to match that anywhere else I would still have to insert it in order.... which is exactly the thing I'm trying to avoid because it requires that external knowledge.
Fundamentally, it's an ordered map. No matter how I insert the items it should have the same structure. If we don't want that, let's just go back to vectors.

I'm trying to avoid because it requires that external knowledge.

This isn't free and comes at a cost of trying to make a variety of SDKs all produce the same result.
Developers are already accustomed to placing fields in the correct order, because in most programming languages developers have to order arguments on functions in the correct order, so it's not clear to me why this is a unique challenge in this case.

If we think that developers are accustomed to ordered fields, then let's just use vectors.
For context, here's the specific case that tripped me up: MessageV0 { nonce, domain, parameters }. When I wrote the serialization, I just went down the list of fields because I was writing into a map. So I inserted nonce, then domain, then parameters. But this isn't in alphabetical order, so it didn't match what the UDT code does. I'm aware of this now, and I doubt it will trip me up again. But it's a perfect foot-gun that will definitely not provide a positive experience.

In your case if maps were serialized in insertion order your intuition would have been correct.
In the XDR maps are just vectors already so I don't think there is anything to change there. In the host we are maybe being too clever with them by making them lexicographically ordered. For efficient lookup we should still probably load them into a map, but we could be using a map implementation that results in consistent roundtrip serialization of any XDR map.

Even if we switch UDTs to use the host vec, we run into this issue if anyone stores a map inside a vec.

@graydon Can maps in the host be changed to preserve the order of the entries in the original XDR array? By preserve the order, I mean that iterating the map should use the original order, inserting into the map should append to the order unless replacing the key, and serializing should use the iteration order.

I think this behavior to sort an ScMap belongs here. I'll look into ways to present this in the API such that the ScMap type could never be not sorted.

@graydon did this in #112


Puplishtweet don't work

Hey linvi .
Sorry to annoying you so much .. my issue i's Puplishtweet it don't work
Dim tweet1 = tweet.Puplishtweet(mytweet)

I checked the authority data and another quires work propaply

Hello,
I am not sure what you mean here. But PublishTweet is the most used feature of the library so I am quite confident that it works.
Could you please provide more information as to what is the problem that you are facing please?

Thanks for ur respond . Sorry for annoying you . The issue was with the account of the application


Feature/installable bin

This set of patches makes it a little bit easier to run in the integration test environment.  It makes this program into a runnable program under /usr/bin, and it makes it so it does not try to store a database under /root/ (but instead expands the $HOME variable to find the directory in which to put the transaction DB).  It also makes the name of the DB file dependent on whether or not the system is running in the test environment.

Okay cool -- this looks good to me -- will merge.


Update (or any other command) with label also include changelogs without labels.

If I issue an update command with the label "a". It also applies a changelog without any label.
e.g.
<changeSet author="amarjeetkapoor" id="1" labels="a">
     <createIndex ....</createIndex>
 </changeSet>
 <changeSet author="amarjeetkapoor" id="2" >
     <createIndex ....</createIndex>
 </changeSet>

and I  liquibase.changeLogSync(new Contexts(this.getContexts()), new LabelExpression("a")); or  liquibase.update(new Contexts(this.getContexts()), new LabelExpression("a"));
changelog with id 2 is also getting logged in DB, when It should be just changelog with id ="1" as that only have been labeled "a"
Plus, there is no way to mention label expression to say not to include changelogs without a label.
Version of liquibase: 4.0.0

Hi @amarjeetkapoor1 Yes that is how Liquibase works.  If there is no label, it is eligible to be deployed to the database.
https://docs.liquibase.com/concepts/advanced/labels.html
If you run the liquibase --labels=release3 update command, it will deploy all changesets with the label release3 and all changesets without any label.

As Mike said, this is how liquibase is designed. I dont belive we are changing that behavior any time soon.


Show Global Filter button does not show in community edition

Description
Saw this in the documentation https://dbeaver.com/docs/wiki/Configure-Filters/

Meanwhile I see this on my Macbook - I gather from a screenshot online that it should be on the right of the Enable button.

Could a note be added about which versions this applies to so as to avoid any confusion?
DBeaver Version
22.2.4
Operating System
macOS Monterey 12.6
Database and driver
DBeaver Sample Database (SQLite)
Steps to reproduce
Install w/ sample

See resulting image in main issue report
Additional context
No response

Hello @jcrben,
The Configure ... filter is what you are looking for.
Sorry for confusing you with outdated documentation. We will update it.

Oh, this is a special, strange case for the SQLite and Firebird databases.
If you open this filter configuration dialog from any other database on the level of the tables - you will see this link.

And this is expected behavior because your table filters in the SQLite are already global for your datasource.


Fix profiler division by zero if sample set is empty

Also replace the Help menu with the standard one (the old one still had
Dolphin Live Update on it). We really need a way to share menu definitions.

GitHub have kindly disabled LFS on the repo because somehow or other more than 1Gb of LFS data has been downloaded in some unspecified period. Since the usage limit on the LFS is also 1Gb, just one download of that would be enough.
LFS is a good idea, but not like this. Back to binary files in the repo then, sorry.


Add angular components snippets to project

This pr adds two things:

vscode snippets for component, controller, service, and model. These snippets are based on snippets hosted here (https://github.com/portainer/portainer/files/4382139/mycomponent.txt). The change in this pr is that snippets are committed to the repo. 2 benefits - first, once repo is cloned and opened in vscode, vscode recognizes them and enables their use in the project, second if and when we change the way we structure our components, the basic structure will stay consistent around developers.
plopjs - plopjs is a cli to generate templates. I added a plopjs generator to generate a component folder. This folder will include a component file + a controller file and a template file. use (anywhere inside /app folder) by running in your terminal yarn plop name-of-component, it will then ask for the angular submodule name, but it should be smart enough to guess it according to your current path.

before using plop at the first time, run yarn to install the plop dep

Looks good !
Not sure about the auto completion of the names (module/controller/service names) based on file name, as the file name won't always match the pattern we are waiting for.
I'd prefer to have an empty slot to ensure the one creating the file will always check the name for the newly created file (empty slot will trigger linting error / fail compilation).

I think that there should be also a convention for file name, no? so file name should be compatible with the component we are creating

I think that there should be also a convention for file name, no? so file name should be compatible with the component we are creating

Yes we definitely need to define this kind of convention.
I'd love to have file names with camelCase.type.js pattern
createContainer.controller.js
createContainer.view.js
container.service.js
containers.controller.js
containers.view.js
containersDatatable.controller.js
containersDatatable.component.js

*.controller.js for controllers (class + angular.module().controller())
*.service.js for services (class + angular.module().service())
*.view.js for components used as views (angular.module().component())
*.component.js for components (for components used in views, angular.module().component())
*.helper.js for helpers (class / ES6 module)
*.converter.js for converters (class / ES6 module)
Models (classes) should be split between models.js / formValues.js / payloads.js files under app/<module>/models/<type> directory where <type> is the logical Portainer type (container / node / volume / stack ...)
Use plural (containerS) for datatables and views managing mulitple instances (mainly  list views) only. Always use singular in other cases.
What's your opinion on this ?
cc @deviantony @MaximeBajeux
Note : had a draft on filenaming and code architecture (which may be a bit outdated) here

I agree with all the points of @xAt0mZ, in fact I've seen @chiptus applying the camelCase.type.js pattern.
I originally was against it because of redundancy with the parent folder name (service/container.service.js, helper/container.helper.js...) but it occured to me that it was a lot easier to search by file with this pattern.
Small notes about the converter pattern, while this pattern is currently used in the Kubernetes module, it's not clearly defined how it should be use in a more global approach.
So maybe on top of that what we need is an actual dummy module example with basic layout and README.md files inside each folder to introduce the purpose of each directory (that's more documentation related but I think it could be a good help for anyone approaching the codebase).

Finally, I read the linked issues, actually seems good and not outdated. Are we going to continue with this issue? #2673
ok, so the following is happening right now:
when we create a component with the name "new-component" we want the following:

component folder (dash-case name): new-component
component file (camelCase): newComponent.js
controller file (camelCase) optional: newComponent.controller.js
template file (camelCase): newComponent.html

maybe instead of doing newComponent.js we can just call it index.js? I know we don't use imports, but when we use them it will mean to do import newComponent from "./new-component" instead of import newComponent from './new-component/newComponent.(view|component)'

@chiptus @xAt0mZ what's the status on that one?

Finally, I read the linked issues, actually seems good and not outdated. Are we going to continue with this issue? #2673
ok, so the following is happening right now:
when we create a component with the name "new-component" we want the following:

component folder (dash-case name): new-component
component file (camelCase): newComponent.js
controller file (camelCase) optional: newComponent.controller.js
template file (camelCase): newComponent.html

maybe instead of doing newComponent.js we can just call it index.js? I know we don't use imports, but when we use them it will mean to do import newComponent from "./new-component" instead of import newComponent from './new-component/newComponent.(view|component)'

@xAt0mZ I was waiting for your feedback on this one

Somehow github didn't notified me on this and I forgot to look at it, sorry for the late feedback !

ok, so the following is happening right now:
when we create a component with the name "new-component" we want the following:

component folder (dash-case name): new-component
component file (camelCase): newComponent.js
controller file (camelCase) optional: newComponent.controller.js
template file (camelCase): newComponent.html

Actually we would have 2. component file (camelCase): newComponent.view|component.js

maybe instead of doing newComponent.js we can just call it index.js? I know we don't use imports, but when we use them it will mean to do import newComponent from "./new-component" instead of import newComponent from './new-component/newComponent.(view|component)'

Seems also a good option.
What about having the folders hierarchy beeing responsible for components/view/service description (what it is and what it's reponsible for) and files for purpose (component / view / controller / template / service / etc) ?
Means instead of having (with previously suggested file format)
components
|_ image-registry
  |_ imageRegistry.controller.js
  |_ imageRegistry.html
  |_ imageRegistry.component.js

views
|_ containers
  |_ create
    |_ createContainer.html
    |_ createContainer.controller.js
    |_ createContainer.view.js

services
|_ build.service.js
|_ config.service.js

we can get
components
|_ image-registry
  |_ controller.js
  |_ template.html
  |_ component.js

views
|_ containers
  |_ create
    |_ template.html
    |_ controller.js
    |_ view.js

services
|_ build
| |_ service.js
|
|_ config
  |_ service.js

If it's possible to make autodetection work for other files than index.js so we can keep view.js / component.js / service.js and still do import newComponent from "Docker/components/new-component"  without specifying the component/view/service.js file.
If not possible, using index.js instead of component/view/service.js is ok to me !
cc @deviantony

Notes: I'm basing this new suggestion on the pattern we applied on kube for models/payloads. AKA
kubernetes
|_ models
  |_ deployment
  | |_ models.js
  | |_ payloads.js
  |
  |_ daemon-set
    |_ models.js
    |_ payloads.js

Why not applying this generic pattern on all files ? Make it easier to understand the layout of the project imo. Even more than the previously suggested pattern.
*.controller.js for controllers (class + angular.module().controller())
*.service.js for services (class + angular.module().service())
*.view.js for components used as views (angular.module().component())
*.component.js for components (for components used in views, angular.module().component())
*.helper.js for helpers (class / ES6 module)
*.converter.js for converters (class / ES6 module)

The feature layout sounds like a good approach but I'd keep the high level modules to separate topics (core, edge, docker, kubernetes) instead of having everything in the same module.

The feature layout sounds like a good approach but I'd keep the high-level modules to separate topics (core, edge, docker, kubernetes) instead of having everything in the same module.

I agree we can think of the hight level modules as the high-level features. I usually go with the menu. So each menu item has a folder (components, services, etc.) and each menu section is a folder that contains all the section menu items.

Moving to a feature layout seems to be a good option to keep the code clean and tight.
As we are used to the type structure, it may be hard to conceive but it seems cleaner and smarter than what we are currently doing.

I'm up for it, but it requires a migration path. We can't do it in one go (or can we?).
I think we should have an issue tracking refactors to the client side code (moving from $scope to controllerAs, moving from functions to classes, feature based layout, etc.) and have sub tasks for each of those, so we can start putting those into sprints.
With all this, what are we doing currently with this PR?

If it's possible to make autodetection work for other files than index.js so we can keep view.js / component.js / service.js and still do import newComponent from "Docker/components/new-component" without specifying the component/view/service.js file.
If not possible, using index.js instead of component/view/service.js is ok to me !
cc @deviantony

we might be able to change it, but then our imports are based on webpack technology, I don't think this is right. I believe that index.js is ok

Brief reminder of our slack disucssion
For now integrate snippets and generator with

kebab-case folders
camelCase newComponent.js / newComponentController.js / newComponent.html / newService.js
drop angularjs.controller() registration and use import for controller assignation at component level

Can move to index.js instead of newComponent.js to make imports cleaner as we use imported controller assignation.
Changing layout will be done in the future in smaller tasks as suggested by @chiptus :arrow_down:

I think we should have an issue tracking refactors to the client side code (moving from $scope to controllerAs, moving from functions to classes, feature based layout, etc.) and have sub tasks for each of those, so we can start putting those into sprints.

Should we update https://github.com/portainer/portainer/issues/2673 with these new tasks?

Should we update #2673 with these new tasks? We'll then be able to use it to track overall progress.

as #2673 is more of a discussion, I propose opening a new issue with definite tasks (from both of these issues), then for each task open an issue, so we can track progress across versions, instead of leaving them somewhere in the backlog

I updated the pr, please review.

as #2673 is more of a discussion, I propose opening a new issue with definite tasks (from both of these issues), then for each task open an issue, so we can track progress across versions, instead of leaving them somewhere in the backlog

Yup. #2673 is more a documentation thread about ES6 migration and thing to do / not to do.

done. @xAt0mZ, please review


Handle nudging for stage registry

Discussed at: https://redhat-internal.slack.com/archives/C04PZ7H0VA8/p1726647003648319?thread_ts=1726577285.914149&cid=C04PZ7H0VA8
Checklist:

PR has reference to the issue(s) it resolves
Write / update unit tests
Write / update integration (envtest) tests
Ensure there is an issue for e2e tests if needed
Ensure make test passes
Ensure test coverage hasn't decreased
Test code changes manually
Update readme and documentation
Write PR description that highlights overall changes and add usage examples if applicable

Please rebase the commits into one and ideally write a commit description describing what has changed and why. Otherwise LGTM

@tnevrlka I have updated PR

/ok-to-test

@tnevrlka when will this be deployed into konflux?


[Enhance] Support dataset browsing on all datasets

Support dataset browsing on KITTI

Saving image of views specified by users when pressing ESC in open3d window

Please @Wuziyi616 check the functionality of each dataset. The PR can be merged after all datasets could be correctly visualized.

We may also consider visualizing segmentation/multi-modality detection dataset in the future? I am checking the functionality on all datasets now, it may take a while...

Yes, we need to consider that. At least the high-level logic and code of each dataset should be unified in MMDet3D.

Below are some saved visualization examples of browse_dataset, they cover all three (currently supported) dataset formats.
KITTI:

ScanNet:

Lyft (using data provided in the unittest folder because I can't find the real lyft data):

Below are some visualization results for Waymo and SUN RGB-D datasets.
Waymo:

SUN RGB-D:


integration/sql: Reorganize the library into multiple packages

Signed-off-by: Piotr Wojtczak<EMAIL_ADDRESS>
Problem
This change splits the current sql library into a Rust implementation and foreign language bindings (currently only Python). This draws a clear line between the two and makes it easier to add more language interfaces going forward.
Closes: #1145
Solution
This integration is a reorganization of the project and should not require any accommodation from current users.
Checklist

[x] You've signed-off your work
[x] Your pull request title follows our guidelines
[ ] Your changes are accompanied by tests (if relevant)
[x] Your change contains a small diff and is self-contained
[ ] You've updated any relevant documentation (if relevant)
[ ] You've updated the CHANGELOG.md with details about your change under the "Unreleased" section (if relevant, depending on the change, this may not be necessary)
[ ] You've versioned the core OpenLineage model or facets according to SchemaVer (if relevant)
[ ] You've added a header to source files (if relevant)

Already merged in #1167


Java 1.8

Upgrading source and target to Java 1.8

Users can not run on JRE7 with this new package.  Any features/changes which will be added in pintail will be avaiable to only users who is running on JRE8 or higher versions.
@sreedishps,   could you please check with @zulfi.
Could please fix merge conflicts? This is not mergable. Looks good to me otherwise.


suggest widget failed to render emoji

have a suggestion that contains an emoji in it's label (new CompletionItem('😀'))
trigger IntelliSense and see that the emoji doesn't render

never mind, it was applying highlights to the label that are based on the filter text...


Prospector changes

This PR has two main changes:

enabling merging of prospector info from multiple hiera levels (through hiera_hash())
adding a prospector_defaults field, that is used on create_resource()

and one minor fix: repo→key relationship on SLES

Thanks for the PR. I'm going to cherry-pick the bugfix so that it can get fixed while we figure out what to do with the rest of the changes.
I like the general idea, but I'm afraid this might be a breaking change. In the current implementation only the first hiera match of filebeat::prospector is used. If someone wants to implement the proposed behavior they could do something like
class { 'filebeat':
  prospectors => hiera_hash('filebeat::prospector'),
}

In the proposed model, if filebeat::prospector is defined in hiera at various levels there isn't a way to only take the first match - this implementation makes the assumption that they should all be merged. The behavior of the defaults hash would also be impacted based on how merging is configured.
Perhaps an additional parameter to enable this behavior would be better (and less breaking) than the conditional approach proposed? Of course we'll need to get the tests passing before a merge too.

Yes, you're absolutely right. To be honest I considered this problem for a while, and, without finding an easy solution, decided to create the PR first to get the ball rolling.
My initial idea was to provide a filebeat::prospectors_override argument, which would mimic the current behavior. But this obviously also be a breaking change.
If you're not against it, I'd suggest adding filebeat::prospectors_merged for the proposed behavior. This could then be mutually exclusive with filebeat::prospectors, to avoid confusion.
As for the tests, we currently don't have Puppet 4.* in production, so this one slipped past my tests and might need a bit of experimentation.
PS.: if I don't manage to reimplement this tomorrow, I'll then be AFK for a couple of weeks. Just so you don't think this PR is a hit-and-run! ;)

You've thought about this a lot more than I have, but figured I'd throw my first thoughts in - what about another boolean parameter like filebeat::merge_prospectors that changes the behavior to merge all of the filebeat::prospector entries?
There could be a default value in common.yaml (if the module default doesn't work out) that is overridden by more specific matches as needed.

It looks like puppet 4 has a way to do this using lookup_options in hiera. Not sure if that changes anything, but figured it was worth mentioning here.

That sounds more elegant. Just refactored the PR to include a boolean filebeat::prospectors_merge, which when set makes the module use hiera_hash().
I also removed the proposed filebeat::prospector_defaults parameter in favour of using hiera() calls as the default for prospectors (since defines don't have automatic parameter lookup). This has the unfortunate side-effect of ignoring "undef" defaults, so I had to hard-code defaults for filebeat::prospector::ignore_older and ...::close_older. Don't think that's a big issue, since all other parameters already have hard-coded defaults tracking filebeat's defaults, but let me know if I'm missing something.

Would something like resource defaults work in place of hiera for the defined type? I've done some searching and can't find anything to support the (crazy?) idea that I somehow got in my head that hiera calls in modules are bad, though I can't find anything supporting hiera in modules either (with the exception module data).
Any thoughts?

+1 for merge, hiera_hash is what iam currently looking for (filebeat::prospectors_merge)..

I merged the commit related to calling hiera_hash() to create prospectors, and updated the README and changelog files.

@pcfens not sure what you mean with "resource defaults". This was the way it worked before my patch. But your message made me rethink my solution and I now believe it's actually unsuited for this sort of "sub-resource". The problem is the default values from hiera would take precedence over those provided via create_resources. So they wouldn't be "defaults" as much as "overrides", kind of defeating the purpose ;). (I overlooked this because in my specific case I wasn't attempting to re-set the parameters via filebeat::prospectors, so there was no overlap in parameters and everything seemed ok)
Would you be OK with the original idea of a prospector_defaults argument, which would then be passed as a third argument to create_resources?

Something like prospector_defaults sounds reasonable to me, though I think we should look at using the resource defaults so that the defaults will carry over to prospectors declared outside of hiera.
Resource defaults in this case might look like
Filebeat::Prospector {
  param => value,
}

If defaults don't carry out of scope (I don't remember if they do or not) then a few notes in the documentation will probably suffice.

So, sorry for disappearing there for a while... :)
I've taken a fresh look at the problem and I've come back to my hiera() proposal. My last argument against myself was just wrong (don't know where I got that idea). As the patch now stands, the precedence for parameters is this:

parameters passed directly in the defined type instantiation (or the second argument of create_resources, either via hiera or a manifest)
parameters passed as third argument for create_resources
parameters passed via resource defaults (Filebeat::Prospector {...})
parameters passed via hiera filebeat::prospector::...
default parameters defined in the hiera() call in prospector.pp

This seems reasonable to me. Do you see any issue I might be overlooking?
I like this approach because it means you don't have to look up some extra parameter in order to set defaults, and the approach is similar whether you're using hiera or not (Filebeat::Prospector {...} in a manifest is more similar to filebeat::prospector::... in hiera than to an extra filebeat::prospector_defaults parameter, right?)
As to the reluctance to use hiera() as default, I also couldn't find any mention of it causing problems. On the contrary, I could find a couple of instances of people suggesting it as a reasonable solution (here and here).

I'm afraid I'm still a little fuzzy on whether or not hiera calls in modules at all is a good idea. While being a Puppet approved module isn't a set goal, I look at the requirements as a guide to a high quality module. They suggest (at the very bottom) that modules shouldn't call out to hiera, but don't offer alternatives in the case of defined types.
I think the community concern about using hiera() in modules is that a lot of avoidable assumptions have to be made about an environment.
Just to make sure I understand all of this (it's been a while)- what's the use case where resource defaults won't work?

I'm going to go ahead and close this since hiera 5 changes how a lot of this works and is calls to hiera_*() are being deprecated. If you think the module is still lacking something feel free to send a PR or open an issue.


Feature/kmmresult

Adds error handling using KmmResult in the following way.

If conversion from IO or serialization then throw errors (Multibase helper funcitons are assumed to deal with IO or serialization results and as a result throw as well)
If conversation from one data class to another (i.e. CryptoPublicKey to CoseKey or vice versa) then return KmmResult

Contains some restructuring for clarity.
Test cases have been updated.

I've started the review and then someone did change the target branch ...

I've started the review and then someone did change the target branch ...

My bad, correct request now

Polished some minor rough edges.
The KmmResult-encapsulated deserialize functions in the compantions of CoseKey and JsonWebKey seems off, but they actually make a lot of sense in the context of the VCLib, as you can't run into problems with uncaught exceptions on iOS.
@nodh maybe add such methods to Asn1Encodable and Asn1Decodable as the third and final option too? derDecodeSafe(), maybe?!

Polished some minor rough edges. The KmmResult-encapsulated deserialize functions in the compantions of CoseKey and JsonWebKey seems off, but they actually make a lot of sense in the context of the VCLib, as you can't run into problems with uncaught exceptions on iOS.
@nodh maybe add such methods to Asn1Encodable and Asn1Decodable as the third and final option too? derDecodeSafe(), maybe?!

Sounds good!


No warning when select db checkbox, but some tables are not selected

Steps to Reproduce:

Select create external table
go to step 4
Check xe,  some tables are not check because of unsupported data type. But no warning.
So we have to select each individual not checked table to see the warning.
Can we show global warning to tell why those tables are not selected by clicking db checkbox.

@geleems this is fixed, correct? Triaging into June, please review and confirm it's fixed.

@geleems where you able to verify this issue is fixed per @kevcunnane comment above?

This had been fixed long time ago. Closing.


Closes #2313 - Spelling Mistakes

Fixes Issue
Closes #2313
Changes proposed
Spelling Updates

Backned to Backend
Fronted to Frontend
LinkdedIn to LinkedIn
plaform to platform

Note to reviewers
Adding i18n localization for multi-language support will be a nice option, if you guy's agree please let me know.

@Anmol-Baranwal, your turn


Suppress proxy dialog

One of our users is behind a proxy - this happens when they open our node-webkit based application - ideas on how we could better handle this? Is there a way to suppress these dialog boxes at the very least?

This is also a problem I have.
When my program runs behine a proxy, nothing works since it requires a connection to the internet.
when I run nw.App.setProxyConfig(settings.proxySettings.proxy + ':' + settings.proxySettings.port+",direct://"); in my app, which suppose to translate to 'use proxy, unless you can't, it doesn't work no matter what I do. even if I remove the direct:// it still doesn't work.
every request I send doesn't come back with a statusCode of 200.
Is this something that is known to be an issue?


Add CI to ensure definitions are not removed

In #269 I moved some definitions around in the hierarchy, and ended up losing some functions for a while. Ideally we'd have something in CI that compares API coverage against TRAVIS_BRANCH / APPVEYOR_REPO_BRANCH to ensure we're only ever adding APIs.

Yeah I'd love to have a check like this!
On Wednesday, April 27, 2016, Kamal Marhubi<EMAIL_ADDRESS>wrote:

In #269 https://github.com/rust-lang/libc/pull/269 I moved some
definitions around in the hierarchy, and ended up losing some functions for
a while. Ideally we'd have something in CI that compares API coverage
against TRAVIS_BRANCH / APPVEYOR_REPO_BRANCH to ensure we're only ever
adding APIs.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub
https://github.com/rust-lang/libc/issues/270


Anax shared lib support

With this PR support for building anax as a shared library has been added thanks to cmake exporting of all found symbols.

Hi @mattiascibien, I'm your friendly neighborhood Microsoft Pull Request Bot (You can call me MSBOT). Thanks for your contribution!
You've already signed the contribution license agreement. Thanks!
The agreement was validated by Microsoft and real humans are currently evaluating your PR.
TTYL, MSBOT;

Looks great, thanks!


Add to F-Droid.org

https://f-droid.org/
F-Droid is an installable catalogue of FOSS (Free and Open Source Software) applications for the Android platform.

That's was one of my first actions to see if it was on F-droid to see the openness of the project (missing=not good), then check I went to github and was relieved to see the project here.

Definitely a good next step. We didn't have this repo set up until yesterday, so F-Droid was not previously an option. I'm hoping to get us on F-Droid in the next day or two.

Alright, clearly it's taking more than a day or two, but we're still hoping to be up in a few more days. Here's a status update:
F-Droid requires building our app from source. Building the app requires an API key to allow the app to download data from MapBox, our tile server. Our API key is not in the public repository. We've been reading through legalese to see whether we're allowed to publish our API key, since many services forbid this.
It appears that MapBox will permit us to publish our API key, but we are responsible for its use. To this end we're making a second API key we'll use in the public repo and for F-Droid, so that if something goes wrong we can disable the key without effecting our Play/App-store users.
Sorry this has taken so long; It's taken a while to familiarize myself with the F-Droid build process and policies and the legal situation surrounding the API keys.

Looks like its on F-droid.  Is that from y'all?
Thanks!

Yes, finally went through this morning! We'll be posting an announcement and adding a link on the downloads page later today.


Release 1.3

@rultor release, tag 1.3

@rultor release, tag 1.3

@aliceice OK, I will release it now. Please check the progress here

@rultor release, tag 1.3

@aliceice Oops, I failed. You can see the full log here (spent 1min)
gpg: using subkey 9A839C3A instead of primary key 9AF0FA4C
gpg: encrypted with 2048-bit RSA key, ID 9A839C3A, created 2014-08-17
      "Rultor.com<EMAIL_ADDRESS>gpg: AES256 encrypted data
gpg: original file name='rultor-XXXX.6G6wuImd'
+ gpg --no-tty --batch --verbose --decrypt --passphrase rultor-key:aliceice/humanoid settings.xml.enc
Comment: GPGTools - https://gpgtools.org
gpg: armor header:
gpg: CAST5 encrypted data
gpg: encrypted with 1 passphrase
gpg: original file name='settings.xml'
gpg: WARNING: message was not integrity protected
+ rm -rf settings.xml.enc
++ pwd
++ pwd
+ gpg --verbose --keyring=/tmp/rultor-JL4J/.gpg/pubring.gpg --secret-keyring=/tmp/rultor-JL4J/.gpg/secring.gpg --decrypt repo/pubring.gpg.asc
Comment: GPGTools - https://gpgtools.org
gpg: armor header:
gpg: public key is 9A839C3A
gpg: using subkey 9A839C3A instead of primary key 9AF0FA4C
gpg: using subkey 9A839C3A instead of primary key 9AF0FA4C
gpg: encrypted with 2048-bit RSA key, ID 9A839C3A, created 2014-08-17
      "Rultor.com<EMAIL_ADDRESS>gpg: AES256 encrypted data
gpg: original file name='rultor-XXXX.p2UAM5nM'
+ gpg --no-tty --batch --verbose --decrypt --passphrase rultor-key:aliceice/humanoid pubring.gpg.enc
Comment: GPGTools - https://gpgtools.org
gpg: armor header:
gpg: CAST5 encrypted data
gpg: encrypted with 1 passphrase
gpg: original file name='pubring.gpg'
gpg: WARNING: message was not integrity protected
+ rm -rf pubring.gpg.enc
++ pwd
++ pwd
+ gpg --verbose --keyring=/tmp/rultor-JL4J/.gpg/pubring.gpg --secret-keyring=/tmp/rultor-JL4J/.gpg/secring.gpg --decrypt repo/secring.gpg.asc
Comment: GPGTools - https://gpgtools.org
gpg: armor header:
gpg: public key is 9A839C3A
gpg: using subkey 9A839C3A instead of primary key 9AF0FA4C
gpg: using subkey 9A839C3A instead of primary key 9AF0FA4C
gpg: encrypted with 2048-bit RSA key, ID 9A839C3A, created 2014-08-17
      "Rultor.com<EMAIL_ADDRESS>gpg: AES256 encrypted data
gpg: original file name='rultor-XXXX.Zkj0L9zd'
+ gpg --no-tty --batch --verbose --decrypt --passphrase rultor-key:aliceice/humanoid secring.gpg.enc
Comment: GPGTools - https://gpgtools.org
gpg: armor header:
gpg: CAST5 encrypted data
gpg: encrypted with 1 passphrase
gpg: original file name='secring.gpg'
gpg: WARNING: message was not integrity protected
+ rm -rf secring.gpg.enc
+ rm -rf .gpg
+ '[' -z '' ']'
+ echo 'tag name is not provided in the request, see http://doc.rultor.com/basics.html'
tag name is not provided in the request, see http://doc.rultor.com/basics.html
+ exit -1
'cid' file is absent, container wasn't started correctly

@rultor release, tag is 1.3

@rultor release, tag is 1.3

@aliceice OK, I will release it now. Please check the progress here

@rultor release, tag is 1.3

@aliceice Done! FYI, the full log is here (took me 4min)


[locale] Fix #4568: Insert punjabi for "next" in nextWeek format

Fixes #4568

Coverage decreased (-0.3%) to 94.362% when pulling 7c58eedaf8846396a6e4d00717c8ed32b5672e4d on ashsearle:fix/4568 into aba77ec8196bab4067474c407f871f7612a5f421 on moment:develop.

@harpreetkhalsagtbit thoughts ?


cdiv and cmod incorrect?

I was looking at the definitions of cdiv and cmod in Shadow.py. These seem to give incorrect results for some operands. For example, in C99:
4 / -4 == -1    4 % -4 == 0
4 / -2 == -2    4 % -2 == 0
4 / -1 == -4    4 % -1 == 0

But these functions would return:
cdiv(4, -4) == 0    cmod(4, -4) == 4
cdiv(4, -2) == -1    cmod(4, -2) == 2
cdiv(4, -1) == -3    cmod(4, -1) == 1

That's based on just running those definitions in the Python interpreter. Perhaps Cython handles them specially, and doesn't in fact give the incorrect results above. Still, why not include correct Python code? The following would work:
def cdiv(a, b):
    if a < 0:
        a = -a
        b = -b
    if b < 0:
        return (a + b + 1) // b
    return a // b

def cmod(a, b):
    r = a % b
    if (a*b) < 0 and r: r -= b
    return r

Sorry if this is just me misunderstanding some magic behind the scenes stuff.

Thanks for looking at this! Please feel free to send a PR, or if you don't have the time I can fix them.

You might want to make sure that your new functions work properly with the test found here:
https://github.com/cython/cython/blob/master/tests/run/cdivision_CEP_516.pyx#L27-L28

I'm targeting this to 3.0 for now, but would consider backporting it since it's really a bug fix for something that's currently broken.


Support for libpython >= 3.5

Hi
doing an x86x64 hyperion.ng build on Ubuntu 18.10 works fine with python 3.6 installed.
Unfortunately, installing the .deb package on 18.10 or 19.04 via apt fails due to a dependency to libphython3.5.
sudo apt-get install --dry-run ./Hyperion-2.0.0-Linux-x86.deb
...
The following packages have unmet dependencies.
 **hyperion-x86 : Depends: libpython3.5 but it is not installable**
E: Unable to correct problems, you have held broken packages

Is there a way to support libpython3.5 and 3.6 in parallel?
Many thanks in advance
Lord-Grey

Can you try the | vertical bar (pipe) symbols separator on this line?
SET ( CPACK_DEBIAN_PACKAGE_DEPENDS "libqt5core5a (>= 5.5.0), libqt5network5 (>= 5.5.0), libqt5gui5 (>= 5.5.0), libqt5serialport5 (>= 5.5.0), libqt5sql5 (>= 5.5.0), libqt5sql5-sqlite (>= 5.5.0), libavahi-core7 (>= 0.6.31), libavahi-compat-libdnssd1 (>= 0.6.31), libusb-1.0-0, libpython3.4 | libpython3.5 | libpython3.6, libc6" )

Adding libpython3.5 | libpython3.6 | libpython3.7 did the trick to be able to install the deb package.
I can do a PR for this.
Unfortunately, when I execute hyperiond on Ubuntu 19.04,  which is on Python 3.7.3, I get the following error:
hyperiond: error while loading shared libraries: libpython3.6m.so.1.0: cannot open shared object file: No such file or directory
hyperiond and the deb-package was build on Ubuntu 18.10 with Python 3.6.
Does it mean that the executable needs to be build differently or is there a missing dependency?
Thank you!

Hello,
Hyperion links always to one specific python version during compilation. So you said you build with 3.6 so you need always 3.6. The required version in .deb dependency should always match with the system Hyperion in compiled on. In our case it's based on travis/azure machines
But @Paulchen-Panther is currently organizing the auto publishing of new test version when available. So you no longer need to mess around on your own for testing.

But how would this solve the problem of getting Hyperion.ng running on multiple Ubuntu versions having different python3 subversions each?
e.g. if the azure machine links python3.5, it will not run/install on ubuntu 18 (python3.6) nor ubuntu 19 (python 3.7) with the current way of doing things... or do I miss something?

or do I miss something?

Yes. We can build for multiple versions of Ubuntu if requested

Thank you!


Easy Fix** Cancel Orders function documention is wrong

On the documentation page the function is listed as:
auth_client.cancel_all(product_id='BTC-USD')
But this generates an error:
TypeError: cancel_all() got an unexpected keyword argument 'product_id'
I looked at the code and the code is expecting "product" and not "product_id".
This works:
auth_client.cancel_all(product='BTC-USD')
So the fix is easy to either update the documentation or change the code slightly.

Pretty sure this bug isn't just in documentation. I put another issue in that I think is related to this one, but since that one has been closed just add to this one.
Not only does 'product_id' not work, but 'product' doesn't work properly either. When used like this
auth_client.cancel_all(product='BTC-USD')
it cancels all orders in all products. When trying to use it for any of the other products like this
auth_client.cancel_all(product='ETH-USD')
it doesn't error, but also doesn't cancel any ETH-USD orders.
In the previous issue I posted I also mentioned that this problem seems to systemic in that 'product_id' also doesn't work for get_orders() either.
I looked around in the code a bunch to try to figure out where exactly bradowatson was referring to it expecting "product" but am not sure exactly where that would be as the authenticated_client.py file looks right.

Hey @itaki,
After re-looking over both issues, I'm actually almost certain that both of these issues are old bugs that are fixed in the latest code on GitHub, but not yet uploaded to PyPi (so basically dupe of #208). So in other words, you should be using product_id, not product, in the latest code.
Could you try your code using the latest code and let me know?
Thanks.

That definitely fixed all the problems. Thanks! Though there is an extra " on line 146 in the public_client which cause it to error. Will create a new issue.

Issue only exists because PyPi is out of date. Dupe of #208.


HiDPI support

The app is really small now..., please provide HiDPI support.

What is your screen resolution? and what OS you are on?

On 12 Jan 2020, at 20:53, parqbanq<EMAIL_ADDRESS>wrote:
The app is really small now..., please provide HiDPI support.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub https://github.com/kapitainsky/RcloneBrowser/issues/66?email_source=notifications&email_token=ADXJHOSNZG5IQFRTLRCLKZLQ5N7NHA5CNFSM4KFZ2CX2YY3PNVWWK3TUL52HS4DFUVEXG43VMWVGG33NNVSW45C7NFSM4IFTLRVA, or unsubscribe https://github.com/notifications/unsubscribe-auth/ADXJHOSM5B75H6U5P5C4UFTQ5N7NHANCNFSM4KFZ2CXQ.

Ubuntu 18.04.3

Try by setting this environment variable:
export QT_FONT_DPI=128
I don’t know atm how to fix this cross platform. Hopefully in the future some better solution will be found.

Looks like this:

Yes. Agree. This is not good

Ah, we crossed! I will try your suggestion now!!

I mean after diner..., I 'll be back...

I set export QT_FONT_DPI=128 in ~/.bashrc but the problem remains.

Can you double check it is set? When I set it from cmd and then run RCB all fonts are bigger. You can also set higher number than 128

Ah, yeah, it works! I set it to 199 and now:

Nice!

Sorry it is not hassle free. But it is quite complex problem to tackle from working the app with a lot of legacy code.

There are quite a lot of apps that have problems dealing with HiDPI  actually...; I am really happy I can use RcloneBrowser now! Thanks for helping out!!

Hi, I need small help:) in the next release I am will include more options to adjust interface size (fonts, buttons and remotes' icons). Unfortunately I don't have access to HiDPI monitor at the moment. Would you mind to try pre-release version and let me know if font sizes I chose (especially Large and Extra Large) are sufficient for monitor like yours?  If you could try without any QT_FONT_DPI exported - you can unset it by running unset QT_FONT_DPI
My objective would be to make sure that font size L is perfect for your resolution and XL would be good for even higher.
Here you are link for latest development AppImage version for Linux:
https://1drv.ms/u/s!Aq335pidOrBV38Z49iGD7cMMuYNNgA

Interface elements size can be changed in the new preferences window:

Hi @kapitainsky,
I use a 27" UHD monitor, but I use your rclone browser on Windows, if you want I can test "beta"/prerelease versions on my PC.


the "pytorch_lightning.metrics.functional.auroc" bug

the code:
def validation_epoch_end(self, outputs):
.........
print(total_y_hat.device)
print(total_y_true.device)
print(total_y_hat)
print(total_y_true)
print(total_y_hat.shape)
print(total_y_true.shape)
auc_score = auroc(total_y_hat, total_y_true)
the output is:
Get data done!
Validation sanity check:  50%|█████     | 1/2 [00:00<00:00,  1.06it/s]
cuda:0
cuda:0
tensor([0.5084, 0.5084, 0.5084,  ..., 0.5084, 0.5084, 0.5084], device='cuda:0')
tensor([0., 0., 0.,  ..., 0., 0., 0.], device='cuda:0')
torch.Size([16384])
torch.Size([16384])
Traceback (most recent call last):
File "lighting_sales.py", line 443, in
main(hparams)
File "lighting_sales.py", line 392, in main
trainer.fit(model)
File "/opt/conda/lib/python3.7/site-packages/pytorch_lightning/trainer/trainer.py", line 918, in fit
self.single_gpu_train(model)
File "/opt/conda/lib/python3.7/site-packages/pytorch_lightning/trainer/distrib_parts.py", line 176, in single_gpu_train
self.run_pretrain_routine(model)
File "/opt/conda/lib/python3.7/site-packages/pytorch_lightning/trainer/trainer.py", line 1076, in run_pretrain_routine
False)
File "/opt/conda/lib/python3.7/site-packages/pytorch_lightning/trainer/evaluation_loop.py", line 330, in _evaluate
eval_results = model.validation_epoch_end(outputs)
File "lighting_sales.py", line 252, in validation_epoch_end
auc_score = auroc(total_y_hat, total_y_true)
File "/opt/conda/lib/python3.7/site-packages/pytorch_lightning/metrics/functional/classification.py", line 817, in auroc
return _auroc(pred=pred, target=target, sample_weight=sample_weight, pos_label=pos_label)
File "/opt/conda/lib/python3.7/site-packages/pytorch_lightning/metrics/functional/classification.py", line 766, in new_func
x, y = func_to_decorate(*args, **kwargs)[:2]
File "/opt/conda/lib/python3.7/site-packages/pytorch_lightning/metrics/functional/classification.py", line 815, in _auroc
return roc(pred, target, sample_weight, pos_label)
File "/opt/conda/lib/python3.7/site-packages/pytorch_lightning/metrics/functional/classification.py", line 553, in roc
pos_label=pos_label)
File "/opt/conda/lib/python3.7/site-packages/pytorch_lightning/metrics/functional/classification.py", line 504, in _binary_clf_curve
torch.tensor([target.size(0) - 1])])
RuntimeError: All input tensors must be on the same device. Received cuda:0 and cpu

That bug is fixed on master. See #2657

thank u very much

Does it work with master branch? If not, do you use the functional or module interface for the metric?

@BeHappyForMe I'm closing this but please open if still experiencing this with master.


Custom rule does not work

Describe the bug
The rules.toml does not seem to work for me, I do the following.
To Reproduce

create rules.toml

title = "rules"

[[rules]]
id = "test-secret"
description = "Testing"
regex = '''secretkey'''

create file test.txt

secretkey

run pillager --config rules.toml hunt test.txt

Expected behavior
test.txt contains secret
What happens
No secret is reported
Screenshots
Version 0.8.1

Hey @yene! Thanks for opening an issue. I think this is because you've passed in the --config flag which is for populating pillager's flags with the values in a config file.
To pass in your list of rules, you'll want to use the --rules flag which accepts a gitleaks rules.toml file.
Let me know if that solves your problem!

Thank you now it works.


workflows/triage: skip for BrewTestBot PRs

[x] Have you followed the guidelines in our Contributing document?
[x] Have you checked to ensure there aren't other open Pull Requests for the same change?
[x] Have you added an explanation of what your changes do and why you'd like us to include them?
[ ] Have you written new tests for your changes? Here's an example.
[ ] Have you successfully run brew style with your changes locally?
[ ] Have you successfully run brew tests with your changes locally?
[ ] Have you successfully run brew man locally and committed any changes?

The triage workflow is supposed to skip PRs opened by @BrewTestBot. However, it does not which eventually causes problems because @BrewTestBot tries (and fails) to approve it's own PR. Seen in https://github.com/Homebrew/brew/pull/9334.
Note: I haven't tested this PR
Based on the GitHub API documentation for getting the authenticated user, the user object that is retrieved contains an object with more metadata rather than just the username. To get the username, we can use user.login.
While I haven't tested this PR, I've done something similar in https://github.com/actions/stale/pull/231. There, I also used github.users.getAuthenticated() and then accessed the user's login via .data.login. Also, lower down in the workflow file, another comparison is made between review.user.login and user.login to filter only @BrewTestBot reviews. From these, I'm reasonably confident in this change.

Review period skipped due to critical label.


Entries are hidden when a config setting changed

When changing the config (ex: alinea.config.tsx), the existing entries are not visible anymore. Refreshing the page is not solving this issue. For now you need to restart the alinea serve command.

This is fixed in 0.4.0


bit information for 'bits' datatype is not found if a typedef is used.

If a leaf or leaf-list is having  type as typedef,  and if the internal type of the typedef is 'bits',    then the  bit information is not received.
example given below.
file: type-bit1.yang
module type_bit1 {

	namespace "urn:params:type_bit";
	prefix type_bit;

	yang-version 1.1;

	typedef new_type_bits {
		type bits {
			bit seventh-bit {
				position 0;
			}
			bit eighth-bit {
				position 1;
			}
			bit ninth-bit {
				position 2;
			}
		}
		default ninth-bit;
		units gbp;
		description "This is new_type_bits";
	}

	container root-container {
		leaf leaf-bits {
			type bits {
				bit first-bit {
					position 0;
				}
				bit second-bit {
					position 1;
				}
				bit third-bit {
					position 2;
				}
			}
			default first-bit;
			units dollars;
			description "This is leaf-bits";
		}
		leaf-list leaf-list-bits {
			type bits {
				bit forth-bit {
					position 0;
				}
				bit fifth-bit {
					position 1;
				}
				bit sixth-bit {
					position 2;
				}
			}
			default fifth-bit;
			units usd;
		}
		leaf leaf-derived-type {
			type new_type_bits;
			default seventh-bit;
			description "This is leaf-derived-type";
		}
		leaf-list leaf-list-derived-type {
			type new_type_bits;
			default eighth-bit;
			description "This is leaf-list-derived-type";
		}
	}
}

In the above example with typedef,   for  nodes  leaf-derived-type  and leaf-list-derived-type ,  Type()  method returns a type data without 'bit' information.  so BIts() method also returns empty.  In the cases where  typedef was not used   ie  leaf-bits  and leaf-list-bits ,  the bits information was received as expected.

This problem exists if the typedef of bits datatype  is used within an union also.
sample file for  union case:
module my-bit-test2 {

	namespace "urn:params:type_bit";
	prefix type_bit;

	yang-version 1.1;

	typedef new_type_bits {
		type bits {
			bit seventh-bit {
				position 0;
			}
			bit eighth-bit {
				position 1;
			}
			bit ninth-bit {
				position 2;
			}
		}
		default ninth-bit;
		units gbp;
		description "This is new_type_bits";
	}

	container root-container {
		leaf leaf-bits {
			type bits {
				bit first-bit {
					position 0;
				}
				bit second-bit {
					position 1;
				}
				bit third-bit {
					position 2;
				}
			}
			default first-bit;
			units dollars;
			description "This is leaf-bits";
		}
		leaf-list leaf-list-bits {
			type bits {
				bit forth-bit {
					position 0;
				}
				bit fifth-bit {
					position 1;
				}
				bit sixth-bit {
					position 2;
				}
			}
			default fifth-bit;
			units usd;
			/*description "This is leaf-list-bits";*/
		}
		leaf leaf-derived-type {
			type new_type_bits;
			default seventh-bit;
			description "This is leaf-derived-type";
		}
		leaf-list leaf-list-derived-type {
			type new_type_bits;
			default eighth-bit;
			description "This is leaf-list-derived-type";
		}
		leaf leaf-union {
			type union {
				type new_type_bits;
				type boolean;
			}
		}

		leaf-list leaf-list-union {
			type union {
				type new_type_bits;
				type boolean;
			}
		}
	}
}

For this file,  if we try tofetch the type of new_type_bits under union ,  the bits details is empty.   Bits() method will return empy.

little behind, but i'll take a look in next few days

fixed


linux mainline/stable-rc/generic: enable KSM

As per the documentation, Kernel Samepage Merging is a memory-saving de-duplication feature, enabled by CONFIG_KSM=y and activated via sysfs.
When enabled in the kernel, the default is to not do anything at all, until it is activated with:
echo 1 > /sys/kernel/mm/ksm/run

Available since 2.6.32. More information here: https://www.kernel.org/doc/Documentation/vm/ksm.txt

This is a request from bug 3857. The list of kernels is that of LKFT stable-rc trees mentioned in the bug report, plus mainline, next, and the generic kernel.
KSM is already enabled on most other kernel configs, but is not on: 1) x86_64 and 2) X15, so this is to make sure that it is equally enabled across all machines.

I have doubts on how extensive the list of kernels ought to be.

Please update the commit message to mention why it is needed (by a reference to the bug). It seems material for upstreaming to default configs.


Subsegments from existing traceID

I have a situation where i'm a downstream application, I want to pass the traceID from my C# application to the Go app.
Looking at the SDK, this doesn't seem possible as subsegment has parent non exported.  Unless i've missed something, is there a way of generating a new subsegment from an existing traceID?

Hi @DaveBlooman, in this situation, assuming you have included the Go X-Ray SDK with your Go application or micro-service, the Go SDK can generate a new segment for your downstream application. Generally we recommend that each sub-application or micro-service generate a full segment, with subsegments being reserved for sub-system/SDK calls within the sub-application. The Go application will then appear as a separate node(service) on the service map. The new segment for the Go application should use the same Trace-ID as the one generated by the C# application so that a single trace is utilized from end to end.
Here are two ways to do it: One way is using our xray.Handler(….) method which will automatically create a new segment for you. The other way is using xray.NewSegmentFromHeader(…..) method to manually pass a header(that already contains a Trace-ID) to create a new segment.

In the end, I used BeginSegment and set the parent_id


Delay overlay image creation until QEMU starts

Always create the overlay disk image to avoid the potentially expensive copy-on-write operation for large files. We used to create overlay images right in vrnetlab.VM.__init__(). This makes it difficult to implement the restart() method correctly. The restart method is used to recover from an incorrect state so all modifications to the original image should be discarded.

Merging this before adding support for new platforms.