text:
Improve ability to delete performed skill events in bulk

Currently, Project administrators have the ability to remove individual skill events or all of the skill events at once.  Add the ability to delete large amounts of performed skills at once without deleting all events for a user.  One idea is to add a check box to the Performed Skills table allowing Admins to select multiple rows and then delete them all at once.
see: https://skilltreeplatform.dev/dashboard/user-guide/users.html#performed-skills

Ran into an issue while testing: if the deleted skill(s) have an error an alert is displayed (in this case the error was You cannot delete a skill event when a parent skill dependency has already been performed.) After some amount of seconds the alert then disappears. Any further failures to the deletes are not shown and it silently fails. Suggesting the following improvements:

The alert should not go away on its own and remain visible while allowing user to close the alert.
Any further errors should update the alert.
Any action (delete, filter, reset) should clear the alert

:+1:

authors: rmmayo sudo-may

repo: NationalSecurityAgency/skills-service


text:
Merge metadata file in the app's exutable file

Merge metadata file in the app's executable file. Because of App Thinning, only one slice of the binary will be installed on the phone, so unnecesery metadata will be strpipped as part of unnecessary slice. This is will reduce the NativeScript app size.

Is this the same as https://github.com/NativeScript/ios-runtime/issues/179 ?

Yes, I thougth there is no issue for this. I will remove it.

Unfortunately, there is no way to completely delete an issue in github :). I will remove all labels and close it.

source: gharchive/issue

authors: ivanbuhov jasssonpet

repo: NativeScript/ios-runtime

license_type: permissive

license_source: github-api


text:
Fixes issues with resolution of canonical paths

This PR addresses an issue with absolute module paths not being resolved correctly in certain cases. For example, paths like ./A/moment.js and ../moment.js  did not resolve to the same path and the moment.js module was loaded twice like a different module.
See issue #822 for more details.

@PanayotCankov - we think the normalizePath call here: https://github.com/NativeScript/ios-runtime/commit/fba35eab7fe12a307a64aeda06f65b9aaa1e07e5 is redundant. Can you shed some more light on why it was introduced considering that we already call [NSString stringByStandardizingPath] on the module path?

https://developer.apple.com/documentation/foundation/nsstring/1407194-stringbystandardizingpath
For absolute paths only, resolving references to the parent directory (that is, the component “..”) to the real parent directory if possible using stringByResolvingSymlinksInPath. For relative paths, references to the parent directory are left in place.
When live-sync-ed without --sync-all-files, the CLI and the runtime work in a way the app folder only is delivered to the device in an external folder, and the node_modules (tns_modules on device) are symlinked, then there are cases where absolute paths that are concatenated with relative paths are resolved to the real directory in the app bundle. Then there are cases where from some modules, content in the app folder is searched, again by relative paths. This ended up to a state where the same module may be executed twice, once in the symlinked path and once in the original (e.g. have two "application" executed leading to funny stuff such as "there is no main entry specified" on startup).
I couldn't find iOS method that will collapse paths such as "/abv/../cde" to "/cde" without resolving symlinks to real paths, and that's why normalizePath is there, we really need it to resolve .. and . in paths without following symlinks.

@PanayotCankov - we've introduced a change in TKLiveSync that replaces sym-linking with hard-linking which should allow us to remove the normalizeString call and solely rely on [String stringByStandardizingPath] call.

Well, it seems hard-linking is not working for us either as the app bundle and the livesync package live in different partitions. We will resort to solely using [String stringByStandardizingPath] at the point where the main token is appended to the absolute path. @mbektchiev @tdermendjiev @PanayotCankov .

source: gharchive/pull-request

authors: PanayotCankov ginev


text:
Failed to find Angular2 own created module

hi everyone,
I'm trying to setup a nativescript-angular app using a module I created myself. The app compiles fine but when executing I get an error that the module cannot be found
An uncaught Exception occurred on "main" thread.
java.lang.RuntimeException: Unable to create application com.tns.NativeScriptApplication: com.tns.NativeScriptException:

Error calling module function

Error calling module function

Error: com.tns.NativeScriptException: Failed to find module: "test-angular-2-module", relative to: app/tns_modules/
    com.tns.Module.resolvePathHelper(Module.java:159)
    com.tns.Module.resolvePath(Module.java:60)
    com.tns.Runtime.runModule(Native Method)
    com.tns.Runtime.runModule(Runtime.java:514)
    com.tns.Runtime.run(Runtime.java:509)
    com.tns.NativeScriptApplication.onCreate(NativeScriptApplication.java:17)
    android.app.Instrumentation.callApplicationOnCreate(Instrumentation.java:1013)
    android.app.ActivityThread.handleBindApplication(ActivityThread.java:4707)
    android.app.ActivityThread.-wrap1(ActivityThread.java)
    android.app.ActivityThread$H.handleMessage(ActivityThread.java:1405)
    android.os.Handler.dispatchMessage(Handler.java:102)
    an

You can see the module declaration here
https://github.com/dgomezs/test-angular2-module
and the mobile app which is the default just importing my module
https://github.com/dgomezs/test-mobile-app
Some info about my environment
tns --version --> 2.4.2
node -v --> 7.4.0
npm --version --> 4.0.5
Any idea what is wrong with my setup or with the module configuration? I want my modules to be compatible with nativescript and a Angular2 web app so i can reuse as much as code as possible.
Thank you very much in advanced.
Best
David

Your external module needs some changes to get this working:

Add a main key to your package.json. That will get the require implementation to resolve the module properly.
Your index.js is an ES6 module, which isn't supported by the NativeScript runtimes. Tell TypeScript to target ES5 modules.

@hdeshev thank you very much. It's working now

authors: dgomezs hdeshev

repo: NativeScript/nativescript-angular


text:
Add Altmetric-friendly meta tags

Please could you add the meta tags below to each dataset to enable altmetric tracking?

citation_doi
citation_author
citation_title
citation_online_date

eg for the collection specimens set:
<meta name="citation_doi" content="doi:10.5519/0002965" />
<meta name="citation_author" content="Natural History Museum" />
<meta name="citation_title" content="Collection specimens" />
<meta name="citation_online_date" content="2014-12-08" />

More detail at: https://help.altmetric.com/support/solutions/articles/6000141419-what-metadata-is-required-to-track-our-content-

... probably could've guessed that ;)

Altmetric meta tags added- view-source:http://data.nhm.ac.uk/dataset/collection-specimens

authors: benscott essvee

repo: NaturalHistoryMuseum/ckanext-nhm

license: mit

license_source: bigquery


text:
Write a scrapper to download dataset from StackOverflow

Potential dataset for training the DeepLI model isa collection of questions in StackOverflow regarding bash commands and the corresponding commands.

Input - Question in StackOverflow about the command.
Output - Corresponding bash command.

Need to write a scrapper that scrap such Questions and resulting commands.

Added a dataset directory and dataset generating script, check and review PR

license: MIT


text:
[ENHANCEMENT] Add random seed

It would be really great to be able to add a random seed :)

let me think about it. with the seed, random date is generated after the seed?

authors: NaveenGurram NicolasLaube

repo: NaveenGurram/random-date


text:
Update _jokes.py

Summary

Checklist

[ ] If code changes were made then they have been tested.

[ ] I have updated the documentation to reflect the changes.

[ ] This PR fixes an issue.
[ ] This PR adds something new (e.g. new class, method or parameters).
[ ] This PR is a breaking change (e.g. methods or parameters removed/renamed)
[x] This PR is not a code change (e.g. documentation update, README, etc.)

Sure, why not :)


text:
Fix mapbox error

While asserting the location, mapbox error pop up.

MAPBOX_ACCESS_TOKEN and MAPBOX_STYLE_URL should match. They should come from a same mapbox account.

.env
MAPBOX_ACCESS_TOKEN=pk.eyJ1IjoibWFydmluLW5lYnJhIiwiYSI6ImNsMGlwYmx0cjA0d3gzY2xnNzNic3Ayd2MifQ.VjNPaKjL0Na5imtWcfCjng
MAPBOX_STYLE_URL="mapbox://styles/marvin-nebra/cl0ipgx87000v14lsjkxf50o9"
GOOGLE_MAPS_API_KEY=AIzaSyBM_IYgheisQd55VNAFT1S6qivmif6CPA0

Warning in above screen.

After clicking 'Set Location' button:

Still mapbox error comes in on Android 12 devices. @marvinmarnold confirmed about it.
I reproduced the same error on Android 12 emulator.

repo: NebraLtd/maker-starter-app


text:
replace electron version in OSX .app in build script

This PR adds version substitution to the existing .plist modification in the build script, replacing the Electron version with siaVersion.

what is the effect of this?

Applications that read version info from the .app bundle, such as Finder (if you Ctrl-I) and other system utilities, will have the correct version.

authors: johnathanhowell lukechampine

repo: NebulousLabs/Sia-UI


text:
Code wallet.dustValue() to use transactionpool.FeeEstimation

Currently the helper function dustValue() is hardcoded to 1 SC. We should re-code it to use the transactionpool.FeeEstimation(), and return the dust value equal to 3*minFee. This means the dust threshold changes over time.
The tricky thing about this is that dustValue calls out to another module, which means that it can't be called internally while the wallet is under lock. So it should probably be called managedDustValue, even though it doesn't technically act upon a stateful object. If a stateful object uses that function, the result is the same, potential deadlock unless the locking is handled correctly.
The reviewer of the pull request to fix this issue needs to be careful to ensure that all uses of the dustValue function have been updated to correctly deal with locking.

A better name for the dustValue() function would be managedDustThreshold()

repo: NebulousLabs/Sia


text:
Readme.md possible typo

Bug Report
Readme.md on https://github.com/NebulousLabs/Sia needs review:

The three dots at the end have me confused. Maybe a stupid question, but should it read:
' go get -u https://github.com/NebulousLabs/Sia.git '
?

That's intentional.
The three dots mean that all the packages that Sia depends on should also be updated. It's not a unix convention, but a custom syntax which is interpreted by go get.
https://stackoverflow.com/questions/28031603/what-do-three-dots-mean-in-go-command-line-invocations

Great. I had actually tried the ... syntax on my machine but nothing seemed to happen (now I understand wasn't patient enough)
But surely, this merits at least a comment in Readme.md that it's a Go thing and not a typo?
Especially since it's so similiar to the olde
' git clone https://github.com/ProjHome/proj.git '

go get will install the siad/siac binaries, whereas git clone just fetches the source.
This is common enough in Go repos that I don't think it warrants additional explanation, although I can see why ... could be misleading to people who haven't used Go before

authors: Fornax96 lukechampine ordtrogen


text:
Optimal Algorithms.

Write the following algorithms for:

Prediciting if the element exists in future in the given data.
Find page to be replaced.

OPTIMAL Removed

repo: NecronizerFTW/fifo-optimal-lru-py


text:
Weight Tracker: Record and display daily weight measurements with date-time picker.

As a user, I want to record my weight on a daily basis.

Done


text:
🛑 Becpl Angular UI is down

In 358927d, Becpl Angular UI ($BECPL_ANGULAR_URL) was down:

HTTP code: 0
Response time: 0 ms

Resolved: Becpl Angular UI is back up in 85f4a86 after 22 minutes.

repo: NehalDamania/becpl-uptime


text:
🛑 Becpl Angular UI is down

In 4c6b957, Becpl Angular UI ($BECPL_ANGULAR_URL) was down:

HTTP code: 0
Response time: 0 ms

Resolved: Becpl Angular UI is back up in ece2357 after 10 minutes.


text:
🛑 Becpl Angular UI is down

In 4a2b995, Becpl Angular UI ($BECPL_ANGULAR_URL) was down:

HTTP code: 0
Response time: 0 ms

Resolved: Becpl Angular UI is back up in 538d51c after 16 minutes.


text:
🛑 Becpl Angular UI is down

In bc5b405, Becpl Angular UI ($BECPL_ANGULAR_URL) was down:

HTTP code: 0
Response time: 0 ms

Resolved: Becpl Angular UI is back up in bd559ce after 5 minutes.


text:
🛑 Becpl Angular UI is down

In 77f15b4, Becpl Angular UI ($BECPL_ANGULAR_URL) was down:

HTTP code: 0
Response time: 0 ms

Resolved: Becpl Angular UI is back up in 1d5bbbe after 5 minutes.


text:
Documentation: Develop Project Website using GitHub Pages

Develop user-facing documentation for the project including visual walkthroughs of:

Installation
Usage
Research notes on persistence methods

Prerequisites:

[x] Create new Documentation repository to host site
[x] Select Markdown-based website building framework

Regarding Markdown framework, previously VuePress was used for Dortania projects. However VuePress is now in maintenance mode, and thus the spiritual successor VitePress may be a suitable alternative.

Public repo, under development:
https://github.com/Nekrosis-ISS-Capstone/Nekrosis-ISS-Capstone.github.io

repo: Nekrosis-ISS-Capstone/Nekrosis


text:
[UIApplicationDelegateImpl window]: unrecognized selector sent to instance

Which platform(s) does your issue occur on?

Both
iOS 12.2 | iOS 13.5 | Android 10
iOS Simulator and Android Real Device via USB

Please, provide the following version numbers that your issue occurs with:

CLI: 6.7.4
Runtime(s): tns-android and tns-ios version 6.5.1
Plugin(s): "nativescript-mercadopago-px": "^4.0.0",

Please, tell us how to recreate the issue in as much detail as possible.
Describe the steps to reproduce it.
En iOS al avanzar a la vista en la que cargas los datos de la tarjeta, una vez que ya seleccionaste la opcion "Tarjeta de credito" la aplicacion se rompe y devuelve este error.
En Android funciona perfecto.
file: node_modules/@nativescript/core/application/application.ios.js:312:26: JS ERROR Error: -[UIApplicationDelegateImpl window]: unrecognized selector sent to instance 0x600001e229c0

@sebalopezz solo te pasa cuando abres el teclado para ingresar los datos de la tarjeta, o te pasa en cualquier otro input de la aplicación?

Una solución simple es agregar esto en tu main.ts
declare var UIResponder,
UIApplicationDelegate,
BTAppSwitch,
UIUserInterfaceStyleLight;
if (app.ios) {
var appDelegate = UIResponder.extend(
{
get window() {
return this._window;
},
set window(aWindow) {
this._window = aWindow;
},
},
{
protocols: [UIApplicationDelegate],
}
);
app.ios.delegate = appDelegate;

}

Estoy utilizando Nativescript Vue con Javascript (no Typescript)
Tu codigo no me funciono tal cual lo pasaste, pero hice algunas modificaciones a partir de lo que pasaste y logre que funcione:
const application = require("tns-core-modules/application");
const MyDelegate = (function (_super) {
    __extends(MyDelegate, _super);
    function MyDelegate() {
        _super.apply(this, arguments);
    }
    MyDelegate = UIResponder.extend(
      {
          get window() {
              return this._window;
          },
          set window(aWindow) {
              this._window = aWindow;
          },
      },
      {
          protocols: [UIApplicationDelegate],
      }
    );

    MyDelegate.ObjCProtocols = [UIApplicationDelegate];
    return MyDelegate;
})(UIResponder);

application.ios.delegate = MyDelegate;

Muchas gracias!
En estos dias cuando tenga tiempo, envio una PR para agregar estas cuestiones al README.md

authors: NeriCodec sebalopezz

repo: NeriCodec/nativescript-mercadopago-px


text:
Loss nan

When I run the command:
python3 compress_classifier.py -a=resnet18 ../../../data.imagenet -j 22 --epoch=180 --lr=0.001 --compress=../../../yaml/resnet18-baseline.yaml --gpu=0
resnet18-baseline.yaml:
lr_schedulers:
  training_lr:
    class: StepLR
    step_size: 45
    gamma: 0.10

policies:
    - lr_scheduler:
        instance_name: training_lr
      starting_epoch: 45
      ending_epoch: 200
      frequency: 1

At first, the training run all right. But at epoch 19, the loss changed to nan, while the correctness began to deline. I don't know whether my data sets have something wrong or  lr or something else.
fragment of the log:
2020-03-04 19:31:07,350 - Epoch: [19][ 2290/ 4505]    Overall Loss 3.239098    Objective Loss 3.239098    Top1 32.776508    Top5 57.088735    LR 0.001000    Time 0.607148
2020-03-04 19:31:19,060 - Epoch: [19][ 2300/ 4505]    Overall Loss 3.239080    Objective Loss 3.239080    Top1 32.776664    Top5 57.089164    LR 0.001000    Time 0.609587
2020-03-04 19:31:21,718 - Epoch: [19][ 2310/ 4505]    Overall Loss 3.238959    Objective Loss 3.238959    Top1 32.782738    Top5 57.090605    LR 0.001000    Time 0.608092
2020-03-04 19:31:34,043 - Epoch: [19][ 2320/ 4505]    Overall Loss 3.238968    Objective Loss 3.238968    Top1 32.783371    Top5 57.090349    LR 0.001000    Time 0.610778
2020-03-04 19:31:36,740 - Epoch: [19][ 2330/ 4505]    Overall Loss 3.239078    Objective Loss 3.239078    Top1 32.788358    Top5 57.088754    LR 0.001000    Time 0.609309
2020-03-04 19:31:45,462 - Epoch: [19][ 2340/ 4505]    Overall Loss 3.239078    Objective Loss 3.239078    Top1 32.790465    Top5 57.085837    LR 0.001000    Time 0.610432
2020-03-04 19:31:48,100 - Epoch: [19][ 2350/ 4505]    Overall Loss nan    Objective Loss nan    Top1 32.725066    Top5 56.964262    LR 0.001000    Time 0.608939
2020-03-04 19:31:59,121 - Epoch: [19][ 2360/ 4505]    Overall Loss nan    Objective Loss nan    Top1 32.586566    Top5 56.725040    LR 0.001000    Time 0.611020
2020-03-04 19:32:01,889 - Epoch: [19][ 2370/ 4505]    Overall Loss nan    Objective Loss nan    Top1 32.449400    Top5 56.487507    LR 0.001000    Time 0.609588
2020-03-04 19:32:07,246 - Epoch: [19][ 2380/ 4505]    Overall Loss nan    Objective Loss nan    Top1 32.313715    Top5 56.253283    LR 0.001000    Time 0.609252
2020-03-04 19:32:15,716 - Epoch: [19][ 2390/ 4505]    Overall Loss nan    Objective Loss nan    Top1 32.178511    Top5 56.018894    LR 0.001000    Time 0.610237
2020-03-04 19:32:18,554 - Epoch: [19][ 2400/ 4505]    Overall Loss nan    Objective Loss nan    Top1 32.044759    Top5 55.787760    LR 0.001000    Time 0.608862

I want to know whether anyone else met the same problem. Thank you:)

Hi @cindybrain ,
I have not seen this issue before.
A couple of things I can point out:

The problem starts at epoch 19, so it should not have anything to do with resnet18-baseline.yaml, because that is only scheduled at epoch 45.
If the loss is a nan, then one of the loss components is problematic.  So try to break when the loss is nan (use torch.isnan).  Which layer is introducing the problem?  Is it a conv or fc layer?  Are the weights problematic?  If so, is the problem with the gradients or the optimizer update?

I suspect the gradients (vanishing or exploding), in which case try changing the initialization of the weights.  For conv layers, pytorch opts for init.kaiming_uniform_ by default:
https://github.com/pytorch/pytorch/blob/9a5e9d8cecb1c68eebd69618729a7ec5671b2a06/torch/nn/modules/conv.py#L56
Try nn.init.kaiming_normal_
Cheers
Neta

I encoutered the same probelm while use this command line:
python compress_detector.py --data-path ./public_data/coco --compress maskrcnn.scheduler_agp_structure.yaml

My config file:
version: 1

pruners:

  # fc_pruner:
  #   class: AutomatedGradualPruner
  #   initial_sparsity : 0.01
  #   final_sparsity: 0.85
  #   weights: [
  #     roi_heads.box_head.fc6.weight,
  #     roi_heads.box_head.fc7.weight
  #   ]

  agp_pruner_75:
    class: L1RankedStructureParameterPruner_AGP
    initial_sparsity : 0.01
    final_sparsity: 0.75
    group_type: Filters
    weights: [
      backbone.body.layer1.0.conv1.weight,
      backbone.body.layer1.0.conv2.weight,
      backbone.body.layer1.0.conv3.weight,
      backbone.body.layer1.0.downsample.0.weight,
      backbone.body.layer1.1.conv1.weight,
      backbone.body.layer1.1.conv2.weight,
      backbone.body.layer1.1.conv3.weight,
      backbone.body.layer1.2.conv1.weight,
      backbone.body.layer1.2.conv2.weight,
      backbone.body.layer1.2.conv3.weight,
      backbone.body.layer2.0.conv1.weight,
      backbone.body.layer2.0.conv2.weight,
      backbone.body.layer2.0.conv3.weight,]

  agp_pruner_85:
    class: L1RankedStructureParameterPruner_AGP
    initial_sparsity : 0.01
    final_sparsity: 0.85
    group_type: Filters
    weights: [
      backbone.body.layer2.0.downsample.0.weight,
      backbone.body.layer2.1.conv1.weight,
      backbone.body.layer2.1.conv2.weight,
      backbone.body.layer2.1.conv3.weight,
      backbone.body.layer2.2.conv1.weight,
      backbone.body.layer2.2.conv2.weight,
      backbone.body.layer2.2.conv3.weight,
      backbone.body.layer2.3.conv1.weight,
      backbone.body.layer2.3.conv2.weight,
      backbone.body.layer2.3.conv3.weight,
      backbone.body.layer3.0.conv1.weight,
      backbone.body.layer3.0.conv2.weight,
      backbone.body.layer3.0.conv3.weight,
      backbone.body.layer3.0.downsample.0.weight,
      backbone.body.layer3.1.conv1.weight,
      backbone.body.layer3.1.conv2.weight,
      backbone.body.layer3.1.conv3.weight,
      backbone.body.layer3.2.conv1.weight,
      backbone.body.layer3.2.conv2.weight,
      backbone.body.layer3.2.conv3.weight,
      backbone.body.layer3.3.conv1.weight,
      backbone.body.layer3.3.conv2.weight,
      backbone.body.layer3.3.conv3.weight,
      backbone.body.layer3.4.conv1.weight,
      backbone.body.layer3.4.conv2.weight,
      backbone.body.layer3.4.conv3.weight,
      backbone.body.layer3.5.conv1.weight,
      backbone.body.layer3.5.conv2.weight,
      backbone.body.layer3.5.conv3.weight,
      backbone.body.layer4.2.conv3.weight,
      # backbone.fpn.inner_blocks.0.weight,
      # backbone.fpn.inner_blocks.1.weight,
      # backbone.fpn.inner_blocks.2.weight,
      # backbone.fpn.inner_blocks.3.weight,
      # backbone.fpn.layer_blocks.0.weight,
      # backbone.fpn.layer_blocks.1.weight,
      # backbone.fpn.layer_blocks.2.weight,
      # backbone.fpn.layer_blocks.3.weight,
      # rpn.head.conv.weight,
      # roi_heads.mask_head.mask_fcn1.weight,
      # roi_heads.mask_head.mask_fcn2.weight,
      # roi_heads.mask_head.mask_fcn3.weight,
      # roi_heads.mask_head.mask_fcn4.weight,
      # roi_heads.mask_predictor.conv5_mask.weight,
    ]

  agp_pruner_90:
    class: L1RankedStructureParameterPruner_AGP
    initial_sparsity : 0.01
    final_sparsity: 0.90
    group_type: Filters
    weights: [
    backbone.body.layer4.0.conv1.weight,
    backbone.body.layer4.0.conv2.weight,
    backbone.body.layer4.0.conv3.weight,
    backbone.body.layer4.0.downsample.0.weight,
    backbone.body.layer4.1.conv1.weight,
    backbone.body.layer4.1.conv2.weight,
    backbone.body.layer4.1.conv3.weight,
    backbone.body.layer4.2.conv1.weight,
    backbone.body.layer4.2.conv2.weight,
    ]

policies:
  - pruner:
     instance_name : agp_pruner_75
    starting_epoch: 0
    ending_epoch: 45
    frequency: 1

  - pruner:
     instance_name : agp_pruner_85
    starting_epoch: 0
    ending_epoch: 45
    frequency: 1

  # - pruner:
  #     instance_name : fc_pruner
  #   starting_epoch: 0
  #   ending_epoch: 45
  #   frequency: 3

  - pruner:
      instance_name : agp_pruner_90
    starting_epoch: 0
    ending_epoch: 45
    frequency: 1

authors: SHu0421 nzmora zeyu-hello

repo: NervanaSystems/distiller


text:
[ONNXIFI] 4. Add class Tensor

A wrapper class for ONNXIFI tensor descriptor.
Signed-off-by: Artur Wojcik artur.wojcik@intel.com

I removed distinction between InputTensor and OutputTensor in favour of just Tensor class realizing both read and write operations.

repo: NervanaSystems/ngraph


text:
Plans for supporting K8s 1.23.x and 1.24.x

Hi,
I was wondering about plans to support newer versions of K8s. Are there plans to support beegfs 7.1.5 on the K8s version 1.23.x and other versions since 1.24 is planned for April?

Hello @klis,
We plan to release a new version near the end of April that will support Kubernetes v1.23. Our general cadence is a new minor or patch release every 3-4 months. We test on any the latest versions of Kubernetes that can be deployed into our test infrastructure with Kubespray. Kubespray tends to lag behind the latest version of Kubernetes by a few months itself, so we don't tend to support Kubernetes versions right on release.
See https://github.com/NetApp/beegfs-csi-driver#support-policy for a bit more detail.
That being said, we haven't had to modify anything about the driver or its deployment manifests to make it work with a specific Kubernetes version since Kubernetes v1.19 released, so it is likely the current version can be deployed on Kubernetes v1.23 (and soon on Kubernetes v1.24). We simply can't provide any guarantees.

@ejweber thanks for the quick response. And since we are talking about versions, will v1.2.1 work on K8s 1.22.7? I see that you support 1.22.3 but since this is the minor version I'm thinking to upgrade all the way to K8s v1.22.7.

Thanks for the info.

authors: ejweber klis

repo: NetApp/beegfs-csi-driver


text:
Harvest dashboards should use a custom all value of .* where possible

Custom all variables
There are two kinds of All variables in harvest:

Normal
Partial

The normal All variables can be changed to .* while the partial ones can not. Changing the partial ones to use .* breaks panel queries using that var.
Evaluate that .* does not cause Prometheus performance issues and if it does not change the normal all variables to .*
TopK

[ ] Remove pending hidden topk vars as mentioned here and replace panel queries with @ modifier

Verified on 24.05.0 commit 279150f8 also covered by unit test

repo: NetApp/harvest


text:
Changing a strategy parameter in Deployment from Recreate to RollingUpdate

Describe the solution you'd like
I want to change a strategy parameter of trident-csi deployment, which is created by Trident Operator, from Recreate to RollingUpdate.
When a trident-csi pod from deployments is updating, trident-csi from daemonset occor this error.
$ kubectl rollout restart deployment trident-csi
$ starn trident-csi
...
trident-csi-qtfjb trident-main time="2020-08-20T02:53:31Z" level=debug msg="Controller not yet ready, waiting." error="could not log into the Trident CSI Controller: error communicating with Trident CSI Controller; Put \"https://10.27.2.48:34571/trident/v1/node/demo-netapptest-master-default-e5534874-khqsw\": dial tcp 10.27.2.48:34571: connect: connection refused" increment=989.409747ms
...

I think that this is correct behavior.
But I would like to reduce connection loss during trident-csi update.
Describe alternatives you've considered
In other idea, you try to change number of replicas.
Additional context
none

@ysakashita,
We've looked at this and want to know more about the use case. We do not understand the advantage of using RollingUpdate here when the Trident Controller is not yet ready during a Trident upgrade. Can you provide more information.

@gnarl We want to avoid trident-csi downtime as much as possible.
As you may know, the current strategy(Recreate) in Deployment work as follows.
https://kubernetes.io/docs/concepts/workloads/controllers/deployment/
All existing Pods are killed before new ones are created when .spec.strategy.type==Recreate.

Therefore, downtime for trident-csi is longer.
On the other hand, the strategy(RolliongUpdate) is able to control  the rolling update process. (e.g. maxUnavailable)
This will reduce downtime because the old trident-csi will not be lost until the new trident-csi is ready.

Hi @ysakashita,
I've talked to the team about this issue. Since Trident is a stateful application the running Trident deployment must be stopped before the upgraded Trident deployment can be started. That said we are looking into the performance of the Trident daemonset registering with the Trident controller. While this doesn't address the logged error you reported we may be able to improve the overall upgrade performance for a K8S cluster with a large number of worker nodes.

I am fine with any method as long as it reduces the downtime of trident-csi. 👍

This issue is fixed with commit and will be included in the Trident 21.07 release.

authors: gnarl ysakashita

repo: NetApp/trident


text:
文档演示应用拖拽异常

无法拖拽，无反应

请问 issue 里提到的演示应用是示例站点 https://tango-demo.musicfe.com/ 还是本地启动 playground 呢？如果是示例网站的话，理论上沙箱和 demo 是同域的，应该是能正常交互的，辛苦提供下浏览器控制台的错误信息
如果是本地启动 playground，请确认已严格按照 文档 中的流程初始化，尤其是「启动本地沙箱」部分。由于本地调试本质上是需要跨域操作的，在 Chrome 上需要特定的 HTTP 响应头，因此需要使用特定的 Web 服务器配置才能正常运行。如果使用了其他 HTTP 服务器，请确认沙箱的 HTTP 请求包含 Origin-Agent-Cluster: ?0 这一响应头

目前示例应用的组件库是使用 antd 简单包装的。组件部分我们目前正在逐步的完善中，有一些功能还没完全并到社区版本中，我们会在近期进行完善。

@ccloli 后续我们可以提供一个带 Node Server 的标准示例应用

本地启动的playground的，没有保存按钮，只有发布按钮 @ccloli ，你提到的文档，点击入去是找不到的，麻烦重新提供新的文档。谢谢

本地启动的playground的，没有保存按钮，只有发布按钮 @ccloli ，你提到的文档，点击入去是找不到的，麻烦重新提供新的文档。谢谢

上面的使用文档已经迁移至 https://netease.github.io/tango-site/docs/designer/quick-start/ ，原来的路由目前已经改为组件的 API 文档。
目前 Tango 开源的部分是核心的搭建引擎，playground 主要是预览 Tango 的搭建能力，所以周边功能还没有补充到示例应用中，后续我们会完善示例应用的功能。
如果你需要获取引擎搭建的源码，可以在 playground 中绑定发布按钮的 onClick 事件，通过调用 workspace.listFiles() 或直接访问 workspace.files 获取引擎内部的文件源码。

authors: FKLam Harhao ccloli wwsun

repo: NetEase/tango


text:
Update document procedure migration OS

Description

Documentation has been updated describing the OS migration procedure

Checklist

[ ] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation
[ ] Integration CI passed
[ ] Unit tests. If Yes list of new/changed tests with brief description
[ ] There is no merge conflicts

Unit tests
Indicate new or changed unit tests and what they do, if any.

dup of #252

repo: Netcracker/KubeMarine


text:
Hystrix Request Cache

Hi,
I'm using Hystrix command in my application. I have written getCacheKey mathod and this is getting invoked during runtime. But then the command gets timedout, the response is served from cache and getting below exception,
XXXCommand timed-out and fallback disabled.
Is there a way to retrieve HystrixCache in fallback method?
Thanks

The goal of the HystrixRequestCache is to limit command executions of the same type/argument in the same request.  I'm not exactly sure what you're asking, but the expected behavior of 2 commands with request-caching and for the same cache key is:
Scenario A - SUCCESS
Command 1 executes and returns a value successfully
Command 2 finds that value in the cache and returns it
Scenario B - TIMEOUT w/o fallback
Command 1 starts executing but times out before a value is returned
Command 2 finds the TimeoutException in the cache and returns it.
Scenario C - TIMEOUT w/ fallback
Command 1 starts executing but times out and returns a fallback
Command 2 finds the fallback value in the cache and returns it
Does that explanation help?

Thanks for the the response! This reply helps to understand the expected behavior. But I'm in Scenario C when I'm not getting the response from HystrixRequestCache even if CacheKey is same for subsequent requests.
Is it mandatory that all instance variable should be same or only cache key should be same to get response from cache?

The request-cache will be used on a different command instance that has the same command key and cache key

Closing due to inactivity.  Please reopen if there's more to discuss

authors: kbsivacse mattrjacobs

repo: Netflix/Hystrix


text:
[Fine Grained Approach w/ GraphiQL Collapse] Replace path properties with @ConfigurationProperties

Fixes gh-128
@paulbakker  @berngp this is the version of #152 that ALSO collapses the graphiql module into the webmvc module.
I verified that we can still disable graphiql via the dgs.graphql.graphiql.enabled property.

I'm not sure what to prefer, both would be ok to me. @bono007 @berngp What do you think?

I think it is fine to merge them. The only thing that i was thinking overnight was... how would this look like with webflux. But I think we can review it when that time comes.

Sorry for the lack of overall context w/ the 3 of these sitting around here for review. :)
Like. you suggested @paulbakker - lets close the coarse-grained one. I like this fine-grained w/ collapse of graphiql  one myself.  As for WebFlux, I kept the exact constraints in place w/ the collapse - they should behave identical.
If we want to not enable graphiql when using webflux - we can add the appropriate guards to the module. Typically its cleaner to have separate modules for mvc/webflux but it can be done in the same module - we do this in several core/shared starters at my company and it has worked out well.
Also, if it comes down to us having to split this back out in some form due to WebFlux - I will be more than happy to do that.

I'm ok with either approach, we'll work out the WebFlux question when we have it. Do you prefer this approach (merging the modules) over keeping it separate?

I'm ok with either approach, we'll work out the WebFlux question when we have it. Do you prefer this approach (merging the modules) over keeping it separate?

It's hard to tell much difference between the two approaches here in a merge request, but when pulled down in editor I think the collapsed is the cleaner of the two.

Ok, let's go with that! Are you ready to merge (I think it looks good)

Cool.  Lets do it
On Sun, Mar 14, 2021, 4:32 PM Paul Bakker @.***> wrote:

Ok, let's go with that! Are you ready to merge (I think it looks good)
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/Netflix/dgs-framework/pull/153#issuecomment-798983671,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AG4RTQYBFXUXNFMZIRRBVPTTDUTNVANCNFSM4ZFDJ4AQ
.

@bono007 @paulbakker unfortunately this doesn't take into account that server.servlet.context-path may be configured to something other than /, which breaks GraphiQL since it's trying to find the GraphQL endpoint under /graphql. The controller is still working fine. I think the context path should probably be prepended to the path before replacing <DGS_GRAPHQL_PATH> in GraphiQLConfigurer.

@jandrade1 good catch. The servlet context path is something I don't use that often so it's easy for me to forget that use case. Would you mind creating an issue for this and I will get to it in the next 24hrs?
I bet this was an issue prior to any configurable paths. Since the path in graphiql was /graphql, if the context path was set to something other than / then it would not have been able to find it. The evolution of this feature has been:
I will probably leverage one of ServletUriComponentsBuilder, UriComponentsBuilder or just grab the "server.servlet.context-path" configuration property.

thanks @bono007, created a new issue: https://github.com/Netflix/dgs-framework/issues/171

repo: Netflix/dgs-framework


text:
ACME CA certificate  request is failing with externalAccountBinding error ...

Using the documentation, I was able to create ACME CA with the URL provided by Sectigo. Then when I tried sample cert request it failed with the following error:
acme.messages.Error: urn:ietf:params:acme:error:externalAccountRequired :: The server requires external account binding :: The request must include a value for the "externalAccountBinding" field
2020-09-09 00:49:01,065 DEBUG: {'function': 'lemur.common.celery.sync_source_destination', 'message': 'syncing AWS destinations and sources', 'task_id': 'ef39db61-def1-4d8c-9210-86559f4e1c63'} [in /opt/app/lemur/lemur/common/celery.py:582]
I am using /opt/app/lemur as installation folder.
I understand, I may have to have the CONFIG details for EAB ID and EAB Key for External Account Binding.
What I need help is to how to pass these values in lemur.conf.py or other location? I do not see these options when ACME accounts are created. How do we handle multiple ACME providers and their configurations.

I tried the following:
Pass EAB HMAC key for ACME_PRIVATE_KEY and
ACME_REGR = '{"body": {}, "uri": "https://acme.sectigo.com/v2/InCommonRSAOV/acct/EAB_KID"}'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/opt/app/lemur/lemur/certificates/service.py", line 348, in create
cert_body, private_key, cert_chain, external_id, csr = mint(**kwargs)
File "/opt/app/lemur/lemur/certificates/service.py", line 298, in mint
cert_body, cert_chain, external_id = issuer.create_certificate(csr, kwargs)
File "/opt/app/lemur/lemur/plugins/lemur_acme/plugin.py", line 637, in create_certificate
acme_client, registration = self.acme.setup_acme_client(authority)
File "/opt/app/lemur/lib/python3.6/site-packages/retrying.py", line 49, in wrapped_f
return Retrying(*dargs, **dkw).call(f, *args, **kw)
File "/opt/app/lemur/lib/python3.6/site-packages/retrying.py", line 212, in call
raise attempt.get()
File "/opt/app/lemur/lib/python3.6/site-packages/retrying.py", line 247, in get
six.reraise(self.value[0], self.value[1], self.value[2])
File "/opt/app/lemur/lib/python3.6/site-packages/six.py", line 703, in reraise
raise value
File "/opt/app/lemur/lib/python3.6/site-packages/retrying.py", line 200, in call
attempt = Attempt(fn(*args, **kwargs), attempt_number, False)
File "/opt/app/lemur/lemur/plugins/lemur_acme/plugin.py", line 244, in setup_acme_client
key = jose.JWK.json_loads(existing_key)
File "/opt/app/lemur/lib/python3.6/site-packages/josepy/interfaces.py", line 182, in json_loads
raise errors.DeserializationError(error)
josepy.errors.DeserializationError: Deserialization error: Expecting value: line 1 column 1 (char 0)
2020-09-11 16:18:12,439 ERROR: Exception minting certificate [in /opt/app/lemur/lemur/certificates/service.py:350]
Traceback (most recent call last):
File "/opt/app/lemur/lib/python3.6/site-packages/josepy/interfaces.py", line 180, in json_loads
loads = json.loads(json_string)
File "/usr/lib/python3.6/json/init.py", line 354, in loads
return _default_decoder.decode(s)
File "/usr/lib/python3.6/json/decoder.py", line 339, in decode
obj, end = self.raw_decode(s, idx=_w(s, 0).end())
File "/usr/lib/python3.6/json/decoder.py", line 357, in raw_decode
raise JSONDecodeError("Expecting value", s, err.value) from None
json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0)
I am also checking with my CA support on the correct URI to pass.

When I register with certbot client, it registers with the following information:
{"body": {}, "uri": "https://acme.sectigo.com/v2/InCommonRSAOV/account/EAB_KID"}
Where EAB_KID is my account ID. I tried recreating the Authority by passing this URL. I still get above Python error. Now, I believe, passing ACME_PRIVATE_KEY in lemur.conf.py resolved externalAccountBinding error.
Next battle is with this Python error..

ACME_PRIVATE_KEY needs to be in the JWK format (e.g. similar to this)
{
    "kty": "RSA",
    "n": "yr1qBwHizA7ME_iV32bY10ILp.....",
    "e": "AQAB",
    "d": "llBlYhil3I.....",
    "p": "-5LW2Lewogo.........",
    "q": "zk6dHqHfHksd.........",
    "dp": "qfe9fFIu3mu.......",
    "dq": "cXFO-loeOyU.......",
    "qi": "AfK1sh0_8sLTb..........."
}

Using python-jwt this can be done with a simple script
import python_jwt as jwt, jwcrypto.jwk as jwk, datetime

priv_key = jwk.JWK.from_pem(b"""-----BEGIN RSA PRIVATE KEY-----
.......
-----END RSA PRIVATE KEY-----""")

print(priv_key.export())

I have certbot client installed on the same machine. When I registered Sectigo ACME server it created private key json file.
It is in this format:
{
"n": "PwIOkViO ......",
"e": "AQAB",
"d": "NWX .... ",
"p": "6-x3 ... ",
"q": "3j- .....",
"dp": "HhXQfDWRLIE ....",
"dq": "3kj43ZTzvsE ....",
"qi": "AlLaMQBcky8 ....",
"kty": "RSA"
}
After using this I got ill formatted URL for
ACME_REGR = '{"body": {}, "uri": "https://acme.sectigo.com/v2/InCommonRSAOV/acct/EAB_KID"}'
Then I changed this to
ACME_REGR = '{"body": {}, "uri": "https://acme.sectigo.com/v2/InCommonRSAOV"}'
and
{
"n": "PwIOkViO ......",
"e": "AQAB",
"d": "NWX .... ",
"p": "6-x3 ... ",
"q": "3j- .....",
"dp": "HhXQfDWRLIE ....",
"dq": "3kj43ZTzvsE ....",
"qi": "AlLaMQBcky8 ....",
"kid": "pW4 ...",
"kty": "RSA"
}
Passing EAB_KID in JWK format. I still get error:
acme.messages.Error: urn:ietf:params:acme:error:externalAccountRequired :: The server requires external account binding :: The request must include a value for the "externalAccountBinding" field
ACME_REGR = '{"body": {}, "uri": "https://acme.sectigo.com/v2/InCommonRSAOV/acct/EAB_KID"}' is giving ill format error

It looks like acme.sectigo.com is using the externalAccountBinding described in the acme spec 7.3.4.  External Account Binding, but LetsEncrypt doesn't use it, and the current implementation of the acme plugin, doesn't support it either.
I would check with sectigo.com, which account uri that needs to be used. Normally you should be able to get the account details (including the account uri), when trying to create a new account, using the existing private key.
I've used ansible to do that, and get the account uri
    - name: get acme account info
      acme_account_info:
        acme_version: 2
        acme_directory: https://acme-staging-v02.api.letsencrypt.org/directory
        account_key_src: ./acme.key
      register: account_data

    - name: display account information
      debug:
        var: account_data

You would need to replace the acme_directory parameter with the directory provided by sectigo.
Or you can implement it, in lemur/lemur/plugins/lemur_acme/plugin.py
https://github.com/Netflix/lemur/blob/772894c414baca916c44ce1f91fb3fe6b33c88f1/lemur/plugins/lemur_acme/plugin.py#L260-L265
You would need to add an externalAccountBinding to the from_data call, which seems to support this parameter according to the acme-python documentation

When I register with Certbot against InCommon with EAB KID and EAB Key, it provides the ACME_PRIVATE_KEY in JWK format. I then used those details along with regr.json info for ACME_REGR. Finally, by using InCommon ACME URL for ACME_DIRECTORY_URL I am not getting malformed URL error.
Now, I get the following error:
raise Exception("Unable to determine DNS challenges from authorizations")
Exception: Unable to determine DNS challenges from authorizations
2020-09-24 19:46:44,388 ERROR: {'function': 'lemur.common.celery.fetch_acme_cert', 'message': 'Pending certificate creation failure', 'task_id': '84b6997f-1729-464e-be42-bbdad5b24436', 'id': 3, 'pending_cert_id': 3, 'last_error': Exception('Unable to determine DNS challenges from authorizations',), 'cn': 'Servername'} [in /opt/app/lemur/lemur/common/celery.py:320]
What I observed is that InCommon ACME does not do DNS validations as long as EAB Kid and Key are matching. This looks like another enhancement to make DNS validation as optional for externalAccountBinding ACME providers :-)

repo: Netflix/lemur


text:
Do not add urlContextPath to relative path

If we want access to Lemur with an URL like http://domain/foobar/ we have to build Lemur with:
# node_modules/.bin/gulp package --urlContextPath=foobar

But footbar is also add to relative path:
# grep -RhEo "(.)foobar/[a-zA-Z0-9.?=_%:-]*/" | sort | uniq -c
     15 "foobar/angular/
     21 'foobar/angular/
     92 /foobar/angular/
      4 /foobar/api/
      2 "foobar/scripts/
      1 "foobar/styles/

Some path are invalid (somethink like http://domain/foobar/foobar/angular/xxxxxxx).
With this patch, only absolute path is modified:
# grep -RhEo "(.)foobar/[a-zA-Z0-9.?=_%:-]*/" | sort | uniq -c
     92 /foobar/angular/
      4 /foobar/api/

Every pages works fine now.

Coverage remained the same at 58.677% when pulling 591c8cf5249cb5d8b1b075f8b0c52863795913d0 on GnunuX:url_context_path into cb2f3402772212f2b1de980b72a8765ee5c78d45 on Netflix:master.

@GnunuX While this change looks safe and you've also confirmed that all pages are working fine, I am wondering if there is any edge case which may face issue. We have not used urlContextPath directly, so trying to make sure that it's a safe change for whole Lemur community.
The original change was done a few years ago. @kevgliss, @henry-megarry Please let us know if you happen to have any comments on this PR.

I've just checkout to this commit and I've the same problem:
# wget --no-check-certificate -r https://192.168.0.24/lemur/
[..]
2020-10-25 18:40:14 (205 MB/s) - '192.168.0.24/lemur/index.html' saved [4703/4703]

--2020-10-25 18:40:14--  https://192.168.0.24/lemur/lemur/styles/main-562bdf4636.css
Reusing existing connection to 192.168.0.24:443.
HTTP request sent, awaiting response... 404 Not Found
2020-10-25 18:40:14 ERROR 404: Not Found.

--2020-10-25 18:40:14--  https://192.168.0.24/lemur/lemur/scripts/vendor-4f65758571.js
Reusing existing connection to 192.168.0.24:443.
HTTP request sent, awaiting response... 404 Not Found
2020-10-25 18:40:14 ERROR 404: Not Found.

[..]

The URL are not correct to me:
index.html:    <link rel="stylesheet" href="lemur/styles/main-562bdf4636.css">
index.html:    <script src="lemur/scripts/vendor-4f65758571.js"></script>
index.html:    <script src="lemur/scripts/main-eb89d11e6b.js"></script>

I don't see any issues with this change thanks for the PR @GnunuX !

authors: GnunuX charhate coveralls kevgliss


text:
Fix for exception thrown when a certificate doesn't have any notifications

When trying to send notifications via the cron job I ran into the following error:
Traceback (most recent call last):
  File "/usr/local/bin/lemur", line 11, in <module>
    load_entry_point('lemur', 'console_scripts', 'lemur')()
  File "/opt/app/lemur/lemur/manage.py", line 534, in main
    manager.run()
  File "/usr/local/lib/python3.5/site-packages/flask_script/__init__.py", line 412, in run
    result = self.handle(sys.argv[0], sys.argv[1:])
  File "/usr/local/lib/python3.5/site-packages/flask_script/__init__.py", line 383, in handle
    res = handle(*args, **config)
  File "/usr/local/lib/python3.5/site-packages/flask_script/commands.py", line 216, in __call__
    return self.run(*args, **kwargs)
  File "/opt/app/lemur/lemur/notifications/cli.py", line 29, in expirations
    success, failed = send_expiration_notifications(exclude)
  File "/opt/app/lemur/lemur/notifications/messaging.py", line 134, in send_expiration_notifications
    if send_notification('expiration', security_data, security_email, notification):
UnboundLocalError: local variable 'notification' referenced before assignment

It seems the indentation may have been incorrect for:
if send_notification('expiration', security_data, security_email, notification):
  success += 1
else:
  failure += 1

After indenting it the same as:
if send_notification('expiration', notification_data, [owner], notification):
    success += 1
else:
    failure += 1

It resolves the problem I have above. I also added a test for making sure that if a certificate doesn't have any notifications it doesn't throw an exception.
Previously it was referencing notification which may in turn never be set if we never go into the loop. It would of also just of been taking the last Notification that was ever set which may not be the correct notification.

Coverage increased (+0.02%) to 66.326% when pulling 9ef083293a24d7a30def43b43aef46bb37f1f220 on treacher:lemur-notification-error into f90076abe979e89c405ae76d979ce1fabb1b65dc on Netflix:master.

lgtm thanks!

authors: coveralls kevgliss treacher


text:
Revert "Adding PropertyFactory to plugins"

Reverts Netflix/ndbench#22

I found a better way to get this done, hence reverting it.

repo: Netflix/ndbench


text:
Pinning to idna 2.5 to fix dependency problem with requests.

Temporary fix to #786.
Problem caused by:
https://github.com/requests/requests/pull/4223

Coverage remained the same at 63.309% when pulling 67cce4019298ac5f63934e642c3c9cfaf59e8d09 on pin_idna into eb328ade77b3b7d20091e23fbf909668bbcec195 on develop.

authors: coveralls monkeysecurity


text:
rfc: Proc Macros

Binary Utils Macro Derive
BinaryUtils provides one derive macro BinaryIo.
This macro will implement both the Read and Write traits from interfaces. By default, this macro will read and write in the order the fields are declared in. In the future it may be possible to change this with an attribute, but this is not marked as a priority.
Require attribute
The require attribute allows you to require a previous field. This attribute requires the type to be that of the field must be Option<T<dyn Reader + dyn Writer>>.
Syntax:
#[require(<IDENT>)]

Example:
The following example requires field B to exist in order to try and decode C
pub struct ABC {
    a: u8,
    b: Option<u8>,
    #[require(B)]
    c: Option<u8>
}

Satisfy Attribute
This attribute provides functionality which allows you to optionally decode or encode a field or type. Conditionals are useful if you want to avoid using enums as wrapper types to support conditional logic.
Syntax:
#[satisfy(<EXPR>)]

Example:
The following is an example of a conditional attribute with the BinaryIo macro.
#[BinaryIo]
pub struct FramePacket {
    pub id: u16,
    // split_channel will only be read if the following condition
    // is specified
    #[satisfy(((self.id & 224) >> 5) == 3)]
    pub split_channel: Option<u8>,
}

Skip Attribute
This attribute does as the name implies; it skips the given field on both encoding and decoding. This field will not be used in encoding or decoding.
Syntax:
#[skip]

Example:
The following example skips field B and only encodes both A and C in the binary stream.
#[derive(BinaryIo)]
pub AC {
    A: u8,
    #[skip]
    B: u8,
    C: u8
}

pub fn test_ac() {
    let ac = AC { A: 1, B: 2, C: 3 };
    assert_eq!(ac.write_init().as_slice(), &[1, 3]);
}

Edit: Identifiers and expressions are now their literal types, not a string.

require vs if_present: if_present will function identically as require accept will not fail if the provided field is not present.

repo: NetrexMC/BinaryUtil


text:
Update developer docs to reflect changes in the release process

Update documentation on building releases for the Elephant package, e.g., with respect to using twine instead of sdist upload.

It's fixed in #294
Now it says use twine.

authors: dizcza mdenker

repo: NeuralEnsemble/elephant


text:
[Fix] skip multitaper unittest for new numpy version 1.26.0

This PR is in Line with e.g. PR #588 .
Skipping unittest for multitaper perfect cohere as the underlying issue was not resolved with release of numpy 1.26.0.

coverage: 86.832% (-0.2%) from 86.983% when pulling 30fc0bf868ba75d1e021596d92e9631a2f2573bb on INM-6:fix/mulitaper_perfect_cohere_numpy_1.26.0 into c3eb21fb904ba0d80524f3bf242d4e267155de6e on NeuralEnsemble:master.

authors: Moritz-Alexander-Kern coveralls


text:
spiketrain.times - <compatible time quantity> raises Value error

I get a Value error as below with neo v0.5.0:
>>> from neo import SpikeTrain
>>> import quantities as qu
>>> tr = SpikeTrain([3, 4, 5] * qu.s, t_stop=10, t_start=2.5)
>>> tr.times - 1.5 * qu.s
Traceback....
ValueError: The first spike ([ 1.5  2.5  3.5] s) is before t_start (2.5 s)

From the documentation, spiketrain.times must return a quantities array. However, it returns a neo.spiketrain object which complicates things (as is being discussed here). I think this can be fixed by casting spiketrain to a quantities object when the attribute times is read. What do you think?

This error also occurs with neov05.1 ( same as elephant issue #116 )

I agree that tr.times should be a quantities object.

Fixed in #483

authors: apdavison dEvasEnApati lungsi samuelgarcia

repo: NeuralEnsemble/python-neo


text:
Add support for .eeg and lfp formats with neuroscope

Right now, the neuroscope reader we only supports the .dat format:
https://github.com/NeuralEnsemble/python-neo/blob/7cf65eb0af48fa0c2b245da0c02fee04f63ad4f1/neo/rawio/neuroscoperawio.py#L67
However, other two common formats in which the the data for this format comes are .eeg and lfp. As an example, in the gin test we have a file with the .eeg format:
https://gin.g-node.org/NeuralEnsemble/ephy_testing_data/src/master/neuroscope/dataset_1
The following PR adds support for the two aforementioned formats while preserving the old functionality.

Hello @h-mayorquin! Thanks for opening this PR. We checked the lines you've touched for PEP 8 issues, and found:

In the file neo/rawio/neuroscoperawio.py:

Line 40:1: W293 blank line contains whitespace
Line 51:14: W291 trailing whitespace
Line 52:100: E501 line too long (122 > 99 characters)
Line 53:1: W293 blank line contains whitespace

Hi @h-mayorquin, thanks for extending the IO! Could you also add the .eeg test to the set of files that the neuroscope tests are run on? Are you sure the file structure is always the same for .dat, .eeg and .lfp files? If you have a small .lfp file that you want to run the tests on we can also add this to the set of test files on gin.

Hi @h-mayorquin, thanks for extending the IO! Could you also add the .eeg test to the set of files that the neuroscope tests are run on? Are you sure the file structure is always the same for .dat, .eeg and .lfp files? If you have a small .lfp file that you want to run the tests on we can also add this to the set of test files on gin.

Hi @h-mayorquin, thanks for extending the IO! Could you also add the .eeg test to the set of files that the neuroscope tests are run on? Are you sure the file structure is always the same for .dat, .eeg and .lfp files? If you have a small .lfp file that you want to run the tests on we can also add this to the set of test files on gin.

I added the test for the .eeg file. I also added a test where we call the file through their .dat format instead of by its stem form.
Concerning the file structure, maybe @CodyCBakerPhD can comment on this. He might also know if there is some small .lfp files somewhere there that we can add to the gin repository.

.lfp is literally just a different suffix for the same file and structure. If you really want duplicated tests just for that, you can simply make a copy of the .eeg and change the suffix to .lfp.

.lfp is literally just a different suffix for the same file and structure. If you really want duplicated tests just for that, you can simply make a copy of the .eeg and change the suffix to .lfp.

Thanks, @CodyCBakerPhD!
What do you think @JuliaSprenger?

Hi again, @CodyCBakerPhD Thanks for the hint. I duplicated the .eeg file in the test dataset since it's tiny, see https://gin.g-node.org/NeuralEnsemble/ephy_testing_data/pulls/79. Do you think any part of the content needs to be adjusted for those two files to reside in the same dataset?

Do you think any part of the content needs to be adjusted for those two files to reside in the same dataset?

Nope - the number of channels in the anatomicalDescription field of the .xml tells you the length of that dimension of all binary blobs (.dat, .lfp, .eeg), and the other dimension of frames is always inferred from the file size conditioned on the number of such channels.
And both .lfp and .eeg get their sampling rate from the lfpSamplingRate of the .xml, or whatever that field is named.

@CodyCBakerPhD @JuliaSprenger
I am hoping that we can add a xml_file with non-canonical file name in the gin-repo (by canonical I mean something not equally named as the data file as it is right now: file_name.dat -> file_name.xml). This can be done by simply creating a copy of the currently existing file with a different name. We often have the situation where the file name is not in the canonical format, and having it on gin will allow us to test against this case.

Hi Herberto,
This is ok for me.
Maybe we could have an implentation that loop over possible extension and llok for the good one.
So the "main" entry point would remain the xml file.
What do you think ?
But if you need this quickly I can merge this now.

@h-mayorquin @samuelgarcia Sorry, just seeing this now - I had hoped for this PR to add an optional input argument identical to the previous treatment in spikeextractors (https://github.com/SpikeInterface/spikeextractors/blob/master/spikeextractors/extractors/neuroscopeextractors/neuroscopeextractors.py#L77).
Reason being...
(a) in numerous datasets, we've seen multiple .xml files in the same folder each corresponding to different uses, and only one of which is the header associated with the .dat or .eeg/.lfp file.
(b) the 'correct' .xml header does not always share the same file stem as the corresponding .dat or .eeg/.lfp file.
(c) .xml header might even be in a different folder (not adjacent to .dat)
I think adding it as an optional argument whose default behaves the same as the current reader would allow the greater user control/flexibility with the least amount of magic and assumptions.

Hi Cody and Herberto,
in neo I think that main entry used to be the xml file.
Maybe itcould be cool to keep this to not break previous code.
So we could maybe make the same as spikeextractors but with the resverse in mind.
xml file is the mandatory first arg.
binary_file (dat/eeg/lfp) could be the optional secondary args. If it is none this one is automatic like before but we loop over some extension to find it.
So we would have the same flexibility with before retro compatibility on neo side.

Should we add some non-standardly named xml file to the tests?

You can always just copy/rename files in individual tests on the fly. Technically could have done that for the .lfp data on GIN as well.

Hi @h-mayorquin I think you can do all the restructuring of the input handling in this PR, unless merging this is very urgent for you.
For the additional cases of input files I opened a PR to add another fake dataset to the collection on gin, have a look here: https://gin.g-node.org/NeuralEnsemble/ephy_testing_data/pulls/80 Is this covering all cases you want to test for? If you want to test files from different directories, you could even load the xml from dataset test1 and dat from dataset test2.

Hi @h-mayorquin I think you can do all the restructuring of the input handling in this PR, unless merging this is very urgent for you.
For the additional cases of input files I opened a PR to add another fake dataset to the collection on gin, have a look here: https://gin.g-node.org/NeuralEnsemble/ephy_testing_data/pulls/80 Is this covering all cases you want to test for? If you want to test files from different directories, you could even load the xml from dataset test1 and dat from dataset test2.

Yes, that's fine. We can test any other case with symbolic links magic on the fly as Cody is suggesting. I will just wait for the tests to be re-calculated so I can build against them. Is it @samuelgarcia who can review the gin repo?

HI,
gin PR is merged now.

@samuelgarcia @JuliaSprenger
OK, this is working locally for me. I added another test for the discussed scenario. An xml file with different name than the binary file and specified the latter through the new argument which I called binary_file.
Let me know if something else is missing.

@h-mayorquin Thanks for the final fixes. I will merge this now :fireworks:

authors: CodyCBakerPhD JuliaSprenger h-mayorquin pep8speaks samuelgarcia


text:
SWF import still working for you?

Hello,
It seems promising, congrats!
I watched your video and you import SWF file content.
I'm working on linux (ubuntu 22.04) and tried https://tool.next2d.app/ but cannot import any swf
See enclosed swf
custom.bg.bedroom_bg.swf.zip

@j2l
Hello,
Thank you for contacting me.
Only Shape and Bitmap are supported now.
We may support text and video in the future, but we have no plans to support ActionScript.
Is this the answer to your question?


text:
LetsEncrypt TLS-ALPN-01 verification

is it possible to enable TLS-ALPN-01 for https verification

Just a note for anyone else finding this.  this doesn't appear to be added to npm, and I didn't notice at first that the same user that opened the issue is also the one that closed it as complete.  Do not take this to mean that there is a way to use TLS-ALPN-01 in npm.  I have not yet found a way to do so and will have to use caddy at my house where port 80 is simply unavailable.

repo: NginxProxyManager/nginx-proxy-manager


text:
Ingest time series data for a fourth database (MongoDB) - Stretch

Import time series data for a single database (for example MongoDB) into the application and show it in a basic table in the web application.

:)

Changing MongoDB to ArcticDB


text:
Disable table border

Is there a way to disable table borders using sheet?
table {border: none;}

Yes, you can apply custom css to the table like this:
```sheet
{}
--- ~ { border: 'none' }
| a   | b   | c   |
| --- | --- | --- |
| 1   | 2   | 3   |
```

For more information, check out the readme

authors: NicoNekoru samopolacek

repo: NicoNekoru/obsidan-advanced-table-xt


text:
Try moving pnpm into devcontainers-contrib

Like discussed in #3, I should try to move the feature to devcontainers-contrib to hold stuff like that together in one repo.

Before I simply create a PR, I asked if this is in the interest of the maintainers:
https://github.com/devcontainers-contrib/features/issues/265

pnpm was added to devcontainers-contrib.
Now I have to think about how to deprecate this package in the best way so that users, who use this feature now, know that it was moved.

I opened a pull request to remove this from the index to avoid confusion:
https://github.com/devcontainers/devcontainers.github.io/pull/144

Some info on how to deprecate a package:
https://github.com/devcontainers/spec/blob/cd07f1584acd44ca84c7841fdc5548754c78f381/proposals/features-legacyIds-deprecated-properties.md

Deprecated feature with v2.0.2

repo: NicoVIII/devcontainer-features


text:
Prepare for drift v2

Waiting for drift v2 to be released.
See https://github.com/simolus3/drift/issues/1158

I just upgraded drift and came here to ask for an update to this package as well, but you were already on it I see.
When I try to use the feature/driftv2 branch as a dependency override in my app, pub get fails with the following message:
Because every version of drift_local_storage_inspector from git depends on drift ^1.4.0 and MY_APP_NAME depends on drift ^2.0.0, drift_local_storage_inspector from git is forbidden.
So, because MY_APP_NAME depends on drift_local_storage_inspector from git, version solving failed.
pub get failed (1; So, because MY_APP_NAME depends on drift_local_storage_inspector from git, version solving failed.)

I guess you'll need to update the version of the drift dependency to ^2.0.0 in pubspec.yaml before merging this PR.
Thanks for keeping the package up-to-date :)

That's why this PR has not been merged 😊. Packages should never depend on
other packages by git urls, that won't work. as soon as drift v2 is
released to pub dev I will patch this PR and release it officially. If you
really need to start using drift v2 right now, you'll have to override all
dependencies on drift (see example)
On Mon, 15 Aug 2022, 10:26 frankvollebregt, @.***>
wrote:

I just upgraded drift and came here to ask for an update to this package
as well, but you were already on it I see.
When I try to use the feature/driftv2 branch as a dependency override in
my app, pub get fails with the following message:
Because every version of drift_local_storage_inspector from git depends on drift ^1.4.0 and MY_APP_NAME depends on drift ^2.0.0, drift_local_storage_inspector from git is forbidden.
So, because MY_APP_NAME depends on drift_local_storage_inspector from git, version solving failed.
pub get failed (1; So, because MY_APP_NAME depends on drift_local_storage_inspector from git, version solving failed.)
I guess you'll need to update the version of the drift dependency to
^2.0.0 in pubspec.yaml before merging this PR.
Thanks for keeping the package up-to-date :)
—
Reply to this email directly, view it on GitHub
https://github.com/NicolaVerbeeck/drift_local_storage_inspector/pull/2#issuecomment-1214748878,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AB3LA35FHJNC4IB3V2G4MR3VZH5J7ANCNFSM56PXL7NQ
.
You are receiving this because you authored the thread.Message ID:
@.***
com>

Thanks for the response. Drift v2.0.0 was actually released yesterday (and v2.0.1 as a first patch earlier today), which is why I ran into the issue in the first place. I'll add this package back into my app once this PR is released

@frankvollebregt 0.3.0 has been released to pub dev which supports drift v2

authors: NicolaVerbeeck frankvollebregt


text:
🛑 cedro is down

In ef50924, cedro (https://www.cedro.org) was down:

HTTP code: 0
Response time: 0 ms

Resolved: cedro is back up in 7efc4cf.

repo: NicolasAbihaggle/serviciosestados


text:
🛑 Google is down

In cfb6b65, Google (https://www.google.com) was down:

HTTP code: 429
Response time: 328 ms

Resolved: Google is back up in bfe906b.

repo: NicolasLRD/upptime


text:
Burst ballon.c

Related Issue
Solved issue number: #85
Describe the changes you've made
Burst balloon algorithm using C
Language used for coding
C

You have made so many changes ?

@Nivedita967 what changes??

I will send it again.

@Nivedita967 I am getting error while cloning it. Thats why there are many changes

error: invalid path 'Hackerrank/Snakes And Ladders /Snakes_and_ladders.java'
fatal: unable to checkout working tree
warning: Clone succeeded, but checkout failed.
You can inspect what was checked out with 'git status'
and retry with 'git restore --source=HEAD :/'

@Amit366 Please clone again, I have removed the error.