Error for realsense_camera realsense_r200_nodelet_standalone_preset.launch

System Configuration

Version
Known Good
Your Configuration

Operating System
ubuntu 14.04
ubuntu 14.04

Kernel Version
4.4.0-13
4.4.0-040400-generic

R200 FW
<IP_ADDRESS>
<IP_ADDRESS>

librealsense
0.9.1
0.9.0

I can run cpp-capture and build the package using catkin-make. However when I run
"roslaunch realsense_camera realsense_r200_nodelet_standalone_preset.launch" , an error occurs.
[ INFO] [1460466020.703162344]: Initializing nodelet with 4 worker threads.
[ INFO] [1460466020.790980800]: RealSense Camera - Starting camera nodelet.
**[ERROR] [1460466021.095609328]: RealSense Camera - Error calling rs_create_context ( api_version:4 ):
uvc_open2(...) returned Access denied
[FATAL] [1460466021.232074645]: Service call failed!
[standalone_nodelet-2] process has died [pid 7430, exit code 1, cmd /opt/ros/indigo/lib/nodelet/nodelet manager __name:=standalone_nodelet __log:=/home/aicrobo/.ros/log/82e77eb2-00ae-11e6-a8a2-c01885c34cc3/standalone_nodelet-2.log].
log file: /home/aicrobo/.ros/log/82e77eb2-00ae-11e6-a8a2-c01885c34cc3/standalone_nodelet-2*.log
[RealsenseNodelet-3] process has died [pid 7437, exit code 255, cmd /opt/ros/indigo/lib/nodelet/nodelet load realsense_camera/RealsenseNodelet standalone_nodelet mode preset enable_depth true enable_color true enable_pointcloud true enable_tf true __name:=RealsenseNodelet __log:=/home/aicrobo/.ros/log/82e77eb2-00ae-11e6-a8a2-c01885c34cc3/RealsenseNodelet-3.log].
log file: /home/aicrobo/.ros/log/82e77eb2-00ae-11e6-a8a2-c01885c34cc3/RealsenseNodelet-3*.log
**
Do I need to run the command as a super user? I tried to add "sudo" before the command but it can not find the command "roslaunch"
What can I do?

We could not reproduce this error.
Can you please ensure that you are using the Video4Linux backend? Follow the instructions at https://github.com/IntelRealSense/librealsense/blob/master/doc/installation.md#video4linux-backend
You could also try installing the librealsense version 0.9.1

Try adding your login account to the group video.
sudo adduser $USER video
You may need to log out and log back into the system to see the new group.
groups
In general, the video devices will be owned by root and set to group video:
$ ls -l /dev/video*
crw-rw----+ 1 root video 81, 3 Apr 12 18:02 /dev/video3
crw-rw----+ 1 root video 81, 4 Apr 12 18:02 /dev/video4
crw-rw----+ 1 root video 81, 5 Apr 12 18:02 /dev/video5

@sclin-loauas Were you able to solve this permissions problem?

Closing due to no response from submitter.


user_controller_test in template fails

For the setup the following code is used.
     var responses = await Future.wait([0, 1, 2, 3, 4, 5].map((i) {
        return (app.client.clientAuthenticatedRequest("/register")
              ..json = {
                "email"<EMAIL_ADDRESS>                "password": "foobaraxegrind$i%"
              })
            .post();
      }));

However, Future.wait can be used when "the order of execution of the functions is not important". But the test asumes that<EMAIL_ADDRESS>is the first user that is made.
Suggested change:
      var responses = new List();
      for(var i=0; i<6; i++){
        var response = await (app.client.clientAuthenticatedRequest("/register")
          ..json = {
            "email"<EMAIL_ADDRESS>            "password": "foobaraxegrind$i%"
          })
          .post();
        responses.add(response);
      }

👍 Thanks. The underlying database driver is a serial queue and in the tests there is only one database  connection, but those are some grand assumptions for the tests to make going forward.

Hmm.. strange. I ran the test on my laptop and they failed most of the time. I got numbers ranging from 0 to 3. I didn't change anything on the standard template.

now in 2.0 branch


Point within LinearRing returns False?

Checking if the following point is within a LinearRing returns False:

sq = geometry.LinearRing([[0,0], [1,0], [1,1], [0,1]])
print(geometry.Point([0.5, 0.5]).within(sq))

Whereas something similar as a Polygon instead, returns True:

sq = geometry.Polygon([[0,0], [1,0], [1,1], [0,1]])
print(geometry.Point([0.5, 0.5]).within(sq))

Is this an issue, or is there something I'm missing?

The results are as expected.  A LinearRing is a LineString.  The interior of a LineString is the line itself, so a point would have to be on a line to be within a line.  Even though a LinearRing is closed, the enclosed space within the ring is still the LinearRing's exterior.  With your Polygon example, the enclosed space is the Polygon's interior, so your point is within the Polygon.

OK, thanks for clarifying.

I've been thinking about this some more and wish to suggest that this behaviour be revised. I realise the strict geometric interpretation behind this rationale, but it is counterintuitive and possibly results in more steps being required to get things done from the point of view of working with the actual geometries in python.
For example, to check if a point is within an interior hole inside a polygon, one first has to convert the interior LinearRing to a Polygon, then do the check.
Similarly, to find a representative_point() of an interior hole, then it is necessary to first cast to a Polygon, and then deduce the point.
I imagine there are use cases for the current methodology, but I struggle to think what these are?
Thanks.

For the most part, this is a GEOS issue and not a Shapely issue.  Shapely is based on GEOS, and the behavior you would like to see changed has been implemented in GEOS.  Beyond that, the behavior you would like to see changed is defined within the OGC Simple Feature standards [Part 1: Common Architecture, Part 2: SQL Option].
I think it is unlikely this behavior will be changed in the OGC standards or GEOS, which leaves a couple of options on the Shapely table.  First, Shapely could redefine or do some kind of overloading/overriding of what is implemented in the OGC standards and GEOS.  I don't speak for the active contributors, but I also think this would be unlikely.  Second, Shapely could add some above-and-beyond functionality that isn't in conflict with standards or OGC.
The latter approach is the path that OpenLayers went down by creating a containsPoint function for the LinearRing geometry.  From a performance perspective, would ring.containsPoint(pt) perform any better than Polygon(ring).contains(pt) that already works?  I don't know.

Thanks, quite helpful for larger context. Since this is based on GEOS it makes sense to leave as is and just do the casting to Polygon when needed.

I eventually found this issue when i went to raise a bug report (for LinearRing.contains(LinearRing)==False).  Perhaps this behaviour could be called out in the documentation to avoid further confusion.

I would be happy to review a documentation PR but can't otherwise spend the time on this now.


Code for GAN-Leaks

Hi, I am doing some research on the privacy of diffusion models. Could I get the code you use to test GAN-Leaks？

Please refer to their official implementations https://github.com/DingfanChen/GAN-Leaks


public some error

#1295

Thanks for the PR, but I prefer solution in https://github.com/go-redis/redis/pull/1331 - it should be slightly more flexible. Let me know if there are issues with it.


SWS/wol: Adjust envelope or track height under mouse cursor

Added action (Closes #716)

SWS/wol: Adjust envelope or track height under mouse cursor (MIDI CC relative/mousewheel)

thanks wol!


How to achieve execution agent local variable?

Sometimes we need some variables to be execution agent local. Taking a use-case of parallel random number generation. If I want random number generator to be non-blocking for multiple threads, then each thread should have a separate copy of random generator.
For example, in case of a thread pool scheduler a thread_local random generator can be used. But that's not a generic solution.
I don't know how to handle the same with P2300. Is there some way to handle this kind of use-case?
I feel the use-case can be solved if I have 2 queries:

Maximum number of tasks that can be executed concurrently at any moment of time. (can be unbounded too)
Let's say the above query returns n. Then a query like current_execution_id that returns [0, n) representing on which execution agent task is currently at.

You can always invent your needed queries and add support for them in the receivers env of your schedule operation, at least if you own the execution context yourself.
But querying the receivers env is basically the way to access information that is only known at that time.

There was a proposal for an object-pool that was intended to address this kind of use-case.
See https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2023/p2774r1.pdf


Template Provisioning Failed

Describe the issue
I have tried to provision the site template to my site, but I have received an Template Failed!.
Have tried again with different template, it turns out the same.
Could you please help to check? Thanks
Expected behavior
Template Provision Succeed.
Screenshots

Details (please complete the following information):

PnP Correlation ID: cb14584c-c7d6-4c08-8d94-e3756207c301
Reference Template: https://lookbook.microsoft.com/details/4541e5c4-dff6-4cd7-87be-4646b56d6000
Primary language of the target tenant: English
Are you using a Tenant Global Admin account to provision the template: Yes

Hi,
Thanks for using the Look Book site. Based on the event log, we can see that you applied the template providing the URL of a site that was already in the recycle bin of SharePoint Online. Please, provide a different URL or empty the recycle bin. Thanks.

Hi,
Thanks for using the Look Book site. Based on the event log, we can see that you applied the template providing the URL of a site that was already in the recycle bin of SharePoint Online. Please, provide a different URL or empty the recycle bin. Thanks.

Hi,
Thanks for using the Look Book site. Based on the event log, we can see that you applied the template providing the URL of a site that was already in the recycle bin of SharePoint Online. Please, provide a different URL or empty the recycle bin. Thanks.

Thanks!

Hi,
Thanks for using the Look Book site. Based on the event log, we can see that you applied the template providing the URL of a site that was already in the recycle bin of SharePoint Online. Please, provide a different URL or empty the recycle bin. Thanks.

Thanks!


Can be used with fastcgi?

Sorry I couldn't find a way to contact you so I opened a new ticket.
Can this be or should be used with fastcgi cache for example or some other nginx cache system ?
Thanks!

"Can this be"... probably!
"Should this be"... I don't think so. Basically, the configuration asks Nginx to serve the static file directly (without using PHP-FPM and executing WP-Rocket to server the static file).  You should note that once Nginx reads a file on disk, it caches that static files in RAM.  The question is: what kind of caching would like to achieve that is not already done by Nginx ?

Thanks for your clarification.
Im just tying to achieve the best caching posible in my system that will allow me to serve as much concurrent users as possible.
I did an easyengine install that brings memcache by default but wp rocket don't support it yet.
I always used w3 total cache with apc and varnish and now Im trying to get the best of wp rocket

The caching is different in W3TC as you can cache objects (which you can't do in WP-Rocket). I dropped W3TC for WP-Rocket because the configuration was a pain and I found several bugs that proved the product wasn't tested properly.
W3TC surely offers more options but it's also more complex to configure. You might want to ask yourself what is really needed for your website.
With Rocket-Nginx, you could shutdown PHP-FPM if all your pages are cached (once they are in cache, of course).  That will save you a lot of resource as Nginx was designed to be efficient with static files.


Any plans for OpenAPI 3.0?

hi in (swagger-express-ts2)[https://github.com/pesoklp13/swagger-express-ts2] i will make OpenAPI 3.0 definition support, after successful cover all functionalities of Swagger 2.0.0 based on docs.
it means some investigation, implementation and refactoring. Will be glad if you will raise some issues or comments on my fork of this repo.


Matrix clipboard

Summary
Adding copy-n-paste of DSV data for model-configuration matrix

Testing
You can either

paste with keyboard shortcut, or
paste with the "paste" button

Need to do bulk updates, singular updates can end up sometimes in race conditions.


Browser tabs are indistinguishable

 Issue by fionajordan
Sunday Jan 24, 2016 at 16:41 GMT
Originally opened as https://github.com/NESCent/dplace/issues/223

Usability: All new tabs opened by a new action start with DPLACE, making it difficult for users to discern what tab corresponds to what page once a number of tabs are open. Once we have the DPLACE logo as the favicon can we remove DPLACE from the page titles as a way of resolving this issue?

 Comment by SimonGreenhill
Sunday Jan 24, 2016 at 20:03 GMT

Yes, DPLACE should go to the end of the <title> attribute.

Some bugs in implementation

Fixed again in 9bdc0b911b397b6135ce8a1e7f2dca5a123a457c


Enable parallel and randomized testings in XCTests and XCUITests

We should enable parallel and randomized testings as much as possible in all flutter repos.
Parallel and randomized tests can make CI run faster and forcing the tests not relying on weird global state.
Things to watch out when we start to enable  parallel and randomized tests:

The simulator name will be generated as something like "Clone 2 of iPhone 8" instead of "iPhone 8". Tests that relies on the device name need to be handle this. (e.g The golden image file of scenario app tests)
Some tests might need to be modified to avoid global states. Sometimes, modification of the production code is necessary for dependency injection.

XCTests and XCUITests to enable:

[ ] scenario_app
[ ] engine xctests
[ ] XCTests in plugins.

cc @stuartmorgan Is there anything I'm missing that making tests in plugins not possible to be run in parallel?

See https://github.com/flutter/engine/pull/34021 and https://github.com/flutter/engine/pull/34020 where parallelization was turned on and the tests failed.

For the plugins, instead of changing the test schemes in all the examples, -parallel-testing-enabled YES can be passed into xcodebuild:
https://github.com/flutter/plugins/blob/bc6884621248f2994b36600924166ef013096c1a/script/tool/lib/src/native_test_command.dart#L403-L404
The Cirrus Mac tests have 12 CPUs available: https://cirrus-ci.com/task/6057103855976448

For the plugins, instead of changing the test schemes in all the examples, -parallel-testing-enabled YES can be passed into xcodebuild

And -maximum-parallel-testing-workers if needed.

For the plugins, instead of changing the test schemes in all the examples, -parallel-testing-enabled YES can be passed into xcodebuild

We might want to change the examples though, so that people developing tests and running them in Xcode will be running them the same way as bot. Otherwise people may introduce ordering or parallelization problems that only show on bots (or when running locally via repo tooling), which could make them frustrating to debug.

We tested running the engine iOS tests in parallel, and unfortunately in that mode the tests don't report errors or stack traces, and the only way to get that info would be from an uploaded xcresult bundle.
See https://github.com/flutter/engine/pull/34020#issuecomment-1156999600.
I don't think there's any way to get that bundle off of a Cirrus run?  In which case we shouldn't do this for the plugin Cirrus tests.

We could upload it, but unless there's a parser for it that's probably not super useful. We could parse it locally though in the repo tool, right?

We could parse whatever plist in the bundle has the test failure results, or instead download it and open it in Xcode on our machines locally.

https://stackoverflow.com/q/47870533
Looks like https://github.com/tuist/xcbeautify handles it adding a new dependencies just for this seems icky


Pulsar 1.1.3 compiled manually from sources still says "version v<IP_ADDRESS>-gb6983ce"

Hello my favorite devs,
I compiled successfully Pulsar 1.1.3 with the source files https://github.com/PulsarCoin/Pulsar-Coin-Cryptocurrency/archive/refs/tags/v1.1.3.tar.gz.
However when i execute the following command pulsard -h, the daemon tells a complete different story:
pulsard -h
Pulsar Daemon version v<IP_ADDRESS>-gb6983ce

Usage:
  pulsard [options]                     Start Pulsar Daemon

Options:

  -?
       Print this help message and exit

  -version
       Print version and exit

  -alerts
       Receive and display P2P network alerts (default: 1)

  -alertnotify=<cmd>
       Execute command when a relevant alert is received or we see a really
       long fork (%s in cmd is replaced by message)

  -blocknotify=<cmd>
       Execute command when the best block changes (%s in cmd is replaced by
       block hash)

  -assumevalid=<hex>
       If this block is in the chain assume that it and its ancestors are valid
       and potentially skip their script verification (0 to verify all,
       default:
       71d0dcd63b6dd49e923aeac4a3d596b76d09756109b003e4ef39c25715e1a45d,
       testnet:
<PHONE_NUMBER>000000000000000000000000000000000000000000000000000000)

  -conf=<file>
       Specify configuration file (default: pulsar.conf)

  -daemon
       Run in the background as a daemon and accept commands

  -datadir=<dir>
       Specify data directory

  -dbcache=<n>
       Set database cache size in megabytes (4 to 16384, default: 450)

  -loadblock=<file>
       Imports blocks from external blk000??.dat file on startup

  -debuglogfile=<file>
       Specify location of debug log file: this can be an absolute path or a
       path relative to the data directory (default: debug.log)

  -maxorphantx=<n>
       Keep at most <n> unconnectable transactions in memory (default: 100)

  -maxmempool=<n>
       Keep the transaction memory pool below <n> megabytes (default: 300)

  -mempoolexpiry=<n>
       Do not keep transactions in the mempool longer than <n> hours (default:
       336)

  -persistmempool
       Whether to save the mempool on shutdown and load on restart (default: 1)

  -blockreconstructionextratxn=<n>
       Extra transactions to keep in memory for compact block reconstructions
       (default: 100)

  -par=<n>
       Set the number of script verification threads (-4 to 16, 0 = auto, <0 =
       leave that many cores free, default: 0)

  -pid=<file>
       Specify pid file (default: pulsard.pid)

  -reindex-chainstate
       Rebuild chain state from the currently indexed blocks

  -reindex
       Rebuild chain state and block index from the blk*.dat files on disk

  -sysperms
       Create new files with system default permissions, instead of umask 077
       (only effective with disabled wallet functionality)

  -txindex
       Maintain a full transaction index, used by the getrawtransaction rpc
       call (default: 1)

Connection options:

  -addnode=<ip>
       Add a node to connect to and attempt to keep the connection open (see
       the `addnode` RPC command help for more info)

  -banscore=<n>
       Threshold for disconnecting misbehaving peers (default: 100)

  -bantime=<n>
       Number of seconds to keep misbehaving peers from reconnecting (default:
       86400)

  -bind=<addr>
       Bind to given address and always listen on it. Use [host]:port notation
       for IPv6

  -connect=<ip>
       Connect only to the specified node(s); -connect=0 disables automatic
       connections (the rules for this peer are the same as for
       -addnode)

  -discover
       Discover own IP addresses (default: 1 when listening and no -externalip
       or -proxy)

  -dns
       Allow DNS lookups for -addnode, -seednode and -connect (default: 1)

  -dnsseed
       Query for peer addresses via DNS lookup, if low on addresses (default: 1
       unless -connect used)

  -externalip=<ip>
       Specify your own public address

  -forcednsseed
       Always query for peer addresses via DNS lookup (default: 0)

  -listen
       Accept connections from outside (default: 1 if no -proxy or -connect)

  -listenonion
       Automatically create Tor hidden service (default: 1)

  -maxconnections=<n>
       Maintain at most <n> connections to peers (default: 125)

  -maxreceivebuffer=<n>
       Maximum per-connection receive buffer, <n>*1000 bytes (default: 5000)

  -maxsendbuffer=<n>
       Maximum per-connection send buffer, <n>*1000 bytes (default: 1000)

  -maxtimeadjustment
       Maximum allowed median peer time offset adjustment. Local perspective of
       time may be influenced by peers forward or backward by this
       amount. (default: 4200 seconds)

  -onion=<ip:port>
       Use separate SOCKS5 proxy to reach peers via Tor hidden services
       (default: -proxy)

  -onlynet=<net>
       Only connect to nodes in network <net> (ipv4, ipv6 or onion)

  -permitbaremultisig
       Relay non-P2SH multisig (default: 1)

  -peerbloomfilters
       Support filtering of blocks and transaction with bloom filters (default:
       1)

  -port=<port>
       Listen for connections on <port> (default: 5995 or testnet: 5998
       regtest: 5993)

  -proxy=<ip:port>
       Connect through SOCKS5 proxy

  -proxyrandomize
       Randomize credentials for every proxy connection. This enables Tor
       stream isolation (default: 1)

  -seednode=<ip>
       Connect to a node to retrieve peer addresses, and disconnect

  -timeout=<n>
       Specify connection timeout in milliseconds (minimum: 1, default: 5000)

  -torcontrol=<ip>:<port>
       Tor control port to use if onion listening enabled (default:
       <IP_ADDRESS>:9051)

  -torpassword=<pass>
       Tor control port password (default: empty)

  -upnp
       Use UPnP to map the listening port (default: 0)

  -whitebind=<addr>
       Bind to given address and whitelist peers connecting to it. Use
       [host]:port notation for IPv6

  -whitelist=<IP address or network>
       Whitelist peers connecting from the given IP address (e.g. <IP_ADDRESS>) or
       CIDR notated network (e.g. <IP_ADDRESS>/24). Can be specified multiple
       times. Whitelisted peers cannot be DoS banned and their
       transactions are always relayed, even if they are already in the
       mempool, useful e.g. for a gateway

  -maxuploadtarget=<n>
       Tries to keep outbound traffic under the given target (in MiB per 24h),
       0 = no limit (default: 0)

Wallet options:

  -addresstype
       What type of addresses to use ("legacy", "p2sh-segwit", or "bech32",
       default: "legacy")

  -changetype
       What type of change to use ("legacy", "p2sh-segwit", or "bech32").
       Default is same as -addresstype, except when
       -addresstype=p2sh-segwit a native segwit output is used when
       sending to a native segwit address)

  -disablewallet
       Do not load the wallet and disable wallet RPC calls

  -keypool=<n>
       Set key pool size to <n> (default: 1000)

  -rescan
       Rescan the block chain for missing wallet transactions on startup

  -salvagewallet
       Attempt to recover private keys from a corrupt wallet on startup

  -salvageaggressive
       Be aggressive during -salvagewallet operation (default: false)

  -spendzeroconfchange
       Spend unconfirmed change when sending transactions (default: 1)

  -txconfirmtarget=<n>
       If paytxfee is not set, include enough fee so transactions begin
       confirmation on average within n blocks (default: 6)

  -upgradewallet
       Upgrade wallet to latest format on startup

  -wallet=<file>
       Specify wallet file (within data directory) (default: wallet.dat)

  -walletbroadcast
       Make the wallet broadcast transactions (default: 1)

  -walletdir=<dir>
       Specify directory to hold wallets (default: <datadir>/wallets if it
       exists, otherwise <datadir>)

  -walletnotify=<cmd>
       Execute command when a wallet transaction changes (%s in cmd is replaced
       by TxID)

  -zapwallettxes=<mode>
       Delete all wallet transactions and only recover those parts of the
       blockchain through -rescan on startup (1 = keep tx meta data e.g.
       account owner and payment request information, 2 = drop tx meta
       data)

ZeroMQ notification options:

  -zmqpubhashblock=<address>
       Enable publish hash block in <address>

  -zmqpubhashtx=<address>
       Enable publish hash transaction in <address>

  -zmqpubrawblock=<address>
       Enable publish raw block in <address>

  -zmqpubrawtx=<address>
       Enable publish raw transaction in <address>

Debugging/Testing options:

  -uacomment=<cmt>
       Append comment to the user agent string

  -debug=<category>
       Output debugging information (default: 0, supplying <category> is
       optional). If <category> is not supplied or if <category> = 1,
       output all debugging information. <category> can be: net, tor,
       mempool, http, bench, zmq, db, rpc, estimatefee, addrman,
       selectcoins, reindex, cmpctblock, rand, prune, proxy, mempoolrej,
       libevent, coindb, qt, leveldb, 1, pos, alert.

  -debugexclude=<category>
       Exclude debugging information for a category. Can be used in conjunction
       with -debug=1 to output debug logs for all categories except one
       or more specified categories.

  -help-debug
       Show all debugging options (usage: --help -help-debug)

  -logips
       Include IP addresses in debug output (default: 0)

  -logtimestamps
       Prepend debug output with timestamp (default: 1)

  -printtoconsole
       Send trace/debug info to console instead of debug.log file

  -shrinkdebugfile
       Shrink debug.log file on client startup (default: 1 when no -debug)

Chain selection options:

  -testnet
       Use the test chain

Node relay options:

  -bytespersigop
       Equivalent bytes per sigop in transactions for relay and mining
       (default: 20)

  -datacarrier
       Relay and mine data carrier transactions (default: 1)

  -datacarriersize
       Maximum size of data in data carrier transactions we relay and mine
       (default: 83)

  -whitelistrelay
       Accept relayed transactions received from whitelisted peers even when
       not relaying transactions (default: 1)

  -whitelistforcerelay
       Force relay of transactions from whitelisted peers even if they violate
       local relay policy (default: 1)

Block creation options:

  -blockmaxweight=<n>
       Set maximum BIP141 block weight (default: 3996000)

RPC server options:

  -server
       Accept command line and JSON-RPC commands

  -rest
       Accept public REST requests (default: 0)

  -rpcbind=<addr>[:port]
       Bind to given address to listen for JSON-RPC connections. This option is
       ignored unless -rpcallowip is also passed. Port is optional and
       overrides -rpcport. Use [host]:port notation for IPv6. This
       option can be specified multiple times (default: <IP_ADDRESS> and
       ::1 i.e., localhost, or if -rpcallowip has been specified,
       <IP_ADDRESS> and :: i.e., all addresses)

  -rpccookiefile=<loc>
       Location of the auth cookie (default: data dir)

  -rpcuser=<user>
       Username for JSON-RPC connections

  -rpcpassword=<pw>
       Password for JSON-RPC connections

  -rpcauth=<userpw>
       Username and hashed password for JSON-RPC connections. The field
       <userpw> comes in the format: <USERNAME>:<SALT>$<HASH>. A
       canonical python script is included in share/rpcuser. The client
       then connects normally using the
       rpcuser=<USERNAME>/rpcpassword=<PASSWORD> pair of arguments. This
       option can be specified multiple times

  -rpcport=<port>
       Listen for JSON-RPC connections on <port> (default: 5996 or testnet:
       5997 regtest: 5998)

  -rpcallowip=<ip>
       Allow JSON-RPC connections from specified source. Valid for <ip> are a
       single IP (e.g. <IP_ADDRESS>), a network/netmask (e.g.
       <IP_ADDRESS>/<IP_ADDRESS>) or a network/CIDR (e.g. <IP_ADDRESS>/24). This
       option can be specified multiple times

  -rpcserialversion
       Sets the serialization of raw transaction or block hex returned in
       non-verbose mode, non-segwit(0) or segwit(1) (default: 1)

  -rpcthreads=<n>
       Set the number of threads to service RPC calls (default: 4)

Is it a little glitch in the matrix?

I am closing this bug, i'm an idiot, i totally forgot building from source does not copy the file directly in the /usr/local/bin when executing make install even with root privileges.


Connecting via SSH results in immediate connection closure

I have viser running on a host machine and that is all working correctly. If I run up the simplest example provided 00_coordinate_frames.py, when I connect via ssh using
ssh -L 8080:localhost:8080 username@host_ip
the following happens as soon as I try to open a web browser with http://<IP_ADDRESS>:8080
(viser) Connection opened (0, 1 total), 19 persistent messages
(viser) Connection closed (0, 0 total)

The ssh connection is still alive to the server, but the viser viewer flashes up in the web browser and is then immediately been disconnected.
I host is running linux and the client is running mac os.

Hi @adam-hartshorne!
Unfortunately I'm not able to reproduce this so it's tough to help; I'm also using a MacOS client + Linux host. You could try <IP_ADDRESS>:8080 instead of <IP_ADDRESS>:8080? Or if there are any errors in the Javascript console that would also be useful to know.

For those who encounter this problem, ensure that hardware acceleration is turned on in Chrome.


#211 Add 'make_*' functions to PostgresModule

[ ] sync with master
[ ] implement interval
[ ] add interval test
[ ] ensure tests are working

I'll be hacking away at this again today, got side tracked with the holidays!

@robmwalsh I've finally got this working, I'm thinking it's actually using the toString version of the Interval and Timestampz case classes which might be fine for now. Let me know any thoughts you have for improving and I'll address them. I added in the postgres driver to reference the PGInterval class, which is similar to how slick implements this functionality.

[ ] Move Interval.scala from zio.sql.custom -> zio.sql.postgresql
[ ] Create PostgresTypeTagExtension and move PG specifics into that
[ ] Remove any Arrity FunctionCallX that isn't really used
[ ] Double check which modules I'm adding the pg driver dependency to

@robmwalsh this is a little bit closer to what I think we'd like ultimately. I'm wondering What you think I need to either 1) just us the toString I've defined on Timestampz and Interval or 2) have it use the tupled form of them. Also I think you were suggesting I remove the Timestampz case class, given how I've structured this do you think that still makes sense. My main motivator was that it provides a nice interface for creating them that matches the function args of the postgres function. Excited to get this a little bit closer :)

@robmwalsh I have the question above about Timestampz and wondering if you have any ideas about how to fix my broken tests.

@brbrown25 @jczuchnowski we now have a working dialect specific type tag for postgres :)
The main issue was we were conflating type tags (which are associated with the values but are just implicit objects) with the values themselves. Interval didn't need to extend anything.
Thanks to @jczuchnowski for finding the cause of the compiling never ending.
@brbrown25 can you please pull the latest commits? your tests are now failing again :)
Interestingly there's an error involving the postgres library objects - I don't think we should be using PGInterval directly, just providing a way to convert to and from one to our Interval representation. I haven't actually looked at any of your test code though so could be something simple.

@brbrown25 @jczuchnowski we now have a working dialect specific type tag for postgres :)
The main issue was we were conflating type tags (which are associated with the values but are just implicit objects) with the values themselves. Interval didn't need to extend anything.
Thanks to @jczuchnowski for finding the cause of the compiling never ending.
@brbrown25 can you please pull the latest commits? your tests are now failing again :)
Interestingly there's an error involving the postgres library objects - I don't think we should be using PGInterval directly, just providing a way to convert to and from one to our Interval representation. I haven't actually looked at any of your test code though so could be something simple.

@brbrown25 @jczuchnowski we now have a working dialect specific type tag for postgres :)
The main issue was we were conflating type tags (which are associated with the values but are just implicit objects) with the values themselves. Interval didn't need to extend anything.
Thanks to @jczuchnowski for finding the cause of the compiling never ending.
@brbrown25 can you please pull the latest commits? your tests are now failing again :)
Interestingly there's an error involving the postgres library objects - I don't think we should be using PGInterval directly, just providing a way to convert to and from one to our Interval representation. I haven't actually looked at any of your test code though so could be something simple.

Thanks! Yeah I'll pull and look. The PGInterval should only be used when the decoding is happening but I'll get to the bottom of that!

@brbrown25 @jczuchnowski we now have a working dialect specific type tag for postgres :)
The main issue was we were conflating type tags (which are associated with the values but are just implicit objects) with the values themselves. Interval didn't need to extend anything.
Thanks to @jczuchnowski for finding the cause of the compiling never ending.
@brbrown25 can you please pull the latest commits? your tests are now failing again :)
Interestingly there's an error involving the postgres library objects - I don't think we should be using PGInterval directly, just providing a way to convert to and from one to our Interval representation. I haven't actually looked at any of your test code though so could be something simple.

Thanks! Yeah I'll pull and look. The PGInterval should only be used when the decoding is happening but I'll get to the bottom of that!

[] pull latest
[] fix failing test

[] pull latest
[] fix failing test

@robmwalsh @jczuchnowski I'm down to the following issues that I'm not quite sure how to address.

The make_timestamptz I want to render as SELECT make_timestamptz(2013, 7, 15, 8, 15, 23, '+00') but currently it's rendering as SELECT make_timestamptz('2013-07-15T08:15:23.5+00:00') which is it just stringing the ZonedDatetime. So I switched to just passing in a tuple of the args and that makes it pass for now. One issue with the ZonedDateTime is that you can't pass in seconds as a decimal so 23.5 is a valid value to the make_timestamptz for seconds, however ZonedDateTime wants everything as ints.
The interval test is now throwing

[info]     An unchecked error was produced.
[info]     scala.NotImplementedError: an implementation is missing

But I'm not quite sure where that's coming from.

@robmwalsh @jczuchnowski I'm down to the following issues that I'm not quite sure how to address.

The make_timestamptz I want to render as SELECT make_timestamptz(2013, 7, 15, 8, 15, 23, '+00') but currently it's rendering as SELECT make_timestamptz('2013-07-15T08:15:23.5+00:00') which is it just stringing the ZonedDatetime. So I switched to just passing in a tuple of the args and that makes it pass for now. One issue with the ZonedDateTime is that you can't pass in seconds as a decimal so 23.5 is a valid value to the make_timestamptz for seconds, however ZonedDateTime wants everything as ints.
The interval test is now throwing

[info]     An unchecked error was produced.
[info]     scala.NotImplementedError: an implementation is missing

But I'm not quite sure where that's coming from.

@robmwalsh I've gone ahead and cleaned this up and squashed it down into a single commit. I really wanted to be able to do something like def decode[A, E <: DecodingError](column: Either[Int, String], resultSet: ResultSet): Either[E, A] = ??? for the definition of decode, but the compiler wouldn't let me. I also made one more change which was bringing back the Timestampz case class. Let me know any additional changes you'd like and I'll rock them out quickly. I should have the PGInterval pr in the next week or so.

@robmwalsh I've gone ahead and cleaned this up and squashed it down into a single commit. I really wanted to be able to do something like def decode[A, E <: DecodingError](column: Either[Int, String], resultSet: ResultSet): Either[E, A] = ??? for the definition of decode, but the compiler wouldn't let me. I also made one more change which was bringing back the Timestampz case class. Let me know any additional changes you'd like and I'll rock them out quickly. I should have the PGInterval pr in the next week or so.


after several matches, disconnected from the server, unavoidable

If anyone knows about how to solve it. Thanks a lot

Why is my name on my own server lel. I never play the game for 2 days. Btw, from the npm logs, it shows that sometimes client request non existent users or room trigger a server side crash, will see if I can loop the server scripts

Why is my name on my own server and other people's server lel. I never play the game for 2 days. Btw, from the npm logs, it shows that sometimes client request non existent users or room trigger a server side crash, will see if I can loop the server scripts.
In your case, looks like your client have disconnected or crashed in some case.

are these 2 different issues @lisigang1994 ?

are these 2 different issues @lisigang1994 ?

I think its the same issue. His server detected that the client get the socket closed, and his client display that error 12002 has occured.

Duplicate of Ochii/cso2-launcher#20


Incorrect documentation example for Scenic.Components.text_field/3

I think the examples for Scenic.Components.text_field/3 are not updated. I might be wrong.
graph
|> text_field( {"Sample Text", :text_id}, translate: {20,20} )

graph
|> text_field(
  {"", :pass_id, [type: :password, hint: "Enter password"]},
  translate: {20,20}
)

The updated examples should be as follow:
graph
|> text_field( "Sample Text", id: :text_id, translate: {20,20} )

graph
|> text_field( "", id: :pass_id, type: :password, hint: "Enter password",
  translate: {20,20}
)

The examples code cause the app crash and restart continuously until we manually quit the process by Ctrl-C, which may also be an issue. If it is a concern, would it be better if we can impose limit on the restart attempt caused by such error, so we can avoid the supervisor to crash and restart indefinitely?
To reproduce the issue,
git clone https://github.com/kw7oe/scenic_demo.git
cd scenic_demo
mix deps.get
mix scenic.run

Point me to the right direction if I am wrong, since I am fairly inexperience.
Thanks for the efforts in making this project. Really appreciate it.

Oh yes. good catch.

The restart limit is tricky when it happens during scene initialization. Is part of why I recommend building the graph at compile time instead of at run time.
If the scene crashes during any time, then the restart limits work fine.

Fixed in master. Will be published in 0.7.1 soonish.


CLI: 'activity' endpoint should resolve test identifiers

For any 'detect activity' command, we should offer a boolean flag (--convert) that allows you to automatically convert any test ID to the plain-text name.

https://github.com/preludeorg/libraries/pull/366/files


The 'Pods-DevKin' target has frameworks with conflicting names: crsqlite.xcframework.

Describe the bug
I get error on updating a library
!] The 'Pods-DevKin' target has frameworks with conflicting names: crsqlite.xcframework.
Couldn't install Pods. Updating the Pods project and trying again...
Command pod install failed.
└─ Cause: The 'Pods-DevKin' target has frameworks with conflicting names: crsqlite.xcframework.
Versions:

OS and version: iOS 17
op-sqlite version: 6.0.1
RN version:  0.73.0
New Architecture: yes

Reproducible example
Create a minimal reproduction example, otherwise I won't take a look. I'm serious, no example = no solution.

no idea, sorry! try clearing the caches and re-installing the pods from scratch. Maybe a dependency really has the same crsqlite.xcframework


Correcting Shipedit calculation of vertex normals

Added missing normalization to vertex normals in Shipedit.

I guess the scaling with icount can then be dropped since the normal vector is rescaled with the length anyway. Doesn't make a difference to the result, but saves a few processor cycles and looks cleaner.


Add .gitattributes

Reduce file size when composer install with --prefer-dist flag.

Hi, thanks for the PR. Do you have an idea of what would be saved? Tagging a new version of this repository just for that seems overkill honestly.

Only these files will be installed:

composer.json
LICENSE
src/*

These files will be ignored:

docs
README.md

Total size after unzip
Before 96KB
After 3KB


Perhaps mention "Solarized" in the theme description

I was confused when I couldn't find my trusty Solarized theme until I stumbled across Precious quite by accident. It would be helpful to previous users to add "Solarized" in the theme description, so that they can consider "Precious" as an alternative. Something like...

This may appeal to users of my previous "Solarized" theme (no longer maintained).

These are completely different themes not related to solarized in any way except similarity of the warm theme background, nor it is a some replacement for solarized.  I have archived the solarized repo and just pointed out what I moved onto as the reason why the former will not be maintained, that is all.
I have created and shared the themes I am satisfied with, so use and maintain it. I will not support for free what I do not use, you do it yourself if you need it, solarized themes are the past for me.


Agent work prioritisation causing most pipeline processing on first agent registered into pool

We currently have a 5 instance Azure scaleset for a pool of 5 pipeline agents.
The priority to "grab" works by these agents seems always to be in the order that instances were created and registered into the pool.  This means for example:

agent01 (which signifies the agent that was registered first into the pool) ends up running most of the builds/releases.  this is especially the case because we only periodically have multiple builds/releases running on agents at the same time.
there seems to be functionality in the build/release selections which means the same agent will be select if possible by any definition that has run in the past (probably for caching).    Therefore if builddef01 runs a 2nd, 3rd, 4th time and agent01 is available, it will tend to use that agent.

The impact of this is agent01 sometimes runs out of disk space.
We have a maintenance plan setup for the pool, but have had to set this to a very low number of days to ensure agents don't run out of disk space.  During busy periods, we sometimes run out of disk space on agent01 within a day after re-imaging the scaleset instance even with maintenance setting set to 1 day.
For us, it would be better if first time pipeline runs where more equitably spread across all agents.  This would mean 2nd time runs, would also be more equitably spread as well and so on.  Of course any pipeline definition running (where it is not the first time), if the agent it ran on the first time is not available (i.e. it is busy or offline), the selection of the agent that will run the work, should also not necessarily be the first agent that was registered into the pool.
So my suggestion is that work load be evening distributed across all agents more equitably.
These suggestions were logged on Developer Community and User Voice. Please see the links below:
https://developercommunity.visualstudio.com/content/idea/365620/build-agent-priority.html
https://visualstudio.uservoice.com/forums/330519-azure-devops-formerly-visual-studio-team-services/suggestions/17701630-build-agent-priority
Pipeline Agent versions:

This is still an issue, according to the (at the moment of writing) 136 votes on this user-voice: https://developercommunity.visualstudio.com/idea/365620/build-agent-priority.html


Add fix for #296

See the explanation in the diff and in issue #296.

Well that doesn't seem to work...

Almost just need to fix CI on 3.7 and 3.8!


Look at portal.lternet.edu for ideas on improving resource landing page

Based on review of HydroShare with Rick Hooper he noted a number of places where retrieving information from HydroShare resources and their landing pages was unclear, and possibly better done at portal.lternet.edu

There is a metadata link that expands the metadata.  This seemed more user friendly than our resourcemetadata.xml retrieved as part of the bag with no easy visualization tools.
There is Matlab, R, SAS and SPSS code for analyzing the data.  I just tested one R script and it is slick in that it includes data download.  This could be a nice enhancement to our multidimensional, raster, time series and referenced time series resources, drawing on the new WaterML R functionality.

We could do something similar to adding R scripts, but using https://jupyter.org to host R and Python scripts that could be run in the browser.  @swainn Is there a plan to add a Jupyter-based Tethys tool?

There are no plans for integrating jupyter into Tethys at this point, but there is also nothing restricting an app developer from incorporating it into an app for a specific use case. If it becomes a tool that is need frequently in multiple apps, then I would consider creating a tool/gizmo for it. @selimnairb what capabilities do you see jupyter being used for? Plotting via R scripts?

@swainn Yes, plotting (R, Python, perhaps other tools supported by Jupyter), but also to provide a general scripting environment for transforming HydroShare resources (e.g. time series QA/QC).

@mauriel133 I am putting this on your plate as it involves resource landing page. @pkdash or me can help to implement backend support if needed.

not relevant anymore


Update Airfoil (5.1.0)

Changes to a cask
Editing an existing cask

[x] Commit message includes cask’s name (and new version, if applicable).
[x] brew cask audit --download https://raw.githubusercontent.com/ptb/homebrew-cask/patch-1/Casks/airfoil.rb is error-free.
[x] brew cask style --fix airfoil.rb left no offenses.

Also, check out cask-repair, it makes Cask updates like this quite easy (details in CONTRIBUTING)


onefetch: 2.17.0 -> 2.17.1

Diff: https://github.com/o2sh/onefetch/compare/2.17.0...2.17.1
Changelog: https://github.com/o2sh/onefetch/blob/v2.17.1/CHANGELOG.md
Description of changes

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/)
23.05 Release Notes (or backporting 22.11 Release notes)

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

[x] Fits CONTRIBUTING.md.

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

1 package built:

onefetch


Null-Refs out of Roslyn on linux

I noticed in this PR that Roslyn was giving us Null-Refs in some instances. I filed this issue against Roslyn about it and am using this as a tracking issue.

This is solved as far as I can tell.


upgrade fabric8, add offline mode for enricher, use relative grafana link and reuse the fabric8 annotation constants

upgrade fabric8, add offline mode for enricher, use relative grafana link and reuse the fabric8 annotation constants

[merge]


Rename error type for torque erroTile

We made a workaround to solve this but we should use a different attribute name for that.
Commit related: https://github.com/CartoDB/cartodb.js/pull/1873/commits/100de44a24de98fb925b2c2308b29e769e6d0bc9

I think this goes all the way down here https://github.com/CartoDB/Windshaft-cartodb/blob/73a633ae7d19cdcfae1e45e20090483e37251e07/lib/cartodb/middleware/error-middleware.js#L150

closing, there's not a good remedy for this, it would imply moving the hack around to prevent a vendor library behaviour


Updated to Springboot 2.0.1 and Vaadin 8.3.1

I updated the project source code to Springboot 2.0.1 (vaadin-spring-boot-starter 3.0.0) and Vaadin 8.3.1.
Do you want this update?

Hey @henriquemeira,
thanks a bunch for your contribution! And sorry for the very long delay until you got any answer from me. I must admit that I totally missed your pull request in all that time. I really should pay more attention to my GitHub notification emails.
So thanks for the version update of Spring and Vaadin and for fixing the compilation issues which somehow totally evaded me.
Cheers!


Sanitize tags when used as filenames by restic mount

What does this PR change? What problem does it solve?
Draft PR, untested.
Tags that are not valid filenames (and some that are) are now sanitized by restic mount for display in the tags/ directory.
The rule is explained in the comment:
// Some tags are problematic when used as filenames:
//
//     ""
//     ".", ".."
//     anything containing '/'
//
// We prepend a '%' to mark these as special, then replace '/' by "%_"
// and '%' by "%%". Because this produces ambiguity when the actual tag
// starts with '%', we do the same to any tag name already starting with '%'.

E.g., "foo/bar" becomes "%foo%_bar".
I chose '%' because it should be rare in actual tags and it's not a special character to common shells. The rule is ad hoc, but designed to pass through as many tags unchanged as possible. The resulting filenames are always valid on Linux; to my knowledge, FreeBSD allows the same filenames as Linux; but I didn't really consider MacOS much, which may or may not require valid (normalized?) Unicode filenames.
Was the change previously discussed in an issue or on the forum?
Should fix #3690, but I haven't tested it yet.
Checklist

[x] I have read the contribution guidelines.
[x] I have enabled maintainer edits.
[ ] I have added tests for all code changes.
[ ] I have added documentation for relevant changes (in the manual).
[ ] There's a new file in changelog/unreleased/ that describes the changes for our users (see template).
[x] I have run gofmt on the code in all commits.
[ ] All commit messages are formatted in the same style as the other commits in the repo.
[ ] I'm done! This pull request is ready for review.

Hm, why not just replace / by _ and _ by __? Isn't % a special character in cmd.exe, for environment variable expansion?
I find this easier to read:

foo/bar becomes foo_bar
foo_bar becomes foo__bar

Sorry if I'm dense, but instead of making hacky workarounds, why don't we simply disallow the offending character(s) in tags entirely?
That will keep things clean, remove the need for hacks, and it's IMO fully reasonable to not allow everything in certain types of data, in particular "identifiers" like this which aren't really meant to consist of an essay of some language that require the entire Unicode charts to convey its meanings..

@rawtaz I can imagine people backing up web data and using URLs as tags...

This will be pretty easy to implement once #2913 is merged.

I've rebased the PR resolve the conflicts with #2913.

Maybe we need to approach this differently and just map / to _, then accept that tags/foo_bar holds snapshots labeled either foo_bar or foo/bar. It's just a navigational aid, after all.
(The alternative of creating a directory structure representing foo/bar/baz is more complicated and also can't handle the case of leading slash, trailing slash or multiple consecutive slashes.)

The tree structure is what is now used since #2913 is merged. Multiple unexpected slashes will then be removed by the filename normalization, such that we can't really avoid aliasing there.
My preferred solution would be to just map slashes to underscores and ignore aliasing. The second commit does just that.
I though about implementing a fallback strategy to generate unique tag names by appending a counter in case conflicts exist. However, that leads to rather unintelligible tag names such as _ and _-1, which won't help anyone.

Looks good :)


feat: Allow custom headers on LivenessProbe and ReadinessProbe

#864
@prakarsh-dt

@themadmrj You raised the PR in a branch which has already been merged in a release branch and the changes tested. Can you please raise a PR in branch release branch k8s-1.22-compatibility for these changes. I will test and release

Done. On a side note: you guys are little to no documentation about your 1598 branches which makes it impossible to know on which branch we're supposed to make a PR. You asked me to switch to another branch a first time without telling me which branch. I searched for one myself. Now you asked me to do it another time. Result: I made the same changes 3 times which feels very bad and does not encourage contributing to your repo again.


Allow using rnpm as a local dependency

Solving https://github.com/rnpm/rnpm/issues/52
@grabbou, need your's :+1:

I'll fix CC/CircleCI

Hohoho, yeah, I'll take a look in the morning

Take a look on my last commit, please


Add operator (+) should support strings and compile to concat function

Is your feature request related to a problem? Please describe.
To improve building strings and perhaps enable multi-line experience similar to one that is present in C#, we could use + sign to concatenate strings.
Describe the solution you'd like
Currently expression var x = 'a' + 'b' gives error, while it could be compiled to concat function.

We originally planned to implement the operator this way. Unfortunately, the type information we have available is not 100% reliable and we didn't want subtle changes to expressions cause the + operator to be compiled differently, possibly causing runtime errors. As a general rule, none of the operators are allowed to do type-directed translation. (Each operator has an unconditional 1:1 correspondence with some function.)
The solution for this would be to add a new function to the runtime that combines the behavior of concat and add and the bicep + operator would compile into that always.

@majastrz and @alex-frankel do you think we can close this and label our string interpolation as a viable alternative?

I think we can leave it open. I don't think it's high priority, but I can see it eventually being added.

I wonder if this would also cover https://github.com/Azure/bicep/issues/4153#issuecomment-943361638


Text location issue

Text does not align properly with the side bar.

Fixed in branch bug.ux-514-content-margins-issue by adding equivalent margin to dl element inside of this page only.


[WIP][scripts] Collect env diagnostic script

@kwasd this PR seems stale. Do we need it or can we close ?


Create Filament Swatch Card

Describe the solution you'd like
A way to generate some kind of swatch card of every filament in the database .
Additional context
](https://www.printables.com/model/937387-filament-swatch-card-with-label)

I don't think this is a good feature request. I have a color swatch gcode file for each type of filament ready to go on my printers. I just load the new filament and print the correct one for PLA, TPU, ABS, PETG etc. I get what you're asking but from a dev viewpoint I doubt it will happen.

This duplicates what The Print Codex does....  Buy or print your own.
https://theprintcodex.com/
https://theprintcodex.com/
@.***_699540/models
https://theprintcodex.com/
On Sat, Jul 27, 2024 at 9:58 AM T3chGuy77 @.***> wrote:

I don't think this is a good feature request. I have a color swatch gcode
file for each type of filament ready to go on my printers. I just load the
new filament and print the correct one for PLA, TPU, ABS, PETG etc. I get
what you're asking but from a dev viewpoint I doubt it will happen.
—
Reply to this email directly, view it on GitHub
https://github.com/Donkie/Spoolman/issues/420#issuecomment-2254199944,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AC6HW35OIPWNJP5YS5PY4CDZOPGUVAVCNFSM6AAAAABKSIBXT2VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDENJUGE4TSOJUGQ
.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>


New Article: Module for manageing FileSystemWatchers

PR Summary

How to use a PowerShell module FSWatcherEngineEvent to create and manage filesystem watchers
PR Checklist

Do you want this post to be published on a specific date?: N
[X] I have read the contributors guide and followed the style and process guidelines
[X] PR has a meaningful title
[ ] Includes content related an open issue

see Closing issues using keywords.

[X] This PR is ready to merge and is not Work in Progress

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

@wgross I have promoted your WordPress account to "External Author".
@doctordns When you are satisfied with the changes you can merge the PR and we will publish it.

@doctordns Thanks for the thorough review and the improvements.
Writing an article is for sure harder than writing software :-)

Looks good to me.
And yes, writing a good article is hard work.


tmux like replacement

This is a smart approach. Virtualise all the cross platform OS terminal issues by using an opengl canvas !
Would this allow me to program it to have many tiling windows etc.
Basically what tmux does.
Then i can load up a daemon into each view and see the logs streaming through for each daemon.
Or can i also use REPL also to control the daemons respectively.
Hope i am explaining myself ...

What's the advantage of duplicating tmux/window-manager features over using tmux normally?

There is no need to reimplement tmux. There is - tmux -CC
https://github.com/tmux/tmux/wiki/Control-Mode

Closed due to complete rewrite as part of bringing the project back to life, please create a new issue if still relevant. Thank you!


Eliminate GOE in Outputs

Fix for
https://jira.devtools.intel.com/browse/CVS-27006

@diyessi , thanks scott. This PR needs most of the changes in your Draft to get all the test cases passing. I think its better to merge your PR, rather than this patch.

Closing this PR, since it provides the partial fix and need changes in the graph passes to fix other test cases. This will addressed by the cyphers/remove_goe branch


delete download Files

Hi, i had download many Files ,it will take up too much disk space ,it have dele Files Api method?(not dele sqlite )

There is the method optimizeStorage.

@levlam thanks!


How to resize replymarkup?

How to resize replymarkup? buttons is so big at mobiles...

Please, read issue templates before posting. If you have questions regarding library use feel free to join our support chat


35 backend api

Please check if the PR fulfills these requirements

[ ] The commit message follows our guidelines. For the guidelines check the README.
[ ] Tests for the changes have been added (for bug fixes / features). As we discussed this is optional but encouraged.

What kind of change does this PR introduce? (Bug fix, feature, docs update, ...)
Introduces concert based customization, calls ticketmaster API through backend

What is the current behavior? (You can also link to an open issue here)
No concert based playlist customization

What is the new behavior (if this is a feature change)?
Allows user to search postal code and choose which genres and artists to include in the playlist

Does this PR introduce a breaking change? (What changes might users need to make in their application due to this PR?)
Need to include ticketmaster API key in backend .env file

Other information:

Works good on my computer!


Apply .trim() before .isEmpty() check to prevent 0-length splits

Fixes an ArrayIndexOutOfBoundsException when .split(" ")[0] is called on a string containing only spaces.

closed in favor of #233

Closing this one in favour of #233 👀


Styles from error.vue persist after navigation

Environment

Operating System: Linux
Node Version:     v16.14.2
Nuxt Version:     3.0.0
Nitro Version:    1.0.0
Package Manager<EMAIL_ADDRESS>Builder:          vite
User Config:      -
Runtime Modules:  -
Build Modules:    -

Reproduction
https://stackblitz.com/edit/error-vue-styling-repro?file=app.vue,error.vue
Describe the bug
After triggering error.vue (in this repro using throw createError, but also with e.g. 404), styles from error.vue persist after navigation or clearError.
Additional context
No response
Logs
No response

Hi, is it possible to know any more?
The project I'm working on is for 90% styled with global css but everything seems to work fine when i route to another page.
The only exception I'm having problems with is the error page (in the layout foder) that keeps staying on but with the new url and the layout of the destination page. I don't understand why, as soon as i refresh the page everything mounts as it have to, but till that moment I'm having the error page substituded to the destination page i want to go.
If you're gonna replay id be happy to share with you code/screenshot or anything else


Delete .github/ISSUE_TEMPLATE directory

:white_check_mark: Build GuiStracini.SDKBuilder 3.0.474 completed (commit https://github.com/guibranco/GuiStracini.SDKBuilder/commit/a3fa95369e by @guibranco)


Improve cores and claims

Currently all incorporated states are given a core from their owner. Potentially not all of these should really be cores. There should also be cores for releasables. Claims are not currently converted, as there are far too many in the Vic3 saves. A method for determining which are valid should be determined.

(INVICTUS) if you own the land and had accepted culture in EU4 you get to count it as home territory


[Task] A System to Form Companies

Task Description
later on add a way to form companies and trusts

probably would lead to a more inflated economy actually....


[ODE] utility functions to create private and public RSA key

Description
Add 2 functions to parse RSA public and private keys from in-memory string.
Fixes
WB-1800
Type of change
Please check options that are relevant.

[x] Chore (PATCH)
[ ] Doc (PATCH)
[ ] Bug fix (PATCH)
[ ] New feature (MINOR)

Tests

Modify configuration of the module archive

{
        "main": "org.entcore.archive.Archive",
        ...
        "force-encryption": true,
        "archive-private-key": "-----BEGIN PRIVATE KEY-----...-----END PRIVATE KEY-----"
        ...
}

Launch the ENT
Sign in
Go to My Data app
Export data
Verify that the generated archive is signed

Reminder

Security flaws

Performance impacts

Unit tests were replayed

Unit tests were added and/or changed

I have updated the reminder for the version including my modifications

[x] All done ! :smiley:

Plus besoin de ces fonctionnalités


The reason we still keep bundled with activesupport tightly

Problem this feature will solve
I never use ruby on rails recent years, in fact, i use roda + sequel technical stacks
I don't want to pull activesupport as dependency, but i like to use factory_bot
Desired solution
Don't add activesupport as runtime dependency.

This has come up a couple times over the years. See https://github.com/thoughtbot/factory_bot/issues/903 for past discussion.

Thank you for answer,  anyway,  i don't want pull this not necessary gem, i switch to use fabrication for now, if i use rails again, i will consider continue use this gem.


Fix Persistent IP Indexing Edge Cases in NetworkManager

#1386  👈
main

This stack of pull requests is managed by Graphite. Learn more about stacking.

Join @tholonious and the rest of your teammates on  Graphite


spyder not working

Description
What steps will reproduce the problem?

opening spyder gives this error
kernel does not load

What is the expected output? What do you see instead?
Please provide any additional information below
File "C:\Anaconda3\lib\site-packages\spyder\plugins_init_.py", line 511, in
toggled=lambda checked: self.toggle_view(checked),
File "C:\Anaconda3\lib\site-packages\spyder\plugins\ipythonconsole.py", line 709, in toggle_view
self.create_new_client(give_focus=False)
File "C:\Anaconda3\lib\site-packages\spyder\plugins\ipythonconsole.py", line 991, in create_new_client
self.connect_client_to_kernel(client)
File "C:\Anaconda3\lib\site-packages\spyder\plugins\ipythonconsole.py", line 1018, in connect_client_to_kernel
stderr_file)
File "C:\Anaconda3\lib\site-packages\spyder\plugins\ipythonconsole.py", line 1420, in create_kernel_manager_and_kernel_client
kernel_manager.start_kernel(stderr=stderr)
File "C:\Anaconda3\lib\site-packages\jupyter_client\manager.py", line 257, in start_kernel
**kw)
File "C:\Anaconda3\lib\site-packages\jupyter_client\manager.py", line 203, in _launch_kernel
return launch_kernel(kernel_cmd, **kw)
File "C:\Anaconda3\lib\site-packages\jupyter_client\launcher.py", line 128, in launch_kernel
proc = Popen(cmd, **kwargs)
File "C:\Anaconda3\lib\subprocess.py", line 707, in init
restore_signals, start_new_session)
File "C:\Ana

I think it was because I uninstalled Anaconda Python and reinstalled in a different folder. Resetting the Spyder setting solved the issue.


Adding Review Books logic

A new model-route-controller-service is to be added for CRUD operations of Book Reviews.
The review model should include the following:

author - the review author / user who reviews the book (as reference)
rating - numerical rating
comment - textual remarks
book - book being reviewed (as reference)

@saggy2001

@saggy2001
In the book model, add a new property named rating which will be of type: Number with default value as 4.
Now, whenever a new rating for a book is added, this value from that book model will be updated with the new average.
Example:
We create a new book - let's say X. Now it will have a default rating as 4.
Let's say a user reviews the book with rating 3. As soon as this rating endpoint is hit, we will update X's rating with 4 + 3 / 2 = 3.5

Assign me this issue I will do it

@saggy2001
Update:-
We create a new book, whose id is, let's say, X. The default rating would be 0. Now, as soon as a review is added/updated, we will update the rating field of X by calling a function, whose work is to find all ratings of X and average it.


Replace futures-timer usage with tokio-timer

I'll happily take this one!

@srijs I try to port it last night, but tokio-timer require work with Runtime, so in many test cases, res.join(...).wait() not work well. Good luck!

Oh, interesting! If tokio's current_thread executor could be updated to use a timer as well, we could probably change all waits to use that, but it doesn't currently do so.

I've also been thinking that hyper could have some common::Timer internal type, kind of like common::Exec. Doing this would probably even be easier than switching all waits over. Benefits:

Finer control over a specific timer, if someone doesn't want to use the implicit default.
Would support making the tokio Runtime optional, in case someone wanted to build hyper with their own runtime.
Would allow it to work with wait.

If no timer were available, timeouts and intervals would effectively just be disabled. That shouldn't be a problem. Here's some code I was thinking of:
enum TimerImpl {
    Default,
    Empty,
    Timer(Arc<Timer>),
}

trait Timer {
    type Delay: Future;
    fn delay(&self, until: Instant) -> Self::Delay;
}

The default would use tokio-timer implicitly, the empty would simply return future::empty(), and the trait would allow for custom timers. We'd implement Timer for tokio_timer::Handle.
Probably the types wouldn't be exported publicly, but the client and server builders could have timer functions like their respective executor functions.

Maybe the "require" not correct, use wait() directly  will get a Shutdown error, but it work fine with Runtime::spawn(..). I can't find a doc clarify this behavior. Maybe it can work with the current_thread.

I like the idea of making the timer optional, that seems like it would work well with keeping the current calls to wait() as they are, and just not use a timer in those cases (unless the test explicitly tests timeouts/intervals).
However I'm not sure if it's worth abstracting away tokio-timer? The Timer logic in tokio-timer can be used independently of the tokio runtime, so it should be flexible enough for most use-cases.

That's probably fine too. I mostly was thinking that there are cases where you could want to use hyper, but already have some other runtime. For that reason, I do expect to make the tokio dependency optional (enabled by default) likely by the 0.12 release.
I also figured people might already be using a different timer implementation, such as using the older tokio-core.
But it's not required to provide that yet. I just would rather not actually expose a dependency on tokio-timer in a type signature, so I actually would rather box a trait object, like is done with Executor, instead of accepting tokio's TaskExecutor directly.


Fix some typos in comments

Although it is spelling mistakes, it might make an affects while reading.
Signed-off-by: Kim Bao Long<EMAIL_ADDRESS>

These are not typos, iff is an abbreviation for if and only if.

Thank you for your PR. However, these are not typos, iff is an abbreviation for if and only if.

Opps. I don't know about this abbreviation. I will close this pull request

Thank you for your PR. However, these are not typos, iff is an abbreviation for if and only if.

Opps. I don't know about this abbreviation. I have closed this pull request


fix: typo in docs

fix some typos i spotted in https://docs.succinct.xyz/

Thanks for the PR! Will address in #1626


Added note for Windows on function move_to_foreground()

If move_to_foreground() doesn't work on Windows, this sounds like a bug.

If move_to_foreground() doesn't work on Windows, this sounds like a bug.

On Windows, there are a lot of restriction on for moving the window to the foreground, so it's not a bug.
https://learn.microsoft.com/en-us/windows/win32/api/winuser/nf-winuser-setforegroundwindow#remarks

There is a workaround. If you set Window.always_on_top = true and after Window.always_on_top = false it will bring window to front but it will not be focused. I thought about adding tip but it's hacky.


use class name to avoid deprecation warning

Using a string to reference HireFire::Middleware causes the following deprecation warning:
DEPRECATION WARNING: Passing strings or symbols to the middleware builder is deprecated, please change
them to actual class references.  For example:

  "HireFire::Middleware" => HireFire::Middleware

Referencing the HireFire::Middleware class directly removes the warning.

Thanks @seancdavis !

Released v0.3.12.


Clean way to get all "browser" globals?

Is there a clean way to get all variables that would normally be in the global scope in the browser? Basically everything on window?
I'm sure this worked for me before:
const jsdom  = require('jsdom').jsdom;
const window = jsdom('').defaultView;

const browserGlobals = Object.keys(window);

However it looks like at some point jsdom changed to using getters for some things on window so Object.keys(window) misses a lot of stuff.
I'm currently using:
const jsdom  = require('jsdom').jsdom;
const window = jsdom('').defaultView;

const browserGlobals = Object
                         .keys(window)
                         .concat(Object.keys(window._core))
                         .filter(prop => prop.substring(0, 1) !== '_');

But it feels a bit hacky, is there a cleaner way exposed by jsdom that I've overlooked?

@lukechilds I've tried to get all globals in depth for Web API and Node.js, see this issue.
Here is my last script, the best I can do. And some explanation, unfortunately in Russian.
May be you can improve your code by using getOwnPropertyNames instead of keys.

@vsemozhetbyt Thanks for the suggestion but I don't think getOwnPropertyNames will help because it still wont return getters.
For example:
window.HTMLElement
// [Function: HTMLElement]

Object.getOwnPropertyNames(window).indexOf('HTMLElement');
// -1

Do you try it in the Node with jsdom or in the browser? Maybe in jsdom it is not own property of window?
In the browser:
window.HTMLElement
// function HTMLElement() { [native code] }
Object.getOwnPropertyNames(window).indexOf('HTMLElement')
// 615

But it feels a bit hacky, is there a cleaner way exposed by jsdom that I've overlooked?

No. jsdom does not provide any facilities in this regard that are not already exposed in a browser, so your best bet is to find code that works in browsers.
The _core trick will break in a future jsdom release, probably a patch version, so I would definitely not advise it. Maybe we should rename _core right now to make sure people realize it's private API.

Object.getOwnPropertyNames(window._core).indexOf('HTMLElement');
// 32

In the browser:
Object.getOwnPropertyNames(window).length
// 1696

In the jsdom:
const jsdom  = require('jsdom').jsdom;
const window = jsdom('').defaultView;
console.log(Object.getOwnPropertyNames(window).length);
console.log(Object.getOwnPropertyNames(window._core).length);
// 122
// 127

This seems to be likely https://github.com/nodejs/node/issues/3158. Are you using Node v6?

Me? Yes, the 6.7.0

I guess maybe we only implement 122 APIs. Wow!

Here is my script variant for jsdom.
Results:
jsdom 9.6.0
Terms:  1,862
Chains: 5,178
In the browsers:
Google Chrome Canary 55.0.2867.0
Terms:   3 339
Chains: 14 435
Firefox Nightly 52.0a1 (2016-09-21)
Terms:   5 040
Chains: 14 417

@domenic Thanks for your response.

your best bet is to find code that works in browsers

This works in browsers:
Object.getOwnPropertyNames(window);

But not jsdom due to using getters (I think?).
Thanks for the warning re _core. I've pinned the version of jsdom so that shouldn't cause any immediate issues.
The only other solution I can think of is manually maintaining an array of strings and updating it as things get added to jsdom. Then I'm not using undocumented features of jsdom but I'll still need to lock jsdom version and keep it up to date so if anything that's worse than the current solution.
@vsemozhetbyt Thanks for your effort but I only need the top level properties, that solution still doesn't get HTMLElement as a top level property.

@domenic Interestingly this works:
jsdom.env(
  '',
  function (err, window) {
    const browserGlobals = Object.getOwnPropertyNames(window);
  }
);

However I need to do this synchronously rather than in a callback. Is there a reason window in the above example behaves differently to window here:
const jsdom  = require('jsdom').jsdom;
const window = jsdom('').defaultView;

Sure you're a busy man but any light you can shed on this would be greatly appreciated.

jsdom.jsdom has scripting implicitly enabled, causing the returned window to be a sandboxed one. jsdom.env does not, returning the raw window. Seems like the node vm implementation hides the properties on it.

@lukechilds getOwnPropertyNames seems to enumerates getters:
const obj = {
  get k() {console.log('getter');},
  set k(v) {console.log('setter');},
}

obj.k;
obj.k = 1;

console.log(Object.getOwnPropertyNames(obj));

getter
setter
[ 'k' ]

I don't know why HTMLElement is not the own window key and how the window.HTMLElement works (HTMLElement is window._core own key )

@Sebmaster Thanks, that's what I was looking for!
Got it working now with:
const jsdom  = require('jsdom');
jsdom.defaultDocumentFeatures = {
    FetchExternalResources: false,
    ProcessExternalResources: false
};
const window = jsdom.jsdom('').defaultView;

const browserGlobals = Object.getOwnPropertyNames(window);

Assuming this is safe and unlikely to break in future versions?

Sorry for possible noize. Yes, the env variant with jsdom.env gives the different structure.

Assuming this is safe and unlikely to break in future versions?

Not in non-majors at least.

Haha, yes definitely caught me off guard.
I'll update my lib to use this over manually concatenating window and window._core.
Thanks!


Core Developer: Quick links component

Design and build a component to show links to frequently used content types.
Feature: Access to content
  As a Core Developer,
  I want to provide the user with a list of most recent content types they worked on
  So that they can easily access these content types and create new content quickly.

   Scenario: Quick links
     Given that, users work on certain content types repeatedly
      When they visit the CMS home page
      Then they will be able to see a list of the most recent content types that they worked on
        And that list will display a maximum of 6 items
        And that list will consist of the 6 content types that they create/edit the most
        And it will display the name of the content types
        And it will display a description of the content type
        And it will display a link to add content for that content type

Access to content:

[ ] Quick links

Nothing to add to this story - I modeled my Quick add after this concept of allowing users to quickly and easily access content types they have used most often. It's just a sticky bar/menu at the bottom of the mobile screen. It was a first pass idea to try to have something easily accessible to add something quickly rather than having to scroll down to a section that a user may not even see on their mobile/desktop screen.
I was just modifying the way it shows up on a mobile device to make it more mobile friendly - since you wouldn't be able to see this section on mobile if the user has several items in the two tables above this section. And also, on desktop, it may require the user to scroll. So I thought having it be sticky or maybe surfaced where someone can always see it would be helpful.
I'll paste a copy of my mock here as well for reference.

@mkiang3051 - I like this idea and think it could work on all size screens.

What happens when you click on the + button?
Let's think about the number of steps and how to minimize them as much as possible. Essentially, is this easier than the user clicking on content and then selecting the content type?
What does this look like on desktop assuming we take a similar approach?

Yep! I can do some more work/thinking on this after secondary nav. 👍


Improve pagination looks on mobile

Using ready to deploy flag bc there is no feature flag here :P

Looks good to me!

I'm guessing all the changes in imports are just caused by auto-formatting on save?
Anyway, looks good!

I'm guessing all the changes in imports are just caused by auto-formatting on save?
Anyway, looks good!

you are correct


Sending exception from tinker

Calling app('sentry')->captureException(new \Exception('test')); from tinker console doesn't seem to do anything. What am I missing? Exact same line works when called from controller.

start tinker (php artisan tinker)
create a test report app('sentry')->captureException(new \Exception('test'));
it returns event id
check sentry
no report

As from controller

add to one of the controller action
access the page
check sentry
the test report is there

PHP: 7.2.18
Laravel: 5.5.34
sentry-laravel: 1.0.2
(For the context, I've been trying to upgrade to new SDK but I needed to create a separate client for some functionalities and I've been trying to figure out how to do it with new SDK as the documentation barely have any mention of using client separate from the global one)

So it looks like it's using async http which never triggers for tinker...? Is there no way to try things out?

Hi @nanaya ,
Why do you use Sentry directly? It works for me to use hinting of ExceptionHandler, rather than Sentry itself.

One is to report unexpected data followed by ignoring it so client doesn't see any errors (thus not using global exception handler), the other is to report errors to different project because it's handled by different people.

@nanaya , I cannot see any issues of using ExceptionHandler::report(). It doesn't render an exception but log it to files and/or to Sentry.

It's up to you but I really like it's behaviour — in dev env you don't need to report Sentry and just show exception handling page and handler works great for that.

I'm not sure what you're suggesting here and how it's related to the original issue. Or are you saying I shouldn't bother trying out using sentry (figure out how the tag, etc works) from tinker manually?

Just I think hinting of Hub to services is worse than using ExceptionHandler.
However the issue is reproduced by me and looks weird for me.

Unfortunately there is a reasons this is happening. I won;t go into great detail since it's a really long story and there is much work being done in the base sdk to resolve this.
But events are only sent once the request/execution finishes. That's why events are not sent immediately.
If you want to "flush" the queue you can force it by calling \Sentry\Laravel\Integration::flushEvents(); (see also #228 which is related).

Thanks, it's fine as long there's a way to actually send the events.


Async scan is blocking?

I have async_directory_scan set to always in my configuration, but toggling a neo-tree window still blocks neovim for me.
I tested by opening neo-tree in a very large directory on my slow hard drive, and neovim blocks, until the neo-tree window is fully rendered.
I looked through the code for async_scan, but it seems completely synchronous to me.
Anything I'm missing here?

Looked through it again, and it seems that it uses that async API from luv, so I'm not sure why it blocks.

If you look here: https://github.com/nvim-neo-tree/neo-tree.nvim/wiki/Troubleshooting
It will describe how to enable logging. You can then tail the log file in a separate window for clues as to what is happening during the hang.
It's always possible that the hang is from some other plugin that is responding to the new text being added to the buffer.

It is possible that checking git ignore is the hang. Is the large directory a git project?

No, it was a plain directory of ~/Downloads. Aren't git operations supposed to be async by default anyways?
I don't think there's any interference of other plugins, it blocked for quite a long time and I don't see any plugins that could be responsible for this.
I also tried out https://github.com/lambdalisue/fern.vim on the same directory and it felt completely asynchronous to me. After running the command to open the tree, I could freely edit and operate however I want as the tree loads in the background.

I also tried to log it, and I can't really find any thing suspicious, but I snipped some parts where there is a big gap between the log times:
[TRACE 2022-11-17 11:11:19 AM] ...ree.nvim/lua/neo-tree/sources/filesystem/lib/fs_scan.lua:117: async_scan:  C:\Users\user\Downloads
[TRACE 2022-11-17 11:11:42 AM] ...pack\packer\opt\neo-tree.nvim/lua/neo-tree/git/utils.lua:13: GIT ROOT ERROR  {}
[TRACE 2022-11-17 11:11:42 AM] ...ack\packer\opt\neo-tree.nvim/lua/neo-tree/git/status.lua:208: status_async: not a git folder:  C:\Users\user\Downloads

[trace 2022-11-17 11:11:42 am] ...t\neo-tree.nvim/lua/neo-tree/sources/filesystem/init.lua:32: follow called
[trace 2022-11-17 11:12:11 am] ...k\packer\opt\neo-tree.nvim/lua/neo-tree/events/queue.lua:213: firing event:  vim_win_enter  with args:  {
  afile = "tmp.txt"
}

[TRACE 2022-11-17 11:12:17 AM] ...k\packer\opt\neo-tree.nvim/lua/neo-tree/events/queue.lua:213: Firing event:  after_render  with args:  {
  async_directory_scan = "always",
  bind_to_cwd = true,
  bufnr = 3,
  commands = {
    add = <function 1>,
    add_directory = <function 2>,
    cancel = <function 3>,
    clear_filter = <function 4>,
    close_all_nodes = <function 5>,
    close_node = <function 6>,
    close_window = <function...
[TRACE 2022-11-17 11:12:24 AM] ...k\packer\opt\neo-tree.nvim/lua/neo-tree/events/queue.lua:213: Firing event:  vim_buffer_enter  with args:  {
  afile = "neo-tree.nvim.log"
}

[TRACE 2022-11-17 11:12:24 AM] ...t\neo-tree.nvim/lua/neo-tree/sources/filesystem/init.lua:32: follow called
[TRACE 2022-11-17 11:12:42 AM] ...k\packer\opt\neo-tree.nvim/lua/neo-tree/events/queue.lua:213: Firing event:  vim_win_enter  with args:  {
  afile = "neo-tree.nvim.log"
}

Are you on Windows?

Alright, I figured out the problem.
neo-tree uses uv.fs_scandir, which is async, but the function that is used to iterate on the returned handle (uv.fs_scandir_next) has no async version.
The solution is to use uv.fs_opendir and uv.fs_readdir, because both of them has an async version.
So the funny thing is that this means that neo-tree was never async no matter how it is configured, but for some reason no one noticed...
But anyways, I made a rough patch for async_scan that makes it actually async. I might clean it up into a PR later if no else does.
Rough patch
local function async_scan(context, path)
  log.trace("async_scan: ", path)
  -- prepend the root path
  table.insert(context.paths_to_load, 1, path)

  context.directories_scanned = 0
  context.directories_to_scan = #context.paths_to_load

  context.on_exit = vim.schedule_wrap(function()
    job_complete(context)
  end)

  -- from https://github.com/nvim-lua/plenary.nvim/blob/master/lua/plenary/scandir.lua
  local function read_dir(current_dir, ctx)
    local function on_fs_opendir(err, dir)
      if err then
        log.error(current_dir, ": ", err)
      else
        local function on_fs_readdir(err, entries)
          if err then
            log.error(current_dir, ": ", err)
          else
            if entries then
              for _, entry in ipairs(entries) do
                local success, item = pcall(
                  file_items.create_item,
                  ctx,
                  utils.path_join(current_dir, entry.name),
                  entry.type
                )
                if success then
                  if ctx.recursive and item.type == "directory" then
                    ctx.directories_to_scan = ctx.directories_to_scan + 1
                    table.insert(ctx.paths_to_load, item.path)
                  end
                else
                  log.error("error creating item for ", path)
                end
              end

              uv.fs_readdir(dir, on_fs_readdir)
            else
              uv.fs_closedir(dir)
              on_directory_loaded(ctx, current_dir)
              ctx.directories_scanned = ctx.directories_scanned + 1
              if ctx.directories_scanned == #ctx.paths_to_load then
                ctx.on_exit()
              end
            end
          end
        end

        uv.fs_readdir(dir, on_fs_readdir)
      end
    end

    uv.fs_opendir(current_dir, on_fs_opendir)
  end

  for i = 1, context.directories_to_scan do
    read_dir(context.paths_to_load[i], context)
  end
end

So the funny thing is that this means that neo-tree was never async no matter how it is configured, but for some reason no one noticed...

Huh. I think that the original implementation allowed other work in between because it scanned one folder at a time in a chain. SO it wasn't fully async but effectively good enough. Then it was changed to scan them in parallel to make the whole process faster, which accidentally caused it to be effectively blocking.
Anyway, good catch! Please do submit a PR if you have the time.

@musjj Could you take a look at #619 do you know whether the issue is related to this change?


Add helm_push_registry

Add the ability to push a helm package to an oci registry

Opening this PR based on issue #28. While the issue talked about using ChartMuseum, I opted to go the route of pushing to an oci registry. Like with rules_oci, this commit leverages helm's internals for authentication when pushing to a registry.
Also, something to consider, which I think might be a better approach, rather than using a new rule helm_push_registry, I could update this to extend helm_push to push the charts to an oci registry if a registry_url is provided. Personally, I think this is better approach, but I didn't want to go this route as we had not discussed it. Please let me know.
Cheers!

I applied these changes on https://github.com/abrisco/rules_helm/pull/44, thank you so much for opening this PR!

@abrisco - Sorry for the delay in resolving the feedback requests, I had a very busy week and was planing on getting to it this weekend. Thanks for taking care of it!

@abrisco - Sorry for the delay in resolving the feedback requests, I had a very busy week and was planing on getting to it this weekend. Thanks for taking care of it!

No worries at all! Someone had asked me about exactly this feature and besides a few nits your change looked perfect!  Thank you again for the change!


fix chat info

Fixes #219. The issue here is that we are hardcoding some chat params, but we cannot guarantee that they are present. This should have been done together with #155.
In general, we don't want to hardcode anything in the UI in the near future, so this is a first step towards 3. of #217. The solution is not perfect as we are basically just displaying the name of the parameter variables rather than an adjusted human readable version, but it is good enough for now.

Nice :)

macOS CI failure is unrelated.


Convert/Reading payload to int, float, and String / better solution?

HI,
it would be GREAT if we could have a possibilities to "choose" what we expecting (int, float, bool, string) to get from payload. I made it like this, but i am NOT a programmer, so i need a MORE ELLEGANT way :-) !
just made for me a small sketch to check if its working to pass a string with a new topic to the Arduino, so it sends payload on a UPDATED topic.
First i converted Payload to int/float to handle it later in the code:
//**********
int i;
for (i = 0; i<length; i++) {
message_buff[i] = payload[i];
}
message_buff[i] = '\0';
const char *p_payload = message_buff;
//* converting array to int and float
got_double = strtod(p_payload, NULL);
got_int = atoi(p_payload);
got_float = atof(p_payload);
if (got_int == 0 || got_int<0) {
got_bool = 0;
}
else { got_bool = 1; }
//*
after that i converted Payload (with comming topic like xxx/sdfdfdjh/lksdfkd/sdjsdhf...) to
//_convert float value to Char expected by function
char temp[5];
dtostrf(rrr,4,3,temp); //rrr ist a float value
//_***
for (i = 0; i<length; i++) {
p_buff[i] = p[i];
}
p_buff[i] = '\0';
const char p_p = p_buff; //
MQTTclient.publish(p_p, CHAR);
//
Maybe you can have a look into this "issue and tell us how to do it better with your library!
Thank you in Advance!

Do you have a suggestion for what the api would look like for this? It is so trivial (and well documented with minimal google searches) to convert between different types I'm not sure it is worth increasing the library's size for some code that wouldn't be widely used.
As for your example, can you provide an example of topic/payload values you are receiving and then republishing? I don't immediately see what you're trying to achieve.

Hi;

I have following "problems":

to send payload i have to convert int, float or bool to char:
i am doing it like this
char warn[5];
int nn=0.00;
dtostrf(warn,4,3,nn);
MQTTclient.publish(c_topic, warn);

so every time the conversion :-(
2. Payload = 3.46
so now i have to convert it to a float, even it was send as a float from server
I am doing it so:
int i, len;
for (i = 0; i<length; i++)
{
message_buff[i] = payload[i];
}
message_buff[i] = '\0';
const char *p_payload = message_buff;
Serial.println("p_payload");
Serial.println(p_payload);
got_double = strtod(p_payload, NULL);
//  got_int2 = atoi(p_payload);
got_float = atof(p_payload);
got_int = (int)got_float;
if (got_int == 0 || got_int<0) {
got_bool = 0;
}
else { got_bool = 1; }
Serial.println("BUFF");Serial.println(p_payload);
Serial.println("FLOAT");Serial.println(got_float);
Serial.println("INT");Serial.println(got_int);
Serial.println("BOOL");Serial.println(got_bool);
which is a pain...
3. if i want to "do" something with payload, f.e. compare wit o subtopic:
Payload =DOino_01/Keller/Puffer_Gross/hinten/TEMP/TYP
now i want tolook if one of the subtopics is "Keller" i have to convert it again which is ok, because it is "text"
do you have better solution with your library?
P.s: SRAM does not work!!!!

that is just how you do it. You want to publish the string representation of a numeric value - so you have to create a string representation of the value and pass it to the library.  But it is equally valid to publish binary data, not strings. So if the publish functions automatically converted the number 123 to the text "123" (which itself it represented as the three ASCII bytes 0x31,0x32,0x33), then it would break for scenarios where the user wanted to send the value 123 - ie the byte 0x7B.

similarly, the library doesn't know anything about the payload format, so cannot decode it for you. Your code appears to try multiple formats, but most times your code would know exactly what format to decode to, which can be done in one or two lines.

so I'm not clear if you mean topic or payload here. But either way, there is no conversion necessary - you can examine the bytes that are passed to you looking for any pattern you want.

Thanks!

so you mean that is wrong?
char warn[5];
int nn=0.00;
dtostrf(warn,4,3,nn);
it is a float conversation? isnt it?

do you have a link how to do it :-/? PLEASE

that is indeed a float to string conversion. And is almost certainly what you want.

If you have published the value "3.14" then the following ought to do it.

  payload[length] = '\0';
  String s = String((char*)payload);
  float f = s.toFloat();

cool...
and for int would be ?
payload[length] = '\0';
String s = String((char*)payload);
int i= s.toInt();

Yup - see https://www.arduino.cc/en/Reference/StringObject for what functions are available on String objects.

Thank you very much @knolleary for your help! much appreciate it.

I think:
payload[length] = '\0';
is not safe.
I think payload can go up to MQTT_MAX_PACKET_SIZE (defined = 128) in size so what if the payload is just on the boundary & we hit the next memory location?

Dear @knolleary
I would like to get the payload as an integer between [0-255] and use it to analogWrite the outPin with the payload value, would you please help me on how I can do this?

@gsmartnet it depends how you are publishing that value. If you're publishing it as the text representation of the number, then see my comment just a comments above for parsing the received data as a number - https://github.com/knolleary/pubsubclient/issues/105#issuecomment-168538000

Anybody can help me on how to publish BOOLEAN data? I'm frustrated with type data conversion. Please help...
void callback(char* topic, byte* payload, unsigned int length) {   if(strcmp(topic,"/lampu/kamar1") == 0){     digitalWrite(PIN_LED, FLAG_PIN_LED);     client.publish("/lampu/kamar1/status",**FLAG_PIN_LED**);     FLAG_PIN_LED = !FLAG_PIN_LED;     Serial.print("FLAG_PIN_LED: ");     Serial.println(FLAG_PIN_LED);   } }

@MiaranaDIY client.publish("/lampu/kamar1/status",(FLAG_PIN_LED) ? "true" : "false"); or client.publish("/lampu/kamar1/status",(FLAG_PIN_LED) ? "1" : "0");

ask how to parse String to char ?
variable pin change to type data char..
String pin = String();      pin = client.parseInt(); Serial.print("PIN : "); Serial.println(pin);

@mydhitz Your reply is not clear. Could be explain please ? thanks

First thing I would like to know is why we have to read the payload by 1 byte at the time by using this for loop with the LENGHT as the final parameter.   Why is the payload not just a string which we can just copy?

@paysan18 because MQTT payloads might not be Strings - the are just a set of bytes sent over the network. It is the sender/receiver who interpret those bytes into the right format for the application.

@paysan18 because MQTT payloads might not be Strings - the are just a set of bytes sent over the network. It is the sender/receiver who interpret those bytes into the right format for the application.

Can I conver payload variable to boolean ?
I ve some trouble in ioBroker MQTT adapter it show me String. I can switch it in my Scripts but thats is not a plan

boolean PubSubClient::publish(const char* topic, const uint8_t* payload, unsigned int plength)

how to send/publish a double value?

I solved the problem this way:
void callback(char *topic, byte *payload, unsigned int length) {   char buff_p[length];   for (int i = 0; i < length; i++)   {     Serial.print((char)payload[i]);     buff_p[i] = (char)payload[i];   }   buff_p[length] = '\0';   String msg_p =  String(buff_p);   val = msg_p.toFloat(); //to float   val = msg_p.toInt(); // to Int }

Hi @knolleary,
Thanks for the amazing library but I disagree with you when you said "Conversion methods are unnecessary and will increase library size unnecessarily."
Conversion is obviously required every time we use the library to send or receive data. Hence, having to look for a method that works perfectly in the core language does not work very well for beginners/ intermediates.
For example, I used String library for the same and just discovered it is known to cause memory leaks and hence it malfunctions my MCU.
Apart from this, everyone has to invest a lot of time for conversion to find an easy and safe method for every MQTT application (Yes, everytime I emphasize) i.e different hard work while for example sending sensor readings, different hardwork for chat apps, different hardwork for boolean applications and so on.
So I think it would be very advantageous if the library had inbuilt functions for all type conversions.