Login fallback priority

Hi,
Is it possible to change authorization priority when using login_fallback option, for example, first attempt to authorize against local database and then, if it fails, try to authorize via LDAP?
Or, maybe, you can add such option in the future?

Hi @ownmaster, unfortunately this isn't possible at the moment.
Since the feature is named fallback, it's meant to fallback in cases where LDAP authentication fails.
I'm definitely not against this as an option if you have any suggestions on how it could be implemented to keep compatibility with how it currently functions.

Thanks, I will try to implement your recipe.
About suggestions, I can't say any details, since I'm fairly new to Laravel, but in general I think it should be exactly "priority", i.e. it will tell the system which authentication method should be used first. In such way it will work in both cases: when login_fallback=true and when login_fallback=false.
The thing I'm not sure about, is that probably this option should be a part of another package which will manage authentication selection based on providers defined in auth.php.
But since you already have login_fallback in this package, this new option will be useful anyway.

EDIT: one of the benefits of this option could be that local DB authentication will still work in case LDAP connection fails. Now if something is wrong with LDAP connection the whole website will not work.

Actually, if you turn off auto_connect, and turn on login_fallback, you can try connecting manually and catch the exception on connection failure:
public function login(Request $request)
{
    try {
        Adldap::connect();
    } catch (\Adldap\Auth\BindException $e) {
         // Couldn't connect to LDAP server.
    }

    if (Auth::attempt($request->only('username', 'password'))) {
        //
    }
}

I simulated wrong connection (using non-exsiting ADLDAP_ADMIN_USERNAME account) but I couldn't catch exception
try {
 \Adldap::connect('default');
 // code specific to LDAP auth
}
 catch (\Auth\BindException\Auth\BindException $e) {
 info('Could not connect to LDAP server.');
}

Instead of going to catch block, I get redirected to the error page with exception description:

BindException in Guard.php line 84: Invalid credentials

The code is located in overridden login() method of LoginController.

That's because you're not catching the correct exception:
try {
 \Adldap::connect('default');
 // code specific to LDAP auth
}
 catch (\Auth\BindException\Auth\BindException $e) { // This exception doesn't exist.
 info('Could not connect to LDAP server.');
}

Should be:
try {
 \Adldap::connect('default');
 // code specific to LDAP auth
}
 catch (\Adldap\Auth\BindException $e) { // Correct exception.
 info('Could not connect to LDAP server.');
}

Sorry, didn't mention it, but I tried that initially.  :)
But now I checked your source files and found that it is actually in
\Adldap\Exceptions\Auth\BindException
Below is the whole modified part of login action (Laravel 5.3, Adldap 2.1), probably it will be useful for someone - it combines 'LDAP offline' authentication and requires LDAP user to be in the local DB before he can login:
try {
  \Adldap::connect('default');

  $username = $credentials[$this->username()];
  $ldapUsernameField = current(config('adldap_auth.username_attribute'));
  $ldapUser = \Adldap::search()->users()->where($ldapUsernameField, '=', $username)->first();
  if (!is_null($ldapUser)) {
	$dbUser = User::where($this->username(), $username)->first();
	if (is_null($dbUser)) {
	  return redirect()->back()
		 ->withInput($request->only($this->username(), 'remember'))
		 ->withErrors([$this->username() => 'User is not in the database']);
	}
  }
}
catch (\Adldap\Exceptions\Auth\BindException $e) {
   info('Could not connect to LDAP server');
}

if ($this->guard()->attempt($credentials, $request->has('remember'))) {
	return $this->sendLoginResponse($request);
}

But now I checked your source files and found that it is actually in
\Adldap\Exceptions\Auth\BindException

Oh apologies, I was referring to the master Adldap2 branch:
https://github.com/Adldap2/Adldap2/blob/master/src/Auth/BindException.php
I'm glad you've resolved your issue, thanks for posting your code!


Help with favicon

The favicon.ico file is being correctly moved to the root folder, but it does not appear as an icon on my published website.
Right now this is what I'm doing:
# according to https://github.com/getpelican/pelican/wiki/Tips-n-Tricks
STATIC_PATHS = ['images', 'extra/robots.txt', 'extra/favicon.ico']
EXTRA_PATH_METADATA = {
    'extra/robots.txt': {'path': 'robots.txt'},
    'extra/favicon.ico': {'path': 'favicon.ico'}
}

and
MINIMALXY_FAVICON = '/path/to/favicon.ico'

Is there a proper way to do this? What could I possibly be doing wrong? What the MINIMALXY_FAVICON is doing here?
P.S. Thanks for the theme, it's great!

Sorry for being dumb, extra moves it to the root apparently? Solved it by simply:
MINIMALXY_FAVICON = 'favicon.ico'


Use whatever gcc is available

This updates the Dockerfile to use whatever version of gcc might be available.
TBH I don't understand why this works for some people and not for others, since Docker's promise was that if it works anywhere, it works the same everywhere. Clearly not true.
However, it is definitely safer to call gcc using the generic gcc.

Codecov Report

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

@@           Coverage Diff           @@
##           master     #695   +/-   ##
=======================================
  Coverage   86.97%   86.97%
=======================================
  Files          97       97
  Lines        9618     9618
  Branches     1944     1944
=======================================
  Hits         8365     8365
  Misses       1011     1011
  Partials      242      242

Continue to review full report at Codecov.

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


Variable K8s Metric Frequencies

Increasing the frequency to 15s for all metrics is extremely resource inefficient. Some metrics are needed high frequency, while others we could do with having at a lower resolution.
For instance, 'limit' metrics change very slowly (perhaps hourly, daily) and don't need to be monitored and onboarded at the same rate as 'usage' metrics which we might want at 1s-15s intervals
Ideal solution would allow us to wildcard metric names and set custom frequencies for them.

E.g.
*.cpu.limit: 1h
*.cpu.usage: 15s
*.diskspace.usage: 5m
For an idea of impact, in order to get just 4-5 critical metrics at 15s frequency, we would have to also import 5000+ low-priority metrics at the same frequency, which isn't scalable.

Is there an eta for this?  We really need this as well.  thank you.

@beth2016 @ikelockett whats the highest resolution that you need for this implementation, @ikelockett you have mentioned 1s-15s intervals, anything below 5s will index a substantially large amount of data in the metrics index. Let me know your thoughts. Thanks.

I'm sure it will differ per implementation, but 10s frequency would be a sensible default for the higher frequency metrics

@jayntguru @alanzchan comments?

We found 15 seconds to be exceptionally large as-is. Right now we're at 60 seconds in a lab cluster  with 9 nodes including control plane/infra and a bunch of random things deployed. That's about 400mb/day. Our current "solution" (bash running an oc command that dumps to a file that's picked up by splunk) gathers these stats once a day so we're happy with the 60 second resolution and we're prepared for a longer time (than 60 seconds) in busier clusters.
What could be more clear as long as we're discussing this is exactly where to make the change. There are two config maps -
splunk-splunk-kubernetes-metrics
splunk-splunk-kubernetes-metrics-aggregator
I made a change to the one that isn't the aggregator and achieved my desired results. Not totally sure if that's the correct place to change it though.
-JS


fix: coerce the empty string to '/' when accessing hdf5 data

@neptunes5thmoon does this work for you? It's a simpler than #84 I think

that's a much simpler fix and works just as well for me.
While testing though, I noticed that read("myfile.h5/") fails (for either version of the fix). I think this is because split_by_suffix returns unaltered subpath without the normalization from pathlib, i.e. the trailing "/" stays where it is and h5py is finicky about that while zarr isn't. If this is something you wanna allow, I think changing that to str(Path(subpath)) works.

the latest commit should address the problem you described -- previously, foo.h5/ would get parsed by split_by_suffix to ('foo.h5/','', '.h5'), now the result is ('foo.h5','', '.h5'), i.e. the trailing slash has been removed.

lgtm


Add smoke test to make sure we drop all deprecated metrics

In kubernetes the metrics have "(Deprecated)" as part of the metric help text descriptions, we should leverage that and add an e2e test that checks for that and makes sure we do not have any deprecated metrics.
See https://github.com/coreos/kube-prometheus/pull/336#issuecomment-567400742 comment for background information.

This was added already in https://github.com/coreos/kube-prometheus/pull/365


Revert 1 ak7550 patch 1

I have added my name in README.md file with my github profile link.

LGTM

There is nothing in the git diff.
Do you want to adjust the PR and adding your name as in https://github.com/EddieHubCommunity/hacktoberfest-practice/pull/528/commits/9a5fc037ea9ea04668c4a9c62198e0b686cf0fb0

@schmelto  I have added my name with the github profile link.
Please check in line no. 162
Please guide me if anything else is needed.

@schmelto Adding a screenshot for your reference.

There are no files changed here.

@Panquesito7 idk what's wrong. It's showing me the changes. Creating a wholesome fresh pr.


Add Spark tests to travis matrix

We should run all of our dataflow tests on spark local runner as well as the dataflow direct pipeline runner.  The plan is to run these as "optional" tests so that spark failure doesn't block our builds but we will be aware of any differences between the spark and google implementations.

@tomwhite can you help with this?

@akiezun yes, I can take a look.


Quick open doesn't respect "Enable Preview From Quick Open"

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

VS Code Version: 1.58.2
OS Version: MacOS Big Sur v. 11.4

Steps to Reproduce: See attached .gif
Recently, I started noticing that quick open was opening tabs as a preview, instead of making them permanent. Togging the "Enable Preview From Quick Open" setting doesn't seem to have any affect, however.
If I disable preview completely, then tabs are made permanent, but that isn't what I want (I like preview in general, just not from quick open).
See this gif for an example of the problem:

Thanks!

This is already fixed in the latest insiders. Please give insiders a go.
duplicate of #128755


CI: remove parallelity to increase stability

Testing

Trade-offs

Dependencies

Screenshots

@nLight Integration tests are green on first try (this was started before any other improvement was merged). Do you think this might be worthwhile or is the price too high?

Let's keep this one open for now. Eventually we would like to merge all the improvements. Waiting 1h more and not retrying is better than waiting less and retrying 50 times :D

@GeorgiSTodorov I'd like to keep this ace as a last resort option. It prolongs the build time.


Feat: include steps how to configure and run via intelliJ, using sonar plugin

This is not required anymore as we deployed to cloud + steps already in readMe

@goelsonali this is still necessary, because we can enable the plugin and run locally based on the configuration of sornar cloud, I think we could keep but with lower priority.


Modifications to support button construction

A few small refactors to expose additional aspects of request construction for use by the buttons Javascript code in https://github.com/URXtech/roadmap/issues/618.

overall looks good to me, seems like an incremental improvement

:+1: LGTM! Quality++!


⚠ Secret Website 3 has degraded performance

In 47213f6, Secret Website 3 ($SECRET_WEBSITE_3) experienced degraded performance:

HTTP code: 200
Response time: 2966 ms

Resolved: Secret Website 3 performance has improved in 158ed79.


Missing requirements.txt in the Pypi source code

What steps did you take and what happened:
The requirements.txt file is missing in the source code on Pypi so setuptools will not work.
Executing setuptoolsBuildPhase
Traceback (most recent call last):
  File "nix_run_setup", line 8, in <module>
    exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\\r\\n', '\\n'), __file__, 'exec'))
  File "setup.py", line 23, in <module>
    with open('requirements.txt') as f:
FileNotFoundError: [Errno 2] No such file or directory: 'requirements.txt'
builder for '/nix/store/z8sh0v4cji9aq9v02865273xvmhcwzgh-python3.8-kfserving-<IP_ADDRESS>.drv' failed with exit code 1
cannot build derivation '/nix/store/75ihn4avq52qdpavs0s8c1y0nj0wjfdx-python3-3.8.2-env.drv': 1 dependencies couldn't be built

What did you expect to happen:
requirements.txt in the tar.gz archive
Environment:

Istio Version:
Knative Version:
KFServing Version: <IP_ADDRESS>
Kubeflow version:
Kfdef:[k8s_istio/istio_dex/gcp_basic_auth/gcp_iap/aws/aws_cognito/ibm]
Minikube version:
Kubernetes version: (use kubectl version):
OS (e.g. from /etc/os-release): NixOS 20.03 (Markhor) x86_64

/cc @jinchihe

@nphilou what were you doing when this problem occurred? install kfserving sdk from pypi? Thanks.

@jinchihe I was installing kfserving from Pypi sources (kfserving-<IP_ADDRESS>.tar.gz) and more precisely, nix-build of https://gist.github.com/nphilou/5c9fe0715c94b51f8d1f24e557d3c90a.
It should be equivalent to python setup.py install of kfserving-<IP_ADDRESS>.tar.gz (https://pypi.org/project/kfserving/#files).

OK, got that, thanks. @nphilou
/assign


Validation error when model doesn't include all fields

Hi first time user of that package so maybe I'm doing something wrong but this looks a lot like a bug to me.
When running the following snippet I get a validation error saying the field yy is missing but it is clearly part of the document.
import pydantic_xml

class Foo(pydantic_xml.BaseXmlModel):
    # xx: str = pydantic_xml.element()
    yy: str = pydantic_xml.element()

    # model_config = {"extra": "forbid"}

data = """<?xml version="1.0" encoding="UTF-8"?>
   <Foo>
      <xx>hkjh</xx>
      <yy>jhkjh</yy>
   </Foo>
"""

res = Foo.from_xml(data)
print(res)

If I uncomment the field xx then the error goes away.
If I forbid extra then it complains about the xx and the yy field being extra.
Running on 3.11.4 with the following package installed:
annotated-types==0.5.0
anyio==4.0.0
black==23.7.0
certifi==2023.7.22
click==8.1.7
h11==0.14.0
httpcore==0.17.3
httpx==0.24.1
idna==3.4
mypy==1.5.1
mypy-extensions==1.0.0
packaging==23.1
pathspec==0.11.2
platformdirs==3.10.0
pydantic==2.3.0
pydantic-xml==2.2.0
pydantic_core==2.6.3
ruff==0.0.287
sniffio==1.3.0
typing_extensions==4.7.1

Of course I only needed 5 minutes after writing the issue to figure out that I wanted to use the search mode parameter to achieve the behavior I was looking for.
I would suggest to maybe have this in the quick start guide. I think for many user coming from pydantic it is an unexpected behavior.
Maybe could be part if the error message as well but that might be more complicated as they come from pydantic core

Hi @enadeau
The model uses strict element search mode by default which means the element to which a field will be bound is searched sequentially without skipping unknown elements.
More info here
This should fix your problem:
>>> import pydantic_xml
>>>
>>>
>>> class Foo(pydantic_xml.BaseXmlModel, search_mode='ordered'):
...     yy: str = pydantic_xml.element()
...
>>>
>>> data = """<?xml version="1.0" encoding="UTF-8"?>
...    <Foo>
...       <xx>hkjh</xx>
...       <yy>jhkjh</yy>
...    </Foo>
... """
>>>
>>> res = Foo.from_xml(data.encode())
>>> print(res)
yy='jhkjh'

Got it thanks for your help


Administration fix and tests

administration.py fix and tests.

This issue was migrated from an old repository: https://github.com/CiscoDevNet/catalystwan/pull/72


[Sticky] Offset scroll is not taken into account

The issue is demonstrated here:
http://jsfiddle.net/mncqdqcw/2/
Essentially the Sticky behaves differently when initialized (or refreshed) depending if the scroll context is currently scrolled or not.
The issue is fixed by adding these 4 lines of code to save.positions method (just after the measurements are taken and before they are used to update the cache object):
    element.offset.top  += $scroll.scrollTop();
    element.offset.left += $scroll.scrollLeft();
    context.offset.top  += $scroll.scrollTop();
    context.offset.left += $scroll.scrollLeft();

This fix only applies to the overflow case. I suspect that since .offset()returns values relative to the document, then the problem does not appear with the default scroll context. But in cases when the scroll context does not conveniently align with what the offset()  function returns, the scroll position needs to be taken into account if we ultimately intend to use position: sticky which is again relative to the viewport.
From the docs I get the vibe that maybe Sticky is really only designed to work relative to the viewport only. If this is the case, I am willing to put in some work to also make it work in the overflow: scroll scenario. I think that in many cases the main content of a site/app may reside inside overflow: scroll..

I just realised that in the fiddle I created an edge case where context == scrollContext. In this case, obviously, the context offset does not need to be adjusted by it's own scroll value. The case where the 4 lines of code seemed to fix my issues was when the context was inside the scroll context.

It also seems that this also always assumes the scroll context to be viewport only:
fits : ( element.height < window.height ),

This fixes it:
fits : ( element.height < $scroll.height() ),

@lauri-elevant I've added a fix for $scroll not used body in 1.2.5

Wow, thanks a lot for the fix! :) I assume you are extremely busy these days (word gets around). We are mind-release right now so I will definitely evaluate this change after the dust settles here. Should I close the issue after it solves my initial problem?
A quick look though - does it solve the "fits" part as well (see my comment a day ago).

No it doesn't solve fit case, adding now.

Awesome! Thanks!


fix: fix xml issue in win vhd test

What type of PR is this?
/kind bug

What this PR does / why we need it:
fix xml issue in win vhd test
Which issue(s) this PR fixes:

Fixes #
Requirements:

[x] uses conventional commit messages

[ ] includes documentation
[ ] adds unit tests
[ ] tested upgrade from previous version

Special notes for your reviewer:
Release note:
none

Pull Request Test Coverage Report for Build<PHONE_NUMBER>9
Details

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 71.311%

Totals

Change from base Build<PHONE_NUMBER>8:
0.0%

Covered Lines:
2595

Relevant Lines:
3639

💛  - Coveralls


Use a verifiable random function in the frontend when selecting a provider

AC

[ ] Randomly select a provider in the frontend in such a way that the provider can recreate the selection when they receive a captcha request
[ ] Use the user's account in the verifiable random function

Why?

Why?

To stop people messing with us easily

Has to be feature led. This is probably really hard btw


Update install-cni-plugin.sh

disambiguate cni version from plugin version , since cni version implies something totally different

/azp run

/azp run


How to change popover animation?

Hi. Will I be able to change popover animation? How to do that? I found default animation pretty awful.

In the style folder you can find the sources for the default stylesheet provided by the library, in both SCSS and LESS format. You can then extend and/or replace those rules.
In particular, you can just redefine the share-this-intro animation to something to your liking.

@MaxArt2501 thank you, I will try.


Fix for bean method with Null Arguments

When passing null as an argument, a NullPointerException is thrown. This
PR fixes it

I'm surprised I never caught this. Thanks.


Support for changing edge width in Line3D

We need to be able to manually change the width of Line3Ds

Related to https://github.com/scenerygraphics/sciview/issues/175


when i press command+S twice,the code file saved twice even i do not change any code

VSCode Version: Code 1.6.1 (9e4e44c19e393803e2b05fe2323cf4ed7e36880e, 2016-10-13T15:27:10.246Z)
OS Version: Darwin x64 15.6.0
Extensions: abusaidm.html-snippets-0.0.18, christian-kohler.npm-intellisense-0.1.4, donjayamanne.githistory-0.1.0, formulahendry.code-runner-0.4.1, hnw.vscode-auto-open-markdown-preview-0.0.3, iradul.debugger-for-phantomjs-0.1.1, itryapitsin.Scala-0.1.7, itryapitsin.ScalaSnippets-0.1.7, jaylinwang.weex-0.4.0, johnpapa.Angular1-0.1.16, naumovs.node-modules-resolve-1.0.2, robertohuertasm.vscode-icons-3.0.6, tanato.vscode-gulp-0.0.4, vladmrnv.expresssnippet-0.0.8, wcwhitehead.bootstrap-3-snippets-0.0.7

Steps to Reproduce:
1.press command+S
2.file not change,press command+S again, gulp will find file change, and reload web

@wusama are you seeing this even when disable all extensions by launching code with --disable-extensions?

This is as designed and since 1.6.0. People want to be able to trigger external file watchers by saving, even if the file is not dirty.


override_status

setting override_status is not clear on usage or not working with a cloudformation schedules.
I am adding in schedules/periods via cloudformation. I recently have come to the need of using override_status but whenever override_status is used the change set will fail. I think i found a work around by just not setting a start time for the period that is attached to the schedule and not adding override_status but it would be nice to know how to use, but even after re-reviewing the the document i am not seeing any more detail about how override status should work.

When setting the override option, which is a schedule level option, instances in the schedule will always be started/stopped independent on whatever periods are defined for that schedule. It's main purpose it to temporary overwrite periods to keep instances running/stopped, without deleting or modifying any of the periods for that schedule. Another use case is to have a group of instances that can be simultaneously by setting the value of the override flag

@arieleeuw i appreciate you following up but dont think that you are following my concern. I am attempt to run in a schedule like the following:
 AWSTemplateFormatVersion: "2010-09-09"
Description: "Builds out Schedule Rules for Alpha Cluster Instances to Follow"
Resources:
  AlphaHours:
    Type: "Custom::ServiceInstanceSchedule"
    Properties:
      Description: "Times For Alpha Cluster Boxes"
      ServiceToken: "arn:aws:lambda:us-east-1:REMOVED:function:InstanceSchedule-InstanceSchedulerMain"
      Timezone: "US/Eastern"
      override_status: "stopped"
      Periods:
        - Description: "Running Hours Weekdays"
          BeginTime: "07:00"
          EndTime: "19:00"
          WeekDays: "Mon-Fri"

The cloud formation schedule above will fail in cloudformation every time. Remove override_status and it works perfectly. Additionally if i try other schedule options like enforce they work just when using override_status have i been having this problem

Hi I will investigate this issue and let you know as soon as I have a work around or a fix

The Name of the property to use is OverrideStatus (all properties are in PascalCase)
Below is an example of a template that should work.
Hope this helps
Arie
AWSTemplateFormatVersion: 2010-09-09
Description: BMC Schedules
Resources:
  AlphaHours:
    Type: 'Custom::ServiceInstanceSchedule'
    Properties:
      ServiceToken: >-
        arn:aws:lambda:us-east-1: REMOVED:function:InstanceScheduler-InstanceSchedulerMain
      Description: Times For Alpha Cluster Boxes
      Timezone: US/Eastern
      OverrideStatus: stopped
      Periods:
        - Description: Running Hours Weekdays
          BeginTime: '07:00'
          EndTime: '19:00'
          WeekDays: Mon-Fri

@arieleeuw i did give "OverrideStatus" and that worked! Thanks for that assistance!

@ssoto2 Maybe a basic question, the documentation mentions changes the dynamodb tables to change things like override_status, this question and response talks of the putting values in the CF template itself, so do I have to replace the regular CF template with this??

@anranga It has been a while since looking over the documentation for the aws scheduler. If i remember correctly you have two option

if you use cloudformation (CF) templating to add to the scheduler you must basically always edit that schedule with CF because of if you manually modify that particular schedule CF freaks out about it. I think that warning is described in the documentation. This is perfectly fine for me because the because i use the CF as a change control that way if an edit to the schedule is made, 1) the CF template in my github is updated and changed are recorded, 2) The CF has an update set performed.

now in the documentation i dont remember seeing anywhere where it said you where forced to use CF if you did not want to. There was just the caveat mention in 1 where if you use CF you must not manually edit it.

With that said it is working for me using OverrideStatus in CF template. Using it like @arieleeuw did shown above. Then you can run a change set in CF https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-changesets.html
hope that helps.


[feature] Add jshint as dependency and invoke task.

Purpose
Encourages local testers to run jshint per new Travis requirements in #3107, before pushing to github.
Summary of changes

Add jshint to the list of packages that node installs automatically.
Add a call to jshint (as specified by .travis.yml) to the syntax checks called by inv test --syntax.
Consolidated two highly redundant commands (inv test and inv test_all) into one command with a flag. This will probably inconvenience someone...
Very trivial adjustments for PEP8.

Looks good. :octopus:


Database Exception when using gUID (Globally Unique Identifier) as primary key.

There is a need to introduce support of gUID as primary keys in a database.
https://en.wikipedia.org/wiki/Globally_unique_identifier
We are using MS SQL database. Database driver: dblib. The primary key is used gUID. Primery key datatype: binary(16).
The code generated by the CRUD-generator, will not work. As a result of execution, we will get the Database Exception.

SQL query does not receive a record identifier, or in some cases, receive part of a identifier.
In the database identifier looks like "0x8136000C296DC08B11E4A7A3DE67CE9S". Yii2 reads it as string �6' . "\0" . ')m��䧣�gΜ.

When converting a key by function mssql_guid_string($ID), we will get it like "0C003681-6D29-8BC0-11E4-A7A3DE67CE9S". To avoid exception, it is necessary when we get data from the database to convert identifier to a string by the function mssql_guid_string. With further generating a query with this identifier, we will must to convert back to binary(16) data type. Or work with them as binary data and screening when inserting in requests.
Will there be support gUID?

discussion on russian forum http://yiiframework.ru/forum/viewtopic.php?f=19&t=23126

I am unsure I understand demand correctly.
As far as I see 'binary' type column reading and writing is suppored. These columns will be typecast into 'resource' PHP type.
Are you saying you cann't retrieve or store binary data into the database?
As far as I see you are compning on invalid string returned from GET. Yii can't influence it anyhow.
It is up to you to process incoming request parameters.
I assume this happens because you have rendered your 'id' column as it is, while composing the link somewhere in the listing.
If mssql_guid_string() can do a trick for you, you probably should use 'beforeInsert', 'beforeUpdate' and 'afterFind' events to perform such convertions for your models.
Issue title seems to be actually incorrect.
If there is indeed a problem saving or retrieving binary data from database - it should be solved. But there is no way of knowing if your primary key gUID or not, as well as there is no way to determine if some string at GET or POST should be convered by some function.

I can't see any issue related to Yii here.


implement 404 error page in playground (#1891)

this closes #1891

@maryamhdr and @Cyrus-Sushiant
plz review

@maryamhdr plz review


RS Camera on android

Hi
I have just started introducing myself to android, so I apologize in advance for the simple questions/incorrect terms I use.
I have just compiled the android code that comes with realsense library  and installed it on my Samsung Note9.
The RS recording detects the D435 and displays the depth image on my mobile, however the rs camera app doesnt detect the D435 and keeps displaying the message to connect the camera. I got the same behaviour when I installed the rs camera app from playstore, it didnt detect the D435 on my note9 however when installed the app on my Samsung S8, the D435 was detected and app worked. Any idea why the rs recording detects camera on Note 9 but the rs camera doesn't?
Thanks

If your Samsung Note 9 is running Android 10 then it may have a conflict with the RealSense Android wrapper.  A fix is to set targetSdkVersion to an earlier version such as '27'.

Thanks Marty, I will look into it further but just can't see how on the same mobile Note9 with android 10, the RS Recording works fine, detects the D435 connected  and displays the depth and RGB image but the RS Camera runs but doesn't detect a D435 connected. Will try to see f I can resolve it. Thanks

Marty my apologies , you were right changing the targetsdkversion solved the problem. I didn't know/notice that the rs recording had a different version from the rs camera. It works now. Thanks

No problem at all.  Thanks for the update about your success!


Add VesselMover Continued

VesselMover has a new maintainer, so here's a new netkan file.
I'm not sure whether KSP-AVC should be a suggests or supports.
http://forum.kerbalspaceprogram.com/index.php?/topic/144421-*/

Looks good to me. Merging with thanks!


Fix the focus styles for the currency button/combobox

The focus styles are super weird

Not anymore they're not! Fixed indirectly via #76


AsyncIOEventEmitter should keep a reference to scheduled futures

The documentation for asyncio.ensure_future indicates:

Important See also the create_task() function which is the preferred way for creating new Tasks.
Save a reference to the result of this function, to avoid a task disappearing mid-execution.

Currently, this doesn't seem to be the case in AsyncIOEventEmitter, which to my understanding only adds a "done" callback, but doesn't keep the future's reference any longer.

I think that assigning to fut and having callback close around it might be enough. I really don't want to get in the business of storing futures in a set and tests are consistently behaving so I'm going to hold off on anything more obvious, but if there ends up being a concrete bug I'm happy to take a closer look.

When _emit_run finishes, fut is out of scope, so the future may be garbage-collected. This causes a bug in playwright that loses events, as the corresponding futures vanish before they're fully executed and the corresponding error message appears when the program finishes. A solution is to store the futures in a file-level variable, then use the callback to remove them once finished.

Is there any further conclusion here?

I'm currently pushing a fix in v9.1.1 - give it a shot, and if you still have issues let me know.

For the record, we're still observing this issue with pyee==11.0.0 (see https://github.com/scrapy-plugins/scrapy-playwright/issues/188 & https://github.com/scrapy-plugins/scrapy-playwright/issues/233).
I'm mostly leaving this message to keep track of this, at the time I'm not able to provide a reproducible example using only pyee and I'm well aware that the issues I mentioned add two layers of dependencies :disappointed:.


Develop

Master and develop branch got out of sync.  I just want to get them synchronized so the next time we have to work on something, everything is ready to go.

Per GitHub:

Review has been requested on this pull request. It is not required to merge.
This branch has no conflicts with the base branch
Merging can be performed automatically.

Develop and Master are identical.


Uploaded custom GIF emoji quality issues

I've uploaded several different custom gif emojis and the resulting emoji is unusable in chat.
I tried larger and smaller gifs and they both have degraded display.
System: MacOS 11.6
App: Zulip Desktop 5.8.1
To reproduce: Upload the original emojis and use them in a message.
Expected Outcome: At least emojis with no black background, even if quality drops a litte.
Original
uploaded
original
uploaded

I ran into this same issue and was able to work around this by resizing locally before uploading the emojis. In your examples, small/large doesn't really matter - both gifs are non-square and that will cause the resizing function to be called when you upload it which really degrades the gif. The PIL resizing code is skipped if the emoji is square, < 128 pixels per side, and < 128kb total.
Quick and dirty imagemagick one-liner I used - this will convert every file in the local directory to a 128px square image and output it in a subdirectory named resized:
for i in *; do convert "$i" -resize 128x128 -background none -gravity center -extent 128x128 "resized/$i"; done


jodd-lagarto crashing in Android Open Source Project

This is related to an old bug here: https://github.com/oblac/jodd/issues/241
I'm seeing a failure instantiating a Jerry object due to the lack of a "value" field in the String class. The fix for the previous issue doesn't actually quite work because of the ordering of the static blocks during class initialization of SystemUtil.
Currently, during SystemUtil.<clinit>, hasUnsafe0 will be called to populate the HAS_UNSAFE field. hasUnsafe0 calls isHostAndroid, which will read the IS_ANDROID field before it is initialized, so it always appears false.
The original fix happens to work because PlatformInternals.UNSAFE would remain null because there was no "address" field in Android's java.nio.Buffer. This has since changed with the transition of Android to OpenJDK.

Wow. This might be very beautiful Java puzzler! :) The order of execution is like you said:
SystemUtil.hasUnsafe0
SystemUtil.isHostAndroid
SystemUtil.isAndroid0

Hence, isHostAndroid (that return IS_ANDROID) is called before isAndroid0 is setting the IS_ANDROID value.
If I put IS_ANDROID definition before the HAS_UNSAFE android will be detected first, hence the IS_ANDROID value will be set ok.
Wow. @jeffyhao this is beautiful catch.


Any Updates for Swift 5?

IMPORTANT - BEFORE CREATING YOUR ISSUE PLEASE READ THE FOLLOWING:

PLEASE STATE THE VERSION NUMBER you are using.
Are you using the latest version of JTAppleCalendar? Latest version is currently 7.1.6
PROVIDE ENOUGH INPORMATION SO I CAN RECREATE THE PROBLEM.

You can now clear this text and ask your question.

Swift 5 is currently on master branch awaiting to be released.
I've made quite a number of fixes, so i am just testing things out before i release. Making sure i do not break any thing.
You can try out swift 5 version by point to master branch in your podfile. Instructions here.

closing issue.
assuming resolved.

I have updated to Swift 5 and followed the above instructions. And renamed everything based on suggestions and will do testing.
I wonder will swift 5 ABI will do have any benefits on this.

Can we expect a Swift 5 official release anytime soon?

@SwiftyFivve is 7.1.7 not able to be built in your project?

7.1.7 is being built, but I'm still getting a Swift Conversion warning

ok. I see.
it is one line of code that needs to be converted.
I have released version 8.0.0 which is swift 5 convertable.
however, there are breaking changes.
I cannot release a new version right now because of a cocoapod bug.
I'll see what i can do over his weekend.

Sounds great! Thank you so much

I'm using pod 'JTAppleCalendar', '~> 8.0.3'
Still it is showing 'Conversion to Swift 5 is available'. How can I upgrade it?

I would do an XCode clean.
Probably your project cache folders are dirty.
8.0.3 has been out for almost a year. And people have been updating without issue.
The people who have reported something similar to what you just posted is usually related to dirty cache.

Yes, I cleaned the cache. It is working fine. Thank you so much, you saved my time.


SPIKE: Assessing Feasibility of a 4-Column Layout in Busola Dashboard

Description
As Sebastian and Mathew, we would like to explore the introduction of a 4-column layout in the Busola Dashboard (referencing Epic #2621) to enhance user experience in terms of navigation and information display.
Acceptance Criteria

[ ] Analysis of the implementation feasibility for a 4-column layout, considering the existing Busola architecture.
[ ] Evaluation of responsive behavior for the new layout.
[ ] Assessment of deep link functionality integration with the new layout.
[ ] Provision of a detailed report splitting the large user story into smaller, deliverable tasks.
[ ] Review of the Figma design file and suggestions for layout adjustments if necessary.

Business Value
The introduction of a 4-column layout would streamline user navigation and enhance the overall user experience, especially for users like Matthew and Sebastian who require efficient and flexible tools for their Kubernetes environment management.
Reasons
This SPIKE is necessary to understand the complexities involved in transitioning from the current layout to a more efficient 4-column layout, ensuring that the new design meets both technical feasibility and user experience standards.
Dependencies
This SPIKE depends on the existing architecture of the Busola Dashboard and the user feedback gathered in Epic #2621.
Non-functional Requirements

The new layout must maintain or improve the current performance standards of Busola.
It should be responsive, adapting to different screen sizes without losing functionality. If screen is to small we have the oportunity to colapse the left navigation to allow more space for the columns
The implementation should not disrupt existing deep link capabilities. The deep link will always point to the detail page of the resource. we will evaluate if there is a way to capture the navigation tree so that we can display the 3/4 column design

Notes and Comments
Discussion regarding the feasibility and potential challenges of the 4-column layout is crucial before any development begins. This will ensure a smooth transition and effective implementation.
Size or Effort
This SPIKE will require extensive analysis and should be given ample time for thorough evaluation. A time frame will be established after preliminary assessment.
Mockups or Diagrams
Reference to Figma File for designs and layout: Figma Redesign & Modules
Useful Links

Epic #2621
Busola GitHub Repository

Attachments

[ ] prepare wrapper for flexibleColumnLayout

[ ] ResourceList as startingColumen (adjust Table to open middleColumn)
[ ] ResourceDetails as middleColumn (adjust custom Resources view to open and column)
[ ] ResourceDetails as endColumn

[ ] adjust action buttons in DynamicPageHeader (close and full screen)

[ ] extensibility adjustments
[ ] column opening from the left side on CR @mrCherry97
[ ] opening column is lagging on some views
[ ] URL -> set and get informations using query about layout, displayed columns, etc @akucharska
[ ] URL is not changing after closing column
[ ] details of 3 column are not rendered properly on CR @mrCherry97
[ ] adjust tests


Frequent Error

Frequently, for no apparent reason, the following error appears:
A network-related or instance-specific error occurred while establishing a connection to SQL Server. The server was not found or was not accessible. Verify that the instance name is correct and that SQL Server is configured to allow remote connections. (provider: Named Pipes Provider, error: 40 - Could not open a connection to SQL Server)
I'm using following images:

microsoft/aspnet
microsoft/mssql-server-windows-developer

The error occurs when the Web API in one container is trying to access the database in the other container.
The docker-compose file:
version: "3"
services:
db:
build:
context: ./docker/Db
dockerfile: Dockerfile.db
ports:
- "1433:1433"
environment:
ATTACH_DBS: "[{'dbName':'Polling','dbFiles':['C:\\databases\\Polling.mdf','C:\\databases\\Polling_log.ldf']}]"
container_name: polling_db
webapp:
build:
context: ./PollingModule.Web
dockerfile: Dockerfile.web
depends_on:
- db
container_name: polling_web

@eolamisan is this still an issue for you?

@eolamisan is this still an issue for you?

Yes, it's still an issue.

@eolamisan we can't really repro this issue, and this does not seems to be a specific issue with ASP.NET container.  For questions like these, it's better to post them on Stack Overflow where the audience is much larger. But feel free to log an issue here if you've encountered a bug with the Docker images themselves.


ActivityGroup extends both Account and CrxObject while Account itself extends CrxObject

In the past I already wrote on SourceForge about this issue (context is ahead).
I once again encountered the issue (with another interface) but I know now what the issue is (and what was before).
Now it's about LegalEntity. My framework complains that duplicate key for a property was found... etc..
I wondered how come simply using cc2 over jmi1 version worked for Contacts but it won't work for LegalEntity.
The reason is in the inheritance chain:
public interface LegalEntity extends AbstractGroup and  public interface AbstractGroup extends Account, CrxObject
Now, the real issue seems to be the CrxObject part since Account extends CrxObject as well. Vaadin complains about finding duplicate keys for property "Audit" -- CrxObject extends Auditee and these two parallel paths are the cause,  I suspect.
Does AbstractGroup really have to extend CrxObject since it already extends Account which itself already does that?

In the meantime, I'd like to share more details.
I've overridden the Vaadin Binder class so I should be able to manipulate the object in my class before invoking the super constructor.
public class MyBinder<L extends AbstractGroup> extends Binder<LegalEntity> {

    public MyBinder(Class<LegalEntity> beanType) {

        // here I hope I should be able to somehow remove the offending (or the extra interface CrxObject - provided it really is not necessary since it can be inferred implicitly from Account which extends CrxObject
       // the reason is: when inpecting the "beanType" object in my IDE, I noticed the following hierarchy:

       // beanType []
       //     reflectionData []
       //         referent []
       //             interfaces []
       //                 [0]:
       //                     name: "org.opencrx.kernel.account1.cci2.AbstractGroup"
       //                     reflectionData []
       //                         referent []
       //                             interfaces []
       //                                 [0]:
       //                                     name: "org.opencrx.kernel.account1.cci2.Account"
       //                                 [1]:
       //                                     name: "org.opencrx.kernel.generic.cci2.CrxObject"

        super(beanType);
    }
}

Now, if I'm not being terribly naive, the idea would be, by using reflection, to remove the second interfaces element (CrxObject). If that were successful, the manipulated beanType object would be passed to the original Vaadin Binder without having this "extra" interface and binding should work fine.
The real question here is: from your experience, is such a thing possible (remove one of the inherited interfaces via reflection or in some other way)?

Any feedback on this? I suppose there's a reason why AbstractGroup has to extend both Account and CrxObject but if it doesn't have to -- would it be possible to get the next minor 5.x.x release with this change?

Remove inheritance "AbstractGroup > CrxObject" since this is redundant.


forge: Reusable Test Suites

Often it is helpful to run the same suite of tests across multiple contracts or fixtures. One primary example of this is testing public functions across multiple contracts sharing the same interface.
With tools like HardHat, this is easy to do using Mocha by plugging our fixture as a reusable input to our test suites:
// EXAMPLE: Testing two contracts sharing the same interface `TestInterface`
function shouldBehaveLikeTestInterface(): void {
  describe("TestInterface functionality", () => {
     // Testing expected TestInterface behavior
  });
}

describe("ContractA", () => {
   this.contract = await loadFixture(contractAFixture);
   shouldBehaveLikeTestInterface();
});

describe("ContractB", () => {
   this.contract = await loadFixture(contractBFixture);
   shouldBehaveLikeTestInterface();
});

How should Foundry be used for similar invocations of reusable test suites?

Can the behavior you're describing be achieved with this pattern?
// your interface
interface IContract { function foo() { ... } }

// your 2 implementations
contract A is IContract { function foo() { ... } }
contract B is IContract { function foo() { ... } }

// the shared test suite
contract Tests {
          IContract contract;
          function testFoo() public { contract.foo(); }
}

contract ATests is Tests {
         function setUp() {
                  contract = IContract(address(new A()));
         }
}

contract BTests is Tests {
         function setUp() {
                  contract = IContract(address(new A()));
         }
}

@gakonst this works perfectly! Thank you. Can test output be constrained to that of implementing contracts under this inheritance-style testing approach? Running Forge with the above structure yields the following:
Running 2 tests for "ATest.json":ATest
[PASS] testX() (gas: 9453)
[PASS] testY() (gas: 5500)

Running 2 tests for "BTest.json":BTest
[PASS] testX() (gas: 9453)
[PASS] testY() (gas: 5500)

Running 2 tests for "Test.json":Test
[PASS] testX() (gas: 64)
[PASS] testY() (gas: 64)

Ideally I'd like to constrain output to just the first two contracts, especially since Test is an abstract contract here (so PASS is sort of misleading too).

Have you marked it as abstract contract in your tests? If not, then it seems like we should filter abstract contracts out

@gakonst Yes, I did. Seems like that's the right solution! Unfortunately I'm not familiar with Rust - hopefully it's an easy fix?

I think we probably should skip deployment if the contract's bytecode is empty? Try adding a check on bytecode .is_empty / len!=0 here

That sounds right to me. Hopefully another maintainer can chime in.

I think we probably should skip deployment if the contract's bytecode is empty? Try adding a check on bytecode .is_empty / len!=0 here

Seems like kinda a blunt way to do this? I have created dummy empty contracts for test before. Can we not detect if it is marked abstract?

I think the dummy empty contracts still have non-empty bytecode, whereas an abstract contract actually has 0 bytecode? So it should be fine?

ah ok, my lack of understanding

@leeren should be fixed now in master

Amazing, thank you!


Multiple errors installing

Hi, I was really excited to find a python package to parse CS:GO demo
But I met some troubling problems installing the package.
First I tried
pip install csgo-demoparser
And I got errors:
Building wheels for collected packages: csgo-demoparser
  Building wheel for csgo-demoparser (setup.py) ... error
  ERROR: Command errored out with exit status 1:
   command: 'D:\Software\Anaconda\python.exe' -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'C:\\Users\\TANGJI~1\\AppData\\Local\\Temp\\pip-install-6ivzr_70\\csgo-demoparser\\setup.py'"'"'; __file__='"'"'C:\\Users\\TANGJI~1\\AppData\\Local\\Temp\\pip-install-6ivzr_70\\csgo-demoparser\\setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' bdist_wheel -d 'C:\Users\TANGJI~1\AppData\Local\Temp\pip-wheel-f3dqbkzm'
       cwd: C:\Users\TANGJI~1\AppData\Local\Temp\pip-install-6ivzr_70\csgo-demoparser\
  Complete output (38 lines):
  running bdist_wheel
  running build
  running build_py
  Traceback (most recent call last):
    File "<string>", line 1, in <module>
    File "C:\Users\TANGJI~1\AppData\Local\Temp\pip-install-6ivzr_70\csgo-demoparser\setup.py", line 35, in <module>
      "language_level": 3
    File "D:\Software\Anaconda\lib\distutils\core.py", line 148, in setup
      dist.run_commands()
    File "D:\Software\Anaconda\lib\distutils\dist.py", line 955, in run_commands
      self.run_command(cmd)
    File "D:\Software\Anaconda\lib\distutils\dist.py", line 974, in run_command
      cmd_obj.run()
    File "D:\Software\Anaconda\lib\site-packages\wheel\bdist_wheel.py", line 192, in run
      self.run_command('build')
    File "D:\Software\Anaconda\lib\distutils\cmd.py", line 313, in run_command
      self.distribution.run_command(command)
    File "D:\Software\Anaconda\lib\distutils\dist.py", line 974, in run_command
      cmd_obj.run()
    File "D:\Software\Anaconda\lib\distutils\command\build.py", line 135, in run
      self.run_command(cmd_name)
    File "D:\Software\Anaconda\lib\distutils\cmd.py", line 313, in run_command
      self.distribution.run_command(command)
    File "D:\Software\Anaconda\lib\distutils\dist.py", line 974, in run_command
      cmd_obj.run()
    File "C:\Users\TANGJI~1\AppData\Local\Temp\pip-install-6ivzr_70\csgo-demoparser\demoparser\_setup_hooks.py", line 21, in run
      self.protoc()
    File "C:\Users\TANGJI~1\AppData\Local\Temp\pip-install-6ivzr_70\csgo-demoparser\demoparser\_setup_hooks.py", line 18, in protoc
      ], check=True)
    File "D:\Software\Anaconda\lib\subprocess.py", line 423, in run
      with Popen(*popenargs, **kwargs) as process:
    File "D:\Software\Anaconda\lib\subprocess.py", line 729, in __init__
      restore_signals, start_new_session)
    File "D:\Software\Anaconda\lib\subprocess.py", line 991, in _execute_child
      args = list2cmdline(args)
    File "D:\Software\Anaconda\lib\subprocess.py", line 481, in list2cmdline
      needquote = (" " in arg) or ("\t" in arg) or not arg
  TypeError: argument of type 'NoneType' is not iterable
  ----------------------------------------
  ERROR: Failed building wheel for csgo-demoparser
  Running setup.py clean for csgo-demoparser
Failed to build csgo-demoparser
Installing collected packages: csgo-demoparser
    Running setup.py install for csgo-demoparser ... error
    ERROR: Command errored out with exit status 1:
     command: 'D:\Software\Anaconda\python.exe' -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'C:\\Users\\TANGJI~1\\AppData\\Local\\Temp\\pip-install-6ivzr_70\\csgo-demoparser\\setup.py'"'"'; __file__='"'"'C:\\Users\\TANGJI~1\\AppData\\Local\\Temp\\pip-install-6ivzr_70\\csgo-demoparser\\setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' install --record 'C:\Users\TANGJI~1\AppData\Local\Temp\pip-record-_6ys973k\install-record.txt' --single-version-externally-managed --compile --install-headers 'D:\Software\Anaconda\Include\csgo-demoparser'
         cwd: C:\Users\TANGJI~1\AppData\Local\Temp\pip-install-6ivzr_70\csgo-demoparser\
    Complete output (42 lines):
    running install
    [pbr] Generating AUTHORS
    [pbr] AUTHORS complete (0.0s)
    running build
    running build_py
    Traceback (most recent call last):
      File "<string>", line 1, in <module>
      File "C:\Users\TANGJI~1\AppData\Local\Temp\pip-install-6ivzr_70\csgo-demoparser\setup.py", line 35, in <module>
        "language_level": 3
      File "D:\Software\Anaconda\lib\distutils\core.py", line 148, in setup
        dist.run_commands()
      File "D:\Software\Anaconda\lib\distutils\dist.py", line 955, in run_commands
        self.run_command(cmd)
      File "D:\Software\Anaconda\lib\distutils\dist.py", line 974, in run_command
        cmd_obj.run()
      File "D:\Software\Anaconda\lib\site-packages\pbr\packaging.py", line 243, in run
        return du_install.install.run(self)
      File "D:\Software\Anaconda\lib\distutils\command\install.py", line 545, in run
        self.run_command('build')
      File "D:\Software\Anaconda\lib\distutils\cmd.py", line 313, in run_command
        self.distribution.run_command(command)
      File "D:\Software\Anaconda\lib\distutils\dist.py", line 974, in run_command
        cmd_obj.run()
      File "D:\Software\Anaconda\lib\distutils\command\build.py", line 135, in run
        self.run_command(cmd_name)
      File "D:\Software\Anaconda\lib\distutils\cmd.py", line 313, in run_command
        self.distribution.run_command(command)
      File "D:\Software\Anaconda\lib\distutils\dist.py", line 974, in run_command
        cmd_obj.run()
      File "C:\Users\TANGJI~1\AppData\Local\Temp\pip-install-6ivzr_70\csgo-demoparser\demoparser\_setup_hooks.py", line 21, in run
        self.protoc()
      File "C:\Users\TANGJI~1\AppData\Local\Temp\pip-install-6ivzr_70\csgo-demoparser\demoparser\_setup_hooks.py", line 18, in protoc
        ], check=True)
      File "D:\Software\Anaconda\lib\subprocess.py", line 423, in run
        with Popen(*popenargs, **kwargs) as process:
      File "D:\Software\Anaconda\lib\subprocess.py", line 729, in __init__
        restore_signals, start_new_session)
      File "D:\Software\Anaconda\lib\subprocess.py", line 991, in _execute_child
        args = list2cmdline(args)
      File "D:\Software\Anaconda\lib\subprocess.py", line 481, in list2cmdline
        needquote = (" " in arg) or ("\t" in arg) or not arg
    TypeError: argument of type 'NoneType' is not iterable
    ----------------------------------------
ERROR: Command errored out with exit status 1: 'D:\Software\Anaconda\python.exe' -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'C:\\Users\\TANGJI~1\\AppData\\Local\\Temp\\pip-install-6ivzr_70\\csgo-demoparser\\setup.py'"'"'; __file__='"'"'C:\\Users\\TANGJI~1\\AppData\\Local\\Temp\\pip-install-6ivzr_70\\csgo-demoparser\\setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' install --record 'C:\Users\TANGJI~1\AppData\Local\Temp\pip-record-_6ys973k\install-record.txt' --single-version-externally-managed --compile --install-headers 'D:\Software\Anaconda\Include\csgo-demoparser' Check the logs for full command output.

Then I tried
git clone https://github.com/kpei/demoparser.git
python setup.py install

And I got:
`running install
[pbr] Writing ChangeLog
[pbr] Generating ChangeLog
[pbr] ChangeLog complete (0.0s)
[pbr] Generating AUTHORS
[pbr] AUTHORS complete (0.1s)
running build
running build_py
FileNotFoundError: [WinError 2] `

I tried to directly run the file "setup.py"
but I got:
D:\Software\Anaconda\python.exe D:/demoparser-master/setup.py
ERROR:root:Error parsing
Traceback (most recent call last):
  File "D:\Software\Anaconda\lib\site-packages\pbr\core.py", line 96, in pbr
    attrs = util.cfg_to_args(path, dist.script_args)
  File "D:\Software\Anaconda\lib\site-packages\pbr\util.py", line 271, in cfg_to_args
    pbr.hooks.setup_hook(config)
  File "D:\Software\Anaconda\lib\site-packages\pbr\hooks\__init__.py", line 25, in setup_hook
    metadata_config.run()
  File "D:\Software\Anaconda\lib\site-packages\pbr\hooks\base.py", line 27, in run
    self.hook()
  File "D:\Software\Anaconda\lib\site-packages\pbr\hooks\metadata.py", line 26, in hook
    self.config['name'], self.config.get('version', None))
  File "D:\Software\Anaconda\lib\site-packages\pbr\packaging.py", line 876, in get_version
    name=package_name))
Exception: Versioning for this project requires either an sdist tarball, or access to an upstream git repository. It's also possible that there is a mismatch between the package name in setup.cfg and the argument given to pbr.version.VersionInfo. Project name csgo-demoparser was given, but was not able to be found.
error in setup command: Error parsing D:\demoparser-master\setup.cfg: Exception: Versioning for this project requires either an sdist tarball, or access to an upstream git repository. It's also possible that there is a mismatch between the package name in setup.cfg and the argument given to pbr.version.VersionInfo. Project name csgo-demoparser was given, but was not able to be found.

Process finished with exit code 1`

I updated pbr and other packages but same thing happened.
I also tried to execute this in the downloaded directory
pip install -r requirements.txt
pip install .

but errors occured executing the second line
Building wheels for collected packages: csgo-demoparser
  Building wheel for csgo-demoparser (setup.py) ... error
  ERROR: Command errored out with exit status 1:
   command: 'D:\Software\Anaconda\python.exe' -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'C:\\Users\\TANGJI~1\\AppData\\Local\\Temp\\pip-req-build-cw70sr44\\setup.py'"'"'; __file__='"'"'C:\\Users\\TANGJI~1\\AppData\\Local\\Temp\\pip-req-build-cw70sr44\\setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' bdist_wheel -d 'C:\Users\TANGJI~1\AppData\Local\Temp\pip-wheel-b6sq1xoi'
       cwd: C:\Users\TANGJI~1\AppData\Local\Temp\pip-req-build-cw70sr44\
  Complete output (4 lines):
  running bdist_wheel
  running build
  running build_py
  **FileNotFoundError**: [WinError 2]
  ----------------------------------------
  ERROR: Failed building wheel for csgo-demoparser
  Running setup.py clean for csgo-demoparser
Failed to build csgo-demoparser
Installing collected packages: csgo-demoparser
    Running setup.py install for csgo-demoparser ... error
    ERROR: Command errored out with exit status 1:
     command: 'D:\Software\Anaconda\python.exe' -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'C:\\Users\\TANGJI~1\\AppData\\Local\\Temp\\pip-req-build-cw70sr44\\setup.py'"'"'; __file__='"'"'C:\\Users\\TANGJI~1\\AppData\\Local\\Temp\\pip-req-build-cw70sr44\\setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' install --record 'C:\Users\TANGJI~1\AppData\Local\Temp\pip-record-znzt6tau\install-record.txt' --single-version-externally-managed --compile --install-headers 'D:\Software\Anaconda\Include\csgo-demoparser'
         cwd: C:\Users\TANGJI~1\AppData\Local\Temp\pip-req-build-cw70sr44\
    Complete output (9 lines):
    running install
    [pbr] Writing ChangeLog
    [pbr] Generating ChangeLog
    [pbr] ChangeLog complete (0.0s)
    [pbr] Generating AUTHORS
    [pbr] AUTHORS complete (0.1s)
    running build
    running build_py
    **FileNotFoundError**: [WinError 2]
    ----------------------------------------
ERROR: Command errored out with exit status 1: 'D:\Software\Anaconda\python.exe' -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'C:\\Users\\TANGJI~1\\AppData\\Local\\Temp\\pip-req-build-cw70sr44\\setup.py'"'"'; __file__='"'"'C:\\Users\\TANGJI~1\\AppData\\Local\\Temp\\pip-req-build-cw70sr44\\setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' install --record 'C:\Users\TANGJI~1\AppData\Local\Temp\pip-record-znzt6tau\install-record.txt' --single-version-externally-managed --compile --install-headers 'D:\Software\Anaconda\Include\csgo-demoparser' Check the logs for full command output.

I tried to solve the problems for a few days but got little progress, which made me upset. I use Python 3.6.8.
I really need some help.
(´･ω･`)

Same Issue, cannot install. Have tried python 3.7.6, 3.8.1, and 3.5.2

Same same. Have no clue

I get this error:
ERROR: Command errored out with exit status 1:      command: 'c:\program files\python38\python.exe' -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'C:\\Users\\alanw\\AppData\\Local\\Temp\\pip-install-pjlll9ou\\csgo-demoparser\\setup.py'"'"'; __file__='"'"'C:\\Users\\alanw\\AppData\\Local\\Temp\\pip-install-pjlll9ou\\csgo-demoparser\\setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' install --record 'C:\Users\alanw\AppData\Local\Temp\pip-record-k5jxtz4o\install-record.txt' --single-version-externally-managed --user --prefix= --compile --install-headers 'C:\Users\alanw\AppData\Roaming\Python\Python38\Include\csgo-demoparser'          cwd: C:\Users\alanw\AppData\Local\Temp\pip-install-pjlll9ou\csgo-demoparser\     Complete output (47 lines):     WARNING: The wheel package is not available.     running install     [pbr] Generating AUTHORS     [pbr] AUTHORS complete (0.1s)     running build     running build_py     Traceback (most recent call last):       File "<string>", line 1, in <module>       File "C:\Users\alanw\AppData\Local\Temp\pip-install-pjlll9ou\csgo-demoparser\setup.py", line 28, in <module>         setup(       File "C:\Users\alanw\AppData\Roaming\Python\Python38\site-packages\setuptools\__init__.py", line 161, in setup         return distutils.core.setup(**attrs)       File "c:\program files\python38\lib\distutils\core.py", line 148, in setup         dist.run_commands()       File "c:\program files\python38\lib\distutils\dist.py", line 966, in run_commands         self.run_command(cmd)       File "c:\program files\python38\lib\distutils\dist.py", line 985, in run_command         cmd_obj.run()       File "c:\users\alanw\appdata\local\temp\pip-install-pjlll9ou\csgo-demoparser\.eggs\pbr-5.4.5-py3.8.egg\pbr\packaging.py", line 243, in run         return du_install.install.run(self)       File "c:\program files\python38\lib\distutils\command\install.py", line 545, in run         self.run_command('build')       File "c:\program files\python38\lib\distutils\cmd.py", line 313, in run_command         self.distribution.run_command(command)       File "c:\program files\python38\lib\distutils\dist.py", line 985, in run_command         cmd_obj.run()       File "c:\program files\python38\lib\distutils\command\build.py", line 135, in run         self.run_command(cmd_name)       File "c:\program files\python38\lib\distutils\cmd.py", line 313, in run_command         self.distribution.run_command(command)       File "c:\program files\python38\lib\distutils\dist.py", line 985, in run_command         cmd_obj.run()       File "C:\Users\alanw\AppData\Local\Temp\pip-install-pjlll9ou\csgo-demoparser\demoparser\_setup_hooks.py", line 21, in run         self.protoc()       File "C:\Users\alanw\AppData\Local\Temp\pip-install-pjlll9ou\csgo-demoparser\demoparser\_setup_hooks.py", line 12, in protoc         subprocess.run([       File "c:\program files\python38\lib\subprocess.py", line 489, in run         with Popen(*popenargs, **kwargs) as process:       File "c:\program files\python38\lib\subprocess.py", line 854, in __init__         self._execute_child(args, executable, preexec_fn, close_fds,       File "c:\program files\python38\lib\subprocess.py", line 1247, in _execute_child         args = list2cmdline(args)       File "c:\program files\python38\lib\subprocess.py", line 549, in list2cmdline         for arg in map(os.fsdecode, seq):       File "c:\program files\python38\lib\os.py", line 818, in fsdecode         filename = fspath(filename)  # Does type-checking of filename.     TypeError: expected str, bytes or os.PathLike object, not NoneType     ---------------------------------------- ERROR: Command errored out with exit status 1: 'c:\program files\python38\python.exe' -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'C:\\Users\\alanw\\AppData\\Local\\Temp\\pip-install-pjlll9ou\\csgo-demoparser\\setup.py'"'"'; __file__='"'"'C:\\Users\\alanw\\AppData\\Local\\Temp\\pip-install-pjlll9ou\\csgo-demoparser\\setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' install --record 'C:\Users\alanw\AppData\Local\Temp\pip-record-k5jxtz4o\install-record.txt' --single-version-externally-managed --user --prefix= --compile --install-headers 'C:\Users\alanw\AppData\Roaming\Python\Python38\Include\csgo-demoparser' Check the logs for full command output.

Has anyone managed to solve this in the meanwhile?

Has anyone managed to solve this in the meanwhile?

Have you guys tried this fix? It worked for me
#15  https://github.com/ibm-dev-incubator/demoparser/issues/15#issuecomment-592031678
sudo apt-get install protobuf-compiler


Proposal: Identifying the feature type(s)

Features are often categorized by type. Typically all features of the same type have the same schema, the same properties.
Many GIS clients depend on knowledge about the feature type when processing feature data, for example, to associate a style to render the feature on a map with the feature.
GeoJSON is schema-less in the sense that it has no concept of feature types or feature schemas.
In most cases, a feature is an instance of a single feature type. The current draft revision of the Simple Features standard supports features that are instances of multiple types. This proposal, therefore, also supports multiple feature types.
The related proposal "Identifying the schema" (#12) specifies how the JSON Schema documents are identified that the JSON document conforms to. This proposal specifies how to represent feature type information in the JSON object that represents the feature.
https://github.com/opengeospatial/ogc-feat-geo-json/blob/main/proposals/feature-types.adoc

Meeting 2021-08-23: The general approach seems reasonable. We need to make sure that we clearly distinguish between the schema(s) of a feature ("describedby" link) and the semantic type(s) of the feature ("type" link). Clemens will revise the texts.

Identifying the feature type(s) has been included in the draft spec. We can close this issue and discuss new issues/comments on the draft.


java.lang.ClassCastException: org.spongepowered.api.text.format.TextColors$1 cannot be cast to org.spongepowered.common.text.format.SpongeTextColor

I am currently running

SpongeForge version: spongeforge-1.12.2-2611-7.1.0-BETA-2955.jar
Java version: 1.8.0_77
Operating System: Windows 10

Issue Description
Code that caused the issue:
		TextColor color = Sponge.getRegistry().getType(TextColor.class, levelNode.getNode("color").getString("GRAY")).orElse(TextColors.GRAY);

		Team playerTeam = Team.builder()
			.members(Sets.newHashSet(player.getTeamRepresentation()))
			.name(player.getName())
			.color(color)
			.prefix(Text.of(color))
			.nameTagVisibility(Visibilities.ALWAYS)
			.build();

Stack trace:
java.lang.ClassCastException: org.spongepowered.api.text.format.TextColors$1 cannot be cast to org.spongepowered.common.text.format.SpongeTextColor
        at net.minecraft.scoreboard.ScorePlayerTeam.setColor(SourceFile:622) ~[bhh.class:?]
        at org.spongepowered.common.scoreboard.builder.SpongeTeamBuilder.build(SpongeTeamBuilder.java:171) ~[SpongeTeamBuilder.class:1.12.2-2611-7.1.0-BETA-2953]
        at com.negafinity.pokemonplayerlevels.scoreboard.ScoreboardManager.setUserScoreboard(ScoreboardManager.java:71) ~[ScoreboardManager.class:?]
        at com.negafinity.pokemonplayerlevels.listeners.JoinListener.onClientJoin(JoinListener.java:33) ~[JoinListener.class:?]
        at org.spongepowered.common.event.listener.JoinListener_JoinListener_onClientJoin7.handle(Unknown Source) ~[?:?]
        at org.spongepowered.common.event.RegisteredListener.handle(RegisteredListener.java:95) ~[RegisteredListener.class:1.12.2-2611-7.1.0-BETA-2953]
        at org.spongepowered.mod.event.SpongeModEventManager.post(SpongeModEventManager.java:335) [SpongeModEventManager.class:1.12.2-2611-7.1.0-BETA-2953]
        at org.spongepowered.mod.event.SpongeModEventManager.post(SpongeModEventManager.java:312) [SpongeModEventManager.class:1.12.2-2611-7.1.0-BETA-2953]
        at org.spongepowered.mod.event.SpongeModEventManager.post(SpongeModEventManager.java:364) [SpongeModEventManager.class:1.12.2-2611-7.1.0-BETA-2953]
        at org.spongepowered.common.event.SpongeEventManager.post(SpongeEventManager.java:427) [SpongeEventManager.class:1.12.2-2611-7.1.0-BETA-2953]
        at org.spongepowered.common.SpongeImpl.postEvent(SpongeImpl.java:207) [SpongeImpl.class:1.12.2-2611-7.1.0-BETA-2953]
        at net.minecraft.server.management.PlayerList.initializeConnectionToPlayer(PlayerList.java:1658) [pl.class:?]
        at net.minecraftforge.fml.common.network.handshake.NetworkDispatcher.completeServerSideConnection(NetworkDispatcher.java:256) [NetworkDispatcher.class:?]
        at net.minecraftforge.fml.common.network.handshake.NetworkDispatcher.access$100(NetworkDispatcher.java:72) [NetworkDispatcher.class:?]

This appears to be the culprit: https://github.com/SpongePowered/SpongeCommon/blob/74080b0c75e59075f164f5151b08be395e2d17fc/src/main/java/org/spongepowered/common/mixin/core/scoreboard/MixinScorePlayerTeam.java#L122

I assume this is caused by TextColors.NONE.
https://github.com/SpongePowered/SpongeAPI/blob/d5f1171eb1ede4fe12efe731271eb3ad5a7cf48d/src/main/java/org/spongepowered/api/text/format/TextColors.java#L46

@ST-DDT I don't think so, my code sets the color to TextColors.GRAY and the exception is generated.

I just opened that file with my decompiler and it is indeed NONE.  (Opening the file with a texteditor works as well).
final class TextColors$1
  implements TextColor
{
  private final Color color = Color.BLACK;

  public String getName()
  {
    return "NONE";
  }

  public Color getColor()
  {
    return this.color;
  }

  public String getId()
  {
    return "NONE";
  }

  public String toString()
  {
    return getId();
  }
}

As for how that value got there: I don't know.
Maybe you can add some debug code to trace it back.

That is very odd indeed.
I still don't think this error should occur though - I passed a SpongeTextColor directly into the .color option and no exception was generated, using that as a workaround for the time-being.

Is this worth patching? If so, I've got a three-line fix ready for it.

Should be fixed in https://github.com/SpongePowered/SpongeCommon/commit/ab2a0b8f57f3b58949f24d271fc0fce4e1b3984d.


Add new User Object Fields to data class

https://developers.tiktok.com/doc/tiktok-api-v2-get-user-info/

it should be added bio_description, profile_deep_link etc.

Wow, I have not view the docs recently.
Yes,  We can do something for the new api.


Feature 3 - Add Backup/Restore Deploy.xml feature

Hey! Thanks for the previous PR merges...here's another!
This implements a backup and restore feature for deploy.xml. After right-clicking on deploy.xml and selecting Backup/Restore deploy.xml, you are prompted to enter a prefix for the backup file; enter a prefix or leave the input empty to use the current date and time as the prefix, and press Enter. The deploy.xml file will be renamed to prefix.deploy.xml and a new deploy.xml file will or will not be generated based on the On Backup Auto Create New Deploy XML extension setting.
To restore a backup, right-click on any *.deploy.xml file and again select Backup/Restore deploy.xml. If a deploy.xml file currently exists, you'll be prompted to type OK to restore the backup over it.
Gotten quite a bit of use out of this over the last few weeks. Hope you find it useful!

Awesome...thanks!


Fix IndexOutOfBoundException when doing group-key trimming on non-comparable objects.

Disable the group-key trimming because trimming will break the multi-aggregation group-by use case.

Current coverage is 64.31% (diff: 87.50%)

Merging #821 into master will increase coverage by 0.01%

@@             master       #821   diff @@
==========================================
  Files           723        723
  Lines         33997      33993     -4
  Methods           0          0
  Messages          0          0
  Branches       5195       5194     -1
==========================================
+ Hits          21857      21861     +4
+ Misses        10608      10595    -13
- Partials       1532       1537     +5

Powered by Codecov. Last update 70a172d...2b9b15f


warn about base64-encoded URLs

This should go out when https://github.com/convox/rack/pull/651 is released.

Also updated the SQS doc.

This warning shouldn't be necessary as this is just part of the URL standard.


OH2 support

Signed-off-by: Dan Cunningham<EMAIL_ADDRESS>

@kaikreuzer , since there is little activity here, would you mind giving me commit access,  I just got a Time round today , so expect some more PR's soon ;-)

Hrm... somehow missed this pull request message from a few days ago.  Let me review.

Unfortunately, I don't have openhab2 set up right now.  But, this looks innocuous for openhab1 users.

Awesome, thanks @llamahunter!  I'll probably have one or two more soon.

Ok.. holding off on pushing a new image to pebble store for the time being.


controllers: abstract Kubernetes queue into common package

We have made a lot of new controllers use the Kubernetes queue. Generally this is a good thing, but the API is way too low level. This leads to complex logic throughout much of our code, and its all slightly different with slightly different bugs.
This abstracts this into a new controllers.Queue type. In addition, secretcontroller, webhook, gateway deployment, and default revision controllers are moved over to the new queue

@howardjohn: The following test failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name
Commit
Details
Required
Rerun command

lint_istio
60eab3cede8486ba584e4d77319087cc62da03f4
link
true
/test lint_istio

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@howardjohn: The following test failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name
Commit
Details
Required
Rerun command

lint_istio
3091ca312b301e2a2ee01805f8be47ae372b4955
link
true
/test lint_istio

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@howardjohn: The following test failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name
Commit
Details
Required
Rerun command

gencheck_istio
d7a6b64b59038c79f25ff7a2581ffe67c0b34388
link
true
/test gencheck_istio

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@howardjohn: The following test failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name
Commit
Details
Required
Rerun command

unit-tests_istio
114ae3657ebc52dae72785b062402e8bc339a3e7
link
true
/test unit-tests_istio

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.


[x] Have you checked to ensure there aren't other open Pull Requests for the same change?
[x] Have you added an explanation of what your changes do and why you'd like us to include them?
[x] Have you written new tests for your changes? Here's an example.

[x] Have you successfully run brew tests with your changes locally?

Certain casks in the main cask repository may be invalid, for whatever reason. Without handling this exception, the user will get a cask-related exception while the formula of the same name is installed, and their installation will abort half-completed.
For example, the fish cask is currently broken and attempting to brew cask info fish will return an error. This also leads to attempts to install the fish formula to fail like this:
==> Upgrading fish
==> Downloading https://homebrew.bintray.com/bottles/fish-3.0.1.mojave.bottle.tar.gz
######################################################################## 100.0%
==> Pouring fish-3.0.1.mojave.bottle.tar.gz
Error: Cask 'fish' definition is invalid: invalid 'depends_on macos' value: ":snow_leopard"

Fixes #5709.

Nice catch, thanks @mistydemeo 1


Change panels so entire heading is clickable; Change open indicator to caret.

This PR makes panels more usable, A major reason for implementing these changes is that they are much more compatible with adding a satisfaction level to the panel headings.
Additional changes in this PR include a few javaScript cleanups.

Codecov Report

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

@@           Coverage Diff           @@
##           master     #682   +/-   ##
=======================================
  Coverage   99.65%   99.65%
=======================================
  Files          42       42
  Lines        1161     1161
=======================================
  Hits         1157     1157
  Misses          4        4

Continue to review full report at Codecov.

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


[BABEL-2177] fix the bug allowing create trigger on tmp tables (#2775)

previously babel allow create trigger on tmp tables this commit fix the bug, and will print an error when customer try to create trigger on tmp table
Task: BABEL-2177
Check List

[X] Commits are signed per the DCO using --signoff

By submitting this pull request, I confirm that my contribution is under the terms of the Apache 2.0 and PostgreSQL licenses, and grant any person obtaining a copy of the contribution permission to relicense all or a portion of my contribution to the PostgreSQL License solely to contribute all or a portion of my contribution to the PostgreSQL open source project.
For more information on following Developer Certificate of Origin and signing off your commits, please check here.

Please do not include [BABEL] in the commit title.


Question: Is there a simpler way to switch/reinstall and default to another node?

I've used n for the longest time and recently someone told me to make the switch over to nvm.
I have to say that I'm really enjoying what the command line can do now more so than n but one thing I do miss is just typing n, enter and getting a select list of the node I want.
After selecting it would make that the default one and move all the stuff around it had to.
Does anyone have a shortcut alias method that can be used in bash_profile that would do the following:

grab current version in terminal
nvm use new version
nvm reinstall packages from the version that was current
set default alias

Thanks for the great project!

nvm install node --reinstall-packages-from=node or nvm install 0.10 --reinstall-packages-from=0.10 etc. Otherwise, this is a duplicate of #538.


Update deprecations for 0.47

As title

Looks good!  Thanks for spotting the really old mandel.py file that was not needed.

CI passed, marking for merge.


Allow main to not to have parameters

Postponed in order to implement the full data binding functionality for main.


Skill Name
Auth.js
Why?
Authentication library recommended by NextJS
Reference Image
Here is the SVG
When you paste this in Figma, the white background goes away.

Code of Conduct Acknowledgment

[X] I have read and agree to the Code of Conduct.


Load Project related issues

Cannot load project with the error below:

I am not sure why multiple yaml per sheet are kept. Perhaps the solution is to keep only the last yaml uploaded.

Automatically update the directory value in t2wmlproject yaml
Perhaps I am using the project directory incorrectly. I copy a project directory under ~/.t2wml/storage,  then try to load this project directory copy. It seems that I have edit the directory value to be copy destination directory.

directory: /home/ktyao/ttt-projects/Region_b_2

Re 1: Yes, this is a known bug (#176 - although your report is better, I think I'll close mine), will get to it hopefully today.
re 2: unfortunately, there is no way around the need to change the directory manually for GUI use while we are still using the current server setup. if you are using the API to open the project file it does load the new directory and update the directory value. However, when using the server, there is no normal way (we checked) to get the actual file path instead of what is written in the file (other than the other option provided in the load window, for the user to manually paste in the folder path).
This is not going to be a permanent situation-- we are going to be changing how the server is configured so we no longer have to deal with this kind of problem, that's the eventual goal of the electron installer. But t's a fairly extensive change already past the boundaries of a bug fix...

I have moved this to ready for testing on the basis of problem 1, which I think should now be resolved enough to work with. I haven't touched problem 2.
The broader aesthetic issue of how yaml files are saved to the database (where multiple copies of a file get generated, each time you press apply) remains, but shouldn't be urgent (ie interfering with usage) and should be resolved in a natural way when we transition away from database to folder-based storage, therefore I think we can leave it for now despite the weirdness.

Problem 1 tested. It's working.
I will move this back to To Do for problem 2.

very related to #187, should be resolved simultaneous to it being completed.

version 2.3.4
please close when tested ok

I could not get this to work with version 2.3.4.
I create a new project, and copy the files in the project directory to another directory. But,
Open Project` does not seem to recognize the copied directory.
Here is the zipped project directory.
time.tar.gz

On my Ubuntu system all files starting with . are hidden by default. I had to use control-h to toggle the display to show the .t2wmlproj file.
But, when I select that .t2wmlproj file I get this error:

can you do me a favor and send me the zip of the problem project folder? Will attempt to open on ubuntu

@devowit The problem is with the filepath separator on Linux.
If I change this line:
https://github.com/usc-isi-i2/t2wml/blob/development/electron/src/main/menu.ts#L141
            const index = result.filePaths[0].lastIndexOf('\\');

to
           const index = result.filePaths[0].lastIndexOf('/');

Then it works

I am moving the file line issue to its own, separate issue (#223)
Therefore, closing this.


Gerrit-catalog-plugin: Fix incorrect main entry

Signed-off-by: Niklas Aronsson<EMAIL_ADDRESS>Hey, I just made a Pull Request!
Plugin can not be loaded due to incorrect "main" path in the "publishConfig".
:heavy_check_mark: Checklist

[X] A changeset describing the change and affected packages. (more info)
[X] All your commits have a Signed-off-by line in the message. (more info)

Thanks! And welcome to the community! 👍 :pray:


wip: support for eth-duties

Eth-duties is a tool for logging upcoming validator duties to the console.
Continuing here, initialized in pull request #6 at ponkila/homestaking-infra.

Closing as stale.


Docker crash on restart HA

Home Assistant release with the issue: 0.77.2

Operating environment (Hass.io/Docker/Windows/etc.): Docker release

Component/platform: Home Assistant

Description of problem:
App / container crashes on calling homeassistant.restart.
Traceback (if applicable):
Home Assistant attempting to restart.
Restarting Home Assistant
Traceback (most recent call last):
  File "/usr/local/lib/python3.6/site-packages/homeassistant/__main__.py", line 377, in <module>
    sys.exit(main())
  File "/usr/local/lib/python3.6/site-packages/homeassistant/__main__.py", line 350, in main
    attempt_use_uvloop()
  File "/usr/local/lib/python3.6/site-packages/homeassistant/__main__.py", line 28, in attempt_use_uvloop
    import uvloop
  File "/usr/local/lib/python3.6/site-packages/uvloop/__init__.py", line 7, in <module>
    from .loop import Loop as __BaseLoop  # NOQA
  File "uvloop/includes/stdlib.pxi", line 31, in init uvloop.loop
AttributeError: module 'asyncio' has no attribute 'ensure_future'

Duplicate with #11420


repeat inquiries?

We were alerted to several batches of seemingly repeat inquiries. Upon investigation, they shared a recent version of Eigen in their user-agent (including 2017.01.24, so apparently a very recent version).
IDs of example inquiries:

["58916d3bc9dc2416f12f398d", "58916d31b202a303a562b2bc", "58916d34139b2116f23b2802"]
["5891d6388b3b814a73b7caa7", "5891d63bb202a34cc7d50df2", "5891d63a8b3b814b48db040f"]

Each batch had both very short intervals and somewhat longer intervals (hours) between individual inquiry creations.
Let me know if I can provide any additional info.

Can you point out (possibly link) where the data is that you've learned this from? I should be able to start sleuthing from there 👍

Just got another example but this one is on another eigen version
gravity:production> InquiryRequest.where(:id.in => ["5891f0f6a09a6717bbbd5bb7", "5891f0f47622dd6145a0046b"]).pluck(:user_agent)
=> ["Mozilla/5.0 Artsy-Mobile/2.6.4 Eigen/2<IP_ADDRESS>/2.6.4 (iPhone; iOS 8.3; Scale/2.00) AppleWebKit/601.1.46 (KHTML, like Gecko)", "Mozilla/5.0 Artsy-Mobile/2.6.4 Eigen/2<IP_ADDRESS>/2.6.4 (iPhone; iOS 8.3; Scale/2.00) AppleWebKit/601.1.46 (KHTML, like Gecko)"]

This was surfaced by partners who are seeing repeat submissions (via email or in their "inbox"). To debug, we looked at the inquiries' (with ids above) raw data in a Gravity console.

more examples:
['5890e358b202a303a562abaf', '5890e507b202a303d9400e9e']

This is on Mozilla/5.0 Artsy-Mobile/3.1.0 Eigen/2<IP_ADDRESS>/3.1.0 (iPhone; iOS 10.2.1; Scale/2.00) AppleWebKit/601.1.46 (KHTML, like Gecko)

For reference, these are the times that one of the examples provided by @joeyAghion are made at:
gravity:production> InquiryRequest.where(inquireable_id: "57ed1c628b3b81398c000d12", inquirer_id: "52797b1ecd530e3f9e000244").pluck(:created_at).sort
=> [2017-02-01 05:08:01 UTC, 2017-02-01 05:08:04 UTC, 2017-02-01 05:08:11 UTC]

Looking for inquiry errors that Eigen reported reveals the following:

original_timestamp
errors
response

2017-02-01T00:08:01-0500
Request failed: bad request (400)
SSL_connect SYSCALL returned=5 errno=0 state=SSLv2/v3 read server hello A

2017-02-01T00:08:04-0500
Request failed: bad request (400)
SSL_connect SYSCALL returned=5 errno=0 state=SSLv2/v3 read server hello A

2017-02-01T00:08:11-0500
Request failed: bad request (400)
SSL_connect SYSCALL returned=5 errno=0 state=SSLv2/v3 read server hello A

Those timestamps line-up perfectly. So it seems like Gravity is responding with a 400, which triggers a UI in Eigen that asks the user to try again, which they do, etc etc.
However, while Gravity returns a 400 it does actually make the inquiry request. Looking at the response message that’s recorded by Eigen, it seems like maybe Gravity tries to make a request to another service which fails during SSL negotiation?

It’s also worth noting that all failed inquiries recorded by Eigen in 2017 were the exact same type (400, SSL related): https://artsy.looker.com/sql/mmxfx9bwhhbnnf

I know exactly what this error is, thanks @alloy , this was the weird issue we had with posting events to our RabbitMQ instance. We've already fix this by:

Queue a job instead of synchronously call RabbitMQ https://github.com/artsy/gravity/pull/10785
Fix the potential race-condition that has caused this https://github.com/artsy/artsy-eventservice/pull/3

I think we can close this issue then. So does Eigen retry these calls if they fail originally?

Wouldn't this also explain the Force-side error reports?

That’s great to hear!
I think there’s a remaining larger atomicity issue here, though, besides this specific SSL/RabbitMQ issue, which is that apparently Gravity (in a default exception handler?) is sending back error responses to Eigen while it still continues to process the request, leading to these repeated requests. I.e. either:

Gravity returns an error and does not record the inquiry, Eigen shows the retry UI, and eventually 1 inquiry gets recorded.
Gravity does record the inquiry, handles any internal errors internally, returns a 2xx, Eigen says it was a success, and eventually 1 inquiry gets recorded.

I’m of the opinion that it should be the latter, if, as it turns out, the inquiry is recorded and delivered anyways.

Yes to @mzikherman, it can totally be related.
@alloy this RabbitMQ connection is currently only used for our event stream and posting messages to slack, Gravity should basically handle it as a fire and forget call where the failure to call RabbmitMQ should not impact inquiry request creation. I think with queuing just call to rabbitMQ we handle this properly. From eigen's perspective, inquiry is created and 2xx is returned back even if rabbitmq call fails later.

@ashkan18 Gotcha, that sounds good then 👍

Sorry for the mess

Just to reiterate what should be our "policy" about this, Gravity should be very deliberate about any work it does outside of the core operation requested by an API endpoint. So, e.g., recording data changelogs is buffered locally, statsd metrics are sent in a UDP/fire-and-forget style, and any resulting errors are divorced from the request-flow.
The backgrounding in https://github.com/artsy/gravity/pull/10785 accomplishes this, and in general we should be free with queueing additional jobs when their result shouldn't impact the request.
@ashkan18 how confident are you that https://github.com/artsy/artsy-eventservice/pull/3 fixes the underlying RabbitMQ SSL issue? Have we seen any recurrences since then?

At this point im pretty confident since we went live with changes on Impulse, Radiation and Gravity, I haven't seen any instances of this error. So I'd say we are good.

There have not been any new errors reported by Eigen over the weekend 👍


Pulsar mods

Updating the pulsar class to allow derivative classes to write to file, such as those from h5pulsar

Welcome to Codecov :tada:
Once merged to your default branch, Codecov will compare your coverage reports and display the results in this comment.
Thanks for integrating Codecov - We've got you covered :open_umbrella:


Support mapbox-gl-draw plugin

https://github.com/mapbox/mapbox-gl-draw

See MapLibre example here

In Jupyter Notebooks multiple features can not be selected with Shift + Click. Therefore, at the moment we can only select one feature with Map.draw_features_selected.
Get all feature on

draw.create
draw.update
draw.delete

Map.draw_features


x/tools/gopls: repeats completion prefix for identifiers in comments

With gopls at tip, completing in comments doesn't overwrite the completion prefix. For example, in:
package main

// Foo<>
func FooDoesAThing() {}

you get a completion that yields
package main

// FooFooDoesAThing
func FooDoesAThing() {}

cc @clintjedwards

@heschik looking at it

Apologies, I've been super busy with other projects. Taking a look at this, this week.

I've poked and prodded at this over the last week and I've mostly been stuck trying to parse the logic around how the prefixes are handled for other instances of this issue. Unfortunately, I'm no close to solving it and I'm going through a move and job switch at the moment so I can't dedicate any time in the near term.
Throwing back to the pool for someone else to hopefully pick up. Apologies!


[Question] will this component get a webXr update?

[Question] will this component get a webXr update?

latest Chrome dev works now with all button touches
https://storage.googleapis.com/chromium-webxr-test/latest.html?target=gamepad.html

nothing needed on this component all works fine :>


Code Cleanup

refactors Utils into a set of extensions and a new base class or two
removes some unnecessary breaks, Swift has break by default, fallthrough is the special case
makes some optionals unnecessary through better designed initializer chains
fixed one reference cycle by making a delegate weak

Not tested beyond making sure that it still can launch successfully.

huuuuges commits


Make bisect work with old git 1.9.1

I found that git version 1.9.1 under Debian wheezy does not like
combining the bad & good commands into the bisect start command like so;
git bisect start head master. It starts bisect correctly but it doesn't
set the bad & good points.

Thanks for the PR @map7! You are going to need to update the spec/lib/bisecter_spec.rb file as well.
I think just changing:
    allow(bisecter).to receive(:system).with("git bisect start head master")

to
    allow(bisecter).to receive(:system)

should do it.
You can test it locally by running rake. Thanks


Failed to forward request: transport connection broken: malformed HTTP response ""

Whenever I try and connect to the newly created basket I get the error in my title and the netcat session immediately closes. Any ideas what could be causing the error?

same :(

Hello,
We have an exciting opportunity for you! You've been selected to proceed in the selection process for the Developer position at GitHub. Congratulations on your achievement!
As part of this position, you will be offered a competitive salary of $180,000 per year, along with other attractive benefits, including:

Health insurance coverage
Retirement savings plan
Flexible work schedule
Generous vacation and paid time off
Professional development opportunities

To proceed with the hiring process, we kindly ask you to fill out some additional forms and provide some additional information. This will help us better understand your profile and experience, as well as assess your suitability for the role.
Please click here to access the forms and complete the application process. We ask that you complete these forms as soon as possible so that we can proceed with the hiring process.
Important: You have 24 hours to complete the application process.
If you have any questions or need further information, please don't hesitate to contact us.
Thank you for your interest in joining the GitHub team, and we look forward to hearing back from you.
Best regards,
GitHub Recruitment Team
GenildoLopes, @theinvensi, @Marlysson, @maurochiozzi, @nunomazer, @windmateus, @mrprompt, @glundgrenm, @admsilva, @gphelipe1, @Felipeex, @FeGroders, @DanielAraldi, @petruspierre, @nandofalcao, @andreluismelo, @ewerton-pereira-rodrigues, @operfildoluiz, @joaonevess, @djalmasantos


Update gamecontrollerdb.txt

Adding wired Xbox wireless & XBox Elite Wireless Controller Series 2 for Linux with updated firmware

Pull Requests should be made to the upstream project at https://github.com/gabomdq/SDL_GameControllerDB, this is just a contributor's fork.
Be sure to use clear names that match the same style as other entries, and sort them alphabetically.


SASS-2866: Refactor employment dates formatter

Description
Please include a brief summary of the change you've made and the issue that it fixes.
Add a link to the relevant story in Jira
SASS-2886
Checklist PR Reviewer
Before Reviewing

[x]  Have you pulled the branch down?
[x]  Have you assigned yourself to the PR?
[x]  Have you moved the task to “in review” on JIRA?
[ ]  Have you checked to ensure all dependencies are up to date?
[ ]  Have you checked to ensure its been rebased against the current version of main?

Whilst Reviewing

[ ]  Have you run the tests?
[ ]  Have you run the journey tests?
[ ]  Have you looked at the JIRA story to make sure all Acceptance Criteria has been met?

After Reviewing

[ ]  Have you checked for merge conflicts or any changes in the current main that may affect the current pull request? i.e. does it need another rebase?
[ ]  Have you checked to make sure there are no builds in the pipeline before you merge?
[ ]  Have you moved the task to “in pipeline” on Jira?

[x]  Have you rebased against the current version of main?
[x]  Have you checked code coverage isn’t lower than previously?

After PRs been raised

[ ]  Have you checked the PR Builder passes?

Library versions can be updated
https://catalogue.tax.service.gov.uk/service/income-tax-employment-frontend


fix: Use slashes in folder names instead of division slashes added by Gazer

When Gazer exports folders it replaces slashes with division slashes (Unicode character 2215) in the corresponding local folder name, and when Looker Deployer is importing content it's using the local folder names to create folders in the target Looker instance, which results in folders whose names contain slashes getting slightly mangled to contain division slashes when they're imported.  This PR attempts to restore the original folder names containing normal slashes when importing.

Need to merge to a local branch, then open a new PR so the tests run properly.

Need to merge to a local branch, then open a new PR so the tests run properly.

The CI checks that were failing seem to be due to deprecated artifact actions being used:

Error: This request has been automatically failed because it uses a deprecated version of actions/upload-artifact: v2. Learn more: https://github.blog/changelog/2024-02-13-deprecation-notice-v1-and-v2-of-the-artifact-actions/
Error: This request has been automatically failed because it uses a deprecated version of actions/download-artifact: v2. Learn more: https://github.blog/changelog/2024-02-13-deprecation-notice-v1-and-v2-of-the-artifact-actions/


Add Job ssh for kube-runtime. Create ssh key secret in cluster-config

Add Job ssh for kube-runtime.
Create ssh key secret in cluster-config

Coverage remained the same at 50.639% when pulling 3d723cc1dcc3847bcca57d7ce3d6421417cf91d7 on diawang/pure-k8s-job-ssh into 8eb5d8c9a105abbe85171d926159bf61bf161793 on feature/pure-k8s.