Possible to use variables with spaces?

Is it possible to have variables defined that have spaces in the name like "a Bc" that can used in an overall expression e.g.  num = "a Bc" + 2;?

Not at the moment, no. Legal variable names must only consist of regular letters (regex [a-zA-Z]+). Can you tell me more about your use case? Maybe we can realize it some other way.

When taking in data from various data sources e.g. CSV we arent able to reformat some of headings which may contain spaces. We've had a fork of JACE that allowed use to treat variable names with quotes but with JACE and our Fork not really being maintained it would be nice get Sonic plugged in.

I'll have a look at treating quoted strings as a single token. Maybe we can find a way which won't add measurable overhead to the token parser. No promises, though.

I've added the functionality on the branch linked to this issue.
You can use quoted symbol (and function) names by using single quotes (') like that:
var evaluator = Evaluator.CreateWithDefaults();

// use single quotes inside string
var expression = "2 + 'foo bar'";

// define variables, const, functions, etc. without single quotes
var variables =  new Dictionary<string, double> { { "foo bar", 3 } }

var result = evaluator.Evaluate(expression, variables);

This will allow you to use quoted and unquoted representation to refer to the same variables, constants, and functions. I.e.
var expressionA = "'a' + b"

// and

var expressionB = "a + 'b'"

// are equivalent.

So if I understand your use-case correctly, you should be able to do something like this:
var expression = $"1234 + '{csvHeaderName}'"
var variables = new Dictionary<string, double> { { csvHeaderName, correspondingValue } }

without adding quotes to your headers.
Would you mind giving the implementation on the branch a test drive with your data and report any issues back to this thread?

Going to get some testing in for the next couples days to make sure that all my requirements are covered but so far looking good.

@vlow is this feature still something that can be put into Sonic?


feat: added form part

@Shurtu-gal , @starkjay21 , please review

@Shurtu-gal , please review

@Shurtu-gal , please review.

@Shurtu-gal , please review

@Srish-ty I have fixed the problems with firebase.

@Shurtu-gal  , please review

Make the width of prefix input smaller as it will not be more than 3 characters
Also, remove the up and down arrows that appear in the input box

Minor Change
Change Single to individual

Minor Change Change Single to individual

changed. https://github.com/dscnitrourkela/project-udon/pull/11/commits/1ef30fed7a64ee8e6eae3a8b76fb57a4a4130c2d

Member

https://github.com/dscnitrourkela/project-udon/pull/11/commits/dcb8095aa0a14707dd0bcf5bc80fccaca5e26f8c

@Shurtu-gal , please review.

@all-contributors please add @Srish-ty for code


arangorestore taking couple of days to restore complete data

My Environment

ArangoDB Version:        3.3.8
Storage Engine:             RocksDB
Deployment Mode:       single server
Deployment Strategy:   Kubernetes
Infrastructure:               GKE
Operating System:        debian 9
Total RAM in your machine:        180GB
Disks in use:        SSD
Used Package:             Docker

Component, Query & Data
Affected feature:

Arangorestore
Dataset:

Size of your Dataset on disk:

80GB
Replication Factor & Number of Shards (Cluster only):

Steps to reproduce

Take backup of arangodb using arangodump
restore using arangorestore

Problem:
The arangorestore is taking more than 2 days(48hrs) to restore around 80GB of data.
Expected result:
arangorestore should take less time.
Any process or method can we use to speedup the restore process?

ArangoDB 3.3 is not supported anymore since November 15th, 2019. Newer versions feature a --threads option and other improvements. Please upgrade to at least 3.7, as support for 3.6 ends this month.


docker: add a script to stop apollo containers

@Capri2014 @xiaoxq  Yeah, agree.
One thing I concerned is that calling "dev_start.sh --stop" looks a little little ambiguous.

Haha, that also makes sense. Let's just take it as a temporary effort. I'm doing the migration to manage containers wisely: https://github.com/ApolloAuto/apollo/tree/master/docker/canary
I will move it to canary/stop_container.sh when things are ready.

@xiaoxq Yeah, I have noticed that a new script/tool is under developing.
And I was wondering if it would be better to use a common name for the script instead of being with the specific operation("start/stop...").
If so, then we can take 'start/stop' as sub commands, and developers can do all the setups  with just  remembering only one script .
Then the commands may look like as follow:
(I will take "canary.py" as the script name here for demostration.)
canary.py start [options]   # prepare and start containers    = dev_start.sh
canary.py enter             # enter docker environment        = dev_into.sh
canary.py stop              # stop all containers             = dev_start.sh stop
canary.py clean    # clean the resources that no longer used  = cleanup_resources.sh

As a side effect, the logic of  the script may become a little more complicated.
Inspiration comes from VBoxManage
(hmm, seems no much improve :-(
Just FYI.


3.4

You have an Azure environment that contains multiple Azure virtual machines.
You plan to implement a solution that enables the client computers on your on-premises network
to communicate to the Azure virtual machines.
You need to recommend which Azure resources must be created for the planned solution.
Which two Azure resources should you include in the recommendation? Each correct answer
presents part of the solution.
NOTE: Each correct selection is worth one point.
A. a virtual network gateway
B. a load balancer
C. an application gateway
D. a virtual network
E. a gateway subnet

DE


Add infra agent config option

What does this PR do?
Merge core payload flags into a single core_agent flag available for users to disable.
Motivation
This is going to be used for Error Tracking Standalone where Infrastructure Monitoring is not needed, and makes it easier for users to understand and disable it. Those 4 flags are also disabled if users only want Log Collection through the agent (see public doc); process is now easier and less error prone.
https://datadoghq.atlassian.net/browse/ERRORT-4748

/merge

/merge

/merge


fix(log): Stop logging peer IP addresses, to protect user privacy

Motivation
We don't want to log peer IP addresses, because lists of peers are privacy and security sensitive.
Close #3320.
Complex Code or Requirements
This PR modifies some canonical IP address code, but these changes shouldn't impact network compatibility. (If they do, we'll see it in the integration tests.)
Solution
New types and functions:

Add a PeerSocketAddr type which hides its IP address, but shows the port
Make converting into PeerSocketAddr easier
Add a canonical_peer_addr() function

Privacy fixes:

Manually replace SocketAddr with PeerSocketAddr in zebra-network
Stop logging peer addresses in RPC code

Related fixes:

Update outdated IPv4-mapped IPv6 address code
Make addresses canonical when deserializing

Review
This is a large change, so we might not want to schedule any other zebra-network work until it's merged. (@mpguerra I've checked the existing zebra-network tickets in this sprint and they seem fine.)
We might also want to make it a high priority for review, I'll leave that up to Pili.
Reviewer Checklist

[ ] Will the PR name make sense to users?

[ ] Does it need extra CHANGELOG info? (new features, breaking changes, large changes)

[ ] Are the PR labels correct?
[ ] Does the code do what the ticket and PR says?

[ ] Does it change concurrent code, unsafe code, or consensus rules?

[ ] How do you know it works? Does it have tests?

Follow Up Work
Check for IP addresses of peers that are logged in other ways: going forward this should be considered a bug.

I manually ran zebrad start, and I got this output:
...
2023-05-10T23:44:31.201494Z  INFO {zebrad="513fb74" net="Test"}:add_initial_peers: zebra_network::config: resolved seed peer IP addresses seed="<IP_ADDRESS>:38233" remote_ip_count=1
2023-05-10T23:44:31.201746Z  INFO {zebrad="513fb74" net="Test"}:add_initial_peers: zebra_network::config: resolved seed peer IP addresses seed="testnet.is.yolo.money:18233" remote_ip_count=1
2023-05-10T23:44:31.201782Z  INFO {zebrad="513fb74" net="Test"}:add_initial_peers: zebra_network::config: resolved seed peer IP addresses seed="dnsseed.testnet.z.cash:18233" remote_ip_count=2
2023-05-10T23:44:31.201789Z  INFO {zebrad="513fb74" net="Test"}:add_initial_peers: zebra_network::config: resolved seed peer IP addresses seed="testnet.seeder.zfnd.org:18233" remote_ip_count=3
2023-05-10T23:44:31.201804Z  INFO {zebrad="513fb74" net="Test"}:add_initial_peers: zebra_network::peer_set::initialize: connecting to initial peer set initial_peer_count=10 initial_peers={v4redacted:5823
3, v4redacted:18233, v4redacted:18233, v4redacted:18233, v4redacted:58233, v4redacted:58233, v4redacted:18233, v4redacted:18233, v4redacted:38233, v4redacted:38233}
2023-05-10T23:44:31.651242Z  INFO {zebrad="513fb74" net="Test"}:add_initial_peers: zebra_network::peer_set::initialize: an initial peer connection failed successes=1 errors=1 addr=v4redacted:18233 e=Connection refused (os error 111)

So this change seems to be working as expected for initial peers. I haven't seen any ongoing peer logs yet.
Configured seed peer DNS and IP addresses are ok to log, because they are stored on the disk already in zebrad.toml. But we don't log the results of the DNS query any more.

I also checked that ongoing peer logs don't show IP addresses any more, here are some debug logs:
2023-05-10T23:50:41.982150Z DEBUG {zebrad="513fb74" net="Test"}:{peer=Out("v4redacted:18233")}: zebra_network::peer::connection: finished receiving peer response to Zebra request response=Block { height: 55372, hash: 00131228c15343594ad4a539f132c846961718f7d5231be4cdae1f271cac941f }
2023-05-10T23:50:41.982174Z DEBUG {zebrad="513fb74" net="Test"}:sync:try_to_sync:extend_tips: zebra_network::peer::connection: sending request from Zebra to peer state=AwaitingRequest request=BlocksByHash(1)
2023-05-10T23:50:41.982250Z DEBUG {zebrad="513fb74" net="Test"}:sync:try_to_sync:extend_tips: zebra_network::peer::connection: sending request from Zebra to peer state=AwaitingRequest request=BlocksByHash(1)
2023-05-10T23:50:42.076474Z DEBUG {zebrad="513fb74" net="Test"}:sync:try_to_sync:extend_tips: zebra_network::peer::connection: received peer response to Zebra request handler=BlocksByHash { pending_hashes: 1, blocks: 0 } msg=block { height: 55373, hash: 00129132a7cea26d690ae01b0d14c4a65ef9fe381d3fb87ce89e85fb23168d41 }
2023-05-10T23:50:42.076511Z DEBUG {zebrad="513fb74" net="Test"}:{peer=Out("v4redacted:30835")}: zebra_network::peer::connection: finished receiving peer response to Zebra request response=Block { height: 55373, hash: 00129132a7cea26d690ae01b0d14c4a65ef9fe381d3fb87ce89e85fb23168d41 }
2023-05-10T23:50:42.076540Z DEBUG {zebrad="513fb74" net="Test"}:sync:try_to_sync:extend_tips: zebra_network::peer::connection: sending request from Zebra to peer state=AwaitingRequest request=BlocksByHash(1)
2023-05-10T23:50:42.076713Z DEBUG {zebrad="513fb74" net="Test"}:sync:try_to_sync:extend_tips: zebra_network::peer::connection: sending request from Zebra to peer state=AwaitingRequest request=BlocksByHash(1)
2023-05-10T23:50:42.108654Z DEBUG {zebrad="513fb74" net="Test"}:sync:try_to_sync:extend_tips: zebra_network::peer::connection: received peer response to Zebra request handler=BlocksByHash { pending_hashes: 1, blocks: 0 } msg=block { height: 55373, hash: 00129132a7cea26d690ae01b0d14c4a65ef9fe381d3fb87ce89e85fb23168d41 }
2023-05-10T23:50:42.108699Z DEBUG {zebrad="513fb74" net="Test"}:{peer=Out("v4redacted:18233")}:msg_as_req{msg="block"}: zebra_network::peer::connection: received inbound peer message state=AwaitingResponse(BlocksByHash { pending_hashes: 1, blocks: 0 }) msg=block { height: 55373, hash: 00129132a7cea26d690ae01b0d14c4a65ef9fe381d3fb87ce89e85fb23168d41 }
2023-05-10T23:50:42.108721Z DEBUG {zebrad="513fb74" net="Test"}:{peer=Out("v4redacted:18233")}:msg_as_req{msg="block"}: zebra_network::peer::connection: got block message unsolicited or from canceled request msg=block { height: 55373, hash: 00129132a7cea26d690ae01b0d14c4a65ef9fe381d3fb87ce89e85fb23168d41 }
2023-05-10T23:50:42.108739Z DEBUG {zebrad="513fb74" net="Test"}:{peer=Out("v4redacted:18233")}: zebra_network::peer::connection: ignoring peer message: not a response or a request unused_msg=block { height: 55373, hash: 00129132a7cea26d690ae01b0d14c4a65ef9fe381d3fb87ce89e85fb23168d41 } self.state=AwaitingResponse(BlocksByHash { pending_hashes: 1, blocks: 0 })
2023-05-10T23:50:42.143668Z DEBUG {zebrad="513fb74" net="Test"}:sync:try_to_sync:extend_tips: zebra_network::peer::connection: received peer response to Zebra request handler=BlocksByHash { pending_hashes: 1, blocks: 0 } msg=block { height: 55374, hash: 00a0bb9c9e5d9f91198f8c8cafe189cd93a5c29a2de436d365a240336cc5bd40 }
2023-05-10T23:50:42.143700Z DEBUG {zebrad="513fb74" net="Test"}:{peer=Out("v4redacted:18233")}: zebra_network::peer::connection: finished receiving peer response to Zebra request response=Block { height: 55374, hash: 00a0bb9c9e5d9f91198f8c8cafe189cd93a5c29a2de436d365a240336cc5bd40 }

The address redactions also work on peer errors and block gossips:
2023-05-11T00:47:37.447952Z  INFO {zebrad="513fb74" net="Main"}:{peer=Out("v4redacted:8233")}:msg_as_req{msg="inv"}:inbound:download_and_verify{hash=0000000000451cab4c0aeeeec094e9a0dda9a33e1adfe83e322a54a9fbf04ab6}: zebrad::components::inbound::downloads: downloaded and verified gossiped block height=Height(2081747)
2023-05-11T00:47:39.631909Z  INFO {zebrad="513fb74" net="Test"}:crawl_and_dial{new_peer_interval=61s}: zebra_network::peer_set::candidate_set: timeout waiting for peer service readiness or peer responses
2023-05-11T00:48:35.634620Z  INFO {zebrad="513fb74" net="Main"}:{peer=Out("v4redacted:8233")}:msg_as_req{msg="inv"}: zebra_network::peer::connection: inbound service is overloaded, closing connection remote_user_agent="/MagicBean:5.4.0/" negotiated_version=Version(170100) peer="v4redacted:8233" last_peer_state=Some("AwaitingRequest::In::Req::AdvertiseTransactionIds") remote_height=Height(2081735) cached_addrs=1 connection_state=AwaitingRequest
2023-05-11T00:48:35.634604Z  INFO {zebrad="513fb74" net="Main"}:{peer=Out("v4redacted:2838")}:msg_as_req{msg="inv"}: zebra_network::peer::connection: inbound service is overloaded, closing connection remote_user_agent="/MagicBean:5.4.1/" negotiated_version=Version(170100) peer="v4redacted:2838" last_peer_state=Some("AwaitingRequest::In::Req::AdvertiseTransactionIds") remote_height=Height(2081724) cached_addrs=1 connection_state=AwaitingRequest

@mergifyio update

Failed due to #6667


"Nativeness" of IPFS Desktop

As of building #866, we clearly verify that the app could be much better and simpler if done natively or with something else than Electron that is even snappier/faster. Although, the approach of going full native have pros and cons. I'd like to discuss with you all if this is an effort we should focus on or not.
How
By going native, we'd need to create separate macOS, Windows and Linux apps. During transition period, we could eventually build one by one and keep the Electron version alongside.

For macOS: we could write an app natively in Swift.
For Windows: we could write an app natively in C#.
For Linux: we could either keep the Electron version or see if we could manage to do something else with Qt perhaps. To refer that Linux is the OS where things can vary more and is harder to support.

We could perhaps have a shared library in C++ if needed for something like a ipfsd-ctl. Or perhaps we wouldn't even need it.
Cons
Usually people start by the pros, but I thought about starting with the negative aspects of going native:

We'd need to support three different technologies.
The above requires more work to keep the three platforms in parity of functionality.
We'd need to, perhaps, ditch the "so-deep" integration with Web UI. It's not that deep: it's just the language and three preferences. We could just open the Web UI on user's default browser.

Pros
On the bright side of the situation:

Native means native.
Better functionality:

Right now, the macOS app is the one which seems more native because Electron uses the native menus. On the other hand, on Windows, Electron doesn't use the native menu's and doesn't feel as native.
There are some features really hard to implement using the current solution. Please see https://github.com/ipfs-shipyard/ipfs-desktop/issues/678#issuecomment-472479791 for an example.
By being native we could perfect the functionality.

Smaller binaries.
Faster.

I'd really like your thoughts on this. There are some things I'd like to implement (native integrations) but that won't be really easy to do with Electron/Node.js. Not impossible, just harder.
This would be a big change and would require a lot of work. Would it be worth it?

Not entirely "native" but DeskGap could be a viable lighter-weight alternative too, it uses the OS webview rather than bundling chromium. Might we worth experimenting with.

@cwaring didn't know that! I'll keep an eye of them. They're still missing really important APIs for us such as Tray.

Dear friends, just updated the main comment. Please read through it and leave your comments. /cc @cwaring @olizilla @alanshaw @lidel @fsdiogo 😄

My concerns about switching from a single language/library to three would be related to PMing challenges:

spreading ipfs-desktop team too thin, or
overhead of the need to sync between implementations
(especially if team grows and development/bugfixes are done by different people)

That being said, if we keep app's surface small, getting MVP in sync on all three platforms would be mostly a one-time effort. Everything else would be platform-specific native integrations that do not block/lag other implementations.

@lidel for me, the main feature of IPFS Desktop is to keep running IPFS in the background. Everything else are native integrations (drag'n'drop, add to context menu, protocol handling, etc...).
I can't see many features that could be considered 'attached' to what IPFS Desktop is. Perhaps if we added the possibility of running multiple versions/nodes yes, that would be required to be in all implementations, but those are good functionalities. I think the main point is to provide good and reliable native integrations.
So... I agree with you and I believe that basically what we have now is IPFS running + native integrations. The only thing we'd need to ditch is the Web UI inside a Window perhaps. But I don't think that'd be a really big/important change IMO. We could even tell that Web UI's running through Desktop with a URL query value. What do you think?

I'd like to improve the stability of what we have first. I think 0.7 is a good release, but I know we can make it better.
We're a small team with a large number of websites and apps to look after, so I'd rather we spend the next quarter improving what we have before we explore starting again.
I do totally take your point @hacdias that now we have reduced the scope of IPFS Desktop right down, it'd make a lot of sense to try out a fully native alternative, but don't forget that we need to also come up with reliable installers and update mechanism for each platform, it just feels like we should spend our time improving proto.school and js-ipfs and webui in time for camp.ipfs.io as a much higher priority.

Something just caught my eye: https://wails.io/

cc @SgtPooki
related to #2184

Something just caught my eye: https://wails.io/

I think Tauri would work better tbh, as there is Android and iOS support in the works right now, but I could be wrong here. :)

Just FYI - I tried https://github.com/fyne-io/fyne and it looks promising, but I couldn't get it to work.
I agree that Wails might IMHO be best for GO apps and especially IPFS. I would be super happy if you decide to switch to it 😉

Fyi that selfupdate is possible with wails. Example at https://github.com/achhabra2/riftshare/blob/main/internal/update/selfupdate.go

Wails maintainer here 👋 Would be happy to support your efforts if you decided to use it or do a PoC 👍

Wails maintainer here 👋 Would be happy to support your efforts if you decided to use it or do a PoC 👍

@leaanthony I attempted a small PoC with https://github.com/SgtPooki/ipfs-desktop-wails but i'm not a gopher and i'm not sure how best to execute another go-cli(https://github.com/ipfs/kubo) as a subprocess. Ideally, Kubo functionality should all exist in https://github.com/ipfs/boxo but we're not there yet.
I attempted a PoC with https://github.com/SgtPooki/ipfs-desktop-wails. But I haven't touched it in a while. I think the only blocker for me right now is figuring out how to execute Kubo on the backend (and get TS types from Kubo's go types) to allow for easy migration to Boxo in the future.
If anyone wants to help with that repo, please let me know and I can add you as a maintainer.

I attempted a PoC with https://github.com/SgtPooki/ipfs-desktop-wails. But I haven't touched it in a while. I think the only blocker for me right now is figuring out how to execute Kubo on the backend (and get TS types from Kubo's go types) to allow for easy migration to Boxo in the future.
If anyone wants to help with that repo, please let me know and I can add you as a maintainer.

I am not sure if I can be "maintainer" level, but count me interested.
Also, @SgtPooki, should we create GitHub discussion or maybe Discord channel on IPFS server to discuss this alternative implementation.
ie. I am not sure it is right move to have process fork to run Kubo, while you can just allow (for now) users to run pure Kubo or IPFS Desktop in background, while ipfs-desktop-wails is in alpha state.
Also, I was not entirely able to get the embed the IPFS (web) UI to get work from your repo,
but that should (I hope) be easy fix, if all you need is Wails to be a wrapper around it.
Later on, ipfs-desktop-wails can be bound to Boxo library and even (ideally) use Go layer instead of JavaScript one.
Anyway, I am more than happy to dive into this - I just think we need different thread for that :-/

You can expose Go structs and methods to TS via the automatic bindings and model generator. It's not perfect but works for most use cases.

I wrote this as a slack update, but moving here so it can be referenced in future

My understanding is that the conversation on Wails stalled due to the lack of resources.
Mind, the current team does not have spare cycles to do basic maintenance like updating to latest Electron (https://github.com/ipfs/ipfs-desktop/issues/2775).
Personally, I'd love to make ipfs-desktop more lean, and leave Electron behind, but rewriting with a different engine requires full-time commitment over a long period of time, which the team is not able to allocate right now.
If someone is determined to help and make this happen,
it is fine to work on this in their own repo until it is ready.
In my mind, problems that need to be solved by such person (in order):

propose new autoupdate mechanism

iiuc (https://github.com/wailsapp/wails/issues/1178) Wails seems to have no robust anser for this, there are many competing libraries with single maintainer.
we can't switch to something worse than current one based on actively maintained electron-updater with distribution based on Github Releases.

have a plan for migrating existing users that are tied to electron-updater
porting current functionality (embedding  kubo + ipfs-webui as PWA looking as native app, context menu integration on MS Windows etc)

Mind, until autoupdate story is not ready, there is no point in spending time porting functionality.

iiuc (Support Self-Updating  wailsapp/wails#1178) Wails seems to have no robust anser for this, there are many competing libraries with single maintainer.

We don't have an official updater because the feedback from the community was that people wanted to make their own as they have different needs. Not that it's hard mind: https://github.com/achhabra2/riftshare/blob/main/internal/update/selfupdate.go


style: add prettier config file to root

Proposal:

add a .prettierrc file with the following yaml properties:

trailingComma: "es5"
tabWidth: 4
semi: false
singleQuote: true

I am working on this issue!

I confess I'm in a hurry and failed to correctly review this issue, even though the request was wrong...
We are going with:

singleQuote: false


Add a WITH- macro

The manual MAKE-FILE-LOCK and RELEASE-FILE-LOCK with UNWIND-PROTECT can probably be abstracted away into a single (WITH-FILE-LOCK (...) ...) macro that abstracts it away. Would you consider adding it?

Fixing this right now

Done: https://github.com/tdrhq/file-lock/commit/d2e3a34ac849d5c038eb355e4b62cc2240b38375


SFTP listDirectory returns only 100 files

Hi,
the listDirectory method returns only 100 files.
I've tested it with MacOS Sonoma 14.6.1 and iPhone 15 Pro Simulator in XCode. As server I used the Hostmachine (Sonomo 14.6.1) and a Debian 10 system with the same behaviour.
Sorry, maybe it's not a bug but I can't find any option to override this limit.
Thanks :)

I don't know what could cause this, but there's certainly no such limit in Citadel.

Let me know if you run into any ideas on your end

Hi, I didn’t find a solution to this. But I think if there’s no such limit in Citadel, the issue can be closed. I will let you know if I will find anything what’s causing this :)

Thank you :) Even if it's not Citadel I'd love to hear the reason you might find.

I'll keep it open for my own recordkeeping

Hi, short update. I couldn't firgure out the reason for this behavior. I know it's really dirty, but I helped myself with parsing the stdout of an 'ls' command.
            let stdout = try await client.executeCommand("ls \(directory)")             let lsOut = utils.byteBufferToString(byteBuffer: stdout) ?? ""             let files = lsOut.split(separator: "\n")             let sftp = try await client.openSFTP()             for file in files {                 if (file == "." || file == "..")  {                     continue                 }                 debugPrint(file.filename)                 ...             }

If anyone else runs into this issue as well, or has any ideas about this - please do reach out


Fixing configuration for VND

I think the format is not correct for VND

You are right. Thanks for the PR.

you're welcome. Thx for all your work


Mention windows explicitly in install docs

The install docs should explicitly call out windows support.

70778d2367094d80a66c955c6dd2236efba680b2 closes.


Align info in statistic cards - key figures

Where to find the issue

statistic cards - key figures
Describe the issue

EN
Android: Explanation of Statistics
iOS: Explanation of nationwide statistics
Suggested change

use the same wording on both platforms: Explanation of nationwide statistics

In Android the string is statistics_explanation_subtitle in strings.xml
"Explanation of Statistics"
It is already changed in the release/1.13.x branch
https://github.com/corona-warn-app/cwa-app-android/blob/a29bfd73a414e5f0b550c0cc1040275299029d57/Corona-Warn-App/src/main/res/values/strings.xml#L1486-L1487
to   "Explanation of nationwide statistics" so maybe you just need to wait for 1.13.x to be released? 😀

@MikeMcC399 Great! Thanks! ... will check iOS as well...

The CWA Android 1.13.2 release shows correctly
"Explanation of nationwide statistics".
Tap on the ℹ icon on any of the statistics tiles to display the informational text.

@MikeMcC399 Thanks!


OSX with ifort 18 linking or/and threading problem

with the latest Xcode 9 and ifort the default install of develop branch (just typing make)
ends up with
...
ifort -O2 -fPIC -c -o tstiee.o tstiee.f
ifort -O2 -fPIC -c -o ilaver.o ilaver.f
ifort -O2 -fPIC -c -o LAPACK_version.o LAPACK_version.f
ifort -O2 -fPIC -lpthread -o testlsame lsame.o lsametst.o
ifort -O2 -fPIC -lpthread -o testslamch slamch.o lsame.o slamchtst.o
ld: targeted OS version does not support use of thread local variables in _for__set_signal_ops_during_vm for architecture x86_64
make[2]: *** [testlsame] Error 1

$ ifort -V
Intel(R) Fortran Intel(R) 64 Compiler for applications running on Intel(R) 64, Version <IP_ADDRESS> Build 20170811

$ clang -v
Apple LLVM version 9.0.0 (clang-900.0.37)
Target: x86_64-apple-darwin16.7.0
Thread model: posix

Is 'ld' from ifort or from xcode?

Somewhere in ifort release notes xcode6 sneaks through. Can you check in local documentation?

which ld says it's /usr/bin/ld. Could it be something to do with MACOSX_DEPLOYMENT_TARGET ?

I don't seem to have local docs (only "getting started"), perhaps due to a restricted academic license I have for ifort.

As minimum they got version numbers wrong, even for paying customers:
https://software.intel.com/en-us/articles/intel-compiler-and-composer-update-version-numbers-to-compiler-version-number-mapping
And ifort 2018 does not support Xcode 9:
https://software.intel.com/en-us/articles/get-started-installing-parallel-studio-xe-2018-macos
All after all - get your compilers right.

Oops, sorry for noise then. I somehow expected a bit more maturity from them. :-(


Registering models from third-party apps

Hello!
We wanted django-activity-stream to handle some models from third-party apps, but since it's third-party, we can't modify its apps.py/__init__.py to register them.
Older version of the docs said "You normally call register right after your model is defined (models.py) but you can call it anytime before you need to generate actions or activity streams", but that was removed in the current version, so I wonder if it still applies.
(We could create a wrapper over that third-party model and register this wrapper, but working with the model itself would be more convenient.)

We tried registering third-party model from another app's AppConfig, and it appears to be working.
Still, would be nice to get a confirmation that this is the right way of doing things.
Our current code:
from django.apps import AppConfig

class MyAppConfig(AppConfig):
    name = "myapp"

    def ready(self):
        from actstream import registry
        from django_comments.models import Comment

        registry.register(self.get_model("MyModel"))
        registry.register(Comment)

It might or might not matter that myapp is below django_comments in the INSTALLED_APPS list.


Parsing error with nfs4.x

https://github.com/sahlberg/libnfs/blob/master/nfs4/nfs4.x
thread 'main' panicked at 'called `Result::unwrap()` on an `Err` value: Error { variant: ParsingError { positives: [EOI, constant, enum_type, struct_type, union, typedef], negatives: [] }, location: Pos(55941), line_col: Pos((2088, 1)), path: None, line: "program NFS4_PROGRAM {␊", continued_line: None }', build.rs:10:14

Removing  all program statements results in another error:
thread 'main' panicked at 'non-i32 enum variant value: ParseIntError { kind: InvalidDigit }', /Users/messense/.cargo/registry/src/github.com-1ecc6299db9ec823/fastxdr-1.0.2/src/ast/enumeration.rs:47:18

Using the master branch of fastxdr results in another error:
thread 'main' panicked at 'called `Result::unwrap()` on an `Err` value: "unresolvable type unsigned"', build.rs:10:14

build.rs:
fn main() {
    // Tell Cargo to regenerate the types if the XDR spec changes
    println!("cargo:rerun-if-changed=src/nfs4.x");

    // Read from nfs4.x, writing the generated code to out.rs
    std::fs::write(
        std::path::Path::new(std::env::var("OUT_DIR").unwrap().as_str()).join("out.rs"),
        fastxdr::Generator::default()
            .generate(include_str!("src/nfs4.x"))
            .unwrap(),
    )
    .unwrap();
}

Modified two unsigned to unsigned int make the build work:

https://github.com/sahlberg/libnfs/blob/f85c21755e5de76f8f622cdd71f60b49c0751eaa/nfs4/nfs4.x#L2153
https://github.com/sahlberg/libnfs/blob/f85c21755e5de76f8f622cdd71f60b49c0751eaa/nfs4/nfs4.x#L2159

But the generated code doesn't compile:
error[E0308]: mismatched types
    --> /Users/messense/Projects/nfs/target/debug/build/nfs-b8a3ecb314bc087c/out/out.rs:1673:22
     |
1673 | LAYOUTRETURN4_FILE = LAYOUT4_RET_REC_FILE,
     |                      ^^^^^^^^^^^^^^^^^^^^ expected `isize`, found `u32`

error[E0308]: mismatched types
    --> /Users/messense/Projects/nfs/target/debug/build/nfs-b8a3ecb314bc087c/out/out.rs:1674:22
     |
1674 | LAYOUTRETURN4_FSID = LAYOUT4_RET_REC_FSID,
     |                      ^^^^^^^^^^^^^^^^^^^^ expected `isize`, found `u32`

error[E0308]: mismatched types
    --> /Users/messense/Projects/nfs/target/debug/build/nfs-b8a3ecb314bc087c/out/out.rs:1675:21
     |
1675 | LAYOUTRETURN4_ALL = LAYOUT4_RET_REC_ALL,
     |                     ^^^^^^^^^^^^^^^^^^^ expected `isize`, found `u32`

For more information about this error, try `rustc --explain E0308`.
error: could not compile `nfs` due to 3 previous errors

Related code in out.rs
pub const LAYOUT4_RET_REC_ALL: u32 = 3;
pub const LAYOUT4_RET_REC_FILE: u32 = 1;
pub const LAYOUT4_RET_REC_FSID: u32 = 2;

#[derive(Debug, PartialEq)]
pub enum layoutreturn_type4 {
LAYOUTRETURN4_FILE = LAYOUT4_RET_REC_FILE,
LAYOUTRETURN4_FSID = LAYOUT4_RET_REC_FSID,
LAYOUTRETURN4_ALL = LAYOUT4_RET_REC_ALL,
}

@messense Hello, my friend. Have you found a solution to this issue? I'm currently looking to develop a high-performance NFSv4 server and came across a similar problem. Do you have any good suggestions or solutions that could help me?

@akitaSummer I think #83 should fix this.

error: expected one of `(`, `,`, `=`, `{`, or `}`, found `:`
    --> src/out.rs:1742:19
     |
1741 | pub enum layoutreturn_type4 {
     |          ------------------ while parsing this enum
1742 | LAYOUTRETURN4_FILE: u32 = LAYOUT4_RET_REC_FILE,
     |                   ^ expected one of `(`, `,`, `=`, `{`, or `}`
     |
     = help: enum variants can be `Variant`, `Variant = <integer>`, `Variant(Type, ..., TypeN)` or `Variant { fields: Types }`
help: perhaps you meant to use `struct` here
     |
1741 | pub struct layoutreturn_type4 {
     |     ~~~~~~

@messense enum doesn't seem to support this syntax

Oops, I think #[repr(u32)] should work. But there are still many more errors.

@messense Are you still studying nfs4.x related things now? I followed you on X and hope to ask you some questions.

Nope.


As a Host I want to be able to create a poll with a certain amount of points which are to be distributed amongst the questions as a means of prioritization in order to support complex prioritization.

Combined with #221


terrascan: 1.15.0 -> 1.15.1

Description of changes
https://github.com/tenable/terrascan/releases/tag/v1.15.1

Things done

Built on platform(s)

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

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

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

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

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

[x] Fits CONTRIBUTING.md.

Result of nixpkgs-review pr 174253 run on x86_64-linux 1

1 package built:

terrascan


✨Mysql brute force module protocol

Motivation and Context
Added Mysql brute force module in Nettacker 🎉
Changes proposed in this pull request

Added Mysql brute module protocol , taken reference from ftp_brute .
Changed Dockerfile to add a line to install mysql-connector-python library.

here it is placed separately as it will show error if placed in requirements.txt

Reviewers
@Ali-Razmjoo
@securestep9
Checklist

[x] I have followed the Contributor Guidelines.
[x] The code has been thoroughly tested in my local development environment with flake8 and pylint.
[x] The code is Python 3 compatible.
[x] The code follows the PEP8 styling guidelines with 4 spaces indentation.
[x] This Pull Request relates to only one issue or only one feature
[ ] I have referenced the corresponding issue number in my commit message
[x] I have added the relevant documentation.
[x] My branch is up-to-date with the Upstream master branch.

Your development environment

OS: Docker: Debian GNU/Linux 11 (bullseye)
OS Version: 11
Python Version: 3.9

@Ali-Razmjoo is it ok now?


AttributeError: 'NoneType' object has no attribute 'shape'

The command that i used is "CUDA_VISIBLE_DEVICES=0,1 python -m torch.distributed.launch --nproc_per_node=2   ../../tools/train.py --cfg config.yaml"
and after load model and wait a long time.some bugs happen.
[2019-09-24 14:19:51,955-rk0-distributed.py<reduce_gradients>#131] gradients method is sum
Traceback (most recent call last):
File "../../tools/train.py", line 324, in
main()
File "../../tools/train.py", line 319, in main
train(train_loader, dist_model, optimizer, lr_scheduler, tb_writer)
File "../../tools/train.py", line 180, in train
for idx, data in enumerate(train_loader):
File "/home/xxx/.local/lib/python3.6/site-packages/torch/utils/data/dataloader.py", line 336, in next
return self._process_next_batch(batch)
File "/home/xxx/.local/lib/python3.6/site-packages/torch/utils/data/dataloader.py", line 357, in _process_next_batch
raise batch.exc_type(batch.exc_msg)
AttributeError: Traceback (most recent call last):
File "/home/xxx/.local/lib/python3.6/site-packages/torch/utils/data/dataloader.py", line 106, in _worker_loop
samples = collate_fn([dataset[i] for i in batch_indices])
File "/home/xxx/.local/lib/python3.6/site-packages/torch/utils/data/dataloader.py", line 106, in
samples = collate_fn([dataset[i] for i in batch_indices])
File "/home/xxx/pysot-master/pysot/datasets/dataset.py", line 253, in getitem
template_box = self._get_bbox(template_image, template[1])
File "/home/xx/pysot-master/pysot/datasets/dataset.py", line 214, in _get_bbox
imh, imw = image.shape[:2]
AttributeError: 'NoneType' object has no attribute 'shape'

It seems that  your image is load failed...

Your image path should not contain chinese characters, because cv2.imread() don't support it.

Your image path should not contain chinese characters, because cv2.imread() don't support it.

I have make sure that my image path don't have chinese characters.

Maybe you need to check the images needed is prepared already.

@daiwc  大哥问题解决了吗。我遇到了相同的问题，求救啊！！！

The image was not properly read, please ensure the images are read properly.
Since no further question is asked, I'm closing it for now.
Please reopen it or create a new issue if you have further question.


attributes should be more descriptive

instead of just a [] it should be a {} and provide more information (if applicable)

it is now "key=value" pair required


Update dependencies

Summary
Jut keeping things updated.
Only change for consumers is yargs 11. We don't use requireArgs though, so no difference. https://github.com/yargs/yargs/blob/master/CHANGELOG.md#1100-2018-01-22

Test plan
Green CI

We should definitely change this test, e.g. run it through prettier prior snapshotting.
https://github.com/facebook/jest/blob/d584277a7fb3949c33d6bb47e055d13d6d978249/packages/jest-runtime/src/__tests__/script_transformer.test.js#L195

Also looks like Flow is tripping on invalid json on some Node versions?
Probably worth adding this to ignore list:
.*/node_modules/.*/test/.*

and maybe some other test prefixes – should also speedup crawl in case some packages publish their tests, which happens.

Diff in the failing snapshot:

I wonder if flow could be smarter here in order to match node. See commit message introducing the invalid package.json: https://github.com/browserify/module-deps/commit/4abc696f853ef55a0dc55bb1969a66343404dc0d

Codecov Report

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

@@           Coverage Diff           @@
##           master    #5681   +/-   ##
=======================================
  Coverage   63.16%   63.16%
=======================================
  Files         216      216
  Lines        7913     7913
  Branches        4        4
=======================================
  Hits         4998     4998
  Misses       2914     2914
  Partials        1        1

Continue to review full report at Codecov.

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


finalize FITS/product timing

FITS files and products:
should have an absolute time in the header (fits) or as property (product)

OBT_BEG (the begin of the Observation) in SCETime
OBT_END (the end of the Observation) in SCETime
DATE_BEG (the begin of the Observation) in time format specified by TIMESYS (SCET|OBT )
DATE_END (the end of the Observation) in time format specified by TIMESYS (SCET|OBT)
TIMESYS property/header will determine in what time format the OBS_... is

the time column in the data table should be all relative times (unit: s) to that reference time (OBT_BEG).
levelB and Lvel0 products will use SCETime as TIMESYS
level1 and further on UTC as TIMESYS
ToDO:

[ ] review OBT_BEG / DATE_BEG  / TIMESYS  in FITS reader/writer
[ ] time format of OBT in headers should be float
[ ] time format of OBT in file names will be be coarse time only (eq:<PHONE_NUMBER>)
[ ] time is FITS files names will use DATE_BEG/END
[ ] convert DATE_BEG/END TIMESYS  in Level1 processing step

OBT_BEG, OBT_END are always in OBT/SCET format
OBS_BEG,  OBS_MID, OBS_END mush be in the time format specified in TIMESYS e.g OBT or UTC
This allows easy checking of the time conversion as OBS_BEG/END converted to OBT if necessary should match OBT_BEG/END

So the actual header fields are OBT_BEG, OBT_END and  DATE_BEG, DATE_AVG and DATE_ENDOBT

I think we have this now but would be good to check / test


FindOne error when it using with an associative array or innerJoin

What steps will reproduce the problem?
I have a ActiveQuery class that override one() and all() methods to basically add a innerJoin and where clause at every search of that model and the model that joins has a same column name of primary key (at this case id). So i need to use findOne() method to get only one AR element searching by primary key or another column.
What is the expected result?
Retrieves one element of AR after search.
What do you get instead?
When i try to use findOne([tableName.columnName => $id]) tells me that tableName.columnName is not a column name.
Key "cota.id" is not a column name and can not be used as a filter
When i try to use findOne($id) throws a IntegrityException with the message that idcolumn is ambiguos at sql.
The SQL being executed was: SELECT `cota`.* FROM `cota` INNER JOIN `secretaria` ON secretaria.id = cota.fk_secretaria WHERE `id`='1'
Additional info

Q
A

Yii version
2.0.15

PHP version
7.0

Operating system
Ubuntu

I have a ActiveQuery class that override one() and all() methods to basically add a innerJoin and where clause at every search of that model

Now I see what the problem is, the join is added after the check in findOne/findByCondition. Can you change the code so that the join is added in init() method of the ActiveQuery class?

When i try to use findOne([tableName.columnName => $id]) tells me that tableName.columnName is not a column name.
Key "cota.id" is not a column name and can not be used as a filter

we should allow this when checking in filterCondition().

Thanks @cebe, the ambiguous problem was resolved. But i have one question, when should i use functions like that at init or use overriting one/all method? For the second question, i've already saw at milestone that 2.0.16 is due to 20/03, that will be release today?

Nope, it's ex 2.0.15 renamed.

So should i wait to be fixed or it's better rollback version?

similar to #15933, going to fix it today.

Fixed in <IP_ADDRESS>. Thanks for reporting this!

@cebe It does not work with next syntax!!!
findOne(['{{tableName}}.[[columnName]]' => $id])
because in checks for next columns names:
array (size=12)
  0 => string 'uuid' (length=4)
  1 => string 'email' (length=5)
  2 => string 'fname' (length=5)
  3 => string 'lname' (length=5)
  4 => string 'sname' (length=5)
  5 => string 'workflow_uuid' (length=13)
  6 => string '{{%users}}.uuid' (length=15)
  7 => string '{{%users}}.email' (length=16)
  8 => string '{{%users}}.fname' (length=16)
  9 => string '{{%users}}.lname' (length=16)
  10 => string '{{%users}}.sname' (length=16)
  11 => string '{{%users}}.workflow_uuid' (length=24)

instead of
array (size=12)
  0 => string 'uuid' (length=4)
  1 => string 'email' (length=5)
  2 => string 'fname' (length=5)
  3 => string 'lname' (length=5)
  4 => string 'sname' (length=5)
  5 => string 'workflow_uuid' (length=13)
  6 => string '{{%users}}.[[uuid]]' (length=15)
  7 => string '{{%users}}.[[email]]' (length=16)
  8 => string '{{%users}}.[[fname]]' (length=16)
  9 => string '{{%users}}.[[lname]]' (length=16)
  10 => string '{{%users}}.[[sname]]' (length=16)
  11 => string '{{%users}}.[[workflow_uuid]]' (length=24)

Also does not work with table aliases:
$authManager = Instance::ensure(Yii::$app->authManager, DbManager::class);
$query = Configuration::find()
    ->from('configuration' => Configuration::tableName())
    ->distinct('configuration.id')
    ->join('JOIN', [self::FILTER_ALIAS_AUTH_ASSIGNMENT => $authManager->assignmentTable], [
        self::FILTER_ALIAS_AUTH_ASSIGNMENT . '.`user_id`' => $userId,
        self::FILTER_ALIAS_AUTH_ASSIGNMENT . '.`item_name`' => $permissions,
    ])->all();


grammar mistakes in output error message

Not found table => Table not found
Field is not exist => Field does not exist
etc..

Codecov Report

Merging #909 into master will decrease coverage by 0.01%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master     #909      +/-   ##
==========================================
- Coverage   53.94%   53.93%   -0.02%
==========================================
  Files          41       41
  Lines        7526     7526
==========================================
- Hits         4060     4059       -1
  Misses       2949     2949
- Partials      517      518       +1

Impacted Files
Coverage Δ

error.go
0% <ø> (ø)
:arrow_up:

xorm.go
63.07% <0%> (-1.54%)
:arrow_down:

Continue to review full report at Codecov.

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

Thanks


cant save bloxstrap changes

Acknowledgement of preliminary instructions

[x] I have read the preliminary instructions, and I am certain that my problem has not already been addressed.

What problem did you encounter?
im using v2.5.4 in bloxstrap and when i change something it doesnt say save compared to other youtube videos

im using v2.5.4 in bloxstrap and when i change something it doesnt say save compared to other youtube videos

What does it say?

I have, but somehow, I think this issue associates with how the Bloxstrap menu didn't install by itself.

The only things that changed was, the old death sound of Roblox and the graphics were divided.

The quandary hath been aptly vanquished through the employment of intricate machinations, whereby an amalgam of erudite methodologies hath been deftly wielded, accompanied by an exhaustive disquisition and the harmonious convergence of diverse cogitative paradigms, culminating in the formulation of an elaborate panacea.

The quandary hath been aptly vanquished through the employment of intricate machinations, whereby an amalgam of erudite methodologies hath been deftly wielded, accompanied by an exhaustive disquisition and the harmonious convergence of diverse cogitative paradigms, culminating in the formulation of an elaborate panacea.


Use .jsbeautifyrc for "js-beautify" settings if exists

Hi,
Can you use .jsbeautifyrc file in project to format code when formatting with "js-beautify" instead of using extension settings?

No. A lot of the settings doesn't make sense in the context for vue files so I only expose a part of them.

Isn't it easier using a seperate file which "js-beautify" can use directly, instead of wrapping and exposing your own settings?

Only a subset of these settings make sense for vue.
People will open issues like "why this setting has no effect".
And the js setting is based on TypeScript's formatter, not js-beautify.


Multiple owners

Can there be multiple owners for a given organization.
I'd highly recommend such an option

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

ID: df27392f-aec0-41d9-726c-88abc12468e0
Version Independent ID: f21e6a50-99f5-819b-4e09-99a84253bf9d
Content: Change the owner of an organization - Azure DevOps Services
Content Source: docs/organizations/accounts/change-organization-ownership.md
Product: devops
Technology: devops-accounts
GitHub Login: @chcomley
Microsoft Alias: chcomley

@att-yarongolan -- Yaron, thank you for your question.  You may find answers here:

Azure DevOps Support Bot
Azure DevOps on Stack Overflow

Also, thanks for the recommendation! The product teams aren’t always watching this repository, so to make sure it gets in front of them for triage, please submit your idea here.
I am closing this issue now.  You are welcome to @ mention me for any followup.
We hope to hear from you again.

@att-yarongolan Hi, just need to know that did you find how can we make multiple owners in DevOps for a given organization.

Hi,
Unfortunately, I didn't find yet.
Actually, I expected that answer from Microsoft support..
Sent from my smartphone.
Please forgive the auto correction feature...
-------- Original message --------
From: imtiaza1977<EMAIL_ADDRESS>Date: 3/20/20 12:20 (GMT+02:00)
To: MicrosoftDocs/vsts-docs<EMAIL_ADDRESS>Cc: "Golan, Yaron"<EMAIL_ADDRESS>Mention<EMAIL_ADDRESS>Subject: Re: [MicrosoftDocs/vsts-docs] Multiple owners (#7313)
@att-yarongolanhttps://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_att-2Dyarongolan&d=DwMCaQ&c=LFYZ-o9_HUMeMTSQicvjIg&r=PxsPcfR_6c05Ehk6pvASbumOEDVON9hniiRziOKMA4Q&m=4jW66QpRryf87G3XogMcaxnG-cM78GYDZv65UzwM_y8&s=7xckfkd2K7DM7j28li4qOGxA0Q8F77as5jYbvODPuus&e= Hi, just need to know that did you find how can we make multiple owners in DevOps for a given organization.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHubhttps://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_MicrosoftDocs_vsts-2Ddocs_issues_7313-23issuecomment-2D601625733&d=DwMCaQ&c=LFYZ-o9_HUMeMTSQicvjIg&r=PxsPcfR_6c05Ehk6pvASbumOEDVON9hniiRziOKMA4Q&m=4jW66QpRryf87G3XogMcaxnG-cM78GYDZv65UzwM_y8&s=TEaVt5G88Xzx4ckzCMsIpW_exLZWuZn8M0PBsp-8gUI&e=, or unsubscribehttps://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_notifications_unsubscribe-2Dauth_AONKENHJX7OWDGWMMWRL67TRIM7OXANCNFSM4KWTAGPA&d=DwMCaQ&c=LFYZ-o9_HUMeMTSQicvjIg&r=PxsPcfR_6c05Ehk6pvASbumOEDVON9hniiRziOKMA4Q&m=4jW66QpRryf87G3XogMcaxnG-cM78GYDZv65UzwM_y8&s=ArPEvcnGEAhJCe4HfUF2JVwyMArUNKrKrHrtI5PqE_4&e=.

ok let me log a ticket with them. Anyways thanks for reply.
Thanks
Malik Adeel imtiaz


Ignore link local addresses in ARP inspection test

@travellingmonk Could you upload a packet capture displaying the failure behavior?


[CSS] fonts docs tasks, Fx 70

Trello: https://trello.com/c/b5FLYtJy/50-css-fonts-level-4-fx-70
AC

[x] [css-fonts] font-size:xxx-large

Updated https://wiki.developer.mozilla.org/en-US/docs/Web/CSS/font-size to mention xxx-large.
Checked to see if https://wiki.developer.mozilla.org/en-US/docs/Web/CSS/font needs any updates as a result. It didn't.
Also checked https://developer.mozilla.org/en-US/docs/Learn/CSS/Styling_text/Fundamentals.

Browser compat data updated: https://github.com/mdn/browser-compat-data/pull/4966
Data repo updated to add it to formal syntax: https://github.com/mdn/data/pull/392

Note included in Fx70 rel notes: https://developer.mozilla.org/en-US/docs/Mozilla/Firefox/Releases/70#CSS


setState not updating render() from window.addEventListener

Hello,
I'm sure I'm doing something stupid, and missed a key element somewhere, but for some reason my scroll/resize events fire the respected component's event, but for some reason calling this.setStatus({...}) Doesn't update render(). I have a small repo that can recreate the issue on the spot, by simply opening the demo.html in the root directory. https://github.com/ajm113/preact-lazy-img
I'll post some code anyway too, maybe something will strike out to someone.
pacakge.json:
  "peerDependencies": {
    "preact": "*"
  },
  "devDependencies": {
    "babel-cli": "^6.26.0",
    "babel-core": "^6.26.3",
    "babel-loader": "^7.1.4",
    "babel-plugin-transform-react-jsx": "^6.24.1",
    "babel-preset-es2015": "^6.24.1",
    "babel-preset-stage-0": "^6.24.1",
    "chai": "^4.1.2",
    "cross-env": "^5.1.4",
    "eslint": "^4.19.1",
    "eslint-plugin-react": "^7.7.0",
    "mocha": "^5.1.1",
    "mocha-jsdom": "^1.1.0",
    "preact": "^8",
    "preact-jsx-chai": "^2.2.1",
    "rimraf": "^2.6.2",
    "webpack": "^3.5.6"
  }

Wrapper Component:
import {h, Component} from 'preact';
import { debounce } from '../utils/debounce';

const OPTIONS = {passive: true};

export default class LazyWrapper extends Component {

    update = e => {
        if(this.props.onWindowScroll)
            debounce(this.props.onWindowScroll, 50)(e);
        if(this.props.onWindowResize)
            debounce(this.props.onWindowResize, 50)(e);
    }

    render({children: [child]}) {
        return typeof child==='function' ? child() : child;
    }

    componentDidMount() {
        if(this.props.onWindowScroll)
            addEventListener('scroll', this.update, OPTIONS);
        if(this.props.onWindowResize)
            addEventListener('resize', this.update, OPTIONS);
    }

    componentWillUnmount() {
        if(this.props.onWindowScroll)
            removeEventListener('scroll', this.update, OPTIONS);
        if(this.props.onWindowResize)
            removeEventListener('resize', this.update, OPTIONS);
    }
}

LazyImg:
import {h, Component} from 'preact';
import LazyWrapper from './LazyWrapper';

const PLACEHOLDER_DIV_CLASSNAME = 'lazyload-placeholder';

export default class LazyImg extends Component {
    constructor(props) {
        super(props);
        this.state = {
            visible: false
        };

        this.el = null;
    }

    onScrollOrResize = e => {
        this.setState({  // <<<<<<< This gets called, but nothing happens...
           visible: this.isInViewport()
        });
    }

    render({...props}, {visible}) {
        const placeholder = props.placeholder ?
            props.placeholder :

 this.el = el.base} style={{ height: props.height }} className={PLACEHOLDER_DIV_CLASSNAME} />;

        return (
            <LazyWrapper onWindowScroll={this.onScrollOrResize} onWindowResize={this.onScrollOrResize} >
                { visible ?  this.el = el.base} /> : placeholder}
            </LazyWrapper>
        );
    }

    componentDidMount() {
        this.setState({
           visible: this.isInViewport()
        });
    }

    isInViewport() {
        if (!this.el)
            return false;

        const top = this.el.getBoundingClientRect().top;
        return ((top + this.props.cushion) >= 0 && (top - this.props.cushion) <= window.innerHeight);
    }

    static defaultProps = {
        cushion: 0,
        placeholder: '',
        unmountIfInvisible: true,
        placeholderIfInvisible: true
    }
}

@ajm113 I had a quick look at it and it seems like there are multiple bugs. You mixed up the difference between component refs and html refs.
Change the ref callback from this:
// el.base doesn't exist, only for preact-components, but not for html nodes
// a div is obviously a html node.

 this.el = el.base}>

to:

 this.el = el}>

That doesn't explain why render is not called again through setState in componentDidMount. A quick this.forceRender() can be used as a workaround, but that's not so nice.

Hi @marvinhagemeister,
I thought I had the refs properly set at first. -- I wasn't 100% sure if the ref was messing it up, so I thought using the el.base was the correct route to go looking at the examples floating around online for React, and thought the same applied for Preact. -- I'll give the forceRender a shot here in a little bit when I get some work done.

@ajm113 el.base is correct when you set the ref property on a component, not on a straight html element. That's the same behaviour that react has.
Found the culprit why render isn't called after setState. The issue is that you have multiple versions of preact loaded at the same time. One is bundled with webpack the other one comes from a


NuGet package no longer targets .NET 4.0

Hello.
I'm trying to update ATAPI from v. 2013.1.4 to last stable 2018.3.9 but I get an error about the target .NET framework (in my project, I'm still using .NET 4.0). Following is the error:
Could not install package 'ATAPI 2018.3.9'. You are trying to install this package into a project that targets '.NETFramework,Version=v4.0', but the package does not contain any assembly references or content files that are compatible with that framework. For more information, contact the package author.
I see that currently you're targeting .NET 4.6. Please can you confirm me that ATAPI requires at least .NET 4.6? If not, is it possible to target also previous versions (and .NET 4.0 in particular)?
Thank you.

The package is set for VS2017 and 4.6, but you can grab the source and build it yourself - there might be a few things you'll have to change to make it compatible with 4.0; but it should be doable. If you do recompile it - use #if markers to change the code and submit a PR, maybe we can multi-target the package...

Ok Mark,
thank you for letting me know. I will go in deep in the next weeks.


Add CI Testing with "heavy" meshes

🚀 Feature
We should add CI testing with "heavy" meshes like MP3D and Gibson, so that we are certain we aren't suffering a regression.
Motivation
We suffered a major unintentional regression via #542. Our current CI testing uses a fairly light testing mesh:
https://github.com/facebookresearch/habitat-sim/blob/ddf84ad79164bdc30aeff233f8932aac0b757fe2/.circleci/config.yml#L289
Our hypothesis is that if we test with heavier meshes like Replica, MP3D, Gibson, we would have caught the regression as a failed test.

(Sorry about that regression again.)
Not only a heavy mesh, we also need something that verifies semantic output / meshes with semantic info. Looking at the report, basically all code  related to it is completely uncovered. I'm currently removing those and replacing them with builtin Magnum functionality, but having no automated regression testing in place for these makes me wary.

Added an issue: https://github.com/facebookresearch/habitat-sim/issues/613 which would benefit from this. Basically all ReplicaDataset environments are broken when using Bullet physics.

We are now testing in CI with HM3D and MP3D example scan assets containing semantics. This does not address the Replica physics issue.


add single_chunk_size_threshold opt

@rly
I've been running into a problem where some of the large (raw ephys) datasets on DANDI are uncompressed and stored in a single very large chunk within the NWB file. For example 000935. In fact, as you know, the default in HDF5 is to create an uncompressed contiguous chunk. This is a problem for Zarr with remote files because (as far as I can see) there is no such thing as a partial read of a chunk. So if I try to randomly access a time segment with one of these arrays, the entire chunk/dataset needs to be downloaded.
This problem could potentially be addressed at various stages of the flow, but at this point I haven't found any that are satisfactory.
As a workaround, in this PR I have added another attribute to the LindiH5ZarrStoreOpts called single_uncompressed_chunk_size_threshold which defaults to 100 MB. It detects the situation where the dataset is a single uncompressed chunk of size greater than 100 MB. In this case, it is marked as an external array link. So in this case, when the client loads the array, it falls back to loading the data using h5py reader, which is capable of slicing the data efficiently.

Codecov Report
Attention: Patch coverage is 87.50000% with 2 lines in your changes missing coverage. Please review.

Project coverage is 79.51%. Comparing base (731fcb5) to head (bc03770).
Report is 9 commits behind head on main.

Files
Patch %
Lines

lindi/LindiH5ZarrStore/LindiH5ZarrStore.py
86.66%
2 Missing :warning:

Additional details and impacted files
@@            Coverage Diff             @@
##             main      #82      +/-   ##
==========================================
+ Coverage   79.43%   79.51%   +0.08%
==========================================
  Files          30       30
  Lines        2256     2275      +19
==========================================
+ Hits         1792     1809      +17
- Misses        464      466       +2

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

Having second thoughts about this solution, so marking as WIP.
Maybe it would be better/cleaner to detect this situation and then auto split into a large number of chunks along the first dimension, so it is represented in the RFS as multiple chunks.


Update attribute selectors when attributes change (deleted or renamed)

If an attribute gets selected and then gets deleted, the attribute selector will reset. A multi attribute selector will filter out any invalid selected attributes when they change.

Just rebased on top of main. The change from #51 fixes this.


Fix wrong invoke on setCloudProxy

Fix wrong invoke method and how it implemented that produce Instance of 'CloudProxyType' Agora as i described here #345

Thanks for your PR! Please finish the changes requested.

I found some same problem, I will fix it.


Use FAKE+Paket

Deprecating IntelliFactory.Build, move to community projects (FAKE+Paket) with bigger support for customization, enabling Nuget V3 and later building for .NETStandard.

Currently on branch newbuild. Currently compiling fine. NuGet packages generated not visible in a local feed, maybe some issues with .nupkg generated. F# code service in VS2017 is missing for some files, maybe FSharp.Core references are duplicated or not visible properly for FCS's project cracker.

Previously mentioned issues are fixed. Code service in Visual Studio for some projects relying on the WebSharper compiler work only if the compiler has been built already. Building in console or in VS and then restarting solves this.


1password-gui: 8.10.48 -> 8.10.54, 1password-gui-beta: 8.10.50-8.BETA -> 8.10.56-1.BETA

Things done
Updated to latest releases

Built on platform(s)

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

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[x] Tested, as applicable:

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

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

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

[x] Fits CONTRIBUTING.md.

Add a :+1: reaction to pull requests you find important.

nixpkgs-review result
Generated using nixpkgs-review.
Command: nixpkgs-review pr 361520

x86_64-linux

:white_check_mark: 2 packages built:

_1password-gui
_1password-gui-beta

aarch64-linux

:white_check_mark: 2 packages built:

_1password-gui
_1password-gui-beta

x86_64-darwin

:fast_forward: 2 packages marked as broken and skipped:

_1password-gui
_1password-gui-beta

aarch64-darwin

:fast_forward: 2 packages marked as broken and skipped:

_1password-gui
_1password-gui-beta


Advanced preset management

Feature Idea
It would be nice to have the following features for the presets:

Ability to multiselect with "First image -> Shift + Last image"
Delete all selected presets
Move all selected presets into a (sub)folder
Delete a folder with all presets in it
Sort presets by name
Choose a folder to import a preset file into

Other
How I found out? I accidentally imported ~300 presets in my "Root" folder and now have no sensible way to get rid of them again.

Duplicate of https://github.com/mcmonkeyprojects/SwarmUI/issues/10


Create README.md

This is a FNT README for traffic steering from Non-default VRF to Default VRF using Policy based VRF selection for IPV4 and IPV6.(NO DSCP)
Creating the README in appropriate folder for VRF , this is overriding previous pull request #3495

Pull Request Functional Test Report for #3510 / 3bd0279d47a52eee3df4df7f70c8ef9ed1789906
No tests identified for validation.
Help

Pull Request Test Coverage Report for Build<PHONE_NUMBER>9
Details

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

Totals

Change from base Build<PHONE_NUMBER>7:
0.0%

Covered Lines:
1983

Relevant Lines:
3588

💛  - Coveralls

Hi Darrren,
can you ptal.


Record the App ID URI (Client App)

In the "Register a Client App" section, right after getting the the API permissions section, the instructions say "Record the App ID URI (for example, https://{TENANT}.onmicrosoft.com/{SERVER API APP CLIENT ID OR CUSTOM VALUE})." Where do we get this value? At this point, if I follow the directions in order, the "Application ID URI" value in the overview is blank (i.e., it says "Add an application ID URI).

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

ID: 7d682d4c-86b5-c47e-89a3-3684b2235320
Version Independent ID: a80e115c-466a-288d-a918-9ef7514f5add
Content: Secure an ASP.NET Core Blazor WebAssembly hosted app with Azure Active Directory B2C
Content Source: aspnetcore/security/blazor/webassembly/hosted-with-azure-active-directory-b2c.md
Product: aspnet-core
Technology: aspnetcore-security
GitHub Login: @guardrex
Microsoft Alias: riande

Hello @marshallr12 ...
It's in the sidebar panel that pops up after you select the API / Permissions name in the Configured permissions.
I named mine API.Access, so select that ...

... and then you get this ...

... the APP ID URI is the part before the permission name; so in this case, it's ...
https://{TENANT}.onmicrosoft.com/16473e7d-4d8d-401f-a2d4-95230088a256

You can also get it from the Server app's registration (Expose an API blade) ...

Actually, the "record" language is an errant cut-'n-paste. At this point, there's no need to record it. I'll strike that in that location. The line stays up above where the Server app is configured.
I'll be improving this process soon. For one thing, we'll have proper VS vs. CLI instructions so that devs using VS don't need to work with this GIANT command ... they'll just use the VS UI experience. That's coming soon.


Update Stack Overflow link on client library ref landing page for Python

On the current landing page for google-cloud-python there is a Stack Overflow icon:

[Current Result]
That icon currently points to http://stackoverflow.com/questions/tagged/google-cloud-python (which was a good attempt!)
[Expected Result]
The icon should point to: http://stackoverflow.com/questions/tagged/google-cloud-platform+python

@omaray This is great in theory but user behavior in the wild may also be relevant.

http://stackoverflow.com/questions/tagged/gcloud-python has 56 questions that need to be retagged
Sometimes people say gcloud when they mean our library: http://stackoverflow.com/questions/tagged/gcloud+python
Alternate tags like http://stackoverflow.com/questions/tagged/python-2.7 have non-triviial traffic

Hey - yes, here are some answers.

I'm not too concerned with previous questions and tags - 56 is not a horrible number. But also, more importantly, anyone going to stay Pub/Sub and having a question about say "Python library" will be directed to the [python]+[google-cloud-pubsub] multi-tag search! And many of the results you point me too already have that in place (meaning there are multiple tags including the [python] tag and the [product] tag).

In other words we are doing primarily [lang]+[tech] multi-tag searches instead of having one tag per client lib.

The second point you mention is exactly why we renamed actually from gcloud to google-cloud.

Yeah, that I think we need to live with. We will focus on the actual language tag. If people want to add a precision in terms of version that's fine - but there is little we can here and we can cover it all.

Let me know if that makes sense.

@omaray I'm going through and retagging right now.
http://stackoverflow.com/questions/tagged/gcloud-python has a logo and some info because it's a sponsored tag
http://stackoverflow.com/questions/tagged/google-cloud-python has nothing right now

Hey Danny - just to clarify:
(1) what do you mean by retagging exactly? So you remove the old one?
(2) just to clarify, for now let's go with  http://stackoverflow.com/questions/tagged/google-cloud-platform+python as the solution; and I'm waiting on some internal answers (which might take a bit of time). So let's stay consistent across all languages and use this new approach - and worst case we'll update again later on (should be an easy fix).

what do you mean by retagging exactly? So you remove the old one?

In most cases I just added the new one, so there are lots of questions with both google-cloud-python and gcloud-python. StackOverflow has a max of 5 though so in that case I deleted gcloud-python if it made sense (more often in the 5 tag case, the question was about the gcloud CLI, not our library, so it was not really relevant).

As for going with google-cloud-platform as the tag, it's your call but there are a few issues I see on first impression:

We can't make people use that combo. People will start typing the name of the library in the tag UI and wait until they see it autocomplete. When they post a question on SO, they (with 99% certainty) won't have any idea what our blessed way to tag is.
google-cloud-platform + python will be much broader than this library, e.g. most of the gcloud CLI is written in Python, GAE has a Python runtime, many other teams use Python data libraries like pandas

Yes, I'm aware of these limitations. And other limitations too. For now let's stick with that (cause in theory it does't hurt per se). And I'll keep following up with the Cloud Support team to ensure this is the right strategy. And I am waiting on some answers back for how SO might or might not support anonymous searches through tags.

Hello,
One of the challenges of maintaining a large open source project is that sometimes, you can bite off more than you can chew. As the lead maintainer of google-cloud-python, I can definitely say that I have let the issues here pile up.
As part of trying to get things under control (as well as to empower us to provide better customer service in the future), I am declaring a "bankruptcy" of sorts on many of the old issues, especially those likely to have been addressed or made obsolete by more recent updates.
My goal is to close stale issues whose relevance or solution is no longer immediately evident, and which appear to be of lower importance. I believe in good faith that this is one of those issues, but I am scanning quickly and may occasionally be wrong. If this is an issue of high importance, please comment here and we will reconsider. If this is an issue whose solution is trivial, please consider providing a pull request.
Thank you!


(HTTP 403) failed to download the s3 files

First of all, thank you very much for providing this project.
I'm running this script in region ap-southeast-1's EC2, and with AWS S3 configured. But it failed to download the files, the error code as below:
$ aws s3 ls --request-payer=requester s3://public-blockchain-snapshots/bsc/

An error occurred (AccessDenied) when calling the ListObjectsV2 operation: Access Denied
$ export S3_BUCKET_PATH="s3://public-blockchain-snapshots"
$ aws s3 cp --request-payer=requester "$S3_BUCKET_PATH/support/zstd-v1.5.0-linux-x86.tar.gz" .
fatal error: An error occurred (403) when calling the HeadObject operation: Forbidden

Could you please help me to find out what's the problem?
Thanks a lot.

I suggest trying in us-west-2 (as it's pretty much free to download) and if it works there then do your testing in your preferred data center.
Can you run:
aws sts get-caller-identity

And make sure it succeeds (you don't need to post results here). If it does not succeed, it means that you don't have an AWS role setup on that instance.
I suspect the issue is that the instance is either missing a role or the role it has doesn't have permissions to be changed for requester pays configuration. The easiest way to test this is to put in your personal AWS credentials on the instance using aws configure then try, if it works, it's a role issue.
I have was helping out another company at one point and had ssh access into the instance and was able to download it a few months ago and have changed no permission stuff, so I am pretty sure it should be fine on my end.
Let me know,
-Allada

Thanks for your reply, I’ll try your instructions later today.
BTW, what’s the type of ec2 instance are you running the archive node? I’m running in c5.x4large with gp3 disk to running the bsc archive node, but the sync status showed the bsc node always lags about 3weaks
On Sep 5, 2021, 06:06 +0800, Nathan (Blaise) Bruer @.***>, wrote:

I suggest trying in us-west-2 (as it's pretty much free to download) and if it works there then do your testing in your preferred data center.
Can you run:
aws sts get-caller-identity
And make sure it succeeds (you don't need to post results here). If it does not succeed, it means that you don't have an AWS role setup on that instance.
I suspect the issue is that the instance is either missing a role or the role it has doesn't have permissions to be changed for requester pays configuration. The easiest way to test this is to put in your personal AWS credentials on the instance using aws configure then try, if it works, it's a role issue.
I have was helping out another company at one point and had ssh access into the instance and was able to download it a few months ago and have changed no permission stuff, so I am pretty sure it should be fine on my end.
Let me know,
-Allada
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub, or unsubscribe.
Triage notifications on the go with GitHub Mobile for iOS or Android.

My use case is a bit different, I rarely need to run the entire archive at a time. Instead I usually only run the last few months worth, so I use smaller instances and only run the service on a subset of the snapshots.
When I need the entire chain I usually use i3en.12xlarge or i3en.24xlarge as spot instances, since I am not worried if they go down unexpectedly (due to my use case).
I would not suggest using EBS volumes, they are extremely slow and it is often cheaper to use instances with ephemeral storage than smaller instances with EBS.
If cost is really a concern and you don't need it to be super fast, the version of geth I provided in the install script has modified the timeout of calls. You can just use git diff to find out what the changes are. If you increase it even more, I have had success using the d3en class of instances with much smaller EBS (configured as io2) and then use ZFS and configure it to be an L2ARC. You can configure those HDD's to be RIAD0'ed together. I haven't tested this in a long time, but I was able to keep up with the chain when I tested back in May.

Hi, not sure if you got this working @jsvisa - but I also get the 403 error. Even from us-west-2
aws s3 ls --request-payer=requester s3://public-blockchain-snapshots/bsc/
An error occurred (AccessDenied) when calling the ListObjectsV2 operation: Access Denied
# aws configure
AWS Access Key ID [None]:ACCESSKEYID
AWS Secret Access Key [None]: SECRETKEY
Default region name [None]: us-west-2
Default output format [None]:

# aws sts get-caller-identity
{
    "UserId": "XXXXX",
    "Account": "7011111111111",
    "Arn": "arn:aws:iam::7011111111111:user/user"
}

Any help would be appreciated @allada

Is it possible that the AWS account you are using is not allowed to be charged for S3 actions?
I have reports of other users being able to use it without issue just yesterday.

Owner
 ** allada ** commented 1 hour ago •

Ah you're absolutely correct - thank you very much


MWPW-139001 - Adjust LCP Image Loading

Only load all images if the marquee has a split variant

Resolves: MWPW-139001

Split Marquee test URLs

Before
After

Steps to test
Observe there are two images loading in the network console...

Marquee (regular) test URLs

Before
After

Steps to test (before)
Observe there are two images loading in the network console...

Steps to test (after)
Observe there is only one image loading in the network console...

Codecov Report

Merging #156 (6c8d885) into main (bfa4bf2) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##             main     #156   +/-   ##
=======================================
  Coverage   97.19%   97.19%
=======================================
  Files           8        8
  Lines         714      714
=======================================
  Hits          694      694
  Misses         20       20

:mega: Codecov offers a browser extension for seamless coverage viewing on GitHub. Try it in Chrome or Firefox today!

@meganthecoder your call. I'm cool with whatever. Feel free to merge whenever you want.


Remove useless inheritance from VGroup

Description
Several of the implemented Mobjects inherit from VGroup. This is typically unnecessary and can lead to strange behavior when using operators. Instead inherit from VMobject or Mobject.

Make sure to verify that the functionality of the Mobject really doesn't depend on the VGroup inheritance. Namely, look at the methods and operators that VGroup adds (in vectorized_mobject.py) and see if they make sense to keep. For example, it doesn't really make sense that adding an Mobject to an MArrayElement links their positions, rotations, and scale together.

I will do this for intro to software engineering project


mechanism for pushing errors to top-level decide-ctrl

When a component has a fatal error, rather than throwing an error, which causes the whole program to shut down unceremoniously, a notification should be pushed up to the top level. Could be implemented with a new pub message type.

Throwing an error is probably fine if the problem occurs during startup. The issue is if there's a long-running process that terminates for some reason.

This is implemented.


debugSimulationOf initial function typechecks

Cool.  I'll leave this pull request open, though, and we can merge once there's new functionality there.

so this doesn't type-check, but I'm trying to work through the logic. debugSimulationOf takes an initial state and the step function, which generates a list of states, which are turned into pictures. Or is this the wrong path? Thanks!

Oh, yes I think that's the wrong direction.  The type of debugSimulationOf tells you how a user (that is, a student) can use it.  We want a student to be able to replace simulationOf with debugSimulationOf without making any more changes, so the type needs to stay the same.
What you want to do instead is change the definition.

Do you want me to put debugInteractionOf on a new branch and make a new PR?

Let's keep working in this pull request for now.  So far, this new button isn't compelling enough to be worth increasing the API surface; so I'd rather not merge yet.

Okay, now I did the merge of my changes into this branch.  I did them through github, so I can't easily build.  Can you pull and rebuild, and let me know if there are errors?

I got this error
src/CodeWorld/Driver.hs:2124:36: error:
    • Variable not in scope: debugState :: DebugState
    • Perhaps you meant one of these:
        data constructor ‘DebugState’ (line 2011),
        data constructor ‘DebugStart’ (line 2018)

Oops.  the wrapper in 2123 should be replaced by wrapper@(debugState, _)

On the codeworld-api using cabal_install it builds with no errors. However, using ./build.sh it aborts because of errors on
2316 , 2568, 2586, 2587, 2598. 2606
(argument mismatches)

Yes, this is expected.  All of this development happened on the GHCJS implementation.  The stand-alone GHC implementation has fallen behind.  That's okay; we can catch it up next!  Let's just get the core version working first.


Extra quotes when customizing to_json for map keys

Rough sketch of repro:
#include <glaze/glaze.hpp>

enum class Foo {
    eABC,
    eDEF
};

auto fooName(Foo foo) -> const char* {
    switch (foo) {
        case Foo::eABC: return "ABC";
        case Foo::eDEF: return "DEF";
        default: __builtin_unreachable();
    }
}

namespace glz::detail {
template <>
struct to_json<Foo> {
    template <auto Opts>
    static void op(const Foo& foo, auto&&... args) {
        write<json>::op<Opts>(fooName(foo), args...);
    }
};
} // namespace glz::detail

struct Data {
    std::map<Foo, int> foos;
};

int main(int argc, char* argv[]) {
    Data data;
    data.foos[Foo::eABC] = 123;
    data.foos[Foo::eDEF] = 456;
    auto result = glz::write<glz::opts{}>(data);
    if (!result) {
        return 1;
    }
    std::cout << result.value() << std::endl;
    return 0;
}

This produces output like this:
{"foos":{"\"ABC\"":123,"\"DEF\"":456}}

Rather than the expected:
{"foos":{"ABC":123,"DEF":456}}

I should point out that if Foo is used as values rather than map keys, there is no extraneous quoting.
If there's a better way to do this (supply a custom enum->string function/lambda) I'm open to other ways.  Tried using glz::meta with a value lambda but couldn't get it to compile without also specializing to_json.  Basically want a way to customize glaze to always treat the Foo enum as its fooName(value) equivalent string.

Found a workaround for now:
template <>
struct glz::meta<Foo>
{
    static constexpr auto custom_write = true;
    static constexpr auto value = enumerate(Foo::eABC);
};

This basically tricks glaze into treating Foo as a glaze_enum_t which goes into the string-ish branch of write_pair_content.  I should mention that in my actual use case for this, the enum comes from a third party lib and has hundreds of values and the enum to string function is not constexpr, so using the enumerate_no_reflect function on its own will not work.  It's sufficient to just do a enumerate() with a single enum value which is enough to get glaze to treat it like an enum.

Another solution for your original code is to use the .raw option in glz::opts when writing. The .raw option writes out string-like values without quotes.
This line: write<json>::op<Opts>(fooName(foo), args...);
becomes:
write<json>::op<opt_true<Opts, &opts::raw>>(fooName(foo), args...);
glz::opt_true is used as a helper for setting the appropriate boolean at compile time of the templated options, so that the rest of the options get properly passed through.
Here's a working example on compiler explorer of your code: https://gcc.godbolt.org/z/jsf6W57oa


Fixed links

Category

[X ] Content fix
[ ] New article

Docs Build status updates of commit a2c72c5:
:warning: Validation status: warnings

File
Status
Preview URL
Details

Community/making-good-technology-decisions--establishing-decision-criteria.md
:warning:Warning
View
Details

Community/TOC.md
:white_check_mark:Succeeded
View

Community/making-good-technology-decisions--front-end.md
:white_check_mark:Succeeded
View

Community/making-good-technology-decisions--establishing-decision-criteria.md

Line 1, Column 1: [Warning-author-missing] Missing required attribute: 'author'. Add the current author's GitHub ID.
Line 1, Column 1: [Warning-title-missing] Missing required attribute: 'title'. Add a title string to show in search engine results.
Line 1, Column 1: [Warning-ms-author-missing] Missing required attribute: 'ms.author'. Add the current author's Microsoft alias.
Line 1, Column 1: [Warning-ms-prod-or-service-missing] One of the following attributes is required: 'ms.prod', 'ms.service'. Use ms.prod for on-premise products, or ms.service for cloud services.
Line 2, Column 43: [Warning-yaml-header-syntax-error] While parsing a block mapping, did not find expected key.
Line 1, Column 1: [Suggestion-description-missing] Missing required attribute: 'description'.

For more details, please refer to the build report.
If you see build warnings/errors with permission issues, it might be due to single sign-on (SSO) enabled on Microsoft's GitHub organizations. Please follow instructions here to re-authorize your GitHub account to Docs Build.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
Note: Your PR may contain errors or warnings unrelated to the files you changed. This happens when external dependencies like GitHub alias, Microsoft alias, cross repo links are updated. Please use these instructions to resolve them.
For any questions, please:Try searching in the Docs contributor and Admin GuideSee the frequently asked questionsPost your question in the Docs support channel

Docs Build status updates of commit a2c72c5:
:warning: Validation status: warnings

File
Status
Preview URL
Details

Community/making-good-technology-decisions--establishing-decision-criteria.md
:warning:Warning
View
Details

Community/TOC.md
:white_check_mark:Succeeded
View

Community/making-good-technology-decisions--front-end.md
:white_check_mark:Succeeded
View

Community/making-good-technology-decisions--establishing-decision-criteria.md

Line 1, Column 1: [Warning-author-missing] Missing required attribute: 'author'. Add the current author's GitHub ID.
Line 1, Column 1: [Warning-title-missing] Missing required attribute: 'title'. Add a title string to show in search engine results.
Line 1, Column 1: [Warning-ms-author-missing] Missing required attribute: 'ms.author'. Add the current author's Microsoft alias.
Line 1, Column 1: [Warning-ms-prod-or-service-missing] One of the following attributes is required: 'ms.prod', 'ms.service'. Use ms.prod for on-premise products, or ms.service for cloud services.
Line 2, Column 43: [Warning-yaml-header-syntax-error] While parsing a block mapping, did not find expected key.
Line 1, Column 1: [Suggestion-description-missing] Missing required attribute: 'description'.

For more details, please refer to the build report.
If you see build warnings/errors with permission issues, it might be due to single sign-on (SSO) enabled on Microsoft's GitHub organizations. Please follow instructions here to re-authorize your GitHub account to Docs Build.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
Note: Your PR may contain errors or warnings unrelated to the files you changed. This happens when external dependencies like GitHub alias, Microsoft alias, cross repo links are updated. Please use these instructions to resolve them.
For any questions, please:Try searching in the Docs contributor and Admin GuideSee the frequently asked questionsPost your question in the Docs support channel


Merge from fusionlab/dev, complete factory blocks

Complete blocks: upsample, bn, pooling, padding
Fix bugs in other items

thx for pull request 👍


fix: automerge is not working in packet

Signed-off-by: denis-tingajkin<EMAIL_ADDRESS>

@Bolodya1997 Could you check why packet clusters do not start?

@Bolodya1997 Are we still having this problem?  Do we have an idea of how to solve it?

@edwarnicke Could you have a look?


Failed to retrieve valid crypt volume key: Operation not permitted

I tried setting this up in credential mode on ubuntu 20.04. When I change my password, the encryption key doesn't get changed.
I see these logs when I run passwd:
$ passwd
Changing password for user.
Current password:
no password available
New password:
PamCryptsetup_Helper[2754]: Starting
PamCryptsetup_Helper[2754]: uid: 0; euid: 0
PamCryptsetup_Helper[2754]: Process memory locked
PamCryptsetup_Helper[2754]: Argument 0 /usr/lib/pam-cryptsetup/pam_cryptsetup_helper
PamCryptsetup_Helper[2754]: Argument 1: sda3_crypt
PamCryptsetup_Helper[2754]: Argument 2: user
PamCryptsetup_Helper[2754]: Reading argument 1
PamCryptsetup_Helper[2754]: Reading argument 2
PamCryptsetup_Helper[2754]: Reading password from login module.
PamCryptsetup_Helper[2754]: Reading old_password from login module.
PamCryptsetup_Helper[2754]: Checking if old password exists in crypt headerCrypt update process started.

passwd: password udpated successfully
PamCryptsetup_Helper[2754]: Crypt slot check returned 1
PamCryptsetup_Helper[2754]: Updating passpharse in slot 1
Volume key does not match the volume.
PamCryptsetup_Helper[2754]: Failed to update passphrase: Failed to retrieve valid crypt volume key: Operation not permitted (1)

Do I have something configured incorrectly?

@ribrdb
Focal uses luks2, it seems pam-cryptsetup don't support it.
After converting luks2->luks1, pam-cryptsetup works correctly on 20.04
cryptsetup luksConvertKey --pbkdf pbkdf2 /dev/nvme0n1p4
cryptsetup convert --type luks1 /dev/nvme0n1p4

apparently this doesn't work for me

apparently this doesn't work for me


realloc(Invalid pointer) from webrtc-mdns?

Trying to debug a SIGABRT in my Rust program and gdb points to this library (I am using webrtc-rs). It's pretty surprising to end up here with Rust and I haven't done any digging yet, so I'm just posting the backtrace in case anyone more familiar with this library can easily track down where the shenanigans are occuring:
(gdb) bt
#0  __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:50
#1  0x00007f7095f81859 in __GI_abort () at abort.c:79
#2  0x00007f7095fec29e in __libc_message (action=action@entry=do_abort, fmt=fmt@entry=0x7f7096116298 "%s\n") at ../sysdeps/posix/libc_fatal.c:155
#3  0x00007f7095ff432c in malloc_printerr (str=str@entry=0x7f70961145f5 "realloc(): invalid pointer") at malloc.c:5347
#4  0x00007f7095ffa0ea in __GI___libc_realloc (oldmem=0x7f6f501f10f2, bytes=72) at malloc.c:3175
#5  0x000056455a924690 in _ZN5alloc7raw_vec11finish_grow17hcb6d80ecf9e69105E.llvm.8045067765664252338 ()
#6  0x000056455a92461c in alloc::raw_vec::RawVec<T,A>::reserve_for_push ()
#7  0x000056455a928b34 in webrtc_mdns::message::name::Name::unpack_compressed ()
#8  0x000056455a92d426 in webrtc_mdns::message::parser::Parser::question ()
#9  0x000056455a91fb83 in <core::future::from_generator::GenFuture<T> as core::future::future::Future>::poll ()
#10 0x000056455a92a4fd in std::panicking::try ()
#11 0x000056455a92c222 in tokio::runtime::task::harness::poll_future ()
#12 0x000056455a92b7c9 in tokio::runtime::task::harness::Harness<T,S>::poll ()
#13 0x000056455abf76cf in std::thread::local::LocalKey<T>::with () at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/core/src/panicking.rs:182
#14 0x000056455abef9a8 in tokio::runtime::thread_pool::worker::Context::run_task () at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/core/src/panicking.rs:182
#15 0x000056455abef190 in tokio::runtime::thread_pool::worker::Context::run () at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/core/src/panicking.rs:182
#16 0x000056455abd745b in tokio::macros::scoped_tls::ScopedKey<T>::set () at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/core/src/panicking.rs:182
#17 0x000056455abee5fc in tokio::runtime::thread_pool::worker::run () at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/core/src/panicking.rs:182
#18 0x000056455abd0c11 in <tokio::runtime::blocking::task::BlockingTask<T> as core::future::future::Future>::poll () at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/core/src/panicking.rs:182
#19 0x000056455abe77f0 in tokio::runtime::task::harness::Harness<T,S>::poll () at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/core/src/panicking.rs:182
#20 0x000056455abe5123 in tokio::runtime::blocking::pool::Inner::run () at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/core/src/panicking.rs:182
#21 0x000056455abdbd82 in std::sys_common::backtrace::__rust_begin_short_backtrace () at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/core/src/panicking.rs:182
#22 0x000056455abd22aa in core::ops::function::FnOnce::call_once{{vtable-shim}} () at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/core/src/panicking.rs:182
#23 0x000056455ac3eb73 in <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once () at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/alloc/src/boxed.rs:1853
#24 <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once () at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/alloc/src/boxed.rs:1853
#25 std::sys::unix::thread::Thread::new::thread_start () at library/std/src/sys/unix/thread.rs:108
#26 0x00007f709270c609 in start_thread (arg=<optimized out>) at pthread_create.c:477
#27 0x00007f709607e163 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Looking at the unpack_compressed function it looks like completely safe rust 🤔 .

Hey, nothing in the crates code stands out here but googling for SIGABRT reserve_for_push does yield some results. Is there anything limits in your OS that are being hit(memory, fd limits, etc) ?

I think this might be related to https://github.com/webrtc-rs/webrtc/issues/197
In this specific case what was happening is since the entire system was busy opening and closing udp sockets, it choked out other interrupts until the machine itself became unstable.


Auto Leveling stops 1mm above surface without doing anything

I'm using the latest version of the CNC gCode controller and a variant of Marlin that was released for the Malyan M150 - which I adapted for my M180.
No major changes, milling works perfectly fine.
When trying to use auto leveling the controller sends the command for approaching the first point

As you can see... it stops after that without anything to do. Marlin simply drives to the last G1 command and stops 1mm above the surface. It reports "ok" and does nothing else.
This seems odd and should not happen. Any ideas?
EDIT: After waiting for a while, I turned off the motors manually with the M18 command.

Hey McNugget6750,
The Software is waiting for the endstopwaring from Marlin.
When Marlin Hits the endstop it Reports it and also Reports the Position where it happend.
The Software is using that to calculate the next move. So if there is no endstopwaring it will not continue.
There are a lot of Settings to control the movements during the autoleveling. You have to change it that marling will hit the endstop Minimum during the g1 command. The Software is not using any speceal command for autoleveling because the original Marlin Software did not support it.
Happy milling
Greetings
Patrick

The last command Marlin receives is G1 with a Z height of 1mm above(!) the surface. It is impossible for Marlin to report any endstop hit at 1mm above the last known Z=0mm.
My G1 commands are allowed to go 5mm below the Z=0mm, therefore it should work in theory.
Here is what happens: The head moves to Z=10mm. After that, it move to 5.05mm in X and Y. Then it slowly lowers the endmill to Z=1mm and then it stops giving commands. I don't see the command to go below the surface to actually "find" the Z height.
Am I misunderstanding something? Maybe I make a mistake somewhere... but I can't see it.

Can you post your Autoleveling settings?

I found the issue. Only took me 2 years. You have to set the probing depth to POSITIVE values even though the default settings are set to NEGATIVE 1 (-1.000mm). Setting it to positive 2mm works!


Percentage in determined applications

As a manager, I would like to understand how the percentage is calculated in the round I manage. Related to #2071

I reviewed the new presentation of percentages in test and it appears to be accurate. Thank you!


Exclude MsHtml APIs

These older APIs were only intended for JScript and VBScript clients, but MsHtml is by far the single largest module and as such takes a nice chunk out of the overall package size.

Yes, I really need to spend some time and write a more complete FAQ.

See #1933

It can be reintroduced in a few different ways if the need arises. The windows-bindgen crate fulfills the promise of "any Windows API past, present, and future", is used to generate the windows crate, and any additional crates for supplemental APIs like this.

OK, if it's feasible to have a separate mshtml crate via windows-bindgen, I will be happy to maintain such a crate if I have the need for it.