News feed filtered by role

Extend the target_audience parameter of the news.publish call with an optional role_ids field.
In send_realtime_updates, make sure that people which are not connected to the role don't receive a push notification / newsserver update / newNewsItem backlog call.
In com.mobicage.api.news.getNews, skip the news items with roles the user is not assigned to.

If you had to skip all news items, then don't return an empty result. Get the next batch of news items
Eg. get_all_news fetches 100 items. They all have a role you're not assigned to. Then execute get_all_news again with the new cursor (unless get_all_news didn't return any result)

In order to filter the news sent to app users, i think we need to send the users who shouldn't receive an update to the news server per a news item.
Also, matching the roles should affect the sort priority? (for match_target_audience).

Providing the app users is not really scalable.
I would let the news server do an http request to the server to request the users that are in that role (max 1000 results with cursor)

This will not affect sort_priority because the item will not be shown

I had a talk with Geert
We are not going to send these news items to the news bot anymore

@bart-at-mobicage How we will implement this in oca-backend?

it's not related to oca-backend. It's for a partner who's programming on top of Rogerthat. They want to show different news items depending on the function you have in the company.


Update README.md

Related issue

What changes does this PR do?
Screenshots (If any)
Questions

closing this on in favor of #1063


Update highcharts to 4.2.0

cc @JohnPhoto

Yeah got some input here too if this one is not solved before I get the time to help out. They seems to have redone the loading/init api.

It seems to work in demos and pass all the tests, a quick sanity code review would help if you have a second.

Fixed, thanks!


ci: Remove Cloud Build release scripts.

We are switching from releases using Cloud Build to releases using internal tools for better compliance with internal standards. This change removes the scripts that were used exclusively for the Cloud Build release process.

Yes.


Web UI: Attach empty removable drive

It would be convenient to be able to attach an empty removable (CD/MO/RM) drive directly in the Web UI. This would avoid having to attach an image and then eject it to get to the state of having a removable drive ready for the system on boot.
Even better, using the bespoke drive properties to configure those setups without having to go through the process of generating individual properties files.

Implemented in https://github.com/akuker/RASCSI/pull/877


Unrecognized function or variable 'plotGMM3D'

Awesome work! :) However it seems that the plotGMM3D function is missing when running the learning example. Where can I find it?

Thanks! :)
Thank you for letting me know! I just added it in the /fcts folder.


Internal Server Error during knife upload

I'm using Chef server 12.2.0 with a PostgreSQL backend. knife read commands like knife node list work, but knife upload mycookbook gives me the following output:
➜  knife upload mycookbook
ERROR: Server returned error 500 for https://public-chef-elb-fqdn/organizations/my-org/sandboxes/80415405f76ea337b4d62d9d64495355, retrying 1/5 in 3s
ERROR: Server returned error 500 for https://public-chef-elb-fqdn/organizations/my-org/sandboxes/80415405f76ea337b4d62d9d64495355, retrying 2/5 in 8s
ERROR: Server returned error 500 for https://public-chef-elb-fqdn/organizations/my-org/sandboxes/80415405f76ea337b4d62d9d64495355, retrying 3/5 in 13s
ERROR: Server returned error 500 for https://public-chef-elb-fqdn/organizations/my-org/sandboxes/80415405f76ea337b4d62d9d64495355, retrying 4/5 in 19s
ERROR: Server returned error 500 for https://public-chef-elb-fqdn/organizations/my-org/sandboxes/80415405f76ea337b4d62d9d64495355, retrying 5/5 in 44s

I noticed this in erchef.log.0:
2015-12-16 23:59:32.366 [error] Checking presence of checksum: <<"6adbb95fd8ddfb6fdfda5e43c74a2440">> for org <<"ca80dfb4bad8415ec0f780415405f76e">> from bucket "bookshelf" has taken longer than 5000 ms
2015-12-16 23:59:32.367 [error] {<<"method=PUT; path=/organizations/my-org/sandboxes/80415405f76e590ee8238490cedeefce; status=500; ">>,
{error,{throw,{checksum_check_error,15},[{chef_wm_named_sandbox,validate_checksums_uploaded,2,
[{file,"/var/cache/omnibus/src/oc_erchef/_build/default/lib/oc_chef_wm/src/chef_wm_named_sandbox.erl"},{line,144}]},{chef_wm_named_sandbox,from_json,2,
[{file,"/var/cache/omnibus/src/oc_erchef/_build/default/lib/oc_chef_wm/src/chef_wm_named_sandbox.erl"},{line,97}]},{webmachine_resource,resource_call,3,
[{file,"/var/cache/omnibus/src/oc_erchef/_build/default/lib/webmachine/src/webmachine_resource.erl"},{line,186}]},{webmachine_resource,do,3,
[{file,"/var/cache/omnibus/src/oc_erchef/_build/default/lib/webmachine/src/webmachine_resource.erl"},{line,142}]},{webmachine_decision_core,resource_call,1,
[{file,"/var/cache/omnibus/src/oc_erchef/_build/default/lib/webmachine/src/webmachine_decision_core.erl"},{line,48}]},{webmachine_decision_core,accept_helper,1,
[{file,"/var/cache/omnibus/src/oc_erchef/_build/default/lib/webmachine/src/webmachine_decision_core.erl"},{line,616}]},{webmachine_decision_core,decision,1,
[{file,"/var/cache/omnibus/src/oc_erchef/_build/default/lib/webmachine/src/webmachine_decision_core.erl"},{line,521}]},{webmachine_decision_core,handle_request,2,
[{file,"/var/cache/omnibus/src/oc_erchef/_build/default/lib/webmachine/src/webmachine_decision_core.erl"},{line,33}]}]}}}

I thought this might be related to https://github.com/chef/chef/issues/2409 but I was not able to resolve my problem in the same way they did.
Here's my /etc/opscode/chef-server.rb:
server_name = "[public-chef-elb-fqdn]"
api_fqdn server_name

bookshelf['url'] = server_name
bookshelf['vip'] = server_name

nginx['url'] = "https://#{server_name}"
nginx['server_name'] = server_name
nginx['ssl_certificate'] = "/var/opt/opscode/nginx/ca/my-cert.crt"
nginx['ssl_certificate_key'] = "/var/opt/opscode/nginx/ca/my-cert.key"

And the output of sudo grep s3 /var/opt/opscode/opscode-erchef/sys.config | grep -v key_id:
user@chef-server:~$ sudo grep s3 /var/opt/opscode/opscode-erchef/sys.config | grep -v key_id
                  {s3_url, "https://[https://public-chef-elb-fqdn]"},
                  {s3_external_url, host_header},
                  {s3_platform_bucket_name, "bookshelf"},
                  {s3_url_ttl, 28800},
                  {s3_url_expiry_window_size, off},
                  {s3_parallel_ops_timeout, 5000},
                  {s3_parallel_ops_fanout, 20},

Hi,
For the s3_url can you confirm that in the rendered configuration file /var/opt/opscode/opscode-erchef/sys.config it is a valid https url?  Your output makes it look like it might not be but I'm assuming that is a result of trying to scrub the elb fqdn.  From the chef-server, is the elb-fqdn resolvable and can the chef-server connect to it?

To clarify: the public-chef-elb-fqdn portion of the s3_url is a FQDN (e.g. custom.domain.com) but it's explicitly wrapped in the brackets and double https:// prompts shown. So in a less scrubbed manner, the output shows:
user@chef-server:~$ sudo grep s3 /var/opt/opscode/opscode-erchef/sys.config | grep -v key_id
                  {s3_url, "https://[https://custom.domain.com]"},
                  {s3_external_url, host_header},
                  {s3_platform_bucket_name, "bookshelf"},
                  {s3_url_ttl, 28800},
                  {s3_url_expiry_window_size, off},
                  {s3_parallel_ops_timeout, 5000},
                  {s3_parallel_ops_fanout, 20},

And that ELB-FQDN is resolvable but not reachable.
user@chef-server:~$ ping custom.domain.com
PING custom.domain.com (54.183.x.x) 56(84) bytes of data.
^C
--- custom.domain.com ping statistics ---
156 packets transmitted, 0 received, 100% packet loss, time 156207ms

I resolved this problem. We updated our bookshelf URLs to point to the instance's internal DNS name (rather than the public ELB):
user@chef-server:~$ cat /etc/opscode/chef-server.rb
server_name = "[public-chef-elb-fqdn]"
api_fqdn server_name

bookshelf['url'] = "[internal-chef-server-dns]"
bookshelf['vip'] = "[internal-chef-server-dns]"

nginx['url'] = "https://#{server_name}"
nginx['server_name'] = server_name
nginx['ssl_certificate'] = "/var/opt/opscode/nginx/ca/my-cert.crt"
nginx['ssl_certificate_key'] = "/var/opt/opscode/nginx/ca/my-cert.key"

We then ran chef-server-ctl reconfigure and re-tried the upload.
➜  knife upload mycookbook
Created mycookbook


support clustered v3 api

After this pull request, request through v3 api can get committed and applied across the cluster.
We still need to

fix the v3 snapshot, it should be able to replicate through the cluster
make readonly request remains to be applied locally

LGTM

@yichengq oneof does not actually work and causes a lot of troubles.


Add a transitive test property

This is a minimal reproducer that's essentially A ~> B ~> C. The that_subscribes_to matcher shows that this is equal to A ~> C but in practice Puppet doesn't work that way. The service is not restarted if the file is modified.
I don't know what is the expected behavior here, but it does mean that today it's not possible to test for real world behavior.
I've submitted this as a PR since it's the easiest way to submit code and show CI results for it.

@sanfrancrisko was there ever any progress on this discussion? We've just hit this problem again and while re-reading https://puppet.com/docs/puppet/7/lang_relationships.html#lang_rel_chaining_arrows I can't really tell if A ~> B ~> C should be equivalent to A ~> B, A ~> C, B ~> C or A ~> B, B ~> C?
More explicitly, the chaining example says "Resource declarations can be chained. That means you can use chaining arrows to make Puppet apply a section of code in the order that it is written. This example applies configuration to the package, the file, and the service, in that order, with each related resource notifying the next of any changes" (emph. mine) where one could interpret "any changes" as "any changes to itself" and not "any changes in the whole chain".

Please continue the discussion in https://github.com/puppetlabs/rspec-puppet/pull/29


Passive Mobs Fabric 1.20-1.3.1 reports not compatible with MC 1.20.1

Needs Dependency listing (fabric.mod.json) updated to accomodate MC Version 1.20.1

Sigh

?? Is advertised as compatible on Modrinth...

Yeah I know
Is all good, I'll fix it lol


Unable to create Assembly or Monolithic Implementation from Component

Issue and tracking information
Developer's time Estimated effort to fix (hours):
Developer's Actual time spent on fix (hours)
Issue reporter to provide a detailed description of the issue in the space below
Attempting to create an Assembly Implementation, Monolithic Implementation, or Home from a component in the model does nothing. So, when I go into a ModelFile, right-click the desired component, go to Add CX and select either Assembly Implementation, Monolithic Implementation, or Home, nothing happens. I would expect it to create the desired implementation. You are able to create an Interface Port, Attribute, Property, and Package without issue.

Attempting to create an Assembly Implementation, Monolithic Implementation, or Home from a component in the model now works as expected.


Create kernel stack with correct size and set up a guard page

The last page of stack memory was not used before (see #294 ) because we initialized the stack pointer with the start address of the inclusive end page of the stack. This PR fixes this by initializing the stack pointer with the exact configured address, aligned to a 16-byte boundary. To verify that this works, I added a new min_stack test that tries booting with a kernel stack size of just 3000 bytes.
We also claimed in the docs that we set up a guard page for the kernel stack, but never actually did this. This PR fixes that issue too by allocating an extra page when creating the virtual kernel stack mapping. We then leave the first page of that allocation unmapped so that a page fault will occur when the kernel overflows its stack.
To ensure that user-configured addresses have the correct alignment, I also added an alignment check to the mapping_addr function. There is also a new convenience function for allocating page-aligned virtual regions.
Fixes #294

cc @inhibitor1217 @tsoutsman


Create firebase.py

This file contains major code of firebase integration

@yaviral17 Initially in the project we are using .env files to load all the secret keys, so it is good that you can use that defining format here

@Mr-Sunglasses Yup I totally agree with your vision of using .env thank you for the guidance 😊

@Mr-Sunglasses according to your requirement I have updated the code to fetch the API's information from the .env file. Please review it and I am always here to hear from you 😊


parsing error in specific curl

Hello, following doesn't work...
curl -X GET "http://<IP_ADDRESS>:8001/api/groups/" -H  "accept: application/json" -H  "authorization: Basic SoMeCoOkIe" -H  "X-CSRFToken: SoMeToKeNvAlUe"

This was a head scratcher, but I now see the issue. It's the two spaces between -H and the values. With the extra spaces removed, it converts successfully. I'll update the parser to account for this.


add title in piafagent display

It's important for us to add the title of the article into piafagent : very important for CRPA because it's q FAQ style knowledge base

I pushed in production this new version for CNIL and CRPA

(on the pipelines branch of course)


Add bitmovin

Adding capability to submit jobs and transcode using the Bitmovin Cloud Encoding Service.

Codecov Report

Merging #181 into master will decrease coverage by -5.01%.
The diff coverage is 60.11%.

@@            Coverage Diff             @@
##           master     #181      +/-   ##
==========================================
- Coverage    84.9%   79.89%   -5.01%
==========================================
  Files          28       29       +1
  Lines        1994     2497     +503
==========================================
+ Hits         1693     1995     +302
- Misses        195      326     +131
- Partials      106      176      +70

Impacted Files
Coverage Δ

service/transcode.go
74.13% <100%> (+0.45%)
:white_check_mark:

config/config.go
100% <100%> (ø)
:white_check_mark:

provider/bitmovin/bitmovin.go
59.8% <59.8%> (ø)

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 da1a24e...6deee07. Read the comment docs.

Thank you very much for working on that!


Invalid emit for class+namespace using module=commonJs in TS 3.9

TypeScript Version: 3.9.0-dev.20200228

Search Terms:

export
namespace

Code
With target = ES2017, module = commonJS
export class Color {
    static readonly x = new Color();
}

export namespace Color {
    export const a = 1
}

Expected behavior:
In TS 3.8, this emits:
Object.defineProperty(exports, "__esModule", { value: true });
class Color {
}
exports.Color = Color;
Color.x = new Color();
(function (Color) {
    Color.a = 1;
})(Color = exports.Color || (exports.Color = {}));

Actual behavior:
In TS 3.9, this emits:
Object.defineProperty(exports, "__esModule", { value: true });
const Color = /** @class */ (() => {
    class Color {
    }
    Color.x = new Color();
    return Color;
})();
exports.Color = Color;
(function (Color) {
    Color.a = 1;
})(Color = exports.Color || (exports.Color = {}));
exports.Color = Color;

Which is not valid since it tries to reassign a constant value: Color = exports.Color

TS 3.8.2
TS 3.9

/cc @RyanCavanaugh This blocks using TS 3.9 for building VS Code

@rbuckton Possibly introduced by #36795

Ack, this is probably my fault - as a follow up to the community PR, I updated it to use const, thinking it was more desirable - I didn't realize we relied on the ability to reassign the class declaration later on (even if we're reassigning it to itself in most cases). Regressed by #36907.


Configure add_yum_repo_by_url plugin

This adds support for configuring the new add_yum_repo_by_url plugin in dock.

Configuration for plugin in prod_inner.json.
Keyword argument for OSBS.create_build, yum_repourls.
ProductionBuild fills in configuration (if present) from
keyword argument.
Test case for the above.
New CLI argument for build, --add-yum-repo URI.

will merge after #49


Fix support for GoogleV3 bounds parameter

GoogleV3 expects bounds in this format lat,lon|lat,lon.
From docs:
"The bounds parameter defines the latitude/longitude coordinates of the
southwest and northeast corners of this bounding box using a pipe (|)
character to separate the coordinates."
(https://developers.google.com/maps/documentation/geocoding/)

Merged in 6a6d70f0c7121b89d5ae2dfcf89fcc6f478c7740, thanks.

Released in 1.9.1.


Unable to spawn isolate on pub get with angular2

As of polymer 1.0.0-rc.16, when running pub get I receive the error
ERR : Unable to spawn isolate: Unhandled exception:
    | Could not import "package:crypto/crypto.dart" from "package:protobuf/protobuf.dart": Failure getting http://localhost:39400/packages/crypto/crypto.dart:
    |   404 Not Found

for the following pubspec
name: angular_polymer_test
environment:
  sdk: '1.15.0'
dependencies:
  polymer: '1.0.0-rc.16'
  angular2: '2.0.0-beta.15'

I'm not sure if the issue is here or angular2, but i note the problem seems to exist in all angular2 2.0.0 betas and only appears >= polymer rc 16.

Full pub output: https://gist.github.com/ilikerobots/752799e10e3cbcc1eac3aa7b78a17116

Quite a weird error message.
To work around limit the protobuf dependency to 0.5.1.
dependencies:
  protobuf: 0.5.1

I think this should be reported in the pub repository.
Looks like related to dart-lang/dart-protobuf#56

This issue was moved to dart-lang/pub#1410


Fooocus ENOENT: no such file or directory, stat 'C:\pinokio\api\fooocus.git{{input.event[0]}}'

Using cached groundingdino-py-0.4.0.tar.gz (82 kB)
Preparing metadata (setup.py) ... error
error: subprocess-exited-with-error
× python setup.py egg_info did not run successfully.
│ exit code: 1
╰─> [6 lines of output]
Traceback (most recent call last):
File "", line 2, in
File "", line 34, in
File "C:\pinokio\cache\TMPDIR\pip-install-_9gx930e\groundingdino-py_f8cabd7461d54d5b82b6ebaa2a9eebb5\setup.py", line 41, in
readme = readme_file.read()
UnicodeDecodeError: 'cp932' codec can't decode byte 0x97 in position 2879: illegal multibyte sequence
[end of output]
note: This error originates from a subprocess, and is likely not a problem with pip.
error: metadata-generation-failed
× Encountered error while generating package metadata.
╰─> See above for output.

Same problem here.  The last version had no problem.

somehow it solve.

pip install groundingdino-py-0.4.0.zip
pip uninstall groundingdino
pip install -r requirements_versions.txt
pip uninstall groundingdino-py
pip install groundingdino-py-0.4.0.zip

from the file ./groundingdino/util/inference.py import the Model. There is no file called inference.py"
when I check C:\pinokio\api\fooocus.git\app\env\Lib\site-packages
there is inference.py

and restart pinokio... somehow it works.. (can't explain why)

same issue here on MacOS

somehow it solve.

pip install groundingdino-py-0.4.0.zip
pip uninstall groundingdino
pip install -r requirements_versions.txt
pip uninstall groundingdino-py
pip install groundingdino-py-0.4.0.zip

from the file ./groundingdino/util/inference.py import the Model. There is no file called inference.py"
when I check C:\pinokio\api\fooocus.git\app\env\Lib\site-packages
there is inference.py

and restart pinokio... somehow it works.. (can't explain why)

It is too technical.  I do not understand about it.

pip install groundingdino-py-0.4.0.zip

so need to install python to my PC and do this?


Some faces that cannot be detected will be cloaked.

I found that some images that Fawkes cannot detect faces in it will be added cloaks.

At the beginning, I run the experiment with the cropped faces, the cloakes generation proceed normally. Later, I used some selfie photos but I found that the result of face detection and the cropped faces generated by the code are not exactly the face, i.e. the area of cropped is larger than the face, I do not know if it will influence the result of cloakes generation.

The cropping algorithm is taken from FaceNet github repo, and it is a ML based model, so it is not perfect. I also found cases where it can not detect faces.


what's the expected way to detect a timeout error

I noticed recently timeouts were recently added which is fantastic. However, when I took this feature for a spin I noticed something that was confusing. Error handling wasn't documented or consistent between https and http requests. The pull for  std lib rfc impl referenced ErrorKind.TimedOut and ErrorKind.WouldBlock in its tests for timeout failures. When I took hypers support for a spin
#![feature(duration)]
extern crate hyper;
use hyper::Client;
use std::io;
use std::time::Duration;
fn main() {
  let mut client = Client::new();
  client.set_read_timeout(Some(Duration::from_millis(2)));
  let mut res = client.get("https://google.com").send().unwrap();
  let _ = io::copy(&mut res, &mut io::stdout()).unwrap();
}

errors with
thread '<main>' panicked at 'unexpected error ErrorWantRead with ret -1', ~/.cargo/registry/src/github.com-0a35038f75765ae4/openssl-0.6.4/src/ssl/mod.rs:996

#![feature(duration)]
extern crate hyper;
use hyper::Client;
use std::io;
use std::time::Duration;
fn main() {
  let mut client = Client::new();
  client.set_read_timeout(Some(Duration::from_millis(2)));
  let mut res = client.get("http://google.com").send().unwrap();
  let _ = io::copy(&mut res, &mut io::stdout()).unwrap();
}

errors with
thread '<main>' panicked at 'called `Result::unwrap()` on an `Err` value: Io(Error { repr: Os { code: 35, message: "Resource temporarily unavailable" } })', ../src/libcore/result.rs:732

would it be possible for hyper to document a consistent error thrown on read/write timeouts?
Again, having support for timeouts is great, not having a clear path for handling them, not so much.

Interesting. I haven't looked to see how timeouts are implemented on TcpStreams. Seems something conflicts with the optimizations openssl is doing? @sfackler

It's a bug in SslStream's error handling. I will push a fix.

This should fix it: https://github.com/sfackler/rust-openssl/commit/69cbd145407288e3b22b7336fe6a679546b4b2fd
Can you run the test against that and see if it resolves the issue?

I'm not sure I can run that down stream. I hit this build error
native library `openssl` is being linked to by more than one package, and can only be linked to by one package

  openssl-sys v0.6.4 (https://github.com/sfackler/rust-openssl#69cbd145)
  openssl-sys v0.6.4

this may be related to that?

scratch that. I just needed to turn off hypers default-features flag to force my local dep to take priority
Now when I run the same code for an https url I get a different error
#![feature(duration)]

extern crate hyper;

use hyper::Client;
use std::io;

use std::time::Duration;

fn main() {
  println!("test");
  let mut client = Client::new();
  client.set_read_timeout(Some(Duration::from_millis(10)));
  let mut res = client.get("https://google.com").send().unwrap();
  let _ = io::copy(&mut res, &mut io::stdout()).unwrap();
}

thread '<main>' panicked at 'called `Result::unwrap()` on an `Err` value: Io(Error { repr: Custom(Custom { kind: InvalidInput, error: StringError("Invalid scheme for Http") }) })', ../src/libcore/result.rs:732

I suspect because I just opted out of hyper's default features in my build

@softprops yep, if you turn off the ssl feature, then the DefaultConnector is HttpConnector. I believe you can override the path of the openssl using .cargo/config.

I can't seem to the right combination of cargo config options make this happen. Can you provide an example?

According to http://doc.crates.io/config.html
paths = ["../openssl"] in a .cargo file next to your Cargo.toml.
You can put it anywhere, and adjust the path.
On Sat, Aug 8, 2015, 7:33 PM doug tangren<EMAIL_ADDRESS>wrote:

I can't seem to the right combination of cargo config options make this
happen. Can you provide an example?
—
Reply to this email directly or view it on GitHub
https://github.com/hyperium/hyper/issues/626#issuecomment-129095583.

okay. worked it out by cloning rust-openssl next to my project then creating a .cargo/config file with
paths = ["/abs/path/to/rust-openssl"]

now the errors are without https
thread '<main>' panicked at 'called `Result::unwrap()` on an `Err` value: Io(Error { repr: Os { code: 35, message: "Resource temporarily unavailable" } })', ../src/libcore/result.rs:732

and with https
thread '<main>' panicked at 'called `Result::unwrap()` on an `Err` value: Io(Error { repr: Custom(Custom { kind: TimedOut, error: StringError("socket read timed out") }) })', ../src/libcore/result.rs:732

:+1: @sfackler
@seanmonstar thoughts aligning the non ssl timeout request err  with a similar err kind? Ideally something like io::ErrorKind::TimedOut would make it easier to handle these errors consistently

For what it's worth
35 seems to be mapped to 2 errors in libc. In rusts io module these seem to map to a  ErrorKind::WouldBlock so I'm not sure if this mapping is actually a bug in rust itself. TimedOut errors are mapped here to the ETIMEDOUT const in libc. os code 60 ( shrugs ).
suggestions?

@softprops according to http://linux.die.net/man/7/socket a timed out read will report the error EAGAIN/EWOULDBLOCK (they're the same constant, as you've noticed).

I don't yet know what the best solution is. It may be worth discussion in internals about whether TcpStream should map WouldBlock to TimedOut iff the socket has a timeout set. Socket timeouts are still unstable, so these details may not have had enough testing.

I tried asking in the original RFC: https://github.com/rust-lang/rfcs/pull/1047#issuecomment-129299967

Cool thanks

I picked TimedOut basically arbitrarily. OpenSSL doesn't formally expose the underlying error so I had to just pick one. It might be the case that errno is preserved, in which case I can just return io::Error::last_os_error(), but that doesn't appear to be guaranteed anywhere in the docs.

@sfackler certainly not an expert in openssl's source, but my browsing found this: https://github.com/openssl/openssl/blob/master/ssl/ssl_lib.c#L2391
I couldn't find a check for the os error, so it could be completely ignored? Either way, it'd be nice if the returned error was the same as that from a TcpStream. I supposed I can add a check in Request and Response to translate WouldBlock into TimedOut, since I know (for now) that the socket is in blocking mode.

Ok, try now.

@sfackler I tried my little test app with your latest commit and now get a consistent error for both https and http requests in hyper.
thread '<main>' panicked at 'called `Result::unwrap()` on an `Err` value: Io(Error { repr: Os { code: 35, message: "Resource temporarily unavailable" } })', ../src/libcore/result.rs:732

I would prefer a TimedOut error to an opaque Os error with code if possible

The Os error isn't visible in the API. io::Error has a kind() method which will return an io::ErrorKind variant that you can look at, though on Linux it'll be WouldBlock rather than TimedOut.

To make it consistent, I'd be fine with hyper matching WouldBlock and
returning TimedOut inside Request and Response (unless that'd somehow seem
weird to Linux users).
On Mon, Aug 10, 2015, 8:08 PM Steven Fackler<EMAIL_ADDRESS>wrote:

The Os error isn't visible in the API. io::Error has a kind() method
which will return an io::ErrorKind variant that you can look at, though
on Linux it'll be WouldBlock rather than TimedOut.
—
Reply to this email directly or view it on GitHub
https://github.com/hyperium/hyper/issues/626#issuecomment-129687643.

That would probably seem weird to linux users.

Is the something that could be stablized in the feature flagged socket timeouts in rusts std lib?

@softprops is what something that could be stabilized?

The error to expect when setting read write timeouts. I'm really excited to see this implemented but I'm finding little in the way of docs for how to handle timeout errors

@softprops after lots of reading man pages and stack overflow questions, it seems the standard is this:

On Unixy systems, read() with a timeout will return EAGAIN, which in Rust is ErrorKind::WouldBlock.
On Windows, read() with a timeout will return WSAETIMEDOUT, which in Rust is ErrorKind::TimedOut.

Pick what you need. It may be worth filing an issue on the rust repo to include that in the documentation of timeouts, but it might not.

Ok. I know its common in some rustdocs to have a panic or errors section to document how to handle errors. I'll see if I can't find someway to get these documented somewhere outside of gh issues comments and pull diffs :)


HttpPostRequestEncoder creates an invalid body

Expected behavior
The request is formed correctly
Actual behavior
The line of the body starting the mixed part has duplicate boundaries.

Steps to reproduce
Submit a request with 2 parts containing the same name in EncoderMode.RFC1738
Minimal yet complete reproducer code (or URL to code)
https://github.com/netty/netty/blob/4.1/codec-http/src/main/java/io/netty/handler/codec/http/multipart/HttpPostRequestEncoder.java#L647
Netty version
4.1.23
JVM version (e.g. java -version)
1.8.0_131
OS version (e.g. uname -a)
Darwin Jamess-MacBook-Pro.local 17.5.0 Darwin Kernel Version 17.5.0: Mon Mar  5 22:24:32 PST 2018; root:xnu-4570.51.1~1/RELEASE_X86_64 x86_64

In this test, if you move the attribute to be after the files, the problem can be reproduced
https://github.com/netty/netty/blob/4.1/codec-http/src/test/java/io/netty/handler/codec/http/multipart/HttpPostRequestEncoderTest.java#L144

@jameskleeh sorry I am currently super busy but you may want to provide a fix via PR if you can and I will be happy to review.

I think this issue can be closed because of https://github.com/netty/netty/pull/9270 @normanmaurer


ENH use Xw - y instead of y - Xw as dual point

This is the classic Fenchel-Rockafellar primal dual link. It will be easier to check the maths, notably in the enet case.

I think we better stick with the convention y-Xw.
It is adopted entirely in code, plus all [my] the established equations follow it.
So, there are no conflicts between what is implemented in the solver and the [new] equations.
P.S: refer to the maths snippets


Low throughput over RX L2CAP connection oriented channel

My team recently upgraded to Zephyr 3.4.0 and during testing noticed a significant degradation to RX throughput over an L2CAP connection oriented channel. Previous to the upgrade, the team was achieving an RX throughput of around 250kbps and after the upgrade were only measuring 30kbps.
After debugging the issue, we were able to determine that this change of behavior was introduced by the following commit:
https://github.com/zephyrproject-rtos/zephyr/commit/2809bace6540b8a25f1ab5c37e778f60333dcb9f
Reading through the commit comments, I understand the rationale for the change, but in our application I believe we have allocated enough buffers to be able issue more than 1 credit. However since this change hardcodes the number of RX credits to 1 and disabled the application hooks to configure the number of RX credits, there is no way to configure more RX credits in our application without completely rolling back this change.
Are there any plans to restore the ability for applications to configure the number of RX credits? It's a significant problem in our application to not be able to set the number of RX credits > 1.

Sounds to me like the initial credits might make sense to be a Kconfig option. @jori-nordic what do you think?

@jhedberg unfortunately, it's not that easy. I invite you and @dwyoung43 to read the commit message and testcase for a more in-depth answer. I'll give a TLDR:
The stack's "managed" L2CAP API is designed in a way where it cannot know in advance the size of the application's RX buffers. The only thing it knows before receiving an SDU is whether the app has a .alloc_buf() RX allocator.
The stack had some slightly broken mitigations, like sending "virtual" RX credits if the SDU was not finished and the credits were depleted.
This stems from the fact that the stack, again, tries to hide the reality of the Bluetooth spec. The application knows best the rate at which it can receive data, since it is the one that manages RX buffers. We should have just exposed a send_credits user API in the first place.
Which is what we (@alwa-nordic) did https://github.com/zephyrproject-rtos/zephyr/pull/58155
This is another API, that is more low-level: it doesn't do re-assembly, rather calls-back the application for each PDU received in the SDU. The application can then send credits back using bt_l2cap_chan_give_credits() at its leisure.
Writing this (long, sorry) reply, I now realize that there is maybe a way of "fixing" the managed l2cap API: Call the alloc_buf() in order to "lock" an application buffer and know its size.
If we do this at the initialization of a channel, from within bt_l2cap_chan_connect() for the client and right after .accept() for the server, we (the stack) will be able to deduce how many credits the application really has. We could then remove this 1-credit limitation.
What do you think @jhedberg @alwa-nordic ?

@dwyoung43, does seg_recv solve your problem?

Writing this (long, sorry) reply, I now realize that there is maybe a way of "fixing" the managed l2cap API: Call the alloc_buf() in order to "lock" an application buffer and know its size.

We know the size of the application buffers. It's the MTU set by the application. But this is not useful for sending more credits.
Consider the following example: The app has one buffer of 1000 size. MTU is 1000. MPS is 100. How many credits do we send? MTU/MPS = 10. Let's send 10 credits.

Good: This allows the peer to send a full SDU, split-across 10 PDUs.
Bad: Unfortunately this also gives the peer permission to send 10 SDUs of 100 bytes. But the app doesn't have the buffers for this (see premise).

In the case of 2., the application will then run out of buffers and the stack will disconnect the channel.

I assume seg_recv was a good solution. Fixing throughput over the old API is not possible without altering the API, in which users might as well switch to seg_recv. Closing this as resolved.


what are Original Dst Filter and Original Src Filter functions?the doc is too simple !

If you are reporting any crash or any potential security issue, do not
open an issue in this repo. Please report the issue via emailing
<EMAIL_ADDRESS>where the issue will be triaged appropriately.
Title: One line description
Description:

Describe the issue.

Original Dst Filter:
Use the Original destination address on downstream connections.
Original Src Filter:
Use the Original source address on upstream connections.
[optional Relevant Links:]

Any extra documentation required to understand the issue.

See Original Destination it queries for SO_ORIGINAL_DST which allows envoy to know the original destination of a connection that has been redirected by IPTABLES.
This is useful to program envoy to run as sidecar.
Original Source is similar but it gives you the original source of the connection


Table head not supported, special display

Table head not supported, special display

What exactly is your problem here?

There is no such problem anymore, just modify the style to achieve complex headers. Just change the second line to the same background color as the header

This issue can be closed now··


Ability to search by value ?

Could I get a certain key providing value (and value type if needed)?

No. This is not possible, you can only get all keys, then iterate through and inspect value by value.


Organisation for project is now apprenda-kismatic, so need to fix import paths

As it doesn't compile cleanly currently

Thanks @palfrey


Hide dialog labels if explicitly empty

This PR closes issue #991
hiding cancel label as requested on https://github.com/dmtrKovalenko/material-ui-pickers/pull/992

👍

why circleci didnt run?


Ignore clippy new_without_default

Not needed for TcpKeepalive.

You sure you don't want to just add a Default impl that calls new?

If someone needs it we can consider it, but for now it's just more API surface we would have to maintain.


[Suggestion] Resource List: remove "More Actions" when bulkActions is empty

It would be logical in my opinion to remove the More Actions dropdown if the bulkActions array is empty

<template>
  <PCard>
    <PResourceList
      selectable
      :selected="[]"
      hasMore
      :loading="false"
      :resourceName='{"singular":"Book","plural":"Books"}'
      showHeader
      hideFilters
      :sortOptions='[{"label":"Newest update","value":"DATE_MODIFIED_DESC","disabled":false,"hidden":true},{"label":"Oldest update","value":"DATE_MODIFIED_ASC","disabled":false}]'
      :promotedBulkActions='[{"content":"Edit customers"}]'
      :bulkActions='[]'
      :totalCount="12"
      :appliedFilters='[{"value":"Tagged with Vue","key":"tag_Vue"}]'
    >

Thank you for a great package!

@mwhitaker
Thank you for pointing out the issue here. We'll resolve this issue in the next release.

The issue is solved.


pycrypto has stopped development, we should switch to pycryptodome

According to https://github.com/dlitz/pycrypto/issues/173, pycrypto has stopped development, and has been forked into pycryptodome. It supposedly still supports Python 2.4+ and seems to be relatively actively developed.

Agree that we should switch to pycryptodome.

20 jan 2016 kl. 04:50 skrev Erick Tryzelaar<EMAIL_ADDRESS>According to dlitz/pycrypto#173, pycrypto has stopped development, and has been forked into pycryptodome. It supposedly still supports Python 2.4+ and seems to be relatively actively developed.


Setting ExpirationTime to Zero neither throws Error  or changes Table to never expire

Is it possible to change a table's expiration time to be never? Why does setting ExpirationTime to Zero not cause an error thrown or Expiration Time to change to never
Client
BigQuery
Describe Your Environment
gLinux
Expected Behavior
If Expiration Time set to 0, either change Table Expiration to Never, or throwing Error.
Actual Behavior
No change to expiration time, no error.
Sample Code:
package main

import (
        "fmt"
        "time"
        "log"
        "context"
        "cloud.google.com/go/bigquery"
        "encoding/json"
)

func main() {
        ctx := context.Background()
        c, err := bigquery.NewClient(ctx, "snap-tests-217018")
        if err != nil {
                log.Fatal("failed to make client", err)
        }
        d := c.Dataset("testdataset")

        md, err := d.Metadata(ctx)
        if err != nil {
                log.Fatal("failed to get dataset metadata", err)
        }
        bmd, _ := json.MarshalIndent(md, "", "  ")
        log.Println("Datset Metadata", string(bmd))

        t := d.Table("testtable")
        mt, err := t.Metadata(ctx)
        if err != nil {
                log.Fatal("failed to get table metadata", err)
        }
        bmt, _ := json.MarshalIndent(mt, "", "  ")
        log.Println("Table Metadata", string(bmt))

        mt2, err := t.Update(ctx, bigquery.TableMetadataToUpdate{
                Description: fmt.Sprintf("My Table (timestamp - %d)", time.Now().Unix()),
                ExpirationTime: time.Time{},
        }, "")
        if err != nil {
                log.Fatal("Failed to change table metadata", err)
        }
        bmt2, _ := json.MarshalIndent(mt2, "", "  ")
        log.Println("Changed Table Metadata", string(bmt2))
}

Note that no error thrown when calling t.Update(...), and no change to Table Metadata's Expiration Time.

Mirroring internal thread.

Sending null as the expiration time changes Expiration Time to never. Sending 0 as expiration time deletes the table all together.
It's Not possible to give NULL / NIL for Expiration Time:
https://godoc.org/google.golang.org/api/bigquery/v2#Table

    ExpirationTime int64 `json:"expirationTime,omitempty,string"`

api/bigquery/v2/Table && TableMetadataToUpdate should likely be modified to be pointers vs raw types. Allowing for nil value & for nil to be passed back up to BQ RPC

An alternative is to copy the behavior of BQ CLI Command and have the following cause a table's expiration time to be changed to "never":
tm, err := t.Update(ctx, bigquery.TableMetadataToUpdate{
    ExpirationTime: time.Time{},
}, "")

This can be done by doing following Code Changes:
https://github.com/GoogleCloudPlatform/google-cloud-go/blob/master/bigquery/table.go#L333-L335
https://github.com/GoogleCloudPlatform/google-cloud-go/blob/master/bigquery/table.go#L488-L491
if tm.ExpirationTime.IsZero() {
    t.ExpirationTime = nil
    forceSend("ExpirationTime")
} else {
    // note this is also a bug due to overflowing of int64 - see issue 1194
    expirationTime := int64(tm.ExpirationTime.UnixNano() / 1e6)
    t.ExpirationTime = &expirationTime
    forceSend("ExpirationTime")
}

https://github.com/googleapis/google-api-go-client/blob/master/bigquery/v2/bigquery-gen.go#L3025
type Table struct {
    ...
    ExpirationTime *int64
}

@jadekler How is this a question? BQ CLI command, BQ WebUI, and Rest API all allow for this.
Feel free to mark as dup of issue #1194

I've held off re-labeling this until we see what's going on in https://github.com/GoogleCloudPlatform/google-cloud-go/issues/1194. Will update once we know more.

Thanks for your report @cobookman. We'll work to get this fixed.


Change logging to use contexts effectively

Use the github.com/docker/distribution/context package to get a logger
that adds a unique ID and useful information about each HTTP request.
Use this logger in HTTP handlers instead of using logrus or the log
package directly.
Remove [Notary Server] and [Notary Signer] prefixes from log messages.
The distribution/context package was already vendored, so there are no
Godeps changes necessary.
Sample output:
notaryserver_1 | time="2015-07-31T23:02:01Z" level=debug msg="retrieving timestamp key for docker.com/docker"
notarysigner_1 | time="2015-07-31T23:02:01Z" level=debug msg="generated ECDSA key with keyID: ea89e7dc49a13feab1e5ed349760b148c3c6ebd86968b2bc6cb0d003a8b79f78"
notarysigner_1 | time="2015-07-31T23:02:01Z" level=debug msg="generated new ecdsa key for role:  and keyID: ea89e7dc49a13feab1e5ed349760b148c3c6ebd86968b2bc6cb0d003a8b79f78"
notarysigner_1 | time="2015-07-31T23:02:01Z" level=info msg="CreateKey: Created KeyID ea89e7dc49a13feab1e5ed349760b148c3c6ebd86968b2bc6cb0d003a8b79f78"
notaryserver_1 | time="2015-07-31T23:02:01Z" level=debug msg="Creating new timestamp key for docker.com/docker. With algo: ecdsa"
notaryserver_1 | time="2015-07-31T23:02:01Z" level=debug msg="Inserting timestamp key for docker.com/docker"
notaryserver_1 | time="2015-07-31T23:02:01Z" level=debug msg="200 GET timestamp key" docker.com/docker=gun http.request.host="<IP_ADDRESS>:4443" http.request.id=a720da02-4312-48ae-b122-6d4bce9d3b20 http.request.method=GET http.request.remoteaddr="<IP_ADDRESS>:58178" http.request.uri="/v2/docker.com/docker/_trust/tuf/timestamp.key" http.request.useragent="Go 1.1 package http"
notaryserver_1 | time="2015-07-31T23:02:01Z" level=info msg="response completed" http.request.host="<IP_ADDRESS>:4443" http.request.id=a720da02-4312-48ae-b122-6d4bce9d3b20 http.request.method=GET http.request.remoteaddr="<IP_ADDRESS>:58178" http.request.uri="/v2/docker.com/docker/_trust/tuf/timestamp.key" http.request.useragent="Go 1.1 package http" http.response.duration=29.703624ms http.response.status=200 http.response.written=181

CC: @endophage @diogomonica @dmp42

I need to spend some more time ingesting this but initial reaction is positive. I like that we can continue to use the vanilla context object and just have additional utility functions.

@aaronlehmann  Any reason to not log something about the error in the cases where we're returning a 500?

If you are talking about ServeHTTP, it's because the log line in the "defer" will log the status code, so an extra log line would be redundant.

Review ping.

LGTM


Introduce option to provide custom WAN Edge credentials for backup task

Problem Statement
Right now when running backup task, tool connect to each WAN Edge to collect the information using admin user and default password.
Proposed Solution
Ask is to allow user to specify customer username and password for WAN Edge, same as we do for SD-WAN Manager. If not specified, then use defaults as we do today.

Implemented in 2.0.7. Added support for backup and restore task when SD-WAN Controller/Validator/Edge are custom admin password (same as SD-WAN Manager).


Add support for FreeBSD

VSCode Version: Any
OS Version: FreeBSD 11

Steps to Reproduce:

Download the source
Build it
It does not build

Reproduces without extensions: Yes

The error I am getting when running ./scripts/npm.sh install is the following
[maitesin@Ryuk ~/Downloads/vscode/scripts]$ ./npm.sh install

><EMAIL_ADDRESS>preinstall /usr/home/maitesin/Downloads/vscode
> node build/npm/preinstall.js

npm WARN read-shrinkwrap This version of npm is compatible with lockfileVersion@1, but npm-shrinkwrap.json was generated for lockfileVersion@0. I'll try to do my best with it!
npm WARN deprecated<EMAIL_ADDRESS>Use uuid module instead
npm WARN deprecated<EMAIL_ADDRESS>to-iso-string has been deprecated, use @segment/to-iso-string instead.
npm WARN deprecated<EMAIL_ADDRESS>Jade has been renamed to pug, please install the latest version of pug instead of jade
npm WARN deprecated<EMAIL_ADDRESS>Please update to minimatch 3.0.2 or higher to avoid a RegExp DoS issue
npm WARN deprecated<EMAIL_ADDRESS>Please update to minimatch 3.0.2 or higher to avoid a RegExp DoS issue
npm WARN deprecated<EMAIL_ADDRESS>graceful-fs v3.0.0 and before will fail on node releases >= v7.0. Please update to<EMAIL_ADDRESS>as soon as possible. Use 'npm ls graceful-fs' to find it in the tree.
npm WARN deprecated<EMAIL_ADDRESS>Please update to minimatch 3.0.2 or higher to avoid a RegExp DoS issue
npm WARN deprecated<EMAIL_ADDRESS>Please update to minimatch 3.0.2 or higher to avoid a RegExp DoS issue

><EMAIL_ADDRESS>preinstall /usr/home/maitesin/Downloads/vscode/node_modules/v8-profiler
> node -e 'process.exit(0)'

><EMAIL_ADDRESS>preinstall /usr/home/maitesin/Downloads/vscode/node_modules/typechecker
> node ./cyclic.js

npm WARN prefer global<EMAIL_ADDRESS>should be installed with -g

><EMAIL_ADDRESS>install /usr/home/maitesin/Downloads/vscode/node_modules/windows-mutex
> node-gyp rebuild

gmake: Entering directory '/usr/home/maitesin/Downloads/vscode/node_modules/windows-mutex/build'
  CXX(target) Release/obj.target/CreateMutex/src/main.o
../src/main.cc:2:10: fatal error: 'windows.h' file not found
#include <windows.h>
         ^
1 error generated.
gmake: *** [CreateMutex.target.mk:95: Release/obj.target/CreateMutex/src/main.o] Error 1
gmake: Leaving directory '/usr/home/maitesin/Downloads/vscode/node_modules/windows-mutex/build'
gyp ERR! build error
gyp ERR! stack Error: `gmake` failed with exit code: 2
gyp ERR! stack     at ChildProcess.onExit (/usr/local/lib/node_modules/npm/node_modules/node-gyp/lib/build.js:258:23)
gyp ERR! stack     at emitTwo (events.js:125:13)
gyp ERR! stack     at ChildProcess.emit (events.js:213:7)
gyp ERR! stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:197:12)
gyp ERR!   Failed at the<EMAIL_ADDRESS>install script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR! A complete log of this run can be found in:
npm ERR!     /home/maitesin/.electron-gyp/.npm/_logs/2017-07-03T16_56_36_970Z-debug.log

Please find attached the log file mentioned in the error
2017-07-03T16_56_36_970Z-debug.log.txt

Moving to electron/electron#3797

https://github.com/prash-wghats/VSCode-For-FreeBSD/releases.
This binaries were built with FreeBSD 11. you can probably use the Linux compatibility layer to run the Microsoft cpp extension and omnisharp cpp extension. (you will have to copy libraries from a Linux distribution like debian8, since centos 7 libs doesn't work with vscode)


move sensor_itf to driver_itf WIP please evaluate

The sensor interface model is really nice way to properly remove state from driver implementations and a missing piece in the driver model.
Further Ive been pushing that sensors should rather be a wrapper around slimmer driver implementations.
I can and will break this out, but wanted it all in one place for discussion and testing. This pr:

brings what I think is the bare minimum from sensor over to a driver pkg
converts the lis2dxxx sensors.
removes all sensor stuff from the drv2605 which was using sensor just to get the itf.

Note the major change was making the _config take a driver_itf instead of a os_dev object. This is the major change and Im not sure how to fix it differently other than adding a third arg like init.
But It does brings up an argument Ive made before, no drivers/sensors (excepting pwm, uart, adc) utilize os_dev's open/close handlers and we now have sensor (or driver in this case) interface locking.. are we getting our memorys worth with os_devs in sensors/drivers??
Thoughts?

Why not just add this functionality into the os_dev framework?  It seems like a fairly low code & memory footprint, and useful/generalizable?

I agree. The only issue I have with a generic interface is that some hardware requires more context for physical interfaces than the other. For example, sensors might have interrupt pins, led chips generally don't and so on.

My main thrust is getting to writing thinner drivers instead of driver/sensor combos and the absolute quickest path to that was pulling sensor interface out. Im happy to see it in os_dev or wherever but I just dont have a vision for what os_dev should look like. More specific brainstorming would be appreciated.
As a refresher, we previously had this discussion here, which seem to be concluded PRs welcome.
<EMAIL_ADDRESS>

PRs are welcome (at least -- I'm glad you are looking at this!) - i think generally this looks like a good start, but it should go into os_dev.  os_dev was meant to be a skeleton to build on, and I agree with you that this is a common pattern, seen in sensor drivers, but also something that most people who build a driver end up implementing themselves as well.  I'll review a bit closer as well.

2 new totally non functional commits just to take a look at what driver and sensor separation feels like. I pulled the low level driver code out of the lis2dw12 sensor. The driver builds, but wont be functional yet. And all i did was remove code on whats left of the lis2dw12 sensor so that wont even build. It does seem like a clean and useful separation to me.
Im presuming the sensor would call the drivers init and config? or is that too hardcoded? Though its interesting to look at how all a single lis2dxxx sensor would look utilizing either one of the three lis2dxxx drivers...

Interesting fact. It lookes to me like the init function and init_arg are already attached to os_dev and therefore interface has been available there all this time.

This looks like it has stalled. Can this be closed?


[Bug]: rm -rf .next won't work on Nixpacks build

Error Message and Logs
When trying to do rm -rf .next on a Nixpacks build the deploy fails and I get rm: cannot remove '.next/cache': Device or resource busy
Steps to Reproduce

Add rm -rf .next into your build step
Review deploy logs
Deploy fails and reads rm: cannot remove '.next/cache': Device or resource busy

Example Repository URL
No response
Coolify Version
v4.0.0-beta.379
Are you using Coolify Cloud?
No (self-hosted)
Operating System and Version (self-hosted)
No response
Additional Information
No response

I tried to use my own nixpacks.toml to maybe have a bit more granular control

[phases.install]
cmd = "pnpm install"

[phases.build]
cmd = "pnpm migrate_build"

[phases.start]
cmd = "pnpm start"

[static_cache]
paths = []```

I get this ```docker exec jwkowc4oo8g0gkckowkgwsg8 bash -c 'nixpacks build -c /artifacts/thegameplan.json --cache-key 'vwk8s0k0oscoog0cso4wckkc' --no-error-without-start -n vwk8s0k0oscoog0cso4wckkc:pr-71 /artifacts/jwkowc4oo8g0gkckowkgwsg8 -o /artifacts/jwkowc4oo8g0gkckowkgwsg8'
2024-Dec-15 18:11:21.102604
Error: Failed to parse Nixpacks config file `/artifacts/thegameplan.json`
2024-Dec-15 18:11:21.102604
2024-Dec-15 18:11:21.102604
Caused by:
2024-Dec-15 18:11:21.102604
    invalid length 0, expected struct Phase with 11 elements at line 60 column 19```

Can you check if some processes are using the directory with lsof +D .next/cache and also is the directory a mount point df -h. Also, it would help a lot with debugging if you could provide a sample repository.


Add test cases for SubscriptionGroupWrapper

What is the purpose of the change
Add test cases for SubscriptionGroupWrapper
Brief changelog
Add test cases for SubscriptionGroupWrapper
Verifying this change
Follow this checklist to help us incorporate your contribution quickly and easily. Notice, it would be helpful if you could finish the following 5 checklist(the last one is not necessary)before request the community to review your PR.

[x] Make sure there is a Github issue filed for the change (usually before you start working on it). Trivial changes like typos do not require a Github issue. Your pull request should address just this issue, without pulling in other changes - one PR resolves one issue.
[x] Format the pull request title like [ISSUE #123] Fix UnknownException when host config not exist. Each commit in the pull request should have a meaningful subject line and body.
[x] Write a pull request description that is detailed enough to understand what the pull request does, how, and why.
[x] Write necessary unit-test(over 80% coverage) to verify your logic correction, more mock a little better when cross module dependency exist. If the new feature or significant change is committed, please remember to add integration-test in test module.
[x] Run mvn -B clean apache-rat:check findbugs:findbugs checkstyle:checkstyle to make sure basic checks pass. Run mvn clean install -DskipITs to make sure unit-test pass. Run mvn clean test-compile failsafe:integration-test  to make sure integration-test pass.
[ ] If this contribution is large, please file an Apache Individual Contributor License Agreement.

please add a [RIP-10]  to you pull request's title, for example:
[RIP-10] Add test cases for SubscriptionGroupWrapper


Tilde in url in terminal results in bad url

VSCode Version: 1.10.2
OS Version: macOS Sierra 10.12.3

Steps to Reproduce:

Create a bash script named foo.sh with the following contents

#/bin/bash
echo https://deb.nodesource.com/node_6.x/pool/main/n/nodejs/nodejs_6.10.0-1nodesource1~xenial1_amd64.debc

Make the file executable then execute it.

The link is clickable (cmd + click) in the text file, but the terminal only detects the first part (up to the tilde) as a url.

:+1: Thanks.


Update README.md

Important Note:
It is recommended NOT to merge pull requests on weekends.

Can one of the admins verify this patch?


Add address error location to GUI

Closes #527. May supersede #533, depending on whether people feel the error reason is better displayed immediately or in this validation dialog.
This is an alternative to #537: I believe we should only show the user potential errors if they ask for it, as the errors are not guaranteed to be correct and enabling/encouraging the user to bruteforce the errors may lead to loss of funds.
Adds a context menu item "Attempt error location" to the address inputs:

Which, when clicked, opens a dialog with the error message and highlighted detected errors in red:

Approach NACK. User shouldn't need to actively interact like this.
See https://github.com/bitcoin/bitcoin/compare/22.x...luke-jr:gui_bech32_errpos-22+knots for a better approach (I'll rebase it soon)

I don't think it's as safe to point out potential errors (which may be incorrect) unless the user asks for it.

The following sections might be updated with supplementary metadata relevant to reviewers and maintainers.

Conflicts
Reviewers, this pull request conflicts with the following ones:

#537 (Point out position of invalid characters in Bech32 addresses by luke-jr)

If you consider this pull request important, please also help to review the conflicting pull requests. Ideally, start with the one that should be merged first.

This seems overly cautious, and I tend to prefer #537.
First of all I suspect most users in most cases will copy-paste addresses, so error correction is only needed in a minority of cases. Bech32 allows up to 4 typos without ambiguity.
Perhaps we could hide the positions behind a menu like this if there are more than 5 typos.

Bech32 allows up to 4 typos without ambiguity.

Only in detection, not in correction. We can only accurately correct two errors, and if more than that are made, the results could be incorrect. This is also only substitution errors - deletion and insertion errors are not handled well.

Perhaps we could hide the positions behind a menu like this if there are more than 5 typos.

There is no way for the code to know how many errors are made. Anything could happen if more than that are made, including that you chance upon another valid address by accident.

There is no way for the code to know how many errors are made. Anything could happen if more than that are made, including that you chance upon another valid address by accident.

Which is why expecting error detection to be perfect is unreasonable, and efforts to hide it behind a menu just a nuisance. ;)

Only in detection, not in correction.

Right, but we're not doing correction. That feature might indeed be better for a dropdown menu with a warning when there's more than 2 characters.

This is also only substitution errors - deletion and insertion errors are not handled well.

For now those impact the length, in which case we mark the whole thing invalid. (though that leaves swapping characters)

There is no way for the code to know how many errors are made. Anything could happen if more than that are made, including that you chance upon another valid address by accident.

So this is a scenario where the user makes so many typos that they are, in error correcting space, closer to a different address? In that case the user would see a number of characters marked as incorrect, but those would actually not be incorrect. Without autocorrect, a user would then take another look at their piece of paper to see if they misread those characters. That would be confusing.
It could also be dangerous if, rather than looking at the paper, they start randomly permutating the wrong character (assuming it's only 1, maybe 2 if they're really patient).
What are the odds the above scenario. @sipa?

@Sjors sorry, this I worded things a bit confusingly.

Right, but we're not doing correction.

We actually are. The error location code is actually computing the specific errors themselves, and would be able to correct them. We deliberately don't show those corrections to the user, just which characters (we think) are wrong. This can only be done with up to 2 characters.
Detection is just "is this whole string valid or not." That's what already exists in master right now (whether the checksum verifies or not). It cannot say anything about the specific location of those errors.

In that case, maybe we should do two things when error positions are found:

Highlight them, but not in red
Put a warning below the input: "Please check these characters. If they are correct, re-type the whole address. Do not attempt to guess."

Concept ACK, although having to get the info by opening a menu item is rather clunky. What about putting the error information in the tooltip?
Also, I think there needs to be a warning that the found errors are not necessarily correct.

It could also be dangerous if, rather than looking at the paper, they start randomly permutating the wrong character (assuming it's only 1, maybe 2

I don't see what reasonable person would do this, rather than checking the address they are supposed to be copying. But I agree that something like @Sjors suggestion (https://github.com/bitcoin-core/gui/pull/536#issuecomment-1022137943) would be a good fix

Although having to get the info by opening a menu item is rather clunky

Agreed that the context menu is clunky and very unintuitive. Perhaps there could be a warning icon that appears next to the input box that you can click to open the dialog. I do like the dialog because it would allow us to put in @Sjors full warning message next to the marked error locations:

"Please check these characters. If they are correct, re-type the whole address. Do not attempt to guess. The marked characters are our best guess, but it's possible the mistake is somewhere else. Randomly trying different characters may lead to a loss of funds. Please carefully check the original address, e.g. the paper note."


Added verification to the census handler

The verifier didn't check any authorization method, so a user that wasn't in census could get authorized.
This is not the optimal solution, but an starting point to develop it.
Solves https://github.com/CodiTramuntana/decidim-verify_wo_registration/issues/2

Thank you very much @operez-ddgi for this PR :smiley:
We've implemented the generic version of the fix (adapted to any verification system) in #4 so we're discarding this PR in favor of #4

Thank you very much @operez-ddgi for this PR :smiley:
We've implemented the generic version of the fix (adapted to any verification system) in #4 so we're discarding this PR in favor of #4


Add missing parameter on bulk_save_objects

From SQLAlchemy 1.3
from documentation: https://docs.sqlalchemy.org/en/14/orm/session_api.html#sqlalchemy.orm.Session.bulk_save_objects
method sqlalchemy.orm.Session.bulk_save_objects(objects, return_defaults=False, update_changed_only=True, preserve_order=True)

preserve_order –
when True, the order of inserts and updates matches exactly the order in which the objects are given. When False, common types of objects are grouped into inserts and updates, to allow for more batching opportunities.

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.


About NServiceKit

Hello,

What is NServiceKit?

What is the purpose to use it?

How can I use NServiceKit to my hobby project?
Thank you!

What is NServiceKit?
It is a fork of the very popular ServiceStack framework for developing web services.  After version 3, ServiceStack changed their license so NServiceKit was created to maintain a working version that is fully open source.

What is the purpose to use it?
Developing web applications.  It includes features for web services, an ORM, an XML/JSON serializer, and a host of other great features for service API developers.

How can I use NServiceKit to my hobby project?
NServiceKit is fully open source, so you are free to use it however you would like.  Since it is a fork of ServiceStack v3 you can find some great documentation here.


Rocket game

PR Description 📜
Please include summary related to the issue you have fixed and describe your PR in brief over here by specifying the issue number on which you were working below
Fixes # <your_issue_number>

Mark the task you have completed ✅

[x] I follow CONTRIBUTING GUIDELINE & CODE OF CONDUCT of this project.
[x] I have performed a self-review of my own code or work.
[x] I have commented my code, particularly in hard-to-understand areas.
[x] My changes generates no new warnings.
[x] I have followed proper naming convention showed in CONTRIBUTING GUIDELINE
[ ] I have added screenshot for website preview in assets/images
[ ] I have added entries for my game in main README.md
[ ] I have added README.md in my folder
[ ] I have added working video of the game in README.md (optional)
[ ] I have specified the respective issue number for which I have requested the new game.

Add your screenshots(Optional) 📸

Thank you soo much for contributing to our repository 💗

Thank you @abhi87374 ,for creating the PR and contributing to our GameZone 💗
Review team will review the PR and will reach out to you soon! 😇
Make sure that you have marked all the tasks that you are done with ✅.
Thank you for your patience! 😀

Hey @abhi87374,
Please make sure to link the relevant issue using the appropriate syntax, such as "#issueNumber" 👀.
Follow the proper guideline and make a new PR again 😀.
Happy Hacking 💗

Thank you  @abhi87374 , for your valuable time and contribution in our GameZone 💗.
It’s our GameZone, so Let’s build this GameZone altogether !!🤝
Hoping to see you soon with another PR again 😇
Wishing you all the best for your journey into Open Source🚀


error: variable does not need to be mutable

Describe The Bug
Build fails:
error: variable does not need to be mutable
    --> src/lib/types.rs:1249:37
     |
1249 | ...                   for mut routing_info in &mut routing_info_vector {
     |                           ----^^^^^^^^^^^^
     |                           |
     |                           help: remove this `mut`
     |
note: the lint level is defined here
    --> src/lib/mod.rs:120:5
     |
120  |     unused_mut,
     |     ^^^^^^^^^^

warning: `cargo-make` (lib) generated 7 warnings
error: could not compile `cargo-make` (lib) due to 1 previous error; 7 warnings emitted

rust-1.78.0
FreeBSD 14.0

thanks, will fix it.

fixed


Message frames might be interleaved when sending from multiple greenlets

When publishing a large message, BasicClass.publish creates multiple frames and sends them one by one.
When using async transports such as gevent, or the currently unsupported eventlet, there is no guarantee that we won't switch to another greenlet between frames.
When multiple greenlets use the same connection to publish large messages, frames might get interleaved. Today, this doesn't occur with gevent by chance - but future changes in gevents greenlet switching mechanism might break this.
I've come across this problem with an eventlet Transport (which I will later contribute to haigha), in which the problem occurs. It's easy to reproduce - I spawn multiple publishers which continuously publish large messages, and very soon after I get disconnected from RabbitMQ with this message (or a similar one):
Connection closed: 505 : UNEXPECTED_FRAME - expected content body, got non content body frame instead
Tracing the operations done shows the exact problem - multiple greenlets are waiting on the single EventletTransport._write_lock (similarly to GeventTransport._write_lock), and send_frame calls are interleaved.
A possible solution would be to acquire and release a semaphore for each message, not each frame... but the locking mechanism, today, is part of BasicClass and not Transport thus can't be library specific.

@awestendorf, I'll be happy to hear your opinion about this.

I'm worried from the possibility that a future gevent change will break haigha
I want to add an EventletTransport, but can't because of this issue.

Thanks!

This should only be a problem when you're using the same channel across greenlets/eventlets/threads though right?

True. It's a common use case, no?

It is, I just wanted to make sure I understood the problem correctly. The simplest case would be to create a channel, or pull one from a pool, for each publish on each thread. Although there's a limit to the number of channel ids, they're relatively light on both sides of the connection. There's haigha.channel_pool, but that's old code for a transactional use case that I don't use any more. I see 3 possible ways to go with this.

Document that the user should publish on a channel per thread/greenlet, however they manage that.
Along with 1., improve the ChannelPool so that it supports the non-transactional use case by implementing a lock around the publish.
Encode that lock within BasicClass, which is an instance per channel and so can maintain its own lock relatively easily.

In either case where we handle a lock, I think we shouldn't assume that the user has monkey-patched the thread library, and so there will have to be some abstractions that allow BasicClass and/or ChannelPool to use a lock constructor that would be defined within a Transport implementation.

Actually, with regard to option 3, that only solves the case where someone tries to publish on multiple threads. If they do any other operation, that too could result in a frame error. So the only way to really make that work well is to grab a lock inside every method that wants to call send_frame, which I can see quickly leading to a lot of bugs (e.g. synchronous transport, try/finally debugging, etc) and likely seriously slow things down, which in turn means I think most users would want the option to control that themselves, leading to even more complications.
I'm leaning in the direction of a helper such as ChannelPool and documentation. An important but subtle detail such as this could easily be lost in documentation though.

Perhaps a way around all those complications and to fix the bug is to change send_frame to send_frames, so that a single logical "transaction" is carried all the way down to the transport layer, where the lock can be held while iterating over the whole list of frames to be sent.

That sounds simpler.
I'll take a look at the code this weekend and try and submit a patch for this. Thanks!

Short update: the refactoring is more significant that I expected. We currently bypassed the issue with application-level semaphores, hope to get back to this soon.


Chare Array construction doesn't respect setGroupDepID in CkEntryOptions (or any other entry method options)

Original issue: https://charm.cs.illinois.edu/redmine/issues/1563

CProxy_ArrayFoo::ckNew accepts a CkEntryOptions argument, but doesn't put it to sensible use.
When the underlying element constructor takes no arguments, the CkEntryOptions argument is explicitly ignored.
When the element constructor does take arguments, the group dep is read from the CkEntryOptions and set on the message that will be handed to the elements' constructor. Because that's executed inline during CkArray::CkArray(), it gets ignored downstream.
If construction of an array's elements depends on the the availability of some specific group that the array itself doesn't depend on, there's thus no effective way to specify this.

Original date: 2017-12-29 17:46:38

Per discussion with Eric B, assigning to Nitin, based on recent work around CkEntryOptions handling

Original date: 2018-01-17 23:32:40

Fix: ~~https://charm.cs.illinois.edu/gerrit/#/c/3528/~~ https://github.com/UIUC-PPL/charm/commit/d24d191d92a48c9cab38b84e7565e794f588949d


dev: add namespaces

Hey,
I was wondering if you'd accept a PR to introduce namespaces to your lib. Using a namespace is the current accepted best practice, it's much easier on the eyes and to work with from a developer experience perspective.
See the changes to Math64x61Mock.cairo to get the feel for the difference.
So far, this PR only has changes in the Math module, but if you're ok with it, I can update Hyp, Trig and Vec as well.

I appreciate the prompt! I was actually in the process of making these changes as part of a transition over to use pip. Should be all up to date with namespaces now in 1.3.0


Play by Play Fact Table v1.0.0

Is your feature request related to a problem? Please describe.
No.
Describe the solution you'd like
Pull together the basic metrics for a play by play fact table with joins to the player dim and team dim.
Describe alternatives you've considered
A clear and concise description of any alternative solutions or features you've considered.
Additional context
N/A

There's a ton of calculated fields with probabilities of events that we can probably leave out. Stick to just the facts of what happened in the play

Just the Facts... I see what you did there...


Adding clock sandcastle example

A sandcastle example demoing the clock API.
Could you review, @mramato ?

@mramato can you look at this and #5458 at the code sprint?
@rahwang please update CHANGES.md in both.

Just the one comment.  Thanks @rahwang

Thanks @mramato , done!


Fix not able to edit second column of table block.

Fixes #5015

I think the changelog entry is specific to your project.

I'm confused about the purpose of this change. It looks like it is setting the vertical alignment based on whether the cell has contents, but not doing anything that affects whether the cell can be edited. Was the problem that if you click inside the cell but not inside a text node, nothing happens?
I think:

We should always set the vertical alignment to top; it looks better than middle.
We should make sure that a click inside the cell moves the cursor to the closest text node, even if the click wasn't inside one.
Thoughts, @tiberiuichim?

2. We should make sure that a click inside the cell moves the cursor to the closest text node, even if the click wasn't inside one.

Yes.
With volto-slate and the rest of the code we have based on slatejs, sometimes this is hard because we have multiple slate editors on the screen, which aren't "active". Sometimes we have code that forbids a component (a block, for example) from being included in the react batch refresh updating, so when you click in a text area you first have to activate/select its parent component, then rely on slate properly detecting the dom node that was clicked, to translate it into "cursor position inside my internal tree structure". This is a probable explaination for why sometimes slate crashes: if, by clicking, I create/mutate dom nodes, slate can't translate my click to a slate node.
This problem, "I click on a text block and my cursor position is not lost" has been a really big challenge with volto-slate.

@iFlameing

I think top looks better than middle in view mode also.
Yes. But the problem still exists regardless of where the text is positioned, because the user doesn't know there is a special place they need to click which is smaller than the entire cell.


Can't install earlier version of the extension

Environment data
Version: 1.46.0
Commit: a5d1cc28bb5da32ec67e86cc50f84c67cc690321
Date: 2020-06-10T08:59:04.923Z
Electron: 7.3.1
Chrome: 78.0.3904.130
Node.js: 12.8.1
V8: 7.8.279.23-electron.0
OS: Linux x64 5.3.0-53-generic snap
Expected behaviour

XXX
Actual behaviour
The select version to install window quickly closes. Here is the console log.

XXX
Steps to reproduce:
[NOTE: Self-contained, minimal reproducing code samples are extremely helpful and will expedite addressing your issue]
Right click on the extension and click to install another version.

XXX

Logs

Output for Python in the Output panel (View→Output, change the drop-down the upper-right of the Output panel to Python)

XXX

Output from Console under the Developer Tools panel (toggle Developer Tools on under Help; turn on source maps to make any tracebacks be useful by running Enable source map support for extension debugging)

XXXX

I  have the similiar problem

This is a market place issue https://github.com/microsoft/vscode/issues/99699.
Related #12217


Add tavern ai

https://github.com/TavernAI/TavernAI

Personally, I think it's the best open source alternative to chat gui.

First of all, thank you for contributing.
According to the document.

Alternatives are projects featuring different instruct finetuned language models for chat. Projects are not counted if they are:

Alternative frontend projects which simply call OpenAI's APIs.
Using language models which are not finetuned for human instruction or chat.

This repository you provided seems similar to the first case: an alternative frontend project that calls an LLM model like OpenAI's GPT series.
Although I think the current description is a little bit inaccurate (projects like frontend alternatives may be better called "LLM Applications" than just alternative projects), this project didn't provide any trained models or anything about that. So this project may not fit in this list, you could, by the way add it to other lists that aims collecting LLM Application projects.

@nicognaW

Alternative frontend projects which simply call OpenAI's APIs.
Here it is to filter the projects that only call OpenAI's APIs. And the goal of the list is to promote work that use other models.

For the case of TavernAI, I see they use KoboldAI and Pygmalion which are open source to my knowledge. Hence it's suitable for the list

Closed due to commit b1c3d2a3c48f0bbda7b745d24d50120ed4c401e5


Auto create random master key and appId

I'd also suggest that changing all of the docs to use and env var for key and appid.
So a doc code snippet would look like:
$ docker run -d                              \
             -e APP_ID=$PARSE_APP_ID         \
             -e MASTER_KEY=$PARSE_MASTER KEY \
             -p 1337:1337                    \
             -p 2022:22                      \
             --link mongo                    \
             --name parse-server             \
             yongjhih/parse-server

That way if the user sets the env vars they will be able to copy and paste all of the commands without having to edit.  By using good names, it'll still be clear what is going on.  Just an idea ;)


Results problem about SAT

Hi! I used your training code to train SAT model with 2 GPU, but the results were a little lower than those in the model zoo and in the paper. The training datasets are COCO, YouTube-VOS and DAVIS.

Do you have better parameters for 2 GPU?

We trained the model with batch size 128. Maybe you need tuning the lr  for 2gpus . Sorry we did not test the training process on 2 gpus

Thanks!


Don't require that project__git__repo_url be set to publish a MetaDeploy plan

Because we infer repo_url based on repo_name and repo_owner elsewhere in the same code path it makes sense to remove an undocumented dependency that is tripping up users.

Critical Changes
Changes

Setting repo_url in your project config is no longer required to publish a MetaDeploy plan.

Issues Closed

🚮


Introduce support for syscall filtering in containers #237

Obsoletes #263
This introduces Seccomp system call filtering, which restricts system calls, preventing them from being made inside containers.
Compared to the previous pull request, several changes have been made:

The previous version of the patches only allowed blacklists. This version can be configured to blacklist or whitelist system calls.
Support for conditionally-blocked syscalls has been added. This allows a system call to be blocked only if its arguments meet certain conditions

The vendored bindings for libseccomp are less than optimal right now - they're located in the main libseccomp repository, so checking them out also checks out fifty-odd C files. If there are suggestions for a better way of doing things, I'd be open to changing this.

@mheon The api branch was just merged into master. Would you mind rebasing? Thanks!

@mrunalp Rebased, though it looks like I might have broken the test suite along the way - looking into it.

@mheon Could you rebase again? Github is complaining about conflicts. I will test this out today.

@mrunalp Rebased, unit tests passing.
Worth noting that there's a bug in libseccomp upstream at the moment which breaks conditional syscall blocking. A fix is incoming, but for the moment there are no tests on blocking a syscall based on multiple conditions

@mheon Thanks!

The seccomp tests aren't actually getting run in jenkins because of the seccomp tag.

I've added the seccomp tag to the Dockerfile so the tests should be running automatically now. There were previously issues with running Seccomp tests on the CI server, but these seem to be resolved.
It should even be possible to remove the seccomp tag completely at this point, but it could still be desirable to build libcontainer without libseccomp support.

Rebased on latest master. Some changes in integration tests, which broke on the new version of busybox.

@mheon Thanks! I will try to get to this by end of today.

@crosbymichael @LK4D4 ping

I took a quick look and overall looks good.

@mheon Can you rebase pls?

@gabrtv here you go :)

@LK4D4 Rebased

@mheon I have question. Is this makes sense to release goseccomp as separate package under your name?

@LK4D4 From an upstream perspective, it makes things easier for the Libseccomp maintainers. However, given it does create some issues with vendoring the bindings, I'd be willing to maintain a copy of the bindings independent of the main repository.

@mheon Yeah, just looks not very well import path with src :) If upstream will maintain it, then okay. But if it will you, then I propose to create separate repo and just give link to it in upstream.

Can someone please explain why including the libseccomp docker bindings with the rest of libseccomp is problematic?  I'm willing to make reasonable adjustments, but no one has explained the problem.

@pcmoore All the Go dependencies for Libcontainer are included in this repository. The way of consistently acquiring or updating this externally-available dependencies is by a vendoring script, which clones their Git repositories. If the Libseccomp Go bindings are in the Libseccomp repository, this would grab the entire repository, including all the C source code and test suite. Ideally we'd just want the Go bindings. Right now, my solution is to clone the entire repo, and then remove every file that's not the Go bindings and license, which is kind of gross.

@pcmoore @mheon Based on the libct backend dependencies (C + go) that we will end up pulling into libcontainer, I think it should be fine to pull all of libseccomp.
@LK4D4 @crosbymichael WDYT?

@mrunalp I don't care.
Just don't like ugly imports and I'm not fan of libct bindings in repo too. I used to pure golang packages. Also I'm not sure about contributor/maintainer relationships in such projects, it isn't unusual that author of library is not willing to maintain all possible bindings in addition to library or giving write access to repo for all bindings authors.
Now you can see how much I don't care :)

Requested changes have been made.
Most notably, we pull in the entire Libseccomp repository now, meaning the diffstat just exploded.

Okay, so all is good now with respect to the repo?

Certainly would be good to get this into docker-1.7.

@rhatdan agreed. I think the big question is what a default profile will look like.

@diogomonica I think Matt (And I) have come up with a pretty good default blocking profile.  Mostly stolen from other container tools and through suggestions from kernel developers.  If we could at least start getting some of this merged, then we could release an experimental patch to Rawhide, to see if anyone sees issues with the default list of blocked syscalls.

@rhatdan There were some licensing concerns around merging this. (LGPL).

@mrunalp We're looking into it. I wouldn't be opposed to relicensing, but the bindings are going in the upstream repository as well, so we want to examine options there. Updates on that (hopefully) soon!
On defaults: I think the most sane policy for a default blocklist is a blacklist, as I think we should allow syscalls introduced by new kernel versions by default, and in general whitelisting is more cumbersome than blacklisting for syscalls (an absolutely minimal whitelist to get from Docker to "return 0" is around 25 syscalls, and that goes up sharply in number if you want to do basic I/O, file operations, networking, etc).

Can we take a look at this PR https://github.com/docker/libcontainer/pull/529, it made it in another way.

Interesting, it handles the seccomp BPF filter generation completely in Golang.  I'm obviously a little biased so I won't comment on which approach is better, but I will mention that just a quick glance at the code in PR #529 revealed a few issues/concerns:

It doesn't appear that x32 is handled correctly, resulting in a gap in protection on some systems
The syscall tables are wrong for ARM, e.g. OABI_SYSCALL_BASE (?)
The code doesn't abstract away architecture specifics, e.g. socketcall()
The generated BPF filter code looks like it might be twice as large as necessary resulting in unnecessary per-syscall performance overhead
The generated BPF filter code has a trap/signal return action, yet I don't see a signal handler defined (?) ... possible this may be misunderstanding how Golang handles signals

I suspect if I look closer there are more issues as well, not to mention the long term maintenence issues (who will keep the syscall tables updated?).

To me it would seem prudent to merge in libseccomp support and then allow the golang implementation to grow in support til it matches libseccomp.  At that point, I would suggest we look at this again.  But I really do not want this effort to get derailed.

@rhatdan agreed. This said, BPF filter generation completely in Golang is totally the right way to go.

@mheon what about the license? Even if it's in upstream LGPL does not make sense for Go because of the static compiles.

@crosbymichael I'd be fine with relicensing the bindings, though I'd have to go through @pcmoore to verify that he's alright with it as well.
Big issue from my perspective is that the actual libseccomp library, itself LGPL, is going to have to be statically-linked into Docker.

@mheon we can dynamically link it into docker but i still don't think it makes sense for Go because every go pkg is static.  what do you think?

Why is this even a problem.  Don't we already staticly link in libc.so which is LGPL?

@rhatdan I think no, we're not linking libc, that's why we have our own user library.

#613 was merged with a pure go implementation.  Thanks for your help and input on this feature.

We would like to question this.  We have strong reservations about the go lang bindings.

To add to this: I think the comments from @pcmoore on #529 provide a good summary of our reasoning for an alternative implementation (ease of maintenance, feature completeness, performance).
This PR hadn't seen much love in a long time (I'd moved on to other projects and not found time to rebase/solve the licensing issues). However, the way forward is fairly clear (relicense the bindings to a non-copyleft license... I was thinking BSD?), and I think I could have an updated version free of licensing hurdles by the end of tomorrow. I'd like this at least to be considered as an alternative before locking in to supporting a Golang implementation for the foreseeable future.


[Snyk] Upgrade jakarta.xml.bind:jakarta.xml.bind-api from 2.3.3 to 4.0.1

This PR was automatically created by Snyk using the credentials of a real user.Snyk has created this PR to upgrade jakarta.xml.bind:jakarta.xml.bind-api from 2.3.3 to 4.0.1.
:information_source: Keep your dependencies up-to-date. This makes it easier to fix existing vulnerabilities and to more quickly identify and fix newly disclosed vulnerabilities when they affect your project.

Warning: This is a major version upgrade, and may be a breaking change.

The recommended version is 10 versions ahead of your current version.
The recommended version was released a month ago, on 2023-09-13.

Note: You are seeing this because you or someone else with access to this repository has authorized Snyk to open upgrade PRs.
For more information:
🧐 View latest project report
🛠 Adjust upgrade PR settings
🔕 Ignore this dependency or unsubscribe from future upgrade PRs

closing in favor of #613


Fix for channel names with spaces

Fix for #691

Please include a test

His 2 lines of code appear to do what they are supposed to, unsurprisingly:
var key = "holy fgdfsf cow"
var space_index = key.indexOf(" ")
var parts = [key.slice(0,space_index), key.slice(space_index+1)]
console.log(parts)
// [ 'holy', 'fgdfsf cow' ]

@laino it's not that I don't trust the code, it's that tests ensure this remains working at every release. If you want to write the test as a part of this or another pull request that would be fine, you're about halfway there with your comment.

@pbihler would you be so kind and add a test? Otherwise LGTM

Fixed by 97db227a8d2098f82472b08e107e02532e73616d
Thx @pbihler :)


There is a delay in the sound after mech vibes is left idle on windows

When u dont type for a while. the program goes to sleep ig. when u type again the sound comes after  1-2 seconds. this keeps happening.  Can someone help me with this?

I just noticed a similar issue, seems restarting the app made it better again... I was kinda thinking along with this having some kind of delay or adjustment to the timing of when it triggers would be nice as its a little late for me even when working correctly.
But I definitely noticed this bug as well

I am recording programming tutorial with keyboard sounds and there's 1-2 second delay for my keyboard stocks

Same problem

Dupe of #12 and #13


Hi pamehabai6!

cVBwZjF1WTBpS0p3SkNmRXJpOWENCnJwU2ZlS3AzWW5uZk9yQllsNnE2DQpYWkpxV0hHRW5BalFEYXJFTG00dQ0KQ2tpSXhuUzU3cmxhT3FuanFjSXoNCnN0Q1dOeVBtcm83UUpJd0RTN0FBDQpDUnNJNmhZY1QzbTJ1emM4V2Q0Sg0KRkE5bkd3Z2JIOElCT2hIa0NHNzkNClZNbkRUaFdsSFNGcnhDaDVZSEgyDQprbnNPOWY0dHFBTm1uM3JEVmlzQQ0KdHhnSmw5NE81RnhzVDRQTFYxNlYNCktoMXJRS1g5MjA1MW9LcFczQ1kyDQo5V2ozZEI1UWxFNThqdWZ4NEFWMA0KUnZXdGlhdkZTYTlZZjlDM1dsUUMNCmdBVDJkN0gybEpzWlo5QjVqbWx3DQpKOWo1OU9tUExPZlAycHVnaExzRg0KQjJHNTBpSXlqeEtrQjBQSVVpYm4NCnRWdWl5Y0pDQ29nY2tmUlVnYjQ5DQoxV08weTRkM3VZVGVMZXduUWR1UA0KQkR0UllkdFAwMjJkQktjWXZWdU4NCnBQbmw2WDRHTlg5M3lEelhhZEJ5DQowYW4wM0hpRDhHa05mMHJha01BSQ0KcVlucDVEaVM0RGtJbnBqdXRVYmQNCmJzZHBLV0RKeENiSzQ4OXRFQjRHDQpJbkkxVnF0ZVNVWGhScm5MRXNYRg0KYnNIcGxMUlN6TU15MG03dmhnd20NCjhFZkJGYnBzM1hON2hPbDlrbWJlDQp2YXJCQ0tnWnd0bWtjRmhIT1FIQw0Kd3FkaXh4bmlMcUhvSmZZV002aTUNCnF6M3o4QzYyYlA4cm1ITUlWeEtWDQpWdVJFbm05NGRXS0s3OXl0RlFIcw0KSmJvT2x0ODVQVEdpWVptYWxJOGMNCjlMcldpbE9tOWh3OWdDTnJhZTFoDQpSdk5XTmhVMXlBcFhDaUZ2aW0yeQ0KRlNYN1VHVDJ5N3VRQ3hNSkV4RXMNCk1Zem42NVJCY1J4RWViRVN6NmhnDQo1WFVTWXlMVkFFME80aU5sZE5pMg0KNUVQWXpPUkpia3FzN1hHNEVVVXANCnEzOTA2YmI5NjdpQ0cxNnpxclR5DQpvRjkyMzlZSWtEUHRnUEZRcllhWg0KOUdNbWdFelBWOWxDN3Jlb2E4aloNCmNOSnk1ckE5RkpicndvaTkyemRHDQpkUnF1RldXUHZQcHRpSFpzZkJWOA0KTTB5enY1bUV4YWVvS0tqcXlWWDcNCm9KNXBkMUpWamZPM1ppNDJ1WEZyDQpWaUdDaGFtZFlJd0tSS1RRWEZBcQ0KWkxWNFhZNEFCUnRiTTY3cGx5TDUNCk9TUmcwN1ZlQWE1MEk1YUZ5bm1VDQp6ZERjYWhxWXJ5OHdlZHFTdDRJQg0KbVBxS2FhSGNzTXJYcDRuN2dOOFgNCnBKbkI0OEVpU2FKVnhLVWxTcm0wDQpFNU11WDZzQkZUbTdLYTRWdjFpdA0KRHBLQ1poWVpSNU01R0hJNUNpSTENCnZsUVRRWkI3NUJkT09oZ1VVWkR3DQpCa1hWc2tmcWV5eEQ2NjZieXJFYw0KZWlxTUZ0WENJNnFxb2d1ZGtwVVINCmRzODFzeFVBM3ozU0VCY05haDJaDQptQUVFbFJTY2VkZHdQMmxVbFI3ZA0KTmVpMzBTUUlGYmNZTjJqU0N1cjMNCkhnb2NIZGJEMkFRaDBpbEFMMkZDDQp1bk04MmJwUmF1MXJpWlBrZVVGYw0KeEhFNHptalk5S1BkVkdKOUdTZzQNCkt4amJobGRqblVHY1FTWVhNZWtJDQpTZzlaNjd6OFllaEp2WnFUUXJIZw0KS09mc1JxdmhmT0gxSVVqYUtGMVMNCjFoUVBOQW5GYnVNR0JIYUhOUzFnDQpWTzRDVWozQzJ3cjBJU3AxZko3Qg0KZTdwNkdXcXE1Q3Q5clBVS21RNFENCkFzNENwQzlyc0ZGWk5jQk5Uc3dODQpXM2tHQ0VadlB0eVdvd1o4c1R2Yg0KRFlJNHN2YUxtcmp6aUtES1Z3ZzANCnowVFBYalFhaVRkQTlVdUNtdzZRDQpKYUlPQXdiWmExeERVT1kyNk53VA0KczhQTFJTZXlQeEYyU3NZemdld1kNCnFIaUhoSTg3VW1KRnp0NU1FZXN2DQo

aHR0cHM6Ly9wYXN0ZWJpbi5jb20vbnRTNFdRY3cNCg0KVUxOTlVOVUxVVUxMVVVOTFVVVU5VVVVMVVVVVVVMTE5VTFVVTExOVUxVVVVVTlVOVVVVTFVVVVVVVUxMVUxMVVVVTExVTFVVVUxVTFVMVVVVVUxVTE5MVUxVVVVVVUxOVU5OVVVOVUxVTFVVTFVMVVVOVUxMTkxMVUxMVVVMVVVVVU5OVU5VVVVVTFVMVUxVVUxVTExVTFVMVUxMVVVVVVVMTExVTFVOVVVMVVVVVUxVVVVVTFVVTExVTFVMVUxVVVVVTFVOVUxVTFVVTExOVVVMVU5VTkxVVUxVTFVMTE5VVUxVVVVVVVVMVVVMTFVMVUxVVUxMTFVVTExMVU5VVVVOVVVVTlVMVUxVVUxVTExVTkxVTFVVTExVTExMVUxVVVVMVVVOTlVMVVVVVUxMTFVMVVVVVVVVVUxVVUxMTk5VVVVMVVVVTFVMVUxVTkxVVUxMVVVVVUxVVVVMVVVVVVVVTExVTkxVTFVOVUxVVVVVTlVVTE5VTFVVTFVMVVVMVUxVVVVVTFVVTFVMVVVVVVVMTFVVTlVVVVVMVVVVTg==

YUhSMGNITTZMeTl3WVhOMFpTNW1aV1J2Y21Gd2NtOXFaV04wTG05eVp5OXdZWE4wWlM4MmFrVkJSbWgrVEhCSVYyOHlTblpUWjBzelNXVjM=

This information is also in our robots.txt, along with a short message. Let us know if you would like to help out.
7a052a2a66201f3e146677385a255632152e133e0048

You were referred by @nbanmp (https://github.com/nbanmp/unicode-escaper/issues/1)

Well hello there. Any information on where to start?
First one is base64 but i havent been able to figure out the decoded part yet.
Second one is a pastebin of a tts recording and a cipher.
Third one is a paste that doesnt exist so i am guessing the unique link is somehow encrypted or hashed.
I saw your python script and i raise you. Your message 1 when decoded as HEX gives out a similar code to the one for the python script "7A31A37A36A40A9A"

At this point, it appears you are no longer working on this. We would still like to give you the option to refer other GitHub users that you believe are worthy. We will reach out to them and offer them the chance to help us out.
Just to be clear, the invitation has not been revoked if you complete this at a later date.

I am still working on this just been very busy. If i think of someone to refer i will post them here!

The second part gives a TTS sound and a string that contains ULN inside it. I think U is Uppercase, L is Lowercase and N is number. This should correspond with the text in the sound file to give valid base64. Problem is not all the parts of the sound file are audible. Suggestions?

We can guarantee that the challenge is solvable as-is. That said, we're not sorry about any red herrings.

"Look Hard. Who are we?" I don't know for now. We shall see

You are https://not-snc.com/ ? @N5N3778


[FEATURE] Rename UltraFeedback.for_text_quality to for_overall_quality or something similar

for_text_quality is a bit off because it's really a summary of all other aspects (truthfulness, honesty, etc.) and we're talking about response quality/alignment not general text

Fair, but weird because I saw no references to that template format, not even in the official repository at https://github.com/OpenBMB/UltraFeedback/blob/main/src/data_annotation/preference_templates.py neither on the paper.
So my question is, where does that task actually come from? Is it something we introduced but not compliant with the original definition?

This is a custom one I created that works pretty well (given our limited benchmarks). The reasoning is that the original Ultrafeedback needed to run 4 times, one for each aspect to get an overall judgement. This one I created summarizes all aspects (similar to judgelm).

Additionally, we don't need to be compliant with Ultrafeedback as it's a research work we can build upon and there are few people that really knows the details

Cool, thought it came from the paper instead and couldn't find the reference! Then we can go ahead with the change!
Should it be for_text_quality -> for_overall_quality?


Remove explicit type definitions

Per #426, drop types for variable definitions when assigning
results in test suites.
This removes type definitions for test suites that have
been synced with problem-specifications recently.

Yes! Good call.


Show progress indicator when fetching data from IPFS

Context
Currently, when you call asset.fetch you get some feedback,
"Fetching < CID >"
But there is no indication that the download is progressing.
For longer downloads, it's difficult to know if the download is continuing to download.
Ideal workflow
The user sees in terminal that there is process from 0-100%, preferably with a number telling them the total number of MB/GBs downloaded so far and how large the file is (how much longer to go).

Ready to demo during our standup


[MBO-604] Track module upgrades on Distribution API

Questions
Answers

Branch?
2.0.x

Description?
Send tracking data to Distribution API on module MBO upgrades. This is done by upgrade script when upgrading to 2.0.3 and by subcriber for any future version

Type?
new feature

BC breaks?
no

Deprecations?
no

Fixed ticket?
Fixes MBO-604

Seems great to me. Just not a big fan to throw exceptions in the UpgradeTracker, because it will display an error toaster when the user upgrade, but, in facts, the module is well upgraded.

I'll make a log instead and will not block the upgrade because of failed tracking


solutions-engineer - Anomaly detection not available in trial

When you sign up for a trial your plan defaults to Pro so the algorithm functions are not available.  The solutions-engineer candidate won't be able to complete the steps that reference anomaly detection:
Any metric from the Integration on your Database with the anomaly function applied.
Bonus Question: What is the Anomaly graph displaying?

Nevermind, the account I was looking at had been upgraded to Pro.  This may be an issue in the future.


RTL Dashboard

Summary
WebCard displays the RTL Dashboard.
Changelog
[General] [Add] - Added webcard that displays RTL dashboard
Test Plan
Test if RTL dashboard webcard displays on iOS and Android.

Failed in testing. When the issues have been resolved, please re-submit a PR.


Safely insert html into ng-bind-html

Addresses https://github.com/globaldev/angular-emoji-filter/issues/7 and https://github.com/globaldev/angular-emoji-filter/issues/6
But means we now need to depend on https://docs.angularjs.org/api/ngSanitize

@jamesallardice and @keithclark what do you think?

By using $sce.trustAsHtml doesn't this effectively behave exactly as it did before? I think a better solution is to simply use ng-bind-html (which sanitizes by default if the ngSanitize module is available) and leave it up to consumers to handle the rest (making that module available if they want to).

That means the emoji filter can never be used in a template. You will always have to do something like someString = $sce.trustAsHtml($filter("emoji")("up :dog":))