DEBUG 2019-04-24T06:28:01Z: habitat_depot_client: Body: "{"channels":["unstable","stable"],"checksum":"0dc8ea65541a53296b8e2ea5ad44156ff4b7ad64d1b43c59428240af440790f4","config":"","created_at":"2019-02-15T02:26:32.456809","deps":[{"name":"glibc","origin":"core","release":"20190115002733","version":"2.27"},{"name":"libxau","origin":"core","release":"20190115155357","version":"1.0.8"},{"name":"libxcb","origin":"core","release":"20190115155652","version":"1.12"},{"name":"libxdmcp","origin":"core","release":"20190115155645","version":"1.1.2"}],"exposes":[],"id":"1182218281717710848","ident":{"name":"xlib","origin":"core","release":"20190115155744","version":"1.6.5"},"ident_array":["core","xlib","1.6.5","20190115155744"],"is_a_service":false,"manifest":"# core / xlib\nX11 protocol client library\n\n* Maintainer: The Habitat Maintainers<EMAIL_ADDRESS>Version: 1.6.5\n* Release:<PHONE_NUMBER>5744\n* Target: x86_64-linux\n* Upstream URL: https://www.x.org/\n* License: MIT \n* Source: https://www.x.org/releases/individual/lib/libX11-1.6.5.tar.bz2\n* SHA: 4d3890db2ba225ba8c55ca63c6409c1ebb078a2806de59fb16342768ae63435d\n* Path: /hab/pkgs/core/xlib/1.6.5/20190115155744\n* Build Dependencies: core/diffutils core/file core/gcc core/inputproto core/kbproto core/libpthread-stubs core/make core/perl core/pkg-config core/util-macros core/xextproto core/xproto core/xtrans \n* Dependencies: core/glibc core/libxau core/libxcb core/libxdmcp \n* Interpreters: no interpreters or undefined\n\n# Plan\n\n## Build Flags\n\nbash\\nCFLAGS: -I/hab/pkgs/core/glibc/2.27/20190115002733/include -I/hab/pkgs/core/libxau/1.0.8/20190115155357/include -I/hab/pkgs/core/libxcb/1.12/20190115155652/include -I/hab/pkgs/core/libxdmcp/1.1.2/20190115155645/include -I/hab/pkgs/core/file/5.34/20190115003731/include -I/hab/pkgs/core/gcc/8.2.0/20190115004042/include -I/hab/pkgs/core/inputproto/2.3.2/20190115155741/include -I/hab/pkgs/core/kbproto/1.0.7/20190115155737/include -I/hab/pkgs/core/make/4.2.1/20190115013626/include -I/hab/pkgs/core/xextproto/7.3.0/20190115154203/include -I/hab/pkgs/core/xproto/7.0.31/20190115154221/include -I/hab/pkgs/core/xtrans/1.3.5/20190115155307/include\\nCPPFLAGS: -I/hab/pkgs/core/glibc/2.27/20190115002733/include -I/hab/pkgs/core/libxau/1.0.8/20190115155357/include -I/hab/pkgs/core/libxcb/1.12/20190115155652/include -I/hab/pkgs/core/libxdmcp/1.1.2/20190115155645/include -I/hab/pkgs/core/file/5.34/20190115003731/include -I/hab/pkgs/core/gcc/8.2.0/20190115004042/include -I/hab/pkgs/core/inputproto/2.3.2/20190115155741/include -I/hab/pkgs/core/kbproto/1.0.7/20190115155737/include -I/hab/pkgs/core/make/4.2.1/20190115013626/include -I/hab/pkgs/core/xextproto/7.3.0/20190115154203/include -I/hab/pkgs/core/xproto/7.0.31/20190115154221/include -I/hab/pkgs/core/xtrans/1.3.5/20190115155307/include\\nCXXFLAGS: -I/hab/pkgs/core/glibc/2.27/20190115002733/include -I/hab/pkgs/core/libxau/1.0.8/20190115155357/include -I/hab/pkgs/core/libxcb/1.12/20190115155652/include -I/hab/pkgs/core/libxdmcp/1.1.2/20190115155645/include -I/hab/pkgs/core/file/5.34/20190115003731/include -I/hab/pkgs/core/gcc/8.2.0/20190115004042/include -I/hab/pkgs/core/inputproto/2.3.2/20190115155741/include -I/hab/pkgs/core/kbproto/1.0.7/20190115155737/include -I/hab/pkgs/core/make/4.2.1/20190115013626/include -I/hab/pkgs/core/xextproto/7.3.0/20190115154203/include -I/hab/pkgs/core/xproto/7.0.31/20190115154221/include -I/hab/pkgs/core/xtrans/1.3.5/20190115155307/include\\nLDFLAGS: -L/hab/pkgs/core/glibc/2.27/20190115002733/lib -L/hab/pkgs/core/libxau/1.0.8/20190115155357/lib -L/hab/pkgs/core/libxcb/1.12/20190115155652/lib -L/hab/pkgs/core/libxdmcp/1.1.2/20190115155645/lib -L/hab/pkgs/core/file/5.34/20190115003731/lib -L/hab/pkgs/core/gcc/8.2.0/20190115004042/lib -L/hab/pkgs/core/libpthread-stubs/0.4/20190115155413/lib -L/hab/pkgs/core/perl/5.28.0/20190115013014/lib\\nLD_RUN_PATH: /hab/pkgs/core/xlib/1.6.5/20190115155744/lib:/hab/pkgs/core/glibc/2.27/20190115002733/lib:/hab/pkgs/core/libxau/1.0.8/20190115155357/lib:/hab/pkgs/core/libxcb/1.12/20190115155652/lib:/hab/pkgs/core/libxdmcp/1.1.2/20190115155645/lib\\n\n\n## Plan Source\n\nbash\\npkg_name=xlib\\npkg_distname=libX11\\npkg_origin=core\\npkg_version=1.6.5\\npkg_maintainer=\\\"The Habitat Maintainers<EMAIL_ADDRESS>protocol client library\\\"\\npkg_upstream_url=\\\"https://www.x.org/\\\"\\npkg_license=(\'MIT\')\\npkg_source=\\\"https://www.x.org/releases/individual/lib/${pkg_distname}-${pkg_version}.tar.bz2\\\"\\npkg_shasum=\\\"4d3890db2ba225ba8c55ca63c6409c1ebb078a2806de59fb16342768ae63435d\\\"\\npkg_dirname=\\\"${pkg_distname}-${pkg_version}\\\"\\npkg_deps=(\\n  core/glibc\\n  core/libxau\\n  core/libxcb\\n  core/libxdmcp\\n)\\npkg_build_deps=(\\n  core/diffutils\\n  core/file\\n  core/gcc\\n  core/inputproto\\n  core/kbproto\\n  core/libpthread-stubs\\n  core/make\\n  core/perl\\n  core/pkg-config\\n  core/util-macros\\n  core/xextproto\\n  core/xproto\\n  core/xtrans\\n)\\npkg_include_dirs=(include)\\npkg_lib_dirs=(lib)\\npkg_pconfig_dirs=(lib/pkgconfig)\\n\\ndo_prepare() {\\n  if [[ ! -r /usr/bin/file ]]; then\\n    ln -sv \\\"$(pkg_path_for file)/bin/file\\\" /usr/bin/file\\n    _clean_file=true\\n  fi\\n}\\ndo_check() {\\n    make check\\n}\\n\\ndo_end() {\\n  if [[ -n \\\"$_clean_file\\\" ]]; then\\n    rm -fv /usr/bin/file\\n  fi\\n}\\n","name":"xlib","origin":"core","owner_id":"1009766780387729524","target":"x86_64-linux","tdeps":[{"name":"glibc","origin":"core","release":"20190115002733","version":"2.27"},{"name":"libxau","origin":"core","release":"20190115155357","version":"1.0.8"},{"name":"libxcb","origin":"core","release":"20190115155652","version":"1.12"},{"name":"libxdmcp","origin":"core","release":"20190115155645","version":"1.1.2"},{"name":"linux-headers","origin":"core","release":"20190115002705","version":"4.17.12"}],"updated_at":"2019-02-15T02:26:32.456809","visibility":"public"}"
â†’ Using existing core/xlib/1.6.5/20190115155744
DEBUG 2019-04-24T06:28:01Z: habitat_http_client::api_client: GET https://builder.ncrsaas.com/v1/depot/pkgs/core/zlib/1.2.11/20190115003728?target=x86_64-linux with ApiClient { endpoint: "https://builder.ncrsaas.com/v1", inner: Client { redirect_policy: FollowAll, read_timeout: Some(Duration { secs: 120, nanos: 0 }), write_timeout: Some(Duration { secs: 120, nanos: 0 }), proxy: None }, proxy: None, target_scheme: "https", user_agent_header: UserAgent("hab/0.57.0/20180614230004 (x86_64-linux; 3.10.0-514.el7.x86_64)") }
DEBUG 2019-04-24T06:28:01Z: hyper::http::h1: request line: Get "/v1/depot/pkgs/core/zlib/1.2.11/20190115003728?target=x86_64-linux" Http11
DEBUG 2019-04-24T06:28:01Z: hyper::http::h1: headers=Headers { Host: builder.ncrsaas.com
, User-Agent: hab/0.57.0/20180614230004 (x86_64-linux; 3.10.0-514.el7.x86_64)
, Authorization: Bearer ****
, }
DEBUG 2019-04-24T06:28:01Z: hyper::client::response: version=Http11, status=Ok
DEBUG 2019-04-24T06:28:01Z: hyper::client::response: headers=Headers { Cache-Control: public, max-age=31536000
, Content-Type: application/json
, Vary: Accept-Encoding
, Server: nginx/1.15.6
, X-Frame-Options: SAMEORIGIN
, X-Content-Type-Options: nosniff
, X-XSS-Protection: 1; mode=block
, Alternate-Protocol: 443:npn-spdy/3
, X-UA-Compatible: IE=Edge
, Strict-Transport-Security: max-age=31536000; includeSubDomains;
, Date: Wed, 24 Apr 2019 06:28:07 GMT
, Content-Length: 4403
, }
DEBUG 2019-04-24T06:28:01Z: habitat_depot_client: Body: "{"channels":["unstable","stable"],"checksum":"99b7f8fe874421e12394311bf53d025e1d2f9516c9941c3d8030bcd363209e7a","config":"","created_at":"2019-02-15T02:27:10.859247","deps":[{"name":"glibc","origin":"core","release":"20190115002733","version":"2.27"}],"exposes":[],"id":"1182218603857199104","ident":{"name":"zlib","origin":"core","release":"20190115003728","version":"1.2.11"},"ident_array":["core","zlib","1.2.11","20190115003728"],"is_a_service":false,"manifest":"# core / zlib\nCompression library implementing the deflate compression method found in gzip and PKZIP.\n\n* Maintainer: The Habitat Maintainers<EMAIL_ADDRESS>Version: 1.2.11\n* Release:<PHONE_NUMBER>3728\n* Target: x86_64-linux\n* Upstream URL: http://www.zlib.net/\n* License: zlib \n* Source: http://zlib.net/zlib-1.2.11.tar.gz\n* SHA: c3e5e9fdd5004dcb542feda5ee4f0ff0744628baf8ed2dd5d66f8ca1197cb1a1\n* Path: /hab/pkgs/core/zlib/1.2.11/20190115003728\n* Build Dependencies: core/coreutils core/diffutils core/patch core/make core/gcc \n* Dependencies: core/glibc \n* Interpreters: no interpreters or undefined\n\n# Plan\n\n## Build Flags\n\nbash\\nCFLAGS: -I/hab/pkgs/core/glibc/2.27/20190115002733/include -I/hab/pkgs/core/make/4.2.1/20190114224500/include -I/hab/pkgs/core/gcc/8.2.0/20190114215008/include\\nCPPFLAGS: -I/hab/pkgs/core/glibc/2.27/20190115002733/include -I/hab/pkgs/core/make/4.2.1/20190114224500/include -I/hab/pkgs/core/gcc/8.2.0/20190114215008/include\\nCXXFLAGS: -I/hab/pkgs/core/glibc/2.27/20190115002733/include -I/hab/pkgs/core/make/4.2.1/20190114224500/include -I/hab/pkgs/core/gcc/8.2.0/20190114215008/include\\nLDFLAGS: -L/hab/pkgs/core/glibc/2.27/20190115002733/lib -L/hab/pkgs/core/gcc/8.2.0/20190114215008/lib -Wl,-rpath=/hab/pkgs/core/zlib/1.2.11/20190115003728/lib:/hab/pkgs/core/glibc/2.27/20190115002733/lib,--enable-new-dtags -Wl,--dynamic-linker=/hab/pkgs/core/glibc/2.27/20190115002733/lib/ld-linux-x86-64.so.2\\nLD_RUN_PATH: /hab/pkgs/core/zlib/1.2.11/20190115003728/lib:/hab/pkgs/core/glibc/2.27/20190115002733/lib\\n\n\n## Plan Source\n\nbash\\npkg_name=zlib\\n_distname=\\\"$pkg_name\\\"\\npkg_origin=core\\npkg_version=1.2.11\\npkg_maintainer=\\\"The Habitat Maintainers<EMAIL_ADDRESS>library implementing the deflate compression method found in gzip \\\\\\nand PKZIP.\\\\\\n\\\"\\npkg_upstream_url=\\\"http://www.zlib.net/\\\"\\npkg_license=(\'zlib\')\\npkg_source=\\\"http://zlib.net/${_distname}-${pkg_version}.tar.gz\\\"\\npkg_shasum=\\\"c3e5e9fdd5004dcb542feda5ee4f0ff0744628baf8ed2dd5d66f8ca1197cb1a1\\\"\\npkg_dirname=\\\"${_distname}-${pkg_version}\\\"\\npkg_deps=(\\n  core/glibc\\n)\\npkg_build_deps=(\\n  core/coreutils\\n  core/diffutils\\n  core/patch\\n  core/make\\n  core/gcc\\n)\\npkg_include_dirs=(include)\\npkg_lib_dirs=(lib)\\npkg_pconfig_dirs=(lib/pkgconfig)\\n\\ndo_prepare() {\\n  do_default_prepare\\n\\n  # Add explicit linker instructions as the binutils we are using may have its\\n  # own dynamic linker defaults. This is necessary because this Plan is built\\n  # before the `binutils` Plan which will set the new `glibc` dynamic\\n  # linker for all later Plans.\\n  dynamic_linker=\\\"$(pkg_path_for glibc)/lib/ld-linux-x86-64.so.2\\\"\\n  LDFLAGS=\\\"$LDFLAGS -Wl,-rpath=${LD_RUN_PATH},--enable-new-dtags\\\"\\n  LDFLAGS=\\\"$LDFLAGS -Wl,--dynamic-linker=$dynamic_linker\\\"\\n  export LDFLAGS\\n  build_line \\\"Updating LDFLAGS=$LDFLAGS\\\"\\n}\\n\\n\\n# ----------------------------------------------------------------------------\\n# **NOTICE:** What follows are implementation details required for building a\\n# first-pass, \\\"stage1\\\" toolchain and environment. It is only used when running\\n# in a \\\"stage1\\\" Studio and can be safely ignored by almost everyone. Having\\n# said that, it performs a vital bootstrapping process and cannot be removed or\\n# significantly altered. Thank you!\\n# ----------------------------------------------------------------------------\\nif [[ \\\"$STUDIO_TYPE\\\" = \\\"stage1\\\" ]]; then\\n  pkg_build_deps=()\\nfi\\n","name":"zlib","origin":"core","owner_id":"1009766780387729524","target":"x86_64-linux","tdeps":[{"name":"glibc","origin":"core","release":"20190115002733","version":"2.27"},{"name":"linux-headers","origin":"core","release":"20190115002705","version":"4.17.12"}],"updated_at":"2019-02-15T02:27:10.859247","visibility":"public"}"
â†’ Using existing core/zlib/1.2.11/20190115003728
â†‘ Uploading ./results/ams-rewards-7.4.0-SNAPSHOT-20190424062249-x86_64-linux.hart
DEBUG 2019-04-24T06:28:02Z: habitat_depot_client: Reading from ./results/ams-rewards-7.4.0-SNAPSHOT-20190424062249-x86_64-linux.hart
DEBUG 2019-04-24T06:28:02Z: habitat_http_client::api_client: POST https://builder.ncrsaas.com/v1/depot/pkgs/ams/rewards/7.4.0-SNAPSHOT/20190424062249?checksum=5f05ed73a4f19548a69afa773e141ca4eaf011c6e10564bbcf7f4747a1837b17 with ApiClient { endpoint: "https://builder.ncrsaas.com/v1", inner: Client { redirect_policy: FollowAll, read_timeout: Some(Duration { secs: 120, nanos: 0 }), write_timeout: Some(Duration { secs: 120, nanos: 0 }), proxy: None }, proxy: None, target_scheme: "https", user_agent_header: UserAgent("hab/0.57.0/20180614230004 (x86_64-linux; 3.10.0-514.el7.x86_64)") }
DEBUG 2019-04-24T06:28:02Z: hyper::http::h1: request line: Post "/v1/depot/pkgs/ams/rewards/7.4.0-SNAPSHOT/20190424062249?checksum=5f05ed73a4f19548a69afa773e141ca4eaf011c6e10564bbcf7f4747a1837b17" Http11
DEBUG 2019-04-24T06:28:02Z: hyper::http::h1: headers=Headers { Host: builder.ncrsaas.com
, User-Agent: hab/0.57.0/20180614230004 (x86_64-linux; 3.10.0-514.el7.x86_64)
, Authorization: Bearer ****
, Content-Length: 46541448
, }
DEBUG 2019-04-24T06:28:45Z: hyper::client::response: version=Http11, status=BadGateway
DEBUG 2019-04-24T06:28:45Z: hyper::client::response: headers=Headers { Content-Type: text/html
, Server: Microsoft-IIS/10.0
, Date: Wed, 24 Apr 2019 06:28:51 GMT
, Content-Length: 1477
, }
â†‘ Uploading ./results/ams-rewards-7.4.0-SNAPSHOT-20190424062249-x86_64-linux.hart
DEBUG 2019-04-24T06:28:49Z: habitat_depot_client: Reading from ./results/ams-rewards-7.4.0-SNAPSHOT-20190424062249-x86_64-linux.hart
DEBUG 2019-04-24T06:28:49Z: habitat_http_client::api_client: POST https://builder.ncrsaas.com/v1/depot/pkgs/ams/rewards/7.4.0-SNAPSHOT/20190424062249?checksum=5f05ed73a4f19548a69afa773e141ca4eaf011c6e10564bbcf7f4747a1837b17 with ApiClient { endpoint: "https://builder.ncrsaas.com/v1", inner: Client { redirect_policy: FollowAll, read_timeout: Some(Duration { secs: 120, nanos: 0 }), write_timeout: Some(Duration { secs: 120, nanos: 0 }), proxy: None }, proxy: None, target_scheme: "https", user_agent_header: UserAgent("hab/0.57.0/20180614230004 (x86_64-linux; 3.10.0-514.el7.x86_64)") }
DEBUG 2019-04-24T06:28:49Z: hyper::http::h1: request line: Post "/v1/depot/pkgs/ams/rewards/7.4.0-SNAPSHOT/20190424062249?checksum=5f05ed73a4f19548a69afa773e141ca4eaf011c6e10564bbcf7f4747a1837b17" Http11
DEBUG 2019-04-24T06:28:49Z: hyper::http::h1: headers=Headers { Host: builder.ncrsaas.com
, User-Agent: hab/0.57.0/20180614230004 (x86_64-linux; 3.10.0-514.el7.x86_64)
, Authorization: Bearer ****
, Content-Length: 46541448
, }
DEBUG 2019-04-24T06:29:01Z: hyper::client::response: version=Http11, status=Conflict
DEBUG 2019-04-24T06:29:01Z: hyper::client::response: headers=Headers { Server: nginx/1.15.6
, Date: Wed, 24 Apr 2019 06:29:07 GMT
, Content-Length: 0
, }
Package already exists on remote; skipping.
âœ“ Uploaded ams/rewards/7.4.0-SNAPSHOT/20190424062249
â˜… Upload of ams/rewards/7.4.0-SNAPSHOT/20190424062249 complete.

Thanks @muralivishnu ... it's interesting that you are able to see the packages from 'hab pkg search' - that means they are actually in the depot. Could you also try installing one of the latest packages that you uploaded via 'hab pkg install' to see if installs correctly?  It may be that the issue is only on the web UI.
Also it also looks like you are on hab 0.57 on the client side.
I also see a Bad Gateway response during the upload which may indicate potentially a proxy or other network issue.
DEBUG 2019-04-24T06:28:02Z: hyper::http::h1: headers=Headers { Host: builder.ncrsaas.com
, User-Agent: hab/0.57.0/20180614230004 (x86_64-linux; 3.10.0-514.el7.x86_64)
, Authorization: Bearer ****
, Content-Length: 46541448
, }
DEBUG 2019-04-24T06:28:45Z: hyper::client::response: version=Http11, status=BadGateway

It would be great to also get the server side info, like @eeyun suggested.
Could you please run a 'hab svc status' on your depot server and give us the output?
Also are these private packages?  It looks from your UI that you were not logged into the Depot.  Could you log in, and try to view the packages again on the UI?
Thanks

public packages, but in a private depot in a restricted network

We did in fact find the cause of the problem you're seeing. Between the version of builder you were running before your upgrade and the new version of builder there were a whole lot of changes to builder's data layer and one of those changes was adding a package version validation to the backend. That commit can be found here: https://github.com/habitat-sh/builder/commit/7d043bce5525b8f149c5bd1a19d9f8933d628015#diff-e4eb7c5b0df79823667f0af307054405
This is a postgres builtin function for validating data types as being legitimate semver values. Based on the output examples we received it's a reasonable guess that packages with versions like this: '7.2.1-SIT_270718-SNAPSHOT' are likely causing that database call to fail. If I had to guess I would put my money on the _ being the character irritating the postgres builtin. The good news is this function is only leveraged by API route calls to this endpoint /depot/pkgs/{origin}/{pkg}/versions which means that only the front end (and potentially some CLI calls) are impacted here. I know this is a lot of information but that means  your package builds, graphing, promotions, all package related operations, are all still fully operational and safe, the front-end is just not displaying these packages due to the backend database call failing on that semver validation.
What this means: There are a couple considerations here. The quickest way to get unblocked will be to remove the packages with bad versions from the database and package store. This will get your database calls to stop failing and for the rest of the package versions to be exposed in the UI again. However, it would appear that we might not currently be enforcing any package version constraints on upload or build as package versions are largely treated as arbitrary strings. Thus, if you are to upload packages with these types of versions again, you will again start to see these failures. The ultimate fix will require the hab team to make a determination about version validation on upload and for us to include that functionality in a new release of builder.
We will bring this up to the team and have a determination ASAP

We have since this report updated our version sorting logic to account for these non-standard version numbers. Closing for now. If this problem is still occurring on the current version of builder services please feel free to reopen.


Clean up getting Boolean values

Update getString to take minimum/maximum length
One more course id clean up at 2508

Jay,

foo = getBoolean("xxx", i)
foo = getBoolean("xxx", sys.argv[i])

How is 2 less dependent on the position of the arguments?

Gives the user a much better message is case of an error

$ gam user testuser1 vacation
ERROR: Expected value on|yes|enabled|true|1 or off|no|disabled|false|0 for
gam  vacation

This tells the user nothing

$ gam user testuser1 vacation
GAM 4.32 - https://git.io/gam
Jay Lee<EMAIL_ADDRESS>Python 2.7.14 64-bit final
google-api-python-client 1.6.4
oauth2client 4.1.2
Darwin-15.6.0-x86_64-i386-64bit x86_64
Path: /Users/admin/Documents/GoogleApps/GAM
Usage: gam [OPTIONS]...
GAM. Retrieve or set G Suite domain,
user, group and alias settings. Exhaustive list of commands
can be found at: https://github.com/jay0lee/GAM/wiki
Examples:
gam info domain
gam create user jsmith firstname John lastname Smith password secretpass
gam update user jsmith suspended on
gam.exe update group announcements add member jsmith
...
Ross
On Mon, Oct 23, 2017 at 7:26 AM, Jay Lee<EMAIL_ADDRESS>wrote:

@jay0lee commented on this pull request.
In src/gam.py
https://github.com/jay0lee/GAM/pull/625#discussion_r146282291:

@@ -151,11 +151,32 @@ def csvFieldErrorExit(fieldName, fieldNames):
def printLine(message):
sys.stdout.write(message+u'\n')

+def getBoolean(item, i):
Please don't pass i around like this, it's only going to make cleaning up
our sys.argv usage much harder one day. Instead just pass the necessary
sys.argv values as needed. That way calling the function doesn't depend on
position of arguments.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/jay0lee/GAM/pull/625#pullrequestreview-71201064, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AIU8LxtgCqc4f-FxgdUXFaGNs6kiAjRRks5svKITgaJpZM4QAB1w
.

--
Ross Scroggs
<EMAIL_ADDRESS>

Jay,
I don't understand your concern. "That way calling the function doesn't
depend on position of arguments."
Old Style:
Fixed position:
def doVacation(users):
if sys.argv[4].lower() in true_values:
enable = True

elif sys.argv[4].lower() in false_values:
enable = False

else:
print u'ERROR: value for "gam <users> vacation" must be true or false;

got %s' % sys.argv[4]
sys.exit(2)

Variable position:
elif myarg == u'admin':

  if sys.argv[i+1].lower() in true_values:

    admin_body[u'status'] = True

  elif sys.argv[i+1].lower() in false_values:

    admin_body[u'status'] = False

  else:

    print u'ERROR: admin must be on or off; got %s' % sys.argv[i+1]

    sys.exit(2)

  i += 2

My Style:
Fixed position:
def doVacation(users):
enable = getBoolean(u'gam  vacation', 4)
Variable position:
elif myarg == u'admin':

  admin_body[u'status'] = getBoolean(myarg, i+1)

  i += 2

Your Suggested Style:
Fixed position:
def doVacation(users):
enable = getBoolean(u'gam  vacation', sys.argv[4])
Variable position:
elif myarg == u'admin':

  admin_body[u'status'] = getBoolean(myarg, sys.argv[i+1])

  i += 2

The calling function has always defined the order of the arguments for the
fixed position arguments as in doVacation; I'm not changing that.
If we want enable to be in sys.argv[5] instead of sys.argv[4] in
doVacation, everyone has to change 4 to 5.
For the variable position arguments, nothing has changed; myarg is in
sys.argv[i], the value is in sys.argv[i+1].
Passing i to the routine instead of sys.argv[i] let's you give the user a
better message when value is omitted.
Ross
On Mon, Oct 23, 2017 at 7:40 AM, Ross Scroggs<EMAIL_ADDRESS>wrote:

Jay,

foo = getBoolean("xxx", i)
foo = getBoolean("xxx", sys.argv[i])

How is 2 less dependent on the position of the arguments?

Gives the user a much better message is case of an error

$ gam user testuser1 vacation
ERROR: Expected value on|yes|enabled|true|1 or off|no|disabled|false|0 for
gam  vacation

This tells the user nothing

$ gam user testuser1 vacation
GAM 4.32 - https://git.io/gam
Jay Lee<EMAIL_ADDRESS>Python 2.7.14 64-bit final
google-api-python-client 1.6.4
oauth2client 4.1.2
Darwin-15.6.0-x86_64-i386-64bit x86_64
Path: /Users/admin/Documents/GoogleApps/GAM
Usage: gam [OPTIONS]...
GAM. Retrieve or set G Suite domain,
user, group and alias settings. Exhaustive list of commands
can be found at: https://github.com/jay0lee/GAM/wiki
Examples:
gam info domain
gam create user jsmith firstname John lastname Smith password secretpass
gam update user jsmith suspended on
gam.exe update group announcements add member jsmith
...
Ross
On Mon, Oct 23, 2017 at 7:26 AM, Jay Lee<EMAIL_ADDRESS>wrote:

@jay0lee commented on this pull request.
In src/gam.py
https://github.com/jay0lee/GAM/pull/625#discussion_r146282291:

@@ -151,11 +151,32 @@ def csvFieldErrorExit(fieldName, fieldNames):
def printLine(message):
sys.stdout.write(message+u'\n')

+def getBoolean(item, i):
Please don't pass i around like this, it's only going to make cleaning up
our sys.argv usage much harder one day. Instead just pass the necessary
sys.argv values as needed. That way calling the function doesn't depend on
position of arguments.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/jay0lee/GAM/pull/625#pullrequestreview-71201064, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AIU8LxtgCqc4f-FxgdUXFaGNs6kiAjRRks5svKITgaJpZM4QAB1w
.

--
Ross Scroggs
<EMAIL_ADDRESS>
--
Ross Scroggs
<EMAIL_ADDRESS>

Jay,
I don't understand your concern. "That way calling the function doesn't
depend on position of arguments."
Old Style:
Fixed position:
def doVacation(users):
  if sys.argv[4].lower() in true_values:
    enable = True
  elif sys.argv[4].lower() in false_values:
    enable = False
  else:
    print u'ERROR: value for "gam <users> vacation" must be true or false;
got %s' % sys.argv[4]
    sys.exit(2)

Variable position:
elif myarg == u'admin':
  if sys.argv[i+1].lower() in true_values:
    admin_body[u'status'] = True
  elif sys.argv[i+1].lower() in false_values:
    admin_body[u'status'] = False
  else:
    print u'ERROR: admin must be on or off; got %s' % sys.argv[i+1]
    sys.exit(2)
  i += 2

My Style:
Fixed position:
def doVacation(users):
  enable = getBoolean(u'gam <users> vacation', 4)

Variable position:
    elif myarg == u'admin':
      admin_body[u'status'] = getBoolean(myarg, i+1)
      i += 2

Your Suggested Style:
Fixed position:
def doVacation(users):
  enable = getBoolean(u'gam <users> vacation', sys.argv[4])

Variable position:
    elif myarg == u'admin':
      admin_body[u'status'] = getBoolean(myarg, sys.argv[i+1])
      i += 2

The calling function has always defined the order of the arguments for the
fixed position arguments as in doVacation; I'm not changing that.
If we want enable to be in sys.argv[5] instead of sys.argv[4] in
doVacation, everyone has to change 4 to 5.
For the variable position arguments, nothing has changed; myarg is in
sys.argv[i], the value is in sys.argv[i+1].
Passing i to the routine instead of sys.argv[i] let's you give the user a
better message when value is omitted.
Ross

Jay,
Any thoughts on proceeding?
Ross

Jay,
After five weeks when no response to my comments, I'll close this out.
Ross


Support loading and runtime update of X509 certificate chains for TLS

Jabba needs to support loading and runtime update of X509 certificate chains, containing SSL cert, intermediate certs and certificate authority details. It would be good to support at least one way to update these without having to restart the server i.e. by pushing a config update.

How should we support loading of TLS certs?
Embed cert inside yml config
Allow the user to paste the certificate directly into the json/yml config to be loaded during bootstrap. Config is currently loaded from disk but may also be applied via configuration endpoint at runtime.
Pros

It's easy to build
You don't have to specify any external paths

Cons

Not docker friendly
Mixing cert. with other config options.
Security only as good as config file permissions

Load  separately from disk
This is what Nginx does.
Pros

It's easy to build
You can specify the path in the config file.

Cons

Not docker friendly
Security only as good as file permissions

Integrate with Hashicorp Vault
Access the certificate from a local or remote Hashicorp vault instance. https://www.vaultproject.io/
Pros

Secured by Vault's encryption

Cons

bundles Jabba with Vault

ACME client(RFC8555) i.e. letsencrypt
Access and renew the certificate from an ACME compatible provider such as letsencrypt.
Pros

ACME supports auto-renewal
Docker friendly

Cons

relies on multi-step process, may require admin UI.

we'll start implementing this with a simple embed cert, key in configuration file implementation


Choose between GH or Vercel as host

While investigating why https://github.com/hackclub/blot/pull/210 succeeded its tests and the main branch failed, I realized that https://github.com/hackclub/blot/blob/56f405d58af1d7e9c94fa9ae8492e41011d18db7/.github/workflows/astro.yml deploys to GH pages, but our site is hosted by Vercel's automated deploys. This means we currently have a broken GH CI, but haven't noticed because builds deploy successfully to Vercel.
Should we...

Stick with Vercel and delete the astro.yml build script? OR
Turn off Vercel autodeploy, fix the astro.yml, and update DNS to point to GH pages?

Let's stick with vercel. Can you point me at the astro build script?

Yeah! Seems like you can just delete this file and everything should be good to go for vercel's build


Thread - In offline mode, clicking on reply thread directs to page keeps on loading

If you haven’t already, check out our contributing guidelines for onboarding and email<EMAIL_ADDRESS>to request to join our Slack channel!

Issue found when executing PR https://github.com/Expensify/App/pull/26602
Action Performed:

Go to https://staging.new.expensify.com/
Tao on any admin room
Send a message
Long press the message sent, to open reply in thread
Send a message
Turn off mobile data
Tap on header profile icon
Tap Leave thread
Open the thread again from main report by tapping on " reply" thread

Expected Result:
In offline, tapping on reply thread must direct to not found page
Actual Result:
In offline, tapping on reply thread directs to page which keeps on loading showing "U" profile icon on header
Workaround:
Unknown
Platforms:

Which of our officially supported platforms is this issue occurring on?

[x] Android / native
[x] Android / Chrome
[x] iOS / native
[x] iOS / Safari
[x] Windows / Chrome
[x] MacOS / Desktop

Version Number: 1.3.71-5
Reproducible in staging?: Yes
Reproducible in production?: No
If this was caught during regression testing, add the test name, ID and link from TestRail:
Email or phone of affected tester (no customers):
Logs: https://stackoverflow.com/c/expensify/questions/4856
Notes/Photos/Videos: Any additional supporting documentation
https://github.com/Expensify/App/assets/78819774/dce32faa-bf8e-429f-a1be-9cee8f89f49a
https://github.com/Expensify/App/assets/78819774/058554de-912f-4f13-a81d-d24cb7a2b1b8
Expensify/Expensify Issue URL:
Issue reported by: Applause - Internal Team
Slack conversation:
View all open jobs on GitHub

:wave: Friendly reminder that deploy blockers are time-sensitive ⏱ issues! Check out the open StagingDeployCash deploy checklist to see the list of PRs included in this release, then work quickly to do one of the following:

Identify the pull request that introduced this issue and revert it.
Find someone who can quickly fix the issue.
Fix the issue yourself.

So even though the user left the thread. Once they click on the thread again they should be able to get access to it. So while offline showing Page not found is not correct IMO.
The functionality should be the same as clicking into a new thread when offline which currently shows the report loader. So in this issue, if on staging we're showing a report loader then IMO that's good and consistent with regular threads so closing out this deploy blocker.
If i have misunderstood anything feel free to correct me.


Fix rdstls write data

It is possible to send an empty REDIRECTION_GUID, this PR allows it.
Also, the configured password was got wrongly as a pointer so it wasn't used to authenticate.

pushed the commits to #8780 except the disputed rdstls_write_data one. closing this.


Pulsating Iron sheetmetal not craftable

Using 1.1.0
Pulsating iron sheetmetal not craftable as far as I can tell.
It is required to make Soot-covered Machine Frame and thus blocks progress to Mob Agonizer.

Thanks, I'll see if I can get a quick patch out for it

Fixed in 1.1.1, but I'll leave it open for a bit just incase someone else has the same issue


Breadcrumb spacing; add css loader; homepage lists

To use some spacing classes, I had to pull in a css file. To do that, I had to add a css loader.

I’m sure I can get that set up with vscode. I’ll try that tomorrow.
Absolutely we want to avoid the custom html. We are pushing the edge so
what we needed wasn’t there yet. I’m going to be putting in issues on PF4.
And probably getting assigned some 😜
On Tue, Apr 9, 2019 at 5:38 PM Tiago Bento<EMAIL_ADDRESS>wrote:

@tiagobento approved this pull request.
Thanks again for the PR, @srambach https://github.com/srambach. Just a
minor thing I think we forgot to setup on your environment.. VSCode has its
own code formatting rules, but we're using Prettier, which is a very
opinionated code formatter.
I'm sure there's a way to configure it on VSCode, but I'm afraid I can't
be of much help now since I'm using WebStorm 😝 .
Can you try and configure so we don't have these formatting issues like on
Space.tsx?
In packages/web/src/Space.tsx
https://github.com/tiagobento/appformer-js/pull/7#discussion_r273713652:

@@ -133,7 +134,7 @@ export function Space(props: { match: match<{ space: string }> }) {

     </PatternFlyPopup>

   )}

 <PageSection variant={PageSectionVariants.light}>

 <div className="pf-c-page__main-nav">

Will there be a React component for this div?
In packages/web/src/Spaces.tsx
https://github.com/tiagobento/appformer-js/pull/7#discussion_r273714103:

     <Breadcrumb>

       <BreadcrumbItem>

         <Link to={routes.spaces()}>Spaces</Link>

       </BreadcrumbItem>

     </Breadcrumb>

 </div>

 <PageSection variant={PageSectionVariants.light} className="pf-u-pt-sm">

Same question here.. With the React components PatternFly 4 provides,
seems odd that we need to "manually" add classes every now and then.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/tiagobento/appformer-js/pull/7#pullrequestreview-224666449,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AS6D0Itx_4ccl5UJa03GjC6uxKBuOKK3ks5vfQg7gaJpZM4clpWC
.

@srambach Merged. It's nice to see we're pushing PF4 :)


New README

Added new README file and NGINX logo file, referenced in README

@mtbChef the nginx logo added by PR is in png format. It can be substituted with an svg nginx logo, that is available and is significantly smaller. Also, the logo looks bad on white background -  "NGINX" is invisible. The svg that I have has the same problem with black background though.

Squashed.

Images resources are only useful in practice when viewing README.md on the GitHub web site.
Otherwise, adding these new files just pollutes nginx source code repo.
As such, I propose to store images elsewhere.

Added commit to make it clear what I mean, committed separately for review purposes.


Changes to load model state in checkpoint connector in case of multiple workers

What does this PR do?
Proposed solution to  #<#8043>
Before submitting

[x] Was this discussed/approved via a GitHub issue? (not for typos and docs)
[x] Did you read the contributor guideline, Pull Request section?
[x] Did you make sure your PR does only one thing, instead of bundling different changes together?
[ ] Did you make sure to update the documentation with your changes? (if necessary)
[ ] Did you write any new necessary tests? (not for typos and docs)
[ ] Did you verify new and existing tests pass locally with your changes?
[ ] Did you update the CHANGELOG? (not for typos, docs, test updates, or internal minor changes/refactorings)

PR review
Anyone in the community is free to review the PR once the tests have passed.
Before you start reviewing make sure you have read Review guidelines. In short, see the following bullet-list:

[ ] Is this pull request ready for review? (if not, please submit in draft mode)
[ ] Check that all items from Before submitting are resolved
[ ] Make sure the title is self-explanatory and the description concisely explains the PR
[ ] Add labels and milestones (and optionally projects) to the PR so it can be classified

Did you have fun?
Make sure you had fun coding 🙃

Hello @mleshen! Thanks for opening this PR.

In the file pytorch_lightning/trainer/connectors/checkpoint_connector.py:

Line 167:121: E501 line too long (130 > 120 characters)
Line 175:5: E303 too many blank lines (2)

Do see the Hitchhiker's guide to code style


fix: test 6

Description
fix: test 6

💚 All backports created successfully

Status
Branch
Result

✅
release/v0.54

Questions ?
Please refer to the Backport tool documentation and see the Github Action logs for details


Multiple Files Uploading

When we upload several files, we have observed a weird behavior : some of them are not listed ("disappear") as shown in the video :

(click to open the video in a new window)

CamaleonCms uses this jquery plugin. When uploading multiple files the plugin starts one request per file concurrently. So your webserver sees NR_OF_IMAGES requests at the same time. I could not track down exactly what goes wrong. There is a lot going on when uploading a file (database, imagemagick...). I'm going to look into it.
A temporary solution is to tell the plugin to upload the files sequentially. Then it works. Add these two lines
sequential: true,
sequentialCount: 1,

to the plugin's option parameter

I just uploaded 18 files (running Cama locally). My whole laptop literally freezes and top shows all my cpus running at 100%. I get a
ActiveRecord::ConnectionTimeoutError - could not obtain a connection from the pool within 5.000 seconds (waited 20.077 seconds); all pooled connections were in use
So I guess my proposed solution is the way to go. I'm going to do a pull request.

Can be closed now


Allow running in bash on mac

This violates ShellChecks SC2006 imparative.
If $(...) command substitution does not work in an environment, we might be better served by resolving the environment instead of degrading the quality of the shell script.
For instance, MacOS has the tendency to ship older (outdated) versions of BASH (v3 or even v2).
This issue might be resolved by updating the used bash version.


Is there an option to hide internal endpoints?

Is there currently an option to hide endpoints marked as internal using x-internal?

no there is none at the moment

Planning to support it in the future?
Guess there's a ticket being discussed for an official spec but does not look like there will be anything out of it.

We've made a separate apidoc (/apidoc vs /apidoc/internal) to handle our internal endpoints. Managed to do this with custom decorators and hooks, to filter the schema.
Perhaps this can guide you to a "fix"


Update Controller Framework

Motivation
To solve some problems of testing work as a reference to issue 52, we did a lot of work to refactor the current framework of controller module and make up the testing code.
Changes
All the changes begin from testing. To make the code easier for testing, we added a lot of interfaces for mocking the data in some use cases.
Next-step

More testing code
Redesign a stronger framework for better scaling out
Fix some bugs

@leonwanghui , the pr looks like to be all refactored and cannot be compared with previours code, and it's reviewed hardly. Is there a problem with your git configuration?.

@wisererik I have rebased it to #57, plz check it out.


renamed old Github urls in README

Seems like we missed to change a few URLs. Thanks to URL redirecting from Github it's not critical.
PS: I thought you said I'd be able to push small things directly to main without a review. This is not possible with my current rights. I'm fine with PRs, but wanted you to know this.

Ah thanks, I missed these.

PS: I thought you said I'd be able to push small things directly to main without a review. This is not possible with my current rights. I'm fine with PRs, but wanted you to know this.

Hm, sorry about that - you should be able to. I think this is due to a branch protection rule which didn't affect me as admin but does as the team is write. I've moved the team to the maintain role - I think that should fix this issue.


create stream: Fix widget for changing privacy doesn't render initially.

When admin user create new private stream, widget for changing privacy
of stream doesn't render. Because we render subscription-settings
template partially on subscription-add event, so this case wasn't
handled.
Fixes #9469

Looks great, merged, thanks @YJDave!


Problem with loading music

Hi @katspaugh, I have such problem when I try to load 15 wav files(around 50mbs each) our multitrack load it successfully
On mount:

but when I play multitrack, I got a lot of lags and interruptions.  In network console I get it every second

Can you say how to solve it. whose problem is it, ours or the multitrack's?

Seems to be a server issue on your side. Make sure the files are served with the correct MIME type, e.g. audio/mp3.

But we use s3 bucket for getting songs, you can test by yourself https://demo-studios-stage-bucket.s3.eu-north-1.amazonaws.com/1234/clr6h6vkv0000nven7iy4l6rm/r8y88k1n61/aivcr44dxp/1/stem_X6x9dbMOyjUvZ17rSuqQM

on the 8th files it work great but after 10 and more it lugs and multitrack does not play any sound

Try to use local files and after 8-9 files it has the same issue. Why it has such behaviour?

Perhaps some browser limits. Multitrack itself will try to play whatever you throw at it.
You could try passing backend: 'WebAudio' to each of the track options, maybe that helps.

Didn't help, also noticed that when we change tab of browser, it start to work excellent but if i return it start lagging again

Oh, then it must be requestAnimationFrame and all the rendering updates.

how we can fix it or mb turn off it

because when i try to load 30 tracks i think it will die : (

Can you create 15 tracks using my url or using your own wav (50mb or more) by yourself to test it pls

I can't sorry, unless it's sponsored.

what it takes to become a sponsor?

You can check the options here: https://github.com/sponsors/katspaugh?frequency=one-time&sponsor=katspaugh

so for fix this problem as I understand we need to choose this option

simply I don't understand, because we needn't implementing wavesurfer, just need to solve this bug

That would be a sufficient motivation for me to look into this, yes. I cannot guarantee that it'll work though, 15-30 simultaneously playing 50-megabyte files is by definition very resource-intensive, especially for the browser.

Got it


nestjs/passport

I get the error below when I try to start up the server, anyone have an idea what might cause it? This was after I have installed it via CLI
TypeError: Class extends value undefined is not a constructor or null
at PassportStrategy (C:\Projects\Official work\NestJS - APIs - Copy\access-point-apis\node_modules@nestjs\passport\dist\passport\passport.strategy.js:15:33)
at Object. (C:\Projects\Official work\NestJS - APIs - Copy\access-point-apis\src\auth\azure-ad.strategy.ts:8:54)
at Module._compile (node:internal/modules/cjs/loader:1254:14)
at Object.Module._extensions..js (node:internal/modules/cjs/loader:1308:10)
at Module.load (node:internal/modules/cjs/loader:1117:32)
at Function.Module._load (node:internal/modules/cjs/loader:958:12)
at Module.require (node:internal/modules/cjs/loader:1141:19)
at require (node:internal/modules/cjs/helpers:110:18)
at Object. (C:\Projects\Official work\NestJS - APIs - Copy\access-point-apis\src\auth\auth.module.ts:3:1)
at Module._compile (node:internal/modules/cjs/loader:1254:14)

Can you provide the code and some more context


Added cleanup of tempfiles in case of ftp-get failure.

Description

The get command of RemoteTarget ftp class leaves an empty tmp files if not successful.
This change catches the error, removes the tempfile and then raises the original errors again.
Motivation and Context

Luigi is meant to run often, a repeating failure could lead to many temp-files being created on disk for no good reason. This has happened for me from time to time due to configurations errors or missing ftp-files.
Have you tested this? If so, how?

I have edited the ftp test case to run with Python 3, then added a test case for this. I have tested to "fail" a download on both FTP and SFTP.

Note that I was unable to run the original test as the test expected a file to exist "/tmp/luigi-test-ftp" when the instructions ask us to add this folder. I have to change this to use a file inside that folder instead. Then the test-case ran successfully.

Could a tempfile.NamedTemporaryFile be used instead of re-implementing it?

The tests are hardcoding /tmp and should probably use tempfile.gettempdir().


Include complete examples

It would be beneficial for beginner users to have a complete running example programs, preferably in English.

Hey skrat, thank you for your suggestion !
Actually, you can find samples in the test file
please let me know if this can guide you !

I'm Gonna close this as I think the test files provide for usage samples.
Please feel free to file another issue if you're still in need of examples !


Disable scroll but allow tap on item

@kizitonwose I'm stuck with the following situacion...
On one hand I need to disable the horizontal scrolling on the calendar as shown on here: https://github.com/kizitonwose/CalendarView/issues/13 and do it programatically.
But at the same time I need to be able to tap/click on days of the calendar (by setting a click listener on the DayViewContainer view):
view.setOnClickListener(new View.OnClickListener()...
The problem is that by disabling the scroll I'm intercepting the Action.MOVE used by the taps as well, therefore onInterceptTouchEvent is swallowing the event, hence not allowing it to reach the defined view click listener.
So to sum up I need to disable the swiping of the calendar but allowing taps of each of days of the calendar...
Any suggestion?
Thanks in advance,
Federico

Clicks are not detected using Action.MOVE event. I disabled scroll in example 5 in the sample app and clicks are still received. See the screen recording below:

@kizitonwose I tried the same on my end by adding:
            override fun onInterceptTouchEvent(rv: RecyclerView, e: MotionEvent): Boolean {
                return if (e.action == MotionEvent.ACTION_MOVE) {
                    true
                } else {
                    super.onInterceptTouchEvent(rv, e)
                }
            }
        })

to the example you mentioned but I got the same result... I can't tap on a day...
I tried using a Motorola One with Android Pie.

That's very strange. Can you test with a different phone?
Also, do you have any other click listeners attached on any part of the calendar? Example, month header or footer?
Sadly, this is a problem with RecyclerView itself, not this library so I may not be able to help much.

@kizitonwose unfortunately it also happens on Samsung devices but it's strange because it does works on other like Xiaomi. :/

Currently waiting to get a Samsung device to test with.

I finally got my hands on a Samsung device and can confirm that the suggested workaround does not work on the device.
However, after further testing, there's another workaround which works on Samsung devices as well as other devices which I tested on:
calendarView.addOnItemTouchListener(object : RecyclerView.SimpleOnItemTouchListener() {
    override fun onInterceptTouchEvent(rv: RecyclerView, e: MotionEvent): Boolean {
        return rv.scrollState == RecyclerView.SCROLL_STATE_DRAGGING
    }
})

For reference purposes, here are other things I tried and how they turned out.
calendarView.setOnTouchListener { _, event ->
    event.action == MotionEvent.ACTION_MOVE
}

The above workaround allows an initial scroll action on the calendar before taking effect which is rather weird.
Another option is to extend the CalenderView class and override the dispatchTouchEvent method.
override fun dispatchTouchEvent(ev: MotionEvent): Boolean {
    return if (ev.action == MotionEvent.ACTION_MOVE) true else super.dispatchTouchEvent(ev)
}

This gives the desired result but after a swipe action, while the calendar does not move, a touch event is registered at the position where the swipe gesture started, hence the date cell at that position receives a click event.

Closing this issue as there's now a solution. If you need any further assistance, let me know.


added int64/uint64 tests

Codecov Report

Merging #23 (42f6bd8) into main (1f414db) will increase coverage by 5.19%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##             main      #23      +/-   ##
==========================================
+ Coverage   53.20%   58.39%   +5.19%
==========================================
  Files           6        6
  Lines         671      673       +2
  Branches      128      130       +2
==========================================
+ Hits          357      393      +36
+ Misses        255      221      -34
  Partials       59       59

Impacted Files
Coverage Δ

src/cmd_line_options.cpp
56.12% <0.00%> (+4.79%)
:arrow_up:

example/option_test.cpp
72.72% <0.00%> (+13.63%)
:arrow_up:


USD basis Curves support

Looking for USD support for USD basis Curve import. Similar to Alembic curves for hair, I am looking to import USD basis curves and add a hair/fur renderer to create hair instead of importing alembic curve data.  Adding USD curve data import would be great.

I'd like to +1 this feature request, this would really help bringing character grooms into Unity.

@mrb302 @pkanyuk how would you want this to work exactly?
Can you provide more details and a test file so we can be sure it's working correctly?

Would be ideal if the import of USD curves would be similair to alembic curves import. Currently, we are using Alembic curves and attaching a hair/fur renderer to create hair in Unity. Would like Unity to read in USDA curve information so we can attach the hair/fur renderer.
Attached is a simple USDA file with exported hair curves from blender.
message.txt This text file contains an example of the USDA curve data.
blenderhair_test.zip USDA file with hair ball test example.

Screenshot of the example.

Example of curves in Maya

Example in Unity with hair renderer.
Let me know if you need any more info or have trouble with the test scene.

Omniverse just added USD curve support for hair.

Wow, thanks for the heads up on Omniverse!  Just checked it out, the embedded Storm renderer in Omniverse Create does draw curves correctly, but their "RTX Real Time" renderer doesn't seem to understand deforming curves (see the attached video).  That said, props to Omniverse for getting blendshape support working and at least starting to tackle curves.
https://user-images.githubusercontent.com/2173195/161413955-58633667-ca61-4711-b7bb-205a972fb0f6.mov

Awesome, thanks for all the details! I have an internal thread started about this.

Hey! We've moved this feature request to our Roadmap for better internal visibility. If you head over to the Roadmap you can add more detail about your use case (on the 'USD Import ticket') for this feature to help us prioritize as we hope to be able to work on this in the future :)


Conflicts while pulling localisation updates.

Summary:
Normally we never experience conflicts after pulling localization updates. Because we never edit someLanguage/string.xml files manually. But this time I experienced some conflicts, it comes from latest update.
@Nikerabbit do you have any theory about reason of this situation?
Steps to reproduce:
Pull latest updates and merge them to your branch
Screen shoots

@neslihanturan Is this issue still happening?

Don't think this is still happening - I can't reproduce and as there's been no more updates on this going to assume it kinda sorted itself. If it does reappear can always reopen.


MAINT: stats: define two-sided p-value as twice the minimum of one-sided p-values

Reference issue
gh-13899
What does this implement/fix?
There are several reasonable definitions of a two-sided p-value for asymmetric distributions. Although the theoretical t-distribution is symmetric, the null distribution of a random permutation t-test is asymmetric, so the definition affects the p-value. Per @jb-leger's comment in gh-13899, this changes the definition to "twice the minimum of the two-sided p-values". It also adds the definition to the documentation.
Ultimately, when gh-13899 is merged, we can add other definitions, but this is a more reasonable default because it is meaningful even for distributions that are theoretically asymmetric.

@jb-leger does this look good to you?

@tupui do you have an opinion about the default definition for a two-sided p-value when the null distribution can be asymmetric? I would like to add other options in the future, but does twice the minimum of the one-sided p-values sound like a good default?

TBH I don't know. If there is still time for this I can read up tomorrow to make an opinion.

That's OK if you don't have time, @tupui. I thought you might already have an opinion. Thanks for taking a look at the other things.
@rlucas7 you made a comment about the definition of the two-sided statistic in the original PR. The problem with this definition (and what I had originally) is that it is not appropriate for distributions that are theoretically asymmetric. I would like to add more general permutation tests in the next release (e.g. gh-13899). With that in mind, I think we should use a definition that makes sense in all cases. Even though the distribution here is theoretically symmetric, the random permutation null distribution is not, so to avoid slight numerical differences from version to version, I think we should change this before release.

@jb-leger do you have a moment to comment here on your preference for this definition of a two-sided p-value? I think it will help another maintainer review and merge this. If you have any references that indicated that this convention is suggested for permutation tests or used by other software, it would be helpful. I will also look for references/existing software that use this.

@jb-leger actually, I'm not sure if we want to change the default behavior. The suggestion in Efron's Introduction to the Bootstrap (pg 212, Chapter 15: Permutation Tests) is:

This seems to be what is implemented in mlextend:

It's on page 3 of these lecture notes:

and slide 26 of these:

The Wikipedia page on resampling:

It seems reasonable, then, that the existing behavior should be maintained for the permutation t-test, and we can offer a few options in permutation_test.
There does seem to be some support for using twice the one-sided p-value:
Here page 11, eqn 1.7
Here page 8, paired test
But it doesn't seem to be as common.


Support Vuetify

How to use this with Vuetify controls specially  v-text-field?

Very simple implementation:
https://gist.github.com/meyt/e05d70c05b4c232bf49f5abd644dc577

https://github.com/scleriot/vue-inputmask/issues/6#issuecomment-389458116

@Mirkadoi Thanks :)


fix(rule): img-has-alt - img must have an alt attribute

closes #100
Since the new error/warn message does not state about presentation, removed the corresponding code.

Coverage increased (+0.02%) to 99.316% when pulling dab237e527b497024ea40a50026d88631e92cd86 on sarbbottam:fix/img-has-alt into 489da177647e8246270eb0faa0c1690d2280d998 on evcohen:master.

Coverage increased (+0.02%) to 99.316% when pulling dab237e527b497024ea40a50026d88631e92cd86 on sarbbottam:fix/img-has-alt into 489da177647e8246270eb0faa0c1690d2280d998 on evcohen:master.

Coverage increased (+0.02%) to 99.316% when pulling dab237e527b497024ea40a50026d88631e92cd86 on sarbbottam:fix/img-has-alt into 489da177647e8246270eb0faa0c1690d2280d998 on evcohen:master.

Coverage increased (+0.02%) to 99.316% when pulling e35f9a6a4db2470e4613936e0e80765b0f862e1e on sarbbottam:fix/img-has-alt into 489da177647e8246270eb0faa0c1690d2280d998 on evcohen:master.

I think this is fair - maybe one thing we can do is add a eslint fix for this to remove role="presentation" and replace with alt="" if it doesn't already exist.
will hold off on merging until schema breaking change gets in and we can release a major.

Just merged in updated schema rules which introduced breaking changes. Let me know when you've updated so I can publish all breaking changes in one release 🚀

Coverage decreased (-0.007%) to 99.238% when pulling 8ec30a39cc3f0c9ea751cddf4c1d96647d60deef on sarbbottam:fix/img-has-alt into 4ecae6a55b2c8aa4d0b901f962970f7650d49383 on evcohen:master.

I am not familiar w/ auto-fixing, any pointer to a reference code?

Coverage increased (+0.001%) to 99.247% when pulling 193f7ec16f4c0d132e83c50d130833be19470547 on sarbbottam:fix/img-has-alt into 4ecae6a55b2c8aa4d0b901f962970f7650d49383 on evcohen:master.

@ljharb could you take another look?

we can do a fast follow with the auto-fix. Not sure how to do it either so will take a look and we can collaborate on it

@evcohen sure.


error: react-toolbox-themr with "LAYOUT"

ERROR
Uncaught TypeError: undefined is not a function themr.js:113
(anonymous function) themr.js:113
getNamespacedTheme themr.js:112
getTheme themr.js:132
calcTheme
Procedure

run "react-toolbox-themr"
configure LAYOUT in package.json

{
  "reactToolbox": {
    "include": [
      "BUTTON",
      "MENU",
      "LAYOUT",
      "INPUT",
      "DRAWER"
    ],
    "customProperties": {
      "animation-duration": "0.3s",
      "color-accent": "var(--palette-pink-a200)",
      "color-accent-dark": "var(--palette-pink-700)",
      "color-primary-contrast": "var(--color-dark-contrast)",
      "color-accent-contrast": "var(--color-dark-contrast)"
    },
    "output": "assets/react-toolbox"
  },

  "name": "VexplorerUIWeb",
  "version": "0.1.0",
  "private": true,
  "devDependencies": {
    "react-scripts": "0.8.5"
  },
  "dependencies": {
    "react": "^15.4.2",
    "react-dom": "^15.4.2",
    "react-redux": "^5.0.2",
    "react-style-proptype": "^2.0.0",
    "react-toolbox": "2.0.0-beta.6",
    "react-toolbox-themr": "^1.0.2",
    "redux": "^3.6.0",
    "redux-thunk": "^2.2.0"
  },
  "scripts": {
    "start": "react-scripts start",
    "build": "react-scripts build",
    "test": "react-scripts test --env=jsdom",
    "toolbox": "react-toolbox-themr",
    "eject": "react-scripts eject"
  }
}

the id "LAYOUT" causes the error.
Also i copied the complete Layout-Example from  the Demo Page:
render() {
        return (
            <Layout>
                <NavDrawer active={this.props.navigation.drawerActive}
                           pinned={this.props.navigation.pinned} permanentAt='xxxl'
                           onOverlayClick={ this.toggleDrawerActive }>

                        Navigation, account switcher, etc. go here.

                </NavDrawer>
                <Panel>
                    <AppBar leftIcon='menu' onLeftIconClick={ this.toggleDrawerActive } />

Main Content

Main content goes here.

                </Panel>
                <Sidebar pinned={ this.props.navigation.sidebarPinned } width={ 5 }>

<IconButton icon='close' onClick={ this.toggleSidebar }/>

Supplemental content goes here.

                </Sidebar>
            </Layout>
        );
    }
}

the menu button is not visible instead i see the label "MENU"
events are not triggered after click on "close" and "menu" button

Were you able to figure this out?  I think I'm running into the same issue.  I'm not sure if it's an issue with the Layout component, or the generated css or js

unfortunately not.
But you could be right. Maybe it is an issue with react-toolbox.

Gotta check it out, will try tomorrow!

is there any update on this? I have the same issue using "react-toolbox": "^2.0.0-beta.12"


CONTRIBUTING: fix broken links

Description
Cleans up a few broken links in CONTRIBUTING.md.

Well..this was embarrassing, I completely missed it 😅
Thank you a lot! 😀


Updated api-site-config.md text to clarify a default action.

Added a clarification to the cleanUrl property to set it false if the users intend to use docusaurus only offline.

Motivation
Clarify specific use cases issues.
Have you read the Contributing Guidelines on pull requests?
Yes.
Test Plan
Just text.

Updated and signed the CLA.


How to use Tensorflow Hub Model?

GOAL to use a pre trained model from a TensorFlow example project more specifically Tensorflow hub

To do that am trying to install tensorflow_hub with the following command: conda install -c conda-forge tensorflow-hub
conda list  OUTPUT: .... tensorflow-hub            0.12.0             pyhca92ed8_0    conda-forge  ....
To a sagemenaker EC2 instance's anaconda environment.
The whole installation process runs thru without any error, but when I am trying to import the package it act like it is not installed import tensorflow_hub as hub
ERROR

---------------------------------------------------------------------------
ModuleNotFoundError                       Traceback (most recent call last)
<ipython-input-14-5c017171c13e> in <module>
----> 1 import tensorflow_hub as hub

ModuleNotFoundError: No module named 'tensorflow_hub'

after many error it is installed with conda install -c conda-forge tensorflow-hub
but downgraded tf to 1.4 and it don't want to allow me to upgrade it to tf +2

I have manually downloaded the model and uploaded to the ec2 but I don't know how to load it in and use it

Adding with pip tensorflow_hub
https://stackoverflow.com/a/43729857/10270590

1. Run `conda create -n venv_name` and `source activate venv_name`, where `venv_name` is the name of your virtual environment.

2. Run `conda install pip`. This will install pip to your venv directory.

3. Find your anaconda directory, and find the actual venv folder. It should be somewhere like `/anaconda/envs/venv_name/`.

4. Install new packages by doing `/anaconda/envs/venv_name/bin/pip install package_name`.

OUTPUT
(tf2p37) ubuntu@ip:~/anaconda3/envs/tf2p37/bin$ pip install --upgrade tensorflow-hub
Requirement already satisfied: tensorflow-hub in /home/ubuntu/anaconda3/envs/tf2p37/lib/python3.7/site-packages (0.12.0)
Requirement already satisfied: protobuf>=3.8.0 in /home/ubuntu/anaconda3/envs/tf2p37/lib/python3.7/site-packages (from tensorflow-hub) (3.15.2)
Requirement already satisfied: numpy>=1.12.0 in /home/ubuntu/anaconda3/envs/tf2p37/lib/python3.7/site-packages (from tensorflow-hub) (1.19.5)
Requirement already satisfied: six>=1.9 in /home/ubuntu/anaconda3/envs/tf2p37/lib/python3.7/site-packages (from protobuf>=3.8.0->tensorflow-hub) (1.15.0)

it is ther but it still don't want to get imported when I execute : import tensorflow_hub as hub

@stromal ,
1)Could you please try installing(then importing) the latest versions of tensorflow2.x and tensorflow-hub in a fresh anaconda virtual environment after opening a new notebook in sagemaker(newly created kernel) using the commands below:-
a)!pip install --upgrade tensorflow
b)!pip install --upgrade tensorflow_hub
c)import tensorflow as tf
d)import tensorflow_hub as hub

2)for loading the model through hub, please use:
hub_model = hub.load('https://tfhub.dev/google/magenta/arbitrary-image-stylization-v1-256/2')

Closing this since it appears like the author asked the same question on SO and accepted an answer there.


KubeCon EU 2024

Need to become member of Cloud Native Computing Foundation to get 8k level sponsorship.
Otherwise lowest sponsorship tier is 28k
Reviewing options
https://docs.google.com/forms/d/e/1FAIpQLSd4djPpUNfABmv65fw1Vp21U4OsQO8zkTp3roTfg625D0Jy_g/viewform

Sponsorship paid

Working on:

Akash Insider Travel
Booth design

Complete

Travel and lodging

Next up

Booth Graphics being finalized
PR requests
Swag

No updates this week.

Ordering Swag Items and Insider Shirts

Done:

Booth graphic ordered
Community reimbursments - Thx @heyhewi

Next up:

Swag Items

Press Content (big news from Akash) - Due March 8th
Lead retrevials devices confirmed
Swag ordered? - @aktdenis

Need to get swag ordered

Tshirts and stickers ordered
need handouts swag ordered ASAP
Creating flyer handouts and "job board" flyer (join the insiders)


perf: nexmark q4/q7 become slower and slower

The throughput goes down from ~100K rows/s to ~3k rows/s. Still investigating.

Previously I suspected it was caused by incresing join state, but it's not. Interestingly, the aggregation cached key becomes lower. This is unreasonable because the aggregations (including a append-only max) should be all constant-sized

To some extent, it makes sense because we first do join and then agg in Q4.
Since it does not necessarily match anything in join for agg to do next, cache is occupied by join "disproportionately". 🤔

I took a look at nexmark q4. It seems it could be optimized by GroupJoin which can merge the Agg state and Join state. I can do some research on GroupJoin if it is helpful for this case.
SELECT
        Q.category,
        AVG(Q.final) as avg
    FROM (
        SELECT MAX(B.price) AS final, A.category
        FROM auction A, bid B
        WHERE A.id = B.auction AND B.date_time BETWEEN A.date_time AND A.expires
        GROUP BY A.id, A.category
    ) Q
    GROUP BY Q.category;

I guess the problem is in Q7, not Q4. Because Q7 contains such a join condition:
https://github.com/risingwavelabs/risingwave/blob/77534a93a3d01fd8f42e174118d330b8c7a7f8c6/e2e_test/streaming/nexmark/views/q7.slt.part#L19-L22
This seems to be inefficient without interval join (https://github.com/risingwavelabs/rfcs/pull/32).
I'll do futher investigate and post results here later.

I guess the problem is in Q7, not Q4. Because Q7 contains such a join condition:
https://github.com/risingwavelabs/risingwave/blob/77534a93a3d01fd8f42e174118d330b8c7a7f8c6/e2e_test/streaming/nexmark/views/q7.slt.part#L19-L22
This seems to be inefficient without interval join (risingwavelabs/rfcs#32).
I'll do futher investigate and post results here later.

Yes, q7 looks like a perfect case for interval/band join.

I ran the Q4 and everything looks fine.

So the problem is in Q7 as mentioned in https://github.com/risingwavelabs/risingwave/issues/7244#issuecomment-1373722875. I'll close this issue now. @chenzl25 Please help to check Q7 after interval/band join is completed.

Well let's leave it for tracking that 🤣

please allow me to clarify first that I am just giving an optimization method for the special case in the Nexmark q7 and I think the interval/band join is required anyhow.
Let's take a look at the q7's SQL again.
SELECT
    B.auction,
    B.price,
    B.bidder,
    B.date_time
from
    bid B
    JOIN (
        SELECT
            MAX(price) AS maxprice,
            window_end as date_time
        FROM
            TUMBLE(bid, date_time, INTERVAL '10' SECOND)
        GROUP BY
            window_end
    ) B1 ON B.price = B1.maxprice
WHERE
    B.date_time BETWEEN B1.date_time - INTERVAL '10' SECOND
    AND B1.date_time;

And we can find that the SQL writer just racks his brains to get the records that have the highest bid price in each tumble window. So we can easily express it as a GroupTopN query.
    SELECT
      B.auction,
      B.price,
      B.bidder,
      B.date_time
    FROM (
      SELECT
        auction,
        price,
        bidder,
        date_time,
        /*use rank here to express top-N with ties*/
        rank() over (partition by window_end order by price desc) as price_rank
      FROM
        TUMBLE(bid, date_time, INTERVAL '10' SECOND)
    ) B
    WHERE price_rank <=1;

And the plan looks much better
    StreamMaterialize { columns: [auction, price, bidder, date_time, bid._row_id(hidden)], pk_columns: [bid._row_id] }
    └─StreamExchange { dist: HashShard(bid._row_id) }
      └─StreamProject { exprs: [bid.auction, bid.price, bid.bidder, bid.date_time, bid._row_id] }
        └─StreamGroupTopN { order: "[bid.price DESC]", limit: 1, offset: 0, group_key: [9], with_ties: true }
          └─StreamExchange { dist: HashShard((TumbleStart(bid.date_time, '00:00:10':Interval) + '00:00:10':Interval)) }
            └─StreamProject { exprs: [bid.auction, bid.bidder, bid.price, bid.channel, bid.url, bid.date_time, bid.extra, bid._row_id, TumbleStart(bid.date_time, '00:00:10':Interval), (TumbleStart(bid.date_time, '00:00:10':Interval) + '00:00:10':Interval)] }
              └─StreamTableScan { table: bid, columns: [bid.auction, bid.bidder, bid.price, bid.channel, bid.url, bid.date_time, bid.extra, bid._row_id], pk: [bid._row_id], dist: UpstreamHashShard(bid._row_id) }

I think the two queries are equivalent and check the batch query with our e2e test data. It gives the correct result.
But unfortunately, when I try to process it the Stream group topN panic https://github.com/risingwavelabs/risingwave/issues/7276.
Are they equivalent? I know it is a little hard but can we rewrite the pattern to the group topn in optimizer?  :thinking:
c.c. @chenzl25 @fuyufjh @liurenjie1024

Are they equivalent? I know it is a little tricky but can we rewrite the pattern to the group topn in optimizer?

I think these two queries are equivalent, but it seems not general enough and a little bit hard to rewrite this query. Let's see the performance comparison. If the performance improvement is large enough we can try to implement this rewrite rule.

FYI, the execution plan in Flink:
Calc(select=[auction, price, bidder, date_time])
+- Join(joinType=[InnerJoin], where=[((price = maxprice) AND (date_time >= (date_time0 - 10000:INTERVAL SECOND)) AND (date_time <= date_time0))], select=[auction, bidder, price, date_time, maxprice, date_time0], leftInputSpec=[NoUniqueKey], rightInputSpec=[HasUniqueKey])
   :- Exchange(distribution=[hash[price]])
   :  +- Calc(select=[auction, bidder, price, CAST(date_time AS TIMESTAMP(3)) AS date_time])
   :     +- TableSourceScan(table=[[bz_table_store_catalog, default, bid, project=[auction, bidder, price, date_time], watermark=[-(date_time, 20000:INTERVAL SECOND)]]], fields=[auction, bidder, price, date_time])
   +- Exchange(distribution=[hash[maxprice]])
      +- Calc(select=[maxprice, date_time])
         +- GroupAggregate(groupBy=[date_time], select=[date_time, MAX(price) AS maxprice])
            +- Exchange(distribution=[hash[date_time]])
               +- Calc(select=[window_end AS date_time, price])
                  +- WindowTableFunction(window=[TUMBLE(time_col=[date_time], size=[10 s])])
                     +- TableSourceScan(table=[[bz_table_store_catalog, default, bid, project=[price, date_time], watermark=[-(date_time, 20000:INTERVAL SECOND)]]], fields=[price, date_time])

Seems no magic other than interval joins. 🥵

Yes, they are equal, but if we want to compare performance with flink, I think we should run both rewritten query with two engines.

cc: @st1page http://risingwave-perf-test-dashboard-metabase.us-west-2.elasticbeanstalk.com/dashboard/63-nexmark-history-avg-source-output-rows-per-second-medium-1cn

FYI, the execution plan in Flink:

== Optimized Physical Plan ==
Calc(select=[auction, price, bidder, dateTime, extra])
+- IntervalJoin(joinType=[InnerJoin], windowBounds=[isRowTime=true, leftLowerBound=-10000, leftUpperBound=0, leftTimeIndex=3, rightTimeIndex=1], where=[AND(=(price, maxprice), >=(dateTime, -(dateTime0, 10000:INTERVAL SECOND)), <=(dateTime, dateTime0))], select=[auction, bidder, price, dateTime, extra, maxprice, dateTime0])
   :- Exchange(distribution=[hash[price]])
   :  +- Calc(select=[bid.auction AS auction, bid.bidder AS bidder, bid.price AS price, dateTime, bid.extra AS extra], where=[=(event_type, 2)])
   :     +- WatermarkAssigner(rowtime=[dateTime], watermark=[-(dateTime, 4000:INTERVAL SECOND)])
   :        +- Calc(select=[event_type, bid, CASE(=(event_type, 0), person.dateTime, =(event_type, 1), auction.dateTime, bid.dateTime) AS dateTime])
   :           +- TableSourceScan(table=[[default_catalog, default_database, datagen]], fields=[event_type, person, auction, bid])
   +- Exchange(distribution=[hash[maxprice]])
      +- Calc(select=[maxprice, w$rowtime AS dateTime])
         +- GroupWindowAggregate(window=[TumblingGroupWindow('w$, dateTime, 10000)], properties=[w$start, w$end, w$rowtime, w$proctime], select=[MAX($f1) AS maxprice, start('w$) AS w$start, end('w$) AS w$end, rowtime('w$) AS w$rowtime, proctime('w$) AS w$proctime])
            +- Exchange(distribution=[single])
               +- Calc(select=[dateTime, bid.price AS $f1], where=[=(event_type, 2)])
                  +- WatermarkAssigner(rowtime=[dateTime], watermark=[-(dateTime, 4000:INTERVAL SECOND)])
                     +- Calc(select=[event_type, bid, CASE(=(event_type, 0), person.dateTime, =(event_type, 1), auction.dateTime, bid.dateTime) AS dateTime])
                        +- TableSourceScan(table=[[default_catalog, default_database, datagen]], fields=[event_type, person, auction, bid])

== Optimized Execution Plan ==
Calc(select=[auction, price, bidder, dateTime, extra])
+- IntervalJoin(joinType=[InnerJoin], windowBounds=[isRowTime=true, leftLowerBound=-10000, leftUpperBound=0, leftTimeIndex=3, rightTimeIndex=1], where=[((price = maxprice) AND (dateTime >= (dateTime0 - 10000:INTERVAL SECOND)) AND (dateTime <= dateTime0))], select=[auction, bidder, price, dateTime, extra, maxprice, dateTime0])
   :- Exchange(distribution=[hash[price]])
   :  +- Calc(select=[bid.auction AS auction, bid.bidder AS bidder, bid.price AS price, dateTime, bid.extra AS extra], where=[(event_type = 2)])
   :     +- WatermarkAssigner(rowtime=[dateTime], watermark=[(dateTime - 4000:INTERVAL SECOND)])(reuse_id=[1])
   :        +- Calc(select=[event_type, bid, CASE((event_type = 0), person.dateTime, (event_type = 1), auction.dateTime, bid.dateTime) AS dateTime])
   :           +- TableSourceScan(table=[[default_catalog, default_database, datagen]], fields=[event_type, person, auction, bid])
   +- Exchange(distribution=[hash[maxprice]])
      +- Calc(select=[maxprice, w$rowtime AS dateTime])
         +- GroupWindowAggregate(window=[TumblingGroupWindow('w$, dateTime, 10000)], properties=[w$start, w$end, w$rowtime, w$proctime], select=[MAX($f1) AS maxprice, start('w$) AS w$start, end('w$) AS w$end, rowtime('w$) AS w$rowtime, proctime('w$) AS w$proctime])
            +- Exchange(distribution=[single])
               +- Calc(select=[dateTime, bid.price AS $f1], where=[(event_type = 2)])
                  +- Reused(reference_id=[1])

But according to the new benchmark result of Flink, kind of suspect if the interval join is the right choice here.
Maybe we can force Flink to use normal hash join and test once.

FYI, the execution plan in Flink:
Calc(select=[auction, price, bidder, date_time])
+- Join(joinType=[InnerJoin], where=[((price = maxprice) AND (date_time >= (date_time0 - 10000:INTERVAL SECOND)) AND (date_time <= date_time0))], select=[auction, bidder, price, date_time, maxprice, date_time0], leftInputSpec=[NoUniqueKey], rightInputSpec=[HasUniqueKey])
   :- Exchange(distribution=[hash[price]])
   :  +- Calc(select=[auction, bidder, price, CAST(date_time AS TIMESTAMP(3)) AS date_time])
   :     +- TableSourceScan(table=[[bz_table_store_catalog, default, bid, project=[auction, bidder, price, date_time], watermark=[-(date_time, 20000:INTERVAL SECOND)]]], fields=[auction, bidder, price, date_time])
   +- Exchange(distribution=[hash[maxprice]])
      +- Calc(select=[maxprice, date_time])
         +- GroupAggregate(groupBy=[date_time], select=[date_time, MAX(price) AS maxprice])
            +- Exchange(distribution=[hash[date_time]])
               +- Calc(select=[window_end AS date_time, price])
                  +- WindowTableFunction(window=[TUMBLE(time_col=[date_time], size=[10 s])])
                     +- TableSourceScan(table=[[bz_table_store_catalog, default, bid, project=[price, date_time], watermark=[-(date_time, 20000:INTERVAL SECOND)]]], fields=[price, date_time])

Seems no magic other than interval joins. 🥵

wait a minute, this one is hash inner join, why https://github.com/risingwavelabs/risingwave/issues/7244#issuecomment-1470416781 shows interval join?


Create 2024-03-03-CU-RSV_SVIRS.parquet

@tkcy sorry for the inconvenience. I will give you a feedback after checked the data

@tkcy I checked and modified origin_date from POSIXct to Date("2024-03-03") in the parquet file (see attached 2024-03-03-CU-RSV_SVIRS.parquet.gz). Could you check whether it is okay?


But visually separate it from the VC menu - the lower region of the menu.


Test/dont merge

Types of changes

[ ] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)
[ ] My code follows the code style of this project.
[ ] My change requires a change to the documentation.
[ ] I have updated the documentation accordingly.
[ ] I have added tests to cover my changes.
[ ] All new and existing tests passed.
[ ] All commits are signed-off.

Closing.. not required.


Empty scrollbars are often shown

Describe the bug

Steps to reproduce the bug

Steps to reproduce the behavior:
I don't know. Open Intel Graphics Command Center.
Expected behavior

No useless scrollbars that overlap content?
Screenshots

Version Info

NuGet package version:
[Microsoft.UI.Xaml 2.4.0]

Windows app type:

UWP
Win32

Windows 10 version
Saw the problem?

Insider Build (xxxxx)

May 2020 Update (19041)
Yes

November 2019 Update (18363)
Yes

May 2019 Update (18362)
Yes

October 2018 Update (17763)
Yes

April 2018 Update (17134)
Yes

Fall Creators Update (16299)
No

Creators Update (15063)
No

Device form factor
Saw the problem?

Desktop
Yes

Xbox

Surface Hub

IoT

Additional context

Directed to here from https://github.com/microsoft/Xaml-Controls-Gallery/issues/615
PLEASE DO NOT DIRECT ME TO THE VOID THAT IS THE FEEDBACK HUB. I just want sane scrollbars. This isn't that big of an issue because not many people use apps that use WinUI. Most people use Chrome and Office, both of which don't have an automatically disappearing scrollbar.

I believe the "empty" scrollbars show up because the developers forgot to set the VerticalScrollBarVisibility to "Auto" on the used ScrollViewers. By default, it is set to "Visible" which explains why you see the scrollbar.
For the new WinUI ScrollView class, the default value for this API has been changed to "Auto" so this situation should improve in the future.

Can confirm that @Felix-Dev's recommendation to set VerticalScrollBarVisbility to "Auto" solves this issue.
It's good that the default has been updated on the new WinUI ScrollView, but should we update the value on ScrollViewer to Auto as well?

Can confirm that @Felix-Dev's recommendation to set VerticalScrollBarVisbility to "Auto" solves this issue.
It's good that the default has been updated on the new WinUI ScrollView, but should we update the value on ScrollViewer to Auto as well?

I'm not sure if this would break existing applications/UIs if we switch this to auto.

I'm not sure if this would break existing applications/UIs if we switch this to auto.

I guess I don't know what the behavior is now. Right now, it looks like "Auto" since it'll show/hide the scrollbars as appropriate until the "Always Show Scrollbars" setting is enabled which seems like the wrong thing.

I guess I don't know what the behavior is now. Right now, it looks like "Auto" since it'll show/hide the scrollbars as appropriate until the "Always Show Scrollbars" setting is enabled which seems like the wrong thing.

If you hover of where the scrollbar would be if there was something to scroll, the scrollbar would still show without visibility set to auto, so it's not only with the "always show scrollbars" settings; it's just hard to hit without that setting.

If you hover of where the scrollbar would be if there was something to scroll, the scrollbar would still show without visibility set to auto, so it's not only with the "always show scrollbars" settings; it's just hard to hit without that setting.

Ideally we would change the default value for the VerticalScrollBarVisibility property, but we can't because it drives some scrollViewer interactions and wouldn't preserve back compat. We probably aren't going to change this.

Ideally we would change the default value for the VerticalScrollBarVisibility property, but we can't because it drives some scrollViewer interactions and wouldn't preserve back compat. We probably aren't going to change this.

Anyone know about why these scrollbars show up in Intel Graphics Command Center?

Anyone know about why these scrollbars show up in Intel Graphics Command Center?

Probably because they have not said the VerticalScrollBarVisibility to Auto?

Probably because they have not said the VerticalScrollBarVisibility to Auto?


zib-SNAQrcScore

Validation error w.r.t. zib profile does not seem valid, as the code is present in the Dutch extension of SNOMED (checked by performing a local QA).


chore: cleanup uuid regex & .eslintignore

:tada: This PR is included in version 15.1.2 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release
v15.1.2

Your semantic-release bot :package::rocket:


Fix another use of sysconf instead of platform independent c++

I missed this in #82 as I hadn't got lib/Commands building at that point

@swift-ci please smoke test


Can you add 16:10 Ratio?

Can you add 16:10 Ratio? So it fit whole steam deck screen?

I just got my hands on steam deck so I'll be adding letterbox removal and making sure it works properly soon.

The latest release should address UI scaling and letterboxing at narrower than 16:9 aspect ratios such as the resolution the Steam Deck uses.

Going to close this issue now and refer people to this issue (#2) for issues pertaining to the Steam Deck.


image_zfs: Do not force a size

It is segfaulting.  Further investigation is needed.  Remove for now.
cc/ @allanjude

This doesn't segfault for me, it just raises an error.  The problem is that the :512K is in the wrong place.  It should be:
            gptboot="-p freebsd-boot:512K=${mnt}/boot/gptzfsboot"

Followup #962


Paper describing the algorithm in jupyter notebook

Hi, thanks for a nice tutorial style implementation of stochastic mpc for AD scenarios. A paper describing the approach will be very helpful to follow the code. Request you to please Kindly provide references.

I see the arxiv link mentioned in the notebook.


Adding sourcelink

Quick fix for the enhancement described in https://github.com/giraffe-fsharp/Giraffe.ViewEngine/issues/16
Notes
I noticed Giraffe core is on 1.0.*
Judging by the release notes for 1.1.0, there's not much that would be different for this basic usage.

Whoops I believe I created this too quickly while doing a couple of other things. Branch targets were wrong. I'll recreate.


Bump to Go 1.21

This will be required for the Kubernetes 1.29 upgrade.
The build setup will need to be fixed, the primary objective of this PR is to verify that that’s done correctly.
See also https://issues.redhat.com/browse/HYPBLD-66 and https://github.com/openshift/release/pull/47180.
Depends on https://github.com/stolostron/image-builder/pull/133
Depends on https://github.com/openshift/release/pull/47180

/cc @tpantelis @dfarrell07 @vthapar


docs(toh5): add better explanations for templateUrl

Since this tutorial is meant to explain each step, I think we should go the whole nine yards with it.
Paths are always complicated when first encountered and with the previous explanation it wasn't clear which path to use.
Also added a few blockquotes with explanations.
Perhaps the paths changes with the offline compiler, but you know what they say about beta: It worked. That day. On my computer.

Excellent suggestion. I've merged your change (w/ slight rewording for what I think will be a bit more clarity). Thanks.


Show ConfigMaps (Volume-based) and PersistentVolumeClaims in Pod's resource viewer

What this PR does / why we need it:
This PR improves the Pod's resource viewer to include:

ConfigMaps that are referenced by a Pod via Volumes
PersistentVolumeClaims that are referenced by a Pod

Which issue(s) this PR fixes

Addresses #1541

Special notes for your reviewer:
There might be other resources that are missing from a Pod's resource viewer, but opening this PR to keep the scope somewhat small.
Keeping that in mind, should we keep #1541 open?
Release note:
The Pod resource viewer now shows ConfigMaps mounted via Volumes and PersistentVolumeClaims

Sorry for the delay in getting to this, taking a look at it today.

Oh, no worries at all! Thanks @wwitzel3


Regression in 54382ae causes D3DXERR_CAPSNOTSUPPORTED

Since commit 54382ae, game crashes at startup with D3DXERR_CAPSNOTSUPPORTED.
Software information
Gothic 2 2.6 Night of the Raven - Russian version - with GD3D11 14.5 by Liker. Default settings, since attempt to show configuration dialog causes segfault. Worked in 0ab27aa; in 4ce64bd everything was black, but that was reverted).
System information

GPU: RX 480
Driver: AMDGPU @ Linux 4.15.11-ARCH, Mesa 17.3.7 (RADV) + LLVM 6.0.0
Wine version: 3.4-staging (from Arch)
DXVK version: commit 19e0829

Apitrace file(s)
I can't create apitrace without DXVK, since game does not work without DXVK at all.

Can't debug without an apitrace.

You were right. It is caused by 19e0829 which I have accidentally skipped in initial testing and in later check.
Since mesa 18 was planned for release yesterday, I'll wait for it. I hope that mesa 18 will be fine for testing.
This might be renderer bug as well, since it is not exactly pinnacle of safe software - it does very little error checking. This might be reason why it does not work in wine, not even with native d3d11_43 and just segfaults.

Hm, interesting. Can you try commenting out these lines:
https://github.com/doitsujin/dxvk/blob/master/src/dxgi/dxgi_output.cpp#L193-L194

It works!

Alright, thanks for testing that.
So it's an issue with how the DXGI part enumerates resolutions. No idea how to fix that to be honest, especially without breaking other games (like Dark Souls 3), where the old code caused issues.

Maybe time will tell.
For now, I might be only person who plays G2 with GD3D11 in wine. I'll be more than happy to write my personal build script that will remove the lines. Now I can play G2 in 60 FPS instead of around 17 in city with stock DX7 renderer.
Many thaks for DXVK and for solution to my problem.

One thing you could try actually is to record an apitrace with the broken version of DXVK. It won't get you any further, but getting an idea of what the game is trying to do and where it's failing would be helpful.

I have something better - native apitrace: https://drive.google.com/file/d/1vRNuUjEcUcByC_oh4Kg-hWO-HLTvpFGp/view?usp=sharing (267.7 MiB compressed; 519 MiB extracted). I had to rewrite imports in game exe file to load "ddrav.dll" instead of "ddraw.dll" (I have renamed ddraw.dll of GD3D11 to ddrav.dll) and then it worked with native d3d11_43. For some reason WINEDLLOVERRIDES="d3d11_43=n;ddraw=n" or "n,b" was not working and caused segfault (propably GD3D11 bug or weird interference with wine).  Now the game works... with 2 FPS, but it does at last. There are some wirds thing, like short flashes of texts over the screen and white ground for short period of time when I loaded save game. This does not happen with DXVK - game works perfectly with it. Well, except for the settings dialog - works with native d3d11_43 but crashes with DXVK (that dialog is in the trace file too).
Quite interestingly, d3dretrace of captured trace works with clean wine and renders exaclty the same as game running with native d3d11_43. Is it normal? I'd expect that it would not work, when game itself does not work with clean wine.
Proof that game works with DXVK and that it's not just my imagination:

I run it with
WINEDLLOVERRIDES="dxgi,d3d11=n;ddraw=n,b" wine Gothic2.exe

Thanks, will take a look at it later.

Can you test this again with the latest commit?
Looking at your apitrace file, I don't really see anything that would cause such an issue. There's something else though, the game seems to be using Direct3D 10.1 on top of D3D11 - which is weird, and currently doesn't work on DXVK at all. I'm quite surprised that the game even runs.

No change, but workaround with deletion of two lines still works.
Also after around 5 minutes something broke and huge chunk of land and some walls got covered in grass. I have never seen it before, but I guess it is just some random driver or GD3D11 bug and I was lucky it never happended before (I am still on mesa 17).
Could there be some kind of dynamic selection beween 10.1 and 11 and it chose 10.1 with native d3d11_43? If you tell me, what in particular is supposed to not work, I'll look into source code of GD3D11 and check that out.

@neVERberleRfellerER How did you exactly changed the imports of the Gothic2.exe ?
Because i get this error:
0009:err:module:attach_dlls "ddrav.dll" failed to initialize, aborting

@MordragTV Just rewrite it in exe with hex editor. I think there was just one near the end. Beware the you do NOT have to do this when you plan to use DXVK. Rewriting imports was only necessary to run the game with native d3dx11_43 but that way it runs only at 4 FPS max.

@neVERberleRfellerER Can you test if bb3e3c9e4f15e5232d1a60ffbda00d9fd55064c4 fixes the issue?

@doitsujin It works. Thanks a lot for everything.

@neVERberleRfellerER do you happen to have a gist or some notes available on how to use gothic2 with dx11renderer on linux with wine through dxvk? that dx7 renderer is really not that geat :o
I've got my old gothic2 gold install from original cd's still in my prefix, and I've got a spine.exe with wine-5.7 (didn't work prior to that due to missing symlink support), so that should enable me to follow any instructions.

@stefson There isn't much to document. Make sure you have working DXVK. Then just download your favourite GD3D11 version (I use https://github.com/Kirides/GD3D11 - binaries are available in Releases) and extract it to your Gothic/System directory. And that's it. I don't use Spine.

@neVERberleRfellerER it never worked for me, but after some time I realized that one has to set an additional dll override for ddraw. This is discouraged, yet it doesn't work otherwise. Tested with this version of dx11 renderer: https://www.worldofgothic.de/download_590.htm

@stefson What override? I have installed DXVK with Gothic2 NoTR, SystemPack, PlayerKit and Fix. The game turns on properly but it doesn't recognize DXVK_HUD=full option so I assume it doesn't work.

@bodzioslav read this issue: https://github.com/Kirides/GD3D11/issues/14
solution 1 as a minimal setup: https://github.com/Kirides/GD3D11/issues/14#issuecomment-739528956
solution 2 with fancy lutris: https://github.com/Kirides/GD3D11/issues/14#issuecomment-827858549


Rails 7 uninitialized constant ApplicationRecord::Anony

When adding this gem to a rails 7 project then defining the mixin via application_record, it returns unitialized constant
# app/models/application_record.rb
class ApplicationRecord < ActiveRecord::Base
  include Anony::Anonymisable
end

specifically, I'm seeing this error with rails (<IP_ADDRESS>)

note for @JoeSouthan and @mnbbrown

this issue was caused by not restarting the rails server after bundling :facepalm:


0.26 stable

Can you fix eslint errors? :)

@charpeni checking now

any ideas about the test error? it looks like tests wont work until react-native-mock is updated upstream

@aksonov i have to head out for a bit but if there are no blockers then i think this is ready for release! 👍

@joenoon Exactly, https://github.com/lelandrichardson/react-native-mock/pull/43


Please add vue-property-decorator to the whitelist

With https://github.com/DefinitelyTyped/DefinitelyTyped/pull/29931 i am actually shipping vuelidate typescript support, which depends on vue-property-decorator.
Is there some criteria to meet?
@andy-ms do you want me to provide a PR?

It looks like vue-property-decorator is only used in tests in that PR. Would it be possibly to write the tests to just test vuelidate? Note that tests just need to typecheck, not run, so you could add declare const to represent other libraries if necessary.

@andy-ms thanks for the quick answer.
point is that vuelidate is nested in the @component annotation, which need to be either imported from vue-class-component or vue-property-decorator, which ships it indirectly.
In my opinion test-case should be close to real usage scenario. For now including vue-property-decorator sounds like the way to get there.
Do i miss some alternative?

I don't think it's worth it to whitelist a new external dependency (which would get added as a dependency of the @types package) just for tests -- it should be possible to write a simple shim for vue-property-decorator. It doesn't have to actually work at runtime, just have the right type.

Thanks for your advice,
regarding the parts from vue-property-declarator i have been able to create some "shims" that fullfil the job nicely. I noticed that "// $ExpectType CustomRule" will not work with type aliases, well fine.
But there is yet another issue with @types/vue which clearly deprecated, see https://www.npmjs.com/package/@types/vue.
It comes handy to be still availble in the whitelist even, although it feels wrong using deprecated things.
I tried to create shims for this one as well, but the module augmentation does not work with w<hat i tried.
@andy-ms
You could do me a big favour in pointing me to an example of "module augmentation" working with shims, is there something like that?
Regards

@types/vue was deprecated because vue has its own types  now, so you should probably be using that instead.
Not sure what you mean by module augmentation of a shim -- if you're not using a module and using a shim instead you presumably don't need to augment it? Or if that module had included an augmentation of something else, you could just copy that to your tests file.

@andy-ms it is about augmentation of "vue/types/vue" with @types/vue as dependency it works fine.
depending on original typing of vue, would probably require another whitelisting, that's why i tried to declare the parts of "vue/types/vue" in the test, but the augmentation from vue.d.ts does not apply.

vue itself is already in the whitelist.


[SPARK-28964] Add the provider information to the table properties in saveAsTable

What changes were proposed in this pull request?
Adds the provider information to the table properties in saveAsTable.
Why are the changes needed?
Otherwise, catalog implementations don't know what kind of Table definition to create.
Does this PR introduce any user-facing change?
nope
How was this patch tested?
Existing unit tests check the existence of the provider now.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/testing-k8s-prb-make-spark-distribution-unified/15079/
Test PASSed.

Test build #110060 has started for PR 25669 at commit 1d3a2b5.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/testing-k8s-prb-make-spark-distribution-unified/15080/
Test PASSed.

Test build #110061 has started for PR 25669 at commit 137f452.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/testing-k8s-prb-make-spark-distribution-unified/15081/
Test PASSed.

Test build #110062 has started for PR 25669 at commit 10d5a6a.

Test build #110060 has finished for PR 25669 at commit 1d3a2b5.

This patch fails Spark unit tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/110060/
Test FAILed.

Test build #110061 has finished for PR 25669 at commit 137f452.

This patch fails Spark unit tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/110061/
Test FAILed.

Test build #110062 has finished for PR 25669 at commit 10d5a6a.

This patch fails Spark unit tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/110062/
Test FAILed.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/testing-k8s-prb-make-spark-distribution-unified/15149/
Test PASSed.

Test build #110140 has started for PR 25669 at commit 1948f70.

Test build #110140 has finished for PR 25669 at commit 1948f70.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/110140/
Test PASSed.

cc @cloud-fan @rdblue

+1

thanks, merging to master!