[Bug] Python Client IoTDBContainer and Example is not well behaved and IoTDBContainer will fail on Windows

Search before asking

[X] I searched in the issues and found nothing similar.

Version
Windows 11 22H2
IoTDB 1.1.0
Describe the bug and provide the minimal reproduce step
In class IoTDBContainer:
    @wait_container_is_ready()
    def _connect(self):
        session = Session(
            self.get_container_host_ip(), self.get_exposed_port(6667), "root", "root"
        )
        session.open(False)
        session.close()

get_exposed_port return a str.
Exampe use str port as well.
However, TSocket in thrift actually expect an int for port:
class TSocket(TSocketBase):
    """Socket implementation of TTransport base."""

    def __init__(self, host='localhost', port=9090, unix_socket=None,
                 socket_family=socket.AF_UNSPEC,
                 socket_keepalive=False):
        """Initialize a TSocket

        @param host(str)  The host to connect to.
        @param port(int)  The (TCP) port to connect to.
        @param unix_socket(str)  The filename of a unix socket to connect to.
                                 (host and port will be ignored.)
        @param socket_family(int)  The socket family to use with this socket.
        @param socket_keepalive(bool) enable TCP keepalive, default off.
        """

    @property
    def _address(self):
        return self._unix_socket if self._unix_socket else '%s:%d' % (self.host, self.port)
    def open(self):
        if self.handle:
            raise TTransportException(type=TTransportException.ALREADY_OPEN, message="already open")
        try:
            addrs = self._resolveAddr()
        except socket.gaierror as gai:
            msg = 'failed to resolve sockaddr for ' + str(self._address)
        ...

Note the %d here. if the self.port is a str, when resolve address fail, an unrelated error will be raised:
socket.gaierror: [Errno 11001] getaddrinfo failed

During handling of the above exception, another exception occurred:
... LONG stack trace
TypeError: %d format: a real number is required, not str

I omit stack trace here, but in fact the terminal filled with stack trace and the plausible TypeError distracted me from discover the real bug: self.get_container_host_ip() return 'localnpipe.
How to reproduce:
(on Windows)
from iotdb.IoTDBContainer import IoTDBContainer
IoTDBContainer()

What did you expect to see?

no TypeError: %d format: a real number is required, not str raised.
host should be localhost instead of localnpipe
this seems an upstream bug.
there is a workaround: set environment variable TC_HOST='localhost'

What did you see instead?
TypeError: %d format: a real number is required, not str is raised.
IoTDBContainer use localnpipe instead of localhost.
Anything else?
No response
Are you willing to submit a PR?

[ ] I'm willing to submit a PR!

BTW, python client apache-iotdb 1.1.0 cannot work with apache/iotdb:1.1.0-standalone and apache/iotdb:0.13.4-node, but can work with apache/0.12.6-node,  really strange.

BTW, @wait_container_is_ready() will not work as expected with testcontainers==3.7.1, since it doesn't capture all exception now.

Hi, this issue may not relate with the IoTDB Python client, it should be an issue of testcontainers. See https://github.com/testcontainers/testcontainers-python/issues/108 .
BTW, IoTDB Python client requires testcontainers==3.3.0, did you try this version?
https://github.com/apache/iotdb/blob/ea66fc5bee000d68bc0a93596c57c7af7d6c2e50/client-py/requirements.txt#L22

The second problem is upstream issue

host should be localhost instead of localnpipe
this seems an upstream bug.
there is a workaround: set environment variable TC_HOST='localhost'

BUT
The first problem (TypeError: %d format: a real number is required, not str) is not an issue of testcontainers.
testcontainers==3.3.0 doesn't have the first issue only because it will catch all errors, and this error won't occur on successful TSocket connection.
Even if localhost is used(i.e. second problem fixed), the first problem can be triggered when the container starting isn't fast enough.

To be clearer:
https://github.com/apache/iotdb/blob/5c20ee49d390e258e85ac4cb5124ba945492210f/client-py/iotdb/IoTDBContainer.py#L36-L38
Should be:
        session = Session(
                self.get_container_host_ip(), int(self.get_exposed_port(6667)), "root", "root"
        )

Because TSocket expect isinstance(port, int).
@param port(int)  The (TCP) port to connect to.

Is it a problem on Windows only? Because it works good on macos or linux to use a str port.

Currently I only observed the first problem triggered by the second problem(Windows only).
But in principle, any connection error, for example, the iotdb server taking too much time to start cause TSocket connection timeout, can trigger this problem, i.e. TypeError: %d format: a real number is required, not str.

any update? @HTHou


Sass import reference not working for .sass extension

VSCode Version: 1.36.1
OS Version: Linux 4.19

Steps to Reproduce:

Install bulma npm package on your local project folder
Create a .scss file witht the following:

@import "../node_modules/bulma/bulma";

Click on the import link: You will have an error trying to open a .scss file. But the file is bulma.sass.

And I suppose auto-completion from libraries files won't work either.

There's no support for sass. VS Code's sass support only support scss. You can try one of the extensions: https://marketplace.visualstudio.com/search?term=sass&target=VSCode&category=All categories&sortBy=Relevance

Any solution for this issue?


Migrate awscodecommit source to AWSCodeCommitSource type

Migrate the current awscodecommit ContainerSource to a new awscodecommits.sources.triggermesh.com custom type, with reconciler.

[x] Create Go structs and corresponding CRD
[x] Generate clients (+ listers, informers, ...) and injection code
[x] Set up controller manager entry point
[x] Add awscodecommit reconciler
[x] Use Knative's pkg/adapter in adapter
[x] Adapt Makefile
[x] Include ko support for easier development and testing
[x] Ensure the source can also be deployed as a ContainerSource

Closes #52

also this
diff --git a/scripts/release-notes.sh b/scripts/release-notes.sh
index 8f7c895..39c8f75 100755
--- a/scripts/release-notes.sh
+++ b/scripts/release-notes.sh
@@ -28,8 +28,8 @@ ${NOTABLE_CHANGES}

 Download Knative event sources for AWS ${RELEASE}

-- [awscodecommit (linux/amd64)](https://github.com/triggermesh/aws-event-sources/releases/download/${RELEASE}/awscodecommit-linux-amd64)
-- [awscodecommit (macos/amd64)](https://github.com/triggermesh/aws-event-sources/releases/download/${RELEASE}/awscodecommit-darwin-amd64)
+- [awscodecommitsource (linux/amd64)](https://github.com/triggermesh/aws-event-sources/releases/download/${RELEASE}/awscodecommitsource-linux-amd64)
+- [awscodecommitsource (macos/amd64)](https://github.com/triggermesh/aws-event-sources/releases/download/${RELEASE}/awscodecommitsource-darwin-amd64)
 - [awscognito (linux/amd64)](https://github.com/triggermesh/aws-event-sources/releases/download/${RELEASE}/awscognito-linux-amd64)
 - [awscognito (macos/amd64)](https://github.com/triggermesh/aws-event-sources/releases/download/${RELEASE}/awscognito-darwin-amd64)
 - [awsdynamodb (linux/amd64)](https://github.com/triggermesh/aws-event-sources/releases/download/${RELEASE}/awsdynamodb-linux-amd64)

also this
diff --git a/scripts/release-notes.sh b/scripts/release-notes.sh
index 8f7c895..39c8f75 100755
--- a/scripts/release-notes.sh
+++ b/scripts/release-notes.sh
@@ -28,8 +28,8 @@ ${NOTABLE_CHANGES}

 Download Knative event sources for AWS ${RELEASE}

-- [awscodecommit (linux/amd64)](https://github.com/triggermesh/aws-event-sources/releases/download/${RELEASE}/awscodecommit-linux-amd64)
-- [awscodecommit (macos/amd64)](https://github.com/triggermesh/aws-event-sources/releases/download/${RELEASE}/awscodecommit-darwin-amd64)
+- [awscodecommitsource (linux/amd64)](https://github.com/triggermesh/aws-event-sources/releases/download/${RELEASE}/awscodecommitsource-linux-amd64)
+- [awscodecommitsource (macos/amd64)](https://github.com/triggermesh/aws-event-sources/releases/download/${RELEASE}/awscodecommitsource-darwin-amd64)
 - [awscognito (linux/amd64)](https://github.com/triggermesh/aws-event-sources/releases/download/${RELEASE}/awscognito-linux-amd64)
 - [awscognito (macos/amd64)](https://github.com/triggermesh/aws-event-sources/releases/download/${RELEASE}/awscognito-darwin-amd64)
 - [awsdynamodb (linux/amd64)](https://github.com/triggermesh/aws-event-sources/releases/download/${RELEASE}/awsdynamodb-linux-amd64)

the master has changes that touches these lines. so please rebase

@sameersbn I added the requested changes in 6cfff42d5460eea5bde65236392cf9fc06d0033e.
I'll also move the codegen goals.

@antoineco  take a look at the ci tests.

Already on it, looks like I have to fix those tests in this PR already.


T07.05-Exercise-AddGuests: typo fix

Bad function name in TODO (4).
Signed-off-by: Matthieu Crapet<EMAIL_ADDRESS>

If you take this, take also PR #203.

Fixed. Thank you.


Setup requires strictly django 1.2.4

Hi,
I noticed that overseer's setup.py has a strict dependance on Django 1.2.4 ?
I do have a buildout with djangorecipe set to django 1.2.5 but the real installed django version is 1.2.4 because of the paths orders:
sys.path[0:0] = [
'/eggs/Django-1.2.4-py2.6.egg',
'/parts/django',
]

Is there any reason why install_requires in the setup.py is 'Django==1.2.4' rather than 'Django>=1.2.4' ?

+1


Audio Flags

port article Audio Flags from https://wiki.altv.mp/wiki/GTA:Audio_Flags to docs

Added https://github.com/altmp/altv-docs-gta/commit/055247bfc2b0700f17601d92c479dee1853d5d7c


there is any way put a java long to java map?

var map = new Packages.java.util.HashMap();
map.put("a", new Package.java.lang.Long(1));
map.get("a"); // return value is a Integer

Note that JavaScript does not have a good notion of types and java.util.Map.get/put() are loosely typed as well. So, it is a bit unfortunate combination. Moreover, there are no long-like numbers in JavaScript. JavaScript numbers are 64-bit floating point numbers, i.e., correspond to Java double. So, we often convert incoming long values to double or int (as fixed point arithmetic is more efficient than the floating point one). That's how your long was transformed into int.
In general, I suggest you to use some typed Java helper method if you depend on the usage of a specific type. For example, you can use something like:
Packages.somePackage.SomeClass.putLongIntoMap(map, 'a', 1);

if you have
public static void putLongIntoMap(Map map, Object key, long value) {
    map.put(key, value);
}

is somePackage.SomeClass.

is it possible provider a interface HostObjectWrapper?
interface HostObjectWrapper {
Object asHostObject();
}
class HostLongWrapper implements HostObjectWrapper {
long value;
HostLongWrapper(long value) {
this.value = value;
}
Object asHostObject() {
    return value;
}

}

Is it possible provider a interface HostObjectWrapper?

I am not sure if I understand your question. If you ask whether it is possible to use a different kind of wrapper that would be replaced with java.lang.Long when it is passed as an argument of a Java function invoked from JavaScript then the answer is: yes, you can do something like:
public class LongWrapper {
    public long value;
    public LongWrapper(long value) {
        this.value = value;
    }
}

HostAccess hostAccess = HostAccess.newBuilder(HostAccess.ALL).targetTypeMapping(LongWrapper.class, Object.class, null, wrapper -> wrapper.value).build();
Context context = Context.newBuilder("js").allowHostClassLookup(className -> true).allowHostAccess(hostAccess).build();

Map map = new HashMap();
context.getBindings("js").putMember("map", map);
context.eval("js", "map.put('a', new Packages.somePackage.LongWrapper(42))");
System.out.println(map.get("a"));
System.out.println(map.get("a").getClass());
// the output is:
// 42
// class java.lang.Long

thank you very much! it's what I want!


UnsatisfiedLinkError

Hi,
thank you for the great lib,
I have an app that has compiled libs only for armeabi and x86, whne I run it it works well and all my .so are found when needed, when I add rootbeer-lib, to my dependencies, it adds other libs (including arm64) which i don't have .so for, my app starts runing in arm64 and fails to fails to find my lib and therefore craches.
how can I tell rootbeer to only provide .so for architectures I support?
Thank you

Hey, I've had a similar issue which is down to the way Android loads native libs. For us the fix was to hassle the provider of the other native lib to support the other CPU architectures. So this issue doesn't feel like something rootbeer can or should fix.
You access to the code so you could fork and remove arm64 support and build against that.
Sorry prob not the answer you hoped for but thanks anyway for raising and using rootber.

Can I just add a workaround I've done for one of my apps that might help:
@yelhouti There is a gradle library called soexcluder which can automatically remove .so files you specify as part of the build process. You could write this as your own gradle task, but this just makes it a lot easier:
https://github.com/Jween/android-soexcluder

thanks scottyab for confirming what I suspected, and thank you stealthcopter for provising the solution I was looking for :)


error:09091064:PEM routines:PEM_read_bio_ex:bad base64 decode

Description
Token validated ok at jwt.io. Received error with .verify
Error:
code:'ERR_OSSL_PEM_BAD_BASE64_DECODE'
function:'PEM_read_bio_ex'
library:'PEM routines'
reason:'bad base64 decode'
message:'error:09091064:PEM routines:PEM_read_bio_ex:bad base64 decode'
stack:'Error: error:09091064:PEM routines:PEM_read_bio_ex:bad base64 decode\n    at Verify.verify (internal/crypto/sig.js:188:24)

Provide a clear and concise description of the issue, including what you expected to happen.

Reproduction
const jwt = require("jsonwebtoken");
var vtoken = "...";  // validated by jwt.io
var key = "...";  // value copied from jwt.io
var publickey = "-----BEGIN CERTIFICATE-----\n" + key + "\n-----END CERTIFICATE-----";
var payload= jwt.verify(vtoken, publickey, { algorithms: ['RS256'] });

Screenshots

Environment

Please provide the following:

8.5.1
VSC version: 1.63.1 (system setup)
Commit: fe719cd3e5825bf14e14182fddeb88ee8daf044f
Date: 2021-12-14T02:13:54.292Z
Electron: 13.5.2
Chromium: 91.0.4472.164
Node.js: 14.16.0
V8: 9.1.269.39-electron.0
OS: Windows_NT x64 10.0.19044

@TLKG Was this fixed? If yes, how?

@elitan Following works locally
async function getMSPublicKey(misc)
{
var vurl = "https://login.microsoftonline.com/" + misc.tenantId + "/v2.0/.well-known/openid-configuration";
const x1 = await fetch(vurl);
const x2 = await x1.json();
const x3 = await fetch(x2.jwks_uri);
const k = await x3.json();
return pkey = k.keys.find( k => k.kid === misc.kid).x5c[0];
}
var publickey = "-----BEGIN CERTIFICATE-----\n" + await getMSPublicKey(vmisc) + "\n-----END CERTIFICATE-----";
var payload = jwt.verify(theToken, publickey, { algorithms: ['RS256'] });
After deployed to AZ got "JsonWebTokenError: invalid algorithm".

Thanks. The issue I had was an incorrect key string. It was solved on my end. Thanks.

Should this issue get closed then?

try this:
async function getMSPublicKey(misc)
{
var vurl = "https://login.microsoftonline.com/" + misc.tenantId + "/v2.0/.well-known/openid-configuration";
const x1 = await fetch(vurl);
const x2 = await x1.json();
const x3 = await fetch(x2.jwks_uri);
const k = await x3.json();
return pkey = k.keys.find( k => k.kid === misc.kid).x5c[0];
}
var publickey = "-----BEGIN CERTIFICATE-----\n" + await getMSPublicKey(vmisc) + "\n-----END CERTIFICATE-----\n";
var payload = jwt.verify(theToken, publickey, { algorithms: 'RS256' });

Yeah in my case using a different library it was essentially a copy & paste error with the key


Fixes for jsaddle libs

Description of changes

Things done

Built on platform(s)

[x] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[x] aarch64-darwin

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[x] sandbox = true

[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
24.05 Release Notes (or backporting 23.05 and 23.11 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[ ] Fits CONTRIBUTING.md.

Add a :+1: reaction to pull requests you find important.

This entry also looks outdated
https://github.com/NixOS/nixpkgs/blob/a99ef0a8ddc10b8ad9a0da32cf1fad7d19b08a1b/pkgs/development/haskell-modules/configuration-hackage2nix/main.yaml#L845

This entry also looks outdated
https://github.com/NixOS/nixpkgs/blob/a99ef0a8ddc10b8ad9a0da32cf1fad7d19b08a1b/pkgs/development/haskell-modules/configuration-hackage2nix/main.yaml#L845

Is it? jsaddle-webkitgtk2 works. But did the jsaddle-webkitgtk library ever get migrated to a not-deprecated dependency?
If you can get it to build when you remove it from that block list: Sure, let’s go ahead.

I be blind, hadn't noticed this one doesn't have the 2

I really should practice giving all my feedback at once, but what you mind prefixing your commit messages with haskellPackages. ?

Done. I somehow missed that here even though I've been doing it in other PRs.


STS Boot Dashboard compatible deployment manifests

Github is showing conflicts. Maybe you can rebase and re-submit?


Crashing on Android

进行 flutter build apk后  安装真机出现崩溃问题
#19 相同的错误

是和混淆有关？我打正式包也crash

@q200892907 @lylelqc 用readme最下面note命令打包看看

Could not determine the dependencies of task ':app:lintVitalRelease'.

Could not resolve all artifacts for configuration ':app:debugCompileClasspath'.
Could not resolve io.flutter:armeabi_v7a_debug:1.0.0-4c8c31f591882b3c668992d2e9da761118899f38.
Required by:
project :app
Could not resolve io.flutter:armeabi_v7a_debug:1.0.0-4c8c31f591882b3c668992d2e9da761118899f38.
Could not get resource 'https://storage.googleapis.com/download.flutter.io/io/flutter/armeabi_v7a_debug/1.0.0-4c8c31f591882b3c668992d2e9da761118899f38/armeabi_v7a_debug-1.0.0-4c8c31f591882b3c6689
92d2e9da761118899f38.pom'.
Could not GET 'https://storage.googleapis.com/download.flutter.io/io/flutter/armeabi_v7a_debug/1.0.0-4c8c31f591882b3c668992d2e9da761118899f38/armeabi_v7a_debug-1.0.0-4c8c31f591882b3c668992d2e9
da761118899f38.pom'.
Connect to storage.googleapis.com:443 [storage.googleapis.com/<IP_ADDRESS>] failed: Connection timed out: connect
Could not resolve io.flutter:armeabi_v7a_debug:1.0.0-4c8c31f591882b3c668992d2e9da761118899f38.
Could not get resource 'https://storage.googleapis.com/download.flutter.io/io/flutter/armeabi_v7a_debug/1.0.0-4c8c31f591882b3c668992d2e9da761118899f38/armeabi_v7a_debug-1.0.0-4c8c31f591882b3c6689
92d2e9da761118899f38.pom'.
Could not GET 'https://storage.googleapis.com/download.flutter.io/io/flutter/armeabi_v7a_debug/1.0.0-4c8c31f591882b3c668992d2e9da761118899f38/armeabi_v7a_debug-1.0.0-4c8c31f591882b3c668992d2e9
da761118899f38.pom'.
Connect to storage.googleapis.com:443 [storage.googleapis.com/<IP_ADDRESS>] failed: Connection timed out: connect
Could not resolve io.flutter:armeabi_v7a_debug:1.0.0-4c8c31f591882b3c668992d2e9da761118899f38.
Could not get resource 'https://storage.googleapis.com/download.flutter.io/io/flutter/armeabi_v7a_debug/1.0.0-4c8c31f591882b3c668992d2e9da761118899f38/armeabi_v7a_debug-1.0.0-4c8c31f591882b3c6689
92d2e9da761118899f38.pom'.
Could not GET 'https://storage.googleapis.com/download.flutter.io/io/flutter/armeabi_v7a_debug/1.0.0-4c8c31f591882b3c668992d2e9da761118899f38/armeabi_v7a_debug-1.0.0-4c8c31f591882b3c668992d2e9
da761118899f38.pom'.
Connect to storage.googleapis.com:443 [storage.googleapis.com/<IP_ADDRESS>] failed: Connection timed out: connect

是没有合理上网吗 @qq326646683

@lylelqc 看上去是的，我没遇到过，之前也没人向我反馈过

@lylelqc 确认翻q后，在终端也启动下就行：
export http_proxy=http://<IP_ADDRESS>:1087
export https_proxy=http://<IP_ADDRESS>:1087
测试
curl www.google.com

用的windows系统，有点懵。。

@lylelqc 确认翻q后，在终端也启动下就行：
export http_proxy=http://<IP_ADDRESS>:1087
export https_proxy=http://<IP_ADDRESS>:1087
测试
curl www.google.com

用的windows系统，有点懵


One minute example: upload

The example "One minute example: upload" doesn't work for release 4.1.4 (current vraptor release).
Method writeTo is unavailable.
public void atualizaFoto(Perfil perfil, UploadedFile foto) {
    File fotoSalva = new File("/path/to/file/repository", foto.getFileName());
    foto.writeTo(fotoSalva);
    dao.atribui(fotoSalva, perfil);
}

Link: http://www.vraptor.org/en/docs/download-and-upload/

Taking a look at #883, it's targeted to 4.2, currently vraptor version is 4.2.0-RC2. :smiley:

Yep. This occurs because we can't versioning published docs at this time.

@dobau 4.2 will be released very soon!

That issue made me rethink about some questions...
1 - Do you recommend to use the candidate version, same in production?
2 - Do we can to version the documentation? Because have things works in a version but not in other, "One minute example" is a exemple.
3 - Becasuse the version 4.1.4 is final so I decides use it. Theoretically it's more stable than one candidate, and it is usually what happens with other frameworks as hibernate.

(PT)
Essa issue me fez repensar algumas questões...
1 - Vocês recomendam utilizar a versão candidate, mesmo em produção?
2 - Não podemos versionar a documentação? Tem coisas que funcionam em uma versão e não em outra, o "One minute example" é um exemplo.
3 - Como a versão 4.1.4 é a final decidi utilizá-la, pois teoricamente é mais estável que uma candidate, geralmente é o que acontece com outros frameworks, correto?

I have a large app that runs a customized version of vraptor based on master branch: https://github.com/garcia-jj/vraptor4/commits/ot-julia-2.1. And I have no problems. The idea is using untested features in this app to use in my contributions to vraptor team. If you feel free to test some unstable feature, you can use without any problem. But if you prefer to use stable versions, don't use RC.

In the past, when I contributed to docs, I used texts like 'If you are using version 4.1.2 you can enable blah blah blah'. Or something like this. Versioning docs are not too easy as I know.

Like the 2st question. I love to use unreleased versions in my personal project, because is an opportunity  to get bugs to contribute to the projects I use.

About the first question I agree with your point of view @garcia-jj, but try to convince a project owner of that.
About the another is OK too.
For me that question is answered :smile:

Thank you.


Use opt-in config words instead of opt-out words like 'exclude'

Originally a sub-issue of #2833
Quote from original issue:
(regarding the detekt config YAML)

[...] excluding processors / reports sounds like any new future processors/reports are enabled by default, unless explicitly excluded. This might introduce unnecessary processing / reporting after users upgrade detekt, which may negatively affect them (e.g. they might suddenly see reports on CI while they don't want that). It might make more sense to, instead, explicitly enable certain processors / console reports. That way it feels more like you actually configure what detekt does, instead of what it doesn't do. It's counterintuitive to comment a line to enable it.

Suggestions

Allow the detekt config YAML to use words like include or enable (wherever which makes sense) to opt-in to certain features.
The default generated detekt config uses the opt-in words, instead of the opt-out words.

And, but this is more meta (so this issue can be closed when the above suggestions have been considered and/or implemented):

Any new detekt features (e.g. processors/reports) are, if enabled by default, evaluated for compatibility with the current detekt version, and described appropriately with documentation and a version number change that reflects the (forward/backward/in-) compatibility (if this project uses semver.

This issue is stale because it has been open 90 days with no activity. Please comment or this will be closed in 7 days.


Allow explicitly unleveled documents.

Currently, Bikeshed includes a level along with the shortname when generating
links for certain classes of documents. Based on the conversation at
https://lists.w3.org/Archives/Public/spec-prod/2016AprJun/0005.html, there are
at least some groups producing documents without levels which Bikeshed believes
ought to have levels. This patch allows those documents to explicitly note
that they are unleveled.

WDYT, @tabatkins?

So basically you can put in whatever you want in the level field, as long as it's not numeric, and it'll consider you "unlevelled"?  I think I'd prefer blessing a term (like "none") so we don't squat on too much syntax space in the future.

Feel free to make HierarchicalNumber handle this; you can add a nonzero() method to it to just make it falsey in that case, and then simplify the check in vshortname to just check for truthiness.

Wrote it myself, closing this.


implementation of md:container would be helpfull

Hey guys, whilst working with tailwindcss a came across this issue/missing feature:
implementation of the .container with screen-size conditional prefixes like md:container to enable the .container class only on screens bigger than that corresponding screen size.
Now I've implemented this with md:max-w-screen-md lg:max-w-screen-lg xl:max-w-screen-xl which is not that obvious and intuitive as implementing it with the screen prefixes on other classes.
Nevertheless, thanks for the awesome tailwindcss.
Cheers.

You can customize the max widths in the config. Unfortunately it is not documented (I'll create a PR for it).
module.exports = {
    theme: {
        extend: {
            container: {
                screens: {
                    xs: '100%',
                    xl: '1280px',
                },
            },
        },
    },
};

But wouldn’t it be awesome, if the responsive prefixes (sm:, md:, etc.) would work with the container class?

It doesn't really make sense since it's not a utility but a component. Container defines multiple breakpoints. More info: https://tailwindcss.com/docs/container.

But wouldn’t it be awesome, if the responsive prefixes (sm:, md:, etc.) would work with the container class?

The syntax you're proposing is actually valid syntax and would be considered a breaking change. I think you'd be looking for something like container-md as opposed to md:container. The latter is saying only apply the .container styles on screen sizes md & greater.

for reference #1520


API reference doesn't show members for .Net Standard types not referenced from NETStandard.Library

For types that have .Net Standard packages, but are not part of NETStandard.Library, it seems the new API reference behaves as if those types did not have .Net Standard versions at all (i.e. it hides all their members).
For example, this happens for XmlNode (the URL says netstandard-1.6, but it seems it changes to netframework-4.7 on its own, so you have to use the dropdown to see it), which exists in the System.Xml.XmlDocument package, which has a version for .Net Standard 1.3.
I think for such types, their .Net Standard version should be shown.
https://apisof.net/ has a very similar issue (https://github.com/terrajobst/apisof.net/issues/2), which could be related.

@dend can you look at this? It seems that selecting .NET standard is not sticky.

@svick I know this is way older than #3132, but they seem to be regarding the same issue. Is it ok to close this and track that issue on that one?

@mairaw Of course. If it was up to me, I would probably choose the older issue or the more general one and this is both. But it's not. 🙂

Yes, that's usually my approach. It's just we got the attention of the dev team on that one, so it will help move things. I'll make that one more generic. Thanks for your understanding.

Reopening this one. The WCF one will be handled differently.


Determine whether styles can be moved from /app to /addon folder

This comment and the one below it: https://github.com/ember-cli/ember-cli/issues/3073#issuecomment-71324258

On the same topic, but older https://github.com/ember-cli/ember-cli/issues/1853

This will work with regular .css files but doesn't seem to work with .less files. Maybe there is another way to accomplish this.

This user rwwagner90 in this thread is experiencing the same issue I am talking about https://github.com/ember-cli/ember-cli/issues/3490.


Please add support for fapdungeon.com [massive onlyfans rip site]

Please add support for fapdungeon.com
it has a massive onlyfans library and it's a pain in the ass to dl images and videos there one by one
tried bulk image downloader but it also downloads the lower quality duplicates of each pic which makes it harder to organize

Bloquear automáticamente


Added onscroll active navbar

Pull request for Issue #157

Please provide the gif or video here as well @christusdsouza .

Preview for issue #157

Great @christusdsouza , Thanks for making us more better. Happy Coding ♥.
Don't forget to join us on our Discord Server for more opportunities.


Suggestion: pcradjust plugin "--reallocate" option

Hi @lelegard  ,
Regarding the problem commented in #370 , I have another question to obtain a compliant TS: the PCR interval. The issue is not the same, so I comment on it separately.
When using the pcradjust plugin the PCR marks are correct. However, the interval in which they appear may be outside the specifications. This problem appears more frequently when doing a mux processing. Then I suggest to add a new option inside the pcradjust plugin:

-P pcradjust --reallocate [interval,offset]: This option intends to set the PCR marks at the specified [interval] with a maximum [±offset]. Both are optional, with default values (i.e. interval=50ms and offset=5ms).

The purpose of the interval value is self-explanatory. However, the offset value is more complicated. When reallocating the PCR marks, you can found three casuistics:

A packet with a PCR mark is inside the interval±offset. In this case nothing needs to be changed (except the recalculation of the PCR).
A packet with a PCR mark is outside the interval±offset. In this case the PCR mark needs to be removed (now some code inside the library already exists to clear the PCR without changing the payload).
Inside the interval±offset no PCR marks exist. In this case an new TS packet is required for the same pid, without payload, and with the PCR only. Here the offset is useful, as you can start to search for a null packet inside the interval pointed by the offset for a suitable null packet.

What you think about this idea? Does it make sense? Do you think it's possible to incorporate it?
As usual I only have words of appreciation for your excellent contribution to this project.
Regards.

Hi @lelegard ,
Any idea to achieve this objective?
Thank you!

This is a superset of #352, isn't it?

Removing a PCR can occur only when the interval with the previous one (possibly one we added) is less than the minimum.
Removing a PCR looks dangerous to me because there is still a risk that there is no way to add a new PCR later (no stuffing). In that case, we create a hole, a larger interval between two PCR's, which is worse than keeping a PCR which appears too soon.
Similarly, there is a risk to remove a PCR in a packet which is the start of a PES packet with PTS/DTS. It is a pity to loose precise synchronization between PCR and PTS/DTS.
I would only add new PCR's when the interval is too large and there is available stuffing.
So, in fact, we are back to #352.

I have implemented #352 (adding missing PCR below a certain interval). I do not plan to remove PCR which are too close. The risks are greater than the advantages (if there is any).

Version 3.18 has been released.

I have implemented #352 (adding missing PCR below a certain interval). I do not plan to remove PCR which are too close. The risks are greater than the advantages (if there is any).

Thank you! Works flawlessly. :wink:


npm install Sliderbars - not working

As per the install guide on the downloads page.
Command results in the following error:
npm ERR! code E404
npm ERR! 404 Registry returned 404 for GET on https://registry.npmjs.org/Sliderbars
npm ERR! 404
npm ERR! 404  'Sliderbars' is not in the npm registry.
npm ERR! 404 Your package name is not valid, because
npm ERR! 404  1. name can no longer contain capital letters
npm ERR! 404
npm ERR! 404 Note that you can also install from a
npm ERR! 404 tarball, folder, http url, or git url.
Seems a user would need to download the file and unzip to the folder they're running npm from to install it  using npm, or your registration with npm isn't working.

I've just installed Sliderbars through NPM ($ npm install -savedev Slidebars) and did not get this error.

You've got a typo in there that's causing this, Sliderbars.


Performance and Memory footprint for template loading

It seems like the memory footprint for loaded templates is massive. This needs investigation. Hopefully there should be something relatively obvious we can do to fix that.
To test:

compile acceptance and delivery and late delivery and penalty using cicero archive --target cicero
Run the following script in ./cicero-template-library/src (after renaming it to ./test.js)

test.txt
Here is a trace:
bash-3.2$ time node test.js
Before loading: The script uses approximately 38.38 MB
zip: 5.576ms
metadata: 11.002ms
cto: 35.277ms
grammar: 158.946ms
logic: 74.443ms
validate: 65.834ms
zip: 1.491ms
metadata: 1.340ms
cto: 20.198ms
grammar: 135.946ms
logic: 37.735ms
validate: 19.230ms
Acceptance of Delivery 0
The script uses approximately 102.81 MB
zip: 0.621ms
metadata: 21.071ms
cto: 28.153ms
grammar: 114.279ms
logic: 36.523ms
validate: 23.918ms
Acceptance of Delivery 1
The script uses approximately 102.14 MB
zip: 0.757ms
metadata: 1.350ms
cto: 10.520ms
grammar: 108.249ms
logic: 40.786ms
validate: 16.833ms
Acceptance of Delivery 2
The script uses approximately 101.92 MB
zip: 0.872ms
metadata: 1.518ms
cto: 11.975ms
grammar: 66.783ms
logic: 41.957ms
validate: 42.537ms
zip: 0.740ms
metadata: 1.574ms
cto: 8.420ms
grammar: 49.798ms
logic: 34.806ms
validate: 45.700ms
Late Delivery and Penalty 0
The script uses approximately 195.89 MB
zip: 0.749ms
metadata: 29.034ms
cto: 12.926ms
grammar: 61.135ms
logic: 30.156ms
validate: 31.824ms
Late Delivery and Penalty 1
The script uses approximately 119.18 MB
zip: 1.022ms
metadata: 1.546ms
cto: 12.700ms
grammar: 58.169ms
logic: 78.918ms
validate: 30.166ms
Late Delivery and Penalty 2
The script uses approximately 116.8 MB
After run: The script uses approximately 116.8 MB
node test.js  3.68s user 0.29s system 167% cpu 2.363 total

Some initial findings:

The large memory usage appears to be due to storing the grammarAst in the parserManager.
It's possible that our grammar could be optimized to reduce the size of this
Removing this.grammarAst and compiling and creating the parser on demand reduces the memory requirement for each template by ~50MB (needs thorough analysis to confirm figures)
The performance overhead of compiling and creating the parser on demand is negligible ~1ms

    /**
     * Gets a parser object for this template
     * @return {object} the parser for this template
     */
    getParser() {
        return new nearley.Parser(ParserManager.compileGrammar(this.grammar));
    }

Update: I must have done something wrong in my original test, that compilation overhead was suspiciously low. Here are some slightly more rigorous test outputs.
Average computation time for Clause.parse averaged across 100 sequential test runs:

Parser Type
Template
Parse Time

Compiled on demand
Acceptance of Delivery
104.3ms

Compiled on demand
Late Delivery and Penalty
47.6ms

Precompiled
Acceptance of Delivery
5.3ms

Precompiled
Late Delivery and Penalty
3.7ms

Precompiled is the current default behaviour, Compiled on demand uses the alternative implementation of getParser from above.

New parser showing promises for addressing the parser side of this problem. Pointers and details in #547

A quick memory snapshot comparing the old and the new parser.
Old:

Trace:
bash-3.2$ node test.js
Before loading: The script uses approximately 46.93 MB
During run: The script uses approximately 79.07 MB
PARSED {"$class":"org.accordproject.volumediscount.VolumeDiscountContract","contractId":"0f6678a4-2fd7-4d08-8808-5024e3e2b108","firstVolume":1,"secondVolume":10,"firstRate":3,"secondRate":2.9,"thirdRate":2.8}
Average time:  6.498220708370209
After run: The script uses approximately 59.03 MB
After run: The script uses approximately 59.19 MB
During run: The script uses approximately 112.81 MB
PARSED {"$class":"org.accordproject.volumediscount.VolumeDiscountContract","contractId":"d1798965-1500-4975-b0bd-92a7d3ab31ab","firstVolume":1,"secondVolume":10,"firstRate":3,"secondRate":2.9,"thirdRate":2.8}
Average time:  7.607243008613587
After run: The script uses approximately 62.77 MB

New:

Trace:
bash-3.2$ node test.js
Before loading: The script uses approximately 55.42 MB
During run: The script uses approximately 89 MB
PARSED {"$class":"org.accordproject.volumediscount.VolumeDiscountContract","firstVolume":1,"secondVolume":10,"firstRate":3,"secondRate":2.9,"thirdRate":2.8,"contractId":"9934bc09-7bc0-4d20-959a-fecca8bcecd7"}
Average time:  11.38540657043457
After run: The script uses approximately 60.36 MB
After run: The script uses approximately 60.44 MB
During run: The script uses approximately 83.99 MB
PARSED {"$class":"org.accordproject.volumediscount.VolumeDiscountContract","firstVolume":1,"secondVolume":10,"firstRate":3,"secondRate":2.9,"thirdRate":2.8,"contractId":"caa73b83-b52a-42d5-8809-79e5a93822a2"}
Average time:  10.471894514560699
After run: The script uses approximately 59.5 MB

Test script:
test.txt

@mttrbrts Now that Cicero 0.21 is out, it would be worth running those benchmarks again. I hope the new parser will result in some improvements to the memory footprint.
Some preliminary tests (outside Cicero, on the parser itself) can be found at https://github.com/accordproject/cicero/issues/547#issuecomment-618684746

Data

Trace:
➜  cicero-perf node test.js
Before loading: The script uses approximately 40.1 MB
During run: The script uses approximately 79.3 MB
PARSED {"$class":"org.accordproject.volumediscount.VolumeDiscountContract","firstVolume":1,"secondVolume":10,"firstRate":3,"secondRate":2.9,"thirdRate":2.8,"contractId":"b7387760-732e-4dbd-b2f9-14589a48838b"}
Average time:  8.047086201310158
After run: The script uses approximately 55.38 MB
After run: The script uses approximately 55.46 MB
During run: The script uses approximately 84.88 MB
PARSED {"$class":"org.accordproject.volumediscount.VolumeDiscountContract","firstVolume":1,"secondVolume":10,"firstRate":3,"secondRate":2.9,"thirdRate":2.8,"contractId":"a4b344d7-f535-4cea-a22a-d65342dad328"}
Average time:  7.19361614972353
After run: The script uses approximately 55.79 MB

Provisional Analysis
Performance averaged across 100 runs remains constant between Cicero v0.20 and v0.21. Both demonstrate good throughput with sub 10ms parsing time, excluding file loading.
I'm reluctant to make a generalisation on memory utilization without further analysis. Anecdotally, it appears that parsing a template requires an additional ~30MB for this template in 0.21, compared to the ~50MB with 0.20


Add missing await in AioHttpIntegration.

The replaced _handle method of aiohttp.web.Application is a coroutine
itself. So it has to await the call to the original handle otherwise its
never awaited.
This fixes #260
Signed-off-by: Jan Losinski<EMAIL_ADDRESS>

I admit I don't understand the async story in Python. I assumed directly returning a coroutine in an async function would be equivalent.
Could you write a test for this? You should be able to do this:
init(integrations=[AioHttpIntegration()])
init()

and copy the rest from an existing test.

Codecov Report

Merging #261 into master will decrease coverage by 14.61%.
The diff coverage is n/a.

@@             Coverage Diff             @@
##           master     #261       +/-   ##
===========================================
- Coverage   81.74%   67.13%   -14.62%
===========================================
  Files          32       29        -3
  Lines        2750     2446      -304
  Branches      444      406       -38
===========================================
- Hits         2248     1642      -606
- Misses        340      668      +328
+ Partials      162      136       -26

Impacted Files
Coverage Δ

sentry_sdk/integrations/celery.py
0% <0%> (-90.33%)
:arrow_down:

sentry_sdk/integrations/pyramid.py
0% <0%> (-85.57%)
:arrow_down:

sentry_sdk/integrations/rq.py
0% <0%> (-80%)
:arrow_down:

sentry_sdk/integrations/flask.py
0% <0%> (-77.89%)
:arrow_down:

sentry_sdk/_compat.py
53.33% <0%> (-26.67%)
:arrow_down:

sentry_sdk/integrations/aws_lambda.py
0% <0%> (-19.63%)
:arrow_down:

sentry_sdk/integrations/_wsgi_common.py
70% <0%> (-12.86%)
:arrow_down:

sentry_sdk/integrations/dedupe.py
89.47% <0%> (-10.53%)
:arrow_down:

sentry_sdk/integrations/logging.py
79.76% <0%> (-8.48%)
:arrow_down:

sentry_sdk/scope.py
76.85% <0%> (-7.27%)
:arrow_down:

... and 17 more

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 3f9d748...e100d1f. Read the comment docs.

The problem is, that if you call a Coroutine (something with async def) you get a coroutine object back. To get the actual return (or exception or whatever is the result of the coroutine) you need to await it. So returning a coroutine from a coroutine (without the await inside) means, that you need to write await twice.

nvm, yes, brainfart. I think I was too much in Rust's async support where using a bare return means you would have to return an actual future.

Btw, urllib3 and certifi seems to be missing in the test requirements

I assume you did this:
pip install -r test-requirements.txt
while I usually do this in addition:
pip install -e .

try this: sh scripts/runtox.sh aiohttp
There are a lot of "optional test requirements" because some things don't work in certain python versions.

There is now a unittest that fails without the fix and works with it :)

Awesome, thanks!


KAFKA-16953; Properly implement the sending of DescribeQuorumResponse

This handles V2 of the DescribeQuorum protocol to support KIP-853
Committer Checklist (excluded from commit message)

[ ] Verify design and implementation
[ ] Verify test coverage and CI build status
[ ] Verify documentation (including upgrade notes)

Looks like another tab character snuck in. Going to push a commit to fix the build

@ahuang98 There are failures in the MetadataQuorumCommandTest suite.


Build errors on ubuntu 20.04 LTS

Hey, I was able to successfully build on my M1 MacOS, but not on Ubuntu 20.04 LTS, here's the error message I get:
[81/202] Generating codon_rules.cpp
Generating grammar from /home/nick/codon/codon/parser/peg/grammar.peg
[82/202] Building CXX object CMakeFiles/codonc.dir/codon/parser/ast/stmt.cpp.o
FAILED: CMakeFiles/codonc.dir/codon/parser/ast/stmt.cpp.o
/usr/bin/clang++  -DCODON_JUPYTER -DGUID_LIBUUID -DJSON_DIAGNOSTICS=0 -DJSON_USE_IMPLICIT_CONVERSIONS=1 -DXEUS_STATIC_LIB -DZMQ_STATIC -Dcodonc_EXPORTS -I../. -I_deps/peglib-src -I_deps/toml-src/include -I_deps/semver-src/include -I_deps/xeus-src/include -I_deps/cppzmq-src -I_deps/libzmq-src/include -I_deps/libzmq-build -I_deps/json-src/single_include -I_deps/xtl-src/include -I_deps/fmt-src/include -pedantic -fvisibility-inlines-hidden -Wno-return-type-c-linkage -Wno-gnu-zero-variadic-macro-arguments -Wno-deprecated-declarations -O3 -fPIC   -D_GNU_SOURCE -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -pthread -std=gnu++17 -MD -MT CMakeFiles/codonc.dir/codon/parser/ast/stmt.cpp.o -MF CMakeFiles/codonc.dir/codon/parser/ast/stmt.cpp.o.d -o CMakeFiles/codonc.dir/codon/parser/ast/stmt.cpp.o -c ../codon/parser/ast/stmt.cpp
In file included from ../codon/parser/ast/stmt.cpp:3:
In file included from .././codon/parser/ast/stmt.h:10:
In file included from .././codon/parser/ast/expr.h:11:
In file included from .././codon/parser/ast/types.h:5:
In file included from .././codon/parser/ast/types/class.h:10:
In file included from .././codon/parser/ast/types/type.h:11:
In file included from .././codon/parser/common.h:17:
In file included from .././codon/util/common.h:14:
.././codon/compiler/error.h:496:74: error: missing default argument on parameter 'args'
void E(Error e, const codon::SrcInfo &o = codon::SrcInfo(), const TA &...args) {
                                                                         ^
.././codon/util/common.h:146:3: note: in instantiation of function template specialization 'codon::error::E<std::__cxx11::basic_string<char> >' requested here
  E(e, o.getSrcInfo(), args...);
  ^
../codon/parser/ast/stmt.cpp:389:7: note: in instantiation of function template specialization 'codon::E<std::__cxx11::basic_string<char> >' requested here
      E(Error::FN_ARG_TWICE, a, n);
      ^
In file included from ../codon/parser/ast/stmt.cpp:3:
In file included from .././codon/parser/ast/stmt.h:10:
In file included from .././codon/parser/ast/expr.h:11:
In file included from .././codon/parser/ast/types.h:5:
In file included from .././codon/parser/ast/types/class.h:10:
In file included from .././codon/parser/ast/types/type.h:11:
In file included from .././codon/parser/common.h:17:
In file included from .././codon/util/common.h:14:
.././codon/compiler/error.h:496:74: error: missing default argument on parameter 'args'
void E(Error e, const codon::SrcInfo &o = codon::SrcInfo(), const TA &...args) {
                                                                         ^
.././codon/util/common.h:142:3: note: in instantiation of function template specialization 'codon::error::E<char [10], std::__cxx11::basic_string<char> >' requested here
  E(e, o->getSrcInfo(), args...);
  ^
../codon/parser/ast/stmt.cpp:566:9: note: in instantiation of function template specialization 'codon::E<char [10], std::__cxx11::basic_string<char> >' requested here
        E(Error::CLASS_CONFLICT_DECORATOR, c, "dataclass", Attr::Tuple);
        ^
In file included from ../codon/parser/ast/stmt.cpp:3:
In file included from .././codon/parser/ast/stmt.h:10:
In file included from .././codon/parser/ast/expr.h:11:
In file included from .././codon/parser/ast/types.h:5:
In file included from .././codon/parser/ast/types/class.h:10:
In file included from .././codon/parser/ast/types/type.h:11:
In file included from .././codon/parser/common.h:17:
In file included from .././codon/util/common.h:14:
.././codon/compiler/error.h:496:74: error: missing default argument on parameter 'args'
void E(Error e, const codon::SrcInfo &o = codon::SrcInfo(), const TA &...args) {
                                                                         ^
3 errors generated.
[95/202] Building CXX object CMakeFiles/codonc.dir/codon/compiler/jit.cpp.o
ninja: build stopped: subcommand failed.

Here are my commands:
sudo apt update
sudo apt install clang build-essential cmake gcc libssl-dev libsodium-dev uuid-dev
export OPENSSL_ROOT_DIR=/path/to/openssl
# for linux
export sodium_LIBRARY_RELEASE=/usr/lib/x86_64-linux-gnu/libsodium.so
export sodium_INCLUDE_DIR=/usr/include

cmake -S . -B build -G Ninja \
    -DCMAKE_BUILD_TYPE=Release \
    -DLLVM_DIR=$(llvm-config --cmakedir) \
    -DCMAKE_C_COMPILER=clang \
    -DCMAKE_CXX_COMPILER=clang++ \
    -DCODON_JUPYTER=ON
cmake --build build --config Release

It errors on the "cmake --build build --config Release " line

Hi @NickDatLe : which clang version are you using?
Also: you will need our LLVM for this to work. Please see https://github.com/exaloop/codon/blob/develop/scripts/Dockerfile.llvm-build for details (https://github.com/exaloop/codon/blob/develop/scripts/Dockerfile.codon-build might also be useful).

I decided to just use the prebuilt binaries and wait for jupyter support when they're built into linux. I'm doing fine with the macos build that I have.
Thanks!

On the Ubuntu 12.04 platform:
Install clang-12 can solve the issue of missing default argument on parameter 'args'.
Here is the complete command I used that worked for me:
sudo apt-get install clang-12 libxml2-dev libsodium-dev uuid-dev
cmake -S . -B build -G Ninja \
    -DCMAKE_BUILD_TYPE=Release \
    -DLLVM_DIR=$(llvm-config --cmakedir) \
    -DCMAKE_C_COMPILER=clang-12 \
    -DCMAKE_CXX_COMPILER=clang++-12 \
    -DCODON_JUPYTER=ON
cmake --build build --config Release

Have a good day!

To get codon to support Jupyter on Ubuntu 20.04, include the -DXEUS_USE_DYNAMIC_UUID=ON option in your CMake command. So the updated command is:
cmake -S . -B build -G Ninja \
    -DCMAKE_BUILD_TYPE=Release \
    -DLLVM_DIR=$(llvm-config --cmakedir) \
    -DCMAKE_C_COMPILER=clang-12 \
    -DCMAKE_CXX_COMPILER=clang++-12 \
    -DCODON_JUPYTER=ON \
    -DXEUS_USE_DYNAMIC_UUID=ON

Additionally, to fix the patch command error in build/_deps/xeus-src/CMakeLists.txt on Ubuntu 20.04, you'll need to replace the content in cmake/xeus.patch with the following modified content that differs only in the spacing.
It appears that the patch command on Ubuntu 20.04 was unsuccessful in patching the 'CMakeLists.txt' file due to a whitespace issue.
--- build/_deps/xeus-src/CMakeLists.txt.orig	2022-10-12 18:38:44.000000000 -0700
+++ build/_deps/xeus-src/CMakeLists.txt	2022-10-12 19:55:16.000000000 -0700
@@ -53,6 +53,7 @@ option(XEUS_BUILD_SHARED_LIBS "Build xeus shared library." ON)
 option(XEUS_BUILD_STATIC_LIBS "Build xeus static library (default if BUILD_SHARED_LIBS is OFF)." ON)
 option(XEUS_STATIC_DEPENDENCIES "link statically with xeus dependencies" OFF)
 option(XEUS_EMSCRIPTEN_WASM_BUILD  "build for wasm via emscripten" OFF)
+option(XEUS_USE_DYNAMIC_UUID  "use dynamic linking for libuuid" OFF)

 # Test options
 option(XEUS_BUILD_TESTS "xeus test suite" OFF)
@@ -85,6 +86,7 @@ message(STATUS "XEUS_BUILD_SHARED_LIBS:     ${XEUS_BUILD_SHARED_LIBS}")
 message(STATUS "XEUS_BUILD_STATIC_LIBS:     ${XEUS_BUILD_STATIC_LIBS}")
 message(STATUS "XEUS_STATIC_DEPENDENCIES:   ${XEUS_STATIC_DEPENDENCIES}")
 message(STATUS "XEUS_EMSCRIPTEN_WASM_BUILD: ${XEUS_EMSCRIPTEN_WASM_BUILD}")
+message(STATUS "XEUS_USE_DYNAMIC_UUID:      ${XEUS_USE_DYNAMIC_UUID}")

 # Dependencies
 # ============
@@ -310,13 +312,15 @@ macro(xeus_create_target target_name linkage output_name)
         if (APPLE)
             target_link_libraries(${target_name} PUBLIC "-framework CoreFoundation")
         else ()
-            if (XEUS_STATIC_DEPENDENCIES)
+            if ((NOT XEUS_USE_DYNAMIC_UUID) AND (XEUS_STATIC_DEPENDENCIES))
+                message(STATUS "static libuuid linking")
                 find_path(LIBUUID_INCLUDE_DIR uuid.h PATH_SUFFIXES uuid)
                 find_library(LIBUUID_LIBRARY libuuid.a)
                 target_include_directories(${target_name} PRIVATE ${LIBUUID_INCLUDE_DIR})
                 target_link_libraries(${target_name} PUBLIC ${LIBUUID_LIBRARY})
                 target_link_libraries(${target_name} PUBLIC ${sodium_LIBRARY_RELEASE})
             else ()
+                message(STATUS "dynamic libuuid linking")
                 find_package(LibUUID REQUIRED)
                 target_link_libraries(${target_name} PUBLIC LibUUID::LibUUID)
             endif ()
@@ -362,8 +366,6 @@ macro(xeus_create_target target_name linkage output_name)
         CMAKE_CXX_COMPILER_ID MATCHES "GNU" OR
         CMAKE_CXX_COMPILER_ID MATCHES "Intel")

-        target_compile_options(${target_name} PUBLIC -Wunused-parameter -Wextra -Wreorder)
-
         if (NOT XEUS_DISABLE_ARCH_NATIVE)
             target_compile_options(${target_name} PUBLIC -march=native)
         endif ()

Otherwise, you will encounter the following error:
/usr/bin/ld: /usr/lib/x86_64-linux-gnu/libuuid.a(libuuid_la-randutils.o): relocation R_X86_64_TPOFF32 against `ul_jrand_seed' can not be used when making a shared object; recompile with -fPIC

clang: error: linker command failed with exit code 1 (use -v to see invocation)

ninja: build stopped: subcommand failed.


Implementation of redux-persist with react-slingshot

Is your feature request related to a problem? Please describe.
To persist the data in the store that will hold it even after page reloads.
Describe the solution you'd like
I  want to persist the data in the store came from the API calls using redux and thunk on app load. for that, I want to integrate redux-persist.
Describe alternatives you've considered
No any.
Additional context
want to use this but I can't.
https://www.npmjs.com/package/redux-persist

What is stopping you from using redux-persist?

too complex to integrate redux-persist into configureStore, and getting issues after one another.

i have done with it. thanks

@coryhouse can I open the PR for this thing if you guys find this helpful? Otherwise I have to close this issue. Thanks

Glad to hear you got it working. No need for a PR, but thanks!


[Format] Add metadata for single and double precision complex numbers

Numerical computing libraries like NumPy and TensorFlow feature complex64 and complex128 numbers
Reporter: Wes McKinney / @wesm
PRs and other links:

GitHub Pull Request #10452
GitHub Pull Request #10565

Note: This issue was originally created as ARROW-638. Please see the migration documentation for further details.

Mailing list discussion about this from 2021<EMAIL_ADDRESS>

lists.apache.org URL: https://lists.apache.org/thread/bngbnnhyq7lkyx8cg7l2qs1msd0ngg82

Replying to @rok 's comment

https://github.com/apache/arrow/issues/43809#issuecomment-2308936512

here as it's probably more relevant to this thread.

Oh interesting approach. Is there other systems that do this? Would this approach be better fitted for vectorization? I suppose it would be more efficient for Parquet.

I'm not aware of other systems that do this and haven't considered the benefits to vectorization. Mostly it satisfies the Fixed Width requirements in FixedShapeTensor (and I guess VariableShapeTensor).
https://github.com/apache/arrow/blob/51e9f70f94cd09a0a08196afdd2f4fc644666b5e/cpp/src/arrow/extension/fixed_shape_tensor.cc#L208-L220
Then one could interpret the raw bytes as real and imaginary components. I guess one would have to consider endianess here.
From hazy memory, the previous attempt created numeric primitive complex64 and complex128 types based on std::complex and std::complex,

https://github.com/apache/arrow/pull/10452

but this resulted in extensive changes throughout the code base due to the need to support the relevant operations for those types. This probably has knock-on effects to binary size.
A FixedSizeBinary(64/128) might be a good compromise between creating a fixed with type while not implementing every primitive operation for complex numbers.

@sjperkins looking at the past discussion I agree extension type is the way to go. I'm not sure about the storage type though. It would be nice to have zero-copy path to numpy which, as per this, would need fixed_size_list approach.
That said, wouldn't it be possible to interpret Fixed/VariableShapeTensor as a complex tensor if an extra dimension of size 2 was added (and strides were done correctly, namely the complex dimension had the smallest stride)? I think the memory layout in this case would match numpy's.
FixedShapeTensor can be zero-copied to numpy today and can probably be cast to complex in numpy. It would of course be better to add a new extension type to not make users do this manually.

@sjperkins looking at the past discussion I agree extension type is the way to go. I'm not sure about the storage type though. It would be nice to have zero-copy path to numpy which, as per this, would need fixed_size_list approach.

@sjperkins looking at the past discussion I agree extension type is the way to go. I'm not sure about the storage type though. It would be nice to have zero-copy path to numpy which, as per this, would need fixed_size_list approach.

/cc @maupardh1 who started #39754
I don't think using FixedSizeBinary precludes zero-copy -- The following, similar to @zeroshade 's suggestion in  https://github.com/apache/arrow/issues/39753#issuecomment-1908608726 seems to work (although I realise more work would be needed at the cython layer to accept np.array(..., np.complex64) in pa.array)
import pyarrow as pa
import numpy as np

import pyarrow as pa
import numpy as np
from numpy.testing import assert_array_equal

COMPLEX64_STORAGE_TYPE = pa.binary(8)

class ComplexFloatExtensionType(pa.ExtensionType):
    def __init__(self):
        pa.ExtensionType.__init__(self, COMPLEX64_STORAGE_TYPE, 'complex64')

    def __arrow_ext_serialize__(self):
        return b''

    @classmethod
    def __arrow_ext_deserialize__(cls, storage_type, serialized_data):
        return ComplexFloatExtensionType()

    def wrap_array(self, storage_array):
        return pa.ExtensionArray.from_storage(self, storage_array)

    def __arrow_ext_class__(self):
        return ComplexFloatExtensionArray

class ComplexFloatExtensionArray(pa.ExtensionArray):
    @classmethod
    def from_numpy(cls, array):
        if array.dtype != np.complex64:
            raise ValueError("Only complex64 dtype is supported")
        storage_array = pa.FixedSizeBinaryArray.from_buffers(
            COMPLEX64_STORAGE_TYPE, len(array),
            [None, pa.py_buffer(array.view(np.uint8))]
        )
        return pa.ExtensionArray.from_storage(ComplexFloatExtensionType(), storage_array)

    def to_numpy(self, zero_copy_only=True, writeable=False):
        return np.frombuffer(self.storage.buffers()[1], dtype=np.complex64)

# Register the extension type with Arrow
pa.register_extension_type(ComplexFloatExtensionType())

data = np.array([1 + 2j, 3 + 4j, 5 + 6j, 7 + 8j], dtype=np.complex64)
arrow_data = ComplexFloatExtensionArray.from_numpy(data)

# Arrow buffers use Numpy buffer
assert arrow_data.storage.buffers()[1].address == data.view(np.uint8).ctypes.data
roundtrip = arrow_data.to_numpy()
assert_array_equal(roundtrip, data)
# Final array uses original array buffers
assert roundtrip.ctypes.data == data.ctypes.data

data2 = pa.array(data, type=ComplexFloatExtensionType())
assert_array_equal(data, data2)

tt = pa.fixed_shape_tensor(ComplexFloatExtensionType(), (2,))
storage = pa.FixedSizeListArray.from_arrays(arrow_data, 2)
assert len(storage) == 2
tensor = pa.ExtensionArray.from_storage(tt, storage)

print(arrow_data)
print(tensor)

One downside might be that there isn't yet support for custom extension type output

https://github.com/apache/arrow/issues/36648

so at the C++ arrow layer, the developer would be looking at a bunch of binary data. But it's an extension type and it wouldn't preclude developers from interpreting the fixed width buffers as std::complex<float> via the data_as/mutable_data_as methods.

That said, wouldn't it be possible to interpret Fixed/VariableShapeTensor as a complex tensor if an extra dimension of size 2 was added (and strides were done correctly, namely the complex dimension had the smallest stride)? I think the memory layout in this case would match numpy's. FixedShapeTensor can be zero-copied to numpy today and can probably be cast to complex in numpy. It would of course be better to add a new extension type to not make users do this manually.

Yes this should work -- I've used something similar with nested FixedSizeListArrays to represent complex arrays whose underlying buffers can simply be passed to the appropriate NumPy method. However, would this not create the need to special case a lot of type handling? i.e. there may need to be:

A basic ComplexFloat + ComplexDouble
A FixedShapeTensor and a ComplexFixedShapeTensor (or possibly indicate complex in the serialized metadata?)
Same for VariableShapeTensors
and maybe other compound types.

If the above are valid concerns, my bias is towards the pa.binary(8/16) storage type.  It's fixed width (so works as a tensor type), has the same binary format as std::complex<float/double> and np.complex64/128. Actually to be fair the underlying FixedSizeList buffer also has the same binary format, but is not fixed width because  nulls are possible.

I don't think using FixedSizeBinary precludes zero-copy -- The following, similar to @zeroshade 's suggestion in https://github.com/apache/arrow/issues/39753#issuecomment-1908608726 seems to work (although I realise more work would be needed at the cython layer to accept np.array(..., np.complex64) in pa.array)

Agreed, my point was that an extension array with FixedSizeList storage doesn't preclude zero-copy and I'm not sure there's benefits to using it over FixedSizeBinary over storage. Introducing an extension type doesn't come with requirement to introduce kernels or other machinery for it.

Yes this should work -- I've used something similar with nested FixedSizeListArrays to represent complex arrays whose underlying buffers can simply be passed to the appropriate NumPy method. However, would this not create the need to special case a lot of type handling? i.e. there may need to be:

A basic ComplexFloat + ComplexDouble
A FixedShapeTensor and a ComplexFixedShapeTensor (or possibly indicate complex in the serialized metadata?)
Same for VariableShapeTensors
and maybe other compound types.

I think the question here is also do we want a complex tensor extension array or a complex extension array. I am not sure we can use an complex extension array as storage of FixedShapeTensorArray, though if we can that would be best. Can an extension array be storage to another extension array? (Or am I misunderstanding and you mean we should introduce a primary complex type?)

I think the question here is also do we want a complex tensor extension array or a complex extension array. I am not sure we can use an complex extension array as storage of FixedShapeTensorArray,

I suspect this is possible because in this excerpt from the larger example above,
tt = pa.fixed_shape_tensor(ComplexFloatExtensionType(), (2,))
storage = pa.FixedSizeListArray.from_arrays(arrow_data, 2)
assert len(storage) == 2
tensor = pa.ExtensionArray.from_storage(tt, storage)

arrow_data is a Python Extension Array associated with an Python Extension type with storage type pa.binary(8).  Does your question relate to the underlying C++ Extension Type and Array?
ipdb> type(arrow_data)
<class '__main__.ComplexFloatExtensionArray'>
ipdb>

Although I think wrapping it in a FixedSizeList is necessary for it to be accepted by the FixedShapeTensorType which uses a FixedSizeList under the hood?

though if we can that would be best. Can an extension array be storage to another extension array?

The python example above might suggest it's possible, but I'm admittedly not sure about the C++ layer.

(Or am I misunderstanding and you mean we should introduce a primary complex type?

I'm advocating for an C++ Extension ComplexFloatType (complex64) with an associated Extension ComplexFloatArray. The FixedShapeTensorType should accept the ComplexFloatType as a type and should be able to wrap the ComplexFloatArray. This could be used for a proper conversion to NumPy and Pandas.  And the same again with ComplexDoubleType (complex128). They would be exposed in the Python layer, much like the other canonical Extension Types.


ORDER BY QUERY BUILDER ISSUE

I hava a test query :
Code:
$this->db->where('1 IS NOT NULL',NULL,FALSE)->WHERE('X>','0')->FROM('X')->ORDER_BY('X','ASC')->count_all_results();
and it is generating error:
Code:
Error Number: 42000/1033
[Microsoft][ODBC Driver 11 for SQL Server][SQL Server]The ORDER BY clause is invalid in views, inline functions, derived tables, subqueries, and common table expressions, unless TOP, OFFSET or FOR XML is also specified.
SELECT COUNT(*) AS "numrows" FROM ( SELECT * FROM "X" WHERE 1 IS NOT NULL AND "X" > '0' ORDER BY "X" ASC ) CI_count_all_results

Solution:
Add this line in DB_query_builder.php in system/database file line 1381:
if(!empty($this->qb_orderby)&&empty($this->qb_limit)&&empty($this->qb_offset))$this->qb_orderby=null;

Why would you use order_by with count_all_results in the first place?

First of all; i have another problem. I have a script. This script stopes good working when i upgrade from 3.0.2 to 3.0.4 . But in another function; all of database functions seems working normally. When i revert my system folder to the previous function; my script is working as it must be again.
Second one; i check this function because you described there is a bug fix for count_all_results used with order_by clause:
Fixed a bug (#4212) - Query Builder method count_all_results() could fail if an ORDER BY condition is used.

Looks like you're right, the latest change converts it to a subquery which is breaking your query.

Yep;
I found its' solution and wrote my 2. message:
Solution:
Add this line in DB_query_builder.php in system/database file line 1381:
if(!empty($this->qb_orderby)&&empty($this->qb_limit)&&empty($this->qb_offset))$this->qb_orderby=null;


Small bug fixes

Includes fix of non-compatible Redis version
Has ult and ust names built into RC code

Pull Request Test Coverage Report for Build 118

32 of 83 (38.55%)  changed or added relevant lines in 8 files are covered.
2 unchanged lines in 2 files lost coverage.
Overall coverage increased (+0.4%) to 69.807%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

client_linter_callback.py
0
3
0.0%

callback.py
0
8
0.0%

preprocessors/preprocessors.py
14
24
58.33%

webhook.py
1
12
8.33%

client_converter_callback.py
1
20
5.0%

Files with Coverage Reduction
New Missed Lines
%

client_converter_callback.py
1
15.09%

webhook.py
1
14.8%

Totals

Change from base Build 109:
0.4%

Covered Lines:
2527

Relevant Lines:
3620

💛  - Coveralls


Create Blog site for Vita

Description
We would not add anything to the client folder for this but create a new subdir called blog
This would be hosted on a different subdomain like blog.vita.com
Example : https://blog.adplist.org/

Discussion on which headless CMS to use & why (Gatsby, Ghost, Strapi, Netlify, WordPress, etc)
It should be cheap (ideally free)
I should be easily integrated with React
Adding blogs should be as easily as this would be managed by non-technical people

Domain
Front-End (Styling/Markup)
Code of Conduct

[X] I follow Contributing Guidelines of this project.

@Rishabh-malhotraa Can i use typescript or next.js for this blog site ?

@Rishabh-malhotraa Can i use typescript or next.js for this blog site ?

I think with blogging websites Sever side generated pages do not make sense, a static page generator like gatsby would me more recommend.
But you can let me know how do you plan to implement this with Next.js
Plus I assume you would also be using a cms with next.js

@Rishabh-malhotraa Can we connect on discord

If Next.js is being used I would like to work along with @nitishsaini706  on this task, please assign me to this, also if you need to get in touch with me here's my discord tag Senor-Ducky#2521


Empty SqlGeography/Geometry MultiPolygon throws NotSupportedException

SqlGeographyBuilder builder = new SqlGeographyBuilder();
builder.SetSrid(4326);
builder.BeginGeography(OpenGisGeographyType.MultiPolygon);
builder.EndGeography();
geoJSON = builder.ConstructedGeography.ToGeoJSONGeometry();

Code above results in the following exception:
An exception of type 'System.NotSupportedException' occurred in GeoJSON.Net.Contrib.MsSqlSpatial.dll but was not handled in user code

Additional information: Geometry type MultiPolygon is not supported yet.

whereas the code below will work fine:
SqlGeographyBuilder builder = new SqlGeographyBuilder();
builder.SetSrid(4326);
builder.BeginGeography(OpenGisGeographyType.MultiPolygon);
builder.BeginGeography(OpenGisGeographyType.Polygon);
builder.EndGeography();
builder.EndGeography();
geoJSON = builder.ConstructedGeography.ToGeoJSONGeometry();

The same also seems to apply to SqlGeometries.

Thanks for reporting @Sheepzez. I have reproduced the issue. Will fix it today.

@Sheepzez  Harder than I thought... Correction : will fit it [as soon as possible].

No problem, @xfischer. I've just been filling with the empty Polygon, which works fine for my application.

@xfischer Noticed you committed a fix for this. Could you update the NuGet package to include this? Perhaps an automatic rebuild and package for NuGet would be useful?

@Sheepzez I have no control on this repo, even if I'm the main contributor.
@jbattermann is in charge here. And I'm sure he'll get things done when he can. I you're stuck you can fork my own repo from where this PR originates : xfischer/GeoJSON.Net.Contrib

@Sheepzez / @xfischer I am here - just had a slightly busy week :)
@xfischer I saw the latest CI build yesterday for the pull request failed apparently because of a .Net version mismatch, see https://ci.appveyor.com/project/jbattermann/geojson-net-contrib/build/13-rmbgamhn particularly
The primary reference "GeoJSON.Net, Version=<IP_ADDRESS>, Culture=neutral, processorArchitecture=MSIL" could not be resolved because it has an indirect dependency on the assembly "Newtonsoft.Json, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed" which was built against the ".NETFramework,Version=v4.5" framework. This is a higher version than the currently targeted framework ".NETFramework,Version=v4.0".

I was going to update GeoJSON to 4.5 & Json.Net 7.x .. would / could you do the same for the contrib one? Or are you forced staying on .Net 4.0?

@jbattermann No restrictions for me. I was targeting the same as GeoJSON. Let's do it !

Alright perfect - I'll do it right away and let you know when 'core' is done.
Cheers!

PR #7 updated with net45 and json 8.0.2. Is this OK for json version ?

Looks good :+1:
Core is a Portable Class Library, soooo it'll take just a bit longer..

Alright - both packages are updated & published on nuget.org - contrib is 0.1.5: https://www.nuget.org/packages/GeoJSON.Net.Contrib.MsSqlSpatial \o/
Thanks @xfischer !
@Sheepzez let us know if this fixes your issue

Hey @xfischer, and @jbattermann.
.ToGeoJsonGeometry() no longer throws an exception from that code. I do get the following exception when I try to use Newtonsoft's JsonConvert.SerializeObject() on the resulting IGeometryObject though. The full exception is:
An exception of type 'Newtonsoft.Json.JsonWriterException' occurred in Newtonsoft.Json.dll but was not handled in user code

Additional information: Token PropertyName in state ArrayStart would result in an invalid JSON object. Path 'coordinates'.

The code generating the geojson is:
SqlGeographyBuilder builder = new SqlGeographyBuilder();
builder.SetSrid(4326);
builder.BeginGeography(OpenGisGeographyType.MultiPolygon);
builder.EndGeography();
geoJSON = builder.ConstructedGeography.ToGeoJSONGeometry();

@jbattermann Hi, after investigating, it seems that in MultiPolygonConverter.WriteJson(...) the last call to  writer.WriteEndArray() should be after the closing bracket ;)

Good catch @xfischer - update built/pushed!

@xfischer @jbattermann Everything is working! Thanks for the quick fixes guys.

:+1:


ng new is failing

Please provide us with the following information:

OS?  Windows 7, 8 or 10. Linux (which distribution). Mac OSX (Yosemite? El Capitan?)
Windows 10 Pro

Versions. Please run ng --version. If there's nothing outputted, please
run in a Terminal:
node --version
And paste the result here.
v6.2.2

Repro steps. Was this an app that wasn't created using the CLI? What change did you
do on your code? etc.
ng new create

The log given by the failure. Normally this include a stack trace and some
more information.

unzip error C:\Users\indcoder\AppData\Local\Temp\npm-10796-b2a49a97\registry.npmjs.org\esprima-fb-\esprima-fb-15001.1001.0-dev-harmony-fb.tgz
unzip error C:\Users\incoder\AppData\Local\Temp\npm-10796-b2a49a97\registry.npmjs.org\iconv-lite-\iconv-lite-0.4.13.tgz
unexpected end of file
Error: unexpected end of file
at Zlib._handle.onerror (zlib.js:370:17)

Mention any other details that might be useful.

Also i think some files, during install, are nested so deep that it is exceeding Windows maximum file name limitation
C:\Users\INCODE~1\DOWNLO~1\GitHub\DOCKER~2\NODE_M~1\ANGULA~1\NODE_M~1\EMBER-~2\NODE_M~1\BRA421~1\NODE_M~1\BABEL-~1\NODE_M~1\REGENE~1\NODE_M~1\defs\NODE_M~1\yargs\NODE_M~1\cliui\NODE_M~1\CENTER~1\NODE_M~1\ALIGN-~1\NODE_M~1\kind-of\NODE_M~1\is-buffer\test

Thanks! We'll be in touch soon.

Dupe of https://github.com/angular/angular-cli/issues/1186.

@indcoder I know it doesn't sound like the same issue, but it stems from the same root and https://github.com/angular/angular-cli/pull/1250 fixes it.


Direct requests.

How to get and handle direct requests?
I have not found such functionality in code.

what is direct request? give example

I mean private messages. direct_v2.
When you want to write me a private message, i first must to approve or decline our conversation.

https://github.com/huttarichard/instagram-private-api/blob/master/client/v1/thread.js#L109 you mean this?

Yes, but how to get feed of requests?

not sure if inbox feed returns unapproved request, if so, you can approve every request in inbox, or just call https://github.com/huttarichard/instagram-private-api/blob/master/client/v1/thread.js#L206

No, inbox do not returns unapproved request. There is response
{
	"subscription": {
		"auth": ...,
		"url": "wss://telegraph-ash.instagram.com/rt",
		"sequence": "-1",
		"topic": "user-ds2-300687565~2"
	},
	"inbox": {...},
	"pending_requests_users": [],
	"pending_requests_total": 4,
	"status": "ok",
	"seq_id": 14
}

I skipped inbox object, but i can tell, that there is no unapproved in inbox. I have 4 requests, and this  number is in pending_requests_total. But pending_requests_users is empty. I think that there is separate endpoint for this.
So, instagram-private-api do not support it for now?

@dilame then there is no support... But should be quite easy to make this...

And how to get subscription field? Is it possible? I need it too.
Do you let me to implement unapproved?

@dilame sure, implement this in inbox.js... subscription requires websocket connection, which is little bit harder to exploit

@huttarichard i understand it. It is beyond the scope of duties of this lib. But i want to implement it in my code. I just need websocket url and auth. Сan i make subscription field public? Or you be like Apple "you just dont need it"? 😄
Ok, i will try to implement this in inbox.js if it is possible. Otherwise, i will create inbox-pending.js. ok?

Im big fan of apple, so exactly subscription field is just useless until there is an implementation for subscription, if you succeed with connecting to websocket endpoint, I will more then appreciate if you can make subscription implementation too, I will give you design for that ...
just supply to inbox.js thrid argument and switch endpoint, if structure of request will be same, otherwise new feed inbox-pending.js sounds good...

What is the function to send private direct msg?

@huttarichard I decided to implement this in inbox-pending.js. Because there may be no second argument (in most cases).
If i want to get threads, i want to get it all without no limit. So every new pending inbox will be like
new InstagramV1.Feed.Inbox(session, null, true)

Not so beautiful.

@dilame ok, then

@dilame  Hi, I'm trying to getting my direct messages. Can you help me?
I tried feed.get(), feed.all() etc. but I cant write all direct message on console.
var Client = require('instagram-private-api').V1;
var device = new Client.Device('someuser');
var storage = new Client.CookieFileStorage('cookies/someuser.json');
var session = new Client.Session(device, storage);
var accountId = storage.getAccountId() .then(function(accountId){ return accountId;});
var feed = new Client.Feed.Inbox(session, accountId);

@aybuke learn Promise first. This lib built on Bluebird

ok, this link does not work :) but I tried this looking on README.md examples. I tried getting last 20 direct messages but I get 20 same direct messages, how can i fix this:
var Client = require('instagram-private-api').V1;
var device = new Client.Device('someuser');
var storage = new Client.CookieFileStorage('cookies/someuser.json');
var session = new Client.Session(device, storage);
var accountId = storage.getAccountId() .then(function(accountId){ return accountId;});
var feed = new Client.Feed.Inbox(session, accountId);
Promise.mapSeries(_.range(0, 20), function() {
return feed.get();
})
.then(function(results) {
var messages = _.flatten(results);
var urls = _.map(messages, function(medium) {
return _.last(medium.accounts)
});
console.log(urls);
})


Theme doesn't apply in Fedora 35 bash

I have followed the full steps, but the theme didn't apply in the bash session at all, I have tried running powerline-shell from command line it throws following gibberish.
[\e[38;5;250m\]\[\e[48;5;240m\] \u \[\e[48;5;238m\]\[\e[38;5;240m\]\[\e[38;5;250m\]\[\e[48;5;238m\] \h \[\e[48;5;31m\]\[\e[38;5;238m\]\[\e[38;5;15m\]\[\e[48;5;31m\] ~ \[\e[48;5;236m\]\[\e[38;5;31m\]\[\e[38;5;15m\]\[\e[48;5;236m\] \$ \[\e[0m\]\[\e[38;5;236m\]\[\e[0m\]

Sorry for ping, I forgot to suppress another script I was using to decorate bash prompt.


Layout issue with the current editor when both preview and console are turned off.

 https://www.freecodecamp.org/learn/javascript-algorithms-and-data-structures-v8/learn-the-date-object-by-building-a-date-formatter/step-14
There seems to be an extra gap on the right side of the editor when both preview and console are turned off.
Originally posted by @Sembauke in #57114

@Sembauke What browser/OS are you using to produce this. I've tried with both Firefox and Chrome on linux and win11 but can't seem to get that empty gap below the Preview button.

To reproduce:

Go to challenge, ie. https://www.freecodecamp.org/learn/javascript-algorithms-and-data-structures-v8/learn-the-date-object-by-building-a-date-formatter/step-14.
With preview and/or console turned on, resize the preview/console width.
Turn off preview and console.
Empty space is on the right

https://github.com/user-attachments/assets/a9f8e22a-9b2f-4798-8eae-30280ccf37d5


Can't target Wasm web

when
wasm-pack build . --target web

throw
error: Unsupported target OS! Create an issue: https://github.com/svartalf/hostname/issues/new
  --> /Users/katopz/.cargo/registry/src/github.com-1ecc6299db9ec823/hostname-0.3.1/src/lib.rs:81:9
   |
81 |         compile_error!("Unsupported target OS! Create an issue: https://github.com/svartalf/hostname/issues/new");
   |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

error[E0433]: failed to resolve: use of undeclared crate or module `sys`
   --> /Users/katopz/.cargo/registry/src/github.com-1ecc6299db9ec823/hostname-0.3.1/src/lib.rs:105:5
    |
105 |     sys::get()
    |     ^^^ use of undeclared crate or module `sys`

which
└── xid v1.0.2
    ├── hostname v0.3.1

not sure this can be fix or any workaround?

For hostname not supporting wasm target, see https://github.com/svartalf/hostname/issues/16.

For us, we might be able to work around by not doing the hostname fallback when targeting wasm.
https://github.com/kazk/xid-rs/blob/b861297e9faf25729c7c4e2eb4da80bdd72cc754/src/machine_id.rs#L7-L12
If we use an empty string there, it will just fall back to random bytes:
https://github.com/kazk/xid-rs/blob/b861297e9faf25729c7c4e2eb4da80bdd72cc754/src/machine_id.rs#L14-L21
Can you try target-wasm branch? (#7)

[INFO]: 🌀  Compiling to Wasm...
   Compiling getrandom v0.2.7
   Compiling quote v1.0.21
error: the wasm32-unknown-unknown target is not supported by default, you may need to enable the "js" feature. For more information see: https://docs.rs/getrandom/#webassembly-support
   --> /Users/katopz/.cargo/registry/src/github.com-1ecc6299db9ec823/getrandom-0.2.7/src/lib.rs:235:9
    |
235 | /         compile_error!("the wasm32-unknown-unknown target is not supported by \
236 | |                         default, you may need to enable the \"js\" feature. \
237 | |                         For more information see: \
238 | |                         https://docs.rs/getrandom/#webassembly-support");
    | |________________________________________________________________________^

error[E0433]: failed to resolve: use of undeclared crate or module `imp`
   --> /Users/katopz/.cargo/registry/src/github.com-1ecc6299db9ec823/getrandom-0.2.7/src/lib.rs:262:5
    |
262 |     imp::getrandom_inner(dest)
    |     ^^^ use of undeclared crate or module `imp`

For more information about this error, try `rustc --explain E0433`.
error: could not compile `getrandom` due to 2 previous errors
warning: build failed, waiting for other jobs to finish...
Error: Compiling your crate to WebAssembly failed
Caused by: failed to execute `cargo build`: exited with exit status: 101

it's a deeper features in rand btw 🤔
    ├── rand v0.8.5
    │   ├── libc v0.2.134
    │   ├── rand_chacha v0.3.1
    │   │   ├── ppv-lite86 v0.2.16
    │   │   └── rand_core v0.6.4
    │   │       └── getrandom v0.2.7

to reproduce wasm-pack build here 👉 https://github.com/katopz/xid-rs/tree/target-wasm/examples/wasm
No worry if there's no-way to make it work(i know the pain), nothing urgent; thx for your time 🙏

You can add the following to your Cargo.toml under xid = { path = "../../" }:
# `getrandom` is a dependency of `rand` which is in turn a dependency of `xid`.
# Enable `js` feature to support `wasm32-unknown-unknown` target used by `wasm-pack`.
# See https://docs.rs/getrandom/latest/getrandom/#webassembly-support
getrandom = { version = "0.2.7", features = ["js"] }

Seem to build fine now 🙏 but somehow it didn't get any generated response when i try to call it from js. 🤔
Anyway incase it's build fine, i'll close this for now and i will take a look at this again when I have some free time.
Thank!

It builds fine but the wasm crashes on web.


Python package installation failed in Ubuntu 18 with Python 3.6

It seems these don't work in Linux (WSL2 and Ubuntu)
python -m pip install openai
python -m pip install psutil

After installing python and pip in Linux, these are the commands that work
pip install openai
pip install psutil

Update - Thanks to the help from @dluc , we found OpenAI requires Python 3.7.1+ and Ubuntu 18 has Python 3.6.9 by default. We will update the documentation with python requirements 3.7.1+.
For Ubuntu 18 users, we would recommend upgrading Ubuntu to 20+ for a better experience. However, if upgrading Ubuntu isn't an option, you would have to manually upgrade Python to 3.7.1+.


error: Unable to create action and dial tcp <IP_ADDRESS>:3233: connect: connection refused

Environment details:

ansible/local
docker-20.10.12
ubuntu-20.04
aarch64

Steps to reproduce the issue:

Deploy openwhisk on local(by ansible): refer to https://github.com/apache/openwhisk/tree/master/ansible.
Maybe some modification has been done to make openwhisk suitable to arrch64, but finally, all images were built successfully and related containers were all running.
wsk property set --apihost '<IP_ADDRESS>:3233'
wsk property set --auth cat ansible/files/auth.guest
create a simple 'hello.js'
wsk action create hello hello.js
wsk list

Outputs
'wsk action create hello hello.js' shows that,
error: Unable to create action 'hello': Put "http://<IP_ADDRESS>:3233/api/v1/namespaces/_/actions/hello?overwrite=false": dial tcp <IP_ADDRESS>:3233: connect: connection refused

'wsk list' shows that,
wsk namespace list
error: Unable to obtain the list of available namespaces: Get "http://<IP_ADDRESS>:3233/api/v1/namespaces": dial tcp <IP_ADDRESS>:3233: connect: connection refused

wsk property set --apihost '<IP_ADDRESS>',  wsk property set --apihost '<IP_ADDRESS>:80', wsk property set --apihost '<IP_ADDRESS>:443' were all be tried, but failed.
'Docker ps' shows

According to my observation, all related containers are running, especially the 'nginx'.
I can't find which part of my deployment has gone wrong and caused the failure of the 'wsk action create'.
I also want to know how I should configure ‘--apihost' for 'wsk' and which port to check.

Generally, the 3233 port is for standalone deployment.
I think you need to use 80 or 443.

setting --apihost to local IP directly  is ok.

I also meet this problem，could i inquire some questions？I used local ip and <IP_ADDRESS>:3223 are not ok.
Is it because I'm not using a docker image？My docker ps is empty。

error: Unable to create action 'hello': The connection failed, or timed out. (HTTP status code 500)

@immortalsman
In this issue, he deployed a standard deployment using ansible but he tried to use an endpoint for standalone deployment.
Which type of deployment are you using?

Hello，friends！Thank you for your answer.I use ansible.I changed it to the local ip address so there is no error message, but there is a new problem that I haven't solved yet.
This is my reference blog https://blog.csdn.net/supergxt/article/details/118114893
------------------ 原始邮件 ------------------
发件人:                                                                                "apache/openwhisk"                                                                                @.>;
发送时间: 2022年11月10日(星期四) 下午2:35
@.>;
抄送: "pony<EMAIL_ADDRESS>主题: Re: [apache/openwhisk] error: Unable to create action and dial tcp <IP_ADDRESS>:3233: connect: connection refused (Issue #5336)
@immortalsman
In this issue, he deployed a standard deployment using ansible but he tried to use an endpoint for standalone deployment.
Which type of deployment are you using?
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you were mentioned.Message ID: @.***>


Gate all uses of Contexts.SharedInstance behind a #define

Description
I don't use Contexts.SharedInstance in my game, because I rely heavily on dependency injection instead of singletons. However, I don't want to risk instantiating Contexts.SharedInstance by mistake, as that could lead to a very frustrating and confusing debugging session.
Hence, I wrapped all built-in uses of the generated field in #if !ENTITAS_REDUX_NO_SHARED_CONTEXT. To disable Contexts.SharedInstance in your project, define that symbol. Otherwise, existing code will continue to work as-is.
How Has This Been Tested?
I added a local build of the plugin to my own project. Works like a charm.
Checklist:

[x] My code follows the style guidelines of this project
[x] I have performed a self-review of my own code
[x] I have commented my code, particularly in hard-to-understand areas
[x] I have made corresponding changes to the documentation
[x] My changes generate no new warnings

This has been merged to develop and should be available soon in v2.1.3.


MQ remote command execution <IP_ADDRESS>

Using MQ version <IP_ADDRESS> we have removed the use of local user IDs and now are using TLS mapping inside MQ to map connections to non-existent users that we run auth commands against. This is working as expected. The issue/concern comes from running an oc exec command to do the runmqsc command i.e. display a queue manager. In this case MQ is seeing that execution as someone coming in as the same user that is on the channel, but in the oc exec it should be executing locally as the random user id. In fact when running oc exec whoami I get the random user id. So I need to understand how someone could use the oc exec command to circumvent the SSLPEERMAP to a user id that doesnt exit. I can provide logs or answer any questions you have regarding this.

Hi @JakeReise,
SSLPEERMAPs relate to client applications connecting directly to IBM MQ. From what you've said here it sounds like you've set up your MQ channels to block any clients that don't connect with known TLS Certificates and those that do connect are mapped to a specific userid(s). Any runmqsc clients connected remotely via runmqsc -c will connect via a channel and so have permissions to execute commands based off the user authorities you have defined for whichever user it gets mapped to.
oc exec does not relate to IBM MQ and is more closely associated with the container that IBM MQ is running in. Think of it similar to running a SSH command to login to a remote machine and run commands against the Operating system.
So when you run oc exec runmqsc it will open a terminal to the container and run the local runmqsc which binds to MQ locally as the user that the container (and MQ) is running as. Because it is the user that is running the queue manager (and effectively in the mqm group) it will have administrative authorities. This is the user you see when you run oc exec whoami.
Because clients connecting via channels do not have capability to run system commands (such as whoami) and because oc exec is the same as SSH(ing) into a machine to run a command i don't believe there is a remote command execution bug here. If you want to prevent users from being able to run commands via oc exec then you have to configure OpenShift so that only the users that should be able to be able to access the container have the RoleBinding that allows them to run oc exec
If you want to prevent that random user from accessing your MQ, then locally you cannot because it is needed by IBM MQ to access the underlying filesystem. To prevent it remotely you would need to look at blocking all administrators from connecting remotely except for ones that you know about. A Channel Authentication rule of BLOCKUSER('*') USERLIST('*MQADMIN') will block any client from connecting that try to connect as an administrative user. You can then override this rule as you see fit for how you want your administrators to connect (if at all).
I hope this helps and that i've not misunderstood something.

So I think I figured out how it is mapping me to a non-existent user, but I don't know why. The command I ran is below
oc exec mi9210-0 echo "dis chl(*)"|runmqsc MI9210
Where mi9210-0 is the pod name and MI9210 is the queue manager name. It goes out to the pod and runs the command as app1 id via tls mapping. Not sure why it is using the mq channel to run this command. I realized that I have environment variables pointing to that pod and queue manager for a client. So I have MQCHLLIB, MQCHLTAB, MQSSLKEYR. So I run the above command on my desktop and I get unauthorized for app1 to display those channels. That is fine, I haven't done auth records for app1 to do that, what I dont understand is why the presence of those environment variables affects the oc exec command. Once I remove those, the command tries to just execute locally and fails because there is no queue manager locally. I also go onto the pod and run the below command and it works as expected as the random user id has the authority.
echo "dis chl(*)"|runmqsc MI9210
I know the below command will work locally and remotely running as the random user and not utilizing the MQ environment variables. I just was clarification as to why the original command forcefully uses the environment variables if they are present.
echo "dis chl(*)" | oc exec -it mi9210-0 -- runmqsc
I am probably just confused on the pipe ordering in the command, I am just trying to understand how those variables are being utilized when I am not explicitly calling them.

Hi @JakeReise
I has been a long time since you posted  and I would like to ask because I am having troubles with the same command, when I run this:
oc exec POD  --echo"DEFINE QLOCAL('QUEUE1')" | runmqsc QUEUEMANAGER
if I use this line in local:
echo"DEFINE QLOCAL('QUEUE1')" | runmqsc QUEUEMANAGER
It works but When I use oc exec remotely looks like it took apart "runmqsc" from the oc exec command, the error that is show is: "not recognized as an internal or external command"
the problem is running  commands on MQSC  because if I run sonmethig like "oc exec POD -- dspmq" it works fine.
I really apreciate any help


Add "keep tab in memory" or "do not unload tab".

When filling out a web form or uploading files in background, you don't want want that tab to unload, regardless of what you do in background.
Modern smartphones have lots of RAM, so it can be used for this purpose.
How to implement this? In the menu on the tab list, add a "select tabs to keep in memory" feature. This will add checkboxes to each tab in the tab list. Each checked tab is kept in memory no matter how many new tabs are opened.
Android 14 (at least Samsung One UI) already has this feature on the app level. Apps to be kept in memory can already be selected. It's time to make it on tab level too.
Chromium already keeps tabs that play music in memory. The user should be able to do it manually. Thank you for considering my suggestion.

Its chromium policies that enforces tab discarding, And unloading not kiwi itself
When music is being played till then the tab is considered  active thats why browser keeps it active,
When you say you have lots of ram
an average user has max 4gb ram devices out of which only 1.5gb is free , and if kiwi itself uses all that free ram your device wil lag a lot,
Most of users are hoarder they have 1000s of tabs opened currently browser  unloads all tabs yet It lags so much on our device takes 3min just to startup
and when we mininize and switch back again it takes 1min to become responsive
Kiwi unloads but still retains previews of tabs that makes it even slower
If you try google chrome it completely unloads tabs even their previews
As for Your problem you can use a

Cache the form data in localstorage

use some extension that keeps your tab active by doing some random activity that will prevent browser from unloadiming tabs2

Its the website makers responsibility to cache your data in localstorage so when unloaded tab is reloaded it can retrieve data and fill in back
I had used many form websites that even after closing and restarting whole browser auto refills the previous data
So its not browsers problem


Capstone project

**In this project, the following features  are implemented: **

Personalized content of pages
Two pages are built
Responsive design
Interactions with links
Team members section created dynamically with Javascipt

Hi @WilfriedM01 😃,
As much as I appreciate your hard work on this project, I'm afraid that I can't perform a review on this pull request.
Invalid Submission

Please fix the Linters' errors

Your Code Review Request will be marked as invalid in your Dashboard, so please submit a new one once you are ready. 🙏
Cheers, and Happy coding!👏👏👏
Feel free to mention @MahmoudBakr23 to leave any questions or comments in the PR thread if something is not 100% clear.

Please, do not open a new Pull Request for re-reviews. You should use the same Pull Request submitted for the first review, either valid or invalid unless it is requested otherwise.

Invalid Code Review Request does not count into the code reviews limit.


Setting to stop lines disappearing entirely when a line is selected

I think in general it's nicer to see a highlighted with the others faint. Currently you get this on mouseover but if you select a line with click – e.g. to capture it in the story editor – the others disappear entirely. This either shouldn't happen or there should be a setting to provide both options.

+1. I think it just shouldn't happen, rather than being an extra setting.

Fixed in https://github.com/kiln/template-horserace/commit/39c278420c7a734062a6880b8123b34220d03dfa


stdarg.h Needed for Linux

Just a note that to compile this on Linux I had to add stdarg.h to the list of includes, otherwise I got undefined errors for va_start/va_stop.
Otherwise, everything seemed to work as expected.

thx, I've pushed the added include.


python312Packages.tencentcloud-sdk-python: 3.0.1173 -> 3.0.1174

Diff: https://github.com/TencentCloud/tencentcloud-sdk-python/compare/refs/tags/3.0.1173...3.0.1174
Changelog: https://github.com/TencentCloud/tencentcloud-sdk-python/blob/3.0.1174/CHANGELOG.md
Description of changes

Things done

Built on platform(s)

[ ] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
24.11 Release Notes (or backporting 23.11 and 24.05 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[ ] Fits CONTRIBUTING.md.

Add a :+1: reaction to pull requests you find important.

Result of nixpkgs-review pr 322113 run on x86_64-linux 1

4 packages built:

python311Packages.tencentcloud-sdk-python
python311Packages.tencentcloud-sdk-python.dist
python312Packages.tencentcloud-sdk-python
python312Packages.tencentcloud-sdk-python.dist