ambiguous column when using scope and belongsToMany back to same Model

Laravel Version: 5.4.32
PHP Version: 7.0
Database Driver & Version: MySQL 5.5

Description:
I'm encountering an issue when using a Model scope and a belongsToMany relation back to the same Model. The result is a "Integrity constraint violation: 1052 Column 'archived' in where clause is ambiguous".
Steps To Reproduce:
Create a Model with:
protected static function boot()
{
	parent::boot();
	static::addGlobalScope('archived', function(Builder $builder) {
		$builder->where('archived', 0);
	});
}

public function objects()
{
	return $this->belongsToMany('App\Example', 'ontologies', 'subject_id', 'object_id');
}

Create Model called Example. Add a field archived.
A table like ontologies with a id, subject_id and object_id.
Create two records (e.g. id 1,2) and add a record in the ontologies table with subject=1 and object_id=2
Use a eager load or try to load the objects.

Yeah the column now exists in the two instances of the table, SQL is confused which instance you mean. I don't believe there's much we can do from our side since we don't know either which instance you expect.

Using an table alias can be considered as an option. To make the field selection more explicit. I cannot oversee the complexity of how difficult this is to implement.

This isn't a laravel bug. When you self join you will have columns duplicated and thus SQL will throw an error cause it will not know which column to pick. If you are doing a self join, you need t

I'm not sure but feel free to submit a PR :).
For suggestions and feature requests please use the https://github.com/laravel/internals repo.


Improving error msgs on duplicate symbols

Today I was trying to write the following facility declaration in an array implementation of stack template:
Facility Arr_Fac is Bdd_Ceramic_Array_Template<T>(1, Max_Depth)
    externally implemented by Ceramic_Array_Impl;

and kept receiving the following error (even though this declaration was literally the only thing in the file):
error(12): Stk_Array_Impl.resolve:5:39: duplicate symbol: Arr_Fac

After banging my head against the wall for a little while trying to figure out what went wrong with the symboltable, scopes, etc, it turns out the problem was simply an error message bug in which the reported name of the duplicate symbol was incorrectly set to Array_Fac, as opposed to the generic type reference T. So after fixing the message bug, you might still be asking "ok, why is T duplicated? I don't see a T declared anywhere else -- it should just be referencing the T that parameterizes Bdd_Stack_Template ... what's going on?!"
Well, turns out that Bdd_Ceramic_Array_Template (the specification this facility uses) also is parameterized by generic that also happens to be named T. Thus, when we search for just T we end up finding both the T from both Bdd_Stack_Template and Bdd_Ceramic_Array_Template -- hence the duplicate symbol error. So the following qualification fixes all errors:
Facility Arr_Fac is Bdd_Ceramic_Array_Template<Bdd_Stack_Template :: T>(1, Max_Depth)
    externally implemented by Ceramic_Array_Impl;

The point here being is that I think it might be worthwhile amending the duplicate symbol error message to also say some words about which symbol(s) the offending symbol clashes with, and perhaps even where they are located. This would have saved me some head scratching (even in spite of the ridiculous msg error).

I've addressed the bug portion of this issue. So now it's pretty much just an improvement/enhancement

On second thought, the message I currently give is pretty much the same as other tools/compilers. So I'm going to leave this be for now.


exporters.md: Add speedtest_exporter

Yes, this exporter is as shoddy as the first one. I am working on making a nice version in Mojolicious and will then switch everything over.

Does it break convention if I use the full name in the link and the shortname in the exporter name?

Nope, that's fine! :+1:


Troubleshoot connecting Thanos QueryFrontend to AWS ElasticCache Redis with TLS

Connection issue when trying to connect Thanos QueryFrontend to an AWS ElasticCache Redis with TLS enabled.
Thanos, Prometheus and Golang version used:
Thanos v0.32.2 with AWS ElasticCache Redis 6.2.6 with Encryption in transit enabled
This is the configuration used:
--query-range.response-cache-config=
    config:
        addr: XXX.cache.amazonaws.com:6379
        tls_enabled: true

    type: "redis"

Object Storage Provider: AWS
What happened:
When I tried to connect to AWS ElasticCache Redis cluster with TLS in transit, I got a connection issue: context deadline exceeded.
I think it is because of missing root certificates because when I used a alpine image and install the root certificates which include Amazon_Root_CA it worked well.
redis-cli XXX.cache.amazonaws.com -p 6379 --tls

I tried to add those certificates with an initContainer but I got the same connection issue.
What you expected to happen:
Connect successfully Thanos QueryFrontend to ElasticCache Redis cluster with TLS.
Full logs to relevant components:
ts=2023-09-18T16:59:05.422890922Z caller=main.go:135 level=error err="creating redis client: context deadline exceeded\ngithub.com/thanos-io/thanos/internal/cortex/chunk/cache.New\n\t/app/internal/cortex/chunk/cache/cache.go:108\ngithub.com/thanos-io/thanos/internal/cortex/querier/queryrange.NewResultsCacheMiddleware\n\t/app/internal/cortex/querier/queryrange/results_cache.go:187\ngithub.com/thanos-io/thanos/pkg/queryfrontend.newQueryRangeTripperware\n\t/app/pkg/queryfrontend/roundtrip.go:199\ngithub.com/thanos-io/thanos/pkg/queryfrontend.NewTripperware\n\t/app/pkg/queryfrontend/roundtrip.go:58\nmain.runQueryFrontend\n\t/app/cmd/thanos/query_frontend.go:254\nmain.registerQueryFrontend.func1\n\t/app/cmd/thanos/query_frontend.go:160\nmain.main\n\t/app/cmd/thanos/main.go:133\nruntime.main\n\t/usr/local/go/src/runtime/proc.go:250\nruntime.goexit\n\t/usr/local/go/src/runtime/asm_amd64.s:1598\ncreate results cache middleware\ngithub.com/thanos-io/thanos/pkg/queryfrontend.newQueryRangeTripperware\n\t/app/pkg/queryfrontend/roundtrip.go:211\ngithub.com/thanos-io/thanos/pkg/queryfrontend.NewTripperware\n\t/app/pkg/queryfrontend/roundtrip.go:58\nmain.runQueryFrontend\n\t/app/cmd/thanos/query_frontend.go:254\nmain.registerQueryFrontend.func1\n\t/app/cmd/thanos/query_frontend.go:160\nmain.main\n\t/app/cmd/thanos/main.go:133\nruntime.main\n\t/usr/local/go/src/runtime/proc.go:250\nruntime.goexit\n\t/usr/local/go/src/runtime/asm_amd64.s:1598\nsetup tripperwares\nmain.runQueryFrontend\n\t/app/cmd/thanos/query_frontend.go:256\nmain.registerQueryFrontend.func1\n\t/app/cmd/thanos/query_frontend.go:160\nmain.main\n\t/app/cmd/thanos/main.go:133\nruntime.main\n\t/usr/local/go/src/runtime/proc.go:250\nruntime.goexit\n\t/usr/local/go/src/runtime/asm_amd64.s:1598\npreparing query-frontend command failed\nmain.main\n\t/app/cmd/thanos/main.go:135\nruntime.main\n\t/usr/local/go/src/runtime/proc.go:250\nruntime.goexit\n\t/usr/local/go/src/runtime/asm_amd64.s:1598"

The Redis cache configurations accepts the CA file as configuration, see the official docs: https://thanos.io/tip/components/store.md/#redis-index-cache

Thanks for the aswer, I have already try this, with ca-certificates lib there are 4 Amazon Root certificates, I merged them into one unique file and add the path into tls_config :
--query-range.response-cache-config=
    config:
          addr: master.redis-thanos-test-infra-eu-west-1.29te5m.euw1.cache.amazonaws.com:6379
          tls_enabled: true
          tls_config:
              ca_file: /etc/ssl/certs/ca-cert-Amazon_Root_CA.pem
    type: "redis"

I got the same issue: creating redis client: context deadline exceeded

You can add use the insecure option to skip the cert check. 👀
Otherwise unfortunately I can't help anymore, I don't have this kind of setup.

I tried also to skip the option : insecure_skip_verify: true it doesn't seem to have any impact on my issue

Did you try already without in transit encryption? This seems weird... it's like a timeout somewhere

Yes for the moment we used ElasticCache Redis without TLS encryption it worked well

I'm also experiencing this issue. I have redis configured with TLS, but query-frontend cannot connect to it.
I dug into the code a bit, and from what I can tell I don't think TLS has been implemented yet?
https://github.com/thanos-io/thanos/blob/main/pkg/queryfrontend/config.go#L162
The NewCacheConfig parser for Redis doesn't seem to pass any TLS options over to the cortex cache config, so it doesn't get enabled.
Just doing a quick test, made the following change:
diff --git a/pkg/queryfrontend/config.go b/pkg/queryfrontend/config.go
index a5655199..80e7f3f0 100644
--- a/pkg/queryfrontend/config.go
+++ b/pkg/queryfrontend/config.go
@@ -166,6 +166,8 @@ func NewCacheConfig(logger log.Logger, confContentYaml []byte) (*cortexcache.Con
                                Expiration: config.Expiration,
                                DB:         config.Redis.DB,
                                Password:   flagext.Secret{Value: config.Redis.Password},
+                               EnableTLS:  true,
+                               InsecureSkipVerify:  true,
                        },
                        Background: cortexcache.BackgroundConfig{
                                WriteBackBuffer:     config.Redis.MaxSetMultiConcurrency * config.Redis.SetMultiBatchSize,

recompiled, and query-frontend is able to connect to my Redis using TLS.
Unfortunately my Golang skills are quire limited so I don't know how to fix this properly.

Would this then categorize as a bug since the insecure_skip_verify is not passed down while converting to the cortexcache.RedisConfig ?

Would this then categorize as a bug since the insecure_skip_verify and tls_enabled is not passed down during convert to the cortexcache.RedisConfig ?

I guess so. Any workaround? Having the same issue on thanos store index cache, when applying this configuration:
indexCacheConfig: |
  addr: master.raas-thanos-storegateway.zh7tcv.usw2.cache.amazonaws.com:6379        # Redis address and port
  db: 0                                     # Redis database (default: 0)
  dial_timeout: 20s                # Dial timeout (default: 5s)
  read_timeout: 20s                # Read timeout (default: 3s)
  write_timeout: 20s              # Write timeout (default: 3s)

  # Concurrency and batch settings
  max_get_multi_concurrency: 50  # Max concurrent GET operations (default: 50)
  get_multi_batch_size: 50      # Batch size for GET operations (default: 50)
  max_set_multi_concurrency: 50  # Max concurrent SET operations (default: 50)
  set_multi_batch_size: 50      # Batch size for SET operations (default: 50)

  # Cache and async settings
  cache_size: 128MB                 # Cache size (default: 128MB)
  max_async_buffer_size: 5000 # Async buffer size (default: 5000)
  max_async_concurrency: 20  # Async concurrency (default: 20)

  # Circuit breaker settings
  set_async_circuit_breaker_config:
    enabled: true      # Circuit breaker enabled (default: true)
    half_open_max_requests: 10  # Max requests during half-open state (default: 10)
    open_duration: 5s    # Circuit breaker open duration (default: 5s)
    min_requests: 50      # Min requests before tracking failures (default: 50)
    consecutive_failures: 5      # Consecutive failures to open circuit breaker (default: 5)
    failure_percent: 0.05 # Failure percentage to open circuit breaker (default: 0.05 or 5%)

  # Caching specific items (empty by default)
  enabled_items: [""]            # Default: empty (all items cached by default). Possible values: Postings, Series, ExpandedPostings.

  # Time-to-live (TTL) for cached items
  ttl: 30m                                 # TTL for cached index items (default: 30 minutes)

Looks like this is fixed! https://github.com/thanos-io/thanos/pull/7674


Can't stack @inject and @parameterize decorators

As per the issue title. This throws an error:
from hamilton.function_modifiers import inject, source, parameterize

@inject(params=source('my_func__params'))
@parameterize(
    my_func_a={'date_range': source('my_func_a_date_range')},
    my_func_b={'date_range': source('my_func_b_date_range')}
)
def my_func(date_range: tuple[pd.Timestamp, pd.Timestamp], params: int) -> int:
    return 1

temp_module = ad_hoc_utils.create_temporary_module(
    my_func, module_name="my_module"
)

config = {
    'my_func__params': 1,
    'my_func_a__date_range': [pd.Timestamp('2022-01-01'), pd.Timestamp('2022-01-10')],
    'my_func_b__date_range': [pd.Timestamp('2023-01-01'), pd.Timestamp('2023-01-10')],
}
dr = driver.Driver(config, temp_module)
df = dr.execute(final_vars=['my_func_a'])

Library & System Information
Hamilton: 1.22.5 , Python 3.11.1

OK, so no inherent reason why this should work -- its an implementation detail that it doesn't. That said, the implementation is a little complex, and the more "hamiltonian" way is one of the following:

(cleanest IMO) -- actually make the source the name in the function (or if its a value make it the default value)
(slightly repetitive) -- integrate it with the @parameterize

*** details below ***
The reason this doesn't work is because @inject is implemented as another parameterization with one value. This is not the cleanest way -- instead it should be able to inject a node into the subdag/replace a dependency within the subdag on something specific. I think this could pretty easily be done, yet it requires a small refactor. Will dig in at some point soon, but for now I think there are a few unblocking strategies here.
As discussed on slack, using group might be helpful as well.

I would like to work on this Bug!

I would like to work on this Bug! Can i get the path of the file for this code please

Apologies @149189. We never got back to you here.
@elijahbenizzy this feels similar to https://github.com/DAGWorks-Inc/hamilton/issues/748 right?


Use Kotlin Null Safety tricks to simplify code in MainActivity

https://kotlinlang.org/docs/reference/null-safety.html
Elvis Operator chapter.

Thanks.

Coverage decreased (-0.06%) to 83.521% when pulling b31d8fbedec5919cb8e8391e209288b6536bffef on pawelkw:feature/simplify_null_check_main_activity into 56213e3334f0b8f68d0660ca6fc7b79c29847077 on jaredsburrows:master.

Should work now. 👍


Firefox version as environment variable

Idea
Is it possible to change the FIREFOX_VERSION argument to be an environment variable instead?
That way I could choose an older firefox version with the newer docker file?

The Alpine repository doesn't allow to install/user older package versions.  Also, using a repository version that differs from the one used by the container is prone to errors and dependencies issues.
However, you can use an older docker image version that has the needed Firefox version.

Right that works but i'd like to take advantage of the kiosk and open url variables that don't exist in older images

You could edit /startapp.sh in the container and add --kiosk as a parameter of Firefox when starting it.  Same thing for the URL, where you can add it as the last argument of firefox.


Typechecker: Error on return with no value in function returning a value

Previously this was reported by the c++ compiler.
A few things I'm not sure about:

Is the hint necessary? it feels a bit repetitive because it uses the same span as the error.
Is a test needed for this?

Hello!
One or more of the commit messages in this PR do not match the Jakt code submission policy, please check the lint_commits CI job for more details on which commits were flagged and why.
Please do not close this PR and open another, instead modify your commit message(s) with git commit --amend and force push those changes to update this PR.


quick_start.ino not working

Hi,
i just found your programm - very cool.
Two points:
1.
When i ran the quick_start.ino on an esp32 i had to removep.Begin();. Otherwise it does not print anything out or show in your listener application.

When i add some Serial.println("whatever"); after the plot command it does not work.
Is this your intention?
Thanks!
quick_start.ino
/*
  ===========================================================================================
  Example used in Quick-Start
  -------------------------------------------------------------------------------------------
  Plotter
  v2.3.0
  https://github.com/devinaconley/arduino-plotter
  by Devin Conley
  ===========================================================================================
*/

#include "Plotter.h"

double x;

Plotter p;

void setup()
{
    p.Begin();

    p.AddTimeGraph( "Some title of a graph", 1500, "label for x", x );
}

void loop() {
    x = 10*sin( 2.0*PI*( millis() / 5000.0 ) );

    p.Plot(); // usually called within loop()
}

I second this. My comments I made few months ago I used Plotter with ESP32 and arduino framework:
//Serial.begin(115200);
// ... this is done in both, Plotter::Plotter(), i.e. before setup() call, and in plotter.Begin()
// and blocks esp32 execution at second call
// Is this a bug in Plotter or esp32-arduino?

}

I also have an issue that seems related. When I run the quick_start.ino example on a Feather Express nRF52840 board, everything works as expected. But when I run the same script on a Feather nRF52832 board, nothing is printed to the serial port and the processing script finds nothing when it listens for configuration. However, if I comment out line 36 in Plotter.cpp, everything works as expected on both boards. https://github.com/devinaconley/arduino-plotter/blob/533124ccfe3730185448e27c79bf39229b906431/src/Plotter.cpp#L36
Although quick_start.ino creates successful plots for both boards (once line 36 is commented out), the x-axis does scale very differently for both boards (confirmed that nothing else is changed).

Hi @lasys @prismv @mikeperrotta - thanks for looking into this issue. That call was left in there for a fairly old version. Just removed it on master

@lasys - yes that is expected behavior, currently need exclusive usage on the serial port
Just added a note to the wiki here:
https://github.com/devinaconley/arduino-plotter/wiki/Troubleshooting#conflict-with-other-serial-communications

Just stamped a new release:
https://github.com/devinaconley/arduino-plotter/releases/tag/2.4.1
Closing this issue. Feel free to reopen if the problem is not resolved.


Hardcoded ports causes CONN_REFUSED when using nginx and proxy_pass

In universe.js the ports are hard coded (with current + 1). When running this with nginx and using proxy_pass the call to /worlds will fail. Can we get the port another way?

You can set the PORT environment variable, by default it's 443.

We discussed this on Discord and in that file it is hard coded. Just wanted to bring that discussion here in case it helps others later. It sounds like this will be fixed with other work on multiplayer things. Thanks!


new(docs): add documentation for new formatting options for Falco 0.39.0

What type of PR is this?

Uncomment one (or more) /kind <> lines:

/kind content
Any specific area of the project related to this PR?

Uncomment one (or more) /area <> lines:

/area documentation
What this PR does / why we need it:
Change the formatting.md page to update it to Falco 0.39.0. Also removes older examples of rules modification which are trivial in this context.
Which issue(s) this PR fixes:

Fixes #1367
Special notes for your reviewer:

[APPROVALNOTIFIER] This PR is APPROVED
This pull-request has been approved by: LucaGuerra
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

content/OWNERS [LucaGuerra]

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

/hold
until release

/unhold


[Migrated] Increase timeout when waiting for load-balancer resources.

Originally from: https://github.com/Miserlou/Zappa/issues/2086 by vshih

Description
Increase timeout when waiting for load-balancer resources.
GitHub Issues

not enough info
closing.


Address userspace one-liner anti-argument

These helper functions are simple, and they can be reimplemented easily in userspace. So why standardize them? The explainer needs to address this top objection.
These helper functions are very common. It would improve developer ergonomics, code clarity, and maybe optimizability if they were standardized.
These functions wouldn’t make JavaScript a kitchen-sink language. These are just a few already-frequently-used convenience functions.
The explainer needs to say all this as compellingly as it can.

As briefly mentioned in https://github.com/tc39/proposal-pipeline-operator/issues/233#issuecomment-932882857, when I raised this concern, I personally thought the scope of this proposal would focus on combinatory logic. With the addition of the variadic pipe, compose, and pipeAsync functions, the userland concern, at least for me personally, has been alleviated.


⚠ ClamAV has degraded performance

In 53b5be5, ClamAV (https://spamassassin.apache.org/) experienced degraded performance:

HTTP code: 200
Response time: 571 ms

Resolved: ClamAV performance has improved in 6413f16.


Streamline button creation

I think the code could be made less clunky by creating a function that takes arguments like text, row/column index, and command, which then automatically creates and grids the buttons. Way fewer lines of code.

The code now uses the make_button function to create the buttons, which cut down on the length of french_accents.py by about 100 lines 😄


Upgrade H2 version to 1.4.199.wso2v1

The current H2 version needs to be updated

Fixed with https://github.com/wso2/product-is/pull/5955


Intel realsense viewer errorcode

When starting up an application, I get the following error message and the application does not start up. What should I do?
| | |
|---|---|
|librealsense|2.49.0 RELEASE|
|OS|Windows|
Intel RealSense Viewer / Depth Quality Tool has crashed with the following error message:
GL_INVALID_VALUE - C:\jenkins_sys_rsbuild\workspace\LRS_windows_compile_pipeline\common\opengl3.cpp:569

Hi @mitsuki0222  A GL_INVALID_VALUE suggests a problem related to OpenGL graphics support on your computer.  In past occurrences of this error that have been reported, a solution has been to download and launch an old version of the RealSense Viewer, then close it and launch the most recent Viewer.  This process is described at https://github.com/IntelRealSense/librealsense/issues/10544#issuecomment-1138569631

Hi @MartyG-RealSense
Thank you for replying.
When I pressed download old version it took me to the link below and I could not download it. What should I do?
https://camo.githubusercontent.com/81d3305a261a6bce96e73999c25186be03dd26200ef8b3532635b71f7996a930/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f646f776e6c6f6164732f496e74656c5265616c53656e73652f6c69627265616c73656e73652f76322e32312e302f746f74616c2e737667

It looks as though you clicked on the 'Downloads' graphic at the top of the page.  This is not the download link.  You should scroll down the 2.21.0 page to the bottom and left-click on the link Intel.RealSense.Viewer.exe
Here is a direct download link for that file.
https://github.com/IntelRealSense/librealsense/releases/download/v2.21.0/Intel.RealSense.Viewer.exe

You are very welcome  :)

Case closed due to solution achieved and no further comments received.


#1259: Support for SAP (Sybase) SQL Anywhere

Pull Request to address issue #1259 .
The implementation is based on the SAP (Sybase) ASE implentation. The databases are similar in structure and syntax. I needed to make minor modifications to the ASE Database Support to make it reuseable. The major difference is that when you use SQL Anywhere as Database admin (dba account) the Flyway clean also droped essential system/metadata tables. Therefore, only tables that are created by the current user are considered, when analysing the database, which excludes the system/metadata tables
I could just tested it on SQL Anywhere 12.0. The database is only slowly developed and I don't expect any problems with newer versions.
The implementation can be tested using the SAP SQL Anywhere Developer Edition. An empty database (flyway_test) needs to be created. The Developer Edition should also include the jdbc driver.
There are currently two problems:

SQL Anywhere can be used with an odbc-based driver or a preferred pure jdbc driver (jconnect). The problem is the jconnect driver is not public and I couldn't figure out the correct group/artifactId. We are using an internal artifact. So I didn't add a dependency to the driver to the pom.
The contribution guidelines mention the documentation needs to be updated, but what exactly needs to be done.

This is my first open soure contribution. I hope I didn't forgot anything essential.

We the changes in production for a couple of months now and no problems yet.

This needs some cleanup before it can be merged.
Some things to consider:
Can you add the concurrent test and make sure it passes?
Can you ensure the tests only run with a dedicated Maven profile?
Can you also add the url autodetection to the datasource as well as url examples to the flyway.conf file?
Do you agree to maintain and support this in the future?
Can you also submit a PR with the relevant changes against flyway/flywaydb.org? (dedicated db page, adjusted navigation in menu and previous/next pages, listed on front page, setup instructions)
Thanks!

In the mean time we decided to drop the SQL Anywhere Support from our Product. This puts me in the position that I can no longer support this PR in the future during work. I would have to do it in my free time for a database I dislike very much.
I am sorry, but I think it is better to reject the pull request and hope that no other poor soul needs to use SQL Anywhere.

Fair enough. Closing for now until a new maintainer steps up.


Add spring.profiles.active to IdUtils.getUnresolvedServiceId()

See https://github.com/spring-cloud/spring-cloud-bus/issues/113 for details.

I have simply added the spring.profiles.active to IdUtils.DEFAULT_SERVICE_ID_STRING at 2nd position, with an empty default.
This has the downside of leaving the double-colon artifact "::" between application name and instance index in case no profiles are active.
Should that be unacceptable, I'd offer a more careful but also more complex solution directly in  IdUtils.getUnresolvedServiceId()

Finally found the time to submit an improved solution in #1064 building on your guidance from your comments in #1046


Only generate child jobs if they do not exist

Signed-off-by: lanxia<EMAIL_ADDRESS>

Yes, that is correct. Also, for jenkins that does not have openjdk-jenkins-helper@master configured (i.e., openj9 Jenkins), the script will always generate new child jobs. https://ci.eclipse.org/openj9/job/Grinder/1639/console


failed to create symbolic link '/opt/oracle/product/<IP_ADDRESS>/dbhome_1/dbs/orapwORCLCDB': File exists

Hi,
When running:
docker run --rm -it --privileged --name oraee12 --shm-size="2g" -p 1521:1521 -p 5500:5500 -e ORACLE_PWD=Password -v /datadrive:/opt/oracle/oradata oracle/database:12cee I am getting this error:

ORACLE PASSWORD FOR SYS, SYSTEM AND PDBADMIN: Password

LSNRCTL for Linux: Version <IP_ADDRESS>.0 - Production on 28-DEC-2018 20:09:01

Copyright (c) 1991, 2016, Oracle.  All rights reserved.

Starting /opt/oracle/product/<IP_ADDRESS>/dbhome_1/bin/tnslsnr: please wait...

TNSLSNR for Linux: Version <IP_ADDRESS>.0 - Production
System parameter file is /opt/oracle/product/<IP_ADDRESS>/dbhome_1/network/admin/listener.ora
Log messages written to /opt/oracle/diag/tnslsnr/cb29c8ef400d/listener/alert/log.xml
Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1)))
Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=<IP_ADDRESS>)(PORT=1521)))

Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1)))
STATUS of the LISTENER
------------------------
Alias                     LISTENER
Version                   TNSLSNR for Linux: Version <IP_ADDRESS>.0 - Production
Start Date                28-DEC-2018 20:09:02
Uptime                    0 days 0 hr. 0 min. 0 sec
Trace Level               off
Security                  ON: Local OS Authentication
SNMP                      OFF
Listener Parameter File   /opt/oracle/product/<IP_ADDRESS>/dbhome_1/network/admin/listener.ora
Listener Log File         /opt/oracle/diag/tnslsnr/cb29c8ef400d/listener/alert/log.xml
Listening Endpoints Summary...
  (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1)))
  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=<IP_ADDRESS>)(PORT=1521)))
The listener supports no services
The command completed successfully
[WARNING] [DBT-10102] The listener configuration is not selected for the database. EM DB Express URL will not be accessible.
   CAUSE: The database should be registered with a listener in order to access the EM DB Express URL.
   ACTION: Select a listener to be registered or created with the database.
Copying database files
1% complete
ln: failed to create symbolic link '/opt/oracle/product/<IP_ADDRESS>/dbhome_1/dbs/orapwORCLCDB': File exists
ln: failed to create symbolic link '/opt/oracle/product/<IP_ADDRESS>/dbhome_1/network/admin/sqlnet.ora': File exists
ln: failed to create symbolic link '/opt/oracle/product/<IP_ADDRESS>/dbhome_1/network/admin/listener.ora': File exists
cp: cannot stat '/opt/oracle/oradata/dbconfig/ORCLCDB/oratab': No such file or directory

LSNRCTL for Linux: Version <IP_ADDRESS>.0 - Production on 28-DEC-2018 20:09:46

Copyright (c) 1991, 2016, Oracle.  All rights reserved.

Starting /opt/oracle/product/<IP_ADDRESS>/dbhome_1/bin/tnslsnr: please wait...

TNSLSNR for Linux: Version <IP_ADDRESS>.0 - Production
System parameter file is /opt/oracle/product/<IP_ADDRESS>/dbhome_1/network/admin/listener.ora
Log messages written to /opt/oracle/diag/tnslsnr/cb29c8ef400d/listener/alert/log.xml
Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1)))
Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=<IP_ADDRESS>)(PORT=1521)))

Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1)))
STATUS of the LISTENER
------------------------
Alias                     LISTENER
Version                   TNSLSNR for Linux: Version <IP_ADDRESS>.0 - Production
Start Date                28-DEC-2018 20:09:48
Uptime                    0 days 0 hr. 0 min. 0 sec
Trace Level               off
Security                  ON: Local OS Authentication
SNMP                      OFF
Listener Parameter File   /opt/oracle/product/<IP_ADDRESS>/dbhome_1/network/admin/listener.ora
Listener Log File         /opt/oracle/diag/tnslsnr/cb29c8ef400d/listener/alert/log.xml
Listening Endpoints Summary...
  (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1)))
  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=<IP_ADDRESS>)(PORT=1521)))
The listener supports no services
The command completed successfully

SQL*Plus: Release <IP_ADDRESS>.0 Production on Fri Dec 28 20:09:48 2018

Copyright (c) 1982, 2016, Oracle.  All rights reserved.

Connected to an idle instance.

SQL> ORA-01078: failure in processing system parameters
LRM-00109: could not open parameter file '/opt/oracle/product/<IP_ADDRESS>/dbhome_1/dbs/initORCLCDB.ora'
SQL> Disconnected
The Oracle base remains unchanged with value /opt/oracle
#####################################
########### E R R O R ###############
DATABASE SETUP WAS NOT SUCCESSFUL!
Please check output for further info!
########### E R R O R ###############
#####################################
The following output is now a tail of the alert.log:
starting up 1 dispatcher(s) for network address '(ADDRESS=(PARTIAL=YES)(PROTOCOL=TCP))'...
2018-12-28T20:09:32.752545+00:00
MMNL started with pid=31, OS id=501
starting up 1 shared server(s) ...
Starting background process TMON
ORACLE_BASE from environment = /opt/oracle
2018-12-28T20:09:32.844124+00:00
TMON started with pid=35, OS id=507
2018-12-28T20:09:33.150176+00:00
ALTER DATABASE   MOUNT

I have given permission to the mount volume and if I remove -v it does work. I am not sure what is going wrong.

Closing due to lack of response.


status and diagnostic information could not be printed for remote-ssh coinnection

Does this issue occur when all extensions are disabled?: Yes (only enable "Remote-SSH" and "Remote-SSH: Editing Configuration Files" extensions

VS Code Version: 1.67.2
Local OS Version: Windows 10 Enterprise 20H2 19042.1083
Remote OS Version: Ubuntu 18.04.5 LTS
Remote Extension/Connection Type: SSH

Steps to Reproduce:

Remote-ssh to a remote Ubuntu server
Add two folders on the remote Linux server into an untitled workspace
Run code -s in the Windows CMD to get status of the local and remote VS Code processes
The "Connecting to 'SSH: linux_terminal_server' could not be established stdout maxBuffer length exceeded" is showed in the bottom of the status report.
(The status of local VS Code processes report seems to work fine. All the hardware, local processes, and local workspace information is printed correctly.)

Yes, I could successfully connect to my remote Linux server with remote-ssh and everything works fine.
The only problem is that the CLI command code -s and the "Process Explorer" in VS Code could not get the remote Linux status (e.g., it should get information about processes and some hardware information), but only show the information about local Windows system.

@aeschli I'm unfamiliar with this, you seem like the right owner?

Rachel implemented the remote (and local) status support. I helped her wiring the remote cli to the getSystemStatus call which is implemented on main.
https://github.com/Microsoft/vscode/blob/main/src/vs/platform/issue/electron-main/issueMainService.ts#L353
I think that one then again reaches out to the remote to get information from the remote.
I don't know what information is expected to be shown. On WSL I see the Windows processes, but from WSL I just see a summary of basic info (OS Version, CPIs, Memory)

Currently, sometimes if it works correctly, it shows the process stack on the remote server (the child processes spawn by the remote-ssh server entry program got listed as long as some basic hardware information).
I think that information helps a lot for users (like me) to write some CI or automatical job to periodically monitor the status of the remote processes spawn by VS Code, remote hardware usage IMHO.

Revalidated this today on stable 1.95.3 and Ubuntu 24, the issue still exists 🐛 The error message had improved though - I get Connection to '{HOSTNAME}' could not be established now.


E2E random failures

Let's try to track E2E random failures in an ongoing effort to make them more stable.
Active
None
Skipped

29-host.dashboard.test.js

host dashboard

mark pending application approved

CypressError: Timed out retrying: Expected to find element: '.inputField.name input', but never found it.

Skipped in: https://github.com/opencollective/opencollective-frontend/pull/3670

Still happening
https://github.com/opencollective/opencollective-frontend/pull/3713/checks?check_run_id=512218884


There is no error if the backup failed from API call

Basically, it shows that everything is OK.
But in fact, the backup was failed due to a connection error from docker to local MySQL.
Related to #389

Not valid anymore


can't use chinese in datasource

const dataSource = [{
key: '1',
name: "冰冰",
age: 32,
address: "胡迪"
}, {
key: '2',
name:"冰冰",
age: 42,
address: "胡迪"
}];
const columns = [{
title: '姓名',
dataIndex: 'name',
key: 'name',
}, {
title: '年龄',
dataIndex: 'age',
key: 'age',
}, {
title: '住址',
dataIndex: 'address',
key: 'address',
}];
This is my datasource.

it does not support chinese?

Did you want to render Chinese headers ? I mean : key, name, age, address .

@abdennour Hi! I have the same problem that, both header and content have to output in Chinese. However the output is garbled now.

I can output header in English,no wrong.but I also need to output content in chinese;

使用BOM的方式解决，在数据开始添加  \uFEFF。
修改core.js
encodeURI('data:text/csv;charset=utf-8,\uFEFF' + toCSV(data, headers, separator))
encodeURI(data:text/csv;charset=utf-8,\uFEFF${toCSV(data, headers, separator)})

Thank you @jiangbing9293  for the hint , a new release will be soon accordingly.

Associated NPM 🚚 release is : 1.0.6 .

@JjiaoLiu  @tonylkc  : Please, let me know if it is fixed from your side .

I think that \uFEFF character shouldn't have a comma after it. As it is, I get an extra blank heading, so the column headings and values don't match.

so cool!


Added compile time checks

Added compile time checks in file avx2.h, sse2.h and sse4.1.h

This looks great, thanks!  I rebased and merged it.
Sorry about CodeCov still not working.  I'm pretty sure the problem is https://github.com/codecov/codecov-action/issues/29 and it sounds like that should be fixed soon.  I've added 97643fd4da14c83bc378976e84f7ddd8b97967b8 as a temporary work-around, so hopefully your next PR will either work correctly (if that issue is fixed), or at least not cause the whole build to break.


Q to quit does not work - just continues

True, but [Hit Q....] is not part of the script, but provided by 'pager on'. [Hit Q...] never worked (fore me) with pager on, only with cat.
Only escape is to end the script with Ctrl+C
In case of /P, pager is set on by line 18 (original pager status is available from line 18, and is given back after closing the script in line 87.

My problem with pager is that pager blocks writing keys to the (bios) keyboard buffer. So 'head' and 'tail' have always the same value, so interrupt will never exist....
Following script will only escape a loop with 'pager off' (subroutine :keycodes is not needed to get 'interrupt', set /p can be used too)
errorcheck off
setlocal && set * && set STOP=%STOP%
read 0x41A &; set /A read41a=%@retval% &; set head=0x%read41a:~-2,2% && set tail=%read41a:~0,4% &; if not %head%==%tail% && set /A readkey=0x400+%head% &; read %readkey% &; set /A intkey=%@retval% &; set intkey=0x%intkey:~-4,4% && write --bytes=1 0x41A %tail%
if %intkey%==0x11B && echo -P:2200 -n $[0x0F]Printing to screen interrupted, Abort? N/Y && set STOP= &; pause --test-key &; set /A keycode=%@retval% &; call :keycodes "%keycode%" "STOP" &; set keycode= && set key= && if %STOP%==zyx && set STOP=
Abort? N/Y && set STOP= &; pause --test-key &; set /A keycode=%@retval% &; call :keycodes "%keycode%" "STOP" &; set keycode= && set key= && call :cleanline "1" "1" &; if %STOP%==zyx && set STOP=
-P:0102 -n %textcol%Continue %mode%ing...
if %intkey%==0x11B &; if %STOP%==Y && echo -P:2300 -n $[0x0F]Printing to screen aborted by user ! set STOP= && echo -P:2402 -n Continue printing to screen...
endlocal && set STOP=%STOP%
##next line can be used in script to disable printing to screen
if %STOP%==Y && set PRINT= && clear

v0.7.2
Interrupt [Hit Q...] is working to abort further printing to screen of lines containing counted 'phrase' and exit script
Highlighted of each 'phrase' inside lines printed to screen

great work. :-) 💯
I suggest that you AND the key code with 0xff so that it also works under grub4dos for EFI (as it does not work at the moment)
e.g.
 set /A keycode=%@retval%&0xff
and then test for 51 or 71
Also, I would prefer if it did not repeat the same line when using /P - maybe a /P1 switch and if line number was same as previous line number then do not print the line?

Alright, please test version below on grub4dos for UEFI.
BTW can you tell me how grub4dos for UEFI handles keycodes with 'pause --test-key' ? In case of chars seems simple to me, but how about keys like 'Enter' or 'Escape'?
Also switch /P1 added, only two new lines and three additions to setlocal/ endlocal...

TEXTSTAT.ZIP

under UEFI the pause --test-key results are not always the same (especially the top bytes)
Here is ESC and ENTER keys

New version seems to work under grub4efi for Q for quit now. P1 needs to be added to help text.
There seems to be a diffence between grub4dos and grub4efi however when using count (and graphicsmode screen)
grub4efi 2022-07-19  (not displaying string)

seems OK if using /P though???

also tested grub4efi 2022-11-28 which seems to also be buggy but in same way (in 800x600).
grub4dos 2022-10-11 and 2022-11-28

Probably  grub4efi bugs???

About UEFI key codes: in UEFI specs v2.6 I found a (bit vague) sentence about 16-bits UNICODE characters for keys. The wikipedia article on unicode seems to be a (partly?) corroboration about your suggestion to use %@retval%&0xff
Unicode character for 'Enter' is U+000D (bios scancode 0x1C0D) for Carriage return and 'Escape' U+001B for ESC (bios scancode is 0x11B), so last lowest byte seems 'good'
Ctrl+A - Ctrl+Z same as lowest byte of bios scancodes. Shift+ codes for Latin seem to be same as ASCII on first sight.
Only Alt+ and numlock codes like 0x2100=Alt+F and 0x5032=NumlockOff+Shift+Arrow-Down (0x4838 for Up) ?? BTW I use these in my Text-editor.
About /P1 in 'Help': will be added now, I provided just a test-version in TEXTSTAT.ZIP ('v0.7.3_Vbox' is not a 'ready' version).

YaYa says that grub4efi does not support background colours in graphicsmode. Background colours can only be produced if in text mode under grub4efi in my testing.
This means your color code of $[0x70]  just prints black text on a black background under grub4efi.
Could you change your colours so it uses a black background color and a different foreground color?
Here is Alt+Q, Ctrl+Q and Alt+Ctrl+Q under grub4efi

Up = 14000
Down = 25000

Thanks for codes, so Ctrl+ is NOT same as ASCII control-codes
You can try TEXTSTAT_grub4efi.G4B (already try-version 0.8 because of a new switch)
Please FIRST try text-mode - best set BEFORE boot
SECOND graphics-mode (auto-switching background/ foreground color, but maybe you can't go back to text-mode without Reset (if grub4efi has same issue you raised for grub4dos)
TEXTSTAT_grub4efi.v0.8H_VB.zip

latest version of grub4efi (BETA) now supports background color - e.g. $[0x70] works now
however, your latest TEXTSTAT_grub4efi.v0.8H_VB.zip does not work in grub4efi  in text mode (graphicsmode 3). OK in graphicsmode -1 800  or 1024.
This seems to be a bug in latest grub4efi but I am not sure where!

Thanks.
In that case a grub4efi version will not be needed.
In readme for next version I will make a remark about grub4efi and graphicsmodes

I made a version which should work in grub4efi text mode too (BOOTx64.EFI only, can't start BOOTIA32.EFI in VBox [Version 6.1.38 r153438 (Qt5.6.2)].
However I had to made dirty provisions for grub4efi text-mode because 'call Fn.4' is not 'good' (in graphics modes okay).
If reading a bigger text file with switch /R in grub4efi, I got a crash after about 40-50 screens. It seems 'clear' is no longer working (all modes!). After next start some error about 'malloc memory'.

BTW changing used memory areas made no difference (command 'displaymem' used too, I saw no problems with my defaults).
BTW2 switch [/]R overrules switch [/]COUNT
Can not reproduce the problem with writing 40-50 times a few thousand characters to screen and then give command 'clear'.
Maybe the problem has to do with (too many) repetitions of setlocal/ endlocal ?
Test version:
TEXTSTAT.v0.8ZB_VBox.zip.txt

I had similar issues with crashing, etc. too. grub4efi is just buggy!


[Peek] Formatting XML, JSON, SQL...

Description of the new feature / enhancement
Adding functionality to format the file into a readable form according to its format (XML, JSON, SQL, etc.)
Scenario when this would be used?
I work with a lot of XML, JSON, SQL files that are not formatted to take up less disk space. It would be very helpful if in Peek, in addition to previewing the file, I could also format it into a readable form.
Supporting information
No response

/dup #27406


How can I control speaker volume for MAX98357 I2S (IDFGH-9884)

Answers checklist.

[X] I have read the documentation ESP-IDF Programming Guide and the issue is not addressed there.
[X] I have updated my IDF branch (master or release) to the latest version and checked that the issue is present there.
[X] I have searched the issue tracker for a similar issue and not found a similar issue.

General issue report
I have a MAX98357 I2S module, I want to control it's volume.
How do I read and write its gain gpio to control the volume?

Do you mean controlling the gain of MAX98357? According to the datasheet, it seems to be controlled by pull-up/pull-down resistors.

What api should I use to control it? pwm? gpio? ledc?

chatgpt tell me:
#include "driver/gpio.h"
#include "driver/dac.h"

void set_volume(int volume) {
    gpio_set_direction(GPIO_NUM_25, GPIO_MODE_OUTPUT);
    int voltage = volume * 255 / 100;
    dac_output_voltage(DAC_CHANNEL_1, voltage);
}

Is it correct?

The ChatGPT didn't give a correct answer... You can search the datasheet of MAX98357 online or the official website of Analog Devices
Here is the datasheet I found:
https://www.analog.com/media/en/technical-documentation/data-sheets/MAX98357A-MAX98357B.pdf
In the section Gain Selection, the table shows how to set the gain by pull-up or pull-down by specific resistor:

That means the gain should NOT controlled by a GPIO theoretically, it's supposed to be fixed according to your PCB design. If you have to control it by a GPIO, you may try to tie a GPIO to the SD_MODE pin of MAX98357 and set the gpio  pulled up/ pulled down or float to select the different gain. But I can't guarantee it will work, please read the MAX98357 datasheet carefully to see if it support to be controlled by a GPIO.

thanks!

maybe problem solve whit 100k pot.
Because manual says need analog voltage


Bug: an optional dependency treated as a wildcard.

Describe the bug
I have a crate which is using url as an optional dependency (Cargo.toml below). And, for whatever reason, carg-deny seems to treat url as if it was a wildcard dependency.
Of note, I have other, internal, dependencies which are git with pinned commit (see #554 ), and sorting alphabetically, url is the first dependency after those, so it may be an off-by-one error.
[package]
name = "redacted"
version = "0.1.0"
edition = "2021"
publish = false

[features]
default = ["page-switcher"]
page-switcher = ["url", "zbus"]

[dependencies]
anyhow = "1.0.63"
async-nats = { optional = true, version = "0.31.0" }
bytes = "1.4.0"
clap = { version = "4.0.28", features = ["derive", "env", "unicode", "wrap_help"] }
futures = "0.3.26"
lazy_static = "1.4.0"
metrics = { optional = true, version = "0.21.0" }
metrics-exporter-prometheus = { optional = true, version = "0.12.0" }
num-traits = { optional = true, version = "0.2.15" }
shadow-rs = "0.23.0"
smart-default = "0.7.1"
thiserror = "1.0.37"
url = { optional = true, verison = "2.4.0" }
valuable = "0.1.0"
zbus = { version = "3.13.1", optional = true, default-features = false, features = ["tokio"] }

# internal dependencies
u-redacted-dep-1 = { optional = true, git =<EMAIL_ADDRESS>rev = "54228bfabb8bd7071f5e26569984d23a58ea5d72" }
u-redacted-dep-2 = { git =<EMAIL_ADDRESS>rev = "54228bfabb8bd7071f5e26569984d23a58ea5d72" }
u-redacted-dep-3 = { optional = true, git =<EMAIL_ADDRESS>rev = "54228bfabb8bd7071f5e26569984d23a58ea5d72" }
u-redacted-dep-4 = { git =<EMAIL_ADDRESS>rev = "54228bfabb8bd7071f5e26569984d23a58ea5d72" }

u-redacted-dep-5 = { git =<EMAIL_ADDRESS>rev = "f75a3833105b3dfa88b9677e39b031c60a80fd5f" }
u-redacted-dep-6 = { git =<EMAIL_ADDRESS>rev = "f75a3833105b3dfa88b9677e39b031c60a80fd5f" }
u-redacted-dep-7 = { git =<EMAIL_ADDRESS>rev = "f75a3833105b3dfa88b9677e39b031c60a80fd5f" }
u-redacted-dep-8 = { git =<EMAIL_ADDRESS>rev = "f75a3833105b3dfa88b9677e39b031c60a80fd5f" }
u-redacted-dep-9 = { git =<EMAIL_ADDRESS>rev = "f75a3833105b3dfa88b9677e39b031c60a80fd5f" }

[dependencies.tracing]
version = "0.1"
default-features = false
features = ["max_level_trace", "release_max_level_debug", "valuable"]

[dependencies.tokio]
version = "1.18.2"
default-features = false
features = ["macros", "net", "rt", "rt-multi-thread", "signal", "sync", "time"]

[build-dependencies]
shadow-rs = "0.23.0"

[profile.release-lto]
inherits = "release"
lto = "thin"
codegen-units = 1
strip = true

To reproduce
I have no idea how to reproduce this, but if necessary I can work on making a minimum reproduction.
cargo-deny version
cargo-deny 0.14.1
What OS were you running cargo-deny on?
Linux
Additional context
No response

You misspelled version

Just noticed it myself, thank you.


ComboBox selection via typing only does not work as expected

E.g. taking the default example from the docs:
<script>
  import { ComboBox } from "carbon-components-svelte";
</script>

<ComboBox
  titleText="Contact"
  placeholder="Select contact method"
  items={[
    { id: "0", text: "Slack" },
    { id: "1", text: "Email" },
    { id: "2", text: "Fax" },
  ]}
/>

If one types Email and presses Enter, the component will select Slack instead. Highlighting and selecting different items only works via arrow keys, which defeats the point of having a text-based input.
The React implementation gets this somewhat right:

When e.g. Option 2 is typed, the corresponding option is highlighted
When Enter is pressed the highlighted option is selected

Ideally it should highlight Option 1 as soon as Option is typed, which does not happen. It also hijacks the Home and End keys, which I do not approve of, as those can be useful for editing the text in the field.
Tested on Windows 10 in Chrome and Firefox.

@brunnerh @metonym I think I could resolve this issue.

Fixed in v0.67.5


Clean output option

Hats off and thanks for this handy utility 👏🏻.
Could I request addition of an option that produces only the hash without the directory appended?
Right now I get, for example, this output:
f3204e77fa886c346f338d813af766d0  /MyDir
Would like the new option to produce only:
f3204e77fa886c346f338d813af766d0
Ail the best.

There is now a --hash-only that does this in v1.2.0!
You can run one of the following commands to upgrade:

brew upgrade ultimateanu/software/hashdir
dotnet tool update --global hashdir


Reduce compensatory Bee spawning

The SimpleAdminHack "BeeKeeping" was added in Civclassics to firmly establish bees in its 1.10.2 world given that they were added in 1.15. The hack converts 10% of all Chicken, Cow, Pig, Sheep, and Rabbit spawns to bees. But since CivMC has naturally occuring Bee Nests, plus Sapling generation is more commonly known now, it seems like this spawn mechanic is no longer necessary and should be disabled (set to 0)

I don't think RB utilises the sapling generation thing, it was something that continues to annoy me about the grower system in RB.
I do agree with this PR tho, let's give more priority to animal spawns that might be useful elsewhere


⚠ ClamAV has degraded performance

In 6db37b4, ClamAV (https://spamassassin.apache.org/) experienced degraded performance:

HTTP code: 200
Response time: 81 ms

Resolved: ClamAV performance has improved in 601ce21.


Added support for Async methods, fixed usage of HttpClient, exposed XElement for usage by consumers

Added proper async methods for downloading the feed
Fixed the usage of the HttpClient
Exposed the XEelment on both BaseFeed and BaseFeedItem so the consumer of the library can access other elements than the ones provided, eg: itunes tags
Added extension method for reading iTunes metadata Feed.GetItunesChannel() and FeedItem.GetItunesItem()

I commented also two unit tests that were not valid, the rest of the test run succesfuly

The new commit, addresses all the comments

Since iTunes usage is extremely popular for RSS feeds, I've also took the liberty of adding Extension methods for reading the iTunes tags

I forgot to bump the version number, will you be doing that and update the nuget package?
Thanks!

it's already done. I did some refactoring, added some comments/documentation and updated the version and the nuget package.

I saw commits, awesome, thanks!


Proof of concept for newer CSS API

The idea is to get rid of existing API calls where we try to mimick one-slot string union type values via enum.
Instead it is supposed to use specialized methods.
This is proof of concept, we also have inline vals as in CSSEnums and the idea is to choose the best syntax based on what will generate smaller bundles.
However it give idea what we are up to (regardless of what syntax we'll choose - it won't affect the API we are providing for users).

Decided to move in a differente direction


Environments filtering doesn't work correctly

We try to filter application's environments using Acquia API (by URL query param).
URL looks like that:
https://cloud.acquia.com/api/applications/{applicationId}/environments?filters=name%3Dtest_env_name

But we get the full list of application's environments, not the specific one.
The API docs are saying that we can filter them:
https://cloudapi-docs.acquia.com/#/Applications/getApplicationEnvironments
What could be a reason of it ?

Thanks for reporting this @darlev91, my first guess is that this comes from Acquia, but I'll take a look as soon as I have some time.

Hi @darlev91, I've just tried
    apps = acquia.applications(filters="name=mysubscriptionname")
    app = apps.first().data
    print(app)

This worked fine for me on a specific subscription name.
Can you try with that?

Hi, @pmatias
The problem is not in applications filtering, the problem is in application.environments filtering.
I've just tried it and seems like nothing was changed.
I'm using next code to get Acquia client:
>>> from acapi2 import Acquia
>>> c = Acquia()

And next code line to get list of environments:
>>> envs = c.applications().first().environments()

It gives me the same result as next code line:
>>> filtered_envs = c.applications().first().environments(filters="name=dev")

But I think the last line of code should give info about only one environment.

I see. Thanks for clarifying. I'll take a look again.

I can confirm the filters are not working for this endpoint. I've raised the issue with Acquia.
In the meantime
envs = c.applications().first().environments()
print(envs["dev"])

Should work as a workaround.

Will be out with 2.0.1


After deleting and recreating a Web App Bot that was connected to the GroupMe channel, I now can't update or delete the GroupMe channel connection

I created a Web App Bot, which I connected to the GroupMe channel. Later on, while attempting to delete a different resource, I accidentally deleted this Web App Bot instance, so I had to recreate it. Now, after recreating it, when I try to add the GroupMe Channel to the bot, it comes up already prefilled with my Access Token and Client ID, but if I try to save or delete the channel connection, I get an error that says:

Unable to save. Failed to register with GroupMe with: Unauthorized ID: {a bunch of letters, numbers, and symbols}

or

Couldn't delete. Empty service error response. ID: {a bunch of letters, numbers, and symbols}

Is there any way I can clear out this vestigial channel connection so that I can reconnect my Web App Bot to GroupMe?

Update: It turns out that what was coming up prefilled was not actually the correct access token. If this fails to reproduce on your end, I'm willing to concede that this could have been some sort of browser autofill issue on my end. Apologies if that's the case!

@sphanley, Hello again!!! I tried to repro your issue. However, when I tried to add the GroupMe channel to the bot, it did not come up prefilled with the Access Token and Client ID. I am guessing it was due to some browser related issue which autofilled the details. Hope this helps!!

Hi @anusharavindrar - thanks for looking into it, I agree that it was probably a local browser issue. Apologies for the false alarm!


Google Sign-In Button For PHP using css does not work

Hey,
I am running into a constant error "cookiepolicy is a required field" when trying to implement the Google Sign-In button, using the images given on the developers website. I'm using CSS for the button sizing.
Here Is the CSS:
.g-signin     {       background-image: url(../Pictures/google_signin_buttons/Google_signin_button.sketch);       font-family: 'Roboto', sans-serif;       color: white;       width: 200px;       height: 50px;       border-radius: 10px;       border-style: solid;       padding-left: 50px;     }     .google-btn     {       background: url(../Pictures/google_signin_buttons/web/2x/btn_google_signin_dark_normal_web.png) no-repeat;     }
I have also added these for the Google API:
   <meta name="google-signin-scope" content="profile email">     <meta name="google-signin-client_id" content="CLIENT_ID.apps.googleusercontent.com">     <script src="https://apis.google.com/js/api:client.js"></script>     <script src="https://apis.google.com/js/platform.js" async defer></script>     <link href="https://fonts.googleapis.com/css?family=Roboto" rel="stylesheet">
And to note, this is a school summative and my teacher made the whole API file to sign in using google, so i cant add anything...

Your question is not related to this library. StackOverflow is probably the right place to ask it.


Create a Local Test Network page have some outdated examples

This page has an outdated example: https://docs.avax.network/quickstart/create-a-local-test-network
The following example is probably outdated if I'm not missing something:
cd ${HOME}/go/src/github.com/ava-labs/avalanche-network-runner
go install -v ./cmd/avalanche-network-runner

The contents of the cmd folder as of today are:
drwxrwxr-x 2  4096 Tem 21 22:56 control
drwxrwxr-x 2  4096 Tem 21 22:56 ping
-rw-rw-r-- 1  877 Tem 21 22:56 root.go
drwxrwxr-x 2 4096 Tem 21 22:56 server

There is no file named avalanche-network-runner. In addition, event when I install root.go I can't find the avalanche-network-runner command anywhere in my system.
Thank you.

Well I had to run "go install" first in the repo folder. Have a nice day and sorry about the issue.


Update DocSearch

DocSearch had migrated its infrastructure and now we(users) will have more control over it through crawler and also we can view analytics on Algolia Dashboard

Search still works on the deploy preview, looks good to me!


Add support in scoring script for experiments ran w append_timestamps flag

Currently the scoring code takes in an experiment directory with the following structure:
+ experiment_directory_name
 + workload_name
  + trial_number
   - eval_measuremnts.csv

When the submissions are run with append_timestamp the experiment_directory_name will be experiment_directory_name_. Our scoring code currently does not support finding  and grouping eval_measurements.csv files in experiment directories with the same name but different timestamps.
I think, ideally, we want to pass in an experiment_directory_name without timestamp. The scoring script should look for all experiment directories that match this name (with or without timestamp) and collect the eval_measurements.csv files as one experiment.
Alternatively, we can instruct the submitter to organize files as the scoring script expects them.

Fixed in https://github.com/mlcommons/algorithmic-efficiency/pull/537


Replacing the version 0.1.2 with 0.1.1 does not work in sample application

I am trying to use the latest version on msal.js updated from 0.1.1
to
In sample application.
Now I do not get the popup for signin.. can you please let me know if api has changed.
Sample used
https://github.com/Azure-Samples/active-directory-javascript-singlepageapp-dotnet-webapi-v2
Thanks,
Arun

I'm getting the same behavior - no login popup when using the link:

Figured out the problem. The the loginPopup method is expecting a scopes parameter. Once I provided a valid parameter value, the loginPopup window appeared as expected.

@btitular @ArunMudiraj Thank you pointing out this issue. Please pass an array to loginPopup as loginPopup([clientId]) or loginPopup([scopes]) to resolve this issue. I have fixed this issue in the dev branch. We will add clientId as default scope for loginPopup for the next release.


Config change for fax

I rule and have completed some work on Case Manager that's ready for review!
I don't really like the design pattern I used here, primarily because there's both a service and url portion. Config is a little bloated, could use some thinning.
This pull request makes the following changes:

Fax env var to config.

(If there are changes to the views, please include a screenshot so we know what to look for!)
It relates to the following issue #s:

Bumps #1495

@vraravam Hey, i'd like to hand this issue over to you if you'd like. I don't have as much domain knowledge on the performance aspects.

@tingaloo - I'm going to create a new PR with all of my changes - will attribute some of the work to you (but, I dont feel comfortable committing on top of yours due to lots of differences in opinion).

I think a takeaway I have is that our config model is starting to break a little bit. We were previously only really using it for drop down options, and it doesn't apply as well to singleshot stuff like this. Not something we have to immediately resolve but it's def a little too magical in a weird way right now.


build: convert package names to lowercase

I've converted all package names of dependencies to lowercase because I think it looks nicer and more consistent. Since the dependencies are sorted already, I infer these kinds of details also matter to you. :wink:

Codecov Report

Merging #753 (9e3e487) into master (fc6bb03) will decrease coverage by 0.20%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master     #753      +/-   ##
==========================================
- Coverage   96.62%   96.41%   -0.21%
==========================================
  Files          41       41
  Lines        2930     2929       -1
==========================================
- Hits         2831     2824       -7
- Misses         99      105       +6

Flag
Coverage Δ

unittests
96.41% <ø> (-0.21%)
:arrow_down:

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files
Coverage Δ

tests/test_tools.py
68.00% <0.00%> (-24.00%)
:arrow_down:

copier/cli.py
96.47% <0.00%> (-1.18%)
:arrow_down:

copier/user_data.py
93.66% <0.00%> (+0.42%)
:arrow_up:

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

Me like. Slugified distribution names for the win.


Make parser use variants

Parser was written before generic variants were, so might as well update it to use that functionality

Spent some time rewriting parser then decided this is a waste of time. Restored previous code. Maybe this can be something to do one day if I decide to rewrite parser


Feature Request - span across multiple displays.

Hi, Thanks for a great project. If possible; it would be great if the video could span across multiple displays.

Sorry, I missed this in the setting, great appl


Feature Request: No line between DATA declaration of a table and initialization

Hi,
to loop over a list of "options", I want to create a "quasi-constant" table containing these constants.
I think there is no way in ABAP other than to do it like this:
  METHOD get_confirmed_quantity.
    DATA conf_cats TYPE STANDARD TABLE OF zb_c_purgdocsupplierconfirmati-SupplierConfirmationCategory WITH EMPTY KEY.

    conf_cats = VALUE #( ( 'AB' ) ( 'LA' ) ). " sometime there is just Lieferavis without Order Confirmation

    LOOP AT conf_cats INTO DATA(conf_cat).

However, ABAPCleaner then separates the DATA and its initialization, which I would prefer it not to do in this special case.
(I know, this is a very small detail, still I wanted to share this.)
Best regards,
Edo

Hi Edo,
currently, I'd rather label this "no defect", because the idea behind this empty line – to separate upfront declarations from executable statements – is still valid here, isn't it?
If you prefer an inline declaration, you could alternatively define a table type first (maybe even on class or global level is this table type could be useful in different places?) and then use it as the type of the VALUE constructor:
  METHOD get_confirmed_quantity.
    TYPES ty_tt_sup_conf_cat TYPE STANDARD TABLE OF zb_c_purgdocsupplierconfirmati-SupplierConfirmationCategory WITH EMPTY KEY.

    DATA(conf_cats) = VALUE ty_tt_sup_conf_cat( ( 'AB' ) ( 'LA' ) ).

    LOOP AT conf_cats INTO DATA(conf_cat).

Kind regards,
Jörg-Michael

Hi Jörg-Michael,
maybe we misunderstood each other?
I want to use the variable as a constant (semantically). Technically however, ABAP does not offer a syntax for this (only for simple variables, not for tables).
Because it is semantically a "declaration of a constant" I do not like to have the separation line in the middle of it.
The question is whether ABAPCleaner can detect such a "pseudo-constant" (a table which is immediately initialized) and suppress the line separation at this position.
Again, I am aware it is a very tiny detail (not a defect at all), but I wanted to let you know that this use case exists.
Best regards,
Edo

Hi Edo,
ah, yes, now I understand your point! But then a number of questions come to mind:

What if the VALUE statement used an importing variable in some place – VALUE ty_tt_any( ( 'A' ) ( 'B' ) ( iv_any ) ( iv_other ) ) – then it wouldn't be a "pseudo-constant" anymore, right?
What if the VALUE statement used a constant, possibly in the form of cl_any_inferface=>co_any_constant? – I guess you could still consider it a "pseudo-constant", but ABAP cleaner couldn't determine whether the identifier really represents a constant.
What if multiple tables of this kind were initialized, would it be better to have the four lines as "declaration 1 – initialization 1 – declaration 2 – initialization 2", or rather "declaration 1 – declaration 2 – initialization 1 – initialization 2"?

So, my feeling is that this is really rather a limitation of the ABAP language… just as you said, there is no technical equivalent for this (very valid) semantic scenario, and I assume that the initialization is indeed performed at runtime each time the method is called (not at compile time into a static storage).
Kind regards,
Jörg-Michael

Hi Jörg-Michael,
I think you are right. This cannot be easily overcome by ABAP Cleaner.
Best regards,
Edo


Total surface pressure being reset to 1 bar when allowing partial pressures to update from helpfile

Currently in the master branch, the flags passed to SPIDER which set the initial partial pressures of each volatile *_initial_atmos_pressure are not updated at runtime. They are left at the initial values provided in the configuration file, and as a result the partial pressures don't really change throughout the simulation. They do change slowly, as they are allowed to evolve during each SPIDER call, but then are reset at the start of the next SPIDER call. This is evident in the plot_global graph (see figure below, specifically subplot D).

If we introduce a patch to the RunSPIDER() function which updates the value passed via this flag according to the helpfile, we then see volatile partial pressure evolution over time. This is included in a branch called patch_230512_pressure. The results of running the code with this patch are shown in the figure below, with the same initial conditions as the one above. Allowing the partial pressures to evolve in this way also affects the solidification time, which I think physically makes sense.
However, this patch introduces a new issue where the total pressure is being reset to 1 bar after the init steps have been completed, with the partial pressures being scaled such that mixing ratios are conserved. I don't know what's causing the total pressure to be reset to 1 bar, but it's something occurring either in SPIDER itself, or in the way its JSON files are being read.

I've also included an Excel spreadsheet showing the evolution of both COUPLER_options and the helpfile, for both of these simulations: evolution_pathways.xlsx
This issue exists on both MacOS and Linux installations of the code.

In SPIDER, *_initial_atmos_pressure is only used during the construction of the initial condition for the atmosphere if IC_ATMOSPHERE is 3.  Then the code simply uses the predefined partial pressures to back-compute all other relevant quantities.  If IC_ATMOSPHERE is not 3, then *_initial_atmos_pressure is conformed to be consistent with however the initial condition was specified. Once the partial pressures of all species have been determined, it is this quantity that is evolved during the time-stepping (*_initial_atmos_pressure remains constant because it is not used).
Hence, if you are coupling the species to SPIDER using the partial pressure, indeed you must update *_initial_atmos_pressure and set IC_ATMOSPHERE=3 every time you pass control of the simulation back to SPIDER.

"However, this patch introduces a new issue where the total pressure is being reset to 1 bar after the init steps have been completed"

I can't immediately see this as a SPIDER issue.  Check the individual JSON files (particularly the first output) to confirm that the partial pressures you are putting in are the same as those that appear in the JSON.  The total atmosphere pressure, which should be equal to the sum of the partial pressures, is also given in the field atm_struct_pressure.

Thanks! That makes sense, but @nichollsh and I discussed about it, and we are not sure how SPIDER is handling  *_initial_atmos_pressure with IC_ATMOSPHERE=3 in the case of a restart at, say, t = 10; not at the very start. Does it find the matching volatile mass in the interior/melt with *_initial_atmos_pressure be treated as fixed, or does it treat *_initial_atmos_pressure as total volatile mass, and redistributes it dynamically? When doing that, and restarting PROTEUS with *_initial_atmos_pressure informed by the last time from the previous SPIDER call, we seem to lose volatile mass, see the plot by Harrison below.

Whenever SPIDER is started with IC_ATMOSPHERE=3 the value of _initial_atmos_pressure is used to determine the total mass of the volatile in the system.  This same operation happens regardless of the restart time (there is no back-determination to calculate what the initial would have been at time zero).
When the volatile mass is computed from _initial_atmos_pressure, it effectively computes the volatile mass in each of the three reservoirs: the interior melt, the interior solid, and the atmosphere.  Then it sums all the reservoirs to give the total.  This total is then conserved for the subsequent evolution until SPIDER is halted.  But once it is restarted, it will again recompute the total volatile mass if IC_ATMOSPHERE=3.

Ok, if understand this correctly (e.g. for H):

H_tot = H_melt + H_solid + H_atm,

where H_atm is set by _initial_atmos_pressure . This means, the code does (in principle)

H_atm = _initial_atmos_pressure
H_melt =  H_atm * {Atmosphere-melt volatile partition coefficient}
H_solid =  H_melt * {Solid-melt volatile partition coefficient}
H_tot = H_melt + H_solid + H_atm

So, if _initial_atmos_pressure is set to the value of the partial pressures outputted by SPIDER from the last data file, then it should end up with the same total overall mass. Is that overall logic correct?

Yes that's correct.  Not only will _initial_atmos_pressure need to be the same, but also the global melt fraction since this is used to determine the mass of melt and solid.  Of course, please run a quick check and confirm this is the case.

Ok, thanks, need to do some more tests.


[Segment Replication] Replicate *.liv file may cause performance issue

In document replication scenario, *.liv file are only be written to disk when  flush operation (Lucene commit) is performed. But in segment replication, the *.liv file must be written every refresh (by setting writeAllDeletes to true in DirectoryReader#open method).
It may not cause any problem in append-only scenario (no delete will be issued in old segment). But in update scenario, as long as there is a delete operation performed in old segment, primary shard's refresh will write full liv bitmap to disk and replicate to replica shard.
*.liv file may be very large in some merged segment (for example *.liv file for a segment with 16,000,000 docs takes up ~2MB disk space). Differ with segment data file, we cannot reuse old *.liv file when new *.liv file is generated, even if only one doc is deleted in segment, we must replicate the full *.liv file. So in segrep, write and replicate *.liv file may introduce greater network  and CPU (write and load *.liv file) load.
Several ways to fix this issue:

Write diff other than full bitmap when refresh is performed
Compress liv doc file with LZ4 or zstd

Adding some already tested results belonging to bandwidth on the wire
Performance:
Early performance tests show improvements with segment replication enabled. This run using OpenSearch benchmark showed a ~40-45% drop in CPU and Memory usage, a 19% drop in p99 latency and a 57% increase in p100 throughput.
Instance type: m5.xlarge
Cluster Details: 3 Nodes with 6 shards and 1 replica each.
Test Dataset: Stackoverflow for 3 test iterations with 2 warmup iterations.
IOPS:
Document Replication: (Read 852k + Write 71k) / 1hr = 256 IOPS
Segment Replication: (Read 145k + Write 1M) / 1 hr = 318 IOPS
Total Bandwidth used:
Document Replication: 527 Gb
Segment Replication: 929 Gb

@Poojita-Raj Any update on this?


fix: update cli Generator forceInstall parameter to install

This is a very small change. As the cli instantiates a new Generator object with the given parameters, it uses forceInstall as the option to install the given template or not. But in the generator file the constructor definition it's done by deconstructing the third argument and the argument for installing the template is forceInstall not install.
So, no matter if you specify you want to install the template, Generator.install is always false.
I could've modified all the matches to forceInstall to make it clear you want to force the installation of the template, but I don't know if that's the case - as forceWrite is indeed forcing to write the changes. I better modified a single line to make the forceInstall option to be just install.
I noticed this "failed" silently as the cli file isn't tested, which makes me ask, would it be better to add full coverage to that file in order to merge this? Or, would it be easier to add a guard clause in the Generator constructor body to return if it receives an unexpected parameter (I think it'd be easier)?
By the way, thanks for this amazing tool.

@sebastian-palma great catch! both solutions proposed by you are good but better is the one that validates incoming parameters, it's adding protection in case we make errors in cli.js and nice validation for those using the generator as a library. Would you be willing to add it to this PR or separate one?

Cool @derberg, I can keep working in this PR.

Hey @derberg, I just committed some changes. Would you mind helping me here to see if everything is okay?

Hey @derberg, just moved some things. Looking forward to another round of review. I'm wondering if it's okay with the guard clauses and your style guide.

@all-contributors please add @sebastian-palma for code


Spack package manger added

[x] I followed the CONTRIBUTING guidelines.

Below, describe what this Pull Request adds:
Mentioned spack package manager.

Nice addition! Some comments above. Just out of curiosity, did you use Spack in projects?

Only as a user.

Also here, build errors were caused by different issue, addressed previously.


last 2 days "N/A"

hey there,
is it just me or works everything except the "last 2 days" section?

I have this same issue. I dig a little deeper and did some manual time frame adjustments. Here are some other ranges that will not work (assuming now to now-x): 46-48 hours, 2751-2916 minutes,<PHONE_NUMBER>99 seconds.
Of course, if the seconds range does not work, the rest wont because they all fall within this range.

I believe I just solves this. The step interval for these graphs are set to auto. The ranges I listed pull an auto min step interval of 15s, which returns over the max number of data-points. If you change the min step to 20s, then the data displays as a reasonable number of data points is now returned.


Create a "How-To Store my Secret Data" section

Secrets Manager? I don't see where CFN supports it yet.

Is this possibly relevant? https://aws.amazon.com/about-aws/whats-new/2018/08/aws-cloudformation-introduces-dynamic-references-to-support-aws-/
I'm personally interested in the documentation on how to dynamically generate a secure string. In my case an HMAC signing key (512 bits long, 64 characters) in either a SSM secure string (preferred, cheaper) or secrets manager (also suitable, but more expensive).

Moving guide issues to doc repo.


Improve error output

If the API returns an error e.g. the token is invalid or the rate limit kicks in, an error is shown in the console, but the output is quite verbose. Maybe it's enough to show the reasons body +http status code

i can take this up,
assign this to me @stefanbuck

Go for it, thank you. Btw my last commit introduced a linting issue. I can fix it later or you can if you don't mind

No pressure, but are you still interested @chaithanyaMarripati? Otherwise I'll mark this issue as available

no im working on it @stefanbuck
i will raise something ASAP


fix mos in example

closes #64

@cdondrup OK to merge? Needs testing?

Should be fine.

Thanks.


Cache ClassInfo methods results

Expected Behavior
Per my (little) understanding of the ClassInfo class I would suggest to cache the results of the following methods:

ClassInfo#relationshipFields
ClassInfo#getEndNodeReader
ClassInfo#startNodeReader

Context
On a project I'm working on we have performance issues. We made the exercise to profile the application to fix the bottleneck.
We have identified the aforementionned methods as responsible of a fraction of the time taken (not negligible).
Please let me know if it makes sense. If so I can submit a pull request.
Your Environment

Java version: <IP_ADDRESS>5
Neo4j version (The version of the database): 3.5.21
OGM Version (The version of this software): 3.2.17
OGM Transport used (One of Bolt, HTTP or embedded): Bolt
Neo4j Java Driver version (in case of Bolt transport): 4.0.2

Thanks for reporting this (and the two others).
I just had a glance at the methods you mentioned and think that a storage of those static information could be worth the memory.
So if you are willing to submit a PR for those, go ahead. Looking forward to see your contribution.
Even though this one and #853 are pretty close together, I would prefer to have two separated PRs to avoid too much changes in a commit.

:+1:  I will work on that. Given that #850 has already tackled ClassInfo#relationshipFields I will do the 2 others one


docs: Correct key names for protocol and port in target groups

Description

Fixing some examples in the documentation. Correct key names for protocol and port in target groups.
Motivation and Context

The documentation is wrong and may cause confusion when upgrading to version 9.
It's easy to miss this because the examples silently fall back on defaults.
I suppose some type of validation could catch this earlier.
Breaking Changes

No.
How Has This Been Tested?

[ ] I have updated at least one of the examples/* to demonstrate and validate my change(s)
[ ] I have tested and validated these changes using one or more of the provided examples/* projects

[ ] I have executed pre-commit run -a on my pull request

This PR is included in version 9.2.0 :tada:


Cleaned up several sections

Made the following changes:

Added hyphens in correct spots
Changed name of 'Azure DevOps project' to 'DevOps Starter' to reflect documentation names
Fixed other minor grammatical issues

@FrankAtHexagon : Thanks for your contribution! The author(s) have been notified to review your proposed change.

#sign-off

#sign-off


koordlet: remove deprecated BEReconcile

Signed-off-by: saintube<EMAIL_ADDRESS>Ⅰ. Describe what this PR does

remove the deprecated koordlet's feature BEReconcile, while the cgroup reconciliation for BE pods is done in the runtime hook's feature BatchResource.
Ⅱ. Does this pull request fix one issue?

fixes #836.
Ⅲ. Describe how to verify it
Ⅳ. Special notes for reviews
V. Checklist

[ ] I have written necessary docs and comments
[ ] I have added necessary unit tests and integration tests
[ ] All checks passed in make test

/milestone v1.1

/hold until #887 gets merged

It has been merged.

/hold until #887 gets merged

It has been merged.

Updated.
cc @zwzhang0107 @jasonliu747 @FillZpp @hormes @eahydra

/unhold
cc @zwzhang0107 @jasonliu747 @FillZpp @hormes @eahydra

/approve


Use deviceTypeVersion returned from API

This PR records the deviceTypeVersion value when populating device info object from the returned from the /web/devices endpoint, and uses it when sending commands.
I've tested this locally via node demo.js and all commands seems to be working. Apologies ahead of time for the big diff -- the majority of the changes are just from prettier running.
Some background context:
For newer Mr. Cool Split Units, the deviceTypeVersion is different than what is originally hard-coded (BP01). For my device, BP04 is sent.
Here's a sample actionControl command payload:
{
  "action": "actionControl",
  "macAddress": "34945460CE2A",
  "deviceTypeVersion": "BI04", // <-- specifically this
  "fwVersion": "2.6.0,2.6.0",
  "actionSource": "WEB",
  "applianceType": "AC",
  "applianceId": 1663,
  "actionType": "temp",
  "actionValue": 80,
  "connection_source": 2,
  "token": "__REDACTED__",
  "actions": {
    "power": "on",
    "mode": "cool",
    "fanspeed": "auto",
    "temp": "80",
    "swing": "auto",
    "turbo": "off",
    "light": "off",
    "oldPower": "on"
  },
  "mid": "chrome-1688162917",
  "application_version": "1.0.0",
  "ts":<PHONE_NUMBER>
}

@Taik , thanks for picking this up! Work has been nuts for me recently, hence my radio-silence.
These changes are what I was hoping for, it was tricky for me to test/discover of the the device specific differences since I only have one type of Cielo device at my house.


Enable text content

This PR enable the textlayer on top of the canvases, with the text layer it's possible to select the text extracted from the PDF (#16).
Since the annotations are placed on top of the text layer, when they are very dense, it might be possible that annotations boxes and selection interfere.
This PR also update pdf.js to version 4 (#36) which fixes some vulnerabilities.

More information on this PR, in the related issue #16

@t29mato two more questions for you:

should we add a flag to disable the text layers so that user may disable them if they don't need and/or if they are not happy with their interference with the annotations?
do you have any suggestion on the z-index I hardcoded, please do let me know.

In the latest code, it's not the text layer but the annotations that interfere with text layer selection. So, I think a button to disable annotations might be a good idea. Another idea could be to have a copy menu appear when clicking on annotations, but since annotations don't have text information, that might be tricky.
I think it's fine to leave the hardcoded z-index as it is.


Parsing \\[20pt] incorrectly.

This is now parsed as two commands.

Unknown commands with no argument
\[

The second one is the evilest since it breaks the whole structure.

Fixed in 811fe86.


VerifiableCredential.Builder: allow setting json string properties

Currently, builder.properties() allows only JSONObjects.
We need to enable JSONObject | string as parameter and parse the string as json in that case, like the Java SDK allows.

Already implemented


Empty file does not get intellisense

In Code, I have it configured so that new files automatically default to F#, even without saving. In Ionide 4, if you create a new file that's not saved, you get no intellisense or anything. You have to first save the file and then Ionide kicks in.
This is confusing for newcomers because it appears as though Ionide simply isn't working, and also (I believe) is a regression from v3.

Yes, it sounds like a regression.


Test animation implementation

Squoosh provides an animation implementation, but we don't have any automated testing of animations. This ticket is to add some automated tests for the basic variant auto-animation logic; subsequent animation work can then bring in new tests.

Dupe of #919


Implement Job Log Updates

Replace command level tree item with  as the label and  as the description
The above should be colored red if the command failed (or at least the icon for it will be a red x or green check)
Add the command at the same level of the messages
Add action to toggle failures
Add action to filter in order to view above a severity level
Add action to view output for individual objects

Hmm, I am not seeing the action toggle

Hmm, I am not seeing the action toggle

The two commands that use toggle are vscode-ibmi-projectexplorer.jobLog.showOnlyFailedJobs and vscode-ibmi-projectexplorer.jobLog.showAllJobs.  I felt these were more descriptive names rather than two different "toggle" commands.

when I tested, and clicked the button, it did not toggle

when I tested, and clicked the button, it did not toggle

Hmm, odd it is toggling on my end. Can you attach a copy of the joblog.json you're using to test?


(maint) Adjust Cookie Notice Font Size

The cookie notice was inheriting the small class on the footer and
also receiving a small font size from the specified css. The small
class has been moved around the items that need it to prevent the
cookie notice from becoming extra small on narrower screens.

@designxsteph thanks for getting this fixed up, I will merge once the CI build has finished.


Windows: Does not supports SQL Aliases

I have a SQL alias configured in SQL Server Configuration Manager.
The alias is named "SqlAlias" and redirects to ".\MSSQLSERVER2016"
The following line fails to connect: mssql-cli.bat -E -S SqlAlias
On the other hand, using the natural name works fine: mssql-cli.bat -E -S .\MSSQLSERVER2016

@gerardog - this is an interesting issue.
Currently, mssql-cli does not support the SQL Alias feature. The reason being, it's not supported by .NET Core, which is what mssql-cli uses to connect to a database (via the SqlToolsService). Since SQL Alias relies on the registry, it's not a cross platform feature, so I can see why the feature was dropped in .NET Core (see issue https://github.com/dotnet/corefx/issues/2575).
There are a couple of ways to address this, so I had some questions:

How import is the SQL Alias feature. Is blocking any important scenarios for you in anyway?
If added, are you expecting a Windows only feature that works with the registry that works with SSCM? Or a more general cross platform solution that does not work with SSCM?

It's worth mentioning, SQL Operations Studio is also impacted by this (https://github.com/Microsoft/sqlopsstudio/issues/71) since it also uses SqlToolsService.

This is not a blocker for me. Seems reasonable that this should be fixed in the .net core platform as a whole.  I honestly created this as an issue assuming mssql-cli was pure python code.

Regarding your 2nd question. If this feature is implemented, I would expect mssql-cli on windows to behave same as SSMS.
A more general cross platform solution that does not work with SSCM is not of much use to me, because SQL Aliases add value only if they are a standard that many applications adhere to.


[TECompiler] Decouple TE compute and schedule lowering in ScheduleBuilder

Refactors ScheduleBuilder, that currently does TE compute lowering and schedule application in one go, into two classes.
The motivation is to use the TE compute lowering class, LowerToTECompute, for meta schedule task extraction. For task extraction, there is no need to apply and lower schedules, but currently we do VMCompiler.lower() which is too hacky and overkill.
@mbs-octoml @junrushao1994 @jroesch @comaniac

Overall looks great Masa thanks for doing this!


Deploy Issue

Describe the bug
This was as basic as it gets, a next.js project but unable to deploy :: ~/project
❯ npm install
npm WARN deprecated<EMAIL_ADDRESS>Rimraf versions prior to v4 are no longer supported
npm WARN deprecated<EMAIL_ADDRESS>This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.
npm WARN deprecated<EMAIL_ADDRESS>Glob versions prior to v9 are no longer supported
npm WARN deprecated<EMAIL_ADDRESS>This version is no longer supported.
Screen Recording / Screenshot
No response
Platform
Browser name = Safari
Full version = 18.0.1
Major version = 18
navigator.appName = Netscape
navigator.userAgent = Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/18.0.1 Safari/605.1.15
performance.memory = undefined
Username = oppressionslayer
Chat ID = 94f5401f339b

Additional context
Error:
An error occured while streaming this message.

Nevermind, this works in google browser, but not safari. Feel free to close ticket


[RFC] Introduce UI state cookie to fix pop-in issues

We removed all the cookies from the application. That's a good thing generally. But we can use cookies without a banner and still be GDPR compliant as long as the cookies are necessary for providing a smoother user experience.
Doing this would fix problems like the UI pop in/out in this video:
https://user-images.githubusercontent.com/24264157/154730060-dd602b4c-52cf-441b-b0f6-b2d7206244d9.mp4
GDPR rules
To quote from https://gdpr.eu/cookies:

Strictly necessary cookies — These cookies are essential for you to browse the website and use its features, such as accessing secure areas of the site. Cookies that allow web shops to hold your items in your cart while you are shopping online are an example of strictly necessary cookies. These cookies will generally be first-party session cookies. While it is not required to obtain consent for these cookies, what they do and why they are necessary should be explained to the user.

I believe the cookie I am proposing we add in this RFC falls under this and we would not need a consent banner for it.
We should however add an explanatory page for our cookie usage; potentially this could just be a general "Privacy" page that links out to the WP.org privacy policy and explains Openverse specific things.
Cookie shape
Let's introduce one "ui state" cookie that encodes the following:
interface UIStateCookie {
  /**
   * Whether the filter sidebar was open during the last page load
   * @defaultValue false
   */
  filterSidebarOpen: boolean;
  /**
   * Record of translation banners that have been dismissed.
   * For increased privacy through obsurity, only actually dismissed
   * locales are present, that way there isn't a running record
   * of all the locales the client has visited.
   */
  translationBannerDismissed: { [slug: WPLocaleSlug]?: true };
  /**
   * The breakpoint of the most recent page load.
   * We do not store the exact screen width because we don't need it
   * and it could inadvertently be used for fingerprinting.
   *
   * The default value will be `md` for non-mobile UAs or when a UA is
   * unavailable. For mobile UAs it will default to `mob`.
   */
  breakpoint: 'xl' | 'lg' | 'md' | 'sm' | 'mob';
}

Implementation plan

[ ] useUiStateCookie() -> Returns an existing cookie or creates a new one and saves it. It should be a reactive object with custom set handlers to update the stored cookie value. Creating a new one should sniff the UA for the correct default value for breakpoint.

Additionally: useSyncUiStateCookieBreakpoint() -> Called by useUiStateCookie to sync the breakpoint upon resizing.

[ ] Update useMediaQuery to use the ui state cookie to deduce a default for shouldPassInSSR based on the breakpoint value.
[ ] Update the translation banner dismissal to set the cookie property and read from it to determine whether to show.
[ ] Update filter sidebar opening to set the cookie property and read from it to determine whether to show.
[ ] Add new Privacy page that explains our use of cookies and links to WP.org's Privacy policy. Replace the page menu privacy link to use the internal one.

I like the idea of storing all of these values in a single, clearly explained cookie.

[ ] Update useMediaQuery to use the ui state cookie to deduce a default for shouldPassInSSR based on the breakpoint value.

This is a good idea, I'd like to try and reduce our usage of the useMediaQuery hook as much as possible as well, by identifying which cases can be replaced with simple css-based media queries. I suspect many of the current cases can.

I'd like to try and reduce our usage of the useMediaQuery hook as much as possible as well, by identifying which cases can be replaced with simple css-based media queries

Yes, for sure. I've opened https://github.com/WordPress/openverse-frontend/issues/910 to do that.

I like the idea. We already show the privacy link in the internal menu, we just need to add the privacy detail point into the page.

Oops, I forgot to add that step to add the cookie explanation to the implementation plan.

Closing in favor of the new RFC process https://github.com/WordPress/openverse/pull/164


Register listeners after the form was step up

We should not handle events before the form is step up,
because we will get NPEs.

I don't think this is necessary anymore thanks to the massive refactoring the library has undergone recently.
Once again, thank you very much for your collaboration and sorry for taking so long to reply!


assigning a name to a dataset: SET DATA/NAME, and SET DATA name = file

In Ferret v7.52, the DEFINE DATA/AGGREGATE command can be used to assign a name to a dataset, e.g.:
 	NOAA/PMEL TMAP
 	FERRET v7.52 (optimized)
 	Linux 2.6.32-754.23.1.el6.x86_64 64-bit - 12/03/19
 	 7-May-20 19:11

yes? union my_data_name = coads_climatology
yes? sho dat/brief
     currently SET data sets:
    2> my_data_name  (default)  Union aggregation

I've found these dataset names to be very useful in scripts, when I don't necessarily know the dataset number in the present context.
So I'd propose extending this naming ability to the SET DATA command (and its aliases like USE), i.e.:
yes? use/name="my_data_name" "/path/to/file.nc"

An alternative syntax could be:
yes? use my_data_name = "/path/to/file.nc"

The latter syntax would be more consistent with that of DEFINE DATA/AGGREGATE, while the former would allow one to assign (or reassign) a name to a dataset that has already been read into Ferret:
yes? use coads_climatology
yes? set data/name="my_data_name" 1

Maybe that argues for supporting both syntaxes?

I like this idea!
We do have RETURN=dset and RETURN=dsetpath keywords that gets us some of this, but it's not the same convenience as a rename. RETURN=dset does not result in unique names.
All of these syntaxes fit in the established syntax; either opening the dataset with a name, or renaming it later, in essence applying a setting to an open dataset.
! opening dataset with a name  ( do we need this one?)
yes? use my_data_name = "/path/to/file.nc"

! or, opening with /NAME=
yes? use/name=my_data_name = "/path/to/file.nc"  ! opening a new file

yes? use coads_climatology
yes? set data/name="my_data_name" 1

! or equivalently, since USE is an alias

yes? use coads_climatology
yes? use/name="my_data_name" 1

I first thought to use the same mechanism as is used for DEFINE DATA/AGG name= and works perfectly.  However, it acts like other renaming that we do  (set var/name or set axis/name) , and the original dataset name and url is replaced.   For reference, the name in question is stored in ds_des_name(iset).
Here we don't really want to replace the name, but only assign a nickname. We'll need to either do this a little differently, or add some logic to save the original  name, because of course we still want the original dataset name to appear in data listings and history attributes for netCDF files.
Putting this aside just for the moment - it's easy and we'll get back to it but I think not for the upcoming release.


Fixed themes link in README.md

Just a very simple README change.  The existing link to the themes section no longer works.  Hopefully this follows the guidelines!

Thanks!