Optional dependencies

This PR is a first attempt at fixing #760.
For convenience I have added the optional packages to extras_require. I have updated the README to specify that some packages are not installed as dependencies, but should be installed separately.
So far, an ImportError is raised, but we could use a custom exception to include more information for the user.
This is my first contribution, so comments are very welcome! :)

Coverage remained the same when pulling 1a2591e57328b8c664c472c64f4c637954124bd9 on dansondergaard:optional-dependencies into 7b60cc2727ae6300f040634d30442a8d9b372cf6 on biocore:master.

If we want to keep as much functionality as possible working when not having the extra dependencies installed, a few more changes are necessary.
For instance, in the base.py file for the ordination methods there are top level imports for IPython and matplotlib, and if those aren't installed you'd lose all functionality, not just plotting and notebook integration, and I think that's a deal breaker.
So, how do we solve that? Other projects import extra dependencies inside the functions/methods that use them (eg. pandas and matplotlib). It looks a little bit annoying, but seems cleaner than putting the top level import inside a try block and set a NO_MATPLOTLIB variable and check that inside each method/function...

:+1: for avoiding the "NO_MATPLOTLIB" pattern.
On (Jan-14-15|16:31), Jorge Cañardo Alastuey wrote:

If we want to keep as much functionality as possible working when not having the extra dependencies installed, a few more changes are necessary.
For instance, in the base.py file for the ordination methods there are top level imports for IPython and matplotlib, and if those aren't installed you'd lose all functionality, not just plotting and notebook integration, and I think that's a deal breaker.
So, how do we solve that? Other projects import extra dependencies inside the functions/methods that use them (eg. pandas and matplotlib). It looks a little bit annoying, but seems cleaner than putting the top level import inside a try block and set a NO_MATPLOTLIB variable and check that inside each method/function...

Reply to this email directly or view it on GitHub:
https://github.com/biocore/scikit-bio/pull/802#issuecomment-70020407

:+1: for avoiding NO_MATPLOTLIB. I'll have a look at the patch in the weekend.

:+1: to putting imports inside the functions/methods where they're used, and avoiding NO_MATPLOTLIB.
It'd be really nice to have a custom exception that states it's an optional dependency, and describes an easy way to obtain all optional dependencies, e.g., pip install scikit-bio[all]. Maybe this could subclass ImportError?
I think we'd also want the respective unit tests to only be run if the optional dependency is available (pandas does this).

Yeah, that makes sense, we also might be able to use decorators?
Something like @requires_matplotlib. Maybe not? I'm not sure.
On (Jan-15-15| 9:04), Jai Ram Rideout wrote:

:+1: to putting imports inside the functions/methods where they're used, and avoiding NO_MATPLOTLIB.
It'd be really nice to have a custom exception that states it's an optional dependency, and describes an easy way to obtain all optional dependencies, e.g., pip install scikit-bio[all]. Maybe this could subclass ImportError?
I think we'd also want the respective unit tests to only be run if the optional dependency is available (pandas does this).

Reply to this email directly or view it on GitHub:
https://github.com/biocore/scikit-bio/pull/802#issuecomment-70120069

:+1:, that'd be really elegant. Maybe we could have a version of the decorator for skipping unit tests too!
Something like:
from skbio import requires

@requires('matplotlib')
def plot(...):
    ...

and
from skbio.util import skip_if_no

@skip_if_no('matplotlib')
def test_plot(self):
    ...

I really like the decorator idea. As for the testing decorator, that should probably just go on the class.
I think it will lead to better test organization as well.
I think it might even be valuable to inject the import from the decorator itself.
What it might ultimately look like:
@requires('matplotlib.pyplot')
def some_method_on_a_class(plt, self, other, things):
    plt.plot(...)

This would prevent the runtime cost of having a try, except block, because the actual content of the function would be determined on load.

Basically the decorator could act as an #ifdef

That looks cool!
Can we however keep this PR to implement extra dependencies (ie move the imports to the functions/methods that require them)?
--
A simple decorator like
class wrap(object):
    def __init__(self, wrapped):
        self.w = wrapped
    def __call__(self, *args, **kwargs):
        global plt
        import matplotlib.pyplot as plt
        return self.w(*args, **kwargs)

would work but it comes with its sets of issues (namely we lose introspection features, the arguments of the original functions in autocomplete, etc). There are solutions to those problems but they add more complexity so overall I'd prefer that Dan could get in the functionality he needs and then we can discuss the tangential concerns in a new issue. Those would be 1) using a decorator vs repeating imports, which IMO is a stylistical issue; and 2) decorating tests that stress non-required dependencies.

Just read @ebolyen's comment and I'm not sure I'm getting it, but I feel it may belong to the new issue I was mentioning (ie, how would the decorator for concert number 1 would actually be defined).

:+1: for separate issue, we can refactor how we handle imports later. Lets use this PR to identify them.

:+1: for getting the imports moved into their respective functions/methods for now.

Note: It looks like my initial presumption of a try/except block was incorrect. It might be much simpler to simply have a decorator like @optional which just waits for an import error and raises an acceptable error itself.

Myself and @jairideout just talked about this a bit more. We think a simple importer function may be much better both cognitively and implementation-wise. We can also just lint our codebase with checklist to ensure that no local imports are occurring and to suggest the skbio import function.
It would look like:
def some_function(foo):
    plt = skbio.optional_import('matplotlib.pyplot')
    plt.plot(foo)

If matplotlib isn't around, the import will raise a helpful exception, otherwise it just imports it as expected.

Great to see so much feedback on this!
I like the idea of the importer function and wouldn't mind to work on that later. I agree with @Jorge-C that this PR should just be for moving the imports into the functions :)

Any recent progress here @dansondergaard? It would need rebasing on top of master to solve conflicts, and move the then extra imports to the functions that need them. Thank you!

@Jorge-C, I got exceedingly busy during the last few weeks of a course I'm teaching, but I'll rebase and move the imports during next week! Sorry for the delay.

Coverage increased (+0.0%) to 98.97% when pulling 0689ae61dd29f6a882778b96a6f0744142b6b71a on dansondergaard:optional-dependencies into 23b5930a75211849c3c7b3c82f020a638ed51eb2 on biocore:master.

Apologies for the wait, @Jorge-C. I have now rebased and moved the imports into their respective functions. There are more details in the commit messages.
I am not able to run tests locally since I get the following error (no useful Google results to solve this):
No module named _ssw_wrapper

However, Travis seems happy :)

@dansondergaard, for testing locally are you using pip install -e . to install skbio?

@anderspitman, nope, but that helped. Thanks!

Closing in favor of #886, which contains all of the commits in this pull request.


Unable to connect bot emulator using local visual studio app.

I am unable to connect with bot emulator using local visual studio app. getting the following error below:
POST Refresh access token failed with status code: 400

Hi @bhupendrarawat1973 Could you try clearing MSA appId and password from both sides (bot and emulator) and try again? It might be that one or both sides have an MSA misconfiguration.
Another possibility is you're using MSA credentials but working offline. MSA requires internet connectivity.
Here's a helpful auth debugging guide: https://docs.botframework.com/en-us/support/troubleshooting-bot-framework-authentication/

Closing for lack of response. If you're still seeing this problem, please open a new issue. Thanks.

I am facing the same issue while working on local bot.
As per your response, removed appID and password from web.config and emulator still not able to proceed further.

can u tell me how to resolve the error.

i am not able to connect bot file with emulator

Hello @vansh187 ,
For future reference, please open up a new issue instead of commenting on a closed, inactive issue if they are not related.
===
The "Unable to connect." message is supposed to show when the connection to the bot has been rejected due to bad credentials. However, I see that you are connecting to a local bot.
Can you possible upload the JSON inside of your .bot file? Make sure to remove any sensitive information beforehand if necessary (keys / secrets).


scanForKits could look for tollchain kits in CMake cache.

Brief Issue Summary
The addition of kits broke my developer experience. I use a toolchain file to configure cmake but didn't have a cmake-kits file which listed that as an option. I've since added it but if I ever git checkout an older commit I'll have to manually recreate the cmake-kits file. Could cmake-tools scan the CMake Cache (if it exists) to see if CMAKE_TOOLCHAIN_FILE is set? If so, add that in the scanForKits call.

Scanning is possible, although it may need to manually be named. Is the toolchain file available at the user-local level? Can you put it in the user-local kits file?

Unfortunately no, the toolchain file is repository specific and so probably shouldn't go in the user-local level as it will be different per clone of the repo. The main issue I'm running into is that if I have already setup cmake to build properly (whether that be with a toolchain file or just the default compiler) I also have to pick a kit for cmake-tools to work. It would be awesome if cmake-tools could autodetect your "kit" configuration by looking at the CMake cache. This would make the extension much quicker to get up and using. Only those who build different "kits" will really care about using them.


Try Update to version 0.35b0

Checklist

[x] Used a personal fork of the feedstock to propose changes
[x] Bumped the build number (if the version is unchanged)
[x] Reset the build number to 0 (if the version changed)
[x] Re-rendered with the latest conda-smithy (Use the phrase @conda-forge-admin, please rerender in a comment in this PR for automated rerendering)
[x] Ensured the license file is being packaged.

Hi! This is the friendly automated conda-forge-linting service.
I just wanted to let you know that I linted all conda-recipes in your PR (recipe) and found it was in an excellent condition.

@conda-forge-admin, please rerender

@marcelotrevisani please review when you get a change, thank you.


Code claw

Semi-working on current claw, need to rebuild 2-pronged claw to continue

just finished claw fab
now need to code
assigning @ggastin30 and @VeganPorkChop


Agones Getting Started Guide with Minikube uses wrong IP due to minikube bug

What happened:
Following the Installation and [Getting Started] (https://agones.dev/site/docs/getting-started/create-gameserver/) guide allows the user to have the simple-upd sample server up and running.
The problem is that the minikube reported Node IP for the game server is not correct and does not allow the user to connect  to the game server, using the nc command provided.
What you expected to happen:
The main expectation when following the guide is that it works out of the box. The result is that you have a game server running correctly in the cluster, but not able to connect to it, thus not being able to finish the getting started guide.
How to reproduce it (as minimally and precisely as possible):
Follow the steps provided in the links provided above. When getting to the point of doing:
kubectl get gs

You get something like:
NAME               STATE   ADDRESS     PORT   NODE       AGE
simple-udp-q8p77   Ready   <IP_ADDRESS>   7601   minikube   4h

Where the ADDRESS is unreachable when doing:
nc -u {IP} {PORT}

Anything else we need to know?:
The solution to this problem with the minikube version I am using is to use this command to get the correct ADDRESS:
minikube ip

Then, you can use this IP + the port reported in:
kubectl get gs

Then you are able to connect.
This has been discussed in the slack channel, and we found this bug reported to minikube:
Environment:

Agones version: 0.9
Kubernetes version (use kubectl version): client 1.13.1 / server 1.11.0
Cloud provider or hardware configuration: minikube v1.0
Install method (yaml/helm): yaml

Result of kubectl describe node:
$kubectl describe node
Name:               minikube
Roles:              master
Labels:             beta.kubernetes.io/arch=amd64
                    beta.kubernetes.io/os=linux
                    kubernetes.io/hostname=minikube
                    node-role.kubernetes.io/master=
Annotations:        kubeadm.alpha.kubernetes.io/cri-socket: /var/run/dockershim.sock
                    node.alpha.kubernetes.io/ttl: 0
                    volumes.kubernetes.io/controller-managed-attach-detach: true
CreationTimestamp:  Wed, 24 Apr 2019 11:02:45 +0200
Taints:             <none>
Unschedulable:      false
Conditions:
  Type             Status  LastHeartbeatTime                 LastTransitionTime                Reason                       Message
  ----             ------  -----------------                 ------------------                ------                       -------
  OutOfDisk        False   Thu, 25 Apr 2019 17:07:52 +0200   Wed, 24 Apr 2019 11:02:40 +0200   KubeletHasSufficientDisk     kubelet has sufficient disk space available
  MemoryPressure   False   Thu, 25 Apr 2019 17:07:52 +0200   Wed, 24 Apr 2019 11:02:40 +0200   KubeletHasSufficientMemory   kubelet has sufficient memory available
  DiskPressure     False   Thu, 25 Apr 2019 17:07:52 +0200   Wed, 24 Apr 2019 11:02:40 +0200   KubeletHasNoDiskPressure     kubelet has no disk pressure
  PIDPressure      False   Thu, 25 Apr 2019 17:07:52 +0200   Wed, 24 Apr 2019 11:02:40 +0200   KubeletHasSufficientPID      kubelet has sufficient PID available
  Ready            True    Thu, 25 Apr 2019 17:07:52 +0200   Wed, 24 Apr 2019 11:02:40 +0200   KubeletReady                 kubelet is posting ready status
Addresses:
  InternalIP:  <IP_ADDRESS>
  Hostname:    minikube
Capacity:
 cpu:                2
 ephemeral-storage:  17784772Ki
 hugepages-2Mi:      0
 memory:             2038624Ki
 pods:               110
Allocatable:
 cpu:                2
 ephemeral-storage:<PHONE_NUMBER>9
 hugepages-2Mi:      0
 memory:             1936224Ki
 pods:               110
System Info:
 Machine ID:                 562f35f800d74eeb93791ebfcfaa8008
 System UUID:                2A2E0027-81D2-46B2-9109-29B27BA7D95A
 Boot ID:                    6da465dc-0529-4039-96c0-6b87b0d54f12
 Kernel Version:             4.15.0
 OS Image:                   Buildroot 2018.05
 Operating System:           linux
 Architecture:               amd64
 Container Runtime Version:  docker://18.6.2
 Kubelet Version:            v1.11.0
 Kube-Proxy Version:         v1.11.0
Non-terminated Pods:         (14 in total)
  Namespace                  Name                                     CPU Requests  CPU Limits  Memory Requests  Memory Limits  AGE
  ---------                  ----                                     ------------  ----------  ---------------  -------------  ---
  agones-system              agones-controller-799c74ff54-hhn7n       0 (0%)        0 (0%)      0 (0%)           0 (0%)         30h
  agones-system              agones-ping-6d4d5d7f4d-85g2k             0 (0%)        0 (0%)      0 (0%)           0 (0%)         30h
  agones-system              agones-ping-6d4d5d7f4d-tckgn             0 (0%)        0 (0%)      0 (0%)           0 (0%)         30h
  default                    simple-udp-q8p77                         50m (2%)      20m (1%)    32Mi (1%)        32Mi (1%)      5h5m
  kube-system                coredns-78fcdf6894-h492h                 100m (5%)     0 (0%)      70Mi (3%)        170Mi (8%)     30h
  kube-system                coredns-78fcdf6894-mm2kr                 100m (5%)     0 (0%)      70Mi (3%)        170Mi (8%)     30h
  kube-system                etcd-minikube                            0 (0%)        0 (0%)      0 (0%)           0 (0%)         30h
  kube-system                kube-addon-manager-minikube              5m (0%)       0 (0%)      50Mi (2%)        0 (0%)         30h
  kube-system                kube-apiserver-minikube                  250m (12%)    0 (0%)      0 (0%)           0 (0%)         30h
  kube-system                kube-controller-manager-minikube         200m (10%)    0 (0%)      0 (0%)           0 (0%)         30h
  kube-system                kube-proxy-n6rm4                         0 (0%)        0 (0%)      0 (0%)           0 (0%)         30h
  kube-system                kube-scheduler-minikube                  100m (5%)     0 (0%)      0 (0%)           0 (0%)         30h
  kube-system                kubernetes-dashboard-6fcb8b9cbb-6lfs4    0 (0%)        0 (0%)      0 (0%)           0 (0%)         22m
  kube-system                storage-provisioner                      0 (0%)        0 (0%)      0 (0%)           0 (0%)         30h
Allocated resources:
  (Total limits may be over 100 percent, i.e., overcommitted.)
  Resource           Requests     Limits
  --------           --------     ------
  cpu                805m (40%)   20m (1%)
  memory             222Mi (11%)  372Mi (19%)
  ephemeral-storage  0 (0%)       0 (0%)
Events:              <none>`

If you run kubectl get nodes - o wide on a GKE cluster vs. a minikube cluster you can see that on the GKE cluster the columns for the internal IP and external IP of each node is populated while on the minikube cluster only the column for internal IP is filled in. Looking at the output of kubectl get gs on the GKE cluster I see the external IP for the node being used while on the minikube cluster it uses the internal IP (the only one available).
It makes sense that the minikube node wouldn't be reachable via an internal IP from "outside of the cluster" since that is what internal IP means and generally a gameserver is intended to be reachable externally. The underlying problem seems to be similar to this issue where it's explained that the minikube VM is taking the address of eth0 but eth1 is what is returned by minikube ip.
I've opened https://github.com/kubernetes/minikube/issues/4330 against the minikube repo to see if there is something they can fix on that end. If not, we can update the docs specifically for minikube with the workaround you put into the initial bug report.

Sounds good! Cheers :y:
El El jue, 23 may 2019 a las 10:43, Robert Bailey<EMAIL_ADDRESS>escribió:

If you run kubectl get nodes - o wide on a GKE cluster vs. a minikube
cluster you can see that on the GKE cluster the columns for the internal IP
and external IP of each node is populated while on the minikube cluster
only the column for internal IP is filled in. Looking at the output of kubectl
get gs on the GKE cluster I see the external IP for the node being used
while on the minikube cluster it uses the internal IP (the only one
available).
It makes sense that the minikube node wouldn't be reachable via an
internal IP from "outside of the cluster" since that is what internal IP
means and generally a gameserver is intended to be reachable externally.
The underlying problem seems to be similar to this issue
https://github.com/kubernetes/minikube/issues/2922#issuecomment-409098963
where it's explained that the minikube VM is taking the address of eth0 but
eth1 is what is returned by minikube ip.
I've opened kubernetes/minikube#4330
https://github.com/kubernetes/minikube/issues/4330 against the minikube
repo to see if there is something they can fix on that end. If not, we can
update the docs specifically for minikube with the workaround you put into
the initial bug report.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/GoogleCloudPlatform/agones/issues/751?email_source=notifications&email_token=ACKYNMEZ6OPXECQB6ERKYZDPWZKLXA5CNFSM4HJI7YL2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGODWBP7XQ#issuecomment-495124446,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ACKYNMB6EQ5KVCGPLBBAM2TPWZKLXANCNFSM4HJI7YLQ
.

My minikube issue was a dupe and I've bumped https://github.com/kubernetes/minikube/issues/3416 which is where the feature is being tracked on that end. If this isn't fixed in minikube before our 1.0 milestone we will definitely update our docs.


add more falsehood

wasn't really sure if camelCase should be used (noway vs yeahRight)

Thank you for your contribution. noway is used here as the single word similarly to nowise so camel case is preferred.


Pretraining unstable

I carefully processed the pretraining datasets. But the loss is unstable when pretraining. Which is not monotone decreasing.
Is this right?  I worry that there are some mistakes in the complicated data preprocessing.
For example:
Epoch 0:  34%|███▍      | 12412/36673 [4:26:06<8:40:09,  1.29s/it, loss=2.58, v_num=0]
Epoch 0:  35%|███▍      | 12665/36673 [4:36:41<8:44:29,  1.31s/it, loss=3.12, v_num=0]
Epoch 0:  39%|███▉      | 14368/36673 [5:43:41<8:53:33,  1.44s/it, loss=2.57, v_num=0]
Epoch 0:  40%|███▉      | 14583/36673 [5:56:04<8:59:23,  1.47s/it, loss=3.36, v_num=0]

HI, the loss can be increased under 25k training steps since the learning rate is warmed up until then.

HI, the loss can be increased under 25k training steps since the learning rate is warmed up until then.

Thanks for your reply!


Numericality validation not compatible with Ember data 'number' type

Ember Data uses Number(value) to serialize attributes whereas Ember Validations matches against a pattern which cleverly allows commas.
var value = '123,456'; // valid via the numericality matcher

// Ember Data will serialize it like so…
Number('123,456') // NaN

The resulting behavior is that a field will appear as valid, however upon saving that value is converted to null.
I appreciate that those fancy commas are sometimes desirable, however I'm not sure they are a sensible default behavior. Perhaps they could be enabled via a boolean toggle option?

I am going to close this issue for now, feel free to reopen this issue if you feel like it's still relevant and we should take a look at it.


Manual Android install fix

":VoiceModule"->":react-native-voice"

I confirmed this matches the pattern as in the example (https://github.com/wenkesj/react-native-voice/blob/master/VoiceTest/android/settings.gradle).
Merging it now, thanks for your contribution :)


[stable/datadog] Define cluster-agent container command explicitly

What this PR does / why we need it:
This PR doesn't change the behaviour but makes it easier to mutate the pod definition. For example, in the case of secrets injection.
Checklist

[x] DCO signed
[x] Chart Version bumped
[x] Variables are documented in the README.md
[x] Title of the PR starts with chart name (e.g. [stable/mychartname])

/assign @irabinovitch

/ok-to-test

/assign clamoriniere

/lgtm


Minor fixes in Migration to 0.20.0 documentation

Describe changes
While I was going through the documentation for migrating from zenml 0.13.0 to 0.20.0 at https://docs.zenml.io/guidelines/migration-zero-twenty, I found that commas were missing in the code in Deprecating the enable_xxx decorators section, so I've included those so that anyone can just copy-paste that code and make it work without having to manually add the missing commas. Also the syntax highlighting has been checked and updated when applicable, from bash to python when code was written in Python.
Pre-requisites
Please ensure you have done the following:

[X] I have read the CONTRIBUTING.md document.
[X] If my change requires a change to docs, I have updated the documentation accordingly.
[ ] If I have added an integration, I have updated the integrations table and the corresponding website section.
[ ] I have added tests to cover my changes.

Types of changes

[ ] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)
[X] Other (add details above) -> Documentation update

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

Sure @schustmi, I'll do that now, as I just pushed another commit to fix the syntax highlighting from bash to python in one piece of code down there in the same documentation page :smile:

Already done @schustmi thanks :hugs:

Thanks for the quick update!


PageUp/PageDown don't work in single line CodeMirror

Go to https://codemirror.net/demo/resize.html
Set the content of the editor to be 123
Put your cursor at the end of the editor and press page up.

The cursor unexpectedly stays at the end of the editor

Set the content of the editor to be two lines:

123
456

Put your cursor at the end of the first line and press page up

The cursor moves to the start of the editor as expected.

This appears to be dependent on the CSS applied to the editor. It doesn't happen in the main editor on the CodeMirror.net home page.
Tested in Chrome and Firefox.
Thanks!

This issue bites us a lot =/

Fixed via #4215


Connection Continously Fails With New Version

The connection continuously keeps failing. See error log Below:
anurags-MBP-2:keyforth_slack anuragsaran$ node server.js
Initializing Botkit v0.5.3
info: ** No persistent storage method specified! Data may be lost when process shuts down.
info: ** Setting up custom handlers for processing Slack messages
info: ** API CALL: https://slack.com/api/rtm.start
notice: ** BOT ID: comradely ...attempting to connect to RTM!
notice: RTM websocket opened
notice: RTM close event: 1006 :
error: Abnormal websocket close event, attempting to reconnect
notice: ** BOT ID: comradely ...reconnect attempt #1 of null being made after 1000ms
info: ** API CALL: https://slack.com/api/rtm.start
notice: ** BOT ID: comradely ...attempting to connect to RTM!
notice: RTM websocket opened
notice: RTM close event: 1006 :
error: Abnormal websocket close event, attempting to reconnect
notice: ** BOT ID: comradely ...reconnect attempt #1 of null being made after 1000ms
info: ** API CALL: https://slack.com/api/rtm.start
notice: ** BOT ID: comradely ...attempting to connect to RTM!
notice: RTM websocket opened
notice: RTM close event: 1006 :
error: Abnormal websocket close event, attempting to reconnect
notice: ** BOT ID: comradely ...reconnect attempt #1 of null being made after 1000ms
info: ** API CALL: https://slack.com/api/rtm.start
notice: ** BOT ID: comradely ...attempting to connect to RTM!
notice: RTM websocket opened
notice: RTM close event: 1006 :

With Debug : true
notice: ** BOT ID: comradely ...attempting to connect to RTM!
notice: RTM websocket opened
debug: RECEIVED MESSAGE
debug: CUSTOM FIND CONVO undefined undefined
debug: DEFAULT SLACK MSG RECEIVED RESPONDER
debug: RECEIVED MESSAGE
debug: CUSTOM FIND CONVO undefined undefined
debug: DEFAULT SLACK MSG RECEIVED RESPONDER
debug: RECEIVED MESSAGE
debug: CUSTOM FIND CONVO U55SGQWF5 undefined
debug: DEFAULT SLACK MSG RECEIVED RESPONDER
notice: RTM close event: 1006 :
error: Abnormal websocket close event, attempting to reconnect
notice: ** BOT ID: comradely ...reconnect attempt #1 of null being made after 1000ms
debug: rtm.start { no_unreads: true,
  simple_latest: true,

I am seeing this issue with  "botkit": "^0.5.1" and  "botkit": "^0.5.0" versions too.

Same here. I dropped back to 0.5.2 and it fixed the issue.

Duplicate of https://github.com/howdyai/botkit/issues/806 Should have a fix for this this morning!


SecRuleUpdate*ById not working inside VirtualHost scope

The documentation shows, that SecRuleUpdateTargetById can be used in any scope.
The config for my vhost looks like this:
<VirtualHost *:80>
  SecRuleUpdateTargetById 973020 !REQUEST_COOKIES
  ...
</VirtualHost>

As soon as I restart the Apache with the SecRuleUpdateTargetById inside the virtualhost config, Apache refuses to start and claims the following error message
Updating target by ID with no ruleset in this context

I'm using the latest version of ModSecurity and the OWASP CRS.
Is this a bug, is the documentation wrong or am I missing something?

Any plan to fix this?
Using ctl:removeTargetById is not always possible, especially in a shared environment where you can only add rules after the default ones.
The behavior should be, for any location:

remove the rule with specified id
create a new version of that rule (same id) with the exception

Seems to be solved in 2.9 - even in a
Any confirmation that the fix is supposed to be complete?

Main problem:
ctl:removeTargetById doesn't know how to work with regex . For instance:
ctl:ruleRemoveTargetByID=981248;ARGS:widget-text[4][text]    - OK
ctl:ruleRemoveTargetByID=981248;ARGS:/^widget/                   -  BAD

This situation not problem, need trick with chains. However so as ctl action doesn't uses macros, you can make so:
  # For -> ARGS_NAMES:columns[numbers][text][text]
  SecRule REQUEST_URI "@rx ^/admin/path.*" \
                       "id:'1013',phase:1,t:none,log,chain,\
                        msg:'MATCHED_VAR_NAME - %{MATCHED_VAR_NAME}'"
  SecRule ARGS_NAMES  "@rx columns\[[0-9]+\]\[[a-z]+\]\[[a-z]+\]" "ctl:ruleRemoveByID=981173"

If add some small patch and make recompilation of module, then results may be more restrictive. In this case we could make exception for each MACHED_VAR_NAME exactly.
 SecRule ARGS_NAMES  "@rx columns\[[0-9]+\]\[[a-z]+\]\[[a-z]+\]" \
                                        "ctl:ruleRemoveTargetByID=981173;%{MATCHED_VAR_NAME}"

best regards, Andrei
upwork.link

This situation not problem, need trick with chains. However so as ctl action doesn't uses macros, you can make so:
  # For -> ARGS_NAMES:columns[numbers][text][text]
  SecRule REQUEST_URI "@rx ^/admin/path.*" \
                       "id:'1013',phase:1,t:none,log,chain,\
                        msg:'MATCHED_VAR_NAME - %{MATCHED_VAR_NAME}'"
  SecRule ARGS_NAMES  "@rx columns\[[0-9]+\]\[[a-z]+\]\[[a-z]+\]" "ctl:ruleRemoveByID=981173"

If add some small patch and make recompilation of module, then results may be more restrictive. In this case we could make exception for each MACHED_VAR_NAME exactly.
 SecRule ARGS_NAMES  "@rx columns\[[0-9]+\]\[[a-z]+\]\[[a-z]+\]" \
                                        "ctl:ruleRemoveTargetByID=981173;%{MATCHED_VAR_NAME}"

best regards, Andrei
upwork.link

This does not work in ModSecurity 2.9 and Apache. Am able to log a %{MATCHED_VAR} and %{MATCHED_VAR_NAME}, so it detects the array fine, but ctl does not appear to be taking %{MATCHED_VAR_NAME} or %{MATCHED_VAR} when it's passed to it. The only solution was moving rules to the global config outside the VirtualHost. Really bad. Not impressed with Modsecurity team, so many open issues and bugs like this for years. It blows my mind that ctl:ruleRemoveTargetById does not simply accept regex in the target name - most websites make use of arrays and other dynamically named REQUEST variables.

SecRuleUpdate*ById is no longer an issue with version 3.0.


Websocket fails to open due to EADDRINUSE

If the server is immediately restarted, MCWS is unable to reopen the websocket server since TCP holds connections for some time after the application is closed.

The websocket library that this plugin is based on offers a method for disabling this TCP behavior.


Update clientId for NetSuite

Pull Request Test Coverage Report for Build<PHONE_NUMBER>5
Details

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 76.58%

Totals

Change from base Build<PHONE_NUMBER>1:
0.0%

Covered Lines:
561

Relevant Lines:
705

💛  - Coveralls


switchInput example

Hi,
Create project! I would like to use switchInput to change the hdmi, but can't seem to find the right command. Could you please give an example on how to use this command? I've found some other sources that use the same api, but no official documentation. Do you have a link for that as well?
Thanks!
Roy

I was able to get all main menu launch points using
lgtv.request('ssap://com.webos.applicationManager/listLaunchPoints', function (err, res) {
   var launchPoints = res.launchPoints;
});

The object also contains all of the ids. To switch to hdmi2, I use:
lgtv.request('ssap://system.launcher/launch', {id: com.webos.app.hdmi2});

Nice! That was exactly what I needed. Works on my 55e6

One more question... is there a command to request the current active hdmi source (or app)?
Thanks!


Template does not use storageClass

The template does not make use of a configured cluster.persistentVolume.storageClass value for the Stateful Set. The property is documented but not applied.

What this PR does / why we need it:
Which issue this PR fixes (optional, in fixes #<issue number>(, fixes #<issue_number>, ...) format, will close that issue when PR gets merged): fixes #
Special notes for your reviewer:

Version is now 0.1.2

Merging from master made the version no longer bumped :) You'll need to bump it again.

Oh my... this pull request thing makes me confused.... now it should be OK?

It seems there are still some problems: [ERROR] templates/: render error in "rethinkdb/templates/rethinkdb-cluster-stateful-set.yaml": template: rethinkdb/templates/rethinkdb-cluster-stateful-set.yaml:105:8: executing "rethinkdb/templates/rethinkdb-cluster-stateful-set.yaml" at <eq "-" .Values.clust...>: error calling eq: invalid type for comparison

There's another PR for storage class which is kind of stuck: #2030


Add SAL annotations to Equals and StrictEquals

    *value = false;

FALSE as well, given we are here? :)

Refers to: lib/Runtime/Library/GlobalObject.cpp:2242 in 45535dd. [](commit_id = 45535dd562285d15e5613d3accd2588562a7b1b2, deletion_comment = False)

:shipit:

@dotnet-bot build arm please

@dotnet-bot test Windows arm_debug please

@dotnet-bot test Windows arm_test please


Defect - selecting a new puzzle while on the board does not change the picture

fixed with merge #47


Remove vendor prefix and outdated CSS for obsolete browser versions

The vendor prefixes are no longer required or recommended as the CSS is
supported across modern browsers.
Removing these prefixes will help simplify CSS and reduce its overall
asset size.
In addition, a syntax error was discovered in the use of the
linear-gradient() CSS function. This has been fixed.

Very nice!


Missing install DBT cli step or Compose run

in the Airflow + DBT + Snowflake quick start (https://quickstarts.snowflake.com/guide/data_engineering_with_apache_airflow/index.html?index=..%2F..index#1)
there is a step asking to run dbt init dbt  but in no previous step is asking to install DBT before, or to run the the docker compose file to install Airflow + DBT.
Also, in the same page it is saying the structure tree should have a docker file. From where?
Please, make the steps more explicits.

I agree. The above issue still remains open. @cassiobolba - Are you able to overcome this issue?

I also agree.

I did overcome because I already know how to work with docker and dbt core a little bit. People new to it would not be able to proceed. Sorry, but it has been almost a year so I do not remember the workaround I did

Hey,
i faced the same issue, refer this doc till 3rd point
https://docs.astronomer.io/learn/airflow-dbt
and then go to next step in snowflake project again, which will be https://quickstarts.snowflake.com/guide/data_engineering_with_apache_airflow/index.html?index=..%2F..index#2

Yep, the documentation on this is pretty faulty. I don't like installing things on my local computer, but not sure how to do it with a virtual environment in addition to the docker container


Create contentPublishing mutation

Adds a mutation to handle publishing content (status, published, and unpublished fields).
This mutation enforces the following rules:

If given a model status active the content will be published immediately, unless a future published date is provided.

If the content already has published or unpublished dates set, modify them as necessary based on the payload.

If given a draft or deleted model status the content will be unpublished immediately.

Example queries:
mutation PublishContentStatusOld {
  contentPublishing(input: {
    id: 21576960
    status: active
    # 2018-09-30
    published:<PHONE_NUMBER>000
    # 2021-04-13
    unpublished:<PHONE_NUMBER>000
  }) {
    id
    status
    statusText
    publishedDate
    unpublishedDate
  }
}

{
  "data": {
    "contentPublishing": {
      "id": 21576960,
      "status": 1,
      "statusText": "Expired",
      "publishedDate": "Sep 30th, 2018",
      "unpublishedDate": "Apr 13th, 2021"
    }
  }
}

mutation PublishContentStatus {
  contentPublishing(input: { id: 21576960, status: active }) {
    id
    status
    statusText
    publishedDate
    unpublishedDate
  }
}

{
  "data": {
    "contentPublishing": {
      "id": 21576960,
      "status": 1,
      "statusText": "Published",
      "publishedDate": "Sep 30th, 2018",
      "unpublishedDate": null
    }
  }
}

mutation PublishContentScheduled {
  contentPublishing(
    input: {
      id: 21576960
      status: active
      # 2021-12-01
      published:<PHONE_NUMBER>000
      # 2021-12-03
      unpublished:<PHONE_NUMBER>000
    }
  ) {
    id
    status
    statusText
    publishedDate
    unpublishedDate
  }
}

{
  "data": {
    "contentPublishing": {
      "id": 21576960,
      "status": 1,
      "statusText": "Scheduled",
      "publishedDate": "Dec 1st, 2021",
      "unpublishedDate": "Dec 3rd, 2021"
    }
  }
}

mutation PublishContentDraft {
  contentPublishing(input: { id: 21576960, status: draft }) {
    id
    status
    statusText
    publishedDate
    unpublishedDate
  }
}

{
  "data": {
    "contentPublishing": {
      "id": 21576960,
      "status": 2,
      "statusText": "Draft",
      "publishedDate": null,
      "unpublishedDate": null
    }
  }
}

mutation PublishContentDelete {
  contentPublishing(input: { id: 21576960, status: deleted }) {
    id
    status
    statusText
    publishedDate
    unpublishedDate
  }
}

{
  "data": {
    "contentPublishing": {
      "id": 21576960,
      "status": 0,
      "statusText": "Deleted",
      "publishedDate": null,
      "unpublishedDate": null
    }
  }
}

mutation PublishContentError {
  contentPublishing(input: { id: 21576960, status: any }) {
    id
  }
}

{
  "errors": [
    {
      "message": "The ModelStatus value 'any' is not valid for publishing.",
      "locations": [
        {
          "line": 52,
          "column": 3
        }
      ],
      "path": [
        "contentPublishing"
      ],
      "extensions": {
        "code": "BAD_USER_INPUT"
      }
    }
  ],
  "data": null
}

 Create GraphQL mutations to allow modification of company and event fields


WIP: Config file input

We'd like to do be able to capture things from the environment/at runtime and have them merged in to the metadata of our docker container. One way we can do this is what you see in the BUILD.bazel file change below: we could have our external_config_file grab the git commit, git branch, etc and then have that merged in (I will probably update this PR to do just that, but for now its a static file).
We will then pass that to the merger app, which will merge it alongside the various config that we layer into the composition.
I was quite torn on exactly where to specify this, but container_compose felt like the right place for now.
This will be WIP until I can merge the accompanying PR in rules_minidock_tools, which I will link in a moment.

Here's the tools PR: https://github.com/bazeltools/rules_minidock_tools/pull/278

@johnynek alrighty: this is ready to go, it can take the genrule files and merge them properly.


Query fixes for trace print race condition and draining with empty pages

Pull Request Template
Description
This fixes a bug where query would stop draining because it would get an empty page. It also fixes a race condition with trace prints that caused null reference exceptions.
Tests will follow in a new PR.

internal sealed class DocumentProducer

Is it used for non-pipelined usage?

Refers to: Microsoft.Azure.Cosmos/src/Query/ParallelQuery/DocumentProducer.cs:24 in 7332556. [](commit_id = 733255622bffe78d48e956390bb634e30425be2b, deletion_comment = False)


gateway not beaconing

investigate this

The ble container in the gw without concentrator seems to crash after a while:
check File "/code/ble_service.py", line 157, in <module>
13:44:372024-11-07 13:44:37
- srcful_gateway - INFO - Swarm id retrieved
13:44:372024-11-07 13:44:37
- helium_gateway - WARNING - Helium Gateway initialized
13:44:372024-11-07 13:44:37
Traceback (most recent call last):
13:44:372024-11-07 13:44:37
File "/code/venv/lib/python3.11/site-packages/urllib3/connection.py", line 199, in _new_conn
13:44:372024-11-07 13:44:37
sock = connection.create_connection(
13:44:372024-11-07 13:44:37
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
13:44:372024-11-07 13:44:37
File "/code/venv/lib/python3.11/site-packages/urllib3/util/connection.py", line 85, in create_connection
13:44:372024-11-07 13:44:37
raise err
13:44:372024-11-07 13:44:37
File "/code/venv/lib/python3.11/site-packages/urllib3/util/connection.py", line 73, in create_connection
13:44:372024-11-07 13:44:37
sock.connect(sa)
13:44:372024-11-07 13:44:37
ConnectionRefusedError: [Errno 111] Connection refused
13:44:372024-11-07 13:44:37
13:44:372024-11-07 13:44:37
The above exception was the direct cause of the following exception:
13:44:372024-11-07 13:44:37
13:44:372024-11-07 13:44:37
Traceback (most recent call last):
13:44:372024-11-07 13:44:37
File "/code/venv/lib/python3.11/site-packages/urllib3/connectionpool.py", line 789, in urlopen
13:44:372024-11-07 13:44:37
response = self._make_request(
13:44:372024-11-07 13:44:37
^^^^^^^^^^^^^^^^^^^
13:44:372024-11-07 13:44:37
File "/code/venv/lib/python3.11/site-packages/urllib3/connectionpool.py", line 495, in _make_request
13:44:372024-11-07 13:44:37
conn.request(
13:44:372024-11-07 13:44:37
File "/code/venv/lib/python3.11/site-packages/urllib3/connection.py", line 441, in request
13:44:372024-11-07 13:44:37
self.endheaders()
13:44:372024-11-07 13:44:37
File "/usr/local/lib/python3.11/http/client.py", line 1289, in endheaders
13:44:372024-11-07 13:44:37
self._send_output(message_body, encode_chunked=encode_chunked)
13:44:372024-11-07 13:44:37
File "/usr/local/lib/python3.11/http/client.py", line 1048, in _send_output
13:44:372024-11-07 13:44:37
self.send(msg)
13:44:372024-11-07 13:44:37
File "/usr/local/lib/python3.11/http/client.py", line 986, in send
13:44:372024-11-07 13:44:37
self.connect()
13:44:372024-11-07 13:44:37
File "/code/venv/lib/python3.11/site-packages/urllib3/connection.py", line 279, in connect
13:44:372024-11-07 13:44:37
self.sock = self._new_conn()
13:44:372024-11-07 13:44:37
^^^^^^^^^^^^^^^^
13:44:372024-11-07 13:44:37
File "/code/venv/lib/python3.11/site-packages/urllib3/connection.py", line 214, in _new_conn
13:44:372024-11-07 13:44:37
raise NewConnectionError(
13:44:372024-11-07 13:44:37
urllib3.exceptions.NewConnectionError: <urllib3.connection.HTTPConnection object at 0x7fa200c850>: Failed to establish a new connection: [Errno 111] Connection refused
13:44:372024-11-07 13:44:37
13:44:372024-11-07 13:44:37
The above exception was the direct cause of the following exception:
13:44:372024-11-07 13:44:37
13:44:372024-11-07 13:44:37
Traceback (most recent call last):
13:44:372024-11-07 13:44:37
File "/code/venv/lib/python3.11/site-packages/requests/adapters.py", line 564, in send
13:44:372024-11-07 13:44:37
resp = conn.urlopen(
13:44:372024-11-07 13:44:37
^^^^^^^^^^^^^
13:44:372024-11-07 13:44:37
File "/code/venv/lib/python3.11/site-packages/urllib3/connectionpool.py", line 843, in urlopen
13:44:372024-11-07 13:44:37
retries = retries.increment(
13:44:372024-11-07 13:44:37
^^^^^^^^^^^^^^^^^^
13:44:372024-11-07 13:44:37
File "/code/venv/lib/python3.11/site-packages/urllib3/util/retry.py", line 519, in increment
13:44:372024-11-07 13:44:37
raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type]
13:44:372024-11-07 13:44:37
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
13:44:372024-11-07 13:44:37
urllib3.exceptions.MaxRetryError: HTTPConnectionPool(host='localhost', port=3000): Max retries exceeded with url: /name (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7fa200c850>: Failed to establish a new connection: [Errno 111] Connection refused'))
13:44:372024-11-07 13:44:37
13:44:372024-11-07 13:44:37
During handling of the above exception, another exception occurred:
13:44:372024-11-07 13:44:37
13:44:372024-11-07 13:44:37
Traceback (most recent call last):
13:44:372024-11-07 13:44:37
File "/code/ble_service.py", line 157, in <module>
13:44:372024-11-07 13:44:37
asyncio.run(run(args.gpio_button_pin))
13:44:372024-11-07 13:44:37
File "/usr/local/lib/python3.11/asyncio/runners.py", line 190, in run
13:44:372024-11-07 13:44:37
return runner.run(main)
13:44:372024-11-07 13:44:37
^^^^^^^^^^^^^^^^
13:44:372024-11-07 13:44:37
File "/usr/local/lib/python3.11/asyncio/runners.py", line 118, in run
13:44:372024-11-07 13:44:37
return self._loop.run_until_complete(task)
13:44:372024-11-07 13:44:37
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
13:44:372024-11-07 13:44:37
File "/usr/local/lib/python3.11/asyncio/base_events.py", line 653, in run_until_complete
13:44:372024-11-07 13:44:37
return future.result()
13:44:372024-11-07 13:44:37
^^^^^^^^^^^^^^^
13:44:372024-11-07 13:44:37
File "/code/ble_service.py", line 79, in run
13:44:372024-11-07 13:44:37
gateway = Gateway(SERVER)
13:44:372024-11-07 13:44:37
^^^^^^^^^^^^^^^
13:44:372024-11-07 13:44:37
File "/code/gateway.py", line 31, in __init__
13:44:372024-11-07 13:44:37
self.helium_gw = HeliumGateway()
13:44:372024-11-07 13:44:37
^^^^^^^^^^^^^^^
13:44:372024-11-07 13:44:37
File "/code/helium_gateway.py", line 18, in __init__
13:44:372024-11-07 13:44:37
self.fetch_animal_name()
13:44:372024-11-07 13:44:37
File "/code/helium_gateway.py", line 22, in fetch_animal_name
13:44:372024-11-07 13:44:37
response = requests.get(url)
13:44:372024-11-07 13:44:37
^^^^^^^^^^^^^^^^^
13:44:372024-11-07 13:44:37
File "/code/venv/lib/python3.11/site-packages/requests/api.py", line 73, in get
13:44:372024-11-07 13:44:37
return request("get", url, params=params, **kwargs)
13:44:372024-11-07 13:44:37
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
13:44:372024-11-07 13:44:37
File "/code/venv/lib/python3.11/site-packages/requests/api.py", line 59, in request
13:44:372024-11-07 13:44:37
return session.request(method=method, url=url, **kwargs)
13:44:372024-11-07 13:44:37
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
13:44:372024-11-07 13:44:37
File "/code/venv/lib/python3.11/site-packages/requests/sessions.py", line 589, in request
13:44:372024-11-07 13:44:37
resp = self.send(prep, **send_kwargs)
13:44:372024-11-07 13:44:37
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
13:44:372024-11-07 13:44:37
File "/code/venv/lib/python3.11/site-packages/requests/sessions.py", line 703, in send
13:44:372024-11-07 13:44:37
r = adapter.send(request, **kwargs)
13:44:372024-11-07 13:44:37
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
13:44:372024-11-07 13:44:37
File "/code/venv/lib/python3.11/site-packages/requests/adapters.py", line 597, in send
13:44:372024-11-07 13:44:37
raise ConnectionError(e, request=request)
13:44:372024-11-07 13:44:37
requests.exceptions.ConnectionError: HTTPConnectionPool(host='localhost', port=3000): Max retries exceeded with url: /name (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7fa200c850>: Failed to establish a new connection: [Errno 111] Connection refused'))


Update : 23/03/2021

Modifications de la decklist Grenzo:
Cuts:

Snuff Out
Unclaimed territory
Graven Cairns
Ins:
Chain Lightning
Mountain x2

The lists in the Codex are not meant to be up-to-date and may need revision from time to time.
I do not think it would be wise to log every update but maybe check the lists once per banlist?
All in all, I will wait for the next banlist and the possible new changes you'll do before accepting this PR

Ok!


Epoll: Ability to get amount of sent segments

Expected behavior
To calculate the packet loss percentage, it would be possible to do tcpi_lost * 100 / tcpi_data_segs_out.
Sadly, tcpi_data_segs_out is required to get the amount of sent segments, which is not exposed.
Adding it directly might not work either, because not all Linux versions support it.

In other words, you want to be able to query tcp_info from getsocketopt?

A mechanism to do this already exists, it's just lacking some fields

Closed due to glibc not providing an up to date struct.


Upgrade to websocketpp 0.7,

Hi,
there is a problem with websocketpp 0.6 that you are referencing as submodule when cross compiling for ARMv5TE. I just ran into this issue on my embedded device ...
Please update to websocketpp 0.7.
regards,
fabian büttner

Upgraded in beed54a5


Don't run API tests for storage/messaging changes

The API tests are usually 13–14 minutes long, and given the frequency with which we fiddle with either VHS or the SQS streams, this could save us quite a bit of build time.

Wait a minute ... I thought we were using the external storage library!
Looks like I lost the plot a bit here. Why aren't we using https://github.com/wellcometrust/scala-storage?

I believe, because the release process is broken, so the change was rolled back until we fix the releases in scala-storage


No more monthly salt in uuid

Describe the Bug
A monthly salt was previously used in uuid generation here:
https://github.com/umami-software/umami/blob/master/src/lib/crypto.js
This made a session with same details to have a different session_id over months.
It's not used anymore and it doesn't look like a deliberate choice.
Database
PostgreSQL
Relevant log output
No response
Which browser are you using? (if relevant)
No response
How are you deploying your application? (if relevant)
No response

This is a bug. It should be part for the uuid function.

Fixed in v2.9.0.


Two large "output_example" lists exist within main.js

Combine what they have in common into one. Need to avoid duplication as much as possible.

This is a specific instance of the broad goal described in https://github.com/IfyAniefuna/experiment_metadata/issues/85


test service::test::network hungs sometimes

An example where it fails: https://travis-ci.org/maidsafe/crust/jobs/81865528#L217
It succeed in the same environment/CI-machine in other situations. So it's probably a race.
@inetic's big picture explanation of the test:

It starts a number of crust::Services, starts listening on each one, then they interconnect such that each one is connected to the other once. Once they are connected, they exchange few messages. The Stats object counts how many messages is exchanged. Once the exact number of messages has been sent, threads will exit and stats merged to see if the numbers correspond.

Start to improving the test by introducing timeouts for each task, then when the timeout fires we know which task is failing. Something like this might help. If so, put it in util.rs.

As there are multiple crust::Services running and there are signs that this problem is caused by a race, I guess the source might be the services fighting over the config/cache files, as they are global resources and easy to cause a race. I'll start investigating now.

We rarely hit this test in our own machines, when we test a new feature, before proposing a pull request. In our machines, we always have config files and cache files from previous runs, so if we didn't spotted the bug locally and end up pushing it to crust master, we have yet another sign that this bug is most likely related to instances fighting over the config/cache files. I'll change the test code to erase these files before doing anything, so we have a higher chance to hit the race (better future-proof too).

On MAC, the test also passes sometimes. Although way less often. So it's easier to test on MAC.
I got 50 consecutive success by keeping the old config/cache files. I couldn't repeat this roll of luck once I started to remove config/cache files before every execution.
A "stable and lucky" (tests pass very often) config file:
{
  "tcp_listening_port": 5483,
  "utp_listening_port": null,
  "override_default_bootstrap": false,
  "hard_coded_contacts": [],
  "beacon_port": 5484
}

A "stable and lucky" (tests pass very often) cache file: https://gist.github.com/vinipsmaker/e830168bfa753efbaeab
Config file is just the same for failing test. An example of a failure-causing cache file: https://gist.github.com/vinipsmaker/5bc339ad5be888579c51

Even with information about the issue and using this information to increase the failure chance, I didn't manage to reproduce this bug on Linux even once. I'm gonna test it on the OS X.

#347 solves the issue on OS X. Some problem still happens on Windows.

I think you make it worst. I do a simple test and the debug output is strange for half or more of the vaults. Maybe the change should be reversed and do some more test before applying it. It's my grain of salt.

@Ghaunt what platform are you using to do the test? Yet Another change was done to fix the issue on Windows. Can you test again with the latest version (0.4.1)?

Fixed by #347 and #348

I'm currently testing on Arch-Linux. It's sometimes I didn't test on windows. I pass full days on routing trying to fix bugs because I want it to work correctly. That give me headache. I'm currently close to have a temporary work around.
My best finding so far.
Two node connect together with multiple connection, 2 or 3. One accept the node A with connection X and the other accept the node B with connection Y. So when node A send message to node B. The message pass to node B with the connection X. So node B understand connection X for an unidentified connection. And that is vise versa.
Before updating routing issue I wanted to do more work before.
"You = The teams" for the next statement.
Maybe I should ask. Did you know already about it or if what I'm saying is usefull to you? I got told is going to get fixed at Rust-5.

My best finding so far. [...]

I'm having trouble trying to understand what is the problem here. Can you elaborate?

I updated the issue there with a better output: https://github.com/maidsafe/routing/issues/722


Can't register spans with zipkin-tracer gem

I use json-api with zipkin-tracer gem.
Zipkin-tracer send a request with null parentId, but zipkin 1.1.4 is not accepted null parentId.
I tried to remove parentId when parentId is null and send a request, so it was successful.
zipkin error meessage:

Cannot decode spans due to IllegalArgumentException(Expected a string but was NULL at path $[0].parentId reading List from json:

versions:

zipkin 1.1.4
zipkin-tracer 0.18.1 json-api tracer.

There is a open pull request to resolve this issue here  https://github.com/openzipkin/zipkin-tracer/pull/67

we can change the parser, too. To be clear, it is sending "parentId": null right?

some relevant notes here https://github.com/openzipkin/zipkin-api/pull/17


Rename to PrestaShop Project Metrics

Questions
Answers

Description?
Rename to PrestaShop Project Metrics

Test comment outside of diff tab (webhook)


Nock not matching multipart-formdata

Hey, Nock is doing great for any request apart from multipart form data. I couldn't get multipart formdata to work with nock.
I declared content type in my header as,
'Content-Type': 'multipart/form-data; boundary=--SomeBoundaryh7hlhkkj'

and appended form data like new FormData().append('user',1)

If you're referring to matching multipart/form-data fields, this isn't supported yet. See #191.
You can spy on the contents of multipart data to match the request content, though:
nock('some/url').post('some/endpoint', body => body.includes('Content-Disposition: form-data; name="fileData"; filename="tiny.webm"')

If you're sending files, the body will be in hex, which you'll have to decode yourself:
const hexToString = hex => {
    let str = '';
    for (let i = 0; i < hex.length; i += 2)
        str += String.fromCharCode(parseInt(hex.substr(i, 2), 16));
    return str;
}

nock('some/url').post('some/endpoint', body => hexToString(body).includes('Content-Disposition: form-data; name="fileData"; filename="tiny.webm"')

Let's track the feature request in #191.


Fix reset of attributes when moving a task to a project

Motivation and context

Fixed reset of attributes when moving a task to a project

Steps to reproduce the bug:

Create a task with a couple of labels and attributes
Annotate several frames in the task. Attributes should have non-default value.
Create a project and copy the definition of labels with attributes
Move the task to the project.
Attributes should have default values after the action

How has this been tested?

Added REST API test
Checklist

[x] I submit my changes into the develop branch
[x] I have added a description of my changes into the CHANGELOG file
[ ] I have updated the documentation accordingly
[ ] I have added tests to cover my changes
[ ] I have linked related issues (see GitHub docs)
[ ] I have increased versions of npm packages if it is necessary
(cvat-canvas,
cvat-core,
cvat-data and
cvat-ui)

License

[ ] I submit my code changes under the same MIT License that covers the project.
Feel free to contact the maintainers if that's a concern.

I see some strange behaviour try to create task with the following label configuration:

task configuration
```
[
  {
    "name": "car",
    "id": 9,
    "color": "#2080c0",
    "type": "any",
    "attributes": [
      {
        "id": 5,
        "name": "mark",
        "input_type": "select",
        "mutable": false,
        "values": [
          "bmw",
          "audi",
          "fiat"
        ],
        "default_value": "bmw"
      }
    ]
  }
]
```

Annotate some frames and set some non-default attributes, then create project with the following label configuration

project configuration
[
  {
    "name": "car",
    "id": 10,
    "color": "#2080c0",
    "type": "any",
    "attributes": [
      {
        "id": 6,
        "name": "mark",
        "input_type": "select",
        "mutable": false,
        "values": [
          "ford",
          "honda",
          "volvo"
        ],
        "default_value": "ford"
      }
    ]
  }
]
```

Then move annotated task into the project.
It's questionable should we allow to move task in project if project has the same label with the same name attributes but with different attributes spec

It's questionable should we allow to move task in project if project has the same label with the same name attributes but with different attributes spec

I think that the task with such attributes should not be moved. Expanded the check for this.


Remove T-SQL tutorial

The documentation of "handling T-SQL" was more like an introduction or a tutorial than technical documentation.
This will be uninteresting to the readers who already know T-SQL, and it will be too incomplete to be useful to beginners.
There is already an example of a T-SQL procedure in the FAQ, which should be enough to showcase what is possible.
To be on the safe side, extend the "migration" documentation to state that most T-SQL, including functions and procedures, is supported.
The reference to the removed page was removed from the FAQ.
In passing, add an HTML "abbr" tag to explain the abbreviation DDL those who don't know it.
This closes #119.

@rcv-aws Can add your review so it can be merged?


FlatRowAdapter should sort families, not column qualifiers

FlatRow used to be completely ordered on the client side.  The server actually returns sorted rows, albeit with a different ordering that we need.  I mistakenly sorted by column qualifier before; we actually need to sort by family and not column qualifer.

I moved the sorting logic into its own class so that it's easier to see the forest for the trees.  PTAL.

@kevinsi4508, I removed the method you commented on previously (FlatRowAdapter.adaptResponsePresortedCells).  PTAL

LGTM


Add a New WebPage Navigation System to copy code instead of downloading it

This is a(n):

[ ] Update to an existing Animated Button
[ ] Any Error
[x] Proposal to the Repository
[ ] Documentation / README.md changes

Details:
I propose a redesign of the website such that instead of downloading the button directly, a different web page is loaded where all the styling files are shown so that the user can copy the code instead.
Motivation: codepen.io

I can do this. Can anyone assign me this under GSSoc'23 tag

Hey @adity2911 you can work on this.

I have made the PR. Please check it.
There is a minor issue with the code.
I was not able to extract the code of .html, .css or .js file and display it on the area.

Heyy @adity2911, Would you mind if I create a new issue in order to complete your proposal

Yes please do the needful.

@adity2911 @Souravvmishra
Great collaboration!
@adity2911 Please mention the PR number!

@Spyware007 @PoorviShetty can you please give level label to this?

@Spyware007 @PoorviShetty can you give rating level to this?


Configure Network section instruction needs an update

The "Configure Network" section has a powershell instruction but powershell.exe part is missing from it. This results in error when this instruction is use as-is.

Hey rbinrais - when I run this in a command prompt, I am receiving the following error:
INFO: Could not find files for the given pattern(s).

I have updated the text of the article with a hint about PowerShell, and can create a work item to dig into the command, but will take a few days. Feel free to adjust, or set me straight if I am doing something incorrect here.

Double quotes seems to be causing the issue. I manage to resolve the issue by replacing double quotes with single quotes within the command and it runs successfully with expected behavior.
Following is the working/updated command:
powershell.exe “if(!(Get-NetFirewallRule | where {$_.Name -eq ‘TCP80’})) { New-NetFirewallRule -Name ‘TCP80’ -DisplayName ‘HTTP on TCP/80’ -Protocol tcp -LocalPort 80 -Action Allow -Enabled True }”

Sorry for the delay here, yep confirmed here as well. Would you like do update the PR and then i will merge?
Thanks
neilp

Niel - I've updated the pr with the working command.
Regards,
Razi

Hey @rbinrais, we edited that since then...could you merge in upstream/live and resolve the merge conflict?  I could pull your changes across

@rbinrais -- I manually merged this in to resolve the conflict...if you could run a quick merge upstream live in the future it's appreciated :)

Thanks Scooley! will keep that in mind for future updates :)


React Web version

Is it compatible with React (web), or does it have a web version?
Thank you!

It is fully compatible with react-native v0.55.
So, you can use this component on web running it using React-native-web


Feature request: Ability to specify which custom template you want to use

When I create a component with gue my-component, it would be really helpful to be able to specify a specific custom template to use. e.g. I might want to use a different custom template to generate a simple UI component compared to a dashboard page.
-t could be used to signify a non-default custom template is to be used.
gue my-component -t component - create using my 'component' template
gue admin-dashboard -t page - create using my 'page' template
an object containing templates and their names could be supplied in gue.json:
{
  "componentSource": {
    "component": "./myTemplates/component.vue",
    "page": "./myTemplates/page.vue",
  },
}

This is great.
And I'll implement it I guess.

There is a thing though, If someone adds couple of templates he won't be using them equally and there are chances that he'll use one template often, so there should be a default template that whenever user types gue foo (without any parameters), Gue picks that default component.
Maybe this can be achieved like so:
{
  "componentSource": {
    "component:default": "./myTemplates/component.vue",
    "page": "./myTemplates/page.vue",
  },
}

So that whenever gue bazz is written component is used. And we've made command smaller and removed -t component

there should be a default template that whenever user types gue foo (without any parameters), Gue picks that default component.

Sounds good to me!

done!
https://github.com/hosein2398/gue#using-multiple-custom-templates


Can't run NextJS + Typescript + Linaria + Yarn Workspaces

I've set an initial project for NextJS + Typescript + Linaria + Yarn Workspaces but when adding Linaria and next-linaria, my project doesn't work anymore and I get errors about the typescript types and stuff.
Does anyone know what can I do to solve this?
This is my minimal repo with the problem:
https://github.com/bruno2ms/nextjs-linaria-yarn-workspaces
This is the error I'm getting (same error on console):

Hey! 👋🏼
This is not a problem related to either linaria or next-linaria. You're importing typescript file to your project and it can't read it. You can compile it with tsc that you already have in your utils folder or use references in web/tsconfig.json.

I'm getting the same exact issue. It only occurs when I change from
export default nextConfig
to
export default withLinaria(nextConfig)
the error doesn't occur using a different config wrapper like:
export default WithNextMDX(nextConfig)
So I believe this is an issue with next-linaria, but might be wrong.


Kafka: SASL/OAuthbearer Implementation

Added support for SASL/OAuthbearer authentication.
https://github.com/kedacore/keda-docs/pull/942
Fixes #3681

/run-e2e kafka*

@DevinGillman could you please remove the unrelated commit from this PR?

Unrelated commit removed.


MYRIAD-196 - Allow remote distribution and configuration of JVM for executors

Made following configurable:

JVM distribution URL
JVM path relative to sandbox to assist in setting JAVA_HOME
JAVA_LIBRARY_PATH

ship it!


Jira Improvements

Delete button on Jira Conf from the global settings.
Add support for Bug, Task etc
Ability to add custom tags
Ability to choose component type
In lists show if an issue has been pushed to Jira
Search by jira listings

In PR (https://github.com/OWASP/django-DefectDojo/pull/202) the following was completed:

Issue type now supported in global config, future PR will bring that down to the product level.
List views now show the Jira link and the link to view opens in a new tab

Hi @aaronweaver would you update progress from your PR today when you can?

In PR (https://github.com/OWASP/django-DefectDojo/pull/226) the following was completed:

Support for Component on the Product level
Attachments are now uploaded to Jira
Fixed a bug where engagement was looking for a Jira ID when one wasn't assigned to the product

Hi @aaronweaver is the last requirement here 'Search by jira listings'?

Yes, that's the last one. I close this one and create a new one with a reward.


Implement flattening JSON Arrays

embulk-parser-json has a feature to "flatten" JSON Arrays into multiple records. It is to reproduce it in embulk-util-json's JsonValueParser.

Thanks!


Handling Keyboard Events on the Audio Thread directly

It would be nice to have a way to handle Keyboard events directly in the audio thread.
Implementation Idea: a Channel that gets shared between the WindowHandle and the audiothread, where duplicate KeyEvent messages get send to the audiothread.
rationale: lower latency when triggering audio with the keyboard than going around the editor gui thread, possibly processing that late and sending it again to the audio thread.
This is a feature request not a bug!

(disclaimer: Rust and nih-plug newbie)
I've implemented something similar to export a recorded buffer through a file dialog created from the audio thread when a button is clicked in the GUI.
Chances are I'm doing something unorthodox here, as any delay in real-time audio processing could be noticeable (see this blog: Real-time audio programming 101: time waits for nothing).


libmesode: 0.9.3 -> 0.10.1

Motivation for this change
Things done

[x] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS linux)
Built on platform(s)

[x] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
[ ] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[ ] Ensured that relevant documentation is up to date
[x] Fits CONTRIBUTING.md.

Result of nixpkgs-review pr 107643 run on x86_64-darwin 1

2 packages failed to build:

libmesode
profanity

#define xmpp_vsnprintf vsnprintf
                       ^
/nix/store/r913a0b23i21r8y4x8kgx024gms9lvx9-Libsystem-osx-10.12.6/include/secure/_stdio.h:75:40: note: expanded from macro 'vsnprintf'
  __builtin___vsnprintf_chk (str, len, 0, __darwin_obsz(str), format, ap)
                                       ^
In file included from src/auth.c:21:
src/common.h:287:5: error: expected ')'
src/snprintf.h:29:24: note: expanded from macro 'xmpp_vsnprintf'
#define xmpp_vsnprintf vsnprintf
                       ^
/nix/store/r913a0b23i21r8y4x8kgx024gms9lvx9-Libsystem-osx-10.12.6/include/secure/_stdio.h:75:40: note: expanded from macro 'vsnprintf'
  __builtin___vsnprintf_chk (str, len, 0, __darwin_obsz(str), format, ap)
                                       ^
src/common.h:287:5: note: to match this '('
src/snprintf.h:29:24: note: expanded from macro 'xmpp_vsnprintf'
#define xmpp_vsnprintf vsnprintf
                       ^
/nix/store/r913a0b23i21r8y4x8kgx024gms9lvx9-Libsystem-osx-10.12.6/include/secure/_stdio.h:75:29: note: expanded from macro 'vsnprintf'
  __builtin___vsnprintf_chk (str, len, 0, __darwin_obsz(str), format, ap)
                            ^
In file included from src/auth.c:21:
src/common.h:287:5: error: conflicting types for '__builtin___vsnprintf_chk'
int xmpp_vsnprintf (char *str, size_t count, const char *fmt, va_list arg);
    ^
src/snprintf.h:29:24: note: expanded from macro 'xmpp_vsnprintf'
#define xmpp_vsnprintf vsnprintf
                       ^
/nix/store/r913a0b23i21r8y4x8kgx024gms9lvx9-Libsystem-osx-10.12.6/include/secure/_stdio.h:75:3: note: expanded from macro 'vsnprintf'
  __builtin___vsnprintf_chk (str, len, 0, __darwin_obsz(str), format, ap)
  ^
src/common.h:287:5: note: '__builtin___vsnprintf_chk' is a builtin with type 'int (char *, unsigned long, int, unsigned long, const char *, struct __va_list_tag *)'
src/snprintf.h:29:24: note: expanded from macro 'xmpp_vsnprintf'
#define xmpp_vsnprintf vsnprintf
                       ^
/nix/store/r913a0b23i21r8y4x8kgx024gms9lvx9-Libsystem-osx-10.12.6/include/secure/_stdio.h:75:3: note: expanded from macro 'vsnprintf'
  __builtin___vsnprintf_chk (str, len, 0, __darwin_obsz(str), format, ap)
  ^
6 errors generated.
make: *** [Makefile:1275: src/libmesode_la-auth.lo] Error 1

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

2 packages built:

libmesode
profanity

gpl3 is a deprecated license, check if project uses gpl3Plus or gpl3Only and change meta.license accordingly.

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

2 packages built:

libmesode
profanity

Result of nixpkgs-review pr 107643 run on x86_64-darwin 1

2 packages marked as broken and skipped:

libmesode
profanity


Update MD file on new branch 2017-11-16_23-30-17

:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

split/content1.md
:white_check_mark:Succeeded

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.


Downloading completely different songs

System OS
MacOS
Python Version
3.13 (CPython)
Install Source
pip / PyPi
Install version / commit hash
4.2.10
Expected Behavior vs Actual Behavior
Example: typing "spotdl spotify:track:58r4JuwHhXLAkttkaUZfLw" should have downloaded "Got to Be Real" by Cheryl Lynn but instead ended up with "Hokey Pokey" by Play School.
Hilarious, but not what I want.
Not exclusive to this one song. Literally every song/playlist I try to download from Spotify ends up with different results. Unable to get a single song that is correct.
Steps to reproduce - Ensure to include actual links!

type "spotdl spotify:track:58r4JuwHhXLAkttkaUZfLw"

Traceback
spotdl spotify:track:58r4JuwHhXLAkttkaUZfLw
Processing query: spotify:track:58r4JuwHhXLAkttkaUZfLw
Downloaded "Play School - Hokey Pokey":
https://music.youtube.com/watch?v=P_n6vs6Iowo

Other details
No response

Can you try an actually spotify link?

Links didn't seem to work at all for me. Inputting this:
spotdl https://open.spotify.com/track/58r4JuwHhXLAkttkaUZfLw?si=a58420211ea747fc
Outputs this:
zsh: no matches found: https://open.spotify.com/track/58r4JuwHhXLAkttkaUZfLw?si=a58420211ea747fc
Which is why I was using URI's instead, because historically they have worked.
And I'm not sure why I didn't try this before, but I changed my shell to bin instead of zsh... and it worked...
 This is not a spotDL issue but rather a user issue.
Try a different terminal, or use software designed to download youtube links - e.g. yt-dlp or youtube-dl


User profile page - Frontend

This is a three part task:

[x] Design the new page
[ ] Create the proof of concept
[ ] Implement the proof of concept

Design
What is the new component or item:
Create a design PDF for developers to create a static copy with code. You will be using UIKit components along with Fontawesome PRO icons. Any comments you need to make, make them in the discussion of the issue or the implementation issue for this component.
The expected deliverable will be a design documents that shows all the possible states it has. Provide notes as necessary.
** Proof of Concept**
Create a proof of concept using Storybook.js. Take the design PDF and convert it to code. You will be using UIKit as the CSS library along with Fontawesome PRO icons. Do not worry about logic during this step, just build out the component.
The expected deliverable will be a component that is responsive and mobile-ready. Make sure you address all stories requested (states). The next task will deal with adding any additional logic that might be needing. For example, creating API requests, iterating through data, etc.
Implement the Proof of Concept
Take the proof of concept and add missing logic. This means take it from static and make it dynamic if it requires it. Build it to be modular, add comments and make sure component is polished.

Design overview and specs sheet provided:
This item is ready to be picked up.
JPGs:

PDFs:
user-profile-front.pdf
user-profile-front-specs.pdf

@VelazquezLuis assigning this page to you - if you need any help getting started, please let me know and we can hop on a call any time this week. Thanks!

Just posting an update. Today you started working on this, your setup is ready to go. Thanks for getting on a call @VelazquezLuis!

Thanks, @kvera001 reminded yesterday props to her for great leadership


Get in remaining processed dialog audio

Need the following in mp3 format and normalized

Yoyo
Slacks new end line
Dotabuff
Ruby

These are already in but not normalized.

Done in #482


ComboBoxList is moving up and down if i scroll,It should be closed if i scroll

ComboBoxList is moving up and down if i scroll,It should be closed if i scroll

Originally posted by @pashminakazi in https://github.com/apache/royale-asjs/issues/1115#issuecomment-880508209

@yishayw Thank u so much
after fixing this issue another issue occurs,
If we scroll any other scroller with touchpad then the comboBoxList should be closed,not when we scroll comboBoxList's scroller
When I scroll comboBoxList with touchpad it will be closed after this fix


Question regarding TenantAwareJob removal

Pardon my ignorance, I picked up a project recently that had been using version 5.2, so I've been trying to get it updated. One change between 5.3->5.4 is confusing me.
The documentation says,

The TenantAwareJob trait has been completely removed. Instead before dispatching any Job into the queue it will identify possible active tenants and remember/unserialize it when processing the job. You can still manually set the tenant website by giving the property website_id on the Job a value before dispatching it.

There is one usage of TenantAwareJob in the code-base, use Queueable, TenantAwareJob; my understanding is that TenantAwareJob is just no longer needed because Multi-tenant automatically handles jobs that are tenant related now.
But I don't want to break anything, so can anyone give me an ELI5 about the change

Alright cool, thanks.


schema: use pushdown-driven Veriform decoder

Updates the handwritten decoder fields to use the new pushdown automaton-based Decoder API which landed in: https://github.com/iqlusioninc/veriform/pull/117

Codecov Report

Merging #108 into develop will decrease coverage by 2.28%.
The diff coverage is 70.49%.

@@             Coverage Diff             @@
##           develop     #108      +/-   ##
===========================================
- Coverage    51.11%   48.83%   -2.29%
===========================================
  Files           12       12
  Lines          360      342      -18
===========================================
- Hits           184      167      -17
+ Misses         176      175       -1

Impacted Files
Coverage Δ

client/src/armistice.rs
0.00% <0.00%> (ø)

usbarmory/src/main.rs
0.00% <ø> (ø)

schema/src/public_key.rs
57.14% <47.36%> (-1.20%)
:arrow_down:

schema/src/request.rs
70.27% <75.00%> (-1.53%)
:arrow_down:

schema/src/response.rs
75.67% <75.00%> (-1.25%)
:arrow_down:

core/src/root.rs
70.58% <100.00%> (-3.10%)
:arrow_down:

core/tests/provision.rs
100.00% <100.00%> (ø)

schema/src/provision.rs
87.09% <100.00%> (+0.43%)
:arrow_up:

Continue to review full report at Codecov.

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


translator.translate('안녕하세요.', dest='ja') broken

c:\Users\ADGSENPAI\Code\TranslateXML\translateXML.ipynb Cell 1' in <module>
     [13](vscode-notebook-cell:/c%3A/Users/ADGSENPAI/Code/TranslateXML/translateXML.ipynb#ch0000002?line=12) data = my_dict['xml']['persons']['person']
     [15](vscode-notebook-cell:/c%3A/Users/ADGSENPAI/Code/TranslateXML/translateXML.ipynb#ch0000002?line=14) data[0]['fname']
---> [16](vscode-notebook-cell:/c%3A/Users/ADGSENPAI/Code/TranslateXML/translateXML.ipynb#ch0000002?line=15) translator.translate('안녕하세요.', dest='ja')

File C:\Python310\lib\site-packages\googletrans\client.py:182, in Translator.translate(self, text, dest, src, **kwargs)
    [179](file:///c%3A/Python310/lib/site-packages/googletrans/client.py?line=178)     return result
    [181](file:///c%3A/Python310/lib/site-packages/googletrans/client.py?line=180) origin = text
--> [182](file:///c%3A/Python310/lib/site-packages/googletrans/client.py?line=181) data = self._translate(text, dest, src, kwargs)
    [184](file:///c%3A/Python310/lib/site-packages/googletrans/client.py?line=183) # this code will be updated when the format is changed.
    [185](file:///c%3A/Python310/lib/site-packages/googletrans/client.py?line=184) translated = ''.join([d[0] if d[0] else '' for d in data[0]])

File C:\Python310\lib\site-packages\googletrans\client.py:78, in Translator._translate(self, text, dest, src, override)
     [77](file:///c%3A/Python310/lib/site-packages/googletrans/client.py?line=76) def _translate(self, text, dest, src, override):
---> [78](file:///c%3A/Python310/lib/site-packages/googletrans/client.py?line=77)     token = self.token_acquirer.do(text)
     [79](file:///c%3A/Python310/lib/site-packages/googletrans/client.py?line=78)     params = utils.build_params(query=text, src=src, dest=dest,
     [80](file:///c%3A/Python310/lib/site-packages/googletrans/client.py?line=79)                                 token=token, override=override)
     [82](file:///c%3A/Python310/lib/site-packages/googletrans/client.py?line=81)     url = urls.TRANSLATE.format(host=self._pick_service_url())

File C:\Python310\lib\site-packages\googletrans\gtoken.py:194, in TokenAcquirer.do(self, text)
    [193](file:///c%3A/Python310/lib/site-packages/googletrans/gtoken.py?line=192) def do(self, text):
--> [194](file:///c%3A/Python310/lib/site-packages/googletrans/gtoken.py?line=193)     self._update()
    [195](file:///c%3A/Python310/lib/site-packages/googletrans/gtoken.py?line=194)     tk = self.acquire(text)
    [196](file:///c%3A/Python310/lib/site-packages/googletrans/gtoken.py?line=195)     return tk

File C:\Python310\lib\site-packages\googletrans\gtoken.py:62, in TokenAcquirer._update(self)
     [59](file:///c%3A/Python310/lib/site-packages/googletrans/gtoken.py?line=58)     return
     [61](file:///c%3A/Python310/lib/site-packages/googletrans/gtoken.py?line=60) # this will be the same as python code after stripping out a reserved word 'var'
---> [62](file:///c%3A/Python310/lib/site-packages/googletrans/gtoken.py?line=61) code = self.RE_TKK.search(r.text).group(1).replace('var ', '')
     [63](file:///c%3A/Python310/lib/site-packages/googletrans/gtoken.py?line=62) # unescape special ascii characters such like a \x3d(=)
     [64](file:///c%3A/Python310/lib/site-packages/googletrans/gtoken.py?line=63) code = code.encode().decode('unicode-escape')

AttributeError: 'NoneType' object has no attribute 'group'

The problem here seems to be, that a follow_redirects is required (location header set) and then a cookie consent page needs to be confirmed.
There may be further complex google changes after that ...
When did this work last?

The problem here seems to be, that a follow_redirects is required (location header set) and then a cookie consent page needs to be confirmed. There may be further complex google changes after that ... When did this work last?

Was following docs. At the time of me testing it , it never worked. I moved on to another module by then.

Was following docs. At the time of me testing it , it never worked. I moved on to another module by then.

Which other module worked good for translations?
PyPI "translate" - which uses mymemory.translated.net by default ?

Was following docs. At the time of me testing it , it never worked. I moved on to another module by then.

Which other module worked good for translations? PyPI "translate" - which uses mymemory.translated.net by default ?

I used this one https://pypi.org/project/translate/

pip install googletrans==4.0.0-rc1
use pre version is work fine.
https://pypi.org/project/googletrans/#history

pip install googletrans==4.0.0-rc1 use pre version is work fine. 👍
https://pypi.org/project/googletrans/#history

this worked!


Advanced manipulation

This version currently has the start of:

widget based scale and rotation manipulations, with positional guides
translations to other languages
automatic conversion of text into vector shapes with freetype-py

None of which actually work. The positional guides works but it doesn't allow mouse scaling. The translations aren't being invoked, through the dialogs are being run through the translation routine and a messages.po is generated an in .\locale.  And the automatic conversion of text creates a blob of not text vector shapes with no semblance a reasonable approximation of text even with the Vera.ttf file stored locally, though not included.
None of these failures should get in the way.

Added in Translations to other languages. I don't speak any other languages so my French translation as added is likely really bad from the internet guesses. The main thing is that if somebody wanted to do a translation, they totally could do a translation.

Added a bunch of tree menu changes.
Changed the text operation to remove rather than convert. (push to later version).
Corrected transparency raster bug.  #105.

Still remaining:

Non-implemented new functions in JobInfo, aren't disabled or implemented.
Positional guides look like they should work, and they aren't implemented or disabled.
Text items when selected have zero size and are at the origin.
Beep function added to elements and operations should take priority and cover the beep when job is done functionality. Spooler no longer needs to force its own beep on empty.


Confused by naming

The Azure SQL Database page lists three options: single database, managed instance, and elastic pool.  This page mentions IaaS, Azure SQL DB, and managed instance.  Is Azure SQL DB in this case the Single Database?  At one point, managed service is called "Azure Sql Database Managed Service" (in the first !Important message).  Just want to clarify, as the inconsistent naming tends to throw me off a bit, as I read through this.

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

ID: 28ca1f7f-5a34-0f23-10ce-3ff24c76db97
Version Independent ID: 5c4a22c4-78fc-911d-9fa0-8dfab1653b6e
Content: Azure SQL Database Managed Instance Overview | Microsoft Docs
Content Source: articles/sql-database/sql-database-managed-instance.md
Service: sql-database
GitHub Login: @bonova
Microsoft Alias: bonova

@emeria Thank you for the valuable feedback,we are investigating the issue.

Issue Summary
In looking through the Azure SQL Database Documentation, there are three SQL server offerings made available in Azure, and I see it as the following:
Azure SQL Server IaaS - Install SQL Server to a deployed VM (PaaS + SQL Server single instance).
Azure SQL Server PaaS - Azure SQL Server (Managed single instance)
Azure SQL Server SaaS - Azure SQL Server (Managed Elastic Pools)
Yet the documentation is not as consistent in referencing each deployment option. Azure SQL PaaS and SaaS are both managed instances, to a degree. The description below is using:
Managed Instance (Is speaking to SaaS/Elastic Pools)
Azure SQL Database (Is speaking to PaaS)
SQL IaaS

#please-close


Free type font handling improvements

Ive encountered two issues when importing one of my uiskins.

TTF file cant be copied to same place multiple time, ie if multiple fonts use same source font file
TTF fonts are gone from styles

Excellent contribution. Thank you so much for taking the time to submit this!


Improve the speed of the first step of while_loop/fori_loop

Currently, while_loop/fori_loop seems not cache the body_fn or take the benefit from the cached body_fn. It would be nice if these loops take the benefit of the cached function.
The following repro illustrates the problem
import time
import jax.numpy as np
from jax import jit, lax

def f(x):
    return np.mean(x - np.ones(10000))

x = np.array(0.)

t = time.time()
f(x)
print("time to evaluate f       :", time.time() - t)

jf = jit(f)
jf(x)

t = time.time()
jf(x)
print("time to evaluate jitted f:", time.time() - t)

t = time.time()
lax.while_loop(lambda x: x < 0, jf, np.array(0.))
print("time for while_loop f    :", time.time() - t)

t = time.time()
lax.while_loop(lambda x: x < 0, jf, np.array(0.))
print("time for while_loop f    :", time.time() - t)

which yields
time to evaluate f       : 0.0552217960357666
time to evaluate jitted f: 0.0003039836883544922
time for while_loop f    : 0.026403188705444336
time for while_loop f    : 0.020539522171020508

cc @mattjj

Summarizing my understanding of the problem at the moment:
When executing lax.fori_loop or lax.while_loop in op-by-op mode, even if the user's body function is itself jitted, the constructed XLA While and its function arguments are recompiled again for every call. What we want is instead for While to behave like simpler lax-wrapped HLOs in op-by-op mode and have its compilation cached across calls.

Here's what I'm seeing on this script on master:
In [1]: run issue587
('time to evaluate f       :', 0.031208038330078125)
('time to evaluate jitted f:', 0.00018405914306640625)
('time for while_loop f    :', 0.024088144302368164)
('time for while_loop f    :', 0.018099069595336914)

The second example doesn't see a speedup is that it's getting recompiled each time. The reason (also explained in the testCaching2 disabled test) is that each time lax.while_loop(lambda x: x < 0, jf, np.array(0.)) is evaluated, lambda x: x < 0 evaluates to a fresh function object, and the only caching mechanism we're using in control flow compares the identity of function objects.
As @j-towns first observed in #1221, we could get something of a cache hit for the latter case, though it wouldn't be quite as good: we would still have to trace the Python function lambda x: x < 0 to a jaxpr, but once in that form if we implement nontrivial (i.e. not identity-based) equality testing on jaxprs we could notice that we already have a compiled version of the corresponding XLA computation and not redo that work. That is, we'd be re-forming a jaxpr every time, but avoiding the XLA compile time.

I understand the situation now. I think that using lambda is not necessary here, and the current behaviour is what I expected. Thanks a lot, Matt!

I think that we can close this for now. :)


Correct spelling of warnings

Figured this would be irritating to get an issue for when it was so easy to fix. This just corrects the spelling of warnings in the config description for FSharp.Linter.

Thanks!


add "delete" method to remove a database

Hi Aaron,
I added a delete databse method to your db.js.
May it help...
Take care,
Markus

It' implemented by #108

How is this implemented by #108 ?

Closing as #130 takes care of this feature now


Poor cardiac segmentations, including highres

Hello,
I'm using the latest TotalSegmentator to segment the heart in CT scans. Visually inspecting the output I can see that the output is very roughly correct but large parts of the heart remain unlabeled. I suspect there's an issue with my preprocessing.
My CT  scans are composed of 512x512 slices with a pixel spacing of about 0.7mm and a slice thickness of 1.25mm. Axially, the scans are variable but include the chest and upper abdomen. Since TotalSegmentator expects 1.5mm slices, I've accounted for that by resampling. I've examined small dataset, a subset of TotalSegmentator's train dataset, and noticed that the slices are 255x255. I've also noticed that the orientation in the training dataset for Total Segmentator is such that the positive axial direction is from feet to head. I couldn't find any information on pixel spacing and any information at all regarding the heart_highres dataset, neither on github nor in the paper.
Can you please specify in detail the input format parameters that TotalSegmentator expects, both for the "total" task and for "heart_highres"?  I mean input dimensions in all axes, pixel spacings, slices thickness, orientations, etc.
Thank you

TotalSegmentator expects as input the original CT image and typically works well with any image setting. So you do not need anything specifically. You have to make sure that you never change the value range of your image before passing it to totalsegmentator. It should contain the original HU values.


Add debug flag

If user raises --p-debug together with --verbose, SEPP will print logfiles in internal debug mode to STDOUT and NOT delete temporary directories if the run exists non zero. Thus, debugging will become much easier.
I also added a default citation which should be integrated into produced artifacts.
Please also have a look at https://forum.qiime2.org/t/pass-verbose-flag-to-executable/4461/10 for design decisions.

Hi @thermokarst, could you take a look at this PR regarding the addition of a --p-deblug flag?

Hey @sjanssen2 I can take a look at this some time this week.


Add meta example features-char-string

A simple meta example for CStringFeatures.
I would like to make changes and add output file for an integration test but I am not sure if the current outputs are enough for that. Currently, it stores "max_string_length", "number_of_strings" and "length_of_first_string". I don't think that is possible to practically check all the values of "strings".
However, if you don't have a better idea I could add eight variables that store the value of the first vector before and after the change to "test".

You are right we dont really need any output here, as nothing really happens. THese outputs are for making sure that algorithms dont all of a sudden output different results.

Apologies for the late reply.

Yes, that is the plan. I have started making changes but they will be ready mid next week if that is ok with you.

Sure of course.

@karlnapf are the changes ok with you?

Very nice work! This now allows to port quite a few more examples


docker pull arm64v8/python:3.5.9 fails on macOS

Hi,
I tried the following command on macOS using Docker Desktop for Mac <IP_ADDRESS> (39773) stable:
$ docker pull arm64v8/python:3.5.9
3.5.9: Pulling from arm64v8/python
no matching manifest for linux/amd64 in the manifest list entries

The command above failed but the following command worked successfully:
$ docker pull arm64v8/python:3.5.9-slim
3.5.9-slim: Pulling from arm64v8/python
...
Digest: sha256:37958d176c78b794a351a1eb234920f140a18bea3676ee4eb4798acf7868291a
Status: Downloaded newer image for arm64v8/python:3.5.9-slim
docker.io/arm64v8/python:3.5.9-slim

I checked arm64v8/python and found:

OS/ARCH of arm64v8/python:3.5.9 is linux/arm64/v8
OS/ARCH of arm64v8/python:3.5.9-slim is linux/arm64

I guess that images for linux/arm64/v8 are not supported in Docker Desktop for Mac at this moment.
Probably, we shouldn't make linux/arm64/v8 images until Docker Desktop for Mac supports
linux/arm64/v8 images.

That is perfectly normal. arm64v8/python:3.5.9 is a "Shared Tag" and so is a manifest list while arm64v8/python:3.5.9-slim is not (see https://github.com/docker-library/faq#whats-the-difference-between-shared-and-simple-tags).
As for the tags list on Docker Hub, they must be detecting that they are arm64 images, but don't show the variant unless it is a manifest list that tells it which one it is.
docker manifest inspect can give you information about the hub tag that you are trying to pull:
$ # this one will be a manifest list of one item (since windows doesn't have an arm64v8 image)
$ docker manifest inspect arm64v8/python:3.5
{
   "schemaVersion": 2,
   "mediaType": "application/vnd.docker.distribution.manifest.list.v2+json",
   "manifests": [
      {
         "mediaType": "application/vnd.docker.distribution.manifest.v2+json",
         "size": 2217,
         "digest": "sha256:85a2c976165e6ac0cbf9619ef173eb9182f79c4304ec3936fd941e85cd563c11",
         "platform": {
            "architecture": "arm64",
            "os": "linux",
            "variant": "v8"
         }
      }
   ]
}
$ # the simple tags are just the image themselves (no manifest list), so docker will pull it
$ # even though the arch may be different since it has nothing in the manifest telling it what arch it is
$ docker manifest inspect arm64v8/python:3.5.9-buster
{
	"schemaVersion": 2,
	"mediaType": "application/vnd.docker.distribution.manifest.v2+json",
	"config": {
		"mediaType": "application/vnd.docker.container.image.v1+json",
		"size": 8894,
		"digest": "sha256:ecb4851300e619ab0bdf4c85ae1e8a5aff9383ef9b68ce4939dca68c25662022"
	},
	"layers": [
		{
			"mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip",
			"size": 49172990,
			"digest": "sha256:5a8521f5974d84ca2cef7f3a1ec71cce08198a563735e8d8d7c603536146819c"
		},
		{
			"mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip",
			"size": 7680633,
			"digest": "sha256:dd1378028f1d64d56a341de0c01136ac13cc193af54fb3c785e7ee29a493d09c"
		},
		{
			"mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip",
			"size": 9983717,
			"digest": "sha256:15cab53b0844e637da16aa62d159100c6022d0c9eada7037f946abce70764bcf"
		},
		{
			"mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip",
			"size": 52102544,
			"digest": "sha256:f6b3955dadc05d892a1e30426b7e75cd5a2c5e7d0f8a43ea4931e5207d66f850"
		},
		{
			"mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip",
			"size": 183559802,
			"digest": "sha256:103c5515802cfdd7634567d37550958b2e0939db3f0e3160a20f157f20492bf6"
		},
		{
			"mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip",
			"size": 5909088,
			"digest": "sha256:e32439b07126a45c0db29fcd4437b8ad8a2bbac77d16072d6cfe3fd7173c570f"
		},
		{
			"mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip",
			"size": 23189153,
			"digest": "sha256:1d5205c7dd1d3b17c69974c12dd37994e0ffab97781e6d428dac99780a817bdf"
		},
		{
			"mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip",
			"size": 233,
			"digest": "sha256:d5d953152c7ae38385bb1e70ab7c439ea0c03466f653b082e9ef861f27297b69"
		},
		{
			"mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip",
			"size": 1870078,
			"digest": "sha256:4392557bcc4f7eaf406f279b48bc2d369e059f7c44c8f62b1919d9e9920c1f83"
		}
	]
}

Thank you for your information.
I've checked  https://github.com/docker-library/faq#whats-the-difference-between-shared-and-simple-tags, and understood the difference between "Shared" and "Simple tags.
In additional, I understand that docker pull arm64v8/python:3.5.9 works only on a machine whose CPU arch is arm64/v8.


nam file format niggle

Currently the glyphsets nam files are produced in the following format:
0xDEADBEEF COMBINING RUMP STEAK

which is fine and matches what's going on in the nam-files repo. However, if we made them look like this instead:
0xDEADBEEF # COMBINING RUMP STEAK

then they can be directly used as input to hbsubset/fonttools subset, which would be very handy.

Implemented


fix: update avo tracking branch

Description

Updated the avo branch to the main branch, as before was on a working branch

:tada: This PR is included in version 1.529.2 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket: