Add support for numba-compiled callable metrics

Expected behaviour
pynndescent supports passing callable metrics compiled with numba, so I would expect openTSNE to be able to support this
Actual behaviour
When I pass a numba-compiled callable metric, openTSNE throws a ValueError
---------------------------------------------------------------------------
ValueError                                Traceback (most recent call last)
<ipython-input-44-b188b4c74e96> in <module>()
----> 1 embedding_train = tsne.fit(X_train)

/home/jake/.local/lib/python3.6/site-packages/openTSNE/tsne.py in fit(self, X)
   1040
   1041         """
-> 1042         embedding = self.prepare_initial(X)
   1043
   1044         try:

/home/jake/.local/lib/python3.6/site-packages/openTSNE/tsne.py in prepare_initial(self, X)
   1118             metric_params=self.metric_params,
   1119             n_jobs=self.n_jobs,
-> 1120             random_state=self.random_state,
   1121         )
   1122

/home/jake/.local/lib/python3.6/site-packages/openTSNE/affinity.py in __init__(self, data, perplexity, method, metric, metric_params, symmetrize, n_jobs, random_state)
    124         k_neighbors = min(self.n_samples - 1, int(3 * self.perplexity))
    125         self.knn_index, self.__neighbors, self.__distances = build_knn_index(
--> 126             data, method, k_neighbors, metric, metric_params, n_jobs, random_state
    127         )
    128

/home/jake/.local/lib/python3.6/site-packages/openTSNE/affinity.py in build_knn_index(data, method, k, metric, metric_params, n_jobs, random_state)
    274             metric_params=metric_params,
    275             n_jobs=n_jobs,
--> 276             random_state=random_state,
    277         )
    278

/home/jake/.local/lib/python3.6/site-packages/openTSNE/nearest_neighbors.py in __init__(self, metric, metric_params, n_jobs, random_state)
     11     def __init__(self, metric, metric_params=None, n_jobs=1, random_state=None):
     12         self.index = None
---> 13         self.metric = self.check_metric(metric)
     14         self.metric_params = metric_params
     15         self.n_jobs = n_jobs

/home/jake/.local/lib/python3.6/site-packages/openTSNE/nearest_neighbors.py in check_metric(self, *args, **kwargs)
    184             )
    185
--> 186         return super().check_metric(*args, **kwargs)
    187
    188     def build(self, data, k):

/home/jake/.local/lib/python3.6/site-packages/openTSNE/nearest_neighbors.py in check_metric(self, metric)
     58         if metric not in self.VALID_METRICS:
     59             raise ValueError(
---> 60                 f"`{self.__class__.__name__}` does not support the `{metric}` "
     61                 f"metric. Please choose one of the supported metrics: "
     62                 f"{', '.join(self.VALID_METRICS)}."

ValueError: `NNDescent` does not support the `CPUDispatcher(<function kld at 0x7f7fe2311158>)` metric. Please choose one of the supported metrics: euclidean, l2, manhattan, taxicab, l1, chebyshev, linfinity, linfty, linf, minkowski, seuclidean, standardised_euclidean, wminkowski, weighted_minkowski, mahalanobis, canberra, cosine, correlation, haversine, braycurtis, hamming, jaccard, dice, matching, kulsinski, rogerstanimoto, russellrao, sokalsneath, sokalmichener, yule.

Steps to reproduce the behavior
Here is a minimal working example:

import numpy as np
from openTSNE import TSNE
from openTSNE.callbacks import ErrorLogger
from numba import njit

@njit(fastmath=True)
def kld(p, q):
    result = 0.0
    for i in range(p.shape[0]):
        logp = np.log(p[i]) if p[i] > 0 else 0
        logq = np.log(q[i]) if q[i] > 0 else 0
        result += p[i] * (logq - logp)
    return -result / np.log(2.)

tsne = TSNE(
    perplexity=30,
    metric=kld,
    callbacks=ErrorLogger(),
    n_jobs=1
)

x_train = np.random.beta(0.5, 0.5, size=(500,10))
embedding_train = tsne.fit(x_train)

Almost all the problems I've encountered while maintaining openTSNE have been pynndescent related. As such, I would be very hesitant to add anything that ties openTSNE even closer to pynndescent.
However, it should be fairly simple to achieve what you want. I've made it so that the neighbors parameter can be an instance of openTSNE.nearest_neighbors.KNNIndex, so you can just copy over the NNDescent class and remove the check that disallows custom metrics. You can probably just change check_metric to return True and I'd guess that would do it.

Sorry, I wasn't clear. I'm not suggesting you tie openTSNE closer to pynndescent. Passing a callable metric is a standard feature for many packages. scikit-learn also allows it for many of their algorithms, including their implementation of TSNE. Adding a check if metric is callable is fairly straightforward. If you're short of time/motivation then I can make a PR once I have time to look through the code. You're of course free to reject it, but I think this is a reasonable feature to have for a t-SNE implementation and would be potentially useful to quite a few people.
I'm trying to apply openTSNE to use these methods for analyzing animal behavior:
https://royalsocietypublishing.org/doi/10.1098/rsif.2014.0672
as an example analysis for my recently developed package:
https://github.com/jgraving/behavelet
Applying t-SNE to these data requires using KL-divergence as a distance metric between normalized time-frequency vectors. If accomplishing that requires that users subclass and modify your code to get it working then I will likely just find something else, as I'd like it to be straightforward for people to use.
Again, I appreciate the work you've done on this. I'm not trying to be pushy. Just wanted to let you know that openTSNE would be more widely useful if it had this feature.

Hmm, I'm all for custom distance metrics, but the "numba-compiled callable" threw me off a little bit. I'm not very familiar with numba so is it possible to call numba compiled from regular old python code? What I'm getting at is that opentsne supports both exact neighbor search via scikit-learn and approximate neighbor search via pynndescent, and I'd like to keep some consistency between the two. My concern was that if the function is numba-compiled, that it wouldn't be possible to use that callable in the scikit-learn BallTree.
Putting all numba-related things aside, adding custom distance metrics was definitely on my to-do list, but I've been and will likely be short on time for a while, so if you're willing to open a PR, I'd be more than happy to take a look. The changes should be fairly minimal anyhow.

Ah, I see. Sorry I assumed you were familiar with numba as it's one of the main dependencies for pynndescent. numba is a library that JIT-compiles pure python/numpy functions to make them faster. A numba compiled function works just like any other python function in practice. scikit-learn's BallTree accepts user-defined functions, which includes numba compiled functions. Here is an example:
from sklearn.neighbors import BallTree
from numba import njit
import numpy as np

@njit(fastmath=True)
def l1(x, y):
    return np.sum(np.abs(x - y))

tree = BallTree(np.random.normal(size=(1000,10)), metric=l1)
distances, indices = tree.query(np.random.normal(size=(100,10)), k=5)

The only issue I can see is if the function isn't numba compiled and it's passed to pynndescent then pynndescent will throw an uninformative error message from numba. Whether or how to deal with this might require some thought, or maybe just make clear in the docstring and leave this for pynndescent to deal with. I assume if the user is savvy enough to pass a custom metric then they'd expect error messages are a possibility.
I'll take a look at the code and submit a PR with the changes.

The only issue I can see is if the function isn't numba compiled and it's passed to pynndescent then pynndescent will throw an uninformative error message from numba.

I would hope that numba has some kind of way to check if a function is compiled. Then if it isn't, we could do that within the pynndescent wrapper to avoid potential errors. A decorator is just a function, after all. It should be fairly straightforward to check if a function is an instance of the Dispatcher type and then if it isn't, to just call numba.njit(f) otherwise.

Fixed via #94.


Memory access fault by GPU node in Pytorch

Hi,
I am running rocm + pytorch. I am using rocm 5.4.2 + Pytorch2.0.0 docker.
I have two types of cards, RX6300, and Radeon VII. RX 6300 worked fine, but when I using Radeon VII, I encountered a memory fault. Codes are shown below:
 torch.cuda.set_device(2)
print(f"running with device: {torch.cuda.get_device_name(torch.cuda.current_device())}")
\\ return running with device: AMD Radeon VII
a = torch.rand((1,1)).float()
a.to(torch.device('cuda'))
\\ error messeage: Memory access fault by GPU node-10 (Agent handle: 0x7538750) on address (nil). Reason: Page not present or
\\ supervisor privilege.
\\ Aborted (core dumped)

\\ sometimes, it return: Segmentation fault (core dumped)

Can anyone help me? Thanks in advance!

It might be opencl problems? when I run "clinfo", it return errors:
clinfo
Number of platforms:                             1
  Platform Profile:                              FULL_PROFILE
  Platform Version:                              OpenCL 2.1 AMD-APP (3513.0)
  Platform Name:                                 AMD Accelerated Parallel Processing
  Platform Vendor:                               Advanced Micro Devices, Inc.
  Platform Extensions:                           cl_khr_icd cl_amd_event_callback

  Platform Name:                                 AMD Accelerated Parallel Processing
Number of devices:                               5
  Device Type:                                   CL_DEVICE_TYPE_GPU
  Vendor ID:                                     1002h
  Board name:                                    AMD Radeon RX 6300
  Device Topology:                               PCI[ B#3, D#0, F#0 ]
  Max compute units:                             6
  Max work items dimensions:                     3
    Max work items[0]:                           1024
    Max work items[1]:                           1024
    Max work items[2]:                           1024
  Max work group size:                           256
  Preferred vector width char:                   4
  Preferred vector width short:                  2
  Preferred vector width int:                    1
  Preferred vector width long:                   1
  Preferred vector width float:                  1
  Preferred vector width double:                 1
  Native vector width char:                      4
  Native vector width short:                     2
  Native vector width int:                       1
  Native vector width long:                      1
  Native vector width float:                     1
  Native vector width double:                    1
  Max clock frequency:                           2220Mhz
  Address bits:                                  64
  Max memory allocation:<PHONE_NUMBER>
  Image support:                                 Yes
  Max number of images read arguments:           128
  Max number of images write arguments:          8
  Max image 2D width:                            16384
  Max image 2D height:                           16384
  Max image 3D width:                            16384
  Max image 3D height:                           16384
  Max image 3D depth:                            8192
  Max samplers within kernel:                    29732
  Max size of kernel argument:                   1024
  Alignment (bits) of base address:              1024
  Minimum alignment (bytes) for any datatype:    128
  Single precision floating point capability
    Denorms:                                     Yes
    Quiet NaNs:                                  Yes
    Round to nearest even:                       Yes
    Round to zero:                               Yes
    Round to +ve and infinity:                   Yes
    IEEE754-2008 fused multiply-add:             Yes
  Cache type:                                    Read/Write
  Cache line size:                               64
  Cache size:                                    16384
  Global memory size:<PHONE_NUMBER>
  Constant buffer size:<PHONE_NUMBER>
  Max number of constant args:                   8
  Local memory type:                             Scratchpad
  Local memory size:                             65536
  Max pipe arguments:                            16
  Max pipe active reservations:                  16
  Max pipe packet size:<PHONE_NUMBER>
  Max global variable size:<PHONE_NUMBER>
  Max global variable preferred total size:<PHONE_NUMBER>
  Max read/write image args:                     64
  Max on device events:                          1024
  Queue on device max size:                      8388608
  Max on device queues:                          1
  Queue on device preferred size:                262144
  SVM capabilities:
    Coarse grain buffer:                         Yes
    Fine grain buffer:                           Yes
    Fine grain system:                           No
    Atomics:                                     No
  Preferred platform atomic alignment:           0
  Preferred global atomic alignment:             0
  Preferred local atomic alignment:              0
  Kernel Preferred work group size multiple:     32
  Error correction support:                      0
  Unified memory for Host and Device:            0
  Profiling timer resolution:                    1
  Device endianess:                              Little
  Available:                                     Yes
  Compiler available:                            Yes
  Execution capabilities:
    Execute OpenCL kernels:                      Yes
    Execute native function:                     No
  Queue on Host properties:
    Out-of-Order:                                No
    Profiling :                                  Yes
  Queue on Device properties:
    Out-of-Order:                                Yes
    Profiling :                                  Yes
  Platform ID:                                   0x7f8d87d8be50
  Name:                                          gfx1034
  Vendor:                                        Advanced Micro Devices, Inc.
  Device OpenCL C version:                       OpenCL C 2.0
  Driver version:                                3513.0 (HSA1.1,LC)
  Profile:                                       FULL_PROFILE
  Version:                                       OpenCL 2.0
  Extensions:                                    cl_khr_fp64 cl_khr_global_int32_base_atomics cl_khr_global_int32_extended_atomics cl_khr_local_int32_base_atomics cl_khr_local_int32_extended_atomics cl_khr_int64_base_atomics cl_khr_int64_extended_atomics cl_khr_3d_image_writes cl_khr_byte_addressable_store cl_khr_fp16 cl_khr_gl_sharing cl_amd_device_attribute_query cl_amd_media_ops cl_amd_media_ops2 cl_khr_image2d_from_buffer cl_khr_subgroups cl_khr_depth_images cl_amd_copy_buffer_p2p cl_amd_assembly_program

  Device Type:                                   CL_DEVICE_TYPE_GPU
  Vendor ID:                                     1002h
  Board name:                                    AMD Radeon VII
  Device Topology:                               PCI[ B#67, D#0, F#0 ]
  Max compute units:                             60
  Max work items dimensions:                     3
    Max work items[0]:                           1024
    Max work items[1]:                           1024
    Max work items[2]:                           1024
  Max work group size:                           256
  Preferred vector width char:                   4
  Preferred vector width short:                  2
  Preferred vector width int:                    1
  Preferred vector width long:                   1
  Preferred vector width float:                  1
  Preferred vector width double:                 1
  Native vector width char:                      4
  Native vector width short:                     2
  Native vector width int:                       1
  Native vector width long:                      1
  Native vector width float:                     1
  Native vector width double:                    1
  Max clock frequency:                           1801Mhz
  Address bits:                                  64
  Max memory allocation:<PHONE_NUMBER>8
  Image support:                                 Yes
  Max number of images read arguments:           128
  Max number of images write arguments:          8
  Max image 2D width:                            16384
  Max image 2D height:                           16384
  Max image 3D width:                            16384
  Max image 3D height:                           16384
  Max image 3D depth:                            8192
  Max samplers within kernel:                    26287
  Max size of kernel argument:                   1024
  Alignment (bits) of base address:              1024
  Minimum alignment (bytes) for any datatype:    128
  Single precision floating point capability
    Denorms:                                     Yes
    Quiet NaNs:                                  Yes
    Round to nearest even:                       Yes
    Round to zero:                               Yes
    Round to +ve and infinity:                   Yes
    IEEE754-2008 fused multiply-add:             Yes
  Cache type:                                    Read/Write
  Cache line size:                               64
  Cache size:                                    16384
  Global memory size:<PHONE_NUMBER>8
  Constant buffer size:<PHONE_NUMBER>8
  Max number of constant args:                   8
  Local memory type:                             Scratchpad
  Local memory size:                             65536
  Max pipe arguments:                            16
  Max pipe active reservations:                  16
  Max pipe packet size:<PHONE_NUMBER>
  Max global variable size:<PHONE_NUMBER>8
  Max global variable preferred total size:<PHONE_NUMBER>8
  Max read/write image args:                     64
  Max on device events:                          1024
  Queue on device max size:                      8388608
  Max on device queues:                          1
  Queue on device preferred size:                262144
  SVM capabilities:
    Coarse grain buffer:                         Yes
    Fine grain buffer:                           Yes
    Fine grain system:                           No
    Atomics:                                     No
  Preferred platform atomic alignment:           0
  Preferred global atomic alignment:             0
  Preferred local atomic alignment:              0
ERROR: clCreateKernel(-6)

This is case of mixed gpu types.
Can you do the following command:
rocminfo|grep gfx

Yes. I have solved it after plug out the RX6300.
Thank you @hongxiayang


enable fast resume of previous torrents #27

Write the bitfield of downloaded pieces to disk and the hash of the
bitfield as well to verify the file isn't corrupted

What if the actual data files gets corrupted? This wont catch that right?
On Sun 5 Jul 2015 at 12:42 Brian Suh<EMAIL_ADDRESS>wrote:

Write the bitfield of downloaded pieces to disk and the hash of the
bitfield as well to verify the file isn't corrupted
You can view, comment on, or merge this pull request online at:
https://github.com/mafintosh/torrent-stream/pull/126
Commit Summary

enable fast resume of previous torrents #27

File Changes

M index.js
https://github.com/mafintosh/torrent-stream/pull/126/files#diff-0
(95)

Patch Links:

https://github.com/mafintosh/torrent-stream/pull/126.patch
https://github.com/mafintosh/torrent-stream/pull/126.diff

—
Reply to this email directly or view it on GitHub
https://github.com/mafintosh/torrent-stream/pull/126.

No it won't. From what I could tell (from documentation not source code FWIW), libtorrent-rasterbar doesn't check for data corruption either. qBittorent does seem to keep store the last modified date of files and recheck hashes if there's a discrepancy.
AFAIK there's no way to check for data corruption without actually hashing the files, which is what I'm trying to avoid in the first place.

What could be done is to send 'have' messages to peers based on the fast resume data, but check a piece hash when a peer requests it or it is being read by a file stream, if there's a discrepancy, then choke the peer and refetch the piece.

You don't want to check the hash every time you access a piece, because it will kill performance. This means you'll have to maintain some kind of bitfield of verified pieces, which increases complexity.

Right, but only if we want to make sure there's no filesystem corruption. My opinion is that if a user's filesystem is trashing files, then it's the user's problem.

It's the swarm's problem if you start distributing corrupt pieces.

Don't clients just block you?

They should, but you never know. https://en.wikipedia.org/wiki/Torrent_poisoning

So is there something I can do to get this merged?

@bsuh could we make this opt-in for now? then after we test it for a bit in the wild we can make it default behaiviour

Yea, I'll make it a parameter for opts tomorrow. I'm feeling hyperactive and it's hard to focus today.

we all know that feeling :)

Added it as an option.
Hmm. When fast resume is enabled, this seems to break the blocklist test, because 'blocked-peer' gets emitted before 'ready' event. The test attaches the 'blocked-peer' only after the engine's 'ready' event.
I don't know if the expectation of 'ready' event always coming before 'blocked-peer' event is a valid expectation. If that's how it's supposed to work, it won't always be true, since engine initialization is asynchronous. It seems that with a fresh torrent with no written data and just 1 file, the one fs.exists call during verification will be fast enough that the 'ready' event will be emitted before 'blocked-peer' event, but one fs.readFile for the non-existent fast resume data file isn't fast enough. Also if previously written data exists, then you need multiple fs calls to verify. So I think the test should be changed?
test('peer should block the seed via blocklist', function(t) {
	t.plan(3);
	var peer = torrents(torrent, {
		dht: false,
		blocklist: [
			{ start: '<IP_ADDRESS>', end: '<IP_ADDRESS>' }
		]
	});
	peer.once('ready', function() {
		t.ok(true, 'peer should be ready');
		peer.once('blocked-peer', function(addr) {
			t.equal(addr, '<IP_ADDRESS>:6882');
			peer.destroy(t.ok.bind(t, true, 'peer should be destroyed'));
		});
	});
});

to
test('peer should block the seed via blocklist', function(t) {
	t.plan(3);
	var peer = torrents(torrent, {
		dht: false,
		blocklist: [
			{ start: '<IP_ADDRESS>', end: '<IP_ADDRESS>' }
		]
	});
	peer.once('ready', function() {
		t.ok(true, 'peer should be ready');
	});
	peer.once('blocked-peer', function(addr) {
		t.equal(addr, '<IP_ADDRESS>:6882');
		peer.destroy(t.ok.bind(t, true, 'peer should be destroyed'));
	});
});

I have stopped a download halfway through and then re-started a program. It seems that it just starts the whole download all over again.
Please implement a fast check and resume feature the way other clients do it.


cheat: init at 2.1.26

Motivation for this change
Things done

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

[x] NixOS
[ ] OS X
[ ] Linux

[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nox --run "nox-review wip"
[x] Tested execution of all binary files (usually in ./result/bin/)
[x] Fits CONTRIBUTING.md.

@Mic92 judging from the description of this package it seems it is an application, and not a Python library. Or is it both? If it is used as an application only, it needs to be moved outside of python-packages.nix.

fixed all concerns!

fixed all concerns

LGTM

anything left to do?


Mac OS case

Hello, I would love to use this on my MacBook. Do you have the instructions for it?

Yeah, would help

I would also like this for MAC OS. Thank you for your support.

Hello I would like to use the app on Mac. Please guide me on how to install it. Thank you.

Would love Mac OS install instructions

ditto!

Thanks for the amazing work. Mac OS install instruction would be amazing


Update storage-sas-overview.md

We have seen cases at times where in Customer want to generate SAS from the Azure Portal however the the button comes as Greyed out. The most common cause for this is they are not selecting the resource type at the top of the page. Post selection of appropriate resource type such as Service, Container or Objects, the button shall come as enabled. It will be good to let customers know this and the first place via documentation itself.
Hence, proposing the changes. Please review.

@jimmart-dev - Can you review this old PR and determine whether it needs to be closed or merged?
IMPORTANT: When the changes are ready for publication, add a #sign-off comment to signal that the PR is ready for the review team to merge.

@Amrinder-Singh29 - Thanks for making this suggestion! We are working on some new articles for SAS and will incorporate your feedback there.
#please-close


Update zio, zio-test-sbt to 2.0.14

About this PR
📦 Updates

dev.zio:zio
dev.zio:zio-test-sbt

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

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

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

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

Superseded by #156.


Observables Async Piped no longer cycle once in Chrome without Redux web tools!?

Hello
Can someone tell me what triggers a change detection for an async pipe?
I have some plain old state switches like "is this button toggled on" and a number of components subscribing. Now in UAT I have loads of bug reports that are not happening during development.
Out of fluke, I found out that when the Redux dev tools are either not installed or disabled, these errors appear, and is always around an Async Pipe in my templates.
Am reverting to change detection, but this seems like an anti-pattern. Has anyone an explanation? Here's some typical code that no longer changes detects on its own.

this.projectIsOpen$ = this.store.select(fromRoot.isProjectOpen);

...

<div *ng-if="projectIsOpen$ | async"

having to revert to this (and across my codebase = will steal days):
this.store.select(fromRoot.isProjectOpen).subscribe(open => {
            this.zone.run(() => {
                this.isProjectOpen = open;
            });
        });

...

<div *ng-if="projectIsOpen"

Going to close this. The answer is in the problem - I have some legacy code calling angular components directly from window. That code needs wrapping in a zone,run in order to be seviced by ng cycling.


Trusted Connection = Yes prompts for password

Attempting to setup a Connection to MSSQL Server with a Connection String
Provider=SQLNCLI11;Server=myServerName\theInstanceName;Database=myDataBase;Trusted_Connection=yes;
This should be integrated security but I am being prompted to enter a password and Tests fail if no password is entered.

Mssql driver uses tedious which does not support integrated security. Also, connection string does not ask for password now.
If you want the integrated security you can try a fork of the official driver which allows you to choose msnodesqlv8 that has integrated security support: https://marketplace.visualstudio.com/items?itemName=fzhem.sqltools-driver-mssql-commver


Encode spaces in names as '%20' intead of '+'

If your queue (or exchange) name contains some space chars, any operations you want to do with it will end up with an error like this:
Invoke-RestMethod : {"error":"Object Not Found","reason":"Not Found"}
At C:\Program Files\WindowsPowerShell\Modules\RabbitMQTools\1.5\Public\Remove-RabbitMQQueue.ps1:94 char:17
+ ...             $result = Invoke-RestMethod $url -Credential $Credentials ...
+                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : InvalidOperation: (System.Net.HttpWebRequest:HttpWebRequest) [Invoke-RestMethod], WebExc
   eption
    + FullyQualifiedErrorId : WebCmdletWebResponseException,Microsoft.PowerShell.Commands.InvokeRestMethodCommand
Invoke-RestMethod : {"error":"Object Not Found","reason":"Not Found"}
At C:\Program Files\WindowsPowerShell\Modules\RabbitMQTools\1.5\Public\Remove-RabbitMQQueue.ps1:94 char:17
+ ...             $result = Invoke-RestMethod $url -Credential $Credentials ...
+                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : InvalidOperation: (System.Net.HttpWebRequest:HttpWebRequest) [Invoke-RestMethod], WebExc
   eption
    + FullyQualifiedErrorId : WebCmdletWebResponseException,Microsoft.PowerShell.Commands.InvokeRestMethodCommand

This caused by incorrect encoding url:
RMQ expects smth like:
http://localhost:15672/api/queues/%2F/API%2C API
But actual url generated by script is:
http://localhost:15672/api/queues/%2F/API%2C+API

Hiyo!
Sorry for the wait, finally had time to go through PRs  : )  This works for me if no one has any issues with it - Are there any cases where the inverse occurs? i.e. a string going through [System.Uri]::EscapeDataString producing something this API doesn't like?
Barring cases like that, I'm happy to merge this!  Will plan on merging it in a week or two if I don't hear of any issues - can always revert, or add a switch to allow swapping those methods as needed.
Cheers!


Hidden Devices reappear

I have my monitors disabled in the device list, but when I reboot, my monitors become visible again and make switching between speakers and headset annoying.
System: Windows 10

I'm having this same issue. It's actually happening with all of my settings and it doesn't seem to be on every reboot. I've hidden all devices but my speakers and headset, changed the colors on them, so I can tell which I'm using just by looking at the icon, and I created a hot key for "NextPlaybackDevice".
These settings persisted for reboots/shutdowns in the past, but I just turned on my computer today and everything AudioSwitch related was reset. All my devices were listed again and the colors and hotkey were gone.
I'm running AudioSwitch v2.1 on Windows 10 Pro Version 1607 (OS Build 14393.576)

Ive noticed it happens after a graphics driver update for me.


Unable to use generated Kubernetes Go client informer with "AddressSpace" resource

Describe the bug
A clear and concise description of what the bug is.
It look to me as if it is not possible to use the Kubernetes generated Go client information implementation to list AddressSpace resources.
Instantiating a new informer fails with the follow error when refreshing:
E1203 14:46:50.687772 1 reflector.go:134] github.com/enmasseproject/enmasse/pkg/client/informers/externalversions/factory.go:107: Failed to list *v1alpha1.AddressSpace: RESTEASY003210: Could not find resource for full path: https://<IP_ADDRESS>:443/apis/enmasse.io/v1alpha1/addressspaces?limit=500&resourceVersion=0

To Reproduce
Steps to reproduce the behavior:

Generate Go client resources
Instantiate Informer and list

Expected behavior
Kubernetes generated Go resources seems to support this operation. My expectation would be that EnMasse supports this as well.

From the rest URL it tries to access address spaces as a cluster resource, but address spaces are namespaced. Is there a way to configure the informer with a namespace?

No the resource is Namespaced. However the default query options use NamespaceAll, which is the same as NamespaceNone and documented as:
// NamespaceAll is the default argument to specify on a context when you want to list or filter resources across all namespaces

So it might be that "all" and "none" are handled the same way, and it simply looks like a non-namespaced request. Which would make sense to some degree.


Ollama doesn't start in Docker!

What is the issue?
Hi guys, I'm trying to deploy Ollama to Hugging Face space using the Docker SDK. I've added this Git repo to Hugging Face since spaces are hosted on the Hugging Face Hub as Git repo and using this Dockerfile without any changes but, it keeps building. I could never get ollama to successfully running. I'm using amd64 architecture and no GPU can someone resolve this issue?
OS
Docker
GPU
No response
CPU
AMD
Ollama version
Latest

Can you share more logs or output so we can understand what's going wrong?
Does the docker build fail?  If so, can you share your Dockerfile and the docker build failure log?
Does it fail to docker run?  If so, can you share the logs of the container?

If you're still having problems getting it to work, please share the information above and I'll reopen the issue


Allows Stripe-Account header via opts

For Stripe Connect applications, this header is necessary for specifying which account the request belongs to

Sorry, this was a bit premature


Installation problem with debian 11 bullseye

Sorry for it but you can delete this issue because the problem comes from debian, deb-get i snot really appropriate only deb-get appears with
sudo deb-get list --raw
and nothing with
sudo deb-get list
deb-get issue template
Thank you for taking the time to report an issue to the deb-get project 🙂

Please complete one the appropriate sections below.
Delete all the sections that do not apply, including this one.
Any issues that do not use this template will be closed.
If you're not sure what to do, or have a general question about deb-get, then ask in Wimpy's World Discord.

Reporting a bug 🐛
Installation problem with debian 11 bullseye
Expected behavior
installation complete
Actual behavior
[+] Updating /var/cache/deb-get/deb-get.json
[] WARNING! Updating /var/cache/deb-get/deb-get.json failed.
[] WARNING! Cached file /var/cache/deb-get/deb-get.json is empty or missing.
/var/cache/deb-get/: est un dossier
[!] ERROR! Failed to download . Deleting /var/cache/deb-get/...
Steps to reproduce
curl -sL https://raw.githubusercontent.com/wimpysworld/deb-get/main/deb-get | sudo -E bash -s install deb-get
System information
Run the following a paste the output below:
/etc/os-release
PRETTY_NAME="Debian GNU/Linux 11 (bullseye)"
NAME="Debian GNU/Linux"
VERSION_ID="11"
VERSION="11 (bullseye)"
VERSION_CODENAME=bullseye
ID=debian
HOME_URL="https://www.debian.org/"
SUPPORT_URL="https://www.debian.org/support"
BUG_REPORT_URL="https://bugs.debian.org/"
/etc/lsb-release
Command 'lsb' not found
deb-get version
Command 'deb-get' not found
deb-get update
Command 'deb-get' not found

On a clean debian bullseye vm (with mate de), after installing the pre-requisites (sudo apt install lsb-release curl wget) (plus installing spice-vdagent and openssh for convenience), for me the
install works as expected
phil@qvm-debian-11-6-mate:~$  sudo curl -sL https://raw.githubusercontent.com/wimpysworld/deb-get/main/deb-get | sudo -E bash -s install deb-get
[sudo] password for phil:
  [+] Updating /var/cache/deb-get/deb-get.json
/var/cache/deb-get/deb-get_0.3.7-1_all.deb           100%[=====================================================================================================================>]  21.85K  --.-KB/s    in 0.007s
Preconfiguring packages ...
Selecting previously unselected package libpackagekit-glib2-18:amd64.
(Reading database ... 271393 files and directories currently installed.)
Preparing to unpack .../00-libpackagekit-glib2-18_1.2.2-2_amd64.deb ...
Unpacking libpackagekit-glib2-18:amd64 (1.2.2-2) ...
Selecting previously unselected package gir1.2-packagekitglib-1.0.
Preparing to unpack .../01-gir1.2-packagekitglib-1.0_1.2.2-2_amd64.deb ...
Unpacking gir1.2-packagekitglib-1.0 (1.2.2-2) ...
Selecting previously unselected package python-apt-common.
Preparing to unpack .../02-python-apt-common_2.2.1_all.deb ...
Unpacking python-apt-common (2.2.1) ...
Selecting previously unselected package python3-dbus.
Preparing to unpack .../03-python3-dbus_1.2.16-5_amd64.deb ...
Unpacking python3-dbus (1.2.16-5) ...
Selecting previously unselected package python3-apt.
Preparing to unpack .../04-python3-apt_2.2.1_amd64.deb ...
Unpacking python3-apt (2.2.1) ...
Selecting previously unselected package python3-pycurl.
Preparing to unpack .../05-python3-pycurl_<IP_ADDRESS>-5_amd64.deb ...
Unpacking python3-pycurl (<IP_ADDRESS>-5) ...
Selecting previously unselected package python3-software-properties.
Preparing to unpack .../06-python3-software-properties_<IP_ADDRESS>-2.1_all.deb ...
Unpacking python3-software-properties (<IP_ADDRESS>-2.1) ...
Selecting previously unselected package software-properties-common.
Preparing to unpack .../07-software-properties-common_<IP_ADDRESS>-2.1_all.deb ...
Unpacking software-properties-common (<IP_ADDRESS>-2.1) ...
Selecting previously unselected package deb-get.
Preparing to unpack .../08-deb-get_0.3.7-1_all.deb ...
Unpacking deb-get (0.3.7-1) ...
Selecting previously unselected package libstemmer0d:amd64.
Preparing to unpack .../09-libstemmer0d_2.1.0-1_amd64.deb ...
Unpacking libstemmer0d:amd64 (2.1.0-1) ...
Selecting previously unselected package libyaml-0-2:amd64.
Preparing to unpack .../10-libyaml-0-2_0.2.2-1_amd64.deb ...
Unpacking libyaml-0-2:amd64 (0.2.2-1) ...
Selecting previously unselected package libappstream4:amd64.
Preparing to unpack .../11-libappstream4_0.14.4-1_amd64.deb ...
Unpacking libappstream4:amd64 (0.14.4-1) ...
Selecting previously unselected package packagekit.
Preparing to unpack .../12-packagekit_1.2.2-2_amd64.deb ...
Unpacking packagekit (1.2.2-2) ...
Selecting previously unselected package packagekit-tools.
Preparing to unpack .../13-packagekit-tools_1.2.2-2_amd64.deb ...
Unpacking packagekit-tools (1.2.2-2) ...
Selecting previously unselected package python3-distro-info.
Preparing to unpack .../14-python3-distro-info_1.0_all.deb ...
Unpacking python3-distro-info (1.0) ...
Selecting previously unselected package unattended-upgrades.
Preparing to unpack .../15-unattended-upgrades_2.8_all.deb ...
Unpacking unattended-upgrades (2.8) ...
Setting up python3-dbus (1.2.16-5) ...
Setting up libyaml-0-2:amd64 (0.2.2-1) ...
Setting up libpackagekit-glib2-18:amd64 (1.2.2-2) ...
Setting up gir1.2-packagekitglib-1.0 (1.2.2-2) ...
Setting up python3-pycurl (<IP_ADDRESS>-5) ...
Setting up python-apt-common (2.2.1) ...
Setting up libstemmer0d:amd64 (2.1.0-1) ...
Setting up python3-distro-info (1.0) ...
Setting up python3-apt (2.2.1) ...
Setting up libappstream4:amd64 (0.14.4-1) ...
Setting up unattended-upgrades (2.8) ...

Creating config file /etc/apt/apt.conf.d/20auto-upgrades with new version

Creating config file /etc/apt/apt.conf.d/50unattended-upgrades with new version
Created symlink /etc/systemd/system/multi-user.target.wants/unattended-upgrades.service → /lib/systemd/system/unattended-upgrades.service.
Synchronizing state of unattended-upgrades.service with SysV service script with /lib/systemd/systemd-sysv-install.
Executing: /lib/systemd/systemd-sysv-install enable unattended-upgrades
Setting up python3-software-properties (<IP_ADDRESS>-2.1) ...
Setting up packagekit (1.2.2-2) ...
Created symlink /etc/systemd/user/sockets.target.wants/pk-debconf-helper.socket → /usr/lib/systemd/user/pk-debconf-helper.socket.
Setting up packagekit-tools (1.2.2-2) ...
Setting up software-properties-common (<IP_ADDRESS>-2.1) ...
Setting up deb-get (0.3.7-1) ...
  [+] Updating /etc/deb-get/01-main
/etc/deb-get/01-mai 100%[===================>]   2.70K  --.-KB/s    in 0s
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
100  102k    0  102k    0     0   131k      0 --:--:-- --:--:-- --:--:--  778k
/
  [+] Updating cache of supported apps in the background
Processing triggers for man-db (2.9.4-2) ...
Processing triggers for dbus (1.12.24-0+deb11u1) ...
Processing triggers for libc-bin (2.31-13+deb11u5) ...
phil@qvm-debian-11-6-mate:~$ deb-get list
deb-get                         [ installed ]

You should never normally use sudo deb-get, that will definitely cause problems.
You must set up a github token PAT due to the number of API requests due to the number of packages supported.
There are also known issues that are fixed in pending PRs.  You can get a working deb-get by adding an extra repo with the pending package-related fixes :
echo "https://raw.githubusercontent.com/philclifford/deb-get/extras/91-fixes" |sudo tee /etc/deb-get/91-fixes.repo
deb-get update

and the deb-get in that extras branch of my fork also has the pending fixes to deb-get applied. Together with the fixes repo it should work fine on bullseye (subject to the vagaries of upstream changes and any unfixed issues that arise)

Hi.
I retry this morning sudo curl -sL https://raw.githubusercontent.com/wimpysworld/deb-get/main/deb-get | sudo -E bash -s install deb-get and it's ok
Thanks


React router style URL parameters

React router supports the definition of parameters directly in the path, as per the react-router docs:
// from the path /inbox/messages/:id
var id = this.props.params.id;
Would be nice to be able to pass in queryParams={['id']} and have this work.

What do you mean? This should already work. queryParams is to assert which fields in the query string (?foo=bar) to treat as params for the given route.

Oh I see, I declared queryParams={['appId']} and that caused errors. Removing that from my router made it work.

Nope - maybe we can improve the documentation to be a bit clearer, but that's just for working with the query string.


Related to #29. Setting default region to us-east-1

boto3 client requires a region to make a connection. if you have a default region in your ~/.aws/config other than us-east-1, it throws an error. Since Mturk endpoint is by default only in us-east-1, there is no point of asking users to provide it. See #29

This looks good to me, thanks!


[Visual Editor] Ensure the ribbon menu matches capabilities

Right now we don't check if you can – say – delete a board before showing that in the ribbon menu.

Fixed


fix: don't change placeholder when focused

Fix #83

Some people use placeholders that are not associated with the date format, for example "Birthday."
This PR would not show the date format hinting for those users, and thus removes functionality.
I can't accept this as-is, would you like to instead add a focusedPlaceholder property?

Actually, it looks like this out of date PR implements this functionality: https://github.com/pushtell/react-bootstrap-date-picker/pull/65
You may want to fork that work bring it up to date with this repo.

I added a focusedPlaceholder prop.
Please review changes.

+1 please fix it

Hi @mchirkin - thanks for the PR! Please review the conflicts when you have a chance.


GH1710: GetSubDirectories alias

As described in #1710, this offers a simple Alias to get a list of sub-directories for a given DirectoryPath.

@patridge,
Thanks for your contribution.
To ensure that the project team has proper rights to use your work, please complete the Contribution License Agreement at https://cla2.dotnetfoundation.org.
It will cover your contributions to all .NET Foundation-managed open source projects.
Thanks,
.NET Foundation Pull Request Bot

@patridge, thanks for signing the contribution license agreement. We will now validate the agreement and then the pull request.
Thanks, .NET Foundation Pull Request Bot

Let me know if/what I need to do about the TeamCity build failing. I wasn't totally sure what the error was describing when I logged in there as a guest.

@patridge the fail on TeamCity has to do with reference assemblies missing/not found. Bug was introduced in PR #1645 and has nothing to do with your changes.
@devlead @patriksvensson can we get TC Agend with .NET 4.6.2 Targeting pack installed? Also, agent seems to use VS 2015:
[Step 1/1] MSBuild auto-detection: using msbuild version '14.0' from 'C:\Program Files (x86)\MSBuild\14.0\bin\amd64'.

@patridge could you squash all commits into one. Thanks!

@mholo65 agents are maintained by JetBrains now, we could probably add a build step to install targeting pack, but best would be if they updated their agents. We'll reach out to them but meanwhile check isn't required.

@patridge  your changes have been merged, thanks for your contribution 👍


Terminal not showing up after updating

Does this issue occur when all extensions are disabled?: Yes/No

VS Code Version: 1.96.0
OS Version: Darwin arm64 23.6.0

Steps to Reproduce:

Open the terminal
It's showing empty

If you open devtools (Help > Toggle Developer Tools) do you see any errors in the console?


Add clubstep angry birds mashup by dj-nate   angry birds (mashup by yoot)

Song Name
clubstep angry birds mashup
Artist Name
dj-nate   angry birds (mashup by yoot)
Source
Youtube
Youtube Link
V119fYHlNk-jJYLH
Direct File Link
No response
Song ID
13
Start Offset [ms]
0
Extra
Created from Auto Nong.
Created for level: 80628014

Thanks for contributing! Someone will soon review your request.
Here is the JSON result for the reviewer:
{
  "name": "clubstep angry birds mashup",
  "artist": "dj-nate   angry birds (mashup by yoot)",
  "source": "youtube",
  "startOffset": 0,
  "yt-id": "V119fYHlNk-jJYLH",
  "songs": [
    13
  ]
}

To accept the request, a reviewer needs to write "accept".

accept

reject
invalid YouTube link


Update theme build configuration

Our dependencies, previously statically built into _vendor.js, are provided by bower. Grunt has been configured to concat these dependencies into the _vendor.js.
At the same time, our dependencies have been cleaned up a bit. Modernizr.js has been removed, because it only was being used to test whether the browser is touch-enabled. Checking for a mobile browser is much easier now, with no need for Modernizr for only that test. Plus we only did that to use LightningTouch.js to remove the 300ms click delay on mobile browsers.
LightningTouch has been deprecated in favor other libraries, like FastClick.js. FastClick.js is much more intelligent, attaching only to mobile browsers that have not already fixed the 300ms delay issue. Perhaps in another year or two, we can reevaluate whether to remove FastClick entirely.
Relatedly, in the Wordpress Theme, RespondJS has been removed, which has led to an update in the Bootstrap Theme README.

Awesome! I've been wanting to get that _vendor.js file built from bower for a while now! That being said we can do away with _vendor.js altogether and have the JS Compile step just include the four bower components directly into bootstrap-asu.js. This saves us from having to exclude _vendor.js from our jshint and it keeps our js source directory to just our code. What do you think @nathan-rollins ?

Oh, yeah, of course. I was still using the _vendor.js in an intermediate build step back when I was doing a bit more footwork for building Modernizr, but it is totally vestigial at this point. Will be nice to tidy things up even more.

Looks Great!


Descriptive copy about library is confusing

Orbit is a composable framework for orchestrating change processing, tracking, and synchronization across multiple data sources.

Wait, what is this again?  I've shared the link to this repo with 2 co-workers at different times and both thought I was trying to show them a library for doing ETL work.  The goals section that follows the initial tagline doesn't help much.
This library feels like an ORM to me, and it's what got me excited about it when I was reading the docs.  It's sort of Ember data minus the requirement on Ember - amazing.  Sign me up.  I get that there's more to it.  But, what if you lead with the idea that this is a front-end ORM?  I think it would be easier to get people through the door.

@elliotlarson I've attempted to improve the README in #593 and will keep a focus on simplicity and marketing when I further update the docs site.
Please check out the updated README and let me know if you have suggestions to improve it further.

@dgeb That's great.  Thank you.  I think that will help people to understand what this is about when they first see the project.
I was playing around a bit with a homepage design concept for Orbit.js.  I mostly did this to scratch a personal itch.  I'm not sure if any of this is of interest to your or usable, but I figured I'd share it and a couple of comments while I have your ear.
I feel like if you lead with a bit of ORM code that would really help people see off-the-bat what this is.
Also, I'm only speaking from personal experience, but I feel like a redux refugee.  The boilerplate is too much, and the feature set is too little.  My data is almost always relational in nature.  I use mainly Rails/ActiveRecord on the backend, and boy do I miss this on the front-end.  Ember data seems like the only reasonable solution offered by any of the front-end frameworks at this point, but it's tightly coupled to Ember.  This library could help bring similar sanity to the other guys.  I didn't highlight this in the design, but I think this idea is a major selling point for Orbit.js (my 2 cents).

Design element attribution:

Logo: https://thenounproject.com/term/orbit/380201/
Illustration: https://undraw.co/ (searched for "space")

@elliotlarson that's awesome - thanks for putting that together! <3
I really like a number of elements of your design:

the color and liveliness
the leading code snippet
the callouts with subtitles

I think the logo is much too similar to Ionic's - perhaps they even used the same cc-licensed logo for inspiration?!
I also appreciate your comments about redux and ember-data. I actually started orbit years back as a way to experiment with some new ideas for ember-data, and I'm currently working to bring these "back home" as a member of the ember-data team (see my EmberConf talk).
I'd love to start by tweaking the home page in a few directions, say by including the leading code snippet and the callouts with titles to start. Would you be interested in working on this in https://github.com/orbitjs/orbitjs-site ?
Of course, I understand if you don't have the bandwidth and appreciate the ideas you've mocked up regardless. Thanks again!

Going to reopen this to be clear that more comments are welcome :)

@dgeb Ah, you're right.  That is the Ionic logo.  I was aware of the project... but not the logo.  Oh, well.
Back to the drawing board on that.
Thank you for sharing your talk.  Orbit seems like a compelling project!  I think it would be fun to help out in some capacity.  I don't have a lot of time right now, but I can certainly carve out a little bit of time to help with the website.  Should I just fork the website project, make the alterations you mentioned, and then submit a PR?

Should I just fork the website project, make the alterations you mentioned, and then submit a PR?

@elliotlarson sure, that would be great - many thanks!

@dgeb Okay, I put up a PR for updates to the content portion of the homepage: https://github.com/orbitjs/orbitjs-site/pull/19.  I figured we could start there and see if we can continue to make some incremental improvements.

@elliotlarson that looks just great! Since your PR has now been published, I'm going to close this issue and allow for further critiques in new issues and PRs.

@dgeb Oh, cool!  Thank you for the shout out.  Looks like we already got some feedback on an overflow issue in the code sample section.  I'll fix this and submit another PR.

@elliotlarson oh thanks in advance!


When using the argument --watch, I receive Operation not permitted.

Whenever I am using cca push --target=IP on my Ubuntu 14.10 Gnome, I manage to successfully push my code to my device. If I pass the argument --watch the message in my console is /bin/bash: line 0: ulimit: open files: cannot modify limit: Operation not permitted. Both ulimit -S && ulimit -H are set to unlimited. Any ideas?

The script itself tries to adjust ulimit since this is a common problem.  Perhaps there is a bug and we are overriding your manually set limits (assuming you set the limits yourself from shell before launching cca run --watch?)

It doesn't work either when loads from /etc/.../limits.conf, or setting them manually, or load them from .bashrc. Could it be some sort of permission configuration on that particular machine?

What does 'ulimit -n' output for you?

ulimit -n now prints 8192 which is the value I define in /etc/security/limits.conf


fix(core): conditionally include hostname parameter when using…

… detect port

Skip adding the hostname parameter if the host is "localhost".

Pre-flight checklist

[X] I have read the Contributing Guidelines on pull requests.
[ ] If this is a code change: I have written unit tests and/or added dogfooding pages to fully verify the new behavior.
[ ] If this is a new API or substantial change: the PR has an accompanying issue (closes #0000) and the maintainers have approved on my working plan.

Motivation
Fixing bugs for Hacktoberfest.
This closes #8202
Don't think it warrants a unit test for this, but LMK if you disagree.

Test Plan
How do you know this change has worked?
Previously, if user starts a node server using
const http = require("http");

const port = 3000;

const requestListener = function (req, res) {
  res.writeHead(200);
  res.end("My first server!");
};

const server = http.createServer(requestListener);

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

And they were to start a docusaurus project, it would not detect the above script running on 3000, and therefore start docusaurus on 3000 too.
The workaround before this PR was to specifically add the "localhost" host property into the other apps code:
server.listen(port, "localhost", () => {
But this PR avoids the user having todo that, and still supports and server.listen(port, "localhost", () => { use cases.

Test links

Deploy preview: https://deploy-preview-9407--docusaurus-2.netlify.app/
Related issues/PRs
#8202

Thanks, that looks like a good-enough fix 👍


HH should not process dropped nodes

@jwilder @corylanou
As for testing, I thought the simplest thing to do was to add the new code to the existing test. Yes, it means a somewhat longer test case, but it's very straightforward. This is the limit to which I push iot though.

Patch updated to remove the stubbed-out "purge" call. All data deletion is left to simple expiration so that data is never dropped directly due to operations such as DROP SERVER.

I see that with this change, the system will continually adding a new segment for all queues it purges. That is not what I wanted. Let me fix this up.

OK, this is ready to go @jwilder and @corylanou
Lots of way to solve this, I think this should do it nicely.

A could of small things but otherwise LGTM. :+1:

@jwilder -- there still seems to me to be an issue in PurgeOlderThan. If it's called multiple times, a segment will be added multiple times. I see no indication that it is idempotent.

Feedback from @jwilder integrated, merging now.

@otoolep Looks like an existing bug.  Should be straightforward to fix.

OK, I'll take care of it @jwilder.


Added Getter for Table Alias

Adds the flexibility of using aliases.
Example Query:
public function active()
{
    return $this->andWhere(['=', "$this->alias.status", 'active']);
}

User::find()->alias('instructor')->active()->all();

Result:
SELECT * FROM user instructor WHERE instructor.status = 'active';

Q
A

Is bugfix?
❌

New feature?
✔

Breaks BC?
❌

Tests pass?
❌

Fixed issues
comma-separated list of tickets # fixed by the PR, if any

Этот метод позволяет более удобно использовать псевдонимы и гибко использовать их в ActiveQuery.

@yiisoft/reviewers what do you think?

Will this request be accepted?

Is calling $this->alias when alias is not set before, setting alias to be default? This sounds weird. And what about calling it first and then chain-calling ->alias('something')?


Strictness of selectRange

8881c8ce7f5c7fd6641835b24ee1aae9f185596e:
Should selectRange follow the other formatRange functions and throw a TypeError if either argument is undefined and throw a RangeError if either argument is NaN?
Originally posted by @anba in https://github.com/tc39/proposal-intl-numberformat-v3/issues/62#issuecomment-883399976

I prefer to make Intl.PluralRules.prototype.selectRange more consistent with Intl.PluralRules.prototype.select than with Intl.NumberFormat.prototype.formatRange.  Since select coerces the argument to a Number and then accepts any non-finite value, mapping it to "other", I prefer for that to be the behavior of selectRange as well.

Discussion 2021-11-05: https://github.com/tc39/ecma402/blob/master/meetings/notes-2021-11-04.md#strictness-of-selectrange-65

Discussion 2021-11-04: https://github.com/tc39/ecma402/blob/master/meetings/notes-2021-11-04.md#strictness-of-selectrange-65

I can apply changes in the spec!


LightningModule docs is wrong when defining "Training with DataParallel"

The docs says when training with DataParallel the training_step_end function should be like this:
def training_step_end(self, batch_parts):
    gpu_0_prediction = batch_parts[0]['pred']
    gpu_1_prediction = batch_parts[1]['pred']
    # do something with both outputs
    return (batch_parts[0]['loss'] + batch_parts[1]['loss']) / 2

but acually, when i try it for myself, it should be like this:
def training_step_end(self, batch_parts):
    gpu_0_prediction = batch_parts['pred'][0]
    gpu_1_prediction = batch_parts['pred'][1]
    # do something with both outputs
    return (batch_parts['loss'][0] + batch_parts['loss'][1]) / 2

yes, the order of the axes are opposite.

@Android121381 mind send a PR with correction? :]

@Android121381 mind send a PR with correction? :]

@Android121381 mind send a PR with correction? :]

Sure, whem I'm implementing examples, It says that the training_step_end should like this
**def training_step(self, batch, batch_idx):
    x, y = batch
    y_hat = self.model(x)
    loss = F.cross_entropy(y_hat, y)
    return {'loss': loss}

def training_step_end(self, batch_parts):
    # do something with both outputs
    return (batch_parts[0]['loss'] + batch_parts[1]['loss']) / 2

traing_step function returns the loss, then training_step_end function process it. But when i try it for myself, it gives me this error:
KeyError: 0
so i print the key of the input(batch_parts) of the training_step_end function, it says the key is
dict_keys(['loss'])
therefore, i change my code as below:
**def training_step(self, batch, batch_idx):
    x, y = batch
    y_hat = self.model(x)
    loss = F.cross_entropy(y_hat, y)
    return {'loss': loss}

def training_step_end(self, batch_parts):
    # do something with both outputs
    return (batch_parts['loss'][0] + batch_parts['loss'][1]) / 2

the validation_step_end function have the same problem.

@Android121381 mind send a PR with correction? :]

Sure, whem I'm implementing examples, It says that the training_step_end should like this
**def training_step(self, batch, batch_idx):
    x, y = batch
    y_hat = self.model(x)
    loss = F.cross_entropy(y_hat, y)
    return {'loss': loss}

def training_step_end(self, batch_parts):
    # do something with both outputs
    return (batch_parts[0]['loss'] + batch_parts[1]['loss']) / 2

traing_step function returns the loss, then training_step_end function process it. But when i try it for myself, it gives me this error:
KeyError: 0
so i print the key of the input(batch_parts) of the training_step_end function, it says the key is
dict_keys(['loss'])
therefore, i change my code as below:
**def training_step(self, batch, batch_idx):
    x, y = batch
    y_hat = self.model(x)
    loss = F.cross_entropy(y_hat, y)
    return {'loss': loss}

def training_step_end(self, batch_parts):
    # do something with both outputs
    return (batch_parts['loss'][0] + batch_parts['loss'][1]) / 2

the validation_step_end function have the same problem.


[#151708096] remove consul service registration for service broker...

remove consul service registration for service broker
bump up
fixes submodule update failures ( due to cf-cli repo history changes)
updated readme

LGTM

LGTM

Merging it as it has two LGTMs and it should resolve #84


multi-area route redistribution sets incorrect routes on one area

Topology:

+------------------------+                      +---------------------------+
|                        |      Area "1" link   |                           |
| Node: First_00abcdef   |                      |  Node: Second_1234567890  |
| Namespace: n1          |Veth0          Veth0  +  Namespace: n2            |
| areas: "1"             +----------------------+  areas: "1", "2"          |
|                        |                      |                           |
|                        |                      |                           |
+------------------------+                      +-----------+---------------+
                                                            | veth1
                                             Area "2" link  |
                                                            |
                                                            |Veth0
                                                +-------------------------+
                                                |                         |
                                                | Node: Third_ab1234fefe  |
                                                | Namespace: n3           |
                                                | areas: "2"              |
                                                |                         |
                                                +-------------------------+

tested with:
ubuntu 20.04 with linux namespaces (kernel 5.4)
OpenR 2021-01-16 (d76157faf3387b8e8f41fbd773a6202fc488dffc)
#to recreate issue:
openr-multi-area.zip
to setup unzip files and :
sudo ./multi-area-openr.sh
will create 3 namespaces with OpenR instance each.
#to destroy setup
sudo ./multi-area-openr.sh stop
What's the actual result?
First node on n1 receives routes from Third node on n3 namespace. Which are in different areas.
fdfd:2:3:1::/64 via fe80::b801:49ff:fe41:5b7f dev veth0 proto 99 metric 10 pref medium
First node doesn't receive route from Second node on n2.
First node cant ping node n2 but can ping n3 via n2:
# ping fdfd:2:2::1
ping: connect: Network is unreachable
# ping fdfd:2:3::1
PING fdfd:2:3::1(fdfd:2:3::1) 56 data bytes
64 bytes from fdfd:2:3::1: icmp_seq=1 ttl=63 time=0.125 ms

Adjacencies and peers seem to be formed correctly, but the n1 received route from n3 and it is advertised as area 1 route
> Prefix: fdfd:2:3:1::/64
  via fe80::b801:49ff:fe41:5b7f dev veth0 weight 0 metric 1 area 1

Second node on n2 receives routes from both areas correctly:
# ip -6 r | grep /56
fdfd:1:1::/56 via fe80::e48e:64ff:fe4a:6205 dev veth0 proto 99 metric 10 pref medium
fdfd:2:3::/56 via fe80::c0f9:c0ff:feca:d7e7 dev veth1 proto 99 metric 10 pref medium

Third node on n3 can ping both n1 and n2
notes:

when changing the order of areas in n2.conf we can switch the the effect from n1 to n3  so that implies that the first area in area list is the main one, other is semi-working.

Thanks for reporting. Internal SWEs are digging into this one and reproducing with our internal unit tests + Emulation CI.

Thanks for bringing this to attention. We've identified the root-cause and addressed the fix. Once fix goes through internal code review, it'll be on Github for you to pull.

This issue should be resolved by commit  https://github.com/facebook/openr/commit/ad0e936ee58304f0fe43c2b86fdf7638241b528a.
Please try and let us know! Thanks for reporting.

Thanks for the quick fix. Seem to work on my setup also.


Simplify with lambda expression.

Codecov Report

Merging #367 (742d0fb) into master (a9ae182) will decrease coverage by 0.00%.
The diff coverage is 100.00%.

@@             Coverage Diff              @@
##             master     #367      +/-   ##
============================================
- Coverage     97.12%   97.12%   -0.01%
  Complexity     2324     2324
============================================
  Files            84       84
  Lines          5771     5769       -2
  Branches        935      935
============================================
- Hits           5605     5603       -2
  Misses           87       87
  Partials         79       79

Impacted Files
Coverage Δ

...ava/org/apache/commons/text/AlphabetConverter.java
96.59% <100.00%> (-0.05%)
:arrow_down:

:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more


Additional visualization types

Proposal:
Alongside the current visualization types (Graph, Graph + Single Stat, Heatmap, Histogram, Singles Stat, Gauge, Table, and Scatter), InfluxDB's UI should contain additional options.
Current behavior:
As of August 2020, the following visualization types are supported:

Desired behavior:
Additional visualization types.
Alternatives considered:
Other visualization tools such and Grafana offer a more complete selection of visualization types.
Use case:
I'd recommend users add comments to request a specific new visualization type. Demand can then be measured via likes.

Request for Pie Chart visualization type.

Adding single text based on value to the list.
E.g. green OK or red NOK for a server/container status cell.

Closing issue as requests for UI additions should be filed as individual issues.


Table commands not enabled in Metadata view

Describe the bug
In contrast to the Manuscript view, in the Metadata view the context menu for manipulating tables is empty.
Steps To Reproduce

Open Metadata view / Tables
Select a cell
Click right mouse button to open context menu

Expected behavior
should show a context menu allowing to add/remove rows and columns, for instance
Screenshots

@oliver---- would you agree with me that footnotes and bibliographic references inside table must be editable in metadata view as well?

...as well as other types of content available for tables in manuscript mode!

Absolutely!
Daniel Beilinson<EMAIL_ADDRESS>schrieb am Fr., 5. Apr. 2019,
11:34:

...as well as other types of content available for tables in manuscript
mode!
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/substance/texture/issues/1243#issuecomment-480212107,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AARVw2AOizSD-MwlBeEzJAX3kQnD222-ks5vdxi-gaJpZM4cdvyc
.

Fixed via #1246


xmldom 0.4.0 vulnerability i jsii-rosetta 1.24.0

:rocket: Feature Request
The current release of jsii-rosetta 1.24.0 depends on xmldom ^0.4.0 and xmldom 0.4.0 is vulnerable
https://github.com/xmldom/xmldom/security/advisories/GHSA-h6q6-9hqw-rwfv
Can we bump jsii-rosetta with dependency on ^0.5.0 ?

Hey!
We will issue a new release with the fixed dependency at the earliest convenience.
Note that - the risk associated with jsii-rosetta's use is very limited (if any), as it cannot really be considered as parsing "untrusted" input.

1.25.0 was published. Issue closed.


Alazar drivers cleanup

Remove redundant get_cmd from all parameters. (This is the default anyway)
Remove redundant set_cmd from TraceParameters. TraceParamter implements set_raw so there is no need for this.
Rewrite loops over channels and trigger engines to be more explicit.
Make dll_path an argument
Remove deprecated config method from alazar class

This should be tested on an actual device

@astafan8 could you have a look too?


Open discussion tab

Discussion tab in GitHub will help in between communication between community.

Hi it should be open. You can try posting there


Change Credential link text to Degree Requirements

Jira: https://jira.cac.washington.edu/browse/DAWGPATH-161

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

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

Totals

Change from base Build<PHONE_NUMBER>:
0.0%

Covered Lines:
430

Relevant Lines:
692

💛  - Coveralls


Flashdevelop/haxedevelop build Neko is it possible still from OpenFL project? Fails to compile.

I made a fresh reinstall of Win 11 Home 22H2 because previously I tried renaming the AppData username and even though I fixed paths in Registry it caused some permission w issues writing to the user/documents/.(folders) like Gimp was crashing and so was probably Lime config.xml.
Now that I started anew, installed Haxe ToolKit with neko and haxe and then
haxelib install lime
haxelib run lime setup
lime install openfl
To install LIME libs.
And a simple project will not work when trying to build Neko, example: (but programs I have built like that before 2020 work but I cant update them if I cant compile again)
Error for below code is:
Called from lime/_internal/backend/native/NativeCFFI.hx line 613
Called from lime/system/CFFI.hx line 172
Called from lime/system/CFFI.hx line 306
Uncaught exception - Could not find NekoAPI interface.
if that matters I have C:\Users\Me\.lime\config.xml and is just
<config>

</config>

(do I need to get a proper LIME config and how and where is it stored on the hard disk?)
This is a simple project that will not compile
package;

import openfl.Assets;
import openfl.display.Bitmap;
import openfl.display.BitmapData;
import openfl.display.Sprite;
import openfl.Lib;

/**
 * ...
 * @author Me
 */
class Main extends Sprite
{

	public function new()
	{
		super();

		// Assets:
		// openfl.Assets.getBitmapData("img/assetname.jpg");

		var iTestPic:Bitmap = new Bitmap(Assets.getBitmapData("img/testpic.jpg"));
		addChild(iTestPic);
	}

}

Can you check in lime/ndll/Windows and lime/ndll/Windows64 for a file called lime.ndll? If you're not sure where the Lime directory is, run haxelib path lime.

Yes the file is in both folders

Can you try moving or renaming the 32-bit one? I recently noticed that it prefers that one even on 64-bit machines. Don't know why it does that.
Not really expecting it to matter, because it usually works fine regardless, but I want to be sure.

I recently noticed that it prefers that one even on 64-bit machines

This may be related to a neko bug: https://github.com/HaxeFoundation/neko/pull/276

This may be related to a neko bug

Completely unrelated, but I might have to take it back anyway. The code in question is the final fall-through case if all else fails, and probably never gets run.

@GitMepc7r, let's move on to the next step: getting an actually useful error message. As is, CFFI.hx swallows the original error in order to print "Could not find NekoAPI interface", but we can remove that and get the error back.
Please delete the following lines, then run lime rebuild tools, then try again.
-			try
-			{
				var init = load("lime", "neko_init", 5);

				if (init != null)
				{
					__loaderTrace("Found nekoapi @ " + __moduleNames.get("lime"));
					init(function(s) return new String(s), function(len:Int)
					{
						var r = [];
						if (len > 0) r[len - 1] = null;
						return r;
					}, null, true, false);
				}
-				else if (!lazy)
-				{
-					throw("Could not find NekoAPI interface.");
-				}
-			}
-			catch (e:Dynamic)
-			{
-				if (!lazy)
-				{
-					throw("Could not find NekoAPI interface.");
-				}
-			}

You should get a new error this time, hopefully one that provides a good hint.

I rename to bak the NDLL from the 32 bit windows folder and same message as in the OP. I edited the CFFI as you said I get:
Called from lime/_internal/backend/native/NativeCFFI.hx line 613
Called from lime/system/CFFI.hx line 172
Called from lime/system/CFFI.hx line 283
Called from lime/system/CFFI.hx line 111
Called from D:\Applications\HaxeToolkit\haxe\std/neko/Lib.hx line 35
Uncaught exception - load.c(237) : Failed to load library : ./lime.ndll

I did add the two lines to the file at line 111. Then I had to do
haxelib install format
haxelib install hxp
lime rebuild tools
Then when trying to build Neko project in FlashDevelop the error is
Called from D:\Applications\HaxeToolkit\haxe\std/neko/Lib.hx line 35
Uncaught exception - load.c(237) : Failed to load library : D:\Applications\HaxeToolkit\haxe\lib\lime/8,0,1/src//ndll/Windows64/lime.ndll

Ok, I'm getting the impression that it can find the file just fine, but it just can't use it for some reason. To confirm this, let's try the workaround I found last time.

Comment out lines 111-112 so that it'll look for ./lime.ndll again. (Rebuild tools as usual.)
Copy lime.ndll into your project's root directory.
Run lime build neko from the project's root directory. (Build via the command line for this one, not via FlashDevelop.)

This way, we're sure it can find ./lime.ndll (because it's literally right there). So if it still errors, we'll know it just doesn't like the file for some reason.

lime/8,0,1/src//ndll/Windows64

Whoops, double slash. Not that it matters. You can often add extra slashes like that, and in this case I'm 90% sure that it isn't actually using the path at all. It just prints it in the error message and then discards it.
And if it did use the path, the fact that it contains forward slashes would be a bigger problem. You could fix it like this: StringTools.replace(neko.Lib.load(__findHaxelib("lime"), "/", "\\") + "ndll\\Windows64\\lime", but again, I don't think it actually uses the string.

If neko doesnt work I can try Windows

Won't help. It still uses Neko to compile, which requires lime.ndll. There's another way around that, which I think is going to be required, but I'll get to that later.

I removed the previously added lines after 111 and rebuilt lime tools.
I ran the lime build neko from FD's command prompt and it creates a build with no errors seen but when I start the app from the built neko folder it exist quickly so no way to tell what is going on.
When I try ti build again with FlashDevelop Release Neko it gives
Uncaught exception - load.c(237) : Failed to load library : ./lime.ndll
The only difference is it doesn't now give the full path to whichever D drive but same error in the local or root folder (I put it in the projects folder along with the HXproj file, I did not put it in any subfolders

I ran the lime build neko from FD's command prompt and it creates a build with no errors seen but when I start the app from the built neko folder it exits quickly so no way to tell what is going on.

Try lime run neko from the main project folder. That will not only run the app, but since you're starting it from the command line, you'll be able to see error messages even after it closes.
For future reference, you can also do lime test neko, which will build and then run it in a single step. (Note that if lime build neko && lime run neko doesn't work, then lime test neko won't either, and vice versa. Don't get bogged down trying both every single time.)

I put the lime.NDLL in the projects folder along with the HXproj file, I did not put it in any subfolders

I assume that's the folder with the project.xml file?

Yes, lime run neko / lime test neko give the same error
Called from lime/_internal/backend/native/NativeCFFI.hx line 613
Called from lime/system/CFFI.hx line 172
Called from lime/system/CFFI.hx line 283
Called from lime/system/CFFI.hx line 111
Called from D:\Applications\HaxeToolkit\haxe\std/neko/Lib.hx line 35
Uncaught exception - load.c(237) : Failed to load library : ./lime.ndll

Yes the project.XML is there

Ok, I'm pretty much out of ideas for making lime.ndll work. Let's try a different approach.
I just merged a new feature into the 8.1.0-Dev branch that allows you to skip lime.ndll entirely. It's still kind of experimental, but as far as I know it just works.
In case you aren't familiar with the process of cloning a repo and checking out a branch, here are the steps:
haxelib git lime https://github.com/openfl/lime.git
haxelib path lime
cd [path to lime/git]
git fetch
git checkout 8.1.0-Dev

Once done, you should be able to compile with lime test [target] -eval. First try this from the command line, and then we'll try to figure out how to make FlashDevelop do it automatically.

I made a fresh reinstall of Win 11 Home 22H2 because previously I tried renaming the AppData username and even though I fixed paths in Registry it caused some permission w issues writing to the user/documents/.(folders) like Gimp was crashing and so was probably Lime config.xml.
Now that I started anew, installed Haxe ToolKit with neko and haxe and then
haxelib install lime haxelib run lime setup lime install openfl
To install LIME libs.
And a simple project will not work when trying to build Neko, example: (but programs I have built like that before 2020 work but I cant update them if I cant compile again)
Error for below code is:
Called from lime/_internal/backend/native/NativeCFFI.hx line 613 Called from lime/system/CFFI.hx line 172 Called from lime/system/CFFI.hx line 306 Uncaught exception - Could not find NekoAPI interface.
if that matters I have C:\Users\Me.lime\config.xml and is just
<config>

</config>

(do I need to get a proper LIME config and how and where is it stored on the hard disk?)
This is a simple project that will not compile
package;

import openfl.Assets;
import openfl.display.Bitmap;
import openfl.display.BitmapData;
import openfl.display.Sprite;
import openfl.Lib;

/**
 * ...
 * @author Me
 */
class Main extends Sprite
{

	public function new()
	{
		super();

		// Assets:
		// openfl.Assets.getBitmapData("img/assetname.jpg");

		var iTestPic:Bitmap = new Bitmap(Assets.getBitmapData("img/testpic.jpg"));
		addChild(iTestPic);
	}

}

Try adding <architecture name="x86" exclude="x64" if="windows" unless = "neko"/> to your project.xml. It really worked for me. It seems lime copied wrong ndll file when compiling. You can also change this line if you target 64bit build.

This seems to have been a one-off, so I don't think we need to keep the issue open.


Ignore only the key duplication error when creating a DID.

Ignore only the key duplication error when creating a DID. When inserting a randomly generated key when seed is not given, errors other than duplicate errors are likely to occur and should not be ignored.

Merged. Thanks.


[FEAT] Add ResponseFilter template

Information
As developer I want to generate a ResponseFilter described here:
https://tsed.io/docs/response-filter.html

Steps

[ ] Create new entry here: https://github.com/TypedProject/tsed-cli/blob/master/packages/cli/src/commands/generate/ProviderTypes.ts
[ ] Create new hbs template response-filter.hbs (https://github.com/TypedProject/tsed-cli/tree/master/packages/cli/templates/generate)
[ ] Create new integration test (https://github.com/TypedProject/tsed-cli/blob/master/packages/cli/test/integrations/generate/generate.exception-filter.integration.spec.ts)

Acceptance criteria

[ ] The template is correctly generated

implemented in #68

implemented in #68


Debug logs

Add some depuration logs and update the plugin version

Note: Some of the comments apply to more than one class, as they are very similar to each other, it would be interesting to try to simplify or centralize the logic on is_avaible() methods, maybe creating a custom method in parents class would simplify and improve future maintainaility


Some GhostCursor fixes (#3)

Just tried to fix some of the issues brought up in #3.
Changes:

GhostCursor::into_parts returns a mutable token
Fixed the GhostCursor::move_mut soundness issue where the reference could escape
A compile test for the above (code from the example in the issue)

Thanks! I got distracted and had completely forgotten about #3 :/


[Bug]: Building the Evidence template with the latest version of Evidence fails

Describe the bug
Building (npm run build) the default, unmodified, starter template report fails with ReferenceError [Error]: window is not defined.
Steps to Reproduce
npx degit evidence-dev/template dashboard
cd dashboard
npm install
npm run sources
npm run build

Results in this error:
node:internal/event_target:1090
  process.nextTick(() => { throw err; });
                           ^
ReferenceError [Error]: window is not defined
    at detect (/Users/.../dashboard/node_modules/echarts/dist/echarts.js:123:54)
...

Logs
No response
System Info
System:
    OS: macOS 13.6.7
    CPU: (12) arm64 Apple M2 Max
    Memory: 10.83 GB / 96.00 GB
    Shell: 5.9 - /bin/zsh
  Binaries:
    Node: 22.2.0 - /opt/homebrew/bin/node
    Yarn: 1.22.22 - /opt/homebrew/bin/yarn
    npm: 10.7.0 - /opt/homebrew/bin/npm
    pnpm: 9.1.1 - /opt/homebrew/bin/pnpm
  Browsers:
    Edge: 126.0.2592.61
    Safari: 17.5
  npmPackages:
    @evidence-dev/bigquery: ^2.0.5 => 2.0.6
    @evidence-dev/core-components: ^4.5.1 => 4.5.1
    @evidence-dev/csv: ^1.0.11 => 1.0.11
    @evidence-dev/databricks: ^1.0.5 => 1.0.6
    @evidence-dev/duckdb: ^1.0.10 => 1.0.10
    @evidence-dev/evidence: ^38.0.1 => 38.0.1
    @evidence-dev/motherduck: ^1.0.1 => 1.0.1
    @evidence-dev/mssql: ^1.0.7 => 1.0.7
    @evidence-dev/mysql: ^1.1.2 => 1.1.2
    @evidence-dev/postgres: ^1.0.5 => 1.0.5
    @evidence-dev/snowflake: ^1.0.5 => 1.0.6
    @evidence-dev/sqlite: ^2.0.4 => 2.0.4
    @evidence-dev/trino: ^1.0.5 => 1.0.6

Severity
blocking all usage of Evidence
Additional Information, or Workarounds
No response

Nvm, just found out about the node@20 requirement


Running flutter in iOS17, native print logs cannot be displayed in VSCode，only in XCode.  But iOS 16 can show both

Steps to reproduce

edit AppDelegate.swift
print native log

XCode version: 15.2
flutter version: 3.19.5
iPhone: 14pro max (iOS 17.5.1)
Expected results
iOS 17 can show log in VSCode
Actual results
iOS 17 cannot show log in VSCode
ps: iphone12 (iOS 16) can show log in VSCode
Code sample
Code sample
import UIKit
import Flutter

@UIApplicationMain
@objc class AppDelegate: FlutterAppDelegate {

  var timer: Timer?

  override func application(
    _ application: UIApplication,
    didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?
  ) -> Bool {
    GeneratedPluginRegistrant.register(with: self)
    timer = Timer.scheduledTimer(timeInterval: 5.0, target: self, selector: #selector(timerTask), userInfo: nil, repeats: true)
    return super.application(application, didFinishLaunchingWithOptions: launchOptions)
  }

  @objc func timerTask() {
    NSLog("hello - NSLog")
    print("hello - print")
  }

  deinit {
    timer?.invalidate()
    timer = nil
  }
}

Screenshots or Video

Screenshots / Video demonstration
[Upload media here]

Logs
Logs
[Paste your logs here]

Flutter Doctor output
Doctor output
[✓] Flutter (Channel stable, 3.19.5, on macOS 14.4 23E214 darwin-x64, locale zh-Hans-CN)
    • Flutter version 3.19.5 on channel stable at /Users/xxxx/fvm/versions/3.19.5
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision 300451adae (9 weeks ago), 2024-03-27 21:54:07 -0500
    • Engine revision e76c956498
    • Dart version 3.3.3
    • DevTools version 2.31.1
    • Pub download mirror https://pub.flutter-io.cn
    • Flutter download mirror https://storage.flutter-io.cn

[✓] Android toolchain - develop for Android devices (Android SDK version 34.0.0)
    • Android SDK at /Users/xxxx/Library/Android/sdk
    • Platform android-34, build-tools 34.0.0
    • ANDROID_HOME = /Users/xxxx/Library/Android/sdk
    • Java binary at: /Users/xxxx/Library/Java/JavaVirtualMachines/corretto-<IP_ADDRESS>/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment Corretto-<IP_ADDRESS>.1 (build <IP_ADDRESS>+9-LTS)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 15.2)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Build 15C500b
    • CocoaPods version 1.15.0

[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[✓] Android Studio (version 2023.2)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 17.0.9+0-17.0.9b1087.7-11185874)

[✓] VS Code (version 1.89.1)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.90.0

[✓] Connected device (3 available)
    • xxxx  (mobile) • xxxxxx • ios            • iOS 17.5.1 21F90
    • macOS (desktop)         • macos                     • darwin-x64     • macOS 14.4 23E214 darwin-x64
    • Chrome (web)            • chrome                    • web-javascript • Google Chrome 125.0.6422.113

[✓] Network resources
    • All expected network resources are available.

• No issues found!

Hi @Lxuanx, there might be a difference between these two iOS versions. However, I see there is already an issue https://github.com/flutter/flutter/issues/69103, please check the similar case at https://github.com/flutter/flutter/issues/69103#issuecomment-1092664178.
I will close this issue as a duplicate, please also share your findings on that issue and follow it for updates. Thanks!


Setup new Stories for the LinearViewer in the Storybook

…e random sequences resulting in a huge number of mismatches.

Closing as this has been merged into https://github.com/nitro-bio/nitro-ui/pull/64


fix: Text2Image interface refactored

Relates to: Text2Image plugin

Risks
Low

Background
Uniform interface and parameters and allow for flexible options input.
What does this PR do?
Upgrade the input parameter for sophisticated effect in ALL T2I interfaces.
What kind of change is this?
Updates

Documentation changes needed?

Testing
Where should a reviewer start?
Detailed testing steps

As well as address the CI linter failure and add a test plan if you can thanks !


python310Packages.pynws: 1.5.0 -> 1.5.1

Diff: https://github.com/MatthewFlamm/pynws/compare/v1.5.0...v1.5.1
Description of changes

Things done

Built on platform(s)

[ ] 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
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
23.11 Release Notes (or backporting 23.05 Release notes)

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

[ ] Fits CONTRIBUTING.md.

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

5 packages built:

home-assistant-component-tests.nws
python310Packages.pynws
python310Packages.pynws.dist
python311Packages.pynws
python311Packages.pynws.dist


ARROW-9476: [C++][Dataset] Fix incorrect dictionary association in HivePartitioningFactory

In the presence of multiple fields, it was possible (non-deterministically) that the field->dictionary association could be scrambled.

I can approve the dataset test, but I wrote it though .. ;)

@pitrou please take a look. @jorisvandenbossche and I co-approve the python test (though I can't push the button since I'm the author)

+1


Standalone Binary Release

@ericsia requested to release standalone binary of the exporter in #22.

I wish it is .txt too. Anyway, is it possible you pack the python script become executable (.exe)? it will be more convenient

@ericsia I built the binary of the exporter with Linux, Windows, and MacOS. Feel free to give it a try. The binaries can be downloaded in the workflow's artifacts.

Starting from 0.9.0, the releases include binaries for Linux, Windows, and MacOS.


[1.12.2] not working when window is not focused

hi,
if i open my game twice the mod only works in the menu in the second windows but when i want to close the menu it opens again

Press F3 + P to turn off "pause on focus"


add DataHighway

substrate program candidate that built by MXC, IOTA, WTC.
Grant Application
This application is (select one):

[ ] Speculative (use this by default)
[x] an RFP response

This application is (select one):

[x] Public (fully)
[ ] Public with private finances

Abstract
[Provide a brief description of your project here (summarise key points).
If your application is part of a programme, please mention which in the first line of the abstract.
The details should be in the application 'document' that you add to this repo via a pull request.]
Checklist

[ ] The grants document has been read and understood.
[ ] The Google Form will be completed accurately. Note that the Google Form requires the pull request URL.
[ ] Abstract (above) is succinct and complete.
[ ] The application is being included into the correct directory: either 'targeted' or 'speculative'.
[ ] The application includes a project description.
[ ] The application includes all names of team members.
[ ] The application includes a description of the team's experience.
[ ] The application includes all necessary links (e.g. GitHub and LinkedIn)
[ ] The "Development Roadmap" section in the application has a timeline of development ("milestones").
[ ] The "Development Roadmap" section in the application has an estimate of funds required.
[ ] The "Development Roadmap" section gives an indication of the team's long term plans.
[ ] The "Development Roadmap" section includes documentation as a deliverable for at least one milestone.

Name has been added!


Provide a built-in HTTPError JSON handler

Is your feature request related to a problem? Please describe.
For now, the default HTTPError handler returns an HTML response. Whether this is a sensible default for most applications is debatable, for there is also no built-in handler that returns JSON, which means we need to write a JSON handler ourselves.
Describe the solution you'd like
Provide a handler (e.g. to_json), used like so:
from bocadillo.error_handlers import to_json
from bocadillo.exceptions import HTTPError

api.add_error_handler(HTTPError, to_json)

Also, refactor the current code so that it uses the to_html handler by default.
Describe alternatives you've considered
Should there be an option on the API as a shortcut for this?
Additional context
I realised this while working on #49.

Any thoughts on this @alin23 ? :-)


Property to take callback on backdrop press

for this pr to merge we also need to change the documentation. Its a old PR, but can you also update the documentation?


Circular Buffer file save ...

Discussed in https://github.com/raspberrypi/picamera2/discussions/870

Originally posted by lmitcham November 17, 2023
I have a Raspberry Pi Zero 2W running the Bullseye OS and using the HQ camera running at 15 fps.  I am attempting to emulate the basic CircularOutput example from the Picamera2 manual on page 43.
My understanding is that the example will start a circular buffer and can run for a period of time while filling the buffer with the most recent 5 seconds of video.  At some point in time, the fileoutput is given a filename to write to and the most recent 5 seconds of video is saved to that file and the file is appended with video for a period of time until a stop is issued.  The resulting video will be the buffered 5 seconds plus the video that was saved between the time the filename was created and the stop command.
In practice, I am seeing only the most recent 5 seconds of video saved, from when the stop was issued.
Relevant code snippet follows:
RECORD_FOR_SECONDS  = 5
RECORD_FPS = 15

CAMERA = Picamera2()
config = CAMERA.create_video_configuration(main={"size":(2028, 1080)},
                                            raw={"size":(2028, 1080)})
config["transform"] = libcamera.Transform(hflip=0, vflip=1)
CAMERA.configure(config)
encoder = H264Encoder(bitrate=10000000, iperiod=15)
OUTPUT = CircularOutput(buffersize=int(RECORD_FOR_SECONDS * RECORD_FPS), outputtofile=False)
CAMERA.start_recording(encoder, OUTPUT)

A period of time > 5 seconds passes ...
VIDEO_CLIP_FILENAME = str( GUN_SERIAL_NUMBER ) + "_" + dt.datetime.now().strftime('%Y%m%d_%H%M%S')
OUTPUT.fileoutput = RAM_DISK + VIDEO_CLIP_FILENAME + FILE_TYPE_H264   # Start the LIVE recording NOW
OUTPUT.start()

Another period of time > 5 seconds passes ...
OUTPUT.stop()
CAMERA.stop_recording()

I hope that I am just missing something simple.

I was correct, it was a simple case of mental constipation.  I changed ...
OUTPUT = CircularOutput(buffersize=int(RECORD_FOR_SECONDS * RECORD_FPS), outputtofile=False)

to ...
OUTPUT = CircularOutput(buffersize=int(RECORD_FOR_SECONDS * RECORD_FPS))


Change step to fix pglogical replication process.

Step 2 of pglogical extension needs to be updated.  you can not grant the role as we do not have access to a superuser, so the only step for this should be to run: "ALTER ROLE myUser replication".  This should be run on the master.
This will fix the issue.

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

ID: 8d7e3fa6-b282-55d8-ef23-ce4a106edf3f
Version Independent ID: d815c733-fce0-dc0e-8d8b-c8c76acbc182
Content: Logical replication and logical decoding - Azure Database for PostgreSQL - Flexible Server
Content Source: articles/postgresql/flexible-server/concepts-logical.md
Service: postgresql
Sub-service: flexible-server
GitHub Login: @sr-msft
Microsoft Alias: srranga

@tbecks Thank you for your feedback. We will check and update the doc.

Thanks for the feedback. We will look into this and update the docs.

#please-close


node package

get_decoded_msg_data
commented in  #441
client_pool

interface name should be something like NodeClientGetter, if it's really needed to have such interface

should be clients instead of nodeClients it's already in a connection pool

strange receiver name k typically can p for a pool or ncp ?
proxy.go

can use TrimSuffix and better validation for the endpoint needs to happen, that's the point of the error return value

all errors need to have more context
exported functions need to have comments

@AlaaElattar Good luck with your exams, @rawdaGastan please continue the work on this one


Adds docs generation infra for VertexAI

I'll make a new PR since this one is branched off the preview branch.


Add flags utility

add flags template
support flags in register fields

@CodiumAI-Agent /review

PR Analysis

🎯 Main theme: Adding flags utility and integrating it with register fields
📌 Type of PR: Enhancement
✨ Focused PR: True
🔒 Security concerns: No security concerns found

PR Feedback

General suggestions: The PR seems to be well-structured and focused on a specific enhancement, which is the addition of a flags utility and its integration with register fields. However, it would be beneficial to include tests that verify the new functionality.

🤖 Code feedback:

relevant file: include/armpp/hal/registers.hpp
suggestion: Consider using std::underlying_type_t<value_type> instead of typename value_type::enumeration_type for better generality. [medium]
relevant line: auto val = static_cast((register_ & mask) >> Offset);

relevant file: include/armpp/util/flags.hpp
suggestion: It would be beneficial to add comments to the code, explaining the purpose and functionality of the flags class and its methods. This would improve code readability and maintainability. [medium]
relevant line: class flags {

relevant file: include/armpp/util/flags.hpp
suggestion: Consider adding a method to check if a specific flag is set. This could improve the usability of the flags class. [medium]
relevant line: class flags {

How to use

Tag me in a comment '@CodiumAI-Agent' and add one of the following commands:
/review [-i]: Request a review of your Pull Request. For an incremental review, which only considers changes since the last review, include the '-i' option.
/describe: Modify the PR title and description based on the contents of the PR.
/improve: Suggest improvements to the code in the PR.
/ask <QUESTION>: Pose a question about the PR.

To edit any configuration parameter from 'configuration.toml', add --config_path=new_value
For example: /review --pr_reviewer.extra_instructions="focus on the file: ..."
To list the possible configuration parameters, use the /config command.


Datalist still buggy on Chrome 62

Following bug is still present on Chrome 62:
"Partial support refers to a bug where long lists of items are unscrollable resulting in unselectable options."
Tested on Ubuntu 17.10/Chrome 62.0.3202.62 and using datalist element on https://html5tutorial.info/html5-datalist.php

Thanks!