Creating molecule framework for core/common role

I'm creating these smaller PR to my own forked branch in order to have a place to describe the issues faced when trying to get molecule working on a role, will eventually create a PR to the upstream project with these changes

At this point, hitting the following error when trying to run molecule test
    TASK [common : check | Check Spectrum Scale version] ***************************
fatal: [instance]: FAILED! => {
    "assertion": "scale_version is defined",
    "changed": false,
    "evaluated_to": false,
    "msg": "Please set the variable 'scale_version' to the correct version (minimum: 4.1.1)!"
}

With the above commit, I'm able to pass a CMD line argument into molecule to allow this scale_version to be set..
(molecule.venv) root@autogen-ubuntu1604-x-master:~/ibm-spectrum-scale-install-infra/roles/core/common# SCALE_VERSION=<IP_ADDRESS> molecule test
--> Test matrix

└── default
    ├── dependency
    ├── lint
    ├── cleanup
    ├── destroy
    ├── syntax
    ├── create
    ├── prepare
    ├── converge
    ├── idempotence
    ├── side_effect
    ├── verify
    ├── cleanup
    └── destroy

--> Scenario: 'default'
--> Action: 'dependency'
Skipping, missing the requirements file.
--> Scenario: 'default'
--> Action: 'lint'
--> Lint is disabled.
--> Scenario: 'default'
--> Action: 'cleanup'
Skipping, cleanup playbook not configured.
--> Scenario: 'default'
--> Action: 'destroy'
--> Sanity checks: 'docker'

    PLAY [Destroy] *****************************************************************

    TASK [Destroy molecule instance(s)] ********************************************
    changed: [localhost] => (item=instance)

    TASK [Wait for instance(s) deletion to complete] *******************************
    ok: [localhost] => (item=None)
    ok: [localhost]

    TASK [Delete docker network(s)] ************************************************

    PLAY RECAP *********************************************************************
    localhost                  : ok=2    changed=1    unreachable=0    failed=0    skipped=1    rescued=0    ignored=0

--> Scenario: 'default'
--> Action: 'syntax'

    playbook: /root/ibm-spectrum-scale-install-infra/roles/core/common/molecule/default/converge.yml
--> Scenario: 'default'
--> Action: 'create'

    PLAY [Create] ******************************************************************

    TASK [Log into a Docker registry] **********************************************
    skipping: [localhost] => (item=None)

    TASK [Check presence of custom Dockerfiles] ************************************
    ok: [localhost] => (item=None)
    ok: [localhost]

    TASK [Create Dockerfiles from image names] *************************************
    skipping: [localhost] => (item=None)

    TASK [Discover local Docker images] ********************************************
    ok: [localhost] => (item=None)
    ok: [localhost]

    TASK [Build an Ansible compatible image (new)] *********************************
    skipping: [localhost] => (item=molecule_local/docker.io/pycontribs/centos:7)

    TASK [Create docker network(s)] ************************************************

    TASK [Determine the CMD directives] ********************************************
    ok: [localhost] => (item=None)
    ok: [localhost]

    TASK [Create molecule instance(s)] *********************************************
    changed: [localhost] => (item=instance)

    TASK [Wait for instance(s) creation to complete] *******************************
    FAILED - RETRYING: Wait for instance(s) creation to complete (300 retries left).
    changed: [localhost] => (item=None)
    changed: [localhost]

    PLAY RECAP *********************************************************************
    localhost                  : ok=5    changed=2    unreachable=0    failed=0    skipped=4    rescued=0    ignored=0

--> Scenario: 'default'
--> Action: 'prepare'
Skipping, prepare playbook not configured.
--> Scenario: 'default'
--> Action: 'converge'

    PLAY [Converge] ****************************************************************

    TASK [Gathering Facts] *********************************************************
    ok: [instance]

    TASK [Include common] **********************************************************

    TASK [common : check | Check Spectrum Scale version] ***************************
    ok: [instance] => {
        "changed": false,
        "msg": "All assertions passed"
    }

    TASK [common : check | Check package manager] **********************************
    ok: [instance] => {
        "changed": false,
        "msg": "All assertions passed"
    }

    TASK [common : check | Count daemon processes] *********************************
    ok: [instance]

    TASK [common : check | Check if daemon is running] *****************************
    ok: [instance]

    TASK [common : check | Set default daemon nodename] ****************************
    ok: [instance]

    PLAY RECAP *********************************************************************
    instance                   : ok=6    changed=0    unreachable=0    failed=0    skipped=0    rescued=0    ignored=0

--> Scenario: 'default'
--> Action: 'idempotence'
Idempotence completed successfully.
--> Scenario: 'default'
--> Action: 'side_effect'
Skipping, side effect playbook not configured.
--> Scenario: 'default'
--> Action: 'verify'
--> Running Ansible Verifier

    PLAY [Verify] ******************************************************************

    TASK [Gathering Facts] *********************************************************
    ok: [instance]

    TASK [Example assertion] *******************************************************
    ok: [instance] => {
        "changed": false,
        "msg": "All assertions passed"
    }

    PLAY RECAP *********************************************************************
    instance                   : ok=2    changed=0    unreachable=0    failed=0    skipped=0    rescued=0    ignored=0

Verifier completed successfully.
--> Scenario: 'default'
--> Action: 'cleanup'
Skipping, cleanup playbook not configured.
--> Scenario: 'default'
--> Action: 'destroy'

    PLAY [Destroy] *****************************************************************

    TASK [Destroy molecule instance(s)] ********************************************
    changed: [localhost] => (item=instance)

    TASK [Wait for instance(s) deletion to complete] *******************************
    changed: [localhost] => (item=None)
    changed: [localhost]

    TASK [Delete docker network(s)] ************************************************

    PLAY RECAP *********************************************************************
    localhost                  : ok=2    changed=2    unreachable=0    failed=0    skipped=1    rescued=0    ignored=0

so this works now.

Just wanted to make sure the linting steps are in place, enabled yamllint and the .ymllint file does have some defaults.
(molecule.venv) root@autogen-ubuntu1604-x-master:~/ibm-spectrum-scale-install-infra/roles/core/common# git diff tasks/main.yml
diff --git a/roles/core/common/tasks/main.yml b/roles/core/common/tasks/main.yml
index 29db1a4..528b48a 100644
--- a/roles/core/common/tasks/main.yml
+++ b/roles/core/common/tasks/main.yml
@@ -3,3 +3,7 @@

 - import_tasks: check.yml
   tags: always
+
+
+
+

With those temporary changes in my environment, running the molecule test results in:
--> Action: 'lint'
--> Executing: set -e
yamllint .
./tasks/main.yml
  9:1       error    too many blank lines (4 > 0)  (empty-lines)

ERROR: Lint failed: Command 'set -e
yamllint .
' returned non-zero exit status 1.: Command 'set -e
yamllint .
' returned non-zero exit status 1.
An error occurred during the test sequence action: 'lint'. Cleaning up.

So this is good.  I may disable this initially, as linting changes will surely cause conflicts.

This is good for now, i'm going to merge into molecule branch and then continue working on adding to the rest of the sub directories in the core role.


[BakaUpdatesMangaReleasesBridge] Bridge no longer works after website update

Recently, Baka-Updates Manga updated their website and the URL paths have changed.
For example, the URL for Shiunji-ke no Kodomo-tachi was https://www.mangaupdates.com/series.html?id=195022.
After update it is https://www.mangaupdates.com/series/h5thsw7 (or https://www.mangaupdates.com/series/h5thsw7/shiunji-ke-no-kodomotachi, the last part / series name in the URL is optional).
The URL used by the bridge, e.g. https://www.mangaupdates.com/releases.html?search=195022&stype=series, does not work anymore after update. Instead of returning releases of the specified series, it now returns releases of all series.
Example: https://rss.nixnet.services/?action=display&bridge=BakaUpdatesMangaReleases&context=By+series&series_id=195022&format=Html

Oops, apparently the user has to find the new ID.
For Shiunji-ke no Kodomo-tachi, the h5thsw7 in the series page URL cannot be used for searching releases.
The user should click Search for all releases of this series and the correcr new ID can be found in the URL (which is<PHONE_NUMBER>5).


[BUG] System restore stuck in restoring if pvc exists with identical name

Describe the bug (🐛 if you encounter this issue)
A clear and concise description of what the bug is.
To Reproduce
Steps to reproduce the behavior:

Create a workload, attach to a volume.
Write some data in it.
Take backup of volume and take system volume.
Delete the volume.
Restore the system backup.
Volume gets created again and restored the data.
Create PV and PVC using Longhorn UI.
Restore the system backup again.
Restore stuck in restoring state,

Expected behavior
Restore should succeed, it should skip restoring the volume which is already in the system.
Log or Support bundle
time="2022-12-14T08:26:08Z" level=debug msg="Restoring PersistentVolumeList" backupTargetURL="s3:abc/" controller=longhorn-system-rollout engineImage="longhornio/longhorn-engine:v1.4.0-rc1" error="PersistentVolume \"pvc-0b84678a-187b-44c6-be30-8dcb7d376303\" is invalid: spec.persistentvolumesource: Forbidden: spec.persistentvolumesource is immutable after creation\n\u00a0\u00a0core.PersistentVolumeSource{\n\u00a0\u00a0\t... // 19 identical fields\n\u00a0\u00a0\tLocal: nil,\n\u00a0\u00a0\tStorageOS: nil,\n\u00a0\u00a0\tCSI: &core.CSIPersistentVolumeSource{\n\u00a0\u00a0\t\t... // 2 identical fields\n\u00a0\u00a0\t\tReadOnly: false,\n\u00a0\u00a0\t\tFSType: \"ext4\",\n\u00a0\u00a0\t\tVolumeAttributes: map[string]string{\n+\u00a0\t\t\t\"dataLocality\": \"disabled\",\n-\u00a0\t\t\t\"diskSelector\": \"\",\n+\u00a0\t\t\t\"fromBackup\": \"\",\n+\u00a0\t\t\t\"fsType\": \"ext4\",\n-\u00a0\t\t\t\"nodeSelector\": \"\",\n\u00a0\u00a0\t\t\t\"numberOfReplicas\": \"3\",\n\u00a0\u00a0\t\t\t\"staleReplicaTimeout\": \"30\",\n+\u00a0\t\t\t\"storage.kubernetes.io/csiProvisionerIdentity\": \"1670976305218-8081-driver.longhorn.io\",\n\u00a0\u00a0\t\t},\n\u00a0\u00a0\t\tControllerPublishSecretRef: nil,\n\u00a0\u00a0\t\tNodeStageSecretRef: nil,\n\u00a0\u00a0\t\t... // 2 identical fields\n\u00a0\u00a0\t},\n\u00a0\u00a0}\n" systemRestore=sys-restore-no-volume

supportbundle_53cae9b1-ec77-40ba-aa16-a9171b760e3e_2022-12-14T08-30-09Z.zip
Environment

Longhorn version: v1.4.0-rc1
Installation method (e.g. Rancher Catalog App/Helm/Kubectl): kubectl

cc @longhorn/qa for QA, this is a good example to create a bug beyond the test case provided by engineering.

Verified on master-head 20221220

longhorn master-head (6b53539)
longhorn-manager master-head (71310df)

Verified on v1.4.x-head 20221220

longhorn v1.4.x-head (ffca869)
longhorn-manager v1.4.x-head (5fbbfb4)

The test steps
Ref #5064 (To Reproduce)
Steps to reproduce the behavior:
Scenario 1

Create a workload, attach to a volume.

kubectl apply -f statefulset.yaml

statefulset.yaml
apiVersion: v1
kind: Service
metadata:
  name: nginx-state-rwo
  labels:
    app: nginx-state-rwo
spec:
  ports:
  - port: 80
    name: web-state-rwo
  selector:
    app: nginx-state-rwo
  type: NodePort
---
apiVersion: apps/v1
kind: StatefulSet
metadata:
  name: web-state-rwo
spec:
  selector:
    matchLabels:
      app: nginx-state-rwo # has to match .spec.template.metadata.labels
  serviceName: "nginx-state-rwo"
  replicas: 1 # by default is 1
  template:
    metadata:
      labels:
        app: nginx-state-rwo # has to match .spec.selector.matchLabels
    spec:
      restartPolicy: Always
      terminationGracePeriodSeconds: 10
      containers:
      - name: nginx-state-rwo
        image: k8s.gcr.io/nginx-slim:0.8
        livenessProbe:
          exec:
            command:
              - ls
              - /usr/share/nginx/html/lost+found
          initialDelaySeconds: 5
          periodSeconds: 5
        ports:
        - containerPort: 80
          name: web-state-rwo
        volumeMounts:
        - name: www
          mountPath: /usr/share/nginx/html
  volumeClaimTemplates:
  - metadata:
      name: www
    spec:
      accessModes: [ "ReadWriteOnce" ]
      storageClassName: "longhorn"
      resources:
        requests:
          storage: 0.5Gi
---
apiVersion: v1
kind: Service
metadata:
  name: nginx-state-rwx
  labels:
    app: nginx-state-rwx
spec:
  ports:
  - port: 80
    name: web-state-rwx
  selector:
    app: nginx-state-rwx
  type: NodePort
---
apiVersion: apps/v1
kind: StatefulSet
metadata:
  name: web-state-rwx
spec:
  selector:
    matchLabels:
      app: nginx-state-rwx # has to match .spec.template.metadata.labels
  serviceName: "nginx-state-rwx"
  replicas: 1 # by default is 1
  template:
    metadata:
      labels:
        app: nginx-state-rwx # has to match .spec.selector.matchLabels
    spec:
      restartPolicy: Always
      terminationGracePeriodSeconds: 10
      containers:
      - name: nginx-state-rwx
        image: k8s.gcr.io/nginx-slim:0.8
        livenessProbe:
          exec:
            command:
              - ls
              - /usr/share/nginx/html/lost+found
          initialDelaySeconds: 5
          periodSeconds: 5
        ports:
        - containerPort: 80
          name: web-state-rwx
        volumeMounts:
        - name: www
          mountPath: /usr/share/nginx/html
  volumeClaimTemplates:
  - metadata:
      name: www
    spec:
      accessModes: [ "ReadWriteMany" ]
      storageClassName: "longhorn"
      resources:
        requests:
          storage: 0.5Gi

Write some data in it.
Create a volume backup and a system backup.
Delete the workload.
Delete the volume.
Restore the system backup.
Volume gets created again and restored the data.
Create PV and PVC using Longhorn UI.
Restore the system backup again.

Scenario 2

Create a volumevol-0 using Longhorn UI.
Create a pod, attach to a volume.
kubectl apply -f pod_mount_1vol.yaml

pod_mount_1vol.yaml
kind: Pod
apiVersion: v1
metadata:
  name: mypod1
  namespace: default
spec:
  containers:
    - name: testfrontend
      image: nginx
      volumeMounts:
      - mountPath: "/data0/"
        name: vol-0
  volumes:
    - name: vol-0
      persistentVolumeClaim:
        claimName: vol-0

Write some data in it.
Create a volume backup and a system backup.
Delete POD
Delete the volume.
Restore the system backup.
Volume gets created again and restored the data.
Create PV and PVC using Longhorn UI.
Restore the system backup again.

Result Passed

Restore should succeed

CC @khushboo-rancher


Add equivalent of mktemp -d as a builtin

Resolves #1255

this is nice, but why only emulate mktemp -d and not mktemp (i.e. also create temp files)?

That will be in a separate commit. Primarily because it's a little more complicated due to wanting to preserve the semantics of the ioutil.TempFile function that returns an open file, not just a file name.

@zzamboni, I've added a path:temp-file command. If you can, and are willing, to build an elvish program from this pull-request I would like feedback regarding the dichotomy of the return values of the path:temp-dir and path:temp-file commands.
@xiaq, This P.R. has caused me to notice that there are unrelated problems with the use of Elvish file objects. Such as not consistently recognizing when they are closed. But I think those observations are outside the scope of this enhancement.

@krader1961 I have tested your branch, it looks good to me. I locally updated my alias module to use path:temp-file instead of mktemp and it works fine.
I think it can be a source of confusion that path:temp-file returns a file object instead of just the path, particularly with path:temp-dir returns the path. Are there any advantages of returning the file object instead of the path?
In any case, thanks for this! I think it's very welcome functionality.

For reference, I updated some of my modules to use path:temp-file instead of mktemp, the changes were trivial: https://github.com/zzamboni/elvish-modules/commit/9edc73cb639f36b503e7b2ef24b7be3804bb1cef

Are there any advantages of returning the file object instead of the path?

The primary advantage is that it helps avoid certain classes of security bugs involving temp files. However, we can't fully take advantage of that until there is additional support for file objects such as a file:seek (or at least a file:rewind) command. Of course, there is also the pragmatic reason that the Go stdlib function we're using returns a file object rather than just a path name.

I force-pushed an update of this pull-request to reflect a rebase on the master branch and addressing all criticisms other than whether the new File type is a StructMap or PseudoStructMap.

@xiaq: Please take another look. I replaced my incorrect struct map implementation with simpler support for indexing so the fd and name keys on a "file" object yield the expected values. I am not happy with the need to introduce expressions such as vals.Num(big.NewInt(-1)), but that is a consequence of the new Elvish number type which does not yet have established patterns for its use.

Please rebase on the latest commit, the diff is now showing all my changes to the number system.
I'm not sure why you need to use vals.Num(big.NewInt(-1)), you should be able to just write -1; Go's ints are automatically interoperable in Elvish.

... but that is a consequence of the new Elvish number type which does not yet have established patterns for its use

The pattern for non-numeric commands dealing with integers is simple: just use int.
If you are going to change some of the numeric commands, you should be able to follow the existing patterns.

Not sure what happened with this pull-request.  Borg standard workflow.
As for the vals.Num(big.NewInt(-1)), that's because in the process of figuring out how to handle the uintptr return value from *File.Fd() I initially coerced it to a int64 which is not interoperable with the new Elvish number system. Which resulted in my convoluted solution. I now realize that coercing the uintptr to an int does the right thing even on 32-bit platforms and for negative and positive values.


Swift-2 UIImage Binary Data Extension Errors

I am attempting to implement the extensions necessary to allow UIImage blob data to be returned from a column.
I was able to use the documentation to complete the process with swift-1, but am having trouble with the upgrade to swift-2.
When adding the extension below:
extension NSData: Value {
    class var declaredDatatype: String {
        return Blob.declaredDatatype
    }
    class func fromDatatypeValue(blobValue: Blob) -> Self {
        return self(bytes: blobValue.bytes, length: blobValue.length)
    }
    var datatypeValue: Blob {
        return Blob(bytes: bytes, length: length)
    }
}

I get the error:
Redundant conformance of 'NSData' to protocol 'Value'

So I assume that extension has already been applied elsewhere in the application.
When applying the UIImage extension:
extension UIImage: Value {
    class var declaredDatatype: String {
        return NSData.declaredDatatype
    }
    class func fromDatatypeValue(blobValue: Blob) -> Self {
        return self(data: NSData.fromDatatypeValue(blobValue))
    }
    var datatypeValue: Blob {
        return UIImagePNGRepresentation(self).datatypeValue
    }
}

I get the following error:
Type 'UIIMage does not conform to protocol 'Value'
and
Ambiguous use of 'fromDataTypeValue'

I have attempted to change the methods to public and other suggested tips, but am unable to compile.
Any suggestions or help would be appreciated.  It would be nice if that section of the documentation is updated (I'll do a pull-request if I can figure it out).

Having the same issue.  Anyone have a solution?

Docs need to be updated. Can you try the following?
extension UIImage: Value {
    public class var declaredDatatype: String {
        return Blob.declaredDatatype
    }
    public class func fromDatatypeValue(blobValue: Blob) -> UIImage {
        return UIImage(data: NSData.fromDatatypeValue(blobValue))!
    }
    public var datatypeValue: Blob {
        return UIImagePNGRepresentation(self)!.datatypeValue
    }

}

Worked for me.  Thanks Stephen!

Works for me also!  And it looks like the documentation has been updated also.  Thanks for the help!


But the taskInstance isn't running in this worker ,it is in queue.so the TaskKillProcessor  throw NullPointException.
2.This exception will be catched in this method.The TaskKillProcessor will continue run to build command .In method "buildKillTaskResponseCommand" , get TaskInstanceId in cache(TaskExecutionContext),but this cache is null,so the command send to master with a null taskInstanceId.

How to verify: Add a sleep before the cache code, and execute the kill operation during sleep.


remove '/widgets'

Google Search Console is complaining that pages under /widgets are blocked through robots.txt.
In relation to Googles documentation how to prevent pages from beeing index (https://developers.google.com/search/docs/advanced/crawling/block-indexing) /widgets should be removed from robots.txt – indeed it already has an x-header: noindex entry.

 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.

hey @createdwithlove
thanks for your contribution :+1:
could you please have a look at the failing tests? https://github.com/shopware/shopware/blob/5.7/tests%2FFunctional%2FControllers%2FFrontend%2FRobotsTxtTest.php

Which widgets modules exactly is Google complaining about? There are several modules that should explicitly not be indexed such as widgets/checkout or widgets/compare. Maybe a better approach would be to only allow specific modules like https://github.com/shopware/shopware/blob/3c3c171609f95409df9f1c86bf6d7d5d78dfbdd3/themes/Frontend/Bare/frontend/robots_txt/index.tpl#L26 instead of the whole widgets/ path?

GSC is complaining about /widgets/index/refreshStatistic.
But to quote Google:

Important: For the noindex directive to be effective, the page or resource must not be blocked by a robots.txt file, and it has to be otherwise accessible to the crawler. If the page is blocked by a robots.txt file or the crawler can't access the page, the crawler will never see the noindex directive, and the page can still appear in search results, for example if other pages link to it.

That means, that if there are other /widgets that should not get indexed, they should have a proper noindex directive (x-header or meta) instead of dissallowing access for crawlers using robots.txt

GSC is complaining about /widgets/index/refreshStatistic.
But to quote Google:

Important: For the noindex directive to be effective, the page or resource must not be blocked by a robots.txt file, and it has to be otherwise accessible to the crawler. If the page is blocked by a robots.txt file or the crawler can't access the page, the crawler will never see the noindex directive, and the page can still appear in search results, for example if other pages link to it.

That means, that if there are other /widgets that should not get indexed, they should have a proper noindex directive (x-header or meta) instead of dissallowing access for crawlers using robots.txt

Would you mind adding the header to the corresponding responses? Otherwise, the routes will still be listed by the google search engine (if I got this correctly), as they're not on the denylist anymore after this change.

@philipgatzka as mentioned above that seems to be already done. Checked /Shopware/Controller/Widgets/ – are there more?
https://github.com/shopware/shopware/blob/63500edcc1dbed4f8162e7f2eb0282d245eab991/engine/Shopware/Controllers/Widgets/Recommendation.php#L47
https://github.com/shopware/shopware/blob/63500edcc1dbed4f8162e7f2eb0282d245eab991/engine/Shopware/Controllers/Widgets/Listing.php#L49
https://github.com/shopware/shopware/blob/63500edcc1dbed4f8162e7f2eb0282d245eab991/engine/Shopware/Controllers/Widgets/Index.php#L34
https://github.com/shopware/shopware/blob/63500edcc1dbed4f8162e7f2eb0282d245eab991/engine/Shopware/Controllers/Widgets/Error.php#L32
https://github.com/shopware/shopware/blob/63500edcc1dbed4f8162e7f2eb0282d245eab991/engine/Shopware/Controllers/Widgets/Compare.php#L32
https://github.com/shopware/shopware/blob/63500edcc1dbed4f8162e7f2eb0282d245eab991/engine/Shopware/Controllers/Widgets/Checkout.php#L46
https://github.com/shopware/shopware/blob/63500edcc1dbed4f8162e7f2eb0282d245eab991/engine/Shopware/Controllers/Widgets/Captcha.php#L34
https://github.com/shopware/shopware/blob/63500edcc1dbed4f8162e7f2eb0282d245eab991/engine/Shopware/Controllers/Widgets/Campaign.php#L34
https://github.com/shopware/shopware/blob/63500edcc1dbed4f8162e7f2eb0282d245eab991/engine/Shopware/Controllers/Widgets/Recommendation.php#L47

Indeed, I didn't read your first comment here, my bad. I think all is fine then! 👍

The tests are still failing, the error seems unrelated though, I scheduled another run.

We just discussed this in the team - as it stands now, plugin widget controllers, which don't set the header themselves, would be indexed still, right? In this case, could you check, whether it's possible to apply the header to all widget controller responses, including plugin controllers?

You're right, if the x-header isn't set, plugin widgets maybe get indexed.
If you're concerned that it might have unwanted side effects, feel free to decline the pull request.
For someone who deals with such little things, it shouldn't be a problem to adapt the robots.txt to their own needs on a project basis.
I will observe how Google deals with the adapted robots.txt in our shops and, if necessary, start a new pull request again later.

GSC is complaining about /widgets/index/refreshStatistic.
That means, that if there are other /widgets that should not get indexed, they should have a proper noindex directive (x-header or meta) instead of dissallowing access for crawlers using robots.txt

I can confirm this situation. We had the same GSC issues some time agout and therefore I added
 {$robotsTxt->setAllow('/widgets/index/refreshStatistic')}
in our theme to let the crawler found the noindex header.
I think the root problem was the wrong noindex header as you mentioned in the issue some years ago. This resulted in wrong indexing and now the robot.txt disallow entries prevent any de-listing by the corrected noindex-header.
So the PR would fix older shops that still face this indexing issue but it would have no effect on newer shops that started with the x-robots-tag.

@createdwithlove @larsbo thank you very much for the discussion :blue_heart: :+1:
I guess that we now have a good solution.
@createdwithlove would you mind changing the title and description of the PR so it is matching the change?

@createdwithlove @larsbo thank you very much for the discussion :blue_heart: :+1:
I guess that we now have a good solution.
@createdwithlove would you mind changing the title and description of the PR so it is matching the change?

Hello,
thank you for creating this pull request.
I have opened an issue on our Issue Tracker for you. See the issue link: https://issues.shopware.com/issues/SW-26598
Please use this issue to track the state of your pull request.


refactor: release tag

Checklist

[x] the individual contributor license agreement is signed
[x] commit message follows commit guidelines

Description of change

use plain semantic version tag without any prefixing.
This makes automated version checking simpler, since it matches the semver regex.
https://github.com/sindresorhus/semver-regex/blob/master/index.js#L3
edit SemVerTag does encourage using a v prefix

What tools are we using that use this regex?  (I don't believe I'm using any.)
Tags without a prefix do not seem to appear in the UI under the "Branch" pulldown in GitHub, either when I browser the "Tags" tab or use the search.  That bothers me -- it's the reason I restored the prefix.

The primary reason is that it is to spec (or rather to the SemVerTags sub-spec).
There is some disagreement on whether v should be prefixed or not, I'd be fine either way.

This sub-specification SHOULD be used if you use a version control system (Git, Mercurial, SVN, etc) to store your code. Using this system allows automated tools to inspect your package and determine SemVer compliance and released versions.

When tagging releases in a version control system, the tag for a version MUST be “vX.Y.Z” e.g. “v3.1.0”.
The first revision that introduces SemVer compliance SHOULD be tagged “semver”. This allows pre-existing projects to assume compliance at any arbitrary point and for automated tools to discover this fact.

http://semver.org/spec/v1.0.0.html#tagging-specification-semvertag

What tools are we using that use this regex?

VersionEye uses this pattern when calculating upgrade risk.

Tags without a prefix do not seem to appear in the UI under the "Branch" pulldown in GitHub, either when I browser the "Tags" tab or use the search. That bothers me -- it's the reason I restored the prefix.

again the SemVerTag spec does allow a v prefix.
Tags prefixed with v do show in the jump to tag feature on GitHub.

The v prefix should be fine, as long as the tags show up in the GitHub UI.


esky in windows enviornment

I have included esky in one of my python project, it works fine in mac version (Thanks for this cool stuff).  But it is not working in windows environment, I am getting  "No frozen version found" error. I followed Ryan's talk in the Pycon where he was showing esky in windows environment. Does it work in windows 10 platform?

Hi, there are a few bugs floating around with esky, i need to update the readme. My main problem at the moment is that cxfreeze is really hard to get working on linux. Some small fixed could be made to make it work correctly on python3.
I am in the process of switching over to pyinstaller and trying pyupdater.

PyInstaller - PyUpdater

I prefer PyInstaller as well, but with PyInstaller---are you able to successfully compile Celery to execute a celery application??  When I run celery after, it says that the App isn't found.  Thoughts?

Try asking over on the pyinstaller github page, there is also slot of existing info for making certain libraries package correctly

Cool will do.  Ugh!
Thanks!

On Sep 25, 2016, at 6:38 AM, timothy eichler<EMAIL_ADDRESS>wrote:
Try asking over on the pyinstaller github page, there is also slot of existing info for making certain libraries package correctly
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub, or mute the thread.

Thanks for reaching out.  Unfortunately this project is no longer actively maintained, so I'm going to move it into archive mode:
https://rfk.id.au/blog/entry/archiving-open-source-projects/


feat: allow overriding SOA and NS DNS record TTL

what

Provide variables to configure TTL for SOA and NS records
Change default values of TTL for NS from 30 seconds to 2 days (172800 seconds)
Change default values of TTL for SOA from 60 seconds to 15 minutes (900 seconds)
Added the tenant context variable to the zone name template - maybe someone will need it :)

why
These values were hardcoded and with too small default values. DNS is supposed to be a cache, and having a low TTL of records like NS or SOA contradicts that idea.
AWS defaults for TTL:
NS - 172800
SOA - 900
references
Closes #46
Previous PR has some weird permission issues which I couldn't solve, so I forked it again into a new repo and applied the same changes.

It seems that there are still some problems with cloudpossebot not being able to push the auto-format commit. Anyone can have a look what's causing it? I simply forked the repo and opened a PR - this process seems to work fine on your other github repositories...

Is there any reason you switched from 86400 to 900 for the SOA?

I had it at 86400 in the original PR, but I decided that it's better to stick with AWS default values:
https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/SOA-NSrecords.html

@bartelemi this looks like a good PR. Can you update to fix your conflicts and tenant to the new templating pattern?
Thanks!

/test all

Adding a no-release label because I want to release this alongside #52 and #51

@korenyoni I have extended the original complete example with ttl overrides for both records. Hopefully that's enough, otherwise please let me know what else you're expecting.

/test all

I want to preserve the old TTL values as defaults for backwards compatibility.

As much as I understand the whole backwards compatibility reasoning, I don't think it's a major breaking change in this particular case. Original values were ridiculously low and it was based on nothing. The defaults I propose are based on official AWS documentation and I think aligning with that is much more important than "backwards compatibility" of some terraform module which doesn't even have a stable release yet.
Also, there is a reason why you include this comment everywhere in your modules:
# Cloud Posse recommends pinning every module to a specific version
# version = "x.x.x"

That's just my 2 cents to the conversation, I don't want to stretch out this pull-request in time more than needed.

/test all

I want to preserve the old TTL values as defaults for backwards compatibility.

As much as I understand the whole backwards compatibility reasoning, I don't think it's a major breaking change in this particular case. Original values were ridiculously low and it was based on nothing. The defaults I propose are based on official AWS documentation and I think aligning with that is much more important than "backwards compatibility" of some terraform module which doesn't even have a stable release yet.
Also, there is a reason why you include this comment everywhere in your modules:
# Cloud Posse recommends pinning every module to a specific version
# version = "x.x.x"

That's just my 2 cents to the conversation, I don't want to stretch out this pull-request in time more than needed.

You're probably right — we are usually strict when it comes to backwards compatibility but this is a trivial case. I'll bring it up in an internal meeting in 20 minutes and get back to you.

/test all

/test all

Change default values of TTL for NS from 30 seconds to 2 days (172800 seconds)

I believe we can lengthen this, but high TTLs for DNS scare me. For context, having been at this for a long time, "It's always DNS"
https://www.cscdbs.com/blog/why-dns-is-the-biggest-single-point-of-failure/
https://www.reddit.com/r/sysadmin/comments/puwt72/its_always_dns/
etc.

/test all

@osterman Your comments on SOA are inaccurate.  SOA is meant to provide details for zone transfers between a domain's authoritative servers.  Yes, one of those values (MINIMUM) has been co-opted to now represent the TTL for NXDOMAIN, but we are not talking about that value here.  We are discussing the TTL of the SOA and NS records themselves.
High TTLs on SOA and NS have been the norm for DNS infrastructure for decades and I was rather taken aback that this module had set mine so low.

@osterman Your comments on SOA are inaccurate. SOA is meant to provide details for zone transfers between a domain's authoritative servers. Yes, one of those values (MINIMUM) has been co-opted to now represent the TTL for NXDOMAIN, but we are not talking about that value here. We are discussing the TTL of the SOA and NS records themselves.
High TTLs on SOA and NS have been the norm for DNS infrastructure for decades and I was rather taken aback that this module had set mine so low.

@razorsedge, as @osterman explained above, our previously hard coded settings, and now defaults, reflect our orientation towards working in DevOps and development environments. They are not tuned for production. Our typical workflow is to create resources using default parameters and then tune those parameters as the infrastructure stabilizes. Our defaults are not meant as, and should not be taken as, recommendations for production settings.
The point of the TTL of the SOA was never terribly well defined. Distribution of the SOA itself and the other records in a zone server is not controlled by the SOA TTL, but by the other fields of the SOA: REFRESH, RETRY, and EXPIRE. RFC 1035 from 1987 says "SOA records are always distributed with a zero TTL to prohibit caching". In 1997, 10 years later, RFC 2181 clarified that "This is mentioned nowhere else, and has not generally been implemented." In any case, Amazon's Route 53 uses proactive pushes as a result of ChangeResourceRecordSets API calls rather than polling to update records, so it effectively ignores the SOA TTL in zone management.
DNS resolvers do not generally query for the SOA, but they get a copy of it along with a negative hit (NXDOMAIN or the newer NODATA) to indicate for what zone the negative hit is authoritative. This means, in practice, that it serves as an upper limit on how long a negative hit can be cached. As a result RFC 2308 requires that the TTL of a negative answer be set to "the minimum of the MINIMUM field of the SOA record and the TTL of the SOA itself" (emphasis added).
So for consistency, and because it is a separate argument to the aws_route53_record resource, we define the negative hit cache TTL via the SOA TTL rather than the SOA MINIMUM field, which we have always hard coded (and with this PR, still hard code) as 86400 seconds.
The TTL for NS records is better defined, and has more consequences, but among the key concerns we have is that we do change name servers. In particular, we create separate delegated zones under a master domain name with separate name servers for each environment, and we want those to come up quickly.
In general, our development environments are so low traffic that any costs associated with short cache times are well worth the benefits in productivity.  That said, more reasonable values for production TTLs would be 300 for SOA and 86400 for NS, but the NS one is particular is hard to be general about, because it depends on your disaster recovery and DDoS mitigation plans. You might want a longer one so that resolvers can serve out of their cache during an outage, or you might want a short one so you can switch DNS servers when one is under attack.

I'm happy so long as I can change the values.
Although I am surprised to learn that CloudPosse module defaults are not tuned for production use.  That should probably be clarified in the module documentation (in all modules).

can we get this merged?

can we get this merged?

@bartelemi if you are not in the SweetOps public slack I recommend joining, #pr-reviews in there has proven to be the best place to ask for review and merge attention.

/test all

/test all


Add terminal task

This PR adds a terminal task so that users can access and modify some properties of the terminal that initiated the task. There is some overlap with interactionService but it wasn't clear to me that they should be combined. The terminal tasks is a bit more raw. It doesn't provide a readLine method or anything like that. Instead it is designed to be just powerful enough for advanced users to build a custom line reader without exposing the entire jline api. The interactionService is still probably the way to go for most use cases.
I'd been thinking about adding something like this for a while. The motivation for actually doing it was @eed3si9n's comment in #5899 (https://github.com/sbt/sbt/issues/5899#issuecomment-699467667).

The main feature that this adds compared to the interactionService that is easy to implement is press any key to exit. Here is a sample build.sbt that does this:
TaskKey[Unit]("readInput") := {
  terminal.value.setMode(canonical = false, echo = false)
  terminal.value.printStream.println("read a byte")
  terminal.value.inputStream.read
}

The task exits when the user types any key both with sbt and sbtn.

I'm sort of wondering now if Terminal should be in the sbt package. Is there another package that might make sense that is not internal? The goal was to make this limited functionality public and not in an internal package but top level sbt might be promoting it a little too much. I also wouldn't have had to alias the internal Terminal everywhere it was used in the main project  if it was in a different package.

You could make up some subpackage under sbt if you want, but not sure if it's worth it for one class.


[Suggestions] Change the key 'U' into 'R' to display recipe info for Water Cells

In <IP_ADDRESS>, the recipe info for water cells will be displayed after pressing 'U' with NEI. Will it be better to change this key to 'R' which means Recipe rather than Usage? =D

Yeh, it would be, although right now I have not yet added a 'recipe' version of that feature - there is only a 'use'. This will be added at some point though, as it could prove to be useful ;)

Got it. :D

Just been added - will be updated soon ;)

Glad to see it added in 1.6a :)  but it seems that you forgot to update the zh_CN.lang :(
Anyway, it's time to close this issue XD


Moneropedia - Blockchain

The following page on Blockchain should be updated to the following:
A distributed ledger of all transactions both past and present. This ledger is made up of a series of blocks. In Monero, the blockchain does not reveal who the funds came from or went to. To see how the blockchain is obscured, see ring signatures.

Done.


Content Validator showing error 950 for language code.

translationCore Create - v1.8 build 183-ca725ce.
With the new TSV7 format, CV is showing error 950"tC cannot yet process '*' language code".

There is a "cvFilter" which is used to discard results that are of little value or are misleading. It is in /src/hooks/validationHelpers.js.
@Joel-C-Johnson @jincypjose

As of this moment, I am blocked. gA is getting 403 Forbidden errors when trying to convert tsv9 to 7. The error type is "cors", so I have asked Rich to help on discord.

No longer seeing the problem in translationCore Create - v1.8 build 190-5da41d8.


Restarted orbitdb is not informed in update listener about all new added documents

When I started a node after the first node has already created some documents only the last created documents is seen in the update listener. However the underlying data seems to be synced, since the count when checking with all is identical.
I have created a project to replicate this:
https://github.com/koh-osug/orbitddb-issue
2 documents are created, but only 1 is later reported in the update listener.

The remote peer only needs to be aware of the latest record to be able to verify and build a replica of the source db's entries. Therefore, only the latest addition is available via 'update'. For example:
await db1.add('a')
await db1.add('b')

// state of the oplog is 'a' <- 'b' where <- 'b' follows 'a'.

await db2.open(db1.address)

db2.on('update', (entry) => {
  // 'update' only gives 'b' because 'b' follows 'a'. db2 does not need to be notified of the update 'a'; 'b' is enough to determine and replicate the correct oplog entries.
})

await db1.add('c') // this will fire db2's update event listener again because db1's oplog has been appended to and the (entry) will be 'c'.

I'll provide a link to https://github.com/orbitdb/orbitdb/blob/main/docs/OPLOG.md which may provide clarity.

Thank you. This clarifies it. Is there any chance to get the full delta of changes? I have a business process which has to post process only new documents on each node.

Yes, the gt iterator param is one option.
If items are coming in from one peer you could loop over the database using iterator, processing each item until you reach the most recently "processed" document.
If items are being sync-ed from various peers you may need to keep a record of the documents already processed and use it to determine whether a document requires processing.
However, the best method will be determined by your technical requirements.
Also, remember, if you are working at the oplog level you are working with operations. You may want to consider working with the data at the database level.

If items are coming in from one peer you could loop over the database using iterator

This means using log.iterator({ amount: 1 }) before connecting to any different peer's DB is not giving the latest hash of the database? I would use this otherwise if it works as latest element while syncing with all other databases.

Also, remember, if you are working at the oplog level you are working with operations. You may want to consider working with the data at the database level.

But on database level I do not have something like log.iterator({ amount: 1 }) to get the last document and I have also no option to get any newer documents then specific hash, right?

You have the iterator available at the db level, yes. The params available to you will depend on the data store being used. I would recommend looking at https://api.orbitdb.org/ for more information about the functions available.

My logic now is getting the log heads and then iterating over all log entries after this. This seems to be functional I can get all new changes:
const db2 = await orbitdb2.open('subscription-data', {type: 'documents'})
let db2a = await orbitdb2.open(db1.address, {sync: false})
const heads = await db2a.log.heads()
await db2a.close()
db2a = await orbitdb2.open(db1.address)

db2a.events.on('update', async (entry) => {
  let filter = {}
  if (heads.length > 0) {
    filter = {gt: heads[0].hash }
  }
  for await (const record of db2a.log.iterator(filter)) {
    console.log("new entry", record)
  }
})

But the documentation of log.heads() returns an array. I'm wondering why multiple heads are possible and what I'm missing here? Also i open the database with sync: false to get the original state, close it and open it again. Somehow this feels inefficient.

But the documentation of log.heads() returns an array.
You can have multiple heads because peers can add records at the same (logical) time.

I'm not sure why you are working at the log level. Why not process records from the document store then mark them as processed?

The first issue I see is that I do not have write access to the synced database replica, I assume your approach would be to overwrite the document with the same document and set a marker attribute to the JSON structure. I.e. write access is necessary, right? My understanding here is that the database I open with orbitdb.open is the same instance as the remote one just a local copy and that changes to this copy would also be reflected in the original database of the owning peer.
Another issue I see that I will miss deletions. How can I see a DELETE operation? I cannot iterate over all documents I assume and do a full database comparison to find out which document have been deleted. My business process needs to know this, hence I has hoping to get all updates, also deletions with the update listener.
Also if I do this this generic marker would be seen also by other peers and then these peers would think that they have already processed it on their end, which is not the case. I could also add a peer specific marker, but this would mean to have 100 specific marker attributes in the document for supporting 100 peers. And all peers need write access.
Also, what I see in the code it that the query function is using the iterator also and I think I cannot afford a complete database scan, if I have 10000 documents it looks like the iterator looks into all 10000 documents then. If something like in SQL a specific query would be possible with a WHERE clause, then I could consider this. Am I wrong here with my assumptions?

What you're describing seems more like a software architecture problem rather than a bug or issue with OrbitDB. If you're looking for help with integration of OrbitDB with your software systems, you may get better traction on the OrbitDB Lobby where other developers may have run into similar implementation issues.


Unspecified error when initializing storage account in sample app

Xcode 8.2.1
When running sample app (and before, when running my own app via Cocoapods) I get this error when initializing AZSCloudStorageAccount: Error Domain=com.Microsoft.AzureStorage.ErrorDomain Code=1 "(null)"
from the line try! storageAccount = AZSCloudStorageAccount(fromConnectionString: connectionString) in BlobListTableViewController.swift
Any advice on how to debug to nail down the error further would be great!

Hi Krambs, thanks for your feedback!
Error domain Code=1 means invalid argument, could you please double check that you put in the right AccountName and AccountKey? We will document these errors properly in the near future, sorry for the confusion!
A simple way to verify your credentials is to use the Azure Storage Explorer, it also allows you to visualize your storage account.
Please do reopen this issue if you're still encountering the same problem.


Inquiry about evaluation

We would like to ask about the output of the evaluation code.
As written in Github instruction, we run
$ bash scripts/eval_estimate.sh
It seems there are no image outputs and we are wondering if we can get some images like your ping-pong racket indicated with pose.
Also, could you please teach us what the pkl files in GenPose2/results/evaluation_results/single directly which are generated after running the bash?
There are "aggregated.pkl", "criterion.pkl", and etc and it would be very helpful if you could tell us what they are.

The aggregated.pkl file contains the predicted object poses, while the criterion.pkl file includes various evaluation metrics. We separate the inference and evaluation processes to avoid re-running lengthy inference on large datasets, which enhances efficiency.
For visualizations, you can use the data in aggregated.pkl. Additionally, we are developing a version integrated with SAM, which will cover the entire workflow from instance segmentation to object pose estimation, including visualization. Please stay tuned for updates to our repository for this upcoming feature.


Migrated all PCR related functions to tpmDirect.

Changed pcr.go to support direct and migrated all tests in pcr_test.go.

transportTPM and mergePCRSelAndProtoDirect were removed from this PR as they were not passing the linter (not used in this PR).


Remove aux heat from climate entity

Remove aux heat from climate entity and move it to a switch entity.

This is a distinct hvac_mode on Tekmar thermostats, but the HA climate entity doesn't have a matching HVACMode for emergency heat. Instead, the climate entity will show 'heat' mode (return HVACMode.HEAT)when the thermostat is in emergency mode since HA can't show the true mode of the thermostat.
This switch will show if the thermostat is in emergency mode (and set it). During normal operation the thermostat will not show if the emergency stage is active or not, only if it's in that mode to force operation.


phpPackages.psalm 5.15.0 -> 5.21.1

Description of changes
Diff: https://github.com/vimeo/psalm/compare/5.15.0...5.21.1

Things done

Built on platform(s)

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

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

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

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

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

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

[x] Fits CONTRIBUTING.md.

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

This is a duplicate of https://github.com/NixOS/nixpkgs/pull/285828

I'm also looking for reviewers on that PR, feel free to do so so I can merge it.


unexisting timestamp in collection while adding collection returns HTPP code 500

In gitlab by @sylvaingaudan on Jul 19, 2017, 17:08
while using the REST service put /collections/{collection}, the server crashes if the provided timestamp path does not exist.
The NotFoundException with the index name and timestamp path should be returned instead of a HTTP 500 code

In gitlab by @sylvaingaudan on Jul 21, 2017, 12:10
changed milestone to %7

In gitlab by @sylvaingaudan on Jul 21, 2017, 14:50
closed

In gitlab by @sfalquier on Jul 21, 2017, 14:53
Not reproduced locally.


Better CI and release process

Migrated from https://github.com/mesg-foundation/js-sdk/issues/26
Originally created by @antho1404 on Wed, 31 Jul 2019 04:15:08 GMT

I released a version 4.2.1 with the CI and the version was published but without the sources.
The CI should be able to publish with the sources.
The workflow should be the following:

Increase version (manually or with npm version)
Create a tag with the version
Push the tag on Github
The CI test the sources
The CI build the sources
The CI publish the version with the build

After we push on the tags on git we shouldn't have any manual action to do

For information, these are the steps to deploy a clean version of the libraries
git checkout master
git pull origin master
rm -rf packages/**/tsconfig.tsbuildinfo
npm run lerna -- clean -y
npm i
npm run test
npm run build
npm run lerna -- publish $@


Python OpenCV - Drawing Function Issue

This is a template helping you to create an issue which can be processes as quickly as possible. Feel free to add additional information or remove not relevant points if you do not need them.
If you have a question rather than reporting a bug please go to http://answers.opencv.org where you get much faster responses.
Please state the information for your system

OpenCV version: 3.x
Host OS: Linux (Fedora 23)
Compiler & CMake: GCC 5.3 & CMake 3.5

In which part of the OpenCV library you got the issue?

drawing funcions

Expected behaviour
The code attempts to draw a green square on the window.
Actual behaviour
I got this working in last week but now nothing happens and I get the error described bellow. The code attempts to draw a green square on the video window.
      **Traceback (most recent call last):
       File "/home/ggoulart/PycharmProjects/INTPYT_HandTracker/Main.py", line 13, in <module>
       cv2.rectangle(gray, 100, 100, (0,255,0), 3)
       SystemError: new style getargs format but argument is not a tuple**

Can anybody help me?
I've tried convert to a tuple, but nothing changes.
Code example to reproduce the issue
import cv2
import numpy as np

cap = cv2.VideoCapture(0)

# Loop
while (1):

    _, frame = cap.read()

    gray = cv2.cvtColor(frame,cv2.COLOR_BGR2GRAY)

    cv2.rectangle(gray, 100, 100, (0,255,0), 3)

    cv2.imshow('Test',gray)

    k = cv2.waitKey(100)
    if k == 27:
        break

cap.release()
cv2.destroyAllWindows()

Usage questions should go here: http://answers.opencv.org
Take a look on OpenCV Python samples: https://github.com/Itseez/opencv/tree/master/samples/python
Try print(cv2.rectangle.__doc__) to get function description with some information about parameters.


Observable and Http errors

Can anybody explain me the mechanism of error handling? For example, I have 2 subscribers on one observer
  let observable = this.authService.signIn(formGroup.value.email, formGroup.value.password);

  // 1st subscriber
  observable.subscribe((response: SignInResponse) => {
    console.log('First - Success');
  }, () => {
    console.log('First - Error');
  }, () => {
    console.log('First - Finally');
  });

  // 2nd subscriber
  observable.subscribe((response: SignInResponse) => {
    console.log('Second - Success');
  }, () => {
    console.log('Second - Error');
  }, () => {
    console.log('Second - Finally');
  });`

If I get 400 from the server - both error messages First - Error, Second - Error appears as expected,
but if I remove error and finally callback for the first subscriber as
  let observable = this.authService.signIn(formGroup.value.email, formGroup.value.password);

  observable.subscribe((response: SignInResponse) => {
    console.log('First - Success');
  });

  observable.subscribe((response: SignInResponse) => {
    console.log('Second - Success');
  }, () => {
    console.log('Second - Error');
  }, () => {
    console.log('Second - Finally');
  });

I don't get the error callback of the second subscriber

Could you recreate in a plunkr?

@mackelito plunker
Open debugging console. By default, you will get both error messages, but if you remove error and finally callbacks for 1st subscriber - you also will not get an error message from the 2nd subscriber.  I am a newbie in Rx programming, maybe I have a logic mistake in my code

Using the .getList instead of .get and in the service returning the object (this.restangular.one('posts/a')) instead of the result
https://plnkr.co/edit/UhfG7PTTuiBz5D60hgPm?p=preview

But in this case, we have two requests to the server. I can explain what I want. I have AuthService with SignIn method and SignInComponent. In component after submitting the form, I do request with AuthService and got a result as Observable. Then I need to save token I get. I want to save token in my service and return observable to component
In service
signIn(email: string, password: string): Observable<SignInResponse> {     let observable$ = this.restangular.one(this.url).post('signIn', new SignInModel(email, password));     observable$.subscribe(res => {       // save token to localStorage     });     return observable$;   }
In component
this.authService.signIn(formGroup.value.email, formGroup.value.password)         .subscribe((response: SignInResponse) => {          // redirects, etc         });
But, If request returns error, Component subsriber doesn't work

hmmm.. not sure if I follow...
The issue is that you need to authenticate if you don´t have a valid token right?..
I did a solution for this exact senario just a few weeks ago... I ended up using canActivate/AuthGuard and it worked perfectly! :)

No ) I just want to have 2 subscribers on one request result: 1st in my service to save token, and 2nd in my component to redirect from sign in form.

so the senario is that you have a login component.. and once the user has submitted the form and has gotten the token you want to do a redirect.
So the service will have a login() method that you subscribe to and based on the response you get back you want to redirect if login was successful.. correct?
The service should not have .subscribe() it should return the observable that the component subscribes to.
If you need to store the token in localstorage you can do that in the service.. Here is an example.
authenticate(): Observable<boolean> {
  console.log('running authenticate()')
    const data =
      'grant_type=' + 'implicit' +
      '&client_id=' + 'WjFdWnyzE44pDUQXV1hLbawrgLYIP2ZanT6C8Cr6ri'

return this.http.post(this.authUrl, data, { headers: this.headers })
  .flatMap((response: Response) => {
    return localforage.setItem('auth', response.json()).then(res => {
      this.token = _.get(res, ['access_token'])
      this.tokenExpires = _.get(res, ['expires'])
      return !_.isUndefined(this.token)
    })
  })
}

I´m using http instead of restangular here because of this issue, https://github.com/2muchcoffeecom/ng2-restangular/issues/14#issuecomment-272466188

Yes, it will work. Thanks for your answer. Issue can be closed


Fix sharded allgather bfp8 output mismatch

Fixed page size miscalculation for bfp8 which led to output mismatch
Closes #8400

Workflows
Post Commit: https://github.com/tenstorrent/tt-metal/actions/runs/9068733071
Multi-device unit tests: https://github.com/tenstorrent/tt-metal/actions/runs/9068788463


[question] Why there say: determine how the project model is generated and output to disk.? is it means the Options is very important, participated in the whole execution process of TypeDoc?

Search terms

Options, type conversion
Question
In the document: options

TypeDoc provides some 30 options which determine how the project model is generated and output to disk. The Options class consolidates application options into a single location and handles type conversion.

Is the Options means the input params of a function/ API ?
Why there say: determine how the project model is generated and output to disk.? is it means the Options is very important, participated in the whole execution process of TypeDoc?
What's the meaning of Options class  consolidates application options into a single location ?
What's the  type conversion.? is it refers to convert Int to String?

Kind of, the options object contains all of TypeDoc's arguments that can be configured by a user via the command line or a config file.
It's important, but probably the least interesting piece of typedoc. It holds the out and json option values, so yes, it controls where stuff is written.
All available options are known by the options class. If a plugin declares more options, that class is used to do it, this lets it know how to generate a help message if --help is given, and whenever getting the value of an option, TypeDoc's code will go back to the options class.
Conversion consists of converting a TS symbol/node/type into a reflection (typedoc model describing a documentation item) https://ts-ast-viewer.com is useful for seeing what symbols & nodes look like, and TypeDoc's json output closely mirrors the reflection structure.


macOS: Should swiftly support toolchains in /Library/Developer/Toolchains?

Some people prefer to install the toolchains to /Library/Developer/Toolchains for all users on the system to use. Do people think swiftly should support this use case through configuration / prompt / auto detecting / not for now?
Would people want to support this through a SWIFTLY_TOOLCHAINS env variable?
From swiftly init
/Users/iain/Library/Application Support/swiftly - Data and configuration files directory including toolchains
/Users/iain/Library/Application Support/swiftly/bin - Executables installation directory

Note that the locations can be changed with SWIFTLY_HOME and SWIFTLY_BIN environment variables and run
this again.

Swiftly is a single user-level tool, and generally avoids operating at the system level, escalating privileges to accomplish its tasks. This is why in Linux swiftly doesn't automatically install system packages for you. Instead it prints them out, or provides the command in a "post install" files that you can use to accomplish that. Installing toolchains in /Library/Developer/Toolchains requires sudo when running the installer tool.
Assuming that swiftly did install toolchains for all users of the system in some (e.g. a post-install kind of mechanism) how will those other users access swiftly? Is it just that they get access to the toolchains that one user installs for them using swiftly?


Clews 37159 Switch from Shippable to CircleCI

This transfers the following functionality from Shippable to CircleCI:

Updating the developer documentation
Publishing to testpypi
Publishing to pypi

We should now entirely remove shippable.yml.

Done


Tes1

Getting started with GIT
[ ] Turn on GitHub Pages
 [ ] Outline my portfolio
 [ ] Introduce myself to the world

Great Learning

Done

Done


fixes: #68

-fixing the npm package link

please update your master first, that is a lot of commits that shouldn't be there


iOS run Cocoapods issue

When running on iOS, I have this error :
    Fetching external sources
    -> Fetching podspec for `Flutter` from `Flutter`
    -> Fetching podspec for `path_provider_foundation` from `.symlinks/plugins/path_provider_foundation/darwin`
    -> Fetching podspec for `pdfrx` from `.symlinks/plugins/pdfrx/darwin`

    Resolving dependencies of `Podfile`
      CDN: trunk Relative path: CocoaPods-version.yml exists! Returning local because checking is only performed in repo update
      CDN: trunk Relative path: all_pods_versions_4_2_c.txt exists! Returning local because checking is only performed in repo update
      CDN: trunk Relative path: Specs/4/2/c/FlutterMacOS/3.16.0/FlutterMacOS.podspec.json exists! Returning local because checking is only performed in repo update
    [!] CocoaPods could not find compatible versions for pod "pdfrx":
      In Podfile:
        pdfrx (from `.symlinks/plugins/pdfrx/darwin`)

    Specs satisfying the `pdfrx (from `.symlinks/plugins/pdfrx/darwin`)` dependency were found, but they required a higher minimum deployment target.

    /Library/Ruby/Gems/2.6.0/gems/molinillo-0.8.0/lib/molinillo/resolution.rb:317:in `raise_error_unless_state'
    /Library/Ruby/Gems/2.6.0/gems/molinillo-0.8.0/lib/molinillo/resolution.rb:299:in `block in unwind_for_conflict'
    /Library/Ruby/Gems/2.6.0/gems/molinillo-0.8.0/lib/molinillo/resolution.rb:297:in `tap'
    /Library/Ruby/Gems/2.6.0/gems/molinillo-0.8.0/lib/molinillo/resolution.rb:297:in `unwind_for_conflict'
    /Library/Ruby/Gems/2.6.0/gems/molinillo-0.8.0/lib/molinillo/resolution.rb:682:in `attempt_to_activate'
    /Library/Ruby/Gems/2.6.0/gems/molinillo-0.8.0/lib/molinillo/resolution.rb:254:in `process_topmost_state'
    /Library/Ruby/Gems/2.6.0/gems/molinillo-0.8.0/lib/molinillo/resolution.rb:182:in `resolve'
    /Library/Ruby/Gems/2.6.0/gems/molinillo-0.8.0/lib/molinillo/resolver.rb:43:in `resolve'
    /Library/Ruby/Gems/2.6.0/gems/cocoapods-1.12.1/lib/cocoapods/resolver.rb:94:in `resolve'
    /Library/Ruby/Gems/2.6.0/gems/cocoapods-1.12.1/lib/cocoapods/installer/analyzer.rb:1082:in `block in resolve_dependencies'
    /Library/Ruby/Gems/2.6.0/gems/cocoapods-1.12.1/lib/cocoapods/user_interface.rb:64:in `section'
    /Library/Ruby/Gems/2.6.0/gems/cocoapods-1.12.1/lib/cocoapods/installer/analyzer.rb:1080:in `resolve_dependencies'
    /Library/Ruby/Gems/2.6.0/gems/cocoapods-1.12.1/lib/cocoapods/installer/analyzer.rb:125:in `analyze'
    /Library/Ruby/Gems/2.6.0/gems/cocoapods-1.12.1/lib/cocoapods/installer.rb:422:in `analyze'
    /Library/Ruby/Gems/2.6.0/gems/cocoapods-1.12.1/lib/cocoapods/installer.rb:244:in `block in resolve_dependencies'
    /Library/Ruby/Gems/2.6.0/gems/cocoapods-1.12.1/lib/cocoapods/user_interface.rb:64:in `section'
    /Library/Ruby/Gems/2.6.0/gems/cocoapods-1.12.1/lib/cocoapods/installer.rb:243:in `resolve_dependencies'
    /Library/Ruby/Gems/2.6.0/gems/cocoapods-1.12.1/lib/cocoapods/installer.rb:162:in `install!'
    /Library/Ruby/Gems/2.6.0/gems/cocoapods-1.12.1/lib/cocoapods/command/install.rb:52:in `run'
    /Library/Ruby/Gems/2.6.0/gems/claide-1.1.0/lib/claide/command.rb:334:in `run'
    /Library/Ruby/Gems/2.6.0/gems/cocoapods-1.12.1/lib/cocoapods/command.rb:52:in `run'
    /Library/Ruby/Gems/2.6.0/gems/cocoapods-1.12.1/bin/pod:55:in `<top (required)>'
    /usr/local/bin/pod:23:in `load'
    /usr/local/bin/pod:23:in `<main>'

Error output from CocoaPods:
↳

    [!] Automatically assigning platform `iOS` with version `12.0` on target `Runner` because no platform was specified. Please specify a platform for this target in your Podfile. See `https://guides.cocoapods.org/syntax/podfile.html#platform`.

Error running pod install
Error launching application on iPhone SE (3rd generation).

My flutter doctor output :
fabien@branchel test_pdfrx % flutter doctor
Doctor summary (to see all details, run flutter doctor -v):
[✓] Flutter (Channel stable, 3.16.7, on macOS 14.2.1 23C71 darwin-arm64, locale fr-FR)
[✓] Android toolchain - develop for Android devices (Android SDK version 34.0.0)
[✓] Xcode - develop for iOS and macOS (Xcode 15.2)
[✓] Chrome - develop for the web
[✓] Android Studio (version 2022.2)
[✓] VS Code (version 1.85.1)
[✓] Connected device (4 available)
[✓] Network resources

• No issues found!

The reason of the build failure is here:

Specs satisfying the pdfrx (from .symlinks/plugins/pdfrx/darwin) dependency were found, but they required a higher minimum deployment target.

pdfrx's podspec specifies s.ios.deployment_target = '13.0' so your app should also set deployment target larger than 13.0.


IndexError: list index out of range when using tf.dataset and keras for autoencoder

Please make sure that this is a bug. As per our GitHub Policy, we only address code/doc bugs, performance issues, feature requests and build/installation issues on GitHub. tag:bug_template
System information

Have I written custom code (as opposed to using a stock example script provided in TensorFlow):
Yes
OS Platform and Distribution (e.g., Linux Ubuntu 16.04): Windows 10, anaconda, python 3.7.6
Mobile device (e.g. iPhone 8, Pixel 2, Samsung Galaxy) if the issue happens on mobile device:
TensorFlow installed from (source or binary): binary
TensorFlow version (use command below): tensorflow 2.0.0 (using tensorflow gpu)
Python version:3.7.6
Bazel version (if compiling from source):
GCC/Compiler version (if compiling from source):
CUDA/cuDNN version: cudnn -7.6.5 /  cuda - 10.0
GPU model and memory: GeForce GTX 1050Ti, 4Gb of memory (anaconda sees 2996MB)

You can collect some of this information using our environment capture
script
You can also obtain the TensorFlow version with: 1. TF 1.0: python -c "import tensorflow as tf; print(tf.GIT_VERSION, tf.VERSION)" 2. TF 2.0: python -c "import tensorflow as tf; print(tf.version.GIT_VERSION, tf.version.VERSION)"
unknown 2.0.0
Describe the current behavior
I'm trying to build an autoencoder using tensorflow keras using a sample of png files.   I've built a pipeline using the tensor flow dataset following closely to the tutorial provided here - https://www.tensorflow.org/guide/data#decoding_image_data_and_resizing_it .   I can see a tensor properly generated with the expected batch and shape.   The model also summarizes and compiles successfully, but when I do a model.fit to begin training, I get an error: IndexError: list index out of range. (full stack track below).
Describe the expected behavior
Model should begin training.
Code to reproduce the issue
Provide a reproducible test case that is the bare minimum necessary to generate the problem.
`import tensorflow as tf
PNG_ROOT = 'g:/data/video/'
data_dir = PNG_ROOT + "/"
list_ds = tf.data.Dataset.list_files(data_dir)
def decode_img(img):
convert the compressed string to a 3D uint8 tensor
IMG_WIDTH = 360
IMG_HEIGHT = 360
img = tf.io.decode_png(img, channels=3)
img = tf.image.resize_with_crop_or_pad(img, target_height=IMG_HEIGHT, target_width=IMG_WIDTH)
Use convert_image_dtype to convert to floats in the [0,1] range.
img = tf.image.convert_image_dtype(img, tf.float32)
return img
def process_path(file_path):
img = tf.io.read_file(file_path)
image_tensor = decode_img(img)
image_tensor = tf.reshape(image_tensor,(360,360,3))
#return img, label
return image_tensor
batch_size = 8
labeled_ds = list_ds.map(process_path)
labeled_ds = labeled_ds.batch(batch_size)
ds_train= labeled_ds.take(1000)
ds_validate = labeled_ds.take(50)
from tensorflow.keras.models import Model
from tensorflow.keras.layers import Conv2D, Input, MaxPooling2D, UpSampling2D
from tensorflow.keras.optimizers import Adam
from tensorflow.keras.callbacks import EarlyStopping, ModelCheckpoint
#Build Model
input_feature = Input(batch_shape=(8,360,360,3))
x = Conv2D(512, (3,3), activation='relu', input_shape=(8,360,360,3), padding='same')(input_feature)
x = Conv2D(256, (3,3), activation='relu', padding='same')(x)
x = MaxPooling2D(pool_size=2, padding='same')(x)
x = Conv2D(128, (3,3), activation='relu', padding='same')(x)
x = Conv2D(64, (3,3), activation='relu', padding='same')(x)
encoded = MaxPooling2D(pool_size=2, padding='same')(x)
x = Conv2D(64, (3,3), activation='relu', padding='same')(encoded)
x = Conv2D(128, (3,3), activation='relu', padding='same')(x)
x = UpSampling2D((2))(x)
x = Conv2D(256, (3,3), activation='relu', padding='same')(x)
x = Conv2D(512, (3,3), activation='relu', padding='same')(x)
x = UpSampling2D((2))(x)
decoded = Conv2D(3, (3,3), activation='sigmoid', padding='same')(x)
autoencoder = Model(inputs=input_feature, outputs=decoded)
optimizer = tf.keras.optimizers.Adam()
autoencoder.compile(optimizer='adam', loss=tf.keras.losses.MeanSquaredError(), metrics=['accuracy'])
autoencoder.summary()
checkpoint = ModelCheckpoint("best_conv2d_png_v1.hdf5", monitor="val_loss", verbose = 1, save_best_only=True, mode='auto', save_freq=100)
history = autoencoder.fit(ds_train, epochs=5, callbacks=[checkpoint])
`
Other info / logs
Include any logs or source code that would be helpful to diagnose the problem. If including tracebacks, please include the full traceback. Large logs and files should be attached.
Epoch 1/5
1/Unknown - 0s 143ms/step
IndexError                                Traceback (most recent call last)
 in
1 #early_stopping = EarlyStopping(monitor='loss', min_delta=0, patience=10, verbose=5, mode='auto')
2 checkpoint = ModelCheckpoint("best_conv2d_video_v1.hdf5", monitor="val_loss", verbose = 1, save_best_only=True, mode='auto', save_freq=100)
----> 3 history = autoencoder.fit(ds_train, epochs=5, callbacks=[checkpoint])
Z:\anaconda\envs\tf-gpu\lib\site-packages\tensorflow_core\python\keras\engine\training.py in fit(self, x, y, batch_size, epochs, verbose, callbacks, validation_split, validation_data, shuffle, class_weight, sample_weight, initial_epoch, steps_per_epoch, validation_steps, validation_freq, max_queue_size, workers, use_multiprocessing, **kwargs)
726         max_queue_size=max_queue_size,
727         workers=workers,
--> 728         use_multiprocessing=use_multiprocessing)
729
730   def evaluate(self,
Z:\anaconda\envs\tf-gpu\lib\site-packages\tensorflow_core\python\keras\engine\training_v2.py in fit(self, model, x, y, batch_size, epochs, verbose, callbacks, validation_split, validation_data, shuffle, class_weight, sample_weight, initial_epoch, steps_per_epoch, validation_steps, validation_freq, **kwargs)
322                 mode=ModeKeys.TRAIN,
323                 training_context=training_context,
--> 324                 total_epochs=epochs)
325             cbks.make_logs(model, epoch_logs, training_result, ModeKeys.TRAIN)
326
Z:\anaconda\envs\tf-gpu\lib\site-packages\tensorflow_core\python\keras\engine\training_v2.py in run_one_epoch(model, iterator, execution_function, dataset_size, batch_size, strategy, steps_per_epoch, num_samples, mode, training_context, total_epochs)
121         step=step, mode=mode, size=current_batch_size) as batch_logs:
122       try:
--> 123         batch_outs = execution_function(iterator)
124       except (StopIteration, errors.OutOfRangeError):
125         # TODO(kaftan): File bug about tf function and errors.OutOfRangeError?
Z:\anaconda\envs\tf-gpu\lib\site-packages\tensorflow_core\python\keras\engine\training_v2_utils.py in execution_function(input_fn)
84     # numpy translates Tensors to values in Eager mode.
85     return nest.map_structure(_non_none_constant_value,
---> 86                               distributed_function(input_fn))
87
88   return execution_function
Z:\anaconda\envs\tf-gpu\lib\site-packages\tensorflow_core\python\eager\def_function.py in call(self, *args, **kwds)
455
456     tracing_count = self._get_tracing_count()
--> 457     result = self._call(*args, **kwds)
458     if tracing_count == self._get_tracing_count():
459       self._call_counter.called_without_tracing()
Z:\anaconda\envs\tf-gpu\lib\site-packages\tensorflow_core\python\eager\def_function.py in _call(self, *args, **kwds)
501       # This is the first call of call, so we have to initialize.
502       initializer_map = object_identity.ObjectIdentityDictionary()
--> 503       self._initialize(args, kwds, add_initializers_to=initializer_map)
504     finally:
505       # At this point we know that the initialization is complete (or less
Z:\anaconda\envs\tf-gpu\lib\site-packages\tensorflow_core\python\eager\def_function.py in _initialize(self, args, kwds, add_initializers_to)
406     self._concrete_stateful_fn = (
407         self._stateful_fn._get_concrete_function_internal_garbage_collected(  # pylint: disable=protected-access
--> 408             *args, **kwds))
409
410     def invalid_creator_scope(*unused_args, **unused_kwds):
Z:\anaconda\envs\tf-gpu\lib\site-packages\tensorflow_core\python\eager\function.py in _get_concrete_function_internal_garbage_collected(self, *args, **kwargs)
1846     if self.input_signature:
1847       args, kwargs = None, None
-> 1848     graph_function, _, _ = self._maybe_define_function(args, kwargs)
1849     return graph_function
1850
Z:\anaconda\envs\tf-gpu\lib\site-packages\tensorflow_core\python\eager\function.py in _maybe_define_function(self, args, kwargs)
2148         graph_function = self._function_cache.primary.get(cache_key, None)
2149         if graph_function is None:
-> 2150           graph_function = self._create_graph_function(args, kwargs)
2151           self._function_cache.primary[cache_key] = graph_function
2152         return graph_function, args, kwargs
Z:\anaconda\envs\tf-gpu\lib\site-packages\tensorflow_core\python\eager\function.py in _create_graph_function(self, args, kwargs, override_flat_arg_shapes)
2039             arg_names=arg_names,
2040             override_flat_arg_shapes=override_flat_arg_shapes,
-> 2041             capture_by_value=self._capture_by_value),
2042         self._function_attributes,
2043         # Tell the ConcreteFunction to clean up its graph once it goes out of
Z:\anaconda\envs\tf-gpu\lib\site-packages\tensorflow_core\python\framework\func_graph.py in func_graph_from_py_func(name, python_func, args, kwargs, signature, func_graph, autograph, autograph_options, add_control_dependencies, arg_names, op_return_value, collections, capture_by_value, override_flat_arg_shapes)
913                                           converted_func)
914
--> 915       func_outputs = python_func(*func_args, **func_kwargs)
916
917       # invariant: func_outputs contains only Tensors, CompositeTensors,
Z:\anaconda\envs\tf-gpu\lib\site-packages\tensorflow_core\python\eager\def_function.py in wrapped_fn(*args, **kwds)
356         # wrapped allows AutoGraph to swap in a converted function. We give
357         # the function a weak reference to itself to avoid a reference cycle.
--> 358         return weak_wrapped_fn().wrapped(*args, **kwds)
359     weak_wrapped_fn = weakref.ref(wrapped_fn)
360
Z:\anaconda\envs\tf-gpu\lib\site-packages\tensorflow_core\python\keras\engine\training_v2_utils.py in distributed_function(input_iterator)
71     strategy = distribution_strategy_context.get_strategy()
72     outputs = strategy.experimental_run_v2(
---> 73         per_replica_function, args=(model, x, y, sample_weights))
74     # Out of PerReplica outputs reduce or pick values to return.
75     all_outputs = dist_utils.unwrap_output_dict(
Z:\anaconda\envs\tf-gpu\lib\site-packages\tensorflow_core\python\distribute\distribute_lib.py in experimental_run_v2(self, fn, args, kwargs)
758       fn = autograph.tf_convert(fn, ag_ctx.control_status_ctx(),
759                                 convert_by_default=False)
--> 760       return self._extended.call_for_each_replica(fn, args=args, kwargs=kwargs)
761
762   def reduce(self, reduce_op, value, axis):
Z:\anaconda\envs\tf-gpu\lib\site-packages\tensorflow_core\python\distribute\distribute_lib.py in call_for_each_replica(self, fn, args, kwargs)
1785       kwargs = {}
1786     with self._container_strategy().scope():
-> 1787       return self._call_for_each_replica(fn, args, kwargs)
1788
1789   def _call_for_each_replica(self, fn, args, kwargs):
Z:\anaconda\envs\tf-gpu\lib\site-packages\tensorflow_core\python\distribute\distribute_lib.py in _call_for_each_replica(self, fn, args, kwargs)
2130         self._container_strategy(),
2131         replica_id_in_sync_group=constant_op.constant(0, dtypes.int32)):
-> 2132       return fn(*args, **kwargs)
2133
2134   def _reduce_to(self, reduce_op, value, destinations):
Z:\anaconda\envs\tf-gpu\lib\site-packages\tensorflow_core\python\autograph\impl\api.py in wrapper(*args, **kwargs)
290   def wrapper(*args, **kwargs):
291     with ag_ctx.ControlStatusCtx(status=ag_ctx.Status.DISABLED):
--> 292       return func(*args, **kwargs)
293
294   if inspect.isfunction(func) or inspect.ismethod(func):
Z:\anaconda\envs\tf-gpu\lib\site-packages\tensorflow_core\python\keras\engine\training_v2_utils.py in train_on_batch(model, x, y, sample_weight, class_weight, reset_metrics)
262       y,
263       sample_weights=sample_weights,
--> 264       output_loss_metrics=model._output_loss_metrics)
265
266   if reset_metrics:
Z:\anaconda\envs\tf-gpu\lib\site-packages\tensorflow_core\python\keras\engine\training_eager.py in train_on_batch(model, inputs, targets, sample_weights, output_loss_metrics)
309           sample_weights=sample_weights,
310           training=True,
--> 311           output_loss_metrics=output_loss_metrics))
312   if not isinstance(outs, list):
313     outs = [outs]
Z:\anaconda\envs\tf-gpu\lib\site-packages\tensorflow_core\python\keras\engine\training_eager.py in _process_single_batch(model, inputs, targets, output_loss_metrics, sample_weights, training)
250               output_loss_metrics=output_loss_metrics,
251               sample_weights=sample_weights,
--> 252               training=training))
253       if total_loss is None:
254         raise ValueError('The model cannot be run '
Z:\anaconda\envs\tf-gpu\lib\site-packages\tensorflow_core\python\keras\engine\training_eager.py in _model_loss(model, inputs, targets, output_loss_metrics, sample_weights, training)
164
165         if hasattr(loss_fn, 'reduction'):
--> 166           per_sample_losses = loss_fn.call(targets[i], outs[i])
167           weighted_losses = losses_utils.compute_weighted_loss(
168               per_sample_losses,
IndexError: list index out of range

@jdchancellor
Can you please provide colab link or simple standalone code with proper indentation and supporting files to reproduce the issue in our environment. It helps us in localizing the issue faster. Thanks!

Thanks for the response.  I'll set up a colab and shoot over a link this
afternoon once I get back to my workstation.
Jon
On Tue, Feb 11, 2020, 3:44 AM ravikyram<EMAIL_ADDRESS>wrote:

@jdchancellor https://github.com/jdchancellor
Can you please provide colab link or simple standalone code with proper
indentation and supporting files to reproduce the issue in our environment.
It helps us in localizing the issue faster. Thanks!
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/tensorflow/tensorflow/issues/36649?email_source=notifications&email_token=ANSXOLITDWW7W27XEY653WLRCKFQFA5CNFSM4KS3NHDKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOELMD2KY#issuecomment-584596779,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ANSXOLIF5KSSKHGN3C2YY6DRCKFQFANCNFSM4KS3NHDA
.

https://colab.research.google.com/drive/1PvEO3waUT1CN_b9MqusrG6CKfKVCd324#scrollTo=BjLA9JsMElSF
Has the stripped down code.   I enabled eager execution since colab is
running TF 1.15 vs 2.0
On Tue, Feb 11, 2020 at 7:37 AM Jon Chancellor<EMAIL_ADDRESS>wrote:

Thanks for the response.  I'll set up a colab and shoot over a link this
afternoon once I get back to my workstation.
Jon
On Tue, Feb 11, 2020, 3:44 AM ravikyram<EMAIL_ADDRESS>wrote:

@jdchancellor https://github.com/jdchancellor
Can you please provide colab link or simple standalone code with proper
indentation and supporting files to reproduce the issue in our environment.
It helps us in localizing the issue faster. Thanks!
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/tensorflow/tensorflow/issues/36649?email_source=notifications&email_token=ANSXOLITDWW7W27XEY653WLRCKFQFA5CNFSM4KS3NHDKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOELMD2KY#issuecomment-584596779,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ANSXOLIF5KSSKHGN3C2YY6DRCKFQFANCNFSM4KS3NHDA
.

@jdchancellor  I think you are only specifying inputs not the model outputs. Please take a look this comment.

I tried this previously.  It appears that tensorflow knows it's an
autoencoder and a tfds dataset as duplicating the input for Y gives the
following error. (or is there some way I need to extract the x values from
the dataset at run time?)  Interestingly, I switched over to using
keras's ImageDataGenerator with flow_from_directory and was able to get the
model to start training (albeit less efficiently).  I got a similar error
there until I set the class_mode to 'input' and then everything worked
normally.  Does tfds have a similar class_mode that isn't apparent in the
documentation?
You passed a dataset or dataset iterator (<DatasetV1Adapter shapes: (?,
360, 360, 3), types: tf.float32>) as input x to your model. In that case,
you should not specify a target (y) argument, since the dataset or
dataset iterator generates both input data and target data. Received:
<DatasetV1Adapter shapes: (?, 360, 360, 3), types: tf.float32>
On Wed, Feb 12, 2020 at 2:14 PM gowthamkpr<EMAIL_ADDRESS>wrote:

@jdchancellor https://github.com/jdchancellor I think you are only
specifying inputs not the model outputs. Please take a look this comment
https://github.com/tensorflow/tensorflow/issues/21894#issuecomment-487746983
.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/tensorflow/tensorflow/issues/36649?email_source=notifications&email_token=ANSXOLLA4ZVEBPXTDR6O5X3RCRYFVA5CNFSM4KS3NHDKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOELSS4HA#issuecomment-585444892,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ANSXOLJUZLE3GSQMF7WCRPDRCRYFVANCNFSM4KS3NHDA
.

@jdchancellor Sorry for the late response. Is this still an issue for you? I tried running your colab but don't have access to your data. Can you please update the colab with any public data and share it? Thanks!


Passing all props of the component to Svg component

This change allows using the viewBox prop, for example, which can be used to scale the SVG properly. Or any other prop of Svg component.

Thanks @Niades


cmd: Investigate completion option in cli

When you run help, this comes up:
  completion  generate the autocompletion script for the specified shell
  full
  help        Help about any command
  light

Any way to remove completion option? Not sure what it does. Also it would be nice if full and light had some sort of description when listed as available commands.
Originally posted by @renaynay in https://github.com/celestiaorg/celestia-node/pull/97#discussion_r721195092

Closed as no longer relevant.


Refactor component.py

The methods, registry_to_component and __set_original_version don't smell right.

Some of it was addressed in #316.


:seedling: Fitting e2e to new ironic deployment

What this PR does / why we need it:
This is needed once https://github.com/metal3-io/baremetal-operator/pull/1316 is in use

@mquhuy should we mark it as hold since as I understood, this is blocked by BMO PR?


Wireframe task

Learners, PR Template
Self checklist

[x] I have committed my files one by one, on purpose, and for a reason
[x] I have titled my PR with COHORT_NAME | FIRST_NAME LAST_NAME | REPO_NAME | WEEK
[x] I have tested my changes
[x] My changes follow the style guide
[x] My changes meet the requirements of this task

Changelist
Briefly explain your PR.
Questions
Ask any questions you have for your reviewer.

Please review it.

@eediallo Thanks a lot.
You mentioned important parts.
Thanks again for taking your time and reviewing my codes.

please title your pull request correctly following COHORT_NAME | FIRST_NAME LAST_NAME | REPO_NAME | WEEK


variable security_groups in module db should be type list got string

Issue was opened on example repo https://github.com/segmentio/pingdummy/issues/3 A I coping it here in  hope someone will help me :) Thanks

I just wrap this in []  and it works ...
https://github.com/segmentio/pingdummy/blob/master/terraform.tf#L68
Closing this one


Add new properties for the caretX,caretY point of a tooltip.

Useful for custom tooltips and requested in #2944 and #2636
The new properties are caretX and caretY. Together, these identify the point on the graph where the tip of the caret of the tooltip would be. Essentially this is the raw position of the tooltip before any alignment is considered.
The custom tooltip sample was updated as well to use the new properties.

@chartjs/maintainers any thoughts on this? Once this is merged, I can do the last tooltip stuff for v2.4 which is to allow filtering the items


Stop early if incorrect step is added

we are using for example
--steps nopreprocessing,MuTect1
as a command line, but mistyped steps (i.e. Mutect1) are siletly ignored.

Using switch in #76 should solve it.

I added a verification of steps at the beginning (when we check parameters)


Lock Sticker

how to lock current sticker ? , not all stickers.

You need to find matrix of sticker on click
Matrix matrix = stickerView.getCurrentSticker().getMatrix();
stickerView.example(matrix);
In Stickerview
public void example(Matrix matrix){
action = false;
mat = matrix;
}
And then you can set in handelcurrentmode
if(action == false){
if(mat.toString().equals(moveMatrix.toString())){
currentMode = ActionMode.NONE;
}
else {
currentMode = ActionMode.DRAG;
}

can you how to place this code in handleCurrentMode?


Upgrade to Web Proxy Portlet v2.2.2 from v2.1.1 - rel-4-3-patches

https://issues.jasig.org/browse/WPP-101
Backport fix from master to rel-4-3-patches.

/cc @apetro @vertein

Coverage remained the same at 22.871% when pulling 6c66c5401a341323a254c6e30b2773d60fb3d2d1 on ChristianMurphy:WPP-101-over-zealous-caching-rel-4-3 into e6b4afdd506529d90275b783e859c6be70f204ab on Jasig:rel-4-3-patches.


[7.x] Add php 8 support for Illuminate Testing 7.x

I was trying to change the Lumen Framework 7.x composer.json to allow php 8, since you guys already made it compatible in Illuminate 6/7/8, but surprisingly the Illuminate Testing package has not been updated to allow php 8. Was that on purpose?
Looks like a mistake to me since it is php 8 compatible in 8.x and I found no comments on that in related php 8 PR’s. If it is intentionally, you may close this PR :)

Oh, whoops! Looks like I missed this.


Release 1.0.1

I think we should include this change before merging. It fixes a bug that the previous commits would introduce 😊


ReScript v11 Support

Support for<EMAIL_ADDRESS>Css_* without the curry functions
Emotion without the curry functions

is there any guide/list on what needs to be done? I would like to help sending PRs if I'm able to

Haven't looked into it for a while, and most items are the ones in this issue.
Do you think we can have a chat in discord/call about this and sort it out together? Happy to give a code-tour.

Opened this PR to keep track on what's missing: https://github.com/davesnx/styled-ppx/pull/482, I will update the main description on this issue


AQCU-1006: Fixed an issue where estimated times would not be shown on…

… the SVP report.

Coverage remained the same at 99.04% when pulling 79462f6bf757206ddbd4ea07f34c182e2e0c68df on zmoore-usgs:svp-error into e86b3274d14be833e8be3d4661e16a532a7b136d on USGS-R:master.


feat: implement connections pool

Implement connections pool
Add base tests
Test connection closing

Closes #11
Relates to #14
Changes are not breaking.

@remicaumette Can you check it, please?

Hi, I am looking at it right now, i am sorry for the late reply

This should also add thread safety, right? So the readme part about thread-safety could be updated?

This should also add thread safety, right? So the readme part about it could be updated?

Updated

@alexisvisco Is there a plan to getting this merged? It seems the PR author is maintaining the fork.


Update bytecode statistics

Some of the bytecode statistics are out of date, and we have no statistics for eclipse because it won't trivially work (apparently due to its complex class loading behavior).   This the third answer in this stackoverflow post looks promising.
Worth exploring byte-buddy.

Update.  be22ce79e06c1e23e2cc6beeda6cd2b3b20b35db updated bytecode stats for all benchmarks with the following notable exceptions:

eclipse: still does not work (has never worked) Caused by: java.lang.IllegalStateException: Unable to acquire application service. Ensure that the org.eclipse.core.runtime bundle is resolved and started (see config.ini).
spring: worked with tool prior to f6a6e970bac120c91f28a5524aaacb9f8c9cf839 but no longer works with recent refactoring: java.lang.NoClassDefFoundError: org/dacapo/analysis/BytecodeCallback
tradebeans: Exception initializing server: java.lang.NoClassDefFoundError: org/dacapo/analysis/BytecodeCallback
tradesoap: Exception initializing server: java.lang.NoClassDefFoundError: org/dacapo/analysis/BytecodeCallback

eclipse, tradebeans, and tradesoap have empty stats-bytecode.yml files (to ensure incorrect data is not used).
spring has the recently gathered data using the analysis tool as prior to f6a6e970bac120c91f28a5524aaacb9f8c9cf839

Update.  c9e5f0f0 updated the allocation statistics for all benchmarks.
Only two benchmarks lack alloc stats

[ ] tradebeans: WARNING: Failed to load the specified log manager class org.jboss.logmanager.LogManager Exception initializing server: java.lang.NoClassDefFoundError: com/google/monitoring/runtime/instrumentation/AllocationRecorder VM was forced to quit without executing the shutdown hook
[ ] tradesoap: WARNING: Failed to load the specified log manager class org.jboss.logmanager.LogManager Exception initializing server: java.lang.NoClassDefFoundError: com/google/monitoring/runtime/instrumentation/AllocationRecorder VM was forced to quit without executing the shutdown hook

Merged into main


JavaDoc references are not considered to be usages

Plugin version
0.41.0
Gradle version
6.3
Android Gradle Plugin (AGP) version
None
Describe the bug
Unused dependencies are detected if a module references classes from a dependency only via JavaDoc. E.g.:
import com.my.other.DependencyClass;
/**
 * Using JavaDoc's link, e.g. {@link DependencyClass}, is not detected as reference.
 */
public class MyJavaClass {}

Expected behavior
JavaDoc links should be detected as class usages.

It's highly unlikely I will attempt to detect usage in javadoc. It would require significant effort to parse that source, for minimal gain. What's the use-case for this? Why are you referencing a class you don't actually use in a javadoc?

As I mentioned in the related issue, this might actually be fixed as a side effect, assuming the javadoc usages are imported (vs using fully-qualified references in the javadoc). I'm going to close this for now. Feel free to reopen if you wish to discuss a specific use-case.

I save you the details about the use-cases since the solution you found in #148 also works for that. Thanks!


Revert "example: Add example for pybind11"

Reverts aspect-build/rules_py#375
Broke the main branch.
As noted earlier we don't have the right branch protections on this repo to prevent merging red PRs. @mattem please fix it or grant me permissions so I can fix it.

sure: https://github.com/aspect-build/rules_py/pull/445


Support FreeBSD

also removes leftovers of OSX support and rearranges params.pp

:+1:

If you're removing darwin from the list, then you can also remove $package_provider.

indeed, done

Thanks!


v0.6.0-rc.5 examples/fn-args panics

I know 0.6.0 is not released yet, but I was switching to it now to take advantage of the improved redis interface and cron backend but I noticed including Data<TaskId> in a job fns args causes a panic now.
I can reproduce it in the examples/fn-args project in this repo by running cargo run:
thread 'tokio-runtime-worker' panicked at /home/thallada/cloned/apalis/packages/apalis-core/src/service_fn.rs:47:34:
called `Option::unwrap()` on a `None` value
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace

Sorry if this is a known issue and not fixed yet, I just wanted to post this in-case you weren't aware of it.

Yeah this is a cron issue, it should be fixed ASAP.
To work around, you can add data entry.

Out of curiosity, what version of 0.6 are you using?

Should be fixed by #409