Provision fails after upgrade to El Capitan with sh: bundle: command not found

I have a computer provisioned with Kitchenplan.

        run  sudo chown -R krikar /opt from "."
-> Setting up bundler
  identical  /opt/kitchenplan/Gemfile
        run  mkdir -p vendor/cache from "/opt/kitchenplan"
        run  rm -rf vendor/bundle/config from "/opt/kitchenplan"
        run  ARCHFLAGS=-Wno-error=unused-command-line-argument-hard-error-in-future bundle install --quiet --binstubs vendor/bin --path vendor/bundle from "/opt/kitchenplan"
sh: bundle: command not found

I've removed /opt/kitchenplan and have installed the gem and done the setup, but the provisioning still doesn't work.

sudo gem install bundler
should fix it


The 2nd blog "WEAKNESS IS DEATH, STRENGTH IS LIFE" is not have subheadings [GSSoC'23]

The 2nd blog "WEAKNESS IS DEATH, STRENGTH IS LIFE" is not have subheadings. It is rather looking like an article. I can add subheadings to it and make it look like an actual blog. Please assign this issue to me under GSSoC'23.

please assign me this issue

go for it
please make it beautiful


fix: xor filter build

Which issue does this PR close?
Closes #
Rationale for this change
In #631 xor filter is introduced, however there is one bug on that PR, filter is not built correctly.

What changes are included in this PR?

Fix xor filter build
Add string type testcase in min-max prune

Are there any user-facing changes?
No

How does this change test
Newly added UT.

Codecov Report

Merging #666 (e450107) into main (ce9fa87) will increase coverage by 0.39%.
The diff coverage is 89.83%.

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

@@            Coverage Diff             @@
##             main     #666      +/-   ##
==========================================
+ Coverage   66.94%   67.34%   +0.39%
==========================================
  Files         283      283
  Lines       43969    44519     +550
==========================================
+ Hits        29435    29980     +545
- Misses      14534    14539       +5

Impacted Files
Coverage Δ

analytic_engine/src/instance/engine.rs
64.03% <ø> (ø)

analytic_engine/src/lib.rs
98.76% <ø> (ø)

components/arrow_ext/src/display.rs
0.00% <ø> (ø)

server/src/config.rs
37.20% <0.00%> (ø)

server/src/http.rs
0.00% <0.00%> (ø)

server/src/mysql/writer.rs
55.88% <0.00%> (-0.67%)
:arrow_down:

wal/src/lib.rs
100.00% <ø> (ø)

wal/src/manager.rs
90.43% <ø> (-0.12%)
:arrow_down:

analytic_engine/src/table/data.rs
91.43% <50.00%> (-0.22%)
:arrow_down:

common_types/src/column.rs
62.46% <58.06%> (+1.43%)
:arrow_up:

... and 33 more

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


ability to set rules on max violation allowed for each severity

Codecov Report

Merging #20 (2cf62f3) into main (dbb562e) will increase coverage by 4.42%.
The diff coverage is 85.50%.

:exclamation: Current head 2cf62f3 differs from pull request most recent head 3c7f2ed. Consider uploading reports for the commit 3c7f2ed to get more accurate results

@@             Coverage Diff              @@
##               main      #20      +/-   ##
============================================
+ Coverage     82.92%   87.35%   +4.42%
- Complexity       26       44      +18
============================================
  Files             8       13       +5
  Lines           123      174      +51
  Branches          8       12       +4
============================================
+ Hits            102      152      +50
- Misses           18       19       +1
  Partials          3        3

Impacted Files
Coverage Δ

...main/kotlin/org/thiyagu/zally/ZallyGradlePlugin.kt
100.00% <ø> (ø)

...kotlin/org/thiyagu/zally/internal/ZallyLintTask.kt
9.52% <0.00%> (-0.48%)
:arrow_down:

.../org/thiyagu/zally/internal/ZallyViolationRules.kt
100.00% <100.00%> (ø)

...otlin/org/thiyagu/zally/reports/ConsoleReporter.kt
100.00% <100.00%> (ø)

.../kotlin/org/thiyagu/zally/rules/HintRuleChecker.kt
100.00% <100.00%> (ø)

...n/kotlin/org/thiyagu/zally/rules/MayRuleChecker.kt
100.00% <100.00%> (ø)

.../kotlin/org/thiyagu/zally/rules/MustRuleChecker.kt
100.00% <100.00%> (ø)

...otlin/org/thiyagu/zally/rules/ShouldRuleChecker.kt
100.00% <100.00%> (ø)

... and 3 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 dbb562e...3c7f2ed. Read the comment docs.


Output details on failure but don't fail the build

This feedback is from a user:

Sometimes infracost script silently fails our atlantis workflow without showing any exceptions and since we depend on Atlantis success plan before merge - it blocks our workflow.

I'm going to close this issue as we just released a big improvement (pretty much a rewrite) of the Infracost-Atlantis integration that involves just running the Infracost CLI - thus failures and errors are much easier to debug as they're output in the CI logs.
Users who do not want their CI pipelines to fail can add || true to the end of the command runs.


Pipeline Details page: Workflow section - Remove Agent Item from workflow

Mockups
Remove agent from workflow

After removing the starting agent

Specifications

If there is only one element in the workflow, the Remove agent item button, in the side panel, will be disabled. There will be always at least one agent item in the workflow
When user clicks on the Remove button, a confirmation popup will be displayed. The text in the confirmation popup is the following: Please, confirm if you want to remove agent [agent_name] from the pipeline's workflow. The confirmation popup will have 2 buttons: Confirm and Cancel

If user press Confirm, the agent item will be removed from the workflow and the confirmation popup will be closed
If user press Cancel, the confirmation popup will be closed and no action will be executed

The proccess of removing an agent item from the workflow will be as follows:

If the item to be removed is the first one in the workflow, then it will appear an empty slot with a link "Add starting agent" inside of it. If user clicks the link, it will appear a dialog with all agents in the workflow that have the same type of the pipeline type, similar to #232
If the item to be removed is the last one in the workflow, then the item previous to it, in the workflow, is going to be the last agent
If the item to be remove is within the workflow (not the first or last item), then its adjacent items will be linked directly

A pipeline workflow is like a linked queue
After removing an agent item, the conectors will be updated accordingly

@gorums I can't decide if we are going to allow the user to remove the first element. The pipeline's type is set according to the first agent's type. I can't find a simple solution to keep this assertion if we allow the removal of the first agent item. Thoughts?

@YanetABUC we can remove the first Agent, but we need to keep that empty instead moving the second to that slot and we need to add a new one base of the pipeline type (Target, rootdomain, subdomain) [require]

@gorums Please check this ticket again

Working as expected


There is no tabular summary information for epochs

We need a page to list summary data for each epoch (tabular)

epoch number
ledger hash
fill rate
blocks produced

See these for inspiration:

https://minaexplorer.com/top-epoch-stakers?epoch=78
https://minaexplorer.com/staking-ledgers
https://towerstake.com/mina-time-machine/

@trevorbernard can you update the description with other wants?

I would like to see the start and end global slots and wall clock time for start and end of the epoch

@trevorbernard I want to confirm that we don't have an endpoint to support this yet, do we? I'm going to assume we don't and put this in the "blocked" column.

We have the REST summary endpoint but nothing in GQL.

We added a staker leaderboard in this PR #1029  which corresponds to https://minaexplorer.com/top-epoch-stakers?epoch=78
We still don't have a page listing all epochs and their ledger hash as in https://minaexplorer.com/staking-ledgers but I don't think this is strictly necessary or even needed.
@jhult can you weigh in on whether you think this task is done?

Moving this to backlog, as I no longer is blocked and likely has low priority, while awaiting further weigh in.


go get failed

Hey – this project is really exciting. I just gave it a go but unfortunately ran into the following error:
go get github.com/jensneuse/goprisma/pkg/prisma

go: downloading github.com/jensneuse/goprisma v0.0.0-20210531103550-6521fb3d61b3
# github.com/jensneuse/goprisma/pkg/prisma
ld: warning: ignoring file<EMAIL_ADDRESS>building for macOS-x86_64 but attempting to link with file built for unknown-unsupported file format ( 0x76 0x65 0x72 0x73 0x69 0x6F 0x6E 0x20 0x68 0x74 0x74 0x70 0x73 0x3A 0x2F 0x2F )
Undefined symbols for architecture x86_64:
  "_free_introspection_result", referenced from:
      __cgo_2dba20b15c43_Cfunc_free_introspection_result in _x002.o
     (maybe you meant: __cgo_2dba20b15c43_Cfunc_free_introspection_result)
  "_free_prisma", referenced from:
      __cgo_2dba20b15c43_Cfunc_free_prisma in _x002.o
     (maybe you meant: __cgo_2dba20b15c43_Cfunc_free_prisma)
  "_prisma_execute", referenced from:
      __cgo_2dba20b15c43_Cfunc_prisma_execute in _x002.o
     (maybe you meant: __cgo_2dba20b15c43_Cfunc_prisma_execute)
  "_prisma_introspect", referenced from:
      __cgo_2dba20b15c43_Cfunc_prisma_introspect in _x002.o
     (maybe you meant: __cgo_2dba20b15c43_Cfunc_prisma_introspect)
  "_prisma_new", referenced from:
      __cgo_2dba20b15c43_Cfunc_prisma_new in _x002.o
     (maybe you meant: __cgo_2dba20b15c43_Cfunc_prisma_new)
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)

go env
GO111MODULE="on"
GOARCH="amd64"
GOBIN=""
GOCACHE="/Users/m/Library/Caches/go-build"
GOENV="/Users/m/Library/Application Support/go/env"
GOEXE=""
GOFLAGS=""
GOHOSTARCH="amd64"
GOHOSTOS="darwin"
GOINSECURE=""
GOMODCACHE="/Users/m/dev/pkg/mod"
GONOPROXY=""
GONOSUMDB=""
GOOS="darwin"
GOPATH="/Users/m/dev"
GOPRIVATE=""
GOPROXY="https://proxy.golang.org,direct"
GOROOT="/usr/local/go"
GOSUMDB="sum.golang.org"
GOTMPDIR=""
GOTOOLDIR="/usr/local/go/pkg/tool/darwin_amd64"
GOVCS=""
GOVERSION="go1.16.3"
GCCGO="gccgo"
AR="ar"
CC="clang"
CXX="clang++"
CGO_ENABLED="1"
GOMOD="/Users/m/dev/src/github.com/matthewmueller/hack/go.mod"
CGO_CFLAGS="-g -O2"
CGO_CPPFLAGS=""
CGO_CXXFLAGS="-g -O2"
CGO_FFLAGS="-g -O2"
CGO_LDFLAGS="-g -O2"
PKG_CONFIG="pkg-config"
GOGCCFLAGS="-fPIC -arch x86_64 -m64 -pthread -fno-caret-diagnostics -Qunused-arguments -fmessage-length=0 -fdebug-prefix-map=/var/folders/4f/tcxcr6_55v9bp38d8g4hjlf80000gn/T/go-build2413581743=/tmp/go-build -gno-record-gcc-switches -fno-common"

Any ideas? Thanks!

I can replicate the issue. Looking into it.

My current understanding is that the dylib needs to be signed. If I build it on my machine, it works. If I build it and download it (go get) it doesn't work.

Running into the same issue on both Darwin (latest MacOS) and Ubuntu 18.04.4. I might build it myself to explore later

This suggests that it could be Git-LFS related https://github.com/BlinkID/blinkid-ios/issues/223

This suggests that it could be Git-LFS related BlinkID/blinkid-ios#223

I'll try removing git lfs. Thanks for the hint.

This suggests that it could be Git-LFS related BlinkID/blinkid-ios#223

It should work now, can you confirm?

I can confirm it works on both Linux and MacOS.


Evaluate local to external reference mapping in transaction Bundle processing

Describe the bug
For bundles with bundleType == TRANSACTION, the FHIR server remaps certain local references to server-defined references as defined at https://www.hl7.org/fhir/bundle.html#bundle-unique
Evaluate this processing for efficiency as well as ensuring the remapping is correct and complete regardless of bundle order.

We suspect that we may not be capturing ALL of the references before we start storing any of the resources.
Because ordering is not deterministic we think we'll need to do a full pass before any of the processing happens.

For example, collecting the urn:uuid values from the POSTed resources and replacing the references in the PUT resources with those (or similar).
Consider refactoring the core processing so that it can be unit-tested thoroughly without requiring the server to be running.
To Reproduce
Load large bundles with different resource relationships.
Expected behavior
Bundle processing should be efficient and correct.
Specifically, we need a unit test for confirming the current behavior is correct or for adding detail of the bug to this issue.
Additional context
N/A

Background on our current processing of local references in transaction bundles:

bundle entries can have a local reference specified in the Bundle.Entry.fullUrl field - the local reference must start with 'urn:'
for resources specified in POST and PUT requests, we look for reference fields containing references starting with 'urn:' and if they match a bundle entry local reference, we replace them with the actual resource reference of the resource in the bundle entry
we build a map of [local reference --> real resource reference] to enable the local reference resolution in the previous step. The map is built as follows:

after a POST request is processed, its [local ref --> real resource ref] mapping is added to the map (because it's only at that point that we know the logical ID the resource was created with)
after all POST resources have been processed, but before any PUT resources have been processed, all PUT [local ref --> real resource ref] mappings are added to the map (we can do this before processing because PUT requests are updates, so resources already have logical ID set)

processing order of requests is all POST requests first, then PUT requests

With current code, the following scenarios work:

any POST resource containing a local reference to a POST resource processed before it in the bundle will have the reference resolved properly because each POST resource has its mapping added to the map after being processed, meaning a mapping for a resource already processed will exist when a resource lower in the bundle is processed
any PUT resource containing a local reference to a POST resource will have the reference resolved properly because all POST resources will have their mappings added to the map before any PUT resources are processed
any PUT resource containing a local reference to another PUT resource will have the reference resolved properly because all PUT resources will have their mappings added to the map before any PUT resources are processed

With current code, the following scenarios fail:

any POST resource containing a local reference to a PUT resource will not have the reference resolved properly because the PUT resources will not have their mappings added to the map until after all POST resources have been processed
any POST resource containing a local reference to a POST resource below it in the bundle will not have the reference resolved properly because the POST resource lower in the bundle will not have its mapping in the map at the time the resource higher in the bundle is processed

Options to fix failing scenarios:

Failing scenario 1 can be fixed simply by adding PUT resource mappings to the map before processing POST resources
Failing scenario 2 I think can only be fixed by 'pre-allocating' logical IDs for resources to be created. This would allow the mappings to be added to the map before processing any POST resources, but would require that the logical ID be passed into and used by the persistence layer on resource creation.

Cases where mapping can't be added until after resource is processed:

On POSTs, there is a conditional create option based on the Bundle.Entry.Request.ifNoneExist field. A search query can be specified in that field, and if a single search result is found for that query, the POSTed resource is not created. Instead, the metadata for the search result will be returned, meaning that the logical ID could be different than a pre-allocated ID. So if that Bundle.Entry.Request.ifNoneExist field is populated, we wouldn't want to add a mapping before processing that resource.
On PUTs, there is a conditional update option based on the Bundle.Entry.Request.url field. A search query can be specified on the end of that url (i.e. Patient?_id=abc). If no search results are returned for the query AND if the resource ID is null, a create will be performed rather than an update, meaning we wouldn't know the logical ID until after the create. So if the Bundle.Entry.Request.url field contains a query string, we wouldn't want to add a mapping before processing that resource.

For above cases, if we really wanted to support resolution of local references to them, we could execute the searches prior to fully processing the resources, just to get the logical ID for our mappings, but that seems expensive.

@punktilious , @prb112 , @lmsurpre , @JohnTimm  - thoughts as to how far we want to take this?

After discussion, the following solution was agreed upon:

Utility to generate logical Ids (LogicalIdentityProvider interface class) will be moved to the fhir-persistence project, and a getLogicalId() interface will be added to the FHIRPersistence class. A default implementation is provided.
For transaction bundle processing, the FHIRRestHelper will 'pre-allocate' IDs for resources to be created using above getLogicalId() method, allowing for correct building of local reference map in following step.
FHIRRestHelper will build map of local references-->external references for all POST and PUT requests, excluding those specifying conditional create or update processing, before any requests are processed. This will address the failing scenarios documented in the previous comment.
When possible, local reference-->external reference mappings will also be added for conditional creates/updates as those bundle entry requests are processed, allowing for correct resolution of local references to those requests if the local reference is in a bundle entry processed after the conditional request.

PR is merged. Please close if appropriate


Introduce to Reactive Messaging and Reactive Streams ?

Hi!
Given the rising popularity of reactive APIs (also the Flow API in Java 9), such initiative as OpenMessaging should provide the first-class APIs for the reactive world.
To define the "reactive":

[ ] Standard Publisher/Subscriber API - should be compatible with http://www.reactive-streams.org, so that many existing reactive solutions can easily integrate (RxJava, Akka, Reactor, etc...)
[ ] Push/pull model - at least on end-user API level
[ ] Back-pressure awareness - clients should be able to request their demand and producers should respect it
[?] Smart resources utilization - ThreadPool-ing, async, non-blocking API

I pre-checked some of the points I think already provided. So far
The proven beauty of reactive APIs is that you can easily convert them to pull/push/streaming APIs, but not the other way around.
That might serve a foundation for the underlying implementations, but it's important to have it as an API, not the detail of implementation.

Hi thanks for your advice, we may consider providing reactive APIs in openmessaging, but we need more research and discussions.
Currently, we are focusing on spec doc, message model, and non-reactive APIs, any advice is welcome.

@bsideup Do you have any suggestion for reactive API style, I think it is a high-levelAPI base on our core API now.

@vongosling I don't think that the reactive APIs can be efficiently implemented on top of the APIs you have atm.
Reactive style has a concept of a dynamic "demand" known upfront.
The closest is StreamingConsumer but it doesn't support the demand, means that the consumer will inefficiency predict the demand and will not be able to react on back-pressure (i.e. loading 10 messages instead of 1000 because the consumer can only consume 10 messages per second)

any update ?


Trouble installing 1.2.0a0 from pip

Hi.

OS - Manjaro
Python Version - 3.10.4
Gooey Version - 1.2.0a0

I'm not sure if this is a problem with my python setup or with the gooey pip distribution.
I'm trying to install version 1.2.0a0 but get the error below:
pip install --no-cache-dir gooey==1.2.0a0                                                                                 2 ✘
Defaulting to user installation because normal site-packages is not writeable
Collecting gooey==1.2.0a0
  Downloading Gooey-1.2.0a0-py2.py3-none-any.whl (766 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 766.9/766.9 KB 6.6 MB/s eta 0:00:00
ERROR: Could not find a version that satisfies the requirement dataclasses>=0.8 (from gooey) (from versions: 0.1, 0.2, 0.3, 0.4, 0.5, 0.6)
ERROR: No matching distribution found for dataclasses>=0.8

I try to install dataclasses==0.8 but get the following:
pip install --no-cache-dir dataclasses==0.8                                                                                 1 ✘
Defaulting to user installation because normal site-packages is not writeable
ERROR: Could not find a version that satisfies the requirement dataclasses==0.8 (from versions: 0.1, 0.2, 0.3, 0.4, 0.5, 0.6)
ERROR: No matching distribution found for dataclasses==0.8

It seems PyPi has the 0.8 version but my pip won't recognize it, however as far as I understand Python>3.7 should have dataclasses included in the install and the pip module is just a backport for previous version, so perhaps this isn't a needed requirement?
Any help would be appreciated - Thanks!
EDIT: Manually downloading the .whl file from pypi and trying to install yields:
pip3 install dataclasses-0.8-py3-none-any.whl                                                                                Defaulting to user installation because normal site-packages is not writeable
Processing ./dataclasses-0.8-py3-none-any.whl
ERROR: Package 'dataclasses' requires a different Python: 3.10.4 not in '<3.7,>=3.6'

As it's included in python>3.7, I believe the gooey pip package should be configured to ignore this dependency when running such a version as I am

It appears a fix was attempted here: https://github.com/chriskiehl/Gooey/pull/818
However I'm also not able to get this working:
python3.10 -m pip install gooey==1.2.0a0
Collecting gooey==1.2.0a0
  Using cached Gooey-1.2.0a0-py2.py3-none-any.whl (766 kB)
Requirement already satisfied: wxpython>=4.1.0 in ./env/lib/python3.10/site-packages (from gooey==1.2.0a0) (4.2.0)
Requirement already satisfied: psutil>=5.4.2 in ./env/lib/python3.10/site-packages (from gooey==1.2.0a0) (5.9.2)
Requirement already satisfied: Pillow>=4.3.0 in ./env/lib/python3.10/site-packages (from gooey==1.2.0a0) (9.2.0)
Requirement already satisfied: colored>=1.3.93 in ./env/lib/python3.10/site-packages (from gooey==1.2.0a0) (1.4.3)
Collecting typing-extensions==<IP_ADDRESS>
  Using cached typing_extensions-<IP_ADDRESS>-py3-none-any.whl (26 kB)
ERROR: Ignored the following versions that require a different python version: 0.7 Requires-Python >=3.6, <3.7; 0.8 Requires-Python >=3.6, <3.7
ERROR: Could not find a version that satisfies the requirement dataclasses>=0.8 (from gooey) (from versions: 0.1, 0.2, 0.3, 0.4, 0.5, 0.6)
ERROR: No matching distribution found for dataclasses>=0.8

For more background: https://github.com/chriskiehl/GooeyExamples/issues/36

From https://github.com/chriskiehl/Gooey/pull/818/files#diff-60f61ab7a8d1910d86d9fda2261620314edcae5894d5aaa236b821c7256badd7R19:
"dataclasses>=0.8;python_version<'3.7'"
However:
>>> "3.7" < "3.10"
False

We need to cast python_version from string to float before comparison.

According to https://github.com/heroku/heroku-buildpack-python/issues/1248, this was fixed in https://github.com/heroku/heroku-buildpack-python/pull/1254:
Updates:

setuptools from 47.1.1 to:
50.3.2 for Python 3.5
57.5.0 for Python 3.6+

Unfortunately, pip install setuptools==57.5.0 downgrades from 65.3.0 and has no effect.

Got it installed with pip install<EMAIL_ADDRESS>but this resulted in runtime errors (wx._core.wxAssertionError when switching between groups, and groups not getting updated.


Developer Admin UI shall be able to import mass user2project assignments by CSV

Like done for project create and delete we need a mass import function for user to project relations

CSV example:
ProjectId;Users
testproject_1;scenario2_user1
testproject_2;scenario2_user2

We will also provide an action to unassign by CSV import as well


Monthly return heat chart cutting off

I'm running the reports.plot with mode="full" and the top and bottom rows of the monthly returns chart is getting clipped (please see the attached screenshot). I was wondering if there is a way to add a bit of spacing on the top and bottom to get it to render properly.

Thanks for the help.

Same issue.


Cannot open multiple instances on Windows

Description
When attempting to open multiple instances on Windows, the first instance immediately hard crashes with this error:
Assertion failed: count && count <= buf->size, file D:\a\neovim\neovim\src\nvim\rbuffer.c, line 144
There is no output from the first instance after starting the second instance besides this error. It seems to occur when attempting to write to the remote nvim instance. I found that this is a known and fixed issue on neovim nightly (as of Mar 21st), but it's usually caused by malformed RPC/msgpack data as far as I could tell. When outputting the packed command data, I got the result '<94>. I don't have more time to look into this at the moment but I can look at this more later in about a week if nobody figures it out by then.
Neovim version
NVIM v0.9.5
Build type: RelWithDebInfo
LuaJIT 2.1.1703942320

OS information
Windows 11
Steps to reproduce

Setup neocord on Windows
Attempt to open two instances

Logs

Details
First instance:
[neocord] Setting up plugin for windows
[neocord] Using Discord IPC socket path: \.pipediscord-ipc-0
[neocord] Checking Discord IPC socket at \.pipediscord-ipc-0...
[neocord] Using id 70f08fa0-58bf-4ba4-895f-95a1e0a0bb5a
[neocord] Completed plugin setup
[neocord] Getting nvim socket paths...
[neocord] Executing command: `powershell.exe, -Command, (Get-ChildItem \.pipe).FullName | findstr 'nvim'`
[neocord] Found unexpected Discord IPC socket type: nil
[neocord] Handling BufEnter event...
[neocord] Connecting to Discord...
[neocord] Handling UIEnter event...
[neocord] Currently connecting with Discord, scheduling callback for later...
[neocord] Connected to Discord
[neocord] Authorizing with Discord...
[neocord] Wrote message to pipe
[neocord] Parsed filename nil with no extension
[neocord] No status text for the given buffer, skipping...
[neocord] Got nvim socket paths: {}
[neocord] No other remote nvim instances
[neocord] Failed to decode payload: '{^A
[neocord] Authorized with Discord
[neocord] Parsed filename nil with no extension
[neocord] No status text for the given buffer, skipping...
[neocord] Handling WinLeave event...
[neocord] Handling WinEnter event...
[neocord] Handling BufEnter event...
[neocord] Handling TextChanged event...
[neocord] Not canceling neocord due to switching to a window within the same instance...
[neocord] Parsed filename nil with no extension
[neocord] Getting project name for nil...
[neocord] Setting activity for unnamed buffer...
[neocord] No project detected
[neocord] Sync activity to all peers...
[neocord] Setting Discord activity...
[neocord] Parsed filename nil with no extension
[neocord] Getting project name for nil...
[neocord] Setting activity for unnamed buffer...
[neocord] No project detected
[neocord] Sync activity to all peers...
[neocord] Setting Discord activity...
[neocord] Parsed filename nil with no extension
[neocord] Getting project name for nil...
[neocord] Setting activity for unnamed buffer...
[neocord] No project detected
[neocord] Sync activity to all peers...
[neocord] Setting Discord activity...
[neocord] Wrote message to pipe
[neocord] Wrote message to pipe
[neocord] Wrote message to pipe
[neocord] Set activity in Discord for nil
[neocord] Set activity in Discord for nil
[neocord] Set activity in Discord for nil
[neocord] Handling WinLeave event...
[neocord] Handling WinEnter event...
[neocord] Handling BufEnter event...
[neocord] Handling BufAdd event...
[neocord] Handling BufEnter event...
[neocord] Not canceling neocord due to switching to a window within the same instance...
[neocord] Parsed filename init.lua with lua extension
[neocord] Getting project name for<EMAIL_ADDRESS>[neocord] Not a git repository, skipping...
[neocord] Setting activity for<EMAIL_ADDRESS>[neocord] Using file asset: { "Lua", "lua" }
[neocord] No project detected
[neocord] Sync activity to all peers...
[neocord] Setting Discord activity...
[neocord] Parsed filename init.lua with lua extension
[neocord] Getting project name for<EMAIL_ADDRESS>[neocord] Not a git repository, skipping...
[neocord] Setting activity for<EMAIL_ADDRESS>[neocord] Using file asset: { "Lua", "lua" }
[neocord] No project detected
[neocord] Sync activity to all peers...
[neocord] Setting Discord activity...
[neocord] Parsed filename init.lua with lua extension
[neocord] Getting project name for<EMAIL_ADDRESS>[neocord] Not a git repository, skipping...
[neocord] Setting activity for<EMAIL_ADDRESS>[neocord] Using file asset: { "Lua", "lua" }
[neocord] No project detected
[neocord] Sync activity to all peers...
[neocord] Setting Discord activity...
[neocord] Wrote message to pipe
[neocord] Parsed filename init.lua with lua extension
[neocord] Getting project name for<EMAIL_ADDRESS>[neocord] Not a git repository, skipping...
[neocord] Setting activity for<EMAIL_ADDRESS>[neocord] Using file asset: { "Lua", "lua" }
[neocord] No project detected
[neocord] Sync activity to all peers...
[neocord] Setting Discord activity...
[neocord] Wrote message to pipe
[neocord] Wrote message to pipe
[neocord] Set activity in Discord for init.lua
[neocord] Wrote message to pipe
[neocord] Set activity in Discord for init.lua
[neocord] Set activity in Discord for init.lua
[neocord] Set activity in Discord for init.lua
[neocord] Handling TextChanged event...
[neocord] Parsed filename init.lua with lua extension
[neocord] Getting project name for<EMAIL_ADDRESS>[neocord] Not a git repository, skipping...
[neocord] Setting activity for<EMAIL_ADDRESS>[neocord] Using file asset: { "Lua", "lua" }
[neocord] No project detected
[neocord] Sync activity to all peers...
[neocord] Setting Discord activity...
[neocord] Wrote message to pipe
[neocord] Set activity in Discord for init.lua
[neocord] Handling FocusGained event...
[neocord] Parsed filename init.lua with lua extension
[neocord] Getting project name for<EMAIL_ADDRESS>[neocord] Not a git repository, skipping...
[neocord] Setting activity for<EMAIL_ADDRESS>[neocord] Using file asset: { "Lua", "lua" }
[neocord] No project detected
[neocord] Sync activity to all peers...
[neocord] Setting Discord activity...
[neocord] Wrote message to pipe
[neocord] Set activity in Discord for init.lua

Second instance:
[neocord] Setting up plugin for windows
[neocord] Using Discord IPC socket path: \.pipediscord-ipc-0
[neocord] Checking Discord IPC socket at \.pipediscord-ipc-0...
[neocord] Using id 77d4aea4-caee-47a7-96c1-a6e8e578a978
[neocord] Completed plugin setup
[neocord] Getting nvim socket paths...
[neocord] Executing command: `powershell.exe, -Command, (Get-ChildItem \.pipe).FullName | findstr 'nvim'`
[neocord] Found unexpected Discord IPC socket type: nil
[neocord] Handling BufEnter event...
[neocord] Connecting to Discord...
[neocord] Handling UIEnter event...
[neocord] Currently connecting with Discord, scheduling callback for later...
[neocord] Connected to Discord
[neocord] Authorizing with Discord...
[neocord] Wrote message to pipe
[neocord] Parsed filename nil with no extension
[neocord] No status text for the given buffer, skipping...
[neocord] Got nvim socket paths: { "\\.\pipe\nvim.8396.0" }
[neocord] Registering as a new peer to 1 instance(s)...
[neocord] Connected to remote nvim instance at<EMAIL_ADDRESS>[neocord] Wrote to remote nvim instance<EMAIL_ADDRESS>[neocord] Failed to decode payload: '{^A
[neocord] Authorized with Discord
[neocord] Parsed filename nil with no extension
[neocord] No status text for the given buffer, skipping...

@IogaMaster This is not completed

The pr didn't fix it?

No my previous PRs were related to workspaces not showing and the error caused by fugitive, this issue is about neovim instantly crashing when attempting to open multiple instances. I just started working on figuring out what's causing this issue today.

Oh alr, I havent used windows in like 7 years


Add how to install in README

This PR just adds a "how to install" area in the README.md

Thanks a lot 😆😆


Collapse into one line

https://github.com/jc-cb/prime-workshop-scripts/blob/26056f6e18396ca284d4d2ed9c5a4e50a292a310/prime_ws_orders.py#L65

This as well: https://github.com/jc-cb/prime-workshop-scripts/blob/26056f6e18396ca284d4d2ed9c5a4e50a292a310/prime_ws_orders.py#L30


Problem with "invalid" characters

I tried to translate Taskbar but after I was ready, I couldn't upload it (issue/gist) or esport (SD).
After I returned to retry uploading it, some of the strings weren't translated.
I saved the file and returned, and the strings were missing again.
After I took a closer look I noticed that every of those non-translatable strings contains a : in its name so I suppose this is the problem.

I noticed that every of those non-translatable strings contains a : in its name so I suppose this is the problem.

The : actually is an indicator for the index of the item in the array of strings you're trying to translate. So the problem pops up when trying to add new strings to the arrays (or plurals). I'll look into it.


redis: 7.0.10 -> 7.0.11

Description of changes
Fixes CVE-2023-28856.
https://github.com/redis/redis/releases/tag/7.0.11

Things done

Built on platform(s)

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

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

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

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

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[x] Fits CONTRIBUTING.md.

nixpkgs-review reveals no new failures, macos 10.15

Successfully ran nixosTests.redis, nixosTests.txredisapi, nixosTests.rspamd, nixosTests.prometheus-exporters.redis, nixosTests.mastodon on x86_64, all of which use redis.


No call missing exec

Do not call gsutil if it is not installed, provide appropriate messaging for the user.

Current coverage is 98.33% (diff: 100%)

Merging #349 into development will increase coverage by <.01%

@@           development       #349   diff @@
=============================================
  Files               38         38
  Lines             2925       2936    +11
  Methods              0          0
  Messages             0          0
  Branches           145        145
=============================================
+ Hits              2876       2887    +11
  Misses              43         43
  Partials             6          6

Powered by Codecov. Last update 6e811bf...21e4c09

OK, that obviously did not work, better rebase my branch properly.


Project tweaks to run it fully local

This PR changes the project setup in order to be able to have different settings based on the environment, for example using a different backend API url for development 🙂

Hi, @zillemarco.We appreciate this contribution. I am going to look at this in the next 24 hours and revert.


pyinaturalist does not install correctly on Ubuntu 18.04

Describe the bug
pip3 reports a problem when attempting to install Pyinaturalist on Ubuntu 18.04. The module is installed but the test code fails:
aubrey@tensorbook2:~$ python3
Python 3.6.9 (default, Jan 26 2021, 15:33:00)
[GCC 8.4.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> from pyinaturalist import *
>>> observations = get_observations(user_id='aubreymoore')
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
NameError: name 'get_observations' is not defined

Trace from pip3 install attempt
aubrey@tensorbook2:~$ pip3 install pyinaturalist
Error initializing plugin EntryPoint(name='Windows (alt)', value='keyrings.alt.Windows', group='keyring.backends').
Traceback (most recent call last):
  File "/home/aubrey/.local/lib/python3.6/site-packages/keyring/backend.py", line 198, in _load_plugins
    init_func = ep.load()
  File "/home/aubrey/.local/lib/python3.6/site-packages/importlib_metadata/__init__.py", line 96, in load
    module = import_module(match.group('module'))
  File "/usr/lib/python3.6/importlib/__init__.py", line 126, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "<frozen importlib._bootstrap>", line 994, in _gcd_import
  File "<frozen importlib._bootstrap>", line 971, in _find_and_load
  File "<frozen importlib._bootstrap>", line 955, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 665, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 678, in exec_module
  File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
  File "/usr/lib/python3/dist-packages/keyrings/alt/Windows.py", line 9, in <module>
    from . import file_base
  File "/usr/lib/python3/dist-packages/keyrings/alt/file_base.py", line 13, in <module>
    from keyring.util.escape import escape as escape_for_ini
ModuleNotFoundError: No module named 'keyring.util.escape'
Error initializing plugin EntryPoint(name='file', value='keyrings.alt.file', group='keyring.backends').
Traceback (most recent call last):
  File "/home/aubrey/.local/lib/python3.6/site-packages/keyring/backend.py", line 198, in _load_plugins
    init_func = ep.load()
  File "/home/aubrey/.local/lib/python3.6/site-packages/importlib_metadata/__init__.py", line 96, in load
    module = import_module(match.group('module'))
  File "/usr/lib/python3.6/importlib/__init__.py", line 126, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "<frozen importlib._bootstrap>", line 994, in _gcd_import
  File "<frozen importlib._bootstrap>", line 971, in _find_and_load
  File "<frozen importlib._bootstrap>", line 955, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 665, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 678, in exec_module
  File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
  File "/usr/lib/python3/dist-packages/keyrings/alt/file.py", line 11, in <module>
    from keyring.util.escape import escape as escape_for_ini
ModuleNotFoundError: No module named 'keyring.util.escape'
Error initializing plugin EntryPoint(name='pyfs', value='keyrings.alt.pyfs', group='keyring.backends').
Traceback (most recent call last):
  File "/home/aubrey/.local/lib/python3.6/site-packages/keyring/backend.py", line 198, in _load_plugins
    init_func = ep.load()
  File "/home/aubrey/.local/lib/python3.6/site-packages/importlib_metadata/__init__.py", line 96, in load
    module = import_module(match.group('module'))
  File "/usr/lib/python3.6/importlib/__init__.py", line 126, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "<frozen importlib._bootstrap>", line 994, in _gcd_import
  File "<frozen importlib._bootstrap>", line 971, in _find_and_load
  File "<frozen importlib._bootstrap>", line 955, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 665, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 678, in exec_module
  File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
  File "/usr/lib/python3/dist-packages/keyrings/alt/pyfs.py", line 8, in <module>
    from keyring.util.escape import escape as escape_for_ini
ModuleNotFoundError: No module named 'keyring.util.escape'
Defaulting to user installation because normal site-packages is not writeable
Requirement already satisfied: pyinaturalist in ./.local/lib/python3.6/site-packages (0.12.1)
Requirement already satisfied: python-dateutil>=2.0 in ./.local/lib/python3.6/site-packages (from pyinaturalist) (2.8.1)
Requirement already satisfied: python-forge in ./.local/lib/python3.6/site-packages (from pyinaturalist) (18.6.0)
Requirement already satisfied: keyring~=21.4.0 in ./.local/lib/python3.6/site-packages (from pyinaturalist) (21.4.0)
Requirement already satisfied: requests~=2.25.0 in ./.local/lib/python3.6/site-packages (from pyinaturalist) (2.25.1)
Requirement already satisfied: jeepney>=0.4.2 in ./.local/lib/python3.6/site-packages (from keyring~=21.4.0->pyinaturalist) (0.6.0)
Requirement already satisfied: importlib-metadata in ./.local/lib/python3.6/site-packages (from keyring~=21.4.0->pyinaturalist) (3.4.0)
Requirement already satisfied: SecretStorage>=3 in ./.local/lib/python3.6/site-packages (from keyring~=21.4.0->pyinaturalist) (3.3.1)
Requirement already satisfied: six>=1.5 in ./.local/lib/python3.6/site-packages (from python-dateutil>=2.0->pyinaturalist) (1.15.0)
Requirement already satisfied: idna<3,>=2.5 in ./.local/lib/python3.6/site-packages (from requests~=2.25.0->pyinaturalist) (2.10)
Requirement already satisfied: urllib3<1.27,>=1.21.1 in ./.local/lib/python3.6/site-packages (from requests~=2.25.0->pyinaturalist) (1.26.3)
Requirement already satisfied: certifi>=2017.4.17 in ./.local/lib/python3.6/site-packages (from requests~=2.25.0->pyinaturalist) (2020.12.5)
Requirement already satisfied: chardet<5,>=3.0.2 in ./.local/lib/python3.6/site-packages (from requests~=2.25.0->pyinaturalist) (4.0.0)
Requirement already satisfied: cryptography>=2.0 in /usr/lib/python3/dist-packages (from SecretStorage>=3->keyring~=21.4.0->pyinaturalist) (2.1.4)
Requirement already satisfied: typing-extensions>=3.6.4 in ./.local/lib/python3.6/site-packages (from importlib-metadata->keyring~=21.4.0->pyinaturalist) (<IP_ADDRESS>)
Requirement already satisfied: zipp>=0.5 in ./.local/lib/python3.6/site-packages (from importlib-metadata->keyring~=21.4.0->pyinaturalist) (3.4.0)
aubrey@tensorbook2:~

For the first error, those top-level imports (from pyinaturalist import *) were just added to the latest development version and haven't been released yet (but will be fairly soon). You can either do:

With pyinaturalist <=0.12: from pyinaturalist.node_api import get_observations
Or install the pre-release build: pip3 install -U --pre pyinaturalist

For the second error, that's likely due to an old version of the keyring library. Try pip3 install -U keyring. Also, that traceback shows paths in /usr/lib/python3.6/ in addition to ~/.local/lib/python3.6. I'd recommend installing into a virtual environment, to avoid conflicts with global packages.
Let me know if that works.

Hi Jordan,
Thanks for your rapid response and expert advice. Testing now. Will report
back.

Aubrey

On Sun, May 16, 2021 at 7:18 AM Jordan Cook @.***>
wrote:

For the first error, those top-level imports (from pyinaturalist import *)
were just added to the latest development version and haven't been released
yet (but will be fairly soon). You can either do:

With pyinaturalist <=0.12: from pyinaturalist.node_api import
get_observations
Or install the pre-release build: pip3 install -U --pre pyinaturalist

For the second error, that's likely due to an old version of the keyring
library. Try pip3 install -U keyring. Also, that traceback shows paths in
/usr/lib/python3.6/ in addition to ~/.local/lib/python3.6. I'd recommend
installing into a virtual environment, to avoid conflicts with global
packages.
Let me know if that works.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/niconoe/pyinaturalist/issues/135#issuecomment-841726938,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAIRSTYLFOQDK7J725LKHUTTN3QKVANCNFSM446H543A
.

Hi Jordan,
I followed your suggestions: Fixed the keyring issue and installed the
pre-release version of pyinaturalist (0.13.0.dev262).
Now running within a virtual environment.
Got the test code to work after changing the import line:
from pyinaturalist.node_api import get_observations
observations = get_observations(user_id='aubreymoore')
WORKS! YAHOO!
Thanks a lot to you and the other pyinaturalist developers.
All the Best,

Aubrey

Aubrey Moore
Entomologist
University of Guam
On Sun, May 16, 2021 at 7:18 AM Jordan Cook @.***>
wrote:

For the first error, those top-level imports (from pyinaturalist import *)
were just added to the latest development version and haven't been released
yet (but will be fairly soon). You can either do:

With pyinaturalist <=0.12: from pyinaturalist.node_api import
get_observations
Or install the pre-release build: pip3 install -U --pre pyinaturalist

For the second error, that's likely due to an old version of the keyring
library. Try pip3 install -U keyring. Also, that traceback shows paths in
/usr/lib/python3.6/ in addition to ~/.local/lib/python3.6. I'd recommend
installing into a virtual environment, to avoid conflicts with global
packages.
Let me know if that works.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/niconoe/pyinaturalist/issues/135#issuecomment-841726938,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAIRSTYLFOQDK7J725LKHUTTN3QKVANCNFSM446H543A
.

Great! Feel free to create another issue if you run into any more problems.
Also, the docs for the latest pre-release version can be found here: https://pyinaturalist.readthedocs.io/en/latest/

I have the same error message on Python 3.8, Windows 7
pip install pyinaturalist

from pyinaturalist import *
observation = get_observations(user_id='myuserid')

NameError: name 'get_observations' is not defined

... and also ...
from pyinaturalist import *
token = get_access_token(
    username='my_username',
    password='my_password',
    app_id='my_app_id',
    app_secret='my_app_secret',
)

NameError: name 'get_access_token' is not defined

So I tried pip install -U --pre pyinaturalist as suggested by @JWCook above.
Apparently, installation was correct.
But the proposed import code didn't work either:
from pyinaturalist.node_api import get_observations

ModuleNotFoundError: No module named 'pyinaturalist.node_api'; 'pyinaturalist' is not a package

Finally, I am a bit confused about the current documentation, suggesting to do this:
from pyinaturalist import *
If this has still not been released, shouldn't documentation suggest the other import method? (even if it didn't work for me)
Or ... maybe it has already been released right now.
BTW, I am a python newbie and don't know how to check the installed package version.
How can I check my pyinaturalist version?
Thanks a lot in advance for your answer


Move rate limiting check

Noticed that the rate limiting check is in the middle of a loop that does not interact with Github APIs.
So, it is making the gh api -i "repos/$gh_org" 2>&1 | grep -Ei '^X-Ratelimit-Remaining' every user, regardless of it we will need to interact with the Github API for that user.
By moving it, we can skip that check for all users who do use Copilot or were recently added.

This is an excellent idea, thanks so much for the contribution @samsm!

This has been released in version v1.0.6 here: https://github.com/KyMidd/CleanupCopilotLicenses/releases/tag/v1.0.6
We also moved v1 tag forward to include your changes also, this change is live globally now. 🚀


Add hardware wallet support

Christian knows someone that can tell us what best practices are for doing browser-based hw wallet authentication.
We could do variants of this, e.g. QR code signing, but directly hooking up Ledger & Trezor is the critical path.

So I've investigated this for a more general solution in the browser, and unfortunately Liquality (which does have extension Bitcoin support) doesn't expose the xpub of its wallet or let you input that.  WalletConnect is just for dapps.
Think we should focus on Trezor+Ledger via USB from the browser, and then can later add a QR/PSBT flow for the newer generation of more "manual" cold wallets like ColdCard.

+1 Transacting without navigating to Bridge would be a much more convenient user experience.

Because WebUSB requires a secure context (HTTPS, https://developer.mozilla.org/en-US/docs/Web/API/WebUSB_API), and because almost all of urbit's users currently use landscape outside of a secure context, this is unfortunately not going to happen now.
PSBTs are, however, being implemented (a separate PR is open for that: https://github.com/urbit/urbit/pull/5127), and any hardware wallet that supports PSBTs should work. Right now, for "out-of-the-box" support for PSBTs, you would need a Coldcard or Cobo Vault. Other wallets (Ledger, Trezor) could be used via Bitcoin's Hardware Wallet Interface (HWI) either directly in Bitcoin Core or via other wallets that support HWI (Wasabi, for instance).
Our thinking is that in the long term most people won't really want to use a hardware wallet as a hot wallet on urbit anyway, especially as on-chain fees go up and the lightning network continues to mature (most will probably just use lightning for their hot wallet anyway). For those who might want to do that, they will have the PSBT option.
If we implement hot signing in urbit in the future, we may be able to revisit this (implementing HWI in btc-wallet, basically).


osd: fix osd restart when dmcrypt

This commit fixes a bug that occurs especially for dmcrypt scenarios.
There is an issue where the 'disk_list' container can't reach the ceph
cluster because it's not launched with --net=host.
If this container can't reach the cluster, it will hang on this step
(when trying to retrieve the dm-crypt key) :
+common_functions.sh:448: open_encrypted_part(): ceph --cluster abc12 --name \
client.osd-lockbox.9138767f-7445-49e0-baad-35e19adca8bb --keyring \
/var/lib/ceph/osd-lockbox/9138767f-7445-49e0-baad-35e19adca8bb/keyring \
config-key get dm-crypt/osd/9138767f-7445-49e0-baad-35e19adca8bb/luks
+common_functions.sh:452: open_encrypted_part(): base64 -d
+common_functions.sh:452: open_encrypted_part(): cryptsetup --key-file \
-luksOpen /dev/sdb1 9138767f-7445-49e0-baad-35e19adca8bb

It means the ceph-run-osd.sh script won't be able to start the
osd_disk_activate process in ceph-container because he won't have
filled the $DOCKER_ENV environment variable properly.
Adding --net=host to the 'disk_list' container fixes this issue.
Fixes: https://bugzilla.redhat.com/show_bug.cgi?id=1543284
Signed-off-by: Guillaume Abrioux<EMAIL_ADDRESS>

CI failures are unrelated.


Couple of changes/enhancements

Hi Drew,
Sorry for taking so long to get back to this, but in the mean time I have been working on my own head and I came up with more than just the "label_area" improvement suggested in the previous pull request, so decided to create a new one here to discuss the additional changes I came up with, and that I think would be of common interest, especially the support for create labels across country borders. See list of improvements below:

country can be provided as list() instead of single string, thus allowing the download and label generation for multiple countries in one go. This stemmed from the need to generate labels for AOIs overlapping two countries.
The initial "label_area" suggestion for the ml_type=classification from https://github.com/developmentseed/label-maker/pull/128 is taken up here.
Changed the check for geojson availability, because I didn't understand the initial geojson attribute of providing one's own labelled features. When would that be the case? I interpreted it as an alternative to providing the AOI instead of the bounding_box+country combination. Maybe keeping the original geojson attribute and adding an aoi attribute to cover my intended functionality could make sense.
Create labels based on multiple country .mbtile files (related to first point where countries can be provided as list).

Let's discuss on the common ground for this pull request, what could be taken up from what couldn't, and once we agree I can work on the tests.
Cheers,
William

Apology on the clumsy implementation, I was planning on reworking it, but just wanted to discuss the value of the changes first.
About the geojson attribute, it's well understood. Now, would an aoi geometry attribute (provided as geojson or other format) as an alternative to bounding_box make sense? I personally use it to guarantee that the labelled output has complete coverage over the expected geographic extent, and it's more natural to pass a file to configuration than a Bbox if you have a very specific area over which to generate labels.

Ha, apologies, I meant that my implementation of the geojson key was the issue, not your new code. Thanks again for the contribution and I'll take a look sometime this week

@wouellette giving a more thorough look now. Can you add a test case for this also? It breaks all of the tests now because of the country list change and change to the output; I can help with updating those

Better late than never, I updated the test cases, but the WMS endpoint is still failing because the usgs wms used for the test is not matching the fixture tile. I guess they updated the imagery in usgs to cause this mismatch?

@wouellette awesome; if you pull in master I updated the WMS test to point to a new endpoint

The integration tests were also updated.
They all passed, but I had to update the label tile outputs as the former ones were reflecting the presence/absence with 1s and 0s of a class, whereas now it is the surface area which is represented (values other than 0s and 1s).

@wouellette thanks, I will likely get a chance to check this out this week; can you remove your venv files from the PR?

@wouellette gave a quick look today and looks really solid. Two other requests:

Can you add the ctr/ctr_idx iteration to the object detection and segmentation cases? Right now it looks like those would fail with two countries.
Related to the above, we should have test cases for multiple countries for all ml_types. Let me know if you'd like me to create any of those.

So what I did was adapt the tests for an area across the border between Spain and Portugal.
Because the OSM QA tiles are buffered beyond the countries' borders, I had to take a larger bounding_box and take a lower zoom level to have a limited amount of outputs (24 tiles at zoom level 10).
I kept the single country test at zoom level 17 for the sparse cases, as well as the geojson and aoi cases.


Have support swift?

do you have support for swift?

We do! This tutorial should help you get started, we have a preconfigured swift project you can download.
A couple of additional notes:

there is a known issue (see https://github.com/Azure/azure-mobile-apps/issues/15) with the download on Safari. We're trying to get it fixed, but in the meantime try Chrome if you can.
this github repo is actually for an older version of our product. If you want the latest and greatest stuff you should check out https://github.com/Azure/azure-mobile-apps-ios-client


zombie processes with PT mode

I see hundreds/thousands of zombie processes when fuzzing with -P. The processes are cleaned up (slowly) after stopping AFL.

Ooops :-(
Should be fixed in the source now, I'll update the binaries tomorrow.

Thanks. You might consider building the binaries with -DUSE_COLOR=1 now since PT requires Win10 anyway.

Should be fixed now both in source and in binaries. Thank you very much for reporting!
Wrt USE_COLOR, I'd like the prebuilt binaries to work on older Windows versions as well. And while I did start building with Intel PT support, as far as I'm aware the binaries built that way should still be usable on older Windows versions in Dynamorio mode (please let me know if that's not the case).


Custom user certificate

Hi Brock,
I hope you're doing well. I've been using your MR library for a while and loving it so much because it's customizable in all aspects. I never happened to use client certificates until now that we're applying a security solution which needs client certificates to be stored in database. When the user is signing in, he/she sends a certificate (using USB tokens) in addition to the provided username and password. The signing in procedure after checking username and password validity, includes checking the provided certificate with the existent certificate in the database for that user to see if they match ...
What I'm asking is can I create a CustomUserCertificate entity which inherits from RelationalUserCertificate just like customizing the UserAccount entity and use it in the scenario above?
If yes, how would the custom class be registered and configured in MembershipRebootConfiguration instance?
Thank you.

There is some client cert support -- check the samples. Basically, MR assumes IIS has done the cert validation and then your loign page needs to pass that along to ask MR to signin (meaning find a matching account based on thumbprint).


Is this size supposed to be the size of the whole file since it goes out at the end?

https://github.com/bkaradzic/bgfx/blob/7bb307d6545397f67acc8c6d9527646eaf40c968/tools/shaderc/shaderc_spirv.cpp#L814

That's uniform buffer size.


Add tests

Codecov Report

:exclamation: No coverage uploaded for pull request base (main@7188f62). Click here to learn what that means.
Patch has no changes to coverable lines.

Additional details and impacted files
@@           Coverage Diff           @@
##             main       #3   +/-   ##
=======================================
  Coverage        ?   92.02%
=======================================
  Files           ?       40
  Lines           ?      552
  Branches        ?      120
=======================================
  Hits            ?      508
  Misses          ?       41
  Partials        ?        3

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


Sending custom headers

ApolloServerInterceptor seems to drop whatever custom headers I'm supplying with okhttp interceptors and replaces them with the standard set of HEADER_ACCEPT_TYPE etc. If I need to sign my request with basic authorization - what's the recommended approach?

This was caused by me using okhttp application interceptor, when I switched to network one - suddenly this issue no longer occurs


Image doesn't fit well

There's no max-width or fancy settings to the img property.
Perhaps "clamp" its max-width to the width of the container.

Fixed on b11e893


Fix memory corruption and assert failures in convex decomposition

This PR fixes issue 85439 by changing the index pre-increment to post-increment so index 0 is not skipped and preventing a potential overrun past the end of the vertices vector.
Testing involved constructing a GLB file consisting of a single triangle:

Before this change the code allocates vertices and indices arrays of size 3 and writes the following:

Vertices (size=3)
Indices (size=3)

0 = unused
1

1 = [-1,-1,-1]
2

2= [1,-1,-1]
3

3 = [0,1,-1] (BUFFER OVERRUN)
unused

After this change the code writes the following:

Vertices (size=3)
Indices (size=3)

0 = [-1,-1,-1]
0

1 = [1,-1,-1]
1

2= [0,1,-1]
2

The collision shape with this new data appears correct:

offset_triangle.zip

Makes sense to me, would like the original author to weigh in if there was a reason for this. This is not something people tent to do by accident, most likely there was other code here before that makes this make sense..

It looks to have been introduced with https://github.com/godotengine/godot/commit/2ca94e51e4d4477709b83b487a4f5b938f24f56b and no code before it seems to implement the vertex-deduplication map trick. The older code uses duplicated vertices, but the loop doesn't seem to suffer from N+1 overruns.

Makes sense to me, would like the original author to weigh in if there was a reason for this. This is not something people tent to do by accident, most likely there was other code here before that makes this make sense..

Pouley is probably unlikely to reply as he's moved on to other work, but this was implementing something I suggested about removing unnecessary conversion between longhand vertex format (with duplicated verts) and vertex + index format, if I remember right. Nothing super complex going on here.

Thanks!

Cherry-picked for 4.2.1.

@yythlj Please open an issue with more details about your case.

Cherry-picked for 4.1.4.


How to change the font of the preview?

---
marp: true
---

<style>
.slide{
font-family: 'Noto Sans JP', serif !important;
}
</style>

If I changed the font like this, the exported pdf was the font but the preview was not.
I also added "markdown.preview.fontFamily": "Meiryo UI", in the settings.json of VScode, but the preview was not.

Same question as marp-team/marp-cli#161. Probably you are seeing a styling reference for the outdated Marp app.
Use section selector instead of .slide.
<style>
section {
  font-family: 'Noto Sans JP', serif !important;
}
</style>

NOTE: GitHub issue tracker is not suitable place to question. Refer to our support guideline.

Solved. Thank you very much!


update logger documentation

Description

Motivation and Context

How Has This Been Tested?

Types of changes

[ ] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)

Checklist:

[ ] My change requires a change to the documentation.
[ ] I have updated the documentation accordingly.
[x] I have read the CONTRIBUTING document.
[ ] I have added tests to cover my changes.
[ ] All new and existing tests passed.

Is the tide-log crate published or only included as a dependency of tide itself? If it's published (or as a group, we have plans to publish that crate), then I vote we leave the documentation comment as is.

A lot of changes have happened since this PR was first filed. Going to go ahead and close this. The changes in https://github.com/http-rs/tide/pull/322/commits/3e051502f4f3b47fa782cafa4d6a5e3a2d704b30 seem small enough that it's probably okay.
@k-nasa thanks heaps for this though!


Implement test timeouts

A secondary timeout option can be supplied to tests now to give them a timeout.  The default is 5 seconds.

Welcome to Codecov :tada:
Once you merge this PR into your default branch, you're all set! Codecov will compare coverage reports and display results in all future pull requests.
Thanks for integrating Codecov - We've got you covered :open_umbrella:


Update tutorial-deploy-ssis-packages-azure.md

@swinarko : Thanks for your contribution! The author, @douglaslMS, has been notified to review your proposed change.

#sign-off


Events GenieACS

Hello friends.
I would like to know how to correctly set the events. How do you write them to work?

1 BOOT
1_BOOT
"1 BOOT"
'1 BOOT'
"1_BOOT"

What is the correct nomenclature?
Thanks and regards.

For questions about how to use GenieACS please use the mailing list as github issues are meant for topics related to development.

Thank you okraits. I will do it


Set glyph margin decoration width appropriately

Fixes https://github.com/microsoft/vscode/issues/180834
Before:

After:

We discussed this in standup and the change looks obviously correct to me, go ahead and merge this


Update MISEnterpriseUpdater.m

By default Xcode creates the manifest.plist with the app version, not the build number.

Looks good to me - Thanks!


Nvidia GPU support broken in master

Placeholder ticket for now, // TODO: investigation
Our E2E tests are showing us that building a cluster w/ Standard_NC6 agent nodes are not able to schedule a pod for nvidia-smi.
@wbuchwalter FYI. If you're able to build from master and deploy a new cluster, it'd be awesome if you could try to repro!

@jackfrancis Not exactly sure what is happening here...
On the agent, journalctl reports:
+ retrycmd_if_failure 5 10 curl -fLS https://us.download.nvidia.com/tesla/390.30/NVIDIA-Linux-x86_64-390.30.run -o nvidia-drivers-390.30
+ timeout curl -fLS https://us.download.nvidia.com/tesla/390.30/NVIDIA-Linux-x86_64-390.30.run -o nvidia-drivers-390.30
+ timeout curl -fLS https://us.download.nvidia.com/tesla/390.30/NVIDIA-Linux-x86_64-390.30.run -o nvidia-drivers-390.30
+ timeout curl -fLS https://us.download.nvidia.com/tesla/390.30/NVIDIA-Linux-x86_64-390.30.run -o nvidia-drivers-390.30
+ timeout curl -fLS https://us.download.nvidia.com/tesla/390.30/NVIDIA-Linux-x86_64-390.30.run -o nvidia-drivers-390.30
+ timeout curl -fLS https://us.download.nvidia.com/tesla/390.30/NVIDIA-Linux-x86_64-390.30.run -o nvidia-drivers-390.30
Executed "-fLS https://us.download.nvidia.com/tesla/390.30/NVIDIA-Linux-x86_64-390.30.run -o nvidia-drivers-390.30" 5 times

But if I manually do curl -fLS https://us.download.nvidia.com/tesla/390.30/NVIDIA-Linux-x86_64-390.30.run from the node, it works fine.
Have you ever seen a similar issue?

Thanks for doing that R&D, I'll look into that! (possibly something flaky about that retry_if_failure convenience func)


bug:

Did you check the docs and existing issues?

[X] I have read the docs
[X] I have searched the existing issues

Neovim version (nvim -v)
NVIM v0.10.0-dev-2961+g4d52b0cf6
Operating system/version
Windows 10
Describe the bug
Trying to open a file from floating oil.nvim buffer fails. Met with the following error:

  Error  4:43:38 PM notify.error Could not find oil adapter for scheme '://'
  Error  4:43:38 PM notify.error [oil] could not find adapter for buffer '://'
  Error  4:43:38 PM msg_show.emsg E5108: Error executing lua: ...0/AppData/Local/nvim-data/lazy/oil.nvim/lua/oil/util.lua:826: assertion failed!
stack traceback:
[C]: in function 'assert'
...0/AppData/Local/nvim-data/lazy/oil.nvim/lua/oil/util.lua:826: in function 'get_edit_path'
...0/AppData/Local/nvim-data/lazy/oil.nvim/lua/oil/init.lua:668: in function 'open_next_entry'
...0/AppData/Local/nvim-data/lazy/oil.nvim/lua/oil/init.lua:705: in function <...0/AppData/Local/nvim-data/lazy/oil.nvim/lua/oil/init.lua:550>

I did narrow done the bug starting with this commit: f41d7e7cd8e4028b03c35d847b4396790ac8bb2d
and persisting until the latest commit. This behavior does not occur on or before fa3820ebf1e8ccf5c7c0f3626d499b2c1aa8bc50
What is the severity of this bug?
breaking (some functionality is broken)
Steps To Reproduce

Open neovim
open floating oil buffer ( I do mine with the following )

-- Toggle an Oil.Nvim floating Window --
vim.keymap.set("n", "<leader>e", "<cmd>lua require('oil').toggle_float()<CR>", { desc = "Oil" })

attempt to open a file and receive an error.

Note, if i simply do :Oil and try to open a file, this bug does not occur.
Expected Behavior
File to open without error.
Directory structure
No response
Repro
-- save as repro.lua
-- run with nvim -u repro.lua
-- DO NOT change the paths
local root = vim.fn.fnamemodify("./.repro", ":p")

-- set stdpaths to use .repro
for _, name in ipairs({ "config", "data", "state", "runtime", "cache" }) do
  vim.env[("XDG_%s_HOME"):format(name:upper())] = root .. "/" .. name
end

-- bootstrap lazy
local lazypath = root .. "/plugins/lazy.nvim"
if not vim.loop.fs_stat(lazypath) then
  vim.fn.system({
    "git",
    "clone",
    "--filter=blob:none",
    "--single-branch",
    "https://github.com/folke/lazy.nvim.git",
    lazypath,
  })
end
vim.opt.runtimepath:prepend(lazypath)

-- install plugins
local plugins = {
  "folke/tokyonight.nvim",
  {
        "stevearc/oil.nvim",
        config = function()
            require("oil").setup({
              -- add any needed settings here
            })
        end,
  },
  -- add any other plugins here
}
require("lazy").setup(plugins, {
  root = root .. "/plugins",
})

vim.cmd.colorscheme("tokyonight")
-- add anything else here
I'm sorry but I don't understand the above and I've got to make my kids dinner but thought I would share this.

Did you check the bug with a clean config?

[X] I have confirmed that the bug reproduces with nvim -u repro.lua using the repro.lua file above.

Found the first commit where I can reproduce: f41d7e7cd8e4028b03c35d847b4396790ac8bb2d

im blind I guess, repeat of #355 but feel free to add this info to figuring out a solution, sorry again for the double issue, closed.


does the project consider supporting the HarmonyOS ecosystem?

The HarmonyOS system is currently developing rapidly, and there are more and more devices based on open source HarmonyOS, does the project consider supporting the HarmonyOS ecosystem?

HarmonyOS 目前不清楚是否支持flutter编译 我先研究下


SQLite schema

Just in case you don't know it, SQLite doesn't support VARCHAR, INTEGER(1) and such. https://sqlite.org/datatype3.html

I'm aware of this, but don't think it matters too much. It's just the way SQLite stores stuff; what do I care? AFAIK we aren't using these things to enforce anything—if Newsbeuter needs some string to be X chars long, it does its checks in C++. SQLite can store them any way it wants as long as it can give us back the values we put into it :)
Am I missing anything? Are you aware of any problems that this creates for us?

No, there is no problem, see https://sqlite.org/datatype3.html#determination_of_column_affinity for the conversion rules. It's just to be sure you don't rely on it in your code.

Ah, okay. Thank you for caring! ^_^


Support x-ms-skip-url-encoding from CADL

While it won't be called x-ms-skip-url-encoding in CADL, once https://github.com/microsoft/cadl/issues/851 is fixed we need to add that support in the language emitter.

I didn't see either relativeUrl or pathUrl in Cadl.
Currently I will solve it as string to encode, url to skip encode.


Kubebuilder layout ansible tests, by Fabian

@camilamacedo86 these tests are not for scaffolding but for more advanced integration tests of Ansible + ansible-runner + the kubernetes modules, there's another test (that's not updated by this PR) that tests the scaffolded code

Hi @fabianvf,
I am not too much the point of we have tests in the project that are not executed from the code which is gen via the tool. However, if it is required for we move forward and have the Ansible plugin I am OK with. See that with kbutils we can inject code and manipulating the files in the Go tests. (e.g https://github.com/kubernetes-sigs/kubebuilder/blob/master/test/e2e/v3/e2e_suite.go#L84-L92 and https://github.com/kubernetes-sigs/kubebuilder/blob/master/test/e2e/v3/e2e_suite.go#L124-L158)
Could we track the need to replace this for a generated code via an issue in the repo and a todo in the files? Also, would not be better we put the mock project in a dir named testdata?

I am of the same mindset as @camilamacedo86 is. Putting static scaffolded files in the repo isn't the best. That's what test/test-framework is (was?), and it was generally a source of problems. If we can avoid it, it would be nice.
How much differs in this test project vs a vanilla test project? If it isn't much, could we do as Camila suggests and fully-regenerate it during the e2e using the actual plugin code and then applying the changes?
+1 on putting this in a testdata directory.

This PR can be replaced by : https://github.com/operator-framework/operator-sdk/pull/4011
c/c @asmacdo @fabianvf

@asmacdo 50% of this pr is addressed already with https://github.com/operator-framework/operator-sdk/pull/4011 and for the advanced scenarios, we have the issue;  https://github.com/operator-framework/operator-sdk/issues/4025.
So, since it is outdated and if we close it we still able to use as a helper to achieve the #4025 I think it is fine to close this one. However, feel free to re-open if you think that it should not be close at all.


Startup Project Idea

Added project idea for the class.

Can you please resolve the conflict above, and squash your commits. This might be helpful: http://code.dblock.org/2015/08/31/getting-out-of-your-first-git-mess.html

Can be closed

Hey Gideon,
Let me know if you need help with this (email/slack)

Karn


Add Prayer, Special Attack, Game Tick & NPC Endpoint to MorgHTTPClient

Added an endpoint for NPCs. Added Prayer & Special attack to the events endpoint. Changed "game tick" from client.getGameCycle() to client.getTickCount()

Do you have permission from @MorgApps for this repository change?

Considering the plugin was updated by the author since this PR was opened, you do not seem to have permission to submit changes. Please coordinate with the plugin author first instead of sending unsolicited changes our way.


Printing on Android

I have a capacitor app using
"cordova-plugin-printer": "^0.8.0",
"@ionic-native/printer": "^5.35.0",
I have everything launching the native print dialogs just fine. My issue is that when I send a base64 version to iOS to print it works just fine. I can see in the preview what the document looks like. In android however, all I see is the raw base64. What do I need to do to fix this?

Any update here?
Printing on iOS no issue. Printing on Android then the app crashes.
"Cordova-plugin-printer": ""^0.8.0",
"@ionic-native/printer": "^5.36.0"


Wallet seed + key tracking

The wallet must be able to report to a user the status of each key and seed tracked by the wallet, including the amount of money protected by each key and seed.

Label "Feature Request"


always blocks

How do I join chat forums here :https://freenode.irclog.whitequark.org
sorry for posting here ..please delete this
My question is : why are the processes in RTLIL corresponding to different always blocks are out of order in RTLIL and their order is based on what?

To join the chat, you can use any IRC client and connect to the freenode network. If you don't have an IRC client, you can use the web-based one: https://webchat.freenode.net/
As for the processes, yosys doesn't guarantee any particular ordering for them.  I suspect the order you're seeing in the output is based on the internal hash values, and shouldn't be depended upon.

In Verilog, all the individual always blocks in a module execute concurrently hence the order of always blocks don't really matter.
Do you think that is the reason there is no order pattern?

Yes, this is the reason.


Ctrl-z on viewconf editor kills viewer

Commit:
Steps to reproduce

Open viewconf editor
Make some change
Hit CMD-Z (undo)

Observed behavior
Entire higlass page disappears
Expected behavior
The undo command works as expected

Did you do this through higlass-app?

Cannot read property 'views' of null
Seems a HG issue

There is some weridness going on locally but it doesn't crash

FYI, on higlass.io CMD+Z it works for me but on higlass.io/app it doesn't

It's related to higlass-app, which incorrectly intercepted CMD+Z even when an input element was focused. Will fix the issue there


Custom Table Output

If I wanted to update the webCmd.xml to create a custom table for my output exactly how would I do that in this release? In 3.0 I used the following code and it worked fine, but I am having difficulties with the current version.
	<xsl:if test="result/listToolsVersion">

VM Name	Cluster Name	OS	Version	Release	Last Update (UTC)

				<xsl:for-each select="result/listToolsVersion">

						<xsl:value-of select="name"/>
						<xsl:value-of select="cluster"/>
						<xsl:value-of select="os"/>
						<xsl:value-of select="ver" />
						<xsl:value-of select="release"/>
						<xsl:value-of select="update"/>

				</xsl:for-each>

	</xsl:if>

Disregard, I was able to figure it out. After looking at hisTable I was able to figure out what I was doing wrong.


Angulartics via Google Tag Manager and LunaMetrics YouTube Tracking (not picking up events)

I've got angulartics working.  I can't get LunaMetrics working, I've followed the instructions using the .json file to configure GTM.  My guess is that there is something that needs changed with the triggers.

I've been working on this a little more, it seems related to the fact that init is being called before the angular app had had a chance to completely load.  If you have some tips for getting this script working for angular apps I'd be happy to submit a pull request with a section added to the readme.

Yep, you got it. This script is designed to run after your YouTube videos are in the DOM. You can invoke onYouTubeIframeAPIReady inside of a directive in order to re-bind to new videos in the DOM, but beware that there's currently a known issue where the script will break when bound on the same video twice.
I'm definitely interested in suggestions, as this is a persistent problem. Short of polling for new YouTube videos and keeping a cache/count of bound videos, I'm coming up short on ideas.


added support for logmech

Description
This PR adds support for LOGMECH authentication option. This option allows users to authenticate with dbt using LDAP, TDNEGO, Kerberos and DB native mechanisms.
Checklist

[x] I have run this code in development and it appears to resolve the stated issue
[x] This PR includes tests, or tests are not required/relevant for this PR
[x] I have updated the CHANGELOG.md with information about my change

Great feature. Thanks for adding, Adam!


@State in Mixin class

I have Mixin class.
When i use the decorator, console.log show undefined, but when I use the function, i has right result.
import {Component, Vue, Watch} from "vue-property-decorator";
import {Mutation, State, Action} from "vuex-class";

@Component
export default class MixinStatisticComponent extends Vue {
  //@State(state => state.statistic.table) table;

  get table(){
    return this.$store.state.statistic.table;
  }

  mounted(){
    console.log(this.table);
  }
}

Could you provide a self-contained reproduction?

when i add <script lang="ts"> problem away


random nonce

The nonce should start with a random value and continue until it wraps around, per the security considerations.

Fixed  by #22


Waveform Source outputs a constant function if frequency is too low

A quick debug shows that _step becomes zero, so _index is never increased in the work function.

Can you share the sample rate and waveform rate that caused this. There is a little note about the resolution parameter here. Was resolution on automatic or something else?
|param res[Resolution] The resolution of the internal wave table (0.0 for automatic).
 * When unspecified, the wave table size will be configured for the user's requested frequency.
 * Specify a minimum resolution in Hz to fix the size of the wave table.

Resolution was automatic; sample rate 1e6; frequency < 0.5 causes constant output.  In the debug the resolution was 4096 I believe.

This is coded for; the stepUpdate function aborts and allows the step size to be 0 if the table size would exceed a million: https://github.com/pothosware/pothos-comms/blob/master/waveform/WaveformSource.cpp#L191
Is there a proper way to display to the user that this is an invalid frequency?

The table lookup has a limited resolution. Small enough and eventually you cant allocate enough space for the table. std::sin and cos can be expensive, so the table is a nice optimization, but I can see where it breaks down. We might need a block that doesn't use a table, but performs the live calculation. Or make that a configurable option at least in the waveform source.
Anyway, for this its probably best to log a warning when the calculated _step is significantly different than the (_freq/_rate). I want to throw a range error, but theres some need here to be careful that the error is only thrown after the freq, rate, and resolution are applied. We could accidentalaly cause the error while still applying settings. The FIR designer actually has a similar design, and it uses  if (not this->isActive()) to avoid doing calculations until the block is activated.

Note: could also use a sin/cos table rather than a waveform table.

Update, this condition is checked now: https://github.com/pothosware/pothos/commit/d80a9efbfa19c572a8d883849d6fc1f6cd788850
New issue for improving this further: https://github.com/pothosware/pothos-comms/issues/11


[Enhancement]: Support reporting the total size of writable space in the cluster.

Contact Details
No response
Is there an existing issue for this?

[X] I have searched all the existing issues

What would you like to be added?
Support only calculating the total size of writable space in the cluster.
Why is this needed?
The current total size includes the size of non-writable nodes, making it difficult to accurately assess the available size of the cluster
Anything else?
No response

This issue is work in progress?

我要报名这个

i want to try this !

In case of all nodes are online, cluster info shows as follows. In order to represent capacity more accurately, i use float number
root@ubuntu01:~/# cfs-cli cluster info
[Cluster]
  Cluster name       : cfs_cluster
  Master leader      : <IP_ADDRESS>:17010
  Master-3           : <IP_ADDRESS>:17010
  Master-1           : <IP_ADDRESS>:17010
  Master-2           : <IP_ADDRESS>:17010
  Auto allocate      : Enabled
  MetaNode count (active/total)    : 3/3
  MetaNode used                    : 0.284 GB
  MetaNode Available               : 7.754 GB
  MetaNode total                   : 8.038 GB
  DataNode count (active/total)    : 3/3
  DataNode used                    : 71.998 GB
  DataNode Available               : 185.955 GB
  DataNode total                   : 272.698 GB
  Volume count                     : 2
  Allow Mp Decomm                  : Enabled
  EbsAddr                          :
  LoadFactor                       : 0
  BatchCount         : 0
  MarkDeleteRate     : 0
  DeleteWorkerSleepMs: 0
  AutoRepairRate     : 0
  MaxDpCntLimit      : 3000

After a node down and wait couple of seconds,  active metanode/datanode count and metanode/datanode available space changed
root@ubuntu01:~# cfs-cli cluster info
[Cluster]
  Cluster name       : cfs_cluster
  Master leader      : <IP_ADDRESS>:17010
  Master-3           : <IP_ADDRESS>:17010
  Master-1           : <IP_ADDRESS>:17010
  Master-2           : <IP_ADDRESS>:17010
  Auto allocate      : Enabled
  MetaNode count (active/total)    : 2/3
  MetaNode used                    : 0.285 GB
  MetaNode Available               : 5.178 GB
  MetaNode total                   : 8.038 GB
  DataNode count (active/total)    : 2/3
  DataNode used                    : 72.011 GB
  DataNode Available               : 117.625 GB
  DataNode total                   : 272.698 GB
  Volume count                     : 2
  Allow Mp Decomm                  : Enabled
  EbsAddr                          :
  LoadFactor                       : 0
  BatchCount         : 0
  MarkDeleteRate     : 0
  DeleteWorkerSleepMs: 0
  AutoRepairRate     : 0
  MaxDpCntLimit      : 3000

my pr is https://github.com/cubefs/cubefs/pull/3017


Reinstate kubelet's pull credentials provider mechanism info

Reinstate the kubelet's built-in pull credentials provider mechanism info that was unintentionally deleted. Fixes #32047

FYI @sftim

I believe these contents were dropped intentionally because they are 3rd-party details. We wanted to avoid dual-hosted contents anyway. The policy is to provide links to those contents where appropriate instead of to copy those contents here for maintenance.

@tengqm see the following paragraph from #32047

Additional Information:
PR https://github.com/kubernetes/website/pull/21438 removed some earlier documentation for the built-in mechanism. The removal was aimed at removing documentation for third-party integrations but (in error) also removed details of the legacy in-tree implementation.

@tengqm see the following paragraph from #32047

Additional Information:
PR #21438 removed some earlier documentation for the built-in mechanism. The removal was aimed at removing documentation for third-party integrations but (in error) also removed details of the legacy in-tree implementation.

I'm okay with this change if we can clarify what are the in-tree implementations and what "legacy" means. If the "legacy" here means that those logics are gone, we are not supposed to document them as if they are still there. Thoughts?

I'm okay with this change if we can clarify what are the in-tree implementations and what "legacy" means. If the "legacy" here means that those logics are gone, we are not supposed to document them as if they are still there. Thoughts?

We can signpost people to older versions of this page (where the deprecated implementation still exists). The easy way is to add specific links - that we then need to maintain; the harder but maintainable way is to make a new shortcode that takes care of the updates for us.
As a specific case, I'm fine with either approach. If we pick the first one with manual maintenance, we need to track issues for all that future updating that we expect to need.

@sftim, sorry for the confusion, my understanding of the ask on issue #32047 is that we need to reinstate previous content that was removed in error on this page. So what I did was just that: copy/paste the content that was removed in PR #21438. I don't see in the description of the issue that the content needs to be rewritten (and placed on another page?) as you and @tengqm seem to be suggesting here.
I'm not familiar with the terms "signpost" and "shortcode" when you mention two different approaches to solve the issue. Can you explain?
Thanks!

Try something like this:
In older versions of Kubernetes, the kubelet had a direct integration with cloud provider credentials. This
gave it the ability to dynamically fetch credentials for image registries. There were three built-in
implementations of the kubelet credential provider integration:
ACR (Azure Container Registry), ECR (Elastic Container Registry), and GCR (Google Container Registry).

For more information on the legacy mechanism, read the documentation for the version of Kubenetes that you
are using. Kubernetes v1.26 through to v{{< skew latestVersion >}} do not include the legacy mechanism, so
you would need to either:
- configure a kubelet image credential provider on each node
- specify image pull credentials using `imagePullSecrets` and at least one Secret

Signposting is basically a hyperlink with an explanation. Imagine you're at a library and want to find a map of the world. You ask at reception and they take you to the maps section.  (They could also put up a map of the world in reception, but they choose not to).
It's like that. We don't answer the reader's question directly; we show them where to look.
However, for shortcode, you could have worked this one out I think: https://kubernetes.io/search/?q=shortcode

Thank you for the suggestions (I'll give it a try next), and for the explanations on those terms @sftim.
Oops! I wasn't aware of https://kubernetes.io/search/.
Thanks!

/assign @tengqm

/lgtm

/label tide/merge-method-squash
/lgtm

@mrgiles could you squash this down to 1 commit?

Squashed commits

/remove-label tide/merge-method-squash

/approve
Changes since https://github.com/kubernetes/website/pull/41287#issuecomment-1562006623 are trivial.


feat: define rice irrigation experiment

Closes #5

well @abiolaTresor this was not your task to merge this MR. Let's discuss about the role of a reviewer during the synchro meeting. I'll also add a page in the wiki about that so that we are all in line.


typo fixed in returned string by getAlgorithmName() in XoodyakDigest

in XoodyakDigest.java, method getAlgorithmName(), the algorithm name should be "Xoodyak Hash", not "Xoodak Hash".

Thanks for the patch, merged with minor revisions.


Is uproot.update not yet supported?

When trying to uproot.update a root file, uproot raises a TypeError:
>>> f = uproot.update('root-file.root', uproot.LZMA(4))
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: __init__() takes 2 positional arguments but 3 were given
>>>

From what I understand it looks like the update constructor takes too few arguments, compared to the called _openfile function.
Is this feature meant to be working or should it still be not implemented, judging from the NotImplementedError that is still present in the constructor?
PS: Thank you for this awesome python package, this is really bringing back some fun to the daily root file massage :-)

The update method which is meant to take an existing ROOT file and write objects to it is not in our current roadmap of development.
Perhaps sometime in the future.

Ok I see, thanks. Then I would suggest to update the README, since it reads like all of create, recreate, update is supported.

+1 for would use

I definitely would use this as well.
Sorry for writing on an old issue, but I think this would be nice to have.

In the scale of easy features vs hard features, this is a very hard one, unfortunately. We'd have to be able to pick up any ROOT file, regardless of how its internal structure is configured, and work with it in our scheme. A poor man's solution would be for uproot.update to be an alias to "copy the ROOT file into the organizational structure we expect, then work with it as though it were made with uproot.recreate." That technically works and has the right semantics, but probably isn't what you want because the reason you want to update is to avoid copies, right?
The stub exists because it's a very natural thing to want. In general, the desirability of features has no correlation with their ease of implementation, such that some extremely trivial implementations have enormous benefits and some insurmountably difficult implementations have only marginal value. It sounds like this feature is both desirable and hard, so it's worth considering, but we'd need an interested developer to spend (what might turn out to be) a few months on it.

We'd have to be able to pick up any ROOT file, regardless of how its internal structure is configured, and work with it in our scheme. A poor man's solution would be for uproot.update to be an alias to "copy the ROOT file into the organizational structure we expect, then work with it as though it were made with uproot.recreate.

Would it simplify the problem if you only accept files that were made by uproot and raise an exception in other cases? I suspect this would cover most use cases and it leaves the option of future extensions without risking backwards incompatibility.

That would simplify the problem. It hadn't occurred to me that this is the desirable use-case: opening and re-opening with uproot, as opposed to opening with ROOT, re-opening with uproot. It could be a check for structure, rather than explicitly for who created it, so that a file made by ROOT might fit.
But then, that could be a confusing error for the user: one ROOT file can be updated in uproot while another can't, and there doesn't seem to be any significant difference between the ROOT files. (We're talking about invisible-to-the-user differences in where blocks of data are allocated, which can turn on minor details like how many times it's been opened, how many or what types of objects have been written, whether anything has ever been replaced in-place or deleted at any point in the file's history, etc.)

I think the simplest solution of raise Exception("Only files created by uproot are supported for opening in update mode") avoids the confusion if that is a commitment that can be honoured even if that means rejecting some files which would technically work by chance.

I think that sounds reasonable. Copying whatever objects don't have uproot equivalents, and allowing to update those that do.
I don't know if what I was trying to do was necessarily smart, but my use case was needing histograms in a certain dir structure in the file to make stuff compatible with existing code. I couldn't figure out how to create directories in uproot, so I figured I could open a file that works and just update the histograms, but I got stuck because "recreate" didn't work and I couldn't update the TH1 names.

I couldn't figure out how to create directories in uproot

The reason is because you can't create directories with uproot (#138).
It's one thing to read a ROOT file, jumping to where the pointers take you, skipping the parts that aren't relevant for what you're trying to do, and it's another thing entirely to write a structure, byte for byte, that ROOT will accept. You have to understand all the structures, at least well enough to make one valid state. To update a ROOT file, you have to pick up any (or a large set of) valid states and continue where they left off. The reason we punted on adding directories is because it multiplied the number of things we had to think about. ("What if the user adds directories first, then a histogram?" "What if they write a histogram, then add directories, then another histogram?" "What if some baskets of a TTree are interleaved with both of them?" It was a combinatoric problem.)

Copying whatever objects don't have uproot equivalents, and allowing to update those that do.

It's not (just) an issue of types of objects we don't recognize. What I'm thinking about is the fact that a ROOT file is a filesystem; different regions of bytes correspond to different objects. If you add and remove objects, this space gets fragmented: "sliding everything to the left" when you delete an object would be prohibitively expensive, and anyway it would require a lot of pointers to be updated, so like a good filesystem, ROOT doesn't do this. Instead, it has a serialized linked list of the objects that do exist with a table of free space (TFree), so that new objects can be allocated in the otherwise unused gaps left by removed objects. Those that don't fit in the gaps have to go on the end, which moves the TFree object, which has to be updated in the TFile header, so that at any time the file is in a valid state. And finally, we're not designing a system that does all of these things, we have to do them exactly the same way that ROOT does—reproduce its logic exactly—or we'd end up putting the file into a corrupted state.
The simplification that we're talking about is not dealing with all of the possible states that this filesystem can get into, but only the subset that we've already understood. I think in practice this would mean that 99% of ROOT files produced by ROOT would not be updatable in uproot. That would definitely include the use-case you're talking about: using ROOT to create the directories and uproot to add additional objects. We definitely want to be on the same page about what counts as "done" before launching into a project like this.
(Personal rant at the bottom of this comment: the "filesystem in a file" technology existed prior to ROOT. Zip files have been ubiquitous since 1989 and are the basis for many types of files that have to store a lot of objects, such as Java JARs and Python wheels. Zip doesn't have the "update" feature, to delete objects and recover their space, but all the dbm implementations do. In fact, dbm is a protocol established in 1979 so that you can swap out different implementations. sdbm is public domain, still used by Perl and Ruby, and BerkeleyDB, written in 1991, is a high-quality variant with users like sendmail, RPM, Bitcoin, and Oracle NoSQL. Maybe there was a technical reason one of these standards couldn't be adopted, but I really wish one had. It's not that our objects, like TBaskets, are particularly large binary blobs—megabytes at the most—we just have a lot of them, like most key-value stores.)

Instead, it has a serialized linked list of the objects that do exist with a table of free space (TFree), so that new objects can be allocated in the otherwise unused gaps left by removed objects. Those that don't fit in the gaps have to go on the end, which moves the TFree object, which has to be updated in the TFile header, so that at any time the file is in a valid state.

For any readers, it might be important to know that uproot cannot do this yet and assigns new objects at the end of the file (https://github.com/scikit-hep/uproot/issues/135).

Instead, it has a serialized linked list of the objects that do exist with a table of free space (TFree), so that new objects can be allocated in the otherwise unused gaps left by removed objects. Those that don't fit in the gaps have to go on the end, which moves the TFree object, which has to be updated in the TFile header, so that at any time the file is in a valid state.

For any readers, it might be important to know that uproot cannot do this yet and assigns new objects at the end of the file (#135).

I am confused. Does this mean that uproot can actually update a file with new objects as long as they are appended at the end of the file and this could "simply" be enabled for the update method? If that is true, couldn't the problem of managing data blocks in the best possible way be solved at a later stage, so that people could already use this feature?

Even if we don't plan to delete objects from a ROOT file or take advantage of empty spaces and keep it defragmented, appending does require changing pointers on a variety of places. (Here, "pointers" means byte positions in the file or in a nested range within the file.) To do that without corrupting people's files, we'd have to understand the set of possible states ROOT files can be in better than we do now. The list of free spaces is some sort of linked list (in file byte positions), but there's also a footer after it that would have to be copied if we're going to expand that list.
We could try adding an append-only update feature, testing it on all the files we have, and then adding a warning that it's experimental and shouldn't be used on valuable files because what we don't know can corrupt files, then collect feedback from users who do encounter exceptional cases. However, that's a greater level of engagement than I'm able to support right now.
Append-only is a good idea to simplify the problem, but it's still going to require a lot of work. (And then after that, surely someone will ask why they can't delete objects or why their output files are so large. However, doing it in two stages like this does help to break down the problem.)

Ok, very interesting. Thanks a lot for the clarification!


Disable "quick and dirty plot" option by default

There's a way:
https://seisman.github.io/SAC_Docs_zh/tricks-and-traps/init-macro/
To Do:

Add that option in init script ( sac_in_distro.sh )

done in 6ba2fcf