[task] Refactor nightly upgrade test to support upgrade from/to different Longhorn versions

We need to be able to specify Longhorn base version and upgrade version while running Longhorn upgrade tests
e.g. Start with Longhorn v1.0.x , upgrade to v1.1.x, and run integration tests.

we also need to have the ability to run a specific group of tests, e.g. (infra tests, backup and restore tests, .., etc)


netsh advfirewall errors when you use the :deny firewall_action

I submitted #15 because I noticed that the README appeared incorrect - firewall_action must now be :allow or :deny.
But when I use :deny, I get an error that I didn't specify allow|block|bypass as the action.
================================================================================
           Error executing action `run` on resource 'batch[netsh advfirewall firewall add rule name="Disable WinRM over HTTP" description="Firewall rule" localport=5985 dir=in protocol=tcp action=deny profile=any interfacetype=any ]'
           ================================================================================

           Mixlib::ShellOut::ShellCommandFailed
           ------------------------------------
           Expected process to exit with [0], but received '1'
           ---- Begin output of "cmd.exe" /c "C:/Users/vagrant/AppData/Local/Temp/chef-script20150730-92-msald.bat" ----
           STDOUT: C:\>netsh advfirewall firewall add rule name="Disable WinRM over HTTP" description="Firewall rule" localport=5985 dir=in protocol=tcp action=deny profile=any interfacetype=any

           A specified value is not valid.

           Usage: add rule name=<string>
          dir=in|out
          action=allow|block|bypass

Which makes sense because firewall_action gets passed through directly as the action parameter to the underlying netsh advfirewall command:
https://github.com/lynx44/windows_firewall/blob/master/providers/rule.rb#L19
Is there a bug in this cookbook, or am I doing something wrong? My resource looks like this:
windows_firewall_rule 'Disable WinRM over HTTP' do
  localport '5985'
  protocol 'tcp'
  firewall_action :deny
end

Looks like a bug in the cookbook. The action on the rule shouldn't be "deny", it should be "block". Should be an easy fix and I'll try to get it in shortly.


Use latest bundler for all rbenv rubies

Keeping our bundler versions up to date and consistent across rubies
gives us access to bug fixes, speed improvements, and new features.
This change also specifically addresses the Gemfile.lock fluctuations
that occur around the inclusion/removal of the RUBY VERSION stamp. This
behaviour was introduced in bundler 1.12. Any developer using 1.12 and
above (because they manually updated their bundler version on the VM,
let's say) will generate lock files that include the version stamp. A
developer running < 1.12 will generate lock files without it. This leads
to additional noise and confusion in pull requests when developers
running different versions end up reversing each other's changes.

This seems great :clap:
Probably want another reviewer or two for any potential gotchas first (this caution has nothing to do with me wanting #5562 to be merged first so you have to deal with the conflict. 😉)


[AST] Don't return decls from unsatisfied conformance

in lookupVisibleMemberDecls().
When a type conditionally conforms to a protocol, it used to unconditionally provide symbols from extension to that protocol.
e.g.:
  protocol P {}
  extension P {
    func foo() {}
  }

  struct S<T> {}
  extension S: P where T == Int {}

  func test(val: S<String>) {
    val.#^COMPLETE^#
  }

This should not provide foo() method.
rdar://problem/36594731

@swift-ci Please smoke test

@swift-ci Please smoke test Linux platform

@swift-ci Please smoke test

@swift-ci Please smoke test Linux platform

@benlangmuir  @slavapestov Could you review this?


Volunteer for v2.23 release

Today, I realized we don't have a volunteer for v2.23 yet. After two
releases from non-Grafanistas, perhaps another "Grafana-sponsored"
release is acceptable.
So I'm proposing myself here. @cstyan or @codesome, if any of you (or
anyone else, really) qis also willing to volunteer, I'd happily step
back.

I volunteer, you can add me for v2.23

How about this?

:+1:
I presume that 2.24 will end up final a little later than usual due to New Year's.

I presume that 2.24 will end up final a little later than usual due to New Year's.

Yes, we should relax the schedule a bit to give people time to try out the RC.


Adds some license commands to Help.cpp

Commands derived from email correspondence with Jerome and inspired by this twitter thread: https://twitter.com/cally__ho/status/1189305566822326273?s=20

Woah, totally forgot about this! Thanks!


feat(middleware): export provider package

Makes development easier on middlewares by re-exporting @joshdb/provider

Why is this needed?

Why is this needed?

Basically, instead of having to install @joshdb/provider as a direct dependency when making a middleware for types such as, Method, Payloads, etc, you can just import from @joshdb/middleware and just have the @joshdb/provider package transient.
Unless, there is a reason not to do this? Since, imho, having a direct dependency to @joshdb/provider is weird when your working on a middleware.

Hmm, I guess it's one less version to worry about it


Change promotion_choice default choice to 'none'

We change the default_presentation_toggles promotion choice to none to
reflect the fact that when a user opts for no promotion, the form in fact
passes back none.
We also bump the Ruby version to 2.2.3 and remove the GDS API Adapters Panopticon test helpers.
https://trello.com/c/unTNbCHi/658-migrate-completed-transaction-format-to-rendered
paired with @binaryberry

👍


got segmentation fault in CreateNetworkFromBinaryFile(programOptions.modelPath.c_str()

I got segmentation fault when running the following code.
using IParser = armnnTfLiteParser::ITfLiteParser;
auto armnnparser(IParser::Create());
armnn::INetworkPtr network = armnnparser->CreateNetworkFromBinaryFile(programOptions.modelPath.c_str());

I use TFLite model converted from TF2. Is this the possible cause for the segmentation fault?

Hi @ivs-pychen
Tf2 is not fully tested yet. But we don't expect any problems with it.
What kind of model are you running? And could you post the full error message?
Also have you tried your code with a tf.1.15 model or with a different tf2 model?
Jan

I run the Mobilenetv2 ssd. And I just got the Segmentation fault, no other error messages.
I tried other model from tensorflow lite hosted models and tensorflow lite object detection. And both of them can import the model.
Does the tf1.15 can be fully supported by Arm NN?

Alright, I think I know what is going on. You have build acl in release. To make the code more efficient a lot of IsSupported tests are skipped in the release build. If you rebuild acl in debug mode you'll get more informative error messages.
In mobilenet there is a hard_swish operator that is not supported by armnn_20.05. There is a similar ticket here. Not sure if MobilenetV2 ssd is any different. Best is to try it. All that you need should be mentioned in the other ticket.
If you need any additional help let me know.
Jan

Do you mean I need to rebuild the acl?

If you rebuild acl in debug it will give you more informative error messages. Also to build the armnn master branch you'll have to checkout the correct acl revision. After that you will have to rebuild acl.
To get the acl version that matches the armnn master branch, checkout the master branch in armnn and take a look at the following script:
nano armnn/scripts/get_compute_library.sh  # I use nano but you can use any text editor you like

You will find an entry in that file with the current revision of acl. Something like this::
# For pinning to a revision use this:
DEFAULT_CLFRAMEWORKREVISION="d6d1b3682a2cdd54bae5498635b108a4b19a045a" #COMPMID-37$

cd to your acl directory and git checkout <DEFAULT_CLFRAMEWORKREVISION> that revision. After, rebuild acl in debug mode. Finally, build armnn. It should all work now (And if not you'll get a more informative error message that you can bother me with :D ).
Let me know how it goes and good luck :+1:


Support for Azure Common Client Factory

In other msrest SDKs, we are able to leverage from azure.common.client_factory import get_client_from_cli_profile, which lets us avoid having to handle authentication configuration in code and instead rely on the credentials set up during az login. Is it possible to use this for the azure devops clients?
Docs: https://docs.microsoft.com/en-us/python/api/azure-common/azure.common.client_factory?view=azure-python#get-client-from-cli-profile-client-class----kwargs-

See how they are doing this in the azure-devops-cli-extension:
https://github.com/Azure/azure-devops-cli-extension/blob/94a8d0c21d47f771c0ec177ba9e079c2669dc658/azure-devops/azext_devops/dev/common/services.py#L54

@ncbrown1 , I am going to close this for now.  Please let me know if you are still having issues.


angular-cli reads es2015 format

I am facing an issue and can't seem to see where it comes from.
When I import the package created with the build script from angular-quickstart-lib inside my angular-cli project, I get an error when building the app in production mode (with uglifyj.js)
Uglify js complains about an "Unexpected token operator «=», expected punc «,»" which comes from the es2015 js file and is an es2015 feature.
My package has all the "main", "es2015" and "module" pointing to the good corresponding file, but for some reason the angular cli build keeps on loading my es2015 version (and thus breaks the uglify.js that expect an es5 apparently).
I would appreciate some help on how to target the good ES version for angular-cli. cheers!
[Edit] I do have my tsconfig.json with "target": "es5"

That's odd, Angular CLI targets the module entry and so should be using libname.es5.js. Do you have your library somewhere I can look at?

Sorry it's a private package so I can't show it. Maybe it's worth mentioning that I made a scoped package and this is the final folder structure (removing src folders):
package.json
LICENCE
README
/dist
    index.d.ts
    ux-core.d.ts
    ux-core.es5.js
    ux-core.js
    ux-core.metadata.json
    /bundles
        ux-core.umd.js
        ux-core.umd.min.js

And here is my package.json
{
  "_args": [
    [
      {
        "raw": "<EMAIL_ADDRESS>        "scope": "@eui",
        "escapedName": "@eui%2fux-core",
        "name": "@eui/ux-core",
        "rawSpec": "0.0.2-11",
        "spec": "0.0.2-11",
        "type": "version"
      },
      "c:\\opsys\\opsys-ui\\src\\main\\angular"
    ]
  ],
  "_from": "<EMAIL_ADDRESS>  "_id": "<EMAIL_ADDRESS>  "_inCache": true,
  "_location": "/@eui/ux-core",
  "_nodeVersion": "7.10.0",
  "_npmUser": {},
  "_npmVersion": "4.2.0",
  "_phantomChildren": {},
  "_requested": {
    "raw": "<EMAIL_ADDRESS>    "scope": "@eui",
    "escapedName": "@eui%2fux-core",
    "name": "@eui/ux-core",
    "rawSpec": "0.0.2-11",
    "spec": "0.0.2-11",
    "type": "version"
  },
  "_requiredBy": [
    "#USER",
    "/"
  ],
  "author": "",
  "dependencies": {},
  "description": "",
  "engines": {
    "node": ">= 6.9.0",
    "npm": ">= 3.0.0"
  },
  "es2015": "dist/ux-core.js",
  "files": [
    "dist",
    "LICENSE"
  ],
  "license": "MIT",
  "main": "dist/bundles/ux-core.umd.js",
  "module": "dist/ux-core.es5.js",
  "name": "@eui/ux-core",
  "optionalDependencies": {},
  "peerDependencies": {
    "@angular/core": ">=4.0.0 <5.0.0 || >=4.0.0-beta <5.0.0",
    "@angular/http": ">=4.0.0 <5.0.0 || >=4.0.0-beta <5.0.0",
    "@ngrx/core": "^1.2.0",
    "@ngrx/effects": "^2.0.2",
    "@ngrx/store": "^2.2.1",
    "@ngx-translate/core": "^6.0.1",
    "@ngx-translate/http-loader": "0.0.3",
    "reselect": "^2.5.4",
    "rxjs": "^5.0.1"
  },
  "readme": "# Warning\r\n\r\nThis quickstart is under active development and hasn't yet reached its final form.\r\n\r\nIt may not be fully compatible with current versions of Angular.\r\n\r\n# Angular QuickStart Lib\r\n[![Build Status][travis-badge]][travis-badge-url]\r\n\r\nThis is a simple library quickstart for Angular libraries, implementing the\r\n[Angular Package Format v4.0](https://docs.google.com/document/d/1CZC2rcpxffTDfRDs6p1cfbmKNLA6x5O-NtkJglDaBVs/edit#heading=h.k0mh3o8u5hx).\r\n\r\nCurrently only unscoped, primary entry-point libraries are supported.\r\n\r\nFeatures:\r\n- a simple example library\r\n- unit tests for the library\r\n- a demo application that consumes the library in JIT mode and runs in watch mode\r\n- an integration app that consumes the library in JIT and AOT mode and runs e2e tests\r\n\r\nCommon tasks are present as npm scripts:\r\n\r\n- `npm start` to run a live-reload server with the demo app\r\n- `npm run test` to test in watch mode, or `npm run test:once` to only run once\r\n- `npm run build` to build the library\r\n- `npm run lint` to lint \r\n- `npm run clean` to clean\r\n- `npm run integration` to run the integration e2e tests\r\n- `npm install ./relative/path/to/lib` after `npm run build` to test locally in another app\r\n\r\nIf you need to debug the integration app, please check `./integration/README.md`.\r\n\r\n[travis-badge]: https://travis-ci.org/filipesilva/angular-quickstart-lib.svg?branch=master\r\n[travis-badge-url]: https://travis-ci.org/filipesilva/angular-quickstart-lib\r\n",
  "readmeFilename": "README.md",
  "repository": {},
  "typings": "dist/ux-core.d.ts",
  "version": "0.0.2-11"
}

thanks!

I tried using the default lib in a Angular CLI project and didn't run into the error you mentioned. Stuff seemed to just work with and without --prod. I'm unsure what's happening in your case...

The error that I receive when running ng build --prod -sm is
ERROR in vendor.d5cf0021c9b80f17f746.bundle.js from UglifyJs
Unexpected token operator «=», expected punc «,» [./~/@eui/ux-core/dist/ux-core.js:28,0][vendor.d5cf0021c9b80f17f746.bundle.js:36790,42]

Which leads me to think that it is reading from "ux-core.js" instead of "ux-core.es5.js"
Thanks for any help

Well, we can test that easily. How about you go into node_modules and delete the es2015 file manually?

I receive a not found error
Module not found: Error: Can't resolve '@eui/ux-core/dist/ux-core'

It's extremely strange as my folder structure + the package.json is the same as the packages from @angular...  It might be my machine or npm or ...

I added my package in a fresh angular-cli project and it does build perfectly. :+1:
Definitely something in the other project dependencies or something.
Thanks for looking into it and for this great starter lib.

Glad you got it sorted!

I have managed to nail exactly what was the problem in case other might do something similar.
I was exporting in my index.ts an "alias" to another module export. Exactly:
export { Store } from '@ngrx/store';

So I could do something like this in my Components
import { Store, entitiesState } from '@eui/ux-core'

I did work in the past with another build I had with rollup, and probably another tsconfig or something. But now it does not anymore.


Xamarin support?

Glad to see more activity on this project.  It's wonderful!!!
I noticed the comment on removing Xamarin support.  The repo still contains Xamarin code, does it still work?  My project still relies on a bunch of other libraries where Maui replacements aren't available, so I can't make the jump just yet.  My biggest ask is updated webrtc native binaries for iOS and Android.  Would you point me to where I can find updated binaries and the process (if any) to incorporate them into your library?
Thank-you for your excellent work!!!!!!

Hi, Xamarin code will be removed from the VS solution. The code will stay in the repo and it should still be usable.
By the way, I haven't checked in the MAUI/NET8 code yet. I am still working on it locally.
I have another public repo where you can build native libraries via GitHub actions to be used in bindings.
ANDROID: https://github.com/melihercan/WebRTCnative/actions/runs/7003180717
iOS: https://github.com/melihercan/WebRTCnative/actions/runs/7007401993
You can google how to bind these updated libraries to the current code. Android is pretty straightforward, but iOS is a pain in the butt:),  both integration and building via Windows.

Thank-you so much!!!!
Get Outlook for Androidhttps://aka.ms/AAb9ysg

From: melihercan @.>
Sent: Monday, January 15, 2024 4:03:14 AM
To: melihercan/WebRTCme @.>
Cc: John George @.>; Author @.>
Subject: Re: [melihercan/WebRTCme] Xamarin support? (Issue #33)
Hi, Xamarin code will be removed from the VS solution. The code will stay in the repo and it should still be usable.
By the way, I haven't checked in the MAUI/NET8 code yet. I am still working on it locally.
I have another public repo where you can build native libraries via GitHub actions to be used in bindings.
ANDROID: https://github.com/melihercan/WebRTCnative/actions/runs/7003180717
iOS: https://github.com/melihercan/WebRTCnative/actions/runs/7007401993
You can google how to bind these updated libraries to the current code. Android is pretty straightforward, but iOS is a pain in the butt:), both integration and building via Windows.
—
Reply to this email directly, view it on GitHubhttps://github.com/melihercan/WebRTCme/issues/33#issuecomment-1891623144, or unsubscribehttps://github.com/notifications/unsubscribe-auth/ABJAZ4KQRH2ZQ4FZ2FJGR4LYOTWFFAVCNFSM6AAAAABB2FKM3CVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTQOJRGYZDGMJUGQ.
You are receiving this because you authored the thread.Message ID: @.***>


Tabbing issue with radio buttons in modal.

Our team is working on accessibility testing(AVT) issues and we noticed issue with radio button component.
Issue:
we have radio buttons in modal and though modal is not opened, on tabbing, at end of the page instead of going to address bar/title, JAWS tabbing is announcing radio buttons.
This is the exact AVT issue we had in our page:
When focus is on last  overflow-menu in table, on tabbing further JAWS announces three radio buttons even when these radio buttons are not visible on screen. Make sure only the information on the page is read by JAWS.
line causing the issue is visibility:visible in bx-radio-button component.

Already fixed this in our project by overriding CC css, will raise PR with same change.


Best approach for filtering by origin IP or x-forwarded-for?

As far as I can tell, the only way I can restrict service to specific  IPs/subnets is to use HeaderRegexp: "192.168.*"  or somesuch.  Is there a better option?

Ah, I just found https://github.com/containous/traefik/issues/623  so I reckon that this is a yet unsolved problem.

Closing this one then ;)


helmfile --helm-binary does not work with sync when updating repo

helmfile -b [path/to/helm] sync
is broken as it tries to update with $PATH found helm.
It does use the binary path specified with -b for  helm upgrade though.
Tested on version 0.35.0 and 0.36.0
debug output:
helm repo update uses the binary found in $PATH
helm upgrade --install uses the binary from -b
`
[root@server ~]# /usr/local/bin/helmfile --log-level debug --helm-binary /usr/local/bin/helm --file /etc/kubernetes/helmfile/helmfile.yaml sync --args "--tls --tiller-namespace=$NS"
Processing /etc/kubernetes/helmfile/helmfile.yaml
second-pass rendering result of "/etc/kubernetes/helmfile/helmfile.yaml":
0: ---
1: repositories:
2:   - name: internal
3:     url: $REPO_URL
4:
5: releases:
6: - name: $CHART
7:   namespace: $NS
8:   chart: internal/$CHART
9:   version: ~1.0.0
Adding repo internal $REPO_URL
exec: helm repo add internal $REPO_URL
"internal" has been added to your repositories
Updating repo
exec: helm repo update
Hang tight while we grab the latest from your chart repositories...
...Skip local chart repository
...Successfully got an update from the "internal" chart repository
...Unable to get an update from the "stable" chart repository (https://kubernetes-charts.storage.googleapis.com):
Get https://kubernetes-charts.storage.googleapis.com/index.yaml: dial tcp <IP_ADDRESS>:443: i/o timeout
Update Complete. ⎈ Happy Helming!⎈
Upgrading internal/$CHART
exec: /usr/local/bin/helm upgrade --install --reset-values $CHART internal/$CHART --version ~1.0.0 --namespace $NS --tls --tiller-namespace=$NS
E0919 14:07:14.677804   78195 portforward.go:303] error copying from remote stream to local connection: readfrom tcp4 <IP_ADDRESS>:37225-><IP_ADDRESS>:44230: write tcp4 <IP_ADDRESS>:37225-><IP_ADDRESS>:44230: write: broken pipe
Release "$CHART" has been upgraded. Happy Helming!
LAST DEPLOYED: Wed Sep 19 14:07:14 2018
NAMESPACE: $NS
STATUS: DEPLOYED
`

I'm guessing we need to evaluate the the helm binary path here before it attempts to update repos/depedencies?
Action: func(c *cli.Context) error { 				return findAndIterateOverDesiredStatesUsingFlags(c, func(state *state.HelmState, helm helmexec.Interface) []error { 					if errs := state.SyncRepos(helm); errs != nil && len(errs) > 0 { 						return errs 					} 					if errs := state.UpdateDeps(helm); errs != nil && len(errs) > 0 { 						return errs 					} 					return executeSyncCommand(c, state, helm) 				}) 			}

Could we not run a check like
if c.GlobalString("helm-binary") != "" { 		helm.SetHelmBinary(c.GlobalString("helm-binary")) 	}
in the FindAndIterateOverDesiredStates function to avoid having that check for all helmfile subcommands?

@georgejdli Thanks for the detailed report! #352 should fix this. Could you try again with v0.36.1 that is beging released shortly?

@mumoshu Thanks for the quick fix! Working as expected now.

@georgejdli Your investigation helped me a lot. Thanks for your cooperation ☺


Convention for short variable name for LatLng type?

As mentioned in this issue, do we want to come up with and use a good, standard short variable name for LatLng variables?

ll?
g?

Lots of potential shorthand names come up in my mind: c for coordinate, m for mercator, p for point, l for location. Fully generic names like a or x for "I don't care". ;)
Being consistent across the codebase is secondary to being clear within a function in the codebase, though. Maybe for the benefit of people reading the source code we don't have a shorthand at all and just LatLng latlng = ... instead?


Remove hubble-cli sub-chart

Remove the hubble-cli sub-chart since the binary was packaged with the cilium-agent container and will not be released
Fixes: #11805
Signed-off-by: Sean Winn<EMAIL_ADDRESS>

Coverage increased (+0.004%) to 36.908% when pulling 7a113cbb5d2fe446ccfae392ddc68d6247623465 on seanmwinn:cilium-11805 into b7be1c000760bbdcb00c88b6c686334cc22150e5 on cilium:master.

this is blocked on https://github.com/cilium/cilium/pull/11784. once it's merged, test/k8sT/hubble.go needs to be updated a bit more. for example, https://github.com/cilium/cilium/blob/7a113cbb5d2fe446ccfae392ddc68d6247623465/test/k8sT/hubble.go#L179 needs to exec into the cilium pod to run the hubble command.

test-me-please

retest-runtime


A bit different approach to external validators plus validation against definition in a schema

Hi, I'd propose a bit different approach to external validators: allow pluggable validator modules which follow validator interface, the same as used for draft3 and draft4 validators, and can be built on top of those default validators as well as override any rule or implement totally independent validation logic. I think, that is rather more flexible approach, than just allowing some post validation after all the default rules have been successfully validated. It will also allow to update jesse_validator_draft4 code, removing unnecessary code duplication with jesse_validator_draft3.
This PR also introduces jesse:validate_definition/3/4 interface to validate a value against a particular definition in the definitions section of a schema.
I see, that you've just merged alternative implementation for external validators (I should have created this PR some weeks ago!), thou I hope you'll consider this PR. If you find this PR interesting and I'll prepare it for the merge (rebase, etc).

thanks for finally opening a PR ! :)
it will take a while to look through it, but I've always wanted to do this but time never knocked on its door.
as for the functionality to validate against a schema under definitions - I don't see why it cannot/shouldn't be generic i.e. validate JSON instance against the nested schema available at this JSON pointer (basically revert one of your commits and go back to validate_ref or similar).
If you have the time, I suggest this:

split custom_validator and validate_ref changes into 2 PRs (I haven't paid attention if one is dependant on the other; ignore the split request if so)
if you agree about the request to go back to validate_ref, do so
squash your commits (it will make next steps easier)
rebase your work on the no-external-validator branch (and open PRs towards that branch instead of master) where I've reverted @lazedo 's validator just so that we have a clean diff to review

ping @lazedo : feedback is most welcome!

@andreineculau sure, I'll split the PR into two and follow the rest of the proposed points.
A note regarding the validate_definition vs validate_ref, though. Current jesse_database implementation doesn't seem reliable for production use:

That's just a public named ets table, owned by a process first created it. That could lead to unexpected unpleasant effects in runtime, when the owner process crashes. At least I'd expect it to be embedded into a gen_server with a child_spec interface, provided for the library users.
Even with the gen_server implemetation jesse_database is still a single point of failure, which is to be avoided when possible.

Since in the application where I use jesse, it is possible to reliably keep the schema (essentially a jesse state) by the application, I've changed jesse API from validate_ref (definition validation analogue to jesse:validate which uses a schema in jesse_database) to  validate_definition (definition validation analogue to jesse:validate_with_schema providing the schema to validate against as a function parameter).
Suggestions for a better approach to implementing that API for validation against a subschema available at particular JSON pointer, are very welcome!

@arentrue i think the initial external validators may not be fully explained.
we have draft3/draft4 schemas that validate data, and.., for business extensions (validate a customer in a database, ....) we use the extension validator by using the callback. we look for annotated schema elements and perform whatever we want as an extra validation.
we still want to use v3/v4 validators for types, ranges, whatever. we are only interested in providing an extra layer of validation not tied to jesse core library.


Fix caching

Cache handling in the Navigator is confusing since the cache headers are not correctly recognized if not using HTTP1.1
This PR fixes cache problems in the Navigator and fixes another roundoff error observed in caching with NOT-MODIFIED-SINCE header

Looks good but tests are missing :)

alright, I'll look into the tests

I updated the tests: introduced a non integer timestamp in _update_timestamp fixture
I have non integer timestamps on the local file system and in this case, wsgiref.handlers.format_date_time invoked by mapproxy.util.time.format_httpdate cuts off the fractional part of the date seconds. This makes the test test_if_modified_since fail.
the test case fails without the integer cast introduced in 81b3d31

I could not easily test the http1.1 compliance.
I see one issue though. The cache handling with etag and last-modified headers is not compliant with HTTP1.0, so browsers were confused when receiving an HTTP1.0 response and may have ignored the etag.
With the currect modification, the server replies with an HTTP1.1 response, even if the client requests HTTP1.0. However, HTTP1.1 elements cannot easily be removed in the response.
I would just leave it like this, it works well on my (recent) browsers chrome, firefox. No idea which should be the behaviour following an explicit HTTP1.0 request ?

I agree that this a needed fix, as most requests will use HTTP 1.1, but why cant we just remove invalid headers for http 1.0 responses when we detect such requests? I think removing uncompliant headers (like transfer-encoding, etc) should be sufficient?

thanks a lot for your review, I'll have a look into this at the beginning of next week.

Hello, I looked a bit into HTTP1.0 compliance.
It starts getting really old, so I'm not sure if it deserves much efforts.
Even google returns a HTTP1.0 response with unsupported headers.
however, I tried to implement return of a clean HTTP1.0 response by removing unsupported headers. This works, and I checked it manually, but there are no CI tests on the complete WGSI server, only on a higher level, which does not care about HTTP version.
I am not sure about the cost of the HTTP version check at every request. Probably there is no big impact, but I cannot assess the mapproxy server performance very well.
Actually, I would prefer to either ignore HTTP1.0 requests and answer with an HTTP1.1 response, and let the client cope with that. Or maybe just do like google.com, return a response with HTTP1.0 status line, but with all the same headers as in HTTP1.1
What do you think about merging the PR with or without the latest commit https://github.com/mapproxy/mapproxy/pull/514/commits/69160c1933e978ef4c6cac12a4069a3e9b8106ad ?

In general i think this is going into the right direction, but i am unsure and maybe not the right one to answer the question, if setting the protocol_version on a fixed value like it is done now is a good idea. I guess before this change, mapproxy always answered with version 1.0 as its the default from the inherited class. But i am unsure how relevant the setting is, as the surrounding webserver / wsgi server like nginx, gunicorn etc. may upgrade the protocol anyways?!
Maybe it would be better to return a response using the same protocol the request has been made (self.request_version), but like i said this maybe answered better by another one more involved in this...

closing due to inactivity, feel free to reopen


[NEW ICON] web3.js

Skill Name
web3.js
Why?
Its super popular for developement
Reference Image
https://jirasupport.files.wordpress.com/2018/04/web3.png

You might consider changing your issue name to [NEW ICON] web3.js

stale


Fix- Raise InvalidParameterValue when change visibility timeout is mo…

Fix- Raise InvalidParameterValue when change visibility timeout is more than permitted
https://github.com/localstack/localstack/issues/3956

Codecov Report

Merging #3893 (0d3be93) into master (f9e0595) will increase coverage by 0.02%.
The diff coverage is 100.00%.

@@            Coverage Diff             @@
##           master    #3893      +/-   ##
==========================================
+ Coverage   94.84%   94.86%   +0.02%
==========================================
  Files         454      454
  Lines       49312    49340      +28
==========================================
+ Hits        46769    46806      +37
+ Misses       2543     2534       -9

Flag
Coverage Δ

servertests
55.82% <75.00%> (-0.01%)
:arrow_down:

unittests
94.73% <100.00%> (+0.02%)
:arrow_up:

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files
Coverage Δ

moto/sqs/models.py
97.13% <100.00%> (+0.02%)
:arrow_up:

moto/cloudwatch/responses.py
98.33% <0.00%> (ø)

moto/resourcegroups/responses.py
100.00% <0.00%> (ø)

moto/ssm/models.py
93.75% <0.00%> (+0.02%)
:arrow_up:

moto/cloudwatch/models.py
95.13% <0.00%> (+0.04%)
:arrow_up:

moto/resourcegroups/models.py
79.39% <0.00%> (+0.73%)
:arrow_up:

moto/batch/models.py
84.30% <0.00%> (+1.45%)
:arrow_up:

Continue to review full report at Codecov.

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


Docker Toolkit:  All machines except VirtualBox say "Timeout"

docker-machine etc were working perfectly; I had one machine pointing to VirtualBox and two others to external services (DigitalOcean and Google Compute Engine).  I updated to Docker Toolbox on Mac OS X and now the VirtualBox machine says "Stopped" and the two external services say "Timeout".  I can get VirtualBox to run OK but the two external service are no longer working.  I have deleted them and reinstalled them and they still just say "Timeout".  The env command works and the "Timeout" machines all point to the correct IP Address etc..  So, how does one fix the Timeout issue with the new Docker Toolkit?

Hey @davidcittadini, sorry about this.  We introduced a timeout feature for Docker Machine state queries to keep non-responsive machines from hanging the UI, but the timeout duration seems quite aggressive (it is 3 seconds).  We want to make the timeout configurable (e.g. https://github.com/docker/machine/pull/1700), and figure out what the right thing to do by default is.  cc @ehazlett how do you think we should handle this?

Thanks @nathanleclaire.  At the moment I am accessing all the Docker services via WiFi in hotels in Europe...and so being able to achieve a connection within 3 seconds is an absolute impossibility here :)  Look forward to something soon..thanks..

I run on windows, in powershell, and mostly use the hyper-v drivers. All hyper-v machines have State timeout when running docker-machine ls, although I they are running and I can interact with them properly

Just FYI I think I will kick the timeout up higher in the next release and also potentially include an option to disable it.

That would be great :)

I've noticed a few mentions of the timeout being an annoyance; I also ran into this while being on wifi in Europe.  I would think that at least 10 or 15 seconds would be an acceptable default timeout as I would rather wait 10-15 seconds for proper information than have to try my same command again with the timeout parameter on a more regular basis when a few of my instances don't respond quite as quickly.

Yeah, I think I will kick the timeout up to 10-15 seconds.

It's 10 seconds now (will be included in next release): https://github.com/docker/machine/blob/master/commands/ls.go#L24
It's not configurable yet, but maybe we can file an issue for that specifically.

I am a bit torn here. Just giving my feedback for considerations.
Although I want the proper information, if my console locks when this is
happening, it becomes quite annoying too.
I often run ls just to figure out the names of the machines I have. I don't
always need to know if it's up or not, if it times out or responds.
On Friday, 23 October 2015, Nathan LeClaire<EMAIL_ADDRESS>wrote:

It's 10 seconds now (will be included in next release):
https://github.com/docker/machine/blob/master/commands/ls.go#L24
It's not configurable yet, but maybe we can file an issue for that
specifically.
—
Reply to this email directly or view it on GitHub
https://github.com/docker/machine/issues/1711#issuecomment-150652918.

--
Stéphane Erbrech

@serbrech Not a perfect solution, but if all you want to know is the names of the machines, docker-machine ls -q is the "quiet" mode which will just list their names without query status etc.


Message afer completing

There are a couple of messages displayed by jatos after the experiment is done. One can be this:
Aborted Study: all data that have been submitted during this study were deleted. The other one says study completed' or something like this. It's really not very important, but is there an easy way to customize this so -for example- I could write this in German?

We are talking about internationalization. Haven't included this so far.
Somehow I assumed all studies in English. Play supports
internationalization. I should look into this. Then I can tell you how much
effort it is. Although there is always the dirty but easy way to just
translate those messages into German. This is done in a minute. But then
it's German only. Do you want German only?
On 9 Sep 2015 1:01 pm, "elisafilevich"<EMAIL_ADDRESS>wrote:

There are a couple of messages displayed by jatos after the experiment is
done. One can be this:
Aborted Study: all data that have been submitted during this study were
deleted. The other one says study completed' or something like this. It's
really not very important, but is there an easy way to customize this so
-for example- I could write this in German?
—
Reply to this email directly or view it on GitHub
https://github.com/JATOS/JATOS/issues/105.

Nope. If it's going to be hard-coded then English is clearly best
For now let's leave it like this

On 9 Sep 2015, at 13:12, Kristian Lange<EMAIL_ADDRESS>wrote:
We are talking about internationalization. Haven't included this so far.
Somehow I assumed all studies in English. Play supports
internationalization. I should look into this. Then I can tell you how much
effort it is. Although there is always the dirty but easy way to just
translate those messages into German. This is done in a minute. But then
it's German only. Do you want German only?
On 9 Sep 2015 1:01 pm, "elisafilevich"<EMAIL_ADDRESS>wrote:

There are a couple of messages displayed by jatos after the experiment is
done. One can be this:
Aborted Study: all data that have been submitted during this study were
deleted. The other one says study completed' or something like this. It's
really not very important, but is there an easy way to customize this so
-for example- I could write this in German?
—
Reply to this email directly or view it on GitHub
https://github.com/JATOS/JATOS/issues/105.

—
Reply to this email directly or view it on GitHub https://github.com/JATOS/JATOS/issues/105#issuecomment-138878096.

Agreed and Done then


Feat/dialog notes word count

Add word count for note.
Should smileys such as ":D" count as words?

I think ":D" should be counted as a word, just because I don't think it's a good idea to check every word against a list of "non-word-words" (which might be different in every language).


Didn't find anywhere else. Of course, I'm working in the dev branch, so it may differ from the play branch.


How to conitnously update pwa

I created a property group like this:
  <PropertyGroup>
    <ServiceWorkerForce>true</ServiceWorkerForce>
  </PropertyGroup>

But i still need to add
  <PropertyGroup>
    <ServiceWorkerForce>true</ServiceWorkerForce>
    <ServiceWorkerCacheVersion>2</ServiceWorkerCacheVersion>
  </PropertyGroup>

and update the cache version every time i want to add changes to the blazor project.
How can I always keep the build fresh so when I launch the app the service worker/cache version updates autmatically?

Try something like this
https://github.com/Blazored/Gitter/blob/d85409d53bd557547cb52d09c6014e8ba78f1fe3/src/Directory.Build.props#L9

Thanks, this works


Angular 7/8 Support

Would be good to see this example with an updated version of Angular.

That is a great point. I will add it to my list of things to do, but it may be a while. I'm happy to take contributions if you want to give it a shot.


add require to base event

dependencies defined in gemspec file won't be ever required automatically

nvm, I see it's fixed in the wrong place, need to figure out how to change this

@addicted2sounds Does it solve the issue in the end? Have you tested it?

yes, the error I got initially was:
NameError: uninitialized constant Hermes::Dry

checked with requiring the local version of the gem. Not sure how to check that with specs

@addicted2sounds Ok, that should be enough, all good then


Packet is a STUN message but no agent handled it

This happens on the Gateway a lot now. Perhaps we should lower the log level? This can happen if the two sides disagree about the idle_timeout.
Jun 27 17:30:33 perf sudo[1697696]: 2024-06-27T17:30:33.836845Z  WARN firezone_tunnel::gateway: Failed to decapsulate incoming packet: Packet is a STUN message but no agent handled it; num_agents = 4 local=[2001:19f0:5401:14df::]:35317 from=[2600:1900:4120:f732:0:32::]:3478 num_bytes=92
Jun 27 17:30:33 perf sudo[1697696]: 2024-06-27T17:30:33.838219Z  WARN firezone_tunnel::gateway: Failed to decapsulate incoming packet: Packet is a STUN message but no agent handled it; num_agents = 4 local=[2001:19f0:5401:14df::]:35317 from=[2600:1900:4000:102d:0:23::]:3478 num_bytes=92
Jun 27 17:30:34 perf sudo[1697696]: 2024-06-27T17:30:34.331009Z  WARN firezone_tunnel::gateway: Failed to decapsulate incoming packet: Packet is a STUN message but no agent handled it; num_agents = 4 local=[2001:19f0:5401:14df::]:35317 from=[2600:1900:4120:f732:0:32::]:3478 num_bytes=92
Jun 27 17:30:34 perf sudo[1697696]: 2024-06-27T17:30:34.405460Z  WARN firezone_tunnel::gateway: Failed to decapsulate incoming packet: Packet is a STUN message but no agent handled it; num_agents = 4 local=<IP_ADDRESS>:32849 from=<IP_ADDRESS>:50977 num_bytes=92
Jun 27 17:30:34 perf sudo[1697696]: 2024-06-27T17:30:34.831688Z  WARN firezone_tunnel::gateway: Failed to decapsulate incoming packet: Packet is a STUN message but no agent handled it; num_agents = 4 local=[2001:19f0:5401:14df::]:35317 from=[2600:1900:4000:102d:0:23::]:3478 num_bytes=92
Jun 27 17:30:34 perf sudo[1697696]: 2024-06-27T17:30:34.904361Z  WARN firezone_tunnel::gateway: Failed to decapsulate incoming packet: Packet is a STUN message but no agent handled it; num_agents = 4 local=<IP_ADDRESS>:32849 from=<IP_ADDRESS>:50977 num_bytes=92
Jun 27 17:30:35 perf sudo[1697696]: 2024-06-27T17:30:35.334847Z  WARN firezone_tunnel::gateway: Failed to decapsulate incoming packet: Packet is a STUN message but no agent handled it; num_agents = 4 local=[2001:19f0:5401:14df::]:35317 from=[2600:1900:4120:f732:0:32::]:3478 num_bytes=92
Jun 27 17:30:35 perf sudo[1697696]: 2024-06-27T17:30:35.905175Z  WARN firezone_tunnel::gateway: Failed to decapsulate incoming packet: Packet is a STUN message but no agent handled it; num_agents = 4 local=<IP_ADDRESS>:32849 from=<IP_ADDRESS>:50977 num_bytes=92
Jun 27 17:30:36 perf sudo[1697696]: 2024-06-27T17:30:36.335948Z  WARN firezone_tunnel::gateway: Failed to decapsulate incoming packet: Packet is a STUN message but no agent handled it; num_agents = 4 local=[2001:19f0:5401:14df::]:35317 from=[2600:1900:4000:102d:0:23::]:3478 num_bytes=92
Jun 27 17:30:36 perf sudo[1697696]: 2024-06-27T17:30:36.835072Z  WARN firezone_tunnel::gateway: Failed to decapsulate incoming packet: Packet is a STUN message but no agent handled it; num_agents = 4 local=[2001:19f0:5401:14df::]:35317 from=[2600:1900:4120:f732:0:32::]:3478 num_bytes=92
Jun 27 17:30:37 perf sudo[1697696]: 2024-06-27T17:30:37.404451Z  WARN firezone_tunnel::gateway: Failed to decapsulate incoming packet: Packet is a STUN message but no agent handled it; num_agents = 4 local=<IP_ADDRESS>:32849 from=<IP_ADDRESS>:50977 num_bytes=92
Jun 27 17:30:37 perf sudo[1697696]: 2024-06-27T17:30:37.836076Z  WARN firezone_tunnel::gateway: Failed to decapsulate incoming packet: Packet is a STUN message but no agent handled it; num_agents = 4 local=[2001:19f0:5401:14df::]:35317 from=[2600:1900:4000:102d:0:23::]:3478 num_bytes=92
Jun 27 17:30:38 perf sudo[1697696]: 2024-06-27T17:30:38.332635Z  WARN firezone_tunnel::gateway: Failed to decapsulate incoming packet: Packet is a STUN message but no agent handled it; num_agents = 4 local=[2001:19f0:5401:14df::]:35317 from=[2600:1900:4120:f732:0:32::]:3478 num_bytes=92
Jun 27 17:30:38 perf sudo[1697696]: 2024-06-27T17:30:38.904965Z  WARN firezone_tunnel::gateway: Failed to decapsulate incoming packet: Packet is a STUN message but no agent handled it; num_agents = 4 local=<IP_ADDRESS>:32849 from=<IP_ADDRESS>:50977 num_bytes=92
Jun 27 17:30:39 perf sudo[1697696]: 2024-06-27T17:30:39.336797Z  WARN firezone_tunnel::gateway: Failed to decapsulate incoming packet: Packet is a STUN message but no agent handled it; num_agents = 4 local=[2001:19f0:5401:14df::]:35317 from=[2600:1900:4000:102d:0:23::]:3478 num_bytes=92
Jun 27 17:30:39 perf sudo[1697696]: 2024-06-27T17:30:39.689981Z  WARN firezone_tunnel::gateway: Failed to decapsulate incoming packet: Packet was not accepted by any wireguard tunnel; num_tunnels = 4 local=<IP_ADDRESS>:32849 from=<IP_ADDRESS>:50977 num_bytes=32
Jun 27 17:30:39 perf sudo[1697696]: 2024-06-27T17:30:39.829188Z  WARN firezone_tunnel::gateway: Failed to decapsulate incoming packet: Packet is a STUN message but no agent handled it; num_agents = 4 local=[2001:19f0:5401:14df::]:35317 from=[2600:1900:4120:f732:0:32::]:3478 num_bytes=92
Jun 27 17:30:40 perf sudo[1697696]: 2024-06-27T17:30:40.405410Z  WARN firezone_tunnel::gateway: Failed to decapsulate incoming packet: Packet is a STUN message but no agent handled it; num_agents = 4 local=<IP_ADDRESS>:32849 from=<IP_ADDRESS>:50977 num_bytes=92
Jun 27 17:30:40 perf sudo[1697696]: 2024-06-27T17:30:40.837675Z  WARN firezone_tunnel::gateway: Failed to decapsulate incoming packet: Packet is a STUN message but no agent handled it; num_agents = 4 local=[2001:19f0:5401:14df::]:35317 from=[2600:1900:4000:102d:0:23::]:3478 num_bytes=92
Jun 27 17:30:41 perf sudo[1697696]: 2024-06-27T17:30:41.335314Z  WARN firezone_tunnel::gateway: Failed to decapsulate incoming packet: Packet is a STUN message but no agent handled it; num_agents = 4 local=[2001:19f0:5401:14df::]:35317 from=[2600:1900:4120:f732:0:32::]:3478 num_bytes=92

This happens on the Gateway a lot now. Perhaps we should lower the log level? This can happen if the two sides disagree about the idle_timeout.

Yeah, I noticed that on the client-side. Probably safe to lower for the same reasons.
They shouldn't disagree on the idle-timeout by a lot! If we can send STUN packets, that means we have a connection so the timers on both sides for when the last packet was sent / received should only vary by ~1 RTT.


Define program-wide Rust flags in .bazelrc

The flags defined so far in rust-deps/BUILD.bazel are not applied to dependent targets, so manually define global Rust flags to enable -C panic=abort and improve code size. Linux opt binaries are ~280KB smaller as a result.
I also considered a number of other configurations and identified some options that might be good for release builds, the comments describe how these might be used in a future release configuration.
Upstream PR has been added.

Do we want panics to be aborts? This differs significantly from our philosophy on the C++ side, where we use exceptions like panics, but we very much want to be able to catch them, so that we can fail out just one request instead of crashing the server.

Do we want panics to be aborts? This differs significantly from our philosophy on the C++ side, where we use exceptions like panics, but we very much want to be able to catch them, so that we can fail out just one request instead of crashing the server.

panic=abort is what we are currently using based on rust-deps/BUILD.bazel (although that's not applied globally), I assumed that it was best to keep it
For fastdbg panic=unwind should be preferable either way, I'm also open to changing it in the general case

Ah OK, makes sense.
(I'm not competent to review this diff, will leave it to Mike.)


add lighthouse16.com

@nkoehring thank you for adding the website and for pointing me to "logo darkmode bug".. fixed it.. thanks :-)


[Platform] SOL transaction API

Summary of Bug
Trust wallet dont show the transfers of Solana
Expected Behavior
Transactions should appear on the list
Steps to Reproduce
Opened SOL wallet.
There is no transactions listed.

More Info (for devs / optional)
Request details:

Reported issue by user:

Good Morning. I've been having trouble since yesterday to transfer 249.74 Solana (SOL) from Binance to my Trust wallet. The transfer appears to have been successful but does not appear on my balance in the Trust Wallet. There seems to be a problem because transactions for all currencies appear, with the exception of SOLANA. I am sending a print screen in an attached file. Please check 03 files attacheds. I have already tried the procedures that were guided. Now I really need to be helped because my knowledge has run out and I am worried about losing my coins.

My address of Solana in trustwallet is: 5LtWMUNw7Hufh5b15DZuRNoAb2escKHfUC72XSCuEi1b

Txid is:3gAm75ey6YWg2yorCxiKeDchFqrJ4bY3coDUjMJ92UrctwUJYCuuph26iCBiFnzrTyevA4zyWYR6ZcYZhiqhMjnC

My version of Trust Walletis 5.4 (545)

Response details:
{}

We do not have such api at all for SOL. So let's discuss it as a feature, not a bug

These 2 rpc should be enough:

getConfirmedSignaturesForAddress2
getConfirmedTransaction


Create iespuertasdelcampo

IES Puertas del Campo
IES Puertas del Campo

@javik288 lib/domains/es/iespuertasdelcampo: this request has an incorrect file path format, please ensure that you are familiar with     this repository rules located at the bottom of this page and change     your request accordingly. If you don't know how to change request, close it and open a new one.     If you are not able to make the pull request according the instructions, please send us an email to<EMAIL_ADDRESS>Please mention this request URL in the message.

El mié., 18 dic. 2019 a las 5:04, Philip Torchinsky (<
<EMAIL_ADDRESS>escribió:

@javik288 https://github.com/javik288
lib/domains/es/iespuertasdelcampo: this request has an incorrect file path
format, please ensure that you are familiar with this repository rules
located at the bottom of this page https://github.com/JetBrains/swot
and change your request accordingly. If you don't know how to change
request, close it and open a new one. If you are not able to make the pull
request according the instructions, please send us an email to
<EMAIL_ADDRESS>Please mention this request URL in the message.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/JetBrains/swot/pull/7331?email_source=notifications&email_token=AOB5OAKDWDZAGWEFN3FKUPTQZGOOFA5CNFSM4J3XWRUKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEHEZCGA#issuecomment-566858008,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AOB5OAOP44BAV4Q3EVOL2G3QZGOOFANCNFSM4J3XWRUA
.

@javik288 lib/domains/es/iespuertasdelcampo: this request has an incorrect file path format, please ensure that you are familiar with     this repository rules located at the bottom of this page and change     your request accordingly. If you don't know how to change request, close it and open a new one.     If you are not able to make the pull request according the instructions, please send us an email to<EMAIL_ADDRESS>Please mention this request URL in the message.

@javik288 lib/domains/es/iespuertasdelcampo: this request has an incorrect file path format, please ensure that you are familiar with     this repository rules located at the bottom of this page and change     your request accordingly. If you don't know how to change request, close it and open a new one.     If you are not able to make the pull request according the instructions, please send us an email to<EMAIL_ADDRESS>Please mention this request URL in the message.

@javik288 lib/domains/es/iespuertasdelcampo: this request has an incorrect file path format, please ensure that you are familiar with     this repository rules located at the bottom of this page and change     your request accordingly. If you don't know how to change request, close it and open a new one.     If you are not able to make the pull request according the instructions, please send us an email to<EMAIL_ADDRESS>Please mention this request URL in the message.

@javik288 lib/domains/es/iespuertasdelcampo: this request has an incorrect file path format, please ensure that you are familiar with     this repository rules located at the bottom of this page and change     your request accordingly. If you don't know how to change request, close it and open a new one.     If you are not able to make the pull request according the instructions, please send us an email to<EMAIL_ADDRESS>Please mention this request URL in the message.

@javik288 lib/domains/es/iespuertasdelcampo: this request has an incorrect file path format, please ensure that you are familiar with     this repository rules located at the bottom of this page and change     your request accordingly. If you don't know how to change request, close it and open a new one.     If you are not able to make the pull request according the instructions, please send us an email to<EMAIL_ADDRESS>Please mention this request URL in the message.

@javik288 Pull request merged. Thank you! However you did not name the file in the request correctly, thus I'll do it for you in about two hours. Please wait at least two hours after this message is sent, before start requesting the licenses at https://jetbrains.com/student.


Profile dashboard should have a link to view and edit public profile

https://stakes.social/profile should have these links.
It took me a while to realize I had to go to https://stakes.social/author/[ID] which has a "Edit" button.

Agreed, we'll implement that this week!


BUG: argon2 cannot be used

Describe the bug:
I cannot use the argon2 package inside the web container.
Link to the blitz that caused the error
https://stackblitz.com/edit/argon2?file=index.js
Steps to reproduce:

Go to 'https://stackblitz.com/edit/argon2?file=index.js'
In Terminal, write node index.js
See error

Error: Cannot find module '/projects/argon2/node_modules/argon2/lib/binding/napi-v3/argon2.node'
Require stack:
- /projects/argon2/node_modules/argon2/argon2.js
- /projects/argon2/index.js

Expected behavior:
No error.
Version of webcontainer:
Hash: 57be275669708b1d42e233d60c80159bef577631
Screenshots:

Desktop (please complete the following information):
Browser name  = Chrome
Full version  = 92.0.4515.20
Major version = 92
navigator.appName = Netscape
navigator.userAgent = Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/92.0.4515.20 Safari/537.36
performance.memory = {
"totalJSHeapSize": 91227648,
"usedJSHeapSize": 83238304,
"jsHeapSizeLimit":<PHONE_NUMBER>
}
Additional context:

It looks like this package is using the n-api and thus native packages. Since everything in running inside the browser, it's not possible to use native packages.
Unfortunately, this will never work in WebContainers. To make this work, the argon2 should switch to a WASM based implementation that allow it to run in the browser.


replace bingo with go 1.17 go run commands

Is your feature request related to a problem? Please describe.
Right now, we use a modified version of bingo to pin versions without tainting GOBIN's default. For example, this is used to invoke known versions of hugo, goreleaser, golint, etc
Describe the solution you'd like
Inside the Makefile, declare paths for each main tool and do go run instead. This reduces the toolchain knowledge to run the project and conversion to make-unfriendly env like windows more straightforward.

go run now accepts arguments with version suffixes (for example, go run example.com/cmd@v1.0.0). This causes go run to build and run packages in module-aware mode, ignoring the go.mod file in the current directory or any parent directory, if there is one. This is useful for running executables without installing them or without changing dependencies of the current module.

Describe alternatives you've considered
Leaving it alone. There is some benefit to leaving it as depending on how go run in 1.17 is implemented, it might be inefficient to repeatedly run the same command.
Additional context
https://tip.golang.org/doc/go1.17#go-command

cc @nacx

this is good to know this, thanks for raising here 😄

It is possible that when we use this, we can avoid needing cygwin bash anymore. So, possibly worth revisiting the github action that currently installs cygwin-bash and overrides the shell in order to translate paths so bingo's Variables.mk doesn't die (#325)

When I was trying to upgrade the monorepo to 1.17 and move away from Bingo, I found this error when trying to use Kustomize:
go generate ./...
+ set -o allexport
+ source ../../../../scripts/build/tools.mk
++<EMAIL_ADDRESS>++<EMAIL_ADDRESS>++<EMAIL_ADDRESS>++<EMAIL_ADDRESS>+ set +o allexport
+ go run<EMAIL_ADDRESS>build sources/managementplane -o managementplaneoperator.yaml
go run<EMAIL_ADDRESS>(in sigs.k8s.io/kustomize/kustomize/v3@v3.10.0):
	The go.mod file for the module providing named packages contains one or
	more exclude directives. It must not contain directives that would cause
	it to be interpreted differently than if it were the main module.

Looks like go run does not run if the referenced modules contain replace or exclude directives. I found some of the rationale here: https://github.com/golang/go/issues/40276.
Have you found similar issues? And if so, do you have a workaround?

well we don't have need for excludes since axing the istio deps :D

serious answer: 😎 personally, I would try to push that onto the tools themselves, ex keep a bingo file around for things not supported, yet, or just do the same thing ad-hoc in your make file. Raise an issue with the repo that has the conflicts and at least inform them that their tool doesn't work because they are needing to do replaces and whatnot. Some libraries have alternatives that don't have dependency hell, and in any case you can help build pressure on the original go issue that was denied, and through all of it have paperwork in case things change (ex the links to the issues that might resolve)

Looks like it already was reported. Let's see! https://github.com/kubernetes-sigs/kustomize/issues/3618


consolidate env vars into one module

Create an, eg, OptionsMgr that handles all env var settings:

move all getenvs into one file
export the options as an enum (or some such)
query the options in code by the enum
load all the env vars at init (string processing, etc)
needs to handle multiple env var types (eg. TT_KERNEL_DEBUG_PRINT takes core coords as values, like "1,1")

This has the following benefits:

it is easy to see/maintain what runtime options are supported in the code base (all in the enums and env vars in one file)
reading the env vars at init (or once at first access) rather than at runtime allows use of env vars in perf paths
it is an abstraction layer around an OS dependent implementation (eg, on Windows, these would likely be registry keys)
it would be easy to (possibly in the future) re-load the env during a run to, eg, enable/disable tracing by re-reading env from a file, say

mostly done over time, closing


Revamp the spiders.html stability calculation

Rather than calculate the variance of the run POI count from the mean I suggest it is better to calculate it from the maximum. This is on the basis that over a small period of time for most endpoints it is the more valid number to base a variance on. When performing the calculation I am also scaling each run count such the the maximum value POI count for each spider is the same (10,000).
On the display side I have adjusted the traffic light indicator to stop messing around with colour scaling for the "obviously" good and bad results.
I realise that this is more art than science so can only say that I feel the output is a bit more clear/useful than before! :-)

hmm, let me redo this.


Question about training data

Hi,
so I have a question.
Lets say I want to train the model to recognize a chair. I have a dataset of 400 images of chairs.
I can train the model on these images, but the thing is - the boundig box of the chair is the entire image. It is not as if I have 400 Images with chairs in them but I have 400 images with exclusively chairs in them, nothing else is visible and the bounding box of the chair is the entire image.
My question is - is this training Dataset detrimental to the model ?

i believe it would be able to recognize chair with your dataset as is. i would recommend augmenting your dataset with more versatile background environment, even just embed it onto random background would help alot

Hi, thanx for answer.
I made a few tests and as it seems - if I only have exclusively chairs objects in my training dataset than the Yolo model doesnt work.
When I train the model with something else (where I have dataset which is not only bounding boxes of the objects in question) then everything works as expected.
So it seems that in order to learn the model needs both the boundig boxes and some form of
background around/behind it.
And as you suggested I am already making an augmented dataset to try to solve my specific chairs problem.

I now tested the model by using images of my chairs appended (and annotated) in larger images (so some other background is present beside a chair). When chairs are only a (smaller) part of an image and not the entire image per se - then the algorithm seems to be working ok.
So I will close this and the bottom line is - you cannot train the model by having hundred images of your class object (in my case chairs) and nothing else in the images.
However when your objects are present in the hundred images and you properly annotate the bounding box of them - then everything works ok.


[BACKLOG-39844] - Unit tests for new Variables behavior

These fail on <IP_ADDRESS>, and pass against master.

 Note:

Frogbot also supports Contextual Analysis, Secret Detection, IaC and SAST Vulnerabilities Scanning. This features are included as part of the JFrog Advanced Security package, which isn't enabled on your system.

🐸 JFrog Frogbot

:white_check_mark: Build finished in 45m 13s
Build command:
mvn clean verify -B -e -Daudit -amd -Djs.no.sandbox -pl core

:ok_hand: All tests passed!
Tests run: 5386, Failures: 0, Skipped: 14    Test Results

:information_source:  This is an automatic message


{full,zeros,ones}_like should return objects with the same type as the input object

What happened?
I'm getting issues using mypy with the changes to the typing of {full,zeros,ones}_like introduced in https://github.com/pydata/xarray/pull/6611.
cc: @headtr1ck
What did you expect to happen?
I think the object returned should be of the same type as the input object rather than Union[Dataset, DataArray]. For example, I don't think running mypy on the code below should return an error.
Minimal Complete Verifiable Example
import xarray as xr

def test_zeros_like(da: xr.DataArray) -> xr.DataArray:
    return xr.zeros_like(da)

MVCE confirmation

[X] Minimal example — the example is as focused as reasonably possible to demonstrate the underlying issue in xarray.
[X] Complete example — the example is self-contained, including all data and the text of any traceback.
[X] Verifiable example — the example copy & pastes into an IPython prompt or Binder notebook, returning the result.
[X] New issue — a search of GitHub Issues suggests this is not a duplicate.

Was a bug in the overloads, the PR should fix it.
If the bound TypeVar support of mypy would not be so buggy we could move to a simpler solution that is less error prone...


how to stop container from writing as root?

When installing npm packages they get written as root, any recommended way to 'inherit ownership'?
Thanks

Hmm - thanks for the report. I don't think there is a simple way to solve this.
The solution, I think, is for Whalebrew to create a local volume and use the uid and gid options to map them correctly to the host uid and gid.

@kivS Fixed in 0.0.4!


Add support for a no-unwind compiler flag

This would reinterpret all panics as aborts. This has the potential to reduce compilation time, reduce binary size, improve runtime performance, and increase programmer reasoning capacity (an unwind can't smash through this careful unsafe code).
The precise technical details are a bit hairy, though. All libraries/binaries involved would likely need to have the same setting for this flag, which would imply two std builds per platform. Presumably Cargo will need to support metadata for unwind/no-unwind compatibility of the codebase.
Regardless there seems to be a lot of support for doing this eventually, so here's a formal issue to track this. Maybe someone will be brave enough to write a proper RFC.

What is the state of this?

We have -C no-landing-pads, which essentially is what’s being proposed here.

@nagisa I thought that that didn't affect dependencies?

@Ticki you cannot affect dependencies whose code is already generated anyway, can you?

Triage: Fixed by #1513


[Bug]: 3.9.2 is broken due to missing Info.plist

Bug Description
Version 3.9.2 cannot be imported. Looking at the contents, both the Changelog.md and info.plist were removed. No harm on the former, but the absence of the latter breaks the workflow entirely.
Relevant Screenshot

To Reproduce

Download 3.9.2 from the releases.
Try to install it.

Debugging Log
N/A

Workflow Configuration
N/A
Version & System Information
N/A

Last working version
3.9.1
Make sure you have done the following

[X] I have updated to the latest version of this workflow.
[X] I am using Alfred 5. (Alfred 4 is not supported by this workflow anymore.)
[X] I have updated to the latest version of the Metadata-Extractor and the Advanced URI plugin.
[X] If the o… main search does not work, I made sure that I haven't changed any of the default settings of the Metadata-Extractor. Furthermore, I have tried rerunning osetup and it still does not work.
[X] If notes in general can be found, but recently created or renamed notes cannot, I used the oupdate command to manually update the metadata.
[X] I have not renamed my Obsidian config folder, it's still .obsidian (About → Advanced → Override config folder).
[X] If I updated to version 3+ for the first time, I have disabled migrating workflow cutomizations. (If you haven't, you can simply re-download and install the latest release from GitHub and uncheck Migrate my workflow customizations.)

oh thx, I forgot to unignore the file in my release script 🙈
fixed with 3.9.3

The info-original.plist is now included too. Intentional?

fixed


No error message if no permission to open space link

When a space link is open but user does not have permission to access space, user is redirected to personal space without any error message. May I ask to add the same error message to OCIS as we have in oC10?

I am not sure if this is still valid. But as this is a web issue. Let's move it to the web repo ...


Merging netCDF files causes one .nc file to repeat over dimensions

Hi,
I am trying to merge multiple .nc files and write them as one. All saved .nc files have same dimensions for image, attrs are different though.
Following is my code that I am using to merge them. Please note that I am using xr.open_rasterio because without it, I get memory issues.

nc_fpaths = []
chunks = (4096,4096)

def merge_mfnc(nc_fpaths):
        """
        Given multiple files of netCDF, merge them and return.
        """
        xarray_list = []

        for _, nc_fpath in enumerate(nc_fpaths):
            da = xr.open_rasterio(nc_fpath) #without this Dask does not work I believe.
            temp_ds = xr.open_mfdataset(nc_fpath, chunks=self.chunks[0])
            da.attrs = temp_ds[list(temp_ds.keys())[0]].attrs
            da = da.chunk(self.chunks)

            xarray_list.append(da)

            da.close()
            temp_ds.close()

            da = None
            temp_ds = None

        return xr.Dataset(
            {"myvariable": (xr.concat(xarray_list, dim="bands", data_vars="all"))}
        )

So instead of merging those .nc files, the program takes one .nc file and stacks it over dim=bands. I have been facing this issue quite a lot lately. Not sure if it is because of memory leakage or file not being closed.
If there is a better way to get this job done, I am all ears too.

Related to issue #5421. So closing this one.


Nodes in Unknown State and Clarification on High CPU Usage and CPU Limit Settings

Description
What problem are you trying to solve?
I'm currently managing a large-scale deployment using Karpenter, and I am encountering two specific issues:
Nodes in Unknown State: Some of my nodes have intermittently transitioned to an unknown state. This is causing disruptions in workload scheduling and cluster stability. I need to understand potential reasons for this behavior and how to troubleshoot and resolve it.
Clarification on High CPU Usage and CPU Limit Settings: I have several high-CPU node pools, and I'm trying to understand how to optimize CPU utilization and properly set CPU limits. Specifically, I would like guidance on the following:
How to prevent CPU overutilization when scaling large node pools (e.g., 14,000 CPUs+).
Best practices for setting CPU limits in node pools to avoid resource exhaustion without underutilizing available capacity.
How important is this feature to you?
These issues are critical to the stability and efficiency of our cluster. The unknown node state issue directly impacts the reliability of our services, while high CPU usage and misconfigured CPU limits can lead to performance bottlenecks. Any guidance or fixes would significantly enhance the operation of our workloads at scale.

This the current node condition:
MemoryPressure  Unknown  Kubelet stopped posting node status. DiskPressure    Unknown  Kubelet stopped posting node status. PIDPressure     Unknown	 Kubelet stopped posting node status. Ready           Unknown  Kubelet stopped posting node status.

For the first issue, where the node transitions into an unknown state, automated correction would fall under #750.

What configuration I need to include to over an NotReady state to ready or remove?

Is there any configuration we need to add to handle nodes in the NotReady state so they can be automatically restarted or drained? Currently, these nodes are getting stuck and remain in that state.

we are also facing this same issue with Nodes going to NotReady state quite often and remaining there

I'm not exactly sure what the issue is, so I raised a support ticket with AWS to investigate why the Kubelet keeps stopping communication with the nodes. Restarting the stopped instances temporarily fixes the problem, but I have too many nodes in an unknown state to manually restart them all, and this issue is happening frequently. I need urgent help with this.

Does anyone help on this is as often my nodes are going into unknown state as condition status shows 'Kubelet stopped posting node status.'


Add terminating sequence & fix xArm home

Add initiating and terminating sequence go_position_one_two
Fix xArm home position to work with tool

Hi @craigvear, so you mean home → 1-2 → ready for init and ready → 1-2 → home for terminating?

At which point would we wait for "remove pen lid" and press enter?


Pasting .CSV contents will cause a crash

This is fixed in https://github.com/DesModder/DesModder/pull/143


RG505 glitchy when first booted

I can't find much info on if anyone else has ran into this one.
I recently installed GammaOS on my RG505. Works great, but when I need to turn it off or reboot...turning it back on isn't normal.
When it first boots up, the power menu opens itself up and doesn't work. The main screen doesn't respond and navigation is near impossible.
Eventually, it'll pop up a prompt stating the system UI has crashed. I tap the option to close the app, which promptly reloads the system UI and becomes fully functional and everything works flawlessly. Usually after 2 to 5 minutes.
So this one has me pretty confused. Otherwise really like GammaOS on this device.

You can resolve this by doing a factory reset within the recovery menu or from within the Android settings.
Otherwise, flash the stock firmware again, then follow the GammaOS install guide again.


Update cityofzion-neon to 0.1.3

After making all changes to the cask:

[x] brew cask audit --download {{cask_file}} is error-free.
[x] brew cask style --fix {{cask_file}} left no offenses.
[x] The commit message includes the cask’s name and version.

Too late.
#43948

You should take https://github.com/caskroom/homebrew-cask/pull/43948, closing.


Any plan to support PostgreSQL

Please first, look at existing issues to see if the feature has been requested before. If you don't find anything tell us what problem you’re trying to solve. Often a solution already exists! Don’t send pull requests to implement new features without first getting our support. Sometimes we leave features out on purpose to keep the project small.
Feature:
Description of the feature
Rational
Why this feature should be in zipkin
Example Scenario
When will this be used by operators?
Prior Art

Links to prior art
More links

dupe https://github.com/openzipkin/zipkin/issues/1232


Post to python functionality not working

I am not able to get the Post to Python functionality working in my environment. More specifically, the UI indicates success and closes the browser window, but the Python kernel remains busy indefinitely and on manually stopping execution, the network_properties object is not returned. This occurred in both a Jupyter notebook as well as a Python session session within a terminal window.
Environment details:

Python 3.5.2
netwulf 0.0.14
Jupyter 4.3.0
macOS 10.14.4

Related to openjournals/joss-reviews#1425 (so I can keep track of progress in the review issue)

Thank you for opening the issue! Would you mind running the function again with keyword verbose=True?
visualize(G,verbose=True)
then click "Post to Python" and copy-paste the console output here. Thanks!

Sure, see below:
changing directory to /Users/valentinoconstantinou/.netwulf
starting server here ...  Digging a little further, running: lsof -t -i :9853 in terminal returns a running process as expected when the interface is open, and does not when the interface has closed (which I am assuming is correct behavior). Hope this helps.

I think I managed to replicate the behavior, which seems to appear with Python 3.5 if netwulf is installed using the 0.0.14 version on PyPI, and not from the repository. I've now updated the version on PyPI to 0.0.15 which seems to have fixed the issue of the Post to Python-button. Could you try again (without the verbose=True flag, which suppresses the replicated matplotlib-figure)?

@benmaier Thanks for the update! I installed version 0.0.16 via PyPi and the Post to Python functionality is working as now. A unit test could be written in the future test to ensure the proper behavior. Let me know if there's any remaining items to test related to this issue - if there are none, please feel free to ahead and close this issue. Thanks for the quick turn-around! 👍

Cool! Closing this now :) @ulfaslak and I will discuss the testing issues separately and get back to you on that!


Cyclus

I have make some correction of ex  (simulation lengh.. and upate the fuel output recipe)
I add also CYCLUS input for ex 2 & 3
I also add some results in cvs format (probably not standard yet, and should be updated... but this is still something...)

@scopatz yes, it was: buy one get 1 free!
Because you don't like it, I have just resale them... for twice the rices :)

I don't trust camels since they are known deserters :).

Looks good, thanks.


ScrollView children not available in Appium

Hi guys,
When running my app written with the ReactNative framework on ios, the Inspector does its job until I have to inspect a specific child view in a ScrollView. Childrens are not available in the hierarchy of views and therefore not clickable. It’s working fine on Android , the problem is only present on iOS.
Platform : ios10
Device : iPhone 7
Appium : 1.6.5
Here is a reproducible example in ReactNative of a view not inspectable :
<ScrollView
    style={styles.scrollContainer}
    ref={ref => this.scrollView = ref}
    scrollEnabled={false}
    keyboardShouldPersistTaps={true}
  >
    <TouchableWithoutFeedback style={{flex: 1}} onPress={dismissKeyboard}>
      <View>
        {this._renderHeader()}

        <View style={styles.inputs}>
        <View accessibiltyLabel="emailLabel">
          <InputTextRow
            icon="user"
            returnTypeKey="next"
            placeholder="email"
            keyboardType="email-address"
            value={this.state.email}
            onChange={email=> this.setState({email})}
            onSubmitEditing={() => this.refs.passwordRow.refs.input.focus()}
          />
      </View>
      <View accessibiltyLabel="passwordLabel">
          <InputTextRow
            icon="key"
            ref='passwordRow'
            type="password"
            returnTypeKey="go"
            placeholder="password"
            value={this.state.password}
            onChange={password => this.setState({password})}
            onSubmitEditing={ this._handleLoginPress }
          />
        </View>

        <Button onPress={this._handleLoginPress} isActing={this.state.isActing}>LOG IN</Button>

      </View>
    </TouchableWithoutFeedback>
  </ScrollView>

Does anyone can help me with that ? Any workaround or something foreseen to fix ?
Thx in advance.

Which RN version do you use? Did you manage to make it work?


Fix a link

Coverage remained the same at 80.374% when pulling d22ec122c89ab12d5eab569dfe74a73661df7b8e on shmokmt:fix-readme into 010f1406f93d97c2fab06308786e4548c17fd588 on guard:master.


undefined: acme.TLSSNI01ChallengeCertDomain

We are using your package in an open source project for a simple Go CMS API.  To give you some context this is repo using it.
https://github.com/chrisbenson/epic
When I run "go install" or "go build" all of the packages are included but when we get to letsencrypt I get this:
 $ go build
rsc.io/letsencrypt
../../../rsc.io/letsencrypt/lets.go:703: undefined: acme.TLSSNI01ChallengeCertDomain
../../../rsc.io/letsencrypt/lets.go:716: undefined: acme.TLSSNI01ChallengeCertDomain
I am pretty sure this is something we are doing wrong, but I have easily spent half a day on this issue with very little progress.
I also setup a new hello world app and only added.
import "rsc.io/letsencrypt"
and got the same result.
Thanks

So I found out being on Go version 1.5 was the problem.  Updated to 1.6.2 and this issue went away.
More explanation is here: https://github.com/xenolf/lego/issues/225


[dependency-selectors] fix Arborist example

Arborist.loadActual is an async function. The docs show it as a callback pattern. Also, await's were being used without being inside an async function. This change fixes those examples.
References
Mirrored in https://github.com/npm/cli/pull/5328

I'm going to close this PR. When https://github.com/npm/cli/pull/5328 lands this repo will automatically get updated


Vercel adapter not working with node-rs/bcrypt

Currently I have an issue using the latest version of vercel adapter in my sveltekit app.
The message appears on prod build:
Warning: The following modules failed to locate dependencies that may (or may not) be required for your app to work: ...
I tested the node adapter and it seems to work fine with that.
Is there a way to fix it for vercel apps? I think vercel does not have all the node dependencies on their edge runtime: vercel blog
They suggest to use a different library such as bcrypt.js

Are you building serverless functions or edge
Did you actually test the app in prod? It's possible it's just a warning

I'm building serverless function
I tested it now and it seem like it's just a warning. I had another error causing issues with authentication. It works fine on Vercel.


Implement np.ascontiguousarray for Numba scalars

The conversion for np.ascontiguousarray doesn't appear to handle scalar inputs:
import numpy as np
import numba as nb

@nb.njit
def test_fn(x):
    return np.ascontiguousarray(x)

test_fn(1)
# ...
# TypingError: Failed in nopython mode pipeline (step: nopython frontend)
# No implementation of function Function(<function ascontiguousarray at 0x7fdd294aab00>) found for signature:
#
#  >>> ascontiguousarray(int64)

np.ascontiguousarray(1)
# array([1])

Hi @gmarkall ,
I'm new here and want to take this one as my first issue?

Hi,
I have been checking the documentation and the code, but I'm still not able to debug, can you please provide me a guide on this?

@stuartarchibald  I have tried with this: https://llvmlite.readthedocs.io/en/v0.25.0/admin-guide/install.html but I'm still not able to update llvmlite.  Do you know if I'm missing something else?
Installed c:\users\laptop1\anaconda3\lib\site-packages\numba-0.55.0.dev0+502.g453765375.dirty-py3.7-win-amd64.egg
Processing dependencies for numba==0.55.0.dev0+502.g453765375.dirty
Searching for llvmlite<0.39,>=0.38.0dev0
Reading https://pypi.org/simple/llvmlite/
No local packages or working download links found for llvmlite<0.39,>=0.38.0dev0
error: Could not find suitable distribution for Requirement.parse('llvmlite<0.39,>=0.38.0dev0')

@JohamyB the issue is that you need a "development" version of llvmlite. conda packages are the way to obtain these: https://llvmlite.readthedocs.io/en/stable/admin-guide/install.html#pre-built-binaries and as noted in the docs:

Development releases of binary wheels are not made available.

Alternatively you can build them yourself but they are quite challenging: https://llvmlite.readthedocs.io/en/stable/admin-guide/install.html#building-manually

@JohamyB Are you still working on this? I would like to work on it, if you are not.

Hi @DhruvPatel01 ,
Sure, you can work on this.

Hello ! Shouldn't this issue be closed since #7700 was merged?


New Version 1.0.16

@Yaffle Can you provide a current released version(1.0.16) of this Project.
We need the change that was done in Content-Type Regex.
Best regards from Germany

@KaiHawai , done, please check
Best regards from Netherlands


Create COMMITTERS.md

Signed-off-by: John Mertic<EMAIL_ADDRESS>

[Question] After reading the list of names, I think that we should update the permissions before merging anything. What do you think?

Is your thought to reduce admins to those who have committed in the last 2 or so years?

That's a topic for a TSC meeting. But the idea would be to have some kind of exit process after X years without any activities (i.e. any kind of activities from commits to TSC participation).
The goal is not to 'downgrade' someone but to keep/increase his interest in OCIO or to promote some else.

Sounds good @hodoulp . Let's discuss Monday.


Clarify SPI timing behaviour (currently completely broken!)

TLDR
Currently, it is unclear when exactly the SPI transfer functions return. Some drivers assume that the functions return after the clock line has returned to idle state. This is not how some (most?) HALs implement SPI. The documentation should clarify the expected behaviour.
The Problem
I am currently building an application with https://github.com/astro/embedded-nrf24l01 on a system with an STM32F429 clocked at 168 MHz. I clocked the SPI bus at 500 KHz -- much slower than the system clock, which to a certain degree caused the following problems -- and subsequently saw very weird behaviour. embedded-nrf24l01 would pull the CS pin high and then low again before the SCK signal reached idle, so the device only ever registered one single long transfer instead of multiple small transfers as required to send individual commands. All but the first command was therefore ignored or incorrectly processed by the device.
The corresponding code in embedded-nrf24l01 is as follows:
    self.csn.set_low().unwrap();
    let transfer_result = self.spi.transfer(buf).map(|_| {});
    self.csn.set_high().unwrap();

Changing the code as follows solves all problems, because then all CS changes occur while the SPI bus is idle:
    cortex_m::asm::delay(200);
    self.csn.set_low().unwrap();
    cortex_m::asm::delay(200);
    let transfer_result = self.spi.transfer(buf).map(|_| {});
    cortex_m::asm::delay(200); // <- this line is what fixes the problem, the other delays are just to make the signal look more like in the datasheet
    self.csn.set_high().unwrap();

The Solution(s)

The documentation could state that the SPI functions return as soon as the last bit was read from the bus. Device drivers would then have to add delays where necessary, similar to the code above. I do not know how many devices would require this type of delay -- if many devices need it, this solution is a huge footgun and substantially increases complexity. I hardcoded the delay cycles in the example above, but that's only possible because I know the clock speed of the device.
The documentation could state that the SPI functions return as soon as the SCK signal is idle again. Probably, all HALs would have to be modified.

Other Problems
If I understand it correctly, this bug is not completely identical to https://github.com/stm32-rs/stm32f0xx-hal/issues/130, although that ticket shows a similar problem with SPI documentation: The documentation should (or should not?) state that transfer() finishes after the last bit has been transferred, not after the bits have been shoved into a FIFO.

A third possible solution would be to add a function "poll_idle()" which waits until the bus is idle again (potentially in a separate trait?) and which could be used by drivers requiring specific timings.
I just have the gut feeling that there might be a lot of drivers which are broken, where nobody noticed because people are using slower microcontrollers and higher SPI speeds.

A third possible solution would be to add a function "poll_idle()" which waits until the bus is idle again (potentially in a separate trait?) and which could be used by drivers requiring specific timings.
I just have the gut feeling that there might be a lot of drivers which are broken, where nobody noticed because people are using slower microcontrollers and higher SPI speeds.

hmm, good work catching this, and thanks for opening an issue! timing bugs can be a real... pain.

The documentation could state that the SPI functions return as soon as the SCK signal is idle again. Probably, all HALs would have to be modified.

my expectation would be that transfer and other blocking SPI functions should not return until the particular transaction is complete, given the need to manually manage CS i don't think there are really other viable approaches (for the blocking traits). unless i'm overlooking something (@rust-embedded/hal ?) we could stand to improve the documentation to state that the transaction must be complete prior to returning.
looking at the STM32F4 reference manual (P 893, Section 28.3.7) i can see exactly how this situation would happen wrt. TXE vs. BUSY flags, probably we need to be checking TXE when transmitting then BUSY once the TX buffer is empty.

ST RM0080 28.3.7 SPI Status flags

A third possible solution would be to add a function "poll_idle()" which waits until the bus is idle again (potentially in a separate trait?) and which could be used by drivers requiring specific timings.

the stm32f4xx-hal seems to use our Default impl for blocking methods over spi::FullDuplex which doesn't have the ability to signal done-ness, so it looks to me like we may also need to add an .idle() or whatever method to this trait to pass this through.
as you say none of these problems are likely show up with fast SPI or on platforms with syscalls to manage transactions so, nice catch!

hmm, good work catching this, and thanks for opening an issue! timing bugs can be a real... pain.

The documentation could state that the SPI functions return as soon as the SCK signal is idle again. Probably, all HALs would have to be modified.

my expectation would be that transfer and other blocking SPI functions should not return until the particular transaction is complete, given the need to manually manage CS i don't think there are really other viable approaches (for the blocking traits). unless i'm overlooking something (@rust-embedded/hal ?) we could stand to improve the documentation to state that the transaction must be complete prior to returning.
looking at the STM32F4 reference manual (P 893, Section 28.3.7) i can see exactly how this situation would happen wrt. TXE vs. BUSY flags, probably we need to be checking TXE when transmitting then BUSY once the TX buffer is empty.

ST RM0080 28.3.7 SPI Status flags

A third possible solution would be to add a function "poll_idle()" which waits until the bus is idle again (potentially in a separate trait?) and which could be used by drivers requiring specific timings.

the stm32f4xx-hal seems to use our Default impl for blocking methods over spi::FullDuplex which doesn't have the ability to signal done-ness, so it looks to me like we may also need to add an .idle() or whatever method to this trait to pass this through.
as you say none of these problems are likely show up with fast SPI or on platforms with syscalls to manage transactions so, nice catch!

cc. @therealprof since it looks like you're already across this in https://github.com/stm32-rs/stm32f0xx-hal/issues/130

cc. @therealprof since it looks like you're already across this in https://github.com/stm32-rs/stm32f0xx-hal/issues/130

The result of a discussion in @stm32-rs:matrix.org was that an abstraction which manages the CS pin as well solves all these problems - implementations would either use software-managed CS and add delays as required (needs to be implemented in the HAL) or would use hardware-managed CS where the hardware "just works". I did not have a close look at the corresponding pull requests for embedded-hal yet.
Performance-wise it may make sense to support transfers where the HAL does not wait until the bus is idle, as multiple transfers to the same device without changes to CS could be chained with higher performance.
Note that on STM32F4, according to the timing diagrams in the manual (and my own tests) the BSY bit does unfortunately not indicate that the bus is idle - it indicates that the last bit was transmitted (i.e., it is often set half a cycle too early). The HAL therefore would need to add a manual delay.

The result of a discussion in @stm32-rs:matrix.org was that an abstraction which manages the CS pin as well solves all these problems - implementations would either use software-managed CS and add delays as required (needs to be implemented in the HAL) or would use hardware-managed CS where the hardware "just works". I did not have a close look at the corresponding pull requests for embedded-hal yet.
Performance-wise it may make sense to support transfers where the HAL does not wait until the bus is idle, as multiple transfers to the same device without changes to CS could be chained with higher performance.
Note that on STM32F4, according to the timing diagrams in the manual (and my own tests) the BSY bit does unfortunately not indicate that the bus is idle - it indicates that the last bit was transmitted (i.e., it is often set half a cycle too early). The HAL therefore would need to add a manual delay.

on one hand i agree that managing CS can solve this, on the other, how do we avoid this situation occuring for other hal users?

... an abstraction which manages the CS pin as well solves all these problems - implementations would either use software-managed CS and add delays as required (needs to be implemented in the HAL) or would use hardware-managed CS where the hardware "just works"

can i interest you in a ManagedCS trait perhaps?

Performance-wise it may make sense to support transfers where the HAL does not wait until the bus is idle, as multiple transfers to the same device without changes to CS could be chained with higher performance.

we have the Transactional API for chaining multiple transfers (ideally within a single CS assertion), my feeling is that the least surprising approach is for the spi::blocking::* calls to always leave the bus in an inactive state?

Note that on STM32F4, according to the timing diagrams in the manual (and my own tests) the BSY bit does unfortunately not indicate that the bus is idle

how frustrating!

on one hand i agree that managing CS can solve this, on the other, how do we avoid this situation occuring for other hal users?

... an abstraction which manages the CS pin as well solves all these problems - implementations would either use software-managed CS and add delays as required (needs to be implemented in the HAL) or would use hardware-managed CS where the hardware "just works"

can i interest you in a ManagedCS trait perhaps?

Performance-wise it may make sense to support transfers where the HAL does not wait until the bus is idle, as multiple transfers to the same device without changes to CS could be chained with higher performance.

we have the Transactional API for chaining multiple transfers (ideally within a single CS assertion), my feeling is that the least surprising approach is for the spi::blocking::* calls to always leave the bus in an inactive state?

Note that on STM32F4, according to the timing diagrams in the manual (and my own tests) the BSY bit does unfortunately not indicate that the bus is idle

how frustrating!

a friend pointed out that the correct process for determining transaction completion is documented in the procedure for disabling the SPI, using FTLVL and FRLVL, which might be useful for stm32-rs side of this (thanks @TravisScott!).

Procedure for disabling the SPI - STM32L451 RM p. 1315

a friend pointed out that the correct process for determining transaction completion is documented in the procedure for disabling the SPI, using FTLVL and FRLVL, which might be useful for stm32-rs side of this (thanks @TravisScott!).

Procedure for disabling the SPI - STM32L451 RM p. 1315


feat: docker image builds

There are vulnerabilities reported by npm when running install. Not sure if they are indeed vulnerabilities but it would be good to update the dependencies.
% npm i

added 1783 packages, and audited 1784 packages in 2m

28 vulnerabilities (19 low, 8 moderate, 1 high)

To address issues that do not require attention, run:
  npm audit fix

To address all issues (including breaking changes), run:
  npm audit fix --force

Run `npm audit` for details.

I suggest to use the ShellCheck tool. It is like a linter for shell script and it also has a VS Code extension.
The most common suggestion it provides is to use $(...) instead of backticks: https://github.com/koalaman/shellcheck/wiki/SC2006
It also helps finding unquoted variables and other common issues.

After following the setup with the default config without errors, I get an error when trying to start the environment and there are no peers connected to my node:
% ./scripts/network.sh
% ./scripts/blockchain.sh
<output omitted>
% npm run migrate:chequebook
<output omitted>
% npm run supply
<output omitted>
% ./scripts/bee-docker-build.sh
<output omitted>
% ./scripts/blockchain-docker-build.sh
<output omitted>
% ./scripts/environment.sh start
Start Blockchain node...
docker: Error response from daemon: Conflict. The container name "/swarm-test-blockchain" is already in use by container "c582496d5379692d00659bb9c15092f61badb91897e3f908e0ba7236780c9a1a". You have to remove (or rename) that container to be able to reuse that name.
See 'docker run --help'.
Start Bee nodes...
start Bee Queen process
b3867acbc9e6afbc077b72035c3df473ebdebe1690ab4b6acfb07c950bfb23a7
start Bee worker 1 process
a3ff5768c531ee7ac407c63fe5eb08c980e05527dc4441637aae50192ed921ee
start Bee worker 2 process
28333fb6aebd68bf7ab5cfc0b97681cff5cdc16fdc20b3cd92e669715703b28b
start Bee worker 3 process
a97afbea9f23d4056fddab8c576496cff54d889fab51b5fb16786b11c215a9a0
start Bee worker 4 process
8246de6939f9276122b85a2f60144d8b3edb69bc5511bfcf028536de81d4c288
  (     /   /  )%%%%%%%(  \   \     )
  (___/___/__/           \__\___\___)
     (     /  /(%%%%%%%)\  \     )
      (__/___/ (%%%%%%%) \___\__)
              /(       )\
            /   (%%%%%)   \
                 (%%%)
                   !
time="2021-04-28T10:31:38Z" level=info msg="version: 0.5.3-acbd0e2"
time="2021-04-28T10:31:38Z" level=warning msg="clef is not enabled; portability and security of your keys is sub optimal"
time="2021-04-28T10:31:38Z" level=info msg="using existing swarm network address: 18d0987d8d012cd3ca589d2df13fa28eeb8961f543faeb5a991df8b6c4c25333"
time="2021-04-28T10:31:38Z" level=info msg="swarm public key 03d5f6051105af2bc1dfb657031fc9d10df9be44ed24608e730a9a0cd07c97e906"
time="2021-04-28T10:31:39Z" level=debug msg="using existing libp2p key"
time="2021-04-28T10:31:39Z" level=debug msg="using existing pss key"
time="2021-04-28T10:31:39Z" level=info msg="pss public key 02f20bfb14a31491f8a9aec2dc455be4353733040e921ececcf612aca735b0bc7c"
time="2021-04-28T10:31:39Z" level=info msg="using ethereum address 26234a2ad3ba8b398a762f279b792cfacd536a3f"
time="2021-04-28T10:31:39Z" level=info msg="debug api address: [::]:1635"
time="2021-04-28T10:31:39Z" level=info msg="using custom factory address: 5b1869d9a4c187f2eaa108f3062412ecf0526b24"
time="2021-04-28T10:31:39Z" level=info msg="no chequebook found, deploying new one."
 It is like a linter for shell script and it also has a VS Code extension.
The most common suggestion it provides is to use $(...) instead of backticks: https://github.com/koalaman/shellcheck/wiki/SC2006
It also helps finding unquoted variables and other common issues.

Unfortunately all of them comes from truffle they have a fresh issue about it: https://github.com/trufflesuite/truffle/issues/3986

After following the setup with the default config without errors, I get an error when trying to start the environment and there are no peers connected to my node:

Try out with fresh local docker images regarding to the env, without any running/stopped container that you used in the previous runs. Issue could be after reading your logs:

docker: Error response from daemon: Conflict. The container name "/swarm-test-blockchain" is already in use by container "c582496d5379692d00659bb9c15092f61badb91897e3f908e0ba7236780c9a1a". You have to remove (or rename) that container to be able to reuse that name.
See 'docker run --help'.

Also don't forget to wipe out the localstore and statestore folders from the scripts/bee-data-dirs folder when you make the docker images. for these, you can use the bee-cleanup.sh script.

Try out with fresh local docker images regarding to the env, without any running/stopped container that you used in the previous runs. Issue could be after reading your logs:

I tried again after running the cleanup script and pruned the docker containers. There are no errors now, but there are still no connected peers. Any idea how can I debug to see what's wrong?

ShellCheck reports a lot of unquoted variables. See the explanation here:
https://github.com/koalaman/shellcheck/wiki/SC2086
I think it's a good idea to enforce this.

Another thing to consider to use -e flag to bash so that it terminates on errors. It can be added to the hashbang command at the top of the files:
#!/bin/bash -e

The rationale is that errors currently are ignored and the scripts continue execution which can lead to unexpected situations.