Are there AZ CLI commands instead of the powershell applets?

[Enter feedback here]

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

ID: daf14087-1765-4636-805c-6faec03d8a9b
Version Independent ID: 4a6b910d-403e-997a-b010-0942e8ef624c
Content: Clone app with PowerShell - Azure App Service
Content Source: articles/app-service/app-service-web-app-cloning.md
Service: app-service
GitHub Login: @cephalin
Microsoft Alias: cephalin

Hi @lsmith-apriva , to clone an existing Azure Web App using CLI commands, you can use the az webapp create command with the--sourceparameter.
Here are the steps you can follow:
-Open a command prompt or terminal window and log in to your Azure account using the az login command.
-Run the following command to clone the existing web app:
az webapp create --name <new-web-app-name> --resource-group <resource-group-name> --plan <app-service-plan-name> --source <existing-web-app-name>
-Replace <new-web-app-name> with the name of the new web app you want to create, <resource-group-name> with the name of the resource group where the new web app will be created, <app-service-plan-name> with the name of the app service plan you want to use, and <existing-web-app-name> with the name of the existing web app you want to clone.
For example:
az webapp create --name mynewwebapp --resource-group myresourcegroup --plan myappserviceplan --source myexistingwebapp
Wait for the command to complete. This may take a few minutes depending on the size of your web app.
Once the command has completed, you should see a message indicating that the new web app has been created.
Webapp 'mynewwebapp' created with source 'myexistingwebapp'
We will now proceed to close this thread. If there are further questions regarding this matter, please tag me in your reply. We will gladly continue the discussion and we will reopen the issue.

Would it be possible to update the page to include this information so that everyone can benefit from it?
From: Grace-MacJones-MSFT @.>
Sent: Wednesday, August 16, 2023 3:59 PM
To: MicrosoftDocs/azure-docs @.>
Cc: Larry Smith @.>; Mention @.>
Subject: Re: [MicrosoftDocs/azure-docs] Are there AZ CLI commands instead of the powershell applets? (Issue #113617)
CAUTION: This email originated from outside the Apriva network. Do not click on links or open attachments unless you recognize the sender and know the content is safe.
Hi @lsmith-aprivahttps://github.com/lsmith-apriva , to clone an existing Azure Web App using CLI commands, you can use the az webapp create command with the--sourceparameter.
Here are the steps you can follow:
-Open a command prompt or terminal window and log in to your Azure account using the az login command.
-Run the following command to clone the existing web app:
az webapp create --name  --resource-group  --plan  --source
-Replace  with the name of the new web app you want to create,  with the name of the resource group where the new web app will be created,  with the name of the app service plan you want to use, and  with the name of the existing web app you want to clone.
For example:
az webapp create --name mynewwebapp --resource-group myresourcegroup --plan myappserviceplan --source myexistingwebapp
Wait for the command to complete. This may take a few minutes depending on the size of your web app.
Once the command has completed, you should see a message indicating that the new web app has been created.
Webapp 'mynewwebapp' created with source 'myexistingwebapp'
We will now proceed to close this thread. If there are further questions regarding this matter, please tag me in your reply. We will gladly continue the discussion and we will reopen the issue.

Reply to this email directly, view it on GitHubhttps://github.com/MicrosoftDocs/azure-docs/issues/113617#issuecomment-1681372995, or unsubscribehttps://github.com/notifications/unsubscribe-auth/A2IZ77JTQFFY7QYMAEIBEZTXVVGC3ANCNFSM6AAAAAA3S5DSPA.
You are receiving this because you were mentioned.Message ID<EMAIL_ADDRESS>


Badge events

https://deskpro.myjetbrains.com/youtrack/agiles/88-9/89-9?issue=DP-1103
The badge count needs to be displayed on the app icon outside of the app iframe. The changes in this PR send the badge events to Deskpro via post-robot instead of being a UI event.

Looked good, but you may need to rebase @headzoo

@helstern Okay, rebased.


gimp-with-plugins does not compile anymore

Issue description
I can't install anything anymore on my system because gimp-with-plugins fails to install, and when I run nixos-rebuild switch, I get an error during the compilation. Note that you can obtain it directly from nix-build -E "with import <nixpkgs> {}; gimp-with-plugins"
# nixos-rebuid switch
[...]
In file included from /nix/store/89n53mna0flc0h8grbdagfawdmqyim0g-gimp-2.10.12/include/gimp-2.0/libgimp/gimp.h:57:0,
                 from src/gimplensfun.cpp:31:
/nix/store/89n53mna0flc0h8grbdagfawdmqyim0g-gimp-2.10.12/include/gimp-2.0/libgimp/gimppixelrgn.h:48:11: note: declared here
 void      gimp_pixel_rgn_init       (GimpPixelRgn  *pr,
           ^~~~~~~~~~~~~~~~~~~
src/gimplensfun.cpp:923:77: warning: 'void gimp_pixel_rgn_get_rect(GimpPixelRgn*, guchar*, gint, gint, gint, gint)' is deprecated: Use 'gegl_buffer_get' instead [-Wdeprecated-declarations]
     gimp_pixel_rgn_get_rect (&rgn_in, ImgBuffer, x1, y1, imgwidth, imgheight);
                                                                             ^
In file included from /nix/store/89n53mna0flc0h8grbdagfawdmqyim0g-gimp-2.10.12/include/gimp-2.0/libgimp/gimp.h:57:0,
                 from src/gimplensfun.cpp:31:
/nix/store/89n53mna0flc0h8grbdagfawdmqyim0g-gimp-2.10.12/include/gimp-2.0/libgimp/gimppixelrgn.h:80:11: note: declared here
 void      gimp_pixel_rgn_get_rect   (GimpPixelRgn  *pr,
           ^~~~~~~~~~~~~~~~~~~~~~~
src/gimplensfun.cpp:949:35: warning: 'static lfModifier* lfModifier::Create(const lfLens*, float, int, int)' is deprecated [-Wdeprecated-declarations]
     lfModifier *mod = lfModifier::Create (lenses[0], sLensfunParameters.Crop, imgwidth, imgheight);
-- Found KF5ItemModels: /nix/store/0xgz2s87px14r74kmbqhaimjrwv0yn96-kitemmodels-5.58.0-dev/lib/cmake/KF5ItemModels/KF5ItemModelsConfig.cmake (found version "5.58.0")
                                   ^~~~~~
In file included from src/gimplensfun.cpp:30:0:
/nix/store/sslsjphx656mg6sawyixmm6fd61nfmg5-lensfun-0.3.95/include/lensfun/lensfun.h:2402:35: note: declared here
     DEPRECATED static lfModifier *Create (const lfLens *lens, float crop, int width, int height);
                                   ^~~~~~
src/gimplensfun.cpp:949:98: warning: 'static lfModifier* lfModifier::Create(const lfLens*, float, int, int)' is deprecated [-Wdeprecated-declarations]
     lfModifier *mod = lfModifier::Create (lenses[0], sLensfunParameters.Crop, imgwidth, imgheight);
                                                                                ^
In file included from src/gimplensfun.cpp:30:0:
/nix/store/sslsjphx656mg6sawyixmm6fd61nfmg5-lensfun-0.3.95/include/lensfun/lensfun.h:2402:35: note: declared here
     DEPRECATED static lfModifier *Create (const lfLens *lens, float crop, int width, int height);
                                   ^~~~~~
src/gimplensfun.cpp:952:84: warning: 'int lfModifier::Initialize(const lfLens*, lfPixelFormat, float, float, float, float, lfLensType, int, bool)' is deprecated [-Wdeprecated-declarations]
                          sLensfunParameters.ModifyFlags, sLensfunParameters.Inverse);
                                                                                ^
In file included from src/gimplensfun.cpp:30:0:
/nix/store/sslsjphx656mg6sawyixmm6fd61nfmg5-lensfun-0.3.95/include/lensfun/lensfun.h:2449:20: note: declared here
     DEPRECATED int Initialize (
                    ^~~~~~~~~~
src/gimplensfun.cpp:1010:81: warning: 'void gimp_pixel_rgn_set_rect(GimpPixelRgn*, const guchar*, gint, gint, gint, gint)' is deprecated: Use 'gegl_buffer_set' instead [-Wdeprecated-declarations]
     gimp_pixel_rgn_set_rect (&rgn_out, ImgBufferOut, x1, y1, imgwidth, imgheight);
                                                                                ^
In file included from /nix/store/89n53mna0flc0h8grbdagfawdmqyim0g-gimp-2.10.12/include/gimp-2.0/libgimp/gimp.h:57:0,
                 from src/gimplensfun.cpp:31:
/nix/store/89n53mna0flc0h8grbdagfawdmqyim0g-gimp-2.10.12/include/gimp-2.0/libgimp/gimppixelrgn.h:104:11: note: declared here
 void      gimp_pixel_rgn_set_rect   (GimpPixelRgn  *pr,
           ^~~~~~~~~~~~~~~~~~~~~~~
src/gimplensfun.cpp:1012:34: warning: 'void gimp_drawable_flush(GimpDrawable*)' is deprecated: Use 'gegl_buffer_flush' instead [-Wdeprecated-declarations]
     gimp_drawable_flush (drawable);
                                  ^
In file included from /nix/store/89n53mna0flc0h8grbdagfawdmqyim0g-gimp-2.10.12/include/gimp-2.0/libgimp/gimp.h:41:0,
                 from src/gimplensfun.cpp:31:
/nix/store/89n53mna0flc0h8grbdagfawdmqyim0g-gimp-2.10.12/include/gimp-2.0/libgimp/gimpdrawable.h:55:16: note: declared here
 void           gimp_drawable_flush                  (GimpDrawable  *drawable);
                ^~~~~~~~~~~~~~~~~~~
src/gimplensfun.cpp:1018:35: warning: 'void gimp_drawable_detach(GimpDrawable*)' is deprecated [-Wdeprecated-declarations]
     gimp_drawable_detach (drawable);
                                   ^
In file included from /nix/store/89n53mna0flc0h8grbdagfawdmqyim0g-gimp-2.10.12/include/gimp-2.0/libgimp/gimp.h:41:0,
                 from src/gimplensfun.cpp:31:
/nix/store/89n53mna0flc0h8grbdagfawdmqyim0g-gimp-2.10.12/include/gimp-2.0/libgimp/gimpdrawable.h:53:16: note: declared here
 void           gimp_drawable_detach                 (GimpDrawable  *drawable);
                ^~~~~~~~~~~~~~~~~~~~
src/gimplensfun.cpp: In function 'int read_opts_from_exif(const char*)':
src/gimplensfun.cpp:1063:19: error: 'AnyError' in namespace 'Exiv2' does not name a type
     catch (Exiv2::AnyError& e) {
                   ^~~~~~~~
src/gimplensfun.cpp: In function 'void run(const gchar*, gint, const GimpParam*, gint*, GimpParam**)':
src/gimplensfun.cpp:1224:59: warning: 'GimpDrawable* gimp_drawable_get(gint32)' is deprecated: Use 'gimp_drawable_get_buffer' instead [-Wdeprecated-declarations]
     drawable = gimp_drawable_get (param[2].data.d_drawable);
                                                           ^
In file included from /nix/store/89n53mna0flc0h8grbdagfawdmqyim0g-gimp-2.10.12/include/gimp-2.0/libgimp/gimp.h:41:0,
                 from src/gimplensfun.cpp:31:
/nix/store/89n53mna0flc0h8grbdagfawdmqyim0g-gimp-2.10.12/include/gimp-2.0/libgimp/gimpdrawable.h:51:16: note: declared here
 GimpDrawable * gimp_drawable_get                    (gint32         drawable_ID);
                ^~~~~~~~~~~~~~~~~
src/gimplensfun.cpp:1269:18: warning: 'void lfDatabase::Destroy()' is deprecated [-Wdeprecated-declarations]
     ldb->Destroy();
                  ^
In file included from src/gimplensfun.cpp:30:0:
/nix/store/sslsjphx656mg6sawyixmm6fd61nfmg5-lensfun-0.3.95/include/lensfun/lensfun.h:1757:21: note: declared here
     DEPRECATED void Destroy ();
                     ^~~~~~~
make: *** [Makefile:51: src/gimplensfun.o] Error 1
builder for '/nix/store/xpxgy5hxdgn2g043cx2xl2lcyq31ic7z-gimp-plugin-gimplensfun-0.2.4.drv' failed with exit code 2
cannot build derivation '/nix/store/s9lly3h1rmj71rmv5l1qfvsj6d6mcp0c-gimp-with-plugins-2.10.12.drv': 1 dependencies couldn't be built
copying path '/nix/store/sgcc7zkpajshmgq5051rxxfmssib9bhl-python-2.7.16-env' from 'https://cache.nixos.org'...
building '/nix/store/46dkiwk8w5hlia53ysx92si2fa9jvp0j-initrd-fsinfo.drv'...
building '/nix/store/mza8rgw0g0rc7df16aqqh49abj2i3whm-keymap.drv'...
cannot build derivation '/nix/store/rw2nhjy95jq2apsjxvi2k7r2vk89z6a0-system-path.drv': 1 dependencies couldn't be built
building '/nix/store/x7ni38bpn2p1j2x71kdlml870rslwks9-udev-path.drv'...
building '/nix/store/yi87vyi1mwmv9s0mx7rln38wcby2j2qz-udev-rules.drv'...
building '/nix/store/pc6v5pqxpgq0n2y2n4kia69md419ismb-unit-NetworkManager-dispatcher.service.drv'...
cannot build derivation '/nix/store/3ib2cmqh6ljvlbjpncrv0kac5zv0jl8q-nixos-system-colnixos-19.09pre184855.beff2f8d75e.drv': 1 dependencies couldn't be built
error: build of '/nix/store/3ib2cmqh6ljvlbjpncrv0kac5zv0jl8q-nixos-system-colnixos-19.09pre184855.beff2f8d75e.drv' failed

Steps to reproduce
Install or compile gimp-with-plugins:
$ nix-build -E "with import <nixpkgs> {}; gimp-with-plugins"

I am on 19.09pre184855.beff2f8d75e.
Technical details
Please run nix-shell -p nix-info --run "nix-info -m" and paste the
results.

system: "x86_64-linux"
host os: Linux 4.19.52, NixOS, 19.09pre183392.83ba5afcc96 (Loris)
multi-user?: yes
sandbox: yes
version: nix-env (Nix) 2.2.2
channels(me): ""
channels(root): "nixos-19.09pre184855.beff2f8d75e"
nixpkgs: /nix/var/nix/profiles/per-user/root/channels/nixos

I can't install anything anymore on my system

Note that you can still install packages into your user environment with nix-env.


Fixed SuperTextField selection glitch by never resending the previous TextEditingValue to the IME (Resolves #905)

Fixed SuperTextField selection glitch by never resending the previous TextEditingValue to the IME (Resolves #905)

This PR needs #876 to land first because we use a decorate introduced in that PR.


fix: Failing to add repo with trailing slash

Fixes Issue
Fixes #8560

Changes proposed
I have made the following changes :

I added a condition in the repo.js file in the api/account/manage directory, to check if the url entered by the user contains a trailing slash. If it contains, then the url will be changed to the one without the trailing slash before the GitHub API call is made, without changing the url in the text box placeholder. So, the user does not get to know about the issue with the trailing slash.

Check List (Check all the applicable boxes)

[X] My code follows the code style of this project.
[ ] My change requires changes to the documentation.
[ ] I have updated the documentation accordingly.
[ ] All new and existing tests passed.
[X] This PR does not contain plagiarized content.
[X] The title of my pull request is a short description of the requested changes.

Screenshots
See the below video recording of the fix implemented via this PR.
Screencast from 2023-08-13 19-50-44.webm

done

Looks Good 👍

Looks Good :+1:

Thank you for reviewing @badrivlog :smile: !

Thank you @eddiejaoude for the merge :smile: :tada: !


Added 'rejectOnDrop' option

Ideally #17 should be merged as well so that if a promise is rejected the user gets the Error object with the reason why.
Also #16 should be merged so that promises are rejected/callbacks called if the user calls removeAll().
Closes #14

I merged both #16 and #17 and left some comments on this one. What's your opinion on using an extra constructor arguments (like you did) versus replacing an attribute on the prototype like for replacing the Promise library? In my opinion, the former is better when it's something you want to have to think about every you instantiate an object and the latter is better when it's a "set and forget" kind of setting that most people won't care about. In this case I'm not sure which is better, so I'm curious to hear your opinion.

I actually think neither :P
I'd usually go for an options object that you pass into the constructor like:
var limiter = new Bottleneck({
   maxConcurrent: 12,
   minTime: 1
});

because then different instances can be instantiated with different settings, and it means the developer can't change a setting after an instance has already been created and break it. Also means you can easily add more options whilst maintaining backwards compatibility. Internally I'd copy items out of that config to private class variables.
I can change this PR though to put the option on the prototype if you like?

I totally agree with you that options object are superior once a constructor reaches 4+ arguments. Having taken the time to think about this some more, I'm going to go ahead and merge. I'll clean up a few things and release v1.13.0 with your contributions within the week.
In a few months I want to refactor method names, how the constructor works and generally clean up the API because it's "grown" over time and it's not as clean as it used to and could be. That will be released as version 2. I'm making an issue right now to keep track of any "wishes" some might have for v2, feel free to add your own ideas there.


Change of behaviour from lightning logger

Description
A torch deepar model I'm training had been generating a useful metrics.csv in the lightning log. It's now generating a tfevents file instead without any loss data.
To Reproduce
I'm not sure exactly when this change of behaviour occurred as I don't review the log after every run. To reproduce, I've run the GluonTS toy example which is outputting the tfevents file.
import pandas as pd

from gluonts.dataset.pandas import PandasDataset
from gluonts.dataset.split import split
from gluonts.torch import DeepAREstimator

df = pd.read_csv(
    "https://raw.githubusercontent.com/AileenNielsen/"
    "TimeSeriesAnalysisWithPython/master/data/AirPassengers.csv",
    index_col=0,
    parse_dates=True,
)
dataset = PandasDataset(df, target="#Passengers")

training_data, test_gen = split(dataset, offset=-36)
test_data = test_gen.generate_instances(prediction_length=12, windows=3)

model = DeepAREstimator(
    prediction_length=12, freq="M", trainer_kwargs={"max_epochs": 5}
).train(training_data)

Error message or code output
GPU available: True (mps), used: True
TPU available: False, using: 0 TPU cores
IPU available: False, using: 0 IPUs
HPU available: False, using: 0 HPUs
/Users/carlgoodwin/Library/r-miniconda-arm64/envs/r-reticulate/lib/python3.10/site-packages/lightning/pytorch/trainer/configuration_validator.py:74: You defined a `validation_step` but have no `val_dataloader`. Skipping val loop.

  | Name  | Type        | Params | In sizes                                                   | Out sizes
------------------------------------------------------------------------------------------------------------------
0 | model | DeepARModel | 23.3 K | [[1, 1], [1, 1], [1, 48, 2], [1, 48], [1, 48], [1, 12, 2]] | [1, 100, 12]
------------------------------------------------------------------------------------------------------------------
23.3 K    Trainable params
0         Non-trainable params
23.3 K    Total params
0.093     Total estimated model params size (MB)
Epoch 0: |          | 50/? [00:01<00:00, 29.18it/s, v_num=149, train_loss=5.310]Epoch 0, global step 50: 'train_loss' reached 5.31070 (best 5.31070), saving model to '/Users/carlgoodwin/R Projects/jump/lightning_logs/version_149/checkpoints/epoch=0-step=50.ckpt' as top 1
Epoch 1: |          | 50/? [00:01<00:00, 30.89it/s, v_num=149, train_loss=4.510]Epoch 1, global step 100: 'train_loss' reached 4.50902 (best 4.50902), saving model to '/Users/carlgoodwin/R Projects/jump/lightning_logs/version_149/checkpoints/epoch=1-step=100.ckpt' as top 1
Epoch 2: |          | 50/? [00:01<00:00, 30.81it/s, v_num=149, train_loss=4.280]Epoch 2, global step 150: 'train_loss' reached 4.28374 (best 4.28374), saving model to '/Users/carlgoodwin/R Projects/jump/lightning_logs/version_149/checkpoints/epoch=2-step=150.ckpt' as top 1
Epoch 3: |          | 50/? [00:01<00:00, 31.37it/s, v_num=149, train_loss=4.140]Epoch 3, global step 200: 'train_loss' reached 4.14352 (best 4.14352), saving model to '/Users/carlgoodwin/R Projects/jump/lightning_logs/version_149/checkpoints/epoch=3-step=200.ckpt' as top 1
Epoch 4: |          | 50/? [00:01<00:00, 31.69it/s, v_num=149, train_loss=4.020]Epoch 4, global step 250: 'train_loss' reached 4.01542 (best 4.01542), saving model to '/Users/carlgoodwin/R Projects/jump/lightning_logs/version_149/checkpoints/epoch=4-step=250.ckpt' as top 1
`Trainer.fit` stopped: `max_epochs=5` reached.
Epoch 4: |          | 50/? [00:01<00:00, 31.44it/s, v_num=149, train_loss=4.020]

I'm getting a tfevents file with no loss data ...

... where I was previously getting a metrics.csv file with loss data.

I tried re-installing GluonTS and lightning.
Environment

Operating system: macOS sonoma 14.1.2
Python version: 3.10.12
GluonTS version: 0.14.3
lightning version: 2.1.2

@cgoo4 estimators based on PyTorch use Lightning for training: the documentation for the latest version (https://lightning.ai/docs/pytorch/stable/extensions/logging.html) mentions the TensorboardLogger as being used by default. If I’m not wrong, older versions would use that if Tensorboard was installed, and the CVSLogger otherwise.
Things you could try:

uninstalling Tensorboard from your environment
explicitly specifying the CSVLogger as indicated in the docs above, via the trainer_kwargs to the gluonts estimator constructor.

(Removing the bug label)

@lostella thank you for the detective work! The below code does bring back the metrics.csv. I must have installed Tensorboard as a dependency to something.
from lightning.pytorch.loggers import CSVLogger

logger = CSVLogger("logs")

trainer_kwargs = {"logger": logger}


buildInfo file Enhancement Request.

It would be useful if the "buildInfo" file contained the data/time of the build.
This would isolate this important information from the date of generating the buildInfo file which might be a significant time later.

More useful thing is VCS revision (Git commit hash), refer to getBuildInformation()

Can i get an idea on how this buildinfo file is created......how to proceed on that using getBuildInformation()

@FredFG @pranavg189 Could you take a look on #6090?
Added build info entries are available here


BCMOHAD-17925 SPC_Q16 and SPC_S16 Formulas Updated

Description
Please include a summary of the change and which issue is fixed. Please also include relevant motivation and context. List any dependencies that are required for this change.
Fixes # (issue)
Type of change

[ ] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)

List high-level changes as bullet items
Below are some examples

[ ] Changed field permissions
[ ] changed field data-type

Deployment Tracker
List all the metadata that is pushed in this commit/PR. Full URL should be fine.
Checklist:

[ ] My code follows the style guidelines of this project
[ ] I have performed a self-review of my own code
[ ] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation
[ ] My changes generate no new warnings
[ ] I have added tests that prove my fix is effective or that my feature works
[ ] New and existing unit tests pass locally with my changes
[ ] Any dependent changes have been merged and published in downstream modules

@Nikhiljeenru For the future, please update description and actions taken on each PR. I have referred back to the User Request and found this to be in line with their request, but the description should be updated for auditing purposes on the approach taken.


Update dependency on lazy-static

thanks @xitep

thank you two; is there a chance to publish this on crates.io in some near future? i'd put a dependency from kafka-rust on the new version.

Cool I'll put it up in the registry later today

thank you! :+1:

just published new version to the registry


Deleting dead link

Link to site was dead. Changed to only github

Thank you :octocat:

cc @VictorBjelkholm ipfsbin site is dead

Huh, that's unfortunate. Will look into in the future.


Deluge theme breaks linuxserver.io deluge container.

Describe the bug
No curl module for new Linuxserver Deluge alpine rebase for docker_mod.
Theme Install Method (Don't skip)
Container environment variable docker_mod=ghcr.io/gilbn/theme.park:deluge
Application Info (Don't skip)

latest
linuxserver.io/deluge:latest

To Reproduce
Steps to reproduce the behavior:

pull the linuxserver.io deluge container with tag latest
apply env variable docker_mod=ghcr.io/gilbn/theme.park:deluge
watch the fireworks and it breaks deluge

Expected behavior
It run the dockermod, download theme and apply. Instead it errors the deluge container and deluge doesn't even start.

Helps if you share the log/errors... ;)

The mod doesnt use curl

docker run -d
--name='deluge-lsio'
--net='bitchplease'
-e TZ="Europe/Berlin"
-e HOST_OS="Unraid"
-e 'DELUGE_LOGLEVEL'='error'
-e 'DOCKER_MODS'='gilbn/theme.park:deluge'
-e 'TP_SCHEME'='https'
-e 'TP_DOMAIN'='<IP_ADDRESS>:4443'
-e 'PUID'='99'
-e 'PGID'='100'
-e 'UMASK'='022'
-p '8112:8112/tcp'
-p '6881:6881/tcp'
-p '6881:6881/udp'
-v '/mnt/user/Media/Downloads/':'/downloads':'rw'
-v '/mnt/nvme/testing/deluge-lsio':'/config':'rw' 'lscr.io/linuxserver/deluge'

Works fine on latest here.
[mod-init] Curl/JQ was not found on this system for Docker mods installing
fetch http://dl-cdn.alpinelinux.org/alpine/edge/main/x86_64/APKINDEX.tar.gz
fetch http://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz
(1/2) Installing oniguruma (<IP_ADDRESS>-r0)
(2/2) Installing jq (1.6-r1)
Executing busybox-1.35.0-r7.trigger
OK: 192 MiB in 141 packages
[mod-init] Attempting to run Docker Modification Logic
[mod-init] Applying gilbn/theme.park:deluge files to container
[s6-init] making user provided files available at /var/run/s6/etc...exited 0.
[s6-init] ensuring user provided files have correct perms...exited 0.
[fix-attrs.d] applying ownership & permissions fixes...
[fix-attrs.d] done.
[cont-init.d] executing container initialization scripts...
[cont-init.d] 01-envfile: executing...
[cont-init.d] 01-envfile: exited 0.
[cont-init.d] 01-migrations: executing...
[migrations] started
[migrations] no migrations found
[cont-init.d] 01-migrations: exited 0.
[cont-init.d] 02-tamper-check: executing...
[cont-init.d] 02-tamper-check: exited 0.
[cont-init.d] 10-adduser: executing...

-------------------------------------
_ ()
| | ___ _ __
| | / __| | | / \
| | \__ \ | | | () |
|_| |___/ |_| \__/

Brought to you by linuxserver.io
-------------------------------------

To support LSIO projects visit:
https://www.linuxserver.io/donate/
-------------------------------------
GID/UID
-------------------------------------

User uid: 99
User gid: 100
-------------------------------------

[cont-init.d] 10-adduser: exited 0.
[cont-init.d] 30-config: executing...
[cont-init.d] 30-config: exited 0.
[cont-init.d] 90-custom-folders: executing...
[cont-init.d] 90-custom-folders: exited 0.
[cont-init.d] 98-themepark: executing...
---------------------------
| Deluge theme.park Mod |
---------------------------
Variables set:
'TP_DOMAIN'=<IP_ADDRESS>:4443
'TP_COMMUNITY_THEME'=
'TP_SCHEME'=https
'TP_THEME'=

No theme set, defaulting to organizr
---------------------------
| Adding the stylesheet |
---------------------------
Stylesheet set to organizr

[cont-init.d] 98-themepark: exited 0.
[cont-init.d] 99-custom-files: executing...
[custom-init] no custom files found exiting...
[cont-init.d] 99-custom-files: exited 0.
[cont-init.d] done.
[services.d] starting services
[services.d] done.
```


More advanced stopping conditions: STOPS_AT/STOPS_BEFORE with regex/lists

It would be very helpful to be able to have more advanced stopping conditions in STOPS_AT/STOPS_BEFORE. One use case for stopping conditions with lists instead of strings, is that:
argmax(chatty_openai=True, max_len=128)
   """[SENTENCE]"""
from
   "openai/text-davinci-003"
where
   STOPS_AT(SENTENCE, [".", "?", "!"])

is a lot easier than:
argmax(chatty_openai=True, max_len=128)
   """[SENTENCE]"""
from
   "openai/text-davinci-003"
where
   STOPS_AT(SENTENCE, ".") and STOPS_AT(SENTENCE, "?") and STOPS_AT(SENTENCE, "!")

For more advanced conditions based on regexes, one could look at the "calculator" example from the "tool-augmented queries". Using regexes, it would be possible to do this without few-shot examples (note that my regexes might not be exactly correct):
def calc(expr):
      expr = re.sub(r"[^0-9+\-*/().,]", "", expr)
      try:
         return eval(expr)
      except Exception:
         return ""

argmax(openai_chunksize=64, max_len=2048)
      QUESTION = "Josh decides to try flipping a house.  He buys a house for $80,000 and then puts in $50,000 in repairs.  This increased the value of the house by 150%.  How much profit did he make?"
      # prompt template
      "Q: {QUESTION}\n"
      "Let's think step by step.\n"
      for i in range(4):
         "[REASONING]"
         "[CALC]"
         if CALC.endswith("="):
            " {calc(CALC)}>>"
      # Note: the last CALC would contain the RESULT.
from
      'openai/text-davinci-003'
where
      STOPS_BEFORE(REASONING, r"^[^\d]+[\d]+$") and
      STOPS_AT(CALC, "=") and
      STOPS_BEFORE(CALC, r"^[0-9+\-*/().,]+[a-zA-Z?!\n]$")

Go ahead. Currently no-one is actively working on this.

Marking this as a good first issue to work on.
The place to start implementation is https://github.com/eth-sri/lmql/blob/main/src/lmql/ops/ops.py#L825. Relevant methods to override are:

stop to indicate the decoder whether to stop at the current token
postprocess_var/postprocess to indicate to the decoder when postprocessing is required (e.g. to truncate a token, in the middle of which a stopping expression triggered)
postprocess_order to make sure multiple stopping phrases on the same variable are resolved to the highest-priority one.

I'm working on this


[Ignore, plz] seeing what DATABASE_URI is on travis

[Current coverage][cc-pull] is 91.83%

Merging [#1910][cc-pull] into [master][cc-base-branch] will not change coverage

@@             master      #1910   diff @@
==========================================
  Files            91         91
  Lines          6377       6377
  Methods        1111       1111
  Messages          0          0
  Branches       1335       1335
==========================================
  Hits           5856       5856
  Misses          521        521
  Partials          0          0

Powered by Codecov. Last updated by [c9a138d...82b96b8][cc-compare]
[cc-base-branch]: https://codecov.io/gh/ParsePlatform/parse-server/branch/master?src=pr
[cc-compare]: https://codecov.io/gh/ParsePlatform/parse-server/compare/c9a138d9ca537d8b31e1e66ba7ed3fa6eaa11080...82b96b802a6068f23ac5fd9335b8c43d3e855963
[cc-pull]: https://codecov.io/gh/ParsePlatform/parse-server/pull/1910?src=pr


Generalise configure script to support different compilers

The compiler flags are currently hard-coded and only work with gfortran. We should change this so that the code can be compiled with the Intel Fortran compiler, for example.

The associated PR got merged.


Statics Collision are bumping Lara when they are above here if she jumps onto them

If there is a Static with large collision box, and it is above Lara and she jumps onto it, she is bumped to the beginning of the collision box.
The reference project is attached bellow, it also requires the bundled TombEngine.wad2 and some level settings must be changed to be able to reproduce the issue
static_bump_err.zip

There are also two other issues, which are not major, but may or may not be related to this, the cameras are now not following Lara properly. When she crawls with a large static above her, the camera does not follow her, even though there is room for camera to follow her. Also cameras sometimes noclip through statics, both issues are provided in the same reference project above

The issue has been fixed with the latest patch of 1.7.1


fix: Handle use of provide config from environment variables

Hi,
This is an attempt to fix the issues seen by @jackmtpt when trying to configure the provider via environment variable.
Tests are added for the error scenarios, but the warning can't be tested see this issue.
Output of warning from a manual test where the environment variable and the provider config for url were provided.
╷
│ Warning: Provider config override
│
│   with provider["registry.terraform.io/hashicorp/sonatypeiq"],
│   on provider.tf line 21, in provider "sonatypeiq":
│   21: provider "sonatypeiq" {
│
│ The provider config is overriding the environment variable `IQ_SERVER_URL`
│
│ (and one more similar warning elsewhere)
╵

close: #26

Merging to main to run Acceptance Tests


Use other delimiter for stylesheet override

I would suggest to use a different delimiter than ; for accepting multiple stylesheets, e.g.  ,
Because ; is also a command delimiter for shell so it can easily lead to command not found errors, which is not obvious and can take a while to understand the reason. e.g.
$ asciidoctor-pdf -a stylesheet=asciidoctor.css;document.css mydoc.adoc
...
bash: document.css: command not found

At least adjust the example in the readme:

The stylesheet attribute can accept multiple semi-colon delimited values (without spaces). For example -a stylesheet=asciidoctor.css;override.css. This could be used to begin with a base stylesheet and then apply supplementary content.

Hello @makon
That's a good point.
I don't recall why we chose ; as a separator with @mojavelinux. I can see that we are using , in the --require option...
Here's the upstream issue: https://github.com/asciidoctor/asciidoctor/issues/3471

At least adjust the example in the readme:

Indeed, we need to update the documentation.

Hi @Mogztter,
I can create a PR for the documentation update. I would also like to add an example for the default css stylesheet options from #104 and #105. If it's okay with you.

Sure, that would be great :+1:

Here's what we learned about delimiters for this sort of thing: https://github.com/asciidoctor/asciidoctor-pdf/issues/1250
The lesson is, you need to be flexible since different operation systems and shells have different reserved characters. Generally, a comma seems to be a safe bet.

@mojavelinux Thanks for your input.
So you don't mind if we switch from semicolon to colon:
New delimiter
-a stylesheet="asciidoctor.css,override.css"

I think you mean comma. In that case, I agree it's a good move.

I think you mean comma. In that case, I agree it's a good move.

Ooops, yes 👍

@makon I think we should support both and add a deprecation warning, what do you think? I don't want to introduce a breaking change even if we are still in beta and it's pretty straightforward to add backward compatibility.


Realsense viewer and librealsense failing with "failed to convert special folder: errno=42"

Required Info

Camera Model
Does not matter

Firmware Version
Does not matter

Operating System & Version
Windows 10

Platform
PC

SDK Version
<IP_ADDRESS>11

Language
C++/viewer

Segment
all

Source of error is this line:
https://github.com/IntelRealSense/librealsense/blob/e1688cc318457f7dd57abcdbedd3398062db3009/third-party/rsutils/src/special-folder.cpp#L81
wcstombs_s returns value 42 which is EILSEQ i.e. it fails to convert wide string to multibyte string.
There are numerous issues closed with this but nobody dug down to the source. It seems that this only happens if your username has unicode characters.

Hi @warmist  Have you visited the advice about the errno=42 error at https://github.com/IntelRealSense/librealsense/issues/13037 please?
https://github.com/IntelRealSense/librealsense/issues/13457#issuecomment-2432900837 has instructions for finding on a Windows computer and deleting the realsense-config.json configuration file mentioned in that link.

Hi @MartyG-RealSense. Thanks for answering.
Yes, i've seen both of them. Also i've looked into all the duplicates.
#13037 does not apply because "problem due to an uninitialized json variable" cannot happen as it's before file loading. It's an error when resolving (and transforming) the path to appdata folder. There is no "realsense-config.json" file anywhere in appdata (also related: apps shouldn't write to appdata and should create a folder).
https://github.com/IntelRealSense/librealsense/issues/13457#issuecomment-2432900837 yes, i've looked into hidden files as well. Also you can access the folder faster if you type "%appdata%" into explorer path (i.e. the part where it has "C:\etc...")
I'll try to setup a minimal repro as i feel this issue might be hard to reproduce without setting up a windows machine with username with unicode chars in it.

Here is minimal reproduction: https://gist.github.com/warmist/e0b1927387864566db2804c50d0cf512
In my environment wcstombs_s fails with error=42. Content of path:

(see unicode letter in path)

Further research shows that wcstombs_s uses current locale and current locale is "en-us" and fails to convert unicode character. It should use _wcstombs_s_l with new locale (i.e. _create_locale(LC_ALL,"");)

I had a discussion with my Intel RealSense colleagues about the 'failed to convert special folder: errno=42' error earlier in 2024, so I will follow up on it and pass your kindly provided information to them for their consideration.

Hi @warmist  Do you require further assistance with this case, please?  Thanks!

Hi @warmist Do you require further assistance with this case, please? Thanks!

Thank you for asking. I don't need assistance, however i wonder if (and when) this will be fixed?

I have sent a follow-up message to my Intel RealSense colleagues about this issue.

My Intel RealSense colleagues have provided some further advice about the errno=42 error.
Given that the problem seems to be related to certain charcters being used in a Windows user account name, I asked whether creating a secondary Windows user account with a name that has no special characters might help.  This was their response.

You can try to run it as Administrator instead of switching the account.  On Windows 11, it also has a feature to run the app as a different user.  That option can be enabled with the instructions at the link below:
https://winaero.com/how-to-run-apps-as-different-user-in-windows-11/

@MartyG-RealSense Thank you for the reply.
Sadly we cannot do that as we are using realsense as a lib and we cannot ask users of your software to create secondary accounts or run as administrator. Also running programs as adminstrator on windows does not change the appdata folder as it still uses same c:\users\<username>\AppData\Roaming folder. You can test that by running a commandline as admin and typing echo %appdata%

Hi,
We will add this issue to our backlog,
If you find a quick solution and needs it ASAP, feel free to contribute with a PR :)
I will update once we get to it

@Nir-Az Thanks. I will do a PR if we fix it for ourselves before you get to it.

@warmist Fixed on PR #13597 by @AviaAv
You are welcome to try it out and update :)


Move the class in its own file and other major changes

Ok, I'll try to summarize the changes I've made. Note that the code is NOT in a working state because of plugins (see the commented line in the init() function). The plugins will need to be updated. I just wanted to make the PR now, otherwise it'll be too big afterwards. No need to change everything in one go. Incremental changes are easier to deal with.
The Wcms class
Moving the Wcms class to its own file
PHP files should not declare symbols (like a class) and also execute logic with side effects. So I moved the Wcms class into src/classes/Wcms.php. This makes the index.php file much smaller, and only doing what it's supposed to do: init() and render().
Note that I've had to "globalize" the class instance into the other files in themes (instead of spawning a new instance), I'll work on that later (the global keyword should not be used in a properly architected software). I had to workaround the particularities of Wcms :)
Removing all the static stuff
As a lot of users on Reddit told you, having all your methods static is not particularly a good idea. Now, the class needs to be instanciated (with the new keyword), and it has state. This has several advantages. For instance, when you instantiate it, it reads the database and stores it in a property (see the call to getDb() in the constructor). The property can be accessed by other functions ($this->db). This means that the database file is read only once per request -> improved performance. I've also cleaned up the function names and reorganized some things. Example: when calling "getDb()", if the database is not here, it creates it. Read the code, you'll see that most changes make the code flow more logical and better encapsulated: when calling getDb, I want the db, I don't care if it exists or not, I just want the db. It's the role of getDb to create it first if it doesn't exist, not the caller code.
Fixing the private/public
A private method can only be called from within the class. A public method can be called by a template or a plugin. This also has the added benefit of providing insight to other devs on the purpose of the function. And when editing a private function, you can be sure that it will not break anything outside because it CANNOT be called from outside. This adds a sort of "interface" to the software, where external devs/plugins know what methods can be called. Of course a proper interface would be nice to have, maybe later. It would allow plugin developers to have some sort of guidance on what must be implemented.
Misc
Right now there is still one single big class, as I didn't feel the need to split it. But in the future, it would be better to split it, to improve readability and maintainability. For instance, the backup stuff could move to its own class, as it's not really related to the rest of the software.
I think I broke the summernote stuff and maybe other things, please test on your side and report any issue. As I said, the code is not in a 100% working state, but one has to start somewhere. At least the basic functions are working afaik. And the backup is working as you requested: it backups the whole folder.
Composer
Composer is now required to download PHP dependencies and put them in the vendor folder, that is not tracked by git. What this means is:

for installation with git, users will need to install composer and run composer install before being able to use it
for the zip install, you will need to have a script generating a zip with all the required files in there, and that's the zip that users will download and put on their server for an out-of-the-box experience. Basically, the script will just install composer and run composer install, and create a zip, nothing complicated to do. Maybe create a "wondercms-builder" repo and add me as contributor, I'll add the script.

Note that it would be nice also to remove the minified files (js and css) from git, to avoid them polluting the "git grep" command (very useful command), and also because git should only track source files, not "compiled" files. Installs from git would then mean having to also install "yarn" and run "yarn install && grunt". And this step should also be in the script for the zip archive.
Advantages
Makes the code cleaner by using a library for common things. Right now it's pretty basic (only used once in the code), but in the future the same library (http-foundation) can be used for more (file uploads, session handing, get/post stuff). This library is has "foundation" in the name for a reason: it deals with basic stuff so you don't have to deal with it. Also, when doing composer install, composer will take care of checking the PHP version and the installed extensions. See the composer.json file.
PSR-4 autoloading: the classes (or just the class now) can be automatically loaded with the PSR-4 standard. So if one day you decide to expand the capabilities of the software, you can do so very easily by adding a class in the src/classes folder and it'll work immediatly.
Disadvantages
Need a step to install the vendor dir. But this is common to ALL PHP apps, so not really something crazy to do ;)
Assets
I moved the source files for JS and CSS to src/js and src/css as that's where one would expect to find them. The minified files are still generated in the assets folder.
Namespacing
The software is in the Robiso\Wondercms namespace. This is good practice, it makes the wcms code encapsulated in its world.
Static analysis
Now that the codebase starts to look like something decent, static analyzers can be used to spot bugs. As I've mentionned before, I was able to suppress almost all errors and warnings given by different tools. I recommend creating an account on scrutinizer-ci.com and setting up automated analysis on the dev branch. It's really useful, you'll see. It helps catch bugs that are obvious for a software, much less for a human. Automated testing is really something great to have. We're still far from it but at least now there is the basis for getting there. Before it was just impossible. (example)
The psalm.xml file is the configuration file for psalm, a must have tool. Ideally, new contributions to the code should not increase the number of errors found by psalm or phpstan or phpcs etc...
General changes
It's hard to tell about all the little things that I changed because of the file move, the git diff is not very useful. But for instance, the backup code.
The function needed to be called with a source and destination. But the arguments were always the same. So I moved all the logic inside the function. So one just needs to call it and not have to think about anything else. It's always better to have functions without arguments. Look at the before and after. See how it has less indentation? It's always better to aim for "flat" functions (without too much ifs and such). Also, error handing improved, see below (exceptions).
Uniqid:
uniqid() is deprecated (or will be) see https://wiki.php.net/rfc/deprecate-uniqid, so I replaced it with random_bytes, now that we are on PHP 7.1, we should use the better functions!
Antislashes:
You'll see that some functions are called with an antislash in front of it. This is because PHP first tries to see if the function exists in the current namespace, before searching for it elsewhere. This instructs PHP to directly get it from the root namespace. It makes the generated bytecode faster. It's not really noticeable of course, like all the microoptimizations in PHP, but it's there.
Exceptions:
You might see that some functions are throwing the generic \Exception. Throwing exception is very convenient. It allows to stop the code execution and to continue it in the "catch" block. So for instance if we go back to the zipBackup function: before, if there was an error, it was supposed to return false. But the code calling it was only doing something if the result was true, so if you had an error, there was no way to know what it was. Now the index.php file calls the functions in a try catch block, and can display the specific error to the user instead of failing silently. Again, I've just began with it, but in the future, having custom exceptions will be even better, you'll see (yes I'm teasing :p). Exceptions will allow a much cleaner a robust code, it really is the way to go when dealing with errors that should stop execution of the code. Right now the index.php file is just displaying the error, but we can think of having a generic error page, and display the error message on this page. For instance, the page not found error could be a PageNotFoundException, and the catch block would catch this specific exception and send the 404 status code and display the 404 error page. As you see, it allows a nice granular handling of errors. And this can be done very cleanly with the same http-foundation library. I've only added one dependency to the code, but it's a really useful one!
I think I'll stop here for the explanations. Please read the code and familiarize yourself with it. Once you get the "gist of it", you'll find that hacking on wondercms has become much more easier ;)
Also, at this point I think it would make sense to add me as a collaborator on this repo. I will not be able to push on the master branch, and I'll keep creating branches and making merge requests on the dev branch for you to review, but it'll save me from maintaining a fork ;)
Typing all of the above gave me strong incentive to continue improving Wcms (like adding custom exceptions). But I'll wait for you to accept these changes first, so we can get better commit diffs.
I wanted to make the PR before forgetting about all the changes I made two weeks ago…

Ah also I move the db in the data folder. The goal will be to have the uploaded files here to, so the docker image can properly work with a normal volume folder (instead of the root folder). And it'll allow to have only this folder writeable by the server (and maybe the plugins folder too). This is better in term of security of the app. Note: this means a change to the configuration to prevent direct access to the db.
As I said, there are still things to be done in terms of upgrading from v2 to v3 but each in its own time.
Note: you should squash the commits when merging so it all appears as one clean commit in the history of the dev branch.

Awesome changes @NicolasCARPi, kudos! 👏 🏆
Thank you for the great comments and explanation. I welcome myself to the PHP of 2019!
Since you've basically rewritten the whole app in a "2019 way", I'll be adding you to the WonderCMS about page with the release of 3.0.0. Please count me in as your fan! :)
I'm more than happy to have you on board as a collaborator (added). Important note: please be careful not to push changes to the master branch (or the master version file), as that will initiate a "WonderCMS update" notification for users. Users who are updating today from 2.5.0 to 2.6.0 are still getting the files fetched from the master branch.
I also created the wondercms-builder and added you there also as a collaborator.

I recommend creating an account on scrutinizer-ci.com and setting up automated analysis on the dev branch. It's really useful, you'll see. It helps catch bugs that are obvious for a software, much less for a human. Automated testing is really something great to have. We're still far from it but at least now there is the basis for getting there. Before it was just impossible.

Please let me know when the time has come for this and I will set up an account.

Note: you should squash the commits when merging so it all appears as one clean commit in the history of the dev branch.

I don't think I've ever squashed before. Just to confirm, does that mean I check and accept them one by one instead of the whole batch of changes like usually?

for the zip install, you will need to have a script generating a zip with all the required files in there, and that's the zip that users will download and put on their server for an out-of-the-box experience. Basically, the script will just install composer and run composer install, and create a zip, nothing complicated to do. Maybe create a "wondercms-builder" repo and add me as contributor, I'll add the script.

Is it possible to ask you for any additional instructions on this? I would like to test these changes as the end user (unzip and upload), and I'm not entirely sure what should be currently done. Where will this ZIP file be generated in the end? Will it be possible to continuously create ZIP files for each new version of WonderCMS for the "unzip and upload" functionality?
Let me know and I'll get to testing the 3.0.0 version and report back.
Bonus question:
Maybe it's to soon to ask, but how will the updating process work for users upgrading from 3.0.0 and onwards? I see the "updateAction" function still being present and has the index.php overwriting functionality, but in this case I guess it would be better to update the Wcms.php file instead of the index.php.

Typing all of the above gave me strong incentive to continue improving Wcms (like adding custom exceptions). But I'll wait for you to accept these changes first, so we can get better commit diffs.

On the Merge pull request button, click the down arrow and select "Squash and merge".

Is it possible to ask you for any additional instructions on this?

I'll add it to wondercms-builder repo.

Where will this ZIP file be generated in the end?

On your server. But it could also be generated on a third party service (like travis-ci or something).

Will it be possible to continuously create ZIP files for each new version of WonderCMS for the "unzip and upload" functionality?

Yes, even for each commit, with automated testing everytime. This is called CI (continuous integration).

Maybe it's to soon to ask, but how will the updating process work for users upgrading from 3.0.0 and onwards? I see the "updateAction" function still being present and has the index.php overwriting functionality, but in this case I guess it would be better to update the Wcms.php file instead of the index.php. I would really, really like to retain some sort of update functionality for the novice users.

Yes, it'll need to be adapted to also get the newest version of the other needed files. But as I said before, even if I agree that having this functionality is nice, it might prove tricky to implement. Imagine there is a new file to download: old code won't know about it. A workaround would be to fetch a file with the necessary files to download (and their sha1sum), so something like a manifest file, and get them and replace them on the server. This would also allow proper handling of the update process, with error throwing if there was an issue downloading a file (shit happens). Note that this update process means that ALL files need to be writeable by the server process. Something that can be considered bad practice. But if you chose to keep this functionality, it can be implemented easily. I'm thinking, the code could even download the latest version as zip, and unpack it itself, instead of having to maintain a list of files, it would just get the latest "built" zip from wondercms.com/latest.zip and unpack the files, that is better!

That's ok, it's quite enjoyable to hack on it :)

I'm thinking, the code could even download the latest version as zip, and unpack it itself, instead of having to maintain a list of files, it would just get the latest "built" zip from wondercms.com/latest.zip and unpack the files, that is better!

This sounds justifiable and absolutely brilliant!

Note that it would be nice also to remove the minified files (js and css) from git

I've seem to forgot to reply to this, do you want me to remove the minified files on the dev branch? Is there any way I can give you additional access to remove the files you deem necessary?
Thanks for all the answers, squashed away. 👍
/nightowl reporting out, thanks again for investing yourself on this project!
Please let me know if there's any services I can sign up for immediately if they make your(our) lives easier.

do you want me to remove the minified files on the dev branch?

Nah I'll do it in the next PR.

Please let me know if there's any services I can sign up for immediately

I think you can start with scrutinizer-ci.com. https://insight.symfony.com/ is also good.

@NicolasCARPi, is circle-ci any different than any of those you've mentioned in terms of functionality?

Yeah, it's a bit different. I'd say starting with scrutinizer is great because it runs code analysis + the tests, on each commit. Circle-ci requires a bit more configuration, and would not be useful right now as there are no tests.

BTW: I've created the build script: https://github.com/robiso/wondercms-builder
It only takes the necessary files after "building" them.
The next steps would be to git clone the repo on your server, and install a webhook so that each commit on dev branch creates a latest-dev.zip and each commit on master branch creates a latest.zip archive. What I just said needs some adjustements to the script because right now it's only taking from the dev branch.

@NicolasCARPi, signed up with scrutinizer. I've also sent it to your email in case you need to use this for your personal projects. I set the dev branch as the main one, is that ok?
I've already tried to create a pull request for a couple patches (just some spaces).
The is one more huge spacing change, but didn't seem necessary and I'll leave the choice up to you, the original scrutinizer. :)
Once we've got everything ready, I would suggest switching over to Travis or Circle CI if possible, they seem cheaper and more popular (https://stackshare.io/stackups/circleci-vs-scrutinizer-vs-travis-ci), albeit scrutinizer seems really easy.

The next steps would be to git clone the repo on your server, and install a webhook so that each commit on dev branch creates a latest-dev.zip and each commit on master branch creates a latest.zip archive. What I just said needs some adjustements to the script because right now it's only taking from the dev branch.

I might need some of your help with this when/if you'll have the time.

scrutinizer is free for open source projects, so don't worry about pricing! But I see you merged a patch that changed all spaces back to tabs!!! You might want to revert that!

@NicolasCARPi, I noticed in the settings it was set to tab indentation, I've changed it to spaces to keep up to the defined standards.
No suggested changes coming from scrutinizer any more!

Also, I see you removed the concatenation spaces. It's a matter of taste but I think it's more readable with spaces around it.
Here is my scrutinizer config:
filter:
    excluded_paths:
        - 'vendor/*'
checks:
    php:
        simplify_boolean_return: true
        return_doc_comments: true
        return_doc_comment_if_not_inferrable: true
        remove_extra_empty_lines: true
        properties_in_camelcaps: true
        parameters_in_camelcaps: true
        parameter_doc_comments: true
        param_doc_comment_if_not_inferrable: true
        no_goto: true
        more_specific_types_in_doc_comments: true
        fix_line_ending: true
        symfony_request_injection: false
        no_exit: false
coding_style:
    php:
        spaces:
            around_operators:
                concatenation: true
build:
    environment:
        php:
            version: 7.1
    nodes:
        tests: true
        analysis:
            tests:
                override:
                    -
                        command: phpcs-run
                        use_website_config: true
                    - php-scrutinizer-run

Oh I see I have access to the settings from scrutinizer-ci. But I'll let you change that.

Seems like the order of your config is different than mine. Can you post your whole config?

The order is not really important, only the indentation. Here is the full config:
filter:
    excluded_paths:
        - 'vendor/*'
        - 'tests/*'
checks:
    php:
        simplify_boolean_return: true
        return_doc_comments: true
        return_doc_comment_if_not_inferrable: true
        remove_extra_empty_lines: true
        properties_in_camelcaps: true
        parameters_in_camelcaps: true
        parameter_doc_comments: true
        param_doc_comment_if_not_inferrable: true
        no_goto: true
        more_specific_types_in_doc_comments: true
        fix_line_ending: true
        symfony_request_injection: false
        no_exit: false
coding_style:
    php:
        spaces:
            around_operators:
                concatenation: true
build:
    environment:
        php:
            version: 7.1
    tests:
        before:
            - 'true;#sed -ie "s/BeUsed = \[\]/BeUsed = \[\], \$ignoreForceCoversAnnotation = false/" /home/scrutinizer/build/vendor/codeception/codeception/src/Codeception/Coverage/DummyCodeCoverage.php'
        override:
            -
                command: 'vendor/codeception/codeception/codecept run --skip acceptance --coverage --coverage-xml'
                coverage:
                    file: 'tests/_output/coverage.xml'
                    format: 'clover'
    dependencies:
        before:
            - mysql -uroot -e "create database phpunit;"
            - mysql -uroot phpunit < src/sql/structure.sql
            - mysql -uroot phpunit < tests/_data/phpunit.sql
            - sudo apt-get update
            - sudo apt-get install -y graphicsmagick-libmagick-dev-compat
            - yes|pecl install gmagick-2.0.4RC1
            - nvm use stable
    nodes:
        tests: true
        analysis:
            tests:
                override:
                    -
                        command: phpcs-run
                        use_website_config: true
                    - php-scrutinizer-run

Saved and re-running. Hope this fixes the tabs. :)

@NicolasCARPi, as far as I can tell, there are no more tabs and the concatenation is back.
Cheers. 🎉

Yep, I was able to make the PR on exceptions :)

@NicolasCARPi, would you please share some instructions on how I can give the latest dev version a test spin on my server? :)

@robiso If you just git clone the dev branch, create a data folder with permissions for the server user to write to it, it should be enough.

@NicolasCARPi, managed to get it working (I was also missing composer).
Will get to fixing the plugins, thanks for the help, once again!

@NicolasCARPi, noticed an issue in Settings->General when moving a page "up" or "down" in a menu, it overwrites the values.
For example, we have 2 pages:

Home
Example
When I click "up" (to move the Example page above Home), both pages become Example.

@NicolasCARPi, to keep you posted:

I'm almost half way done with all the themes.
I've created a simple kanban board: https://github.com/robiso/wondercms/projects/3 (let me know if you'd like to add anything).


Add M1/aarch64 dev support

#18614
Testing plan:
Ran
vagrant destroy
vagrant up --provider=docker

on my M1 Mac. The developer environment is setup without any errors.

@gilbertbw thanks for working on this!  These changes both look good to me, and I'd be happy to merge them.
(Not doing so now since you have this marked "WIP", and it's ambiguous whether that means these commits aren't ready or you're planning to add more commits).

install-shfmt also needs to be updated, right?

Yeah, I have updatedinstall-shfmt. I didn't notice as it appears the amd64 version actually runs OK!
This is ready for review again.

Fix formatting of install-shfmt, picked up by shfmt!

Looks good. Do we want to recommend Docker for all Mac users these days? We had one report that it’s “a much better experience, performance-wise, compared to VirtualBox”, and it would simplify the documentation.

Yeah, I'm fine with doing that.

Merged, thanks @gilbertbw and @andersk!
I think it's probably useful to keep the Virtualbox documentation around, maybe with a "We also support virtualbox on Intel Macs" type text somewhere.


Separate Installation instructions into sections

To make it easier to read, let's split the installation guide into multiple sections for different platforms: Linux, Mac, Windows.

I think it would be closed by #659

Closed by #659


Update book with examples of how to use serializers, deserializers, and contexts

The right way to implement Serialize and CheckBytes when you need specialized writers and contexts is not immediately obvious. Getting sections in the book with examples would help clear it up a lot.

Fixed by 36aa1274c492a73a328ff6ae5a93056ab27bc315

Fixed by 36aa1274c492a73a328ff6ae5a93056ab27bc315


Documentation: minor documentation changes

Updated coreos versions
Added code for copying certificates for later use to ~/.matchbox/
Updated matchbox example host within docker run command

Can you drop the Container Linux version change part? The rest is good, thanks!
We have a (oh so beautiful) sed process that bumps the Container Linux version throughout the project that we run every so often. Its important that the examples and docs all match up so no newcomer caches the wrong version and is confused when the tutorial doesn't work.

@dghubble i just deleted the version changes from my commit. The oh so beautiful sed can do it's work right now ;)


pull request for e2e test at 12/19/2016 07:45:19

:white_check_mark: Validation status: passed
For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.


'Type aliases can be used only in a .ts file' error popping up in Flow enabled files

VSCode Version:
1.7.1
OS Version:
Ubuntu 16

Steps to Reproduce:
Create a .js file and add the following code in it(the file will be processed by Flowtype):
// @flow
type LogActionsType = { type: 'NEW_LOG', payload: Array<Object> } | { type: 'LOGS_PUSHED', payload: null };
export type LogType = Object

Whenever I define a type alias the error 'Type aliases can be used only in a .ts file'  keeps showing up and is highlighed in the 'Problems' panel.
Is there any way to disable typescript ? Or prevent this kind of validation of running ?

Got the same issue:

VSCode Version: Code 1.7.1 (02611b40b24c9df2726ad8b33f5ef5f67ac30b44, 2016-11-03T13:46:00.226Z)
OS Version: Darwin x64 15.6.0

// @Flow annotation at top of file.
and javascript.validate.enable": false in my Workspace settings.
Error highlighted:
[js] 'types' can only be used in a .ts file.
[Flow]
string: (object: Object) => Array<string>

Confirmed on latest bits. Moving to TS Server repo.

This issue was moved to Microsoft/TypeScript#12186

Reopening here. The suggestion from TS team recommends this be handled on VS Code's side.
The recommendation is for VS Code to check to see the Flow annotation and not pass it on to the TS Server.
@dbaeumer this looks like something we should look into soon as it can be a poor experience for flow users.

@waderyan this should not go into the TS extension. We shouldn't parse the first line. There are two ways to deal with this:

users disable JS validation using javascript.validate.enable": false
users install a flow extension which add  flow language mode. Then these files will not be synced over to the tsserver.

I tested that if I set javascript.validate.enable": false that the error is not shown.

@waderyan recommend to close.

I still got this error with Flow 0.40 using VSCode 1.10.2.

I still get this error even if I disable the option and restart VS Code..

I still got this error with Flow 0.40 using VSCode 1.10.2.

I still got this issue with VSCode 1.13.1.
After restarting VSCode, the issue is going away. But it's only a matter of time before it comes back. I find myself having to restart VSCode at least once per hour, which is quite annoying.
I've got javascript.validate.enable set to false.

I was able to resolve by:

Set javascript.validate.enable to false
Moved .flowconfig from my src dir to the workspace root
Hope this helps.

I am also still getting this error. I have the .flowconfig in my root and set javascript.validate.enable to false. Any troubleshooting steps would be appreciated.

I'm on vscode Version 1.14.2 (1.14.2) and flow ^0.42.0

Maybe this will be helpful for someone, ... what I did (i think) to finally get ts to stop was adding .tsconfig
{
    "compilerOptions": {
        "module": "system",
        "noImplicitAny": true,
        "removeComments": true,
        "preserveConstEnums": true,
        "outFile": "../../built/local/tsc.js",
        "sourceMap": true
    },
    "include": [
    ],
    "exclude": [
        "**/*.js"
        "node_modules",
    ]
}

@foobar8675 the problem is still there:

I writed this file: ".tsconfig" in root folder (tried also in just "./src" folder), reloaded VSCode and still the problem.
.tsconfig:
{
  "compilerOptions": {
    "module": "system",
    "noImplicitAny": true,
    "removeComments": true,
    "preserveConstEnums": true,
    "outFile": "../../built/local/tsc.js",
    "sourceMap": true
  },
  "include": [],
  "exclude": ["**/*.js", "node_modules"]
}

@johnunclesam sorry, i have no idea what the issue is then.


[EPIC] Permissions (refactor?)

The permission system currently uses a mixture of stock Django permissions, a self-written role-mapping engine and a ownership model for stock. This is not well documented and the behaviour is not consistent - making it harder to understand/predict.
There are a few issues regarding permissions, some quite old
### Related issues
- [ ] https://github.com/inventree/InvenTree/issues/7446
- [ ] https://github.com/inventree/InvenTree/issues/7003
- [ ] https://github.com/inventree/InvenTree/issues/2323
- [ ] https://github.com/inventree/InvenTree/issues/5755
- [ ] https://github.com/inventree/InvenTree/issues/4022

Requirements
TODO: Categorize in needed / good to habe
Requirements for the overhaul:

Interoperable (additional to) with Djangos default system
Using existing fine-grained control patterns (Tree per Location -> Part -> Stock items)
API-enforced and auto-documented
Generic / pluggable so plugins can use the same systems (maybe with a permission register?)
Extendable with per-model actions (ie. allocate stock, count stock, create revision, ship order but not change it)
Integrate well with (LDAP/SSO synced) groups and be transparent to users

User stories
TBD
Feel free to submit your user stories / requirements / issues here - I will update / remove points as consensus is reached on them.

I think it would be pretty helpful, if we could assign some users only permissions to:

CRUD parts (including SP, MP, ...) from a specific category (and their nested children categories)
CRUD locations (including stock items) only from a specific location (and their nested children locations)
CRUD only specific companies, BOMs ... maybe here it would be helpful to create different "profiles" which can be assigned to a user, and to some models like BOMs, Companies, ...

This would be helpful to my personal inventree instance which I use for my electronics hobby, to add a separate profile for my family so we can manage our cellar, garage, ... too, without them having appearing my electronics inventory when they search for something they have in their garage. I could just run two inventree instances, but 1. this costs double RAM, CPU, ... and 2. I have to use two different logins.
As well, this could also be useful for business who have different departments: manufacturing, selling, .. different categories of products. Where the employees should not be able to mess with the parts, locations in other departments.

I think it would also be nice be bind this somehow to projects.

Assign users to projects
Assign parts/stock whatever to projects

Everyone in the project gets access to every item in the project. User groups already exist and can be used.

Additional consideration: with the upcoming "lock part" feature, it would be a good idea to control who can lock / unlock a part. Maybe part "ownership" (either of individual parts or part categories) could come into play here.

Coming from #7718, here are my user stories from working in a university with different research groups/projects who would like to share a common Inventree instance:

As an admin:

I want to assign one or multiple groups/projects to users so that different kind of stocks can be represented (e.g. common stock, group stock, per-project stock).
I want to select whether group/project items will be visible to other groups/projects to reflect different levels of sharing/not sharing Stock.

As a user:

I want to be able to assign a group/project (that I belong to) to every item of every level (Parts, StockItems, BuildOrders, PurchaseOrders, ..) so that different ways of working together can be represented
I want to set default groups/projects for newly created items per level so that accidentally forgetting group/project assignment and general amount of work is minimized.

@wieselukas would you use case-required organisations (similar to GitHub/Gitlab with restricted visibility teams/groups below) or would globally visible groups be enough?
I am unsure if project codes are the right device to control Inventree-wide permissions as they represent simple 1:many FK relations (you basically would have to assign every stockitem, part, BO, PO, SO on it's own to the projectcode)

I don't have much experience with github/lab groups but globally visible groups would be totally fine for me.
I like the idea of assigning it per stockitem, part, BO, PO, SO individually as it would allow for different use-cases. E.g. the current stock ownership feature could still be reflected when only assigning projects/groups to stock items.
To not make this a manual effort this could either be done through per-user/per-type defaults (type being: stockitem, part, BO, PO, SO) and the possibility to assign project groups to a selection of items. Another, and maybe the better, option would be to link it to a category for parts and stock location for stockitems, while automatically assigning the same project/group to subcategories/locations. To do it manually for BO, PO and SO would be fine for me.
Another case for "project codes" would be that for an admin moving stockitems, parts, BOs, POs, SOs between projects/group would just be a matter of changing the project codes for these items.

@SergeoLacruz  @wieselukas
I would like to scope this in the next few months to get an actionable list of tasks assigned to epic. Would you / a college be willing to jump on a call to discuss ideas? This is not going to happen fast but I would like to write down a possible plan for after 1.0 so we know what parts might change in the mid-term.
If you are interested feel free to drop me an email.

Sorry for the late reply. I would also be available for a call. During the week 9-10am or 5-9pm UTC would mostly work I guess


(docs) update README.md

Impressive work! I am looking forward to playing around with this.
However, reading the README from the CLI was difficult due to multiple issues. Proposed are fixes.

Fix spelling/grammar
Fix spacing
Use proper markdown formatting

@victordibia I think these are valuable edits because they improve readability.

@victordibia I think these are valuable edits because they improve readability.


npm start --debug keeps restarting

Hi trying to run it on mac and following the blog
My node version is 7
No error encountered during the setup run. aiva-development.log is empty.
[ ------- Starting on local machine, not Docker ------- ]

><EMAIL_ADDRESS>development /Users/rusty/codes/aiva
> mkdir -p ./logs; NODE_ENV=development ./node_modules/forever/bin/forever --minUptime=1000 --spinSleepTime=1000 --killSignal=SIGTERM --uid aiva-development -m 10 -a index.js | tee ./logs/aiva-development.log

[Tue Jan 24 2017 06:53:01 GMT+0000 (UTC)] ERROR
[Tue Jan 24 2017 06:53:01 GMT+0000 (UTC)] ERROR
error: Forever detected script exited with code: 0
error: Script restart attempt #1

Try reading through https://github.com/kengz/aiva/issues/21


Event Source Round

based on: https://github.com/zkSNACKs/WalletWasabi/issues/6784
and David's implementation: https://github.com/molnard/WalletWasabi/tree/eventsourcing

[ ] Implement and use #8 first


Scroll on html instead of .app.

We scroll on html instead of .app. This introduces three major issues:

All our offset values have $("html").scrollTop() added to them, and $element.position() values will change for some elements too. This is addressed in the first commit.
empty hash # scrolls to top of the feed. To address this, we avoid setting empty hash via JS in any case. If user types in <org url>/# then we will scroll to top but just <org url>/ will work fine.
Messages scroll when overlays/modal is active. When user scrolls, we instantly scrollback to the previously scrolled position if there is an overlay/modal active. This seems to fix the issue without any visual bugs.

I went through the code and gave it a manual test. Everything seems to be working fine. Although I might not fully grasp the context of the changes, I'd like to share my thoughts:

The way sticky_message_header_styles is dynamically populated looks a bit unusual to me. I haven't come across something like this before. I'm wondering if there's a simpler way to accomplish this or if there's a specific reason why a simpler approach wasn't feasible.

When user scrolls, we instantly scrollback to the previously scrolled position if there is an overlay/modal active. This seems to fix the issue without any visual bugs.

I noticed that it attempts to scroll and then reverts back. The scroll also showing the scrollbar.

Yeah, I agree with you. I am not sure we can do better here though.

Regarding the issues @shameondev has raised:

Instead of the #sticky_message_header_styles <style> element, could you not just use JavaScript to update the CSS variable --header-height that's referenced on .message_header near line 1277 in zulip.css?

For the scrolling behavior in Safari, which I too can replicate, could we use the show-modal logic (I'd need to track down the function) to set overflow: hidden on html when the modal is showing? I would think that would stop scrolling everywhere.

I played around with the PR in Chrome on a Mac (default scrollbar settings) and didn't see any issues.

Small bug: if I’m on <org url>/ (no hash), then I go into Display settings and change Default view from Recent conversations to All messages and close settings, the recent conversations view is still displayed but the URL becomes <org url>/#all_messages.

Small bug: if I’m on / (no hash), then I go into Display settings and change Default view from Recent conversations to All messages and close settings, the recent conversations view is still displayed but the URL becomes /#all_messages.

Fixed.

Test-deploying this on chat.zulip.org, thanks for all the effort on this folks!

Updating the deployment on chat.zulip.org.

Updating the deployment on chat.zulip.org.

I pushed back here with the changes suggested above as not for a follow-up, including dropping the commit discussed in https://github.com/zulip/zulip/pull/25697#pullrequestreview-1442807183.
With these changes, this lgtm. I expect we'll probably find a couple more bugs after today, but I suspect not major ones, and I think we're at the point in the development of this where we're best off having it in main so we can get passive testing in development environments to.
Huge thanks to @amanagr and everyone else who's pitched in to get this into working shape to unblock the 7.0 release.


Issue Template Updates for Figma link

Current Behavior
The project's current issue templates are missing an open invitation link where new contributors can join the community's Figma team and view user interface designs and other UX projects.
Desired Behavior
Each template that has a reference to Figma in its resources section should an invite link added.
Implementation
In each issue template that refers to Figma, replace the current line referring to Figma with this line:
- 🎨 Wireframes and [designs for Meshery UI](https://www.figma.com/file/SMP3zxOjZztdOLtgN4dS2W/Meshery-UI) in Figma [(open invite)](https://www.figma.com/team_invite/redeem/qJy1c95qirjgWQODApilR9)

Acceptance Tests

All references to Figma include the "open invite" link.

Contributor Guides and Resources

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

Meshery documentation site and source

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

Hi @leecalcote I would like to contribute on this. Can i please get assigned to this?

@leecalcote I can work on this as well.

Hi @leecalcote, I think this one is fixed and require review. #293

Closing as completed via #293


Adds the endpoint to obtain a product list report of the chosen products by id

The sonar analysis is failed, no test coverage :(


Fix transmittance default value in as_glass

Increases the default transmittance value for Glass from 80% to more realistic 99% (see Figure below, From Shott TIE-35: Transmittance of optical glass)

Did you check if other places need updating too? I'm thinking about the default values for the glass BSDF, and other similar shaders.


avoid string concat

i think it will reduce mem use a lot if we just .slice() from start to end and do a .replaceAll() to remove the escaped commas or quotes. not sure this can work for incremental parsing but probably. think this will increase overall perf as well since mem alloc / GC is the slowest thing in JS.

this actually lost some perf. i was able to get some of it back, but not all. net loss it maybe up to 10%, depending on corpus.
in Node/V8 it's a small improvement in mem, but in Bun/JSC it's a huge mem reduction (>50%).


Utilities for hard errors?

Exceptions are evil, sure, but it's good to have good errors when you make programming mistakes that the compiler can't catch. I wrote some helpers to do this—https://github.com/jml/pretty-error/—but I think they'd be better placed in a library like this one.
Would you consider adding such functions to errors?
PS. I really love this package, thank you for maintaining it.

This library avoids exporting partial functions, so I can't accept these.  Sorry  :(
I appreciate the request, though, and if I were you I would consider submitting these to the safe library which does provide partial assert-style functions

Thanks!


Its not working for Compact Prompt Layout of A1111

Textual Inversion Panel: (The prompt shows on right)

Lora Panel: (The positive prompt shows on right and negative prompt on left)

Checkpoint Panel: (Checkpoint Panel seems correctly)

Its not working for Compact Prompt Layout of A1111
Excellent extension btw i was waiting for a extension like this for a long time, i will be very thankful if you adapt to Compact Prompt Layout. When you turn it on the prompt box and negative prompt moves the location for the wrong side.
Edit: i think this can be because of how the A1111 Extra Networks tab works with Compact Prompt Layout, they move the prompt when you click on Lora. I'm not sure now if you guys can do something on this, i hope so.

Thats how the compact UI works. It assumes you cant see the generation settings anymore and so it moves the prompt boxes over to the extra network tabs.
I'll post a fix in a second. I think I can fix it so that it doesnt do that when the side panel is open though.

fixed with 5119eedff482adf639de77272c6326ca5f912dab


documentation_current - clarification

The project MUST make an effort to keep the documentation consistent with the current version of the program and any known documentation defects making it inconsistent MUST be fixed. Documentation of other versions may be included. [documentation_current]

What is meant by the last sentence?
Documentation for the current version may link to documentation of an older version?

Many projects' documentation includes information on what changed over time ("if you have version B to C, do D.  If your version is E or greater, do F").  This is particularly relevant when many users don't upgrade their software (for whatever reason) and that is expected behavior.  An extreme example is autoconf.  Our intent was to make it clear that documentation could also explain what used to be true, as long as it clearly explains that it's not true anymore (and what has changed).
But you're right, this wasn't very clear:

Documentation of other versions may be included

We're rewriting this & will post soon, hopefully you'll like the new version :-).

Thank you for the clarification.


Remove Juno from cleanvm

OpenStack Juno is EOL and not used in our products.

+1

-1 because Juno is the base for SUSE OpenStack Cloud 5 as mentioned in
https://www.suse.com/documentation/suse-cloud-5/singlehtml/book_cloud_deploy/book_cloud_deploy.html#cha.depl.arch
which will only become EOL next year, so we need to keep it alive to pass security fixes through the pipeline.

Mmh... right. I tough we use Kilo for C5.

+1

+1


Clicking on a channel pill should show channel info

In the settings UI, clicking on a user or group pill shows an info card for that user/group. We should show an info card when the user clicks on a channel pill as well (e.g., in the UI for adding subscribers to a channel).
The card should have:

The channel privacy icon + title (formatted as in the left sidebar menu)
The channel description.
A "Channel settings" link.

We can try using the same width as for user cards.
Channel pill:

CZO thread

@zulipbot claim

@zulipbot claim

I can work on it, though after the high priority issues are sorted out

@zulipbot  claim

@pradyutf Any progress on this?

@zulipbot claim


Azure Databricks - Policy to deploy diagnostic settings for Databricks to Log analytics workspace - missing multiple log categories

Versions
Module: AZL v2.4.1
terraform-azurerm-caf-enterprise-scale/blob/main/modules/archetypes/lib/policy_definitions/policy_definition_es_deploy_diagnostics_databricks.json
Description
There are multiple missing log categories for Azure Databrick diagnostic settings policy. The missing categories are:

Databricks SQL Analytics
Databricks Genie
Databricks Global init Scripts
Databricks IAM Role
Databricks MLFlow Experiment
Databricks Feature Store
Databricks Remote History Service
Databricks MLFlow Acled Artifact
Databricks DatabricksSQL
Databricks Delta Pipelines
Databricks Model Registry
Databricks Repos
Databricks Unity Catalog
Databricks Git Credentials
Databricks Web Terminal

The existenceCondition checks that all logs are enabled, which they are not and therefore can never be compliant.
Steps to reproduce

Assign policy to any scope
Deploy a Databricks resource under that scope
Check policy compliance
Check actual diagnostic setting deployed on the Databricks resource
10 log categories will be enabled, and 15 categories are not enabled

Screenshots

@jtracey93 PR linked


channel routes not work

Routing does not work and in private channels regardless of processing returns successful authorization
 "beyondcode/laravel-websockets": "^1.14.1",
 "pusher/pusher-php-server": "^7.2.1",

Broadcast::channel('users.1', function (User $user, int $userId) {
    return false;
});

testapp: connection id 288426454.774642121 received message: {"event":"pusher:subscribe","data":{"auth":"websocketkey:0903fc7ae38e6df122f7f38afea7111afa4c498d390498f01bbce50129a171a8","channel":"private-users.1"}}.
Connection id 288426454.774642121 sending message {"event":"pusher_internal:subscription_succeeded","channel":"private-users.1"}

Hi,
Do you uncomment/add line service provider in config/app.php?
App\Providers\BroadcastServiceProvider::class

Hi, Do you uncomment/add line service provider in config/app.php?
App\Providers\BroadcastServiceProvider::class

Hey, yeah.

Hi, Do you uncomment/add line service provider in config/app.php?
App\Providers\BroadcastServiceProvider::class

Hey, yeah.

Do you set in .env broadcast driver on pusher?
BROADCAST_DRIVER=pusher

Hi, Do you uncomment/add line service provider in config/app.php?
App\Providers\BroadcastServiceProvider::class

Hey, yeah.

Do you set in .env broadcast driver on pusher?
BROADCAST_DRIVER=pusher

yes


Grade B on all items ticked

Even if I complete all the items the grade is still B. Screenshot follows:

I have fixed this but only partially. The bug exists in upstream and I'm not super familiar with it


EIT: change options to independantly select the 4 kinds

Related issue (if any):
The current options for EITGenerator only allow to select either actual or other, and either pf or schedule. You have no way for instance to select actual pf, other pf and actual shedule but not other schedule. However this is what you are supposed to do on eg. the French DTT.
Affected components:
EITGenerator, eitinject tsp plug-in and tseit application.
Brief description of the proposed changes:
This commit makes 4 distinct options, one for each kind. It does however change the CLI of tsp and tseit. I am unsure what the policy of the project is regarding such changes, so apply with caution.

Is it possible to retain old options and have them work as aliases/synonyms for newly added more specific options, e.g. similar to how default standard selection works (see chapters 2.4.2 and 2.5.2 of TSduck documentation)?
Testing the new options within the test suite would be good. However, I'm not sure whether it's better to adjust tests 98, 104, and  123, or add a new test.

I merged the PR and restored the previous options to avoid breaking existing scripts. Older options now behave as combinations of new options, e.g. --actual is restored and equivalent to --actual-pf --actual-schedule.
The test suite has not been modified.


update(content/en): add docker sock in "Run within Docker" section

What type of PR is this?
/kind content
Any specific area of the project related to this PR?
/area documentation
What this PR does / why we need it:
The "Run with Docker" examples for the "fully privileged" use case are missing -v /var/run/docker.sock:/host/var/run/docker.sock.
That should be present in those examples since it's a docker use case, and Falco uses container metadata by default.
Which issue(s) this PR fixes:

Fixes #
Special notes for your reviewer:

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by:
To complete the pull request process, please assign leogr after the PR has been reviewed.
You can assign the PR to them by writing /assign @leogr in a comment when ready.
The full list of commands accepted by this bot can be found here.

Needs approval from an approver in each of these files:

OWNERS

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@leogr: PR needs rebase.

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.

LGTM label has been added.  Git tree hash: a0cd2d1dd419e954953c53fb696f4ad020f6655f

[APPROVALNOTIFIER] This PR is APPROVED
This pull-request has been approved by: leodido
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

OWNERS [leodido]

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

[APPROVALNOTIFIER] This PR is APPROVED
This pull-request has been approved by: fntlnz, leodido
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

OWNERS [fntlnz,leodido]

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment


qtbase: Replace -isystem with -I

Fixes no-x11 builds (eglfs)
Signed-off-by: Khem Raj<EMAIL_ADDRESS>

in master-next


Can we run multiple node instances from the same the machine using Grid Extras

I am trying to run multiple node instances using the selenium grid extras. But the second instance doesn't get registered to the node.
Below is the node instance configuration

Node instance 1

Running Firefox and chrome browser in node port 5557
This instance is running in the task scheduler. It is scheduled to run when the system is restarted.

Node instance 2

Running IE and edge browser in node port 5559
This instance in running as part of the startup.

On restart only the one node instance gets registered. The other node instance doesn't get registered throwing the error
"Config directory for  doesnot existed in the /configs"
I am using the below version
Selenium grid extras - 1.12.10
Selenium server standalone - 2.53.1

I think there could be an issue with running multiple nodes on the same machine. The problem being the directory name on the hub (for the configs). The directory name would collide with each other... It might be a good idea to add something at the end of the config directory name on the hub so they don't collide.

@smccarthy  i have created docker seleniumGridExtra. I want to opensource it, With that I am able to create a grid where a machine hosts more than one docker container...thereby supporting multiple nodes on same machine.


Unable to find good face match with deepface and Annoy

Hi
I am using following code from Serengil's tutorial (you tube), for finding best face match. The embeddings are from deepface and Annoy's ANNS based search is used for find best matching face.
This code does not give good matching face, as was hightlighted in Serengil's you tube video.
Looking for help about why this code would not give best matching face.
Thanks
import os
from deepface.commons import functions
from keras_facenet import FaceNet
from deepface.basemodels import Facenet
from annoy import AnnoyIndex
import matplotlib.pyplot as plt
import random
import time
facial_images = []
for root, directories, files in os.walk("../../deepface/deepface/tests/dataset"):
for file in files:
if ('.jpg' in files):
exact_path = root + files
facial_images.append(exact_path)
embedder = FaceNet()
model = Facenet.loadModel()
representations = []
min =<PHONE_NUMBER>00
max = -10000000000
for face in facial_images:
img = functions.preprocess_face(img = face, target_size = (160,160))
embedding = embedder.embeddings(img)
embedding = model.predict(img)[0,:]
temp = embedding.min()
if (min > temp):
    min = temp
temp = embedding.max()
if (max < temp):
    max = temp

representation = []
representation.append(img)
representation.append(embedding)
representations.append(representation)

#synthetic data to enlarge data size
for i in range(len(representations), 100000):
filename = "dummy_%d.jpg" % i
vector = [random.gauss(min, max) for z in range(128)]
dummy_item = []
dummy_item.append(filename)
dummy_item.append(vector)
representations.append(dummy_item)
t = AnnoyIndex(128, 'euclidean')
for i in range(len(representations)):
vector = representations[i][1]
t.add_item(i, vector)
t.build(3)
idx = 0
k   = 2
start = time.time()
neighbors = t.get_nns_by_item(idx,k)
end = time.time()
print ("get_nns_by_item took " , end-start, " seconds");
print (neighbors)

ML models are probabilistic. So, having a bad result for a custom set does not make it stable. Need to have same instances with you to make a comment.

Hi Serengil,
I downloaded the model from the pointer shared by you earlier - https://github.com/serengil/deepface/blob/master/deepface/basemodels/Facenet.py#L1625
Would this mean that I am using same instance of model as shared by you in the tutorial video ?
Thanks


Non-field example of probability calculation in excel field

what would typically be seen is some sort of numerical truncation an order of calculation issue was encountered calculating probabilities where a result was >1 during the problem investigation and with reordering of the calculation brought the result in line with the cohort.  Are there known issues in a cell of similar results with a regression in the software such as these.  By non-field something of the sort where their matrix representations were non-commutative.

This was with Microsoft Office 2016 Home and Student Edition

@FreedomFaighter I'm afraid I don't follow your scenario.
Could you share an example of the situation you're describing? Without further details we won't be able to help.


Escola Secundaria de Santa Maria da Feira

@CalebGp First stage of verification passed, official domain is ae-smfeira.pt as far as I verified. This is just an informational note. Pull request is still in the review. I appreciate your patience while waiting for the final decision.

@calebgp Thank you for your patience while waiting for a review and processing your request. Pull request merged.

Thanks!


[Feature Request]Support multiple types.db for collectd

Feature Request
Proposal:
Support multiple types.db files in [[collectd]] in config file
Current behavior:
It supports only one types.db file
Desired behavior:
Supports multiple types.db, e.g., typesdb = ["/usr/local/share/collectd/types.db", "/usr/local/share/collectd/generic-jmx.db"]
Use case:
Some collectd plugin needs extra metric type such as jmx for collectd-java which is not in the default types.db

@wei-hai I don't know much about collectd, but can you not merge your types into a single file?

I believe this is already supported via #6908.  This is also a dup of #1110

@jwilder Can you please give an example of how to add multiple types.db in the config file?

@wei-hai I believe you should be able to specify a directory as your types db path and it will scan the directory.
typesdb = ["/usr/local/share/collectd"]

@jwilder Thank you for the example. Please update the default config to typesdb = ["/usr/local/share/collectd"] if possible, or add comment about the it in the config file, right now the default setting is typesdb = "/usr/local/share/collectd/types.db".

["/usr/local/share/collectd"] seems not working. Is there anyway to include whole directory for typesdb..


Fix for the case with cache and store located in different buckets

Hello!
In case with cache and store located in different buckets, the copy_source must refer to correct bucket_name.
On the side note, thank you for refile, it is a very solid and straightforward piece of technology!

Is anyone maintaining this repo anymore? I've just spent/wasted a few hours trying to fix this bug, fix it then find a PR almost identical to mine!

I couldn't replicate any errors by using different buckets for cache and store. I used a personal project and set up two s3 buckets with my AWS account to test it out.
Apparently, everything just worked fine.
I manage to upload attachments normally. Even if I tried to submit a form with errors, the attachment would stay cached and be saved normally after the resubmit with the errors fixed.
At all times, my cache bucket had only the cache paste and my store one only the store paste.

The error was for sure present at the time I wrote that patch. I still have code in production that use it.
Did you upload the file through your server? I'm not sure if it may affect anything but I use direct uploads to the S3 from the client (web browser).
Let me see if I could isolate the error, I'll get back to you soon.

I did indeed uploaded the file through my server. I'm gonna look into it using direct uploads.

Tonight I finally managed retrying to replicate any errors. Apparently, when you're using different buckets, it doesn't just promote the attachment from cache to store.
I'm not sure yet, but it appears to be uploaded again. I had to use a bigger file to realize it, it just takes forever if you compare to using the same bucket.
This week I'm gonna try to create specs for this.

@KimEmmanuel any news on that?