[Feature request] Detect the currently configured JDK in JAVA_HOME

If multiple JDK's are found, detect and display the currently configured JDK in JAVA_HOME.

Indeed a good idea...will see what's possible...

If JAVA_HOME can be found the currently used JDK will be marked with an '*' after the version number. This feature will come with release 16.0.10

Ok...it looks like it's harder than I thought. It works perfectly fine on Mac and Windows within the IDE but as soon as it is packaged as native app it does not work again. On Linux it does not work at all at the moment. So it will need further investigation...will reopen it...

It's really interesting, it even works fine as packaged app on MacOS when started via open JDKMon.app from the command line but when started using double-click it does not work and takes really long to start up.

So 16.0.11 partly supports getting the currently used JDK (on Windows and on Mac when started from the terminal). It doesn‘t work on Linux yet.

I think the definition of "currently active JDK" is more than just looking at JAVA_HOME.
For instance, if JDK A is defined in JAVA_HOME, but JDK B precedes all other JDKs in PATH, then we could argue that JDK B is currently active, at least for programs that only rely on the jdk/bin executables present in the system/user PATH.
More here: https://github.com/adoptium/installer/issues/395


Duplicate names in/of Fields and Models causes strange behavior and exceptions

Initial Checks

[X] I confirm that I'm using Pydantic V2

Description
When a Model and Field both used in the definition of another Model share the same name, the definition appears to succeed but use of the model exhibits strange behavior (Examples in code snippet).
I don't necessarily think supporting name reuse between models and fields is worth any effort as a goal in itself, but it could be helpful to explicitly forbid this kind of thing by raising exceptions at model definition time, or at least noting it in documentation -- Experience suggests less senior developers could spend hours trying to debug this.
Example Code
## SETUP
from pydantic import BaseModel
from typing import Optional

class Doc(BaseModel):
    ContentVersioned: bool
    DocID: str

## TEST: WEIRD BEHAVIOR 1 - default values
class Acaml(BaseModel):
    xmlns: str
    xmlns_xsi: str
    Doc: Optional[Doc] = None

# OK
Acaml(xmlns='a',xmlns_xsi='b')
Acaml(xmlns='a', xmlns_xsi='b', Doc=None)

# EXCEPTION: ValidationError "Input should be None"
Acaml(xmlns='a',xmlns_xsi='b', Doc=Doc(ContentVersioned=True,DocID='piff'))

## TEST: WEIRD BEHAVIOR 2 - optional type syntax
class Acaml(BaseModel):
    xmlns: str
    xmlns_xsi: str
    Doc: Doc | None = None

# EXCEPTION: TypeError: unsupported operand type(s) for |: 'NoneType' and 'NoneType'

## TEST: OK after renaming the `Doc` field to `Docc`
class Acaml(BaseModel):
    xmlns: str
    xmlns_xsi: str
    Docc: Doc | None = None

# ALL OK
Acaml(xmlns='a',xmlns_xsi='b', Docc= Doc(ContentVersioned=True,DocID='piff'))
Acaml(xmlns='a',xmlns_xsi='b', Docc= None)
Acaml(xmlns='a',xmlns_xsi='b')

Python, Pydantic & OS Version
pydantic version: 2.3.0
        pydantic-core version: 2.6.3
          pydantic-core build: profile=release pgo=false
                 install path: /Users/nate/.pyenv/versions/3.11.1/lib/python3.11/site-packages/pydantic
               python version: 3.11.1 (main, Dec 13 2022, 10:43:53) [Clang 13.1.6 (clang-13<IP_ADDRESS>.5)]
                     platform: macOS-12.4-arm64-arm-64bit
     optional deps. installed: ['email-validator', 'typing-extensions']

Hi @jnj16180340,
Thanks for your question! The PEP specifies that class names in Python should use CapWords convention (also called CamelCase), whereas class attributes should use snake_case. There are some exceptions with regards to what style class attributes can use, but they're never supposed to use CapWords convention.
Thus, if you're adhering to best practice as outlined in PEP 8, you shouldn't run into any issues with this.
You're experiencing these errors because the FieldInfo generated for the Doc attribute of Acaml is created as FieldInfo(annotation=NoneType, required=False). Really, what you want it to be is FieldInfo(annotation=Union[Doc, NoneType], required=False). Here's a code snippet you could use to achieve that:
from typing import Optional

from pydantic import BaseModel

class Doc(BaseModel):
    content_versioned: bool
    doc_id: str

class Acaml(BaseModel):
    xmlns: str
    xmlns_xsi: str
    doc: Optional[Doc] = None

# all ok :)
Acaml(xmlns='a',xmlns_xsi='b')
Acaml(xmlns='a', xmlns_xsi='b', doc=None)
Acaml(xmlns='a',xmlns_xsi='b', doc=Doc(content_versioned=True,doc_id='piff'))

Let me know if you have any follow up questions - happy to help 😄.


Save with H2 in Memory not working properly

I created a small project to setup the database with liquibase and save some data to a db with spring data r2dbc. I tested this with postgres and it works like a charm. With H2 i get an empty Mono back from spring data, even though the data is written to the db. Here is a minimal test-setup in Kotlin with Spring Boot 2.1.2.RELEASE, Spring data r2dbc 1.0.0.M1 and r2dbc Arabba-M7.
@RunWith(SpringRunner::class)
@SpringBootTest
@AutoConfigureWebTestClient
class IntegrationTest {
    private val logger = getLogger(IntegrationTest::class.java)

    @Autowired
    private lateinit var testRepo: TestRepository

    @Test
    fun `save data in h2 memory db`() {
        val testentity = Testentity(null, "Some title", "me! or I!")
        val savedEntity = testRepo.save(testentity)

        StepVerifier.create(savedEntity)
//                .expectNext(testentity.apply {id = 1}) // FIXME: I expect an entity to be returned
                .verifyComplete()

        StepVerifier.create(testRepo.findAll().collectList())
                .consumeNextWith { entityCount -> logger.debug("There are ${entityCount.count()} test entities saved")}
                .verifyComplete()
    }
}

The needed code for the application setup is as follows:
Application Context:
@SpringBootApplication
@EnableR2dbcRepositories
class DatabaseConfig: AbstractR2dbcConfiguration() {
    private val logger: Logger = getLogger(javaClass)
    private var DB_UUID: String = "testdb"

    @Bean
    override fun connectionFactory(): ConnectionFactory {
        val originDataSource = dataSource().unwrap(SimpleDriverDataSource::class.java)

        val config = ConnectionFactories.get(ConnectionFactoryOptions.builder()
                .option(ConnectionFactoryOptions.DRIVER, "h2")
                .option(ConnectionFactoryOptions.PROTOCOL, "mem")
                .option(ConnectionFactoryOptions.DATABASE, DB_UUID)
                .option(ConnectionFactoryOptions.USER, originDataSource.username!!)
                .option(ConnectionFactoryOptions.PASSWORD, originDataSource.password!!)
                .build())

        val queryFormatter = QueryExecutionInfoFormatter.showAll()

        return ProxyConnectionFactory.builder(config)
                    // Log executed query information
                    .onAfterQuery{queryExecInfo ->  queryExecInfo
                            .map(queryFormatter::format)
                            .map(logger::trace)
                            .subscribe()
                    }.build()
    }

    @Bean
    fun converter(mappingContext: RelationalMappingContext, r2dbcCustomConversions: R2dbcCustomConversions): MappingR2dbcConverter {
        return MappingR2dbcConverter(BasicRelationalConverter(mappingContext, r2dbcCustomConversions))
    }

    /**
     * Enable SQL Schema generation via Liquibase. A dataSource is needed for this
     */
    @Bean
    fun dataSource(): DataSource = EmbeddedDatabaseBuilder()
            .setName(DB_UUID)
            .setType(EmbeddedDatabaseType.H2)
            .ignoreFailedDrops(true)
            .build()
}

Entity:
@Entity
data class Testentity(
        @Id
        @GeneratedValue(strategy = AUTO)
        var id: Long?,
        @NotNull
        val title: String,
        @NotNull
        val creator: String
)

Repository:
@Repository
interface TestRepository : ReactiveCrudRepository<Testentity, Long>

Liquibase create table file:
<databaseChangeLog
        xmlns="http://www.liquibase.org/xml/ns/dbchangelog"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xmlns:ext="http://www.liquibase.org/xml/ns/dbchangelog-ext"
        xsi:schemaLocation="http://www.liquibase.org/xml/ns/dbchangelog http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-3.0.xsd
        http://www.liquibase.org/xml/ns/dbchangelog-ext http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-ext.xsd">

    <changeSet id="1" author="numbernick">
        <createTable tableName="testentity">
            <column name="id" type="BIGINT" autoIncrement="true">
                <constraints primaryKey="true" nullable="false"/>
            </column>
            <column name="title" type="varchar(500)"/>
            <column name="creator" type="varchar(500)">
                <constraints nullable="false"/>
            </column>
        </createTable>
    </changeSet>
</databaseChangeLog>

The output of the test shows that the save-methods works (it persists data), but does not return the saved data:
20-03-2019 13:06:39.346 [main] TRACE d.n.t.r.DatabaseConfig$$EnhancerBySpringCGLIB$$8f98f76c.invoke - Thread:main(1) Connection:1 Transaction:{Create:0 Rollback:0 Commit:0} Success:True Time:11 Type:Statement BatchSize:0 BindingsSize:1 Query:["INSERT INTO testentity (title, creator) VALUES($1, $2)"] Bindings:[(Some title,me! or I!)]
20-03-2019 13:06:39.366 [main] DEBUG d.n.test.reactiveh2.IntegrationTest.accept - There are 1 test entities saved
20-03-2019 13:06:39.366 [main] TRACE d.n.t.r.DatabaseConfig$$EnhancerBySpringCGLIB$$8f98f76c.invoke - Thread:main(1) Connection:2 Transaction:{Create:0 Rollback:0 Commit:0} Success:True Time:10 Type:Statement BatchSize:0 BindingsSize:0 Query:["SELECT id, title, creator FROM testentity"] Bindings:[]

Here is the complete project to test this issue
reactiveh2.zip

I've repeated your test case. I also tested against r2dbc-h2 1.0.0.BUILD-SNAPSHOT. Currently, what is happening is that the INSERT operation causes the row to be inserted, but you don't get a copy of it back from that operation. This is proven when you run the next test case and run the QUERY.
What I'm trying to glean is whether the driver is expected to return back that row, and if not, is Spring Data R2dbc is supposed to compensate.

@gregturn Thanks for validating it. Are there any updates to this issue so far?

@nebhale @gregturn Are there any updates on this topic so far? Does the H2  driver get an update to have the same behaviour to the postgres driver?

Looks like this is a driver-level issue. I need to inspect the flag options that can be supplied to H2, signaling to return the new key instead of row count.

I have the same problem using with Postgres

For the record: This issue seems to be solved in Arabba-M8
reactiveh2-M8.zip


C# discovery snippet generation

Do we have any way of testing that generated samples all compile? If so, definitely LGTM. If not, have you tried some random sample of them manually?

There is a framework to check all the generated snippets compile OK, but this PR doesn't integrate with it yet. Unfortunately it's a completely separate framework (written in go) that I don't yet have any understanding of :( I'll integrate with in as soon as I have time.
I will manually compile a few to check, then if all is OK commit this.

There were a couple of problems with imports. I've checked some random snippets compile, so if travis passes I'll merge this.


[BugFix] CSV varbinary converter using base64

Fixes #issue
What type of PR is this:

[x] BugFix
[ ] Feature
[ ] Enhancement
[ ] Refactor
[ ] UT
[ ] Doc
[ ] Tool

Checklist:

[x] I have added test cases for my bug fix or my new feature
[ ] This pr will affect users' behaviors
[ ] This pr needs user documentation (for new or modified features or behaviors)

[ ] I have added documentation for my new feature or new function

Bugfix cherry-pick branch check:

[x] I have checked the version labels which the pr will be auto-backported to the target branch

[ ] 3.1
[ ] 3.0
[ ] 2.5
[ ] 2.4

[FE PR Coverage Check]
:heart_eyes: pass : 0 / 0 (0%)

[FE PR Coverage Check]
:heart_eyes: pass : 0 / 0 (0%)

[FE Incremental Coverage Report]
:heart_eyes: pass : 0 / 0 (0%)

[FE Incremental Coverage Report]
:heart_eyes: pass : 0 / 0 (0%)

[BE Incremental Coverage Report]
:heart_eyes: pass : 13 / 16 (81.25%)
file detail

path
covered_line
new_line
coverage
not_covered_line_detail

:large_blue_circle:
src/formats/csv/varbinary_converter.cpp
13
16
81.25%
[75, 76, 84]

[FE Incremental Coverage Report]
:heart_eyes: pass : 0 / 0 (0%)

[BE Incremental Coverage Report]
:heart_eyes: pass : 22 / 22 (100.00%)
file detail

path
covered_line
new_line
coverage
not_covered_line_detail

:large_blue_circle:
src/formats/csv/varbinary_converter.cpp
22
22
100.00%
[]

@Mergifyio backport branch-3.1

https://github.com/Mergifyio backport branch-3.0


v2 CIS Benchmark stuck when creating security-scan-runner pod after triggering a scan

What kind of request is this (question/bug/enhancement/feature request): bug
Steps to reproduce (least amount of steps as possible):

Deploy an upstream cluster using rancher:v2.5.8-rc12
Go to Cluster Explorer for the local/upstream cluster and install CIS Benchmark app in version 1.0.400
Create a Scan, select rke-cis-permissive-1.6 scan profile from dropdown and click on Create

Result:

scan is Reported as Active
go to Pods in Cluster Explorer and see if pod pod security-scan-runner-scan-* is created and Running
in my case the runner pod using image rancher/security-scan:v0.2.3-rc3 is reporting state Createcontainererror and in Recent Event tab reporting:

Error: Error response from daemon: create /var/log/journal: " /var/log/journal" includes invalid characters for a local volume name, only "[a-zA-Z0-9][a-zA-Z0-9_.-]" are allowed. If you intended to pass a host directory, use absolute path
Other details that may be helpful:

used SLE15 as image for rancher local cluster - same result with added downstream cluster

Environment information

Rancher version (rancher/rancher/rancher/server image tag or shown bottom left in the UI): 2.5.8-rc12
Installation option (single install/HA): any

Cluster information

Cluster type (Hosted/Infrastructure Provider/Custom/Imported): custom on AWS EC2
Machine type (cloud/VM/metal) and specifications (CPU/memory): t3.xlarge
Kubernetes version (use kubectl version): v1.19.9

It doesn't work with sle15sp2/sp1 nor ubuntu on 1.0.400 - but previous v2 CIS chart 1.0.301 is working fine.

The failing chart 1.0.400 is using image rancher/security-scan:v0.2.3-rc3
The working chart 1.0.301 is using image rancher/security-scan:v0.2.2

@thehejik I think this issue is due to the space present in the path " /var/log/journal". This was fixed by @meldafrawi recently we will need to update the rancher-cis-benchmark chart with the latest build

Just tested on an rke cluster using rancher/cis-operator:v1.0.4-rc4 and rke permissive scan runs fine.

On 2.5.8-rc12 - with rancher/cis-operator:v1.0.4-rc5, the CIS scan - rke permissive 1.6 runs on a downstream DO cluster.

Thanks, I was able to deploy CIS Scan 1.0.400 chart from dev-v2.5 chart repo on rancher:2.5.8-rc12 and the scan is now Passing on SLE15SP1. No further action was needed - just that I had to refresh Apps several times to get latest chart update.
Snippet from current CIS values.yaml:
image:
  cisoperator:
    repository: rancher/cis-operator
    tag: v1.0.4-rc5
  securityScan:
    repository: rancher/security-scan
    tag: v0.2.3-rc5


Fix mountain of style warnings

With the define-search-engine macro, I get a wall of warnings like...
; caught STYLE-WARNING:
;   The variable FORCE-SUPPLY-P is defined but never used.

; in: DEFINE-SEARCH-ENGINE HACKER-NEWS

Perhaps adding ignorable declarations would help? Or &optional instead of &key??

Indeed, those have been cluttering my Nyxt shell output for a while! Time to fix those :D


feat: mark programmed=false with an error when too many addresses are assigned

What type of PR is this?

What this PR does / why we need it:
This PR changes the impl to mark programmed=false with an error when too many addresses are assigned.
The motivation here is to enhance the visibility of this error to users.
Which issue(s) this PR fixes:

Fixes #3662

/retest

/retest


Release redis 0.1.0

This pull request was generated using releasetool.

Release is at https://github.com/GoogleCloudPlatform/google-cloud-python/releases/tag/redis-0.1.0


Add GRADLE_CACHE_REMOTE_SERVER param

See https://github.com/gradle/gradle/pull/28202
Inside promotion jobs we need to run some task with master branch. This param is for master to work properly with build cache.

@bot-gradle merge

The merge queue build has started. Click here to see all failures if any.


[SPARK-48545][SQL] Create to_avro and from_avro SQL functions to match DataFrame equivalents

What changes were proposed in this pull request?
This PR creates two new SQL functions "to_avro" and "from_avro" to match existing DataFrame equivalents.
For example:
sql(
  """
    |create table t as
    |  select named_struct('u', named_struct('member0', member0, 'member1', member1)) as s
    |  from values (1, null), (null,  'a') tab(member0, member1)
    |""".stripMargin)

val jsonFormatSchema =
  """
    |{
    |  "type": "record",
    |  "name": "struct",
    |  "fields": [{
    |    "name": "u",
    |    "type": ["int","string"]
    |  }]
    |}
    |""".stripMargin

spark.sql(
  s"""
    |select from_avro(result, '$jsonFormatSchema', map()).u from (
    |  select to_avro(s, '$jsonFormatSchema') as result from t
    |)")
  .collect()

> {1, NULL}
  {NULL, "a"}

Why are the changes needed?
This brings parity between SQL and DataFrame APIs in Apache Spark.
Does this PR introduce any user-facing change?
Yes, see above.
How was this patch tested?
This PR adds extra unit tests, and I also checked that the functions work with spark-shell.
Was this patch authored or co-authored using generative AI tooling?
No GitHub copilot usage this time

Thanks @allisonwang-db for your review, followed through on your comments.

cc @cloud-fan the CI is passing now :)

Thanks, merging to master


react-a11y-no-onchange rationale

PR checklist

[ ] Addresses an existing issue: fixes #0000
[ ] New feature, bugfix, or enhancement

[ ] Includes tests

[x] Documentation update

Overview of change:
As part of updating https://github.com/bettermarks/bm-tslint-rules to v6 of this rule set I was checking the rules that have been added.
Because there was no reference mentioned for react-a11y-no-onchange I did some searching and found a page that seemed to be a good fit as a reference.
I checked and found that most other react-a11y-* rules have this information as part of the "supported rules" table in the README.
Because I'm the developer of https://github.com/karfau/tslint-report (that adds rules metadata to it's reports) and I like generated documentation since it reduces the burden of keeping things in sync manually, I also added the references for all react-a11y-* rules to the rationalefield of their metadata.
When I found metadata.description didn't match the README and it was easy to do I updated the metadata accordingly. Since some of them contained markdown instead of HTML I sticked to that in the decsription field.
Along the way I also found some minor issues in the README that I fixed:

an unclosed li tag
a rule that was not at the correct place regarding to alphabetical order

Is there anything you'd like reviewers to focus on?

I used template strings for the rationale, to be able to just copy paste the multi-line strings. I hope it is supported in all target environments or will be transpiled accordingly?
Currently the rationale contains HTML but the descriptions have markdown. I would be willing to also convert the rationale values to markdown if requested.

 Thank you for your submission, we really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.:x: karfau sign nowYou have signed the CLA already but the status is still pending? Let us recheck it.

Awesome, thanks for sending this in @karfau! I'm not able to merge this in right now, but once I can we'll get this merged in.
https://github.com/karfau/tslint-report looks interesting - might be useful for https://github.com/palantir/tslint/issues/2267 (TSLint > Feature request: summary report).


How to add description?

Are adding descriptions supported?  I have not seen any examples on how to add description to types and fields.  Maybe...?
type User {
id: ID! # field description
name: String # A cool name for this user
}

Adding description is going to be implementation specific. If you are using graphql-js, then support for adding description via comments has been added in v0.7.
See https://medium.com/apollo-stack/all-you-need-to-know-about-graphql-js-0-7-921e75dd7fd1#.t9csdknur

Hi guys,
I've added examples of comments usage, though like @gajus said, it is specific to the tool implementation. It would be useful to document your schema.
Thanks!


Wrong tx status after execution

There's a wrong status coming from backend when signing and executing separately:

Open a 1/1 Safe
Create and sign a tx but don't execute (uncheck the Execute checkbox)
Tx is displayed as "Awaiting execution" correctly
Execute the tx, it will display as Pending thanks to a client-side status
Refresh the page to re-fetch the Queue
Tx will be displayed as "Awaiting execution" and will stay like that until the tx goes to the History

Expected behavior
In our understanding, "Awaiting execution" should be returned when the user is supposed to click "Execute".
When an execution has already been performed, the status should be "Being executed" or some such.

Like you correctly mentioned, the Pending status is local to the clients. The CGW doesn't even have a concept of pending TX so this status needs to be recalculated in the frontend as the CGW will always return AwatingExecution in this case.
Here you can find the documentation to the statuses

I understand the status quo, but it's not ideal.


Failure when DISPLAY is empty

This is possibly related to #27.
If DISPLAY is an empty string (rather than being unset), xvfbwrapper fails with the following exception:
Traceback (most recent call last):
  File "<string>", line 11, in <module>
  File "/usr/lib/python3/dist-packages/xvfbwrapper.py", line 50, in __init__
    self.orig_display = os.environ['DISPLAY'].split(':')[1]
IndexError: list index out of range

I am also affected by this bug


module is not defined in ES module scope

This error occurs when running dev server: module is not defined in ES module scope

Hi @chaveamin, change the filename next.config.mjs to next.config.js.

I did it before(with .js and .cjs) but it shows the same error
with .js:

with .cjs

I am quite sure this is not an issue with next-image-export-optimizer. Try to comment out on a first try the imports in your next.config.js and if the error persists, everything that comes from next-image-export-optimizer.

Problem solved by deleting the library completely and reinstalling it again, Thanks


Fix bug with handling orders containing deleted variants in 3.1

I want to merge this change because copying changes from #8053
Additional changes: testing only specific changes instead of whole payload

Impact

[ ] New migrations
[ ] New/Updated API fields or mutations
[ ] Deprecated API fields or mutations
[ ] Removed API types, fields, or mutations
[ ] Documentation needs to be updated

Pull Request Checklist

[ ] Privileged queries and mutations are guarded by proper permission checks
[ ] Database queries are optimized and the number of queries is constant
[ ] Database migration files are up to date
[ ] The changes are tested
[ ] GraphQL schema and type definitions are up to date
[ ] Changes are mentioned in the changelog

Task linked: SALEOR-4253 Errors when handling orders containing deleted variants


Add horizontal text scroll for better interaction

To provide a horizontal text scroll at bottom of the page for better interaction

@JSuhas123 suggest where it can be used otherwise this is invalid issue


titan: unexpected increasing empty regions when inserting large records

Bug Report
What version of TiKV are you using?
Reproduced in v6.2.0 and v6.3.0-alpha-nightly-20220908.
What operating system and CPU are you using?
Reproduced in amd64 Centos & amd64 MacOS, I believe CPU is not related to this issue.
Steps to reproduce

Start a new cluster with Titan enabled, the easiest way is playground:

tiup playground v6.2.0 --kv.config /Users/bb7133/Projects/tikv/etc/config_test.toml

In which, we have config_test.toml:
rocksdb.titan.enabled = true

Keep inserting data into the TiDB cluster with each rows in 100KB, for example, use the code:

  package main

  import (
      "database/sql"
      "fmt"
      "log"
      "sync"

      _ "github.com/go-sql-driver/mysql"
  )

  const (
      username    = "root"
      password    = ""
      hostname    = "<IP_ADDRESS>:4000"
      concurrency = 100
      dbName      = "test"
  )

  func dsn(dbName string) string {
      return fmt.Sprintf("%s:%s@tcp(%s)/%s", username, password, hostname, dbName)
  }

  func run_insert(wg *sync.WaitGroup) {
      defer wg.Done()

      db, err := sql.Open("mysql", dsn("test"))
      if err != nil {
          log.Printf("Error %s when opening DB\n", err)
          return
      }
      i := 0
      for {
          _, err := db.Exec("INSERT INTO t(b) VALUES (concat( repeat(md5(rand()), 102400 / 32), left(md5(rand()), 102400 % 32)))")
          if err != nil {
              log.Println(err)
              return
          }
          i++
          if i%10000 == 0 {
              log.Printf("Inserted %d rows in 1 connection.\n", i)
          }
      }
  }

  func main() {
      db, err := sql.Open("mysql", dsn(dbName))
      if err != nil {
          log.Printf("Error %s when opening DB\n", err)
          return
      }
      _, err = db.Exec("DROP TABLE IF EXISTS t")
      if err != nil {
          log.Println(err)
          return
      }
      _, err = db.Exec("CREATE TABLE t(a INT KEY AUTO_INCREMENT, b MEDIUMBLOB)")
      if err != nil {
          log.Println(err)
          return
      }

      var wg sync.WaitGroup
      wg.Add(concurrency)
      for i := 1; i < concurrency; i++ {
          go run_insert(&wg)
      }
      wg.Wait()
      db.Close()
  }

Watch the metrics, you can see there are increasing number of empty regions while writing the data, which is not expected:

Logs like the following can be found in TiKV log file, not sure if this is related to the issue:

  [2022/09/09 20:13:47.461 +08:00] [INFO] [peer.rs:5151] ["on split"] [source="split checker"] [split_keys="10 keys range from<PHONE_NUMBER>000000FF445F728000000000FF0676CE0000000000FAF9F3776B5C43FFEE to<PHONE_NUMBER>000000FF445F728000000000F  F06995D0000000000FAF9F3776AAF9FFFDE"] [peer_id=3] [region_id=2]
  [2022/09/09 20:13:47.481 +08:00] [INFO] [pd.rs:1064] ["try to batch split region"] [task=batch_split] [region="id: 2 start_key:<PHONE_NUMBER>000000FF445F728000000000FF0672F80000000000FA region_epoch { conf_ver: 1 version: 464 } peers { i  d: 3 store_id: 1 }"] [new_region_ids="[new_region_id: 930 new_peer_ids: 931, new_region_id: 932 new_peer_ids: 933, new_region_id: 934 new_peer_ids: 935, new_region_id: 936 new_peer_ids: 937, new_region_id: 938 new_peer_ids: 939, new_r  egion_id: 940 new_peer_ids: 941, new_region_id: 942 new_peer_ids: 943, new_region_id: 944 new_peer_ids: 945, new_region_id: 946 new_peer_ids: 947, new_region_id: 948 new_peer_ids: 949]"] [region_id=2]
  [2022/09/09 20:13:47.492 +08:00] [INFO] [apply.rs:1442] ["execute admin command"] [command="cmd_type: BatchSplit splits { requests { split_key:<PHONE_NUMBER>000000FF445F728000000000FF0676CE0000000000FA new_region_id: 930 new_peer_ids: 93  1 } requests { split_key:<PHONE_NUMBER>000000FF445F728000000000FF067AA50000000000FA new_region_id: 932 new_peer_ids: 933 } requests { split_key:<PHONE_NUMBER>000000FF445F728000000000FF067E7C0000000000FA new_region_id: 934 new_peer_ids: 935   } requests { split_key:<PHONE_NUMBER>000000FF445F728000000000FF0682530000000000FA new_region_id: 936 new_peer_ids: 937 } requests { split_key:<PHONE_NUMBER>000000FF445F728000000000FF06862A0000000000FA new_region_id: 938 new_peer_ids: 939 }   requests { split_key:<PHONE_NUMBER>000000FF445F728000000000FF068A010000000000FA new_region_id: 940 new_peer_ids: 941 } requests { split_key:<PHONE_NUMBER>000000FF445F728000000000FF068DD80000000000FA new_region_id: 942 new_peer_ids: 943 } re  quests { split_key:<PHONE_NUMBER>000000FF445F728000000000FF0691AF0000000000FA new_region_id: 944 new_peer_ids: 945 } requests { split_key:<PHONE_NUMBER>000000FF445F728000000000FF0695860000000000FA new_region_id: 946 new_peer_ids: 947 } requ  ests { split_key:<PHONE_NUMBER>000000FF445F728000000000FF06995D0000000000FA new_region_id: 948 new_peer_ids: 949 } right_derive: true }"] [index=51603] [term=6] [peer_id=3] [region_id=2]
  [2022/09/09 20:13:47.492 +08:00] [INFO] [apply.rs:2285] ["split region"] [keys="10 keys range from<PHONE_NUMBER>000000FF445F728000000000FF0676CE0000000000FA to<PHONE_NUMBER>000000FF445F728000000000FF06995D0000000000FA"] [region="id: 2 start  _key:<PHONE_NUMBER>000000FF445F728000000000FF0672F80000000000FA region_epoch { conf_ver: 1 version: 464 } peers { id: 3 store_id: 1 }"] [peer_id=3] [region_id=2]

The full log file: tikv.log

These empty regions are not really empty.
The script generates the blob value by repeat(md5(rand()), 102400 / 32) which can be compressed greatly for the sake of the repeated pattern. With Titan enabled, the approximate size is calculated based on the blob size compressed by Titan. So the approximate size is small, but after decompression, the real size is quite big.

Value with repeated pattern is not common in production, especially for blob type. But it's better to make it concrete with Titan enabled.

@jebter  Should it be severity/minor as it does not in fact have real impact to customer?

We discussed internally and will downgrade this


Calibration object cannot retrieve previous tax function estimates

@jdebacker. Because estimating tax functions by age (in the DEP case) takes about an hour, it is often nice to just do that once, save the TxFuncEst_policy.pkl file, and then just pass the path in to the Calibration object. In the old OG-USA API, we would use code like the following, where run_micro=False and the tax_func_path is passed in.
kwargs = {'output_base': base_dir, 'baseline_dir': base_dir,
            'test': False, 'time_path': True, 'baseline': True,
            'og_spec': og_spec_base, 'guid': '',
            'run_micro': False, 'tax_func_path': base_tax_func_path,
            'data': 'cps', 'client': client,
            'num_workers': num_workers}
runner(**kwargs)

In the new OG-USA API, the Calibration class in calibrate.py takes the boolean argument estimate_tax_functions instead of the old run_micro argument. The old run_micro argument is still used in the Calibration class sub method get_tax_function_parameters, but it can no longer be passed by calling the Calibration class. That is, there is no connection between the estimate_tax_functions argument of the Calibration class object and the run_micro argument of the get_tax_function_parameters method. As such, there is no way to instantiate a Calibration class object with estimated tax functions from a path without re-running the tax function estimation.
Code I have tried that does NOT successfully get the estimated tax function information from the TxFuncEst_policy.pkl path is the following. If I set estimate_tax_functions=True with the tax_func_path, it still reruns the tax function estimation.
c2 = Calibration(
    p2, iit_reform=iit_reform, estimate_tax_functions=False,
    tax_func_path=tax_func_path, client=client, guid='T040'
)

@rickecon Thanks for raising this issue.  Seems like a good solution might be to either add the run_micro argument to the Calibration class or assume that if estimate_tax_functions=False and tax_func_path != None, then it will look for a file to retrieve parameter estimates from (i.e., call the get_tax_function_parameters method with run_micro=False).
But there might be other solutions too.

@jdebacker. Yes. I think there are three options with the tax functions in the Calibration class.

Estimate the tax functions: estimate_tax_functions=True
(Default) Do not estimate the tax functions and take them from the default parameters: estimate_tax_functions=False and tax_func_path=None.
Do not estimate the tax functions and take them from a saved TxFuncEst_policy.pkl or TxFuncEst_base.pkl file: estimate_tax_functions=False and tax_func_path=path.

It is this third case that is not defined in the Calibration class. I will open a PR.

Resolved with PR #54


sandboxfs: init at 0.2.0

Motivation for this change
Things done

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

[x] NixOS
[ ] ~macOS~ doesn't build on macOS b/c of fuse dependency
[x] other Linux distributions

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

Thanks for the review! I made those two small changes.


Cloudera KB Articles Update

Updated the getting started with Cloudera KB article with up to date screenshots, current information on add-on components and added additional Q & A's. Added links to the VPN KB article and the Cloudera PDF in the attachments folder.
Updated the PDF link in the Cloudera Manager Guide KB article.
Created a Cloudera folder in the images folder and added the six screenshots.
Thanks, Tim Baumgartner
<EMAIL_ADDRESS>

make changes based on comments


fix: Elbow arrow fixedpoint flipping now properly flips on inverted resize and flip action

Should we disallow flipping arrows alone? We don't do it with simple arrows.
I think the main issue is that the when you flip an elbow arrow alone, it also flips the binding points on the bound elements, whereas what it should do is just flip the startBinding and endBinding.

Second thing I noticed is that resizing elbow arrow together with bound elements now completely freaks out:

In fact, just translation is unstable now:
(towards the second half of the gif)

repeated flips moves the x/y position: (below, doing horizontal flip)
https://excalidraw-kx7ty8qqj-excalidraw.vercel.app/#json=cJyk9zoL1EQxtkfL9lgcU,Y93EvB0Qv4lxFFSASVqyJQ

shouldn't this horizontal flip result in the same routing (no middle "break")?
https://excalidraw-kx7ty8qqj-excalidraw.vercel.app/#json=h1r4ZXer3XmsLHGVf2x8c,IBDegLVp7GyHHeNGkszpKQ

* repeated flips moves the x/y position: (below, doing horizontal flip)

This is a given, not much to do about it. The reason this is happening (on master too) is previously simple arrows were always "inside" the group selection, but now elbow arrows often touch the edge of the selection. Therefore when the elbow arrow mirroring extends the dimensions of the selection, the next time you flip it, the center point used for mirroring is not where it was before.

* shouldn't this horizontal flip result in the same routing (no middle "break")?

No, the axis-aligned bounding box is indeed not aligns up with the middle of the selection when flipped.

I'm experiencing the same thing David pointed out a few comments earlier:

I'm guessing there's not enough "clearance" between red box and the arrow line to make the routing completely straight?
I haven't had a chance to go through the code but if the above is the expected behaviour, I haven't really found anything else that was funky when playing with the preview deploy link. 🚀

I'm guessing there's not enough "clearance" between red box and the arrow line to make the routing completely straight?
Yes. We were discussing that I haven't got a solution for this because if we force to make the offending segment in the middle, the elbow arrow would never get into Z configuration, which is undersired.

I haven't had a chance to go through the code but if the above is the expected behaviour, I haven't really found anything else that was funky when playing with the preview deploy link. 🚀
Thanks for checking it out!

I'm experiencing the same thing David pointed out a few comments earlier:

I'm guessing there's not enough "clearance" between red box and the arrow line to make the routing completely straight?
I haven't had a chance to go through the code but if the above is the expected behaviour, I haven't really found anything else that was funky when playing with the preview deploy link. 🚀

this is actually a regression from fdf42b5 (#8324) AFAIK
should do this (and does on the commit before):

Thank you for all your help catching this and for @dwelle to propose the solution for the moving group selection.

Nice! Seems to work fine now, exactly as shown in David's image.


Add e2e tests.

What this PR does / why we need it:
Which issue(s) this PR fixes (optional, in fixes #<issue number>(, fixes #<issue_number>, ...) format, will close the issue(s) when the PR gets merged):
Fixes #
Special notes for your reviewer:

Nice work @danderson !!!


Sender outreach materials per Phase 2 Comms Plan

Problem statement
We need to create/update resources for sender migration/onboarding outreach.
What you need to know
[Links to documents, workflows, or list of key people and contact info]

Comms Doc

Acceptance criteria
To do

[ ] ...

I think this is duplicate with this one. I think I forgot we already made this when I created the new one for this sprint. So we can get rid of this.
@jillian-hammer @chris-kuryak


EVM storage tracing

This PR adds storage tracing into EVM module. This is implemented as special event emitted every time a constructor/method of a smart contract is called. The event contains digest of all storage indices affected during the call, i.e. all indices storage was written by. When storage is reset another kind of Event is emitted.

Also just a small note -- in this PR we only traced the result storage value, but not anything intermediate. That means, if a storage changed from 0 to 1 and then to 0, we'll only record it in tracing as 0.

This seems to be impossible to hide auxiliary events with current implementation of decl_event macro, which doesn't allow to introduce separate from Event type for events as well as conditionally compile branches of Event enum. At the same time, the events must be hidden if they are cannot be generated in a given features set.
Since this is temporary solution, it seems to be not rational to change logic of decl_event macro for it. I suggest to close this PR.


chore: combine some components

This should be merged after #55 to avoid conflicts.
It simplifies the structure of the project which before had a little too much granularity - with most components being a sinfle python script with not that much code and these were only ever being used in one place.

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

89 of 101 (88.12%)  changed or added relevant lines in 25 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage decreased (-0.3%) to 86.604%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

bases/renku_data_services/data_api/config.py
7
8
87.5%

components/renku_data_services/crc/blueprints.py
4
5
80.0%

components/renku_data_services/storage/rclone.py
0
1
0.0%

components/renku_data_services/crc/db.py
10
19
52.63%

Totals

Change from base Build<PHONE_NUMBER>:
-0.3%

Covered Lines:
2392

Relevant Lines:
2762

💛  - Coveralls


throw error on failed response

Hi, this pull request adds support to throw a Zeebe error if the HTTP response was a failure.
There are two new optional header configs:

errorCodePath: Variable expression (dot separated) to extract the error code from a failed response Json body. If the path can be found, a throw error command (with the extracted error code) will be sent. In any other case it will continue with the previous behaviour (fail command).
errorMessagePath: Variable expression (dot separated) to extract the error message from a failed response Json body. If the error code is configured and found, it will be used as the throw error command message. If not, it will be used as the error message of the failure. If not configured or not found, it will continue sending the previously defined error message.

There is no need to define both headers all the time, they can be independently used.
Usage example:
Workflow

Duplicated error handler

Error code: item-duplicated

Register Item Headers

url: http://some-service/etc/etc
method: post
errorCodePath: error.code
errorMessagePath: error.message

HTTP Response 400
{
  "data": null,
  "error": {
    "code": "item-duplicated",
    "message": "The item '123' is already registered."
  }
}

Next Step
The workflow instance will continue on Notify User.

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.Pablo Romanelli seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.You have signed the CLA already but the status is still pending? Let us recheck it.

Hi @saig0 , thank you for the review.

So, to be more explicit that this status code should lead to an error instead of failure. This would be an additional header to be set. But I'm not sure about this point.

That's a good point, it could be confusing to have the statusCodeFailure throw an error instead of a failure but also having another header could make the configuration of the task a bit annoying.
If we add a statusCodeError we should validate that the status codes do not overlap with statusCodeFailure or define an explicit order in the documentation.
Also, if the user adds a statusCodeError and the body couldn't be parsed or the error code couldn't be found, we should fail because we couldn't find the error code.
I think we have a few options:

Add statusCodeError and define a convention on how they will be ordered (to avoid failing if overlaps with statusCodeFailure). For me, the error should be first because it is more specific.
Change the name of statusCodeFailure to avoid confusions and make it work for both errors and failures (I can't think any good name any right know).

What do you think it would be best?

I'm still not sure that is best. So, I would say let's keep it simple and just introduce the two new headers to extract the error code and error message. If other users are confused then we can improve it later based on their feedback ;)


Xiaomi Smart Power Strip

Doesent Connect to mi home apps.. it is useless...only my router connected i tried many times but it doesnt connect

Please help me to solve this problem

Heres my email address<EMAIL_ADDRESS>

Can you tell me what have you tried? Maybe show some code?

My xiaomi smart power strip it does'nt  connect to Mi Home apps..it is only connected to the router but i cannot control it

I tried many times to connect when i add the device
Device Connected = check
Message Sent to Device = Check
Connecting Device to Network = Failed
Always faild in that cases my device has a logo*
SMART POWER STRIP
MAX 2500W

6218 https://github.com/6218 commented 8 minutes ago
https://github.com/aholstenson/miio/issues/241#issuecomment-509789253
My xiaomi smart power strip it does'nt connect to Mi Home apps..it is only
connected to the router but i cannot control it
[image: @6218] https://github.com/6218
Author6218 https://github.com/6218 commented 1 minute ago
https://github.com/aholstenson/miio/issues/241#issuecomment-509791673
I tried many times to connect when i add the device
Device Connected = check
Message Sent to Device = Check
Connecting Device to Network = Failed
Always faild in that cases my device has a logo*
SMART POWER STRIP
MAX 2500W
On Wed, Jul 10, 2019, 3:02 AM Alex Chernyavskiy<EMAIL_ADDRESS>wrote:

Can you tell me what have you tried? Maybe show some code?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/aholstenson/miio/issues/241?email_source=notifications&email_token=AMR54RQCSPWVFXSBXQHVKV3P6TOGDA5CNFSM4H7AM4O2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGODZRGX7A#issuecomment-509766652,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AMR54RWI4Q7WXLDEWGEOHJDP6TOGDANCNFSM4H7AM4OQ
.

I use allocation China But doesnt work i try to change location but i cannot find my xiaomi power strip

Well, you got problems with connection to miHome app?

Yes my problem is connection to mi home apps
On Wed, Jul 10, 2019, 2:23 PM Alex Chernyavskiy<EMAIL_ADDRESS>wrote:

Well, you got problems with connection to miHome app?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/aholstenson/miio/issues/241?email_source=notifications&email_token=AMR54RXRQFI5GDAZXC7DTH3P6V54NA5CNFSM4H7AM4O2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGODZSNVFA#issuecomment-509926036,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AMR54RV5TIJM2PKZHJIT6XDP6V54NANCNFSM4H7AM4OQ
.

_yes sir in mi home apps _

Do you have any idea how to connect to mi home apps?

This repo isn't related to miHome App.
If you got some problems try connecting with Xiaomi support, not here. At all - use region China and it's going works well.

Ok sir thank you maybe my power strips is fake
On Wed, Jul 10, 2019, 11:52 PM Alex Chernyavskiy<EMAIL_ADDRESS>wrote:

This repo isn't related to miHome App.
If you got some problems try connecting with Xiaomi support, not here. At
all - use region China and it's going works well.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/aholstenson/miio/issues/241?email_source=notifications&email_token=AMR54RQC6334ABIAG6VWAYLP6YASPA5CNFSM4H7AM4O2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGODZT5BLA#issuecomment-510120108,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AMR54RXSYK6MNNPQTJW3RBLP6YASPANCNFSM4H7AM4OQ
.


Clicking radius filter on mobile brings up keyboard

Describe the bug
Clicking radius filter on mobile brings up keyboard. It shouldn't, there's no text to input.
To Reproduce
Steps to reproduce the behavior:

Open vaxx.nz on mobile
Click "within 10km"
You'll see keyboard pop up
It shouldn't

Screenshots

Device:

iPhone 7 plus
Safari

Additional context
Base web Select component can take input, but for our use case we should disable that and make it dropdown only. Maybe there's a prop for that?

That's been fixed, props to @allen1996 !


Run parallel tests out of node block

When running tests in parallel it is not necessary for the
top level build to hold onto a node while the downstream
jobs execute. In order to exit out of the node block we need
to return back to the top level pipeline file and then call
a new parallel function. Some definitions need to be global
in order for variables to propagate around.

Fixes #994
Signed-off-by: Adam Brousseau<EMAIL_ADDRESS>

@llxia for review

will merge after the release


git+ syntax in requirements.txt breaks isort

If you have a line like
git+https://github.com/user/repo.git@hash
in your requirements.txt file, isort will not parse it properly and will raise the error
It looks like a path. File 'git+https://github.com/user/repo.git@hash' does not exist.) during instantiation and cannot be used
RequirementsFinder encountered an error (Invalid requirement: 'git+https://github.com/user/repo.git@hash'```

Which rather than ignoring the single line it just stops isort from working entirely.

What version of isort are you using? I ask because requirements.txt is a deprecated source to determine module placement. If you are the 5.0.0+ verson, unless you are asking to use this deprecated feature, it shouldn't error for you.
If you haven't yet moved to 5.0.0+, hopefully the upgrdade guide will be helpful:
https://timothycrosley.github.io/isort/docs/upgrade_guides/5.0.0/

I was using v4. Cool to know this has been fixed in the newest version.


About denying connections with a specific html file, again.

Hello ale-rinaldi, I'm sorry I went away for a months - so now I want to start the prev. topic - again.
OK, I have the same config file:
https://v4.site, https://v6.site {
        log {
                output file access.log
        }

        root * /home/tmh/caddy/web

        @blocked1 not maxmind_geolocation {
                db_path "/home/tmh/caddy/geolite/GeoLite2-Country.mmdb"
                allow_countries RU IL FR
        }
        rewrite @blocked1 def.html

        @blocked2 {
                path /home/tmh/caddy/web/private*
                not maxmind_geolocation {
                db_path "/home/tmh/caddy/geolite/GeoLite2-Country.mmdb"
                allow_countries RU
                }
        }
        rewrite @blocked2 def.html

        file_server
}

-- on mar'21 you told me about might-be incorrect rules in this scheme so - I want to ask you - how to fix this config so
it will redirect all users who are NOT listed in "RU IL FR" / "RU" countries - to the 'def.html' file ?
BTW, If you are IRC.LIBERA.CHAT or/and IRC.FREENODE.NET user - we can talk there in real time, so I'll be able to test the things and tell you results asap :)
Thanks in advance !
-t

This should work:
https://v4.site, https://v6.site {
        log {
                output file access.log
        }

        root * /home/tmh/caddy/web

        @blocked1 not maxmind_geolocation {
                db_path "/home/tmh/caddy/geolite/GeoLite2-Country.mmdb"
                allow_countries RU IL FR
        }

	error @blocked1 "Unauthorized" 403

        @blocked2 {
                path /home/tmh/caddy/web/private*
                not maxmind_geolocation {
                db_path "/home/tmh/caddy/geolite/GeoLite2-Country.mmdb"
                allow_countries RU
                }
        }

        error @blocked2 "Unauthorized" 403

	handle_errors {
        	rewrite @blocked1 def.html
                rewrite @blocked2 def.html
        	file_server
	}

        file_server
}

porjo: Thanks for helping, but what I see now is "Error 403" and no redirects to def.html file at all... Any ideas ?:)

Does the file exist at /home/tmh/caddy/web/def.html with permission for Caddy to read it?

ah, you right - def.html was located in ./caddy folder -- now I moved it to ./caddy/web/ folder and everything went OK !
Thank you very much, porjo, be well ! :)


Send message not working

Hello, i tried to use the class and send message but nothing happen and im not receiving any message.
i installed using composer and then include the class then i have this code
$whatsapp_cloud_api = new WhatsAppCloudApi([
'from_phone_number_id' => 'xx',
'access_token' => 'xx',
]);
$whatsapp_cloud_api->sendTextMessage('xx', 'Hey there! I'm using WhatsApp Cloud API. Visit https://www.netflie.es');
am i wrong? btw i used the temporary token

Hi,

Send a first message from the developer console in Facebook. Please check the Setup Guide.
Reply to the previous before message from you WhatsApp App installed in your phone
Now you can use the Cloud API

Best regards,
Alex.

@kevinnyotosusanto Was your problem resolved?

@kevinnyotosusanto Was your problem resolved?

im going to try that now.. will reply soon

@netflie okay its now working with test number and temporary token. thankyou

@kevinnyotosusanto when your number get verified you will be able to send approved template message to any number, without this steps.
whatsapp now allowing you to send free form messages unless you are in the 24 hour windows from last customer replay

@kevinnyotosusanto  Were you able to make it work with an approved number rather than a test number?

@boynet  How do you get your number verified?

@kevinnyotosusanto Were you able to make it work with an approved number rather than a test number?

i only tested this with fb test number so i only send message to registered number. havent try use my own number and send to any number. if you want to send template msg u can do it to any number but need other ppl to text you first to be able to send message that not in your template msg.


(Windows) DownloadDirectoryAsync() does not support colons in local path

FTP OS: Embedded
FTP Server: Fanuc R-30iB Robot Controller
Computer OS: Windows 10 Enterprise
FluentFTP Version: 39.4.0
Framework: .NET 6
The FTP server I am working with has subdirectory names that contain a colon which are not allowed in Windows file paths. Is it possible to include a path sanitization or some sort of alternative local path parameter for the DownloadDirectoryAsync() function? The server is serving all of the memory drives of a robot and renaming the folders is not possible.  I have attached abbreviated logs below to illustrate the issue.
Logs :

# AutoConnect()

# AutoDetect(True, False)

# Connect()
Status:   Connecting to ***:21
Response: 220 R-30iB FTP server ready. [SpotTool+ V8.33P/11]
Command:  AUTH TLS
Response: 500 Command not understood.
Command:  USER ***
Response: 230 User logged in [NORM].
Command:  FEAT
Response: 500 Command not understood.
Status:   Text encoding: System.Text.UTF8Encoding+UTF8EncodingSealed
Command:  OPTS UTF8 ON
Response: 500 Command not understood.
Command:  SYST
Response: 215 UNKNOWN [SpotTool+ V8.33P/11].
Warning:  Cannot auto-detect listing parser for system 'Unknown', using Unix parser
Status:   Listing parser set to: Unix
Command:  PWD
Response: 257 "md:\" is current directory.

# SetWorkingDirectory("/")
Command:  CWD /
Response: 250 CWD command successful.
Command:  PWD
Response: 257 "\" is current directory.

# GetListingAsync("/md:", Auto)
Command:  TYPE I
Response: 200 Type set to  I

# OpenPassiveDataStreamAsync(PASV, "LIST /md:", 0)
Command:  PASV
Response: 227 Entering Passive Mode (127,0,0,1,228,6)
Status:   Connecting to ***:58374
Command:  LIST /md:
Response: 150 ASCII data connection.
+---------------------------------------+
Listing:  -rw-rw-rw- 1 noone nogroup          0 aug 24 2022 version.dg

[ ...

# CloseDataStream()
Response: 226 ASCII Transfer complete.
Status:   Disposing FtpSocketStream...
Status:   Confirmed format Unix

# DownloadDirectoryAsync("C:\RobotExtractor\Projects\VirtualRobots\Robot Backups\2022-08-24-11_06_22\BP030R01B03\", "md:/", Mirror, Overwrite, Retry, null)

# DirectoryExistsAsync("md:")
Command:  CWD md:
Response: 250 CWD command successful.
Command:  CWD /
Response: 250 CWD command successful.
Command:  PWD
Response: 257 "\" is current directory.

# GetListingAsync("/md:", Size)

# OpenPassiveDataStreamAsync(PASV, "LIST /md:", 0)
Command:  PASV
Response: 227 Entering Passive Mode (127,0,0,1,228,182)
Status:   Connecting to ***:58550
Command:  LIST /md:
Response: 150 ASCII data connection.
+---------------------------------------+
Listing:  -rw-rw-rw- 1 noone nogroup          0 aug 24 2022 version.dg

[ ...

# CloseDataStream()
Response: 226 ASCII Transfer complete.
Status:   Disposing FtpSocketStream...

# DownloadServerFilesAsync("791 files")

# DownloadFileAsync("C:\RobotExtractor\Projects\VirtualRobots\Robot Backups\2022-08-24-11_06_22\BP030R01B03\md:\version.dg", "/md:/version.dg", Overwrite, Retry)
Warning:  File failed to download: /md:/version.dg

[ ... ]

# DownloadFileAsync("C:\RobotExtractor\Projects\VirtualRobots\Robot Backups\2022-08-24-11_06_22\BP030R01B03\md:\workcell4d.xml", "/md:/workcell4d.xml", Overwrite, Retry)
Warning:  File failed to download: /md:/workcell4d.xml

# DownloadFileAsync("C:\RobotExtractor\Projects\VirtualRobots\Robot Backups\2022-08-24-11_06_22\BP030R01B03\md:\wrt_menu.va", "/md:/wrt_menu.va", Overwrite, Retry)
Warning:  File failed to download: /md:/wrt_menu.va

# DownloadFileAsync("C:\RobotExtractor\Projects\VirtualRobots\Robot Backups\2022-08-24-11_06_22\BP030R01B03\md:\wrt_menu.vr", "/md:/wrt_menu.vr", Overwrite, Retry)
Warning:  File failed to download: /md:/wrt_menu.vr

# DownloadFileAsync("C:\RobotExtractor\Projects\VirtualRobots\Robot Backups\2022-08-24-11_06_22\BP030R01B03\md:\wrt_user.va", "/md:/wrt_user.va", Overwrite, Retry)
Warning:  File failed to download: /md:/wrt_user.va

# DownloadFileAsync("C:\RobotExtractor\Projects\VirtualRobots\Robot Backups\2022-08-24-11_06_22\BP030R01B03\md:\wrt_user.vr", "/md:/wrt_user.vr", Overwrite, Retry)
Warning:  File failed to download: /md:/wrt_user.vr

# DownloadFileAsync("C:\RobotExtractor\Projects\VirtualRobots\Robot Backups\2022-08-24-11_06_22\BP030R01B03\md:\xmitdata.va", "/md:/xmitdata.va", Overwrite, Retry)
Warning:  File failed to download: /md:/xmitdata.va

# DownloadFileAsync("C:\RobotExtractor\Projects\VirtualRobots\Robot Backups\2022-08-24-11_06_22\BP030R01B03\md:\xmitdata.vr", "/md:/xmitdata.vr", Overwrite, Retry)
Warning:  File failed to download: /md:/xmitdata.vr

# DownloadFileAsync("C:\RobotExtractor\Projects\VirtualRobots\Robot Backups\2022-08-24-11_06_22\BP030R01B03\md:\zdlog.dg", "/md:/zdlog.dg", Overwrite, Retry)
Warning:  File failed to download: /md:/zdlog.dg

# DeleteExtraLocalFiles()

Should one sanitize on the Windows scheme to cover Linux/Unix as well, as a Q&D solution, or should one create an overload for DownloadDirectory(...) (et al), which replaces any of these forbidden characters with an allowed string (using a dictionary passed as argument)?
The forbidden printable ASCII characters are:
Linux/Unix:
  / (forward slash)

Windows:
  < (less than)
  > (greater than)
  : (colon - sometimes works, but is actually NTFS Alternate Data Streams)
  " (double quote)
  / (forward slash)
  \ (backslash)
  | (vertical bar or pipe)
  ? (question mark)
  * (asterisk)

Non-printable characters
Linux/Unix:
  0 (NULL byte)

Windows:
  0-31 (ASCII control characters)

I tested this sort of szenario with the current version of FluentFTP,
using
DownloadDirectoryAsync("D:\temp\testdir\", "/projects/md:/", Update, Overwrite, None, null)
and file listing like this:
Command:  LIST /projects/md:
Response: 125 List started OK
+---------------------------------------+
Listing:  total 1152
Listing:  -rw-r-----   1 ANSYS    SYS1      132480 Aug 25 11:04 test.bin
Listing:  -rw-r-----   1 ANSYS    SYS1      132480 Aug 25 11:04 test1
Listing:  -rw-r-----   1 ANSYS    SYS1      132480 Aug 25 11:04 test2
Listing:  -rw-r-----   1 ANSYS    SYS1      132480 Aug 25 11:04 test3
-----------------------------------------

then I am getting a sequence of download commands built like this specific one:
DownloadFileAsync("D:\temp\testdir\test.bin", "/projects/md:/test.bin", Overwrite, None)
(one of the files in /projects/md:/ is test.bin).
We need to debug what is the difference?

Can you try the download to a local directory that already exists? Just for testing?

I think if you specify:
After some debugging,
DownloadDirectoryAsync("C:\RobotExtractor\Projects\VirtualRobots\Robot Backups\2022-08-24-11_06_22\BP030R01B03\", "/md:/", Mirror, Overwrite, Retry, null)

/md:/ instead of md:/.
you might be more successful, can you try that?

Ah, the leading slash was what I overlooked. I guess I assumed that it would accept a relative path after changing the working directory to /. Thank you for your help!


Upgrade library to use jest v28 and RTL updates

Please update version of jest to v28
 "jest": "27.5.1",

Resolve all package and test updates
Please create your branch from release/0.5
git checkout release/0.5
git pull
git checkout -b 'feature/jest-upgrade'

PR created #302


Sanitise repo names used as zip file names in AWS uploads

Closes #57

@D-Dulius and @Dominic-Duke: I've added you both as reviewers because you've recently expressed an interest in learning more about GitHub actions and workflows. Don't feel the need to formally review the PR unless you want to.
Verification
I used the version of the AWS upload action from this branch in a branch of BitSim that I am working on to replace inline code in the CI build with our reusable actions.
I confirmed that the zip file uploaded to S3 from the CI build on that branch now uses a lowercase name and that it now triggers the downstream AWS CD pipeline as a result:
aws s3 ls s3://<code-bucket-name-elided>/ | grep -i bitsim | sort -r

2024-11-26 16:14:34     851080 bitsim.zip # zip file uploaded by the branch version of the S3 upload action
2024-11-26 16:05:35     851163 BitSim.zip # zip file uploaded by the current main version of the S3 upload action

Alternative Approaches
It's somewhat opaque to transform the repo name inside this action. I can't think of an obvious problem with that for our typical use cases, but perhaps some use cases will require the repo name to remain in its original format for some reason.
Another approach would be to add an optional param to the action to override the repo/zip file name if present and default to the current behaviour where no param is supplied. It would then be up to workflow calling the action to transform the repo name as appropriate before asking for the repo to be uploaded to S3.
That would be cleaner in some ways, but it's slightly more work and might be overkill. Let me know what you think.

it's does feel weird to change the name of the repo, but it's fine, we won't name two different tools bitsim and BitSim so there won't be any clashes... 👍

Well, what I'm thinking about it uses of this action from outside CML. Somebody may have a repo with a mixed-case name, and they may want to preserve that mixed-case name in the zip file uploaded to S3. Maybe they have something downstream of S3 that requires the mixed-case name (s3 names are case-sensitive and you cannot change that).
The more I think about it, I'm talking myself into the optional param approach. I think I'm going to do that.

Closing this as I've decided on a different approach. Rubber ducking for the win!


Using type script definition in new custom language?

Hi,
I am trying to use vsc with a proprietary language.
I managed to handle the syntax coloration easily.
For the completion I generated on my language in type script definition files (.d.ts). With that done, I have exactly what I want but it only works if I use javascript as my file language (and not my new own language)
So my  question is:
Can I leverage Type Script Definition files for custom languages completion? If so, how would you do that?
Thanks for your help
Nicolas

This is currently only possible by doing the following:

writing an extension that handles your new language
then using the tsserver that comes from the TS team
generating .d.ts files on the fly and pipe them into the tsserver (e.g. open them with a content set)
map your positions to TS
ask the tsserver for code complete, ...
map positions back.

Sounds complicated and it actually is :-).

Ok thanks!


[Select] Prevent items longer than the window width to be positioned outside of the viewport

fixes 2049
Description
As described in issue 2049, if you have an item that is longer than your screen width (on a small screen for example), you will have a negative offset, pushing the content out of the viewport.
This PR proposes to compare the contentWidth with the window.innerWidth before affecting left/right position and minWidth to the element and fallback to a default value (default margin for the position and screenWidth - default margins for the maxWidth).
This is the simplest solution I've found, but if you have suggestions to improve it, I'll be happy to discuss about it 🙂.

Thank you! Opted for a slightly different approach here. This will be in the next release.

Thanks for the feedback!


scraper.followers get error

You'll need to provide more context, this error is too general. It could be an issue with the account, authentication, rate limits, etc.


Fix a typo

Hi @LazarusX, I'm your friendly neighborhood .NET Foundation Pull Request Bot (You can call me DNFBOT). Thanks for your contribution!

This seems like a small (but important) contribution, so no Contribution License Agreement is required at this point. Real humans will now evaluate your PR.

TTYL, DNFBOT;

@LazarusX Thanks for catching this and opening the PR.


add .bz tld parser fix

add dedicated parser for .bz tld

Hello, this fix related with following issue: korall.bz parse error #147

Hello, that was a bad idea to join multiple types of changes in one PR. I'll fix it.


Remove histogram variance and stdDev for better performance

When looking at a flamegraph of CPU time recording metrics to a histogram in a relatively hot loop, almost all the time ends up being spent in updateVariance. Variance is only used for stdDev which we don't report or find useful when using Histograms at HubSpot, so we can just remove this entirely for better performance.
Truncated flamegraph:

👍 thanks


Question about color format

Hi,
I noticed in the sample app, the color format is set to .bgra8Unorm_srgb. Does it support HDR? Is there a particular reason behind this choice?
According to this Apple's documentation,  .rgba16Float is used to render HDR content.

Unfortunately 3DGS itself (at least the original basic representation) does not support HDR. There have been a number of papers on adding HDR support to 3DGS, and I can't wait to see the results as they enter the mainstream, but they'll need explicit changes to the renderer (and the defacto PLY schema, as the color representation in the current common schema can only support color value in the range 0..1). Once it's possible to represent and render HDR, then you're quite correct that we'll need to use a different color format to store the results.


More compatible panic statement

On Redox, strings cannot be passed to panic!, as it accepts the same arguments of format! and println!
This fixes compilation on Redox, while still allowing compilation on other platforms

Thanks, will keep that in mind in the future.


New line added onsave for all tfvars

Looks like this has always been the behaviour
hclfmt go utility does not do this, so it seems to that it is behaviour directly in vscode / this plugin
Happy to assist with a pull request, looking for some assistance on what might be causing this before diving in.

What happens when you run 'terraform fmt ${path to file}'?
Sent from my iPhone

On 29. Jun 2018, at 06:24, Tim Curtin<EMAIL_ADDRESS>wrote:
Looks like this has always been the behaviour
hclfmt go utility does not do this, so it seems to that it is behaviour directly in vscode / this plugin
Happy to assist with a pull request, looking for some assistance on what might be causing this before diving in.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub, or mute the thread.

Yeh, same thing actually, it adds new lines ... looks like a terraform fmt issue as part of this https://github.com/hashicorp/terraform/issues/15607

as this is a bug in terraform itself I am now closing this. thanks for using my plugin and thanks for taking the time to report a bug.


CB-14106 REST endpoint to execute cm sync in DistroX - part of epic: …

…CB-12736, After a failed DL/DH upgrade sync runtime versions
Customer should be able to manually issue a cdp-cli command to execute the syncing of the CM and active parcel versions from the CM server to CB Component and ClusterComponent tables.
For that end this commit introduces an endpoint in DistroX. The new endpoint calls the already existing sync cm flow.
See detailed description in the commit message.

Please resolve conflicting files, thank you!


NuttX: migrate NuttX CMake build for WAMR

Add NuttX CMake build support for platforms

@no1wudi Could you help have a look? Thanks a lot.

@xuxin930 Please trigger CI again

@xuxin930 Please trigger CI again

It seems that there is something wrong with the environment settings of the arm MacOs.

@xuxin930 Please trigger CI again

It seems that there is something wrong with the environment settings of the arm MacOs.

It is a little strange that macos CI ran failed for this PR:
https://github.com/bytecodealliance/wasm-micro-runtime/actions/runs/8502961539/job/23289867170
Run /usr/bin/env python3 -m pip install -r requirements.txt
error: externally-managed-environment

× This environment is externally managed
╰─> To install Python packages system-wide, try brew install
    xyz, where xyz is the package you are trying to
    install.

While other PR ran well:
https://github.com/bytecodealliance/wasm-micro-runtime/actions/runs/8503551804/job/23289206815

@xuxin930 @no1wudi I submitted PR #3270 to fix the macos CI issue.

@xuxin930 Please rebase the main branch to fix the macOS CI.


Number of decimal places for inference time

It appears as though the Frigate API is showing inference time as milliseconds with two decimal places, like:
"inference_speed": 6.79,
However, the exporter is showing it as seconds, with insufficient decimal places.
frigate_detector_inference_speed_seconds{name="coral1"} 0.007
It would be helpful to add two more decimal places to that value so we can see proper data granularity.
I see similar is true for Device Temperature, GPU Utilization, maybe others.
This is a great tool, thank you for that, and for your support with this.

It looks fabulous now, thanks!  You can close this as you wish of course.
I see you didn't skimp on the digits.
frigate_detector_inference_speed_seconds{name="coral1"} 0.007019999999999999
It is interesting that Frigate Other Processes memory utilization jumped from 4.5% to 7.3% coincident with the change.  Nothing big, but surprising that it changed at all.
My only other desire may be a Mean line for Inference time, but I am not sure that it is feasible.

That's great. I didn't notice the numbers were not getting read fully until you mentioned it so thanks for that! Much better now.
It is easy to add a mean line in Grafana. Need to add a new query dataset to the inference graph: avg_over_time(frigate_detector_inference_speed_seconds[30m]). This does a rolling average over 30mins.  Or actually I have added a mean line for the inference speed to my dashboard. The updated dashboard is here.


Break point for Hamburger menu

Hello everyone, I'm using the navbar in Silex V3 and I wanted to know what the break point values are for the hamburger menu.
I've made a site, but live on a smartphone the hamburger menu doesn't appear.
Here's the link:
http://d777153fa9b44c3695dc74f460529794.testurl.ws/
Thanks a lot.

The breakpoints are too small, is it possible to change them?
Thank you.


Increase test coverage in MultiTransformToUniTest

Fixes #202

Note: there's no rush and I'm off to PTO.


Side handlers don't work on mobile

Try grabbing the side handlers (not corners) on mobile and drag them - it doesn't work.

Thanks for opening the issue. For me, it sometimes works, but very severe. Not sure how this happens, but there must be a bug somewhere.

I can repro in Chrome using dev tools Device Toolbar with Responsive on and resolution 1216x800

You can repro Chrome on Desktop? Tried Responsive 1216x800, but I can't. I could repro on iPhone.

Can repro on Android. Cannot repro on Chrome desktop devTools emulation.

Fixed by #2459


grafana-agent: add Darwin support

Description of changes
This allows for the Grafana Agent to run on Darwin.
Tested locally by following the example configuration.
Things done

Built on platform(s)

[ ] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[x] aarch64-darwin

[x] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[x] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[x] Tested basic functionality of all binary files (usually in ./result/bin/)
23.05 Release Notes (or backporting 22.11 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module
[ ] (Release notes changes) Ran nixos/doc/manual/md-to-db.sh to update generated release notes

[x] Fits CONTRIBUTING.md.

Result of nixpkgs-review pr 204995 run on aarch64-darwin 1

1 package built:

grafana-agent

This pull request has been mentioned on NixOS Discourse. There might be relevant details there:
https://discourse.nixos.org/t/prs-already-reviewed/2617/787

@ofborg build grafana-agent grafana-agent.passthru.tests

Result of nixpkgs-review pr 204995 run on aarch64-darwin 1

1 package built:

grafana-agent


3.1.1: TypeError: cannot use a string pattern on a bytes-like object

Hi. The README.md says Python 3.7 and above is supported? I'm using Python 3.8.5, but I'm getting the following error:
Traceback (most recent call last):
  File "/path/to/home/.local/bin/pg_activity", line 8, in <module>
    sys.exit(main())
  File "/path/to/home/.local/lib/python3.8/site-packages/pgactivity/cli.py", line 389, in main
    dataobj = data.pg_connect(
  File "/path/to/home/.local/lib/python3.8/site-packages/pgactivity/data.py", line 518, in pg_connect
    data = Data.pg_connect(
  File "/path/to/home/.local/lib/python3.8/site-packages/pgactivity/data.py", line 107, in pg_connect
    pg_version = pg_get_short_version(pg_get_version(pg_conn))
  File "/path/to/home/.local/lib/python3.8/site-packages/pgactivity/data.py", line 57, in pg_get_short_version
    res = re.match(
  File "/usr1/local/anaconda_py3/miniconda38/lib/python3.8/re.py", line 191, in match
    return _compile(pattern, flags).match(string)
TypeError: cannot use a string pattern on a bytes-like object

> ~/.local/bin/pg_activity --version
pg_activity 3.1.1
> /usr1/local/anaconda_py3/miniconda38/bin/python3 --version
Python 3.8.5

I installed it using the command python3 -m pip install "pg_activity[psycopg]" --user.
Thanks,
Ed

That's strange, I cannot reproduce (tried to install miniconda, which is Python 3.8.16 at the moment).
Can you try to run this python session from /usr1/local/anaconda_py3/miniconda38/bin/python3 and report back?
>>> from pgactivity import pg
>>> pg.__version__
>>> conn = pg.connect()
>>> pg.fetchone(conn, "select version()")

Ok; then can you try?
>>> import psycopg
>>> conn = psycopg.connect("<your connection string>")
>>> conn.execute("select version()").fetchone()

�(�b�'�P�o�s�t�g�r�e�S�Q�L� �1�0�.�2�3� �o�n� �x�8�6�_�6�4�-�p�c�-�l�i�n�u�x�-�g�n�u�,� �c�o�m�p�i�l�e�d� �b�y� �g�c�c� �(�G�C�C�)� �4�.�4�.�7� �2�0�1�2�0�3�1�3� �(�R�e�d� �H�a�t� �4�.�4�.�7�-�1�8�)�,� �6�4�-�b�i�t�'�,�)�

Using .decode() to convert the bytes to a string works just fine, also:
>>> conn.execute("select version()").fetchone()[0].decode()
'PostgreSQL 10.23 on x86_64-pc-linux-gnu, compiled by gcc (GCC) 4.4.7 20120313 (Red Hat 4.4.7-18), 64-bit'

Any idea what? I've tried with LANG=en_US.UTF-8 and unsetenv-ing LANG, and I get the same result.

Well, it seems to be a bug in psycopg:
https://github.com/psycopg/psycopg/issues/503
Looks like it was fixed on February 1 (https://github.com/psycopg/psycopg/pull/504), but hasn't been released yet.

Indeed; the client encoding is probably a good lead.
Can you try adding client_encoding=utf-8 to your connection string?
On my side:
>>> import psycopg
>>> conn = psycopg.connect("client_encoding=sql_ascii")
>>> conn.info.encoding
'ascii'
>>> conn.execute("select version()").fetchone()
(b'PostgreSQL 15.2 (Debian 15.2-1.pgdg110+1) on x86_64-pc-linux-gnu, compiled by gcc (Debian 10.2.1-6) 10.2.1 20210110, 64-bit',)
>>>
>>> conn = psycopg.connect()
>>> conn.info.encoding
'utf-8'
>>> conn.execute("select version()").fetchone()
('PostgreSQL 15.2 (Debian 15.2-1.pgdg110+1) on x86_64-pc-linux-gnu, compiled by gcc (Debian 10.2.1-6) 10.2.1 20210110, 64-bit',)

However, the fix in psycopg you mention would not resolve this particular issue as it does not apply to all executed statements but only to TypeInfo.fetch(). So I think we should catch this early on our side and ... do something.

Yes, appending " client_encoding=utf-8" to my connection string seems to work!
>>> import psychopg
>>> conn = psycopg.connect(host=myhost dbname=mydatabase user=postgres client_encoding=utf-8")
>>> conn.info.encoding
'utf-8'
>>> conn.execute("select version()").fetchone()
('PostgreSQL 10.23 on x86_64-pc-linux-gnu, compiled by gcc (GCC) 4.4.7 20120313 (Red Hat 4.4.7-18), 64-bit',)

If I do that with pg_activity, I still get an error, unfortunately:
> ~/.local/bin/pg_activity "host=myhost dbname=mydatabase user=postgres client_encoding=utf-8"

Traceback (most recent call last):
  File "/path/to/.local/bin/pg_activity", line 8, in <module>
    sys.exit(main())
  File "/path/to/.local/lib/python3.8/site-packages/pgactivity/cli.py", line 408, in main
    ui.main(term, dataobj, host, args)
  File "/path/to/.local/lib/python3.8/site-packages/pgactivity/ui.py", line 204, in main
    pg_procs.set_items(data.pg_get_activities(ui.duration_mode))
  File "/path/to/.local/lib/python3.8/site-packages/pgactivity/data.py", line 413, in pg_get_activities
    return pg.fetchall(
  File "/path/to/.local/lib/python3.8/site-packages/pgactivity/pg.py", line 147, in fetchall
    return cur.execute(query, args, prepare=True).fetchall()
  File "/path/to/.local/lib/python3.8/site-packages/psycopg/cursor.py", line 851, in fetchall
    records = self._tx.load_rows(self._pos, self.pgresult.ntuples, self._make_row)
  File "psycopg_binary/_psycopg/transform.pyx", line 490, in psycopg_binary._psycopg.Transformer.load_rows
  File "/path/to/.local/lib/python3.8/site-packages/psycopg/rows.py", line 208, in kwargs_row__
    return func(**dict(zip(names, values)))  # type: ignore[arg-type]
  File "/path/to/.local/lib/python3.8/site-packages/pgactivity/types.py", line 933, in from_bytes
    kwargs[name] = value.decode(enc, errors="replace")
LookupError: unknown encoding: SQL_ASCII

If I do that with pg_activity, I still get an error, unfortunately:

Yes, I noticed that on my side too yesterday; that's a broader issue. I'm working on a fix.
Thank you for your patience.

@esabol I've stack all pending changes in a branch issue348 in our git repo; can you try to install pg_activity as python3 -m pip install "git+https://github.com/dalibo/pg_activity@issue348" and tell me how this works for you?

@dlax : It works! Thank you very much!
Unrelated (apologies): Not sure if this is an issue with my terminal or what, but there are blue â ("a" with caret) characters at the lines at the top, like this:
-/4 logical workers â
 -/8 parallel workers
   Other processes & info: 0/3 autovacuum workers â
 0/10 wal senders â
 0 wal receivers â
 -/10 repl. slots

What are those supposed to be? Is that how it's supposed to look?
Also, every ~5 seconds or so, a lot of text is printed to the screen, but then it vanishes so quickly that I can't read what it says. Is that to be expected?

What terminal are you using?

$TERM is "screen". But if I detach from my screen, my $TERM is xterm-color, and I still get the blue â ("a" with caret) instead of the blue bullets/dots. Ultimately, I'm inside a macOS Terminal window.
I think the text that flashes and then disappears every ~5 seconds are warnings about the ascii encoding....


Craftstations names

I can't achieve to add a jewel craftable in forge using your mod MoreJewelry
Log says : "Custom crafting station 'Forge' does not exist" whereas i wrote 'forge' in the yml file (without quotes).
Thank you for your much appreciated work anyway.

Thanks for the report, I'll take a look at this when I can.

This should now be fixed in 1.0.9.  Sorry for the delay 🙂


NOT WORKING☹☹

It stopped working after update i guess can u fix it😑

Hi, we're currently fixing on it. Thanks for your report.

Fixed.


Taiko should work with Windows

Expected behavior
Taiko should work on Windows OS
Actual behavior
When taiko is executed on bash, it exits and comes back to the bash.
Steps to replicate

globally install
Run the command taiko

It exits and returns to the bash

Version
commit - ef1c0db432e86a4328961b31fddeaafdefab07b7

Blocks https://github.com/getgauge/taiko/issues/166

Fix should be available in commit 09afc93.


Validating installation request process with "statusCode" undefined error

Descriptions
Validating installation request process with "statusCode" undefined error
** Requesting help. Thanks！🙏 **
Console Error Info
[shopify-api/INFO] Beginning OAuth | {shop: zhenggong.myshopify.com, isOnline: false, callbackPath: /auth/callback}
config.ts:117
TypeError: Cannot read properties of undefined (reading 'statusCode')
    at /Users/baymax/Desktop/onezerocom/shopify-apps/app-01-remix-vite-express/node_modules/@shopify/shopify-api/adapters/node/adapter.js:23:49
    at Generator.next (<anonymous>)
    at /Users/baymax/Desktop/onezerocom/shopify-apps/app-01-remix-vite-express/node_modules/tslib/tslib.js:169:75
    at new Promise (<anonymous>)
    at Object.__awaiter (/Users/baymax/Desktop/onezerocom/shopify-apps/app-01-remix-vite-express/node_modules/tslib/tslib.js:165:16)
    at nodeConvertIncomingResponse (/Users/baymax/Desktop/onezerocom/shopify-apps/app-01-remix-vite-express/node_modules/@shopify/shopify-api/adapters/node/adapter.js:21:20)
    at /Users/baymax/Desktop/onezerocom/shopify-apps/app-01-remix-vite-express/node_modules/@shopify/shopify-api/lib/auth/oauth/oauth.js:30:75
    at Generator.next (<anonymous>)
    at fulfilled (/Users/baymax/Desktop/onezerocom/shopify-apps/app-01-remix-vite-express/node_modules/tslib/tslib.js:166:62) {stack: 'TypeError: Cannot read properties of undefine…e-express/node_modules/tslib/tslib.js:166:62)', message: 'Cannot read properties of undefined (reading 'statusCode')'}

installation request
http://<IP_ADDRESS>:9696/auth/login?hmac=7571c799cda164add5c0f8fc24e26e4b386d771b00a69e29429540fdfcb09c0c&host=YWRtaW4uc2hvcGlmeS5jb20vc3RvcmUvemhlbmdnb25n&session=733696841bc1e8ad14b7933c953e1cfa8ffa91b7f05d1250ef96666cdfb28f6f&shop=zhenggong.myshopify.com&timestamp=1702215512

shopify.server.ts
import "@shopify/shopify-api/adapters/node";
import { shopifyApi, LATEST_API_VERSION } from "@shopify/shopify-api";
import { AppConfig } from "./config";

const shopify = shopifyApi({
  apiKey: AppConfig.SHOPIFY_API_KEY,
  apiSecretKey: AppConfig.SHOPIFY_API_SECRET,
  scopes: AppConfig.SCOPES.split(","),
  apiVersion: LATEST_API_VERSION,
  hostScheme: AppConfig.HOST_SCHEME,
  hostName: AppConfig.SHOPIFY_APP_URL,
  isEmbeddedApp: false,
  level: "debug",
});

export default shopify;

auth.login.ts
import type { LoaderFunctionArgs } from "@remix-run/node";
import shopify from "../shopify.server";
import { AppConfig } from "../config";

export const loader = async ({ request }: LoaderFunctionArgs) => {
  const { searchParams } = new URL(request.url);
  let shop = searchParams.get("shop");
  shop = shop && shopify.utils.sanitizeShop(shop, true);
  if (!shop) return "shop is null";
  return await shopify.auth.begin({
    shop,
    callbackPath: AppConfig.CALLBACK_PATH,
    isOnline: AppConfig.IS_ONLINE,
    rawRequest: request,
  });
  return null;
};

@MyBaymax did you ever figure this out? This is still happening to me...

There seems to be a trend of this happening if I tried app installations in quick succession.


Single base image with multiple versions

Is it possible to leverage this project to build multiple versions from a single base image?
Let's say I have a singular project for generating a semver'd python image.  My Dockerfile has a FROM python:$VERSION.  I'd like to generate a semver'd image for the following versions:

3.8.x
3.9.x
3.10.x

My end result would be a singular project with various base images of different python versions.
python-3.8.0:latest, python-3.8.0:1-latest, python-3.8.0:1.0.0
python-3.9.0:latest, python-3.9.0:1-latest, python-3.9.0:1.0.0
python-3.10.0:latest, python-3.10.0:1-latest, python-3.10.0:1.0.0

@iamjohnnym I think this might be going against how semantic release wants to work in general. Currently this project isn't set up for that (monorepos) currently. semantic release assumes a 1:1 mapping of repo to release / artifact. It'd be possible to accept arrays of configuration or you can also define the plugin multiple times in your release config each for a specific version, but i'm not sure that will really work out too well either.
What I might suggest is using multi-semantic-release for this purpose.
I have used this with pretty good success in combination with pnpm for inter dependent projects in a single repo
Here is a project that uses this setup for multiple npm packages rather than docker images, but the principle still applies.  The release config is defined in the root package.json and that is applied to all the projects in packages
pnpm is setup to track workspace packages. So when a change is made to release-config-core which the other two projects depend on,

Awesome.  Thanks for the suggestion, I'll check that out.


remove or scale store

the store is currently not scaleable, see also https://github.com/owncloud/ocis/issues/3913

https://github.com/owncloud/ocis-charts/pull/505 is removing the store from the oCIS Chart and using the nats-js cache for it instead.

store service is gone on main branche


Use app store connect p8 key

spaceship supports the usage of the App Store connect api key instead of password for usage without a password. This will help with 2fa accounts.

looks like it's already there


1.6.4

@rultor release tag is 1.6.4

@rultor release tag is 1.6.4

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

@rultor release tag is 1.6.4

@portlek Done! FYI, the full log is here (took me 7min)


gNMI-1.3: Use WatchAll for verifying metric changes in ate

Use WatchAll instead of GetAll for verifying metric changes in ate

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

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

Totals

Change from base Build<PHONE_NUMBER>:
0.0%

Covered Lines:
1203

Relevant Lines:
2125

💛  - Coveralls


"Unknown qualifier 27" error in DNP3Master

I have a problem about gathering unsolicited data from Outstation to Master by using opendnp3 library (library is used for creating DNP3 Master) if the index is more than 255. As you know in the case of  DNP3 Outstation having unsolicited data to send to the master station.
In this data, there is header information.  As indicated below, Object header's structure has Group, VAR, Qualifier and Range.

As you know, Qualifier Field is one byte(8 bits) and it has index size and qualifier code.
If the index is less than 255 there is no problem.
For example, index is 42, so index mode is 1 and qualifier is 17.
Unsolicited Response is shown in the Wireshark output

Unfortunately, if the index is more than 255, I take an error "Unknown qualifier 27", since qualifier is 27
For example, index is 500, so index mode is 2 and qualifier is 27.
Unsolicited Response is shown in the Wireshark output

Could it be a bug in the library? We think that the library expect that qualifier is 28 if the index mode is 2 but every DNP3 Outstation libraries do not send 8 for the qualifier code.
I hope that I can explain my problem.

OpenDNP3 does not support qualifier code 0x27. It is a valid qualifier, but uncommon because it mixes an 8-bit count with 16-bit indices. The usual qualifier for 16-bit indices is 0x28, even if you don't have many points.
There is a list of preferred qualifier codes in the standard, section <IP_ADDRESS>.3.5, and qualifier 0x27 is not part of this table. Therefore, it is not required to be implemented to claim a subset level compliance. There are a few more details about it in section 14.2.3 (and Table 14-1).
Your outstation might (and perhaps should?, although I can't point where it says so in the standard) support sending data using only the preferred qualifiers defined in the standard. You would need to check with your vendor.
We don't plan to add support for this as OpenDNP3 is feature freezed. We will only be doing bug fixes on OpenDNP3.


xDhcpServerOption: Router variable not documented

The router variable is not documented on the main README.md file as to its purpose.

The resource xDhcpServerOption was deprecated when the resource DhcpScopeOptionValue was released.  The resource xDhcpServerOption will be removed in the next release.


Distinguish between permanent and retryable failures in refreshing

In some case the refresh fails with a permanent error. Instead of going in the retry logic, we could directly stop the ConstructrMachine FSM.
As an example: in the consul-coordinator implementation renewing the session can fail with an unrecoverable error in which retrying is useless. See also: https://github.com/Tecsisa/constructr-consul/issues/5.

There should be a retry limit. Could you please confirm that this doesn't work during refreshing?

The retry limit is in place and works as expected.

Thanks for checking. I can close this then.

@hseeberger while indeed the retry limit works, it would be nice to 'fail fast' instead of retrying in case of known-to-be-unrecoverable errors.

@hseeberger @raboof The intent of this issue was indeed to be able to signal to 'fail fast' from the coordinator implementations.

The workings of the state machine are already very complex. Adding various ways of failure would increase complexity, hence I'm a bit on the fence here.
Could you please suggest a complete (not only Consul) specification of unrecoverable errors and ways to test the new behavior?


Forking pull requests result in Preview workflow errors

When a fork of this repository opens a PR, the Preview/Cleanup workflows want to push to the gh-pages branch. In many cases, the forking user (such as renovate-bot) won't have access for that push.
There are a couple options:

Skip the push (limiting the workflow to verifying the build)
Switch the event from pull_request to pull_request_target (violating GitHub warnings that this should not be used where the Pull Request creator can create code that will be executed, such as hugo templates)

I think (1) is the fastest path. However, we could pursue (2) with a twist: build in logic that scans the PR for maintainer approval before running the build.

Exploring the approval idea, there is a built-in mechanism, but it's not compatible with pull_request_target.
https://securitylab.github.com/research/github-actions-preventing-pwn-requests/ suggests that a pull_request_target workflow might have some protection by gating execution on the presence of a label, that requires someone with write access to apply. We'd probably want the workflow to remove his label as a later step so failures can be re-run, but new commits aren't automatically accepted.

The first implementation of fork skipping does not seem to work. Delving more closely, I found:
https://til.cazzulino.com/devops-ci-cd/how-to-skip-steps-or-jobs-in-github-actions-for-prs-from-forks
Tracing this github.event.pull_request.head.repo.fork context property to confirm it is correct is not easy,

https://docs.github.com/en/actions/learn-github-actions/contexts#github-context => place I knew to find github context.
https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows#pull_request => review pull request event
https://docs.github.com/en/developers/webhooks-and-events/webhooks/webhook-events-and-payloads#webhook-payload-object-34 =>  tells me there might be a pull_request object, go check the API docs
https://docs.github.com/en/rest/pulls => click on "Get a pull request"
github.event.pull_request.head.repo.fork => confirm head property, example response confirms repo.fork is a boolean

Going to switch the previous if logic to use this pattern. I assume my previous research was wrong, and github.repository is always the parent repo.


Test needs to compare contents of struct

Previously we were comparing the address of the two test structures, which always failed.

Please be careful with this change -- My go skills are very limited. However this is the only
way I can make the tests pass when the two clocks have the same underlying values

is this change version specific? I am running Go 1.4 locally

This appears to fail because I implemented clock as a struct instead of an int

You're absolutely correct that we should compare values of type clock rather than pointers to values of type clock.
The language specification states:

Pointer values are comparable. Two pointer values are equal if they point to the same variable or if both have value nil.
[...]
Struct values are comparable if all their fields are comparable. Two struct values are equal if their corresponding non-blank fields are equal.

The existing example passes the earlier version of the tests, because New does not return a pointer to a clock, but a value of type clock.
In idiomatic Go New would return a pointer to a clock, so the example solution (in clock/example.go) should really changed to reflect this. Additionally, the method receivers for the Add and String methods should also be pointers to Clock.
That would get the tests passing again.

Pointers don't need to be used as much in Go as in some other languages.  Common advice for example is to prefer value receivers over pointer receivers where there is no compelling reason to use pointers.  An example closer to this exercise is the way the time.Time type is used as a value rather than a pointer to a value.  I think a lesson for this exercise in Go is appreciating the use of values in Go.  This issue on this exercise has come up a couple of times though.  I think it might be appropriate to add comments to the top of the test program explaining that a working solution will work with values directly rather than indirectly and give some links for further reading -- the time.Time type for sure, and something comparing value receivers to pointer receivers.  I'll look this up and find some links...

Common advice for example is to prefer value receivers over pointer receivers where there is no compelling reason to use pointers.

Interesting. In my team at work we tend to prefer pointers, and I wasn't aware of the advice for values.
I do think that I've seen somewhere that the expectation for New is that it returns a pointer to a value, not the value itself. I'll see if I can find the reference.

https://github.com/golang/go/wiki/CodeReviewComments#receiver-type
then see how time.Time methods have value receivers
http://golang.org/pkg/time/#Time
We maybe could push this to nitpicking though by using reflect.DeepEqual as we have done with some other exercises.
package main

import (
    "fmt"
    "reflect"
)

type clock int

func main() {
    a := clock(3)
    b := clock(3)
    fmt.Println(a == b)
    pa := &a
    pb := &b
    fmt.Println(pa == pb)
    fmt.Println(reflect.DeepEqual(pa, pb))
}

outputs
true
false
true

Ah, well, but earlier discussion on using DeepEqual:  https://github.com/exercism/xgo/pull/108

We never persued dchapes's last suggestion to add something to the failure message.  I don't think we've done anything like this yet (not in the Go exercises anyway) but when == fails, we could then test for DeepEqual, and it if passes, then give a failure message suggesting to read comments in the test program, which would clarify that values must compare == and give links such as the two I gave above.  It would be adding a little hint or coaching toward a valid solution.

I completely forgot about that suggestion. I really like how that would make the test suite even more useful in pointing people to interesting and useful parts of the language, even before it gets to the nitpicking.

Alec, Thank you for raising this issue.  We took a different direction with PR https://github.com/exercism/xgo/pull/125 but you prompted us to improve the exercise.


Added a Set of ESLint Rules  and remove warnings

closes #15
/claim #15

@gemanor  Please let me know if you want any other rules then i will add those also

https://github.com/user-attachments/assets/3bc2f6c2-0014-4aca-881b-ef3be5fbe6f6

@quest-bot loot #15

@gemanor  i have made the requested changes ,plz review

@gemanor , Suggested changes has been implemented. Plz review it.
https://github.com/user-attachments/assets/6e66ec04-0811-46f9-b8ac-f216ce9f335b

@gemanor could you please take a look, bounty for this issue is not released yet.Thanks