Issue using agent with PyTorch+cuda

Weights and Biases version: 0.8.28
Python version: Python 3.6.9
Operating System: Linux (Colab)

Description
I'm trying to run a sweep in Colab. My model is in PyTorch and requires a GPU. It seems that the use of multiprocessing isn't compatible with PyTorch. I've created the below toy example to reproduce the bug. Any advice?
What I Did
import wandb
import torch

def train():
  model = torch.nn.Linear(100,100)
  model.cuda()

sweep_id = wandb.sweep({
    'method': 'grid',
    'parameters': {
        'blah': {
            'values': [1]
        }
    }
})
wandb.agent(sweep_id, function=train)

Stacktrace:
Process Process-4:
Traceback (most recent call last):
  File "/usr/lib/python3.6/multiprocessing/process.py", line 258, in _bootstrap
    self.run()
  File "/usr/lib/python3.6/multiprocessing/process.py", line 93, in run
    self._target(*self._args, **self._kwargs)
  File "/usr/local/lib/python3.6/dist-packages/wandb/wandb_agent.py", line 64, in _start
    function()
  File "<ipython-input-23-3598f8bb2714>", line 6, in train
    model.cuda()
  File "/usr/local/lib/python3.6/dist-packages/torch/nn/modules/module.py", line 304, in cuda
    return self._apply(lambda t: t.cuda(device))
  File "/usr/local/lib/python3.6/dist-packages/torch/nn/modules/module.py", line 223, in _apply
    param_applied = fn(param)
  File "/usr/local/lib/python3.6/dist-packages/torch/nn/modules/module.py", line 304, in <lambda>
    return self._apply(lambda t: t.cuda(device))
  File "/usr/local/lib/python3.6/dist-packages/torch/cuda/__init__.py", line 195, in _lazy_init
    "Cannot re-initialize CUDA in forked subprocess. " + msg)
RuntimeError: Cannot re-initialize CUDA in forked subprocess. To use CUDA with multiprocessing, you must use the 'spawn' start method

I tried your example on colab (enabling GPU fin the runtime) and I wasnt able to reproduce the failure you saw with your example posted.
I do understand the failure and we are working on better mechanisms to run sweeps in notebook environments that should address this issue.   I will leave this bug open until we have a beta of the new client code that should address this.

Apologies! Try this code instead. The issue only occurs if you interact with cuda outside of the training loop, even if just to check if cuda is available
import wandb
import torch

cuda = torch.cuda.is_available()

def train():
  model = torch.nn.Linear(100,100)
  model.cuda()

sweep_id = wandb.sweep({
    'method': 'grid',
    'parameters': {
        'blah': {
            'values': [1]
        }
    }
})
wandb.agent(sweep_id, function=train)

Yeah,
I believe this is the same as tensorflow.  Cuda isn't fork safe so once you connect to the GPU in a process you can't fork.  If you only connect to cuda in a forked process everything should work.  Is it possible for you to refactor your colab code to only access cuda in the train function?

Hey @noncuro
In the past year we've majorly reworked the CLI and UI for Weights & Biases. We're closing issues older than 6 months. Please comment to reopen.

I'm having this issue as well, but I'm not sure how to refactor my code to make the sweep work? Here's my PyTorch Lightning model and the sweep code I'm using:
class FloodModel(pl.LightningModule):
    def __init__(self, hparams):
        super(FloodModel, self).__init__()
        self.hparams.update(hparams)
        # self.save_hyperparameters()
        # print(self.hparams.get("architecture"))
        self.architecture = self.hparams.get("architecture", "Unet")
        self.backbone = self.hparams.get("backbone", "resnet34")
        self.weights = self.hparams.get("weights", "imagenet")
        self.lr = self.hparams.get("lr", 1e-3)
        self.max_epochs = self.hparams.get("max_epochs", 1000)
        self.min_epochs = self.hparams.get("min_epochs", 6)
        self.patience = self.hparams.get("patience", 6)
        self.num_workers = self.hparams.get("num_workers", 2)
        self.batch_size = self.hparams.get("batch_size", 32)
        self.x_train = train_x
        self.y_train = train_y
        self.x_val = val_x
        self.y_val = val_y
        self.output_path = self.hparams.get("output_path", "model-outputs")
        self.gpu = self.hparams.get("gpu", False)
        self.transform = training_transformations

        # Where final model will be saved
        self.output_path = Path.cwd() / self.output_path
        self.output_path.mkdir(exist_ok=True)

        # Track validation IOU globally (reset each epoch)
        self.intersection = 0
        self.union = 0

        # Instantiate datasets, model, and trainer params
        self.train_dataset = FloodDataset(
            self.x_train, self.y_train, transforms=self.transform
        )
        self.val_dataset = FloodDataset(self.x_val, self.y_val, transforms=None)
        self.model = self._prepare_model()
        self.trainer_params = self._get_trainer_params()

    # Required LightningModule methods

    def forward(self, image):
        # Forward pass through the network
        return self.model(image)

    def training_step(self, batch, batch_idx):
        # Swtich on training mode
        self.model.train()
        torch.set_grad_enabled(True)

        # Load images and labels
        x = batch["chip"]
        y = batch["label"].long()

        if self.gpu:
            x, y = x.cuda(non_blocking=True), y.cuda(non_blocking=True) ## CUDA

        # Forward pass
        preds = self.forward(x)

        # Calculate training loss
        criterion = XEDiceLoss()
        xe_dice_loss = criterion(preds, y)

        # Log batch xe_dice_loss
        self.log(
            "xe_dice_loss",
            xe_dice_loss,
            on_step=True,
            on_epoch=True,
            prog_bar=True,
            logger=True
        )
        return xe_dice_loss

    def validation_step(self, batch, batch_idx):
        # Switch on evaluation mode
        self.model.eval()
        torch.set_grad_enabled(False)

        # Load images and labels
        x = batch["chip"]
        y = batch["label"].long()
        if self.gpu:
            x, y = x.cuda(non_blocking=True), y.cuda(non_blocking=True) ## CUDA

        # Forward pass & softmax
        preds = self.forward(x)
        preds = torch.softmax(preds, dim=1)[:, 1]
        preds = (preds > 0.5) * 1

        # Calculate validation IOU (global)
        intersection, union = intersection_and_union(preds, y)
        self.intersection += intersection
        self.union += union

        # Log batch IOU
        batch_iou = intersection / union
        self.log(
            "iou", batch_iou, on_step=True, on_epoch=True, prog_bar=True, logger=True
        )

        return batch_iou

    def train_dataloader(self):
        # DataLoader class for training
        return DataLoader(
            self.train_dataset,
            batch_size=self.batch_size,
            num_workers=self.num_workers,
            shuffle=True,
            pin_memory=True,
        )

    def val_dataloader(self):
        # DataLoader class for training
        return DataLoader(
            self.val_dataset,
            batch_size=self.batch_size,
            num_workers=0,
            shuffle=False,
            pin_memory=True,
        )

    def configure_optimizers(self):
        # Define optimizer
        optimizer = torch.optim.Adam(self.model.parameters(), lr=self.lr)

        # Define Scheduler
        scheduler = lr_scheduler.ReduceLROnPlateau(
            optimizer, mode='max', factor=0.5, patience=self.patience
        )

        scheduler = {
            "scheduler": scheduler,
            "interval": "epoch",
            "monitor": "val_iou",
        } # logged value to monitor

        return [optimizer], [scheduler]

    def validation_epoch_end(self, outputs):
        # Calculate IOU at the end of epoch
        epoch_iou = self.intersection / self.union

        # Reset metrics before next epoch
        self.intersection = 0
        self.union = 0

        # Saving the model in ONNX format
        # dummy_input = torch.zeros(64, 2, 7, 7, device=self.device)
        # model_filename = f"model_{str(self.global_step).zfill(5)}.onnx"
        # torch.onnx.export(self, dummy_input, model_filename, opset_version=11)
        # wandb.save(model_filename)

        # Log epoch validation IOU
        self.log("val_iou", epoch_iou, on_epoch=True, prog_bar=True, logger=True)
        return epoch_iou

    ## Convenience Methods ##

    def _prepare_model(self):
        cls = getattr(smp, self.architecture)
        model = cls(
           encoder_name=self.backbone,
           encoder_weights=self.weights,
           in_channels=2,
           classes=2,
        )
        if self.gpu:
            model.cuda() ## CUDA
        return model

    def _get_trainer_params(self):
        # Define callback behavior
        checkpoint_callback = ModelCheckpoint(
            dirpath=self.output_path,
            # save_top_k=1,
            monitor="val_iou",
            mode="max",
            verbose=True,
        )
        early_stop_callback = EarlyStopping(
            monitor="val_iou",
            patience=(self.patience * 4),
            mode="max",
            verbose=True,
        )

        # Specify where Tensorboard logs will be saved
        self.log_path = Path.cwd() / self.hparams.get("log_path", "tensorboard-logs")
        self.log_path.mkdir(exist_ok=True)
        logger = TensorBoardLogger(self.log_path, name="driven-data-comp")
        wandb_logger = WandbLogger(project="Driven-Data-Floodwater-Mapping", entity="effective-altruism-techs")

        trainer_params = {
            "callbacks": [checkpoint_callback, early_stop_callback],
            "max_epochs": self.max_epochs,
            "min_epochs": self.min_epochs,
            "default_root_dir": self.output_path,
            "logger": [logger, wandb_logger],
            "gpus": None if not self.gpu else 1,
            "fast_dev_run": self.hparams.get("fast_dev_run", False),
            "num_sanity_val_steps": self.hparams.get("val_sanity_checks", 0),
        }
        return trainer_params

    def fit(self):
        # Set up and fit Trainer object
        self.trainer = pl.Trainer(**self.trainer_params)
        self.trainer.fit(self)

Sweep code:
def sweep_iteration():
    # set up W&B logger
    wandb.init()    # required to have access to `wandb.config`
    wandb_logger = WandbLogger()

    # print(wandb.config)

    # instantiate model - note how we refer to sweep parameters with wandb.config
    flood_model = FloodModel(hparams=wandb.config)

    # train
    flood_model.fit()

    wandb.watch(flood_model)

    print(wandb.config)
    print(flood_model.trainer_params["callbacks"][0].best_model_score)


Npm v2.0.2 does not match the github v2.0.2

It seems the the code on npm does not match the code on github for v2.0.2.
The stream end event is not in the npm version.
process.nextTick(() => stream.emit('end'))

@kevinlambert just rereleased the package. Please try again and let me know if the problem still exist.

Looks good now. Added #54 which should prevent this in the future.


Camera Resolution Locked By "fast-fps-mode"?

I was trying to get lower resolution frames from camera's onPreviewFrame callback for my QR code detection component. But I found simply setting the camera's parameter does not work.
It seems that, in the GVRCameraSceneObject, the "params.set("fast-fps-mode", fpsMode);" makes all the following resolution settings invalid. In the source, there is a code block of setting resolution commented out. How is the "fast-fps-mode' setting related to the camera resolution?
Now, I just deleted the the 'fast-fps-mode' code in the gearvrf. I did get the lower resolution, but not sure how enabling/disabling this setting affects the app.
Hardware: Galaxy S6

Another observation.
After deleting the 'fast-fps-mode', I got lots of log like this,
E/BufferQueueProducer: [unnamed-12945-0] dequeueBuffer: min undequeued buffer count (2) exceeded (dequeued=7 undequeued=1)

fast-fps-mode is there so it gives you more fps when you use the camera passthrough. I guess it has its own limitations. If you don't care about getting the highest possible fps out of the camera, then don't worry about removing it.

Thanks :)


Missing ISO 639 codes for Nahuatl

The language system tag 'NAH ' (Nahuatl) corresponds to the ISO 639 code nah. Nahuatl is a language family, so the codes for its members should be listed too: azd, azn, azz, naz, nch, nci, ncj, ncl, ncx, ngu, nhc, nhe, nhg, nhi, nhk, nhm, nhn, nhp, nhq, nht, nhv, nhw, nhx, nhy, nhz, nlv, npl, nsu, nuz.

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

ID: 31fa774c-1048-54de-7334-b9e8665f2815
Version Independent ID: 3502af1f-112a-038b-6ee5-1f7f21018586
Content: Language system tags (OpenType 1.8.4) - Typography
Content Source: typographydocs/opentype/otspec184beta/languagetags.md
Product: typography
GitHub Login: @PeterCon
Microsoft Alias: alib

Changes for 1.8.4


Add Piral CLI extension for local pilet feed service

New Feature Proposal
Description
Enhance the Piral CLI to also integrate with the local Pilet Feed service.
Background
Sometimes during development of a Piral instance it makes sense to have a local feed service running. The sample feed service is great and useful for this purpose, but it needs to be started separately (despite it being published now as an NPM package that allows execution, e.g., via npx).
If piral-cli-feed would exist it could allow:

piral feed to run the server standalone (same as sample-pilet-service does today)
e.g., piral debug --feed to run the feed in kras as a middleware; essentially not needing to mock the feed

Discussion
Might be a useful extension, but it should have a lower priority, since the public feed service is available by now and offers more features than the local feed service.

I'd say, that it should still be highlighted, that it's a sample-feed. So maybe name it piral-cli-sample-feed and call it via piral sample-feed or piral debug --sample-feed.

Available:

https://github.com/FlorianRappl/piral-cli-local-feed
https://www.npmjs.com/package/piral-cli-local-feed


update

Motivation:
Explain here the context, and why you're making that change.
What is the problem you're trying to solve.
Modification:
Describe the modifications you've done.
Result:
Fixes #.
If there is no issue then describe the changes introduced by this PR.

update the lastest


MAJOR ISSUE: Can overallocate inventory on edit and add events modal

Waiting on pulling until confirmation with Diquirk


Unable to initialize 3d output

Upon Game launch the following error pops up, "Unable to initialize 3D output. Please verify that you have installed DirectX 9 and an updated video driver."
To Reproduce

manually install radial to gw2 root as d3d9.dll
run the game as dx9
crash

Screenshots
https://prnt.sc/1wtfw4t
System configuration (please fill in):

OS:  Windows 10
GPU:  RTX 2070 Super
no other addons/mods

Additional context

Also tried with mod manager, game launches but Shift+Alt+M doesn't open any interface.
upon game start creates a gw2radial.txt file in gw2 root sometimes with no content inside other times it has "This is GW2Radial v2.1.1"

I know this is fairly old at this point, but I cannot diagnose issues like this without dump files which are generated in the same place as the log file.


Fix troubleshooting status center logo link

Motivation
Commit 243d8bceefded9bf069578920975f0dfee5f7d36 moved the location of ruby_lsp_status_center.png. This PR adjusts the sources to changes.

I think that I signed the CLA. Can you please point me to the link?

I think that I signed the CLA. Can you please point me to the link?

I have signed the CLA.


Implement kpt pkg fix

Implement and release the proposed solution for https://github.com/GoogleContainerTools/kpt/issues/847

We have examples of kpt packages where the type has been set to a value that is not a valid openapi type, i.e. the type is set to int rather than integer. This might be something we could clean up as part of the fix command. Ref #845


listener failed to start [Errno 98]

Empire Version
Master
OS Information (Linux flavor, Python version)
Expected behavior and description of the error, including any actions taken immediately prior to the error. The more detail the better.
listener failed to start
address already in use [Errno 98]
Screenshot of error, embedded text output, or Pastebin link to the error
Any additional information
how do i fix this

No clue how to fix that without more information. Possibly another process occupying the port?

to check the running ports in your box, type this command
let's take an example if the listener startup failed on port 80.
1- We list all services running on port 80 (IMG 1)
sudo lsof -t -i:80

2- Then, we get the detail of the following process ID (IMG 2)
ps 13888

3- In my case, I was running Apache server on my box so I stopped it and execute the command again. (IMG 3)


Added "Terms and Conditions" Page and Linked in Footer Section

Issue:
The footer section was missing a link to the " Privacy and Policy " page, which is essential for legal transparency and user guidance.
Changes Made:

Created a new "Privacy and Policy" page.
Added the link to the "Privacy and Policy" page in the footer section for easy access by users.

Files Modified:

page.tsx: Updated the footer section to include the "Terms and Conditions" link.
New file: Created the Privacy and Policy page.

closes #754


SSL was a bit broken - a few syntax errors and hardcoded certificate paths, as well as using deprecated/nonexistent #version=. I fixed that up and ran into some CRC32 errors when using SSL.
Considering we're using SSL and the protocol makes its own guarantees about data consistency, I figured the path of least resistance would be to skip the CRC validation if we're using SSL. Totally open to scrapping that idea if you have a better idea on how to fix it, but figured I'd send this back your way to help out.
Let me know if there's anything you'd like me to change to get this merged in.
Cheers!
James

Thanks for fixing it. I made this gem at a non SSL project but added the functionality anyway. Never used this in real SSL enabled communication. So thanks for sending in your support on this feature. :)

No problem! If I run into any other things that need fixing while I'm working with it I'll be sure to let you know. :)


docs(demo): add example of ag-grid integration

What kind of change does this PR introduce? (Bug fix, feature, docs update, ...)
Feature
What is the new behavior (if this is a feature change)?
Adds a new demo: ag-grid
Please check if the PR fulfills these requirements

[X] The commit messages follow our guidelines: https://github.com/angular/angular.js/blob/master/CONTRIBUTING.md#commit-message-format
[ ] A unit test has been written for this change.
[X] Running npm run build produced a successful build. (Unit testing can be done by running npm test;)
[X] My code has been linted. (npm run lint to do this. npm run build will fail if there are files not linted.)

Other information:
Adds stackblitz dependencies for this ag-grid demo and for ngx-datatable demo

Thank you @FritzHerbers!

cell data cascaded select

cell data cascaded select   @FritzHerbers!


The site style needs to be demolished and prepared for a mobile first design.

Remove all styles and format the HTML to a class based approach to the design.


default to coverage being turned on

Test coverage is important.  It should be on by default.
Breaking change.

Landed in v13, with --100


Add a Gitter chat badge to README.md

MadRussian/devspell now has a Chat Room on Gitter
@MadRussian has just created a chat room. You can visit it here: https://gitter.im/devspell/Lobby.
This pull-request adds this badge to your README.md:

If my aim is a little off, please let me know.
Happy chatting.
PS: Click here if you would prefer not to receive automatic pull-requests from Gitter in future.

Coverage remained the same at 95.344% when pulling 7cd8d57db3db16560b0292acb4b9f79d90e4546b on gitter-badger:gitter-badge into 71d504b878c580c80ffb4912ab41451a9cf87ffe on MadRussian:master.


task: adds fonts

This PR

Adds fonts
Adds fonts.json
Adds a custom format and transformer to generate a font-face file called fonts.css.

@skibinska I merged main in to this branch to fix the conflicts, hope you don't mind 😄

Thanks @chriddell!


Environment setup issues on Windows

I was trying to setup the local environment on my Windows machine, and ran into issues with both the Docker and local setup.
I'm posting here for better reachability, maybe someone else has faced such similar errors and can help out.
Error for docker setup -
PS C:\Users\Manish\Documents\Development\Github\FCC\FreeCodeCamp> npm run docker:install

><EMAIL_ADDRESS>docker:install C:\Users\Manish\Documents\Development\Github\FCC\FreeCodeCamp
> docker-compose run -u root --rm freecodecamp bash patch_npm_and_install.sh

Starting freecodecamp_db_1 ... done                                                                                Starting freecodecamp_mailhog_1 ... done                                                                                patching file /usr/local/lib/node_modules/npm/node_modules/libcipm/index.js
npm WARN prepare removing existing node_modules/ before installation

><EMAIL_ADDRESS>install /app/node_modules/fsevents
> node install

><EMAIL_ADDRESS>install /app/node_modules/husky
> node husky install

husky > setting up git hooks
husky > done

><EMAIL_ADDRESS>postinstall /app
> npm run bootstrap

><EMAIL_ADDRESS>bootstrap /app
> lerna bootstrap --ci

lerna notice cli v3.16.4
lerna info versioning independent
lerna info ci enabled
lerna info Bootstrapping 10 packages
lerna info Installing external dependencies
lerna ERR! npm ci exited 240 in '@freecodecamp/curriculum'
lerna ERR! npm ci stderr:
npm WARN prepare removing existing node_modules/ before installation
npm ERR! path /app/curriculum/node_modules
npm ERR! code EBUSY
npm ERR! errno -16
npm ERR! syscall rmdir
npm ERR! EBUSY: resource busy or locked, rmdir '/app/curriculum/node_modules'

npm ERR! A complete log of this run can be found in:
npm ERR!     /home/node/.npm/_logs/2019-12-03T02_12_29_891Z-debug.log

lerna ERR! npm ci exited 240 in '@freecodecamp/curriculum'
npm ERR! code ELIFECYCLE
npm ERR! errno 240
npm ERR<EMAIL_ADDRESS>bootstrap: `lerna bootstrap --ci`
npm ERR! Exit status 240
npm ERR!
npm ERR! Failed at the<EMAIL_ADDRESS>bootstrap script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR!  Exit status 240
npm ERR!
npm ERR! Failed at the<EMAIL_ADDRESS>postinstall script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR!  Exit status 240
npm ERR!
npm ERR! Failed at the<EMAIL_ADDRESS>docker:install script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR!      C:\Users\Manish\AppData\Roaming\npm-cache\_logs\2019-12-03T02_10_41_145Z-debug.log

Error with local setup -
PS C:\Users\Manish\Documents\Development\Github\FCC\FreeCodeCamp> npm ci
npm WARN prepare removing existing node_modules/ before installation

><EMAIL_ADDRESS>install C:\Users\Manish\Documents\Development\Github\FCC\FreeCodeCamp\node_modules\fsevents
> node install

><EMAIL_ADDRESS>install C:\Users\Manish\Documents\Development\Github\FCC\FreeCodeCamp\node_modules\husky
> node husky install

husky > setting up git hooks
husky > done

><EMAIL_ADDRESS>postinstall C:\Users\Manish\Documents\Development\Github\FCC\FreeCodeCamp
> npm run bootstrap

><EMAIL_ADDRESS>bootstrap C:\Users\Manish\Documents\Development\Github\FCC\FreeCodeCamp
> lerna bootstrap --ci

lerna notice cli v3.16.4
lerna info versioning independent
lerna info ci enabled
lerna info Bootstrapping 10 packages
lerna info Installing external dependencies
lerna ERR! npm ci exited<PHONE_NUMBER> in '@freecodecamp/client'
lerna ERR! npm ci stderr:
npm WARN prepare removing existing node_modules/ before installation
npm WARN tarball tarball data for<EMAIL_ADDRESS>(sha512-fmL+RFZ2Hrezy+X/5ZczQW51LUmvzfcqOurnkCIRFTyjdVjzR7JvENzI6+VKBJzJdPh6EYL4RoWl92b2Hrk9fw==) seems to be corrupted. Trying one more time.
npm ERR! code EPERM
npm ERR! syscall unlink
npm ERR! path C:\Users\Manish\Documents\Development\Github\FCC\FreeCodeCamp\client\node_modules\monaco-editor\esm\vs\language\typescript\lib\typescriptServices.js
npm ERR! errno -4048
npm ERR! Error: EPERM: operation not permitted, unlink 'C:\Users\Manish\Documents\Development\Github\FCC\FreeCodeCamp\client\node_modules\monaco-editor\esm\vs\language\typescript\lib\typescriptServices.js'
npm ERR!  [OperationalError: EPERM: operation not permitted, unlink 'C:\Users\Manish\Documents\Development\Github\FCC\FreeCodeCamp\client\node_modules\monaco-editor\esm\vs\language\typescript\lib\typescriptServices.js'] {
npm ERR!   cause: [Error: EPERM: operation not permitted, unlink 'C:\Users\Manish\Documents\Development\Github\FCC\FreeCodeCamp\client\node_modules\monaco-editor\esm\vs\language\typescript\lib\typescriptServices.js'] {
npm ERR!     errno: -4048,
npm ERR!     code: 'EPERM',
npm ERR!     syscall: 'unlink',
npm ERR!     path: 'C:\\Users\\Manish\\Documents\\Development\\Github\\FCC\\FreeCodeCamp\\client\\node_modules\\monaco-editor\\esm\\vs\\language\\typescript\\lib\\typescriptServices.js'
npm ERR!   },
npm ERR!   stack: "Error: EPERM: operation not permitted, unlink 'C:\\Users\\Manish\\Documents\\Development\\Github\\FCC\\FreeCodeCamp\\client\\node_modules\\monaco-editor\\esm\\vs\\language\\typescript\\lib\\typescriptServices.js'",
npm ERR!   errno: -4048,
npm ERR!   code: 'EPERM',
npm ERR!   syscall: 'unlink',
npm ERR!   path: 'C:\\Users\\Manish\\Documents\\Development\\Github\\FCC\\FreeCodeCamp\\client\\node_modules\\monaco-editor\\esm\\vs\\language\\typescript\\lib\\typescriptServices.js'
npm ERR! }
npm ERR!
npm ERR! The operation was rejected by your operating system.
npm ERR! It's possible that the file was already in use (by a text editor or antivirus),
npm ERR! or that you lack permissions to access it.
npm ERR!
npm ERR! If you believe this might be a permissions issue, please double-check the
npm ERR! permissions of the file and its containing directories, or try running
npm ERR! the command again as root/Administrator.

npm ERR!      C:\Users\Manish\AppData\Roaming\npm-cache\_logs\2019-12-03T03_44_09_184Z-debug.log

lerna ERR! npm ci exited<PHONE_NUMBER> in '@freecodecamp/client'
npm ERR! code ELIFECYCLE
npm ERR! errno<PHONE_NUMBER>
npm ERR<EMAIL_ADDRESS>bootstrap: `lerna bootstrap --ci`
npm ERR! Exit status<PHONE_NUMBER>
npm ERR!
npm ERR! Failed at the<EMAIL_ADDRESS>bootstrap script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR!      C:\Users\Manish\AppData\Roaming\npm-cache\_logs\2019-12-03T03_44_09_970Z-debug.log
npm ERR! code ELIFECYCLE
npm ERR! errno<PHONE_NUMBER>
npm ERR<EMAIL_ADDRESS>postinstall: `npm run bootstrap`
npm ERR! Exit status<PHONE_NUMBER>
npm ERR!
npm ERR! Failed at the<EMAIL_ADDRESS>postinstall script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR!      C:\Users\Manish\AppData\Roaming\npm-cache\_logs\2019-12-03T03_44_10_368Z-debug.log

A few facts about the installation -

I ran the above commands in Powershell as administrator.
I don't have any antivirus which could potentially be blocking these operations.
My node version is the current LTS version (12.13.1), I can't downgrade to v10 because I need the LTS for running some other Mozilla projects. And even if the LTS version is the reason (which it shouldn't be), it could give some insight into #37776 which I'll start working on shortly.

Also, I just setup the environment (using docker) a few days back on another machine (mac OS), and that worked fine, so this issue is device-specific.

For docker, it sounds like an npm issue, rather than node.  Specifically how it clears out existing node_modules before installation.  I assume that lerna is locking those directories, so npm isn't allowed to remove them.
Anyway, if you look at /usr/local/lib/node_modules/npm/node_modules/libcipm/index.js in either the client or server containers you should find:
      .then(stat => {
        stat && this.log.warn(
          'prepare', 'removing existing node_modules/ before installation'
        )
        return BB.join(
          this.checkLock(),
          stat && rimraf(path.join(this.prefix, 'node_modules/*'))
        )

inside prepare().  If not, that's probably the culprit.
Locally it could be the same problem, I'm not sure.  Have you tried running it as administrator just to check?

Yes, I executed these commands in Powershell as an administrator. I'll try again using a different shell.

It's probably something to do with libcipm, then. You might need to find out what version of npm you have installed in both cases.  It should include the above code, but it sounds like it isn't.
I'll try and install docker on my Windows partition and see if I run into the same issues (Linux, like Mac is working fine).

So, I did some checking. My local npm version is 6.12.1, which is what ships with Node LTS 12.13.1.
However for docker, while  npm run docker:install was running, I was able to get into the  freecodecamp_freecodecamp_run_45061e72436b container (which runs from the node:lts image), and looks like the npm version is 6.9.0 (probably because the node version is 10.16.3).
Screenshot -

I managed to get the contents of libcipm/index.js before the container exited, and it looks like the code you mentioned is indeed there -
https://gist.github.com/Manish-Giri/57da44bdedd50b46fb3f4fa140e096a7#file-index-js-L153-L160
      .then(stat => {
        stat && this.log.warn(
          'prepare', 'removing existing node_modules/ before installation'
        )
        return BB.join(
          this.checkLock(),
          stat && rimraf(path.join(this.prefix, 'node_modules/*'))
        )
      }).

It's weird that the docker image has node 10.16.3, because node:lts is currently pointing to 12.13.1.  Any clue why docker isn't getting the latest lts?
Regardless, it seems like libcipm has the relevant code.  So, it seems like rimraf is trying to delete the directory, despite being told only to hit the contents.  I'm really not sure why that would happen (or if that's actually what's going on).  I'll report back if I find anything!

@ojeytonwilliams Thank You! I'll dig deeper and try to figure out why docker is still using node v10.

I can confirm the local installation bug.  I get exactly the same error

tarball data for<EMAIL_ADDRESS>(sha512-fmL+RFZ2Hrezy+X/5ZczQW51LUmvzfcqOurnkCIRFTyjdVjzR7JvENzI6+VKBJzJdPh6EYL4RoWl92b2Hrk9fw==) seems to be corrupted. Trying one more time.

Also, it takes an absurdly long time to install.

@Manish-Giri the tentative solution seems to be some combination of the following (perhaps all are required, I'm not 100% sure).

Upgrade to the latest lts for node
update npm
exclude nodejs (c:\Program Files\nodejs) and npm (c:\Users\YourUserName\AppData\Roaming\npm) from your antivirus (this bit I found from here).

I say 'tentative' because it takes slow long to run npm ci that I've not had time to do enough installs to be confident it's reliable.  Given how appallingly slow it is, I'm going to concentrate on getting Docker working, in the hopes that that's less bad!

@ojeytonwilliams Thanks! I've actually given up trying to get npm ci to run successfully.  It takes more than 50-60 minutes to complete on average, on each run.
Regarding the docker issue, after going through my docker images, I found that the node:lts image I had in my local image cache dated back over 2 months -

That was probably the last time I tried to set up fcc on my windows machine, and it is quite possible that back then, Node LTS was at v10, so this node:lts image that was pulled from docker hub as part of the setup, referred to Node v10. And now when running the docker setup, because node:lts was found in my local image cache, Docker didn't pull the latest version from docker hub, even though node:lts should now be at v12.
This theory is just a guess (maybe there is a way to look at node:lts image logs to see when it upgraded), but tonight I'll delete the node:lts image that I have saved locally and after the latest image gets pulled, check if the node version is correctly at v12 in the container. Will keep you updated.
Also, if this turns out to be correct, perhaps this scenario is something that we should address in the codebase, programmatically? Because it is certainly reproducible and can happen in the future too. Maybe there is a way to check if the image in the local cache is older than a certain period, and if so, invalidate the cache and trigger a docker pull.

Turns out I was right, the node:lts image being used was the one present in my local cache, and it was outdated, but I still get the same error (more on that in a bit).
Once I deleted that image, this is the output from npm run docker:init -

Notice the first few steps, where it pulls the newer image from library/node.
To confirm the new version, while npm run docker:install was executing, I used docker exec -it to get into the container and check the versions -

Node is at 12.13.1, and npm is at 6.12.1.
Regardless, I still get the same error about  '/app/curriculum/node_modules' being locked. This time though I do get the input about the libcipm patch.
PS C:\Users\Manish\Documents\Development\Github\FCC\FreeCodeCamp> npm run docker:install

><EMAIL_ADDRESS>docker:install C:\Users\Manish\Documents\Development\Github\FCC\FreeCodeCamp
> docker-compose run -u root --rm freecodecamp bash patch_npm_and_install.sh

Starting freecodecamp_mailhog_1 ... done                                                                                Starting freecodecamp_db_1      ... done                                                                                patching file /usr/local/lib/node_modules/npm/node_modules/libcipm/index.js
Reversed (or previously applied) patch detected!  Assume -R? [n] n
Apply anyway? [n] y
Hunk #1 FAILED at 156.
1 out of 1 hunk FAILED -- saving rejects to file /usr/local/lib/node_modules/npm/node_modules/libcipm/index.js.rej
npm WARN prepare removing existing node_modules/ before installation

><EMAIL_ADDRESS>install /app/node_modules/fsevents
> node install

><EMAIL_ADDRESS>install /app/node_modules/husky
> node husky install

husky > setting up git hooks
husky > done

><EMAIL_ADDRESS>postinstall /app
> npm run bootstrap

><EMAIL_ADDRESS>bootstrap /app
> lerna bootstrap --ci

lerna notice cli v3.16.4
lerna info versioning independent
lerna info ci enabled
lerna info Bootstrapping 10 packages
lerna info Installing external dependencies
lerna ERR! npm ci exited 240 in '@freecodecamp/curriculum'
lerna ERR! npm ci stderr:
npm WARN prepare removing existing node_modules/ before installation
npm ERR! path /app/curriculum/node_modules
npm ERR! code EBUSY
npm ERR! errno -16
npm ERR! syscall rmdir
npm ERR! EBUSY: resource busy or locked, rmdir '/app/curriculum/node_modules'

npm ERR! A complete log of this run can be found in:
npm ERR!     /home/node/.npm/_logs/2019-12-04T02_17_04_695Z-debug.log

lerna ERR! npm ci exited 240 in '@freecodecamp/curriculum'
npm ERR! code ELIFECYCLE
npm ERR! errno 240
npm ERR<EMAIL_ADDRESS>bootstrap: `lerna bootstrap --ci`
npm ERR! Exit status 240
npm ERR!
npm ERR! Failed at the<EMAIL_ADDRESS>bootstrap script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR!  Exit status 240
npm ERR!
npm ERR! Failed at the<EMAIL_ADDRESS>postinstall script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR!  Exit status 240
npm ERR!
npm ERR! Failed at the<EMAIL_ADDRESS>docker:install script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR!      C:\Users\Manish\AppData\Roaming\npm-cache\_logs\2019-12-04T02_15_12_281Z-debug.log

@Manish-Giri after a long struggle getting Docker to work, I'm afraid I didn't run into the locking issue.  The problem with the local setup, yes, but this one seems to work okay.
I'm not sure where to go from here.  I'll put together a PR to document (somewhere) some of the pain points I encountered when trying to get docker to work, though.

@ojeytonwilliams After your recent changes to simplify the Docker development setup, I was able to get past the errors, but now it seems to be stuck (40-50 minutes) at this stage?

Were you able to access localhost:8000 right after this, or is there more console output expected before the client is available?
I also noticed there seems to be a timeout error connecting to MongoDB in the logs, though the mongo container is already up -

I managed to get it working with the VM settings in the docs, but possibly that's on the edge of what it needs.  The only thing I can suggest is the obvious: increase the memory, if you can.  Are you already maxed out?

We are recommeding https://contribute.freecodecamp.org/#/how-to-setup-wsl now. I am using this setup as my daily driver.


No Amazon Bedrock models can be used as embedding providers for similarity assertion

Hello,
No Amazon Bedrock models can be used as embedding providers for similarity assertion.  I have tried all of them with these results:
Provider bedrock:cohere.embed-english-v3 is not a valid embedding provider for 'similarity check', falling back to default

Provider bedrock:amazon.titan-embed-text-v2:0 is not a valid embedding provider for 'similarity check', falling back to default

Provider bedrock:amazon.titan-embed-text-v1 is not a valid embedding provider for 'similarity check', falling back to default

If it is a new feature rather than my mistake and, you think its doable for a newbie I'm happy to try and create a PR for it.  It seems I would need to implement BedrockEmbeddingProvider class in bedrock.ts.
Cheers,
Mark

#797 adds support for Bedrock embedding models!

Released in 0.59.0!


Add validators

This adds attribute validators to AfidPosition and AfidSet, ensuring that we don't allow invalid AFIDs to be instantiated.
This obsoleted some of the existing checks in ext, so I removed them.

is it possible to make the validation optional? There were some discussion of potentially having what is currently considered an "invalid" afid set be passed in.

with attrs.validators.disabled(): as a context manager will disable the validation (not a super convenient API for users of afids-utils, admittedly). To make that an option here will require a bit of discussion of how much of the AfidSet API needs a full set of AFIDs. I think it's reasonable to offer maybe an alternate class to allow partial AFID sets or invalid fiducials, just depends on what users want from that class.


Improve performance

Griddle major version
1.8
Changes proposed in this pull request
Why these changes are made
To make loading rows faster
Are there tests?
Yes

Thanks so much for adding this!


add GatewayClass Accepted print column

What type of PR is this?
/kind feature
What this PR does / why we need it:
Adds the status of the "Accepted" condition
to the GatewayClass print columns list.
I find myself running kubectl describe to see this information all the time, thought it'd be useful to add to the kubectl get output (and it's consistent with the Gateway output that shows the status of the Ready condition).
Which issue(s) this PR fixes:
Does this PR introduce a user-facing change?:
Adds the status of the GatewayClass "Accepted" condition to the GatewayClass print columns list/`kubectl get` output.

Works great for me, thanks @skriss!
/ok-to-test
/lgtm
/approve


ERROR: containers.intersystems.com/intersystems/irishealth:2<IP_ADDRESS>.1: not found

docker build fails. to fix:
ARG IMAGE=intersystemsdc/irishealth-community

Thanks @rcemper


Upgraded package versions except webpack-dev-server due to errors

Upgraded all package versions
except webpack-dev-server with version fixed in "4.0.0-beta.0" due to errors when upgraded

Thank you for your PR.
Close it, because one of the main goals of this project is to try to use the latest version of all dependencies.
And webpack-dev-server version 4.0.0-beta.2 fixes a lot of issues, so it's a necessary to keep it up to date.


When black or autopep turned on, multiple copies of either the last  code block or the entire source generated in the text editor.

Issue Report Checklist

[x] Searched the issues page for similar reports
[x] Read the relevant sections of the Spyder Troubleshooting Guide and followed its advice
[x] Reproduced the issue after updating with conda update spyder (or pip, if not using Anaconda)
[ ] Could not reproduce inside jupyter qtconsole (if console-related)
[x] Tried basic troubleshooting (if a bug/error)

[x] Restarted Spyder
[ ] Reset preferences with spyder --reset
[x] Reinstalled the latest version of Anaconda
[ ] Tried the other applicable steps from the Troubleshooting Guide

[ ] Completed the Problem Description, Steps to Reproduce and Version sections below

Problem Description
What steps reproduce the problem?

What is the expected output? What do you see instead?
Paste Traceback/Error Below (if applicable)

PASTE TRACEBACK HERE

Versions

Spyder version:
Python version:
Qt version:
PyQt version:
Operating System name/version:

Dependencies

PASTE DEPENDENCIES HERE

Hi @MGinsberg, could you please provide the required information about your Spyder environment? From the title description, I would assume that this a duplicate of https://github.com/spyder-ide/spyder/issues/14653, which was fixed already.

Possibly a duplicate, but not fixed.  I have version 4.2.5.  I have no earthly idea how to test.  It happens every once in a while.  I have had either the last few lines or the entire file duplicated.
If you give me a hint how to proceed, I'm happy to do so.
On Friday, April 2, 2021, 12:03:15 PM CDT, Edgar Andrés Margffoy Tuay<EMAIL_ADDRESS>wrote:

Closed #15086.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or unsubscribe.

After playing around for a few minutes.  I can get the bad behavior several different ways.  Two empty lines at the beginning of the file still causes problems.
Leaving less than two empty lines before a class causes bad behavior too.
On Friday, April 2, 2021, 1:15:04 PM CDT, Nerd @.***> wrote:
Possibly a duplicate, but not fixed.  I have version 4.2.5.  I have no earthly idea how to test.  It happens every once in a while.  I have had either the last few lines or the entire file duplicated.
If you give me a hint how to proceed, I'm happy to do so.
On Friday, April 2, 2021, 12:03:15 PM CDT, Edgar Andrés Margffoy Tuay<EMAIL_ADDRESS>wrote:

Closed #15086.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or unsubscribe.

@MGinsberg, sorry but I can't reproduce this error. Please post an animated gif with the exact conditions that generate this problem so we can reproduce it on our side.


Seed hashing doesn't assume/enforce seed size

Latest and final spec allows us to assume that all seeds are always 32 bytes/256 bits. The hashing implementation (sha256()) doesn't acknowledge this, and happily takes shorter seeds. Arguably, it should add as many leading zeroes as necessary to make the seed (excluding the salt) 32 bytes long.
This is currently a source of discrepancy between keygen-js and keygen-hoon. I'm arguing here that keygen-hoon is doing it right, but do fight me on this if you disagree.

Zero-padding seems right!

On Oct 29, 2018 at 7:22 PM,  <Fang (mailto:notifications@github.com)>  wrote:
Latest and final spec allows us to assume that all seeds are always 32 bytes/256 bits. The hashing implementation (sha256()) doesn't acknowledge this, and happily takes shorter seeds. Arguably, it should add as many leading zeroes as necessary to make the seed (excluding the salt) 32 bytes long.
This is currently a source of discrepancy between keygen-js and keygen-hoon. I'm arguing here that keygen-hoon is doing it right, but do fight me on this if you disagree.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly,  view it on GitHub (https://github.com/urbit/keygen-js/issues/35), or   mute the thread (https://github.com/notifications/unsubscribe-auth/AAB8HpgMKMjmZC4TvzpjFol4TdRHXrWQks5up0dogaJpZM4X_yWQ).

draws cutlass en garde! 😄
Should it though?    I.e., we define our wallet in terms of SHA-256, not SHA-256 with custom padding.
For 32-bit seeds, which we use, the implementations match regardless, non?
prepares to parry thrust

Who do you think you are, bringing a sword to a fistfight?
Oh, this isn't about the padding that happens inside of SHA-256, but rather how we treat our input to it.
If you go purely by the Urbit Wallet spec, you can assume that all input to SHA-256 is always 32 bytes. This is indeed always the case in the real world (I assume JS SHA-256 to spit out leading zeroes if they're there), but our test cases currently break that very logical assumption, suddenly forcing SHA-256 to take an input that isn't of the expected 32-byte length.
I believe we agreed on fixed-length seeds, and since only seeds go into SHA-256, they need to be treated as if they were of that fixed length. The only place where this is not true is our test cases. Either those should be fixed to only provide appropriate-length seeds, or the hashing function needs to left-pad with zeroes prior to SHA-256.
 And it is! But it matters to the hoon implementation as it currently stands, so I care about it.

Oh, this isn't about the padding that happens inside of SHA-256, but rather how we treat our input to it.

Right, but it seems to me that one would be redefining the hash function from SHA-256 to if bitlength(input) >= 256 then SHA-256(input) else SHA-256(pad-input-to-256-bits(input)), which circumvents whatever padding that SHA-256 would otherwise get up to.
I think your suggestion to change the change the seed test inputs to 256-bits is a good one, though, and is the more appropriate route to take.  Want to do that?
sheathes cutlass
Before this day, I had never met my match in battle!

Sure, that sounds like a fine compromise. And then we just label <256 bit/<32 byte seeds unsupported? We don't officially expose these interfaces anyway.

Actually, I lied. We use 64-byte seeds when we're deriving the network keys from the management mnemonic, since the seed-from-mnemonic is always 512-bits... Fug.

Derp

I'm gonna close this again as it seems it's been cleared up.  Feel free to reopen again otherwise, cutlasses optional.


Randomly stops working without error

My scraper scraps profile pictures and comments and just the average stuff. Sometimes it runs for 4 hours straight and then stops working and then sometimes it works for 5 minutes and then stops working. It doesn't say any error, even when I added the handle error. So I'm not sure what's wrong and why it's stopping randomly. Same thing would happen with the python live scrapper. The stream is still running, I have to manually close and reopen it which is annoying. There's just a blinking line when the problem happens. Anyone get this problem too? Other than that it's working perfectly.
Extra details:
Using a udp server to send messages to somewhere else, now using asyncio instead of https to download profile picture (could be the problem not sure)

My scraper scraps profile pictures and comments and just the average stuff. Sometimes it runs for 4 hours straight and then stops working and then sometimes it works for 5 minutes and then stops working. It doesn't say any error, even when I added the handle error. So I'm not sure what's wrong and why it's stopping randomly. Same thing would happen with the python live scrapper. The stream is still running, I have to manually close and reopen it which is annoying. There's just a blinking line when the problem happens. Anyone get this problem too? Other than that it's working perfectly.
Extra details:
Using a udp server to send messages to somewhere else, now using asyncio instead of https to download profile picture (could be the problem not sure)

Have you tried to use disconnected for event as close of connection?
Also you could make some kind of ping for your intern system, where  you check if last received data was for example 60 secs.


How to use the XPath Bridge with a Cookie

So, I wanted to have an RSS Feed from the Apps of my YunoHost installation, so I can create a different Front end using WordPress. But sadly, that doesn't exist, I think...
So my idea was, that I could just use XPath and RSS Bridge, but you need to log in into the Frontend to see the Apps...
YunoHost also doesn't include HTTP login, so I need to login with my Browser and use the Cookie created for it...
Therefore, how do I define the Cookie in the Bridge, and how do I extract that from Firefox?
Or do you have any other idea on how to get the RSS Feed?

Alright, I found out how to get the Cookie from Firefox and saw, that I would need to define three different Cookies.

How to find the Cookies

Press F12
Go to Web storage (or something like that, I have the german Version)
Go to Cookies (you should already be there)
There they are listed


JBDS-4092 WIP Mac OS X devstudio.app starts with empty screen

Fix gets rid of resolution where req/package.json located.
It explicitly deefines node root location and adjust imort
statements thoughout the tests. Plus adds configuration for
protractor targeted installer executable that depends on
plaform ui-tests are running. Also it updates reuire calls
with packjage.json and requirements.json.
Tested on windows and mac os x. ui-tests have many errors
under Mac, but it is not a concern for this fix.

test this


Refoss Smart Wi-Fi Garage Door Opener, RSG100HK Integration

Is the Refoss Smart Wi-Fi Garage Door Opener, RSG100HK going to be supported (soon)?

Hello, thank you for your feedback. We will develop supported firmware as soon as possible

Hello,  We will consider your suggestion and thank you for your feedback。


add KDPM2DiscreteScheduler

and add a force flag for setup_venv.ps1

@cstueckrath can you please rebase it and also squash the commits to single commit.

sure, can you give me instructions for that? I'm not doing this very often...

I FUBARed it.
I'll lifeboat my changes, delete my Fork and start with a new PR

sure, can you give me instructions for that? I'm not doing this very often...
 SHARK  git fetch origin
 SHARK  git rebase origin/main
Current branch main is up to date.
 SHARK  git checkout main
Already on 'main'
Your branch is up to date with 'origin/main'.
 SHARK  git merge --squash
Already up to date. (nothing to squash)

Do I have to git rebase -i HEAD~x What should x be?
Hmm, reading some instructions for all of that now. Can take a while
Uh, I think I've made it worse...

whenever you make new changes, try to use git commit --amend, it will update the same commit instead of creating a new commit. Also force push in this case git push <repo> <branch> -f.


Acceptance mode for serverless artillery

Acceptance Mode
Find defects before performance testing! Acceptance mode runs each flow in your script exactly once and reports the results.
To use:
Add -a to invoke command:
$ slsart invoke -a

To run exclusively in acceptance mode, hard code the mode into your script:
{
  mode: acceptance
  ...
}

note: 'acceptance' may be abbreviated to 'acc' in the script
Scripts running in acceptance mode do not require a phases array in the config section of the script.

I made the mistake of assuming these changes had been tested.  A couple infinite loops were present.  Eliminating those now.

a bit confusing that I submitted a review of my own commit after pushing the fixes suggested in a later commit... but...  the infinite loops are gone (including serverless cancer) *and* I added proper exit coding in response to failures.
this should be good for final review and merging.  to be totally honest, I've only tested with the simple default script against a live lambda so... there's that.  but the unit tests cover a few good cases.
be critical please?  (and thank you!)

BTW - one of those commits turned on the reporter that produces a marked up version of the code so that you can see our coverage on a line-by-line basis.  See ~/coverage/lcov-report/index.html and drill in... :D


Trying RC10 channel

Actually, I have a repo where I used RC3 deno port (this) and node's rc10. Node port seems like it's working pretty well, so I thought why not move RC3 to RC10?

The repo I mentioned above: https://github.com/uzinfocom-org/xeorarch


ensure secret names are unique and rfc1123 compliant

Append a random string to the end of generated secret names to ensure they are unique for a cluster.  They also need to be rfc1123 compliant:
https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#dns-subdomain-names
Fixes LP 1911445

As noted in the linked bug, admins could create a user with non-rfc1123 data (like an uppercase letter).  The charm would use that as part of the k8s secret name, which would cause an error in secret creation:
$ juju run-action --wait kubernetes-master/0 user-create name=Bob
unit-kubernetes-master-0:
  UnitId: kubernetes-master/0
  id: "31"
  results:
    Stderr: |
      The Secret "Bob-token-auth" is invalid: metadata.name: Invalid value: "Bob-token-auth": a lowercase RFC 1123 subdomain must consist of lower case alphanumeric characters, '-' or '.', and must start and end with an alphanumeric character (e.g. 'example.com', regex used for validation is '[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*')
    Stdout: |
      Cluster "juju-cluster" set.
      Property "users" unset.
      User "Bob" set.
      Context "juju-context" modified.
      Switched to context "juju-context".
    kubeconfig: juju scp kubernetes-master/0:/home/ubuntu/Bob-kubeconfig .
    msg: User "Bob" created.
    users: admin, system:kube-controller-manager, system:kube-proxy, system:node:juju-2a8f8a-10,
      system:node:juju-2a8f8a-11, system:node:juju-2a8f8a-12, system:kube-scheduler,
      system:monitoring, Bob
  status: completed

$ kubectl get secrets -n kube-system --kubeconfig config | grep -i bob || echo "not found"
not found

With this fix, the charm will ensure the secret name is valid so it can be created:
$ juju run-action --wait kubernetes-master/0 user-create name=Bob
unit-kubernetes-master-0:
  UnitId: kubernetes-master/0
  id: "33"
  results:
    Stdout: |
      Cluster "juju-cluster" set.
      Property "users" unset.
      User "Bob" set.
      Context "juju-context" modified.
      Switched to context "juju-context".
    kubeconfig: juju scp kubernetes-master/0:/home/ubuntu/Bob-kubeconfig .
    msg: User "Bob" created.
    users: admin, system:kube-controller-manager, system:kube-proxy, system:node:juju-2a8f8a-10,
      system:node:juju-2a8f8a-7, system:node:juju-2a8f8a-11, system:node:juju-2a8f8a-8,
      system:node:juju-2a8f8a-12, system:node:juju-2a8f8a-9, system:kube-scheduler,
      system:monitoring, Bob
  status: completed

$ kubectl get secrets -n kube-system --kubeconfig config | grep -i bob || echo "not found"
bob-l1xrzi1bv7-token-auth                        juju.is/token-auth                    4      95s

As noted in the linked bug, admins could create a user with non-rfc1123 data (like an uppercase letter).  The charm would use that as part of the k8s secret name, which would cause an error in secret creation:
$ juju run-action --wait kubernetes-master/0 user-create name=Bob
unit-kubernetes-master-0:
  UnitId: kubernetes-master/0
  id: "31"
  results:
    Stderr: |
      The Secret "Bob-token-auth" is invalid: metadata.name: Invalid value: "Bob-token-auth": a lowercase RFC 1123 subdomain must consist of lower case alphanumeric characters, '-' or '.', and must start and end with an alphanumeric character (e.g. 'example.com', regex used for validation is '[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*')
    Stdout: |
      Cluster "juju-cluster" set.
      Property "users" unset.
      User "Bob" set.
      Context "juju-context" modified.
      Switched to context "juju-context".
    kubeconfig: juju scp kubernetes-master/0:/home/ubuntu/Bob-kubeconfig .
    msg: User "Bob" created.
    users: admin, system:kube-controller-manager, system:kube-proxy, system:node:juju-2a8f8a-10,
      system:node:juju-2a8f8a-11, system:node:juju-2a8f8a-12, system:kube-scheduler,
      system:monitoring, Bob
  status: completed

$ kubectl get secrets -n kube-system --kubeconfig config | grep -i bob || echo "not found"
not found

With this fix, the charm will ensure the secret name is valid so it can be created:
$ juju run-action --wait kubernetes-master/0 user-create name=Bob
unit-kubernetes-master-0:
  UnitId: kubernetes-master/0
  id: "33"
  results:
    Stdout: |
      Cluster "juju-cluster" set.
      Property "users" unset.
      User "Bob" set.
      Context "juju-context" modified.
      Switched to context "juju-context".
    kubeconfig: juju scp kubernetes-master/0:/home/ubuntu/Bob-kubeconfig .
    msg: User "Bob" created.
    users: admin, system:kube-controller-manager, system:kube-proxy, system:node:juju-2a8f8a-10,
      system:node:juju-2a8f8a-7, system:node:juju-2a8f8a-11, system:node:juju-2a8f8a-8,
      system:node:juju-2a8f8a-12, system:node:juju-2a8f8a-9, system:kube-scheduler,
      system:monitoring, Bob
  status: completed

$ kubectl get secrets -n kube-system --kubeconfig config | grep -i bob || echo "not found"
bob-l1xrzi1bv7-token-auth                        juju.is/token-auth                    4      95s

Initially, i didn't bother to validate the name parameter for the user_create action since create_secret now ensures valid secret names in the charm. However, if someone added a name that contained our secret delimiter (::), it would cause problems.
I can't think of a good use case to allow anything but alphanum, '-', and '.' for the name parameter, so the latest commit enforces that.

Initially, i didn't bother to validate the name parameter for the user_create action since create_secret now ensures valid secret names in the charm. However, if someone added a name that contained our secret delimiter (::), it would cause problems.
I can't think of a good use case to allow anything but alphanum, '-', and '.' for the name parameter, so the latest commit enforces that.

This LGTM. But I would be happy to see some consideration given to the mixed messages coming from user-list and user-create regarding the : character.

This LGTM. But I would be happy to see some consideration given to the mixed messages coming from user-list and user-create regarding the : character.

This LGTM. But I would be happy to see some consideration given to the mixed messages coming from user-list and user-create regarding the : character.

Thanks for the feedback.  I'm moving user-list around a bit in lp 1906732, so i'll tweak the action wording and/or double check the allowance of : in the pr for that.

This LGTM. But I would be happy to see some consideration given to the mixed messages coming from user-list and user-create regarding the : character.

Thanks for the feedback.  I'm moving user-list around a bit in lp 1906732, so i'll tweak the action wording and/or double check the allowance of : in the pr for that.


Issue with Phantoms Setting

Hey, the Phantoms did not disappear anymore. We had checked on Serverside and Clientside if the setting is disabled, but it does not work correctly. The phantoms spawn with disabled setting
Please look on this

thank you, i will look at it while im updateing the mod to the newest version

thank you, i will look at it while im updateing the mod to the newest version

did you know, when it will updated?


Code example does not compile

Error	CS0246	The type or namespace name 'HttpDependenciesParsingTelemetryInitializer' could not be found (are you missing a using directive or an assembly reference?)
Error	CS1061	'DependencyTrackingTelemetryModule' does not contain a definition for 'ExcludeComponentCorrelationHttpHeadersOnDomains' and no accessible extension method 'ExcludeComponentCorrelationHttpHeadersOnDomains' accepting a first argument of type 'DependencyTrackingTelemetryModule' could be found (are you missing a using directive or an assembly reference?)

@Turochamp Is this issue resolved?

Yes, the example code was .Net Framework not .Net Core.
On Mon, Jul 15, 2019 at 6:56 PM Karishma Tiwari - MSFT <
<EMAIL_ADDRESS>wrote:

@Turochamp https://github.com/Turochamp Is this issue resolved?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/MicrosoftDocs/azure-docs/issues/35119?email_source=notifications&email_token=AFZRYP3UR7CIPUIYUN7NOCLP7STV7A5CNFSM4IDVK4AKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGODZ6JUUA#issuecomment-511482448,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AFZRYP2PO2WVRVISC6W6UBTP7STV7ANCNFSM4IDVK4AA
.

--
+47-458-025 89
Skype: michaelahs

Thanks for sharing the update. Glad you were able to resolve it.


Add option to questions.yaml for both csi and cpi to switch secret management to Rancher

Pull Request Checklist

[x] Any new images or tags consumed by charts has been added here
[ ] Chart version has been incremented (if necessary)

Is this done at the end of a release covering all changes within that release, if not is the pattern to bump both app and chart version?

[x] That helm lint and pack run successfully on the chart.
[ ] Deployment of the chart has been tested and verified that it functions as expected.

Bit tricky to do for use case, can this be skipped?

[x] Changes to scripting or CI config have been tested to the best of your ability (not applicable)

Types of Change

Add bool questions to both csi and cpi questions.yaml to offer secret management via Rancher
When true UI creates the secret
When false (default) the legacy behaviour of the secret created via helm is used

Linked Issues

https://github.com/rancher/dashboard/issues/11892
https://github.com/rancher/dashboard/issues/11920

Additional Notes

Required for 2.8.9, 2.9.3 and 2.10.0.

After the PR is merged
Once the PR is merged, typically upon a new release, the necessary teams will be notified via Slack hook to perform the RKE2 Charts and RKE2 changes. Any developer working on this issue is not responsible for updating RKE2 Charts or RKE2.

No longer required


⚠ AsianCinema has degraded performance

In c5ba8b6, AsianCinema ($ACM) experienced degraded performance:

HTTP code: 200
Response time: 3094 ms

Resolved: AsianCinema performance has improved in f34cb7a after 6 minutes.


Test cost calculation against C

We could add this to the c_rust_merkle fuzz test. https://github.com/BlockstreamResearch/simplicity/pull/166 exposes the API we need for FFI.

We also need to update the cost of disconnect: https://github.com/BlockstreamResearch/simplicity/pull/168


Add mean methods to the instances of truncated distributions

See #2.

Codecov Report
Base: 91.91% // Head: 89.43% // Decreases project coverage by -2.47% :warning:

Coverage data is based on head (dee811d) compared to base (32796b3).
Patch coverage: 74.13% of modified lines in pull request are covered.

Additional details and impacted files
@@            Coverage Diff             @@
##             main       #3      +/-   ##
==========================================
- Coverage   91.91%   89.43%   -2.48%
==========================================
  Files           3        3
  Lines         272      284      +12
==========================================
+ Hits          250      254       +4
- Misses         22       30       +8

Impacted Files
Coverage Δ

src/InitialMassFunctions.jl
100.00% <ø> (ø)

src/lognormal.jl
85.21% <33.33%> (-3.20%)
:arrow_down:

src/powerlaw.jl
93.61% <81.63%> (-1.88%)
:arrow_down:

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

:umbrella: View full report at Codecov.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.


Add deprecationMessage for deprecated DownloadPackageV0 and NuGet... tasks

Tasks:
DownloadPackage@0
NuGetAuthenticate@0
NuGetInstaller@0
NuGetPackager@0
NuGetPublisher@0
NuGetRestore@1
NuGet@0
Description: Add the tailored deprecation message in addition to the common deprecation message.
Documentation changes required: No
Added unit tests: No
Attached related issue: N/A
Checklist:

[x] Task version was bumped - please check instruction how to do it
[x] Checked that applied changes work as expected

@amp-powell This PR has been created in addition to another one. The link to the documentation is not provided in the tailored deprecation message since it is already included in the common deprecation message.

/azp run


feat(executor): Use single global watch.

Signed-off-by: Alex Collins<EMAIL_ADDRESS>Checklist:

[x] My organization is added to USERS.md.

TestWorkflowWait

TestWorkflowWait

estCLIWithServerOverGRPCSuite/TestArchive/List

estCLIWithServerOverGRPCSuite/TestArchive/List


view wngine source code

There are multiple view engines that could be used to do this. The default view engine is called
Razor, and it uses the @ symbol to indicate server-side code execution.


Scroll area does not follow selected column for data tables with many columns

Open a blob container.
If necessary, upload a blob with a long name, or switch to Flat list mode.
Focus on the data table. Use the arrow keys to move the cell selection to the right.

The scroll area does scroll, but not by much. After moving several columns to the right, the selected cell border is no longer visible.

We are actively looking for improvements/replacements to the data table, which will resolve this issue. We do not plan on looking for a direct fix for this.


[POLAND] Missing postal codes for polish addresses.

Hi,
I've found that many polish addresses are missing postal codes (or actually they have value 00-000).
After some analysis, it seems that the root cause for that situation is the wrong data provided by authorities.
However, I think there is a solution. All polish postal codes are provided by The Polish Post and it's updated monthly.
Here is the link - https://www.poczta-polska.pl/hermes/uploads/2013/11/spispna.pdf
Combining the current data and the postal code data can improve the data significantly. I'm happy to contribute, but I need some guidance :)

That list is great! In terms of guidance, I think the most reasonable step would be to convert the PDF into a tabular data file, or find a machine readable version. Does Poczta Polska offer this list in a spreadsheet or database format?

It seems that Poczta Polska is not allowing to use that data for free.


[ISSUE] Not working after install, restart, and setup

What happened?
Followed install and added a lock to the integration along with all of the users and PINs.

Lock Manager integration shows 1 device with no entities.
Log states the lock is not connected to Home assistant:
2024-06-08 11:43:23.940 DEBUG (MainThread) [custom_components.lock_code_manager] b1a7258842d25d3ad69482d020909a4d (Lock Manager): Lock lock.front_door_lock is not connected to Home Assistant yet, waiting 180 seconds before retrying
Zwave Integration shows lock as connected:

Dashboard error shows:
Error loading the view strategy: TypeError: Cannot read properties of undefined (reading 'entity_id')

Steps to reproduce the issue

Install via HACS
Restart HA
Configure lock in Lock Manger Integration
Create Lovelace view
Viewed dashboard and logs

Home Assistant Version
2024.6.01
What version of Lock Code Manager are you running?
0.4.6
Lock make and model
Schlage BE469
Relevant log output
2024-06-08 12:01:53.581 ERROR (MainThread) [homeassistant.config_entries] Error unloading entry Side Garage for lock_code_manager
Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/config_entries.py", line 809, in async_unload
result = await component.async_unload_entry(hass, self)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/config/custom_components/lock_code_manager/__init__.py", line 264, in async_unload_entry
await async_unload_lock(hass, config_entry)
File "/config/custom_components/lock_code_manager/__init__.py", line 228, in async_unload_lock
if not any(
^^^^
File "/config/custom_components/lock_code_manager/__init__.py", line 229, in <genexpr>
entry != config_entry and lock_entity_id in entry.data[CONF_LOCKS]
~~~~~~~~~~^^^^^^^^^^^^
KeyError: 'locks'
2024-06-08 12:02:28.702 DEBUG (MainThread) [custom_components.lock_code_manager] 4a9bc752564c48579d9eda1671e2e2fd (Front Door): Lock lock.front_door_lock is not connected to Home Assistant yet, waiting 128 seconds before retrying
2024-06-08 12:02:28.702 DEBUG (MainThread) [custom_components.lock_code_manager] 6684a40f2c2e609eb745f48b2061d3d3 (Side Garage): Lock lock.garage_side_door_lock is not connected to Home Assistant yet, waiting 128 seconds before retrying
2024-06-08 12:04:36.702 DEBUG (MainThread) [custom_components.lock_code_manager] 4a9bc752564c48579d9eda1671e2e2fd (Front Door): Lock lock.front_door_lock is not connected to Home Assistant yet, waiting 180 seconds before retrying
2024-06-08 12:04:36.703 DEBUG (MainThread) [custom_components.lock_code_manager] 6684a40f2c2e609eb745f48b2061d3d3 (Side Garage): Lock lock.garage_side_door_lock is not connected to Home Assistant yet, waiting 180 seconds before retrying
2024-06-08 12:05:30.571 WARNING (MainThread) [homeassistant.bootstrap] Setup timed out for bootstrap waiting on {<Task pending name='Initial setup for entities for 4a9bc752564c48579d9eda1671e2e2fd' coro=<async_update_listener() running at /config/custom_components/lock_code_manager/__init__.py:418> wait_for=<Future pending cb=[Task.task_wakeup()]> cb=[set.remove()]>, <Task pending name='Initial setup for entities for 6684a40f2c2e609eb745f48b2061d3d3' coro=<async_update_listener() running at /config/custom_components/lock_code_manager/__init__.py:418> wait_for=<Future pending cb=[Task.task_wakeup()]> cb=[set.remove()]>} - moving forward

Screenshots
No response
Anything else?
No response

Is this issue resolved, or is it waiting for an upstream fix? I'm still seeing the problem where it appears to be waiting for the lock to become connected, however it is connected:
2024-06-17 16:23:46.619 DEBUG (MainThread) [custom_components.lock_code_manager] 616504be0af7bcf4875a7d92fcb67166 (Garage door): Lock lock.garage_inside_door is not connected to Home Assistant yet, waiting 128 seconds before retrying


Cannot bind argument to parameter 'Filter' because it is null

Hi,
When using the xWebApplication resource I get the following error:
Cannot bind argument to parameter 'Filter' because it is null
When looking at the errors in the Event Viewer, I can find the following:

This event indicates that a non-terminating error was thrown when DSCEngine was executing Set-TargetResource on MSFT_xWebApplication DSC resource. FullyQualifiedErrorId is ParameterArgumentValidationErrorNullNotAllowed,Microsoft.IIs.PowerShell.Provider.SetConfigurationPropertyCommand. Error Message is Cannot bind argument to parameter 'Filter' because it is null..

MIResult: 1
Error Message: Destination element already exists, please use "force" parameter to override.
Message ID: Destination element already exists, please use "force" parameter to override.,Microsoft.IIs.PowerShell.Provider.NewWebApplicationCommand
Error Category: 5
Error Code: 5
Error Type: MI

The DSC configuration block I built looks like the following:
 WindowsFeature WebServer {
        Ensure = "Present"
        Name   = "Web-Server"
    }

    File "$($Instance)CommonFolder" {
        DestinationPath = "C:\inetpub\wwwroot\$($Instance)\Services\Common"
        Type            = "Directory"
    }

    xWebAppPool "$($Instance)CommonAppPool" {
        Name            = "$($Instance)_Common"
        Ensure          = "Present"
        State           = "Started"
        autoStart       = $true
        startMode       = "OnDemand"
        loadUserProfile = $false
    }

    xWebApplication "$($Instance)CommonApplication" {
        Name               = "$($Instance)/Services/Common"
        WebAppPool         = "$($Instance)_Common"
        Website            = "Default Web Site"
        PhysicalPath       = "C:\inetpub\wwwroot\$($Instance)\Services\Common"
        Ensure             = "Present"
        AuthenticationInfo = MSFT_xWebApplicationAuthenticationInformation {
            Anonymous = $true
            Basic     = $false
            Digest    = $false
            Windows   = $true
        }
        DependsOn          = "[xWebAppPool]$($Instance)CommonAppPool", "[WindowsFeature]$($Instance)WebServer", "[File]$($Instance)CommonFolder"
    }

Is there any workarround for this Bug?


OSX build fails - nested functions not allowed

OSX 10.11.6
timeseries.c:74:21: error: function definition is not allowed here     void cleanup () {}                     ^ timeseries.c:96:33: warning: implicit declaration of function 'cleanup' is invalid in C99 [-Wimplicit-function-declaration]     RMUTIL_ASSERT_NOERROR(srep, cleanup);
gcc --version Configured with: --prefix=/Applications/Xcode.app/Contents/Developer/usr --with-gxx-include-dir=/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.12.sdk/usr/include/c++/4.2.1 Apple LLVM version 8.0.0 (clang-8<IP_ADDRESS>) Target: x86_64-apple-darwin15.6.0 Thread model: posix InstalledDir: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin

Hi,
Thanks for info. I will try to fix it soon. I didn't compile it mac...
If you have a patch that fix it thats great.
Thanks,
Noam

I'm working on a patch. As a workaround I refactored the code to remove the nested functions, I still have to improve it to remove duplicate code blocks.

All improvements are welcome.  There are still missing features if you're up to it :)

That is the problem, I'm not a C developer.


Implement Get mentors by category endpoint (Admin) #26

Purpose

The purpose of this PR is to fix #26
Goals

This issue involves implementing an API to get mentors by category. The endpoint should allow Admin to make a GET request to {{baseUrl}}/api/admin/mentors?category={{category}}.
Approach

    const mentors: Mentor[] = await mentorRepository       .createQueryBuilder('mentor')       .innerJoinAndSelect('mentor.category', 'category')       .leftJoinAndSelect('mentor.profile', 'profile')       .select([         'mentor.uuid',         'category.category',         'mentor.application',         'profile.contact_email',         'profile.first_name',         'profile.last_name',         'profile.image_url',         'profile.linkedin_url'       ])       .where('category.category ILIKE :name', {         name: categoryQuery       })       .getMany()
Screenshots

Checklist

[x] This PR doesn't commit any keys, passwords, tokens, usernames, or other secrets.
[x] I have read and understood the development best practices guidelines ( http://bit.ly/sef-best-practices )
[ ] My code follows the style guidelines of this project
[x] 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

Related PRs

Test environment

Learning

@anjula-sack please review this


Update Transport protocol with Content-Type

@sekulicd we need to add a new transport.proto as specified on BOTD #2.
It's ok for now to not add google annotations for HTTP 1 API endpoint mappings.
We'll do that later, in sync with the daemon.


Modify favicon for Hulga theme

Do you know the steps for modifying the favicon for Hulga theme?

You can just put your favicon file into the static folder of your hugo site.

Could you please confirm whether the static folder under the hugo site folder should be used for the favicon file instead of the themes/hulga/static?  Why is the default favicon still present when we run hugo server for prereview?

This theme doesn't have its own favicon. I just created a new hugo site and tested, I think static folder under the hugo site is ok, you don't need to change themes folder. If you change a favicon of your site, maybe you should clear the cache and refresh (Ctrl + F5)?

Thanks whl320, I solved the issue by following steps:

Add <link href="/img/favicon.ico" rel="icon">  on the /hugosite/themes/hulga/layouts/partials/head.html
Copy the favicon.ico into hugosite/static/img
Add favicon = "/img/favicon.ico" on /hugosite/config.toml


About 1000==1 GPU

Hello! First and foremost, I would like to express my sincere gratitude for your hard work on the Kubernetes Scheduler Simulator project. Your contribution is of immense value to the community.
During my reading of the documentation and usage, I came across a question regarding the GPU metrics. I noticed that 1000==1 GPU is used as an important criterion in certain configurations. I am curious about the meaning behind this metric and why such a division was chosen. I would greatly appreciate it if you could provide some background information or explanation on this matter.
Thank you once again for your contribution, and I look forward to your response.
Best regards!

Hi @hjiema ,
The idea of 1000 milliGPU =1 GPU is inspired by the Kubernetes CPU units (docs):

CPU units
The CPU resource is measured in CPU units. One CPU, in Kubernetes, is equivalent to:

1 AWS vCPU
1 GCP Core
1 Azure vCore
1 Hyperthread on a bare-metal Intel processor with Hyperthreading

Fractional values are allowed. A Container that requests 0.5 CPU is guaranteed half as much CPU as a Container that requests 1 CPU. You can use the suffix m to mean milli. For example 100m CPU, 100 milliCPU, and 0.1 CPU are all the same. Precision finer than 1m is not allowed.

Since the simulator is featured by the support of GPU sharing workloads, it allows GPU requirements with precision between 1 GPU and 1/1000 GPUs.


ics27(upgrades): Ensure upgrade parameters are checked explicitly in app callbacks

Summary

OnChanUpgradeInit function on keeper should verify that proposed version is valid (only encoding, tx type can change), the order is valid and connection hops are valid.
OnChanUpgradeAck should ensure the version is valid doing the same checks as in ChanUpgradeInit. (can have common function they both call OR just make the checks explicit).
Document what can be changed in upgrade and what cannot.

For Admin Use

[ ] Not duplicate issue
[ ] Appropriate labels applied
[ ] Appropriate contributors tagged/assigned

Is this needed for host?

Is this needed for host?

I think so!

Closed by #5472 and #5519


long running wizard failed to load module

Had the intro wizard open for several days, when i finally saved it (successfully) ended with:
The function will not be run in future, but you can run
it yourself as follows:
  autoload -Uz zsh-newuser-install
  zsh-newuser-install -f

The code added to ~/.zshrc is marked by the lines
# Lines configured by zsh-newuser-install
# End of lines configured by zsh-newuser-install
You should not edit anything between these lines if you intend to
run zsh-newuser-install again.  You may, however, edit any other part
of the file.
/etc/zsh/zshrc:19: failed to load module `zsh/terminfo': /usr/lib/i386-linux-gnu/zsh/5.6/zsh/terminfo.so: cannot open shared object file: No such file or directory
/etc/zsh/zshrc:19: failed to load module `zsh/terminfo': /usr/lib/i386-linux-gnu/zsh/5.6/zsh/terminfo.so: cannot open shared object file: No such file or directory
/etc/zsh/zshrc:19: failed to load module `zsh/terminfo': /usr/lib/i386-linux-gnu/zsh/5.6/zsh/terminfo.so: cannot open shared object file: No such file or directory
/etc/zsh/zshrc:19: failed to load module `zsh/terminfo': /usr/lib/i386-linux-gnu/zsh/5.6/zsh/terminfo.so: cannot open shared object file: No such file or directory
/etc/zsh/zshrc:19: failed to load module `zsh/terminfo': /usr/lib/i386-linux-gnu/zsh/5.6/zsh/terminfo.so: cannot open shared object file: No such file or directory
/etc/zsh/zshrc:19: failed to load module `zsh/terminfo': /usr/lib/i386-linux-gnu/zsh/5.6/zsh/terminfo.so: cannot open shared object file: No such file or directory
/etc/zsh/zshrc:19: failed to load module `zsh/terminfo': /usr/lib/i386-linux-gnu/zsh/5.6/zsh/terminfo.so: cannot open shared object file: No such file or directory
/etc/zsh/zshrc:19: failed to load module `zsh/terminfo': /usr/lib/i386-linux-gnu/zsh/5.6/zsh/terminfo.so: cannot open shared object file: No such file or directory
/etc/zsh/zshrc:19: failed to load module `zsh/terminfo': /usr/lib/i386-linux-gnu/zsh/5.6/zsh/terminfo.so: cannot open shared object file: No such file or directory
/etc/zsh/zshrc:19: failed to load module `zsh/terminfo': /usr/lib/i386-linux-gnu/zsh/5.6/zsh/terminfo.so: cannot open shared object file: No such file or directory
/etc/zsh/zshrc:19: failed to load module `zsh/terminfo': /usr/lib/i386-linux-gnu/zsh/5.6/zsh/terminfo.so: cannot open shared object file: No such file or directory
/etc/zsh/zshrc:73: failed to load module `zsh/terminfo': /usr/lib/i386-linux-gnu/zsh/5.6/zsh/terminfo.so: cannot open shared object file: No such file or directory
/etc/zsh/zshrc:86: failed to load module `zsh/terminfo': /usr/lib/i386-linux-gnu/zsh/5.6/zsh/terminfo.so: cannot open shared object file: No such file or directory
/etc/zsh/zshrc:86: failed to load module `zsh/terminfo': /usr/lib/i386-linux-gnu/zsh/5.6/zsh/terminfo.so: cannot open shared object file: No such file or directory
/etc/zsh/zshrc:103: failed to load module `zsh/parameter': /usr/lib/i386-linux-gnu/zsh/5.6/zsh/parameter.so: cannot open shared object file: No such file or directory
compinit:191: failed to load module `zsh/parameter': /usr/lib/i386-linux-gnu/zsh/5.6/zsh/parameter.so: cannot open shared object file: No such file or directory
compaudit:16: failed to load module `zsh/parameter': /usr/lib/i386-linux-gnu/zsh/5.6/zsh/parameter.so: cannot open shared object file: No such file or directory

Since the start the package had been upgraded:
# grep zsh /var/log/dpkg.log|grep upgrade
2018-09-15 10:51:50 upgrade zsh:i386 5.6-1 5.6.1-1
2018-09-15 10:51:54 upgrade zsh-common:all 5.6-1 5.6.1-1
2018-09-17 17:42:23 upgrade zsh:i386 5.6.1-1 5.6.2-1
2018-09-17 17:42:32 upgrade zsh-common:all 5.6.1-1 5.6.2-1
2018-09-22 15:30:52 upgrade zsh:i386 5.6.2-1 5.6.2-3
2018-09-22 15:30:54 upgrade zsh-common:all 5.6.2-1 5.6.2-3

This is solved by just restarting the zsh session. As you said, files where changed while running so it could not load unexistent files.


Crash in trufont when editing glyphs with qcurve

When editing glyphs in some fonts, trufont trips over "NotImplementedError: unknown segment type: qcurve".
Traceback (most recent call last):
File "/home/bert/.virtualenvs/trufont/lib/python3.8/site-packages/trufont/controls/glyphCanvasView.py", line 451, in mouseReleaseEvent
self._redirectEvent(event, self._currentTool.mouseReleaseEvent, True)
File "/home/bert/.virtualenvs/trufont/lib/python3.8/site-packages/trufont/controls/glyphCanvasView.py", line 527, in _redirectEvent
callback(event)
File "/home/bert/.virtualenvs/trufont/lib/python3.8/site-packages/trufont/drawingTools/knifeTool.py", line 135, in mouseReleaseEvent
contour.splitAndInsertPointAtSegmentAndT(index, t / prev)
File "/home/bert/.virtualenvs/trufont/lib/python3.8/site-packages/defcon/objects/contour.py", line 573, in splitAndInsertPointAtSegmentAndT
self._splitAndInsertAtSegmentAndT(segmentIndex, t, True)
File "/home/bert/.virtualenvs/trufont/lib/python3.8/site-packages/defcon/objects/contour.py", line 598, in _splitAndInsertAtSegmentAndT
raise NotImplementedError("unknown segment type: %s" % segmentType)
NotImplementedError: unknown segment type: qcurve.
The above crash can be reproduced reliably by opening https://github.com/playbeing/dinish/tree/master/sources/DinishCondensed/DinishCondensed-Regular.ufo with the v2.004 git tag, open small "o" in the glyph editor, selecting the knife tool, and cutting the "o" vertically to create a "c" out of the shape.
As a workaround, the font can be converted to OTF format, the glyph can then be edited in the OTF copy, then copied and pasted.
Using defcon 0.8.1 from pip, which seems to be up-to-date in git as far as this module is concerned.
I looked at contour.py, but I don't understand enough about quadratic and cubic curves to fill in the blanks. I was pretty good at math in high school, but every time I try to code with bezier curves my mind turns a blank :-)

Hey @driehuis, thank you for filing an issue! Looking at the traceback, it seems like this may be an issue with Trufont, not defcon. Seems like defcon is giving Trufont a qcurve and the contour.splitAndInsertPointAtSegmentAndT method in Trufont doesn't know how to deal with it. Have you also filed an issue with Trufont on this?

I almost did file an issue against Trufont, but then it dawned on me that the exception is thrown from defcon/objects/contour.py:598, which reads:
            # XXX could be a quad. in that case, we could handle it.
            raise NotImplementedError("unknown segment type: %s" % segmentType)

contour.splitAndInsertPointAtSegmentAndT is also in this file.
I think that's solidly in defcon's yard, isn't it?

@driehuis Right, my bad — I searched for that method and it didn't turn up on first search. This is a known issue with that code (see #2), it doesn't handle splitting quadratic curves currently.
I'm changing the title of this issue to reflect that; though I don't know if this will get fixed anytime soon. Would be very happy to take a PR that does fix it, however.


Fix typo in tools.yml

"Unrdered Lists" > "Unordered Lists"

Wow, this is embarrassing! 😳 Thank you so much!!!


Amplify init parameters for headless mode dont support json from file (or its not documented)

Is this feature request related to a new or existing Amplify category?
New category
Is this related to another service?
No response
Describe the feature you'd like to request
Now its used jq to load JSON from file: https://docs.amplify.aws/cli/usage/headless/#headless-category-payloads
But for init parameters its have Unix scripts only:
https://docs.amplify.aws/cli/usage/headless/#amplify-init-parameters
Example script for amplify init is platform dependent /bin/bash (cannot work on Windows)
Describe the solution you'd like
I have try to run from command line:
 amplify init --amplify {"projectName":"tsAWSlayer","envName":"dev","defaultEditor":"code"} --frontend {  "frontend": "javascript",  "framework": "react",  "config": {    "SourceDir": "src",    "DistributionDir": "build",    "BuildCommand": "npm run-script build",    "StartCommand": "npm run-script start"  }} --providers {  "awscloudformation": {    "configLevel": "project",    "useProfile": true,    "profileName": "default"  }}
and this is the error:
Cannot create property 'providers' on string '{projectName:tsAWSlayer,envName:dev,defaultEditor:code}'
TypeError: Cannot create property 'providers' on string '{projectName:tsAWSlayer,envName:dev,defaultEditor:code}'
    at transform (C:\Users\smari\AppData\Roaming\nvm\v16.6.0\node_modules\@aws-amplify\cli\src\input-params-manager.ts:45:32)
    at Object.normalizeInputParams (C:\Users\smari\AppData\Roaming\nvm\v16.6.0\node_modules\@aws-amplify\cli\src\input-params-manager.ts:10:3)
    at Object.constructInputParams (C:\Users\smari\AppData\Roaming\nvm\v16.6.0\node_modules\@aws-amplify\cli\src\amplify-service-helper.ts:8:34)
    at constructExeInfo (C:\Users\smari\AppData\Roaming\nvm\v16.6.0\node_modules\@aws-amplify\cli\src\commands\init.ts:15:18)
    at Object.run (C:\Users\smari\AppData\Roaming\nvm\v16.6.0\node_modules\@aws-amplify\cli\src\commands\init.ts:26:3)
    at Object.executeAmplifyCommand (C:\Users\smari\AppData\Roaming\nvm\v16.6.0\node_modules\@aws-amplify\cli\src\index.ts:373:25)
    at processTicksAndRejections (node:internal/process/task_queues:96:5)
    at executePluginModuleCommand (C:\Users\smari\AppData\Roaming\nvm\v16.6.0\node_modules\@aws-amplify\cli\src\execution-manager.ts:204:3)

Describe alternatives you've considered
I'd like to be possible json file relative path to be provided
amplify init --amplify scripts/amplify_init.json
this will work on any platform that amplify-cli can be installed (including Windows)
Is this something that you'd be interested in working on?

[ ] 👋 I may be able to implement this feature request
[ ] ⚠ This feature might incur a breaking change

Hi @sytolk, what you have should work just remove all the extra spaces as in the below example:
amplify init --amplify {"projectName":"tsAWSlayer","envName":"dev","defaultEditor":"code"} --frontend {"frontend":"javascript","framework":"react","config":{"SourceDir":"src","DistributionDir":"build","BuildCommand":"npm run-script build","StartCommand":"npm run-script start"}} --providers {"awscloudformation":{"configLevel":"project","useProfile":true,"profileName":"default"}} --yes

Closing with above comment, please reopen if you still have issues

Hi @lazpavel the problem in command line is that JSON can't be formatted and it's hard to be changed. This is the reason cat and jq to be used and JSON to be loaded from file. But this is platform specific Unix only. It's much better amplify cli to take JSON from the file. Don't you think? If you think so pease reopen the issue

@jhockett I think its better to review this issue first: rethink skip usage of cat && jq to compress JSON before to change documentation in this: https://github.com/aws-amplify/amplify-cli/issues/9049


feat: added delete agent command

Please describe the purpose of this pull request.
Basic command to allow deleting an agent
How to test
memgpt delete-agent --agent-name MemGPT_agent

Have you tested this PR?
Yes

Added to #905


bug/ Fill the heart icon on favorited skills

When a user adds a skill to favorites, the heart icon on the skill should be filled to indicate that the user has already clicked on it.

Related: If not logged in, go to login url on skill actions


node-packages' generate.sh makes many duplicate requests

Issue description
I ran generate.sh as per Nixpkgs manual §9.11, and before it had even finished I noticed a great number of duplicate requests to npmjs.org.
Since I'm not certain about npm's inner workings, I used tcpdump to confirm that duplicate HTTP requests are being sent.
Some stats
74% of all requests are duplicates.
Note: all the below is only v10 packages, and I canceled the script before it even ran to completion. (I'm running it again just to confirm.)
Edit: generate.sh fails on master@f0ec7c6f072e0c734d95d3a62344c949faa3443a right now anyway, but I still get the following stats:
$ grep '^http 200' reqs | wc
   5881   17643  274467
$ grep '^http 200' reqs | sort -u |wc
   1541    4623   72882

(5881.0 - 1541)/5881 ~ .74 : 74% of requests are duplicates.
  I've thought about using a caching proxy or something as a kludge-fix, but really it'd be best to avoid all the duplicate work altogether (and I'm unsure how much a role the request plays vs other work).

Last time I looked at this, I got as far as "it's uses javascript" (not my strongest :3), "it caches lookups based on nix AST of the expression evaluated", dunno if I found if AST's were different (perhaps in unimportant ways) or if there was a bug in the caching.  Oh, and because javascript is confusing :P it might be the case that the cache works just fine but is limited to each invocation, and we're invoking it for each package or something?
Haha, hope this helps! Fixing this would help a lot, and facilitate more regular updating.


Return error on mlx plugin on firmware reset check

This commit makes the functions to return error if we are not able to read from the configuration cache on the node.

followup on https://github.com/k8snetworkplumbingwg/sriov-network-operator/pull/734
@adrianchiris @ykulazhenkov please take a look :)

/test-all

thanks @adrianchiris
merging


Add removing models from mlflow server before create new ones

We can do this by adding some "data reset procedure" before environment startup by removing the whole database  of mlflow or something similar

Gonna be solved by using clean database with no models on start of dev-environment

Gonna be solved by using clean database with no models on start of dev-environment

Since #79 all models are removed just before containers startup so we can be sure that in case of some issues we have th e ability to debug  old models (which are not removed before we start new setup process of environment)

Since #79 all models are removed just before containers startup so we can be sure that in case of some issues we have th e ability to debug  old models (which are not removed before we start new setup process of environment)


Problems building and other things

I wanted to try redub, but I had some problems with it.
Some info about my setup:

OS:  Ubuntu Studio 23.10
DMD64 D Compiler v2.107.0
LDC 1.30.0 based on DMD v2.100.1 and LLVM 14.0.6

So:

I cloned the repo and run dub -b debug-release --compiler=ldc2 but I get this error message: Unknown build type for redub: 'debug-release'. Building with dub build seems to work.
I can build redub with redub but I can't build my project with redub. I get this error message: core.exception.RangeError@/home/alex/Documents/redub/source/redub/parsers/environment.d(259): Range violation. My project depends on one library. I also put that library inside my project's source folder but I had the same error.

For some extra info about 2, the library that I use with my project is this one.

Oh sorry the first flag I put it wrong. It should be release-debug instead of debug-release .
I'll try to get into point 2 asap too

I wasn't able to reproduce this issue on Windows. This looks like very strange. I'll have to take a look in unbuntu

redub's  redub/source/redub/parsers/environment.d(259) with imported!"std.stdio".writeln("Return: ", ret, " [Start: ", outStart, "] Source: ", str, " [Start: ", srcStart, "]");, build it and test against your project then send me what it shows?

Fixed:
The problem was that the parser was failing in some situations when trying to escape $.
Test Case Added:
    assert(parseStringWithEnvironment("$$ORIGIN") == "$ORIGIN");


stream view: Show "start a conversation" for a topic with no messages.

Previously we showed "no search results".
CZO conversation:
https://chat.zulip.org/#narrow/stream/9-issues/topic/.22no.20search.20results.22.20in.20topic.20view/near/1637289

Merged, thanks @evykassirer!


Minor inconsistencies across platforms

BakkesMod Version:

RocketPlugin Version:  0.6.7

Inconsistencies across Epic and Steam platforms.
Missing 'copy map and restart' button:
When under the 'Joining a local game' section of the GUI, selecting a custom map provides the button to copy map and restart. However on Epic this button remains a 'join.' When pressing a red banner appears however nothing appears until after the game responds from timeout.
cvar usage:
A further bug discovered is that the path setting doesn't appear to effect this version of rocket plugin. I've noticed both rp_workshop_path and rp_custom_path do not appear to effect the plugin and even if set to the same on both platforms, they can point to different folders independently. I don't know if the cause of this something of the game, of the plugin, or maybe even bakkesmod.
To Reproduce
Steps to reproduce the behavior for missing 'copy map and restart' button:

Set up bakkes/rocket plugin on Epic
Install UDK map files in the mods folder
Attempt to select a custom map

Steps to reproduce the behavior for cvar usage:

Set up bakkes/rocket plugin on Epic or Steam
Change the cvar for either rp_custom_path or rp_workshop_path
Open GUI and select 'enable custom map' under hosting or 'joining a custom map' under joining
You should notice default paths for workshop and custom still remain default despite the cvar being set.

Expected behavior

Copy map and restart should appear on epic and allow players to convert udk files into upk files for play.
After setting the cvar, the plugin should be able to read the directory set and make use of the maps.

Screenshots
Missing "copy map and restart" button (left is Steam, right is Epic)

Here's an example with a single map (on Epic):

Cvars not effecting rocket plugin on both platforms (top is Steam, bottom is Epic):

The latest update should have fixed this.


jwt_authn filter Jwt header [alg] field value is invalid

Hi,
I know this filter is still not released yet. But when I try to validate a JWT token with  the following  header
{
  "kid": "xyz",
  "alg": "RS512"
}

, it fails saying "Jwt header [alg] field value is invalid"
Is this expected, if so how to get around this.
Thanks
Bharath

Only ES256 and RS256 is supported algorithm currently. @qiwzhang I think we should explicitly document it.
@rbkumar88 are you trying to use JWT with RS512?

Yes,  only ES256 and RS256 are supported in the current implementation.
The code is here:  https://github.com/google/jwt_verify_lib/blob/master/src/jwt.cc#L67
You are welcomed to enhance it.

Sure thanks for the help. Is this filter configurable(enable/disable) or overrideable at route level like buffer filter?

Currently it doesn't take config from route table.   But its requirement is based on the RouteMatch:
https://github.com/envoyproxy/envoy/blob/d101ae7decfdae148f53ea9d2220444c726dfbfd/api/envoy/config/filter/http/jwt_authn/v2alpha/config.proto#L309