Discourse NixOS test keeps restarting discourse

Describe the bug
Discourse NixOS test hangs
Steps To Reproduce
Steps to reproduce the behavior:
nix-build nixos/tests/discourse.nix

log: https://gist.github.com/ryantm/2c60f2f041341afab0481fef56d30aa5
Expected behavior
Test completes with success exit code.
Notify maintainers

@talyz
Metadata
Please run nix-shell -p nix-info --run "nix-info -m" and paste the result.
[ryantm@home2:~/p/nixpkgs]$ nix-shell -p nix-info --run "nix-info -m"
 - system: `"x86_64-linux"`
 - host os: `Linux 5.14.3, NixOS, 21.11 (Porcupine)`
 - multi-user?: `yes`
 - sandbox: `yes`
 - version: `nix-env (Nix) 2.4pre20210908_3c56f62`
 - channels(ryantm): `"master"`
 - nixpkgs: `/nix/store/7ag892xlbbr0n07jxc2ipi7m93jqq34j-source`

Maintainer information:
# a list of nixpkgs attributes affected by the problem
attribute:
# a list of nixos modules affected by the problem
module:

Not sure if related, but the discourse preStart script is insanely resource intensive: it seems to be doing an initialisation of sorts, the kind that I'd expect on the first run, but it does it every time the service is (re)started.
Is this intentional?

@ryantm I'm not able to reproduce this on master. It seems to fail during migration for you, but it's not clear to me why that is.
@rnhmjoj Not sure which step you mean. The heaviest thing preStart does is probably the database migration, which has to be done on every start. Other than that, it creates an admin account (if it doesn't exist), updates themes and regenerates missing optimized images. I guess any rake task in a rails app could be considered comparatively resource intensive, though.

updates themes and regenerates missing optimized images

I think it was that: I remember seeing seeing lots of imagemagick processes running in parallel.
I had considered Discourse for a quick demo in a talk on NixOS, because it was taking >20min to start the service, in the end I opted for Jitsi Meet.

Oh, I see. Sorry to hear that.
The image optimization shouldn't do anything at all with a clean installation, since it only optimizes uploaded images. If it does, that sounds like a bug.
It's normal that it takes a while to start the service - database population and migration takes a while and Discourse is a rather heavy rails app. >20min sounds pretty excessive, though - the test completes in 6min 37s on my machine and that runs much slower than my test instance, an EC2 t3.small. Do you remember which hardware/VM you tried it on?

It was running in the usual Qemu VM generated with nixos-rebuild build-vm, with a bit of tweaking to use more memory and 4 cores. I happen to still have the configuration for it, if you want to try. The host itself was running on a x86_64 machine with KVM, 4 cores and 8G RAM and no swap.

Running the following simplified config on my machine, Discourse starts in 4min 20s. Can you try it out?
{ pkgs, lib, ... }:

let
  adminPassword = "eYAX85qmMJ5GZIHLaXGDAoszD7HSZp5d";
  secretKeyBase = "381f4ac6d8f5e49d804dae72aa9c046431d2f34c656a705c41cd52fed9b4f6f76f51549f0b55db3b8b0dded7a00d6a381ebe9a4367d2d44f5e743af6628b4d42";
in
{
  ##
  ## System Settings
  ##

  networking.hostName = "discourse-test";

  # Firewall
  networking.firewall.allowedTCPPorts = [ 80 ];

  services.postgresql.package = pkgs.postgresql_13;

  # Forum
  services.discourse = {
    enable = true;
    hostname = "localhost";
    secretKeyBaseFile = "${pkgs.writeText "secret-key-base" secretKeyBase}";
    enableACME = false;

    # Admin user
    admin =
      { email =<EMAIL_ADDRESS>        username = "admin";
        fullName = "Administrator";
        passwordFile = "${pkgs.writeText "admin-pass" adminPassword}";
      };

    # Forum settings
    siteSettings = {

      # Forum description
      required =
        { title = "HackLab Demo";
          site_description = "Discuss NixOS here (if the demo worked)";
        };

    };

  };

  # UNIX users
  users.users.rnhmjoj =
    { description = "My user";
      isNormalUser = true;
      createHome = true;
      extraGroups = [ "wheel" ]; # for sudo
      password = "";  # don't do this irl
    };

  # To resize the serial console automatically
  environment.systemPackages = [ pkgs.xterm ];
  environment.shellInit = "resize > /dev/null";

  ##
  ## VM settings
  ##

  imports = [ <nixpkgs/nixos/modules/virtualisation/qemu-vm.nix> ];

  virtualisation = {
    # Hardware
    graphics = false;
    cores = 4;
    memorySize = "4000"; # MB
    msize = 1048576;

    qemu.networkingOptions = [
      # Use SLIRP
      "-net nic,netdev=user.0,model=virtio"
      # Forward port 80/443
      "-netdev user,id=user.0,hostfwd=tcp::80-:80"
    ];
  };

}

To address both the original issue and yours, @rnhmjoj: checking the timestamps in the log reveals that it's running extremely slow:

my desktop
discourse # [    9.495618] systemd[1]: Finished discourse-postgresql.service.
discourse # [    9.496474] systemd[1]: Starting discourse.service...

ofborg
discourse # [   17.131409] systemd[1]: Finished discourse-postgresql.service.
discourse # [   17.136082] systemd[1]: Starting discourse.service...

@ryantm's log
discourse # [   78.778724] systemd[1]: Finished discourse-postgresql.service.
discourse # [   78.802364] systemd[1]: Starting discourse.service...

This low performance points to virtualization extensions either being missing or disabled, unless the hardware is really old (but even my low-specced X1 Carbon from 2015 reaches this point in less than 30 seconds). That would explain why you're seeing the error from the log - it times out:
MiniRacer::ScriptTerminatedError: JavaScript was terminated (either by timeout or explicitly)

Just tested, ~18 minutes:
Sep 24 12:45:23 discourse-test systemd[1]: Starting discourse.service...
[...]
Sep 24 13:03:29 discourse-test systemd[1]: Started discourse.service.

The problem is not much having to wait for a while, but that it start all over when you restart the service.

It doesn't seems to be CPU-bound at all.  Building a normal qemu image using make-disk-image.nix brings that time down to 3min 30s on the laptop and 1min 10s on my desktop, so it seems 9pfs is definitely to blame in your case. Handling many small files through 9pfs seems to be extremely cpu intensive. Checking the load on the host, one core is pegged at 100% and the guest shows the ruby process waiting on disk io. This is not a case of the service doing unnecessary or even duplicate work - it's just loading the ruby app and rake tasks through a very slow interface. When not using 9pfs, the postgresql process waiting on disk io becomes the main culprit in slowing down the service start, as expected.
However, I also know that when the virtualization extensions are missing, it gets much slower still. My desktop's BIOS disables them by default, which causes massive slowdowns. These slowdowns are enough to make tests, that would otherwise pass, fail. I think this is a much more likely explanation for @ryantm's issue, seeing as it takes ~10s for it to reach the point where it mounts /, which is before it even attempts to mount the nix store or does anything through 9pfs. For reference, my old laptop reaches that point in ~2s.

If 9pfs is really the bottleneck increasing the msize should improve the performance a bit.
This page suggests values as high as 100MiB. I haven't tried such large values, yet.

I've tried increasing msize, and it doesn't help at all, unfortunately.

@talyz is correct. My SVM virtualization option was disabled in the BIOS. I think this is because I recently upgraded the BIOS firmware and all the settings were defaulted.

test script finished in 375.26s


Incremental conversion

So i have a question about incremental conversion. In the readme it says this:
# first, convert with custom bounding box and then append new_data.las afterwards.
# points in new_data MUST fit into bounding box!
./PotreeConverter.exe C:/data -o C:/potree_converted -aabb "-0.748 -2.780 2.547 3.899 1.867 7.195"
./PotreeConverter.exe C:/new_data.las -o C:/potree_converted --incremental

Does that mean that you must strictly respect the bounding box only if you specify it the first time, or do you also have to respect the bounding box when it is automatically generated for you.
I can understand why it would be required to fall within the bounding box (the entire octree is useless if the new data exists outside those bounds), but i'm thinking maybe that you pull the data from the old tree first and create a new tree using the combined bounding boxes of both files.

Any response to this question?

Hi there. First, let me give you a disclaimer before anything else...
It looks like Markus closed this after the new major version debuted. This option only applies to pre-2.0 release, so it may not be supported going forward, or it could be reimplemented in a different way. It's up to the creator. That said, PC 1.6/1.7 conversions are currently compatible with Potree JavaScript and Desktop applications, so on to the actual answer:
The incremental option demands that any new points fit within the initial bounding box that the conversion used. Whether it was automatically determined or set manually should not matter. I don't actually know how common this would be for typical users, but say you started with a rough, low-density point cloud and you wanted to be able to add further detail as engineers sent it your way. The converter can add these points to your existing conversion because they're within the same space; there's just more of them for better detail and accuracy. Conversely, if the new points are outside the root AABB, I think the converter will complain (regardless of manual or automatic values). If you want to add distinct chunks of a point cloud which don't share a root bounding box, you can ask the converter to take multiple input files in order to create a unified conversion. I haven't put this to the test, so your mileage may vary. Consult the program's help text if you run into trouble.


initial commit for monorepo re-write

Summary

Re-wrote the project to accommodate TypeScript monorepo architecture

Test Plan

The project structure itself is very minimal
it can be made to accomodate Turborepo, lint-staged, husky, etc. as needed for project management

Issues

A lot of the code in Antalmanac is using older APIs that's now broken
I haven't migrated anything besides the Antalmanc website; CI/CD integrations will need to be patched to be compatible

Closes #

For documentation's sake, here's a summary of the convo we had on Discord:

The diff for this PR is massive and there's no way I can look at everything at once

It's also all in one commit, so it's hard to figure out the purpose of different changes.

The PR does multiple things at once: moving files, updating old libraries, and making styling changes, which also makes it hard to approve all at once.
However, I do agree with the sentiment of this PR: having a monorepo would make development easier so we can share type definitions between the frontend and  backend, and we should update libraries we're using old versions of like Material UI.

The plan moving forward is to put the updating libraries in its own PR, which I can probably approve pretty easily, and to put the monorepo migration in another PR where we can discuss with @Voark about the feasibility of such a change, since he knows way more about the backend and deployments than I do, and is in the process of rewriting the way we store schedules.


Remove output filter that can remove part of json output

Fix #53.

Codecov Report

Merging #54 into master will decrease coverage by 0.02%.
The diff coverage is 100%.

@@            Coverage Diff             @@
##           master      #54      +/-   ##
==========================================
- Coverage   74.69%   74.66%   -0.03%
==========================================
  Files          19       19
  Lines         972      971       -1
  Branches      147      147
==========================================
- Hits          726      725       -1
  Misses        246      246

Impacted Files
Coverage Δ

src/cli.ts
94.59% <100%> (-0.15%)
:arrow_down:

Continue to review full report at Codecov.

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


Send logs to stdout by default

This is what all the other kernels seem to be doing. Could have options that redirect it to a file, but sending it by default also helps in log capture when running on the cloud (see also http://12factor.net/) which is useful for installs like paws.wmflabs.org (where I'm hoping to get this installed!)

Hi @yuvipanda , can you confirm that all logs are sent to stdout? Is it possible that some logs are being sent to stderr?

Good point - I think they're actually going to stderr by default, not
stdout. Not going to a file though!
On Tue, Apr 5, 2016 at 2:36 PM, Andreu Correa Casablanca <
<EMAIL_ADDRESS>wrote:

Hi @yuvipanda https://github.com/yuvipanda , can you confirm that all
logs from other kernels are sent to stdout? Is it possible that some logs
are being sent to stderr?
—
You are receiving this because you were mentioned.
Reply to this email directly or view it on GitHub
https://github.com/Litipk/Jupyter-PHP/issues/10#issuecomment-205994260

--
Yuvi Panda T
http://yuvi.in/blog

Done.

Thanks!
On Wed, Apr 6, 2016 at 2:43 PM, Andreu Correa Casablanca <
<EMAIL_ADDRESS>wrote:

Done.
—
You are receiving this because you were mentioned.
Reply to this email directly or view it on GitHub
https://github.com/Litipk/Jupyter-PHP/issues/10#issuecomment-206584050

--
Yuvi Panda T
http://yuvi.in/blog


How does one actually do batch processing?

Hello @jacobgil,
Thank you very much for this nice library. I find it very helpful so far.
However, I can't figure out how to use batched inputs. To make a very simple PoC I played around with the semantic segmentation tutorial you provided, since this is my use case.
I simply doubled the input to a batch of two images to see if I get the same activations for both images given the batch. Unfortunately, grayscale_cam has the same shape as the input batch, that is (2, 375, 500), but only the first element of the batch contains activations while the second one is all zeros.
I did also try to run cam.batch_size = 2 but it didn't work.
Maybe I also understood the documentation wrong. In the Readme it is written that "High performance: full support for batches of images in all methods.", but in cam.py line 113 it says "# AblationCAM and ScoreCAM have batched implementations.".
I would immensely appreciate any help.
P.S.: I also attached the code I played around with
import warnings
warnings.filterwarnings('ignore')
warnings.simplefilter('ignore')
from torchvision.models.segmentation import deeplabv3_resnet50
import torch
import torch.functional as F
import numpy as np
import requests
import torchvision
from PIL import Image
from pytorch_grad_cam.utils.image import show_cam_on_image, preprocess_image

image_url = "https://farm1.staticflickr.com/6/9606553_ccc7518589_z.jpg"
image = np.array(Image.open(requests.get(image_url, stream=True).raw))
rgb_img = np.float32(image) / 255
input_tensor = preprocess_image(rgb_img,
                                mean=[0.485, 0.456, 0.406],
                                std=[0.229, 0.224, 0.225])

model = deeplabv3_resnet50(pretrained=True, progress=False)
model = model.eval()

if torch.cuda.is_available():
    model = model.cuda()
    input_tensor = input_tensor.cuda()

output = model(input_tensor)
print(type(output), output.keys())

class SegmentationModelOutputWrapper(torch.nn.Module):
    def __init__(self, model):
        super(SegmentationModelOutputWrapper, self).__init__()
        self.model = model

    def forward(self, x):
        return self.model(x)["out"]

model = SegmentationModelOutputWrapper(model)
output = model(input_tensor)

normalized_masks = torch.nn.functional.softmax(output, dim=1).cpu()
sem_classes = [
    '__background__', 'aeroplane', 'bicycle', 'bird', 'boat', 'bottle', 'bus',
    'car', 'cat', 'chair', 'cow', 'diningtable', 'dog', 'horse', 'motorbike',
    'person', 'pottedplant', 'sheep', 'sofa', 'train', 'tvmonitor'
]
sem_class_to_idx = {cls: idx for (idx, cls) in enumerate(sem_classes)}

car_category = sem_class_to_idx["car"]
car_mask = normalized_masks[0, :, :, :].argmax(axis=0).detach().cpu().numpy()
car_mask_uint8 = 255 * np.uint8(car_mask == car_category)
car_mask_float = np.float32(car_mask == car_category)

both_images = np.hstack((image, np.repeat(car_mask_uint8[:, :, None], 3, axis=-1)))
Image.fromarray(both_images)

base = torch.zeros([2, 3, 375, 500])
base[0] = input_tensor
base[1] = input_tensor

from pytorch_grad_cam import GradCAM, ScoreCAM, AblationCAM

class SemanticSegmentationTarget:
    def __init__(self, category, mask):
        self.category = category
        self.mask = torch.from_numpy(mask)
        if torch.cuda.is_available():
            self.mask = self.mask.cuda()

    def __call__(self, model_output):
        return (model_output[self.category, :, : ] * self.mask).sum()

target_layers = [model.model.backbone.layer4]
targets = [SemanticSegmentationTarget(car_category, car_mask_float)]
with GradCAM(model=model,
             target_layers=target_layers,
             use_cuda=torch.cuda.is_available()) as cam:
    cam.batch_size = 2
    grayscale_cam = cam(input_tensor=base,
                        targets=targets)
    print(grayscale_cam.shape)
    print(np.unique(grayscale_cam[0]))
    print(np.unique(grayscale_cam[1]))
    grayscale_cam = grayscale_cam[1,:]
    cam_image = show_cam_on_image(rgb_img, grayscale_cam, use_rgb=True)

Image.fromarray(cam_image)

Hi,
The targets need to be specified for every member in the batch.
So
targets = [SemanticSegmentationTarget(car_category, car_mask_float)]
Needs to be
targets = [SemanticSegmentationTarget(car_category, car_mask_float), SemanticSegmentationTarget(car_category, car_mask_float)]
Can you please try this and tell if it worked?


ngo is removing non-angular decorators

Versions
@angular/cli: 1.3.0-rc.3
node: 8.2.1
os: linux x64
@angular/animations: 4.3.0
@angular/cdk: 2.0.0-beta.8
@angular/common: 4.3.0
@angular/compiler: 4.3.0
@angular/compiler-cli: 4.3.0
@angular/core: 4.3.0
@angular/flex-layout: 2.0.0-beta.8
@angular/forms: 4.3.0
@angular/http: 4.3.0
@angular/material: 2.0.0-beta.8
@angular/platform-browser: 4.3.0
@angular/platform-browser-dynamic: 4.3.0
@angular/router: 4.3.0

Repro steps

Use lodash-decorators or some custom decorators in components.
Build app using ng build --prod --aot --no-sourcemap --build-optimizer.

Observed Behavior
After building app all decorators are removed.
Expected Behavior
Keep non-angular decorators.

@aksyonov I'd like to take this on but need an exact repro so I can properly investigate.
Can you give me a block of code that uses lodash-decorators I can add to a Angular CLI project to see this?
Ideally the code would have some runtime behaviour that I can validade in addition to just comparing source.

Here is the test project - https://github.com/aksyonov/angular-lodash-decorators-test.
When you start it you should see simple table like:

When you run npm run build and open built project you won't see the table, but you'll see next messages in console:

Because bind decorator was removed.

I had a go at reproducing this. I don't think it's the @angular-devkit/build-optimizer causing it as much as something in the --prod flag of Angular CLI.
If you do ng serve --aot --build-optimizer the example works. But ng serve --prod --build-optimizer breaks it.
I don't know what changed, but latest @angular/cli master does not suffer from this. So something changed and fixed this scenario. No idea what though. Maybe a dependency.
Anyway, next release of Angular CLI RC should fix it. Let me know if you're still seeing this then.

Updating to @angular/cli: 1.3.0-rc.5 fixed the issue. Thanks.

Awesome, good to hear!


Chore: check the B2 and Vercel quotas for potential overages

We should be well in the clear here.


Put transactions back into address page

Should be easier with trace functionality, filter by block to do it faster.

oops wrong repo


Stop relaying Discord -> IRC

Hello, how can i stop relaying Discord message to IRC ? - Only read message from IRC and write to discord

The easiest solution would be to just deny Send Messages in the Discord channel (except to the bot)

No, sorry—there's no way to currently do this. I'm not sure if adding a configuration option is the right thing to do here either, so I'll close this for now. Feel free to follow @DoNotSpamPls's suggestion and implement it in a fork though!


Android 6.0.1 only partially working

I followed the steps and so far I can clearly see my screen and also see it change while I navigate on my phones touchscreen, but it doesn't take any mouse input (ctrl + f, +x, +g work, the other commands don't).
I am using V1.2 64 Bit, but have also tried using V1.2 32 Bit and V1.1. And there is no error or whatsoever in the console.
Tried to apply the fix shown under [https://github.com/Genymobile/scrcpy/issues/70], but there is no option like it available

Which device? Are there relevant logs inadb logcat when you click?

The device is a Yotaphone 2 aka. YD201 EU (does no longer receive official updates from the manufacturer).
What exactly do you mean with "adb logcat"?
A screenshot with the output of the console can be found here

Allright, thank you for taking a look at it. I think you can close this issue then.

Same issue with my Yotaphone. Was good finding this so I don't break my head for hours. Thanks!


[Bug]: Duplicate sections present under Languages -> Java

Bug Summary
Duplicate sections present under Languages -> Java
Bug Description
Under Java:
The "Introduction" and "Operators" sections have been duplicated.
Steps to Reproduce

Visit website
Go to "Tutorial"
Navigate to "Languages" -> "Java"
You can view the duplicate sections here.

Expected Behavior
Removal of duplicate "Introduction" and "Operators" .md files should solve the problem.
Actual Behavior
No response
Screenshots or Logs (Optional)

Severity
Minor - cosmetic or minor issue
Environment

[ ] Local Development
[ ] Staging
[ ] Production
[ ] Other

System Information (Optional)
No response

Well, someone rectified this issue so I'll mark this as closed.


Confirmation step logic for the stickers matching algorithm

There is a very simple logic for matching stickers by prompt now: prompts should be identical.
We discussed that it should be more complicated and support cases when achievements are very similar and have the same underlying meaning, but can be described in different words in prompts. We can implement such logic with NLP models.
But I also think, that any model (even a very sophisticated one like GPT-4) sometimes will make matching mistakes because of high complexity and multi-layering of human interactions (memes, local jokes etc).
This means that the scenario for using existing stickers must have a conformation step.
In this issue I want to discuss the logic of the confirmation step.
How important do you think this issue really is?
To what extent can a confirmation step complicate the flow of issuing a sticker? Is it worth it?
Do you have any design ideas for this solution?

Thank you for raising this issue. The current logic for matching stickers relies on exact prompt matching, which, while straightforward, doesn't accommodate variations in language that convey similar meanings. I agree that we need a more nuanced approach and have considered integrating NLP models to handle these variations.
Leveraging NLP models could indeed enhance the system's ability to match similar achievements described differently. However, the inherent complexity of human language poses a significant challenge. Even sophisticated models like GPT-4 can occasionally misinterpret or overlook subtle nuances due to the multifaceted nature of human communication, including cultural references, idioms, memes, and local jokes.
Given this complexity, the introduction of a confirmation step seems necessary. This would allow users to confirm whether the system's suggested sticker truly matches their intended prompt, potentially reducing errors and increasing user satisfaction.
However, we must carefully evaluate the implications of this confirmation step. It could introduce additional steps in the flow, potentially complicating the user experience. Therefore, we need to consider the trade-offs between enhancing matching flexibility and maintaining a streamlined, user-friendly process.
I believe further discussion is warranted on how critical this issue is, the potential impact of a confirmation step on the user flow, and any design ideas for implementing such a solution effectively. Your insights and feedback are invaluable as we aim to refine this feature.

Joking apart I agree that we need to make sticker caching smarter.
Since our service isn't heavily loaded and the sentences aren't very long, we can safely use some kind of preprocessing for the sentences.
We can turn input sentences into a kind of embeddings and use them to evaluate the similarity between two sentences. But in this case, I'm not quite sure how to store these sentences in the database. I don't think it's a "cool production way" to compare a new embedding with every old.
We need to be able to get same representation of all the "close" sentences
Do you know if there are any existing methods for solving this kind of problem?

Ok, as soon as I can't read properly, I'm moving my answer to a different issue


Custom HTTP middleware fires twice.

I added a simple logging middleware function for the API Gateway and it logged every request twice. Interestingly, the trace-id on the first one was blank, but it was filled in on the second one. So it seems like the first firing is happening BEFORE the frodo baked-in middleware were stuff like that is set up, and the second one is happening AFTER it.

Yeah... I was adding the custom middleware twice. The code essentially was doing this:
handler := append(standard, custom).then(routeHandler)
router.register(method, path, custom.then(handler))

So the custom stuff was being added before AND after the standard middleware. Now it's more what you'd expect:
handler := append(standard, custom).then(routeHandler)
router.register(method, path, handler)


Make LogDouble constants final vals

Now they can be constant-folded. Apparently this is guaranteed by the Scala spec, here maybe?
https://www.scala-lang.org/files/archive/spec/2.13/04-basic-declarations-and-definitions.html#value-declarations-and-definitions

Seems to make a difference on Scala.js but not the JVM 😕


Tracker chat changes

Running into some core bugs, never getting broken identifies

[x] Verify broken state works
[x] Show red banner w/ links
[x] Verify it unbreaking fixes things
[x] Send strict mode
[x] Plumb through broken / following / etc state and remove from message / participants
[x] Need to talk to @maxtaco and @mmaxim about updating state when a follow happens / if a background check happens

@keybase/react-hackers this is still a WIP but this involves me moving a bunch of the followState out and into a metaDataMap / followingMap so we can adjust this stuff and have the data flow simply

The commits 93d63350b8dc...d508ec603ee1 introduce visual changes on linux. :mag_right: 3 new, 6 removed, 17 changed

Added: Chat_Banner-Broken_Tracker_3

Added: Chat_Banner-Broken_Tracker_2

Added: Chat_Banner-Broken_Tracker_1

Changed: Text_Message-from_revoked_device (before) (after)

Changed: Stacked_Text_Message-Stacked_two_messages (before) (after)

Changed: Stacked_Text_Message-Stacked_someone_else_two_sent (before) (after)

Changed: Stacked_Text_Message-Stacked_one_sent_one_pending (before) (after)

Changed: Stacked_Text_Message-Stacked_one_sent_one_failed (before) (after) (diff)
Changed: Popup-You_Valid (before) (after) (diff)
Changed: Popup-You_Revoked (before) (after) (diff)
Changed: Chat_Side_Panel-Normal (before) (after) (diff)
Changed: Chat_Side_Panel-Empty (before) (after) (diff)
Changed: Chat_Header-Normal (before) (after) (diff)
Changed: Chat_Header-Empty (before) (after) (diff)
Changed: Chat_Conversations_List-Selected_Normal (before) (after) (diff)
Changed: Chat_Conversations_List-Selected_Muted (before) (after) (diff)
Changed: Chat_Conversations_List-Normal (before) (after) (diff)
Changed: Chat_Banner-Invite (before) (after) (diff)
Changed: Chat_Banner-Info (before) (after) (diff)
Changed: Chat_Banner-Error (before) (after) (diff)
Removed: Text_Message-sent_You (view original)
Removed: Text_Message-sent_Not_Following (view original)
Removed: Text_Message-sent_Following (view original)
Removed: Text_Message-sent_Broken (view original)
Removed: Text_Message-pending_You (view original)
Removed: Text_Message-failed_You (view original)

The commits 93d63350b8dc...a9fe098574b0 introduce visual changes on linux. :mag_right: 3 new, 6 removed, 17 changed

Added: Chat_Banner-Broken_Tracker_3

Added: Chat_Banner-Broken_Tracker_2

Added: Chat_Banner-Broken_Tracker_1

Changed: Text_Message-from_revoked_device (before) (after)

Changed: Stacked_Text_Message-Stacked_two_messages (before) (after)

Changed: Stacked_Text_Message-Stacked_someone_else_two_sent (before) (after)

Changed: Stacked_Text_Message-Stacked_one_sent_one_pending (before) (after)

Changed: Stacked_Text_Message-Stacked_one_sent_one_failed (before) (after) (diff)
Changed: Popup-You_Valid (before) (after) (diff)
Changed: Popup-You_Revoked (before) (after) (diff)
Changed: Chat_Side_Panel-Normal (before) (after) (diff)
Changed: Chat_Side_Panel-Empty (before) (after) (diff)
Changed: Chat_Header-Normal (before) (after) (diff)
Changed: Chat_Header-Empty (before) (after) (diff)
Changed: Chat_Conversations_List-Selected_Normal (before) (after) (diff)
Changed: Chat_Conversations_List-Selected_Muted (before) (after) (diff)
Changed: Chat_Conversations_List-Normal (before) (after) (diff)
Changed: Chat_Banner-Invite (before) (after) (diff)
Changed: Chat_Banner-Info (before) (after) (diff)
Changed: Chat_Banner-Error (before) (after) (diff)
Removed: Text_Message-sent_You (view original)
Removed: Text_Message-sent_Not_Following (view original)
Removed: Text_Message-sent_Following (view original)
Removed: Text_Message-sent_Broken (view original)
Removed: Text_Message-pending_You (view original)
Removed: Text_Message-failed_You (view original)

The commits 8f903f72856d...2d40a1c16a05 introduce visual changes on linux. :mag_right: 3 new, 6 removed, 18 changed

Added: Chat_Banner-Broken_Tracker_3

Added: Chat_Banner-Broken_Tracker_2

Added: Chat_Banner-Broken_Tracker_1

Changed: Text_Message-from_revoked_device (before) (after)

Changed: Stacked_Text_Message-Stacked_two_messages (before) (after)

Changed: Stacked_Text_Message-Stacked_someone_else_two_sent (before) (after)

Changed: Stacked_Text_Message-Stacked_one_sent_one_pending (before) (after)

Changed: Stacked_Text_Message-Stacked_one_sent_one_failed (before) (after) (diff)
Changed: Popup-You_Valid (before) (after) (diff)
Changed: Popup-You_Revoked (before) (after) (diff)
Changed: Chat_Side_Panel-Normal (before) (after) (diff)
Changed: Chat_Side_Panel-Empty (before) (after) (diff)
Changed: Chat_Header-Normal (before) (after) (diff)
Changed: Chat_Header-Empty (before) (after) (diff)
Changed: Chat_Conversations_List-Selected_Normal (before) (after) (diff)
Changed: Chat_Conversations_List-Selected_Muted (before) (after) (diff)
Changed: Chat_Conversations_List-Normal (before) (after) (diff)
Changed: Chat_Banner-Invite (before) (after) (diff)
Changed: Chat_Banner-Info (before) (after) (diff)
Changed: Chat_Banner-Error (before) (after) (diff)
Changed: Attachment_Popup-You_Popup_Showing (before) (after) (diff)
Removed: Text_Message-sent_You (view original)
Removed: Text_Message-sent_Not_Following (view original)
Removed: Text_Message-sent_Following (view original)
Removed: Text_Message-sent_Broken (view original)
Removed: Text_Message-pending_You (view original)
Removed: Text_Message-failed_You (view original)

The commits 8f903f72856d...a1a2cb55fe39 introduce visual changes on linux. :mag_right: 3 new, 6 removed, 18 changed

Added: Chat_Banner-Broken_Tracker_3

Added: Chat_Banner-Broken_Tracker_2

Added: Chat_Banner-Broken_Tracker_1

Changed: Text_Message-from_revoked_device (before) (after)

Changed: Stacked_Text_Message-Stacked_two_messages (before) (after)

Changed: Stacked_Text_Message-Stacked_someone_else_two_sent (before) (after)

Changed: Stacked_Text_Message-Stacked_one_sent_one_pending (before) (after)

Changed: Stacked_Text_Message-Stacked_one_sent_one_failed (before) (after) (diff)
Changed: Popup-You_Valid (before) (after) (diff)
Changed: Popup-You_Revoked (before) (after) (diff)
Changed: Chat_Side_Panel-Normal (before) (after) (diff)
Changed: Chat_Side_Panel-Empty (before) (after) (diff)
Changed: Chat_Header-Normal (before) (after) (diff)
Changed: Chat_Header-Empty (before) (after) (diff)
Changed: Chat_Conversations_List-Selected_Normal (before) (after) (diff)
Changed: Chat_Conversations_List-Selected_Muted (before) (after) (diff)
Changed: Chat_Conversations_List-Normal (before) (after) (diff)
Changed: Chat_Banner-Invite (before) (after) (diff)
Changed: Chat_Banner-Info (before) (after) (diff)
Changed: Chat_Banner-Error (before) (after) (diff)
Changed: Attachment_Popup-You_Popup_Showing (before) (after) (diff)
Removed: Text_Message-sent_You (view original)
Removed: Text_Message-sent_Not_Following (view original)
Removed: Text_Message-sent_Following (view original)
Removed: Text_Message-sent_Broken (view original)
Removed: Text_Message-pending_You (view original)
Removed: Text_Message-failed_You (view original)

[ ] dumb sheet fixes

The commits 8f903f72856d...e49ace273d1b introduce visual changes on linux. :mag_right: 9 new, 6 changed

Added: Text_Message-pending_Not_Following

Added: Text_Message-pending_Following

Added: Text_Message-pending_Broken

Added: Text_Message-failed_Not_Following

Added: Text_Message-failed_Following

Added: Text_Message-failed_Broken

Added: Chat_Banner-Broken_Tracker_3

Added: Chat_Banner-Broken_Tracker_2 (view)
Added: Chat_Banner-Broken_Tracker_1 (view)
Changed: Stacked_Text_Message-Stacked_someone_else_two_sent (before) (after) (diff)
Changed: Stacked_Text_Message-Stacked_one_sent_one_pending (before) (after) (diff)
Changed: Popup-You_Revoked (before) (after) (diff)
Changed: Chat_Banner-Invite (before) (after) (diff)
Changed: Chat_Banner-Info (before) (after) (diff)
Changed: Chat_Banner-Error (before) (after) (diff)

The commits 64cb2dd3a530...8850a3637735 introduce visual changes on linux. :mag_right: 9 new, 9 changed

Added: Text_Message-pending_Not_Following

Added: Text_Message-pending_Following

Added: Text_Message-pending_Broken

Added: Text_Message-failed_Not_Following

Added: Text_Message-failed_Following

Added: Text_Message-failed_Broken

Added: Chat_Banner-Broken_Tracker_3

Added: Chat_Banner-Broken_Tracker_2 (view)
Added: Chat_Banner-Broken_Tracker_1 (view)
Changed: Text_Message-sent_Not_Following (before) (after) (diff)
Changed: Text_Message-sent_Following (before) (after) (diff)
Changed: Text_Message-sent_Broken (before) (after) (diff)
Changed: Text_Message-from_revoked_device (before) (after) (diff)
Changed: Popup-You_Revoked (before) (after) (diff)
Changed: Popup-Following_Revoked (before) (after) (diff)
Changed: Chat_Banner-Invite (before) (after) (diff)
Changed: Chat_Banner-Info (before) (after) (diff)
Changed: Chat_Banner-Error (before) (after) (diff)

The commits 64cb2dd3a530...9aac67455032 introduce visual changes on linux. :mag_right: 9 new, 6 changed

Added: Text_Message-pending_Not_Following

Added: Text_Message-pending_Following

Added: Text_Message-pending_Broken

Added: Text_Message-failed_Not_Following

Added: Text_Message-failed_Following

Added: Text_Message-failed_Broken

Added: Chat_Banner-Broken_Tracker_3

Added: Chat_Banner-Broken_Tracker_2 (view)
Added: Chat_Banner-Broken_Tracker_1 (view)
Changed: Text_Message-sent_Not_Following (before) (after) (diff)
Changed: Text_Message-sent_Following (before) (after) (diff)
Changed: Text_Message-sent_Broken (before) (after) (diff)
Changed: Chat_Banner-Invite (before) (after) (diff)
Changed: Chat_Banner-Info (before) (after) (diff)
Changed: Chat_Banner-Error (before) (after) (diff)

The commits 364e634e2b8f...f7d744e8b256 introduce visual changes on linux. :mag_right: 9 new, 6 changed

Added: Text_Message-pending_Not_Following

Added: Text_Message-pending_Following

Added: Text_Message-pending_Broken

Added: Text_Message-failed_Not_Following

Added: Text_Message-failed_Following

Added: Text_Message-failed_Broken

Added: Chat_Banner-Broken_Tracker_3

Added: Chat_Banner-Broken_Tracker_2 (view)
Added: Chat_Banner-Broken_Tracker_1 (view)
Changed: Text_Message-sent_Not_Following (before) (after) (diff)
Changed: Text_Message-sent_Following (before) (after) (diff)
Changed: Text_Message-sent_Broken (before) (after) (diff)
Changed: Chat_Banner-Invite (before) (after) (diff)
Changed: Chat_Banner-Info (before) (after) (diff)
Changed: Chat_Banner-Error (before) (after) (diff)

@keybase/react-hackers this is ready

The commits ea4768c20a20...d9f50fadea49 introduce visual changes on linux. :mag_right: 9 new, 6 changed

Added: Text_Message-pending_Not_Following

Added: Text_Message-pending_Following

Added: Text_Message-pending_Broken

Added: Text_Message-failed_Not_Following

Added: Text_Message-failed_Following

Added: Text_Message-failed_Broken

Added: Chat_Banner-Broken_Tracker_3

Added: Chat_Banner-Broken_Tracker_2 (view)
Added: Chat_Banner-Broken_Tracker_1 (view)
Changed: Text_Message-sent_Not_Following (before) (after) (diff)
Changed: Text_Message-sent_Following (before) (after) (diff)
Changed: Text_Message-sent_Broken (before) (after) (diff)
Changed: Chat_Banner-Invite (before) (after) (diff)
Changed: Chat_Banner-Info (before) (after) (diff)
Changed: Chat_Banner-Error (before) (after) (diff)

The commits 790a38ef5f3f...a276bc8e9f32 introduce visual changes on linux. :mag_right: 9 new, 20 changed

Added: Text_Message-pending_Not_Following

Added: Text_Message-pending_Following

Added: Text_Message-pending_Broken

Added: Text_Message-failed_Not_Following

Added: Text_Message-failed_Following

Added: Text_Message-failed_Broken

Added: Chat_Banner-Broken_Tracker_3

Added: Chat_Banner-Broken_Tracker_2 (view)
Added: Chat_Banner-Broken_Tracker_1 (view)
Changed: Text_Message-sent_Not_Following (before) (after) (diff)
Changed: Text_Message-sent_Following (before) (after) (diff)
Changed: Text_Message-sent_Broken (before) (after) (diff)
Changed: Popup_Attachment-Popup_Attachment_Message (before) (after) (diff)
Changed: Popup_Attachment-Popup_Attachment_Downloaded (before) (after) (diff)
Changed: Chat_Banner-Invite (before) (after) (diff)
Changed: Chat_Banner-Info (before) (after) (diff)
Changed: Chat_Banner-Error (before) (after) (diff)
Changed: Attachment_Message-Basic_Uploading (before) (after) (diff)
Changed: Attachment_Message-Basic_Preview_Image_Pending (before) (after) (diff)
Changed: Attachment_Message-Basic_Preview_Image_Not_Downloaded (before) (after) (diff)
Changed: Attachment_Message-Basic_Preview_Image_Failed (before) (after) (diff)
Changed: Attachment_Message-Basic_Preview_Image_Downloaded (before) (after) (diff)
Changed: Attachment_Message-Basic_Not_loaded (before) (after) (diff)
Changed: Attachment_Message-Basic_Generic_File_sent (before) (after) (diff)
Changed: Attachment_Message-Basic_Generic_File_Uploading (before) (after) (diff)
Changed: Attachment_Message-Basic_Generic_File_Failed (before) (after) (diff)
Changed: Attachment_Message-Basic_Generic_File_Downloading (before) (after) (diff)
Changed: Attachment_Message-Basic_Generic_File_Downloaded (before) (after) (diff)
Changed: Attachment_Message-Basic_Downloading (before) (after) (diff)

@chromakode updated with fixes thanks!


[Dark mode] Color updates for dark mode

This addresses a few issues from #1102
Light gray dark mode hover and active colors updated

Red dark mode hover and active colors updated

Blue buttons now have white text in dark mode

DatePicker shadow remains black in dark mode

Test Plan
Confirm colors look as expected in screenshots and on test instance

lgtm from eng side - would love a design review before merging.

Hey @jennyscript! Just a couple of notes:

For badge, could you also make the text white?
For callout, the text isn't showing up on the button


Firefox users sometimes don't get any audio data from bucket brigade

Vael ran into this in Tuesday's test.

I don't think anyone has reported this in a while, so I think it's fixed

I don't think anyone has reported this in a while, so I think it's fixed


[EAGLE-740]Fix eagle-query checkstyle warnings

[EAGLE-740]Fix eagle-query checkstyle warnings
http://issues.apache.org/jira/browse/EAGLE-740

Classes under org.apache.eagle.query.antlr.generated is automatically generated by antlr, so suggest to exclude it from checkstyle and keep the original code.

revert eagle-antlr and exclude Classes under  org.apache.eagle.query.antlr.generated  from  checstyle
@haoch could you please check again

Could you please rollback the code format of files under org.apache.eagle.query.antlr.generated too?

@haoch the last commit is already roolback the code format

@koone thanks

@koone As the PR changed too many files, please it may take a few days for reviewing.

@haoch , do you need any help on reviewing this?
@koone, Can you please rebase this PR ? Thanks

Hi @koone, This would be good to add in 0.5 branch, would you have time to rebase this  and address comments from @haoch ?  Thanks

I spent lot of time in rebasing this, but eventually it got very confusing since there are lot of files ( ~1500) to be rebased, which i did (jhsenjaliya:EAGLE-740-rebased) but there are multiple layers of rebase needs to be done, and i afraid i cant pick the right candidate wherever there are conflicts.  so I am leaving this aside for 0.5 release, and we can get to this afterwards.  this is important and we should take this change eventually. Thanks


Add skeleton files for starting TDD

Add simplecov for code coverage stats (issues/3)
Add basic class and method stubs
Add empty specs for methods

Implements https://github.com/bhcastle/spiralizer/issues/3


Is there support for the MultiLineString as a Layer type?

MapBox supports the MultiLineString geometry type (see https://jsbin.com/cozudodelo/edit?html,output for example). It would be great to be able to use it in the React wrapper too.

doesn't the GeoJSONLayer do what you need?

Yep, it actually does. Thanks!


IDVA3-1663 Updated psc statement screen

updated screen to match the v9 prototype
updated the tests to match it

CI: Security warnings found!

CI: Security warnings found!


[akd] fix prefetch ordering bug

My original diff added a bug by moving the pre-fetch down to the code-block where version-range was in scope. This means that the update proof was run before the pre-load, resulting in extra fetches.
https://github.com/facebook/akd/pull/436
This PR should address that my moving the pre-fetch block back to its original position, and moving the range-selection to a separate earlier block.
From initial canary, the latency appears to be improved:

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

Project coverage is 88.90%. Comparing base (3ce5335) to head (7b8c259).
Report is 6 commits behind head on main.

:exclamation: Current head 7b8c259 differs from pull request most recent head bb93b94
Please upload reports for the commit bb93b94 to get more accurate results.

Additional details and impacted files
@@            Coverage Diff             @@
##             main     #441      +/-   ##
==========================================
+ Coverage   88.61%   88.90%   +0.28%
==========================================
  Files          39       39
  Lines        9109     9244     +135
==========================================
+ Hits         8072     8218     +146
+ Misses       1037     1026      -11

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

somehow latency is back to 4 seconds.


Compiling model

Hey,
Thank you for all the efforts on this library.
So I downloaded the models from https://github.com/GantMan/nsfw_model/releases/tag/1.1.0 and was able to use them with nsfwjs using graph option.
I just wanted to know how can I compile these models from graph to image (299x299)? I know I can just download from your S3 bucket but I don't want to increase your network costs since I will be deploying the same to cluster of servers so I was looking for an optimum solution that could help me.
Also, I just noticed that you've deployed a new model (mobilenetMid) with similar accuracy but decreased size, any tips on how to compile new model for backend (nodejs) use?

Hi!  I'm not sure I understand the question.

I just wanted to know how can I compile these models from graph to image (299x299)? I know I can just download from your S3 bucket but I don't want to increase your network costs since I will be deploying the same to cluster of servers so I was looking for an optimum solution that could help me.

Can you elaborate?

Basically, I am using nsfwjs with type: graph:
nsfwjs.load('/path/to/different/model/', { type: 'graph' })
This process takes upto 150MB/worker in my nodejs application which is a lot tbh.
I just want to know how can I load model using size: 299x299 option. I am hoping that this will significantly reduce the memory usage.
I do understand that size option won't work with https://github.com/GantMan/nsfw_model/releases/tag/1.1.0 models directly and I might need to convert these models before making it work so I just wanted to know how can I convert these models from graph to image?

The size option depends on the model you load.    You won't be able to use the graph with 299, because it was trained on 224 data.
That is a lot of space.  I wonder what's really taking up that process space.   Have you experimented on loading smaller models?
You can create a 48kb model using this page I made:  https://rps-tfjs.netlify.com/
I'd be interested in seeing the process memory for that.


Ho can a use tags mode without open a select?

Is there any way to use the tags mode without opening the select?
I just want to add new strings without the option to select any string from the list.
Tanks

In addition I would like to just provide the v-model without the :options to populate the initial loaded tags.
Would be really nice if those two features could be added in future releases.

@andersonalvesalmeida As a workaround you can hide the .multiselect-options via CSS:
.multiselect > .multiselect-options {
    display: none;
}

Added showOptions prop in 1.3.3


How can I check Scopes in my controller, when I call with access_token?

use the oauth middleware or the filter (depending if you are on the develop version or not of this package) like this oauth:scope1,scope2,scopeN

thanks!


JoinSessionRefreshNotScheduled error in logs

@jatgarg - In the last week we're seeing 10k hits to the new error event  fluid:telemetry:OdspDriver:JoinSessionRefreshNotScheduled across 2400 sessions.
Based on the comment in the code where this is logged, I've got a branch open where I'm downgrading to a Generic event instead of Error.  Is that the right move?  Or are these serious problems we need to jump on with OCE?

Hey mark, it seems fine to degrade it to generic event,

10K hits over those few sessions is a lot. We should figure out why we fire it that often, and if we should.
@jatgarg - can you please take a closer look?

Currently the time returned to refresh the join is same as the token expiration time and that does not change even if we make the join session call again. So as per logic it is not a bug. When the server starts to move to new logic of returning the increased refreshSeconds on making the join session call, it should go away. So maybe for now we could just remove the event if it is noisy.


amplify api add-graphql-datasource not working

amplify api add-graphql-datasource doesn't seem to be working.
amplify api add-graphql-datasource
Using datasource: Aurora Serverless, provided by: awscloudformation
? Provide the region in which your cluster is located: eu-west-1
? Select the Aurora Serverless cluster that will be used as the data source for your API: trackview-db-cluster
⠼ Fetching Aurora Serverless cluster...BadRequestException: ERROR: unrecognized configuration parameter "databases"
    at Object.extractError (/Users/lukas/.asdf/installs/nodejs/14.4.0/.npm/lib/node_modules/@aws-amplify/cli/node_modules/aws-sdk/lib/protocol/json.js:52:27)
    at Request.extractError (/Users/lukas/.asdf/installs/nodejs/14.4.0/.npm/lib/node_modules/@aws-amplify/cli/node_modules/aws-sdk/lib/protocol/rest_json.js:55:8)
    at Request.callListeners (/Users/lukas/.asdf/installs/nodejs/14.4.0/.npm/lib/node_modules/@aws-amplify/cli/node_modules/aws-sdk/lib/sequential_executor.js:106:20)
    at Request.emit (/Users/lukas/.asdf/installs/nodejs/14.4.0/.npm/lib/node_modules/@aws-amplify/cli/node_modules/aws-sdk/lib/sequential_executor.js:78:10)
    at Request.emit (/Users/lukas/.asdf/installs/nodejs/14.4.0/.npm/lib/node_modules/@aws-amplify/cli/node_modules/aws-sdk/lib/request.js:688:14)
    at Request.transition (/Users/lukas/.asdf/installs/nodejs/14.4.0/.npm/lib/node_modules/@aws-amplify/cli/node_modules/aws-sdk/lib/request.js:22:10)
    at AcceptorStateMachine.runTo (/Users/lukas/.asdf/installs/nodejs/14.4.0/.npm/lib/node_modules/@aws-amplify/cli/node_modules/aws-sdk/lib/state_machine.js:14:12)
    at /Users/lukas/.asdf/installs/nodejs/14.4.0/.npm/lib/node_modules/@aws-amplify/cli/node_modules/aws-sdk/lib/state_machine.js:26:10
    at Request.<anonymous> (/Users/lukas/.asdf/installs/nodejs/14.4.0/.npm/lib/node_modules/@aws-amplify/cli/node_modules/aws-sdk/lib/request.js:38:9)
    at Request.<anonymous> (/Users/lukas/.asdf/installs/nodejs/14.4.0/.npm/lib/node_modules/@aws-amplify/cli/node_modules/aws-sdk/lib/request.js:690:12)
There was an error adding the datasource
⠸ Fetching Aurora Serverless cluster...

Ctrl+C also doesn't work, and the command runs indefinitely.
Amplify CLI Version
4.26.1-flutter-preview.0
Desktop (please complete the following information):

OS: Mac
Node Version. v14.4.0

@lukaselmer, I tried adding datasource with amplify version 4.29.2, can you try it with that version?

Thank you @ammarkarachi, I will try that and answer you tomorrow 👍

@ammarkarachi I think I found the issue: It is not working with the Postgres adapter, but it is working with the MySQL adapter. It's pretty unfortunate that we already have the schema and the app running with Postgres, otherwise we could easily switch to MySQL...

Unfortunately we only support MySQL adapter. I will mark this as an enhancement.

Ok, I'll be waiting for that feature. In the meantime, maybe it would make sense to document that, instead of the error message :)

Glad it is written somewhere, I just tried to add postgres also

It seems this command is called against the postgresql:
https://github.com/aws-amplify/amplify-cli/blob/bb9beecd95eaf3ad7b9e97dd82de399bade7a3c5/packages/amplify-category-api/src/provider-utils/awscloudformation/service-walkthroughs/appSync-rds-walkthrough.js#L173
which generates the error message I'm facing:
unrecognized configuration parameter "databases"

+1 Postgresql support. When is this coming? It's been so long and this is open for quite a while...

+1 for Postgres support

related/duplicate of https://github.com/aws-amplify/amplify-cli/issues/3081


Support additional AppRole paths

Right now, argocd-vault-plugin is only able to connect on AppRole default path approle as you can see approle.go.
You already solve this issue with Kubernetes backend.
I would like to be able to use additional AppRole backend paths. We can forward the path with an AVP_APPROLE_MOUNT_PATH env var, like you do with Kubernetes backend. Or maybe rename AVP_K8s_MOUNT_PATH to AVP_MOUNT_PATH to be use with all vault's backend.

Or maybe rename AVP_K8s_MOUNT_PATH to AVP_MOUNT_PATH to be use with all vault's backend.

Sounds like a great idea (though for backwards compatibility we'd keep both).
To do that, I think you'd just have to make sure auth/approle/login is the default like is done here https://github.com/argoproj-labs/argocd-vault-plugin/blob/main/pkg/auth/vault/kubernetes.go#L52 and modify the approle struct/constructor to accept the mount path (and use it) that would be given here: https://github.com/argoproj-labs/argocd-vault-plugin/blob/main/pkg/config/config.go#L79 from the Viper config.
The above is probably also worth doing for the github auth method: https://github.com/argoproj-labs/argocd-vault-plugin/blob/main/pkg/auth/vault/github.go#L28
To keep the backwards compatibility you'd also have to modify https://github.com/argoproj-labs/argocd-vault-plugin/blob/main/pkg/config/config.go#L93 to use AVP_MOUNT_PATH if set, otherwise AVP_K8s_MOUNT_PATH.
Feel free to open a PR for this.

This feature has been release with https://github.com/argoproj-labs/argocd-vault-plugin/releases/tag/v1.8.0


chore: introduce a CLI interface and a Makefile.

The CLI interface is not in use now.

missing test cases

It's not easy to add test cases now, since the config is so tricky, then program cannot run unless we modify the configuration file manually. I will add test cases after we refactoring the configuration module.

I have created an issue https://github.com/apache/apisix-ingress-controller/issues/70 to track the test cases.


bug MatFormFields: Force LTR in RTL page

Is this a regression?

[ ] Yes, this behavior used to work in the previous version

The previous version in which this bug was not present was
No response
Description
The current style behavior for form fields that if there is any RTL direction previous to it, it will be targeted.
since the LTR is the default case it wont be an issue to force the component to be RTL, however in RTL page you cant force LTR direction to MatFormFields.
Reproduction
Steps to reproduce:

set dir rtl globally in index.html
set dir ltr to any form filed
https://stackblitz.com/edit/components-issue-2e8dha?file=src/app/example-component.html

Expected Behavior
to be able to change direction of formfield
Actual Behavior
formfield style stays rtl with direction ltr on in
Environment

Angular: 15
CDK/Material: 15
Browser(s): Chrome
Operating System (e.g. Windows, macOS, Ubuntu): Ubuntu

This is a consequence of targeting styles at a selector like [dri="rtl"]. Unfortunately it doesn't work well when embedding parts of the document that use different directions. The best solution is to where possible switch to setting properties like padding-inline-start rather than padding-left so we don't need the [dir] selector. Another option in the future may be the :dir() pseudo-class (but it is currently lacking the browser support we would need)


ffmpeg not installed error

Tried both on GUI version on windows, and code version on macos. All showing this error.
ffmpeg installed with pip.

ffmpeg installed with pip. doesnt seem to be an error.
Can you provide more details?


Add initial pass at generating wheel

Add logic to generate a wheel. This is essentially #3, simplified and without the external driver script (since the generated wheel isn't yet usable).

This change is

Please add a TODO to investigate pruning this list. In particular, I think pygame is probably spurious.

Done.

Please add a TODO to refine our license statement. Since we are shipping bundled dependencies, we might have to report more information here?

Done.
BTW, Reviewable's integration is rather inferior to Github's built-in review. Obviously, when we started using it, it was useful, but now that Github's own review tools have improved significantly, what is the advantage to Reviewable?

(FYI, only change in the latest force-push is fixing permissions on build-wheel.sh.)

FYI I haven't had a chance to check back here again, but I'm still fine if you want to merge this.  (My approval upthread still stands.)


Incorrect references from bibxml5 referring to 3GPP TSes instead of TRs

In #135 we have discovered that several 3GPP references currently provided in bibxml5 refer to the wrong document type from the 3GPP. They refer to "TS" (3GPP Technical Specification) instead of "TR" (3GPP Technical Report).
I wasn't able to locate the exact semantic differences from the 3GPP website, but this website says:
https://www.3glteinfo.com/how-3gpp-specifications-numbering-works/

TR and TS – Differences
3gpp specifications are broadly divided into two main categories:
TR – Technical Report
TS – Technical Specification
Technical Reports are again of two classes:
Those intended to be transposed and issued by the Organizational Partners as their own publications. These usually have specification numbers of the form XX.9XX.
Those documents which are not intended for publication but are just 3GPP internal working documents. For example, feasibility study documents. These have specifation numbers of the form XX.8XX ( e.g. fesebility study reports) or sometime they carry a number 30.xxx of 50.xxx (planning and scheduling).
Apart from these all other specifications are Technical Specifications.

On verification, according to 3GPP TR 21.900 "Technical Specification Group working methods",

4.0	Numbering scheme

The specifications shall be numbered according to the following scheme:
3GPP TS aa.bbb	(for Technical Specifications); or
3GPP TR aa.bbb	(for Technical Reports).
...
Range | Use | Remarks
--|--|--
aa.8bb | Technical Reports not intended for publication. | Working documents of 3GPP Groups not intended to be transposed into publications by the Partner Organizations.
aa.9bb | Technical Reports intended for publication. | As distinct from those of the aa.8bb series.

It looks like TRs are only issued for the cases of 6.4.4 "Early implementation" and "Study Items (SI)", which are "type of Work Item which will conduct feasibility studies and will result in a Technical Report".
The following list of items are TRs, not TSes, as claimed by the original bibxml5 dataset:

TS 23.884 0.1.0 => 3GPP TR 23.884:Rel-9/0.1.0 (http://xml2rfc.tools.ietf.org/public/rfc/bibxml5/reference.3GPP.23.884.xml)
TS 29.839 11.0.0 => 3GPP TR 29.839:Rel-11/11.0.0 (http://xml2rfc.tools.ietf.org/public/rfc/bibxml5/reference.3GPP.29.839.xml)
TS 26.905 11.0.0 => 3GPP TR 26.905:Rel-11/11.0.0 (http://xml2rfc.tools.ietf.org/public/rfc/bibxml5/reference.3GPP.26.905.xml)
TS 26.906 0.2.0 => 3GPP TR 26.906:Rel-12/0.2.0 (http://xml2rfc.tools.ietf.org/public/rfc/bibxml5/reference.3GPP.26.906.xml)
TS 29.949 0.1.0 => 3GPP TR 29.949:Rel-12/0.1.0 (http://xml2rfc.tools.ietf.org/public/rfc/bibxml5/reference.3GPP.29.949.xml)

data/TR_23.884_REL-9_0.1.0.yaml:id: 3GPPTR23.884-Rel-9/0.1.0
data/TR_23.884_REL-9_0.1.0.yaml:- content: http://www.3gpp.org/ftp/Specs/archive/23_series/23.884/23884-010.zip
data/TR_23.884_REL-9_0.1.0.yaml:- id: 3GPP TR 23.884:Rel-9/0.1.0
data/TR_23.884_REL-9_0.1.0.yaml:docnumber: TR 23.884:Rel-9/0.1.0
data/TR_29.839_REL-11_11.0.0.yaml:id: 3GPPTR29.839-Rel-11/11.0.0
data/TR_29.839_REL-11_11.0.0.yaml:- content: http://www.3gpp.org/ftp/Specs/archive/29_series/29.839/29839-b00.zip
data/TR_29.839_REL-11_11.0.0.yaml:- id: 3GPP TR 29.839:Rel-11/11.0.0
data/TR_29.839_REL-11_11.0.0.yaml:docnumber: TR 29.839:Rel-11/11.0.0
data/TR_26.905_REL-11_11.0.0.yaml:id: 3GPPTR26.905-Rel-11/11.0.0
data/TR_26.905_REL-11_11.0.0.yaml:- content: http://www.3gpp.org/ftp/Specs/archive/26_series/26.905/26905-b00.zip
data/TR_26.905_REL-11_11.0.0.yaml:- id: 3GPP TR 26.905:Rel-11/11.0.0
data/TR_26.905_REL-11_11.0.0.yaml:docnumber: TR 26.905:Rel-11/11.0.0
data/TR_26.906_REL-12_0.2.0.yaml:id: 3GPPTR26.906-Rel-12/0.2.0
data/TR_26.906_REL-12_0.2.0.yaml:- content: http://www.3gpp.org/ftp/Specs/archive/26_series/26.906/26906-020.zip
data/TR_26.906_REL-12_0.2.0.yaml:- id: 3GPP TR 26.906:Rel-12/0.2.0
data/TR_26.906_REL-12_0.2.0.yaml:docnumber: TR 26.906:Rel-12/0.2.0
data/TR_29.949_REL-12_0.1.0.yaml:id: 3GPPTR29.949-Rel-12/0.1.0
data/TR_29.949_REL-12_0.1.0.yaml:- content: http://www.3gpp.org/ftp/Specs/archive/29_series/29.949/29949-010.zip
data/TR_29.949_REL-12_0.1.0.yaml:- id: 3GPP TR 29.949:Rel-12/0.1.0
data/TR_29.949_REL-12_0.1.0.yaml:docnumber: TR 29.949:Rel-12/0.1.0

@TonyLHansen @rjsparks can we confirm that we can change the mapping of these TSes to the correct TRs?

I have checked in 3GPP 23 (https://www.3gpp.org/DynaReport/23-series.htm), 26 ( https://www.3gpp.org/DynaReport/26-series.htm) and 29 (https://www.3gpp.org/dynareport/29-series.htm) series specification list and can confirm that those are actually TR not TS.

Thanks @zaheduzzaman @rjsparks !

Closing as it has been done in https://github.com/ietf-ribose/bibxml-service/issues/135#issuecomment-1102637245.


debug MetricWrapperBase.remove function

Hello，I am using client_python for developing our exporter，thanks for so convenient tool.
In our project, we don't want some of our metrics to be captured, so we should use MetricWrapperBase's remove function.But when self._metrics is empty or "labelvalues" not in self._metrics, our exporter will stop because of "key error". As a user of the tool,I want some more information not just key error.what's worse,I don't want my exporter to be stoped. It would be better if just some warnings, because we have to be sure that some values of labels are not captured, but we cannot be sure that whether the value-tuples are in self._metrics or not.

This sort of printlining does not belong in a library like this. I'd suggest not putting in data you don't want to be there in the first place.

yes,you are right.


a start at improving the Packet README

See #257. This is a start, but not complete yet.

@vielmetti , we have reorged the docs. Now, there is a dedicated docs folder for packet https://github.com/appscode/pharmer/tree/master/docs/cloud/packet . Please rebase your branch.

Closing (overtaken by events and a much better document). I'll edit the new one instead.
Thanks!


Attach to Target Broken since Varlamore

Since the Varlamore update selecting attach to target for xp drop locations attaches to the player instead

Just tested it on npcs and players and it still works

it seems I have a conflicting mod, my apologies, thank you so much for the great mod!


Don't add Mod to CF release to prevent cutting game version

Multiple people have reported crashes because this is what CurseForge shows for the latest versions for snapshots:

It was just that they were trying to run it on 1.19.
This removes the Mod from there so more stuff fits and hopefully helps people not get lost.

Wrong repo


Upgrade fastai compatibility

Currently, we're pinned to <= 2.1.5 of fastai. There's been several improvements since then, most notably a change in the mechanism that callbacks are called, and better native support for fp-16 training.
It'd be nice to upgrade, and may solve a bunch of the existing fastai related issues as well

pinning to fastai=>2.2.2 would allow multi-gpu training as I have demonstrated in my presentation

done with 0.8! =)


Optionally require es6-promise and isomorphic-fetch

It would be nice if we could optionally avoid to polyfill Promise and window.fetch.
The latest versions of Firefox, Chrome and Opera natively support Promises and window.fetch, so it seems unnecessary. I recently started loading polyfills on demand with webpack in order to reduce the size of the main bundle.
I'm proposing the following structure

marty.js (or maybe marty-without-polyfills.js): equivalent to the current file, but without polyfills
polyfills.js: a file containing all polyfills
index.js (or maybe marty-with-polyfills.js): the entry point of the project with the old behavior

In this way it would be possible not to load polyfills by creating an alias.
With webpack:
module.exports = {
  // ...
  resolve: {
    alias: {
      'marty': 'marty/marty-without-polyfills.js'
    }
  }
};

With browserify:
browserify --require marty:marty/marty-without-polyfills.js

Do you have any examples of projects that are structured this way that we can look at?

I created the following example:
https://github.com/moretti/webpack-polyfills-on-demand
If you clone it and run npm start you will notice that polyfills for fetch and Promise are loaded on demand.
For example, Safari 8 will request 2.bundle.js because it doesn't have a native window.fetch implementation.


updates from @ahus1 for dashboard changes to support JVM debugging

@kami619 - thank you for updating the diagrams, I was only providing hints. You did a lot more work for this PR than me.


Add backfill function to detection scheduler

A backfill function that can recover from previous interruption after detection scheduler is restarted or backfill job is resubmitted.

looks like there are some conflicts. Can you resolve them

Conflict resolved


Add support to APIs similar to OpenAI (Grook, Koboldcpp)

The openai package has support for different base url, just setting the environment variable, with this we are able to use any api that is similar to openai, for example this is for the grok api
export OPENAI_BASE_URL="https://api.x.ai/v1/" ; node main.js
The only modifications necessary for making this work are.
Adding grok the following lines.
https://github.com/kolbytn/mindcraft/blob/a6edd8fc44813e01c4decfda3d6b6ee018671620/src/agent/prompter.js#L37
         else if (chat.model.includes('gpt') || chat.model.includes('o1') || chat.model.includes('grok') )

https://github.com/kolbytn/mindcraft/blob/a6edd8fc44813e01c4decfda3d6b6ee018671620/src/models/gpt.js#L29
        if (this.model_name.includes('o1') || this.model_name.includes('grok')) {

now only changing the model name in andy.json
    "model": "grok-beta",

and adding the grok api key to keys.json
    "OPENAI_API_KEY": "xai-HS...",

with this grok is 100% functional and works flawlessly, i assume this isn't a proper way to implement it but hopefully this is of help to someone.
for koboldcpp i found an issue with the following line, it always triggers it making it unusable just changing length to anything else makes it work, but i assume it breaks it for other models, not sure why koboldcpp always triggers it maybe is because i was using a 22B not sure.
https://github.com/kolbytn/mindcraft/blob/a6edd8fc44813e01c4decfda3d6b6ee018671620/src/models/gpt.js#L39

I'm so dumb this is already implemented.
but the change in gpt.js is necessary, it doesn't work without it.
just using this and the api key makes it work
"model": {
  "api": "openai",
  "url": "https://api.x.ai/v1/",
  "model": "grok-beta"
},

after further testing seems like the issue for koboldcpp constantly getting "Context length exceeded, trying again with shorter context." is my koboldcpp settings/maybe the model limits? not sure.
"model": {
     "api": "openai",
     "url": "https://<IP_ADDRESS>/v1/",
    "model": "koboldcpp/Mistral-Small-22B-ArliAI-RPMax-v1.1-q8_0"
},

the only current issue running with kobold is https://github.com/kolbytn/mindcraft/issues/306


Timings with ROCm

Hi CuPy team,
I am timing  some CuPy's math functions on MI100 GPU. From some of your examples  I noted you use some kind of device/stream synchronization just before calculating  the elapsed time of an operation.
Is this approach also applies for ROCm ?
As reference, this what I am doing
...
device = cp.cuda.Device()
...
def FFT (x):
    t0 = time.time()
    r = cp.cupy.fft.fft2(x)
    device.synchronize()
    t1 = time.time()
    dt = t1 - t0
    return dt
...

Thanks

Yes!, you can also check the cupyx.time.repeat function that does all for you and works in a similar fashion than timeit
https://github.com/cupy/cupy/blob/master/cupyx/time.py#L64-L113

It's documented here 🙂
https://docs.cupy.dev/en/latest/reference/generated/cupyx.time.repeat.html#cupyx.time.repeat

great, thank you @emcastillo and  @leofang


Clean up project config rename deprecation warnings

resolves #4276

Create different deprecation warnings for each of source-paths and data-paths being renamed, so that both will display for users newly upgraded to v1
Add a null handler to the global FILE_LOG when it's first instantiated, to prevent the un-configured FILE_LOG and STDOUT_LOG from both writing to stdout. This shouldn't have any functional impact, since the file logger isn't meant to be doing anything until it's configured, anyway

Also:

Add \n\n to deprecation warning. ui.line_wrap_message() doesn't work perfectly with the new logging format just yet (it doesn't account for space taken up by timestamp + log level), so I'd prefer a cleaner break.
In ui.line_wrap_message(), prevent textwrap.fill() from breaking on hyphens. This is awkward for PackageRedirectDeprecation, which includes hyphen-bearing package names.

Before:
$ dbt test
07:16:14 | [ info  ] | Running with dbt=1.0.0-rc1
07:16:14 | [ warn  ] | * Deprecation Warning: The `source-paths` config has been deprecated in favor of
`model-paths`. Please update your `dbt_project.yml` configuration to reflect
this change.
07:16:14 | [ warn  ] | * Deprecation Warning: The `source-paths` config has been deprecated in favor of
`model-paths`. Please update your `dbt_project.yml` configuration to reflect
this change.

After:
$ dbt test
06:50:56 | [ info  ] | Running with dbt=1.0.0-rc1
06:50:56 | [ warn  ] | * Deprecation Warning:
The `source-paths` config has been deprecated in favor of `model-paths`. Please
update your `dbt_project.yml` configuration to reflect this change.
06:50:56 | [ warn  ] | * Deprecation Warning:
The `data-paths` config has been deprecated in favor of `seed-paths`. Please
update your `dbt_project.yml` configuration to reflect this change.

Checklist

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

Agreed - we treat deprecations sorta like exceptions, and we should eventually move all the deprecation / exception / warn_error logic into events. That can be TK


JavaScript shebang and executable tests should be for only node.js/executable JavaScript files

Only node.js/executable JavaScript files need a shebang. Scripts that would be loaded by HTML do not typically have one, nor are they executable as that could actually lead to issues.
alxcheck needs to find a way to detect this, or perhaps display these messages as warnings (orange/amber) as opposed to errors (red) and a notice to the user to only fix those if they are node.js executable scripts.

🤔
It'd be quite challenging to differentiate browser files from nodejs files tho

🤔 It'd be quite challenging to differentiate browser files from nodejs files tho

Yeah, bro. Which is why I suggested using a warning instead. 😅
You could simply make it a warning for now until you figure out how to differentiate them.

🤔 It'd be quite challenging to differentiate browser files from nodejs files tho

Yeah, bro. Which is why I suggested using a warning instead. 😅
You could simply make it a warning with a notice for now, until you figure out how to differentiate them. You don't wanna have people erroneously adding shebangs and executable flags to scripts that have no business having 'em.

Ohk... Makes sense


Not Found Page

https://www.24life.com/not-found
see /404.html in code base

@iamitshri I believe you started this? Do you want to commit your current state?

I will update by EOD :)


API_URL is missing when compile template.

I got an error like this.
Error: Could not compile template<EMAIL_ADDRESS>API_URL is not defined

But it can be fix like this.
if (this.version === 2) {
  script.setAttribute('src', API_URL + '?hl=' + this.language)
} else {
  script.setAttribute('src', API_URL + '?render=' + this.siteKey)
}

Hello, what version of Nuxt are you using?

I am currently using old version of nuxt js ("nuxt": "^1.4.1")

@pyaehein fixed in the 0.5.2 release 😊


Admin Dashboard Approval Process Update

Figma designs have been modified
Update changes made for the admin dashboard
connect to backend

/cib jl admin-dashboard

Branch 19-jl-admin-dashboard created!

For Sprint #5 - add approval process for messages. See Figma sheet for more details

Hi @meghakak , which approval process messages are you referring to? Do you mean adding placeholders?


Ignore extra HealthStatus fields in service monitor (maintain single HealthStatus)

Proposed changes
This is an alternative fix to #3132. It contains the same test, but differs in the approach to how we should deserialize HealthStatus.
In #3132, we use separate structs in tedge_api and tedge_watchdog. This allows each component to deserialize only mapper and watchdog to deserialize only fields they require, but could be argued duplicates structs and makes it harder to see what are possible fields for this type of message because they're spread out.
In this PR, an alternative approach is taken where we use a single tedge_api::HealthStatus struct which just fills in a fallback None on deserialization errors for other fields. Here we keep all the fields in a single place but ignore errors, which is not desirable. I thought it's going to be more complex but it turned out simpler than I anticipated.
Types of changes

[x] Bugfix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Improvement (general improvements like code refactoring that doesn't explicitly fix a bug or add any new functionality)
[ ] Documentation Update (if none of the other choices apply)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)

Paste Link to the issue

#3128

Checklist

[x] I have read the CONTRIBUTING doc
[x] I have signed the CLA (in all commits with git commit -s)
[x] I ran cargo fmt as mentioned in CODING_GUIDELINES
[x] I used cargo clippy as mentioned in CODING_GUIDELINES
[x] I have added tests that prove my fix is effective or that my feature works
[ ] I have added necessary documentation (if appropriate)

Further comments

@Bravo555 What's your point of view?

If the team prefers the first proposal we can go with it, there's not much code built on top so we're free to change it later if it's no longer fit for purpose.
As for addressing the status field in tedge_watchdog, can be done in a follow-up PR.

If the team prefers the first proposal we can go with it, there's not much code built on top so we're free to change it later if it's no longer fit for purpose.

I'm okay first the first proposal. Approving it.


When installing npm modules put them into package.json to reduce number of commands?

Currently:
npm install
npm install bn.js elliptic mkdirp webtorrent-hybrid create-torrent parse-torrent socket.io-client leveldown express cors

It should be possible to change package.json and do the same with the lower number of clicks?

It's already in the package.json =)

I see... I'm just a human, when I see "Getting Started" instructions I do not overthink too much.

Hi guys - I added these to the Windows instructions in my PR #46 to add Windows support yesterday. Did it because the npm install for whatever reason didn't install all required modules. I've also seen this on Linux.
Not sure how to fix that but figured it's better-than-nothing to have in the docs. So at least you can handle it in the install process rather than hitting errors later and needing to fix them.
I agree this should fixed so npm install handles everything.

Did it because the npm install for whatever reason didn't install all required modules.

I'll make the effort to open my Windows laptop and try it out.

@stefek99 could you reproduce this?

@martriay
This is my work machine with old node and no python... Super busy, I won't be able to access my Windows laptop at least till Monday.
(I'll try to set up a VM)

Read the README, node v7 required

Of course I read the README and of course I know that newer version of node is required.
That is why I said:

my work machine with old node

No worries, the .iso download is completed, I can try to reproduce the issue.


possible to get updated/created doc on upsert?

I was expecting the 2nd argument to the callback to be the newly created or updated doc, but there is no 2nd argument:
I'm coming from nedb which supposedly has same API so this is probably wrong:
db.things.update({ hash: data.hash }, data, { upsert: true })
    .then((err, numReplaced, doc) => {
      if (numReplaced) {
        return console.log('replaced %s docs', numReplaced);
      }

         // how do i get num of docs updated and also the new docs?
      console.log(doc);
    })
    .catch(err => {
      return console.error(err, data);
    });

But I want to get number of docs replaced (if upserted) and also the new doc regardless of update or insert happened.

Any updates on this?

First as you use promises and mongojs does not support promises out of the box I guess you opened this issue in the wrong repository (did you mean the official mongodb driver?)
Mongodb does not support getting (updated, upserted) documents as a result of the update operation but returns a WriteResult (https://docs.mongodb.com/manual/reference/method/db.collection.update/)
The write result you'll receive in a callback as second argument looks somehow like this
{ n: 1,
nModified: 0,
upserted: [ { index: 0, _id: abeabeabeabeabeabeabeabe } ],
ok: 1 }
You can use the _id value of the upserted array to query the documents after updating the db.


fix duplicate volumeClaimTemplates keys in Helm chart

Signed-off-by: Andrei Kvapil<EMAIL_ADDRESS>What problem are we solving?
When isntalling seaweedfs chart using flux, a kustomize post-processsor used, it shows error of duplicated keys:
 seaweedfs-system       4m52s   False   Helm upgrade failed for release tenant-root/seaweedfs-system with chart<EMAIL_ADDRESS>error while running post render on files: map[string]int erface {}(nil): yaml: unmarshal errors:...

How are we solving the problem?
move standard volumeClaimTemplates block under if not $pvc_exists check, and add else condition
How is the PR tested?
Checks

[ ] I have added unit tests if possible.
[ ] I will add related wiki document changes and link to this PR after merging.

wrong PR, I probably specified both enablePVC and filer.data


ZBX_NOTSUPPORTED: Unsupported item key.

Hallo,
first thank you very much for the super template.
I have followed the guide and all the files installed.
But when i tried to test the command " zabbix_get -s <IP_ADDRESS> -k "custom.vfs.discover_disks"",
i got
ZBX_NOTSUPPORTED: Unsupported item key.
Would you please tell me how to solve the problem?
My Sever is running debian and zabbix 2.4. Just upgraded from 2.2
Thanks.

Hello, @astatinede!
I would recommend checking the correctness of installation of userparameter_diskstats.conf. Did you put it to the correct directory?
If you're sure that you did, then have you restarted Zabbix after that? Also you can try to inspect logs at /var/logs/zabbix or something like that.

Thank you for your feedback.
I checked again, the userparameter_diskstats.conf file is under the new created /etc/zabbix/zabbix_agentd.d.
I also found another default path /etc/zabbix/zabbix_agentd.conf.d   I did move the conf file to this path and tested again. Still get notsupported.
Below is the output from zabbix_server.log after restart. Seems everthing good.
Would you please tell me how can I check if zabbix server has loaded the userparameter_diskstats.conf successfully? Or how can I configure Zabbix enforce to load the conf?

8069:20161117:083249.509 Starting Zabbix Server. Zabbix 2.4.8 (revision 59539).
8069:20161117:083249.509 ****** Enabled features ******
8069:20161117:083249.509 SNMP monitoring:           YES
8069:20161117:083249.509 IPMI monitoring:            NO
8069:20161117:083249.509 WEB monitoring:            YES
8069:20161117:083249.509 VMware monitoring:         YES
8069:20161117:083249.509 Jabber notifications:       NO
8069:20161117:083249.509 Ez Texting notifications:  YES
8069:20161117:083249.509 ODBC:                       NO
8069:20161117:083249.509 SSH2 support:               NO
8069:20161117:083249.509 IPv6 support:              YES
8069:20161117:083249.509 ******************************
8069:20161117:083249.509 using configuration file: /usr/local/etc/zabbix_server.conf
8069:20161117:083249.517 current database version (mandatory/optional): 02040000/02040000
8069:20161117:083249.517 required mandatory version: 02040000
8069:20161117:083249.550 server #0 started [main process]
8071:20161117:083249.551 server #1 started [configuration syncer #1]
8072:20161117:083249.551 server #2 started [db watchdog #1]
8073:20161117:083249.551 server #3 started [poller #1]
8074:20161117:083249.552 server #4 started [poller #2]
8075:20161117:083249.552 server #5 started [poller #3]
8076:20161117:083249.553 server #6 started [poller #4]
8077:20161117:083249.553 server #7 started [poller #5]
8078:20161117:083249.553 server #8 started [unreachable poller #1]
8079:20161117:083249.554 server #9 started [trapper #1]
8080:20161117:083249.554 server #10 started [trapper #2]
8081:20161117:083249.554 server #11 started [trapper #3]
8083:20161117:083249.555 server #13 started [trapper #5]
8085:20161117:083249.556 server #15 started [alerter #1]
8086:20161117:083249.556 server #16 started [housekeeper #1]
8087:20161117:083249.556 server #17 started [timer #1]
8088:20161117:083249.557 server #18 started [http poller #1]
8082:20161117:083249.560 server #12 started [trapper #4]
8094:20161117:083249.560 server #24 started [escalator #1]
8093:20161117:083249.562 server #23 started [history syncer #4]
8090:20161117:083249.566 server #20 started [history syncer #1]
8084:20161117:083249.566 server #14 started [icmp pinger #1]
8095:20161117:083249.567 server #25 started [proxy poller #1]
8096:20161117:083249.567 server #26 started [self-monitoring #1]
8091:20161117:083249.567 server #21 started [history syncer #2]
8092:20161117:083249.568 server #22 started [history syncer #3]
8089:20161117:083249.571 server #19 started [discoverer #1]

Ha, problem solved.
I added Include=/etc/zabbix/zabbix_agentd.d/ in zabbix_agentd.conf and restarted zabbix_agentd
Thanks for the tipps.

I was just going to ask you to check this configuration file.
Glad it worked!

Just wanted to add
The Include Option in /etc/zabbix/zabbix_agentd.conf hast to be:

Include=/etc/zabbix/zabbix_agentd.d/

not

Include=/etc/zabbix/zabbix_agentd.d/*.conf

Theoretically they should both work, but sadly didnt.


feat(decide/match): Added partial match mode

Replacement for #614 as the previous base branch was deleted and it can no longer be updated. Apologies for the complications.
Implements #610 and all changes in comments and review of previous PR. Also ensuring torrents are added in paused state if skipRecheck is false for partial matching and reporting FILE_TREE_MISMATCH there are duplicate sizes without a name match.

Just found an insane edge case. If the candidate piece size is larger than the candidate size, rechecking fails in qBit. Which makes sense as pieces are atomic so even though you have 99.9% of the data, you basically have 0.
So I'll have to add a check that piece length is smaller than candidate length.

If the candidate piece size is larger than the candidate size, rechecking fails in qBit. Which makes sense as pieces are atomic so even though you have 99.9% of the data, you basically have 0.

I can't really see any reason this wouldn't work. Partial pieces are pretty common I think, on most torrents the last piece is partial. If you have the data, I'm not sure what would be wrong

If the candidate piece size is larger than the candidate size, rechecking fails in qBit. Which makes sense as pieces are atomic so even though you have 99.9% of the data, you basically have 0.

I can't really see any reason this wouldn't work. Partial pieces are pretty common I think, on most torrents the last piece is partial. If you have the data, I'm not sure what would be wrong

Peice size would not affect the data check. Remenants of partial data being downloaded to complete the chunk/peices are typically stored by libtorrent in .part files in the torrent root directory.

Conflicts now...rebasing is going to be fun. If you need help let me know..

Rebased for you.

I haven't been able to spend time on this, but it is still on my radar

I rebased onto v6 and added decision when logging results.
So I've been using this for a month now from master, will be using on v6 from now on. The benefit you will see from this heavily depends on the initial searchee and if your trackers have the extra files.

If all your trackers have the extra files or none has it, you will not see a difference.
If some trackers have it and some don't, you won't see a difference if you got the one with extra files first. As data based risky would created a searchee without it.

So how many MATCH_PARTIAL you see will be different for everyone.

Resolved all comments and reviewed once more.  I'll resolve that

rebased for you, i guess its ready for merging since @mmgoodnow approved :O


Discrimination trees don't see through beta-redex

class Foo (α : Type)
instance : Foo (Nat → Nat) where
example : Foo (Nat → Nat) := inferInstance -- works
example : Foo ((x : Nat) → (fun x : Int => Nat) (Int.ofNat x)) :=
  inferInstance -- should work too

As reported on Zulip: https://leanprover.zulipchat.com/#narrow/stream/287929-mathlib4/topic/calc.20and.20isBigO/near/360891924
In the Zulip issue, the beta-redex is introduced during unification, in the implicit argument of the Trans type class.

Am I right that another solution to the calc issue is to beta-reduce types before looking for Trans in calc?

That would be a bandaid fix for this particular calc issue, yes.  (Probably, didn't try it.)


Make FTorch REQUIRED in the examples

It came up in #124 that some linking could pass undetected for the examples as CMake does not currently 'REQUIRE' FTorch.
This could lead to linking issues later on at link or runtime that should be detected earlier when building.
We should update the examples (which are then pulled into the tests) and the online coupling guidance.

Discussion with @jwallwork23 we think this would require making the building of tests a separate step from building of the library, but doing so would not be the end of the world.
This is not a priority, however, so we can stall this for now.


DevFest Uyo 2023

This is the link to the event.
Please endeavor to include "devfest" as part of the category. Since this is a DevFest event.

hi brother can i jump on this task

Hi Fuhad! Please do.
It's nice to have you back! 🍾

aiiit boss
thanks for having me


Fixed: dagster to connect to cloud

Describe your changes :

I worked on dagster to connect to cloud as well as local.
Fixed: #7934

Type of change :

[x] Bug fix
[x] Improvement
[ ] New feature
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] Documentation

@pmbrull and @NiharDoshi99 there are some issues with the SQL code changes. With this change, the maven tests are failing for java code.


Invert this dependency section to better handle testing.

Codecov Report

Merging #441 (0d2ade6) into stable (ef3d4ae) will increase coverage by 0.48%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           stable     #441      +/-   ##
==========================================
+ Coverage   30.19%   30.67%   +0.48%
==========================================
  Files          63       63
  Lines        5753     5753
  Branches      312      312
==========================================
+ Hits         1737     1765      +28
+ Misses       3945     3913      -32
- Partials       71       75       +4

Impacted Files
Coverage Δ

library/virtual_machine/set_evaluator.cpp
50.00% <0.00%> (-25.00%)
:arrow_down:

library/grammar/number.hpp
84.21% <0.00%> (-7.90%)
:arrow_down:

library/grammar/rules/captures.hpp
80.76% <0.00%> (-7.70%)
:arrow_down:

library/virtual_machine/get_evaluator.cpp
40.42% <0.00%> (-4.79%)
:arrow_down:

library/virtual_machine/evaluator.cpp
17.21% <0.00%> (+0.44%)
:arrow_up:

library/virtual_machine/bin_evaluator.cpp
50.76% <0.00%> (+7.17%)
:arrow_up:

library/grammar/string.hpp
40.00% <0.00%> (+14.50%)
:arrow_up:

library/grammar/grammar.hpp
71.42% <0.00%> (+21.42%)
:arrow_up:

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


Edison Instructions: Improve page text

Task Description
Page: https://github.com/solettaproject/soletta/wiki/Edison-Instructions
Improve page text to make it easier to understand what's the content of this document and navigate through it.

[x] Add an introduction text to explain what these instructions are for and briefly talk about what are the steps going to be taken.
[ ] Review/reword Yocto introduction text ("To build it first it is needed to be installed the...")
[ ] Review the page to ensure that there are no acronyms wrongly cased and all snippets are properly wrapped in their tags

Dependencies
None

"Add an introduction text to explain what these instructions are for" - OK
"briefly talk about what are the steps going to be taken", that is like:
int i = 6; // initialize integer var with value '6'
They know what is for, by reading the previously missing introduction, and read the page to know the steps, isn't that hard.

"Review/reword Yocto instructions" -> Shouldn't this part be in meta-soletta wiki/instructions or meta-soletta tutorials and this page just point there? Is kind lost those instructions there (actually meta-soletta itself is pointing here). It should be like galileo instructions that teaches you how to recompile if you are using a image with meta-soletta, for dev purpose. Not to teach how to generate a full image.

@mbelluzzo
"briefly talk about what the steps to be taken": this is not for each step but for the whole group of steps
For the Yocto instructions I agree with you but the problem is that there's no meta-soletta wiki. If this content is useful for other pages and usages we could create a new page on the Soletta wiki itself.

Even without a meta-soletta wiki, I think we should organize our wiki in a way that meta-soletta content is all group and controlled by its on pages (even that is on Soletta wiki) and we point there, so yes, I think we should create new pages within Soletta wiki for meta-soletta purpose and remove this info from this page. Will also make it possible to give descent instructions about minnowboard from Soletta context.

@mbelluzzo I canceled the yocto task, let's move forward with the meta-soletta page. I'ill open the tickets accordingly. Thanks for the input!!


Cryptopia base and quote currency reversed

The symbols Cryptopia uses have a reversed base and quote currency: DOT/BTC
Here you can see the results of a loadMarkets().
"DOT/BTC": {
    "id": 100,
    "symbol": "DOT/BTC",
    "base": "DOT",
    "quote": "BTC",
    "info": {
        "Id": 100,
        "Label": "DOT/BTC",
        "Currency": "Dotcoin",
        "Symbol": "DOT",
        "BaseCurrency": "Bitcoin",
        "BaseSymbol": "BTC",
        "Status": "OK",
        "StatusMessage": null,
        "TradeFee": 0.2,
        "MinimumTrade": 1e-8,
        "MaximumTrade": 100000000,
        "MinimumBaseTrade": 0.00005,
        "MaximumBaseTrade": 100000000,
        "MinimumPrice": 1e-8,
        "MaximumPrice": 100000000
    },
    "maker": 0.002,
    "taker": 0.002
},

base should be BTC.

Hi! Are you sure?
mbp:ccxt igorkroitor$ python
Python 2.7.13 (default, Jun  5 2017, 10:04:07)
[GCC 4.2.1 Compatible Apple LLVM 8.1.0 (clang-802.0.42)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import ccxt
>>> ccxt.cryptopia().fetch_ticker('ETH/BTC')
{'info': {u'SellVolume':<PHONE_NUMBER>2, u'Volume':<PHONE_NUMBER>7, u'SellBaseVolume': 1749.11356114, u'LastPrice': 0.07432773, u'TradePairId': 5203, u'Label': u'ETH/BTC', u'High': 0.07739843, u'BidPrice': 0.07411123, u'Low': 0.07317848, u'BuyBaseVolume': 5.44148343, u'Close': 0.07432773, u'BaseVolume': 18.27058447, u'Open': 0.07527184, u'AskPrice': 0.07488253, u'Change': -1.25, u'BuyVolume':<PHONE_NUMBER>918}, 'last': 0.07432773, 'timestamp':<PHONE_NUMBER>929, 'bid': 0.07411123, 'vwap': None, 'datetime': '2017-09-26T22:17:17.000Z', 'high': 0.07739843, 'low': 0.07317848, 'quoteVolume':<PHONE_NUMBER>7, 'ask': 0.07488253, 'close': 0.07432773, 'percentage': None, 'baseVolume': 18.27058447, 'open': 0.07527184, 'average': None, 'change': -1.25, 'first': None}
>>>

Looks like ETH/BTC is correct. ETH is the base. Price is ~ 0.07. So, BTC is quote. Or am I missing something?

Check out the volumes in your example. baseVolume is in BTC.
'quoteVolume':<PHONE_NUMBER>7,
'baseVolume': 18.27058447,

Here is the Cryptopia API GetMarkets:
GetMarkets
Returns all market data
GET https://www.cryptopia.co.nz/api/GetMarkets
Param: baseMarket (optional, default: All)
Param: hours (optional, default: 24)

If you get base BTC markets with https://www.cryptopia.co.nz/api/GetMarkets/BTC you will see the ETH/BTC pair.

Check out the volumes in your example. baseVolume is in BTC.

Yep, the volumes look misplaced, I agree here, and I'll fix the tickers for that. But the price is still correct, and the price is for ETH/BTC where ETH is base and BTC is quote.

If you get base BTC markets with https://www.cryptopia.co.nz/api/GetMarkets/BTC you will see the ETH/BTC pair.

What I'm trying to explain to you, is that Cryptopia field naming is inconsistent, they call BTC "base", but it is a quote currency in fact. BTC is actually the quote currency in ETH/BTC pair. Take a look at the definition of base-quote (not the way Cryptopia named base and quote sides, but the way they really are named by the rest of the world).
You don't get base BTC markets with https://www.cryptopia.co.nz/api/GetMarkets/BTC, you are actually getting the "quote-BTC" markets this is clear if you compare their prices to all other exchanges. ETH/BTC is ~ 0.7, BCH/BTC is ~ 0.1, so this is called "BTC is quote", we pay or receive that quote BTC price for 1 lot of base altcoin. This is the correct terminology afaik.
So, the base-quote are in their proper places and only the ticker volumes should be corrected, right? Or am I wrong?

Ok, I uploaded the fix for ticker volumes in Cryptopia. This should be working since 1.8.35+ (in a couple of minutes).
Let us know if you still insist that base-quote sides are misplaced there and we are mistaking.

Thanks for the fix!
I agree about the base-quote. The crypto market isn't always consistent with the real stock market.
As long as the unified API gives consistent results across the exchanges, I'm fine with that.

@rdbr , ok ) Let us know if you find anything strange or suspicious (with other exchanges, maybe) your feedback is very helpful to us and other users! Thx again!

The following exchanges have the same problem of reversing the base and quote volume: Poloniex, Bittrex
I didn't look at the other exchanges, but there are probably a lot more with this problem.
Fixes:
Poloniex
        'baseVolume': parseFloat (ticker['quoteVolume']),
        'quoteVolume': parseFloat (ticker['baseVolume']),

Bittrex
        'baseVolume': parseFloat (ticker['Volume']),
        'quoteVolume': parseFloat (ticker['BaseVolume']),

@rdbr hm... but you agreed previously on the 'base-quote' ) They're not reversed actually, ccxt has them correct and consistent across Poloniex and Bittrex for sure.

1 ETH / 1 BTC = 0.06950101, so the pair is ETH/BTC (we buy/sell ETH for a price in BTC). This is the price Bittrex shows. And it's for ETH/BTC.
1 BTC / 1 ETH ~ 14.38828011, so the pair is not BTC/ETH (we don't buy/sell BTC for ETH there). Bittrex shows you this name (BTC-ETH) for the market, while actually showing you the price for ETH/BTC at the same time. CCXT does that correctly, linking ETH/BTC name to Bittrex price.

Let me know if everything is now clear to you on this issue. Thx!

Oh, I'm sorry, I missed you were talking about the tickers. I'll reverse their volumes as well. Thx!

Ok, I fixed the ticker volumes for both of them, it should be working in 1.9.29+ and a new fixed build will be available in several minutes. Thx for reporting on this! Really appreciate your involvement!

Thanks!


Material_SpecularGlossiness assets apply extensionsUsed but not extensionsRequired

I suggest that the SpecularGlossiness test assets use
"extensionsRequired": [
    "KHR_materials_pbrSpecularGlossiness"
  ]

Because the assets don't render as expected on clients that do not support the extension.

This is interesting. We put a red X so that it's obvious which one is being loaded, but typically with extensionsUsed, the asset should look as similar as possible. We already have a entry for extensionsRequired in the Compatability page. Maybe we should add a extensionsUsed entry there as well.

Our client tries to guess if there is a valid fallback so we don't have to convert the SpecularGlossiness to MetalRoughness. The red X makes our guess mostly wrong. Having extensionRequired would sway that guess.


jsdoc doesn't show this in hover popup

@mjbvz

Version: 1.73.0-insider (Universal)
Commit: 1c78193f54fac6036829ec554ce218d99afc1f15
Date: 2022-10-18T07:28:15.245Z
Electron: 19.0.17
Chromium: 102.0.5005.167
Node.js: 16.14.2
V8: <IP_ADDRESS>-electron.0
OS: Darwin x64 21.6.0
Sandboxed: Yes

The doc text only shows documentation, not the type info (which is shown at the top of the hover). This seems to be working the same way as @param does above