Need a refresh button

I have several Vue instances on the page (being created and destroyed), and only the first one is ever displayed even when it is destroyed.

Thanks for bringing this to our attention @Akryum . We'll work on a fix for this.


Database is locked CBL 1.4.0

Getting this bug since switching to 1.4.0
The crash happens only in the start up fase of the app.
Fatal Exception: com.couchbase.lite.internal.database.sqlite.exception.SQLiteDatabaseLockedException: database is locked (code 5)
       at com.couchbase.lite.internal.database.sqlite.SQLiteConnection.nativeExecute(SQLiteConnection.java)
       at com.couchbase.lite.internal.database.sqlite.SQLiteConnection.execute(SQLiteConnection.java:486)
       at com.couchbase.lite.internal.database.sqlite.SQLiteSession.beginTransactionUnchecked(SQLiteSession.java:330)
       at com.couchbase.lite.internal.database.sqlite.SQLiteSession.beginTransaction(SQLiteSession.java:305)
       at com.couchbase.lite.internal.database.sqlite.SQLiteDatabase.beginTransaction(SQLiteDatabase.java:499)
       at com.couchbase.lite.internal.database.sqlite.SQLiteDatabase.beginTransaction(SQLiteDatabase.java:410)
       at com.couchbase.lite.storage.SQLiteStorageEngineBase.beginTransaction(SQLiteStorageEngineBase.java:150)
       at com.couchbase.lite.store.SQLiteStore.beginTransaction(SQLiteStore.java:2363)
       at com.couchbase.lite.store.SQLiteStore.add(SQLiteStore.java:1427)
       at com.couchbase.lite.Database.put(Database.java:1996)
       at com.couchbase.lite.Database.putRevision(Database.java:1943)
       at com.couchbase.lite.Database.putRevision(Database.java:1934)
       at com.couchbase.lite.Document.putProperties(Document.java:526)
       at com.couchbase.lite.UnsavedRevision.save(UnsavedRevision.java:118)
       at com.couchbase.lite.Document.update(Document.java:380)
       at com.app.DevUtilities.Cache.Cache.store(Cache.java:87)
       at com.app.DevUtilities.Cache.CacheObject.apply(CacheObject.java:35)
       at com.app.Models.AccountMeta.AccountMeta.save(AccountMeta.java:29)
       at com.app.controllers.Account.AccountController$2$1.run(AccountController.java:118)
       at java.lang.Thread.run(Thread.java:818)

Hi @trr-amsiq
SQLiteDatabaseLockedException is thrown if other thread holds the write connection. CBL has re-try logic if SQLite throws the SQLiteDatabaseLockedException. See the below link. I assume other thread is busy to write/update document and keeps holding the write connection. CBL has one or zero write SQLite connection, and three or four read connections. maximum total connections is four. Can you check if other threads are busy to write/update?
https://github.com/couchbase/couchbase-lite-java-core/blob/master/src/main/java/com/couchbase/lite/store/SQLiteStore.java#L2354-L2391

Hi @hideki ,
It seems that another thread is trying to write at the same time. Thanks!

HI @trr-amsiq ,
Is there a fix for this? I am facing issues due to this as many times data is not getting written to the db. On 1.4.0, the version 2.0.0 has min sdk 19, so can't move to that.

@betaCode95 I had too many issues with Couchbase so I migrated to Realm. Sorry

@betaCode95 @hideki's answer is correct. If you can share the log with Database logging, I could confirm if that is the case or not. We may be able to increate the max retry attempts and wait times in CBL if it makes sense.


Can not choose a day in month with 5 weeks

v3.5.1: If setScrollOrientation(DatePickerDialog.ScrollOrientation.VERTICAL) everything is OK.
v3.5.2: If setScrollOrientation(DatePickerDialog.ScrollOrientation.VERTICAL) there is some design change, so for now it is not possible to pick some days. For example in January there is 5 weeks. So how can I choose for example 31st of January? It is hidden and it can't be clicked. Thank you for your reply in advance.

What device are you testing this on? Can you show a screen shot?
This is working just fine for me here.

It appears on Samsung Galaxy S7. January 2017 is at my Czech locale. Sorry for partial informations. At English locale it is for example December 2017. See an attachement, please.

Ok cheers, I reproduced it.

I assume I cannot pick April 30th 2018 because of this issue, and it isn't the app developer's code but instead this library that is causing the problem.

If all goes well, I'll be able to release a version with a fix for this over the weekend.


fix handling of failed watches that result in snapshot

This also fixes the cursor not being used in some cases.

lgtm


updated grid deployment section to simplify future updates

Related Issue

https://github.com/threefoldtech/info_grid/issues/665

Work Done

Simplified the grid deployment section

We now only point to the grid_deployment docs to facilitate future updates
This means we can now focus on the grid_deployment docs and the manual won't need any updates.

I don't get ti, Why are we removing grid_deployment_full_vm.md ?

When I first wrote this section of the manual, it was before the TFGrid Full Stack procedures were documented on grid_deployment repo.
Just recently, @coesensbert completed all the docs for the full grid stack, not just the grid backend. I also made sure the docs were uniformized. See here: https://github.com/threefoldtech/grid_deployment/tree/development
So the idea is that the manual will point to the grid_deployment docs and we can just update that repo and the manual won't be out of sync.
If you think the manual docs have some relevant info, we can put it in the grid_deployment docs. But I think it'll be easier to maintain one set of docs, especially since the future grid guardians will need to host the grid stack, we will want as less confusion and as much clarity as possible on which set of docs to use.
I hope it's clear.

@Mik-TF Great since the same info is on the repo docs, only one would be enough.
Can you just fix the conflict.

Also, I notice that there's a lot of info missing, like creating a TFChain node and a lot of information and notes that wouldn't be there.
Generate a TFChain node key with subkey

Note: If you deploy the 3 network instances, you can use the same node key for all 3 networks. But it is recommended to use 3 different keys to facilitate management.
echo .nodekey_mainnet >> .gitignore
../../apps/subkey generate-node-key > .nodekey_mainnet
cat .nodekey_mainnet


[Book] The book is not valid for the current release

The exemples given in the book on the List chapter cannot be compiled with the latest release (0.3.1).
It seems that the book is published regularly on not only on release.
The best « fix » would be to publish the book with a version selector. So we can switch between releases and latest.
Exemples of errors:

On the subclassing, we cannot omit « type ParentType = glib::Object » while on the latest it seems to be the default if omitted.
« model.splice(0, 0, &vector) » can’t be used.

Overall the book is a good introduction, I can see that it is an express introduction and that many MANY features are not listed but it is what I expect of this kind of book 😃
Thanks for the work 👍 .

The best « fix » would be to publish the book with a version selector. So we can switch between releases and latest.

That's very hard to achieve :/ At some point the bindings will stabilize +/- and the book would be as well

Sadly i know that it is a hard thing to achieve 😄. It is the best fix but not the easiest.
It is just that being a Java backend dev, i’m inclined to have a tunnel vision while learning Rust AND gtk4. And as such i’ve try to put « GObject » as a ParentType to correct the error because it is what is indicated in the book, the « root » object. And i’ve passed a good amount of time searching for the different compilation error before even thinking that the doc was simply out of sync. And it may discourage others will the book is overall a good start.
At no point in the doc is there a reference to the current release version so it was a bad assertion on my part. A simple warning at the start of the book will be enought.

Warning, this book represent the state of the latest/nightly/snapshot version. Some part may not work with the current release. If it is the case, please clone the repo and read the exemple/the book on the release tag.

Something like that.

The  book is now following the latest stable release instead of git


[RUNTIME][IR] String operator+

We have a few places in the code base that uses operator+ of String. Right now:

we either convert to std string https://github.com/apache/incubator-tvm/blob/master/src/tir/ir/expr.cc#L86
Or added some overload that converts to std::string https://github.com/apache/incubator-tvm/blob/master/include/tvm/runtime/container.h#L1391

Given that operator+ is quite common, and we can have a better solution in these cases(by allocating the right result length then copy), perhaps we should have a good overload for most cases.

cc @zhiics @wweic @junrushao1994

I agree, not sure about the performance impact though

k, it is mainly about the usability, than the perf aspect

Besides this, I think we should make the comparison operators free functions instead of member functions because they are not communicative.

@zhiics would you be interested in taking a stab?

#5770 5806

Closing thanks to @zhiics !


Downloading Error

I downloaded the first video but the next one gives me error like this

Downloading video segments
progress [░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░] 0%   0 MB/s   0s
[ERROR] Error while downloading, retrying...
[ERROR] Error while downloading, retrying...
[ERROR] Error while downloading, retrying...
[ERROR] Error while downloading, retrying...
[ERROR] Error while downloading, retrying...
[ERROR] undefined
[FATAL ERROR] Unhandled error or uncaught exception!
Please check your download directory/directories and try again.
If this keep happening please report it on github "https://github.com/snobu/destreamer/issues"

Try upgrading your ffmpeg version to 4.3.x.

Try upgrading your ffmpeg version to 4.3.x.

can you give me a link please , i can't fing it

It's in the README under prereqs.

Help me


ATV-23 | Remove documents

Description :sparkles:

Add functionality and checks for deleting documents
Add locked_after details to the error message

Issues :bug:
Closes :no_good_woman:
ATV-21:
Testing :alembic:
Automated tests :gear:
$ pytest documents/tests/test_api_destroy_document.py

Additional notes :spiral_notepad:
Requires that #31 is merged first

Codecov Report

Merging #33 (e97e322) into main (3e20d76) will increase coverage by 1.01%.
The diff coverage is 84.61%.

:exclamation: Current head e97e322 differs from pull request most recent head a85c061. Consider uploading reports for the commit a85c061 to get more accurate results

@@            Coverage Diff             @@
##             main      #33      +/-   ##
==========================================
+ Coverage   84.34%   85.35%   +1.01%
==========================================
  Files          45       46       +1
  Lines        1009     1072      +63
  Branches       90       98       +8
==========================================
+ Hits          851      915      +64
+ Misses        124      122       -2
- Partials       34       35       +1

Impacted Files
Coverage Δ

documents/models.py
92.72% <50.00%> (-0.13%)
:arrow_down:

utils/exceptions.py
70.58% <70.58%> (ø)

documents/api/viewsets.py
90.40% <87.50%> (-0.68%)
:arrow_down:

atv/exceptions.py
97.05% <96.77%> (+44.11%)
:arrow_up:

atv/settings.py
80.48% <100.00%> (ø)

documents/serializers/attachment.py
90.90% <100.00%> (-0.40%)
:arrow_down:

documents/serializers/document.py
97.67% <100.00%> (+0.05%)
:arrow_up:

audit_log/viewsets.py
84.72% <0.00%> (+4.16%)
:arrow_up:

utils/files.py
72.72% <0.00%> (+4.54%)
:arrow_up:

... and 1 more

Continue to review full report at Codecov.

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


Write Windows Installation Guide

On our webpage
Should not be available except via direct link
Direct link should not be exposed for the time being
It should cover the current mpvQC-dev (Qt6) version

Not needed. The installation process has not been changed for years.


Should submit_and_process() return a sorted Vec of buffers? Or don't return buffers at all (just return Vec<Result<(), io::Error>>)

At the moment, submit_and_process() returns an unsorted Vec<OperationDescriptor>. The OperationDescriptors appear in whatever order they were processed.
Will users be happy with this? Or would they prefer the returned Vec to be in the same order as the submitted operations?
For Zarr, I don't think we'll return anything. For uncompressed Zarrs, we'll read from disk directly into the Numpy array using readv(). For compressed Zarrs, we'll move the uncompressed data into the final Numpy array as part of the processing function.
So maybe submit_and_process() should only return a Vec<Result<(), io::Error>>? If users do want the chunks to be returned in a Vector, then maybe the user could pass buffers into a user-supplied crossbeam::ArrayQueue as part of the user-supplied processing function?

I've just implemented the solution described in the last paragraph above in this commit: d4c27b60642dfa9bbaa3c70e60691b12b5c27056
Feels good.


workaround

Sorry my mistake, I meant to merge a branch on my fork. Accidentally made a pull request.

No worries! Though I'm curious, I usually use git-bash, did something break recently and the processing task doesn't work through it?

Seems that vscode tasks has trouble deciding whether to use \ or / in paths, it's dependent on platform not terminal. Resulting in some people having slashes removed from the path when trying to run in git bash. I'm sure I could find a better solution but I figured this would be quickest for the time being.
Here's the main issue I found if you're interested in looking into it more, but I just read enough to know it it hasn't been fixed yet.


Reflection of changes in GUI

I do not know if this issue can be solved.
When I change setting in the GUI (e.g. switch on another branch) and then run the model via VS code, the changes are not reflected. I have to start the model once over the GUI and then the correct start via VS code is also possible.

This is due to the way GGIG works: The GGIG-GUI communicates with GAMS through the files stored in the gams/incgen folder. For a single-farm-run in FarmDyn, the GGIG-GUI stores all relevant farm settings in the gams/incgen/runInc.gms file. Unfortunately, changes in the GGIG-GUI will only be stored in the runInc.gms after you either press the compile or run button in GGIG.
One option is to directly change values in runInc.gms using VSCode. This has the advantage that the changes are picked up by VSCode right away, but has the strong disadvantage that they are not reflected in the GUI. This means, if you change something manually in runInc.gms, and then change another thing in the GUI and press compile or run, your manual changes will be lost.
Should we have better documentation for this in the gams-ide docs? Or what would you propose?

Yes, I excpected that this could not be changed. Let's have a section in the documentaion on gams-ide and GUI usage as this will be relevant for FarmDyn and CAPRI user which will likely be the main user group of gams-ide in the beginning.

I'm open for text suggestions 😊

Text suggestion for documentation:
"When the model is operated via a GUI (e.g. FarmDyn, Capri), changes in the GUI are not automaticly reflected in VS code. The workflow is for example 1) make changes in the GUI, run the model once via the GUI, then use VS code and gams-ide as usual or 2) make changes in gams file with GUI settings (e.g. runInc) instead of using the GUI.


Update French localization

Following on from #4662, this PR adds translations for new strings and makes a tweak to an existing string.
I'd be grateful if you could take a look @Signez 🙏

Correction applied, thanks yet again @Signez! :)


PERF: Sparse IntIndex.make_union / Numeric ops

[x] tests added / passed
[x] passes git diff upstream/master | flake8 --diff
[ ] whatsnew entry

Replace repeated list.append with np.union1d in IntIndex.make_union. make_union is used in numeric ops.
NOTE: It is also possible to fix IntIndex.intersect to use np.intersect1d, but it doesn't increase the performance (because the length of the result is smaller).
The below microbench assumes array's 90% is sparse.
import numpy as np
import pandas as pd

np.random.seed(1)
N = 1000000
a = np.array([np.nan] * N)
b = np.array([np.nan] * N)

indexer_a = np.unique(np.random.randint(0, N, N / 10))
indexer_b = np.unique(np.random.randint(0, N, N / 10))
a[indexer_a] = np.random.randint(0, 100, len(indexer_a))
b[indexer_b] = np.random.randint(0, 100, len(indexer_b))

sa = pd.SparseArray(a)
sb = pd.SparseArray(b)

on current master
%timeit sa.sp_index.make_union(sb.sp_index)
# 10 loops, best of 3: 52.7 ms per loop

%timeit sa + sb
10 loops, best of 3: 47.8 ms per loop

After this PR
%timeit sa.sp_index.make_union(sb.sp_index)
100 loops, best of 3: 11.6 ms per loop

%timeit sa + sb
100 loops, best of 3: 15.3 ms per loop

[Current coverage][cc-pull] is 84.06%

Merging [#13036][cc-pull] into [master][cc-base-branch] will decrease coverage by -0.00%

@@             master     #13036   diff @@
==========================================
  Files           136        136
  Lines         49994      49994
  Methods           0          0
  Messages          0          0
  Branches          0          0
==========================================
- Hits          42028      42027     -1
- Misses         7966       7967     +1
  Partials          0          0

File ...das/tseries/index.py (not in diff) was modified. more

Misses +1
Partials 0
Hits -1

Powered by Codecov. Last updated by [84725fa...33104f5][cc-compare]
[cc-base-branch]: https://codecov.io/gh/pydata/pandas/branch/master?src=pr
[cc-compare]: https://codecov.io/gh/pydata/pandas/compare/84725fa936b4136657f5ea02c588790de6866899...33104f50ac850f556f2052f58e268e4a5c49e815
[cc-pull]: https://codecov.io/gh/pydata/pandas/pull/13036?src=pr

this looks fine for 0.18.1. do you want to add some sparse benchmarks?

OK, added whatsnew and bench.
   before     after       ratio
  [286782da] [a48f05db]
-   18.15ms     8.20ms      0.45  sparse.sparse_arithmetic.time_sparse_addition_10percent
-   18.17ms     8.08ms      0.44  sparse.sparse_arithmetic.time_sparse_division_10percent
-   17.97ms     7.73ms      0.43  sparse.sparse_arithmetic.time_sparse_addition_10percent_zero
-   18.47ms     7.84ms      0.42  sparse.sparse_arithmetic.time_sparse_division_10percent_zero
-    2.06ms   810.82μs      0.39  sparse.sparse_arithmetic.time_sparse_division_1percent
-    2.05ms   804.12μs      0.39  sparse.sparse_arithmetic.time_sparse_addition_1percent

ok ping on green.

Thanks, now green.

thanks @sinhrks


ERR MOVED with ioredis 5.3.1 when connected to ElastiCache Serverless

Occasionally the following error is reported:
{
    "command": {
        "args": [
            "<key_redacted>",
            "<value_redacted>",
            "EX",
            "3600"
        ],
        "name": "set"
    },
    "level": "error",
    "message": "ERR MOVED 7572 <redacted>-aud8py.serverless.euw1.cache.amazonaws.com:6379",
    "stack": "ReplyError: ERR MOVED 7572 <redacted>-aud8py.serverless.euw1.cache.amazonaws.com:6379\n    at parseError (/app/node_modules/.pnpm/redis-parser@3.0.0/node_modules/redis-parser/lib/parser.js:179:12)\n    at parseType (/app/node_modules/.pnpm/redis-parser@3.0.0/node_modules/redis-parser/lib/parser.js:302:14)",
    "timestamp": "2024-03-06 08:33:58"
}

When the app container is restarted (and a new Redis.Cluster client instance is created) the problem does not occur anymore.
The client is created as follows:
const url = new URL(connectionString)
const client = new Redis.Cluster(
  [
    {
      host: url.hostname,
      port: parseInt(url.port, 10)
    }
  ],
  {
    slotsRefreshTimeout: 5000,
    retryDelayOnMoved: 1000,
    maxRedirections: 64,
    // options required when connecting to ElastiCache:
    dnsLookup: (address, callback) => callback(null, address),
    redisOptions: { tls: {} }
  }
)

I added the retryDelayOnMoved setting after this was reported for the first time but this does not seem to have effect.
Can this be an issue of the ioredis client? The message ERRO MOVED 7572 url:post seems completely valid - see Redis docs section Moved Redirection.
Can this be related to this note: Aws Elasticache Clusters with TLS.
Any help is welcome. This issue is hard for us to debug since we are not able to reproduce it.

I'm having the same problem with ioredis 5.3.2:

Only happens with serverless; doesn't happen in the staging environment with my identical setup but provisioned (non-serverless) AWS Elasticache
Every time, it starts after about 11 days of continuous connectivity, and then the issue persists every time until application restart

I believe it's because every 11 days or so, AWS Serverless closes the underlying connection (resulting in ECONNRESET) and swaps in a new underlying node available at the same <host>:<port>. But ioredis assumes this can't happen, hence retryStrategy is always null in cluster mode (source).
I ran with debug logs enabled and got this:
# GET and SET working fine before this point

2024-03-13T11:48:01.363Z ioredis:connection error: Error: read ECONNRESET
    at TLSWrap.onStreamRead (node:internal/stream_base_commons:217:20) {
  errno: -104,
  code: 'ECONNRESET',
  syscall: 'read'
}
2024-03-13T11:48:01.368Z ioredis:redis status[<REDACTED>:6379]: ready -> close
2024-03-13T11:48:01.368Z ioredis:connection skip reconnecting because `retryStrategy` is not a function
2024-03-13T11:48:01.368Z ioredis:redis status[<REDACTED>:6379]: close -> end
2024-03-13T11:48:01.369Z ioredis:cluster:connectionPool Remove <REDACTED>.serverless.use2.cache.amazonaws.com:6379 from the pool
2024-03-13T11:48:01.369Z ioredis:cluster:subscriber subscriber has left, selecting a new one...
2024-03-13T11:48:01.370Z ioredis:redis status[<REDACTED>.serverless.use2.cache.amazonaws.com:6379 (ioredis-cluster(subscriber))]: wait -> close
2024-03-13T11:48:01.370Z ioredis:connection skip reconnecting since the connection is manually closed.
2024-03-13T11:48:01.370Z ioredis:redis status[<REDACTED>.serverless.use2.cache.amazonaws.com:6379 (ioredis-cluster(subscriber))]: close -> end
2024-03-13T11:48:01.370Z ioredis:cluster:subscriber selected a subscriber <REDACTED>.serverless.use2.cache.amazonaws.com:6380
2024-03-13T11:48:01.371Z ioredis:redis status[<REDACTED>.serverless.use2.cache.amazonaws.com:6380 (ioredis-cluster(subscriber))]: wait -> wait

# GET returning null, and SET throwing error past this point

Errors after this point look like:
{
  "name": "ReplyError",
  "message": "ERR MOVED 7351 <REDACTED>.serverless.use2.cache.amazonaws.com:6379",
  "stack": [
    "parseError (node_modules/.pnpm/redis-parser@3.0.0/node_modules/redis-parser/lib/parser.js:179:12)",
    "parseType (node_modules/.pnpm/redis-parser@3.0.0/node_modules/redis-parser/lib/parser.js:302:14)"
  ]
}

Due to:
2024-03-14T05:14:47.495Z ioredis:redis write command[<REDACTED>:6380]: 0 -> set([ ... ])

Minimum Reproducible Issue
import http from "http";
import net from "net";
import { parse } from "url";
import { getRedisClient } from "your-redis-client-constructor-here";

const hostname = "<IP_ADDRESS>";
const port = 4020;

// Needs to be Redis.Cluster
const redisClient = getRedisClient();

const econnresetAllNodes = (clusterClient) => {
  const allNodes = Object.values(clusterClient.connectionPool.nodes.all);
  for (const node of allNodes) {
    if (!node.stream) continue;
    // Even though it's named "stream", it's actually a NodeJS socket
    node.stream.destroy();
  }
};

const server = http.createServer((req, res) => {
  const url = parse(req.url, true);

  if (req.method === "PUT" && url.pathname === "/connreset") {
    req.on("data", (chunk) => {});
    req.on("end", () => {
      econnresetAllNodes(redisClient);
      res.statusCode = 200;
      res.setHeader("Content-Type", "text/plain");
      res.end("Connection reset successfully\n");
    });
  } else {
    res.statusCode = 404;
    res.end("Not Found\n");
  }
});

server.listen(port, hostname, () => {
  console.log(`Server running at http://${hostname}:${port}/`);
});

Then after DEBUG=ioredis:* node index.js, do curl -X PUT localhost:4020/connreset. Same issue results:
ioredis:redis status[<REDACTED>:6379]: ready -> close +3s
ioredis:connection skip reconnecting because `retryStrategy` is not a function +3s
ioredis:redis status[<REDACTED>:6379]: close -> end +1ms
ioredis:cluster:connectionPool Remove <REDACTED>.serverless.use2.cache.amazonaws.com:6379 from the pool +3s
ioredis:cluster:subscriber subscriber has left, selecting a new one... +3s
ioredis:redis status[<REDACTED>.serverless.use2.cache.amazonaws.com:6379 (ioredis-cluster(subscriber))]: wait -> close +0ms
ioredis:connection skip reconnecting since the connection is manually closed. +1ms
ioredis:redis status[<REDACTED>..serverless.use2.cache.amazonaws.com:6379 (ioredis-cluster(subscriber))]: close -> end +0ms
ioredis:cluster:subscriber selected a subscriber <REDACTED>.serverless.use2.cache.amazonaws.com:6380 +1ms
ioredis:redis status[<REDACTED>.serverless.use2.cache.amazonaws.com:6380 (ioredis-cluster(subscriber))]: wait -> wait +1ms

Initial Connection Logs (if helpful)
ioredis:cluster status: [empty] -> connecting +0ms
ioredis:cluster resolved hostname <REDACTED>.serverless.use2.cache.amazonaws.com to IP <REDACTED>.serverless.use2.cache.amazonaws.com +3ms
ioredis:cluster:connectionPool Reset with [
ioredis:cluster:connectionPool   {
ioredis:cluster:connectionPool     port: 6379,
ioredis:cluster:connectionPool     host: '<REDACTED>.serverless.use2.cache.amazonaws.com',
ioredis:cluster:connectionPool     username: 'default',
ioredis:cluster:connectionPool     tls: {},
ioredis:cluster:connectionPool     reconnectOnError: [Function: reconnectOnError]
ioredis:cluster:connectionPool   }
ioredis:cluster:connectionPool ] +0ms
ioredis:cluster:connectionPool Connecting to <REDACTED>.serverless.use2.cache.amazonaws.com:6379 as master +3ms
ioredis:redis status[<REDACTED>.serverless.use2.cache.amazonaws.com:6379]: wait -> wait +0ms
ioredis:cluster getting slot cache from <REDACTED>.serverless.use2.cache.amazonaws.com:6379 +7ms
ioredis:redis status[<REDACTED>.serverless.use2.cache.amazonaws.com:6379 (ioredis-cluster(refresher))]: wait -> wait +1ms
ioredis:redis status[<REDACTED>.serverless.use2.cache.amazonaws.com:6379 (ioredis-cluster(refresher))]: wait -> connecting +1ms
ioredis:redis queue command[<REDACTED>.serverless.use2.cache.amazonaws.com:6379 (ioredis-cluster(refresher))]: 0 -> cluster([ 'SLOTS' ]) +1ms
ioredis:cluster:subscriber selected a subscriber <REDACTED>.serverless.use2.cache.amazonaws.com:6379 +0ms
ioredis:redis status[<REDACTED>.serverless.use2.cache.amazonaws.com:6379 (ioredis-cluster(subscriber))]: wait -> wait +1ms
ioredis:cluster:subscriber started +0ms
ioredis:redis status[<REDACTED>:6379 (ioredis-cluster(refresher))]: connecting -> connect +62ms
ioredis:redis write command[<REDACTED>:6379 (ioredis-cluster(refresher))]: 0 -> auth([ 'default', '' ]) +2ms
ioredis:redis status[<REDACTED>:6379 (ioredis-cluster(refresher))]: connect -> ready +1ms
ioredis:connection set the connection name [ioredis-cluster(refresher)] +0ms
ioredis:redis write command[<REDACTED>:6379 (ioredis-cluster(refresher))]: 0 -> client([ 'setname', 'ioredis-cluster(refresher)' ]) +0ms
ioredis:connection send 1 commands in offline queue +0ms
ioredis:redis write command[<REDACTED>:6379 (ioredis-cluster(refresher))]: 0 -> cluster([ 'SLOTS' ]) +1ms
ioredis:cluster cluster slots result count: 1 +86ms
ioredis:cluster cluster slots result [0]: slots 0~16383 served by [
'<REDACTED>.serverless.use2.cache.amazonaws.com:6379',
'<REDACTED>.serverless.use2.cache.amazonaws.com:6380'
] +0ms
ioredis:cluster:connectionPool Reset with [
ioredis:cluster:connectionPool   {
ioredis:cluster:connectionPool     host: '<REDACTED>.serverless.use2.cache.amazonaws.com',
ioredis:cluster:connectionPool     port: 6379,
ioredis:cluster:connectionPool     readOnly: false
ioredis:cluster:connectionPool   },
ioredis:cluster:connectionPool   {
ioredis:cluster:connectionPool     host: '<REDACTED>.serverless.use2.cache.amazonaws.com',
ioredis:cluster:connectionPool     port: 6380,
ioredis:cluster:connectionPool     readOnly: true
ioredis:cluster:connectionPool   }
ioredis:cluster:connectionPool ] +103ms
ioredis:cluster:connectionPool Connecting to <REDACTED>.serverless.use2.cache.amazonaws.com:6380 as slave +1ms
ioredis:redis status[<REDACTED>.serverless.use2.cache.amazonaws.com:6380]: wait -> wait +33ms
ioredis:cluster status: connecting -> connect +17ms
ioredis:redis status[<REDACTED>.serverless.use2.cache.amazonaws.com:6379]: wait -> connecting +2ms
ioredis:redis queue command[<REDACTED>.serverless.use2.cache.amazonaws.com:6379]: 0 -> cluster([ 'INFO' ]) +0ms
ioredis:redis status[<REDACTED>:6379 (ioredis-cluster(refresher))]: ready -> close +3ms
ioredis:connection skip reconnecting since the connection is manually closed. +39ms
ioredis:redis status[<REDACTED>:6379 (ioredis-cluster(refresher))]: close -> end +0ms
ioredis:redis status[<REDACTED>:6379]: connecting -> connect +14ms
ioredis:redis write command[<REDACTED>:6379]: 0 -> auth([ 'default', '' ]) +1ms
ioredis:redis write command[<REDACTED>:6379]: 0 -> info([]) +0ms
ioredis:redis status[<REDACTED>:6379]: connect -> ready +3ms
ioredis:connection send 1 commands in offline queue +19ms
ioredis:redis write command[<REDACTED>:6379]: 0 -> cluster([ 'INFO' ]) +1ms
ioredis:cluster status: connect -> ready +25ms

On further investigation, we decided to move to node-redis; it seems like this project is now in maintenance mode.

@adamshugar Thanks for the comment, having a similar problem and came to the same conclusion. Wondering if you'd be willing to post your working node-redis client config for serverless elasticache in this thread.

I'm using bullmq which unfortunately has decided not to move:
https://github.com/taskforcesh/bullmq/issues/2490
wondering if anyone has solved this one...


Change default gunicorn address

Use <IP_ADDRESS> as default instead of <IP_ADDRESS>

Makes sense to me, somehow our service discovery framework makes <IP_ADDRESS> work for us but I can see how it wouldn't work for others.

@bkyryliuk we may want to hard code <IP_ADDRESS> in chef to only allow access through smartstack

I don't think making the default less secure is a good idea, i don't like to have to remember to change the ip address when running superset from my laptop on a network i don't trust.
@amancevice what's your use case? Is it for development or production?

And for some reason i cannot find looking at the code we're binding to <IP_ADDRESS> by default since a few.


Wengang ji branch

{
"query":"{
getServiceTPSTrend(serviceId: 2,duration:{start: "201701", end: "201702",step: MONTH})
{trendList}
}"
}
{
"data": {
"getServiceTPSTrend": {
"trendList": [
0,
0
]
}
}
}

Please be advised:

You need to pull request an entirety feature, not just a few DAO implementations.
Your pr descriptions are meaningless, I am not sure what you are going to do.
Your commit logs show your Git setting is not right.

Please understand what does a pull request mean.

I am going to close this pull request. Please start a new if you are ready. FYI @apache/skywalking-committers


Front-End Client

Current client is pretty bare-bones.
I'm going to look at using ElectronJS to make a front-end client with a more attractive play area.  Theming, desktop build, etc.


Update flow-plugin-base, flow-server to 24.2.2

About this PR
📦 Updates

com.vaadin:flow-plugin-base
com.vaadin:flow-server

from 23.3.24 to 24.2.2 ⚠
Usage
✅ Please merge!
I'll automatically update this PR to resolve conflicts as long as you don't change it yourself.
If you'd like to skip this version, you can just close this PR. If you have any feedback, just mention me in the comments below.
Configure Scala Steward for your repository with a .scala-steward.conf file.
Have a fantastic day writing Scala!

⚙ Adjust future updates
Add this to your .scala-steward.conf file to ignore future updates of this dependency:
updates.ignore = [ { groupId = "com.vaadin" } ]

Or, add this to slow down future updates of this dependency:
dependencyOverrides = [{
  pullRequests = { frequency = "30 days" },
  dependency = { groupId = "com.vaadin" }
}]

labels: library-update, early-semver-major, semver-spec-major, commit-count:1

Superseded by #83.


smclock - Updated backgrounds

Been a while since i made one of those. only changed stuff in my app.

The new linter rules picked up:

Check warning on line 29 in apps/smclock/app.js
GitHub Actions / build
'showAnalogFace' is assigned a value but never used

Could you remove that variable or comment it out please.
Just looking at the code I think it looks good otherwise.

Just installed from your personal app loader with weird result:

Trying the previous version seems to work as expected:

When using the default 3bit mode I get this error:
 ____                 _
|  __|___ ___ ___ _ _|_|___ ___
|  __|_ -| . |  _| | | |   | . |
|____|___|  _|_| |___|_|_|_|___|
         |_| espruino.com
 2v22.15 (c) 2024 G.Williams
Uncaught Error: Palette specified, but must be a flat Uint16Array of 2,4,8,16,256 elements
 at line 20 col 1422 in smclock.app.js
...ork;}g.drawImage(background);batColor=getBatteryColor(batLev...
                              ^
in function "draw" called from line 20 col 2908 in smclock.app.js
...clear();pollBattery();draw();var batInterval=setInterval(pollBa...
                                 ^
>

@smekras feel free to open this again if you want to. Closing for now.


Thick borders

Not sure if this is intended or not, but it seems perfect vision is eliminating the blurred effect of lightning on borders. This is with v9 and perfect vision 3.2.5.
With Perfect Vision:

Without Perfect Vision:

Intentional, see https://github.com/dev7355608/perfect-vision/releases/tag/v3.2.1
This fixes an unpleasant ring effect around light sources, which was especially noticable with low darkness level or light sources with negative luminosity.
The blur effect of lighting border without PV is so large because of technical limitations of current core implementation. PV changes that completely, which removes the large blur effect and vision/light actually reaches walls. With the sight layer change in v3.2.1 it feels a little sharper, because the sight layer now hides the small light falloff completely.

Oh. I see, thank you for explaining! I guess it’s one of those situations where you have to pick.
The border is kind of thick to my taste, as it hides the graphical wall on most maps.

I now see that I forgot to consider something. I didn't notice because my performance settings were high/max, in which case these is an extra blur applied to the lighting. Taking a closer look at your screenshot it looks like you're at medium or low, right?

I fixed the issue I mentioned above in v3.2.6.
But I have to reevaluate whether this is the best way to fix the ring effect.

I endorse this issue, and adding two unmentioned reasons:

Doors aren't visible anymore. They appear as black blurry wall, with a door icon to click. Same for thin walls who are now hidden by the black blur. I can draw walls outside a little more, but i can't do that for doors or thin walls.
The black blur also hide the border of selected tokens when the token stands next to a wall. In a dead end or a corner, most of the border is hidden and it's hard to see what token is selected. If the border would be above the black blur it wouldn't be so inconvenient.

I would rather bear with the halo effect than with this black blur covering everything. Hiding the walls & doors makes the maps very unattractive compared to vanilla.

I reverted the initial halo fix. Now, if Fog Exploration is disabled, the halo effect is reduced greatly without hiding walls and doors by a new technique, but it doesn't work really with Fog Exploration enabled. So with Fog Exploration enabled the fog is just like core (no attempt to fix the halo effect).
Let me know if you have any complaints about how the fog looks with Fog Exploration disabled.


New linter plugin: SublimeLinter-contrib-lessc

After finding there was no SublimeLinter plugin for less, I put this together and have been using it myself for a fair while without issue. Figured it was about time I published it.
It's just a simple bridge to lessc --no-color --lint, but nicely picks up problems in function use and maths.
https://github.com/MarkGriffiths/SublimeLinter-contrib-lessc

Please make a new release and I'll add it to Package Control. Thanks!

v1.0.0 pushed to master, thanks

https://github.com/SublimeLinter/package_control_channel/commit/0d95d01dec08c26ecb2b1da5ae341d7b35050b50
Should show up within an hour in Package Control. Thanks Again!


FancyZones 0.59.0 fails to snap Teams and Edge (corp login)

Microsoft PowerToys version
0.59.0
Running as admin

[X] Yes

Area(s) with issue?
FancyZones
Steps to reproduce

install PowerToys v0.59.0
enable FancyZones with 4 zones (may work with more/less)
ensure there are no apps listed in "Excluded apps"
Drag Outlook/Notepad/Edge logged in with personal account/Custom .NET app - Snap works
Drag Teams/Edge logged in with corp account - Snap fails

✔ Expected Behavior

Drag Outlook/Notepad/Edge logged in with personal account/Custom .NET app - Snap works
Drag Teams/Edge logged in with corp account - Snap works
PowerToysReport_2022-06-10-13-33-27.zip

❌ Actual Behavior

Drag Outlook/Notepad/Edge logged in with personal account/Custom .NET app - Snap fails
Drag Teams/Edge logged in with corp account - Snap fails

Other Software
No response

Do you have the Show this window on all desktops option turned on for the apps that don't work with FZ?
Might be the same as https://github.com/microsoft/PowerToys/issues/18657.
/needinfo

Yes! I did have that setting.
I never use Task View, but I believe I played with last year. So that setting is not something I've recently changed.

I'm experiencing the same issue with the 0.59.0 powertoys . Turning off the 'show this window on all desktops' resolved it

/dup #18657 and fixed with #18675 so should be in the next update.


Dynamic Configuration Apollo Support

Please answer these questions before submitting your issue.

Why do you submit this issue?
[ ] Question or discussion
[ ] Bug
[ ] Requirement
[x] Feature or performance improvement

Requirement or improvement
related issue: #2816 #2810
Apollo is another popular configuration center, we'd better support it as well, I'm familiar with Apollo and I'd like to contribute on this feature :-)

Appollo is new, so you need dependency and license check. I will out of work in 4 days, just access GitHun from cellphone.

Appollo is new, so you need dependency and license check. I will out of work in 4 days, just access GitHun from cellphone.

Got it, hope things going well to you :-)

👍 You are responding so quickly.

woo, nice idea!


[FEATURE] Implement Tracking for JS (Server)

Implement tracking as per spec: https://github.com/open-feature/spec/commit/cd99c3560a68c1810971be19b87ea803fb9b0b3a
Functional requirements:

implement all the features described here

Non functional requirements:

use as many existing abstractions and implementations as possible

ie: tracking event details should likely use similar underlying functionality to evaluation context / structure

provider interface(s) are modified to optionally support tracking; not all providers will support it
associated testing and README entry (see markdown snippet below)
no breaking changes

README addition (be careful to correctly link to #hooks and #providers and update the code snippet for the language in question
### Tracking

The tracking API allows you to use OpenFeature abstractions and objects to associate user actions with feature flag evaluations.
This is essential for robust experimentation powered by feature flags.
For example, a flag enhancing the appearance of a UI component might drive user engagement to a new feature; to test this hypothesis, telemetry collected by a [hook](#hooks) or [provider](#providers) can be associated with telemetry reported in the client's `track` function.

```{language-in-question}
// flag is evaluated
client.getBooleanFlag('new-component-style');

Note that some providers may not support tracking; check the documentation for your provider for more information.

...

// new feature is used and "track" function is called
useNewFeature();
client.track('new-feature-used');

@toddbaert I could give this a shot. Is reading the spec the best place for understanding whats needed? Is there a slack thread / meeting recording that may give more context?

Hey @wichopy, I think @toddbaert is actively working on this, but feel free to help with the review. By the way, would you be interested in joining the org? It's the first step in becoming a maintainer and makes it easier for use to @ mention you.

I'd love to join!


Bad Timings - BukkitListener::onPlayerLogin(PlayerLoginEvent)

For some reason, the timings are really bad for BukkitListener::onPlayerLogin(PlayerLoginEvent) with LuckPerms. Any ideas on how I can fix this or any idea why it is happening?
Timings: https://timings.spigotmc.org/?url=latonifesa

Did a bit more testing. It might have just been a fluke and probably something else.


Add 2.10 upgrade instructions.

Also, emphasize --manual-start command line option in common upgrade instructions.
Addresses https://github.com/DACH-NY/canton/issues/22755

By the way, how do I properly update the protocol version compatibility table to add pv=7 for 2.10? @soren-da @yves-da
I only see the resulting "generated" files that contain the table, e.g.:

/canton/includes/generated/versioning.rst.inc
/canton/usermanual/versioning.html

But obviously these are not tracked by the repo (so won't be reflected upstream).

By the way, how do I properly update the protocol version compatibility table to add pv=7 for 2.10? @soren-da @yves-da
I only see the resulting "generated" files that contain the table, e.g.:
* /canton/includes/generated/versioning.rst.inc

* /canton/usermanual/versioning.html

But obviously these are not tracked by the repo (so won't be reflected upstream).

It is done magically via the tooling (see the result: https://docs.daml.com/2.10.0/canton/usermanual/versioning.html)


NodeJS CVE scanning is failing - 5.3 CVE found on semver package

See https://github.com/finos/security-scanning/actions/runs/5337432643/jobs/9673473138
[53/65] -<EMAIL_ADDRESS>- 1 vulnerability found!

  Vulnerability Title:  [CVE-2022-25883] CWE-400: Uncontrolled Resource Consumption ('Resource Exhaustion')
  ID:  CVE-2022-25883
  Description:  Versions of the package semver before 7.5.2 are vulnerable to Regular Expression Denial of Service (ReDoS) via the function new Range, when untrusted user data is provided as a range.

  CVSS Score:  5.3
  CVSS Vector:  CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L
  CVE:  CVE-2022-25883
  Reference:  https://ossindex.sonatype.org/vulnerability/CVE-2022-25883?component-type=npm&component-name=semver&utm_source=auditjs&utm_medium=integration&utm_content=4.0.39

Suggestions:

Run npm install and npm ls --depth=5 to understand where semver is coming from
Understand which library to update in package.json in order to pull a non vulnerable version of semgrep
(optional - if step 2 cannot be applied for any reason - try to override semver with a new version, see https://www.stefanjudis.com/today-i-learned/how-to-override-your-dependencys-dependencies/
(optional - if step 2 and 3 cannot be applied for any reason - add the CVE to the allow list; at the end of the day, this project is a sample to explain how to scan and ignore CVEs

PR here https://github.com/finos/security-scanning/pull/265

Fixed! @josspo - please remember to close issues, when the job is done.


missing event when the job queue ends.

Hi,
I'm testing the events related to the bc2adsl tool.
the export is finished event is fine, but raised for every table which has been exported and which contains data and not 1 time when the job queue (or the export action) is done.
which is confusing because the event is not telling me which table has been exported and my power automate is triggered multiple times.
so there is a missing event, a real "Export terminated"
raised 1 time after the export process (not by table) and which should contains the total number of rows exported; or the number of tables which contains exported data.
this will allow us to run a power automate (for example) and start the Fabric job, but only 1 time and only if data has been exported (or not; because no data exported may be a problem I want to identify when we are supposed to have changed data on a regular basis)
but else, crazy good job!!!

if it's the event "Export is finished" , it's the one I'm using
but it is raised for each table and only for the ones with data exported. (so with changes detected)
here the events I'm seeing:

I'm using BC23.22

I have also pushed it to the releasebranches 24.23 and 23.22


add bounded concurrency for tag lookup and untag

add concurrency limits for tag lookup and untag
Harbor is using the distribution for it's (harbor-registry) registry component.
The harbor GC will call into the registry to delete the manifest, which in turn then does a lookup for all tags that reference the deleted manifest.
To find the tag references, the registry will iterate every tag in the repository and read it's link file to check if it matches the deleted manifest (i.e. to see if uses the same sha256 digest). So, the more tags in repository, the worse the performance will be (as there will be more s3 API calls occurring for the tag directory lookups and tag file reads).
Therefore, we can use concurrent lookup and untag to optimize performance as described in https://github.com/goharbor/harbor/issues/12948.
P.S. This optimization was originally contributed by @Antiarchitect, now I would like to take it over.
Thanks @Antiarchitect's efforts with PR https://github.com/distribution/distribution/pull/3890.
Signed-off-by: Liang Zheng<EMAIL_ADDRESS>

@corhere do you mind batting an eye on this? It looks a ok to me, but I need to give it another look.

@Jamstah @squizzi you folks mind having a look at this?

@microyahoo Congrats! You made it!

Congrats @microyahoo! very excited to see this getting merged and thanks to @Antiarchitect for the initial work.


Add document to explain buttons and light ring states

Split the electrical page into three -- one for an overview, one for the adapter board, and one for the buttons and lights.

Should we mention the backup limit and emergency stop lights?

Should we mention the backup limit and emergency stop lights?
Good catch.

Note -- I left the Unicode power icon in there despite the fact that I don't have the font for it (added in Unicode 9). @raphaelcherney did you have a trick for that from the last PR?


Hide login,register when in small viewport

related: #1186

default theme: In my opinion a link to "login" should be visible.
custom theme / authorization: feel free.

@nileshgulia1 I think @ksuess in #1233 addressed it more thoroughfully.

Yeah #1233  looks more specific to what we want to achieve.


darwin.darling.src: fix build on case-sensitive filesystems

Motivation for this change
Fix #91480 as discussed in https://github.com/NixOS/nixpkgs/pull/101799#issuecomment-730722554
Things done

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

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

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
[ ] 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.

@GrahamcOfBorg build darling.src

@GrahamcOfBorg build darwin.darling.src

Thanks for working on this. I think there are two things that need to be handled. The first is with case-sensitive filesystems in which the directories are split, and the second is with case-insensitive filesystems where the result is non-deterministic (the canonical name is either lowercase or camelcase). Maybe something like this. It seems to work on my case-insensitive macOS and my case-sensitive linux.
fetchzip {
  url = "https://github.com/darlinghq/darling/archive/d2cc5fa748003aaa70ad4180fff0a9a85dc65e9b.tar.gz";
  sha256 = "0000000000000000000000000000000000000000000000000000"; # for testing
  postFetch = ''
    # Get rid of case conflicts
    mkdir $out

    # The archive contains both `src/opendirectory` and `src/OpenDirectory`,
    # pre-create the directory to choose the canonical case on
    # case-insensitive filesystems.
    mkdir -p $out/src/OpenDirectory

    cd $out
    tar -xzf $downloadedFile --strip-components=1
    rm -r $out/src/libm

    # If `src/opendirectory` and `src/OpenDirectory` refer to different
    # things, then combine them into `src/OpenDirectory` to match the result
    # on case-insensitive filesystems.
    if [ "$(stat -c %i src/opendirectory)" != "$(stat -c %i src/OpenDirectory)" ]; then
      mv src/opendirectory/* src/OpenDirectory/
      rmdir src/opendirectory
    fi
  '';
}

@veprbl this has been fixed on upstream https://github.com/darlinghq/darling/commit/ea5f07d38a0d4667b4fdda42b131250e4b7c7296 , should we use an updated source instead of fixing it here? We need darling to update xnu and Libsystem.

@veprbl this has been fixed on upstream https://github.com/darlinghq/darling/commit/ea5f07d38a0d4667b4fdda42b131250e4b7c7296 , should we use an updated source instead of fixing it here? We need darling to update xnu and Libsystem.


Use caret (^) version range in package.json deps

Updated package.json with caret version ranges in deps
Added package-lock.json


Test groups

Codecov Report

Merging #77 (f029d43) into master (72925b2) will increase coverage by 0.01%.
The diff coverage is 78.04%.

@@             Coverage Diff              @@
##             master      #77      +/-   ##
============================================
+ Coverage     72.29%   72.30%   +0.01%
- Complexity      406      413       +7
============================================
  Files            71       72       +1
  Lines          1238     1271      +33
  Branches        126      131       +5
============================================
+ Hits            895      919      +24
- Misses          311      314       +3
- Partials         32       38       +6

Impacted Files
Coverage Δ

.../java/seedu/address/logic/commands/AddCommand.java
100.00% <ø> (ø)

.../java/seedu/address/model/util/SampleDataUtil.java
20.00% <ø> (ø)

...in/java/seedu/address/logic/parser/ParserUtil.java
92.68% <60.00%> (-4.54%)
:arrow_down:

...rc/main/java/seedu/address/model/person/Group.java
70.00% <70.00%> (ø)

...c/main/java/seedu/address/model/person/Person.java
95.23% <71.42%> (-2.14%)
:arrow_down:

.../java/seedu/address/storage/JsonAdaptedPerson.java
96.07% <75.00%> (-3.93%)
:arrow_down:

...java/seedu/address/logic/commands/EditCommand.java
97.22% <100.00%> (+0.20%)
:arrow_up:

...a/seedu/address/logic/parser/AddCommandParser.java
93.33% <100.00%> (-6.67%)
:arrow_down:

...ain/java/seedu/address/logic/parser/CliSyntax.java
85.71% <100.00%> (+2.38%)
:arrow_up:

Continue to review full report at Codecov.

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

addresses #31

LGTM


i18n(fr): update environmental-impact

Description
This PR updates the French version of the environmental-impact page with the changes of #2136. I decided to keep the A-F rating even though it is not common in France (for example it's not used in schools) but it's used in some technical contexts, e.g. for energy efficiency.
It also fixes a link which was previously not rendered correctly: [le traitement de JavaScript peut prendre plus de 30 fois plus de temps][coût-de-js]. instead of a real link.

Lunaria Status Overview
🌕 This pull request will trigger status changes.

Learn more
By default, every PR changing files present in the Lunaria configuration's files property will be considered and trigger status changes accordingly.
You can change this by adding one of the keywords present in the ignoreKeywords property in your Lunaria configuration file in the PR's title (ignoring all files) or by including a tracker directive in the merged commit's description.

Tracked Files

Locale
File
Note

fr
environmental-impact.md
Localization changed, will be marked as complete.

Warnings reference

Icon
Description

🔄
The source for this localization has been updated since the creation of this pull request, make sure all changes in the source have been applied.


Fixed checking if OLS has been started

Description
Fixed checking if OLS has been started
Type of change

[ ] Refactor
[ ] New feature
[x] Bug fix
[ ] CVE fix
[ ] Optimization
[ ] Documentation Update
[ ] Configuration Update
[ ] Bump-up dependent library

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Comparison is base (bd4265b) 96.09% compared to head (8e7aedd) 94.60%.
Report is 28 commits behind head on main.

Additional details and impacted files

@@            Coverage Diff             @@
##             main     #442      +/-   ##
==========================================
- Coverage   96.09%   94.60%   -1.50%
==========================================
  Files          32       32
  Lines        1075     1093      +18
==========================================
+ Hits         1033     1034       +1
- Misses         42       59      +17

see 1 file with indirect coverage changes

/lgtm

/approve

ugh, thanks


Upgrade react-router and react-router-dom to 4.0.0 and fix bug with content.router

The<EMAIL_ADDRESS>and<EMAIL_ADDRESS>were released, so there is an issue with content.router.

Using react-presents in my project. I see you have yarn.lock file, but for some reason when I yarn install in my project, it downloads<EMAIL_ADDRESS>and<EMAIL_ADDRESS>not<EMAIL_ADDRESS>and<EMAIL_ADDRESS>how it's mentioned in your yarn.lock. Didn't find a way to lock sub dependencies of dependencies.

Looks good! I'm going to patch it slightly to be compatible with both RR 4.0.0-beta.6 and 4.0.0:
diff --git a/source/modules/Presentation.js b/source/modules/Presentation.js
index b3704f2..b0de326 100644
--- a/source/modules/Presentation.js
+++ b/source/modules/Presentation.js
@@ -164,7 +164,11 @@ class PresentationInner extends Component {
       const { router } = this.context
       const path = this._createPath({ slideIndex, stepIndex })

-      router.history.replace(path)
+      if (typeof router.replace === 'function') {
+        router.replace(path) //<EMAIL_ADDRESS>+      } else {
+        router.history.replace(path) //<EMAIL_ADDRESS>+      }

       this.forceUpdate()
     }

And I'm going to relax the package.json dependency so I don't break people who are happy with beta 6:
diff --git a/package.json b/package.json
index ff79d6e..d7e4d75 100644
--- a/package.json
+++ b/package.json
@@ -102,8 +102,8 @@
     "cuid": "^1.3.8",
     "qs": "^6.3.0",
     "react-codemirror": "^0.2.6",
-    "react-router": "^4.0.0",
-    "react-router-dom": "^4.0.0",
+    "react-router": "^4.0.0-beta.6",
+    "react-router-dom": "^4.0.0-beta.6",
     "react-virtualized-select": "^2.1.0",
     "styled-components": "^1.0.8"
   },

Just released as 0.7.7. Gave you a shout-out in the CHANGELOG. Thanks for the contribution!


Support mixed keys for ofType RxJS operator

I changed the ofType RxJS operator to use isOfType helper function too!
We can pass to ofType with array mix of action type, action, and action creator as follows.
const b = createActionCreator('b');
const c = createActionCreator('c');
action$.pipe(
  ofType('a', b(), c),
    ...
)

I changed the ofType RxJS operator to use isOfType helper function too!

Let's do it in another PR.

I changed the ofType RxJS operator to use isOfType helper function too!

Let's do it in another PR.

Should I fix the generics of isOfType helper function to follow RxJS convention?

After this PR is merged, I willl change the ofType RxJS operator to use isOfType helper function 💚

Well done @kotarella1110.

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

GitHub release
npm package (@next dist-tag)

Your semantic-release bot :package::rocket:

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

GitHub release
npm package (@latest dist-tag)

Your semantic-release bot :package::rocket:


add path expansion docs

This section is a good description of how to use the API for this, but isn't quite as user-friendly for the people that will get routed here from the NWB GUIDE
Could you add a second section in a follow-up PR that is even more high level and shows several examples using screenshots (or another visual descriptor) of folders containing files following naming conventions taken from real world cases and what their corresponding f-string patterns look like

Agreed. I'll work on this


Add an OSX workaround for sed in bump-version

OSX doesn't tolerate -i without passing a blank argument. I think this is ok on 'nix but I could use a double-check.

Passing the blank argument blows up on Linux.  You can either do:
sed -i.bak "s|dependabot/fetch-metadata@v[0-9.]*|dependabot/fetch-metadata@v${new_version}|g" "README.md"
rm README.md.bak

or if sed with in-place editing is not well supported across platforms, we could use PERL:
perl -pi -e "s/dependabot\/fetch-metadata\@v[0-9.]*/dependabot\/fetch-metadata\@v${new_version}/g" "README.md"

Ah, cheers I hadn't had a chance to check on a VM. I'll update 👍🏻

This is now fixed in #205


GraphQL subscription using Flux returns error

Hi
I'm working on a backend service using spring GraphQL for API. I created a simple subscription mapping using Flux source code here.
    @SubscriptionMapping
    Flux<String> greeting(@Argument int count) {
        return Flux.fromStream(Stream.generate(() -> "Hello @ " + Instant.now()))
                .delayElements(Duration.ofSeconds(1))
                .take(count);
    }

type Subscription {
    greeting(count: Int): String
}

When I try to run above subscription using graphiql hosted by the app I receive following error:
{
  "errors": [
    {
      "isTrusted": true
    }
  ]
}

While postman returns the following:
{
    "data": {
        "upstreamPublisher": {
            "scanAvailable": true,
            "prefetch": -1
        }
    }
}

I couldn't find explanation for this behaviour.

You need to enable WebSocket to use subscriptions.


IRawValue + dbNullLayoutRenderer

needed for #522 (see also #1435 or #2767)
Not sure if this is enough. How to log ${level} as int to the database? We like to prevent toString and int.parse.
options:

database target aware of LogLevel type
or make IRawValue generic, e.g. IRawValue, IRawValue
or request type to GetRawValue, e.g. GetRawValue(typeof(int))  - could be optional.

todo decide

[x] naming of getRawValue and IRawValue
[x] also work with TypeCode? (provided or request), really useful is TypeCode.DBNull for the database target, see also https://github.com/NLog/NLog/issues/293
[x] interface (IRawValue) or abstract class? Later for performance reasons. (also possible, virtual method on layout class, but could be tricky with null)

fixes #1332
todo

[x] impl for all needed layout renderers
[x] unit tests

SonarQube analysis reported 5 issues

 5 critical

Watch the comments in this conversation to review them.

@snakefoot like your opinion on this :)

@304NotModified Like the RawValue idea. Makes good sense when it comes to converting into parameter-types.
Regarding conversion of a RawValue to other types (Ex. LogLevel to Ordinal) then I guess one could reuse the type-invariance that has been made for when-filtering.

some docs here: https://github.com/NLog/NLog/wiki/Database-target


Add readonly flags to CI

followup from https://github.com/urfave/cli/pull/892#discussion_r325964810

🤷♀ no idea whyt CI is failing

Seems like head has some broken tests? Strange.

Might be related to gfmrun and not this repository.

Let me take a look at this

I'm gonna close this b/c I don't feel like working on it, anyone else is free to create a new PR for this change though!


Use NullBuffer in ArrayData (#3775)

Draft as I want to go over this again, check the benchmarks, and get DataFusion updated and passing, but creating for visibility
Which issue does this PR close?

Closes #3775
Part of #1799
Rationale for this change

See ticket, but we need to switch to a null buffer representation that can store its offset separately from the ArrayData it belongs to. There isn't an obvious way to add support for this without a breaking change. Fortunately most downstreams are not interacting with the null buffers directly, and so the impact of this change shouldn't be too problematic.
What changes are included in this PR?

Are there any user-facing changes?

https://github.com/apache/arrow-datafusion/pull/5441 shows this causing extremely limited downstream churn to DataFusion :tada:


added 472 Winforms compat

Trying again with the Compat docs for 472 WinForms Accessibility work

I've got the latest round of changes made. Please take a look @rpetrusha

Thanks, @merriemcgaw, for making the additional changes. I'll merge your PR now.


withPromise option for typescript-urql

Is your feature request related to a problem? Please describe.
I'm have several projects where query or mutation invocations happen inside utility functions. Currently either we create manual helpers for these and type them manually or pass around the functions that have been created by hooks. Which is lot more effort to type than necessary if you are used to the generated hooks 😄.
client
  .query('{ test }', {})
  .toPromise()

// or

client
  .mutation('{ deleteWorkspace }', {})
  .toPromise()

Describe the solution you'd like
Would love to have an option: withPromises that automatically generates e.g. a testQueryPromise and deleteWorkspaceMutationPromise.
With hooks you currently create: useTestQuery & useDeleteWorkspaceMutation.
Related documentation:

https://formidable.com/open-source/urql/docs/api/core/#clientquery
https://formidable.com/open-source/urql/docs/api/core/#clientmutation

Describe alternatives you've considered

Continue to do it manual
Fork the project
Create a separate plugin?

Additional context
I'm happy to submit an implementation myself. At this point I'm looking for:

is this interesting enough to end up being accepted
any advice regarding design / implementation details before getting started

We implemented it internally https://github.com/SerenityNotes/Serenity/tree/main/packages/graphql-codegen-urql


Add updated  docs

Purpose
Related to #1001
We're working on rewriting the react-redux documentation completely. This is the first PR opened to begin that process.
The goal of these changes is to make the section on the <Provider /> more readable and approachable for react-redux users. I'm looking for suggestions on grammar, any missing information, and a sanity check on my code examples.
Approach
Folder Structure
I have added a new folder structure based on @markerikson's suggestions. Documentation will continue to live under /docs, but I've added a folder at /docs/api and a Provider.md file.
Updated Docs
I've reworked some of what currently lives in api.md as well as referenced some popular tutorials to try to incorporate some language that might be familiar to current users of react-redux.

First suggestion: actually save the file with the contents inside and THEN push :)


[iOS] No permission prompt when requesting LOCATION_ALWAYS after WHEN_IN_USE

Before submitting a new issue

[X] I tested using the latest version of the library, as the bug might be already fixed.
[X] I tested using a supported version of react native.
[X] I checked for possible duplicate issues, with possible answers.

Bug summary
On iOS, when attempting to request the LOCATION_ALWAYS permission after the WHEN_IN_USE permission (whether immediately or after a delay), the request result is "blocked." As a result, I am not prompted a second time to accept the LOCATION_ALWAYS permission.
I tried making the request immediately using either requestMultiple or by chaining both requests. I also attempted to call the LOCATION_ALWAYS request later in the app lifecycle, from a different screen. However, nothing works; I always end up with the same "blocked" status.
This issue was tested on a simulator (iPhone 15 — iOS 17.2) and on a physical iPhone SE 2 (iOS 17.4.1).

Note that I'm on an Nx project with multiple sub-apps, and therefore can't easily update to the latest version of the library. (but from what I've seen in the release notes, this issue — if a library issue — was not addressed)
Library version
4.1.4
Environment info
System:
  OS: macOS 14.5
  CPU: (10) arm64 Apple M1 Pro
  Memory: 293.05 MB / 32.00 GB
  Shell:
    version: "5.9"
    path: /bin/zsh
Binaries:
  Node:
    version: 21.6.2
    path: /opt/homebrew/bin/node
  Yarn:
    version: 1.22.21
    path: /opt/homebrew/bin/yarn
  npm:
    version: 10.2.4
    path: /opt/homebrew/bin/npm
  Watchman:
    version: 2<IP_ADDRESS>
    path: /opt/homebrew/bin/watchman
Managers:
  CocoaPods:
    version: 1.15.2
    path: /opt/homebrew/bin/pod
SDKs:
  iOS SDK:
    Platforms:
      - DriverKit 23.2
      - iOS 17.2
      - macOS 14.2
      - tvOS 17.2
      - visionOS 1.0
      - watchOS 10.2
  Android SDK: Not Found
IDEs:
  Android Studio: 2023.2 AI-232.10227.8.2321.11479570
  Xcode:
    version: 15.2/15C500b
    path: /usr/bin/xcodebuild
Languages:
  Java:
    version: 17.0.10
    path: /usr/bin/javac
  Ruby:
    version: 2.6.10
    path: /usr/bin/ruby
npmPackages:
  "@react-native-community/cli":
    installed: 11.3.6
    wanted: 11.3.6
  react:
    installed: 18.2.0
    wanted: 18.2.0
  react-native:
    installed: 0.72.4
    wanted: 0.72.4
  react-native-macos: Not Found
npmGlobalPackages:
  "*react-native*": Not Found
Android:
  hermesEnabled: Not found
  newArchEnabled: Not found
iOS:
  hermesEnabled: true
  newArchEnabled: false

Steps to reproduce
Tested with :
Chained promises :
let result = await check(PERMISSIONS.IOS.LOCATION_WHEN_IN_USE);

if (result !== RESULTS.GRANTED) {
  request(PERMISSIONS.IOS.LOCATION_WHEN_IN_USE).then((value) => {
    if (Platform.OS === "ios") {
      request(PERMISSIONS.IOS.LOCATION_ALWAYS)
    }
  });
}

Multiple requests :
requestMultiple([PERMISSIONS.IOS.LOCATION_WHEN_IN_USE, PERMISSIONS.IOS.LOCATION_ALWAYS])

Reproducible sample code
let result = await check(PERMISSIONS.IOS.LOCATION_WHEN_IN_USE);

if (result !== RESULTS.GRANTED) {
  request(PERMISSIONS.IOS.LOCATION_WHEN_IN_USE).then((value) => {
    if (Platform.OS === "ios") {
      request(PERMISSIONS.IOS.LOCATION_ALWAYS)
    }
  });
}

[x] I tested using the latest version of the library, as the bug might be already fixed.

@Oyzuu You didn't.

Dammit, missed this in the 5.0.0 release note:
Enabled location permission escalation on iOS (closes https://github.com/zoontek/react-native-permissions/pull/716) – This feature was sponsored by [Driversnote.com](https://www.driversnote.com/). Thank you! 🙌
I'll try to patch it, as I can't upgrade to the latest version at the moment.


Bumping into errors getting started ...

First of all I must say that this project looks great, I am looking forward to getting things, working with it...
So I am following the instructions in "Getting Started" and I have bumped into a number of things...
I started with...
$ git clone https://github.com/edannenberg/gentoo-bb.git
$ cd gentoo-bb
$ ./build.sh

But immediately run into issues with 404s on the stage3 tarballs...
--> generate build order
--> required engines:    dummy docker
--> required stage3:     stage3-amd64-hardened+nomultilib stage3-amd64-hardened+nomultilib stage3-amd64-musl-hardened
--> required builders:   dummy/bob gentoobb/bob gentoobb/bob-musl
--> build sequence:      dummy/busybox gentoobb/busybox gentoobb/glibc gentoobb/s6 gentoobb/openssl gentoobb/bash gentoobb/cadvisor gentoobb/jre-oracle gentoobb/clojure gentoobb/docker-registry gentoobb/elasticsearch gentoobb/gcc gentoobb/grafana gentoobb/influxdb gentoobb/jdk-icedtea gentoobb/jdk-oracle gentoobb/kibana gentoobb/ruby-gcc gentoobb/log-collector gentoobb/mariadb gentoobb/memcache gentoobb/mysql gentoobb/nginx gentoobb/nginx-php5.6 gentoobb/nginx-php7 gentoobb/nginx-proxy gentoobb/nginx-proxy-conf gentoobb/nodejs gentoobb/opensmtpd gentoobb/postgres gentoobb/python2 gentoobb/python3 gentoobb/redis gentoobb/riemann gentoobb/riemann-dash gentoobb/ruby gentoobb/webhook
--> validate dummy engine
--> validate dummy repo: dummy/builder/bob
--> building dummy builder:
--> build gentoobb/bob-stage3
--2017-02-24 15:26:15--  http://distfiles.gentoo.org/releases/amd64/autobuilds/current-stage3-amd64-hardened+nomultilib/stage3-amd64-hardened+nomultilib-20170119.tar.bz2
Resolving distfiles.gentoo.org... <IP_ADDRESS>, <IP_ADDRESS>, <IP_ADDRESS>, ...
Connecting to distfiles.gentoo.org|<IP_ADDRESS>|:80... connected.
HTTP request sent, awaiting response... 404 Not Found
2017-02-24 15:26:15 ERROR 404: Not Found.

failed to download http://distfiles.gentoo.org/releases/amd64/autobuilds/current-stage3-amd64-hardened+nomultilib/stage3-amd64-hardened+nomultilib-20170119.tar.bz2
--2017-02-24 15:26:15--  http://distfiles.gentoo.org/releases/amd64/autobuilds/current-stage3-amd64-hardened+nomultilib/stage3-amd64-hardened+nomultilib-20170119.tar.bz2.CONTENTS
Resolving distfiles.gentoo.org... <IP_ADDRESS>, <IP_ADDRESS>, <IP_ADDRESS>, ...
Connecting to distfiles.gentoo.org|<IP_ADDRESS>|:80... connected.
HTTP request sent, awaiting response... 404 Not Found
2017-02-24 15:26:15 ERROR 404: Not Found.

failed to download http://distfiles.gentoo.org/releases/amd64/autobuilds/current-stage3-amd64-hardened+nomultilib/stage3-amd64-hardened+nomultilib-20170119.tar.bz2.CONTENTS
--2017-02-24 15:26:15--  http://distfiles.gentoo.org/releases/amd64/autobuilds/current-stage3-amd64-hardened+nomultilib/stage3-amd64-hardened+nomultilib-20170119.tar.bz2.DIGESTS.asc
Resolving distfiles.gentoo.org... <IP_ADDRESS>, <IP_ADDRESS>, <IP_ADDRESS>, ...
Connecting to distfiles.gentoo.org|<IP_ADDRESS>|:80... connected.
HTTP request sent, awaiting response... 404 Not Found
2017-02-24 15:26:15 ERROR 404: Not Found.

failed to download http://distfiles.gentoo.org/releases/amd64/autobuilds/current-stage3-amd64-hardened+nomultilib/stage3-amd64-hardened+nomultilib-20170119.tar.bz2.DIGESTS.asc
gpg: can't open `/Users/ed/gentoo-bb/tmp/downloads/stage3-amd64-hardened+nomultilib-20170119.tar.bz2.DIGESTS.asc': No such file or directory
gpg: verify signatures failed: No such file or directory
insecure digests

Ok right so those files are not there anymore, there is a thing to update them...
$ ./build.sh update
--> dummy/
      bob/                 updated 20170119 -> 20170209
--> gentoobb/
      bob-musl/            updated 20170104 -> 20170204
      bob-uclibc/          updated 20170105 -> 20170130
      bob/                 updated 20170119 -> 20170209

So then ./build.sh seems to start working, and after quite a while I run into this:
>>> Auto-cleaning packages...

>>> Using system located in ROOT tree /emerge-root/

>>> No outdated packages were found on your system.

 * IMPORTANT: config file '/emerge-root/etc/locale.gen' needs updating.
 * See the CONFIGURATION FILES and CONFIGURATION FILES UPDATE TOOLS
 * sections of the emerge man page to learn how to update config files.

 * IMPORTANT: 5 news items need reading for repository 'gentoo'.
 * Use eselect news read to view new items.

tar: Removing leading `/' from member names
tar: Removing leading `/' from member names
mv: '/emerge-root/lib.old/gentoo' and '/emerge-root/lib/gentoo' are the same file
mv: '/emerge-root/lib.old/ld-2.23.so' and '/emerge-root/lib/ld-2.23.so' are the same file
mv: '/emerge-root/lib.old/ld-linux-x86-64.so.2' and '/emerge-root/lib/ld-linux-x86-64.so.2' are the same file
mv: '/emerge-root/lib.old/libanl-2.23.so' and '/emerge-root/lib/libanl-2.23.so' are the same file
mv: '/emerge-root/lib.old/libanl.so.1' and '/emerge-root/lib/libanl.so.1' are the same file
mv: '/emerge-root/lib.old/libBrokenLocale-2.23.so' and '/emerge-root/lib/libBrokenLocale-2.23.so' are the same file
mv: '/emerge-root/lib.old/libBrokenLocale.so.1' and '/emerge-root/lib/libBrokenLocale.so.1' are the same file
mv: '/emerge-root/lib.old/libc-2.23.so' and '/emerge-root/lib/libc-2.23.so' are the same file
mv: '/emerge-root/lib.old/libcidn-2.23.so' and '/emerge-root/lib/libcidn-2.23.so' are the same file
mv: '/emerge-root/lib.old/libcidn.so.1' and '/emerge-root/lib/libcidn.so.1' are the same file
mv: '/emerge-root/lib.old/libcrypt-2.23.so' and '/emerge-root/lib/libcrypt-2.23.so' are the same file
mv: '/emerge-root/lib.old/libcrypt.so.1' and '/emerge-root/lib/libcrypt.so.1' are the same file
mv: '/emerge-root/lib.old/libc.so.6' and '/emerge-root/lib/libc.so.6' are the same file
mv: '/emerge-root/lib.old/libdl-2.23.so' and '/emerge-root/lib/libdl-2.23.so' are the same file
mv: '/emerge-root/lib.old/libdl.so.2' and '/emerge-root/lib/libdl.so.2' are the same file
mv: '/emerge-root/lib.old/libm-2.23.so' and '/emerge-root/lib/libm-2.23.so' are the same file
mv: '/emerge-root/lib.old/libmemusage.so' and '/emerge-root/lib/libmemusage.so' are the same file
mv: '/emerge-root/lib.old/libm.so.6' and '/emerge-root/lib/libm.so.6' are the same file
mv: '/emerge-root/lib.old/libmvec-2.23.so' and '/emerge-root/lib/libmvec-2.23.so' are the same file
mv: '/emerge-root/lib.old/libmvec.so.1' and '/emerge-root/lib/libmvec.so.1' are the same file
mv: '/emerge-root/lib.old/libnsl-2.23.so' and '/emerge-root/lib/libnsl-2.23.so' are the same file
mv: '/emerge-root/lib.old/libnsl.so.1' and '/emerge-root/lib/libnsl.so.1' are the same file
mv: '/emerge-root/lib.old/libnss_compat-2.23.so' and '/emerge-root/lib/libnss_compat-2.23.so' are the same file
mv: '/emerge-root/lib.old/libnss_compat.so.2' and '/emerge-root/lib/libnss_compat.so.2' are the same file
mv: '/emerge-root/lib.old/libnss_db-2.23.so' and '/emerge-root/lib/libnss_db-2.23.so' are the same file
mv: '/emerge-root/lib.old/libnss_db.so.2' and '/emerge-root/lib/libnss_db.so.2' are the same file
mv: '/emerge-root/lib.old/libnss_dns-2.23.so' and '/emerge-root/lib/libnss_dns-2.23.so' are the same file
mv: '/emerge-root/lib.old/libnss_dns.so.2' and '/emerge-root/lib/libnss_dns.so.2' are the same file
mv: '/emerge-root/lib.old/libnss_files-2.23.so' and '/emerge-root/lib/libnss_files-2.23.so' are the same file
mv: '/emerge-root/lib.old/libnss_files.so.2' and '/emerge-root/lib/libnss_files.so.2' are the same file
mv: '/emerge-root/lib.old/libnss_hesiod-2.23.so' and '/emerge-root/lib/libnss_hesiod-2.23.so' are the same file
mv: '/emerge-root/lib.old/libnss_hesiod.so.2' and '/emerge-root/lib/libnss_hesiod.so.2' are the same file
mv: '/emerge-root/lib.old/libnss_nis-2.23.so' and '/emerge-root/lib/libnss_nis-2.23.so' are the same file
mv: '/emerge-root/lib.old/libnss_nisplus-2.23.so' and '/emerge-root/lib/libnss_nisplus-2.23.so' are the same file
mv: '/emerge-root/lib.old/libnss_nisplus.so.2' and '/emerge-root/lib/libnss_nisplus.so.2' are the same file
mv: '/emerge-root/lib.old/libnss_nis.so.2' and '/emerge-root/lib/libnss_nis.so.2' are the same file
mv: '/emerge-root/lib.old/libpcprofile.so' and '/emerge-root/lib/libpcprofile.so' are the same file
mv: '/emerge-root/lib.old/libpthread-2.23.so' and '/emerge-root/lib/libpthread-2.23.so' are the same file
mv: '/emerge-root/lib.old/libpthread.so.0' and '/emerge-root/lib/libpthread.so.0' are the same file
mv: '/emerge-root/lib.old/libresolv-2.23.so' and '/emerge-root/lib/libresolv-2.23.so' are the same file
mv: '/emerge-root/lib.old/libresolv.so.2' and '/emerge-root/lib/libresolv.so.2' are the same file
mv: '/emerge-root/lib.old/librt-2.23.so' and '/emerge-root/lib/librt-2.23.so' are the same file
mv: '/emerge-root/lib.old/librt.so.1' and '/emerge-root/lib/librt.so.1' are the same file
mv: '/emerge-root/lib.old/libSegFault.so' and '/emerge-root/lib/libSegFault.so' are the same file
mv: '/emerge-root/lib.old/libthread_db-1.0.so' and '/emerge-root/lib/libthread_db-1.0.so' are the same file
mv: '/emerge-root/lib.old/libthread_db.so.1' and '/emerge-root/lib/libthread_db.so.1' are the same file
mv: '/emerge-root/lib.old/libutil-2.23.so' and '/emerge-root/lib/libutil-2.23.so' are the same file
mv: '/emerge-root/lib.old/libutil.so.1' and '/emerge-root/lib/libutil.so.1' are the same file
failed to run image gentoobb/bob:20170127

I am at this point at a bit of a loss, is it just that I have broken something by running ./build.sh update? or is there something else going on?

Looks like this workaround is no longer needed. Removing the added lines in glibc's build.sh from that commit should fix it. Will take a closer look later.

Thanks, trying it now ...

Great that seems to have fixed the issue...
Is there a way to reference the Stage3 tarballs so they won't go away before the next time you update this repo?

Gentoo's servers keep older stage3 files only for a limited time, not much we can do about that. However any downloaded stage3 files are kept in ./tmp/downloads and will be reused if you don't run update or revert the STAGE3_DATE manually, usually you want the latest stage3 on rebuild though.
Apparently I already ran into this issue this week but forgot to backport it to the master branch. :man_facepalming: Will push later today.

Fix is up, also squashed a small regression in the build container, to rebuild everything run ./build -Fc after pulling. Sorry for the inconvenience.

Monthly rebuild is up, complete stack should build again.
I updated the quick start section so users only build the glibc image, the other images are not required for the rest of the docs and add quite a bit of build time.
In a soon to land refactor the build will also output a hint to run update if stage3 downloads result in a 404. See #92

Nice thanks for your help @edannenberg ... I am having fun with this stuff so far, great job :)


Client can't handle bot.Disconnect

Hey and thanks for your library!
Just found one issue if you are running several apps with switchbot client. So once one of the apps starts connection with the bot:
bot, err := switchbot.Connect(ctx, addr, timeout)
if err != nil {
  log.Print(err)
  return
 }
defer bot.Disconnect()

it basically occupes hci and never releases it until you stop your app.
So from second app I am getting:
021/01/13 00:02:42 Cound not initialize a device: can't init hci: no devices available: (hci0: can't down device: device or resource busy)

Probably related to the issues in https://github.com/currantlabs/ble/issues/17 didn't check which ble lib you are using.

BLE library used in this package is based on  currantlabs/ble and currantlabs/ble#17 is already patched.
I've already faced the issue, you can use -max-retry option for the situation.
switchbot press -max-retry=10 MAC_ADDR

This issue is fixed by v2 release.


Document the reason for not collecting email addresses

We have in the past collected email addresses, but we are no longer. We should document why:

We've never used them in the past
We often don't have the resources or need to contact people
It makes data protection more complicated.

I am personally unsure why we should do that (document why de don't need PII anymore). If we don't need them, we just don't gather them and that's it :slightly_smiling_face:  The opposite is instead entirely reasonable.


Fixed markdown in readme

Ok nevermind, I will make a pull request with all the updated markdown of README.md

Made a New Pull Request. Here's the link.


wip: add a way to add additionnal dir for cni plugins dir lookup

Main reason, using nixos, my cni-plugins binairies are not in /opt/cni. This adds a way to add a folder in the CNI binary lookup paths.
Things I'm not sure of

[ ] flag or using $PATH values ?
[ ] one or multiple values ?
[ ] name ? (this name is not really great)

Signed-off-by: Vincent Demeester<EMAIL_ADDRESS>

Thanks!  Carried in a458296d08722aff5fccdbb3975b4acb44930a91


Updated the spelling typo in README.md file documentation

I noticed there was a small typo in the README.md file so I have updated the spelling the file.

Thanks @syedashar14


Ucj prop view update

this doesnt belong https://github.com/kgrgreer/foam3/pull/983/commits/fd1991f18f83a485d8cf0a56330562851790a87d
will try to update asap


Error after import v1.9.3 at unity 6

Describe the bug
A clear and concise description of what the bug is.
To Reproduce
Steps to reproduce the behavior:

Download Unity 6000.0.18f1
Open manifest.json
Add item "com.i5.toolkit.core": "https://github.com/rwth-acis/i5-Toolkit-for-Unity.git#v1.9.3"
See error

Screenshot

My Unity version is Unity 6000.0.21f1
also same error

It seems like Unity has added its own async/await implementation in Unity 6 which interferes with the one used by the toolkit. I will investigate this in the coming weeks and see whether I can separate the two await implementations.

This is now fixed in release 1.9.4.
Thank you for making me aware of this and for using the i5 Toolkit for Unity!


Code of Example not fully efficient, it can be more elegant

Current Code
int[] numbers = { 1, 4, 7, 10 };
int product = numbers.Aggregate(1, (interim, next) => interim * next);
Console.WriteLine(product);   // output: 280

In this code used not right variant of  Enumerable.Aggregate Method() :
Aggregate<TSource,TAccumulate>(IEnumerable<TSource>, TAccumulate, Func<TAccumulate,TSource,TAccumulate>), because TAccumulate value in this case not demanded , because first element =1
In this case more correct will be more useful more simple variant of Aggregate Method(), final code will be (with the same result):
int[] numbers = { 1, 4, 7, 10 };
int product = numbers.Aggregate((interim, next) => interim * next); // without "1,"
Console.WriteLine(product);   // output: 280

Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: a695fde2-da48-835f-423d-d34fb048d6ab
Version Independent ID: e8eab8da-72ba-991a-c011-a41d2ed9939d
Content: => operator - C# reference
Content Source: docs/csharp/language-reference/operators/lambda-operator.md
Product: dotnet-csharp
Technology: csharp-language-reference
GitHub Login: @BillWagner
Microsoft Alias: wiwagn

Hi @DSivtsov - thank you for posting this suggestion. I agree that the results are the same, and that this version is more elegant. I labeled this issue as "up-for-grabs", if you do create a pull request please add details as to why the overload is used. Thank you

@IEvangelist is it necessary to explain the choice of the overload? This is the example of multiple input parameters to a lambda expression. I'm afraid the discussion about the choice of the overload would be out of topic. If such a discussion is necessary, I would update the example to such where it's not necessary.

@IEvangelist is it necessary to explain the choice of the overload? This is the example of multiple input parameters to a lambda expression. I'm afraid the discussion about the choice of the overload would be out of topic. If such a discussion is necessary, I would update the example to such where it's not necessary.
Or you've meant PR description, not the article?

I meant for the PR description... I should have made that more obvious. Good call out.

Was glad to be helpful. Will i must close the ticket?
P.S> What is mean "PR description."? Is it a internal code ;)?

@DSivtsov If you want, you can submit pull request to this repository. The code is in the following file:
https://github.com/dotnet/docs/blob/master/docs/csharp/language-reference/operators/snippets/LambdaOperator.cs

I submitted the pull request.
Because currently used the Func<TAccumulate,TSource,TAccumulate>) variant is more interesting that i was propose early, i decided that will be more appropriate not change method,  but change initial data (the result which showing in comments doesn't change).

:) I hope from second time, I made correct PR (I thought that "PR" is a secret internal code :) )


toggle overlay disappeared after few mins

Hi
The fake gps work great except for the toggle overlay only work for a fees mins and sudden disappeared cannot enable again in pokemon go.
I'm using cynogenmod 13 on galaxy s3 international. Got the latest fake location installed. All setting are the same as my nexus 7 2013 cynogenmod 13 which don't have any issues with the toggle overlay joystick.
Do you have any ideas how to fix this. I also tested on galaxy s2. Overlay always disappeared in a few second.

The overlay is running in the service com.rong.xposed.fakelocation.service.f.FxService, I think maybe it's because of low memory and android system kill the service/remove the overlay view.  You can use a system tool app to check whether the service is running when the overlay disappears

Yeah I also think android system kill the service when memory are low.

Thanks
For the help.

I'll make the service foreground to avoid being killed by system in next release. It should work in most case.


Begin Rewrite

We are starting our rewrite to React for the frontend. We will still be using Express for our backend, but as a pure API and no SSR. Mongo is still our DB.

We have divied up some work as follows:

@LadyAudrey and I will work on setting up React Router and the basic homepage.
@iTWasNotLuck will be working with me on setting up Express and a basic Auth flow.


offline

offline mode don't work

+1 When offline, the page will render a cached version without the CSS and JS. Otherwise, nothing will render.

Will look into this. Although it passes the Lighthouse tests we may have to pre-cache some more pages for this to work. I will investigate, thanks!

The app-shell will load now, even when you're offline and haven't visited the page before d6a60647ef66d2a389582f176ab7f2bbdcb6fcc6.
If you could please check this one again @yoanmarchal @djmtype. Thank you

Fixed. Now if you're offline it will always load the app-shell 88bbfdc7a5b8804fc9dc86a3cf86006865380537


generate card-style overview like Folder Note plugin

Folder Note plugin can show notes like this:

A card shows the title and a part of the notes
This allows you to quickly recall the content of your notes, and there is no need to click or hover on the card.

I have a similar need, but probably with different goal in mind: I would love to generate cards instead of a table with dataviewjs, preserving same data in cards as now I have in table columns. I don't need a preview of a note part, but probably that could be a separate functionality to use (combine dataview's cards with dataview's function to render preview part).

How do the image previews for this work? Is it frontmatter, or maybe the first link in the file?
This isn't too bad, since it's pretty much 100% just a bunch of CSS (and if it is supported in dataview, then a new query type).

yes, it will preview the first link in the head of the card, and the note's text is in the body of the card.

Is there a date for milestone 0.6.0?

yes,if dataview have a new view of cards,it will be awesome


Pull request with type [CREATE] for user [lindsayShap] and object type [ConfigurationItem] - titled [test reg]

Automated pull request from the Configuration Manager community hub.

Hmmm no sure why this got created in first party and not self host..


Fix the getCanonicalFileName in sys.ts and also check null value in f…

…ile watcher call back
This PR fixes the getCanonicalFileName function used in sys.ts for file systems using case sensitive file names. Also added checking for null for file watcher callbacks as node sometimes will pass null as a parameter value.

:+1:  with my minor comments.


test: fix failing tests

Proposed changes

one_blocks.cpp

change peer to official seed.
mocks and v1 drop incoming, so this is a "good enough" fix for now.

two_transactions.cpp

Core updated from SNAKE_CASE to CamelCase.

two_votes.cpp

fee is variable, so test for greater than zero.

Types of changes

[ ] Bugfix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Refactoring (improve a current implementation without adding a new feature or fixing a bug)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] Build (changes that affect the build system)
[ ] Docs (documentation only changes)
[x] Test (adding missing tests or fixing existing tests)
[ ] Other... Please describe:

Checklist

[x] I have read the CONTRIBUTING documentation
[x] Lint and unit tests pass locally with my changes
[ ] I have added tests that prove my fix is effective or that my feature works
[ ] I have added necessary documentation (if appropriate)

Codecov Report

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

@@           Coverage Diff           @@
##           master      #36   +/-   ##
=======================================
  Coverage   93.75%   93.75%
=======================================
  Files          34       34
  Lines         304      304
=======================================
  Hits          285      285
  Misses         19       19

Continue to review full report at Codecov.

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

@faustbrian  This one is ready.


feat(HttpClient): Provide tracing handler to allow removal of query string in traces

This PR resolves #201
Issue #, if available:
Description of changes:
Added a new Tracing handler that will configure the httpmessagehandler in a way that when it adds traces to XRay recorder it will strip the query parameters around it and on trace the path.
By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

Thanks @AnuragMohapatra for contributing the future. It would have been ideal if we could have made the query sanitization the default behavior, but I believe that could be a backwards incompatible for some customers. So this looks good to me. :)

Thanks @srprash One more reason for the separate instance is to give the ability to have different httpmessagehandler on different named client which may(I have not test) allow the user to have a peek on some query strings if required for troubleshooting or debugging. That was my thought process.


EasyOCR does not extract text properly

Bug
When using EasyOCR as part of docling pipeline, no text is detected.
Steps to reproduce
File to reproduce: I simply printed the following link to PDF usind Microsoft Print to PDF. This way, the PDF is by design not machine-readable.
import io
import base64

FILE = "file.pdf"
with open(FILE, 'rb') as f:
        encoded_string = base64.b64encode(f.read())
base64_file = encoded_string.decode('utf-8')
file_bytes = base64.b64decode(base64_file )
file_bytes = io.BytesIO(file_bytes)

from docling.datamodel.base_models import InputFormat
from docling.datamodel.base_models import DocumentStream
from docling.document_converter import PdfFormatOption, DocumentConverter
from docling.datamodel.pipeline_options import PdfPipelineOptions, TableFormerMode, EasyOcrOptions
from docling.backend.docling_parse_v2_backend import DoclingParseV2DocumentBackend

pipeline_options = PdfPipelineOptions()

pipeline_options.do_ocr = True
pipeline_options.ocr_options = EasyOcrOptions(
    lang=["en"],
    use_gpu=False,
    download_enabled=False,
    model_storage_directory=".EasyOCR/model/",
)
pipeline_options.artifacts_path = "."

doc_converter = DocumentConverter(
    format_options={
        InputFormat.PDF: PdfFormatOption(
            pipeline_options=pipeline_options,
            backend=DoclingParseV2DocumentBackend,
        )
    }
)

source = DocumentStream(name="xxxx.pdf", stream=file_bytes)
result = doc_converter.convert(source)
result.document.export_to_text()

'<missing-text>\n\n<missing-text>\n\n<missing-text>\n\n<missing-text>'

When using plain easyocr, the OCR is working as expected:
import easyocr

reader = easyocr.Reader(["en"], gpu=False, download_enabled=False, model_storage_directory=".EasyOCR/model") # this needs to run only once to load the model into memory
result = reader.readtext("sample.png")
result

[([[141, 27], [227, 27], [227, 63], [141, 63]], 'Code', 0.999991774559021),
 ([[308, 27], [468, 27], [468, 65], [308, 65]],
  'Markdown',
  0.9905806747834137),
 ([[573, 29], [685, 29], [685, 65], [573, 65]], 'Run AlI', 0.6046530428334653),
 ([[765, 29], [875, 29], [875, 65], [765, 65]], 'Restart', 0.9854204139007381),
 ([[906, 38], [946, 38], [946, 62], [906, 62]], 'Ex', 0.32902462879268796),
 ([[953, 29], [1207, 29], [1207, 71], [953, 71]],
  'Clear AIl Outputs',
[...]

Docling version
2.4.0
Python version
3.11

just a note to say I'm experiencing the same issue

@nikos-livathinos any updates on this? :)

I dug into the issue a little bit and I am wondering if the code is consistent.
In pipeline_options.py Link you set the following default:
bitmap_area_threshold: float = (
        0.05  # percentage of the area for a bitmap to processed with OCR
    )
```python
In `base_ocr_model.py` [Link](https://github.com/DS4SD/docling/blob/2a1d3fd2213c3f8becf5c5478b019012a5a0791b/docling/models/base_ocr_model.py#L29C9-L29C40) you set:
```python
BITMAP_COVERAGE_TRESHOLD = 0.75

Your proceed then Link:
# return full-page rectangle if sufficiently covered with bitmaps
        if self.options.force_full_page_ocr or coverage > max(
            BITMAP_COVERAGE_TRESHOLD, self.options.bitmap_area_threshold
        ):

Maybe I am not interpreting this correctly, but by using max your are always requiring that coverage > 0.75, irrespective of if the user specifies a smaller value using bitmap_area_threshold in the OCR options (because BITMAP_COVERAGE_TRESHOLD is hard-coded. Shouldn't it be min, such that the user can effectively use the bitmap_area_threshold option to have control over when OCR is performed and when it is not?

I was able to narrow down the behavior. If I set force_full_page_ocr=True EasyOCR is extracting the text correctly (i.e., performing OCR). However, since this is a PDF that is not machine-readable at all (i.e., only consisting of pictures), I was expecting that docling figures this out automatically and applies OCR to the pages by default (since pipeline_options.ocr_options.bitmap_area_threshold = 0.05 is the default).
I find it quite counterintuitive that I had to force the OCR in this scenario. Any ideas how to fix this behaviour?

Thanks for your find, force_full_page_ocr=True solve my problem.
As all pdf I need to deal is english or chinese, I use a simple logic to detect if docling extract correct text.
As the top 140 char in chinese would occurs about 50% in most chinese articles, so I combined chunks text until 1000 chars, the count the frequent of them.
If text is wrong, I just add force_full_page_ocr options and let docling re-process document.

It appears that this issue is addressed in multiple places and can be closed.

Using pipeline_options.ocr_options.force_full_page_ocr = True (or --force-ocr on the CLI) in case you have a PDF file that comes out badly.
Using the OCR language selection (--ocr-lang) for EasyOcr or other engines.

@cau-git In my view the underlying issue is not resolved. 🤔
In the case at hand, we have a file that is not machine-readable at all (every page should be an image). Therefore, I would expect that setting pipeline_options.ocr_options.bitmap_area_threshold = 0.05 should be enough to trigger the OCR step. Why would I need force_full_page_ocr  in addition?

@simonschoe You will need force_full_page_ocr if you want to ensure only text cells from the OCR engine are processed. That is the case for example if your PDF does not contain a bitmap (but garbled text is encoded), or if your PDF contains bitmaps but there is also a pre-OCRed text layer on top, which will otherwise be preferred.


*: update chnagelog to v1.3.0

What problem does this PR solve?

Issue Number: none
Problem Summary:
update changelog
What is changed and how it works:
update changelog
Check List
Tests

[ ] Unit test
[ ] Integration test
[ ] Manual test (add detailed scripts or steps below)
[x] No code

Notable changes

[ ] Has configuration change
[ ] Has HTTP API interfaces change
[ ] Has tiproxyctl change
[ ] Other user behavior changes

Release note

Please refer to Release Notes Language Style Guide to write a quality release note.
None

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Please upload report for BASE (main@56ed6eb). Learn more about missing BASE report.

Additional details and impacted files
@@           Coverage Diff           @@
##             main     #702   +/-   ##
=======================================
  Coverage        ?   66.10%
=======================================
  Files           ?      122
  Lines           ?    11167
  Branches        ?        0
=======================================
  Hits            ?     7382
  Misses          ?     3253
  Partials        ?      532

Flag
Coverage Δ

unit
66.10% <ø> (?)

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

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.