implement --response-code functionality

Allow checking for an expected http status code, exiting 0 if the expected code matches the returned code. This is to implement checks to ensure that a site responds with a particular status code, such as a 403, or a 301. For reference, in the legacy ruby version of this plugin, this functionality was implemented as  --response code <code> https://github.com/sensu-plugins/sensu-plugins-http/blob/master/bin/check-http.rb#L30-L31

@jspaleta I wonder if we could implement this one as a metric tag + metric threshold check...

@agoddard something to consider in implementing this would be its behavior with respect to the --redirect-ok flag.  May require additional documentation (e.g. you cannot use --redirect-ok when doing --response-code 301) and the already noted caveats for --redirect-ok.

@agoddard is there an internal ref for this one?

I'm wondering if --redirect-ok and the proposed --reponse-code implementation are necessarily mutually exclusive? What if I want to configure a check to expect a response-code from it's final destination, even if that's after following a redirect?

Should --response-code be --response-codes (plural)? Then perhaps you could pair --redirect-ok with --response-codes 301,202, meaning any number of 301 redirects and a 202 response code are acceptable result for the check?

Maybe it can be a single code or an array, and when it is an array the order matters, so then you can say "when I hit this redirecting URL with redirect-ok, I want to know that the place I end up gives me a 200" and then of providing an Array, then "when I hit this redirecting URL, I should get a 302 on the way to the 200" [302,200]

Let’s implement the suggested changes allowing the concurrent usage of --redirect-ok and --response-code, by applying the response code validation against the final redirect destination. --response-code should allow for a coma-separated list of valid response codes. As an example --response-code '200,201' would allow the final response code to be either 200 or 201.

@fguimond , pull request has been raised for the same : https://github.com/sensu/http-checks/pull/28


Can't get BitBar or BitBarDistro versions 1.8.0 or 1.9.0 to work on pre OS X 10.10 if a plist exists

So, I hate to open this issue, but I've been unable to get BitBar or its BitBarDistro cousin to run on any Macs under 10.7.x or 10.8.x. The issue is that if I use a preconfigured com.matryer.BitBar.plist, either located in the root /Library/Preferences/ directory, or even in ~/Library/Preferences/, the app launches, shows ... in the menubar and then closes down. If I delete all references to com.matryer.BitBar.plist from the Mac, and launch the app, I get prompted to select my plug-ins directory, which I do, and everything works fine. Meaning, there is nothing wrong with the directory itself or the plug-ins in them. The problem is the app simply won't recognize and honor a plist file made in advance of launching the app and the app creating it on first run.
I had dumped everything and tried using the BitBarDistro version (both 1.8.0 and 1.9.0), copied my plug-ins into the executable directory and it does the same thing. In fact, since its the distro version, I can't even get it to prompt for a directory location. It just crashes.
So you know, I've tried a ton of troubleshooting with this, and absolutely nothing has worked, other than allowing the application to create its own property list on first launch. This doesn't happen on 10.10 or 10.11, and I believe its OK on 10.9 as well, although I still need to check on that.
This is a showstopper for me since I was planning on deploying this to a small number of Macs still on 10.7.x and 10.8.x, but preconfigured to have the userConfigDisabled option enabled and a plug-ins directory already set.
Any thoughts on what's going on? I'm puzzled why it won't honor the plist that's already there. I've made sure to even match the owner/group and POSIX permissions on the file as to how the app creates it, as I thought it might be a permissions issue, but its not.
In fact as part of troubleshooting, I simply copied the application created plist into /Library/Preferences/ and modified the perms slightly so it was readable by all accounts, deleted the original from ~/Library/Preferences/ and launched BitBar - crash. Other than adjusting the permissions, its the exact same plist the app created. I don't get why its not working.
Any help would be greatly appreciated.

Just to add even more weirdness to this, get this one.
I deleted all references to the plist. Launched BitBar, it prompted me to select my Plug-ins Directory. I do and the menu shows up. So far so good. I simply quit BitBar, make no changes to anything else and launch BitBar again, it crashes! WTF? How can it work on first launch but not after? Something is really broken...

Please check if any crash reports are saved under ~/Library/Logs/DiagnosticReports or similar location on the OS X versions you use.

Will do. I'm doing additional testing to see if I can narrow down the issue a little further for you. As soon as I grab some logs I will post them here.

Does it also fail if you use defaults in the terminal to create the plist file for you? Like this:
defaults write com.matryer.BitBar pluginsDirectory /tmp
defaults write com.matryer.BitBar appHasRun -int 1

Yes, in fact that's how I'm creating the plist in the first place. Essentially, its being created as part of a postflight script that includes the BitBar.app and plug-ins folder deployed to a system. I'm not copying the plist from a Mac and including it in the pkg. Its creating the plist new with several defaults commands.
I just ran a test on a plain vanilla 10.8.4 system, local account, not joined to a domain or any of the other stuff our Macs typically have on it to rule out anything we may be installing on them. It launches and asks for a plug-in directory, and I select it, but if I quit and relaunch it, it crashes. Crash log is attached here.
BitBar_2016-03-25-114239_MacBook-Air.crash.zip

I edited the title to be more accurate of the issue. Sadly, I'm seeing it also crash (same uncaught exception error) on 10.9.5, so it seems to affect everything pre - 10.10.x, at least for me.
I'm curious if anyone else who may be using it on older OSes is seeing this as well?

From the crash report this looks like you actually set a plugins directory and it contained a plugin. It crashes here:
5   BitBar                              0x00000001059ccb3f -[Plugin buildMenuItemWithParams:] + 1184

with
*** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[__NSCFString containsString:]: unrecognized selector sent to instance 0x7fb6998585f0'
``

@iosdeveloper OK, I'm not understanding what you mean. Yes, the dir I selected has at least one plug-in within it. Is it not supposed to? Isn't that what it means to 'select the plug-ins directory'?
And what doesn't make sense is, its fine upon initial selection with no plist present, running on a Mac that I've never run BitBar on. The app runs, plug-in displays OK in the menubar. Its only if I quit and relaunch it that it crashes. I'm not sure I get what that would have to do with selecting a plugins directory and it contained a plugin. If I'm just being dense, please explain it further.

Can you pinpoint it to a specific plugin or does any plugin crash it?

I've tried two different plug-ins that I've built myself that work OK on 10.10/10.11. I'll pull in one of the plug-ins in the repo to see if the behavior is different and let you know.

I found the error. @vogonistic's ANSI code parser uses a method that is only available on OS X 10.10 and later: https://github.com/matryer/bitbar/blob/master/App/BitBar/NSString%2BANSI.m#L111

Well, that was quick. I removed any of my custom plug-ins. BitBar was closed. Went to the repo and installed the external-ip plug-in directly from the repo (got the pop up asking to install the plug-in) It launched BitBar where it displayed ... for a few seconds, then crashed.

47eda9e should fix it. Can you build from source and test it?

Yes! Working now from the latest source! Awesome sauce! Thank you so much for the quick response. :) I still need to go back and test on 10.8 and 10.7, but its working on the 10.9 system I have here. I suspect it'll work on those as well.


x/net/http2: reduce Framer ReadFrame allocations

Please answer these questions before submitting your issue. Thanks!
This is a performance-related issue/proposal for the net/http2 library in https://github.com/golang/net/tree/master/http2.
What version of Go are you using (go version)?
1.8beta2
What operating system and processor architecture are you using (go env)?
amd64
I'm running "grpc-go" (https://github.com/grpc/grpc-go) micro-benchmarks (grpc-go uses only the "framer" from the net/http2 library). Specifically I'm looking at a benchmarks that tests "grpc streaming" throughput, with a couple of clients against one 32 core server.
Details on this benchmark setup: the server has a total of 64 tcp/http2 connections, with 100 long-lived http2 streams over each http2 connection. A streaming "round-trip" is a grpc request-response of about 10 bytes, each fitting into one data frame. The server is ran with a 5 second warmup and a 30 second benchmark, during which it does somewhere around 900K round trips per second.
After multiple changes that reduce memory allocations elsewhere, the memory "alloc_space" profile of the server after running this benchmark looks like:
2139.58MB of 2178.13MB total (98.23%)
Dropped 69 nodes (cum <= 10.89MB)
      flat  flat%   sum%        cum   cum%
 1436.57MB 65.95% 65.95%  1436.57MB 65.95%  golang.org/x/net/http2.parseDataFrame
  473.51MB 21.74% 87.69%   473.51MB 21.74%  google.golang.org/grpc.protoCodec.Marshal
  225.50MB 10.35% 98.05%   225.50MB 10.35%  google.golang.org/grpc/transport.(*http2Server).handleData
    2.50MB  0.11% 98.16%   494.02MB 22.68%  google.golang.org/grpc/benchmark.(*testServer).StreamingCall
       1MB 0.046% 98.21%   495.02MB 22.73%  google.golang.org/grpc.(*Server).processStreamingRPC
    0.50MB 0.023% 98.23%   477.01MB 21.90%  google.golang.org/grpc.(*serverStream).SendMsg
         0     0% 98.23%  1442.07MB 66.21%  golang.org/x/net/http2.(*Framer).ReadFrame
         0     0% 98.23%  1678.60MB 77.07%  google.golang.org/grpc.(*Server).handleRawConn
         0     0% 98.23%   495.02MB 22.73%  google.golang.org/grpc.(*Server).handleStream
         0     0% 98.23%  1677.60MB 77.02%  google.golang.org/grpc.(*Server).serveHTTP2Transport
         0     0% 98.23%  1676.57MB 76.97%  google.golang.org/grpc.(*Server).serveStreams
         0     0% 98.23%   495.02MB 22.73%  google.golang.org/grpc.(*Server).serveStreams.func1.1
         0     0% 98.23%   473.51MB 21.74%  google.golang.org/grpc.(*protoCodec).Marshal
         0     0% 98.23%    14.52MB  0.67%  google.golang.org/grpc.(*serverStream).RecvMsg
         0     0% 98.23%   473.51MB 21.74%  google.golang.org/grpc.encode
         0     0% 98.23%    14.52MB  0.67%  google.golang.org/grpc.recv
         0     0% 98.23%    14.52MB  0.67%  google.golang.org/grpc/benchmark/grpc_testing.(*benchmarkServiceStreamingCallServer).RecvMsg
         0     0% 98.23%   477.01MB 21.90%  google.golang.org/grpc/benchmark/grpc_testing.(*benchmarkServiceStreamingCallServer).Send
         0     0% 98.23%   494.02MB 22.68%  google.golang.org/grpc/benchmark/grpc_testing._BenchmarkService_StreamingCall_Handler
         0     0% 98.23%  1442.07MB 66.21%  google.golang.org/grpc/transport.(*framer).readFrame
         0     0% 98.23%  1676.57MB 76.97%  google.golang.org/grpc/transport.(*http2Server).HandleStreams
         0     0% 98.23%  2173.63MB 99.79%  runtime.goexit

Note golang.org/x/net/http2.parseDataFrame appears to be allocating a new DataFrame struct per-data frame, which ends up being the largest source of allocations. (alloc appears to be from https://github.com/golang/net/blob/master/http2/frame.go#L577)
Also, from the total "alloc_objects" profile, golang.org/x/net/http2.parseDataFrame appears to account for about 30M of the total ~80M object allocations.
Experimenting with a code change that repeatedly returns the same DataFrame struct instead of creating new ones:

memory allocations from golang.org/x/net/http2.parseDataFrame dissappear,
total memory allocated by the benchmark goes down ~1.5GB to about 740MB
QPS in the grpc-microbenchmark increases about 5%

The current http2 framer returns a slice on "data frame reads" that's only valid until the next call to ReadFrame. I'm wondering if similar semantics for the entire DataFrame struct sound reasonable, or possibly an option to turn this on.
I can give more details on the benchmark setup if needed.
thanks

cc @iamqizhao

The Framer could conditionally (opt-in) keep a reference to each of concrete types of frames and reuse them if the caller wants.

The application is running on a 32 core machine. How much RAM does the
machine have? I ask because 2 GBytes of allocation over 30 seconds does not
seem like a lot for a 32 core machine.
Could you run it with GODEBUG=gctrace=1 and post the output?
On Tue, Jan 3, 2017 at 1:37 PM, apolcyn<EMAIL_ADDRESS>wrote:

cc @iamqizhao https://github.com/iamqizhao
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/golang/go/issues/18502#issuecomment-270188255, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AA7Wn-zGdgTVJ9VSWdsUX1X4rN1gotqJks5rOpV_gaJpZM4LZ4p7
.

The application is running on a 32 core machine. How much RAM does the
machine have? I ask because 2 GBytes of allocation over 30 seconds does not
seem like a lot for a 32 core machine.

There's about 30GB on this machine.
Other changes to the server outside of this one bring it down from a higher amount (~15GB to ~2GB here), but have still been seeing steady benchmarks improvements with general reducing of allocations.

Could you run it with GODEBUG=gctrace=1 and post the output?

Yeah capturing the gc trace from the server's whole life shows: https://gist.github.com/apolcyn/2f19a4230ed65c2b1738c98ee978a8c2
note in this log, the "reset" on lines 30 and 31 just separates the warmup and benchmark periods.

The Framer could conditionally (opt-in) keep a reference to each of concrete types of frames and reuse them if the caller wants.

This would work well for me! I can create a PR

The GC is keeping the heap at a modest 45 Mbytes. The trace says 0%
overhead for the GC but that is rounded so it really means < 1%. Latency in
the warmup is a bit high but still < 9ms and latency during the actual run
is between 400 usecs and 1300 usecs. The GC seems to be working as designed.
Thanks for the trace.
On Tue, Jan 3, 2017 at 5:00 PM, apolcyn<EMAIL_ADDRESS>wrote:

The Framer could conditionally (opt-in) keep a reference to each of
concrete types of frames and reuse them if the caller wants.
This would work well for me! I can create a PR
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/golang/go/issues/18502#issuecomment-270237442, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AA7Wn6DazkjNpqQQiEQJnHW_MmJGVdyiks5rOsUagaJpZM4LZ4p7
.

fyi just submitted PR with "Change-Id: Iad93420ef6c3918f54249d867098f1dadfa324d8"


Add percy integration

This update add the Percy storybook integration package. It also adds some command to generate snapshot and upload them to a Percy account
Uploading snapshot
To upload snapshots, a secret key needs to be in local exports:
export PERCY_TOKEN=xxxxxxxxxxxxxxxxx

You can add it to your environment variable via your dotfiles, or you could create a .env file at the root of this project and use an autload of your choice

Pull Request Test Coverage Report for Build 2771

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 100.0%

Totals

Change from base Build 2770:
0.0%

Covered Lines:
21

Relevant Lines:
21

💛  - Coveralls


feat: Add Featured speakers in AboutFragment

Fixes #2301
Changes: Added Featured speakers in AboutFragment.
Screenshots for the change:

@iamareebjamal Please review.

@srv-twry Don't show staggered layout on home screen, show speakers like they are shown in session detail activity

@iamareebjamal Actually in the parent issue, you have asked to use the existing view holder of Speakers Activity.
Anyways, i would only show the image, name and designation as shown in the SessionDetailsActivity.

Yes, the existing view holder can be used from SessionDetailsActivity


Default port is 3000, not 8000

The README states that the default port is 8000. It is actually 3000.
We either need to change the README or the default port.
I support changing the default port so that the documentation is accurate. Also the default port for most node.js servers is 3000, so better to try to limit conflicts with people starting up servers to interact with the api.

Resolved in v0.0.3.


Inventory

Requests to engine can:

add item to inventory
disallow the same instance of an item to be added twice
return a list of items in the inventory from through perspective

Later:

limit the size of the inventory (size, weight, count)
use items in the inventory
remove item from inventory
check when adding an item that it was visible/accessible to the actor
items can perish/be consumed/damaged through use/time
update perspective so item is no longer visible when picked up (and inverse when dropped)
ensure its possible to add the item to the inventory (its within perspective and nothing in the way)

Might be worth thinking about consumable/durable/permanent and some sort of transformed items.
Fruit is consumable
Torch is durable
Axe is permanent
Bottle of water transforms into empty bottle when consumed
Something like that

some items (like food) might need to be perishable too??

Yep, which I guess makes it durable? Maybe chocolate bar is a better example, but you get where I'm going.

However, inventory shouldn't be responsible for any of the transforms listed above.  The items/actors should handle this themselves?  A bottle of water for example would subscribe for a consume event of itself and update accordingly?

I'm not sure if hydration should tell of the transform, If anything that falls under inventory (to me at least)

updated initial comment to reflect more recent discussions

Given the OP edits, bear in mind we still haven't created any "Perspectives".  We're aware of them being a structure we would like, but not where they belong and how they look.

Are we still considering that all items in the world should be actors?

They should probably all be something, yes.  Actors?  Maybe.  Whatever makes sense.


Wallet not work in fuelart.io

What version of Wallet are you using?
0.0.1
What is happening?
Wallet not work in fuelart.io
steps to reproduce
Transaction not a work. Wallet is exit and get error
How it should behave?
Write transaction
What os are you seeing the problem on?
Windows Desktop
What browser?
Chrome
What is your browser version?
Version 109.0.5414.129 (Official Build) (64-bit)

@VitaliiZhukovsky, thanks for reporting. This problem could be related to many factors. One is the stability of the network or other issues related to the application itself.
Please chat with the FuelArt team directly on their channels https://fuelart.io/ as the issue could be related to the DApp and not to the Fuel Wallet.


storagedriver/azure: close leaking response body

In GetContent() we read the bytes from a blob but do not close
the underlying response body.
Apparently this is not a big deal (it's been there since 4054cd3e, which is Nov 2014).
I found other memory leaks caused by not reusing http client and not specifying http.Client.Timeout. I'll address that in another PR by re-vendoring the Azure storage SDK.

LGTM

Current coverage is 50.88% (diff: 0.00%)

Merging #2025 into master will decrease coverage by 10.27%

@@             master      #2025   diff @@
==========================================
  Files           125        125
  Lines         11137      11138      +1
  Methods           0          0
  Messages          0          0
  Branches          0          0
==========================================
- Hits           6812       5668   -1144
- Misses         3442       4727   +1285
+ Partials        883        743    -140

Powered by Codecov. Last update 62e88f0...6d2a0ba

LGTM


[iOS] Fix Swift Version

ping @dcvz

@mgonzalezs @ovr , What issue does this resolve for you?
Is it that you are trying to build using an older versions of Xcode?

@curiousdustin Yes, I did a project and I created a script for the issue. I am using an older version of Xcode and I can recall in App Center I had it too.


Simplify if statement

Hi,
This if statement can be simplified for php.

True, but it is not explicit that we specifically accept both.

I don't think this should be changed. The existing code will give a much better error message in the case that you pass through something that == 0. The assertOperand function covers the type check.
As an example, if you pass through false with your code it will say 'Division by zero'.

Here are some more examples:
cam-mbp:~ cam$ php -r "var_dump('' == 0);"
bool(true)
cam-mbp:~ cam$ php -r "var_dump(false == 0);"
bool(true)
cam-mbp:~ cam$ php -r "var_dump(null == 0);"
bool(true)

The woes of type juggling

@mathiasverraes I just noticed something that should be fixed though :). On line 232 we are still passing in true from when we used to pass in the division boolean.
$this->assertOperand($divisor, true);


Chocolate Distribution Problem

Problem Link - https://practice.geeksforgeeks.org/problems/chocolate-distribution-problem3825/1
I want to add the solution of this problem in C++ under LSM SOC'21.
Pls assign me this.

Problem statement:
Given an array A of positive integers of size N, where each value represents a number of chocolates in a packet. Each packet can have a variable number of chocolates. There are M students, the task is to distribute chocolate packets such that :1. Each student gets one packet.2. The difference between the number of chocolates given to the students having a packet with maximum chocolates and students having a packet with minimum chocolates is minimum.
Examples:-
Input : arr[] = {7, 3, 2, 4, 9, 12, 56}
m = 3
Output: Minimum Difference is 2
We have seven packets of chocolates and
we need to pick three packets for 3 students
If we pick 2, 3 and 4, we get the minimum
difference between maximum and minimum packet
sizes.

@Amit366 Please assign me this issue under LGMSOC. I will solve it in java.


This codes doesn't work when I create custom html file with this codes and open with Chrome Browser.

Challenge Change Text with Click Events has an issue.
User Agent is: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/57.0.2987.133 Safari/537.36.
Please describe how to reproduce this issue, and include links to screenshots if possible.
My code:

Cat Photo Finder

      The message will go here

      <button id = "getMessage" class = "btn btn-primary">
        Get Message
      </button>

Hey!
So this chunk of code is referencing Angular JS and Javascript.  you need to put your html file in a location where it can access those code libraries.
to download angular js head here.. https://angularjs.org/
If you want a website to display with straight code you might want to look at some info about html here.
https://www.w3schools.com/html/html_intro.asp

Your code is referencing to jQuery lib. Just import it from CDN.
<!DOCTYPE html>

    <title>Demo</title>
    <meta charset="UTF-8"/>

Cat Photo Finder

            The message will go here

            <button id="getMessage" class="btn btn-primary">
                Get Message
            </button>


Looking to see how to only pull emails once

Version (1.0, dev-master):
Microsoft Exchange version: 2013
Description of problem:  Not seeing a easy way to just pull emails once.  There must be a way to mark emails as being downloaded and not download them multiple times
I have attempted to archive using ArchiveItem in Client and receive the error
Encoding: object has no 'ArchiveSourceFolderId' property /vendor/php-ews/php-ews/src/Client.php on line 1631
  $this->request = new ArchiveItemType();
    $this->request->ItemIds = new NonEmptyArrayOfBaseItemIdsType();

    $folder_id = new TargetFolderIdType;
    $folder_id->Id = DistinguishedFolderIdNameType::INBOX;

    $this->request->ArchiveSourceFolderId[] = $folder_id;

    // Iterate over the messages, setting each id in the request.
    foreach ($this->message_array as $message) {
        $item = new ItemIdType();
        $item->Id = $message->ItemId->Id;
        $this->request->ItemIds->ItemId[] = $item;
    }

I have never used the ArchiveItem operation, but I will do my best to help you out here.
First, the TargetFolderIdType has no Id property. If you wish to use a distinguished folder id, it should look something like this.
$folder_id = new TargetFolderIdType();
$folder_id->DistinguishedFolderId = new DistinguishedFolderIdType();
$folder_id->DistinguishedFolderId->Id = DistinguishedFolderIdNameType::INBOX;

Second, ArchiveSourceFolderId is not an array of folder ids, so your assignment should just be:
$this->request->ArchiveSourceFolderId = $folder_id;

Third, I don't believe the Inbox is a valid archive folder. If you want the archive folder that Exchange provides, I believe that would be either DistinguishedFolderIdNameType::ARCHIVE_MESSAGE_ROOT or DistinguishedFolderIdNameType::ARCHIVE_INBOX.
Finally, you may want to look into either the Subscribe or SyncFolderItems operations. There is an event/sync example that should help guide you in syncing any item type. I haven't used subscriptions personally, but I know others have with success. More information on these operations can be found in the MSDN docs:

Subscribe: https://msdn.microsoft.com/en-us/library/aa566188(v=exchg.150).aspx
SyncFolderItems: https://msdn.microsoft.com/en-us/library/aa563967(v=exchg.150).aspx

I will test this. I appreciate the help.
Do you have a suggested way to only download emails once.  The current examples would have me download the same emails time and time again.

Changing it to

Changing code to
    $folder_id = new TargetFolderIdType();
    $folder_id->DistinguishedFolderId = new DistinguishedFolderIdType();
    $folder_id->DistinguishedFolderId->Id = DistinguishedFolderIdNameType::ARCHIVE_INBOX;
    $this->request->ArchiveSourceFolderId = $folder_id;

Still ends up with an error
Fatal error: Uncaught SoapFault exception: [Client] SOAP-ERROR: Encoding: object has no 'ArchiveSourceFolderId' property in /vendor/php-ews/php-ews/src/Client.php:1631
So we still have a problem with setting the folderID.  Code looks right

I've used the SyncFolderItems operation in a scheduled job with great success. Just make sure to set the SyncState after your first sync, and it will only return messages that have been created, updated or deleted since your last sync.

As an alternative, I handle this on the application side by storing the $message->ItemId->Id in a database as a unique identifier.
I suppose this is less than efficient if you're pulling many emails at one time. In my case, I download emails every minute so it works great.
Just be aware that in SQL SELECT 'abc' = 'ABC' will return 1 and that the Id property is case sensitive.


Add User model to the table according to the following schema

The user model should contain the following parameters as columns in the table:

User ID(made from a mix of their regno and work/job)(Primary Key)
Registration number(Required and unique key, many company use cases wont have this for their workers)
Full Name (Required)
Email (Required and Unique)
Password (Hashed key for auth)
Occupation (Required)

This can be closed as Django User model establishes a table for us

I don't think you need to mention the settings realated to password, also we need foreign key map to User object in django

It's a foreign object mapping, we're not doing a one to one map so it must work well, we're mapping the whole user object so it should work perfectly

Well I know of User Abstraction but I believe we don't necessarily have a need for the Profile and Profile Manager Classes, so we need to make the User class more suited to our Purpose, we could just use the UserManager class from auth.models


Add an airflow route to the Meltano UI

Migrated from GitLab: https://gitlab.com/meltano/meltano/-/issues/586
Originally created by @valexieva on 2019-04-15 14:24:58

Implementation of #557
Depending on how Airflow web interface is setup, this might be done either by:

by using http://flask.pocoo.org/docs/1.0/patterns/appdispatch/.

No-go because both Flask app live in different virtualenv, so crossing that isolation would remove the benefit of the isolation.

proxying the requests

No-go because Airflow doens't expose static_url_path and/or builds wrong URLs when fetching its assets (/static).
We'd need to send a pull-request to Airflow to add proper support for that.

iframing Airflow

Go: there is already a PoC for that, but it is now ~Blocked by https://gitlab.com/meltano/meltano/issues/591

View 6 previous comments from the original issue on GitLab


[IT]: Basic structure for Italian l10n

Details (optional)
Just init

Hi @annalisag-spark I'd like to contribute to the Italian l10n of the glossary.

Ciao! Nice to meet you and welcome!
Join the Italian team on #glossary-localization-italian CNCF channel, so that we can synch :)

complete by #404


The system has an SSRF vulnerability.

Using SSRF vulnerability to exploit file protocol to read local files.
Add an email message template.You need to fill in your own email address.
Write the attachment link as file:///etc/passwd.

Save and Test

The email received a message and carried the passwd attachment.

The project indeed has an SSRF risk, which has been url by specifying a whitelist of allowed protocols.


No meta.json file is produced on failure

It's useful to have data from the tests that succeeded, even if some of them fail.

They only seem to be missing for the failed builds; successful builds do have a meta.json file.


Backport "HBASE-28539 Merge of incremental backups fails if backups are on a separate FileSystem (#5867)" to branch-3

When the backups are stored on a location that is not the DistributedFilesystem underpinning HBase itself merging of incremental backups fails. Detected with backups stored on S3A, but can be reproduced with any other (like LocalFilesystem).
Reviewed-by: Ray Mattingly<EMAIL_ADDRESS>

:confetti_ball: +1 overall

Vote
Subsystem
Runtime
Comment

+0 :ok:
reexec
0m 26s
Docker mode activated.

_ Prechecks _

+1 :green_heart:
dupname
0m  0s
No case conflicting files found.

+1 :green_heart:
hbaseanti
0m  0s
Patch does not have any anti-patterns.

+1 :green_heart:
@author
0m  0s
The patch does not contain any @author tags.

_ branch-3 Compile Tests _

+1 :green_heart:
mvninstall
3m 14s
branch-3 passed

+1 :green_heart:
compile
0m 26s
branch-3 passed

+1 :green_heart:
checkstyle
0m 10s
branch-3 passed

+1 :green_heart:
spotless
0m 45s
branch has no errors when running spotless:check.

+1 :green_heart:
spotbugs
0m 29s
branch-3 passed

_ Patch Compile Tests _

+1 :green_heart:
mvninstall
2m 54s
the patch passed

+1 :green_heart:
compile
0m 24s
the patch passed

+1 :green_heart:
javac
0m 24s
the patch passed

+1 :green_heart:
checkstyle
0m  8s
the patch passed

+1 :green_heart:
whitespace
0m  0s
The patch has no whitespace issues.

+1 :green_heart:
hadoopcheck
5m 31s
Patch does not cause any errors with Hadoop 3.3.6.

+1 :green_heart:
spotless
0m 42s
patch has no errors when running spotless:check.

+1 :green_heart:
spotbugs
0m 35s
the patch passed

_ Other Tests _

+1 :green_heart:
asflicense
0m 10s
The patch does not generate ASF License warnings.

22m 48s

Subsystem
Report/Notes

Docker
ClientAPI=1.43 ServerAPI=1.43 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5968/1/artifact/yetus-general-check/output/Dockerfile

GITHUB PR
https://github.com/apache/hbase/pull/5968

Optional Tests
dupname asflicense javac spotbugs hadoopcheck hbaseanti spotless checkstyle compile

uname
Linux feb2752741c0 5.4.0-1103-aws #111~18.04.1-Ubuntu SMP Tue May 23 20:04:10 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux

Build tool
maven

Personality
dev-support/hbase-personality.sh

git revision
branch-3 / a35145b461

Default Java
Eclipse Adoptium-11.0.17+8

Max. process+thread count
76 (vs. ulimit of 30000)

modules
C: hbase-backup U: hbase-backup

Console output
https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5968/1/console

versions
git=2.34.1 maven=3.8.6 spotbugs=4.7.3

Powered by
Apache Yetus 0.12.0 https://yetus.apache.org

This message was automatically generated.

:confetti_ball: +1 overall

Vote
Subsystem
Runtime
Comment

+0 :ok:
reexec
0m 36s
Docker mode activated.

-0 :warning:
yetus
0m  3s
Unprocessed flag(s): --brief-report-file --spotbugs-strict-precheck --whitespace-eol-ignore-list --whitespace-tabs-ignore-list --quick-hadoopcheck

_ Prechecks _

_ branch-3 Compile Tests _

+1 :green_heart:
mvninstall
2m 38s
branch-3 passed

+1 :green_heart:
compile
0m 18s
branch-3 passed

+1 :green_heart:
shadedjars
5m  9s
branch has no errors when building our shaded downstream artifacts.

+1 :green_heart:
javadoc
0m 14s
branch-3 passed

_ Patch Compile Tests _

+1 :green_heart:
mvninstall
2m 27s
the patch passed

+1 :green_heart:
compile
0m 17s
the patch passed

+1 :green_heart:
javac
0m 17s
the patch passed

+1 :green_heart:
shadedjars
5m  7s
patch has no errors when building our shaded downstream artifacts.

+1 :green_heart:
javadoc
0m 13s
the patch passed

_ Other Tests _

+1 :green_heart:
unit
12m 30s
hbase-backup in the patch passed.

30m 34s

Subsystem
Report/Notes

Docker
ClientAPI=1.45 ServerAPI=1.45 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5968/1/artifact/yetus-jdk8-hadoop3-check/output/Dockerfile

GITHUB PR
https://github.com/apache/hbase/pull/5968

Optional Tests
javac javadoc unit shadedjars compile

uname
Linux f7b3ef565de4 5.4.0-174-generic #193-Ubuntu SMP Thu Mar 7 14:29:28 UTC 2024 x86_64 x86_64 x86_64 GNU/Linux

Build tool
maven

Personality
dev-support/hbase-personality.sh

git revision
branch-3 / a35145b461

Default Java
Temurin-1.8.0_352-b08

Test Results
https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5968/1/testReport/

Max. process+thread count
3098 (vs. ulimit of 30000)

modules
C: hbase-backup U: hbase-backup

Console output
https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5968/1/console

versions
git=2.34.1 maven=3.8.6

Powered by
Apache Yetus 0.12.0 https://yetus.apache.org

This message was automatically generated.

:confetti_ball: +1 overall

Vote
Subsystem
Runtime
Comment

+0 :ok:
reexec
0m 35s
Docker mode activated.

-0 :warning:
yetus
0m  3s
Unprocessed flag(s): --brief-report-file --spotbugs-strict-precheck --whitespace-eol-ignore-list --whitespace-tabs-ignore-list --quick-hadoopcheck

_ Prechecks _

_ branch-3 Compile Tests _

+1 :green_heart:
mvninstall
3m 45s
branch-3 passed

+1 :green_heart:
compile
0m 25s
branch-3 passed

+1 :green_heart:
shadedjars
6m  9s
branch has no errors when building our shaded downstream artifacts.

+1 :green_heart:
javadoc
0m 17s
branch-3 passed

_ Patch Compile Tests _

+1 :green_heart:
mvninstall
3m 24s
the patch passed

+1 :green_heart:
compile
0m 21s
the patch passed

+1 :green_heart:
javac
0m 21s
the patch passed

+1 :green_heart:
shadedjars
5m 53s
patch has no errors when building our shaded downstream artifacts.

+1 :green_heart:
javadoc
0m 15s
the patch passed

_ Other Tests _

+1 :green_heart:
unit
11m 58s
hbase-backup in the patch passed.

34m 13s

Subsystem
Report/Notes

Docker
ClientAPI=1.45 ServerAPI=1.45 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5968/1/artifact/yetus-jdk17-hadoop3-check/output/Dockerfile

GITHUB PR
https://github.com/apache/hbase/pull/5968

Optional Tests
javac javadoc unit shadedjars compile

uname
Linux 1ddf16fb2b86 5.4.0-174-generic #193-Ubuntu SMP Thu Mar 7 14:29:28 UTC 2024 x86_64 x86_64 x86_64 GNU/Linux

Build tool
maven

Personality
dev-support/hbase-personality.sh

git revision
branch-3 / a35145b461

Default Java
Eclipse Adoptium-17.0.10+7

Test Results
https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5968/1/testReport/

Max. process+thread count
3366 (vs. ulimit of 30000)

modules
C: hbase-backup U: hbase-backup

Console output
https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5968/1/console

versions
git=2.34.1 maven=3.8.6

Powered by
Apache Yetus 0.12.0 https://yetus.apache.org

This message was automatically generated.

:confetti_ball: +1 overall

Vote
Subsystem
Runtime
Comment

+0 :ok:
reexec
1m  8s
Docker mode activated.

-0 :warning:
yetus
0m  3s
Unprocessed flag(s): --brief-report-file --spotbugs-strict-precheck --whitespace-eol-ignore-list --whitespace-tabs-ignore-list --quick-hadoopcheck

_ Prechecks _

_ branch-3 Compile Tests _

+1 :green_heart:
mvninstall
3m 55s
branch-3 passed

+1 :green_heart:
compile
0m 27s
branch-3 passed

+1 :green_heart:
shadedjars
6m 41s
branch has no errors when building our shaded downstream artifacts.

+1 :green_heart:
javadoc
0m 19s
branch-3 passed

_ Patch Compile Tests _

+1 :green_heart:
mvninstall
3m 46s
the patch passed

+1 :green_heart:
compile
0m 22s
the patch passed

+1 :green_heart:
javac
0m 22s
the patch passed

+1 :green_heart:
shadedjars
6m  7s
patch has no errors when building our shaded downstream artifacts.

+1 :green_heart:
javadoc
0m 15s
the patch passed

_ Other Tests _

+1 :green_heart:
unit
13m  5s
hbase-backup in the patch passed.

37m 12s

Subsystem
Report/Notes

Docker
ClientAPI=1.45 ServerAPI=1.45 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5968/1/artifact/yetus-jdk11-hadoop3-check/output/Dockerfile

GITHUB PR
https://github.com/apache/hbase/pull/5968

Optional Tests
javac javadoc unit shadedjars compile

uname
Linux bc7d87af3f18 5.4.0-182-generic #202-Ubuntu SMP Fri Apr 26 12:29:36 UTC 2024 x86_64 x86_64 x86_64 GNU/Linux

Build tool
maven

Personality
dev-support/hbase-personality.sh

git revision
branch-3 / a35145b461

Default Java
Eclipse Adoptium-11.0.17+8

Test Results
https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5968/1/testReport/

Max. process+thread count
3438 (vs. ulimit of 30000)

modules
C: hbase-backup U: hbase-backup

Console output
https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5968/1/console

versions
git=2.34.1 maven=3.8.6

Powered by
Apache Yetus 0.12.0 https://yetus.apache.org

This message was automatically generated.


Speed up CI builds

[x] Tests run twice (once for the build, and once for coverage). Coverage data can be generated during tests for the build
[x] Cache maven directories

Times cut in about half (~2:40 down to ~1:30)


debugPrint prints in releasemode

Hi :wave:
Thanks for this library! Currently thinking to switch to it for linux for musicpod
I noticed that here
https://github.com/bdrazhzhov/audio-service-mpris/blob/master/lib/audio_service_mpris.dart#L34
many debugPrints happen
very unintuive but those also happen in release mode
https://api.flutter.dev/flutter/foundation/debugPrint.html
to avoid this you need to check for kDebugMode

Hi Frederik!
Debug messages may be unwanted or even annoying in released applications. I found the following way to fix the issue:
void main() {
  if(kReleaseMode) {
    debugPrint = (String? message, {int? wrapWidth}) {};
  }

  runApp(const MyApp());
}

It works for the whole application and doesn't require to change all the files where debugPrint() is used.

Hi Frederik!
Debug messages may be unwanted or even annoying in released applications. I found the following way to fix the issue:
void main() {
  if(kReleaseMode) {
    debugPrint = (String? message, {int? wrapWidth}) {};
  }

  runApp(const MyApp());
}

It works for the whole application and doesn't require to change all the files where debugPrint() is used.

Thanks for your answer!
While this approach works it requires maybe too much of users of your lib. I think the default behaviour should not be to print everything to the terminal. Especially since i/o negatively impacts performance (a bit)

I think I replace debugPrint() with log() from dart:developer.

I think I replace debugPrint() with log() from dart:developer.

sounds nice, I close my PR then and keep the fork until then because I want to use your lib :)

Closed due to changes made in https://github.com/bdrazhzhov/audio-service-mpris/commit/e0402529d09b727776860947437333422b6476ee.


Saleor 3: omitting channel gives psycopg2.ProgrammingError: can't adapt type 'SimpleLazyObject'

What I'm trying to achieve
Attempt the following query in Saleor 3
{
  product(slug: "apple-juice") {
    variants {
      quantityAvailable
    }
  }
}

It does not work. However this query does
{
  product(slug: "apple-juice" channel:"default-channel") {
    variants {
      quantityAvailable
    }
  }
}

Steps to reproduce the problem

Use latest saleor 3 from git master branch
Use sample data
Have a default channel that you expect to be used when not specifying a channel
Make the query

What I expected to happen
This should work, because Saleor 3 intends to support not specifying channel. However it doesn't in this case.
Screenshots and logs
api_1         | ERROR saleor.graphql.errors.unhandled A query failed unexpectedly [PID:32:Thread-16]
api_1         | Traceback (most recent call last):
api_1         |   File "/usr/local/lib/python3.9/site-packages/django/db/backends/utils.py", line 84, in _execute
api_1         |     return self.cursor.execute(sql, params)
api_1         | psycopg2.ProgrammingError: can't adapt type 'SimpleLazyObject'
api_1         |
api_1         | The above exception was the direct cause of the following exception:
api_1         |
api_1         | Traceback (most recent call last):
api_1         |   File "/usr/local/lib/python3.9/site-packages/promise/dataloader.py", line 261, in dispatch_queue_batch
api_1         |     batch_promise = loader.batch_load_fn(keys)
api_1         |   File "/app/saleor/graphql/core/dataloaders.py", line 41, in batch_load_fn
api_1         |     results = self.batch_load(keys)
api_1         |   File "/app/saleor/graphql/warehouse/dataloaders.py", line 44, in batch_load
api_1         |     quantities = self.batch_load_country(
api_1         |   File "/app/saleor/graphql/warehouse/dataloaders.py", line 82, in batch_load_country
api_1         |     for variant_id, shipping_zone_id, quantity in results:
api_1         |   File "/usr/local/lib/python3.9/site-packages/django/db/models/query.py", line 287, in __iter__
api_1         |     self._fetch_all()
api_1         |   File "/usr/local/lib/python3.9/site-packages/django/db/models/query.py", line 1308, in _fetch_all
api_1         |     self._result_cache = list(self._iterable_class(self))
api_1         |   File "/usr/local/lib/python3.9/site-packages/django/db/models/query.py", line 142, in __iter__
api_1         |     return compiler.results_iter(tuple_expected=True, chunked_fetch=self.chunked_fetch, chunk_size=self.chunk_size)
api_1         |   File "/usr/local/lib/python3.9/site-packages/django/db/models/sql/compiler.py", line 1108, in results_iter
api_1         |     results = self.execute_sql(MULTI, chunked_fetch=chunked_fetch, chunk_size=chunk_size)
api_1         |   File "/usr/local/lib/python3.9/site-packages/django/db/models/sql/compiler.py", line 1156, in execute_sql
api_1         |     cursor.execute(sql, params)
api_1         |   File "/usr/local/lib/python3.9/site-packages/django/db/backends/utils.py", line 98, in execute
api_1         |     return super().execute(sql, params)
api_1         |   File "/usr/local/lib/python3.9/site-packages/django/db/backends/utils.py", line 66, in execute
api_1         |     return self._execute_with_wrappers(sql, params, many=False, executor=self._execute)
api_1         |   File "/usr/local/lib/python3.9/site-packages/django/db/backends/utils.py", line 75, in _execute_with_wrappers
api_1         |     return executor(sql, params, many, context)
api_1         |   File "/app/saleor/graphql/views.py", line 50, in tracing_wrapper
api_1         |     return execute(sql, params, many, context)
api_1         |   File "/usr/local/lib/python3.9/site-packages/django/db/backends/utils.py", line 84, in _execute
api_1         |     return self.cursor.execute(sql, params)
api_1         |   File "/usr/local/lib/python3.9/site-packages/django/db/utils.py", line 90, in __exit__
api_1         |     raise dj_exc_value.with_traceback(traceback) from exc_value
api_1         |   File "/usr/local/lib/python3.9/site-packages/django/db/backends/utils.py", line 84, in _execute
api_1         |     return self.cursor.execute(sql, params)
api_1         | django.db.utils.ProgrammingError: can't adapt type 'SimpleLazyObject'
api_1         | ERROR saleor.graphql.errors.unhandled A query failed unexpectedly [PID:32:Thread-16]
api_1         | Traceback (most recent call last):
api_1         |   File "/usr/local/lib/python3.9/site-packages/django/db/backends/utils.py", line 84, in _execute
api_1         |     return self.cursor.execute(sql, params)
api_1         | psycopg2.ProgrammingError: can't adapt type 'SimpleLazyObject'

System information
Saleor version:

[x] dev (current master)
[x] 3.0
[ ] 2.11
[ ] 2.10

Operating system:

[ ] Windows
[X] Linux
[ ] MacOS
[ ] Other

Possibly related to https://github.com/mirumee/saleor/pull/7206

Appears fixed in master!


as any Remove and File Name change

Have you tested it? @yky4589

@AkiaCode yes i tested

@yky4589  okay it will megred


mqtt over TLS

Hi, does this library support mqtt over TLS? x-509

Hi Bent, thanks for opening this issue. Let me have a look. :)
Yes, via the tls_context argument to Client.__init__. See python's built-in ssl.SslContext class for additional details.
I have no personal experience with ssl.SslContext so I can't really provide an example. We simply forward said context to the underlying paho MQTT client via tls_set_context.
I hope that helps. 👍 I can see that I missed the discussion that you created here in this repo. Sorry about that.
~Frederik

Thanks! This is a very slow side project for me if I can get the TLS to work ill post something maybe to use as an example.

for me with a valid cert works this:
transport='websockets', port=443, tls_context=ssl.create_default_context()
IMHO it should arrive to documentations how to create default context.

Here a working example with a self-signed certificate ca.pem:
import asyncio
import aiomqtt
import ssl

async def main():
    tls_params = aiomqtt.TLSParameters(
        ca_certs='./ca.pem',
        certfile=None,
        keyfile=None,
        cert_reqs=ssl.CERT_REQUIRED,
        tls_version=ssl.PROTOCOL_TLS,
        ciphers=None,
    )
    async with aiomqtt.Client("test.mosquitto.org", tls_params=tls_params) as client:
        await client.publish("test/test", payload=28.4)

if __name__ == "__main__":
    asyncio.run(main())


Update jest.vim

Allow __test__ to be in sub-directory and allow - or _ test suffix.

@spheric Looks good, thanks!


Bug with translating Updated in configurations section

@marwin1991 Fix -  https://github.com/logchange/logchange/pull/230


Release notes for <IP_ADDRESS> win (Edge)

Deploy preview for docsdocker ready!
Built with commit e50ac38e07a5e384231fbbb543b90e7d6ed0d9b8
https://deploy-preview-8755--docsdocker.netlify.com

@gtardif isn't that already in #8752?

@usha-mandya as for https://github.com/docker/docker.github.io/pull/8756
You can close this issue without to merge.


Add support for importing Amazon games through Heroic

Is your feature request related to a problem? Please describe.
Heroic recently added support for Amazon games, and BoilR currently only looks at installed games to import from Heroic through Legendary and GOG.
Describe the solution you'd like
BoilR should look at the installed.json list for Nile in addition to the installed.json's for Legendary and GOG when considering Heroic games to import. I don't know Rust but glancing at the code, I think only another "get installed location" function and code to call it when searching the others is needed for this.
The Nile installed.json file is located at config/heroic/nile_config/nile/ in both the flatpak and user bin versions.
Describe alternatives you've considered
An alternative to looking at installed lists would be looking at a list of game installation folders, so BoilR wouldn't have to care about different platforms and instead scrape games directly from where they're installed. This is how I assumed it worked at first and then was confused when I couldn't add any install locations in the settings.
Just in case these hard paths change in the future, it may be worth making them a config file setting as well.

I know this is an old post but I am having this issue as well. Heroic supports Epic, Gog and Amazon games but looking at the code at src/platforms/heroic/heroic_platform.rs it seems like Boilr only checks games json file for the first two.
Taking a look at Heroic files I also found that Amazon installation file is located at .var/app/com.heroicgameslauncher.hgl/config/heroic/nile_config/nile/installed.json in my Steam Deck (flatpack version).
Hope this thread gets some interest and this feat is included sometime 😄


fix #2653: return 401 if auth enabled and no users

Pulled the most relevant bits into alpha1. Closing this since we need to get that merged before merging anything else into master.


registry/storage (2.0): validate manifest parent-child relationships

Since 1.8 may push bad manifests, we've added some validation to ensure that
the parent-child relationships represented by image json are correct. If the
relationship is not correct, we reject the push.
Signed-off-by: Stephen J Day<EMAIL_ADDRESS>

DO NOT MERGE THIS.
This PR is for review and informational purposes.

I've pushed this branch to docker/distribution:release/2.0-image-validation-stopgap.

Can we make the assumption that this is 1.8.0 specific and have the registry send down an error to the client mentioning that he should upgrade to 1.8.1?

@icecrime This is a stopgap to prevent image corruption. We don't really have any measures for client version detection in the registry. We had already discussed blocking 1.8.0 in the load balancer but that was turned down so we did this.


Adding helm deployment/pipeline for Maintenance Page

Description
This PR includes the following proposed change(s):

{List all the changes, if possible add the jira ticket #}

Type of change

[ ] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Refactoring / Documentation
[ ] Version change

if your change is a breaking change, please add breaking change label to this PR
How Has This Been Tested?
On local env
Please describe the tests that you ran to verify your changes.
Does the change impact or break the Docker build?

[ ] Yes
[x] No

If Yes: Has Docker been updated accordingly?

[ ] Yes
[ ] No

Checklist:

[ ] My code follows the style guidelines of this project
[x] I have performed a self-review of my own code
[ ] I have made corresponding changes to the documentation
[ ] New and existing unit tests pass locally with my changes

@brero12  could you move the new chart out from the nested under gitops/charts/traffic-court-online. I would like the maintenance-site chart as a separate deployable / updatable chart.
Also, could you add parameter for the route to allow it to optionally created. I like being able to test charts on non-OpenShift kubernetes like Docker Desktop Kubernetes.
Generally this looking good.


issue using vision module

Hi, trying to send an image, using the basic command:
python3.8 cli.py --vision --prompt "What's in this image?" --image_path image.png
image is in the current folder
getting the following error:

`python3.8 cli.py --vision --prompt "What's in this image?" --image_path image.png

Enter '/upload' at any time followed by the image path or URL and an optional prompt.
Example: /upload /path/to/image.jpg What's in this image?

Enter '/clear' to clear conversation history.
Enter '/exit' or '/quit' to end the conversation.

\ Assistant is thinking...... (0:00:01)[ ERROR ]: Unknown error: 422 Client Error: Unprocessable Entity for url: https://api.x.ai/v1/chat/completions

[ SUCCESS ]: Cache folder cleaned.

Thank you for using the Grok AI toolkit. Have a great day!
`

Thanks for reporting this issue @t0mZ4! This has been fixed in our latest release v1.1.0.
If you're still experiencing this issue, please follow one of the methods listed below:
Option 1 - Update existing clone:
cd grok-ai-toolkit
git fetch
git pull origin main

Option 2 - New clone:
rm -rf grok-ai-toolkit
git clone https://github.com/RMNCLDYO/grok-ai-toolkit.git
cd grok-ai-toolkit

Also make sure:

Your image file exists and is under the 10MB size limit
You're using the correct model (grok-2-vision-1212 or grok-vision-beta)

The error you encountered was due to incorrect image payload formatting in the API request. We've updated the image handling logic to properly encode and validate images before sending them to the API.
Let me know if you need any further assistance!


Before after and focus

Needed to clear before and after for all elements as well as link hover, active, etc. pseudo classes.

It seems like many selectors were removed from different places instead of just new stuff added. Why were they removed?
Also seems to be a few lines with extra whitespace added at the end.

I don't think that I removed any selectors, though, I may have inserted some into the middle of a line.  Do you have an example of something that was removed? As for the whitespaces, yeah, that was my bad.

This would be a great addition.

Thanks for the pull request. Yes it looks like there were a couple of accidental deletions. And it looks like the version number has been changed. If you could fix those, I'd be happy to merge.


Migrate KeyringController to BaseControllerV2

Description

This PR refactors KeyringController to extend BaseControllerV2.
This controller's state is completely non-persistent and is kept in sync with the inner EthKeyringController's memStore through event subscription. For this reason, the fullUpdate method is now unnecessary and has been removed - Tests have been refactored to use controller state for assertions so that this mechanism is implicitly well covered.
All the methods that returned fullUpdate, now return the KeyringController's state with vault, encryptionKey and encryptionSalt removed as sensitive data; these parameters can always be found with KeyringController.state
Changes

BREAKING: Added messenger: KeyringControllerMessenger to constructor parameters
BREAKING: Removed fullUpdate method
BREAKING: Removed encryptionKey and encryptionVault from addNewAccount, addNewAccountWithoutUpdate, createNewVaultAndRestore, createNewVaultAndKeychain, setLocked, submitEncryptionKey and submitPassword methods.
BREAKING: Removed subscribe and unsubscribe methods, as now event listening should be done through the messenger
BREAKING: Removed onLock and onUnlock methods, as now the messenger will fire KeyringController:lock and KeyringController:unlock
CHANGED: KeyringController now extends BaseControllerV2 instead of BaseController

References

Fixes #1258

Checklist

[x] I've updated the test suite for new or updated code as appropriate
[x] I've updated documentation for new or updated code as appropriate (note: this will usually be JSDoc)
[x] I've highlighted breaking changes using the "BREAKING" category above as appropriate

I audited the set of changes here and here are my notes for the changelog:

BREAKING: KeyringController now inherits from BaseControllerV2

The constructor takes a single argument, an options bag, instead of three arguments
The state of the controller is accessible via controller.state instead of controller.store.getState()
KeyringController now expects a messenger option (and corresponding type KeyringControllerMessenger is now available)
The messenger will now publish KeyringController:getState and KeyringController:stateChange events (and corresponding types KeyringControllerGetStateAction and KeyringControllerStateChangeEvent are now available)
Removed KeyringState, KeyringMemState, and KeyringConfig in favor of new types KeyringControllerState, KeyringControllerActions, KeyringControllerEvents, and KeyringControllerOptions

KeyringControllerState is like the previous KeyringMemState but with an extra vault property
KeyringControllerOptions incorporates the previous set of options and the KeyringConfig

Added immer as a dependency

BREAKING: Removed index from the Keyring type
BREAKING: The keyringState property in the return value of addNewAccount, addNewAccountWithoutUpdate, createNewVaultAndRestore, createNewVaultAndKeychain, importAccountWithStrategy, removeAccount, setLocked, submitEncryptionKey, and submitPassword is now a type of KeyringControllerMemState instead of KeyringMemState (and may omit vault, encryptionKey, and encryptionSalt)
BREAKING: Removed subscribe and unsubscribe methods

State changes can be directly subscribed to (or unsubscribed from) via the messenger if necessary.

BREAKING: Removed lock and unlock methods

KeyringController:lock and KeyringController:unlock may now be subscribed to via the messenger if necessary.

BREAKING: Removed fullUpdate method

There is no need to call this method anymore because the controller should always be up to date with the EthKeyringController instance.

ADDED: Added KeyringControllerMemState type

This is like the previous KeyringMemState but without encryptionKey or encryptionSalt

ADDED: Added messenger events NetworkController:lock and NetworkController:unlock (and corresponding types KeyringControllerLockEvent and KeyringControllerUnlockEvent)

The messenger will publish NetworkController:lock when the inner EthKeyringController instance publishes its lock event and NetworkController:unlock when it publishes its unlock event

@mikesposito I believe this aligns with what you had written in your changelog. Does this sound right though?


Re-implement ignore list

Add it to channel or server object.
Could be a server object thing, with list of Destination objects?
Add function to modify Ignore list also.

No real demand


fix(filter): add missing value param to filter

closes #42

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


support redash v10

https://hub.docker.com/r/redash/redash/tags
redash has released v10.
I tried a little, but I can't access the service (Error 502 gateway error).
Please support v10.
Dockerfile
- FROM redash/redash:latest
+ FROM redash/redash:preview

error
Nov 12 12:47:43 AM  [2021-11-11 15:47:43 +0000] [152] [INFO] Worker exiting (pid: 152)
Nov 12 12:47:43 AM  [2021-11-11 15:47:43 +0000] [155] [ERROR] Exception in worker process
Nov 12 12:47:43 AM  Traceback (most recent call last):
  File "/usr/local/lib/python3.7/site-packages/gunicorn/arbiter.py", line 583, in spawn_worker
    worker.init_process()
  File "/usr/local/lib/python3.7/site-packages/gunicorn/workers/base.py", line 119, in init_process
    self.load_wsgi()
  File "/usr/local/lib/python3.7/site-packages/gunicorn/workers/base.py", line 144, in load_wsgi
    self.wsgi = self.app.wsgi()
  File "/usr/local/lib/python3.7/site-packages/gunicorn/app/base.py", line 67, in wsgi
    self.callable = self.load()
  File "/usr/local/lib/python3.7/site-packages/gunicorn/app/wsgiapp.py", line 49, in load
    return self.load_wsgiapp()
  File "/usr/local/lib/python3.7/site-packages/gunicorn/app/wsgiapp.py", line 39, in load_wsgiapp
    return util.import_app(self.app_uri)
  File "/usr/local/lib/python3.7/site-packages/gunicorn/util.py", line 358, in import_app
    mod = importlib.import_module(module)
  File "/usr/local/lib/python3.7/importlib/__init__.py", line 127, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "<frozen importlib._bootstrap>", line 1006, in _gcd_import
  File "<frozen importlib._bootstrap>", line 983, in _find_and_load
  File "<frozen importlib._bootstrap>", line 953, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
  File "<frozen importlib._bootstrap>", line 1006, in _gcd_import
  File "<frozen importlib._bootstrap>", line 983, in _find_and_load
  File "<frozen importlib._bootstrap>", line 967, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 677, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 728, in exec_module
  File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
  File "/app/redash/__init__.py", line 56, in <module>
    import_query_runners(settings.QUERY_RUNNERS)
  File "/app/redash/query_runner/__init__.py", line 362, in import_query_runners
    __import__(runner_import)
  File "/app/redash/query_runner/snowflake.py", line 2, in <module>
    import snowflake.connector
  File "/usr/local/lib/python3.7/site-packages/snowflake/connector/__init__.py", line 21, in <module>
    from .connection import SnowflakeConnection
  File "/usr/local/lib/python3.7/site-packages/snowflake/connector/connection.py", line 44, in <module>
    from .cursor import SnowflakeCursor, LOG_MAX_QUERY_LENGTH
  File "/usr/local/lib/python3.7/site-packages/snowflake/connector/cursor.py", line 45, in <module>
    from .arrow_result import ArrowResult
  File "arrow_result.pyx", line 13, in init snowflake.connector.arrow_result
SystemError: initialization of arrow_iterator raised unreported exception

Nov 12 12:47:43 AM  [2021-11-11 15:47:43 +0000] [157] [INFO] Worker exiting (pid: 157)
Nov 12 12:47:43 AM  [2021-11-11 15:47:43 +0000] [155] [INFO] Worker exiting (pid: 155)
Nov 12 12:47:44 AM  [2021-11-11 15:47:44 +0000] [226] [INFO] Booting worker with pid: 226
Nov 12 12:47:44 AM  [2021-11-11 15:47:44 +0000] [227] [INFO] Booting worker with pid: 227
Nov 12 12:47:44 AM  [2021-11-11 15:47:44 +0000] [228] [INFO] Booting worker with pid: 228
Nov 12 12:47:44 AM  [2021-11-11 15:47:44 +0000] [229] [INFO] Booting worker with pid: 229
Nov 12 12:47:44 AM  [2021-11-11 15:47:44 +0000] [230] [INFO] Booting worker with pid: 230
Nov 12 12:47:44 AM  [2021-11-11 15:47:44 +0000] [231] [INFO] Booting worker with pid: 231
Nov 12 12:47:45 AM  [2021-11-11 15:47:45 +0000] [232] [INFO] Booting worker with pid: 232
Nov 12 12:47:45 AM  [2021-11-11 15:47:45 +0000] [233] [INFO] Booting worker with pid: 233
Nov 12 12:48:14 AM  [2021-11-11 15:48:14 +0000] [1] [CRITICAL] WORKER TIMEOUT (pid:226)
Nov 12 12:48:14 AM  [2021-11-11 15:48:14 +0000] [1] [CRITICAL] WORKER TIMEOUT (pid:227)
Nov 12 12:48:14 AM  [2021-11-11 15:48:14 +0000] [226] [INFO] Worker exiting (pid: 226)
Nov 12 12:48:14 AM  [2021-11-11 15:48:14 +0000] [227] [INFO] Worker exiting (pid: 227)
Nov 12 12:48:15 AM  [2021-11-11 15:48:15 +0000] [1] [CRITICAL] WORKER TIMEOUT (pid:228)
Nov 12 12:48:15 AM  [2021-11-11 15:48:15 +0000] [1] [CRITICAL] WORKER TIMEOUT (pid:229)
Nov 12 12:48:15 AM  [2021-11-11 15:48:15 +0000] [1] [CRITICAL] WORKER TIMEOUT (pid:230)
Nov 12 12:48:15 AM  [2021-11-11 15:48:15 +0000] [1] [CRITICAL] WORKER TIMEOUT (pid:231)
Nov 12 12:48:15 AM  [2021-11-11 15:48:15 +0000] [1] [CRITICAL] WORKER TIMEOUT (pid:232)
Nov 12 12:48:15 AM  [2021-11-11 15:48:15 +0000] [1] [CRITICAL] WORKER TIMEOUT (pid:233)
Nov 12 12:48:15 AM  [2021-11-11 15:48:15 +0000] [228] [INFO] Worker exiting (pid: 228)
Nov 12 12:48:15 AM  [2021-11-11 15:48:15 +0000] [230] [INFO] Worker exiting (pid: 230)
Nov 12 12:48:15 AM  [2021-11-11 15:48:15 +0000] [233] [INFO] Worker exiting (pid: 233)
Nov 12 12:48:15 AM  [2021-11-11 15:48:15 +0000] [229] [INFO] Worker exiting (pid: 229)
Nov 12 12:48:15 AM  [2021-11-11 15:48:15 +0000] [232] [INFO] Worker exiting (pid: 232)
Nov 12 12:48:15 AM  [2021-11-11 15:48:15 +0000] [298] [INFO] Booting worker with pid: 298
Nov 12 12:48:15 AM  [2021-11-11 15:48:15 +0000] [299] [INFO] Booting worker with pid: 299
Nov 12 12:48:15 AM  [2021-11-11 15:48:15 +0000] [300] [INFO] Booting worker with pid: 300
Nov 12 12:48:16 AM  [2021-11-11 15:48:16 +0000] [301] [INFO] Booting worker with pid: 301
Nov 12 12:48:16 AM  [2021-11-11 15:48:16 +0000] [302] [INFO] Booting worker with pid: 302
Nov 12 12:48:16 AM  [2021-11-11 15:48:16 +0000] [303] [INFO] Booting worker with pid: 303
Nov 12 12:48:16 AM  [2021-11-11 15:48:16 +0000] [305] [INFO] Booting worker with pid: 305
Nov 12 12:48:16 AM  [2021-11-11 15:48:16 +0000] [304] [INFO] Booting worker with pid: 304
Nov 12 12:47:40 AM  [2021-11-11 15:47:40 +0000] [713] [INFO] Worker exiting (pid: 713)
Nov 12 12:47:40 AM  [2021-11-11 15:47:40 +0000] [708] [INFO] Worker exiting (pid: 708)
Nov 12 12:47:42 AM  [2021-11-11 15:47:42 +0000] [714] [INFO] Worker exiting (pid: 714)
Nov 12 12:47:43 AM  [2021-11-11 15:47:43 +0000] [707] [INFO] Worker exiting (pid: 707)
Nov 12 12:48:46 AM  [2021-11-11 15:48:46 +0000] [1] [CRITICAL] WORKER TIMEOUT (pid:298)
Nov 12 12:48:46 AM  [2021-11-11 15:48:46 +0000] [1] [CRITICAL] WORKER TIMEOUT (pid:299)
Nov 12 12:48:46 AM  [2021-11-11 15:48:46 +0000] [1] [CRITICAL] WORKER TIMEOUT (pid:300)
Nov 12 12:48:46 AM  [2021-11-11 15:48:46 +0000] [1] [CRITICAL] WORKER TIMEOUT (pid:301)
Nov 12 12:48:46 AM  [2021-11-11 15:48:46 +0000] [1] [CRITICAL] WORKER TIMEOUT (pid:302)
Nov 12 12:48:46 AM  [2021-11-11 15:48:46 +0000] [1] [CRITICAL] WORKER TIMEOUT (pid:303)
Nov 12 12:48:46 AM  [2021-11-11 15:48:46 +0000] [1] [CRITICAL] WORKER TIMEOUT (pid:304)
Nov 12 12:48:46 AM  [2021-11-11 15:48:46 +0000] [1] [CRITICAL] WORKER TIMEOUT (pid:305)
Nov 12 12:48:46 AM  [2021-11-11 15:48:46 +0000] [300] [INFO] Worker exiting (pid: 300)
Nov 12 12:48:46 AM  [2021-11-11 15:48:46 +0000] [302] [INFO] Worker exiting (pid: 302)
Nov 12 12:48:46 AM  [2021-11-11 15:48:46 +0000] [305] [INFO] Worker exiting (pid: 305)
Nov 12 12:48:46 AM  [2021-11-11 15:48:46 +0000] [299] [INFO] Worker exiting (pid: 299)
Nov 12 12:48:46 AM  [2021-11-11 15:48:46 +0000] [303] [INFO] Worker exiting (pid: 303)
Nov 12 12:48:46 AM  [2021-11-11 15:48:46 +0000] [301] [INFO] Worker exiting (pid: 301)
Nov 12 12:48:46 AM  [2021-11-11 15:48:46 +0000] [304] [INFO] Worker exiting (pid: 304)
Nov 12 12:48:47 AM  [2021-11-11 15:48:47 +0000] [298] [INFO] Worker exiting (pid: 298)
Nov 12 12:48:47 AM  [2021-11-11 15:48:47 +0000] [371] [INFO] Booting worker with pid: 371
Nov 12 12:48:47 AM  [2021-11-11 15:48:47 +0000] [372] [INFO] Booting worker with pid: 372
Nov 12 12:48:47 AM  [2021-11-11 15:48:47 +0000] [373] [INFO] Booting worker with pid: 373
Nov 12 12:48:48 AM  [2021-11-11 15:48:48 +0000] [374] [INFO] Booting worker with pid: 374
Nov 12 12:48:48 AM  [2021-11-11 15:48:48 +0000] [375] [INFO] Booting worker with pid: 375
Nov 12 12:48:48 AM  [2021-11-11 15:48:48 +0000] [376] [INFO] Booting worker with pid: 376
Nov 12 12:48:48 AM  [2021-11-11 15:48:48 +0000] [377] [INFO] Booting worker with pid: 377
Nov 12 12:48:48 AM  [2021-11-11 15:48:48 +0000] [378] [INFO] Booting worker with pid: 378
Nov 12 12:49:18 AM  [2021-11-11 15:49:18 +0000] [1] [CRITICAL] WORKER TIMEOUT (pid:371)
Nov 12 12:49:18 AM  [2021-11-11 15:49:18 +0000] [1] [CRITICAL] WORKER TIMEOUT (pid:372)
Nov 12 12:49:18 AM  [2021-11-11 15:49:18 +0000] [1] [CRITICAL] WORKER TIMEOUT (pid:373)
Nov 12 12:49:18 AM  [2021-11-11 15:49:18 +0000] [1] [CRITICAL] WORKER TIMEOUT (pid:374)
Nov 12 12:49:18 AM  [2021-11-11 15:49:18 +0000] [1] [CRITICAL] WORKER TIMEOUT (pid:375)
Nov 12 12:49:18 AM  [2021-11-11 15:49:18 +0000] [1] [CRITICAL] WORKER TIMEOUT (pid:376)
Nov 12 12:49:18 AM  [2021-11-11 15:49:18 +0000] [1] [CRITICAL] WORKER TIMEOUT (pid:377)
Nov 12 12:49:18 AM  [2021-11-11 15:49:18 +0000] [1] [CRITICAL] WORKER TIMEOUT (pid:378)
Nov 12 12:49:18 AM  [2021-11-11 15:49:18 +0000] [375] [INFO] Worker exiting (pid: 375)
Nov 12 12:49:18 AM  [2021-11-11 15:49:18 +0000] [378] [INFO] Worker exiting (pid: 378)
Nov 12 12:49:18 AM  [2021-11-11 15:49:18 +0000] [371] [INFO] Worker exiting (pid: 371)
Nov 12 12:49:18 AM  [2021-11-11 15:49:18 +0000] [377] [INFO] Worker exiting (pid: 377)
Nov 12 12:49:18 AM  [2021-11-11 15:49:18 +0000] [373] [INFO] Worker exiting (pid: 373)
Nov 12 12:49:18 AM  [2021-11-11 15:49:18 +0000] [374] [INFO] Worker exiting (pid: 374)
Nov 12 12:49:18 AM  [2021-11-11 15:49:18 +0000] [372] [INFO] Worker exiting (pid: 372)
Nov 12 12:49:19 AM  [2021-11-11 15:49:19 +0000] [376] [INFO] Worker exiting (pid: 376)

Thanks for creating this issue @akichim21. I'm seeing the same (or similar) error. I'll see if I can get v10 working on Render and update this repo with the changes.

@crcastle
Thank you for responding.

@akichim21  @crcastle  the problem is that the blueprint specify a standard web service which has 2 GB of RAM, but Redash v10 requires 4 GB of RAM.

I'm running into this issue as well.

@akichim21 @crcastle the problem is that the blueprint specify a standard web service which has 2 GB of RAM, but Redash v10 requires 4 GB of RAM.

I've tried upgrading to a Pro instance, but still no luck.
FROM redash/redash:latest

COPY ./render-redash.sh /bin/render-redash
ENTRYPOINT ["/bin/render-redash"]

502 Bad Gateway
May 4 12:50:36 PM  [2022-05-04 03:50:36 +0000] [5597] [INFO] Booting worker with pid: 5597
May 4 12:50:36 PM  Exception SystemExit: 1 in <module 'collections' from '/usr/local/lib/python2.7/collections.pyc'> ignored
May 4 12:50:36 PM  /usr/local/lib/python2.7/site-packages/pyarrow/__init__.py:54: RuntimeWarning: Cython module failed to patch module with custom type

@crcastle
Is it possible to fix bugs?
I would like to know if there is a way to activate any version of redash.
Thanks.

Hi @akichim21- Sorry you're having issues with this. I'll take a look at it today or tomorrow.

Hi @akichim21 - Just a quick update: Made some progress on this, but not quite done yet.

@crcastle
thank you for your response.
very helpful for me.

Would also like to use redash on render, but as others have said - no luck. Any progress this week @crcastle?

@crcastle
Thanks! Let me know when it's done.

Hi @akichim21 and @danieljbrooks-GitHub - I've created a new branch and PR containing Redash v10. Would you be able to test it out using the instructions in the PR? Thanks!

For a lightweight usage, the following works well for us (including emails) - with all services on starter plan.

    Documentation

Redash
After the redash service is created for the first time, make sure to run the following in the service shell to setup the database.
render-redash create_db

Links:

https://redash.io/help/open-source/setup
https://redash.io/help/open-source/admin-guide/env-vars-settings

Inspired by

https://github.com/render-examples/redash
https://render.com/docs/deploy-redash
https://github.com/render-examples/redash/pull/3
https://github.com/getredash/redash/issues/5640
redash docker-compose.yml

render/Dockerfile
FROM redash/redash:10.1.0.b50633

COPY ./redash/render-redash.sh /bin/render-redash
ENTRYPOINT ["/bin/render-redash"]

redash/render-redash.sh
#!/bin/bash
set -e

export PYTHONUNBUFFERED=1

export REDASH_HOST="redash.example.com"

exec /app/bin/docker-entrypoint "$@"

render.yaml
databases:
  - name: redash postgres14
    region: frankfurt
    plan: Starter
    postgresMajorVersion: 14
    databaseName: redash
    user: redash

services:
  - name: redash
    type: web
    autoDeploy: false
    region: frankfurt
    plan: Starter
    env: docker
    dockerfilePath: ./redash/Dockerfile
    dockerCommand: render-redash server
    healthCheckPath: /ping
    domains:
      - redash.example.com
    envVars:
      - fromGroup: redash
      - key: REDASH_DATABASE_URL
        fromDatabase:
          name: redash postgres14
          property: connectionString
      - key: REDASH_REDIS_URL
        fromService:
          name: redash redis
          type: redis
          property: connectionString
      - key: PORT
        value: 5000
      - key: REDASH_WEB_WORKERS
        value: 1

  - name: redash scheduler
    type: worker
    autoDeploy: false
    region: frankfurt
    plan: Starter
    env: docker
    dockerfilePath: ./redash/Dockerfile
    dockerCommand: render-redash scheduler
    envVars:
      - fromGroup: redash
      - key: REDASH_DATABASE_URL
        fromDatabase:
          name: redash postgres14
          property: connectionString
      - key: REDASH_REDIS_URL
        fromService:
          name: redash redis
          type: redis
          property: connectionString
      - key: QUEUES
        value: "celery"
      - key: WORKERS_COUNT
        value: 1

  - name: redash worker scheduled
    type: worker
    autoDeploy: false
    region: frankfurt
    plan: Starter
    env: docker
    dockerfilePath: ./redash/Dockerfile
    dockerCommand: render-redash worker
    envVars:
      - fromGroup: redash
      - key: REDASH_DATABASE_URL
        fromDatabase:
          name: redash postgres14
          property: connectionString
      - key: REDASH_REDIS_URL
        fromService:
          name: redash redis
          type: redis
          property: connectionString
      - key: QUEUES
        value: "scheduled_queries,schemas"
      - key: WORKERS_COUNT
        value: 1

  - name: redash worker adhoc
    type: worker
    autoDeploy: false
    region: frankfurt
    plan: Starter
    env: docker
    dockerfilePath: ./redash/Dockerfile
    dockerCommand: render-redash worker
    envVars:
      - fromGroup: redash
      - key: REDASH_DATABASE_URL
        fromDatabase:
          name: redash postgres14
          property: connectionString
      - key: REDASH_REDIS_URL
        fromService:
          name: redash redis
          type: redis
          property: connectionString
      - key: QUEUES
        value: "queries,periodic,emails,default"
      - key: WORKERS_COUNT
        value: 1

  - name: redash redis
    type: redis
    region: frankfurt
    plan: Starter
    maxmemoryPolicy: noeviction

envVarGroups:
  - name: redash
    envVars:
      - key: REDASH_LOG_LEVEL
        value: "INFO"
      - key: REDASH_COOKIE_SECRET
        generateValue: true
      - key: REDASH_SECRET_KEY
        generateValue: true
      - key: REDASH_FEATURE_ALLOW_CUSTOM_JS_VISUALIZATIONS
        value: true
      - key: REDASH_MAIL_SERVER
        value: smtp.postmarkapp.com
      - key: REDASH_MAIL_PORT
        value: 587
      - key: REDASH_MAIL_USE_TLS
        value: true
      - key: REDASH_MAIL_USERNAME
        sync: false # It is the postmark server "tools" API token
      - key: REDASH_MAIL_PASSWORD
        sync: false # It is the postmark server "tools" API token
      - key: REDASH_MAIL_DEFAULT_SENDER
        value<EMAIL_ADDRESS>


Search and Replace: Support path expressions

In continuation to #961, support path expressions to search for matching criteria.

Moved to https://github.com/GoogleContainerTools/kpt/issues/961


Environments configured at suborg cause error in repository configuration in .github/repos

Problem Description
When creating a specific repository yaml file for a repo in ./github/repos that has environments provisioned at the suborg level, an error appears for the repository with the message below.
Error HttpError: Resource not accessible by integration in Environments for repo: {"owner":"rbc-internal","repo":"0Z50_backend"} entries [{"name":"development","wait_timer":0,"prevent_self_review":true,"reviewers":[{"type":"Team","id":566}],"deployment_branch_policy":{"protected_branches":true,"custom_branch_policies":false}},{"name":"qa","wait_timer":0,"prevent_self_review":true,"reviewers":[{"type":"Team","id":567}],"deployment_branch_policy":{"protected_branches":true,"custom_branch_policies":false}},{"name":"production","wait_timer":0,"prevent_self_review":true,"reviewers":[{"type":"Team","id":568}],"deployment_branch_policy":{"protected_branches":true,"custom_branch_policies":false}}]

The yaml definition used for ./github/suborgs/XXXX.yaml is:
suborgrepos:
  - XXXX*

suborgteams:
  - APP_XXXX_DevUser
  - APP_XXXX_QAUser
  - APP_XXXX_ProdUser
  - APP_XXXX_ReadUser
  - APP_XXXX_DevAdminUser

repository:
  auto_init: true
  topics:
    - XXXX
  private: false
  visibility: public
  has_issues: true
  has_projects: true
  has_wiki: true
  default_branch: main
  gitignore_template: node
  license_template: mit
  allow_squash_merge: true
  allow_merge_commit: true
  allow_rebase_merge: true
  allow_auto_merge: true
  delete_branch_on_merge: true
  allow_update_branch: true

labels:
  - name: XXXX
    color: CC0000
    description: Appcode associated with the repositories.
  - name: bug
    color: CC0000
    description: An issue with the system
  - name: feature
    color: '#336699'
    description: New functionality.

teams:
  - name: APP_XXXX_DevUser
    permission: dev_user
  - name: APP_XXXX_QAUser
    permission: push
  - name: APP_XXXX_ProdUser
    permission: admin
  - name: APP_XXXX_ReadUser
    permission: push
  - name: APP_XXXX_DevAdminUser
    permission: admin

environments:
  - name: development
    wait_timer: 0
    prevent_self_review: true
    reviewers:
      - type: Team
        id: 1914
    deployment_branch_policy:
      protected_branches: true
      custom_branch_policies: false
  - name: qa
    wait_timer: 0
    prevent_self_review: true
    reviewers:
      - type: Team
        id: 1915
    deployment_branch_policy:
      protected_branches: true
      custom_branch_policies: false
  - name: production
    wait_timer: 0
    prevent_self_review: true
    reviewers:
      - type: Team
        id: 1916
    deployment_branch_policy:
      protected_branches: true
      custom_branch_policies: false

branches:
  - name: default
    protection:
      required_pull_request_reviews:
        required_approving_review_count: 2
        dismiss_stale_reviews: true
        require_code_owner_reviews: true
        require_last_push_approval: true
        bypass_pull_request_allowances:
          apps: []
          users: []
          teams: []
        dismissal_restrictions:
          users: []
          teams: [APP_XXXX_DevUser]
      required_status_checks:
        strict: true
        contexts: []
      enforce_admins: true
      restrictions:
        apps: []
        users: []
        teams: []

The yaml definition I used for ./github/repos/XXXX_backend.yml is:
repository:
  name: XXXX_backend
  topics:
    - XXXX
  visibility: private

If I add the environments explicitly to the ./github/repos/XXXX_backend.yml file the same error persists.
If I remove the environments section in .github/suborgs/XXXX.yml suborg and in .github/repos/XXXX_backend.yml, safe-settings succeeds for both the suborg configurations and specific repository override definition in .github/repos/XXXX_backend.yml.
If the environments block is referenced in the suborg yaml, it will always error when a specific repository yaml file is added to to ./github/repos folder for that specific repo override in ./github/repos. The error appears when the suborg also matches the specific repo override file in ./github/repos.
If the suborg yaml for XXXX* does not have an environments block declared, the file in ./github/repos folder will succeed for that suborg.
What is actually happening
safe-settings returns an error when there are environments configured at the suborg level.
What is the expected behavior
The suborg should provision most of the configuration for the repositories and for this use case, we only want to override repository visibility on a few repositories.
Error output, if available
Error HttpError: Resource not accessible by integration in Environments for repo: {"owner":"rbc-internal","repo":"0Z50_backend"} entries [{"name":"development","wait_timer":0,"prevent_self_review":true,"reviewers":[{"type":"Team","id":566}],"deployment_branch_policy":{"protected_branches":true,"custom_branch_policies":false}},{"name":"qa","wait_timer":0,"prevent_self_review":true,"reviewers":[{"type":"Team","id":567}],"deployment_branch_policy":{"protected_branches":true,"custom_branch_policies":false}},{"name":"production","wait_timer":0,"prevent_self_review":true,"reviewers":[{"type":"Team","id":568}],"deployment_branch_policy":{"protected_branches":true,"custom_branch_policies":false}}]

Context
Are you using the hosted instance of probot/settings or running your own?
Running safe settings on AKS with ingress for webhook.
If running your own instance, are you using it with github.com or GitHub Enterprise?
GitHub Enterprise
Version of probot/settings
Running Probot v12.3.3 (Node.js: v16.20.2)
Version of GitHub Enterprise
GitHub Enterprise Server 3.11

It appears that environments on private and internal repositories must be used on specific pricing plans. When I executed the use case mentioned above, I was trying to modify my repository to a private repository which results in the environments plugin error.
When I switch the repository back to public, the run succeeds.
This issue can be closed.


Buttons read out title on hover and on click

Environment Details:
VSCode Version : 1.24.0
OS Version : Win10
Additional Details:
Screenreader,NVDA[2018.2],MAS1.3.1
Repro Steps:

Launch VS Code while NVDA is ON.
2.Navigate to "Activity Bar" at left side of the screen after login.
3.Observed that, NVDA is reading the "Activity Bar" menu items name twice.

Actual:
NVDA is reading "Explorer" button name of "Activity Bar" twice .
eg:Explorer(ctrl+shift+E) button Explorer(ctrl+shift+E)
Expected:
NVDA should reads all the button name only once such as "Explorer button","Search button" etc
Recommendations:
Refer below link which is repository of bug fixes code snippets:
https://microsoft.sharepoint.com/teams/msenable/mas/pages/browse-fixes.aspx
User Impact:
If screenreader reads it twice then user will get confused that, control have two name or two control are having same name.
MAS Reference:
MAS1.3.1- https://microsoft.sharepoint.com/:w:/r/teams/msenable/_layouts/15/WopiFrame.aspx?sourcedoc={54f28d1f-a2d1-4dcd-84e1-5c9b87e8aba4}
Attachment For Reference:
1.

2.
[Accessibility]A11y_VSCode_ActivityBar_Screenreader.pptx
Does this issue occur when all extensions are disabled?: Yes

IMHO this is desired behavior, since the first read is the hover, and the second read is only once you click. Are you sure this is unexpected? Since we have this behavior for all our buttons and none of the users complained

As per C+E accessibility testing reading twice it makes user confused.Hence it should reads only once.For more details please check the attached screenshots

I actually can not reproduce this with the latest vscode insiders and latest nvda -> closing


Migration not able to handle hindi text

I have create a .migration file which contains hindi text. db-migrate command fails when I run it.
[ERROR] error logging migration: (1366, "Incorrect string value: '\xE0\xA4\xB6\xE0\xA5\x81...' for column 'sql_up' at row 1")
[ERROR DETAILS] SQL command was:
20190313161739_user.migration
Migration file:
CREATE TABLE users
(
id                INT UNSIGNED PRIMARY KEY                    NOT NULL AUTO_INCREMENT,
name         VARCHAR(128)                                              NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
INSERT INTO users (id, name) VALUES (1, 'Rajeev'), (2, 'राजीव');

I found the solution and the problem is not in simple-db-migrate.
Alter database to use "utf8mb4" encoding with "utf8mb4_general_ci" collate


ACR: improve the parameter validation logic of image import command

For tracking: the code in https://github.com/Azure/azure-cli/blob/dev/src/azure-cli/azure/cli/command_modules/acr/import.py#L50-L85 should be moved to _validators.py
This is to follow up comments from PR review of https://github.com/Azure/azure-cli/pull/13392

ACR

we can live with this and let the next update on this command pick up


Improve communication when the plugin is doing its thing

Disclaimer: sorry if this sounds like a rant; I spent a lot of hours because of this and I'm trying to properly report the issue "under the hood", but after all of this I'm not on my kindest mood anymore and I'm unable to rewrite it any better :(

Description
When you install a dependency that requires this plugin without realizing what it does under the hood, you may very well be baffled by "why the hell is composer forcing this new weird dependency on my root requires??"
I spent a lot of time trying to understand what's going on, while I update a lot of old dependencies on our big project. I had to go through a lot of hoops and guesses, until I found --no-plugin and noticed the issue was "gone". Then, I ended up at #244, thinking this was my case, but the thread there was hard to follow without proper understanding of what the package is about. (Now that I'm writing about it, I wonder if the OP there also wasn't sure what this plugin does). I only grasped it all after checking the README. That's definitely bad DX - a library user shouldn't be required to read another library's doc to discover (sorry for the pun) why composer is "misbehaving". It's quite a long shot.
Example
It's confusing as hell when you do composer remove http-interop/http-factory-guzzle -vvv and it (1) removes it (2) reinstalls it (3) doesn't say one single line as to why it reinstalled that, even with the verbosiest flag. In my case, this is probably coming from Mailgun v3 - but then again, I'm unsure because it gets shoved in my root requires instead of being a dependency of Mailgun, and there's no way to tell why the extra package got installed if you're not doing a clean install of that dependency and have read what is expected to happen - or in the case the main dependency doesn't explain clearly the actions of discovery (which seems to be the case of Mailgun as well).

Check this meaningless output from composer
$ composer remove http-interop/http-factory-guzzle
./composer.json has been updated
Running composer update http-interop/http-factory-guzzle
Loading composer repositories with package information
Updating dependencies
Lock file operations: 0 installs, 0 updates, 1 removal
  - Removing http-interop/http-factory-guzzle (1.1.1)
Writing lock file
Installing dependencies from lock file (including require-dev)
Package operations: 0 installs, 0 updates, 1 removal
  - Removing http-interop/http-factory-guzzle (1.1.1)
Generating autoload files
50 packages you are using are looking for funding.
Use the `composer fund` command to find out more!

Loading composer repositories with package information
Updating dependencies
Lock file operations: 1 install, 0 updates, 0 removals
  - Locking http-interop/http-factory-guzzle (1.1.1)
Writing lock file
Installing dependencies from lock file (including require-dev)
Package operations: 1 install, 0 updates, 0 removals
  - Installing http-interop/http-factory-guzzle (1.1.1): Extracting archive
Generating autoload files
50 packages you are using are looking for funding.
Use the `composer fund` command to find out more!
Found 20 security vulnerability advisories affecting 10 packages.
Run "composer audit" for a full list of advisories.

Suggestions
Easy solution: logging.
Once the plugin realizes it needs to install an extra package because a root dependency requires that, it must state that clearly. For instance, it could write to console "php-http/discovery noticed your dependency ABC needs an implementation for PSR-XX. Thus, we're installing XYZ on your root requires".
Complex idea: deeper integration within Composer:

why: It would be awesome if this could be shown as a sort of peer dependency by composer why, but not sure about the feasibility of that through the plugin system. It doesn't help either with Composer not allowing any sort of comment on composer.json, so we can't even leave comments around the "weird" package, e.g. "this is here because it's a peer dependency of X".
remove: Another issue is allowing the user to remove that peer dependency, only to have it reinstalled again right after - it's a very real "WTF moment". Would it be viable to block the removal of the required dependency without installing a substitute before that?

Thanks for the feedback. Logging looks like a nice way forward.
Blocking the removal of a required dep is also likely possible but I'm not sure how easy or hard it can be; and anyway, logging would be nice so let's start with that.
Would you like to give it a try?

Oh gosh. I came here to complain and now you also want me to do open source??

I'll try to find some time next week :joy: No clue if I'll be able to, since I never touched Composer internals that deep, but I think it will be worth a try.
Happy new year, sir!

Oof, also spent two hours chasing this. I was so confused why composer was auto-adding symfony/http-client. Eventually figure out it was this plugin. I disabled the plugin, but adding logging would have saved some time for me.


BEP 9 Support: Magnet Links

BEP 9
Intermodal should support generating magnet links.

[ ] Print a link to stdout with --link (should it print out by default?)
[x] Set name with imdl torrent link
[x] Set peers with imdl torrent link
[ ] Support not creating the .torrent file (by default with --link?)
[x] Make --open work with imdl torrent link
[ ] Make --open work with imdl torrent create --link
[x] Get a link from an existing .torrent file imdl torrent link
[x] Getting a link from an existing torrent must preserve infohash, even if info dict does not round trip through serde
[ ] Show magnet link in torrent summary? Decided not to do this. imdl torrent link allows extracting the link from an existing torrent.
[ ] Show link in imdl torrent show
[x] Update BEP table in readme
[x] Make metainfo.announce optional, to support trackerless torrents
[x] Create torrent from magnet link (torrent create --from-link)
[ ] imdl torrent link --input - to read metainfo from stdin

Closing this monster issue that makes me unhappy to look at with smaller more focused issues.


Enable sharing UI state via URL

I don't understand why the launch.json got renamed?

A couple suggestions on cleaning up old code.  @qgan7125 could you see if you can check in the whitespace settings into the project (if not, could you tell us which are the proper whitespace settings to use)?  I see some cases where it looks like we had used multiple settings and it makes the diff look funny on GitHub.

Oh, sorry. I didn't notice the whitespace settings. There were some codes in the whitespace line. After I deleted the codes, I forgot to delete the whitespace line.


operator-sdk build gives error parsing HTTP 404

Bug Report

I'm trying to build the K8s operator using
operator-sdk build quay.io/buddhiwathsala/siddhi-operator:v0.0.1
But it gives an error as
INFO[0000] Building Docker image quay.io/buddhiwathsala/siddhi-operator:v0.0.1
Sending build context to Docker daemon  248.5MB
Step 1/7 : FROM registry.access.redhat.com/ubi7/ubi-minimal:7.6
error parsing HTTP 404 response body: invalid character 'F' looking for beginning of value: "File not found.\""
Error: failed to output build image quay.io/buddhiwathsala/siddhi-operator:v0.0.1: (failed to exec []string{"docker", "build", ".", "-f", "build/Dockerfile", "-t", "quay.io/buddhiwathsala/siddhi-operator:v0.0.1"}: exit status 1)
Usage:
  operator-sdk build <image> [flags]

Flags:
      --docker-build-args string     Extra docker build arguments as one string such as "--build-arg https_proxy=$https_proxy"
      --enable-tests                 Enable in-cluster testing by adding test binary to the image
  -h, --help                         help for build
      --namespaced-manifest string   Path of namespaced resources manifest for tests (default "deploy/operator.yaml")
      --test-location string         Location of tests (default "./test/e2e")

Environment

operator-sdk version:
operator-sdk version v0.5.0+git

Kubernetes version information:

kubectl version
Client Version: version.Info{Major:"1", Minor:"10", GitVersion:"v1.10.11", GitCommit:"637c7e288581ee40ab4ca210618a89a555b6e7e9", GitTreeState:"clean", BuildDate:"2018-11-26T14:38:32Z", GoVersion:"go1.9.3", Compiler:"gc", Platform:"darwin/amd64"}
Server Version: version.Info{Major:"1", Minor:"13", GitVersion:"v1.13.2", GitCommit:"cff46ab41ff0bb44d8584413b598ad8360ec1def", GitTreeState:"clean", BuildDate:"2019-01-10T23:28:14Z", GoVersion:"go1.11.4", Compiler:"gc", Platform:"linux/amd64"}

I'm using minikube version: v0.33.1 and go version go1.12 darwin/amd64 enviroment to build the operator.

@BuddhiWathsala It looks like your operator-sdk binary is one that used registry.access.redhat.com/ubi7/ubi-minimal:7.6 as the base image when you created your project. That was the incorrect base image and we switched to registry.access.redhat.com/ubi7-dev-preview/ubi-minimal:7.6 in v0.6.0.
To fix it in your existing project, you should use registry.access.redhat.com/ubi7-dev-preview/ubi-minimal:7.6 as the base image in build/Dockerfile.
If that doesn't resolve your problem, re-open the issue and we'll figure it out!


更新至2311.40000.5.0后，在开启vulkan驱动后无法运行国服蔚蓝档案程序/After updating to 2311.40000.5.0，unable to open Blue Archive app Chinese main land version.

Steps to reproduce
更新至2311.40000.5.0后，打开实验性功能的vulkan驱动，选择d3d12，然后打开中国大陆版本的蔚蓝档案app
Update to 2311.40000.5.0, open vulkan driver and chose d3d12, then Blue Archive app (Chinese main land version) can't start up.
✔ Expected Behavior
❌ Actual Behavior
Other Software
No response
Please specify the version of Windows Subsystem for Android
2311.40000.5.0

同，目前只能暂时关闭vulkan的使用

To complete the description and for future viewers:
When Vulkan settings is set to D3D12 with WSA version 2311.40000.5.0, Blue Archive's Chinese variant, 蔚蓝档案 (com.RoamingStar.BlueArchive) cannot start and will quit, potentially causing the whole WSA environment to crash as well.
Downgarding to 2311.40000.4.0 may not be an option as this may lead to BSOD.
Note: Vulkan D3D12 support is experimental and is not on by default.

To complete the description and for future viewers:
When Vulkan settings is set to D3D12 with WSA version 2311.40000.5.0, Blue Archive's Chinese variant, 蔚蓝档案 (com.RoamingStar.BlueArchive) cannot start and will quit, potentially causing the whole WSA environment to crash as well.
Downgarding to 2311.40000.4.0 may not be an option as this may lead to BSOD, which is worse than the newest version. Since Microsoft has discontinued development of WSA, the best option for now may be leave Vulkan to System Default.
Note: Vulkan D3D12 support is experimental and is not on by default.

我也遇到了这个问题，并且更严重：只有在Vulkan驱动程序为“关”时才可以正常启动，否则wsa就会在启动的3s内闪退。
目前关闭状态下对游戏（红烧天堂）的影响还是蛮大的。
不确定是不是我还需要安装什么驱动，目前Windows本机一切正常
I also had this problem, and it got worse: the WSA would only start properly if the Vulkan driver was“Off,” otherwise the WSA would flash within 3s of starting. 😥
The performance impact on the game (Heaven Burns Red) is quite large.
Not sure if I need to install any more drivers, but everything is fine on the Windows10PC

As previously mentioned, WSA development has discontinued, and valkan acceleration is kinda experimental and being unstable is expected.Sorry to hear Heaven Burns Red also encountered this issue. I do not think if any driver updates will help solving this issue as issue is likely with WSA rather than graphics card driver.If you desperately want GPU acceleration i suggest you consider using other options available on the market.-------- Original message --------From: CC @.> Date: 17/07/2024  23:19  (GMT+08:00) To: microsoft/WSA @.> Cc: C86 @.>, Comment @.> Subject: Re: [microsoft/WSA] 更新至2311.40000.5.0后，在开启vulkan驱动后无法运行国服蔚蓝档案程序/After updating to 2311.40000.5.0，unable to open Blue Archive app Chinese main land version. (Issue #514)
To complete the description and for future viewers:
When Vulkan settings is set to D3D12 with WSA version 2311.40000.5.0, Blue Archive's Chinese variant, 蔚蓝档案 (com.RoamingStar.BlueArchive) cannot start and will quit, potentially causing the whole WSA environment
to crash as well.
Downgarding to 2311.40000.4.0 may not be an option as this may lead to BSOD, which is worse than the newest version. Since Microsoft has discontinued development of WSA, the best option for now may be leave Vulkan to
System Default.
Note: Vulkan D3D12 support is experimental and is not on by default.
我也遇到了这个问题，并且更严重：只有在Vulkan驱动程序为“关”时才可以正常启动，否则wsa就会在启动的3s内闪退。
目前关闭状态下对游戏（红烧天堂）的影响还是蛮大的。
不确定是不是我还需要安装什么驱动，目前Windows本机一切正常
I also had this problem, and it got worse: the WSA would only start properly if the Vulkan driver was“Off,” otherwise the WSA would flash within 3s of starting. 😥
The performance impact on the game (Heaven Burns Red) is quite large.
Not sure if I need to install any more drivers, but everything is fine on the Windows10PC
—
Reply to this email directly,
view it on GitHub, or
unsubscribe.
You are receiving this because you commented.Message
ID: @.***>