line number:4923, calculateProjection(destinationFrame?: PIXI.Rectangle, sourceFrame: PIXI.Rectangle, resolution: number, root: boolean): void;

Expected Behavior
In this method, we pass parameters, with mandatory and optional
Current Behavior
But in this method, passed optional first and then mandatory
Possible Solution
remove optional parameter for destinationFrame
calculateProjection(destinationFrame: PIXI.Rectangle, sourceFrame: PIXI.Rectangle, resolution: number, root: boolean): void;
Steps to Reproduce
Environment

pixi.js version: e.g. ^5.3.1
Browser & Version: e.g. Chrome 67
OS & Version: e.g. Ubuntu 18.04
Running Example: url

It actually does not even compile to me. Can anyone suggest a fix for it?

For quick fix, Goto pixi.js.d.ts:4925 line , and replace destinationFrame? with destinationFrame
calculateProjection(destinationFrame: PIXI.Rectangle, sourceFrame: PIXI.Rectangle, resolution: number, root: boolean): void;
NOTE: it's a Quick fix only to run dev project

Unfortunately, it's not a "solid" quick fix, since I will have to force my teammates to do the same.
Thanks anyway, I think I will just revert typescript version since this issue appears to be there even with 5.2.1.

@MercurialUroboros yes it's not a solid quick fix, or else you can download the total library and make sure this is to available for all your teammates

This is reported in in https://github.com/pixijs/pixi.js/issues/6774

Duplicate so closing. We have a fix already waiting for approval. Sorry for the inconvenience will have a patch out soon.


want control torrent

want torrent can turn on/off use E button

Probably not gonna do that (seems a bit OP), but I'll leave the issue open while I think about it.

I'm going to go ahead and close this issue, as I don't plan on implementing it.


No empty lines before '}' allowed

This PR remove all empty lines before '}' symbol. For example:
class SomeClass {

     public void emptyMethod() {

     }

    public void someMethod() {
         System.out.println("Hello World");

    }

}

will be replaced to:
class SomeClass {

    public void emptyMethod() {
    }

    public void someMethod() {
        System.out.println("Hello World");
    }
}

To check this PR you can use IntelliJ editor:
File -> Settings -> Editor -> Code Style -> Java -> Blank Lines -> Keep Maximum Blank Lines -> Before '}':

And I like the following :)
class SomeClass {

    public void emptyMethod() {}

    public void someMethod() {
        System.out.println("Hello World");
    }
}

+1 for this change because the old Sun coding conventions (so the entire JDK) does it like this:
http://www.oracle.com/technetwork/java/codeconventions-150003.pdf
My taste still prefers the other way, but following upstream conventions (sun, then jboss) is more important...


add override annotation for Specification child class

add override annotation for Specification child class

@MrocCyen Please sign the Contributor License Agreement!
Click here to manually synchronize the status of this Pull Request.
See the FAQ for frequently asked questions.

@MrocCyen Thank you for signing the Contributor License Agreement!


fix: Fixes UI and functionality issues on the Curl editor page

This PR fixes the bad UI designs and UX on the Curl Editor Page, It also allows the use of Shortcuts on the curl editor page i.e. the CMD + Enter shortcut key, making it possible for users to use the shortcut key to execute Curl import queries.
Fixes #11029

Please delete options that are not relevant.

Bug fix (non-breaking change which fixes an issue)

Checklist:

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

/ok-to-test sha=24fff1b


Add modifier on the last move

The player can see the last action that was performed, the cell have another colour with animated dashed lane.
Closes #357

However, what would you think about removing the dashed line and also marking the "from" position, like this? This is usually how it is done on other chess apps, and I think it gives the user more useful information! (The dashed line is more subjective, but I think it looks a litttle bit "heavy", especially when the user has another selected square)

I agree that the dashed line is a bit heavy, but I put this to distinguish the last move and the checkmate. I make your suggestion, do you think that looks good ? The colours are too similar to me, I don't know what colour to put. I don't think that green is a good idea.

Although they are indeed quite similar, I don't think this is a problem. First, they will always be two squares lit up from the previous move (except for the first move), so in the event of a check position appearing too there should not be any confusion as to which is which.
Also, it is impossible for a king to both be in check and have played the last move (rules of chess prevent this), so there also cannot be any confusion because of that.
A way many chess apps show a king in check is by using a diffuse/blurry red circle behind the king instead of coloring the whole square. This could be an option, but I don't think it's worth the effort.
All in all, I think the way it looks right now is the best solution.


Adding take/limit on deleteMany

Problem
I've recently stubled upon a case where I need to delete every row matching a bunch of filters, but not more than 1000 at a time.
According to the documentation, Prisma only accepts a where property in the function arguments, which seems to indicate i cannot implement a deletion limit natively.
Suggested solution
await prisma.deleteMany({
  where: { column: 'value' },

  // either `take` to match the existing limit option available on `findMany`...
  take: 1000,

  // ... or `limit` for semantics closer to the actual option
  limit: 1000,
});

Alternatives
The two other options I can think of are :

using prisma.delete({ where }) in a loop (which would probably mean sending 1000 queries to the database)
using prisma.$executeRaw`DELETE FROM table WHERE column = 'value' LIMIT 1000`; since i'm using a MySQL database - but i try to avoid hardcoded queries

Note
There might be some technical reasons why this was not added (mismatch of the feature on connectors for example), but i could not find any mention in the documentations, could be nice to add an explanation if something is preventing it

Adding take or limit looks interesting to have to me, I'm not aware of any blocker here 🤔
This would need to be implemented along with some tests for all supported databases.
I will close this as it's a duplicate of https://github.com/prisma/prisma/issues/6957
Subscribe to that issue to get updates.


Problem with multiple clip-paths

Info:

yarn --version: 0.27.5
gulp-svg-sprites: 4.1.2
svg-sprite-data: 3.1.0
node --version: v8.1.3

So, here's the deal:
The sprite generated file from gulp-svg-sprites changes all clip-paths id's and references to the same id.
I have a file with two or three svgs whose clip-path id is a.
This, of course, leads to broken files in basically every browser except Safari.
Here's a comparison

Live editing the clip-path ID on Chrome solves the problem (changing it from a to a1, for example)
I've tried using the transformData and the afterTransform to rewrite the ID's. If I console.log the svg data, the clip-path are the exepected. But when the sprite.svg is saved to the disk, everything is back to a everywhere.
Can you guys point me to a solution?
Thank you so much.

Add to config options for SVGO:
cleanconfig: {plugins: [{cleanupIDs: false}]}
Full list of plugins: https://github.com/svg/svgo

Hi @tomash-als, thank you for your time. Can you point me to a direction on how to apply this config? gulp-svg-sprites documentation has no topic regarding configuring SVGO.
Thank you so much.

@filipekiss, for example:
gulp.task('sprites', function () {
    return gulp.src('assets/svg/*.svg')
        .pipe(svgSprite({
            cssFile: "scss/_sprite.scss",
            cleanconfig: {plugins: [{cleanupIDs: false}]}
        }))
        .pipe(gulp.dest("assets"));
});

A bit more explanation:
gulp-svg-sprites uses svg-sprite-data for SVG processing, and passes an entire config while creating SpriteData object.
https://github.com/shakyShane/gulp-svg-sprites/blob/1036e8defb3834f9662cbe20c93afe3e60684d7e/index.js#L398
svg-sprite-data uses svgo for optimizations, and passes cleanconfig part of config while creating SVGO object.
https://github.com/shakyShane/svg-sprite-data/blob/fa2bd9e68df3dd5906153333245aa06a5ac4b2b3/lib/svg-sprite.js#L100
And as cleanconfig is not used by gulp-svg-sprites, we can safely use it for SVGO configuration.
https://github.com/svg/svgo

@tomash-als Great! That was exactly what I needed!


errorMessage param should always be an i18n key and should not contain special characters.

Describe the issue:
$subject
Derived from https://github.com/wso2/product-is/issues/18730#issuecomment-1866440102
How to reproduce:

Please see the above mentioned issue comment.
Expected behavior:

Environment information (Please complete the following information; remove  any unnecessary fields) :

Product Version: [e.g., IS 5.10.0, IS 5.9.0]
OS: [e.g., Windows, Linux, Mac]
Database: [e.g., MySQL, H2]
Userstore: [e.g., LDAP, JDBC]

Optional Fields
Related issues:

Suggested labels:

When the logout fails due to post logout redirect URI doesn't match with registered URLs, the following UI is displayed. Note that here also the error message in plain text is returned to frontend. Instead, an i18n key should have been returned.

This issue is being closed due to extended inactivity. Please feel free to reopen it if further attention is needed. Thank you for helping us keep the issue list relevant and focused!


SQL RAND function

Description
Add a RAND() function to Druid SQL.
Motivation
It could be used for random sampling (e.g. WHERE RAND() < 0.2).
See also https://github.com/apache/incubator-druid/issues/8661.

See https://github.com/apache/incubator-druid/pull/8814#issuecomment-550681737 for why this requires some special care.


Update Examples Object

Clarify that Examples Object may be used instead of Example Object.
Show JSON examples as well as YAML
Clarify the $ref values used in examples to remove ambiguity.
These are not references to external JSON/XML/TXT resources, but
rather are references to reusable examples in the current OpenAPI definition
or in an external OpenAPI definition's components/examples
This does not yet address issue #488 but cleans up Examples Object
a bit, which is needed whether we alter the OAS as per #488 .

Thanks for being patient with the nitpicks.  :)

Anyone willing to review and merge this (before the text has diverged too much making merge difficult)?

May not be needed if the proposal in #1035 is accepted.

Closing - #1035 addressed the changes in this PR


Parse-server 2.3.0 failing to start!

Describe your issue in as much detail as possible.
Upgraded to new version of parse. failing with :
|parse-se | facebookAppIds is deprecated, please use { auth:          {facebook:            { appIds: [] }           }        }      }
My ecosystem does not reference facebookAppIds at all or the ENV for it.
{
  "apps" : [{
    "name"        : "parse-server",
    "script"      : "/usr/bin/parse-server",
    "watch"       : true,
    "merge_logs"  : true,
    "cwd"         : "/home/parse",
    "env": {
      "VERBOSE": "1",
      "PARSE_SERVER_CLOUD_CODE_MAIN": "/home/parse/cloud/main.js",
      "PARSE_SERVER_DATABASE_URI": "mongodb://###",
      "PARSE_SERVER_APPLICATION_ID": "#####",
      "PARSE_SERVER_MASTER_KEY": "#####",
      "PARSE_SERVER_FILE_KEY": "####",
      "PARSE_SERVER_JAVASCRIPT_KEY": "####",
      "PARSE_SERVER_REST_API_KEY": "####",
      "PARSE_SERVER_CLIENT_KEY": "###",
      "PARSE_SERVER_MOUNT_PATH" : "/",
      "PARSE_SERVER_FILES_ADAPTER" : "parse-server-s3-adapter",
      "S3_ACCESS_KEY" : "###",
      "S3_SECRET_KEY"  : "####",
      "S3_BUCKET" : "####",
      "S3_SIGNATURE_VERSION" :"v4",
      "S3_DIRECT_ACCESS" : true,
      "PARSE_SERVER_APP_NAME" : "##" ,
      "PARSE_PUBLIC_SERVER_URL" : "####",
      "PARSE_SERVER_PUSH" :  {"adapter" : "parse-server-onesignal-push-adapter",
                                             "oneSignalAppId": "###",
                                             "oneSignalApiKey": "####",
                             },
     "PARSE_SERVER_EMAIL_ADAPTER" : {
           "module": "parse-server-simple-mailgun-adapter",
                  "options": {
                  "fromAddress": "###",
                  "domain": "###",
                  "apiKey": "###",
                   }
      },
    }
  }]
}

Environment Setup

Server

parse-server version (Be specific! Don't say 'latest'.) :2.30
Operating System:     Ubuntu

@Cliffordwh there was a big in 2.3.0.  2.3.1 has been published to npm.  can you upgrade ad try again and see if that fixes?

@acinader  2.3.0 is the latest version on NPM at the moment!

also, 2.3.0 should not throw if really the option is not here:
/bin/parse-server --appId hellp --masterKey world
appId: hellp
masterKey: ***REDACTED***
port: 1337
host: <IP_ADDRESS>
mountPath: /parse
maxUploadSize: 20mb
userSensitiveFields: email
serverURL: http://localhost:1337/parse

[34276] parse-server running on http://localhost:1337/parse

Will test 2.3.1! was just pushed.

same error on 2.3.1 Reverted back to 2.2.25 and all started well.

I guess you have a dangling environment variable or something else... I have no issue starting the server here.

Fresh copy locally works on 2.3.1!

so you have something that's off on your server which is good, as you were setting environments variables you are not aware of

@flovilmart could be the case. Will close this for now and dig in there.  Just out of interest, how would i set the new auth moving forward in the json above?  PARSE_SERVER_AUTH_PROVIDERS

Yes, exactly


ConnectAsync function is stuck when connecting to the wsEndpoint

Infomation
PuppeteerSharp: 9.0.2
windows 10 x64
visual studio 2022
Description
When I initialize a browser using the command browser = await PuppeteerSharp.Puppeteer.ConnectAsync(options), the command does not stop running until I have to stop the debugging process
E.g.
this is Connect function
private IBrowser browser = null;
private IPage page = null;
public async Task<bool> Connect(string wsEnpoint)
    {
        try
        {
            //wsEnpoint = "ws://<IP_ADDRESS>:2000/devtools/browser/10ae2bcd-f539-49d6-983e-e5294f3c8b52";
            var options = new ConnectOptions()
            {
                BrowserWSEndpoint = wsEnpoint,
            IgnoreHTTPSErrors = true
            };

            browser = await PuppeteerSharp.Puppeteer.ConnectAsync(options);

            // Create a new page and go to Bing Maps

            page = browser.NewPageAsync().Result;
            qr = new PuppeteerQuery(page);
            return true;
        }
        catch (Exception ex)
        {
            cl.Log(ex);
            return false;
        }
    }

this is
private async Task loop()
{
ParallelOptions po = new ParallelOptions();
po.CancellationToken = cts.Token;

po.MaxDegreeOfParallelism = Convert.ToInt32(MyIni.Read("threadnum"));
Parallel.ForEach(listacc, po, async (acc, state, i) =>
{
         ChromeBr y = new ChromeBr ();
         bool build_stt = await y.Build(wws);
         if (build_stt)
         {
             await y.start();
         }
}
}

Expected behavior:
[What you expect to happen]
Actual behavior:
[What actually happens]
Versions

Which version of PuppeteerSharp are you using?
Which .NET runtime and version are you targeting? E.g. .NET framework 4.6.1 or .NET Core 2.0.

Additional Information
Any additional information, configuration or data that might be necessary to reproduce the issue.

What do you mean with the command does not stop running?

What do you mean with the command does not stop running?

I run it with visual studio debug, and the program keeps at that line, I put try catch but the command doesn't stop so I can't catch any exception

Can you isolate the code into something I can run locally?


Add support for existing VPC

JIRA: https://issues.redhat.com/browse/SDA-3271
## Why is this WIP?
No longer WIP please take a look.
cc: @vkareh @igoihman

@vkareh Current CLI parameter for AvailabilityZones and SubnetIDs is using StringSlice which accepts params as comma separated string (e.g. "subnet-1, subnet2") splitting them in the background. This is the same for the interactive case where you're asked:

/ok-to-test

I know. You're missing this:
diff --git a/pkg/aws/client.go b/pkg/aws/client.go
index dea6335..aa2ce23 100644
--- a/pkg/aws/client.go
+++ b/pkg/aws/client.go
@@ -238,6 +238,7 @@ func (b *ClientBuilder) Build() (Client, error) {
        c := &awsClient{
                logger:              b.logger,
                iamClient:           iam.New(sess),
+               ec2Client:           ec2.New(sess),
                orgClient:           organizations.New(sess),
                stsClient:           sts.New(sess),
                cfClient:            cloudformation.New(sess),

Looking good so far!
~/g/s/g/o/moactl (⎇ pull/184 *) $ rosa create cluster -i --dry-run
I: Interactive mode enabled.
Any optional fields can be left empty and a default will be selected.
? Cluster name: foo
? Multiple availability zones (optional): No
? AWS region: us-east-1
? OpenShift version (optional):
? Subnet IDs (optional): subnet-050b5a070768d2737, subnet-074572b18f5698f1f, subnet-0f7041e8bbfcb605c, subnet-0ba3f0ead1f486510, subnet-04a0a9a3def2d7701, subnet-0c7b531f9375931b1
? Compute nodes instance type (optional):
? Compute nodes: 2
? Machine CIDR (optional):
? Service CIDR (optional):
? Pod CIDR (optional):
? Host prefix (optional):
? Private cluster (optional): No
I: Creating cluster 'foo'
I: To view a list of clusters and their status, run 'rosa list clusters'
E: Creating cluster 'foo' should fail: Only a single availability zone can be provided to a single-availability-zone cluster, instead received 6

However, that last error makes me think that we should make some UX changes here:

If the user selects single AZ, maybe we should display an AZ single select, then we can show subnets just for that AZ
If the user selects multi AZ, we could either:

display a multi-select for AZs, then subnets for those selected, or
display a multi-select for subnets, with the AZ in parenthesis:

? Subnet IDs (optional):  [Use arrows to move, space to select, <right> to all, <left> to none, type to filter, ? for more help]
> [ ]  subnet-050b5a070768d2737 (us-east-1f)
  [ ]  subnet-074572b18f5698f1f (us-east-1a)
  [ ]  subnet-0f7041e8bbfcb605c (us-east-1a)
  [ ]  subnet-0ba3f0ead1f486510 (us-east-1a)
  [ ]  subnet-04a0a9a3def2d7701 (us-east-1a)
  [ ]  subnet-0c7b531f9375931b1 (us-east-1f)

What do you think?

Also, you need to add
mockgen -package mocks -destination=pkg/aws/mocks/ec2api.go github.com/aws/aws-sdk-go/service/ec2/ec2iface EC2API

in the Makefile and run make mocks to regenerate the mock files

@vkareh I dont think we should invest too much in a multi / single az complex selection logic - I think that if the user selected multi-az they should pick the correct number of subnets - this is essentially derived from that choice.
I chose you're third suggestion - showing the az's in the subnet selection - I think it make the most sense.

/retest

/retest

@vkareh please re-tal

/retest

This is great stuff, thanks a bunch @nimrodshn!
/lgtm

/test lint

great, now we have a conflict :(
Can you please rebase?

@vkareh done.

/lgtm
Thanks @nimrodshn :+1:


Data Only peforming POC.

it has been noted that data-only hotspots are participating in POC (actively sending beacons, and listening and reporting witnesses),
i see some merit to keeping the witness receipts getting recorded but would it not be a idea to have beacons disabled on data-only hotspots maybe a var in gateway rs to activate beacons

Note that #428 disables both beaconing and witnessing.. witness reporting is not useful for a DO hotspot since a hotspot not on chain can't earn for witnessing either.

My not working I have tried all my best don't know what to do

My not working I have tried all my best don't know what to do

What doesn't work? Add more information please? Make sure it's related to this actual issue


Submit event is swallowed when field is focused

Bug report
Current Behavior
Pressing "submit" button when focused on a field swallows the submit event.
Expected behavior
Pressing "submit" button should submit the form.
Reproducible example
https://codesandbox.io/s/formik-blur-bug-olqym

Focus on "First name" field
Enter anything
Click on the "Submit" button with your mouse, while focus is still in the text input

Expected state:
{
  "submitCount": 1,
}

Actual state:
{
  "submitCount": 0,
}

Suggested solution(s)
I think the problem originates from setFieldTouched.  See v.1.5.8 - validation was triggered after the "touched" state was updated. In 2.x.x it happens at the same time.
Additional context

Your environment

Software
Version(s)

Formik
2.2.6

React
^16.12.0

TypeScript
N/A

Browser
Firefox 85.0.2 (x64)

npm/Yarn
N/A

Operating System
Windows 10

This is a react issue. The blur is updating your HTML which pushes the submit button outside of the area that you clicked meaning by the time you "mouseup" (this is where click happens), the button already moved.
See https://github.com/formium/formik/issues/1796#issuecomment-605685583


Wont work for latest minecraft version

Same here

Please close this, it has not been updated yet.  It is being worked on.  There are a few betas floating around, but they are incomplete.


BUG: Inconsistent date parsing of month/year

>>> pd.Timestamp('2014-06')
Timestamp('2014-06-01 00:00:00')
>>> pd.Timestamp('06-2014')
Timestamp('2014-06-09 00:00:00')

When parsing a string "YYYY-MM", the day defaults to the 1st of the month (the behavior I would expect, consistent with defaulting hour minute and second to 0), while "MM-YYYY" defaults the day to today's day. If the string format is specified manually as in pd.to_datetime('06-2014',format='%m-%Y'), the day consistently defaults to the first of the month.

This is fixed I believe by #7599

Thanks for the report! Yes #7599 should solve this. I've added tests for sure.


docs(index) minor grammatical fix

Seems reasonable to me. Thanks for the PR, apologies for not seeing it sooner.


nits in lambda test

I think there are some nits in the lambda test. For example, Analysis::make inserts the ID of variables to free, but lambda takes a symbol and CaptureAvoid::apply_one tests if that symbol is in free, which will always be false. To see this, changing lambda_capture_free to the following will fail:
 egg::test_fn! {
    #[should_panic(expected = "Could not prove goal 0")]
    lambda_capture_free, rules(),
    "(let y (+ (var x) (var x)) (lam (var x) (var y)))" => "(lam (var x) (+ (var x) (var x)))"
}

Similarly, the test cases also pass symbols to let and fix, which Analysis::make would add to free.
Furthermore, in my implementation I consistently use variables instead of symbols, but implementing the free variable test as in CaptureAvoid does not work. The ID of v2 never matches any ID stored in free (any clue why this happens? Do I have to call find?) Instead, I had to test if the free var of v2 is in the free vars of e.

Oops sorry, I confused myself. free does indeed contain symbol IDs.

Oops sorry, I confused myself. free does indeed contain symbol IDs.

Yeah, this would look nicer if you could have different sorts or something. Like, it's really unintuitive that its Lambda([Id; 2]) instead of Lambda(Symbol, Id).

Yeah, this would look nicer if you could have different sorts or something. Like, it's really unintuitive that its Lambda([Id; 2]) instead of Lambda(Symbol, Id).


Creature a "Natural Attack" Feature Type

Ideally this should be usable for both Character and NPC Actors

This is not the way. Removed because it's outdated


helm_remote - fix grep command for mac

@nicks #38

@nicks I'm not a huge fan of resorting to platform detection for this, so I'm all ears if you've got better idea(s)

hmmmm...doesn't the exit code problem also exist on mac though?

xargs on mac always runs with an implicit -r (which is why it's not an option on mac)

ah ok. lgtm!


Error when using Celeste color scheme

I get the following error if I have the Celeste color scheme active, and it goes away if I have choose Monokai.
Error loading colour scheme Packages/User/SBSCompareTheme.tmTheme: Error parsing plist xml: expected < in file Packages/User/SBSCompareTheme.tmTheme on line: 1
Thanks lots for this package that I use very often. :)

@agj
Thanks for reporting, I'll take a closer look at this once I have a bit more free time.
In the mean time, can you take a look at what build of Sublime you're using?
Also, are you on OSX by any chance?
Thanks.

Right! I'm sorry for not providing any useful information, that was thoughtless of me. Yes, I'm on macOS High Sierra (10.13.5), and my version of Sublime is 3.1.1 build 3176.

Let me know if there's anything I can do to help. I have only limited Python abilities though, and I'm not familiar with how packages are written for Sublime, or its internals, but if you want me to test some code or attempt some specific tests, hit me.

Same error message here. I'm on Linux. I took a look at the package directory. The generated color scheme is a mix of json and xml. I think the python script wrongly determines that the legacy colorscheme file format is in use, while it isn't. I'm trying to work around this issue by adding scheme_json = True after line 177, the try-except block. But I don't know what steps to take to make my change "take" in the Package folder structure. That's because I installed this plugin with Package Control, which hides away the github package structure (I'm a new ST3 user).

I made some progress. This is what really happens when scheme = json.loads( scheme ) is executed under try (now commented out):
  File "./python3.3/json/__init__.py", line 316, in loads
  File "./python3.3/json/decoder.py", line 351, in decode
  File "./python3.3/json/decoder.py", line 367, in raw_decode
ValueError: Expecting property name enclosed in double quotes: line 6 column 9 (char 92)

I imagine it means that the Celeste color scheme file itself has some syntax issues. I'll go check. Meanwhile, my take away is that try: json.load() isn't solid enough to test whether the json color scheme format is in use.

Ok, work-around attached. It's a patched Celeste color scheme json file. Exit ST completely, then copy the attached file to a folder under Packages/Users. Mine is in  Packages/User/Color Scheme - Default.extracted/Celeste.sublime-color-scheme. Then delete files Packages/User/SBSCompareScheme.sublime-color-scheme and  Packages/User/SBSCompareTheme.tmTheme and start ST. Now try to compare something, i.e., select a word and right-click to mark the selection for comparison. Do the same for another selection. Finally right-click and choose Compare Selections. It works for me.
Celeste.sublime-color-scheme.zip
The attached file is a valid json file derived from the original one that is distributed with ST3. The original file includes invalid comments // and invalid commas after the last element of severl json arrays. However, since it works for Sublime HQ Pty Ltd, I guess they must have written their own little json pre-processor before they pass valid json to json.loads().
@DougTy, I gave up looking for a patch after I realized that the Celeste scheme json syntax is augmented by design. You should consider sanitizing the json data before it goes through json.load() otherwise the plugin could fail with other color scheme files that use the same augmented syntax.
One last issue. With the patched color scheme loaded, if I select Preferences... > Color Scheme... in the ST menu, this error message shows up:

Error loading colour scheme Packages/User/SBSCompareTheme.tmTheme: Bad XML.

Regardless, now the plugin works for me (limited testing). Thank you very much for this plugin!

@step- Thanks for debugging!
You were right on the money, the issue definitely seems to have been invalid JSON in Celeste.
Luckily, Sublime's API apparently has its own function for reading JSON now which can handle comments & other invalidness, so I've updated the plugin to use that instead of the standard json.loads
The fix should be on package control within about an hour.
It works for me on Linux, @agj can you confirm if this fix works for you on OSX?
Cheers.

Amazing detective work, @step-! It's working for me now with the patched color scheme, so I expect the new version to work. Thank you, @DougTy for providing it, and I'll let you know how it goes when it shows up in Package Control. :)
Sublime Text is probably using JSON5 or a similar enhanced version of JSON...

@DougTy and @agj, glad I could help! I learned a few things from debugging this issue.

Sublime Text is probably using JSON5 or a similar enhanced version of JSON...

Maybe it's time for me to update JSON.sh :)

Woops, looks like it updated itself with no warning, and I was left waiting. Anyway, I can confirm that after the fix it's working, as expected. Woo!

I was getting a similar error, with any color profile. I had a look in my folders, and I think I might have manually unpacked the SBS plugin when I first installed it. Removing SBS-related files in these three places:

One file in /Cache/User (called something like Compare Side-By-Side?)
The folder /Packages/Compare Side-By-Side
Three files in /Packages/User/

... and reinstalling Compare Side-By-Side via the package management system at Preferences > Package Control > Install Package fixed the problem.
Thanks for a great tool!


Decouple versions from github tags

Is it possible to decouple versions from github tags?  We often fix typos and improve our docs after a release but we don't want to move our tag, or cut a new code release just to fix the docs and it'd be confusing to tag 1.3.1 just for the docs without shipping 1.3.1 code.
Maybe a tag/branch called <version>-rtd, which RTD could use in preference to the main <version> tag if it exists?

Versions will always be coupled with a VCS tag/branch. This sounds like more of a release engineering issue. If your docs don't correctly reflect your release, is it really a release? :)
This addition seems like a work around for treating the doc changes as part of your code changes, and bumping the minor release number. We aren't likely to support an issue like this, as the primary motivation behind Read the Docs is to promote documentation as part of your code.

We use readthedocs to provide online documentation for our product rather than, say, API docs that are extracted from the code.  For API docs, that tight coupling makes a lot of sense.
Shipping a new version of the product itself is a lot of work with significant knock-on consequences for our customers.  We have to make release announcements, update over a dozen package repositories and, more importantly, our users see package churn: their apt-get, yum and pip will tell them there's a new version, which is a big deal for the type of customers we have (they're the sort of customers who maintain their own package repos behind-the-firewall).
I want to be able to fix bugs in the documentation for 1.3.0 without having to ship a 1.3.1 release with no code changes so that, when the next user looks at the documentation, they get a better experience rather than being forced to live with the bugs in the docs.
Another reason for offering a feature like this is it would allow me to update the very old docs with, for example, a deprecation banner that links to the latest upgrade instructions.

You can use release branches instead of tags for this functionality.

@ericholscher can branches get promoted to "stable"?  The docs aren't too clear on that.

@fasaxc Did you ever figure this out? I'd also like to be able to update the docs without releasing a new version of our library
Branches do appear to be considered the stable version, but the branch name must semvar-versionlike (e.g. v1.0 or 1.0). The only problem is that once you tag a release on that branch - presumably a patch release, like 1.0.1 - it has a higher version number than your branch and any changes to the docs will not appear in the stable version until the next patch release.
If RTD ignored tags, then we could activate the branch for each minor version and decouple the docs from patch releases, which seems pretty sensible. Did you know if there is an option to get RTD to completely ignore tags?

@doubleo2 Sorry, no I haven't got any further with this.

Hi all! What's the status of this issue?
Now, RTD takes preference of tags over branches. So, if you have a 1.5 tag and a 2.0 branch, the stable version at RTD will be 1.5 since the branch is considered "in development" since it's a branch.

This seems like a workable solution for the issue. Closing due to inactivity.

@agjohnson If you are referring to "RTD [taking] preference of tags over branches", I'm not sure how that is a workable solution to the original issue.
Choosing a lower semvar tag over a higher semvar branch as the stable version is useful when working on a pre-release version, not when trying to fix typos in the docs for an already released version.
I'm in a similar position as the OP, where the docs are not strictly coming from docstrings and I'd like to be able to fix typos without releasing a "new version" of my library even though the library has not changed - not even the docstrings. However, I'd still like to be able to tag my releases.
Ideally, RTD would have option to simply "ignore all tags". As it stands the only workaround I can think of - but haven't tested - would be to use non-PEP440 compliant tags (e.g. x1.0) so RTD will ignore them; assuming it doesn't break a different part of your release process.

@doubleo2 you can use pre-release versions, so they aren't promoted as stable (you also can try using a post-release versions https://www.python.org/dev/peps/pep-0440/#post-releases).
>>> from packaging.version import Version
>>> vs = [Version('1.0'), Version('1.0.a'), Version('1.0.post')]
>>> vs
[<Version('1.0')>, <Version('1.0a0')>, <Version('1.0.post0')>]
>>> vs.sort()
>>> vs
[<Version('1.0a0')>, <Version('1.0')>, <Version('1.0.post0')>]
>>> filter(lambda x: not x.is_prerelease, vs)
[<Version('1.0')>, <Version('1.0.post0')>]

That's how rtd choose the stable version, it this case the post-release will be chosen as the new stable (not sure if it's correct though).


[W04H02] Add test for edge cases of .merge(int[][] arrays, int from, int to)

Description
Theoretically, is it not possible to hit these edge cases, when you call megaMergeSort(). However, we learned from W03 that this is nothing you can depend on. All methods are protected which means they can be called from outside the class. Therefore, it's possible to call the method with "stupid" input.
This PR contains this edge cases:

.merge(int[][] arrays, int from, int to) should handle negativ from values
.merge(int[][] arrays, int from, int to) should handle to values greater than the length of the arrays
.merge(int[][] arrays, int from, int to) should handle a negative range
.merge(int[][] arrays, int from, int to) should handle a range is out of bounds
.merge(int[][] arrays, int from, int to) should handle a range where from is greater than to

Source for this behavior: https://zulip.in.tum.de/#narrow/stream/1450-PGdP-W04H02/topic/to.20.3C.20from

Hab’s durchgelesen und es passt 👍

LGTM


[Event Change] CU444 "Purchase-Post Prepayments" - procedure PostVendorEntry()

------------------ Change IntegrationEvent Attribute ----------------------
IncludeSender : true, GlobalVarAccess : true
-------------------------------------------------------------------------------

[IntegrationEvent(TRUE, TRUE)]
local procedure OnRunCheckOnBeforeTestDocumentDate(var PurchHeader: Record "Purchase Header"; TotalPrepmtInvLineBuffer: : Record "Prepayment Inv. Line Buffer"; TotalPrepmtInvLineBufferLCY: Record "Prepayment Inv. Line Buffer"; DocumentType: Option Invoice,"Credit Memo"; PostingDescription: Text[100]; DocType: Enum "Gen. Journal Document Type"; DocNo: Code[20]; ExtDocNo: Text[35]; SrcCode: Code[10]; PostingNoSeriesCode: Code[20]; CalcPmtDisc: Boolean, var GenJnlPostLine: Codeunit "Gen. Jnl.-Post Line"; var IsHandled: Boolean)
begin
end;

GlobalVarAccess was deprecated in 16.x, there is concept of protected var instead. You can list here the global vars that have to be protected and accessible from extensions.
Please put the code surrounding the place, where you expect a new event call, as a text not as a screenshot.
It helps us finding the right place quickly if you put enough code to identify the unique place.


Fixing up the Contribute.md file

Edit: I mean the CONTRIBUTING.md file.
I think I see how I can make the contribution page a little more clear. I am in the process of editing it up and will issue a pull request for my changes when I am done.
https://github.com/hotosm/learnosm/blob/gh-pages/CONTRIBUTING.md
If anyone else is working on this file, please let me know here. I should have my version of this file done in about a day.
Regards,
Blake

see #526 and #329 - closing this issue now as contributing.md was updated and tidying is now being covered on the other issues


add weighted quantiles

Description of PR
Adds a df.quantile() function which calculates (possibly weighted) quantiles for a variable across a population of models and scenarios.
If this feature is useful for others in the community, I'm happy to improve the PR, add a tutorial, etc.
cc @chrisroadmap
Please confirm that this PR has done the following:

[x] Tests Added
[x] Documentation Added
~[ ] Name of contributors Added to AUTHORS.rst~
[ ] Description in RELEASE_NOTES.md Added

TODOS

[ ] support custom names (currently put into model)

Adding to RELEASE_NOTES.md (remove section after adding to RELEASE_NOTES.md)
Please add a single line in the release notes similar to the following:
- (#XX)[http://link-to-pr.com] Added feature which does something

Thanks @gidden, this sounds really useful!
A few comments:

I developed a Statistics module for the SR15, see the docs and a real-world use case here. The main advantage of the Statistics class is that you often want to do quantiles on groups of scenarios (e.g., the temperature categorization). If I understand the current implementation correctly, the method will always compute quantiles grouped by scenario names indexed by model, region and variable - we should probably anticipate a more flexible approach.
If you proceed with implementation in this way, I suggest to add that as method like IamDataFrame.compute.quantiles() to avoid too many methods directly on the IamDataFrame class. See the docs.

@danielhuppmann - FYI - I am seeing test failures in test_datareader.py not related to this PR.
I'm also hoping to clean this up, time permitting, in the next days.

@danielhuppmann - FYI - I am seeing test failures in test_datareader.py not related to this PR.

But all checks except one passed, so I guess that the Woldbank-server just had a hick-up in that second. Re-running the failed test might do the trick...

all committed, should be g2g @danielhuppmann ! Thanks for the review!

Release notes are still missing - pretty please!

Release notes updated and issues made @danielhuppmann

Thanks @gidden!


Waybar re-runs the previous custom on-click command

I have set up a custom button on waybar from which I can open a menu to choose if I want to suspend, reboot or poweroff my PC. If I hit ESC nothing happens and the menu goes away. The issue is that when I do this waybar wants to re-run the command always after I have cancelled that one, no matter where I click on the waybar. If I click to change to a different workspace, my custom menu gets triggered instead.
Here's my configuration:
    "custom/suspendbutton": {
        "format": "",
        "on-click": "echo -e \"suspend\nreboot\npoweroff\" | tofi | xargs -r systemctl --",
        "tooltip-format": "Power Menu"
    },

Once the on-click has been triggered there is nothing else I can do with waybar unless I restart it. A workaround would be to detect an empty arg for xargs and run pkill waybar && waybar if xargs receives no input.
I'm on hyprland. My waybar version is v0.9.22. Is there some additional information I can provide for debugging?

https://github.com/hyprwm/Hyprland/issues/1348


Bug fix/cloud config overwrite

🗣 Description

This fixes the cloud-config not properly rendering during boot.  It required a merge command for each of the cloud-config parts.
Fixes #9
💭 Motivation and Context

This was a bug.  The OpenVPN primary.conf file was not being rendered, which means the OpenVPN server was not properly configured. (It would use the defaults from the ansible-role)
🧪 Testing

Not much.
📷 Screenshots (if appropriate)
🚥 Types of Changes

[x] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (causes existing functionality to change)

✅ Checklist

[x] My code follows the code style of this project.
[ ] My change requires a change to the documentation.
[ ] I have updated the documentation accordingly.
[x] I have read the CONTRIBUTING document.
[ ] I have added tests to cover my changes.
[x] All new and existing tests passed.

Not yet.  There is no way this can fail.


Remove percentage

Pull Request
Short Summary
Removing percentage and reorganizing (Not done)

Codecov Report
Attention: Patch coverage is 89.09091% with 12 lines in your changes missing coverage. Please review.

Project coverage is 90.21%. Comparing base (4f1e929) to head (a9ed778).

Files with missing lines
Patch %
Lines

py-scouter/python/scouter/drift/base.py
73.91%
6 Missing :warning:

py-scouter/python/scouter/utils/types.py
54.54%
5 Missing :warning:

py-scouter/python/scouter/monitor/monitor.py
91.66%
1 Missing :warning:

Additional details and impacted files
@@            Coverage Diff             @@
##             main      #25      +/-   ##
==========================================
- Coverage   91.14%   90.21%   -0.93%
==========================================
  Files          14       17       +3
  Lines         621      685      +64
==========================================
+ Hits          566      618      +52
- Misses         55       67      +12

Files with missing lines
Coverage Δ

py-scouter/python/scouter/__init__.py
100.00% <100.00%> (ø)

py-scouter/python/scouter/drift/__init__.py
100.00% <100.00%> (ø)

py-scouter/python/scouter/drift/drift.py
100.00% <100.00%> (ø)

py-scouter/python/scouter/drift/spc.py
90.62% <100.00%> (ø)

py-scouter/python/scouter/integrations/base.py
100.00% <100.00%> (ø)

py-scouter/python/scouter/integrations/fastapi.py
85.00% <100.00%> (ø)

py-scouter/python/scouter/integrations/http.py
88.52% <100.00%> (ø)

py-scouter/python/scouter/integrations/kafka.py
88.17% <100.00%> (ø)

py-scouter/python/scouter/integrations/rabbitmq.py
83.07% <100.00%> (ø)

py-scouter/python/scouter/profile/profile.py
86.95% <100.00%> (ø)

... and 3 more


Map projection and  coordinate question

When I use the map of mercator the map shows normally.

But when I use the map of projection of lat/lon ,it may shows wrongly.It has something wrong with latitude,but longitude is ok.

As you can see in the picture.The lat 0 is not at the real equator,but at the conjunction of map and blank area.The latitude is not right ,so when I try locate my location it also comes to a wrong place.So how do I do to solve this problem?Can I get rid of the blank area?Thanks~
Here is the WMTS sever url I use in the second picture:
http://t0.tianditu.com/ter_c/wmts?service=wmts&request=GetTile&version=1.0.0&LAYER=ter&tileMatrixSet=c&TileMatrix={TileMatrix}&TileRow={TileRow}&TileCol={TileCol}&style=default&format=tiles

The project is wrong. Osmdroid uses the Web Mercator project out of the box. If you change tile sources to something other than Web Mercator, you'll also need to change the projection implementation. Since we don't have any other implementations, you're left with the following options

Convert your web source and/or map data to use web mercator
write your own project implementation for the projection (looks like equirectangular)

i'm guessing that the lack of response means that the question was answered sufficiently. good luck. reopen if needed


METRON-1220: Create documentation around alert nested field

Contributor Comments
Adding some docs around the requirement of an "alert" field on new sensors.
There's an open discussion thread [DISCUSS] Meta alert Elasticsearch new template requirement ramifications that has at least one question about what this should look like, so feel free to chime in there.
Outstanding Question

Where should this live?  I have this put up, so people can see what it says, but I'm pretty sure it should live somewhere else, under a different heading.  I'm just not sure what the best fit is.
Should additional documentation around our ES templates and other sensors requirements be added now or in the future.

I'll be running the proposed curl up in full dev, so that's slightly subject to change.  Normally, updates to temples don't affect existing ES indices, but since it's a dummy field without data I cautiously expect it to function.
Pull Request Checklist
Thank you for submitting a contribution to Apache Metron.
Please refer to our Development Guidelines for the complete guide to follow for contributions.
Please refer also to our Build Verification Guidelines for complete smoke testing guides.
In order to streamline the review of the contribution we ask you follow these guidelines and ask you to double check the following:
For all changes:

[x] Is there a JIRA ticket associated with this PR? If not one needs to be created at Metron Jira.
[x] Does your PR title start with METRON-XXXX where XXXX is the JIRA number you are trying to resolve? Pay particular attention to the hyphen "-" character.
[x] Has your PR been rebased against the latest commit within the target branch (typically master)?

For code changes:

[x] Have you included steps to reproduce the behavior or problem that is being changed or addressed?

[ ] Have you included steps or a guide to how the change may be verified and tested manually?

[x] Have you ensured that the full suite of tests and checks have been executed in the root metron folder via:
mvn -q clean integration-test install && build_utils/verify_licenses.sh

[x] Have you written or updated unit tests and or integration tests to verify your changes?

[x] If adding new dependencies to the code, are these dependencies licensed in a way that is compatible for inclusion under ASF 2.0?

[ ] Have you verified the basic functionality of the build by building and running locally with Vagrant full-dev environment or the equivalent?

For documentation related changes:

[x] Have you ensured that format looks appropriate for the output in which it is rendered by building and verifying the site-book? If not then run the following commands and the verify changes via site-book/target/site/index.html:
cd site-book
mvn site

Note:
Please ensure that once the PR is submitted, you check travis-ci for build issues and submit an update to your PR as soon as possible.
It is also recommended that travis-ci is set up for your personal repository such that your branches are built there before submitting a pull request.

Where should this live? I have this put up, so people can see what it says, but I'm pretty sure it should live somewhere else, under a different heading. I'm just not sure what the best fit is.

Whichever README this lands in, I would prefer to see it in a section entitled something like "Using Metron with Elasticsearch 2.x".
Does this make sense in the (currently non-existent) metron-elasticsearch/README.md?
We could link to metron-elasticsearch/README.md from the current location (The MetaAlertDao section) if you think that it makes sense.  My thought is that a user encountering this problem, won't even know what the MetaAlertDao is, so I think the current location is not very user friendly.

Honestly, I think it should at the very least be linked from the documentation which tells people how to create their own parsers...which we do not seem to have. ;)

Also, should be linked from metron-parsers makes sense IMO as any time you are adding a new sensor, you're going to need to add this field. This is the use-case that keeps biting us in the butt over the last week.

Honestly, I think it should at the very least be linked from the documentation which tells people how to create their own parsers...which we do not seem to have. ;)

Yes @cestella, I was thinking the same thing too.  Right now, I think that means just updating the Squid Getting Started blog series in the Metron Wiki/Blogs.
We really should capture that entire Squid Getting Started Guide in our version controlled docs at some point.

@cestella @nickwallen Hopefully took care of comments that don't involve migrating wiki docs.  Let me know if I looked over anything.  Sidenote, does anybody know how to actually link to a head in a different doc?  Anything inside the same doc works fine, but across docs would be better.
Test Plan
Setup
Rather than creating a new parser, let's just break the Bro one.

Spin up full dev
Stop bro in monit.
Pull down the bro template and delete the extra JSON tag we don't needcurl -XGET "http://node1:9200/_template/bro_index*?pretty" -o "bro.template"
sed -i '' '2d;$d' ./bro.template

Open it in an editor and remove the alert field under properties
Push the template back.curl -XPUT "http://node1:9200/_template/bro_index" -d @${SENSOR}.template

Ensure the alert field does NOT show up in the template:curl -XGET 'node1:9200/_template/bro_index*?pretty' | grep '"alert"'

Delete any existing bro indicescurl -XDELETE 'localhost:9200/bro*?pretty'

Turn bro back on in Monit.
Wait until new data flows through the system into the bro indexes.
Make sure that the mapping has no alert field (i.e. Did our updated template apply as expected?).  At this point we should have a sensor without the proper template and existing data.curl -XGET 'node1:9200/bro*/_mapping?pretty' | grep '"alert"'

Go into the Swagger UI and run the following search.  It should fail with a 500:{
  "fields": [
    "*"
  ],
  "from": 0,
  "indices": [
    "bro"
  ],
  "query": "*",
  "size": 10
}

Run through the commands given in the metron-elasticsearch README to update both the template and the mappings.
Ensure the alert field shows up in the mappings:curl -XGET 'node1:9200/bro*/_mapping?pretty' | grep '"alert"'

Ensure the alert field shows up in the template:curl -XGET 'node1:9200/_template/bro_index*?pretty' | grep '"alert"'

Rerun the query from the Swagger UI.  Results should be returned now with no error.

@justinleet: Sidenote, does anybody know how to actually link to a head in a different doc? Anything inside the same doc works fine, but across docs would be better.

The following example is used to link from the Profiler Client README to a section in the Profiler README.  Is this what you are looking for?
[Getting Started](../metron-profiler#getting-started)

@nickwallen I figured out what the problem was. I'd replaced dashes with spaces and lowercased it, but left the period in 2.x.  After removing the period, links worked.
@cestella Added sections to the various files.  Upgrading.md is a more stripped down version of what's in the main README addition.  Minor catch is is we don't really have a nice way to point to a more permanent (i.e. github) link since we don't actually have a permanent link to point to yet.  I just referred to metron-platform/metron-elasticsearch/README.md without an actual link.  Let me know if there's something better you'd like to see there.

Kicking Travis.

+1 LGTM.  Thanks!

A hearty +1!


feat: add ghostty theme config

Adds theme config for newly released ghostty terminal

Welcome @xero -- I believe you need to merge as I don't have write access

i reviewed it on my phone. i wanna test it on my computer this afternoon. been meaning to test drive ghostty

looks great! thanx again


App2 Web Oauth Issue

I am linking a bank account mid-onboarding flow in my application using react-plaid-link.
When plaid launches an App2App bank linking scenario it opens a new tab in the browser once the user completes the App2App flow and hence I am not able to continue my onboarding flow, since I don't have the session data in the new tab.
I have provided the proper linkToken and also implemented redirectUri and receivedRedirectUri tags and it works correctly when the oauth is successfully done within the browser, but not when it opens another bank's app like Chase.
Is there a way to force the oauth to be done within the webview/browser tab rather than being taken to a separate app.
Or is there a way to help me maintain the onboarding session without having to store the onboarding data in an unsafe local storage, like can I provide a token from my side while creating the linkToken which can be sent back to me along with the oauth_state_id query to resume my onboarding session.

Closing this out, as app2app OAuth redirect behavior has changed substantially since this issue was originally filed. To answer the question as asked, though, it is not possible to disable app2app redirects.


Continuum Normalization Method

Iterative continuum normalization?
Non-Cannon way: take the spectra of all reference objects, normalize with the 90th percentile method, and from the ensemble of spectra produce two vectors (1-the spectrum, variance) and apply a cut on both to find the continuum.
We need to figure out what the best functional form of the continuum fit is.

is this issue closed or branched to a new issue?

Branched to a new issue, sorry. HW opened one called "Continuum" which I realized was essentially the same thing, so I just closed this one.


Nightlights

NTLR_JAXA_Nighttimelevel_Rural NTLU_JAXA_Nighttimelevel_Urban

The updates will be visible on main once we get the pipeline to run again. Closing this PR (the update with double quotes is not necessary)


firefox-unwrapped: fix drmSupport option

Motivation for this change
EME is enabled by default, so adding --enable-eme=widevine is a noop. This means that firefox was always being built with DRM support, even with drmSupport set to false.
I’ve been sitting on this commit for two years, because I’m not sure what the right thing to do about this now.  In the years it’s been broken, people have probably come to expect the Firefox in Nixpkgs to have DRM enabled by default.  Especially since AIUI Firefox still prompts the user to agree before downloading the Widevine blob on Linux.
On the other hand, there’s this comment:
https://github.com/alyssais/nixpkgs/blob/464dee9a9beb22f651c1ddb95fd32ab38870c304/pkgs/applications/networking/browsers/firefox/common.nix#L35
This commit currently errs on the side of following the intended functionality of the code by disabling DRM at compile time, even though that’s not the result it’s actually produced (at least for a long time).
Whichever of those two options we pick, the status quo is clearly not right, because we have a drmSupport option that doesn’t actually do anything.
Things done

[x] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS linux)
Built on platform(s)

[x] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
[x] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[ ] Ensured that relevant documentation is up to date
[x] Fits CONTRIBUTING.md.

I'm against merging this as is, as it changes the de-facot default, even though the default is broken, as you've pointed out.
Although I don't really know what the best solution would be, either. We could always go the "a documented bug isn't a bug" route and just add something to the release notes saying "Firefox DRM was mistakenly enabled by default, because the option to disable it, which was and is set to false, was broken. That option was fixed and now it is actually disabled by default. To re-enable it, put this (overlay, whatever, something, idk) into your configuration."

I'm against merging this as is, as it changes the de-facot default, even though the default is broken, as you've pointed out.
Although I don't really know what the best solution would be, either. We could always go the "a documented bug isn't a bug" route and just add something to the release notes saying "Firefox DRM was mistakenly enabled by default, because the option to disable it, which was and is set to false, was broken. That option was fixed and now it is actually disabled by default. To re-enable it, put this (overlay, whatever, something, idk) into your configuration."

I had a look through the Firefox source code, and the only change this option makes is whether the following options are enabled by default:
browser.eme.ui.enabled
media.gmp-widevinecdm.visible
media.gmp-widevinecdm.enabled

So it doesn’t actually leave out support for anything.  I assume this means that if a user had previously enabled DRM, updating Firefox to one built with drmSupport set to false wouldn’t suddenly disable it for them.  On the other hand, it would also remove the UI that would allow them to turn it off.
I wonder if there might be a middle ground here — what if we make drmSupport mean “does Firefox prompt the user to install Widevine?”.  We could then leave the checkbox in about:preferences enabled, but disable the prompt when a website tries to use DRM.  That way, we wouldn’t be artificially complicating enabling DRM for a user that wants to succumb to it, but Firefox wouldn’t be going out of its way to tell them to do it either.

I had a look through the Firefox source code, and the only change this option makes is whether the following options are enabled by default:
browser.eme.ui.enabled
media.gmp-widevinecdm.visible
media.gmp-widevinecdm.enabled

So it doesn’t actually leave out support for anything.  I assume this means that if a user had previously enabled DRM, updating Firefox to one built with drmSupport set to false wouldn’t suddenly disable it for them.  On the other hand, it would also remove the UI that would allow them to turn it off.
I wonder if there might be a middle ground here — what if we make drmSupport mean “does Firefox prompt the user to install Widevine?”.  We could then leave the checkbox in about:preferences enabled, but disable the prompt when a website tries to use DRM.  That way, we wouldn’t be artificially complicating enabling DRM for a user that wants to succumb to it, but Firefox wouldn’t be going out of its way to tell them to do it either.

I assume this means that if a user had previously enabled DRM, updating Firefox to one built with drmSupport set to false wouldn’t suddenly disable it for them. On the other hand, it would also remove the UI that would allow them to turn it off.

Can you verify that assumption? If not, I can maybe look into how Firefox actually behaves when this changes, soonish.

I wonder if there might be a middle ground here — what if we make drmSupport mean “does Firefox prompt the user to install Widevine?”. We could then leave the checkbox in about:preferences enabled, but disable the prompt when a website tries to use DRM. That way, we wouldn’t be artificially complicating enabling DRM for a user that wants to succumb to it, but Firefox wouldn’t be going out of its way to tell them to do it either.

That sounds like it might be a reasonable option, yes. How would we implement that?
Also, maybe some of the people maintaining Firefox now (that's @mweinelt and @lovesegfault) have some input on this.

I'm fine with changing the default behavior, but not with breaking people's setups. In other words, if this change means future users need to take an extra step to enable DRM, that's okay IMO. If, on the other hand, it meant people currently using FF with DRM (myself) have to go do something to get it to work, I'm less receptive to it.
From the discussion here, it seems to be the former, as it only changes some default configs, which is perfectly fine with me.
Before merging, ideally, someone would test:

[ ] If you had DRM enabled / working, does it still work?
[ ] Can you enable / use DRM after this change without having to recompile FF?

Finally, we have to be careful changing FF defaults because of the copyright issues. If we stray from what Mozilla deems acceptable defaults we have to disable all the FF branding and so on. I have no idea how to check this though. In the past, for Thunderbird, I just asked on MozIRC until I got someone to say it was alright. That IRC is gone now, but maybe Matrix might be the place to ask?

I consider this a bug in our build and I'm fine with merging this, but I do see the point that we should point out via release notes that this bug existed, was squashed and how to reenable DRM if one feels the need to.

was squashed and how to reenable DRM if one feels the need to.

Most people don't feel like but they are required to watch something. If you need to recompile firefox just to watch some videos you already paid for and could in the past is a terrible user experience.
Either we compile two variants of firefox or we just remove the option if it didn't work before. If you don't want the DRM stuff don't click yes when firefox prompts you to download it.

If you want DRM you can use firefox-bin for all I care.

If you want DRM you can use firefox-bin for all I care.

Thats great to know and I need to remember that. Do we have any knowledge what most people are using right now? If a lot of people need to switch to firefox-bin we should think about something else.

I just verified what Alyssa said in https://github.com/NixOS/nixpkgs/pull/109133#issuecomment-759349258. I also checked browser/app/profile/firefox.js in the mozilla-central repository which contains the following logic:

Enabling browser.eme.ui.enabled is what shows you the DRM nag bar.

#if defined(MOZ_WIDEVINE_EME)
  pref("browser.eme.ui.enabled", true);
#else
  pref("browser.eme.ui.enabled", false);
#endif

The nagbar itself enables browser.eme.enabled.

For widevine usage on Netflix creating the following settings was sufficient:

#ifdef MOZ_WIDEVINE_EME
  pref("media.gmp-widevinecdm.visible", true);
  pref("media.gmp-widevinecdm.enabled", true);
#endif

I think we can write a sufficiently clear release notes entry from these infos and I might do it if @alyssais isn't interested in this change anymore.

If you had DRM enabled / working, does it still work?

It gets disabled and needs to be manually reenabled.

Can you enable / use DRM after this change without having to recompile FF?

Yes. Setting
  pref("media.gmp-widevinecdm.visible", true);
  pref("media.gmp-widevinecdm.enabled", true);

via about:config.

Yes. Setting
  pref("media.gmp-widevinecdm.visible", true);
  pref("media.gmp-widevinecdm.enabled", true);

via about:config.

The question is, how trivial would it be for an average user to come up with that - what kind of web search will they perform and how likely they long will it take them to find the issue. I did a quick search of "firefox no drm" and I haven't found a website mentioning these config options, hence I downvote :-1: the change in it's current form.
Taking the change here as a start, I think we also need to enable drmSupport by default, with a proper comment explaining that one can disable the download of the blobs with a proper change in about:config.

Closed via #166078


Can't remove newly added element

When removing newly added element, the UI is not updated.
See following
https://plnkr.co/edit/WcK824ulv9jOEOLODG3l?p=preview
Drag in new item from list1 to list2, and click it to remove. The UI is not updated. (Only dragged items is not updated).

should be fixed with the latest version. Cannot validate plunkr (does not run for me anymore)


Unicode error from gevent

I was getting an UnicodeError from gevent here:
https://github.com/gevent/gevent/blob/master/gevent/pywsgi.py#L694
Because of this line in gevent-socketio:
https://github.com/abourget/gevent-socketio/blob/master/socketio/handler.py#L77
Changing it to  ("Access-Control-Max-Age", "3600") fixed it.  Is this an acceptable fix?

Ah, just saw pull request https://github.com/abourget/gevent-socketio/pull/221 that addresses exactly this.  Closing.


clear warnings in http-core

@jrudolph Should this be reviewed?

@jrudolph This need a rebase.

@jrudolph would you mind me merge your changes and push it，or you will do it sometime later?

@mdedetrich @pjfanning I think we can continue this and includes it in 1.1.0

Some of them are fixed already. I think we can continue dev on Pekko HTTP for a few more days but the aim is to do a 1.1.0 release when Pekkko 1.1.1 is released.

Some of them are fixed already. I think we can continue dev on Pekko HTTP for a few more days but the aim is to do a 1.1.0 release when Pekkko 1.1.1 is released.

Just re-iterating that we shouldn't do a release of Pekko Http until https://github.com/apache/pekko-http/pull/590#pullrequestreview-2281514043 is addressed


What is the command used to generate the vert.spv and frag.spv files?

https://github.com/gfx-rs/gfx/blob/master/examples/hal/quad/data/frag.spv
any information on this?

glslang with trivial parameters. We'll probably migrate to keeping only GLSL shaders in the examples and generating SPV from build scripts.

ah okay i could reproduce it, thanks


Fix UPDATE with joins

Make sure these boxes checked before submitting your pull request.

[v] Do only one thing
[v] No API-breaking changes
[v] New code/logic commented & tested

For significant changes like big bug fixes, new features, please open an issue to make an agreement on an implementation design/plan first before starting it.
What did this pull request do?
Currently, UPDATEs don't support tables joining. Here I try to fix this issue. Unfortunately, sqlite doesn't support 'UPDATE ... JOIN ...' at all and a custom syntax (like db.Table("users").Joins("users AS users2").UpdateColumn("name", "user2") is needed for Postgres.
Fixes #1849

Codecov Report

Merging #2444 into master will decrease coverage by 0.16%.
The diff coverage is 55%.

@@            Coverage Diff             @@
##           master    #2444      +/-   ##
==========================================
- Coverage   80.15%   79.98%   -0.17%
==========================================
  Files          24       24
  Lines        3431     3448      +17
==========================================
+ Hits         2750     2758       +8
- Misses        578      586       +8
- Partials      103      104       +1

Impacted Files
Coverage Δ

callback_update.go
84.7% <55%> (-9.42%)
:arrow_down:

Continue to review full report at Codecov.

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


Adding a null check for serverInfo

May address https://github.com/microsoft/azuredatastudio/issues/21737
The root cause of why connection is not available when selecting scripting option in context menu needs to be investigated, but adding null check in the meantime to unblock code paths to proceed further.

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

0 of 1 (0.0%)  changed or added relevant line in 1 file are covered.
7 unchanged lines in 2 files lost coverage.
Overall coverage decreased (-0.01%) to 41.567%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

src/sql/workbench/browser/scriptingUtils.ts
0
1
0.0%

Files with Coverage Reduction
New Missed Lines
%

extensions/notebook/src/dialog/configurePython/configurePythonWizard.ts
3
44.88%

extensions/notebook/src/jupyter/serverInstance.ts
4
68.64%

Totals

Change from base Build<PHONE_NUMBER>:
-0.01%

Covered Lines:
30783

Relevant Lines:
69356

💛  - Coveralls


Animation controller Exception

═════════════════════════════════Exception caught by scheduler library ═════════════════════════════════
The following assertion was thrown during a scheduler callback:
'package:flutter/src/animation/animation_controller.dart': Failed assertion: line 822 pos 12: 'elapsedInSeconds >= 0.0': is not true.
animation_controller.dart:822
2

When opening an issue, please try to provide all or some of the information indicated in the template so that we can address this issue properly (See bug template here)
More specifically, please provide the information indicated below:

A completed and minimal reproducible code sample
The output of flutter doctor -v
Reproduction steps, Expected results, Actual results
Which environment did this issue happen in? (Android/iOS/Web/MacOS/Windows/Linux)


Web interface does not allow to enter 0

Majestic settings -> Night Mode -> GPIO pins
On zero value I get a message
Value must be greater than or equal 1

For Majestic it also is not valid GPIO number

0 pin included in allowed values on web.

please test and close the ticket if it works

Fixed now in Majestic


Add ones_rs function and unit tests

@kkorolev @M-ximus
I think I found the issue.
Currently, in Visual Studio/32-bit GCC we have these two overloads:
constexpr template<typename T> T ones_rs( const T& value, size_t shamt); // no 1
uint128 ones_rs( uint128 value, size_t shamt); // no 2

Consider following call:
uint64 stuff = 0xdeadbeef;
auto v = ones_rs( stuff, 6);

GCC assumes stuff can be casted to const uint64&, and chooses overload 1.
Visual Studio prioritizes overload 2 as it is non-generic. However, for constexpr, it chooses overload 2.
I'm not sure what compiler is right here, I assume that it is even might be implementation defined.
I'll try to reproduce it on Godbolt now...

I believe replacing const T& by T or uint128 by const uint128& should fix the issue,

It did not help though.


Not working with IP Camera on Raspberry Pi

Compiled and followed the sample command from here
I can see that my Access Key ID was used by kinesisvideo, but no video stream on AWS at all.
Here is my command & output:
pi@raspberrypi:~/$ GST_PLUGIN_PATH="/home/pi/amazon-kinesis-video-streams-producer-sdk-cpp/build" gst-launch-1.0 rtspsrc<EMAIL_ADDRESS>short-header=TRUE ! rtph264depay ! video/x-h264, format=avc,alignment=au ! kvssink stream-name="test_stream" storage-size=512 access-key="XXXXXXX" secret-key="XXXXXXXXXXXXXXXXXX" aws-region="us-east-1"
Setting pipeline to PAUSED ...
log4cplus:ERROR could not open file ./kvs_log_configuration
INFO - createKinesisVideoClient(): Creating Kinesis Video Client
2022-03-10 03:43:12 [3069485072] INFO - heapInitialize(): Initializing native heap with limit size 536870912, spill ratio 0% and flags 0x00000001
2022-03-10 03:43:12 [3069485072] INFO - heapInitialize(): Creating AIV heap.
2022-03-10 03:43:12 [3069485072] INFO - heapInitialize(): Heap is initialized OK
2022-03-10 03:43:12 [3069485072] DEBUG - stepStateMachine(): State Machine - Current state: 0x0000000000000001, Next state: 0x0000000000000002
2022-03-10 03:43:12 [3069485072] DEBUG - getSecurityTokenHandler invoked
2022-03-10 03:43:12 [3069485072] DEBUG - Refreshing credentials. Force refreshing: 0 Now time is:<PHONE_NUMBER>986121197 Expiration: 0
2022-03-10 03:43:12 [3069485072] DEBUG - stepStateMachine(): State Machine - Current state: 0x0000000000000002, Next state: 0x0000000000000010
2022-03-10 03:43:12 [3069485072] INFO - createDeviceResultEvent(): Create device result event.
2022-03-10 03:43:12 [3069485072] DEBUG - stepStateMachine(): State Machine - Current state: 0x0000000000000010, Next state: 0x0000000000000040
2022-03-10 03:43:12 [3069485072] DEBUG - clientReadyHandler invoked
2022-03-10 03:43:12 [3069485072] INFO - try creating stream
2022-03-10 03:43:12 [3069485072] INFO - Creating Kinesis Video Stream test_stream
2022-03-10 03:43:12 [3069485072] INFO - createKinesisVideoStream(): Creating Kinesis Video Stream.
2022-03-10 03:43:12 [3069485072] DEBUG - logStreamInfo(): Kinesis Video Stream Info
2022-03-10 03:43:12 [3069485072] DEBUG - logStreamInfo(): 	Stream name: test_stream
2022-03-10 03:43:12 [3069485072] DEBUG - logStreamInfo(): 	Streaming type: STREAMING_TYPE_REALTIME
2022-03-10 03:43:12 [3069485072] DEBUG - logStreamInfo(): 	Content type: video/h264
2022-03-10 03:43:12 [3069485072] DEBUG - logStreamInfo(): 	Max latency (100ns): 600000000
2022-03-10 03:43:12 [3069485072] DEBUG - logStreamInfo(): 	Fragment duration (100ns): 20000000
2022-03-10 03:43:12 [3069485072] DEBUG - logStreamInfo(): 	Key frame fragmentation: Yes
2022-03-10 03:43:12 [3069485072] DEBUG - logStreamInfo(): 	Use frame timecode: Yes
2022-03-10 03:43:12 [3069485072] DEBUG - logStreamInfo(): 	Absolute frame timecode: Yes
2022-03-10 03:43:12 [3069485072] DEBUG - logStreamInfo(): 	Nal adaptation flags: 0
2022-03-10 03:43:12 [3069485072] DEBUG - logStreamInfo(): 	Average bandwith (bps): 4194304
2022-03-10 03:43:12 [3069485072] DEBUG - logStreamInfo(): 	Framerate: 25
2022-03-10 03:43:12 [3069485072] DEBUG - logStreamInfo(): 	Buffer duration (100ns):<PHONE_NUMBER>
2022-03-10 03:43:12 [3069485072] DEBUG - logStreamInfo(): 	Replay duration (100ns): 400000000
2022-03-10 03:43:12 [3069485072] DEBUG - logStreamInfo(): 	Connection Staleness duration (100ns): 600000000
2022-03-10 03:43:12 [3069485072] DEBUG - logStreamInfo(): 	Store Pressure Policy: 1
2022-03-10 03:43:12 [3069485072] DEBUG - logStreamInfo(): 	View Overflow Policy: 1
2022-03-10 03:43:12 [3069485072] DEBUG - logStreamInfo(): 	Segment UUID: NULL
2022-03-10 03:43:12 [3069485072] DEBUG - logStreamInfo(): 	Frame ordering mode: 0
2022-03-10 03:43:12 [3069485072] DEBUG - logStreamInfo(): Track list
2022-03-10 03:43:12 [3069485072] DEBUG - logStreamInfo(): 	Track id: 1
2022-03-10 03:43:12 [3069485072] DEBUG - logStreamInfo(): 	Track name: kinesis_video
2022-03-10 03:43:12 [3069485072] DEBUG - logStreamInfo(): 	Codec id: V_MPEG4/ISO/AVC
2022-03-10 03:43:12 [3069485072] DEBUG - logStreamInfo(): 	Track type: TRACK_INFO_TYPE_VIDEO
2022-03-10 03:43:12 [3069485072] DEBUG - logStreamInfo(): 	Track cpd: NULL
2022-03-10 03:43:12 [3069485072] DEBUG - stepStateMachine(): State Machine - Current state: 0x0000000000000001, Next state: 0x0000000000000002
2022-03-10 03:43:12 [3069485072] INFO - writeHeaderCallback(): RequestId: 1c8c6b70-0348-4a73-91fc-be21eee72457
2022-03-10 03:43:13 [2489230432] DEBUG - describeStreamCurlHandler(): DescribeStream API response: {"StreamInfo":{"CreationTime":1.646398625386E9,"DataRetentionInHours":24,"DeviceName":null,"IngestionConfiguration":null,"KmsKeyId":"arn:aws:kms:us-east-1:886006365359:alias/aws/kinesisvideo","MediaType":null,"Status":"ACTIVE","StreamARN":"arn:aws:kinesisvideo:us-east-1:886006365359:stream/test_stream/1646398625386","StreamName":"test_stream","Version":"ppSjsmHd08qKHOtaFUfJ"}}
2022-03-10 03:43:13 [2489230432] INFO - describeStreamResultEvent(): Describe stream result event.
2022-03-10 03:43:13 [2489230432] WARN - describeStreamResult(): Retention period returned from the DescribeStream call doesn't match the one specified in the StreamInfo
2022-03-10 03:43:13 [2489230432] WARN - describeStreamResult(): Content type returned from the DescribeStream call doesn't match the one specified in the StreamInfo
2022-03-10 03:43:13 [2489230432] DEBUG - stepStateMachine(): State Machine - Current state: 0x0000000000000002, Next state: 0x0000000000000020
2022-03-10 03:43:13 [2489230432] INFO - writeHeaderCallback(): RequestId: a80b6bb9-85f7-4ef6-a193-9efe477279fd
2022-03-10 03:43:13 [2478830688] DEBUG - getStreamingEndpointCurlHandler(): GetStreamingEndpoint API response: {"DataEndpoint":"https://s-356988f0.kinesisvideo.us-east-1.amazonaws.com"}
2022-03-10 03:43:13 [2478830688] INFO - getStreamingEndpointResultEvent(): Get streaming endpoint result event.
2022-03-10 03:43:13 [2478830688] DEBUG - stepStateMachine(): State Machine - Current state: 0x0000000000000020, Next state: 0x0000000000000010
2022-03-10 03:43:13 [2478830688] DEBUG - getStreamingTokenHandler invoked
2022-03-10 03:43:13 [2478830688] DEBUG - Refreshing credentials. Force refreshing: 1 Now time is:<PHONE_NUMBER>404020982 Expiration:<PHONE_NUMBER>3709551615
2022-03-10 03:43:13 [2478830688] INFO - getStreamingTokenResultEvent(): Get streaming token result event.
2022-03-10 03:43:13 [2478830688] DEBUG - stepStateMachine(): State Machine - Current state: 0x0000000000000010, Next state: 0x0000000000000040
2022-03-10 03:43:13 [2478830688] DEBUG - streamReadyHandler invoked
2022-03-10 03:43:13 [2478830688] Stream is ready
Pipeline is live and does not need PREROLL ...
Progress: (open) Opening Stream
Progress: (connect) Connecting to<EMAIL_ADDRESS>Progress: (open) Retrieving server options
Progress: (open) Retrieving media info
Progress: (request) SETUP stream 0
Progress: (open) Opened Stream
Setting pipeline to PLAYING ...
New clock: GstSystemClock
Progress: (request) Sending PLAY request
Progress: (request) Sending PLAY request
Progress: (request) Sent PLAY request

The RTSP URL is working on the VLC player.
Please help!

Ok, it's working after width, height, framerate are added to the command.


Very difficult to understand how to customization of themes using Hexo

well, you just need to learn how to use ejs or swig

I think Hexo lacks documentation on the flow and data available to the theme.
For example I'm still not sure who is responsible for generating the index page for tags and categories, theme or generator?

@leesei

Generators generates routes; themes decides the appearance of your site.
You can specify the layout in front-matter. Hexo will try to find the corresponding template files in your theme or use the layout specified in the generator as the fallback.

How to deal with this kind of issues?
Just close it?

Now that I've read a book on WordPress I can get hold of how Hexo works and the philosophy behind it.
The gist is that hexo process the source files and prepare data structures and it is up to the theme to do the rendering.
There are conventions in the doc for choosing which layout to load in the theme.
I agree that there are rooms for improvements in the docs.
New helper functions will be coming and customizers are recommended to study existing themes to see how they works.


Update all tf models to pass model.trainable_variables to the optimizer

RN only the classifier passes the trainable variables to the optimizer which was needed for some post training updates. All the tasks should do this

It looks like eager mode already does this, so this is just an issue for declarative mode, which by default uses all trainable variables:

        # All trainable variables, if specific variables are not specified.
        if variables is None:
            variables = tf.compat.v1.trainable_variables()


Add a method that returns an Uri to the class Endpoint in the akka-http-server interpreter

It is useful to produce links, for instance to reference endpoints from other endpoints (e.g., in a HATEOAS API). This was supported from the beginning by the play-server interpreter. We now also support it in the akka-http-server interpreter.

@LeifW, maybe you would be interested in reviewing this?

@LeifW, maybe you would be interested in reviewing this?


Create french-onion-soup

Model submission files after example.md. Put them in src/.
=> Use this emoji-variant:

- ⏲ Prep time: 10 min
- 🍳Cook time: 30 min
- 🍽 Servings: 4

File names should be the name of the dish with words separated by hyphens (-). Not underscores, and definitely not spaces.
=> src/french-onion-soup to src/french-onion-soup.md

Don't include salt and pepper and other ubiquitous things in the ingredients list.
=> Remove this


Kotlin DSL formatting looks messy

Actual Behavior
foo =
  fooDsl {
    bar +=
      barDsl {
        baz =
          bazDsl {
            bal = 1
          }
      }
  }

Expected Behavior
foo = fooDsl {
  bar += barDsl {
    baz = bazDsl {
      bal = 1
    }
  }
}

I have a fix ready and tested for this, but need to get set up to contribute.

Thanks for the report.
Expected behavior looks good to me, and improves the consistency of scoping function formatting. (changing to val foo =  puts the first lambda on the same line).
Looking forward to your patch :)

@steventrouble , iirc we had to roll this back; did you by chance look at this again?

Hi Carmi, thanks for the ping! I'm on vacation rn and some things are up in the air.
Right now, it doesn't look promising. This task may be difficult to complete without introducing other bugs, at least until there's a better abstraction for handling trailing lambdas. Given that (plus the "things up in the air"), feel free to close this bug if nobody else will have time to fix it.
I wish I had better news to give!

@cgrushko I want to update this. Currently, I am doing an API for tree nodes
It looks so when the tree is simple
val tree = tree(1) { node(2) { node(3) } }

But it should be
val tree =
    tree(1) {
        node(2) {
            node(3)
        }
    }

But that format is correct only when it is a DSL, and not for every lambda.
Because ktfmt doesn't analyze deeply to know if Tree can have a specific annotation like DslMaker to understand that it, indeed, is a DSL, which are the possible options to get a fix for this?
Those options have to be compatible with Gradle DSL, so we can solve the non-standard KTS formatting.
One solution is marking top-level lambdas as DSL as default, so we only do one line lambdas when we are chaining them.
I want to cc active contributors that are not participating in this issue: @strulovich @nreid260

I have no problem with the single-line formatting. I suspect that in examples where a single line becomes difficult to read, there will be enough characters to force additional lines.
I don't oppose the multi-line formatting, but don't think it's categorically better.

I have no problem with the single-line formatting. I suspect that in examples where a single line becomes difficult to read, there will be enough characters to force additional lines.
I don't oppose the multi-line formatting, but don't think it's categorically better.

With Gradle kts it is pretty usual and it looks really weird because nobody does one line lambdas with Kotlin KTS or Groovy generally.
For example you can check Google Android docs which are using KTS in new samples.


Button text tracking (spacing)

The button text appears to have slightly exaggerated spacing between letters even though it is set
to its default. This may be done for accessibility purposes, however because of the typeface
chosen, the text becomes slightly harder to read at-a-glance making ‘Secondary’ appear more
like ‘S e c o n d a r y’.
Recommend tighter tracking
See page 4 of UI kit report

Buttons adjusted.


bug in repainting noodles when dragging Scene node with only 1 dyn slot

to replicate, add a scene node, connect to renderer

click remove until only the "environment" and "0" slots remain.
drag Scene node and move it
expected: Noodles stay in position
actual: "scene" output slot noodle is drawn incorrectly.

curiously, adding another dynamic slot fixes it immediately.

forcing c.ui.resolve_slot_divs(); on all E2.core.active_graph.connections  fixes this issue. seems application.js does not always calculate positions correctly for all slots/connections. specifically sometimes it arrives at 0,-98 for a slot.


Coarse root biomass maps

Are you sure it makes sense to include coarse root biomass as an input?  By feeding in a map of coarse root biomass directly from FIA, you are potentially de-coupling AGB and BGB (i.e. having spots where maps have lots of coarse root biomass but there is little aboveground biomass, because of the variation in imputation),   Maybe you want to run the model to make a map of total biomass at time=0 and THEN use fixed ratios to calculate coarse root biomass and THEN run the model.  Or have BGB calculated on the fly as a proportion of AGB as we've done in the past.  I guess I support the use of the map, I just wanted to describe the problem that might result from using FIA's publically available maps of coarse root biomass.

No, I like it as is.  Post-harvesting will be much dead roots and no AGB or DWD.

Oh right. Makes sense now.
On Jun 6, 2017 7:39 AM, "Robert Scheller"<EMAIL_ADDRESS>wrote:
No, I like it as is. Post-harvesting will be much dead roots and no AGB or
DWD.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/LANDIS-II-Foundation/Extension-NECN-Hydro-Succession/issues/18#issuecomment-306507051,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AHdSoFlv1sB3JYySCe9VuP0v7jVhKvOAks5sBWSjgaJpZM4Nw0qr
.


Try to parallelise the test running algorithm

Currently, the test runs sequentially:

Navigate to test URL
Take a screenshot
Compare the test and reference screenshots

If we used a simple actor system, we could do 3 in separate actor.
Down the line we could parallelize it even more:

Pre-fetch URLs to warm up the OS cache
Open more than one window in the browser, so that navigation to different test URLS could be done in parallel.

This could be a very cool task to pickup @atiqsayyed  (when you get free).

@atiqsayyed
Thinking more about this: you needn't use actors; it might be simpler to use Futures with an ExecutorService. The advantage of Future is that you can chain operations together easily and let the ExecutorService do the scheduling.
This is a very high level sketch of how this would work:

You would create a future task for each test. This future will in turn depend on two futures: a future for getting the screenshots and a future for comparing the screenshots.
All the above futures would be added to a queue.
The main thread will pickup the first future in the queue and then wait for its completion. After completion, it will update the status (progress bar, etc) and then pickup the next future.

Hint: the webdriver object will need to be locked till both the screenshots are acquired. Alternatively, the future for getting screenshots should be scheduled on a single threaded executor-service.

@hrj this is cooooool. . . I'm picking it up!


ipsec services gets registered with external DNS services

Rancher Version:
v1.2.0-pre4-rc15
Docker Version:
1.12
OS and where are the hosts located? (cloud, bare metal, etc):
Ubuntu 16.04
Setup Details: (single node rancher vs. HA rancher, internal DB vs. external DB)
single node rancher
Environment Type: (Cattle/Kubernetes/Swarm/Mesos)
Cattle
Steps to Reproduce:

Deploy any of the external DNS service catalogs.

Results:
You will notice that the ipsec infrastructure service will get registered with the external dns service:
11/28/2016 3:30:11 AMtime="2016-11-28T01:30:11Z" level=info msg="Adding dns record: {ipsec.ipsec.default.x.x. [y.y.y.y z.z.z.z] A 120}"

To validate fix deploy Route53 v0.6.0 from infra catalog and then do a stack upgrade changing the image to "rancher/external-dns:v0.6.1".

@janeczku  Validated the fix with Route53 on Rancher v1.2.0-rc2 the dns service didn't register ipsec or any system services.


Print

Issue Type: Feature Request
Possibility of maybe having the option of PRINTING something from within VSC.
Just don't tell me that you have not thought of the possible option of having the need of PRINTING SOMETHING OUT (ie. Code, ie. .md-Files, whatever).
Just don't tell me that "similar problems" beeing listed while I was typing all this meantioned to be CLOSED - in fact ARE NOT CLOSED - since I cannot found the magic "print" button anywhere within the VSC interface at all. I might be looking at the wrong place, maybe it's hidden somewhere under help > devtools > superprintingoption or I need to type in some magic lines into the console?
Just don't tell me that the magical microsoft superior development team who really did an awesome great job while developing VSC at all - had NO INTENSION or NO THOUGHT AT ALL of any thinkable situation, in which someone might need the "printing" option anywhere within the VSC environment.
Just don't  tell me that a request like that is at all neccessary, at least not at version 1.23.
We are able to fly to the moon or elsewhere - but Microsoft is not able to put a fr* f* print-me option inside it's really superior VSC Editor ????
I cannot believe I need to even write those lines.
Awesome guys. Awesome. That's a code editor. Here we go ...
VS Code version: Code 1.23.1 (d0182c3417d225529c6d5ad24b7572815d0de9ac, 2018-05-10T17:11:17.614Z)
OS version: Windows_NT x64 10.0.17134

duplicate of #5953

Since #5953 is out there since 28 Apr 2016, and since at least my clock tells me 22 Mai 2018,
I pretty much assume, that this "closed" issue is far from beeing closed soon, since it seems
not possible for microsoft to include this requested feature for about TWO YEARS now.
Is that correct ?

Since this issue is closed now, please ask questions in #5953.


Wildcard % not working properly

Hi,
I think I found a small bug in the Where section of the pagination.
When I try to add a parameter like this:
wheres = {
    *          {"x", "code", "LIKE", "code%", true},
    *      }

it seems like it doesn't work.
Looking into the code I think I fund the problem, in the addWildCards method of the PaginatorWheresEvaluator:
 $hasInitialPercentage = (strpos($annotationWhereParameter, '%') === 0);
        $hasEndPercentage = (strpos($annotationWhereParameter, '%') === 0);
        if ($hasInitialPercentage) {
            $whereValue = '%' . $whereValue;
        }
        if ($hasEndPercentage) {
            $whereValue = $whereValue . '%';
        }

        return $whereValue;

The $hasEndPercentage uses the same condition as the hasIniticialPercentage. Could that be the problem? Thanks!

You are right. It's a bug.
Wrong line in code:
https://github.com/mmoreram/ControllerExtraBundle/blob/51b5743c520f3bf9c67300a6b5fb333d27eaed12/Resolver/Paginator/PaginatorWheresEvaluator.php#L111
Wrong:
$hasEndPercentage = (strpos($annotationWhereParameter, '%') === 0);

This should work:
$hasEndPercentage = (substr($annotationWhereParameter, -1) === '%');

Somebody should create a Pull Request.

I think the function should be simplified:
    private function addWildcards($annotationWhereParameter, $whereValue)
    {
        if (strpos($annotationWhereParameter, '%') === 0) {
            $whereValue = '%' . $whereValue;
        }
        if ((substr($annotationWhereParameter, -1) === '%')) {
            $whereValue = $whereValue . '%';
        }
        return $whereValue;
    }

@jcornide One year and a half later... #101
Thanks for the report and sorry for this time :(


join flat array to comma separated string

{
  "name": {"first": "Tom", "last": "Anderson"},
  "age":37,
  "children": ["Sara","Alex","Jack"],
  "fav.movie": "Deer Hunter",
  "friends": [
    {"first": "Dale", "last": "Murphy", "age": 44, "nets": ["ig", "fb", "tw"]},
    {"first": "Roger", "last": "Craig", "age": 68, "nets": ["fb", "tw"]},
    {"first": "Jane", "last": "Murphy", "age": 47, "nets": ["ig", "tw"]}
  ]
}

Is it possible to achieve
"Sara, Alex, Jack"

with a gjson query?

Thank you very much @volans- ! Unfortunately I'm coming from a Telegraf config who use the gjson parser as basis for their json_v2 plugin. I cannot use custom modifiers over there. I was hoping for a standard feature. So I have to stick to their xpath_json parser which seems to have such a function but is not so handy.


Line 84 of utils.py pointing to wrong directory?

glad_dir = os.path.join(os.path.expanduser('~'), 'alerts_results') + '/'
Line 84 in utils.py
this seems to point to the user's home dir + alerts_results and not the module_results dir where I think you are putting all the module data, etc.
probably this did not get updated?

It's effectively not up to date, we are refactoring all the module with Daniel to work with the latest sepal_ui version, alert_module is the next one on my list (https://github.com/12rambau/sepal_ui/issues/208)

changed in the big update