Bind for <IP_ADDRESS>:2380 failed: port is already allocated

Describe your issue here
Trying to provision downstream RKE cluster from Rancher using vSphere node template. Rancher is able to bring up vm and start configuring RKE, then stuck with this error:
Error response from daemon: driver failed programming external connectivity on endpoint rke-etcd-port-listener (3fccb72776a96c5046232ad681d5f283d0235cd474d0aa52d9be0c38c79cfc58): Bind for <IP_ADDRESS>:2380 failed: port is already allocated]
Login the vm, see only rancher-agent running:
[root@hello-1 log]# docker ps
CONTAINER ID        IMAGE                          COMMAND                  CREATED             STATUS              PORTS               NAMES
b19cf2567428        rancher/rancher-agent:v2.5.7   "run.sh --server h..."   30 minutes ago      Up 9 minutes                            eager_lumiere
[root@hello-1 log]# docker logs b19cf2567428
INFO: Arguments: --server https://e2rancher.domain.org --token REDACTED --ca-checksum cf545631c64f9e3461d0477f4516714773aad9a05bbeba42260d9b43b00664bc -r -n m-wfxkc
INFO: Environment: CATTLE_ADDRESS=<IP_ADDRESS> CATTLE_AGENT_CONNECT=true CATTLE_INTERNAL_ADDRESS= CATTLE_NODE_NAME=m-wfxkc CATTLE_SERVER=https://e2rancher.domain.org CATTLE_TOKEN=REDACTED
INFO: Using resolv.conf: search domain.org nameserver <IP_ADDRESS> nameserver <IP_ADDRESS>
INFO: https://e2rancher.domain.org/ping is accessible
INFO: e2rancher.domain.org resolves to <IP_ADDRESS>
INFO: Value from https://e2rancher.domain.org/v3/settings/cacerts is an x509 certificate
time="2021-04-09T21:12:50Z" level=info msg="Listening on /tmp/log.sock"
time="2021-04-09T21:12:50Z" level=info msg="Rancher agent version v2.5.7 is starting"
time="2021-04-09T21:12:50Z" level=info msg="Option requestedHostname=m-wfxkc"
time="2021-04-09T21:12:50Z" level=info msg="Option customConfig=map[address:<IP_ADDRESS> internalAddress: label:map[] roles:[] taints:[]]"
time="2021-04-09T21:12:50Z" level=info msg="Option etcd=false"
time="2021-04-09T21:12:50Z" level=info msg="Option controlPlane=false"
time="2021-04-09T21:12:50Z" level=info msg="Option worker=false"
time="2021-04-09T21:12:50Z" level=info msg="Connecting to wss://e2rancher.domain.org/v3/connect with token l572pzlplrcqbmr2mhtn6xzpbnsrnhjfxg57nkcnttskvthtbjwcvd"
time="2021-04-09T21:12:50Z" level=info msg="Connecting to proxy" url="wss://e2rancher.domain.org/v3/connect"
time="2021-04-09T21:12:50Z" level=info msg="Starting plan monitor, checking every 15 seconds"
INFO: Arguments: --server https://e2rancher.domain.org --token REDACTED --ca-checksum cf545631c64f9e3461d0477f4516714773aad9a05bbeba42260d9b43b00664bc -r -n m-wfxkc
INFO: Environment: CATTLE_ADDRESS=<IP_ADDRESS> CATTLE_AGENT_CONNECT=true CATTLE_INTERNAL_ADDRESS= CATTLE_NODE_NAME=m-wfxkc CATTLE_SERVER=https://e2rancher.domain.org CATTLE_TOKEN=REDACTED
INFO: Using resolv.conf: search domain.org nameserver <IP_ADDRESS> nameserver <IP_ADDRESS>
INFO: https://e2rancher.domain.org/ping is accessible
INFO: e2rancher.domain.org resolves to <IP_ADDRESS>
INFO: Value from https://e2rancher.domain.org/v3/settings/cacerts is an x509 certificate
time="2021-04-09T21:33:27Z" level=info msg="Listening on /tmp/log.sock"
time="2021-04-09T21:33:27Z" level=info msg="Rancher agent version v2.5.7 is starting"
time="2021-04-09T21:33:27Z" level=info msg="Option customConfig=map[address:<IP_ADDRESS> internalAddress: label:map[] roles:[] taints:[]]"
time="2021-04-09T21:33:27Z" level=info msg="Option etcd=false"
time="2021-04-09T21:33:27Z" level=info msg="Option controlPlane=false"
time="2021-04-09T21:33:27Z" level=info msg="Option worker=false"
time="2021-04-09T21:33:27Z" level=info msg="Option requestedHostname=m-wfxkc"
time="2021-04-09T21:33:27Z" level=info msg="Connecting to wss://e2rancher.domain.org/v3/connect with token l572pzlplrcqbmr2mhtn6xzpbnsrnhjfxg57nkcnttskvthtbjwcvd"
time="2021-04-09T21:33:27Z" level=info msg="Connecting to proxy" url="wss://e2rancher.domain.org/v3/connect"
time="2021-04-09T21:33:27Z" level=info msg="Starting plan monitor, checking every 15 seconds"
[root@hello-1 log]#
[root@hello-1 log]# sudo strings /var/lib/docker/network/files/local-kv.db | grep 2380
[root@hello-1 log]#
[root@hello-1 log]# lsof -i :2380
[root@hello-1 log]#
doesn't seems anything using port 2380.
Try restarting docker, did not help.
Looks like for some reason, the etcd container doesn't even start because "port 2380 is being used"? but I can't find why it thinks it is being used.
Other information:

Cluster type: Infrastructure Provider: vSphere
Machine type: vm, with 3 vCPU, 12G memory, 80G disk.

Useful
Info

Versions
Rancher v2.5.7 UI: v2.5.6

Route
undefined

reinstalled docker 19.03 fixed the problem.


updated to swift 1.2

use the swift 1.2 supported Xcode to complie

Awesome - I think this failure is due to the travis env, so we should be fine. Thanks!


Update_project_provisioning breaks code signing on app extensions

Hi,
I'm not sure if there's a workaround, but using  update_project_provisioning on an app extension seems to break code signing.
This line here:
https://github.com/KrauseFx/fastlane/blob/master/lib/fastlane/actions/update_project_provisioning.rb#L58
forces CODE_SIGN_RESOURCE_RULES_PATH to $(SDKROOT)/ResourceRules.plist for the given target which causes code signing to fail for app extensions.  That build setting appears to do no harm for the main app target, but makes signing of our app extensions fail during the ipa step.
Clearing CODE_SIGN_RESOURCE_RULES_PATH for the app extensions makes the build, sign and archive complete successfully both in ipa and Xcode.
FYI update_project_provisioning is successfully updating the profiles and setting CODE_SIGN_RESOURCE_RULES_PATH.
Any ideas on how to solve this?  Could forcing the CODE_SIGN_RESOURCE_RULES_PATH build setting be an optional parameter for  update_project_provisioning so that we can disable it for app extensions?
This is running on Xcode 6.3.2, fastlane 1.3.1

@staminajim thanks for reporting your issue. The MindNode Setup is working with App Extensions. Not sure why it's not working for you.
I'd be okay with adding a flat to disable setting the ResourceRules.

Update:
I found out how to get it working.  Whichever version of Xcode that had been unlucky to be used to create the today widget had added a build step which was stripping the contents of the .appex file where the ResourceRules.plist lives:

I deleted that build step and it now works.  I'm unsure why apple decided that was a good idea or if it's necessary for app store submission but it's working for now.
Thanks for your time.

Great to hear :+1:


"Hello World" Run Test issue on Win 10 Edge Browser

Challenge Name

Hello World
Issue Description

I've been using the site via Microsoft Edge without issue up until the Hello World page. Entering the code for "Hello World", and clicking on either "Run Test" or "ctrl+enter" does nothing. I thought I was going crazy for a bit, but both operations on Firefox 54.0 perform perfectly. I'll be using firefox for now, but I thought I should bring this up.
Browser Information

Browser Name, Version: Microsoft Edge 40.15063.0.0
Operating System: Windows 10 Home
Mobile, Desktop, or Tablet: Razer Blade 2015

Your Code

Hello World

Screenshot

@deimateos thanks for the issue. I am unable to even try to reproduce this error, because I don't have access to a Windows 10 machine. I'll leave this open for others to comment if they run into the same error. Additionally, I'm not sure how much support we're giving to Windows 10 Edge.
cc/ @freeCodeCamp/moderators

@deimateos thanks for the issue. Please recheck once again. I checked it right now and its working absolutely fine. My browser details and OS details are exactly same as yours. Please check again and report again.thanks!

@erictleung As MS Edge v40 is one of the latest releases, we probably want to support it. Edge has improved their standard compliance significantly over the past few years, although they still have work to do before getting to the level of Firefox and Chrome.
I just wonder what could cause this. If anyone are able to reproduce - please share any errors or other information you can see in the developer console of your browser [F12] > Console (or something similar).


On desktop browsers, specifying a handle doesn't show the entire child as a ghost

Steps to reproduce.

Init sordid dragon with a handle
Start dragging
Only the handle drags, but the entire child is not visible.

I'm pretty sure this is a regression. Last time I was working on this library, I'm fairly confident that this was not happening.


RPM for PPC64 architecture

I've been attempting to install the agent on a ppc64 architecture, following the instructions for RedHat on the LogDNA website:
[root@server ~]# cat /etc/yum.repos.d/logdna.repo
[logdna]
baseurl = https://assets.logdna.com/el6/
enabled = 1
gpgcheck = 1
gpgkey = https://assets.logdna.com/logdna.gpg
name = LogDNA repo
yum install logdna-agent
Loaded plugins: product-id, search-disabled-repos, subscription-manager, versionlock
No package logdna-agent available.
Error: Nothing to do
[root@server ~]# yum repolist |grep logdna
logdna                                   LogDNA repo                         0+8
CPE OS Name: cpe:/o:redhat:enterprise_linux:7.5:GA:server
Kernel: Linux 3.10.0-862.25.3.el7.ppc64le
Architecture: ppc64-le

Hi @rafapsedano, unfortunately we currently only provide binaries for aarch64/arm64 and x86_64/amd64. We don't have builds for ppc64, s390x etc yet.


Mark old update tool as outdated

We should mark the old material-update-tool as deprecated / outdated.
Possible ways:

Deprecating in NPM
Using Github's archive ability.

Either one of those possibilities, or both. Regardless of those, we should add a note in the README.md.

Related PR that should be merged: https://github.com/angular/material-update-tool/pull/28

I published a version with the notice in the readme and marked the package with npm deprecate


Ingested DB data keeps disappearing

Affected module
UI, Backend
Describe the bug
Data keeps disappearing
To Reproduce

Expected behavior
DB data once ingested should not be deleted
Version:

OS: [e.g. iOS] - MacOS 13.4.1
Python version:
OpenMetadata version: 1.1
OpenMetadata Ingestion package version:

Additional context
Add any other context about the problem here.

@ds201ues please come to slack https://slack.open-metadata.org and discuss your issue before opening a ticket.
This looks like a configuration issue or installation issue on your side.  We do not have anyone losing any data.


Add D2 as image generator for state machine

D2 (diagram scripting language) became opensource and could be nice addition for output format for state machine generator
Here is a comparison with graphviz: https://text-to-diagram.com/?example=shapes&b=graphviz
By the way, there is a GUI editor, that supports bidirectional updates for generated graph https://youtu.be/EhxVVkxv2Ns?t=162 (2:40)
Propose: Add D2 as an option for output image generation

Great point, thanks!
There are some other diagramming engines to consider:

Mermaid supports state diagrams
PlantUML also supports state diagrams

docs are here https://d2lang.com/tour/intro/

Generally implemented support for D2, thanks for suggesting this!


I'd like to join this project's community

Your public repo
https://github.com/adamstallard/gov4git-identity-public.git
Your public branch
main

Approved.

 Follow up
On Friday, 13-Dec-24 14:39:49 UTC by Gov4Git dev
@adamstallard was added to the community.


Applying GSA to Data Model

I am trying to run a PRCC and an eFAST GSA on a data model that is written using the InformationGeometry.jl package. I am a beginner in both data modeling and in Julia, so I may just be misunderstanding how to implement the gsa methods, but I can't figure out what the proper syntax would be. The code below runs up until it reaches the gsa command, where it throws an error saying that there is no method matching what I have written. I would greatly appreciate any help with this!
using InformationGeometry, OrdinaryDiffEq, Plots, CSV, DataFrames
using DiffEqCallbacks, GlobalSensitivity, Distributions

function pathwayEq!(du,u,p,t)
    DP,cN,cNstar,phiR,deltaA = p

    V = 1
    VN = 0.1
    m = 2
    k = 2

    cP = 0.1
    cI = 0.02
    cB = 0.044
    cH = 0.05
    cA = 0.041
    cM = 0.00001

    phiP = 15
    phiI = 50
    phiM = 10

    deltaP = 0.01
    deltaPstar = 0.01
    deltaR = 0.01
    deltaN = 0.01
    deltaH = 0.05

    rhoIstar = 0.01
    KR = 2
    KM = 10
    IT = 1
    QM = 1

    QP = deltaP
    QR = deltaR/V
    QH = deltaH/V
    QA = deltaA/V

    du[1] = QP - m * cP * exp(-phiP*u[8]) * u[1]^k * u[10] - deltaP * u[1]    # dP/dt
    du[2] = cP * exp(-phiP*u[8]) * u[1]^k * u[10] - deltaPstar * u[2]         # dPstar/dt
    du[3] = cI * exp(-phiI*u[8]) * (IT - u[3]) * u[2] - rhoIstar * u[3]       # dIstar/dt
    du[4] = QR / V + (phiR*u[7])/(KR+u[7]) - cB * u[3] * u[4] - deltaR * u[4] # dRB/dt
    du[5] = cB * u[3] * u[4] - DP * u[5] - deltaR * u[5]                      # dRP/dt
    du[6] = DP * u[5] / VN - cN * u[6] + cNstar * u[7] - deltaN * u[6]        # dRN/dt
    du[7] = cN * u[6] - cNstar * u[7]                                         # dRNstar/dt
    du[8] = QH / V + cH * u[7] - deltaH * u[8]                                # dH/dt
    du[9] = QA / V + cA * u[7] - deltaA * u[9]                                # dA/dt
    du[10] = QM * u[10] + (phiM *u[9]/(KM+u[9])) * u[10] - cM * u[10]^2       # DG/dt
end

P0 = 1
Pstar0 = 0.1
Istar0 = 0.1
RB0 = 1
RP0 = 0.1
RN0 = 0.1
RNstar0 = 0.1
H0 = 1
A0 = 0.48
M0 = 1
u0 = [P0;Pstar0;Istar0;RB0;RP0;RN0;RNstar0;H0;A0;M0]

AMPs = [0.475,4.85,3.32,4.66,4.47,2.37,1.14]
confInts = [1.42,2.25,2.80,1.86,2.20,2.32,1.95]

hours = [0, 120, 240, 480, 720, 1440, 2880]
IMDdataSet = DataSet(hours, AMPs, confInts; xnames=["Time (seconds)"], ynames=["AMPs"])
params = [5.61,9.60,1.96,0.0707,0.0826]

@time IMDdataModel = DataModel(IMDdataSet, ODEFunction(pathwayEq!), u0, [9], params; tol=0.1)

plot(IMDdataModel)

f1 = function(params)
    prob = remake(IMDdataModel;params=params)
    sol = solve(prob, Tsit5())
  end;

bounds = [[4,22],[8,14],[1,3],[0,1],[0,1]]

m_regression = gsa(f1, RegressionGSA(rank=true), bounds)
m_regression.partial_correlation
m_regression.partial_rank_correlation

m_efast = gsa(f1, eFAST(), bounds)
m_efast.S1
m_efast.ST ```

I tried running your model -
DP,cN,cNstar,phiR,deltaA = p

expects p to have 5 elements but params = [5.61,9.60,0.0707,0.0826]  only has 4, can you clarify this?

Yes this is a typo sorry, I just fixed it

I am still running into an error while trying to run the model, can you please confirm whether it works
julia> @time IMDdataModel = DataModel(IMDdataSet, ODEFunction(pathwayEq!), u0, [9], params; tol=0.1)
ERROR: MethodError: no method matching lu!(::StaticArraysCore.MArray{Tuple{10, 10}, Float64, 2, 100}, ::LinearAlgebra.RowMaximum)
Closest candidates are:
  lu!(::StridedMatrix{T}, ::LinearAlgebra.RowMaximum; check) where T<:Union{Float32, Float64, ComplexF32, ComplexF64} at /Applications/Julia-1.7.app/Contents/Resources/julia/share/julia/stdlib/v1.7/LinearAlgebra/src/lu.jl:80
  lu!(::Union{LinearAlgebra.Hermitian{T, S}, LinearAlgebra.Symmetric{T, S}} where {T, S}, ::Union{LinearAlgebra.NoPivot, LinearAlgebra.RowMaximum}; check) at /Applications/Julia-1.7.app/Contents/Resources/julia/share/julia/stdlib/v1.7/LinearAlgebra/src/lu.jl:88
  lu!(::StridedMatrix{T} where T, ::Union{LinearAlgebra.NoPivot, LinearAlgebra.RowMaximum}; check) at /Applications/Julia-1.7.app/Contents/Resources/julia/share/julia/stdlib/v1.7/LinearAlgebra/src/lu.jl:134
  ...
Stacktrace:
  [1] do_factorization(alg::LinearSolve.LUFactorization{LinearAlgebra.RowMaximum}, A::StaticArraysCore.MArray{Tuple{10, 10}, Float64, 2, 100}, b::StaticArraysCore.MArray{Tuple{10}, Float64, 1, 10}, u::StaticArraysCore.MArray{Tuple{10}, Float64, 1, 10})
    @ LinearSolve ~/.julia/packages/LinearSolve/WhI1M/src/factorization.jl:

Yes, that is the same error I am getting; to clarify, the model should work and produce a plot when you run it only up to line 73 plot(IMDdataModel)
The blocks that follow the line above are the ones I am having an issue with

I got it at the line before it, on running @time IMDdataModel = DataModel(IMDdataSet, ODEFunction(pathwayEq!), u0, [9], params; tol=0.1)


util: handle compressed ACIs

When starting the build from an ACI, it was assumed it was an
uncompressed tar.
This commit uses NewCompressedReader from appc/spec/aci to handle ACIs
compressed with gzip, bzip2 and xz.
Fixes https://github.com/appc/acbuild/issues/36

Wow, oops. Great catch! Thanks.


Testing Rework

Need to rework entire app structure to enable tests.
Investigate:

Integration testing with python and pyqt5
Good, non-messy solution for Dependency injection

Dependency injection proposal:
Turn all classes into factories, like this:
app/
  models/
    Wads.py

->

app/
  models/
    Wads/
      WadsMain.py
      WadsFactory.py
      WadsSandbox.py

This would significantly improve testability, at the cost of messier file structure. Need to experiment with this.

module mocking is a tempting option for this. It would enable both unit and integration testing, and not forcing us to restructure the entire app.
Need more investigation time.


Migration to Svelte 4 fails if a project doesn’t have dependencies

Describe the bug
Migration to Svelte 4 using svelte-migrate fails if the project’s package.json doesn’t have dependencies. The error occurs here (the script attempts to read the package name on undefined):
https://github.com/sveltejs/kit/blob/c52bd3d2872a53e61ff2955a19c72e261fd9fe3a/packages/migrate/migrations/svelte-4/migrate.js#L24
Reproduction
Run npx svelte-migrate svelte-4 in a project that does not have dependencies in its package.json.
Logs
file:///Users/pm/.npm/_npx/ca732f115159e57c/node_modules/svelte-migrate/migrations/svelte-4/migrate.js:24
		if (pkg.dependencies[name]) {
		                    ^

TypeError: Cannot read properties of undefined (reading 'svelte')
    at update_pkg (file:///Users/pm/.npm/_npx/ca732f115159e57c/node_modules/svelte-migrate/migrations/svelte-4/migrate.js:24:23)
    at update_pkg_json_content (file:///Users/pm/.npm/_npx/ca732f115159e57c/node_modules/svelte-migrate/migrations/svelte-4/migrate.js:34:2)
    at update_pkg_json (file:///Users/pm/.npm/_npx/ca732f115159e57c/node_modules/svelte-migrate/migrations/svelte-4/migrate.js:7:3)
    at migrate (file:///Users/pm/.npm/_npx/ca732f115159e57c/node_modules/svelte-migrate/migrations/svelte-4/index.js:59:2)
    at process.processTicksAndRejections (node:internal/process/task_queues:95:5)

System Info
System:
    OS: macOS 13.4
    CPU: (8) arm64 Apple M1
    Memory: 85.78 MB / 16.00 GB
    Shell: 3.6.1 - /opt/homebrew/bin/fish
  Binaries:
    Node: 20.3.0 - /opt/homebrew/bin/node
    Yarn: 1.22.19 - /opt/homebrew/bin/yarn
    npm: 9.6.7 - /opt/homebrew/bin/npm
  Browsers:
    Chrome: 114.0.5735.133
    Edge: 114.0.1823.37
    Safari: 16.5
  npmPackages:
    @sveltejs/adapter-auto: 1.0.0-next.90 => 1.0.0-next.90
    @sveltejs/adapter-static: 1.0.0-next.49 => 1.0.0-next.49
    @sveltejs/kit: ^1.20.4 => 1.20.4
    svelte: ^3.59.2 => 3.59.2
    vite: ^4.3.9 => 4.3.9

Severity
blocking an upgrade
Additional Information
No response

Released in<EMAIL_ADDRESS>you might want to specify the version number to avoid any caching


Cut Prometheus v2.38.0-rc.0

Signed-off-by: Julius Volz<EMAIL_ADDRESS>

/prombench v2.37.0

All the benchmarks look basically identical, so good. Canceling.

/prombench cancel


modify is not called if the resource isn't accessed

We're on an older version (4.x.x) of ember-resources and we have the newer styled resources, i.e. imported from ember-resources/core.
We want to trigger a task on this resource from outside, when a textarea gets focused. That task sets some internal state—the idea being that when our args change, we can cancel the task and reset all state.
So the full code is something like this:
Resource
import { Resource } from 'ember-resources/core';

interface HistoryApiArgs {
  id: number;
}

export default class HistoryApi extends Resource<Named<HistoryApiArgs>> {
  private lastId?: number;

  constructor(owner: unknown) {
    super(owner);
    registerDestructor(this, this.teardown);
  }

  modify(_: never, args: HistoryApiArgs) {
    if (this.lastId !== args.id) {
      this.teardown();
    }

    this.lastId = args.id;
  }

  @action private teardown() {
    taskFor(this.loadHistoryTask).cancelAll();
  }

  @restartableTask
  *loadHistoryTask() {
    try {
      // fetch things
      // return a value
    } catch (error) {
      captureException(error);
      throw error;
    }
  }
}

The id in args here is a tracked property. The caller looks like this:
Component
private historyApi = HistoryApi.from(this, () => {
  return {
    itemId: this.args.item.id,
  };
});

@action async loadHistory() {
  try {
    let history = this.historyApi.loadHistoryTask.perform();
    // do something with this
  } catch (err) {
    console.log(err)
  }
}

My expectation is that when this task is performed, if args.itemId changes, modify will be called again, without "consuming" the resource again. However, I'm not seeing modify hook called at all, after the first time that is!
I get that this sort of usage is outside ember-resource's recommended usage, and we have refactored this a bit to be more aligned with the recommended usage, but the modify not being called at all when args change stumped me a bit. I'm wondering if it's intended that the modify hook isn't called at all when args change here—thoughts?

I'm wondering if it's intended that the modify hook isn't called at all when args change here—thoughts?

yes! this is because there is no reactive bit pulling on the resource. This pulling on data is what makes tracking and resources (in most cases ;) ) all automatic.
Since async loadHistory() is "just a function call", not tied to any reactive-context, or used as part of a derived data something downstream, the auto-tracking behavior you're expecting is opted-out of.
Since you are wanting to reset state when a task is restarted, (without more details anyway), you could change all your state to instead be derived data, and not worry about "updates" at all.
Hope this helps, and please let me know anything isn't clear!

That makes sense, thank you!

Since async loadHistory() is "just a function call", not tied to any reactive-context, or used as part of a derived data something downstream, the auto-tracking behavior you're expecting is opted-out of.

I was thinking because that function calls this.historyApi.loadHistoryTask.perform(); which is a task on the resource that:

the resource is initialised, modify called (which it is),
and that ties it in with autotracking, since it's accessing args.id and args.id is autotracked. So whenargs.id changes, modify is called again (which it is not)

Is my understanding incorrect?

Is my understanding incorrect?

unfortunately, yes <3
Your logic is reasonable though!
The key missing piece is that auto-tracking doesn't go in to effect unless the template pulls on data.
(aka, "if you don't render a thing, does the thing need to exist?")

Perfect, that makes sense! I'll close this issue now!


Update Italian language

@4gray
Please merge. Thanks.

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

Project coverage is 56.44%. Comparing base (e66d66f) to head (cd9165e).

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.
Additional details and impacted files
@@            Coverage Diff            @@
##           electron     #372   +/-   ##
=========================================
  Coverage     56.44%   56.44%
=========================================
  Files            56       56
  Lines          1614     1614
  Branches        223      223
=========================================
  Hits            911      911
  Misses          679      679
  Partials         24       24

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


Support of cassandra 3.x

I really appreciate that cequel could use the new cassandra-driver 3.x

What is the status of this project? Is it alive? Are major things like this being looked at?

The project is alive and well. We would love to have c* 3 support. I would
merge a PR providing that functionality.

With the incoming release of DSE 5.0, this feature would be really nice together with C*3 static columns and materialised views!

Would love to see this too as Cassandra 2.x is ending their support on December this year and I'm using Cassandra 3.5 now. Currently I have execute all queries in raw CQL using official driver.

C* 3.x support is coming in PR #316

#324 is merged. The next release will support C* 3.x.

Cassandra 3.x is supported by version 2.0.


Own trust should override Web of Trust

There's a user who through my WoT got medium trust. I didn't trust them so much, so I made a trust proof with low trust. It didn't change the level of trust.
I assume WoT picks the maximum trust it can find, but I think my own Id should have the final say.
It worked for distrust level, but that seems overly negative. I'd like to be able to override WoT's trust with none and low too.

Hmmm... That's a tough one. Seem a bit like special casing. And then what about transitive trust etc. Hmmm...
Very similar to https://github.com/crev-dev/cargo-crev/issues/264 .
In cases of organizations where there's a root of trust and employees are one step away from it, this doesn't even work.
I was generally hoping for a WoT that has a reasonably simple rule that is consistent.
Maybe the problem is with the pure additivnes of trust level, which isn't flexible enough. Maybe the rule should be that the effective trust level is the trust level reported by the highest trust-level reporter.
Then the graph traversal would be just highest effective trust-level first, no adding anything. Seems simple enough.

So as far as I understand, the intent was that if I set trust:low because I'm uncertain about someone, then a high level of trust in my WoT provides additional assurance, so it increases my trust level.
But in this case I'm confident I don't like someone's reviews, so my WoT doesn't give extra assurance, but rather it disagrees with me.
So the missing piece here is that there are two dimensions:

what level I think someone should have,
and how confident am I about this.

The single trust level is a mix of these two, so I can't express my high confidence that someone should have low trust.
Adding confidence as an extra field would be a huge complication for users, so I'm not sure how to resolve this problem.

As per dimensions: lack of confidence is a sign of lack of trust, so it all comes down to one metric.
I think in both overriding the trust and overriding package review, a simple flag that says "my judgment should take precedence over anyone else is saying" (override?) etc. would probably solve both use-cases.
We could get such behavior with the algorithm I described above, except the trust level that was set with override flag would not be overwritten, while other trust levels would be additive (potentially triggering revisiting certain nodes if they trust level was upgraded).

override may work.
I was also thinking about adding more negative levels of trust. With just one distrust I can't express the difference between "I don't like their reviews" vs "this is a malicious person".
In technical terms, it could be "I don't trust this id" vs "nobody should trust this id". For an additive trust algorithm, it could have a negative trust value.

@kornelski There used to be dangerous level.

Was it removed for a reason?
I was thinking about some neutral-sounding level between none and distrust for the case of removing a person from my WoT, but without giving them bad reputation.

@kornelski There was distrust and dangerous and I don't remember exactly why but probably something along "too much choice confuses the user". Anyway, I still think it's better to fix this with the algorithm change than new settings/levels.

How about a compromise — the WoT can increase my level by 1 step? So if I explicitly set none for a person, WoT can make it low. If I set low, WoT can make it medium, etc.

I have a mixed feelings about that. :D . We could maybe change the formula to an avg instead of max or something?

You mean the whole WoT algorithm, or just the step that caps trust based on user's own trust proofs?

I thought about it in these few spare moments that I sometimes have.
I'm leaning towards adding a confidence field/level to trust proofs in the spirit of your second comment in this thread .
By default the confidence: medium would be used, and such would be the default value for all existing proofs without this field.
confidence would propagate along during graph traversal but would use the effective trust level of the reporting ID as the base level.
It would affect effective trust level calculation: the effective trust level would be additive withing same confidence level, but trust level from higher confidence level would overwrite the trust level from lover one.
This might be hard to understand so couple of examples might be in order. The new algorithm is a superset of the existing one, where everyone use confidence: medium. However if you feel very strongly about X's trust level, you increase confidence to high. This way the trust level you assign will overwrite opinion of others (because their opinion has only confidence: medium). The effective trust of X can still be increased, but only by people that both: have your effective trust: high, **and** have also used confidence: highfor X (becausemin(high, high)ishigh). In such case the trust level is still additive and effective trust level for X is just max(yours, others)`.
On the other hand - if you don't feel strongly about someone's trust level, you can make it confidence: low, and then any opinions of people with WoT of effective trust level of low or higher, that set confidence to low will be additive (max) with yours, and of people with effective trust level medium or higher simply overwrite your opinion.
confidence: none is still a thing, but that would be a really low confidence level.
I still would have to attempt to implement it and spend some time researching how it behaves, but intuitively it seems to me it works quite well and is not a big computational problem. For every ID I'd just have to keep track of the confidence level, and when combining trust levels, do a high if confidence is the same, or just take the higher one if one of the confidences levels is higher.
Opinions welcome.

If this works well, we might want to add confidence to package review proof. Here it would work similarly. It would get clamped by the effective trust level and split reviews into buckets of confidence level. Then depending of actually is considered passed, we could do different things.
I think right now pass means that sufficient number (bigger or equal to --redundancy argument) of positive reviews was collected at at least the specified understanding, thoroughness, "effective trust", etc. levels. We might want to tweak that to work better with confidence somehow.

confidence for trust proofs sounds ok to me.
confidence for package reviews seems redundant, since there's already understanding and thoroughness that are more or less the same thing.

confidence is just a name. I'm not sure if the best one. The actual meaning is more of a "I want my judgment to overwrite / be overwritten".
In that spirit we could make implicit confidence that is min(understanding, thoroughness).

The confidence system introduces sort-of-a-negative-trust: a previously visited node can now get lower trust - which messes up the graph traversal algorithm a lot. :/

I guess even regular distrust can cause a paradox:

B trusts C
C distrusts B

if A trusts B, then A trusts C, then A distrusts B, so A doesn't trust C.

Yes. distrust is already a negative trust and is handled by restarting flooding from scratch if the node being distrusted was already visited, maintaining a blacklist. distrust is at least somewhat of an exception while confidence levels would be a common thing.
Thinking more about it - we're just missing forest for the trees. Tracking particular-users effective trust level works only in a tiny network that is being bootstrapped. If the project is to succeed, there will be hundreds of thousands of nodes in the WoT, and couple of users having a bit higher trust level because someone else with higher trust level has higher trust in them then you ... is just not a problem.
What is supposed to protect you is the --redundancy X  + flow-analysis (merging of reviews coming through the same trust chokepoints, to prevent sockpuppets).
The main effective trust level calculation needs to be simple and quick, and give good deterministic results.
So I would say ... if you gave A lower trust level, then B bumped it higher ... consider lowering the trust level of B if it really bothers you. :) . Because sooner or later B is going to give that trust level to C and D, and you have better things to do than tracking everyone in your WoT.

If I don't trust one person that much, lowering trust of everyone around them is not a good solution. It's very heavy-handed and I will be lowering trust in many more reviewers than I wanted.
It isn't even reliable, because other people in the WoT could increase trust in the unwanted person at any time. I don't have a way to permanently record my certainly-low trust, and that trust may change without me doing anything.
For now I've just set explicit distrust for the person whose reviews I don't want. But I don't feel right about setting a public negative signal about someone, only because I don't like their review style.

How about using high-confidence proofs of the user as a cap on maximum trust.
Keep the existing algorithm, but when evaluating trust of an Id, if there's a trust proof by the current user with confidence: high, make effective_trust = min(WoT's trust, User's confident trust).
For other people's trust proofs, confidence: low could be used to disable additive behavior from their proofs.

But the more I think about growth of the WoT, the more I think it shouldn't have additive behavior at all. I'd rather use my trust level as the max always.
If I have low trust in many people, this should never result in anyone getting high trust anywhere.

It's very heavy-handed and I will be lowering trust in many more reviewers than I wanted.

I guess that's good. This problem made you honestly re-evaluate your trust in "many more reviewers".
If you trust A with high level, and they trust B with high level, and you don't want B to have high trust, then ... you have to re-evaluate your trust level in A. You might want to just  lower trust in B manually, but A in 10 minutes will go and give high trust to some C that you actually don't know about and also don't approve, and everything turns into a game of Whac-A-Mole.
@pimotte just suggested that crev in such situation should automatically downgrade trust in A.
And I guess I disagree with both of you. I think it's best if crev uses the simplest and easiest to implement, scale and reason about approach, and the user is forced to manage their trust decisions somewhat more carefully and has to face consequences of their own decisions.

For now I've just set explicit distrust for the person whose reviews I don't want. But I don't feel right about setting a public negative signal about someone, only because I don't like their review style.

Yeah. This is not right. Distrust is for explicitly banning people. And if you ban people that other people value, you will eventually get banned.
In a way I'm actually happy that tensions like this arise. As much as it seems inconvenient for the user, IMO, it is good that the users are kept in state of tension and they have to face dilemmas like this.
I also want to avoid "having one trust-set privately" and "one trust-set publicly". Part of the reason why I want to avoid having separate "transitive-trust" vs "direct-trust" and other things.
I thought that confidence level does not break any of these principles and allows someone to honestly express their lack of confidence, but since it doesn't work well on the implementation side, I have to drop it, it seems.
So my answer to: "A caused me to trust B higher than I want" is: "should have trusted A less". :)

We could have tools helping with all this. Eg. a tool that lists all users that caused increase in an effective trust level of people that you rated directly lower. Just so you can re-evaluate trust in them ... or maybe ... just talk with them about it.
Personally, I don't believe in some magical smart algorithm that is going to eliminate all the problems, and smoothly calculate perfect "trust scores" for everyone. Because at scale such system slowly degrade with people doing lazier and lazier job, because "the system is going to take care of it". My perspective is that complex systems are complex and messy, and what keeps a balance in them and makes them functional are tensions, conflicts and need for communication.
I rather have a system in which sometimes people have to be unpleasant to each other and say "hey A, you gave B high trust, and they are doing a crappy job, so I'm downgrading trust in you" and keep each other honest and careful, than a system with false security and/or anti-social system where everyone just keep a private list of trust.

"hey A, you gave B high trust, and they are doing a crappy job, so I'm downgrading trust in you"

I don't like all-or-nothing situation here. "A" may be an important user who is writing good reviews, and such disagreement would be mainly my loss. If "B" is some central user, I may be unable to use crev at all.
Trust is not objective, and is not context-free. "Trust" is a simplified symbolic representation of multiple dimensions of complex relationships. These reasons still exist, and may get more and more misaligned the more degrees you hop across WoT.
"A" may have a great reason to highly trust "B", and I don't. People may trust each other because they're friends IRL, or because they're coworkers. But I may want to lower trust, because one of them misunderstood how to use crev, or they work for my competitor, or I just don't their face.
With additive WoT everyone is forced to express their different reasons on the same scale. But I don't want to impose my perspective and my trust requirements on my entire WoT. In a way, if I have something against person "B" that's my problem, and I don't need to rally the whole world against them.

Another way to look at it is that "additive" WoT is oriented towards growth. As members pull in more people, the WoT grows automatically, and trust levels rise everywhere. I may end up with high trust in people that are several degrees away from me. I may end up highly trusting people I've never heard of.
That's useful for a public site like lib.rs, because there's little curation of the WoT needed to pull in almost everyone, and have an trust score about every member from other members. It's more like PageRank than a friend list.
But I'd prefer "multiplicative" WoT where distance from me can only lower the trust, and never raise it. (roughly, if calculating trust of D that is between me -> A -> B -> C -> D, it's something like trust(me,A) * trust(A,B) * trust(B,C) * trust(C,D) where trust() is float in 0..=1 range).
With a "multiplicative" WoT if I add someone with a medium level of trust, I know they can't raise anyone to a high level. Everyone they can add to WoT will have medium or low trust only. This limits growth of the WoT to only a little more than people I trust, and I can lower trust of anyone I don't want.

Please excuse if anything is incoherent, or sounds rude or something. I was just distracted, and had to write it down in rush.

With additive WoT everyone is forced to express their different reasons on the same scale.

This has to be the case for a wide-scale WoT to work. Otherwise the ratings can be arbitrary and not very useful as a global source of trust.

"A" may have a great reason to highly trust "B", and I don't.

You either trust A and people A trusts at certain level or not. All people that have you in their WoT depend on your decision, and that's why it's important for you to make up your mind. It's OK for you to go cautiously lower if you're not sure, since other people with more certaintly can increase the effective trust level.

and I don't need to rally the whole world against them.

Then don't. Accept the fact that the world generally sides with them. Don't let the perfect be an enemy of the good enough.

I may end up with high trust in people that are several degrees away from me.

Yes. For the whole network to be usuable it has to be wide. There is thousands (millions?) of crates in many versions to cover, and we're to build a lose network of thousands of people to take a closer look.
I think there's a fundamental dissagreement here what's the purpose. The fact that you even look in such a details as "why does B have trust level medium, instead of low" suggest that you're trying to optimize for your small personalized network. But I don't think it's practical. I don't want "1 carefully selected person looked at this crate, so must be OK". I want "10 people that had low trust level, and 1 with medium looked at it, so maybe it's OK, and I'll review one that wasn't reviewed by anyone with medium level yet".

As members pull in more people, the WoT grows automatically, and trust levels rise everywhere.

It does grow automatically, but trust levels don't rise everywhere. They do graduatelly get lower, because if you haven't made someone's trust level "high", they can not produce anyone else with trust level high. If you haven't made "A's level high, B wouldn't be high". The trust level degrades as further from the root we go, and the fact that it's additive is just making it a bit slower.

It's more like PageRank than a friend list.

Exactly. I don't want a friend list. I want something that can filter out spamers, fraud, sockpuppets - systematic problems and leave all other reviews somewhat trustworthy for everyone else, so you can narrow down dependencies that need direct review most. I want people to use information provided by other people they don't know, as much as they need to (they don't have better sources).

can only lower the trust, and never raise it.

That's already the case.

me -> A -> B -> C -> D, it's something like trust(me,A) * trust(A,B) * trust(B,C) * trust(C,D) where trust() is float in 0..=1 range).

That's kind of how it works. min(trust(me, A), trust(A, B), trust(B, C)). The more further you go, the higher the chance that there was no link at all, or it was "low" and trust erroded. But you also have me -> X -> A, you gave X much higher rating and now you're complaining that X raised the level of B. But that's only because there is an unbroken link of high trust between you and B.
BTW. I don't think multiplication of 0..1 numbers works well.
First - it goes downhill really quickly. 0.5 ^ 3 = 0.125. And then "this person trust level is 0.125". What does it even mean? A lot? Little? Good? Bad? And then you get multiple reviews, with different understanding etc. And it all turns quickly into meaningless, abstract aggregates. "To trust my deps I want their score to be at least 0.1552345234". Yyyy...why not 0.19?
It's much concrete and simpler to work with trust in "I want at least 3 people, of at least medium-level unbroken link of trust to review my deps, with at least medium level of understanding". "A person in my WoT with effective trust level of medium, must have unbroken chain of trust to me of at least medium.
I also don't understand why worry about narrowing down the WoT, when even now, when I do "cargo crev verify" on cargo-crev's source code I don't even get one review of any version of most of the dependencies. It's not like a have a choice. I have to take the review of anyone, as a better thing than nothing. After I actually have some good coverage of most crates, I can start to get picky and figure out ways to filter out people.
I've recently added an explicit comment that Crev does not force any WoT implementation, so anyone is free to calculate trust in any way they really desire. So we could add a trait or something, so that anyone can plug their own implementation for their own purposes, and even in cargo-crev we can have a flag that picks from multiple algorithms.
I hope that after a while, if things go well, there will be many many people to research this problem, on a wider network and figure it out.
Also, note that you still have --depth X and --x-cost flags. So you can even more precisly control the depth and behavior of the flooding algorithm and do multiple cargo crev verify with different settings to narrow down crates that might require your direct attention.
Also 2, nothing is set in stone and if we get more voices and arguments, feedback, usage etc. the simpler things are right now, the easiest it will be to change the direction in the future.


templates/express always loads initial build

What version of Remix are you using?
2.0.1
Are all your remix dependencies & dev-dependencies using the same version?

[X] Yes

Steps to Reproduce
npx create-remix --template remix-run/remix/templates/express
Expected Behavior
When I change any file, HMR works correctly and page reloads with new build.
But if I refresh the page (F5) then it will show me the initial build.
Actual Behavior
It should show the latest build every time I refresh the page.

I was going through the source code here - https://github.com/remix-run/remix/blob/main/templates/express/server.js#L80
And I saw this piece of code:
async function createDevRequestHandler(initialBuild) {
  let build = initialBuild;
...

The thing is that express will call createDevRequestHandler() on every new request, so it will reset build variable to initialBuild every time.
I changed that behaviour, so I made
const initialBuild = await reimportServer();
let currentBuild = initialBuild

and then
async function handleServerUpdate() {
    // 1. re-import the server build
    currentBuild = await reimportServer();
    // 2. tell Remix that this app server is now up-to-date and ready
    broadcastDevReady(currentBuild);
  }

and also changed build to currentBuild in other places, and now it works as expected.
I'm not sure how it was supposed to work with current code in the repo. Please let me know what I am missing here.

I can confirm this issue. It also prevents updated actions from using the new version. It was a mistake in the template to call createDevRequestHandler repeatedly, it should just be called once. To that end, I opened a pull request at #7544.

I can confirm that @ngbrown's solution on #7544 works. Thanks, @ngbrown 🚀


Uploading Image to amazon using s3

Please guide me proficient way to upload images to amazon instead to public path.
sample codes would be more helpful.

I'm trying to work on this too. Any ideas? I need to detect whenever an image is being uploaded to my server, and then make a copy of it to S3.

Look into the Eloquent Eventing: http://laravel.com/docs/5.1/eloquent#events


assume without setting env vars

First off love the tool, you've done some amazing stuff. However I did have a question, in my situation we have lots of AWS Accounts and the way I normally work is I do an aws sso login to get credentials setup which basically signs me in to all of the various accounts. But I don't set any AWS ENV VARs. This way I'm free to set everything on the CLI and easily switch between accounts for different commands.
Example:
AWS_PROFILE=abc-dev aws sts get-caller-identity
aws sts get-caller-identity --profile abc-dev

assume <account_name> basically sets all the AWS ENV VAR which for me is counter productive as I end up having to "remove" all the ENV VARs each time. Unless I'm troubleshooting something I don't normally want the AWS ENV hardcoded.
Is it possible I'm missing a feature is there an assume --noenv option so it performs the SSO LOGIN but then doesn't touch your session? Right now my best option is to open a new terminal do the assume there and then exit out of the terminal to my old one. It works be great to avoid those steps.
Thanks, again amazing work!

I think you could mimic this with an alias workaround to incorporate assume --unset and restoring AWS_PROFILE only if desired.  e.g:
alias assume-profile-only='assume;profile=${AWS_PROFILE};assume --unset;export AWS_PROFILE=$profile'

Then:
env | grep AWS | wc -l
       0

assume-profile-only
...

env | grep AWS
AWS_PROFILE=123456789012/my-role

aws sts get-caller-identity
...

You could omit the backup/restore of AWS_PROFILE to get zero env if desired, which it sounds like you want ... and could probably get creating with the alias name too.

Its certainly a good option if the application doesn't support it. I've set that up but I think it would be great to have it built in unless I'm the only one doing something like this :) Thx for the suggestion

@JohnPolansky Welcome to our community! Excited to hear that you like granted. You can use the credential process to use the native AWS CLI (with --profile flag). So you'd be able to run a command like this directly: aws sts get-caller-identity --profile my-profile. Hope this helps!

Hrm.. I do appreciate the input here, but I still think the original ask is still valid.. adding --profile onto an AWS command does work, as you say, but we are still setting all the AWS ENV VARS when they are not always required, honestly in my case they are "never" required. The problem with setting these variables is that all programs can use them differently and make set precedence different. For example of the tool being used uses the AWS_ACCESS_KEY_ID ENV VAR as the higher priority then it will ignore other attempts to reset them via AWS_PROFILE or --profile. This could leave someone in a situation where they don't know for sure what is being set.
That is why i was suggesting a feature to "perform an SSO login" and not set ENV VARs would be useful that way it's lets the user assign things the way they want without the need to unset 7 different ENV vars after login.

@JohnPolansky I think granted sso login is the command you're looking for!
First, set up your AWS profile to use the credential process:
- [profile my-profile]
- sso_account_id = <your-sso-account-id>
- sso_region = <your-sso-region>
- sso_role_name = <your-role-name>
- sso_start_url = <https://example.awsapps.com/start>

+ [profile my-profile]
+ granted_sso_account_id = <your-sso-account-id>
+ granted_sso_region = <your-sso-region>
+ granted_sso_role_name = <your-role-name>
+ granted_sso_start_url = <https://example.awsapps.com/start>
+ credential_process = granted credential-process --profile my-profile

Then, run granted sso login to log in. Currently you have to use it like this, where --sso-start-url and --sso-region are required flags:
granted sso login --sso-start-url https://example.awsapps.com/start --sso-region my-sso-aws-region

(perhaps we could make this a little more user-friendly by inferring the flags from your config file?)
Then, to assume a role in your terminal, rather than running assume, just export the AWS_PROFILE env var:
export AWS_PROFILE=abc-dev

Or you can override the profile on a per-command basis:
AWS_PROFILE=abc-dev aws sts get-caller-identity
aws sts get-caller-identity --profile abc-dev

You can still use assume -c to open a console into your web browser.
Typing export AWS_PROFILE=abc-dev is a little long and annoying though. Once https://github.com/common-fate/granted/issues/263 is resolved you'll be able to run assume abc-dev and the tool will only export AWS_PROFILE, not everything else. @Eddie023 has a draft PR up for that issue so hopefully it will ship in the next release!

@chrnorm
Thanks for the
granted sso login --sso-start-url https://example.awsapps.com/start --sso-region my-sso-aws-region

suggestion, this is pretty close to what I need but like you said having to include the sso-start-url is a bit inconvenient when you've already got it set in the ~/.aws/config I'd say having it assume your preset values would be a great addon.
Thanks!


Output TestCafe-Live version when the -v flag exists

Now it outputs the version of testcafe only

I close this issue because it has no sense after merging TestCafe Live into the main TestCafe.


Helm versions must be semver, unfortunately

See oci: reconsider to remove the restriction of image tag must match the chart version. · Issue #9378 · helm/helm
image tag must match the chart version:

To successfully pull dependencies, the image name in the registry must match the chart name and the tag must match the chart version. ...

from: https://helm.sh/docs/topics/registries/
So while the example works, if you every want to use such a chart as a dependency in another chart (which you probably will, eventually), then that won't be possible.
I therefore suggest changing the example:
cd ..
helm chart save . hello-world:v1
helm chart save . mycontainerregistry.azurecr.io/helm/hello-world:v1

to:
cd ..
# name and version must match the name and version in Chart.yaml
# see https://helm.sh/docs/topics/registries/
helm chart save . hello-world:0.1.0
helm chart save . mycontainerregistry.azurecr.io/helm/hello-world:0.10

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

ID: 59c4be11-ec02-7160-e65b-2218bfd70f68
Version Independent ID: 19e08339-390f-ccfa-885c-2643722bd186
Content: Store Helm charts - Azure Container Registry
Content Source: articles/container-registry/container-registry-helm-repos.md
Service: container-registry
GitHub Login: @dlepow
Microsoft Alias: danlep

Note that in the future, commands like helm chart save will be removed in favour of helm package. More information can be found in HIP 6.

@pmorch Thanks for the feedback! I have assigned the issue to content author to check and update the document as appropriate. We will update you accordingly.

@dlepow Can you please check and add your comments on this doc update request as applicable

@pmorch - Thanks for the helpful feedback. In an upcoming article update, I'll update the image name:tag example as you suggest to use the same chart name and version in Chart.yaml.


[Candidate 1v1 Dry River ZH v4] Grass patch near Repair Bay makes it look as if there was a dent in terrain

Observed behaviour
Grass patch near Repair Bay makes it look as if there was a dent in terrain.
Expected behavior
Grass patch is removed. Terrain looks flat.
Screenshots

fixed can be closed


Read h5 file using AWS S3 s3fs/boto3

I am trying to read h5 file from AWS S3. I am getting the following errors using s3fs/boto3. Can you help? Thanks!
import s3fs

fs = s3fs.S3FileSystem(anon=False, key='key', secret='secret')

with fs.open('file', mode='rb') as f:
     h5 = pd.read_hdf(f)

TypeError: expected str, bytes or os.PathLike object, not S3File
fs = s3fs.S3FileSystem(anon=False, key='key', secret='secret')
with fs.open('file', mode='rb') as f:
    hf = h5py.File(f)

TypeError: expected str, bytes or os.PathLike object, not S3File
client = boto3.client('s3',aws_access_key_id='key',aws_secret_access_key='secret')
result = client.get_object(Bucket='bucket', Key='file')
with h5py.File(result['Body'], 'r') as f:
    data = f

TypeError: expected str, bytes or os.PathLike object, not StreamingBody

The h5py library doesn't accept a Python file like object.  It expects a string pathname to a local file.  The HDF library does not work well with cloud-based data.  See http://matthewrocklin.com/blog/work/2018/02/06/hdf-in-the-cloud for further discussion.
This is a good question, thank you for raising it, but solving it is out of scope for s3fs, so I'm going to close this issue.

Support for file-like objects has been added to h5py v 2.9.  See "Python file-like objects" in http://docs.h5py.org/en/stable/high/file.html.
You can open HDF5 files with s3fs like so:
    s3 = s3fs.S3FileSystem()
    f = h5py.File(s3.open("s3://my-bucket/my-file.h5", "rb"))

Performance will vary depending on how the file is structured and latency between where your code is running and the S3 bucket where the file is stored (running in the same AWS region is best), but if you have some existing Python h5py code, this is easy enough to try out.

That's great, thanks for sharing @jreadey!

Nice!
On Sun, Nov 3, 2019 at 5:44 PM James Bourbeau<EMAIL_ADDRESS>wrote:

That's great, thanks for sharing @jreadey https://github.com/jreadey!
—
You are receiving this because you modified the open/close state.
Reply to this email directly, view it on GitHub
https://github.com/dask/s3fs/issues/144?email_source=notifications&email_token=AACKZTCLNWNAJFMGPOTRRVDQR5V6XA5CNFSM4FOUG7O2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEC6CZBQ#issuecomment-549203078,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AACKZTF4COCO2OMF7QDIJPDQR5V6XANCNFSM4FOUG7OQ
.

(should work with any file system backend)

Support for file-like objects has been added to h5py v 2.9. See "Python file-like objects" in http://docs.h5py.org/en/stable/high/file.html.
You can open HDF5 files with s3fs like so:
    s3 = s3fs.S3FileSystem()
    f = h5py.File(s3.open("s3://my-bucket/my-file.h5", "rb"))

Performance will vary depending on how the file is structured and latency between where your code is running and the S3 bucket where the file is stored (running in the same AWS region is best), but if you have some existing Python h5py code, this is easy enough to try out.

thanks for the code snippet. I tried it and it works fine unteil I wanto to close the file to leave the function. Is there any way to get around this?
def _read_data(file_system, key):
    data = dict()
    with h5py.File(file_system.open(join('s3://', bucket_name, key), "rb")) as f:
        file_keys = list(f.keys())
        if 'meta_data_json' in file_keys:
            file_keys.remove('meta_data_json')
        for k in file_keys:
            try:
                obj = f[k]
                sem = obj.get('semantic').value[0]
                acc = obj.get('acc').value
                gyr = obj.get('gyr').value
                data[str(sem)] = np.concatenate((acc, gyr), axis=1)
            except:
                print()
        print('')
    f.close()
    return data

This is the error that comes up as soon as it leaves the with statement:
 File "/Users/alex/opt/anaconda3/lib/python3.7/site-packages/h5py/_hl/files.py", line 442, in __exit__
    self.close()
  File "/Users/alex/opt/anaconda3/lib/python3.7/site-packages/h5py/_hl/files.py", line 424, in close
    h5i.dec_ref(id_)
  File "h5py/_objects.pyx", line 54, in h5py._objects.with_phil.wrapper
  File "h5py/_objects.pyx", line 55, in h5py._objects.with_phil.wrapper
  File "h5py/h5i.pyx", line 150, in h5py.h5i.dec_ref
  File "h5py/defs.pyx", line 1187, in h5py.defs.H5Idec_ref
  File "h5py/h5fd.pyx", line 169, in h5py.h5fd.H5FD_fileobj_write
AttributeError: 'S3File' object has no attribute 'seek'

Any help is appreciated

but S3File does have an attribute seek.
This may be something to do with the order in which objects are being deleted, you could do
of = file_system.open(join('s3://', bucket_name, key), "rb")
with of as fh:
    with h5py.File(fh) as f:

to be explicit.

but S3File does have an attribute seek.
This may be something to do with the order in which objects are being deleted, you could do
of = file_system.open(join('s3://', bucket_name, key), "rb")
with of as fh:
    with h5py.File(fh) as f:

to be explicit.

thanks. I solved i with the following solution:
data = dict()
    with h5py.File(s3.open(join('s3://', bucket_name, key), 'rb'), 'r', lib_version='latest') as f:
        file_keys = list(f.keys())
        if 'meta_data_json' in file_keys:
            file_keys.remove('meta_data_json')
        for k in file_keys:
            try:
                obj = f[k]
                sem = obj.get('semantic').value[0]
                if sem == 100 or sem == 601 or sem == 901:
                    acc = obj.get('acc').value
                    gyr = obj.get('gyr').value
                    data[str(sem)] = np.concatenate((acc, gyr), axis=1)
            except:
                print()
        f.close()

I don't really know why I had to give different read/write options to hdf5 and s3 , but this way it does work.

HD5 will assume binary in every case, but fsspec follows the python convention that 'r' means text-mode.
So it seems, the key was to close the HDF file, which is odd, since the with block should have done that.

HD5 will assume binary in every case, but fsspec follows the python convention that 'r' means text-mode.
So it seems, the key was to close the HDF file, which is odd, since the with block should have done that.

thanks for the explanation.

for the interested reader directed here by search engines (like me) -- another effective workaround:
import tempfile

import pandas as pd
import s3fs

s3 = s3fs.S3FileSystem()

with tempfile.NamedTemporaryFile() as f:
    s3.get(remote_s3_path, f.name)
    df = pd.read_hdf(f.name)
df.shape

The above is essentially equivalent to:
import fsspec

fn = fsspec.open_local(f'simplecache::s3://{remote_s3_path}')
df = pd.read_hdf(fn)

or

with fsspec.open_local(f'simplecache::s3://{remote_s3_path}') as f:
    df = pd.read_hdf(f)

which may or may not seem simpler.

but S3File does have an attribute seek.
This may be something to do with the order in which objects are being deleted, you could do
of = file_system.open(join('s3://', bucket_name, key), "rb")
with of as fh:
    with h5py.File(fh) as f:

to be explicit.

thanks. I solved i with the following solution:
data = dict()
    with h5py.File(s3.open(join('s3://', bucket_name, key), 'rb'), 'r', lib_version='latest') as f:
        file_keys = list(f.keys())
        if 'meta_data_json' in file_keys:
            file_keys.remove('meta_data_json')
        for k in file_keys:
            try:
                obj = f[k]
                sem = obj.get('semantic').value[0]
                if sem == 100 or sem == 601 or sem == 901:
                    acc = obj.get('acc').value
                    gyr = obj.get('gyr').value
                    data[str(sem)] = np.concatenate((acc, gyr), axis=1)
            except:
                print()
        f.close()

I don't really know why I had to give different read/write options to hdf5 and s3 , but this way it does work.

I am tring your solution but getting empty dictionary as if the file is only opening as view mode, any suggestions?


Added Travis job, mypy type checking

Didn't annotate much, but I did add type annotations enough to make mypy
not complain.  I'll expand type annotations in the future as make sure
to keep mypy happy.

Looks like type hints in variables only works in python 3.6.. which makes me wonder if I want to restrict this library to only the newest of the new python (I'd already considered not supporting python2, but requiring 3.6+ seems like more of an ask)


Unnecessary ellipsis appear on the time-line title

Describe the bug
Time-line title ellipsis is displayed on first line, but it seems to be better to be displayed at maximum line only.
To Reproduce
Steps to reproduce the behavior:

Install from Play Store.  I haven't confirmed yet in development environment.
For example, set in Japanese from drawer menu Setting.
Go to Day 2 time line.
See App bars's column at 12:00. There is a session 通知チャンネルに対応する.
See the behavior of the ellipsis like 通知チャンネルに対応....

Expected behavior
I think it would be better to show in 2nd line in the above case.
So, I suggest that the ellipsis is appeared just on maximum line.
Screenshots

It looks like an expected behavior because there is no room for the second line in a 25-minute session. The first line is the last line. Only a 30-minute session or longer has room for the second line.

Thank you for your comment!

The first line is the last line.

I may understand it but I'm not sure.
Please confirm following once🙏
What I want to say is it would be better to show full text if there is a blank line space to show all sentence edge-to-edge in this 通知チャンネルに対応する case.
For example, the neighbor time-table 実例から学ぶJetpack Composeのパフォーマンス改善 was shown in 2nd line.
So 25-min session may have space to show 2nd line.
I expected to improve following...
before:
通知チャンネルに対応...

after:
通知チャンネルに対応
する

What do you think about this?

Thanks for the explanation:pray: I got it. Somehow, "通知チャンネルに対応する" does not show the second line while "通知チャンネルに対応するJetpack Compose" (no meaning) does. I cannot come up with a good solution…

"通知チャンネルに対応する"
"通知チャンネルに対応するJetpack Compose"

The cause seems to be the font.
https://github.com/Luecy1/conference-app-2022/commit/befb0cd71d325011a9d4eaa4ed08774925b7b11c
When I revert the font as above, it was displayed in two lines

But,I not have solution idea.

I'm not familier with Compose view, and I may have no time to fix them by DroidKaigi held 😰
You may have already tried it, there were some solution in TextView of XML layout.
https://stackoverflow.com/questions/2160619/android-ellipsize-multiline-textview
Have you confirmed the idea yet?
If you have done already, it might be good to call for help 🙌

What!? @Luecy1 might have already done?
This issue solved with your idea by tring on my local.
Could you make PR?
I don't confirm the background of the font decision.
If it caused by downloadable font, it is a way to open another issue.
Limited my small point of view about this repo, I think it is higher priority than adopt downloadable fonts.
Because it is visible for public users.
Here is the link I saw for your reference. It might be bug of Compose, I don't know.
https://issuetracker.google.com/issues?q=compose text overflow ellipsis
Set maxline idea: it might not be good.
https://stackoverflow.com/questions/65736375/how-to-show-ellipsis-three-dots-at-the-end-of-a-text-line-in-android-jetpack-c

I didn't create a PR because the app design will change.
I will create PR, not use downloadable font.

Thanks!


[Server] Prometheus and Grafana Discovery

Current Behavior
Grafana and Prometheus being discovered and shown in Dashboard report, but not in Settings Metrics page.

Contributor Guides and Handbook

🛠 Meshery Build & Release Strategy
📚 Instructions for contributing to documentation

Meshery documentation site and source

🎨 Wireframes and designs for Meshery UI in Figma
🙋🏾🙋🏼 Questions: Discussion Forum and Community Slack

@MUzairS15 will you investigate, please?

Upon manual connection to both Prometheus and Grafana, metrics are successfully received, but ad hoc connectivity tests show a missing hostname -


Develop use case - zoning tax lots

create templates
run all the data data ingestion
change zoning tax lots ETL structure

https://github.com/NYCPlanning/db-zoningtaxlots/pull/61

the last step would be to implement ztl data update github actions in NYCPlanning/db-zoningtaxlots
using action-library-archive


chore: bump kernel version to v0.19.1

What's changed and what's your intention?
PLEASE DO NOT LEAVE THIS EMPTY !!!
Please explain IN DETAIL what the changes are in this PR and why they are needed:

As title.

Checklist

[ ] I have written the necessary docs and comments
[ ] I have added necessary unit tests and integration tests

Refer to a related PR or issue link (optional)

multi-meta-failover failed when I update the image from v0.18.0 to v0.19.0. @CAJan93 would you mind take a look?

The test failed because we used a in memory state store for multi-meta tests but a fence in meta will prevent it from restarting again when we do that. I updated the manifest. Now it should work.


Docs: Continued work on extension documentation for DI

Continued work on extension documentation for DI. Will be worked on during the next week so expect changes/refinments.
:heavy_check_mark: Checklist

[ ] A changeset describing the change and affected packages. (more info)
[ ] Added or updated documentation
[ ] Tests for new functionality and regression tests for bug fixes
[ ] Screenshots attached (for UI changes)
[ ] All your commits have a Signed-off-by line in the message. (more info)

just addressed the comments


FIO-5064: update libraries to the latest version of React

not yet.? error persists

@aZrael936 the error in #446 or another error?


Fix inconsistent has*Target property names in different locales

Fixes at least one known case where this.has*Target property names would differ depending on locale. In Turkish, i is capitalized to İ so static targets = [ "input" ] would create a this.hasİnputTarget property for browsers using that locale, and this.hasInputTarget in others.
🙇♂ to @rosa for tracking this down!

Further reading: What’s Wrong With Turkey?, Dotted and dotless I

Example of the new test failing before adding the fix:
02 02 2018 15:18:40.771:INFO [Chrome 63.0.3239 (Windows 7 0.0.0)]: Connected on socket _RnZWId5hxKY3jY1AAAB with id 3045112
..........................
Chrome 63.0.3239 (Windows 7 0.0.0) TargetTests has*Target property names are not localized FAILED
	Expected: true
	Actual: undefined
	    at TargetTests.test has*Target property names are not localized (packages/@stimulus/core/test/index.ts:5469:21)
	    at TargetTests.<anonymous> (packages/@stimulus/core/test/index.ts:2533:52)
	    at step (packages/@stimulus/core/test/index.ts:2445:23)
	    at Object.next (packages/@stimulus/core/test/index.ts:2426:53)
	    at packages/@stimulus/core/test/index.ts:2420:71
	    at new Promise (<anonymous>)

..........
Chrome 63.0.3239 (Windows 7 0.0.0): Executed 37 of 37 (1 FAILED) (1.196 secs / 1.083 secs)


The Input system profile needs a little UX love

Reality Collective - Reality Toolkit Feature Request
Is your feature request related to a problem? Please describe
As can be seen in the screenshot below, the Input system profile is fast becoming a little unwieldy, too many options littered throughout the screen and some duplication?
This needs tidying up.
How would you classify your suggestion

Usability / Configuration

Describe the solution you'd like

A clear and concise profile screen that is easier to use / navigate.
Additional context

It is a little tidier now following the profile update.  However, the custom inspector likely needs to add/manage some of the missing options


Store sort order on URL

It would be nice to store the sort order on the URL so people can share the URL with a specific order.

I can work on this


Compile-AppInNavContainer hangs in DevOps

when using Compile-AppInNavContainer in build pipeline very often the task just hangs - and I'm not really sure where to look for the problem.
Here's the output from the task (as you can see from timestamps I had to cancel it)
2019-11-13T23:06:03.4165720Z Compilation ended at '0:5:59.402'.
2019-11-13T23:06:03.4169381Z
2019-11-13T23:06:03.4242436Z C:\agents\BuildAgent-demo\_work\1\a\Demo_SampleApp_<IP_ADDRESS>.app successfully created in 60 seconds
2019-11-13T23:06:03.4278428Z ##[debug]$LASTEXITCODE: 0
2019-11-13T23:10:25.3206264Z ##[debug]Leaving Invoke-VstsTool.
2019-11-13T23:10:25.3242870Z ##[debug]Leaving C:\agents\BuildAgent-demo\_work\_tasks\PowerShell_e213ff0f-5d5c-4791-802d-52ea3e7be1f1\2.151.2\powershell.ps1.
2019-11-13T23:10:25.3978775Z ##[error]The operation was canceled.
the command being executed is pretty straight forward:
Compile-AppInNavContainer     -containerName $containerName
-credential $credential     -appProjectFolder $buildProjectFolder
-appOutputFolder $buildOutputFolder | Out-Null
Also I've noticed that if I don't recreate the container (comment out tasks for creating/removing) - this never happens.
Any ideas where to start looking for a problem/solution?

Hi @AndriusAndrulevicius
how did you solve this? We have the same issue from time to time. When rerunning the job it normally works, but it is a bit annoying.

Hi @cmuris,
are you cleaning the workspace before compiling?
adding "workspace:  clean: all" to the compilation job seems to solve that issue.
P.S.
sorry to be "never mind, I figured it out" type of guy...

Thanks for the fast reply! In this particular case it was set to "clear sources" for whatever reason. I set it to "all" now and rerunning it worked instantly. I will monitor this.
Thanks
Christian


The next thing to do is to test your installation, which includes the creation a workspace for go projects (a workspace is essentially directory with three subdirs: pkg, src, bin)  and set the GOPATH environment variable.
From that, you could check out the code and run the infer example:
cd $GOPATH
go get -u github.com/frictionlessdata/tableschema-go
cd src/github.com/frictionlessdata/tableschema-go/examples/infer
go run main.go

Please let me know if you need guidance on some specific task or run into any problems.

@danielfireman
Thanks. It's helped. So this is a working scenario:
@danielfireman
I'm stuck after running these commands:
$ git clone git@github.com:frictionlessdata/tableschema-go.git tableschema-go/src
$ cd tableschema-go
$ bash < <(curl -s -S -L https://raw.githubusercontent.com/moovweb/gvm/master/binscripts/gvm-installer)
$ gvm install go1.4 -B
$ gvm use go1.4
$ export GOROOT_BOOTSTRAP=$GOROOT
$ gvm install go1.9
$ gvm use go1.9
$ gvm pkgset create --local
$ gvm pkgset use --local
$ cd src
$ go test csv schema table
# ok      csv     0.002s
# ok      schema  0.008s
# ?       table   [no test files]

Yes! Exactly!


Refactor "PhrancisThings" to "CardshifterThings"

I'm not a big fan of the "PhrancisThings" in the current code base, just because... Well, it's not my game, it's the Cardshifter game. It was good as a naming pattern for a good while, but I think a PhrancisThing should be refactored to a CardshifterThing throughout.

Or even better: CyborgChroniclesThing, as that is the official name of that mod AFAIK.

That would work as well, since it looks like all the PhrancisThings are mod-related


Adding new documents and running search on those

This issue is for a: (mark with an x)
- [x ] bug report -> please search issues before submitting
- [ ] feature request
- [ ] documentation issue or request
- [ ] regression (a behavior that used to work and stopped in a new release)

Minimal steps to reproduce

Running prepdocs.py and trying to run index and search on new docs instead of provided sample docs.
Any log messages given by the failure

ImportError: cannot import name 'AsyncAzureOpenAI' from 'openai' (C:\Users\xxxxxxxx\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.11_qbz5n2kfra8p0\LocalCache\local-packages\Python311\site-packages\openai_init_.py)
Expected/desired behavior

I was expecting to see indexes created and some operations performed in Open AI search service but both document intelligence and search services are empty and getting this error.
OS and Version?

Windows 7, 8 or 10. Linux (which distribution). macOS (Yosemite? El Capitan? Sierra?)
Windows 10. Solution deployed through VS code

azd version?

run azd version and copy paste here.
azd version 1.5.1

Versions

Mention any other details that might be useful
Instead of uploading PDF files to data folder, if I keep files on storage account created by azd up, can I still run prepdocs.py directly or any other steps I will have to take for ingestion and search.
Thanks !

Thanks! We'll be in touch soon.

There's an integrated vectorization PR coming in that means you won't have to re-run prepdocs every time you see new documents
#1159

Regarding this error

ImportError: cannot import name 'AsyncAzureOpenAI' from 'openai' (C:\Users\xxxxxxxx\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.11_qbz5n2kfra8p0\LocalCache\local-packages\Python311\site-packages\openai_init_.py)

Can you please try running pip install -r requirements-dev.txt? Looks like you are not using the virtualenv with the right packages installed


perf: Revisit micro-optimizations

Newer versions of 2.7.x and 3.x exhibit different performance characteristics vs. 2.6 and 3.4. Revisit micro-optimizations such as the following and adjust where it makes sense:

#NOTE(kgriffs): Reference via self since that is faster than module global...

Resolved in the referenced PR.


Attestation Service unavailable?

I finally have what seems to be a well-constructed .login method with valid credentials. On my first attempt, I received this, and I'm uncertain what to make of it.
Traceback (most recent call last):   File "snapchat.py", line 78, in <module>     main()   File "snapchat.py", line 31, in main     s.login(username, userpassword, gmail, gpasswd, casper_api_key, casper_api_secret)   File "build/bdist.linux-x86_64/egg/snapy/__init__.py", line 175, in login   File "build/bdist.linux-x86_64/egg/snapy/API.py", line 32, in getSnapchatAttestation   File "build/bdist.linux-x86_64/egg/snapy/Agent.py", line 15, in get   File "build/bdist.linux-x86_64/egg/snapy/Agent.py", line 47, in request snapy.Exception.CasperException: API Response: [404] The Attestation Service is no longer available.
Has anybody else seen this before? Any ideas on how to proceed?

This repo is out of date and will really only work if you have auth_tokens
that were generated a few months ago. You'll want to check out the Casper
Developer console for being able to login and such, but it does cost money.
https://developers.casper.io
On Sat, Mar 19, 2016 at 2:17 PM, Justin Lute<EMAIL_ADDRESS>wrote:

I finally have what seems to be a well-constructed .login method with
valid credentials. On my first attempt, I received this, and I'm uncertain
what to make of it.
Traceback (most recent call last):
File "snapchat.py", line 78, in
main()
File "snapchat.py", line 31, in main
s.login(username, userpassword, gmail, gpasswd, casper_api_key,
casper_api_secret)
File "build/bdist.linux-x86_64/egg/snapy/init.py", line 175, in login
File "build/bdist.linux-x86_64/egg/snapy/API.py", line 32, in
getSnapchatAttestation
File "build/bdist.linux-x86_64/egg/snapy/Agent.py", line 15, in get
File "build/bdist.linux-x86_64/egg/snapy/Agent.py", line 47, in request
snapy.Exception.CasperException: API Response: [404] The Attestation
Service is no longer available.
Has anybody else seen this before? Any ideas on how to proceed?
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub
https://github.com/rxw/snapy/issues/30

I have paid the subscription fee for the Casper API, and I have a set of valid API keys. I have included those keys in the Snapchat login method.
Are the credentials actually just hard-coded in this function? Are my own new/fresh API keys possibly being ignored?

Ah right on. I still think this repo needs updating to work with the new Casper API model. I don't have the money to pay for API keys to get this repo working but if @liamcottle doesn't mind generating me some free keys I'd get this up and running ;)

Chiggins, I can temporarily loan you an API key if you're able and interested in fixing up this repo.

@Chiggins can you use an auth token generated by the Android Casper app? If so, what does one do with the auth token?

Nope, doesn't work. At least not last I tried.
On Apr 19, 2016 11:02 PM, "Bassir"<EMAIL_ADDRESS>wrote:

@Chiggins https://github.com/Chiggins can you use an auth token
generated by the Android Casper app? If so, what does one do with the auth
token?
—
You are receiving this because you were mentioned.
Reply to this email directly or view it on GitHub
https://github.com/rxw/snapy/issues/30#issuecomment-212245590

@Chiggins Well, I guess we just have to wait for @liamcottle to finish his cheaper username-based access service.


HIVE-26522: Added test for HIVE-22033 regarding delegation token renewal

What changes were proposed in this pull request?
Added a test for delegation token renewal that was fixed as part of HIVE-22033
Why are the changes needed?
For future regression tests
Does this PR introduce any user-facing change?
No
How was this patch tested?
Unit test added tests successfully

@prasanthj If this looks good can we go ahead and merge this?


Is this project dead?

There are no new versions since 2018 and no new commits since 2019, are you still working on this project?

Yes. There is nothing really to change. The USB standard is fixed and no
one has made breaking changes in Python lately.
On Mon, 17 Oct 2022, 21:12 Snogard, @.***> wrote:

There are no new versions since 2018 and no new commits since 2019, are
you still working on this project?
—
Reply to this email directly, view it on GitHub
https://github.com/zeth/inputs/issues/112, or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAHG3JSH35MUD2IAYBYTQ53WDWXL5ANCNFSM6AAAAAARHNDQ5E
.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>

i understand, thanks for you respense :)


[StimulusBundle] Add stimulus_outlet() twig function

Description
Do you have plans to add a stimulus_outlet() twig function in symfony/stimulus-bundle?
https://stimulus.hotwired.dev/reference/outlets
Example
{{ stimulus_outlet('controllerName', 'targetControllerName', 'cssSelector') }}

Yes! In fact, it’s partially done - https://github.com/symfony/webpack-encore-bundle/pull/206 - someone just needs to take that work, move it here and finish it. It can be anyone - we can give credit to the original author if someone builds off of it, so that’s not a problem :)

This can be closed as this was implemented in https://github.com/symfony/ux/pull/942 just differently


AWS Route53 alias record will be imported with TTL

AWS Route53 alias record will be imported to route53_record.tf like below.
resource "aws_route53_record" "AAAAAAAAA_example-net-_A" {
  alias {
    evaluate_target_health = false
    name                   = "example.net"
    zone_id                = "AAAAAAAAA"
  }

  name    = "example.net"
  ttl     = "0"
  type    = "A"
  zone_id = "${aws_route53_zone.example-net.zone_id}"
}

However, ttl is not required for alias record.
cf: AWS: aws_route53_record - Terraform by HashiCorp

I think you got error about Conflicts with alias
https://github.com/terraform-providers/terraform-provider-aws/blob/e5073b94c8469d18fefc8382e8b0fd20334621b1/aws/resource_aws_route53_record.go#L83
It's know issue(https://github.com/GoogleCloudPlatform/terraformer/issues/25) terraformer can't get today details about each field.
Best solution today know delete ttl   = "0" from tf files and run terraform plan.

It's know issue(#25) terraformer can't get today details about each field.

Exactly. I understand that this issue is to be solved in #25 . Thanks.


Episode Idea : Performance/APM Tools + Kubernetes

Tracing tools are crucial as APM (Application performance management).
Those tools ease troubleshooting and debugging.
i.e:
https://sentry.io/
https://docs.newrelic.com/docs/integrations/host-integrations/host-integrations-list/kubernetes-monitoring-integration

Jaeger is an open-source CNCF project for (distributed) application tracing and they have Kubernetes templates available. Maybe that’s an interesting topic?


Add start reqs

First Draft for Installation&Troubleshooting Guide

As there have been several instances of problems in different hardware and software settings, I see it as valuable to provide easy and early information about incompatablilites.

For my understanding. Did we have any instances where people with Linux had such problems? I know more or less exclusively of windows and mac users. And for those, the script wont change anything.


BUG: Fix ref bug using weakref

In https://github.com/mne-tools/mne-python/pull/11205 you can see reference problems pop up on CircleCI, GH Actions, and Azure when we assert that garbage can be collected properly on plotter close. This is because PyQt5/PyQt6 appear to have issues when signal.connect is called using a partial of a bound method -- gc can't seem to resolve these on its own. I think we can fix them using weakref.WeakMethod, which I've done here.
Also becomes more selective about error resolution by only allowing disconnect errors when it's a separator (i.e., action.text() == '', since addSeparator actually creates a QAction in the toolbar).
To verify this is the correct fix, though, we should try using this branch in https://github.com/mne-tools/mne-python/pull/11205 and make sure CIs come back green.

Okay ea31499 is green running the improved MNE-Python tests from mne-tools/mne-python#11205, I'm going to revert the use of that branch. Then once that comes back green, I think we should merge and cut a new release!

Looks like I spoke too soon before. To make PySide6 happy I had to change a bunch of self.main = main to self.weakmain = weakref.ref(main) in the child dialog classes. I also refactored the speed tests to use a proper class rather than global variables, which I think is a cleaner (and more DRY) design for something that's meant to preserve and update states.
Tests passed with my more complete MNE-Python tests (from my mne-python check branch) on 9ffadf0, so I'll push a commit to revert using that branch in this PR, then hopefully we can merge and release.

Thank you very much @larsonergood to know that gc has


Support for v1alpha0

What would you like to be added:
I reached out to @robscott on Slack to ask when this project might lock/release v1alpha1 -- in other words, when will v1alpha1 no longer be a moving target, subject to possibly breaking changes? Rob indicated there has been discussion about possibly tagging v1alpha1 in Q3 or Q4 of this year (2020). Even though the project is still in alpha, the CRDs are useful, and there are reasons to use them. However, until v1alpha1 is locked, people are unable to safely leverage the CRDs from this project because v1alpha1 today may not be the same as v1alpha1 next week.
To that end I would like to propose one of the following:

Create a branch support/v1alpha0 from the project's main branch and set the schema version to v1alpha0 on support/v1alpha0, or...
Set the schema version to v1alpha0 on the the project's main branch

In either case, there would be explicit messaging that:

There is no support for v1alpha0
There are no plans for any conversion webhooks for automated upgrade to v1alpha1. It would be on consumers of this project and its CRDs to provide these webhooks.

Both of the above solutions provide a clear upgrade path for resources created from the CRDs in the project today to resources based on v1alpha1 when it is released. My personal preference is for the support branch because only it creates a locked version of the project's CRDs. Setting the main branch to v1alpha0, while providing an upgrade path, still leaves us with a moving target.
Why is this needed:
VMware is leveraging this project's CRDs as a rally point for load balancer-related features. Our schedule is incongruent with the timeline for the Service APIs v1alpha1 plan-of-record. Because we know others will also be targeting v1alpha, we want to avoid a situation where resources are created from CRDs based on v1alpha1 as it is today and then others expect v1alpha1 to represent the state of the CRDs when v1alpha is tagged later this year.

Thanks for starting this discussion! I think the current state of the repo is confusing at a minimum. We've been using the v1alpha1 version despite not actually releasing a final v1alpha1 API. Anyone browsing this repository could easily assume that this represents our v1alpha1 release. I'd personally prefer transitioning to v1alpha0 on the main branch until we actually reach a point we're ready to release as v1alpha1.
I completely agree with your suggestions that v1alpha0 would not be supported and that there would be no plans for any kind of conversion webhooks to upgrade to v1alpha1. This would effectively represent our pre-alpha work.
As far as providing a locked v1alpha0 release, we could also explore creating a v1alpha1 branch to contain the work towards the v1alpha1 release, and leave v1alpha0 alone but that could potentially get confusing as far as maintaining other areas such as the docs and the website. I'm not sure what the best approach here might be, but I'm hesitant to freeze/tag a release as v1alpha0 since I don't think anything we have right now is particularly stable. Anything we froze at right now would feel rather arbitrary and not particularly representative of a proper API.
Maybe implementations that wanted to use v1alpha0 could lock to a specific commit? At least by moving to v1alpha0 CRDs it would be clearer that these are not part of a v1alpha1 API, something that will actually be frozen when it is released.
/cc @jpeach @danehans @bowei

Hi @robscott,
Thank you for such a fast and thoughtful response!

Maybe implementations that wanted to use v1alpha0 could lock to a specific commit? At least by moving to v1alpha0 CRDs it would be clearer that these are not part of a v1alpha1 API, something that will actually be frozen when it is released.

To be super clear, it's not a commit issue so much as it is the CRDs. I agree that even setting the main branch to v1alpha0 is better than what we have today, because this gives us a clear upgrade path from something to v1alpha1. As it is, anyone publishing resources from today's CRDs are potentially in for a bad time when v1alpha1 is finally tagged, because how do you go from v1alpha1 to v1alpha1?

@akutz -- if we expect significant usage of the stuff that is public now, I would simply launch as v1alpha2 (very little impact on all I would think)
Going backwards in time is pretty painful.
What do you think?

Sorry I missed following up on this one. I know we'd discussed it in a couple meetings when the issue was raised and likely also on Slack but unfortunately the conclusion never made it back here. If I'm remembering correctly, the suggestion was that a fork was more appropriate here since we couldn't find a precedent for a v1alpha0 version. I could be missing some details on that. We're very close to a final v1alpha1 release which should finally solve this with a usable API release outside of a fork or pinning to a commit.


Invalid sample --custom condition for az image builder wait

The example for az image builder wait under https://docs.microsoft.com/en-us/cli/azure/image/builder?view=azure-cli-latest#az-image-builder-wait-examples shows a custom condition --custom "lastRunStatus.runState!='running'". However, the condition is case sensitive, so this particular example will immediately finish waiting. A correct sample would be --custom "lastRunStatus.runState!='Running'"

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

ID: f8e24b37-83e6-abcb-65f3-8e10aca64fa5
Version Independent ID: 803fa652-41f2-dcdd-ed5b-2e60b11186af
Content: az image builder
Content Source: latest/docs-ref-autogen/image/builder.yml
Service: virtual-machines
GitHub Login: @rloutlaw
Microsoft Alias: routlaw

Compute

@roycornelissen Thank you for reaching out, we are looking into it.


Placing/Removing breakpoint opens a new file in a different module

Sometimes when I place/remove/toggle a breakpoint (on some lines), it opens a different file as if It's trying to take me to the same address but in different module.
Breakpoints work fine though.
Very much reproducible in projects with lots of modules.

Not happening after recent changes.

Bug: Opens/Switches the file and scroll to the last IP position when placing a breakpoint.
https://github.com/EpicGamesExt/raddebugger/assets/29519295/579f8cca-c64d-410c-9745-16341d877cc3
Very much reproducible with the following steps:

Start debugging
Place a few breakpoints that you know will not hit right away
Place and breakpoint and perform the action to hit it.
Press "Continue"
Try placing the breakpoints again and observe the behavior


chore(main): release 0.2.0

:robot: I have created a release beep boop
0.2.0 (2024-12-12)
Features

Add azure key-prefix field (#40) (a49f53d)
Add id search user or role (#43) (68651b2)
Add load tab data (#45) (edebbc7)
connect compute (#60) (633c94c)
get token (#51) (02b5176)
undrop tabulars (#44) (b250595)

Bug Fixes

callback.vue user import (#49) (f832aab)
refresh tab after delete (#47) (283644d)
rename-project (#58) (15c7309)
rust build location (#38) (6d54659)

This PR was generated with Release Please. See documentation.

:robot: Created releases:

v0.2.0
:sunflower:


Fix plumbing of passwordOpt for RedisCluster.

Apologies, my fix in #59 was incomplete. It added passwordOpt only to RedisClusters private constructor, rather than exposing it fully.
This patch should address that.

thanks :D

Version 2.2.5 :crossed_fingers:


circe-generic-extras not published for Scala 2.13

Hello,
Similar to #1958 I guess. See https://repo1.maven.org/maven2/io/circe/circe-generic-extras_2.13/.
[error]   Not found
[error]   not found: /home/runner/.ivy2/localio.circe/circe-generic-extras_2.13/0.14.2/ivys/ivy.xml
[error]   not found: https://repo1.maven.org/maven2/io/circe/circe-generic-extras_2.13/0.14.2/circe-generic-extras_2.13-0.14.2.pom

Same for circe-optics apparently
[error]   not found: https://repo1.maven.org/maven2/io/circe/circe-optics_2.13/0.14.2/circe-optics_2.13-0.14.2.pom

@armanbilge Is correct.  We're planning on doing those releases after we're confirmed in a good spot with the circe release.  We're checking out some other issues to make sure we can move forward and proliferate that onward.

I'm going to leave this open though so other folk see this as well if they come in with questions :)

This has been published, but circe-generic-extras has no guarantees that it follows the same semver since if it releases a patch it gets 1 higher than the circe-core versioning.

@zmccoy Thanks! Maybe it was a coincidence the version number was the same so far, how how the original author used to release. Anyway, we're now using distinct version for our build now so scala-steward can successfully push upgrades.
Thanks a lot!


Cursor on hover should indicate pointer/clickability of districts, anything else clickable

Also tabindex 0 and aria group-- this can be separate but is related

Need to split up map overlay components so that z index works


How to say path-to-fstar in .emacs

Especially if you're on Windows/Cygwin, and your FStar bin is in E:\FStar\bin.

(setq-default fstar-executable "/opt/fstar/bin/fstar.exe") is that what you are looking for ?

I had that but it didn't work with my (non-cygwin) Emacs.
I've now got cygwin's emacs-w32, and
(setq-default fstar-executable "/cygdrive/e/FStar/bin/fstar.exe")

seems to work. E:/FStar/bin doesn't.

You have to know whether you're using a native emacs or a cygwin emacs... people have been known to use both.
@sishtiaq one way to make usability better is, if cygpath is in scope, to run the arguments passed to fstar through cygpath -m


Recipe List

Recipe Application: Recipe-App
🌟Features:

[x] - The recipe model is created.
[x] - The recipe controller is created
[x] - The related views for the recipe list are created.
[x] - The route is optimized to the routing between views.

Hi @baqar-abbas 👋,
Thank you so much 🙏  for reviewing and approving my pull request.
Your nice feedback is really appreciated 🙏.


[Feature]: Custom lang for littlePlanet button

What do you want?
Is there any way to custom the hover title of littlePlanet  button:

Why do you want it?
use origin lang parameters to custom the title
How do you implement it?
No response
Are you interested in developing this feature?

[ ] Yes, I am interested in developing this feature
[X] No, I am not interested in developing this feature

Hey! ok, I'll add this feature in the next release.

Added in the incoming release!


python312Packages.tablib: 3.5.0 -> 3.6.0

Automatic update generated by nixpkgs-update tools. This update was made based on information from passthru.updateScript.
meta.description for python312Packages.tablib is: Format-agnostic tabular dataset library
meta.homepage for python312Packages.tablib is: https://tablib.readthedocs.io/
meta.changelog for python312Packages.tablib is: https://github.com/jazzband/tablib/raw/v3.6.0/HISTORY.md
Updates performed

Ran passthru.UpdateScript

To inspect upstream changes
Impact
Checks done

built on NixOS
The tests defined in passthru.tests, if any, passed
found 3.6.0 with grep in /nix/store/wjkj3l2idczv7vv6qg993w49c14kqzn5-python3.12-tablib-3.6.0
found 3.6.0 in filename of file in /nix/store/wjkj3l2idczv7vv6qg993w49c14kqzn5-python3.12-tablib-3.6.0

Rebuild report (if merged into master) (click to expand)

11 total rebuild path(s)

11 package rebuild(s)

First fifty rebuilds by attrpath
netbox
netbox_3_6
netbox_3_7
peering-manager
prospector
python311Packages.django-import-export
python311Packages.django-tables2
python311Packages.pylint-django
python311Packages.tablib
python312Packages.tablib
tandoor-recipes

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/wjkj3l2idczv7vv6qg993w49c14kqzn5-python3.12-tablib-3.6.0 \
  --option binary-caches 'https://cache.nixos.org/ https://nix-community.cachix.org/' \
  --option trusted-public-keys '
  nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

(The Cachix cache is only trusted for this store-path realization.)
For the Cachix download to work, your user must be in the trusted-users list or you can use sudo since root is effectively trusted.
Or, build yourself:
nix-build -A python312Packages.tablib https://github.com/r-ryantm/nixpkgs/archive/73cfc95f65a133664e53fe6d1be9a48940d3c837.tar.gz

Or:
nix build github:r-ryantm/nixpkgs/73cfc95f65a133664e53fe6d1be9a48940d3c837#python312Packages.tablib

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/wjkj3l2idczv7vv6qg993w49c14kqzn5-python3.12-tablib-3.6.0
ls -la /nix/store/wjkj3l2idczv7vv6qg993w49c14kqzn5-python3.12-tablib-3.6.0/bin

Pre-merge build results
We have automatically built all packages that will get rebuilt due to
this change.
This gives evidence on whether the upgrade will break dependent packages.
Note sometimes packages show up as failed to build independent of the
change, simply because they are already broken on the target branch.
Result of nixpkgs-review --extra-nixpkgs-config '{ allowInsecurePredicate = x: true; }' run on x86_64-linux 1

4 packages failed to build:

prospector
prospector.dist
python311Packages.django-import-export
python311Packages.django-import-export.dist

12 packages built:

netbox (netbox_3_7)
netbox_3_6
peering-manager
python311Packages.django-tables2
python311Packages.django-tables2.dist
python311Packages.pylint-django
python311Packages.pylint-django.dist
python311Packages.tablib
python311Packages.tablib.dist
python312Packages.tablib
python312Packages.tablib.dist
tandoor-recipes

Maintainer pings

@ofborg build python311Packages.django-import-export
fails for me, nixos x86_64

Already on master.