docker-compose installation fails on Ubuntu 14.04

Hello I'm using Vagrant to create a 14.04 VM and install docker.ubuntu:
config.vm.box = "ubuntu/trusty64"

Versions:
$ ansible-galaxy list
- angstwad.docker_ubuntu, v3.4.5

$ vagrant box list
ubuntu/trusty64         (virtualbox, 20180410.0.0)

Unfortunately the ansible playbook fails with the following message. Is this normal?
TASK [angstwad.docker_ubuntu : Install pip, setuptools, docker-py and docker-compose with pip] ***
changed: [default] => (item={u'version': u'latest', u'name': u'pip', u'install': True})
changed: [default] => (item={u'version': u'latest', u'name': u'setuptools', u'install': True})
skipping: [default] => (item={u'version': u'latest', u'name': u'docker', u'install': False})
failed: [default] (item={u'version': u'latest', u'name': u'docker-compose', u'install': True}) => {"changed": false, "cmd": "/usr/local/bin/pip install -U docker-compose", "item": {"install": true, "name": "docker-compose", "version": "latest"}, "msg": "stdout: Collecting docker-compose\n  Downloading https://files.pythonhosted.org/packages/26/d6/c2a33eb82f3bd59da803f812844e47211c353247f9dfb0938800b46af99d/docker_compose-1.21.0-py2.py3-none-any.whl (123kB)\nRequirement not upgraded as not directly required: six<2,>=1.3.0 in /usr/lib/python2.7/dist-packages (from docker-compose) (1.5.2)\nCollecting docker<4.0,>=3.2.1 (from docker-compose)\n  Downloading https://files.pythonhosted.org/packages/e4/c0/ab62cdb6117c1b9824e54f707060eb63ef7e4026d9aedf2d10853ba6df98/docker-3.2.1-py2.py3-none-any.whl (123kB)\nCollecting jsonschema<3,>=2.5.1 (from docker-compose)\n  Downloading https://files.pythonhosted.org/packages/77/de/47e35a97b2b05c2fadbec67d44cfcdcd09b8086951b331d82de90d2912da/jsonschema-2.6.0-py2.py3-none-any.whl\nCollecting backports.ssl-match-hostname>=3.5; python_version < \"3.5\" (from docker-compose)\n  Downloading https://files.pythonhosted.org/packages/76/21/2dc61178a2038a5cb35d14b61467c6ac632791ed05131dda72c20e7b9e23/backports.ssl_match_hostname-<IP_ADDRESS>.tar.gz\nCollecting cached-property<2,>=1.2.0 (from docker-compose)\n  Downloading https://files.pythonhosted.org/packages/ca/21/d793828ce0bb01baa6bed307c68466829343cc93fccc055cfbc21f774959/cached_property-1.4.2-py2.py3-none-any.whl\nCollecting ipaddress>=1.0.16; python_version < \"3.3\" (from docker-compose)\n  Downloading https://files.pythonhosted.org/packages/fc/d0/7fc3a811e011d4b388be48a0e381db8d990042df54aa4ef4599a31d39853/ipaddress-1.0.22-py2.py3-none-any.whl\nCollecting texttable<0.10,>=0.9.0 (from docker-compose)\n  Downloading https://files.pythonhosted.org/packages/02/e1/2565e6b842de7945af0555167d33acfc8a615584ef7abd30d1eae00a4d80/texttable-0.9.1.tar.gz\nCollecting requests!=2.11.0,!=2.12.2,!=2.18.0,<2.19,>=2.6.1 (from docker-compose)\n  Downloading https://files.pythonhosted.org/packages/49/df/50aa1999ab9bde74656c2919d9c0c085fd2b3775fd3eca826012bef76d8c/requests-2.18.4-py2.py3-none-any.whl (88kB)\nCollecting enum34<2,>=1.0.4; python_version < \"3.4\" (from docker-compose)\n  Downloading https://files.pythonhosted.org/packages/c5/db/e56e6b4bbac7c4a06de1c50de6fe1ef3810018ae11732a50f15f62c7d050/enum34-1.1.6-py2-none-any.whl\nCollecting docopt<0.7,>=0.6.1 (from docker-compose)\n  Downloading https://files.pythonhosted.org/packages/a2/55/8f8cab2afd404cf578136ef2cc5dfb50baa1761b68c9da1fb1e4eed343c9/docopt-0.6.2.tar.gz\nCollecting dockerpty<0.5,>=0.4.1 (from docker-compose)\n  Downloading https://files.pythonhosted.org/packages/8d/ee/e9ecce4c32204a6738e0a5d5883d3413794d7498fe8b06f44becc028d3ba/dockerpty-0.4.1.tar.gz\nRequirement not upgraded as not directly required: PyYAML<4,>=3.10 in /usr/lib/python2.7/dist-packages (from docker-compose) (3.10)\nCollecting websocket-client<1.0,>=0.32.0 (from docker-compose)\n  Downloading https://files.pythonhosted.org/packages/9d/fb/f51a03e232e00d6c504dfe815aed090c894ba3f8d3f7fd9612f3e227bf24/websocket_client-0.47.0-py2.py3-none-any.whl (200kB)\nCollecting docker-pycreds>=0.2.2 (from docker<4.0,>=3.2.1->docker-compose)\n  Downloading https://files.pythonhosted.org/packages/1c/8b/538e392ecd02aef761390fd30f057af73679839bd2096130689d73142aea/docker_pycreds-0.2.2-py2.py3-none-any.whl\nCollecting functools32; python_version == \"2.7\" (from jsonschema<3,>=2.5.1->docker-compose)\n  Downloading https://files.pythonhosted.org/packages/c5/60/6ac26ad05857c601308d8fb9e87fa36d0ebf889423f47c3502ef034365db/functools32-3.2.3-2.tar.gz\nCollecting urllib3<1.23,>=1.21.1 (from requests!=2.11.0,!=2.12.2,!=2.18.0,<2.19,>=2.6.1->docker-compose)\n  Downloading https://files.pythonhosted.org/packages/63/cb/6965947c13a94236f6d4b8223e21beb4d576dc72e8130bd7880f600839b8/urllib3-1.22-py2.py3-none-any.whl (132kB)\nCollecting idna<2.7,>=2.5 (from requests!=2.11.0,!=2.12.2,!=2.18.0,<2.19,>=2.6.1->docker-compose)\n  Downloading https://files.pythonhosted.org/packages/27/cc/6dd9a3869f15c2edfab863b992838277279ce92663d334df9ecf5106f5c6/idna-2.6-py2.py3-none-any.whl (56kB)\nCollecting chardet<3.1.0,>=3.0.2 (from requests!=2.11.0,!=2.12.2,!=2.18.0,<2.19,>=2.6.1->docker-compose)\n  Downloading https://files.pythonhosted.org/packages/bc/a9/01ffebfb562e4274b6487b4bb1ddec7ca55ec7510b22e4c51f14098443b8/chardet-3.0.4-py2.py3-none-any.whl (133kB)\nCollecting certifi>=2017.4.17 (from requests!=2.11.0,!=2.12.2,!=2.18.0,<2.19,>=2.6.1->docker-compose)\n  Downloading https://files.pythonhosted.org/packages/7c/e6/92ad559b7192d846975fc916b65f667c7b8c3a32bea7372340bfe9a15fa5/certifi-2018.4.16-py2.py3-none-any.whl (150kB)\nBuilding wheels for collected packages: backports.ssl-match-hostname, texttable, docopt, dockerpty, functools32\n  Running setup.py bdist_wheel for backports.ssl-match-hostname: started\n  Running setup.py bdist_wheel for backports.ssl-match-hostname: finished with status 'done'\n  Stored in directory: /root/.cache/pip/wheels/99/7e/f7/a88a9bcf7a3bd6b12cf6a74eee8c89746aaa02f71ab7b33939\n  Running setup.py bdist_wheel for texttable: started\n  Running setup.py bdist_wheel for texttable: finished with status 'done'\n  Stored in directory: /root/.cache/pip/wheels/99/1e/2b/8452d3a48dad98632787556a0f2f90d56703b39cdf7d142dd1\n  Running setup.py bdist_wheel for docopt: started\n  Running setup.py bdist_wheel for docopt: finished with status 'done'\n  Stored in directory: /root/.cache/pip/wheels/9b/04/dd/7daf4150b6d9b12949298737de9431a324d4b797ffd63f526e\n  Running setup.py bdist_wheel for dockerpty: started\n  Running setup.py bdist_wheel for dockerpty: finished with status 'done'\n  Stored in directory: /root/.cache/pip/wheels/e5/1e/86/bd0a97a0907c6c654af654d5875d1d4383dd1f575f77cee4aa\n  Running setup.py bdist_wheel for functools32: started\n  Running setup.py bdist_wheel for functools32: finished with status 'done'\n  Stored in directory: /root/.cache/pip/wheels/b5/18/32/77a1030457155606ba5e3ec3a8a57132b1a04b1c4f765177b2\nSuccessfully built backports.ssl-match-hostname texttable docopt dockerpty functools32\nInstalling collected packages: backports.ssl-match-hostname, websocket-client, urllib3, idna, chardet, certifi, requests, ipaddress, docker-pycreds, docker, functools32, jsonschema, cached-property, texttable, enum34, docopt, dockerpty, docker-compose\n  Found existing installation: urllib3 1.7.1\n\n:stderr: /usr/local/lib/python2.7/dist-packages/pip/_vendor/urllib3/util/ssl_.py:339: SNIMissingWarning: An HTTPS request has been made, but the SNI (Subject Name Indication) extension to TLS is not available on this platform. This may cause the server to present an incorrect TLS certificate, which can cause validation failures. You can upgrade to a newer version of Python to solve this. For more information, see https://urllib3.readthedocs.io/en/latest/advanced-usage.html#ssl-warnings\n  SNIMissingWarning\n/usr/local/lib/python2.7/dist-packages/pip/_vendor/urllib3/util/ssl_.py:137: InsecurePlatformWarning: A true SSLContext object is not available. This prevents urllib3 from configuring SSL appropriately and may cause certain SSL connections to fail. You can upgrade to a newer version of Python to solve this. For more information, see https://urllib3.readthedocs.io/en/latest/advanced-usage.html#ssl-warnings\n  InsecurePlatformWarning\n/usr/local/lib/python2.7/dist-packages/pip/_vendor/urllib3/util/ssl_.py:137: InsecurePlatformWarning: A true SSLContext object is not available. This prevents urllib3 from configuring SSL appropriately and may cause certain SSL connections to fail. You can upgrade to a newer version of Python to solve this. For more information, see https://urllib3.readthedocs.io/en/latest/advanced-usage.html#ssl-warnings\n  InsecurePlatformWarning\n/usr/local/lib/python2.7/dist-packages/pip/_vendor/urllib3/util/ssl_.py:137: InsecurePlatformWarning: A true SSLContext object is not available. This prevents urllib3 from configuring SSL appropriately and may cause certain SSL connections to fail. You can upgrade to a newer version of Python to solve this. For more information, see https://urllib3.readthedocs.io/en/latest/advanced-usage.html#ssl-warnings\n  InsecurePlatformWarning\n/usr/local/lib/python2.7/dist-packages/pip/_vendor/urllib3/util/ssl_.py:137: InsecurePlatformWarning: A true SSLContext object is not available. This prevents urllib3 from configuring SSL appropriately and may cause certain SSL connections to fail. You can upgrade to a newer version of Python to solve this. For more information, see https://urllib3.readthedocs.io/en/latest/advanced-usage.html#ssl-warnings\n  InsecurePlatformWarning\n/usr/local/lib/python2.7/dist-packages/pip/_vendor/urllib3/util/ssl_.py:137: InsecurePlatformWarning: A true SSLContext object is not available. This prevents urllib3 from configuring SSL appropriately and may cause certain SSL connections to fail. You can upgrade to a newer version of Python to solve this. For more information, see https://urllib3.readthedocs.io/en/latest/advanced-usage.html#ssl-warnings\n  InsecurePlatformWarning\n/usr/local/lib/python2.7/dist-packages/pip/_vendor/urllib3/util/ssl_.py:137: InsecurePlatformWarning: A true SSLContext object is not available. This prevents urllib3 from configuring SSL appropriately and may cause certain SSL connections to fail. You can upgrade to a newer version of Python to solve this. For more information, see https://urllib3.readthedocs.io/en/latest/advanced-usage.html#ssl-warnings\n  InsecurePlatformWarning\n/usr/local/lib/python2.7/dist-packages/pip/_vendor/urllib3/util/ssl_.py:137: InsecurePlatformWarning: A true SSLContext object is not available. This prevents urllib3 from configuring SSL appropriately and may cause certain SSL connections to fail. You can upgrade to a newer version of Python to solve this. For more information, see https://urllib3.readthedocs.io/en/latest/advanced-usage.html#ssl-warnings\n  InsecurePlatformWarning\n/usr/local/lib/python2.7/dist-packages/pip/_vendor/urllib3/util/ssl_.py:137: InsecurePlatformWarning: A true SSLContext object is not available. This prevents urllib3 from configuring SSL appropriately and may cause certain SSL connections to fail. You can upgrade to a newer version of Python to solve this. For more information, see https://urllib3.readthedocs.io/en/latest/advanced-usage.html#ssl-warnings\n  InsecurePlatformWarning\n/usr/local/lib/python2.7/dist-packages/pip/_vendor/urllib3/util/ssl_.py:137: InsecurePlatformWarning: A true SSLContext object is not available. This prevents urllib3 from configuring SSL appropriately and may cause certain SSL connections to fail. You can upgrade to a newer version of Python to solve this. For more information, see https://urllib3.readthedocs.io/en/latest/advanced-usage.html#ssl-warnings\n  InsecurePlatformWarning\n/usr/local/lib/python2.7/dist-packages/pip/_vendor/urllib3/util/ssl_.py:137: InsecurePlatformWarning: A true SSLContext object is not available. This prevents urllib3 from configuring SSL appropriately and may cause certain SSL connections to fail. You can upgrade to a newer version of Python to solve this. For more information, see https://urllib3.readthedocs.io/en/latest/advanced-usage.html#ssl-warnings\n  InsecurePlatformWarning\n/usr/local/lib/python2.7/dist-packages/pip/_vendor/urllib3/util/ssl_.py:137: InsecurePlatformWarning: A true SSLContext object is not available. This prevents urllib3 from configuring SSL appropriately and may cause certain SSL connections to fail. You can upgrade to a newer version of Python to solve this. For more information, see https://urllib3.readthedocs.io/en/latest/advanced-usage.html#ssl-warnings\n  InsecurePlatformWarning\n/usr/local/lib/python2.7/dist-packages/pip/_vendor/urllib3/util/ssl_.py:137: InsecurePlatformWarning: A true SSLContext object is not available. This prevents urllib3 from configuring SSL appropriately and may cause certain SSL connections to fail. You can upgrade to a newer version of Python to solve this. For more information, see https://urllib3.readthedocs.io/en/latest/advanced-usage.html#ssl-warnings\n  InsecurePlatformWarning\n/usr/local/lib/python2.7/dist-packages/pip/_vendor/urllib3/util/ssl_.py:137: InsecurePlatformWarning: A true SSLContext object is not available. This prevents urllib3 from configuring SSL appropriately and may cause certain SSL connections to fail. You can upgrade to a newer version of Python to solve this. For more information, see https://urllib3.readthedocs.io/en/latest/advanced-usage.html#ssl-warnings\n  InsecurePlatformWarning\n/usr/local/lib/python2.7/dist-packages/pip/_vendor/urllib3/util/ssl_.py:137: InsecurePlatformWarning: A true SSLContext object is not available. This prevents urllib3 from configuring SSL appropriately and may cause certain SSL connections to fail. You can upgrade to a newer version of Python to solve this. For more information, see https://urllib3.readthedocs.io/en/latest/advanced-usage.html#ssl-warnings\n  InsecurePlatformWarning\n/usr/local/lib/python2.7/dist-packages/pip/_vendor/urllib3/util/ssl_.py:137: InsecurePlatformWarning: A true SSLContext object is not available. This prevents urllib3 from configuring SSL appropriately and may cause certain SSL connections to fail. You can upgrade to a newer version of Python to solve this. For more information, see https://urllib3.readthedocs.io/en/latest/advanced-usage.html#ssl-warnings\n  InsecurePlatformWarning\n/usr/local/lib/python2.7/dist-packages/pip/_vendor/urllib3/util/ssl_.py:137: InsecurePlatformWarning: A true SSLContext object is not available. This prevents urllib3 from configuring SSL appropriately and may cause certain SSL connections to fail. You can upgrade to a newer version of Python to solve this. For more information, see https://urllib3.readthedocs.io/en/latest/advanced-usage.html#ssl-warnings\n  InsecurePlatformWarning\n/usr/local/lib/python2.7/dist-packages/pip/_vendor/urllib3/util/ssl_.py:137: InsecurePlatformWarning: A true SSLContext object is not available. This prevents urllib3 from configuring SSL appropriately and may cause certain SSL connections to fail. You can upgrade to a newer version of Python to solve this. For more information, see https://urllib3.readthedocs.io/en/latest/advanced-usage.html#ssl-warnings\n  InsecurePlatformWarning\n/usr/local/lib/python2.7/dist-packages/pip/_vendor/urllib3/util/ssl_.py:137: InsecurePlatformWarning: A true SSLContext object is not available. This prevents urllib3 from configuring SSL appropriately and may cause certain SSL connections to fail. You can upgrade to a newer version of Python to solve this. For more information, see https://urllib3.readthedocs.io/en/latest/advanced-usage.html#ssl-warnings\n  InsecurePlatformWarning\n/usr/local/lib/python2.7/dist-packages/pip/_vendor/urllib3/util/ssl_.py:137: InsecurePlatformWarning: A true SSLContext object is not available. This prevents urllib3 from configuring SSL appropriately and may cause certain SSL connections to fail. You can upgrade to a newer version of Python to solve this. For more information, see https://urllib3.readthedocs.io/en/latest/advanced-usage.html#ssl-warnings\n  InsecurePlatformWarning\n/usr/local/lib/python2.7/dist-packages/pip/_vendor/urllib3/util/ssl_.py:137: InsecurePlatformWarning: A true SSLContext object is not available. This prevents urllib3 from configuring SSL appropriately and may cause certain SSL connections to fail. You can upgrade to a newer version of Python to solve this. For more information, see https://urllib3.readthedocs.io/en/latest/advanced-usage.html#ssl-warnings\n  InsecurePlatformWarning\ncheetah 2.4.4 requires Markdown>=2.0.1, which is not installed.\nlaunchpadlib 1.10.2 requires testresources, which is not installed.\nCannot uninstall 'urllib3'. It is a distutils installed project and thus we cannot accurately determine which files belong to it which would lead to only a partial uninstall.\n"}

I'm having the same problem

Confirm failed following task on Ubuntu 14.04 (fresh Vagrant box ubuntu/trusty64)
TASK [angstwad.docker_ubuntu : Install pip, setuptools, docker-py and docker-compose with pip] ****************************************************************
ok: [vagrant_host] => (item={u'version': u'latest', u'name': u'pip', u'install': True})
ok: [vagrant_host] => (item={u'version': u'latest', u'name': u'setuptools', u'install': True})
skipping: [vagrant_host] => (item={u'version': u'latest', u'name': u'docker', u'install': False})
failed: [vagrant_host] (item={u'version': u'latest', u'name': u'docker-compose', u'install': True}) => {"changed": false, "cmd": "/usr/local/bin/pip install -U docker-compose", "item": {"install": true, "name": "docker-compose", "version": "latest"}, "msg": "stdout: Collecting docker-compose\n  Using cached https://files.pythonhosted.org/packages/2b/d3/65c7012b14463b4a36ea1db7fb6a9d4179c4573f6c0d12bcd2b07fbc54e0/docker_compose-1.21.1-py2.py3-none-any.whl\nRequirement not upgraded as not directly required: six<2,>=1.3.0 in /usr/lib/python2.7/dist-packages (from docker-compose) (1.5.2)\nRequirement not upgraded as not directly required: jsonschema<3,>=2.5.1 in /usr/local/lib/python2.7/dist-packages (from docker-compose) (2.6.0)\nRequirement not upgraded as not directly required: backports.ssl-match-hostname>=3.5; python_version < \"3.5\" in /usr/local/lib/python2.7/dist-packages (from docker-compose) (<IP_ADDRESS>)\nRequirement not upgraded as not directly required: cached-property<2,>=1.2.0 in /usr/local/lib/python2.7/dist-packages (from docker-compose) (1.4.2)\nRequirement not upgraded as not directly required: ipaddress>=1.0.16; python_version < \"3.3\" in /usr/local/lib/python2.7/dist-packages (from docker-compose) (1.0.22)\nRequirement not upgraded as not directly required: texttable<0.10,>=0.9.0 in /usr/local/lib/python2.7/dist-packages (from docker-compose) (0.9.1)\nCollecting requests!=2.11.0,!=2.12.2,!=2.18.0,<2.19,>=2.6.1 (from docker-compose)\n  Using cached https://files.pythonhosted.org/packages/49/df/50aa1999ab9bde74656c2919d9c0c085fd2b3775fd3eca826012bef76d8c/requests-2.18.4-py2.py3-none-any.whl\nCollecting enum34<2,>=1.0.4; python_version < \"3.4\" (from docker-compose)\n  Using cached https://files.pythonhosted.org/packages/c5/db/e56e6b4bbac7c4a06de1c50de6fe1ef3810018ae11732a50f15f62c7d050/enum34-1.1.6-py2-none-any.whl\nCollecting docopt<0.7,>=0.6.1 (from docker-compose)\nCollecting docker<4.0,>=3.3.0 (from docker-compose)\n  Using cached https://files.pythonhosted.org/packages/31/01/41f727a549abd788eb91d0df4c801cb4c1f5227eee04a2621e13d7ed3e04/docker-3.3.0-py2.py3-none-any.whl\nCollecting dockerpty<0.5,>=0.4.1 (from docker-compose)\nRequirement not upgraded as not directly required: PyYAML<4,>=3.10 in /usr/lib/python2.7/dist-packages (from docker-compose) (3.10)\nCollecting websocket-client<1.0,>=0.32.0 (from docker-compose)\n  Using cached https://files.pythonhosted.org/packages/9d/fb/f51a03e232e00d6c504dfe815aed090c894ba3f8d3f7fd9612f3e227bf24/websocket_client-0.47.0-py2.py3-none-any.whl\nRequirement not upgraded as not directly required: functools32; python_version == \"2.7\" in /usr/local/lib/python2.7/dist-packages (from jsonschema<3,>=2.5.1->docker-compose) (3.2.3.post2)\nCollecting urllib3<1.23,>=1.21.1 (from requests!=2.11.0,!=2.12.2,!=2.18.0,<2.19,>=2.6.1->docker-compose)\n  Using cached https://files.pythonhosted.org/packages/63/cb/6965947c13a94236f6d4b8223e21beb4d576dc72e8130bd7880f600839b8/urllib3-1.22-py2.py3-none-any.whl\nCollecting idna<2.7,>=2.5 (from requests!=2.11.0,!=2.12.2,!=2.18.0,<2.19,>=2.6.1->docker-compose)\n  Using cached https://files.pythonhosted.org/packages/27/cc/6dd9a3869f15c2edfab863b992838277279ce92663d334df9ecf5106f5c6/idna-2.6-py2.py3-none-any.whl\nCollecting chardet<3.1.0,>=3.0.2 (from requests!=2.11.0,!=2.12.2,!=2.18.0,<2.19,>=2.6.1->docker-compose)\n  Using cached https://files.pythonhosted.org/packages/bc/a9/01ffebfb562e4274b6487b4bb1ddec7ca55ec7510b22e4c51f14098443b8/chardet-3.0.4-py2.py3-none-any.whl\nCollecting certifi>=2017.4.17 (from requests!=2.11.0,!=2.12.2,!=2.18.0,<2.19,>=2.6.1->docker-compose)\n  Using cached https://files.pythonhosted.org/packages/7c/e6/92ad559b7192d846975fc916b65f667c7b8c3a32bea7372340bfe9a15fa5/certifi-2018.4.16-py2.py3-none-any.whl\nCollecting docker-pycreds>=0.2.3 (from docker<4.0,>=3.3.0->docker-compose)\n  Using cached https://files.pythonhosted.org/packages/5c/b6/3a4ca03225f6e9a25cb47cd3c695d19b88df5928ab9310e64dec1eb3b4d1/docker_pycreds-0.2.3-py2.py3-none-any.whl\nInstalling collected packages: urllib3, idna, chardet, certifi, requests, enum34, docopt, websocket-client, docker-pycreds, docker, dockerpty, docker-compose\n  Found existing installation: urllib3 1.7.1\n\n:stderr: cheetah 2.4.4 requires Markdown>=2.0.1, which is not installed.\nlaunchpadlib 1.10.2 requires testresources, which is not installed.\nCannot uninstall 'urllib3'. It is a distutils installed project and thus we cannot accurately determine which files belong to it which would lead to only a partial uninstall.\n"}

pretty-printed pip output:
stdout: Collecting docker-compose
  Using cached https://files.pythonhosted.org/packages/2b/d3/65c7012b14463b4a36ea1db7fb6a9d4179c4573f6c0d12bcd2b07fbc54e0/docker_compose-1.21.1-py2.py3-none-any.whl
Requirement not upgraded as not directly required: six<2,>=1.3.0 in /usr/lib/python2.7/dist-packages (from docker-compose) (1.5.2)
Requirement not upgraded as not directly required: jsonschema<3,>=2.5.1 in /usr/local/lib/python2.7/dist-packages (from docker-compose) (2.6.0)
Requirement not upgraded as not directly required: backports.ssl-match-hostname>=3.5; python_version < "3.5" in /usr/local/lib/python2.7/dist-packages (from docker-compose) (<IP_ADDRESS>)
Requirement not upgraded as not directly required: cached-property<2,>=1.2.0 in /usr/local/lib/python2.7/dist-packages (from docker-compose) (1.4.2)
Requirement not upgraded as not directly required: ipaddress>=1.0.16; python_version < "3.3" in /usr/local/lib/python2.7/dist-packages (from docker-compose) (1.0.22)
Requirement not upgraded as not directly required: texttable<0.10,>=0.9.0 in /usr/local/lib/python2.7/dist-packages (from docker-compose) (0.9.1)
Collecting requests!=2.11.0,!=2.12.2,!=2.18.0,<2.19,>=2.6.1 (from docker-compose)
  Using cached https://files.pythonhosted.org/packages/49/df/50aa1999ab9bde74656c2919d9c0c085fd2b3775fd3eca826012bef76d8c/requests-2.18.4-py2.py3-none-any.whl
Collecting enum34<2,>=1.0.4; python_version < "3.4" (from docker-compose)
  Using cached https://files.pythonhosted.org/packages/c5/db/e56e6b4bbac7c4a06de1c50de6fe1ef3810018ae11732a50f15f62c7d050/enum34-1.1.6-py2-none-any.whl
Collecting docopt<0.7,>=0.6.1 (from docker-compose)
Collecting docker<4.0,>=3.3.0 (from docker-compose)
  Using cached https://files.pythonhosted.org/packages/31/01/41f727a549abd788eb91d0df4c801cb4c1f5227eee04a2621e13d7ed3e04/docker-3.3.0-py2.py3-none-any.whl
Collecting dockerpty<0.5,>=0.4.1 (from docker-compose)
Requirement not upgraded as not directly required: PyYAML<4,>=3.10 in /usr/lib/python2.7/dist-packages (from docker-compose) (3.10)
Collecting websocket-client<1.0,>=0.32.0 (from docker-compose)
  Using cached https://files.pythonhosted.org/packages/9d/fb/f51a03e232e00d6c504dfe815aed090c894ba3f8d3f7fd9612f3e227bf24/websocket_client-0.47.0-py2.py3-none-any.whl
Requirement not upgraded as not directly required: functools32; python_version == "2.7" in /usr/local/lib/python2.7/dist-packages (from jsonschema<3,>=2.5.1->docker-compose) (3.2.3.post2)
Collecting urllib3<1.23,>=1.21.1 (from requests!=2.11.0,!=2.12.2,!=2.18.0,<2.19,>=2.6.1->docker-compose)
  Using cached https://files.pythonhosted.org/packages/63/cb/6965947c13a94236f6d4b8223e21beb4d576dc72e8130bd7880f600839b8/urllib3-1.22-py2.py3-none-any.whl
Collecting idna<2.7,>=2.5 (from requests!=2.11.0,!=2.12.2,!=2.18.0,<2.19,>=2.6.1->docker-compose)
  Using cached https://files.pythonhosted.org/packages/27/cc/6dd9a3869f15c2edfab863b992838277279ce92663d334df9ecf5106f5c6/idna-2.6-py2.py3-none-any.whl
Collecting chardet<3.1.0,>=3.0.2 (from requests!=2.11.0,!=2.12.2,!=2.18.0,<2.19,>=2.6.1->docker-compose)
  Using cached https://files.pythonhosted.org/packages/bc/a9/01ffebfb562e4274b6487b4bb1ddec7ca55ec7510b22e4c51f14098443b8/chardet-3.0.4-py2.py3-none-any.whl
Collecting certifi>=2017.4.17 (from requests!=2.11.0,!=2.12.2,!=2.18.0,<2.19,>=2.6.1->docker-compose)
  Using cached https://files.pythonhosted.org/packages/7c/e6/92ad559b7192d846975fc916b65f667c7b8c3a32bea7372340bfe9a15fa5/certifi-2018.4.16-py2.py3-none-any.whl
Collecting docker-pycreds>=0.2.3 (from docker<4.0,>=3.3.0->docker-compose)
  Using cached https://files.pythonhosted.org/packages/5c/b6/3a4ca03225f6e9a25cb47cd3c695d19b88df5928ab9310e64dec1eb3b4d1/docker_pycreds-0.2.3-py2.py3-none-any.whl
Installing collected packages: urllib3, idna, chardet, certifi, requests, enum34, docopt, websocket-client, docker-pycreds, docker, dockerpty, docker-compose
  Found existing installation: urllib3 1.7.1

:stderr: cheetah 2.4.4 requires Markdown>=2.0.1, which is not installed.
launchpadlib 1.10.2 requires testresources, which is not installed.
Cannot uninstall 'urllib3'. It is a distutils installed project and thus we cannot accurately determine which files belong to it which would lead to only a partial uninstall.

Possibly related to https://github.com/docker/compose/issues/3428?  If so, the pip install should be fixed by adding --force and --upgrade flags to the install

This might be related to https://github.com/docker/compose/issues/3428#issuecomment-232272198

As a quick fix, forcefully downgrading pip might help. You may try to override pip version property to something like that: pip_version_pip: '9.0.3'.

pip_version_pip: '9.0.3' - This worked for me


Extending Model's static methods

Hey, I'm new to using this library and am converting over my codebase to typescript. In an effort to implement caching, I'm trying to find the most viable solution possible without having to rewrite and introduce a ton of additional logic throughout the application to support it.
What I'm hoping to do is write a class that extends Model and subsequently extends certain static find methods to add a layer for checking the cache before going onward. As of right now, Typescript throws errors when I attempt to do this, stating that I cannot assign an abstract constructor to a non-abstract constructor. Are there any recommendations to circumvent this, or allow it to occur with a simple extension? Any help would be much appreciated!
Currently, my error:
The 'this' context of of type 'typeof Model' is not assignable to methid's 'this' of type 'new () => T'. Cannot assign an abstract constructor type to a non-abstract constructor type.

Hey @alonewarrior, can you provide a specific example?

Sure! I'm creating a BaseModel that I'm extending from to provide pre-defined columns for each table that exists (not sure how well this is going to work yet):
@Table({
    paranoid: true,
    freezeTableName: true,
    timestamps: true,
    underscored: true
})
export class BaseModel<E> extends Model<BaseModel<E>> {
    @Column(DataType.STRING(2048))
    notes: string;

    @Column(DataType.STRING)
    add_user_id: string;

    @Column(DataType.STRING)
    change_user_id: string;

    @CreatedAt
    add_date: Date;

    @UpdatedAt
    change_date: Date;

    @DeletedAt
    delete_date: Date;

    static findAll<T extends Model<T>>(this: (new () => T), options?: IFindOptions<T>): Promise<T[]> {
        return super.findAll<T>(options);
    }
}

I'd like to extend findAll (and a few others), and I've tried putting in many different combinations for the findAll type and none have worked.

Unfortunately I can only provide a workaround for that: Using call omits the error:
return super.findAll.call(this, options);

There seems to be an issue with this in static functions (https://github.com/Microsoft/TypeScript/issues/20264 this was closed and labelled with Design Limitation)

@RobinBuschmann This will work! Thanks so much!!

@alonewarrior how did you get it work?
I am getting this error when I try return super.findAll.call(this, options);
Class static side 'typeof ParentModel' incorrectly extends base class static side 'typeof Model'.
The types returned by 'findOne(...)' are incompatible between these types.
Type 'Bluebird<Model>' is not assignable to type 'Bluebird'.
Type 'Model' is not assignable to type 'T'.
'Model' is assignable to the constraint of type 'T', but 'T' could be instantiated with a different subtype of constraint 'Model'.


[Request] Better detail for bid error

Hi Hunter,
Just want to start off saying thank you so much for your effort and time working on this project I have actually started to learn python as I was that interested in the code from your gui version so thanks.
I know you understand JavaScript a lot better then python and was wondering could you include this feature if it is not to hard/time consuming, I just find if I was getting a detailed error like what that players name is, what he went for, etc.
Really keep up the good work man I really appreciate your hardwork
Regards

I wouldn't worry too much about individual bids.  In this version, I will be including a history pane that will give you high level details about the performance of somebody in your list.  It will include things like average profit, average time to sale (how long do you hold on to it after you buy it), price fluctuations (is this a pretty stable player, or does the price rise and drop a lot), etc...
It would be much more productive to focus on the macro picture in order to make sure you are maximizing your player list.


[terra-clinical-detail-view] Use semantic html elements for accessibility

Summary

What was changed:
Update DetailView in terra-clinical-detail-view to use semantic HTML elements, specifically:

the subtitle is now using
 element instead of

the footer is now using
 with role=note aria instead of

the whole detail view is now within a
 instead of

the graph element is now wrap within a

The rest of the changes such as using proper heading level for title, secondary title, detail list heading, and definition list for the detail list will be part of other PRs.
Why it was changed:
To provide better accessibility support to screen readers for the changes listed above
Testing

This change was tested using:

[x] WDIO
[x] Jest
[x] Visual testing (please attach a screenshot or recording)
[ ] Other (please describe below)
[ ] No tests are needed

Reviews
In addition to engineering reviews, this PR needs:

[x] UX review
[x] Accessibility review
[ ] Functional review

Additional Details

This PR resolves:
UXPLATFORM-9075

Thank you for contributing to Terra.
@cerner/terra

There should not be any visual changes to tests/wdio. Using the swipe method to compare the deleted vs added images, there aren't any visual changes either.

@kolkheang  Is there a good example I could use to test for JAWS? The examples I find through the deployment link I believe are reading out correctly but it's hard to follow as it is pretty much a list of "A Detail List Item" repeated so it's hard to follow along with the structure.

@kolkheang Is there a good example I could use to test for JAWS? The examples I find through the deployment link I believe are reading out correctly but it's hard to follow as it is pretty much a list of "A Detail List Item" repeated so it's hard to follow along with the structure.

Apologies for not listing the specific changes within this PR. I've updated the things that are part of this PR.
What was changed:
Update DetailView in terra-clinical-detail-view to use semantic HTML elements, specifically:

    the subtitle is now using

    element instead of
    the footer is now using

    with role=note aria instead of
    the whole detail view is now within a
    instead of
    the graph element is now wrap within a

The rest of the changes such as using proper heading level for title, secondary title, detail list heading, and definition list for the detail list will be part of other PRs.

With the latest commit, I'm including the graph prop in the last example. It's using  text right now. I'm open to suggestion on what would be a good example for the graph prop.

@kolkheang  I updated the a11y reviewed label. It would still be good to have an engineer from terra on this as well to ensure there are no concerns with the technical aspects. @JessieRandle can help with identifying someone to look at this.  Thanks!

Since this updates the tags and html content of the component, this will need UX review as well. But it looks good from an engineering standpoint.

Looks like there are some merge conflicts; can you resolve those before this can be merges?

@sycombs  / @sdadn could you take another look and merge, please?


Error from tune2fs when running in docker only

I'm using a docker image created from this:
FROM debian:bookworm

RUN apt update && apt install -y wget parted gzip pigz xz-utils udev e2fsprogs && apt clean

# Setup Env
ENV LANG=C.UTF-8
ENV TERM=xterm-256color
ENV DEBIAN_FRONTEND=noninteractive
WORKDIR /workdir

ADD https://raw.githubusercontent.com/Drewsif/PiShrink/master/pishrink.sh /usr/local/bin/pishrink
RUN chmod +x /usr/local/bin/pishrink

ENTRYPOINT ["/bin/bash"]

I get an interactive shell into it using this:
docker run -it -v /myImageDir:/workdir pishrink
Then I run pishrink -sZa /workdir/myImage.img
I've tried on images from multiple RPi cards created by Win32Imager. Each time I get:
PiShrink v24.10.23 - https://github.com/Drewsif/PiShrink

pishrink: Gathering data
losetup: cannot find an unused loop device
tune2fs: No such file or directory while trying to open
Couldn't find valid filesystem superblock.
tune2fs 1.47.0 (5-Feb-2023)
pishrink: ERROR occurred in line 319: tune2fs failed. Unable to shrink this type of image

Running on a different machine using Debian on WSL2, everything works just fine on the same images with the same pishrink.sh.

If you would like to use docker you can follow the MacOS instructions here https://github.com/Drewsif/PiShrink?tab=readme-ov-file#macos-instructions. Just ignore the Mac specific stuff and use the docker file and command listed there. You needed to add --privileged=true which is why the loopback failed.


[Bug]: Time subset error

What happened?
I am getting error from simple time subsetting.
What did you expect to happen? Are there are possible answers you came across?
No response
Minimal Complete Verifiable Example (MVCE)
import xcdat as xc
ncfile='/p/css03/esgf_publish/CMIP6/CMIP/CSIRO-ARCCSS/ACCESS-CM2/historical/r1i1p1f1/day/zg/gn/v20191108/zg_day_ACCESS-CM2_historical_r1i1p1f1_gn_20000101-20041231.nc'
ds = xc.open_dataset(ncfile)
ds.sel(time=slice('2000-01-01 00:00:00', '2002-12-31 23:59:59'))

Relevant log output
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/home/lee1043/.conda/envs/blocking_20231017/lib/python3.8/site-packages/xarray/core/dataset.py", line 2554, in sel
    query_results = map_index_queries(
  File "/home/lee1043/.conda/envs/blocking_20231017/lib/python3.8/site-packages/xarray/core/indexing.py", line 183, in map_index_queries
    results.append(index.sel(labels, **options))  # type: ignore[call-arg]
  File "/home/lee1043/.conda/envs/blocking_20231017/lib/python3.8/site-packages/xarray/core/indexes.py", line 437, in sel
    indexer = _query_slice(self.index, label, coord_name, method, tolerance)
  File "/home/lee1043/.conda/envs/blocking_20231017/lib/python3.8/site-packages/xarray/core/indexes.py", line 205, in _query_slice
    indexer = index.slice_indexer(
  File "/home/lee1043/.conda/envs/blocking_20231017/lib/python3.8/site-packages/pandas/core/indexes/base.py", line 6344, in slice_indexer
    start_slice, end_slice = self.slice_locs(start, end, step=step)
  File "/home/lee1043/.conda/envs/blocking_20231017/lib/python3.8/site-packages/pandas/core/indexes/base.py", line 6537, in slice_locs
    start_slice = self.get_slice_bound(start, "left")
  File "/home/lee1043/.conda/envs/blocking_20231017/lib/python3.8/site-packages/pandas/core/indexes/base.py", line 6456, in get_slice_bound
    slc = self.get_loc(label)
  File "/home/lee1043/.conda/envs/blocking_20231017/lib/python3.8/site-packages/xarray/coding/cftimeindex.py", line 468, in get_loc
    return pd.Index.get_loc(self, key, method=method, tolerance=tolerance)
TypeError: get_loc() got an unexpected keyword argument 'method'

Anything else we need to know?
No response
Environment
INSTALLED VERSIONS
commit: None
python: 3.8.18 | packaged by conda-forge | (default, Oct 10 2023, 15:44:36)
[GCC 12.3.0]
python-bits: 64
OS: Linux
OS-release: 3.10.0-1160.71.1.el7.x86_64
machine: x86_64
processor: x86_64
byteorder: little
LC_ALL: None
LANG: en_US.UTF-8
LOCALE: ('en_US', 'UTF-8')
libhdf5: 1.14.0
libnetcdf: 4.9.2
xarray: 2022.11.0
pandas: 2.0.3
numpy: 1.22.4
scipy: 1.10.1
netCDF4: 1.6.4
pydap: None
h5netcdf: None
h5py: 3.9.0
Nio: None
zarr: None
cftime: 1.6.2
nc_time_axis: None
PseudoNetCDF: None
rasterio: 1.3.7
cfgrib: None
iris: None
bottleneck: None
dask: 2023.5.0
distributed: 2023.5.0
matplotlib: 3.7.3
cartopy: 0.21.1
seaborn: 0.13.0
numbagg: None
fsspec: 2023.9.2
cupy: None
pint: None
sparse: None
flox: None
numpy_groupies: None
setuptools: 68.2.2
pip: 23.3
conda: None
pytest: None
IPython: 8.12.2
sphinx: None
$ mamba list xcdat
packages in environment at /home/lee1043/.conda/envs/blocking_20231017:

Name                    Version                   Build  Channel
xcdat                     0.6.0                    pypi_0    pypi

According to the pandas doc, parameter method is deprecated since pandas version 1.4. Suggested alternative is to use index.get_indexer([item], method=…) instead.
https://pandas.pydata.org/pandas-docs/version/1.5/reference/api/pandas.Index.get_loc.html

I noticed that my xarray version (2022.11.0) is outdated, which was limited by python 3.8 in my env. With updating python to 3.9 and xarray to 2023.10.1, issue is gone. I am closing this issue because it was a user error.


Implement Waste Management Minigame for Sustainability Education

Description:
To emphasize the game's focus on sustainability and reduce food waste, a "waste management minigame" should be designed. This minigame will engage players in activities related to sorting waste for composting or recycling after preparing each dish. Efficient waste management should be rewarded, teaching players the importance of sustainability practices in cooking and food preparation.
Acceptance Criteria:

Create a fun and educational minigame that involves sorting different types of kitchen waste into composting, recycling, or trash.
Integrate this minigame seamlessly into the dish preparation cycle, encouraging players to think about waste reduction from the start.
Reward players with in-game bonuses or points for efficient and correct waste management.
Provide educational feedback on the impact of waste management choices, enhancing the game's learning outcomes.

Game mechanics: timed challenge where players sort waste into correct categories (compost, recycling, trash) as it moves along conveyor belt. Incorrect sorting could result in penalties, whereas correct actions would boost scores or provide in-game rewards.
Educational Content: Each waste item could come with a tip or fact that appears when sorted correctly, providing players with real-world knowledge about why certain waste types are handled in specific ways.
Integration with Main Game: The minigame could be triggered after dishes are served, especially after events where a guest generates unexpected waste. This integrates the minigame naturally into the gameplay flow, reinforcing the connection between cooking choices and waste production.
Incentives for Players: Rewards for successful waste management could include points towards the player's overall game score, unlockables (like new recipes or kitchen tools that reduce waste), or even a "clean kitchen" bonus that impacts guest satisfaction positively.

Step 1: Define the Assets and Rules

Assets Needed: Images for compostable items (vegetable peels, coffee grounds), recyclables (plastic bottles, paper), and trash (plastic bags, bones).
Rules: Items move from one side of the screen to the other on a conveyor belt. Players drag and drop items into the correct bins before they reach the end of the belt.

Step 2: Basic Game Loop

Start with a Timer: Set a countdown timer for the minigame duration, e.g., 30 seconds. The game ends when the timer runs out.
Generate Waste Items: Randomly generate items on the conveyor belt at intervals. Ensure a balanced mix of compostable, recyclable, and trash items.
Sorting Mechanism: Allow players to drag items to the correct bin. Implement simple touch-and-drag controls for mobile or click-and-drag for web/desktop.
Scoring and Feedback: Give immediate feedback when items are correctly or incorrectly sorted (e.g., a simple sound, visual effect, or popup). Correct sorts earn points, while incorrect sorts might pause the belt briefly as a penalty.

Step 3: User Interface (UI)

Display three bins at the bottom of the screen, each labeled for compost, recycling, and trash.
Use a simple conveyor belt animation or moving background to simulate movement.
Show the remaining time prominently on the screen.
Optionally, include a score counter to track the player's performance.

Step 4: Educational Aspect

When an item is correctly sorted, briefly display a fact or tip about why that item belongs in that bin. This can be a simple popup or overlay that doesn't interrupt the gameplay.
At the end of the game, give a summary of correct and incorrect sorts, with a brief educational note encouraging better waste management practices.

Game screen layout

image assets for compostable items, recyclables, and trash
conveyor belt (Container with a scrolling background), waste items (Draggable widgets), bins (DragTarget widgets where items will be dropped)
countdown timer at top of screen using Text widget that updates based on Timer from dart:async
display scores or feedback using SnackBar or custom dialog boxes for immediate player feedback

Game logic and state management

state management: use Provider to manage game state, including timer, current score, list of items on conveyor belt
generating waste items: randomly generate items on conveyor belt at defined intervals. Might store item data in a Firebase Firestore collection and fetch them periodically or use a local list within game state.
each item is a model with properties like type (compost, recycle, trash), imagePath, fact
handling drag and drop: use Draggable for making waste items movable and DragTarget for bins. implement logic to check if item was dropped on correct bin and update game state accordingly. Provide educational tips or facts when items are correctly sorted through modal popups or inline notifications.

Integrating firebase for data and analytics

store facts or educational content related to each waste item in firestore. fetch these dynamically when items are correctly sorted to keep game content fresh and engaging.
analytics: use firebase analytics to track how players interact with minigame, including completion rates, scores, and common mistakes
cloud functions: firebase cloud functions to manage game logic that doesn't need to run on client side e.g. scoring algorithms, generating daily/weekly challenges

Feedback and reward system

after completing minigame, provide players with a summary of their performance, including correctly sorted items, scores, and any new tips unlocked. Could be a modal dialog or new screen
reward integration: based on minigame's outcome, update player's main game status e.g. increasing their sustainability score or unlocking new feature. use firestore to persist these changes


[WIP] Update the system tests to default to running the latest versions:

2.6.3
2.7.2
3.3.2
More detailed description of your change,
if necessary. The PR title and PR message become
the squashed commit message, so use a separate
comment to ping reviewers.
Summary of testing strategy (including rationale)
for the feature or bug fix. Unit and/or integration
tests are expected for any behaviour change and
system tests should be considered for larger changes.
Committer Checklist (excluded from commit message)

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

Should this PR go against AK?

@mjsax Yes. I'm using the internal Confluent Jenkins to run ad hoc system tests to verify the fix. So it's faster to do it in this repo.
Is there a way to run system tests against my fork (kirktrue/kafka) on either ASF or Confluent infrastructure?


Post: Using AWS HTTP APIs (Part 1)

Multi-part post on AWS HTTP APIs (HTTP and Lambda integrations).
Cover:

[ ] AWS CLI
[ ] pure Cloudformation
[ ] AWS SAM
[ ] AWS CDK

Make sure to include info on payload version 2.0 and how it affects Lambda response format.

Make sure to include info on payload version 2.0 and how it affects Lambda response format.

Created kap-aws-http-apis-pt1 for this post.

Describe the difference between quick create (auto-deployed $default route) and creating stages/deploys manually. Also, discuss the use of the catchall ANY method.

CORS not required for HTTP integration? Just rely on the target to support (or not) CORS?

routes (method/resource)
integrations (http, lambda, service, private)
auth (lambda, JWT, IAM)
CORS
parameter mapping
stages/deployments
stage variables
custom domains (and mutual TLS?)
throttling
metrics
logging (logging variables)

Switching to Cloudformatiion with CLI used to query, show logs, test (via cURL), etc.

Adding a custom domain will likely need to be done last. AWS provides a new target URL each time you create a new Cloudformation stack. Updating an existing stack often fails while the API is in development, so new target URLs are constantly being generated. Updating the DNS records on you domain host is non-trivial (execution timewise) so it's best left until late in the process (and even then, maybe only for production APIs).

Auto-deploy probably make sense most of the time--a new deployment is needed to see any API change. If you want to delay access to the API update you could set AutoDeploy: false and create the deployment using the AWW CLI when you're ready (aws apigatewayv2 create-deployment...).


Table is not square, why？

my code:
source = "mupdf_explored.pdf"

converter = DocumentConverter()

result = converter.convert(source)

markdown_content = result.document.export_to_markdown()

print(markdown_content)

console:
*ERR* --- *ERR*
*ERR* Table is not square! *ERR*
*Padding to square...*
ERR#: COULD NOT CONVERT TO RS THIS TABLE TO COMPUTE SPANS
*ERR* --- *ERR*
*ERR* Table is not square! *ERR*
*Padding to square...*

This is fixed in the new release of the models https://github.com/DS4SD/docling-ibm-models/releases/tag/v2.0.8


Make native_blockifier.Storage testable + 1 use

Traitify Storage, so that it can be mocked as FakeStorage.
Previous Storage became PapyrusStorage and methods moved to impl trait, no logic changes.
Add test for get_block_id: tests the state the system is when loading from a papyrus snapshot, which will return a StarkHash (this hit a bug in the past, when we assumed it was u64)

This change is

Codecov Report
Attention: 15 lines in your changes are missing coverage. Please review.

Comparison is base (d50b711) 67.15% compared to head (b7d387e) 67.27%.
Report is 1 commits behind head on main.

Files
Patch %
Lines

crates/native_blockifier/src/storage.rs
59.25%
11 Missing :warning:

crates/native_blockifier/src/py_block_executor.rs
81.25%
3 Missing :warning:

crates/native_blockifier/src/py_utils.rs
0.00%
0 Missing and 1 partial :warning:

Additional details and impacted files
@@            Coverage Diff             @@
##             main    #1149      +/-   ##
==========================================
+ Coverage   67.15%   67.27%   +0.12%
==========================================
  Files          52       52
  Lines        6729     6742      +13
  Branches     6729     6742      +13
==========================================
+ Hits         4519     4536      +17
+ Misses       1798     1791       -7
- Partials      412      415       +3

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.

Whoops NVM too big, i''m closing and splitting in two


Update module naming

Fixes https://github.com/snapshot-labs/snapshot/issues/2814 (partial)
Changes in this PR:
Change naming from reality to module.
How to test and review this PR?
n/a

@abg4 You can test online via our automatic deployment, example https://snapshot-by4z65fm7-snapshot.vercel.app/

I just realized that this PR points to a separate uma branch. So you want to merge it like that now and start a new PR for more changes?


Auto fetch question can come multiple times when in multiroot

cc @bpasero

I can get it once per root folder if I click "not now". I don't know if that's intended? The setting goes to User Settings so maybe not?

Steps?

In a clean user data dir, open a workspace with two folders that each have git remotes

Git: Pull, select folder 1

See autofetch prompt, click "not now"

Git: Pull, select folder 2

See autofetch prompt, click "not now"

Later git commands in either folder don't show the prompt again


Incompatible with Iris shaders

Describe the Bug
Crashes when iris and create fabric run together
Reproduction Steps

make modpack
install create and iris
start game

...
Expected Result
Run with shaders on
Screenshots and Videos
No response
Crash Report or Log
No response
Operating System
Windows 11
Mod Version
0.5.1f
Minecraft Version
1.20.1
Other Mods
No response
Additional Context
No response

Attach a log

It worked for me, even with sodium. Then it crashed with Create Iris Oculus Flywheel compat 0.2.1.

It worked for me, even with sodium. Then it crashed with Create Iris Oculus Flywheel compat 0.2.1.

Try Iris Oculus Flywheel 2.4, its in curseforge I believe

The Modrinth version is outdated, I know. I just thought that this might be the reason for this problem. Alternatively @dreadstrike-inferniclaw tell us all your mods with the corresponding mod version. For example, Create Fabric 0.5.1-d-build.1161+mc1.20.1 crashed with Iris Shaders, but the next version 0.5.1-f-build.1335+mc1.20.1 worked.
And is Sodium installed?

Don't use modrinth
Don't have sodium
And I've never heard of indium

Don't use modrinth Don't have sodium And I've never heard of indium

please attach a log, also iris depends on sodium

closing, still has not provided needed info

I'm sorry. I've been busy in real life. I will get the log today or tomorrow.


[r] Use libtiledbsoma for schema evolution

Currently done using the tiledb-r path which we're removing as a dependency.
#2406
[sc-55679]

It looks like I can move this to libtiledbsoma pretty much verbatim
https://github.com/single-cell-data/TileDB-SOMA/blob/1.14.2/apis/python/src/tiledbsoma/pytiledbsoma.cc#L139-L204
and then I can re-use that for R.
CC @nguyenv in case I'm missing something


Deprecate this tool by a non feature equivalent new one

Seems like @dantesun is taking over this project.
Happy to hear this project is evolving in a way, even if it's for replacing it but I feel the replacement is not as good as the original:

gw are 2 consecutive letters, where gng is longer / not as convenient to enter (on a qwerty keyboard at least)
gng is not available with homebrew (which is the most popular way to install things for OSX users)

Create an alias gw=gng is easy on my side, but it would be sad to lose users because they cannot install the new replacement tool.

https://github.com/gdubw/gng/releases/tag/v1.0.2 fixed this issue.

https://github.com/gdubw/gng/releases/tag/v1.0.2 fixed this issue.


App says that my API key is invalid

Hello,
I've created an account on OpenWeatherMap (free account) and get my Api key.
It was 2 ou 3 days ago. Now on my account it says that the API key is "active".
But when i put it in the app, i got the message that my key is invalid.
Thanks for your help.

Same exact issue, on Android

@n5corp @MattRGX i just tried with my key and it works. Does you key give you access to the onecall api?
Any chance one of you can share his key privately?

I took the free plan on openweathermap.

So i guess we don't have access to the onecall api with this free plan.
The other plan where we have access to the onecall api is also free.
But we need to put the credit card numbers to get the API because up to a certain point it's not free anymore.
And obviously for security and money purposes, i don't want to put my credit card numbers on the OWM website.

@MattRGX i LL take a look. It was not like that before.
But I understand I wouldn't add my credit card either

@MattRGX could you ensure there is no unwanted spaces in your apikey (like at the end) from the application settings.
It did just happened to me that copying from the  website i get a space at the end and end up with an invalid api key error

@MattRGX could you ensure there is no unwanted spaces in your apikey (like at the end) from the application settings. It did just happened to me that copying from the website i get a space at the end and end up with an invalid api key error

I've just double checked again the API key and there is no extra space or unwanted spaces at the beginning or at the end.

@MattRGX thanks i still made a new release with a fix for that (and other fixes).
as for my i use the base plan.Is it the same for you? I even tried to generate a new key and it is working

@farfromrefug i use the free plan that is available in the "Professional collections" subscription plan.
I'm not using the other free plan that is available in the "One call by call" subscription plan.

I guess i have the same.
Could you share your. key privately? My mail is dev at akylas dot fr

FYI I'm on the same plan and I have the same issue, although I can query the API directly just fine with my key.

@abalteaux which API  can you query directly?
I think owm changed the free tier and the one call api is not available anymore.
I am working on a new free weather provider

@abalteaux  not the same api. I could switch to use multiple api calls but I would prefer not to.

i have the same problem :(
my free api key is unvalid and doesnt work in the app :(
how can i fix it ?

@xerves78 sadly it seems we can't . this JS why I added open-meteo provider which will always be free


Replace old server.py and replace console backend to share code

I removed server.py since the new API supersedes it (and it wouldn't work with the new static html anyway). I also started working on converting the console application to use the same dependency-injected services. I can get it through a single generation, but it has trouble with the arguments on the second run-through, and I'm not sure what's going on (I'd really like the parse_cmd to just generate a JobRequest, but it also seems to be overwriting at least outdir). The outdir initialization in the console_app also seems to be messing up, though it'd only be used for grids currently (since the services with dependency injection take care of all other output).

Have you tried these with the latest changes on development? There were some bugs where the outdir, width and height not being considered that have now been fixed. Maybe that was the problem for you too. Rebase with the dev's latest build and check if it is fixed for you too.

Ah I'll have to check again (unless we're okay losing grids for a little bit - the only real issue is that I'm still trying to leave them hacked in... I'm pretty sure everything else works without them).

@Kyle0654 Try again with the commits I made early this morning. My implementation of the Args object was broken in an obscure way; it should be working reliably now.

@Kyle0654 I like what I see, but maybe this should go into a new "job-request-refactor" branch that we both can work on while I apply fixes and small enhancements to the development branch.
I'm branching now.

What's your thinking about how to handle grids? They are hacked in at present. If it doesn't already, I think your dependency injector architecture should allow for a class of processing modules that takes a series of images and merges them together into a single image, video, or whatever. The merged output could then be passed on to another processing module.
I suppose that file output is also just another processing step that gets executed at one or more points in a pipeline, along with other output possibilities such as writing to an S3 bucket.
BTW, I'll make a PR later today which reconstitutes a series of opt's from the metadata stored in a single-image PNG or a grid PNG. This will use the RFC structured metadata rather than the prompt string. The latter doesn't represent grid images properly.

I think once we get a processing pipeline in place (where even generate is a step), then it makes sense to have a grid step to combine images. It could probably be used to do things like out-painting border expansion and stuff. It might be useful to list all scenarios and then try to determine which components we'd need in order to accomplish them.
I've been using the DreamResult class as the metadata class currently. It would probably have a metadata field eventually (rather than everything in one place), or maybe there's a separate Request class that both JobRequest and DreamResult use.
I think scenarios where there's more than one final output image are probably difficult to achieve cleanly with the plan for the new processing framework. The issue being that we'd need to spit up the metadata from the input request to produce the output result.
It might make more sense to produce grids closer to the presentation later, and not try to write metadata (but make the source result images available).
This will probably also require adding an eventing system so the backend can react to events as well as the frontend (currently I'm just sending signals directly to clients, but they already go through a queued buffer to cross threads, so it probably wouldn't be a huge challenge to also send them as events through some eventing system. Then we wouldn't need the hacked signaling replacement I put in my conse app pr.

By the way, would you like to be made a collaborator on this repo? This might make it more convenient for you and help us coordinate. Let me know.

Sure I don't mind 🙂. Just let me know what processes you may have in place and what to touch and not touch.

Sure I don't mind slightly_smiling_face. Just let me know what processes you may have in place and what to touch and not touch.

That's great. I've just sent you an invite. As for the code of conduct, the most important thing is not to do anything that will make it harder to merge in pull requests. In particular, you're refactoring in a major way and moving code and files around. I encourage you to do the work in a separate branch (or branches) and to give me and the rest of the community here a few days heads-up when you're reaching the point where we can make the big switchover to the dependency-injector architecture without losing any functionality. At this point we'd want people to hold off on PRs, or to rebase their PRs on your branch.
I made a backend-dependency-injector branch for you this morning, and you're welcome to use that, or organize the work however you prefer.

Have you tried these with the latest changes on development? There were some bugs where the outdir, width and height not being considered that have now been fixed. Maybe that was the problem for you too. Rebase with the dev's latest build and check if it is fixed for you too.

I rebased on development and migrated the changes - now everything works. Thought I had started from development but I must have messed up my branching.

Alright @lstein I've got it working. The grid code is still just inside the console app code, but it's working, and I'm not inclined to try to move/clean it prior to doing the processing pipeline work.
Would you like me to move this to backend-dependency-injector and then PR from there?
I'd also love some feedback from anyone about folder/file structure. I'm not super familiar with best practice in Python. I already feel like I have too many things in each file, but I'm not sure what best practice is to split them up. I'm also not sure what comes from the upstream stable-diffusion that we don't want to rearrange too much in case we eventually want to pull in changes from there.

Closing this in favor of a PR from the backend-dependency-injector branch: https://github.com/lstein/stable-diffusion/pull/685


Nice to have: Load asset data from page navigation

Since we cannot get the load asset from console.time() console.timeEnd() due to page navigation, is there another trace category or chrome driver configuration to get the load assets data with page navigation and have node big rig display that information?
The data will be useful to have to benchmark web page performance.

I'm not clear on exactly what you're aiming for. If you want individual resource timings the Resource Timing API is what you need. I don't believe that data is captured in trace files, but if it is then I'll gladly extend Big Rig to account for it. Leave it with me and I'll check.

What about the simple question: "how long did the page take to load"? From the RAIL perspective, BigRig does nicely for the R, but not much support for the L.
On a related note, during a trace that runs through a test suite, the tracefile has several navigations, but it looks like BigRig only cares about the the last page load.

It's a challenge this one, really, inasmuch as the trace is the 'atomic' unit on which this is all built, and there's no direct way to console.time at the point of navigation. With that said, however, if you don't specify any time ranges the entire trace will be considered 'in scope', and typically Big Rig will then assume that's a RAIL Load.
The solution in the case you mention, then, is to have individual trace files per navigation. So, for example, in the case of the Big Rig Runner it configures ChromeDriver to capture all the performance logs, and then purges them whenever you call getTrace() (and it gives you a trace file back that you can store).
I don't know the exact setup, but my suggestion would be, if you're talking automated suites (and by that I would assume ChromeDriver), that you set it up to collect a set of trace files that can be handed to Big Rig individually.

Just wanted to check in on this. Have you had chance to try tracking pages individually as separate traces?

I was wondering if were possible to create a trace file for an entire user session (really, a test session) as a single file and then extract the things we care about:

Every page load
Every console.time/timeEnd

@paullewis   Haven't done it yet.  So far I was able to purge the trace data with the getTrace() and get the load data for page navigation with a second getTrace() call.


Add any support for autograph with dataset

This PR tries to address the issue where any in autograph
does not work with tf.data:
import tensorflow as tf
def g():
  dataset = tf.data.Dataset.from_tensor_slices([False, True, False])
  return any(dataset)
print("G: ", g())
@tf.function
def f():
  dataset = tf.data.Dataset.from_tensor_slices([False, True, False])
  return any(dataset)
print("F: ", f())
..........
    OperatorNotAllowedInGraphError: using a `tf.Tensor` as a Python `bool` is not allowed: AutoGraph did not convert this function. Try decorating it directly with @tf.function.

This PR translate any(dataset) to
dataset.filter(lambda x: x).take(1).reduce

which works in tf.data's pipeline.
Signed-off-by: Yong Tang<EMAIL_ADDRESS>

@mdanatg Thanks for the review! I will create a follow up PR once this PR is merged.

@mdanatg  (update)  I will create a follow up PR  for all as well, once this PR is merged.

@mdanatg The PR has been updated. Please let me know if there are any other issues.


Provide AccessRule implementation

The docs here: https://github.com/dektrium/yii2-user/blob/master/docs/custom-access-control.md
Give an implementation of AccessRule that works with yii2-user, specifically the admin role.
Why not provide this implementation as part of the package so we can use it directly from configuration?

Good idea, I'll add this on weekend! Sorry for the delay with the answer!

Done!


Improvements

Hello nice job, it's really well done !
Have you planed to improve bootstrap compatibility (nav, card, pills, etc...) ?
Am currently working on it (more trying to make it work on nav/card with existing classes but doesn't seems to be enough for the awaited result) I'll open PR if I add some usefull components

Hi Magiguigui, yes, but i haven't got enought time to improve as much as I would like to for now. Feel free to do PR, all improvements are welcome, thank you so much!


clock is removed in py3.8

travis fails for py2.7 as perf_counter is py3 only.

We can use time.time() or process_time(), right?
We can also drop the py27 Travis tests next week. But we really ought to
announce this.
On Sat, Dec 28, 2019, 5:40 PM Mridul Seth<EMAIL_ADDRESS>wrote:

travis fails for py2.7 as perf_counter is py3 only.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/econ-ark/HARK/pull/464?email_source=notifications&email_token=ADKRAFPU55GJE4LL34RFS4DQ27IVVA5CNFSM4KASVPUKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEHYTPDQ#issuecomment-569456526,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ADKRAFOM5RV3VHF4JG3A3BDQ27IVVANCNFSM4KASVPUA
.

True. Dropping py2.7 is on the timeline wiki for 15/01/2020 but we should
make a more public announcement.
On Sat, 28 Dec 2019 at 18:01, Matthew N. White<EMAIL_ADDRESS>wrote:

We can use time.time() or process_time(), right?
We can also drop the py27 Travis tests next week. But we really ought to
announce this.
On Sat, Dec 28, 2019, 5:40 PM Mridul Seth<EMAIL_ADDRESS>wrote:

travis fails for py2.7 as perf_counter is py3 only.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
<
https://github.com/econ-ark/HARK/pull/464?email_source=notifications&email_token=ADKRAFPU55GJE4LL34RFS4DQ27IVVA5CNFSM4KASVPUKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEHYTPDQ#issuecomment-569456526
,
or unsubscribe
<
https://github.com/notifications/unsubscribe-auth/ADKRAFOM5RV3VHF4JG3A3BDQ27IVVANCNFSM4KASVPUA
.

—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/econ-ark/HARK/pull/464?email_source=notifications&email_token=ABI5RFECM6ZOY5S3TASRXKLQ27LFHA5CNFSM4KASVPUKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEHYTYMY#issuecomment-569457715,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ABI5RFD5KXETJYUA5TDXJPLQ27LFHANCNFSM4KASVPUA
.


[5.8] There's no need to pretty-print the JSON that a compiled manifest sent back to SwiftPM (#5995)

This is a 5.8 nomination of https://github.com/apple/swift-package-manager/pull/5995.  The change is already in main.

@swift-ci please smoke test


Added Upnp support, followed on from PR 422

The PR was over 1 month old, so I had a go at implementing the comments on the PR.
Original request follows from the issue #185

Did a quick test of this, and both upnp and natpmp were able to detect my IP :)

Can be worth taking a look at: github.com/NebulousLabs/Sia/pull/2839

Superseded by #1109.


[CI] security update, daily job fix, try to recover arm64 support from base.

in recently our daily build fails, and I further checked our commit history found out that ... after #1118 been merged

As the 1118 depends on some branch as base(for historical reason we keep the base image build steps at branch base but not main.). One of the make script/make rule which only available on branch base is lost, thus cause we fails with daily build.
Meanwhile, 1118 removed arch support as cross platforms build for arm64 linux/arm64
A security update by depends bot suggestion.

btw, I know it seems not a good approach as this PR contains 3 different feature. But, as I found this issue just before go to sleep. Hence I just raise it up today as a hot fix, I would like to split this PR into 3 different PRs during weekend. Also give more time to allow others to cross check to avoid any mistake.

if we don't merge it as hot fix, we can have use this pr to discuss the founding for daily job failure and arm64 image missing.

Update to draft to avoid mistake as I am too tired.

https://github.com/sustainable-computing-io/kepler/actions/runs/7411674436/job/20166742182
#2 [linux/arm64 internal] load metadata for quay.io/sustainable_computing_io/kepler_builder:ubi-9-libbpf-1.2.0
#2 ERROR: no match for platform in manifest: not found

need to get an arm64 builder image before merging this PR.


THE GAME IS NOT STARTING

after all the installation i click play nut the game does not start.Its says connection problem and stuck  there.

Refer to issue #558 for this problem.

I fixed this issue :)
Look here -  : #562


ADBDEV-3174: New GUC to inherit storage options with ALTER TABLE ADD PARTITION

New GUC to inherit storage options with ALTER TABLE ADD PARTITION
This patch adds a new GUC gp_add_partition_inherits_table_setting
with the default value false.
When set to true, the ALTER TABLE ADD PARTITION command will add new partitions
with storage options (appendonly, orientation, compresstype, compresslevel,
blocksize and checksum) inherited from the parent table (unless these options
are explicitly pecified in the DDL or subpartition template).

Allure report https://allure-ee.adsw.io/launch/54272

Allure report https://allure-ee.adsw.io/launch/54329

Allure report https://allure-ee.adsw.io/launch/54369

@RekGRpth , what about making changes in the transformAlterTable_all_PartitionStmt function? The function name begins with "transform", so I think it is more suitable place. The patch below is a draft.
diff --git a/src/backend/parser/parse_utilcmd.c b/src/backend/parser/parse_utilcmd.c
index b95ff4bb70..8018bc58a6 100644
--- a/src/backend/parser/parse_utilcmd.c
+++ b/src/backend/parser/parse_utilcmd.c
@@ -4884,6 +4884,24 @@ transformAlterTable_all_PartitionStmt(
                        heap_close(rel, AccessShareLock);
        } /* end if alter */

+       if (atc1->subtype == AT_PartAdd)
+       {
+               PartitionElem *pelem = (PartitionElem *) pc->arg1;
+               if (gp_add_partition_inherits_table_setting && pelem->storeAttr == NULL)
+               {
+                       AlterPartitionCmd *storenode = makeNode(AlterPartitionCmd);
+                       if (RelationIsAoRows(pCxt->rel) || RelationIsAoCols(pCxt->rel))
+                       {
+                               storenode->arg1 = (Node *)build_ao_rel_storage_opts(
+                                               list_make1(makeDefElem("appendonly", (Node *) makeString("true"))),
+                                               pCxt->rel);
+                       }
+
+                       storenode->location = -1;
+                       pelem->storeAttr = (Node *)storenode;
+               }
+       }
+
        switch (atc1->subtype)
        {
                case AT_PartAdd:                                /* Add */

Why is it so difficult?

 +                       if (RelationIsAoRows(pCxt->rel) || RelationIsAoCols(pCxt->rel))
 +                       {
 +                               storenode->arg1 = (Node *)build_ao_rel_storage_opts(
 +                                               list_make1(makeDefElem("appendonly", (Node *) makeString("true"))),
 +                                               pCxt->rel);
 +                       }

Why not just:
storenode->arg1 = (Node *)reloptions_list(RelationGetRelid(pCxt->rel));

what about making changes in the transformAlterTable_all_PartitionStmt function? The function name begins with "transform", so I think it is more suitable place.

moved

Allure report https://allure-ee.adsw.io/launch/55091

Allure report https://allure-ee.adsw.io/launch/55093

@RekGRpth  In the current version after this queries
SET gp_add_partition_inherits_table_setting = on;

CREATE TABLE ao_alter_add_part(a int, b int) WITH (appendonly=true, orientation=row, compresstype=zstd) DISTRIBUTED BY (a) PARTITION BY RANGE (b)
  (PARTITION "10" START (1) INCLUSIVE END (10) EXCLUSIVE,
   PARTITION "20" START (11) INCLUSIVE END (20) EXCLUSIVE);

ALTER TABLE ao_alter_add_part ADD PARTITION "30" START (20) INCLUSIVE END (30) EXCLUSIVE;

the added partition has more options than the table and these options are arranged in a different order
postgres=# \d+ ao_alter_add_part*
            Append-Only Table "public.ao_alter_add_part"
 Column |  Type   | Modifiers | Storage | Stats target | Description
--------+---------+-----------+---------+--------------+-------------
 a      | integer |           | plain   |              |
 b      | integer |           | plain   |              |
Compression Type: zstd
Compression Level: 1
Block Size: 32768
Checksum: t
Child tables: ao_alter_add_part_1_prt_10,
              ao_alter_add_part_1_prt_20,
              ao_alter_add_part_1_prt_30
Distributed by: (a)
Partition by: (b)
Options: appendonly=true, orientation=row, compresstype=zstd

        Append-Only Table "public.ao_alter_add_part_1_prt_10"
 Column |  Type   | Modifiers | Storage | Stats target | Description
--------+---------+-----------+---------+--------------+-------------
 a      | integer |           | plain   |              |
 b      | integer |           | plain   |              |
Compression Type: zstd
Compression Level: 1
Block Size: 32768
Checksum: t
Check constraints:
    "ao_alter_add_part_1_prt_10_check" CHECK (b >= 1 AND b < 10)
Inherits: ao_alter_add_part
Distributed by: (a)
Options: appendonly=true, orientation=row, compresstype=zstd

        Append-Only Table "public.ao_alter_add_part_1_prt_20"
 Column |  Type   | Modifiers | Storage | Stats target | Description
--------+---------+-----------+---------+--------------+-------------
 a      | integer |           | plain   |              |
 b      | integer |           | plain   |              |
Compression Type: zstd
Compression Level: 1
Block Size: 32768
Checksum: t
Check constraints:
    "ao_alter_add_part_1_prt_20_check" CHECK (b >= 11 AND b < 20)
Inherits: ao_alter_add_part
Distributed by: (a)
Options: appendonly=true, orientation=row, compresstype=zstd

        Append-Only Table "public.ao_alter_add_part_1_prt_30"
 Column |  Type   | Modifiers | Storage | Stats target | Description
--------+---------+-----------+---------+--------------+-------------
 a      | integer |           | plain   |              |
 b      | integer |           | plain   |              |
Compression Type: zstd
Compression Level: 1
Block Size: 32768
Checksum: t
Check constraints:
    "ao_alter_add_part_1_prt_30_check" CHECK (b >= 20 AND b < 30)
Inherits: ao_alter_add_part
Distributed by: (a)
Options: appendonly=true, blocksize=32768, compresslevel=1, checksum=true, compresstype=zstd, orientation=row

postgres=#

What about this patch to fix the problem?
diff --git a/src/backend/cdb/cdbpartition.c b/src/backend/cdb/cdbpartition.c
index fc9fec0993..7bac71ddcb 100644
--- a/src/backend/cdb/cdbpartition.c
+++ b/src/backend/cdb/cdbpartition.c
@@ -6773,6 +6773,8 @@ atpxPartAddList(Relation rel,

 	if (pelem->storeAttr)
 		ct->options = (List *) ((AlterPartitionCmd *) pelem->storeAttr)->arg1;
+	else if (gp_add_partition_inherits_table_setting)
+		ct->options = reloptions_list(RelationGetRelid(rel));

 	ct->tableElts = list_concat(ct->tableElts, list_copy(colencs));

diff --git a/src/backend/commands/tablecmds.c b/src/backend/commands/tablecmds.c
index 680516a758..f5d669dd80 100644
--- a/src/backend/commands/tablecmds.c
+++ b/src/backend/commands/tablecmds.c
@@ -14447,7 +14447,7 @@ drop_parent_dependency(Oid relid, Oid refclassid, Oid refobjid, bool is_partitio
 /*
  * deparse pg_class.reloptions into a list.
  */
-static List *
+List *
 reloptions_list(Oid relid)
 {
 	Datum		reloptions;
diff --git a/src/include/commands/tablecmds.h b/src/include/commands/tablecmds.h
index 6adee26dfd..be01f932b3 100644
--- a/src/include/commands/tablecmds.h
+++ b/src/include/commands/tablecmds.h
@@ -137,4 +137,5 @@ extern void RangeVarCallbackOwnsRelation(const RangeVar *relation,
 							 Oid relId, Oid oldRelId, void *noCatalogs);

 extern List * rel_get_column_encodings(Relation rel);
+extern List * reloptions_list(Oid relid);
 #endif   /* TABLECMDS_H */

What about this patch to fix the problem?

Applied.

Allure report https://allure-ee.adsw.io/launch/56370

Failed job Resource group isolation tests on x86_64: https://gitlab.adsw.io/arenadata/github_mirroring/gpdb/-/jobs/696864

Allure report https://allure-ee.adsw.io/launch/57991

Failed job Resource group isolation tests on x86_64: https://gitlab.adsw.io/arenadata/github_mirroring/gpdb/-/jobs/765914

Failed job Resource group isolation tests on ppc64le: https://gitlab.adsw.io/arenadata/github_mirroring/gpdb/-/jobs/765915

Failed job Regression tests with ORCA on x86_64: https://gitlab.adsw.io/arenadata/github_mirroring/gpdb/-/jobs/765908

Failed job Resource group isolation tests on x86_64: https://gitlab.adsw.io/arenadata/github_mirroring/gpdb/-/jobs/769758

Failed job Resource group isolation tests on ppc64le: https://gitlab.adsw.io/arenadata/github_mirroring/gpdb/-/jobs/769759

Failed job Behave tests on x86_64: https://gitlab.adsw.io/arenadata/github_mirroring/gpdb/-/jobs/769756

do I understand correctly that if at least one option is set in the WITH clause, then inheritance from the parent table does not occur? is this expected behavior?

don't you think that the same thing is repeated three times in the description of PR? maybe it can be written in another way? I also think it's worth adding to the description the motivation for adding this GUC and the order of choosing options from different sources.

do I understand correctly that if at least one option is set in the WITH clause, then inheritance from the parent table does not occur?

No, it’s just inherited (with the new GUC enabled).

I mean, in this case, inheritance didn't happen. is this the expected behavior?
postgres=# SET gp_add_partition_inherits_table_setting = on;
SET
postgres=# CREATE TABLE ao_alter_add_part(a int, b int) WITH (appendonly=true, orientation=row, compresstype=zstd, compresslevel=4, blocksize=65536) DISTRIBUTED BY (a) PARTITION BY RANGE (b)
  (PARTITION "10" START (1) INCLUSIVE END (10) EXCLUSIVE,
   PARTITION "20" START (11) INCLUSIVE END (20) EXCLUSIVE);
NOTICE:  CREATE TABLE will create partition "ao_alter_add_part_1_prt_10" for table "ao_alter_add_part"
NOTICE:  CREATE TABLE will create partition "ao_alter_add_part_1_prt_20" for table "ao_alter_add_part"
CREATE TABLE
postgres=# ALTER TABLE ao_alter_add_part ADD PARTITION "60" START (50) INCLUSIVE END (60) EXCLUSIVE WITH (appendonly=true);
NOTICE:  CREATE TABLE will create partition "ao_alter_add_part_1_prt_60" for table "ao_alter_add_part"
ALTER TABLE
postgres=# \dS+ ao_alter_add_part_1_prt_60
        Append-Only Table "public.ao_alter_add_part_1_prt_60"
 Column |  Type   | Modifiers | Storage | Stats target | Description
--------+---------+-----------+---------+--------------+-------------
 a      | integer |           | plain   |              |
 b      | integer |           | plain   |              |
Compression Type: None
Compression Level: 0
Block Size: 32768
Checksum: t
Check constraints:
    "ao_alter_add_part_1_prt_60_check" CHECK (b >= 50 AND b < 60)
Inherits: ao_alter_add_part
Distributed by: (a)
Options: appendonly=true

postgres=#

in this case, inheritance didn't happen. is this the expected behavior?

it seems as bug...

in this case, inheritance didn't happen. is this the expected behavior?

it seems as bug...

fixed

Allure report https://allure-ee.adsw.io/launch/58082

Failed job Resource group isolation tests on x86_64: https://gitlab.adsw.io/arenadata/github_mirroring/gpdb/-/jobs/772089

Failed job Resource group isolation tests on ppc64le: https://gitlab.adsw.io/arenadata/github_mirroring/gpdb/-/jobs/772090

Allure report https://allure-ee.adsw.io/launch/58090

Failed job Resource group isolation tests on x86_64: https://gitlab.adsw.io/arenadata/github_mirroring/gpdb/-/jobs/773449

Failed job Resource group isolation tests on ppc64le: https://gitlab.adsw.io/arenadata/github_mirroring/gpdb/-/jobs/773450

Failed job Regression tests with ORCA on x86_64: https://gitlab.adsw.io/arenadata/github_mirroring/gpdb/-/jobs/773443

don't you think that the same thing is repeated three times in the description of PR? maybe it can be written in another way?

done

you don't write in the documentation and description that the checksum option is inherited, although in fact it is also inherited.

added

Allure report https://allure-ee.adsw.io/launch/58133

Failed job Resource group isolation tests on x86_64: https://gitlab.adsw.io/arenadata/github_mirroring/gpdb/-/jobs/775753

Failed job Resource group isolation tests on ppc64le: https://gitlab.adsw.io/arenadata/github_mirroring/gpdb/-/jobs/775754

Failed job Regression tests with Postgres on x86_64: https://gitlab.adsw.io/arenadata/github_mirroring/gpdb/-/jobs/775745

Failed job Regression tests with ORCA on x86_64: https://gitlab.adsw.io/arenadata/github_mirroring/gpdb/-/jobs/775747

Allure report https://allure-ee.adsw.io/launch/62825

Failed job Resource group isolation tests on x86_64: https://gitlab.adsw.io/arenadata/github_mirroring/gpdb/-/jobs/1011591

Failed job Resource group isolation tests on ppc64le: https://gitlab.adsw.io/arenadata/github_mirroring/gpdb/-/jobs/1011592

ABI test fails due to
Problems with Symbols, Medium Severity  1
guc_tables.h, postgres

[−] ConfigureNamesBool_gp [data]  1

| Change | Effect
-- | -- | --
1 | Size of this global data has been changed from 38152 bytes to 38304 bytes. | Applications will obtain a different value and execution may change.

ConfigureNamesBool_gp should not be used by extensions and should be in a file with ignored symbols. But it looks like this file is being searched in the adb-6.x branch and not in adb-6.x-dev.

Allure report https://allure.adsw.io/launch/82049

Allure report https://allure.adsw.io/launch/82060

Allure report https://allure.adsw.io/launch/82461

Allure report https://allure.adsw.io/launch/82489

Allure report https://allure.adsw.io/launch/82502

Allure report https://allure.adsw.io/launch/82520

Allure report https://allure.adsw.io/launch/82918

My version of the current PR description
New GUC to inherit storage options with ALTER TABLE ADD PARTITION

Add the gp_add_partition_inherits_table_setting GUC. Its default value is false.
When the GUC is set to true, the ALTER TABLE ADD PARTITION query will add new
partitions with storage options (appendonly, orientation, compresstype,
compresslevel, blocksize and checksum) inherited from the parent table (unless
these options are explicitly specified in the DDL or subpartition template).

Andrey Savitskiy says that this task is only about AO tables. It should be added to the PR description, code and docs.

Andrey Savitskiy says that this task is only about AO tables. It should be added to the PR description, code and docs.

I added an additional check.

Allure report https://allure.adsw.io/launch/82969

Allure report https://allure.adsw.io/launch/83019

Allure report https://allure.adsw.io/launch/83047

bender build

Allure report https://allure.adsw.io/launch/83263

Allure report https://allure.adsw.io/launch/83532

Allure report https://allure.adsw.io/launch/84210

Allure report https://allure.adsw.io/launch/84214

Allure report https://allure.adsw.io/launch/84218

Allure report https://allure.adsw.io/launch/84227

Allure report https://allure.adsw.io/launch/84235


Add video by @AmitXShukla

Link to suggestion
https://www.youtube.com/watch?v=ivJSk6JLWBQ
Targeted section
Talks and videos
Describe your suggestion

How to update mass data using Polars DataFrame ⏳ 9 min - A video that presents the process of writing code to update mass columns across CSV or data files by @AmitXShukla. Notebook used for the video in this github repo.

Checklist

[X] checked if your suggestion is not already listed in Awesome Polars list.
[X] checked if it can fit in an existed section or suggest a new section and explain why your item does not fit into one and what would be the interest of your new section.
[X] checked when it's a repository if it's maintained (archived repository will be rejected).

@AmitXShukla your video has been added to the Awesome Polars list!


(maint) Re-enable Azure PRs on 6.3.x branch

Undoes #2861 / 39f6bbbd467d0970140a7cddcdf9d42ebdb64d06 which disabled
builds on this branch.
Not sure why we did that at the time, but since we're still shiping
2019.1.2 off of 6.3 and other PRs have targeted the 6.3 branch,
let's turn Azure back on for pull requests

CLA signed by all contributors.

Additionally verified that this will merge up cleanly to master.
Merging!


Add delegate to know if users draw something or not

Dear Firends,
Could you add the delegate to check users have already drawn in the screen or not.
Thanks,
Diego

Will look at this.

Thanks,
it would be nice.


Document profile(s) used to build examples

Problem

Steps

Visit Profiles page in the Cargo Book
Search for the word "example"
Observe there is no detail regarding the profiles used to build examples.

Possible Solution(s)

Add details to the effect:

cargo build --example x will be --debug by default.
Pass the --release option if you need the release profile used.
Document whether examples can be built under any of the other profiles?

Notes
Output of cargo version:
$ cargo --version
cargo 1.56.0-nightly (cc17afbb0 2021-08-02)

@rustbot claim


Add Fmt.{invalid_arg,failwith}

Raising the corresponding exceptions.
val Fmt.failwith : ('a, Format.formatter, unit, unit) format4 -> 'a
val Fmt.invalid_arg : ('a, Format.formatter, unit, unit) format4 -> 'a

I'd love to have this in Fmt! If you're not working on it would you accept a PR? Implementation-wise, is using Fmt.kstrf the right approach?

Yes and please do. You can add them in their own section after this one. I'd suggest  {1:fmt_exns Formatting exceptions} as a section title.


Fix issue with node 16 and experimental fetch

No longer necessary - Node 18 is supported now by github actions